ngx-np-datepicker 2.1.2 → 2.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,15 +1,19 @@
1
1
  # Angular Nepali Datepicker
2
+
2
3
  A configurable Nepali Date Picker(Bikram Sambat) built for angular appilcations. Supports latest (Angular 13) version.
3
4
 
4
5
  ### Demo
6
+
5
7
  <a href="https://wwwbijay.github.io/angular-nepali-datepicker/" target="_blank">Click here to check demo.</a>
6
8
 
7
9
  ## Installation
10
+
8
11
  ```
9
12
  npm install ngx-np-datepicker
10
13
  ```
11
14
 
12
15
  ## Usage
16
+
13
17
  Import the `NepaliDatepickerModule` in your app.module.ts
14
18
 
15
19
  ```
@@ -28,20 +32,21 @@ import { NepaliDatepickerModule } from 'angular-nepali-datepicker';
28
32
  })
29
33
  export class AppModule { }
30
34
  ```
35
+
31
36
  then use `<np-datepicker [(ngModel)]="nepaliDate"></np-datepicker>` in your template
37
+
32
38
  ```
33
39
  <np-datepicker></np-datepicker>
34
40
  ```
35
41
 
36
-
37
-
38
-
39
42
  ### Note
43
+
40
44
  This package has no dependancy.
41
45
 
42
46
  ### Format
47
+
43
48
  The supported date format is dd-mm-yyyy
44
49
 
45
50
  ### License
46
- MIT License
47
51
 
52
+ MIT License
@@ -86,8 +86,8 @@ export class NpDatePickerService {
86
86
  [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30],
87
87
  [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],
88
88
  [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30],
89
- [31, 31, 32, 32, 31, 30, 30, 30, 29, 30, 30, 30],
90
- [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30],
89
+ [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],
90
+ [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],
91
91
  [31, 31, 32, 31, 31, 30, 30, 30, 29, 30, 30, 30],
92
92
  [31, 31, 32, 31, 31, 30, 30, 30, 29, 30, 30, 30],
93
93
  [31, 32, 31, 32, 30, 31, 30, 30, 29, 30, 30, 30],
@@ -297,4 +297,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
297
297
  providedIn: 'root',
298
298
  }]
299
299
  }], ctorParameters: function () { return []; } });
300
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnAtZGF0ZXBpY2tlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbnB4LW5wLWRhdGVwaWNrZXIvc3JjL2xpYi9ucC1kYXRlcGlja2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLM0MsTUFBTSxPQUFPLG1CQUFtQjtJQXFIOUI7UUFwSEEsa0JBQWEsR0FBRyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDakUsc0JBQWlCLEdBQUcsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3JFLGlCQUFZLEdBQUc7WUFDYixDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVB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QUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNoRCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVELGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVELGVBQWU7UUFDYixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVELGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVELGFBQWE7UUFDWCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQUNELGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVELGFBQWE7UUFDWCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQzs7Z0hBM1ZVLG1CQUFtQjtvSEFBbkIsbUJBQW1CLGNBRmxCLE1BQU07MkZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOcERhdGVQaWNrZXJTZXJ2aWNlIHtcclxuICBlbmdsaXNoTW9udGhzID0gWzMxLCAyOCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMSwgMzAsIDMxLCAzMCwgMzFdO1xyXG4gIGVuZ2xpc2hMZWFwTW9udGhzID0gWzMxLCAyOSwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMSwgMzAsIDMxLCAzMCwgMzFdO1xyXG4gIG5lcGFsaU1vbnRocyA9IFtcclxuICAgIFszMCwgMzIsIDMxLCAzMiwgMzEsIDMwLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMxXSwgLy8yMDAwXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sIC8vMjAwMVxyXG4gICAgWzMxLCAzMSwgMzIsIDMyLCAzMSwgMzAsIDMwLCAyOSwgMzAsIDI5LCAzMCwgMzBdLCAvLyAyMDAyXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sIC8vIDIwMDNcclxuICAgIFszMCwgMzIsIDMxLCAzMiwgMzEsIDMwLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMxXSwgLy8gMjAwNFxyXG4gICAgWzMxLCAzMSwgMzIsIDMxLCAzMSwgMzEsIDMwLCAyOSwgMzAsIDI5LCAzMCwgMzBdLCAvLyAyMDA1XHJcbiAgICBbMzEsIDMxLCAzMiwgMzIsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sIC8vIDIwMDZcclxuICAgIFszMSwgMzIsIDMxLCAzMiwgMzEsIDMwLCAzMCwgMzAsIDI5LCAyOSwgMzAsIDMxXSwgLy8gMjAwNlxyXG4gICAgWzMxLCAzMSwgMzEsIDMyLCAzMSwgMzEsIDI5LCAzMCwgMzAsIDI5LCAyOSwgMzFdLCAvLyAyMDA3XHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sIC8vIDIwMDhcclxuICAgIFszMSwgMzEsIDMyLCAzMiwgMzEsIDMwLCAzMCwgMjksIDMwLCAyOSwgMzAsIDMwXSwgLy8gMjAwOVxyXG4gICAgWzMxLCAzMiwgMzEsIDMyLCAzMSwgMzAsIDMwLCAzMCwgMjksIDI5LCAzMCwgMzFdLCAvLyAyMDEwXHJcbiAgICBbMzEsIDMxLCAzMSwgMzIsIDMxLCAzMSwgMjksIDMwLCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzIsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMSwgMzIsIDMxLCAzMSwgMjksIDMwLCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDI5LCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMSwgMzIsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDI5LCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMSwgMzIsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sXHJcbiAgICBbMzAsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDI5LCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMyLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sXHJcbiAgICBbMzAsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDI5LCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzIsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sXHJcbiAgICBbMzAsIDMyLCAzMSwgMzIsIDMxLCAzMSwgMjksIDMwLCAzMCwgMjksIDI5LCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzIsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMSwgMzIsIDMxLCAzMSwgMjksIDMwLCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzIsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMSwgMzIsIDMxLCAzMSwgMjksIDMwLCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMSwgMzIsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDI5LCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMSwgMzIsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDI5LCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMyLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sXHJcbiAgICBbMzAsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDI5LCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzIsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sXHJcbiAgICBbMzAsIDMyLCAzMSwgMzIsIDMxLCAzMSwgMjksIDMwLCAyOSwgMzAsIDI5LCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzIsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMSwgMzIsIDMxLCAzMSwgMjksIDMwLCAzMCwgMjksIDI5LCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzIsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMSwgMzIsIDMxLCAzMSwgMjksIDMwLCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sIC8vMjA3MVxyXG4gICAgWzMxLCAzMiwgMzEsIDMyLCAzMSwgMzAsIDMwLCAyOSwgMzAsIDI5LCAzMCwgMzBdLCAvLzIwNzJcclxuICAgIFszMSwgMzIsIDMxLCAzMiwgMzEsIDMwLCAzMCwgMzAsIDI5LCAyOSwgMzAsIDMxXSwgLy8yMDczXHJcbiAgICBbMzEsIDMxLCAzMSwgMzIsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMF0sIC8vIDIwNzZcclxuICAgIFszMSwgMzIsIDMxLCAzMiwgMzEsIDMwLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMxXSxcclxuICAgIFszMSwgMzEsIDMxLCAzMiwgMzEsIDMxLCAzMCwgMjksIDMwLCAyOSwgMzAsIDMwXSwgLy8gMjA3OFxyXG4gICAgWzMxLCAzMSwgMzIsIDMxLCAzMSwgMzEsIDMwLCAyOSwgMzAsIDI5LCAzMCwgMzBdLCAvLyAyMDc5XHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDMwLCAzMF0sXHJcbiAgICBbMzAsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMwLCAzMSwgMzAsIDMwLCAyOSwgMzAsIDMwLCAzMF0sXHJcbiAgICBbMzAsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDMwLCAyOSwgMzAsIDMwLCAzMF0sXHJcbiAgICBbMzAsIDMxLCAzMiwgMzIsIDMwLCAzMSwgMzAsIDMwLCAyOSwgMzAsIDMwLCAzMF0sXHJcbiAgICBbMzAsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDMwLCAzMF0sXHJcbiAgICBbMzAsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDMwLCAzMF0sIC8vMjA5MFxyXG4gICAgWzMxLCAzMSwgMzIsIDMxLCAzMSwgMzEsIDMwLCAzMCwgMjksIDMwLCAzMCwgMzBdLFxyXG4gICAgWzMwLCAzMSwgMzIsIDMyLCAzMSwgMzAsIDMwLCAzMCwgMjksIDMwLCAzMCwgMzBdLFxyXG4gICAgWzMwLCAzMiwgMzEsIDMyLCAzMSwgMzAsIDMwLCAzMCwgMjksIDMwLCAzMCwgMzBdLFxyXG4gICAgWzMxLCAzMSwgMzIsIDMxLCAzMSwgMzAsIDMwLCAzMCwgMjksIDMwLCAzMCwgMzBdLFxyXG4gICAgWzMxLCAzMSwgMzIsIDMxLCAzMSwgMzEsIDMwLCAyOSwgMzAsIDMwLCAzMCwgMzBdLFxyXG4gICAgWzMwLCAzMSwgMzIsIDMyLCAzMSwgMzAsIDMwLCAyOSwgMzAsIDI5LCAzMCwgMzBdLFxyXG4gICAgWzMxLCAzMiwgMzEsIDMyLCAzMSwgMzAsIDMwLCAzMCwgMjksIDMwLCAzMCwgMzBdLFxyXG4gICAgWzMxLCAzMSwgMzIsIDMxLCAzMSwgMzEsIDI5LCAzMCwgMjksIDMwLCAyOSwgMzFdLFxyXG4gICAgWzMxLCAzMSwgMzIsIDMxLCAzMSwgMzEsIDMwLCAyOSwgMjksIDMwLCAzMCwgMzBdLCAvLzIwOTlcclxuICBdO1xyXG5cclxuICBlbmdsaXNoWWVhcjogYW55O1xyXG4gIGVuZ2xpc2hNb250aDogYW55O1xyXG4gIGVuZ2xpc2hEYXRlOiBhbnk7XHJcblxyXG4gIG5lcGFsaVllYXI6IGFueTtcclxuICBuZXBhbGlNb250aDogYW55O1xyXG4gIG5lcGFsaURhdGU6IGFueTtcclxuXHJcbiAgd2Vla0RheTogYW55O1xyXG4gIGZvcm1hdCA9ICcuJztcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICB2YXIgZCA9IG5ldyBEYXRlKCk7XHJcbiAgfVxyXG5cclxuICBzZXRDdXJyZW50TmVwYWxpRGF0ZSgpIHtcclxuICAgIHZhciBkID0gbmV3IERhdGUoKTtcclxuICAgIHJldHVybiB0aGlzLmVuZ1RvTmVwRGF0ZSggZC5nZXREYXRlKCksIGQuZ2V0TW9udGgoKSxkLmdldEZ1bGxZZWFyKCkgKTtcclxuICB9XHJcblxyXG4gIC8vRW5nbGlzaCB0byBOZXBhbGkgZGF0ZSBjb252ZXJzaW9uXHJcbiAgZW5nVG9OZXBEYXRlKGRhdGU6IGFueSwgbW9udGg6IGFueSwgeWVhcjogYW55KSB7XHJcbiAgICBpZiAoIXRoaXMuaXNFbmdsaXNoUmFuZ2UoZGF0ZSwgbW9udGgsIHllYXIpKVxyXG4gICAgICBjb25zb2xlLmxvZygnSW52YWxpZCBkYXRlIGZvcm1hdC4nKTtcclxuXHJcbiAgICB0aGlzLmVuZ2xpc2hZZWFyID0geWVhcjtcclxuICAgIHRoaXMuZW5nbGlzaE1vbnRoID0gbW9udGggKyAxO1xyXG4gICAgdGhpcy5lbmdsaXNoRGF0ZSA9IGRhdGU7XHJcbiAgICBcclxuICAgIC8vU2V0dGluZyBuZXBhbGkgcmVmZXJlbmNlIHRvIDIwMDAvMS8xIHdpdGggZW5nbGlzaCBkYXRlIDE5NDMvNC8xNFxyXG4gICAgdGhpcy5uZXBhbGlZZWFyID0gMjAwMDtcclxuICAgIHRoaXMubmVwYWxpTW9udGggPSAxO1xyXG4gICAgdGhpcy5uZXBhbGlEYXRlID0gMTtcclxuXHJcbiAgICB2YXIgZGlmZmVyZW5jZSA9IHRoaXMuZ2V0RW5nbGlzaERhdGVEaWZmZXJlbmNlKDE5NDMsIDQsIDE0KTtcclxuICAgIFxyXG4gICAgLy9HZXR0aW5nIG5lcGFsaSB5ZWFyIHVudGlsbCB0aGUgZGlmZmVyZW5jZSByZW1haW5zIGxlc3MgdGhhbiAzNjVcclxuICAgIHZhciBpbmRleCA9IDA7XHJcbiAgICB3aGlsZSAoZGlmZmVyZW5jZSA+PSB0aGlzLm5lcGFsaVllYXJEYXlzKGluZGV4KSkge1xyXG4gICAgICB0aGlzLm5lcGFsaVllYXIrKztcclxuICAgICAgZGlmZmVyZW5jZSA9IGRpZmZlcmVuY2UgLSB0aGlzLm5lcGFsaVllYXJEYXlzKGluZGV4KTtcclxuICAgICAgaW5kZXgrKztcclxuICAgICAgLy9jb25zb2xlLmxvZygnRGlmZmVyZW5jZTonK2RpZmZlcmVuY2UrICduZXBhbGlZZWFyRGF5czonK3RoaXMubmVwYWxpWWVhckRheXMoaW5kZXgpKTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLy9jb25zb2xlLmxvZyhcIm5lcGFsaU1vbnRocz1cIit0aGlzLm5lcGFsaU1vbnRoc1tpbmRleF1bMF0rXCJkaWZmZXJlbmNlOlwiK2RpZmZlcmVuY2UpO1xyXG4gICAgLy9HZXR0aW5nIG5lcGFsaSBtb250aCB1bnRpbGwgdGhlIGRpZmZlcmVuY2UgcmVtYWlucyBsZXNzIHRoYW4gMzFcclxuICAgIHZhciBpID0gMDtcclxuICAgIHdoaWxlIChkaWZmZXJlbmNlID49IHRoaXMubmVwYWxpTW9udGhzW2luZGV4XVtpXSkge1xyXG4gICAgICBkaWZmZXJlbmNlID0gZGlmZmVyZW5jZSAtIHRoaXMubmVwYWxpTW9udGhzW2luZGV4XVtpXTtcclxuICAgICAgdGhpcy5uZXBhbGlNb250aCsrO1xyXG4gICAgICBpKys7XHJcbiAgICAgIC8vY29uc29sZS5sb2coXCJuZXBhbGlNb250aHM9XCIrdGhpcy5uZXBhbGlNb250aHNbaW5kZXhdW2ldK1wiZGlmZmVyZW5jZTpcIitkaWZmZXJlbmNlKTtcclxuICAgIH1cclxuICAgIHRoaXMubmVwYWxpTW9udGgtLTtcclxuICAgIC8vY29uc29sZS5sb2coZGlmZmVyZW5jZSk7XHJcbiAgIFxyXG4gICAgLy9SZW1hbmluZyBkYXlzIGlzIHRoZSBkYXRlO1xyXG4gICAgdGhpcy5uZXBhbGlEYXRlID0gdGhpcy5uZXBhbGlEYXRlICsgZGlmZmVyZW5jZTtcclxuICAgIHRoaXMuZ2V0RGF5KCk7XHJcbiAgICBcclxuICAgIHJldHVybiB7XHJcbiAgICAgIGRheTogdGhpcy5uZXBhbGlEYXRlLFxyXG4gICAgICBtb250aDogdGhpcy5uZXBhbGlNb250aCxcclxuICAgICAgeWVhcjogdGhpcy5uZXBhbGlZZWFyXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgdG9FbmdsaXNoU3RyaW5nKGZvcm1hdDogYW55KSB7XHJcbiAgICBpZiAodHlwZW9mIGZvcm1hdCA9PT0gJ3VuZGVmaW5lZCcpIGZvcm1hdCA9ICctJztcclxuICAgIHJldHVybiAoXHJcbiAgICAgIHRoaXMuZW5nbGlzaFllYXIgKyBmb3JtYXQgKyB0aGlzLmVuZ2xpc2hNb250aCArIGZvcm1hdCArIHRoaXMuZW5nbGlzaERhdGVcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRFbmdsaXNoRGF0ZURpZmZlcmVuY2UoeWVhcjogYW55LCBtb250aDogYW55LCBkYXRlOiBhbnkpIHtcclxuICAgIC8vR2V0dGluZyBkaWZmZXJlbmNlIGZyb20gdGhlIGN1cnJlbnQgZGF0ZSB3aXRoIHRoZSBkYXRlIHByb3ZpZGVkXHJcbiAgICB2YXIgZGlmZmVyZW5jZSA9XHJcbiAgICAgIHRoaXMuY291bnRUb3RhbEVuZ2xpc2hEYXlzKFxyXG4gICAgICAgIHRoaXMuZW5nbGlzaFllYXIsXHJcbiAgICAgICAgdGhpcy5lbmdsaXNoTW9udGgsXHJcbiAgICAgICAgdGhpcy5lbmdsaXNoRGF0ZVxyXG4gICAgICApIC0gdGhpcy5jb3VudFRvdGFsRW5nbGlzaERheXMoeWVhciwgbW9udGgsIGRhdGUpO1xyXG4gICAgcmV0dXJuIGRpZmZlcmVuY2UgPCAwID8gLWRpZmZlcmVuY2UgOiBkaWZmZXJlbmNlO1xyXG4gIH1cclxuXHJcbiAgY291bnRUb3RhbEVuZ2xpc2hEYXlzKHllYXI6IGFueSwgbW9udGg6IGFueSwgZGF0ZTogYW55KSB7XHJcbiAgICB2YXIgdG90YWxEYXlzID0geWVhciAqIDM2NSArIGRhdGU7XHJcblxyXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBtb250aCAtIDE7IGkrKylcclxuICAgICAgdG90YWxEYXlzID0gdG90YWxEYXlzICsgdGhpcy5lbmdsaXNoTW9udGhzW2ldO1xyXG5cclxuICAgIHRvdGFsRGF5cyA9IHRvdGFsRGF5cyArIHRoaXMuY291bnRsZWFwKHllYXIsIG1vbnRoKTtcclxuICAgIHJldHVybiB0b3RhbERheXM7XHJcbiAgfVxyXG5cclxuICBjb3VudGxlYXAoeWVhcjogYW55LCBtb250aDogYW55KSB7XHJcbiAgICBpZiAobW9udGggPD0gMikgeWVhci0tO1xyXG5cclxuICAgIHJldHVybiAoXHJcbiAgICAgIE1hdGguZmxvb3IoeWVhciAvIDQpIC0gTWF0aC5mbG9vcih5ZWFyIC8gMTAwKSArIE1hdGguZmxvb3IoeWVhciAvIDQwMClcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBpc0VuZ2xpc2hSYW5nZShkYXRlOiBhbnksIG1vbnRoOiBhbnksIHllYXI6IGFueSkge1xyXG4gICAgaWYgKHllYXIgPCAxOTQ0IHx8IHllYXIgPiAyMDQyKSByZXR1cm4gZmFsc2U7XHJcbiAgICBpZiAobW9udGggPCAxIHx8IG1vbnRoID4gMTIpIHJldHVybiBmYWxzZTtcclxuICAgIGlmIChkYXRlIDwgMSB8fCBkYXRlID4gMzEpIHJldHVybiBmYWxzZTtcclxuXHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGlzTGVhcFllYXIoeWVhcjogYW55KSB7XHJcbiAgICBpZiAoeWVhciAlIDQgPT09IDApIHtcclxuICAgICAgcmV0dXJuIHllYXIgJSAxMDAgPT09IDAgPyB5ZWFyICUgNDAwID09PSAwIDogdHJ1ZTtcclxuICAgIH0gZWxzZSByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICAvL05lcGFsaSB0byBFbmdsaXNoIGNvbnZlcnNpb25cclxuICBuZXBUb0VuZ0RhdGUoZGF0ZTogYW55LCBtb250aDogYW55LCB5ZWFyOiBhbnkpIHtcclxuICAgIGlmICghdGhpcy5pc05lcGFsaVJhbmdlKGRhdGUsIG1vbnRoLCB5ZWFyKSkge1xyXG4gICAgICBjb25zb2xlLmxvZygnSW52YWxpZCBEYXRlIEZvcm1hdCcpO1xyXG4gICAgICAvLyB0aHJvdyBuZXcgRXhjZXB0aW9uKFwiSW52YWxpZCBkYXRlIGZvcm1hdC5cIik7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLm5lcGFsaVllYXIgPSB5ZWFyO1xyXG4gICAgdGhpcy5uZXBhbGlNb250aCA9IG1vbnRoKzE7XHJcbiAgICB0aGlzLm5lcGFsaURhdGUgPSBkYXRlO1xyXG5cclxuICAgIC8vU2V0dGluZyBlbmdsaXNoIHJlZmVyZW5jZSB0byAxOTQ0LzEvMSB3aXRoIG5lcGFsaSBkYXRlIDIwMDAvOS8xN1xyXG4gICAgdGhpcy5lbmdsaXNoWWVhciA9IDE5NDQ7XHJcbiAgICB0aGlzLmVuZ2xpc2hNb250aCA9IDE7XHJcbiAgICB0aGlzLmVuZ2xpc2hEYXRlID0gMTtcclxuXHJcbiAgICB2YXIgZGlmZmVyZW5jZSA9IHRoaXMuZ2V0TmVwYWxpRGF0ZURpZmZlcmVuY2UoMjAwMCwgOSwgMTcpO1xyXG5cclxuICAgIC8vR2V0dGluZyBlbmdsaXNoIHllYXIgdW50aWxsIHRoZSBkaWZmZXJlbmNlIHJlbWFpbnMgbGVzcyB0aGFuIDM2NVxyXG4gICAgd2hpbGUgKGRpZmZlcmVuY2UgPj0gKHRoaXMuaXNMZWFwWWVhcih0aGlzLmVuZ2xpc2hZZWFyKSA/IDM2NiA6IDM2NSkpIHtcclxuICAgICAgZGlmZmVyZW5jZSA9IGRpZmZlcmVuY2UgLSAodGhpcy5pc0xlYXBZZWFyKHRoaXMuZW5nbGlzaFllYXIpID8gMzY2IDogMzY1KTtcclxuICAgICAgdGhpcy5lbmdsaXNoWWVhcisrO1xyXG4gICAgfVxyXG5cclxuICAgIC8vR2V0dGluZyBlbmdsaXNoIG1vbnRoIHVudGlsbCB0aGUgZGlmZmVyZW5jZSByZW1haW5zIGxlc3MgdGhhbiAzMVxyXG4gICAgdmFyIG1vbnRoRGF5cyA9IHRoaXMuaXNMZWFwWWVhcih0aGlzLmVuZ2xpc2hZZWFyKVxyXG4gICAgICA/IHRoaXMuZW5nbGlzaExlYXBNb250aHNcclxuICAgICAgOiB0aGlzLmVuZ2xpc2hNb250aHM7XHJcbiAgICB2YXIgaSA9IDA7XHJcbiAgICB3aGlsZSAoZGlmZmVyZW5jZSA+PSBtb250aERheXNbaV0pIHtcclxuICAgICAgdGhpcy5lbmdsaXNoTW9udGgrKztcclxuICAgICAgZGlmZmVyZW5jZSA9IGRpZmZlcmVuY2UgLSBtb250aERheXNbaV07XHJcbiAgICAgIGkrKztcclxuICAgIH1cclxuXHJcbiAgICAvL1JlbWFuaW5nIGRheXMgaXMgdGhlIGRhdGU7XHJcbiAgICB0aGlzLmVuZ2xpc2hEYXRlID0gdGhpcy5lbmdsaXNoRGF0ZSArIGRpZmZlcmVuY2U7XHJcbiAgICB0aGlzLmdldERheSgpO1xyXG5cclxuICAgIHJldHVybiBuZXcgRGF0ZSh0aGlzLmVuZ2xpc2hZZWFyICsgJy0nICsgdGhpcy5lbmdsaXNoTW9udGggKyAnLScgKyB0aGlzLmVuZ2xpc2hEYXRlKTtcclxuICB9XHJcblxyXG4gIHRvTmVwYWxpU3RyaW5nKGZvcm1hdDogYW55KSB7XHJcbiAgICBpZiAodHlwZW9mIGZvcm1hdCA9PT0gJ3VuZGVmaW5lZCcpIGZvcm1hdCA9ICctJztcclxuICAgIHJldHVybiAoXHJcbiAgICAgIHRoaXMubmVwYWxpWWVhciArIGZvcm1hdCArIHRoaXMubmVwYWxpTW9udGggKyBmb3JtYXQgKyB0aGlzLm5lcGFsaURhdGVcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXROZXBhbGlEYXRlRGlmZmVyZW5jZSh5ZWFyOiBhbnksIG1vbnRoOiBhbnksIGRhdGU6IGFueSkge1xyXG4gICAgLy9HZXR0aW5nIGRpZmZlcmVuY2UgZnJvbSB0aGUgY3VycmVudCBkYXRlIHdpdGggdGhlIGRhdGUgcHJvdmlkZWRcclxuICAgIHZhciBkaWZmZXJlbmNlID1cclxuICAgICAgdGhpcy5jb3VudFRvdGFsTmVwYWxpRGF5cyhcclxuICAgICAgICB0aGlzLm5lcGFsaVllYXIsXHJcbiAgICAgICAgdGhpcy5uZXBhbGlNb250aCxcclxuICAgICAgICB0aGlzLm5lcGFsaURhdGVcclxuICAgICAgKSAtIHRoaXMuY291bnRUb3RhbE5lcGFsaURheXMoeWVhciwgbW9udGgsIGRhdGUpO1xyXG4gICAgcmV0dXJuIGRpZmZlcmVuY2UgPCAwID8gLWRpZmZlcmVuY2UgOiBkaWZmZXJlbmNlO1xyXG4gIH1cclxuXHJcbiAgY291bnRUb3RhbE5lcGFsaURheXMoeWVhcjogYW55LCBtb250aDogYW55LCBkYXRlOiBhbnkpIHtcclxuICAgIHZhciB0b3RhbCA9IDA7XHJcbiAgICBpZiAoeWVhciA8IDIwMDApIHJldHVybiAwO1xyXG5cclxuICAgIHRvdGFsID0gdG90YWwgKyAoZGF0ZSAtIDEpO1xyXG5cclxuICAgIHZhciB5ZWFySW5kZXggPSB5ZWFyIC0gMjAwMDtcclxuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbW9udGggLSAxOyBpKyspXHJcbiAgICAgIHRvdGFsID0gdG90YWwgKyB0aGlzLm5lcGFsaU1vbnRoc1t5ZWFySW5kZXhdW2ldO1xyXG5cclxuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgeWVhckluZGV4OyBpKyspIHRvdGFsID0gdG90YWwgKyB0aGlzLm5lcGFsaVllYXJEYXlzKGkpO1xyXG5cclxuICAgIHJldHVybiB0b3RhbDtcclxuICB9XHJcblxyXG4gIG5lcGFsaVllYXJEYXlzKGluZGV4OiBhbnkpIHtcclxuICAgIHZhciB0b3RhbCA9IDA7XHJcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IDEyOyBpKyspIHRvdGFsICs9IHRoaXMubmVwYWxpTW9udGhzW2luZGV4XVtpXTtcclxuICAgIHJldHVybiB0b3RhbDtcclxuICB9XHJcblxyXG4gIGlzTmVwYWxpUmFuZ2UoZGF0ZTogYW55LCBtb250aDogYW55LCB5ZWFyOiBhbnkpIHtcclxuICAgIGlmICh5ZWFyIDwgMjAwMCB8fCB5ZWFyID4gMjA5OSkgcmV0dXJuIGZhbHNlO1xyXG5cclxuICAgIGlmIChtb250aCA8IDAgfHwgbW9udGggPiAxMSkgcmV0dXJuIGZhbHNlO1xyXG5cclxuICAgIGlmIChkYXRlIDwgMSB8fCBkYXRlID4gdGhpcy5uZXBhbGlNb250aHNbeWVhciAtIDIwMDBdW21vbnRoIC0gMV0pXHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuXHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIC8vQ2xhc3MgUmVndWxhciBtZXRob2RzXHJcblxyXG4gIGdldERheSgpIHtcclxuICAgIC8vUmVmZXJlbmNlIGRhdGUgMTk0My80LzE0IFdlZG5lc2RheVxyXG4gICAgdmFyIGRpZmZlcmVuY2UgPSB0aGlzLmdldEVuZ2xpc2hEYXRlRGlmZmVyZW5jZSgxOTQzLCA0LCAxNCk7XHJcbiAgICB0aGlzLndlZWtEYXkgPSAoKDMgKyAoZGlmZmVyZW5jZSAlIDcpKSAlIDcpICsgMTtcclxuICAgIHJldHVybiB0aGlzLndlZWtEYXk7XHJcbiAgfVxyXG5cclxuICBnZXRFbmdsaXNoWWVhcigpIHtcclxuICAgIHJldHVybiB0aGlzLmVuZ2xpc2hZZWFyO1xyXG4gIH1cclxuXHJcbiAgZ2V0RW5nbGlzaE1vbnRoKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZW5nbGlzaE1vbnRoO1xyXG4gIH1cclxuXHJcbiAgZ2V0RW5nbGlzaERhdGUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5lbmdsaXNoRGF0ZTtcclxuICB9XHJcblxyXG4gIGdldE5lcGFsaVllYXIoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5uZXBhbGlZZWFyO1xyXG4gIH1cclxuICBnZXROZXBhbGlNb250aCgpIHtcclxuICAgIHJldHVybiB0aGlzLm5lcGFsaU1vbnRoO1xyXG4gIH1cclxuXHJcbiAgZ2V0TmVwYWxpRGF0ZSgpIHtcclxuICAgIHJldHVybiB0aGlzLm5lcGFsaURhdGU7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
300
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnAtZGF0ZXBpY2tlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbnB4LW5wLWRhdGVwaWNrZXIvc3JjL2xpYi9ucC1kYXRlcGlja2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLM0MsTUFBTSxPQUFPLG1CQUFtQjtJQXFIOUI7UUFwSEEsa0JBQWEsR0FBRyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDakUsc0JBQWlCLEdBQUcsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3JFLGlCQUFZLEdBQUc7WUFDYixDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNoRCxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDO1lBQ2hELENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDaEQsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVB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QUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNoRCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVELGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVELGVBQWU7UUFDYixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVELGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVELGFBQWE7UUFDWCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQUNELGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVELGFBQWE7UUFDWCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQzs7Z0hBM1ZVLG1CQUFtQjtvSEFBbkIsbUJBQW1CLGNBRmxCLE1BQU07MkZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOcERhdGVQaWNrZXJTZXJ2aWNlIHtcclxuICBlbmdsaXNoTW9udGhzID0gWzMxLCAyOCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMSwgMzAsIDMxLCAzMCwgMzFdO1xyXG4gIGVuZ2xpc2hMZWFwTW9udGhzID0gWzMxLCAyOSwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMSwgMzAsIDMxLCAzMCwgMzFdO1xyXG4gIG5lcGFsaU1vbnRocyA9IFtcclxuICAgIFszMCwgMzIsIDMxLCAzMiwgMzEsIDMwLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMxXSwgLy8yMDAwXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sIC8vMjAwMVxyXG4gICAgWzMxLCAzMSwgMzIsIDMyLCAzMSwgMzAsIDMwLCAyOSwgMzAsIDI5LCAzMCwgMzBdLCAvLyAyMDAyXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sIC8vIDIwMDNcclxuICAgIFszMCwgMzIsIDMxLCAzMiwgMzEsIDMwLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMxXSwgLy8gMjAwNFxyXG4gICAgWzMxLCAzMSwgMzIsIDMxLCAzMSwgMzEsIDMwLCAyOSwgMzAsIDI5LCAzMCwgMzBdLCAvLyAyMDA1XHJcbiAgICBbMzEsIDMxLCAzMiwgMzIsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sIC8vIDIwMDZcclxuICAgIFszMSwgMzIsIDMxLCAzMiwgMzEsIDMwLCAzMCwgMzAsIDI5LCAyOSwgMzAsIDMxXSwgLy8gMjAwNlxyXG4gICAgWzMxLCAzMSwgMzEsIDMyLCAzMSwgMzEsIDI5LCAzMCwgMzAsIDI5LCAyOSwgMzFdLCAvLyAyMDA3XHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sIC8vIDIwMDhcclxuICAgIFszMSwgMzEsIDMyLCAzMiwgMzEsIDMwLCAzMCwgMjksIDMwLCAyOSwgMzAsIDMwXSwgLy8gMjAwOVxyXG4gICAgWzMxLCAzMiwgMzEsIDMyLCAzMSwgMzAsIDMwLCAzMCwgMjksIDI5LCAzMCwgMzFdLCAvLyAyMDEwXHJcbiAgICBbMzEsIDMxLCAzMSwgMzIsIDMxLCAzMSwgMjksIDMwLCAzMCwgMjksIDMwLCAzMF0sIC8vIDIwMTFcclxuICAgIFszMSwgMzEsIDMyLCAzMSwgMzEsIDMxLCAzMCwgMjksIDMwLCAyOSwgMzAsIDMwXSwgLy8gMjAxMlxyXG4gICAgWzMxLCAzMSwgMzIsIDMyLCAzMSwgMzAsIDMwLCAyOSwgMzAsIDI5LCAzMCwgMzBdLCAvLyAyMDEzXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sIC8vIDIwMTRcclxuICAgIFszMSwgMzEsIDMxLCAzMiwgMzEsIDMxLCAyOSwgMzAsIDMwLCAyOSwgMzAsIDMwXSwgLy8gMjAxNVxyXG4gICAgWzMxLCAzMSwgMzIsIDMxLCAzMSwgMzEsIDMwLCAyOSwgMzAsIDI5LCAzMCwgMzBdLCAvLyAyMDE2XHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sIC8vIDIwMTdcclxuICAgIFszMSwgMzIsIDMxLCAzMiwgMzEsIDMwLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMxXSwgLy8gMjAxOFxyXG4gICAgWzMxLCAzMSwgMzEsIDMyLCAzMSwgMzEsIDMwLCAyOSwgMzAsIDI5LCAzMCwgMzBdLCAvLyAyMDE5XHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sIC8vIDIwMjBcclxuICAgIFszMSwgMzIsIDMxLCAzMiwgMzEsIDMwLCAzMCwgMzAsIDI5LCAyOSwgMzAsIDMwXSwgLy8gMjAyMVxyXG4gICAgWzMxLCAzMiwgMzEsIDMyLCAzMSwgMzAsIDMwLCAzMCwgMjksIDMwLCAyOSwgMzFdLCAvLyAyMDIyXHJcbiAgICBbMzEsIDMxLCAzMSwgMzIsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sIC8vIDIwMjNcclxuICAgIFszMSwgMzEsIDMyLCAzMSwgMzEsIDMxLCAzMCwgMjksIDMwLCAyOSwgMzAsIDMwXSwgLy8gMjAyNFxyXG4gICAgWzMxLCAzMiwgMzEsIDMyLCAzMSwgMzAsIDMwLCAzMCwgMjksIDI5LCAzMCwgMzFdLCAvLyAyMDI1XHJcbiAgICBbMzAsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDI5LCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMyLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sXHJcbiAgICBbMzAsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDI5LCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzIsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sXHJcbiAgICBbMzAsIDMyLCAzMSwgMzIsIDMxLCAzMSwgMjksIDMwLCAzMCwgMjksIDI5LCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzIsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMSwgMzIsIDMxLCAzMSwgMjksIDMwLCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzIsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMSwgMzIsIDMxLCAzMSwgMjksIDMwLCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMSwgMzIsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDI5LCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMSwgMzIsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDI5LCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMyLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sXHJcbiAgICBbMzAsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDI5LCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzIsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sXHJcbiAgICBbMzAsIDMyLCAzMSwgMzIsIDMxLCAzMSwgMjksIDMwLCAyOSwgMzAsIDI5LCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzIsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMSwgMzIsIDMxLCAzMSwgMjksIDMwLCAzMCwgMjksIDI5LCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzIsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMSwgMzIsIDMxLCAzMSwgMjksIDMwLCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sIC8vMjA3MVxyXG4gICAgWzMxLCAzMiwgMzEsIDMyLCAzMSwgMzAsIDMwLCAyOSwgMzAsIDI5LCAzMCwgMzBdLCAvLzIwNzJcclxuICAgIFszMSwgMzIsIDMxLCAzMiwgMzEsIDMwLCAzMCwgMzAsIDI5LCAyOSwgMzAsIDMxXSwgLy8yMDczXHJcbiAgICBbMzEsIDMxLCAzMSwgMzIsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMF0sIC8vIDIwNzZcclxuICAgIFszMSwgMzIsIDMxLCAzMiwgMzEsIDMwLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMxXSxcclxuICAgIFszMSwgMzEsIDMxLCAzMiwgMzEsIDMxLCAzMCwgMjksIDMwLCAyOSwgMzAsIDMwXSwgLy8gMjA3OFxyXG4gICAgWzMxLCAzMSwgMzIsIDMxLCAzMSwgMzEsIDMwLCAyOSwgMzAsIDI5LCAzMCwgMzBdLCAvLyAyMDc5XHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMjksIDMwLCAzMF0sIC8vIDIwODBcclxuICAgIFszMSwgMzIsIDMxLCAzMiwgMzEsIDMwLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMxXSwgLy8gMjA4MVxyXG4gICAgWzMxLCAzMSwgMzIsIDMxLCAzMSwgMzEsIDMwLCAyOSwgMzAsIDI5LCAzMCwgMzBdLCAvLyAyMDgyXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDMwLCAzMF0sIC8vIDIwODNcclxuICAgIFszMSwgMzEsIDMyLCAzMSwgMzEsIDMwLCAzMCwgMzAsIDI5LCAzMCwgMzAsIDMwXSxcclxuICAgIFszMSwgMzIsIDMxLCAzMiwgMzAsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMzAsIDMwXSxcclxuICAgIFszMCwgMzIsIDMxLCAzMiwgMzEsIDMwLCAzMCwgMzAsIDI5LCAzMCwgMzAsIDMwXSxcclxuICAgIFszMSwgMzEsIDMyLCAzMSwgMzEsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMzAsIDMwXSxcclxuICAgIFszMCwgMzEsIDMyLCAzMiwgMzAsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMzAsIDMwXSxcclxuICAgIFszMCwgMzIsIDMxLCAzMiwgMzEsIDMwLCAzMCwgMzAsIDI5LCAzMCwgMzAsIDMwXSxcclxuICAgIFszMCwgMzIsIDMxLCAzMiwgMzEsIDMwLCAzMCwgMzAsIDI5LCAzMCwgMzAsIDMwXSwgLy8yMDkwXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDMwLCAyOSwgMzAsIDMwLCAzMF0sXHJcbiAgICBbMzAsIDMxLCAzMiwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDMwLCAzMF0sXHJcbiAgICBbMzAsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAzMCwgMzAsIDMwLCAzMF0sXHJcbiAgICBbMzAsIDMxLCAzMiwgMzIsIDMxLCAzMCwgMzAsIDI5LCAzMCwgMjksIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMyLCAzMSwgMzIsIDMxLCAzMCwgMzAsIDMwLCAyOSwgMzAsIDMwLCAzMF0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMjksIDMwLCAyOSwgMzAsIDI5LCAzMV0sXHJcbiAgICBbMzEsIDMxLCAzMiwgMzEsIDMxLCAzMSwgMzAsIDI5LCAyOSwgMzAsIDMwLCAzMF0sIC8vMjA5OVxyXG4gIF07XHJcblxyXG4gIGVuZ2xpc2hZZWFyOiBhbnk7XHJcbiAgZW5nbGlzaE1vbnRoOiBhbnk7XHJcbiAgZW5nbGlzaERhdGU6IGFueTtcclxuXHJcbiAgbmVwYWxpWWVhcjogYW55O1xyXG4gIG5lcGFsaU1vbnRoOiBhbnk7XHJcbiAgbmVwYWxpRGF0ZTogYW55O1xyXG5cclxuICB3ZWVrRGF5OiBhbnk7XHJcbiAgZm9ybWF0ID0gJy4nO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHZhciBkID0gbmV3IERhdGUoKTtcclxuICB9XHJcblxyXG4gIHNldEN1cnJlbnROZXBhbGlEYXRlKCkge1xyXG4gICAgdmFyIGQgPSBuZXcgRGF0ZSgpO1xyXG4gICAgcmV0dXJuIHRoaXMuZW5nVG9OZXBEYXRlKGQuZ2V0RGF0ZSgpLCBkLmdldE1vbnRoKCksIGQuZ2V0RnVsbFllYXIoKSk7XHJcbiAgfVxyXG5cclxuICAvL0VuZ2xpc2ggdG8gTmVwYWxpIGRhdGUgY29udmVyc2lvblxyXG4gIGVuZ1RvTmVwRGF0ZShkYXRlOiBhbnksIG1vbnRoOiBhbnksIHllYXI6IGFueSkge1xyXG4gICAgaWYgKCF0aGlzLmlzRW5nbGlzaFJhbmdlKGRhdGUsIG1vbnRoLCB5ZWFyKSlcclxuICAgICAgY29uc29sZS5sb2coJ0ludmFsaWQgZGF0ZSBmb3JtYXQuJyk7XHJcblxyXG4gICAgdGhpcy5lbmdsaXNoWWVhciA9IHllYXI7XHJcbiAgICB0aGlzLmVuZ2xpc2hNb250aCA9IG1vbnRoICsgMTtcclxuICAgIHRoaXMuZW5nbGlzaERhdGUgPSBkYXRlO1xyXG5cclxuICAgIC8vU2V0dGluZyBuZXBhbGkgcmVmZXJlbmNlIHRvIDIwMDAvMS8xIHdpdGggZW5nbGlzaCBkYXRlIDE5NDMvNC8xNFxyXG4gICAgdGhpcy5uZXBhbGlZZWFyID0gMjAwMDtcclxuICAgIHRoaXMubmVwYWxpTW9udGggPSAxO1xyXG4gICAgdGhpcy5uZXBhbGlEYXRlID0gMTtcclxuXHJcbiAgICB2YXIgZGlmZmVyZW5jZSA9IHRoaXMuZ2V0RW5nbGlzaERhdGVEaWZmZXJlbmNlKDE5NDMsIDQsIDE0KTtcclxuXHJcbiAgICAvL0dldHRpbmcgbmVwYWxpIHllYXIgdW50aWxsIHRoZSBkaWZmZXJlbmNlIHJlbWFpbnMgbGVzcyB0aGFuIDM2NVxyXG4gICAgdmFyIGluZGV4ID0gMDtcclxuICAgIHdoaWxlIChkaWZmZXJlbmNlID49IHRoaXMubmVwYWxpWWVhckRheXMoaW5kZXgpKSB7XHJcbiAgICAgIHRoaXMubmVwYWxpWWVhcisrO1xyXG4gICAgICBkaWZmZXJlbmNlID0gZGlmZmVyZW5jZSAtIHRoaXMubmVwYWxpWWVhckRheXMoaW5kZXgpO1xyXG4gICAgICBpbmRleCsrO1xyXG4gICAgICAvL2NvbnNvbGUubG9nKCdEaWZmZXJlbmNlOicrZGlmZmVyZW5jZSsgJ25lcGFsaVllYXJEYXlzOicrdGhpcy5uZXBhbGlZZWFyRGF5cyhpbmRleCkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vY29uc29sZS5sb2coXCJuZXBhbGlNb250aHM9XCIrdGhpcy5uZXBhbGlNb250aHNbaW5kZXhdWzBdK1wiZGlmZmVyZW5jZTpcIitkaWZmZXJlbmNlKTtcclxuICAgIC8vR2V0dGluZyBuZXBhbGkgbW9udGggdW50aWxsIHRoZSBkaWZmZXJlbmNlIHJlbWFpbnMgbGVzcyB0aGFuIDMxXHJcbiAgICB2YXIgaSA9IDA7XHJcbiAgICB3aGlsZSAoZGlmZmVyZW5jZSA+PSB0aGlzLm5lcGFsaU1vbnRoc1tpbmRleF1baV0pIHtcclxuICAgICAgZGlmZmVyZW5jZSA9IGRpZmZlcmVuY2UgLSB0aGlzLm5lcGFsaU1vbnRoc1tpbmRleF1baV07XHJcbiAgICAgIHRoaXMubmVwYWxpTW9udGgrKztcclxuICAgICAgaSsrO1xyXG4gICAgICAvL2NvbnNvbGUubG9nKFwibmVwYWxpTW9udGhzPVwiK3RoaXMubmVwYWxpTW9udGhzW2luZGV4XVtpXStcImRpZmZlcmVuY2U6XCIrZGlmZmVyZW5jZSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLm5lcGFsaU1vbnRoLS07XHJcbiAgICAvL2NvbnNvbGUubG9nKGRpZmZlcmVuY2UpO1xyXG5cclxuICAgIC8vUmVtYW5pbmcgZGF5cyBpcyB0aGUgZGF0ZTtcclxuICAgIHRoaXMubmVwYWxpRGF0ZSA9IHRoaXMubmVwYWxpRGF0ZSArIGRpZmZlcmVuY2U7XHJcbiAgICB0aGlzLmdldERheSgpO1xyXG5cclxuICAgIHJldHVybiB7XHJcbiAgICAgIGRheTogdGhpcy5uZXBhbGlEYXRlLFxyXG4gICAgICBtb250aDogdGhpcy5uZXBhbGlNb250aCxcclxuICAgICAgeWVhcjogdGhpcy5uZXBhbGlZZWFyXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgdG9FbmdsaXNoU3RyaW5nKGZvcm1hdDogYW55KSB7XHJcbiAgICBpZiAodHlwZW9mIGZvcm1hdCA9PT0gJ3VuZGVmaW5lZCcpIGZvcm1hdCA9ICctJztcclxuICAgIHJldHVybiAoXHJcbiAgICAgIHRoaXMuZW5nbGlzaFllYXIgKyBmb3JtYXQgKyB0aGlzLmVuZ2xpc2hNb250aCArIGZvcm1hdCArIHRoaXMuZW5nbGlzaERhdGVcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRFbmdsaXNoRGF0ZURpZmZlcmVuY2UoeWVhcjogYW55LCBtb250aDogYW55LCBkYXRlOiBhbnkpIHtcclxuICAgIC8vR2V0dGluZyBkaWZmZXJlbmNlIGZyb20gdGhlIGN1cnJlbnQgZGF0ZSB3aXRoIHRoZSBkYXRlIHByb3ZpZGVkXHJcbiAgICB2YXIgZGlmZmVyZW5jZSA9XHJcbiAgICAgIHRoaXMuY291bnRUb3RhbEVuZ2xpc2hEYXlzKFxyXG4gICAgICAgIHRoaXMuZW5nbGlzaFllYXIsXHJcbiAgICAgICAgdGhpcy5lbmdsaXNoTW9udGgsXHJcbiAgICAgICAgdGhpcy5lbmdsaXNoRGF0ZVxyXG4gICAgICApIC0gdGhpcy5jb3VudFRvdGFsRW5nbGlzaERheXMoeWVhciwgbW9udGgsIGRhdGUpO1xyXG4gICAgcmV0dXJuIGRpZmZlcmVuY2UgPCAwID8gLWRpZmZlcmVuY2UgOiBkaWZmZXJlbmNlO1xyXG4gIH1cclxuXHJcbiAgY291bnRUb3RhbEVuZ2xpc2hEYXlzKHllYXI6IGFueSwgbW9udGg6IGFueSwgZGF0ZTogYW55KSB7XHJcbiAgICB2YXIgdG90YWxEYXlzID0geWVhciAqIDM2NSArIGRhdGU7XHJcblxyXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBtb250aCAtIDE7IGkrKylcclxuICAgICAgdG90YWxEYXlzID0gdG90YWxEYXlzICsgdGhpcy5lbmdsaXNoTW9udGhzW2ldO1xyXG5cclxuICAgIHRvdGFsRGF5cyA9IHRvdGFsRGF5cyArIHRoaXMuY291bnRsZWFwKHllYXIsIG1vbnRoKTtcclxuICAgIHJldHVybiB0b3RhbERheXM7XHJcbiAgfVxyXG5cclxuICBjb3VudGxlYXAoeWVhcjogYW55LCBtb250aDogYW55KSB7XHJcbiAgICBpZiAobW9udGggPD0gMikgeWVhci0tO1xyXG5cclxuICAgIHJldHVybiAoXHJcbiAgICAgIE1hdGguZmxvb3IoeWVhciAvIDQpIC0gTWF0aC5mbG9vcih5ZWFyIC8gMTAwKSArIE1hdGguZmxvb3IoeWVhciAvIDQwMClcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBpc0VuZ2xpc2hSYW5nZShkYXRlOiBhbnksIG1vbnRoOiBhbnksIHllYXI6IGFueSkge1xyXG4gICAgaWYgKHllYXIgPCAxOTQ0IHx8IHllYXIgPiAyMDQyKSByZXR1cm4gZmFsc2U7XHJcbiAgICBpZiAobW9udGggPCAxIHx8IG1vbnRoID4gMTIpIHJldHVybiBmYWxzZTtcclxuICAgIGlmIChkYXRlIDwgMSB8fCBkYXRlID4gMzEpIHJldHVybiBmYWxzZTtcclxuXHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGlzTGVhcFllYXIoeWVhcjogYW55KSB7XHJcbiAgICBpZiAoeWVhciAlIDQgPT09IDApIHtcclxuICAgICAgcmV0dXJuIHllYXIgJSAxMDAgPT09IDAgPyB5ZWFyICUgNDAwID09PSAwIDogdHJ1ZTtcclxuICAgIH0gZWxzZSByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICAvL05lcGFsaSB0byBFbmdsaXNoIGNvbnZlcnNpb25cclxuICBuZXBUb0VuZ0RhdGUoZGF0ZTogYW55LCBtb250aDogYW55LCB5ZWFyOiBhbnkpIHtcclxuICAgIGlmICghdGhpcy5pc05lcGFsaVJhbmdlKGRhdGUsIG1vbnRoLCB5ZWFyKSkge1xyXG4gICAgICBjb25zb2xlLmxvZygnSW52YWxpZCBEYXRlIEZvcm1hdCcpO1xyXG4gICAgICAvLyB0aHJvdyBuZXcgRXhjZXB0aW9uKFwiSW52YWxpZCBkYXRlIGZvcm1hdC5cIik7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLm5lcGFsaVllYXIgPSB5ZWFyO1xyXG4gICAgdGhpcy5uZXBhbGlNb250aCA9IG1vbnRoICsgMTtcclxuICAgIHRoaXMubmVwYWxpRGF0ZSA9IGRhdGU7XHJcblxyXG4gICAgLy9TZXR0aW5nIGVuZ2xpc2ggcmVmZXJlbmNlIHRvIDE5NDQvMS8xIHdpdGggbmVwYWxpIGRhdGUgMjAwMC85LzE3XHJcbiAgICB0aGlzLmVuZ2xpc2hZZWFyID0gMTk0NDtcclxuICAgIHRoaXMuZW5nbGlzaE1vbnRoID0gMTtcclxuICAgIHRoaXMuZW5nbGlzaERhdGUgPSAxO1xyXG5cclxuICAgIHZhciBkaWZmZXJlbmNlID0gdGhpcy5nZXROZXBhbGlEYXRlRGlmZmVyZW5jZSgyMDAwLCA5LCAxNyk7XHJcblxyXG4gICAgLy9HZXR0aW5nIGVuZ2xpc2ggeWVhciB1bnRpbGwgdGhlIGRpZmZlcmVuY2UgcmVtYWlucyBsZXNzIHRoYW4gMzY1XHJcbiAgICB3aGlsZSAoZGlmZmVyZW5jZSA+PSAodGhpcy5pc0xlYXBZZWFyKHRoaXMuZW5nbGlzaFllYXIpID8gMzY2IDogMzY1KSkge1xyXG4gICAgICBkaWZmZXJlbmNlID0gZGlmZmVyZW5jZSAtICh0aGlzLmlzTGVhcFllYXIodGhpcy5lbmdsaXNoWWVhcikgPyAzNjYgOiAzNjUpO1xyXG4gICAgICB0aGlzLmVuZ2xpc2hZZWFyKys7XHJcbiAgICB9XHJcblxyXG4gICAgLy9HZXR0aW5nIGVuZ2xpc2ggbW9udGggdW50aWxsIHRoZSBkaWZmZXJlbmNlIHJlbWFpbnMgbGVzcyB0aGFuIDMxXHJcbiAgICB2YXIgbW9udGhEYXlzID0gdGhpcy5pc0xlYXBZZWFyKHRoaXMuZW5nbGlzaFllYXIpXHJcbiAgICAgID8gdGhpcy5lbmdsaXNoTGVhcE1vbnRoc1xyXG4gICAgICA6IHRoaXMuZW5nbGlzaE1vbnRocztcclxuICAgIHZhciBpID0gMDtcclxuICAgIHdoaWxlIChkaWZmZXJlbmNlID49IG1vbnRoRGF5c1tpXSkge1xyXG4gICAgICB0aGlzLmVuZ2xpc2hNb250aCsrO1xyXG4gICAgICBkaWZmZXJlbmNlID0gZGlmZmVyZW5jZSAtIG1vbnRoRGF5c1tpXTtcclxuICAgICAgaSsrO1xyXG4gICAgfVxyXG5cclxuICAgIC8vUmVtYW5pbmcgZGF5cyBpcyB0aGUgZGF0ZTtcclxuICAgIHRoaXMuZW5nbGlzaERhdGUgPSB0aGlzLmVuZ2xpc2hEYXRlICsgZGlmZmVyZW5jZTtcclxuICAgIHRoaXMuZ2V0RGF5KCk7XHJcblxyXG4gICAgcmV0dXJuIG5ldyBEYXRlKHRoaXMuZW5nbGlzaFllYXIgKyAnLScgKyB0aGlzLmVuZ2xpc2hNb250aCArICctJyArIHRoaXMuZW5nbGlzaERhdGUpO1xyXG4gIH1cclxuXHJcbiAgdG9OZXBhbGlTdHJpbmcoZm9ybWF0OiBhbnkpIHtcclxuICAgIGlmICh0eXBlb2YgZm9ybWF0ID09PSAndW5kZWZpbmVkJykgZm9ybWF0ID0gJy0nO1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgdGhpcy5uZXBhbGlZZWFyICsgZm9ybWF0ICsgdGhpcy5uZXBhbGlNb250aCArIGZvcm1hdCArIHRoaXMubmVwYWxpRGF0ZVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldE5lcGFsaURhdGVEaWZmZXJlbmNlKHllYXI6IGFueSwgbW9udGg6IGFueSwgZGF0ZTogYW55KSB7XHJcbiAgICAvL0dldHRpbmcgZGlmZmVyZW5jZSBmcm9tIHRoZSBjdXJyZW50IGRhdGUgd2l0aCB0aGUgZGF0ZSBwcm92aWRlZFxyXG4gICAgdmFyIGRpZmZlcmVuY2UgPVxyXG4gICAgICB0aGlzLmNvdW50VG90YWxOZXBhbGlEYXlzKFxyXG4gICAgICAgIHRoaXMubmVwYWxpWWVhcixcclxuICAgICAgICB0aGlzLm5lcGFsaU1vbnRoLFxyXG4gICAgICAgIHRoaXMubmVwYWxpRGF0ZVxyXG4gICAgICApIC0gdGhpcy5jb3VudFRvdGFsTmVwYWxpRGF5cyh5ZWFyLCBtb250aCwgZGF0ZSk7XHJcbiAgICByZXR1cm4gZGlmZmVyZW5jZSA8IDAgPyAtZGlmZmVyZW5jZSA6IGRpZmZlcmVuY2U7XHJcbiAgfVxyXG5cclxuICBjb3VudFRvdGFsTmVwYWxpRGF5cyh5ZWFyOiBhbnksIG1vbnRoOiBhbnksIGRhdGU6IGFueSkge1xyXG4gICAgdmFyIHRvdGFsID0gMDtcclxuICAgIGlmICh5ZWFyIDwgMjAwMCkgcmV0dXJuIDA7XHJcblxyXG4gICAgdG90YWwgPSB0b3RhbCArIChkYXRlIC0gMSk7XHJcblxyXG4gICAgdmFyIHllYXJJbmRleCA9IHllYXIgLSAyMDAwO1xyXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBtb250aCAtIDE7IGkrKylcclxuICAgICAgdG90YWwgPSB0b3RhbCArIHRoaXMubmVwYWxpTW9udGhzW3llYXJJbmRleF1baV07XHJcblxyXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCB5ZWFySW5kZXg7IGkrKykgdG90YWwgPSB0b3RhbCArIHRoaXMubmVwYWxpWWVhckRheXMoaSk7XHJcblxyXG4gICAgcmV0dXJuIHRvdGFsO1xyXG4gIH1cclxuXHJcbiAgbmVwYWxpWWVhckRheXMoaW5kZXg6IGFueSkge1xyXG4gICAgdmFyIHRvdGFsID0gMDtcclxuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgMTI7IGkrKykgdG90YWwgKz0gdGhpcy5uZXBhbGlNb250aHNbaW5kZXhdW2ldO1xyXG4gICAgcmV0dXJuIHRvdGFsO1xyXG4gIH1cclxuXHJcbiAgaXNOZXBhbGlSYW5nZShkYXRlOiBhbnksIG1vbnRoOiBhbnksIHllYXI6IGFueSkge1xyXG4gICAgaWYgKHllYXIgPCAyMDAwIHx8IHllYXIgPiAyMDk5KSByZXR1cm4gZmFsc2U7XHJcblxyXG4gICAgaWYgKG1vbnRoIDwgMCB8fCBtb250aCA+IDExKSByZXR1cm4gZmFsc2U7XHJcblxyXG4gICAgaWYgKGRhdGUgPCAxIHx8IGRhdGUgPiB0aGlzLm5lcGFsaU1vbnRoc1t5ZWFyIC0gMjAwMF1bbW9udGggLSAxXSlcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG5cclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgLy9DbGFzcyBSZWd1bGFyIG1ldGhvZHNcclxuXHJcbiAgZ2V0RGF5KCkge1xyXG4gICAgLy9SZWZlcmVuY2UgZGF0ZSAxOTQzLzQvMTQgV2VkbmVzZGF5XHJcbiAgICB2YXIgZGlmZmVyZW5jZSA9IHRoaXMuZ2V0RW5nbGlzaERhdGVEaWZmZXJlbmNlKDE5NDMsIDQsIDE0KTtcclxuICAgIHRoaXMud2Vla0RheSA9ICgoMyArIChkaWZmZXJlbmNlICUgNykpICUgNykgKyAxO1xyXG4gICAgcmV0dXJuIHRoaXMud2Vla0RheTtcclxuICB9XHJcblxyXG4gIGdldEVuZ2xpc2hZZWFyKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZW5nbGlzaFllYXI7XHJcbiAgfVxyXG5cclxuICBnZXRFbmdsaXNoTW9udGgoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5lbmdsaXNoTW9udGg7XHJcbiAgfVxyXG5cclxuICBnZXRFbmdsaXNoRGF0ZSgpIHtcclxuICAgIHJldHVybiB0aGlzLmVuZ2xpc2hEYXRlO1xyXG4gIH1cclxuXHJcbiAgZ2V0TmVwYWxpWWVhcigpIHtcclxuICAgIHJldHVybiB0aGlzLm5lcGFsaVllYXI7XHJcbiAgfVxyXG4gIGdldE5lcGFsaU1vbnRoKCkge1xyXG4gICAgcmV0dXJuIHRoaXMubmVwYWxpTW9udGg7XHJcbiAgfVxyXG5cclxuICBnZXROZXBhbGlEYXRlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMubmVwYWxpRGF0ZTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
@@ -91,8 +91,8 @@ class NpDatePickerService {
91
91
  [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30],
92
92
  [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],
93
93
  [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30],
94
- [31, 31, 32, 32, 31, 30, 30, 30, 29, 30, 30, 30],
95
- [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30],
94
+ [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],
95
+ [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],
96
96
  [31, 31, 32, 31, 31, 30, 30, 30, 29, 30, 30, 30],
97
97
  [31, 31, 32, 31, 31, 30, 30, 30, 29, 30, 30, 30],
98
98
  [31, 32, 31, 32, 30, 31, 30, 30, 29, 30, 30, 30],
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-np-datepicker.mjs","sources":["../../../projects/npx-np-datepicker/src/lib/np-datepicker.service.ts","../../../projects/npx-np-datepicker/src/lib/mapping.ts","../../../projects/npx-np-datepicker/src/lib/to-np.pipe.ts","../../../projects/npx-np-datepicker/src/lib/np-datepicker.component.ts","../../../projects/npx-np-datepicker/src/lib/np-date-picker.component.html","../../../projects/npx-np-datepicker/src/lib/np-datepicker.module.ts","../../../projects/npx-np-datepicker/src/public-api.ts","../../../projects/npx-np-datepicker/src/ngx-np-datepicker.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class NpDatePickerService {\r\n englishMonths = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\r\n englishLeapMonths = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\r\n nepaliMonths = [\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31], //2000\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], //2001\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30], // 2002\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31], // 2003\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31], // 2004\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2005\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30], // 2006\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31], // 2006\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 29, 31], // 2007\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2008\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30], // 2009\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31], // 2010\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 32, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [30, 32, 31, 32, 31, 31, 29, 30, 30, 29, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 32, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [30, 32, 31, 32, 31, 31, 29, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], //2071\r\n [31, 32, 31, 32, 31, 30, 30, 29, 30, 29, 30, 30], //2072\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31], //2073\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30], // 2076\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30], // 2078\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2079\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 31, 32, 31, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 31, 32, 31, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 32, 31, 32, 30, 31, 30, 30, 29, 30, 30, 30],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 30, 29, 30, 30, 30],\r\n [30, 31, 32, 32, 30, 31, 30, 30, 29, 30, 30, 30],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30], //2090\r\n [31, 31, 32, 31, 31, 31, 30, 30, 29, 30, 30, 30],\r\n [30, 31, 32, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 31, 32, 31, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 30, 30, 30],\r\n [30, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 29, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 29, 30, 30, 30], //2099\r\n ];\r\n\r\n englishYear: any;\r\n englishMonth: any;\r\n englishDate: any;\r\n\r\n nepaliYear: any;\r\n nepaliMonth: any;\r\n nepaliDate: any;\r\n\r\n weekDay: any;\r\n format = '.';\r\n\r\n constructor() {\r\n var d = new Date();\r\n }\r\n\r\n setCurrentNepaliDate() {\r\n var d = new Date();\r\n return this.engToNepDate( d.getDate(), d.getMonth(),d.getFullYear() );\r\n }\r\n\r\n //English to Nepali date conversion\r\n engToNepDate(date: any, month: any, year: any) {\r\n if (!this.isEnglishRange(date, month, year))\r\n console.log('Invalid date format.');\r\n\r\n this.englishYear = year;\r\n this.englishMonth = month + 1;\r\n this.englishDate = date;\r\n \r\n //Setting nepali reference to 2000/1/1 with english date 1943/4/14\r\n this.nepaliYear = 2000;\r\n this.nepaliMonth = 1;\r\n this.nepaliDate = 1;\r\n\r\n var difference = this.getEnglishDateDifference(1943, 4, 14);\r\n \r\n //Getting nepali year untill the difference remains less than 365\r\n var index = 0;\r\n while (difference >= this.nepaliYearDays(index)) {\r\n this.nepaliYear++;\r\n difference = difference - this.nepaliYearDays(index);\r\n index++;\r\n //console.log('Difference:'+difference+ 'nepaliYearDays:'+this.nepaliYearDays(index));\r\n }\r\n \r\n //console.log(\"nepaliMonths=\"+this.nepaliMonths[index][0]+\"difference:\"+difference);\r\n //Getting nepali month untill the difference remains less than 31\r\n var i = 0;\r\n while (difference >= this.nepaliMonths[index][i]) {\r\n difference = difference - this.nepaliMonths[index][i];\r\n this.nepaliMonth++;\r\n i++;\r\n //console.log(\"nepaliMonths=\"+this.nepaliMonths[index][i]+\"difference:\"+difference);\r\n }\r\n this.nepaliMonth--;\r\n //console.log(difference);\r\n \r\n //Remaning days is the date;\r\n this.nepaliDate = this.nepaliDate + difference;\r\n this.getDay();\r\n \r\n return {\r\n day: this.nepaliDate,\r\n month: this.nepaliMonth,\r\n year: this.nepaliYear\r\n };\r\n }\r\n\r\n toEnglishString(format: any) {\r\n if (typeof format === 'undefined') format = '-';\r\n return (\r\n this.englishYear + format + this.englishMonth + format + this.englishDate\r\n );\r\n }\r\n\r\n getEnglishDateDifference(year: any, month: any, date: any) {\r\n //Getting difference from the current date with the date provided\r\n var difference =\r\n this.countTotalEnglishDays(\r\n this.englishYear,\r\n this.englishMonth,\r\n this.englishDate\r\n ) - this.countTotalEnglishDays(year, month, date);\r\n return difference < 0 ? -difference : difference;\r\n }\r\n\r\n countTotalEnglishDays(year: any, month: any, date: any) {\r\n var totalDays = year * 365 + date;\r\n\r\n for (var i = 0; i < month - 1; i++)\r\n totalDays = totalDays + this.englishMonths[i];\r\n\r\n totalDays = totalDays + this.countleap(year, month);\r\n return totalDays;\r\n }\r\n\r\n countleap(year: any, month: any) {\r\n if (month <= 2) year--;\r\n\r\n return (\r\n Math.floor(year / 4) - Math.floor(year / 100) + Math.floor(year / 400)\r\n );\r\n }\r\n\r\n isEnglishRange(date: any, month: any, year: any) {\r\n if (year < 1944 || year > 2042) return false;\r\n if (month < 1 || month > 12) return false;\r\n if (date < 1 || date > 31) return false;\r\n\r\n return true;\r\n }\r\n\r\n isLeapYear(year: any) {\r\n if (year % 4 === 0) {\r\n return year % 100 === 0 ? year % 400 === 0 : true;\r\n } else return false;\r\n }\r\n\r\n //Nepali to English conversion\r\n nepToEngDate(date: any, month: any, year: any) {\r\n if (!this.isNepaliRange(date, month, year)) {\r\n console.log('Invalid Date Format');\r\n // throw new Exception(\"Invalid date format.\");\r\n return;\r\n }\r\n\r\n this.nepaliYear = year;\r\n this.nepaliMonth = month+1;\r\n this.nepaliDate = date;\r\n\r\n //Setting english reference to 1944/1/1 with nepali date 2000/9/17\r\n this.englishYear = 1944;\r\n this.englishMonth = 1;\r\n this.englishDate = 1;\r\n\r\n var difference = this.getNepaliDateDifference(2000, 9, 17);\r\n\r\n //Getting english year untill the difference remains less than 365\r\n while (difference >= (this.isLeapYear(this.englishYear) ? 366 : 365)) {\r\n difference = difference - (this.isLeapYear(this.englishYear) ? 366 : 365);\r\n this.englishYear++;\r\n }\r\n\r\n //Getting english month untill the difference remains less than 31\r\n var monthDays = this.isLeapYear(this.englishYear)\r\n ? this.englishLeapMonths\r\n : this.englishMonths;\r\n var i = 0;\r\n while (difference >= monthDays[i]) {\r\n this.englishMonth++;\r\n difference = difference - monthDays[i];\r\n i++;\r\n }\r\n\r\n //Remaning days is the date;\r\n this.englishDate = this.englishDate + difference;\r\n this.getDay();\r\n\r\n return new Date(this.englishYear + '-' + this.englishMonth + '-' + this.englishDate);\r\n }\r\n\r\n toNepaliString(format: any) {\r\n if (typeof format === 'undefined') format = '-';\r\n return (\r\n this.nepaliYear + format + this.nepaliMonth + format + this.nepaliDate\r\n );\r\n }\r\n\r\n getNepaliDateDifference(year: any, month: any, date: any) {\r\n //Getting difference from the current date with the date provided\r\n var difference =\r\n this.countTotalNepaliDays(\r\n this.nepaliYear,\r\n this.nepaliMonth,\r\n this.nepaliDate\r\n ) - this.countTotalNepaliDays(year, month, date);\r\n return difference < 0 ? -difference : difference;\r\n }\r\n\r\n countTotalNepaliDays(year: any, month: any, date: any) {\r\n var total = 0;\r\n if (year < 2000) return 0;\r\n\r\n total = total + (date - 1);\r\n\r\n var yearIndex = year - 2000;\r\n for (var i = 0; i < month - 1; i++)\r\n total = total + this.nepaliMonths[yearIndex][i];\r\n\r\n for (var i = 0; i < yearIndex; i++) total = total + this.nepaliYearDays(i);\r\n\r\n return total;\r\n }\r\n\r\n nepaliYearDays(index: any) {\r\n var total = 0;\r\n for (var i = 0; i < 12; i++) total += this.nepaliMonths[index][i];\r\n return total;\r\n }\r\n\r\n isNepaliRange(date: any, month: any, year: any) {\r\n if (year < 2000 || year > 2099) return false;\r\n\r\n if (month < 0 || month > 11) return false;\r\n\r\n if (date < 1 || date > this.nepaliMonths[year - 2000][month - 1])\r\n return false;\r\n\r\n return true;\r\n }\r\n\r\n //Class Regular methods\r\n\r\n getDay() {\r\n //Reference date 1943/4/14 Wednesday\r\n var difference = this.getEnglishDateDifference(1943, 4, 14);\r\n this.weekDay = ((3 + (difference % 7)) % 7) + 1;\r\n return this.weekDay;\r\n }\r\n\r\n getEnglishYear() {\r\n return this.englishYear;\r\n }\r\n\r\n getEnglishMonth() {\r\n return this.englishMonth;\r\n }\r\n\r\n getEnglishDate() {\r\n return this.englishDate;\r\n }\r\n\r\n getNepaliYear() {\r\n return this.nepaliYear;\r\n }\r\n getNepaliMonth() {\r\n return this.nepaliMonth;\r\n }\r\n\r\n getNepaliDate() {\r\n return this.nepaliDate;\r\n }\r\n\r\n}\r\n","import { MonthMapping, DaysMapping, WordsMapping } from './types';\r\n\r\nexport const numberMapping: string[] = ['०', '१', '२', '३', '४', '५', '६', '७', '८', '९'];\r\n\r\nexport const wordsMapping: WordsMapping = {\r\n year: 'साल',\r\n month: 'महिना'\r\n};\r\n\r\nexport const daysMapping: DaysMapping = {\r\n en: {\r\n default: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\r\n short: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa']\r\n },\r\n ne: {\r\n default: ['आइत', 'सोम', 'मंगल्', 'बुध', 'बिही', 'शुक्र', 'शनि'],\r\n short: ['आ', 'सो', 'मं', 'बु', 'बि', 'शु', 'श']\r\n }\r\n};\r\n\r\nexport const monthsMapping: MonthMapping = {\r\n en: {\r\n default: [\r\n 'Baisakh', 'Jestha', 'Asadh', 'Shrawan', 'Bhadra', 'Ashwin', 'Kartik', 'Mangsir', 'Poush', 'Marga', 'Falgun', 'Chaitra'\r\n ],\r\n modern: [\r\n 'Baisakh', 'Jeth', 'Asaar', 'Saawn', 'Bhadau', 'Aashoj', 'Kartik', 'Mangsir', 'Push', 'Magh', 'Fagun', 'Chait'\r\n ],\r\n short: [\r\n 'Bai', 'Jes', 'Asa', 'Shr', 'Bha', 'Ash', 'Kar', 'Man', 'Pou', 'Mar', 'Fal', 'Cha'\r\n ]\r\n },\r\n ne: {\r\n default: [\r\n 'बैशाख', 'जेष्ठ', 'आषाढ', 'श्रवण', 'भाद्र', 'आश्विन', 'कार्तिक', 'मंसिर', 'पौष', 'मार्ग', 'फाल्गुन', 'चैत्र'\r\n ],\r\n modern: [\r\n 'बैशाख', 'जेठ', 'असार', 'साउन', 'भदौ', 'अशोज', 'कार्तिक', 'मंसिर', 'पुष', 'माघ', 'फागुन', 'चैत'\r\n ],\r\n short: [\r\n 'बै', 'जे', 'अ', 'श्रा', 'भा', 'आ', 'का', 'मं', 'पौ', 'मा', 'फा', 'चै'\r\n ]\r\n }\r\n};\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { numberMapping, wordsMapping } from './mapping';\r\n\r\n@Pipe({\r\n name: 'toNp',\r\n})\r\nexport class ToNpPipe implements PipeTransform {\r\n transform(\r\n value: number | string,\r\n language: string = 'ne',\r\n type: string = 'number'\r\n ): any {\r\n if (value) {\r\n if (language === 'ne') {\r\n switch (type) {\r\n case 'number':\r\n const split = value.toString().split('');\r\n return split\r\n .map((n) => {\r\n if (n === ' ') {\r\n return ' ';\r\n }\r\n return numberMapping[+n] ? numberMapping[+n] : n;\r\n })\r\n .join('');\r\n case 'word':\r\n let wrd = value.toString().toLowerCase();\r\n if(wrd ==='month'){\r\n return wordsMapping['month'];\r\n }else if(wrd ==='year'){\r\n return wordsMapping['year'];\r\n }else{\r\n return wrd\r\n }\r\n \r\n default:\r\n }\r\n }else{\r\n return value;\r\n }\r\n } else {\r\n return '';\r\n }\r\n }\r\n}\r\n","import {\r\n Component,\r\n HostListener,\r\n OnInit,\r\n ElementRef,\r\n Input,\r\n forwardRef,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport { NpDatePickerService } from './np-datepicker.service';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\nimport {\r\n NepaliDate,\r\n MonthData,\r\n DaysMapping,\r\n MonthMapping,\r\n DateFormatter,\r\n} from './types';\r\nimport { daysMapping, monthsMapping } from './mapping';\r\n\r\n@Component({\r\n selector: 'np-datepicker',\r\n templateUrl: './np-date-picker.component.html',\r\n styleUrls: ['./np-date-picker.component.css'],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => NpDatePickerComponent),\r\n multi: true,\r\n },\r\n ],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class NpDatePickerComponent implements OnInit, ControlValueAccessor {\r\n nepaliDateToday: NepaliDate = { day: 0, month: 0, year: 0 };\r\n currentNepaliDate: NepaliDate = { day: 0, month: 0, year: 0 };\r\n selectedDate!: NepaliDate;\r\n formattedDate = '';\r\n currentDate: any;\r\n\r\n displayDate!: string;\r\n\r\n years: number[] = [];\r\n\r\n currentMonthData!: any;\r\n\r\n daysMapping: DaysMapping = daysMapping;\r\n\r\n monthsMapping: MonthMapping = monthsMapping;\r\n\r\n isOpen = false;\r\n\r\n hideInput = false;\r\n\r\n alwaysVisible = false;\r\n\r\n @Input()\r\n theme!: string;\r\n\r\n @Input()\r\n language: 'en' | 'ne' = 'ne';\r\n\r\n @Input() hasFuture: Boolean = true;\r\n\r\n @Input() format: string = 'yy-mm-dd';\r\n\r\n monthDisplayType: 'default' | 'modern' | 'short' = 'default';\r\n\r\n dayDisplayType: 'default' | 'short' = 'short';\r\n\r\n dateFormatter: DateFormatter = (selectedDate: NepaliDate) => {\r\n const dd =\r\n selectedDate.day < 10 ? '0' + selectedDate.day : selectedDate.day;\r\n const mm =\r\n selectedDate.month < 10\r\n ? '0' + (selectedDate.month + 1)\r\n : selectedDate.month + 1;\r\n\r\n switch(this.format){\r\n case 'dd-mm-yy':\r\n return `${dd}/${mm}/${this.selectedDate.year}`;\r\n default:\r\n return `${this.selectedDate.year}/${mm}/${dd}`;\r\n } \r\n };\r\n\r\n initialized: boolean = false;\r\n\r\n @HostListener('document:click', ['$event'])\r\n clickout(event: any) {\r\n if (!this.eRef.nativeElement.contains(event.target)) {\r\n this.close();\r\n }\r\n }\r\n\r\n constructor(\r\n public _nepaliDate: NpDatePickerService,\r\n private eRef: ElementRef\r\n ) {\r\n this.currentDate = new Date();\r\n this.nepaliDateToday = _nepaliDate.engToNepDate(\r\n this.currentDate.getDate(),\r\n this.currentDate.getMonth(),\r\n this.currentDate.getFullYear()\r\n );\r\n }\r\n\r\n ngOnInit() {\r\n this.setCurrentDate();\r\n //this.selectDate(this.currentNepaliDate.day);\r\n this.populateYears();\r\n this.setCurrentMonthData();\r\n // console.log(this.currentMonthData);\r\n }\r\n\r\n populateYears() {\r\n for (let i = 2001; i <= 2099; i++) {\r\n this.years.push(i);\r\n }\r\n }\r\n selectYear(e: any) {\r\n this.currentNepaliDate.year = parseInt(e.target.value);\r\n\r\n const newDate = {\r\n day: this.currentNepaliDate.day,\r\n month: this.currentNepaliDate.month,\r\n year: this.currentNepaliDate.year,\r\n };\r\n\r\n this.currentDate = this._nepaliDate.nepToEngDate(\r\n newDate.day,\r\n newDate.month,\r\n newDate.year\r\n );\r\n\r\n this.setCurrentMonthData();\r\n }\r\n\r\n selectMonth(e: any) {\r\n let month = e.target.value;\r\n let nep_month_index =\r\n this.monthsMapping[this.language][this.monthDisplayType]?.indexOf(\r\n month\r\n ) ?? 0;\r\n\r\n this.currentNepaliDate.month = nep_month_index;\r\n\r\n const newNepaliDate = {\r\n day: this.currentNepaliDate.day,\r\n month: this.currentNepaliDate.month,\r\n year: this.currentNepaliDate.year,\r\n };\r\n\r\n this.currentDate = this._nepaliDate.nepToEngDate(\r\n newNepaliDate.day,\r\n newNepaliDate.month,\r\n newNepaliDate.year\r\n );\r\n // console.log(this.currentDate);\r\n this.setCurrentMonthData();\r\n }\r\n\r\n resetCurrentMonthData() {\r\n this.currentMonthData = {\r\n 0: [],\r\n 1: [],\r\n 2: [],\r\n 3: [],\r\n 4: [],\r\n 5: [],\r\n 6: [],\r\n };\r\n }\r\n formatValue() {\r\n if (this.selectedDate) {\r\n this.formattedDate = this.dateFormatter(this.selectedDate);\r\n }\r\n }\r\n propagateChange = (_: any) => {};\r\n propagateTouch = (_: any) => {};\r\n writeValue(value: any) {\r\n this.propagateChange(this.selectedDate);\r\n if (value) {\r\n this.selectedDate = value;\r\n this.currentNepaliDate = value;\r\n this.formatValue();\r\n }\r\n }\r\n registerOnTouched() {}\r\n registerOnChange(fn: any) {\r\n this.propagateChange = fn;\r\n }\r\n\r\n setCurrentDate() {\r\n if (!this.selectedDate) {\r\n this.currentNepaliDate = this._nepaliDate.engToNepDate(\r\n this.currentDate.getDate(),\r\n this.currentDate.getMonth(),\r\n this.currentDate.getFullYear()\r\n );\r\n } else {\r\n const { day, month, year } = this.selectedDate;\r\n this.currentNepaliDate = this._nepaliDate.engToNepDate(day, month, year);\r\n this.currentDate = this._nepaliDate.nepToEngDate(\r\n this.selectedDate.year,\r\n this.selectedDate.month,\r\n this.selectedDate.day\r\n );\r\n }\r\n }\r\n\r\n setCurrentMonthData() {\r\n this.resetCurrentMonthData();\r\n\r\n // fill the currentMonthData with current date\r\n let day = this.currentDate.getDay();\r\n\r\n this.currentMonthData[day] = [this.currentNepaliDate.day];\r\n\r\n // fill the currentMonthData with day before the current date\r\n this.setMonthDataBefore(day - 1, this.currentNepaliDate.day - 1);\r\n\r\n var currentMonthMaxValue =\r\n this._nepaliDate.nepaliMonths[this.currentNepaliDate.year - 2000][\r\n this.currentNepaliDate.month\r\n ];\r\n\r\n // fill the currentMonthData with day after the current date\r\n this.setMonthDataAfter(\r\n day + 1,\r\n this.currentNepaliDate.day + 1,\r\n currentMonthMaxValue\r\n );\r\n\r\n // we need some empty spaces in place so that the dates are shown in correct order\r\n // eg if the 1st day starts on monday then we need 1 empty space for non existingn date on Sunday\r\n this.createEmptySpaces();\r\n }\r\n\r\n setMonthDataBefore(day: any, date: any) {\r\n if (date >= 1) {\r\n if (day < 0) {\r\n day = 6;\r\n }\r\n this.currentMonthData[day] = [date, ...this.currentMonthData[day]];\r\n this.setMonthDataBefore(--day, --date);\r\n }\r\n }\r\n\r\n setMonthDataAfter(day: any, date: any, currentMonthMaxValue: any) {\r\n const nepaliDate = {\r\n day: date,\r\n month: this.currentNepaliDate.month,\r\n year: this.currentNepaliDate.year,\r\n };\r\n\r\n // only add the data if the current month matches\r\n if (date <= currentMonthMaxValue) {\r\n if (day > 6) {\r\n day = 0;\r\n }\r\n this.currentMonthData[day] = [...this.currentMonthData[day], date];\r\n this.setMonthDataAfter(++day, ++date, currentMonthMaxValue);\r\n }\r\n }\r\n\r\n createEmptySpaces() {\r\n // first find out which day has the 1st\r\n // if its a Sunday, then don't do anything else add 1 space on each previous day\r\n let dayIndex = 0;\r\n let value: any;\r\n Object.values(this.currentMonthData).map((item, index) => {\r\n value = item;\r\n if (value.includes(1)) {\r\n dayIndex = index;\r\n }\r\n return value.includes(1);\r\n });\r\n\r\n if (dayIndex) {\r\n for (dayIndex; dayIndex > 0; dayIndex--) {\r\n const monthData = this.currentMonthData[dayIndex - 1];\r\n this.currentMonthData[dayIndex - 1] = [null, ...monthData];\r\n }\r\n }\r\n }\r\n\r\n selectDate(day: number) {\r\n this.selectedDate = { ...this.currentNepaliDate, day };\r\n this.formatValue();\r\n this.close();\r\n this.propagateChange(this.selectedDate);\r\n }\r\n\r\n prevMonth() {\r\n if (this.currentNepaliDate.month <= 0) {\r\n this.currentNepaliDate.month = 11;\r\n this.currentNepaliDate.year--;\r\n } else {\r\n this.currentNepaliDate.month--;\r\n }\r\n\r\n const newNepaliDate = {\r\n day: this.currentNepaliDate.day,\r\n month: this.currentNepaliDate.month,\r\n year: this.currentNepaliDate.year,\r\n };\r\n this.currentDate = this._nepaliDate.nepToEngDate(\r\n newNepaliDate.day,\r\n newNepaliDate.month,\r\n newNepaliDate.year\r\n );\r\n\r\n this.setCurrentMonthData();\r\n }\r\n\r\n nextMonth() {\r\n if (this.currentNepaliDate.month >= 11) {\r\n this.currentNepaliDate.month = 0;\r\n this.currentNepaliDate.year++;\r\n } else {\r\n this.currentNepaliDate.month++;\r\n }\r\n\r\n const newDate = {\r\n day: this.currentNepaliDate.day,\r\n month: this.currentNepaliDate.month,\r\n year: this.currentNepaliDate.year,\r\n };\r\n this.currentDate = this._nepaliDate.nepToEngDate(\r\n newDate.day,\r\n newDate.month,\r\n newDate.year\r\n );\r\n this.setCurrentMonthData();\r\n }\r\n\r\n toggleOpen() {\r\n if (!this.alwaysVisible) {\r\n this.isOpen = !this.isOpen;\r\n }\r\n }\r\n\r\n open() {\r\n this.isOpen = true;\r\n }\r\n\r\n close() {\r\n this.isOpen = false;\r\n //this.setCurrentDate();\r\n }\r\n}\r\n","<div class=\"nepali-date-picker\" [ngClass]=\"theme\">\r\n <input\r\n class=\"np_datepicker_input\"\r\n type=\"text\"\r\n [value]=\"formattedDate\"\r\n (focus)=\"open()\"\r\n (keydown)=\"$event.preventDefault()\"\r\n aria-hidden=\"true\"\r\n placeholder=\"yyyy/mm/dd\"\r\n />\r\n <a\r\n class=\"form-icon\"\r\n (click)=\"toggleOpen()\"\r\n [ngClass]=\"isOpen ? 'active' : ''\"\r\n >\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\">\r\n <path\r\n d=\"M152 64H296V24C296 10.75 306.7 0 320 0C333.3 0 344 10.75 344 24V64H384C419.3 64 448 92.65 448 128V448C448 483.3 419.3 512 384 512H64C28.65 512 0 483.3 0 448V128C0 92.65 28.65 64 64 64H104V24C104 10.75 114.7 0 128 0C141.3 0 152 10.75 152 24V64zM48 448C48 456.8 55.16 464 64 464H384C392.8 464 400 456.8 400 448V192H48V448z\"\r\n />\r\n </svg>\r\n </a>\r\n <ng-container [ngTemplateOutlet]=\"dp\" *ngIf=\"isOpen\"></ng-container>\r\n</div>\r\n<!--.nepali-date-picker-->\r\n\r\n<ng-template #dp>\r\n <div class=\"datepicker__container\">\r\n <div class=\"datepicker__options-container\">\r\n <a class=\"prev-month\" (click)=\"prevMonth()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\">\r\n <path\r\n d=\"M224 480c-8.188 0-16.38-3.125-22.62-9.375l-192-192c-12.5-12.5-12.5-32.75 0-45.25l192-192c12.5-12.5 32.75-12.5 45.25 0s12.5 32.75 0 45.25L77.25 256l169.4 169.4c12.5 12.5 12.5 32.75 0 45.25C240.4 476.9 232.2 480 224 480z\"\r\n />\r\n </svg>\r\n </a>\r\n <span class=\"datepicker__options-month-container\">\r\n \r\n <select (change)=\"selectMonth($event)\">\r\n <option\r\n *ngFor=\"\r\n let month of monthsMapping[language][monthDisplayType];\r\n index as i\r\n \"\r\n [value]=\"month\"\r\n [selected]=\"i === currentNepaliDate?.month\"\r\n >\r\n {{ month }}\r\n </option>\r\n </select>\r\n </span>\r\n <span class=\"datepicker__options-year-container\">\r\n \r\n <select (change)=\"selectYear($event)\">\r\n <option\r\n *ngFor=\"let year of years; index as i\"\r\n [value]=\"year\"\r\n [selected]=\"year == currentNepaliDate?.year\"\r\n >\r\n {{ year | toNp: language:\"number\" }}\r\n </option>\r\n </select>\r\n </span>\r\n \r\n <a class=\"next-month\" (click)=\"nextMonth()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\">\r\n <path\r\n d=\"M96 480c-8.188 0-16.38-3.125-22.62-9.375c-12.5-12.5-12.5-32.75 0-45.25L242.8 256L73.38 86.63c-12.5-12.5-12.5-32.75 0-45.25s32.75-12.5 45.25 0l192 192c12.5 12.5 12.5 32.75 0 45.25l-192 192C112.4 476.9 104.2 480 96 480z\"\r\n />\r\n </svg>\r\n </a>\r\n </div>\r\n <div class=\"datepicker__days-container\">\r\n <div\r\n class=\"datepicker__days\"\r\n *ngFor=\"let day of daysMapping[language][dayDisplayType]; index as i\"\r\n >\r\n <div class=\"datepicker__weekday\">{{ day }}</div>\r\n <div\r\n class=\"datepicker__date-container\"\r\n *ngFor=\"let date of currentMonthData[i]\"\r\n >\r\n <div *ngIf=\"hasFuture; else noFutureDate\">\r\n <div\r\n *ngIf=\"date\"\r\n class=\"datepicker__date\"\r\n [class.datepicker__date--active]=\"\r\n date === selectedDate?.day &&\r\n currentNepaliDate.month === selectedDate?.month &&\r\n currentNepaliDate.year === selectedDate?.year\r\n \"\r\n [class.datepicker__date--current-day]=\"\r\n date === nepaliDateToday.day &&\r\n currentNepaliDate.month === nepaliDateToday.month &&\r\n currentNepaliDate.year === nepaliDateToday.year\r\n \"\r\n (click)=\"selectDate(date)\"\r\n >\r\n {{ date | toNp: language:\"number\" }}\r\n </div>\r\n <div *ngIf=\"!date\" class=\"datepicker__date--disabled\">\r\n <span>&nbsp;</span>\r\n </div>\r\n </div>\r\n\r\n <ng-template #noFutureDate>\r\n <div\r\n *ngIf=\"\r\n date &&\r\n this.currentNepaliDate.year * 365 +\r\n this.currentNepaliDate.month * 30 +\r\n date <=\r\n nepaliDateToday.day +\r\n nepaliDateToday.month * 30 +\r\n nepaliDateToday.year * 365;\r\n else disabledDates\r\n \"\r\n class=\"datepicker__date\"\r\n [class.datepicker__date--active]=\"\r\n date === selectedDate?.day &&\r\n currentNepaliDate.month === selectedDate?.month &&\r\n currentNepaliDate.year === selectedDate?.year\r\n \"\r\n [class.datepicker__date--current-day]=\"\r\n date === nepaliDateToday.day &&\r\n currentNepaliDate.month === nepaliDateToday.month &&\r\n currentNepaliDate.year === nepaliDateToday.year\r\n \"\r\n (click)=\"selectDate(date)\"\r\n >\r\n {{ date | toNp: language:\"number\" }}\r\n </div>\r\n\r\n <ng-template #disabledDates>\r\n <div class=\"datepicker__date datepicker__date--disabled\">\r\n {{ date | toNp: language:\"number\" }}\r\n </div>\r\n </ng-template>\r\n\r\n <div *ngIf=\"!date\" class=\"datepicker__date--disabled\">\r\n <span>&nbsp;</span>\r\n </div>\r\n </ng-template>\r\n </div>\r\n <!--.datepicker__date-container ends-->\r\n </div>\r\n <!--.datepicker__days ends-->\r\n </div>\r\n <!--.datepicker__days-container ends-->\r\n </div>\r\n <!--.datepicker__container ends-->\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { NpDatePickerComponent } from './np-datepicker.component';\r\nimport { ToNpPipe } from './to-np.pipe';\r\n\r\n@NgModule({\r\n declarations: [\r\n ToNpPipe,\r\n NpDatePickerComponent\r\n ],\r\n imports: [\r\n BrowserModule,\r\n FormsModule\r\n ],\r\n exports: [\r\n NpDatePickerComponent\r\n ]\r\n})\r\nexport class NepaliDatepickerModule { }\r\n","/*\r\n * Public API Surface of npx-np-datepicker\r\n */\r\n\r\nexport * from './lib/np-datepicker.service';\r\nexport * from './lib/np-datepicker.component';\r\nexport * from './lib/np-datepicker.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.NpDatePickerService","i4.ToNpPipe"],"mappings":";;;;;;;MAKa,mBAAmB,CAAA;AAqH9B,IAAA,WAAA,GAAA;AApHA,QAAA,IAAa,CAAA,aAAA,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AACjE,QAAA,IAAiB,CAAA,iBAAA,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACrE,IAAA,CAAA,YAAY,GAAG;YACb,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EA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"}
1
+ {"version":3,"file":"ngx-np-datepicker.mjs","sources":["../../../projects/npx-np-datepicker/src/lib/np-datepicker.service.ts","../../../projects/npx-np-datepicker/src/lib/mapping.ts","../../../projects/npx-np-datepicker/src/lib/to-np.pipe.ts","../../../projects/npx-np-datepicker/src/lib/np-datepicker.component.ts","../../../projects/npx-np-datepicker/src/lib/np-date-picker.component.html","../../../projects/npx-np-datepicker/src/lib/np-datepicker.module.ts","../../../projects/npx-np-datepicker/src/public-api.ts","../../../projects/npx-np-datepicker/src/ngx-np-datepicker.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class NpDatePickerService {\r\n englishMonths = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\r\n englishLeapMonths = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\r\n nepaliMonths = [\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31], //2000\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], //2001\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30], // 2002\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31], // 2003\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31], // 2004\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2005\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30], // 2006\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31], // 2006\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 29, 31], // 2007\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2008\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30], // 2009\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31], // 2010\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 30, 30], // 2011\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2012\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30], // 2013\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31], // 2014\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 30, 30], // 2015\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2016\r\n [31, 32, 31, 32, 31, 30, 30, 29, 30, 29, 30, 30], // 2017\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31], // 2018\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30], // 2019\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2020\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30], // 2021\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31], // 2022\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30], // 2023\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2024\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31], // 2025\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 32, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [30, 32, 31, 32, 31, 31, 29, 30, 30, 29, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 32, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [30, 32, 31, 32, 31, 31, 29, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], //2071\r\n [31, 32, 31, 32, 31, 30, 30, 29, 30, 29, 30, 30], //2072\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31], //2073\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30], // 2076\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30], // 2078\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2079\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30], // 2080\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31], // 2081\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2082\r\n [31, 31, 32, 31, 31, 30, 30, 30, 29, 30, 30, 30], // 2083\r\n [31, 31, 32, 31, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 32, 31, 32, 30, 31, 30, 30, 29, 30, 30, 30],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 30, 29, 30, 30, 30],\r\n [30, 31, 32, 32, 30, 31, 30, 30, 29, 30, 30, 30],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30], //2090\r\n [31, 31, 32, 31, 31, 31, 30, 30, 29, 30, 30, 30],\r\n [30, 31, 32, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 31, 32, 31, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 30, 30, 30],\r\n [30, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 29, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 29, 30, 30, 30], //2099\r\n ];\r\n\r\n englishYear: any;\r\n englishMonth: any;\r\n englishDate: any;\r\n\r\n nepaliYear: any;\r\n nepaliMonth: any;\r\n nepaliDate: any;\r\n\r\n weekDay: any;\r\n format = '.';\r\n\r\n constructor() {\r\n var d = new Date();\r\n }\r\n\r\n setCurrentNepaliDate() {\r\n var d = new Date();\r\n return this.engToNepDate(d.getDate(), d.getMonth(), d.getFullYear());\r\n }\r\n\r\n //English to Nepali date conversion\r\n engToNepDate(date: any, month: any, year: any) {\r\n if (!this.isEnglishRange(date, month, year))\r\n console.log('Invalid date format.');\r\n\r\n this.englishYear = year;\r\n this.englishMonth = month + 1;\r\n this.englishDate = date;\r\n\r\n //Setting nepali reference to 2000/1/1 with english date 1943/4/14\r\n this.nepaliYear = 2000;\r\n this.nepaliMonth = 1;\r\n this.nepaliDate = 1;\r\n\r\n var difference = this.getEnglishDateDifference(1943, 4, 14);\r\n\r\n //Getting nepali year untill the difference remains less than 365\r\n var index = 0;\r\n while (difference >= this.nepaliYearDays(index)) {\r\n this.nepaliYear++;\r\n difference = difference - this.nepaliYearDays(index);\r\n index++;\r\n //console.log('Difference:'+difference+ 'nepaliYearDays:'+this.nepaliYearDays(index));\r\n }\r\n\r\n //console.log(\"nepaliMonths=\"+this.nepaliMonths[index][0]+\"difference:\"+difference);\r\n //Getting nepali month untill the difference remains less than 31\r\n var i = 0;\r\n while (difference >= this.nepaliMonths[index][i]) {\r\n difference = difference - this.nepaliMonths[index][i];\r\n this.nepaliMonth++;\r\n i++;\r\n //console.log(\"nepaliMonths=\"+this.nepaliMonths[index][i]+\"difference:\"+difference);\r\n }\r\n this.nepaliMonth--;\r\n //console.log(difference);\r\n\r\n //Remaning days is the date;\r\n this.nepaliDate = this.nepaliDate + difference;\r\n this.getDay();\r\n\r\n return {\r\n day: this.nepaliDate,\r\n month: this.nepaliMonth,\r\n year: this.nepaliYear\r\n };\r\n }\r\n\r\n toEnglishString(format: any) {\r\n if (typeof format === 'undefined') format = '-';\r\n return (\r\n this.englishYear + format + this.englishMonth + format + this.englishDate\r\n );\r\n }\r\n\r\n getEnglishDateDifference(year: any, month: any, date: any) {\r\n //Getting difference from the current date with the date provided\r\n var difference =\r\n this.countTotalEnglishDays(\r\n this.englishYear,\r\n this.englishMonth,\r\n this.englishDate\r\n ) - this.countTotalEnglishDays(year, month, date);\r\n return difference < 0 ? -difference : difference;\r\n }\r\n\r\n countTotalEnglishDays(year: any, month: any, date: any) {\r\n var totalDays = year * 365 + date;\r\n\r\n for (var i = 0; i < month - 1; i++)\r\n totalDays = totalDays + this.englishMonths[i];\r\n\r\n totalDays = totalDays + this.countleap(year, month);\r\n return totalDays;\r\n }\r\n\r\n countleap(year: any, month: any) {\r\n if (month <= 2) year--;\r\n\r\n return (\r\n Math.floor(year / 4) - Math.floor(year / 100) + Math.floor(year / 400)\r\n );\r\n }\r\n\r\n isEnglishRange(date: any, month: any, year: any) {\r\n if (year < 1944 || year > 2042) return false;\r\n if (month < 1 || month > 12) return false;\r\n if (date < 1 || date > 31) return false;\r\n\r\n return true;\r\n }\r\n\r\n isLeapYear(year: any) {\r\n if (year % 4 === 0) {\r\n return year % 100 === 0 ? year % 400 === 0 : true;\r\n } else return false;\r\n }\r\n\r\n //Nepali to English conversion\r\n nepToEngDate(date: any, month: any, year: any) {\r\n if (!this.isNepaliRange(date, month, year)) {\r\n console.log('Invalid Date Format');\r\n // throw new Exception(\"Invalid date format.\");\r\n return;\r\n }\r\n\r\n this.nepaliYear = year;\r\n this.nepaliMonth = month + 1;\r\n this.nepaliDate = date;\r\n\r\n //Setting english reference to 1944/1/1 with nepali date 2000/9/17\r\n this.englishYear = 1944;\r\n this.englishMonth = 1;\r\n this.englishDate = 1;\r\n\r\n var difference = this.getNepaliDateDifference(2000, 9, 17);\r\n\r\n //Getting english year untill the difference remains less than 365\r\n while (difference >= (this.isLeapYear(this.englishYear) ? 366 : 365)) {\r\n difference = difference - (this.isLeapYear(this.englishYear) ? 366 : 365);\r\n this.englishYear++;\r\n }\r\n\r\n //Getting english month untill the difference remains less than 31\r\n var monthDays = this.isLeapYear(this.englishYear)\r\n ? this.englishLeapMonths\r\n : this.englishMonths;\r\n var i = 0;\r\n while (difference >= monthDays[i]) {\r\n this.englishMonth++;\r\n difference = difference - monthDays[i];\r\n i++;\r\n }\r\n\r\n //Remaning days is the date;\r\n this.englishDate = this.englishDate + difference;\r\n this.getDay();\r\n\r\n return new Date(this.englishYear + '-' + this.englishMonth + '-' + this.englishDate);\r\n }\r\n\r\n toNepaliString(format: any) {\r\n if (typeof format === 'undefined') format = '-';\r\n return (\r\n this.nepaliYear + format + this.nepaliMonth + format + this.nepaliDate\r\n );\r\n }\r\n\r\n getNepaliDateDifference(year: any, month: any, date: any) {\r\n //Getting difference from the current date with the date provided\r\n var difference =\r\n this.countTotalNepaliDays(\r\n this.nepaliYear,\r\n this.nepaliMonth,\r\n this.nepaliDate\r\n ) - this.countTotalNepaliDays(year, month, date);\r\n return difference < 0 ? -difference : difference;\r\n }\r\n\r\n countTotalNepaliDays(year: any, month: any, date: any) {\r\n var total = 0;\r\n if (year < 2000) return 0;\r\n\r\n total = total + (date - 1);\r\n\r\n var yearIndex = year - 2000;\r\n for (var i = 0; i < month - 1; i++)\r\n total = total + this.nepaliMonths[yearIndex][i];\r\n\r\n for (var i = 0; i < yearIndex; i++) total = total + this.nepaliYearDays(i);\r\n\r\n return total;\r\n }\r\n\r\n nepaliYearDays(index: any) {\r\n var total = 0;\r\n for (var i = 0; i < 12; i++) total += this.nepaliMonths[index][i];\r\n return total;\r\n }\r\n\r\n isNepaliRange(date: any, month: any, year: any) {\r\n if (year < 2000 || year > 2099) return false;\r\n\r\n if (month < 0 || month > 11) return false;\r\n\r\n if (date < 1 || date > this.nepaliMonths[year - 2000][month - 1])\r\n return false;\r\n\r\n return true;\r\n }\r\n\r\n //Class Regular methods\r\n\r\n getDay() {\r\n //Reference date 1943/4/14 Wednesday\r\n var difference = this.getEnglishDateDifference(1943, 4, 14);\r\n this.weekDay = ((3 + (difference % 7)) % 7) + 1;\r\n return this.weekDay;\r\n }\r\n\r\n getEnglishYear() {\r\n return this.englishYear;\r\n }\r\n\r\n getEnglishMonth() {\r\n return this.englishMonth;\r\n }\r\n\r\n getEnglishDate() {\r\n return this.englishDate;\r\n }\r\n\r\n getNepaliYear() {\r\n return this.nepaliYear;\r\n }\r\n getNepaliMonth() {\r\n return this.nepaliMonth;\r\n }\r\n\r\n getNepaliDate() {\r\n return this.nepaliDate;\r\n }\r\n\r\n}\r\n","import { MonthMapping, DaysMapping, WordsMapping } from './types';\r\n\r\nexport const numberMapping: string[] = ['०', '१', '२', '३', '४', '५', '६', '७', '८', '९'];\r\n\r\nexport const wordsMapping: WordsMapping = {\r\n year: 'साल',\r\n month: 'महिना'\r\n};\r\n\r\nexport const daysMapping: DaysMapping = {\r\n en: {\r\n default: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\r\n short: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa']\r\n },\r\n ne: {\r\n default: ['आइत', 'सोम', 'मंगल्', 'बुध', 'बिही', 'शुक्र', 'शनि'],\r\n short: ['आ', 'सो', 'मं', 'बु', 'बि', 'शु', 'श']\r\n }\r\n};\r\n\r\nexport const monthsMapping: MonthMapping = {\r\n en: {\r\n default: [\r\n 'Baisakh', 'Jestha', 'Asadh', 'Shrawan', 'Bhadra', 'Ashwin', 'Kartik', 'Mangsir', 'Poush', 'Marga', 'Falgun', 'Chaitra'\r\n ],\r\n modern: [\r\n 'Baisakh', 'Jeth', 'Asaar', 'Saawn', 'Bhadau', 'Aashoj', 'Kartik', 'Mangsir', 'Push', 'Magh', 'Fagun', 'Chait'\r\n ],\r\n short: [\r\n 'Bai', 'Jes', 'Asa', 'Shr', 'Bha', 'Ash', 'Kar', 'Man', 'Pou', 'Mar', 'Fal', 'Cha'\r\n ]\r\n },\r\n ne: {\r\n default: [\r\n 'बैशाख', 'जेष्ठ', 'आषाढ', 'श्रवण', 'भाद्र', 'आश्विन', 'कार्तिक', 'मंसिर', 'पौष', 'मार्ग', 'फाल्गुन', 'चैत्र'\r\n ],\r\n modern: [\r\n 'बैशाख', 'जेठ', 'असार', 'साउन', 'भदौ', 'अशोज', 'कार्तिक', 'मंसिर', 'पुष', 'माघ', 'फागुन', 'चैत'\r\n ],\r\n short: [\r\n 'बै', 'जे', 'अ', 'श्रा', 'भा', 'आ', 'का', 'मं', 'पौ', 'मा', 'फा', 'चै'\r\n ]\r\n }\r\n};\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { numberMapping, wordsMapping } from './mapping';\r\n\r\n@Pipe({\r\n name: 'toNp',\r\n})\r\nexport class ToNpPipe implements PipeTransform {\r\n transform(\r\n value: number | string,\r\n language: string = 'ne',\r\n type: string = 'number'\r\n ): any {\r\n if (value) {\r\n if (language === 'ne') {\r\n switch (type) {\r\n case 'number':\r\n const split = value.toString().split('');\r\n return split\r\n .map((n) => {\r\n if (n === ' ') {\r\n return ' ';\r\n }\r\n return numberMapping[+n] ? numberMapping[+n] : n;\r\n })\r\n .join('');\r\n case 'word':\r\n let wrd = value.toString().toLowerCase();\r\n if(wrd ==='month'){\r\n return wordsMapping['month'];\r\n }else if(wrd ==='year'){\r\n return wordsMapping['year'];\r\n }else{\r\n return wrd\r\n }\r\n \r\n default:\r\n }\r\n }else{\r\n return value;\r\n }\r\n } else {\r\n return '';\r\n }\r\n }\r\n}\r\n","import {\r\n Component,\r\n HostListener,\r\n OnInit,\r\n ElementRef,\r\n Input,\r\n forwardRef,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport { NpDatePickerService } from './np-datepicker.service';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\nimport {\r\n NepaliDate,\r\n MonthData,\r\n DaysMapping,\r\n MonthMapping,\r\n DateFormatter,\r\n} from './types';\r\nimport { daysMapping, monthsMapping } from './mapping';\r\n\r\n@Component({\r\n selector: 'np-datepicker',\r\n templateUrl: './np-date-picker.component.html',\r\n styleUrls: ['./np-date-picker.component.css'],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => NpDatePickerComponent),\r\n multi: true,\r\n },\r\n ],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class NpDatePickerComponent implements OnInit, ControlValueAccessor {\r\n nepaliDateToday: NepaliDate = { day: 0, month: 0, year: 0 };\r\n currentNepaliDate: NepaliDate = { day: 0, month: 0, year: 0 };\r\n selectedDate!: NepaliDate;\r\n formattedDate = '';\r\n currentDate: any;\r\n\r\n displayDate!: string;\r\n\r\n years: number[] = [];\r\n\r\n currentMonthData!: any;\r\n\r\n daysMapping: DaysMapping = daysMapping;\r\n\r\n monthsMapping: MonthMapping = monthsMapping;\r\n\r\n isOpen = false;\r\n\r\n hideInput = false;\r\n\r\n alwaysVisible = false;\r\n\r\n @Input()\r\n theme!: string;\r\n\r\n @Input()\r\n language: 'en' | 'ne' = 'ne';\r\n\r\n @Input() hasFuture: Boolean = true;\r\n\r\n @Input() format: string = 'yy-mm-dd';\r\n\r\n monthDisplayType: 'default' | 'modern' | 'short' = 'default';\r\n\r\n dayDisplayType: 'default' | 'short' = 'short';\r\n\r\n dateFormatter: DateFormatter = (selectedDate: NepaliDate) => {\r\n const dd =\r\n selectedDate.day < 10 ? '0' + selectedDate.day : selectedDate.day;\r\n const mm =\r\n selectedDate.month < 10\r\n ? '0' + (selectedDate.month + 1)\r\n : selectedDate.month + 1;\r\n\r\n switch(this.format){\r\n case 'dd-mm-yy':\r\n return `${dd}/${mm}/${this.selectedDate.year}`;\r\n default:\r\n return `${this.selectedDate.year}/${mm}/${dd}`;\r\n } \r\n };\r\n\r\n initialized: boolean = false;\r\n\r\n @HostListener('document:click', ['$event'])\r\n clickout(event: any) {\r\n if (!this.eRef.nativeElement.contains(event.target)) {\r\n this.close();\r\n }\r\n }\r\n\r\n constructor(\r\n public _nepaliDate: NpDatePickerService,\r\n private eRef: ElementRef\r\n ) {\r\n this.currentDate = new Date();\r\n this.nepaliDateToday = _nepaliDate.engToNepDate(\r\n this.currentDate.getDate(),\r\n this.currentDate.getMonth(),\r\n this.currentDate.getFullYear()\r\n );\r\n }\r\n\r\n ngOnInit() {\r\n this.setCurrentDate();\r\n //this.selectDate(this.currentNepaliDate.day);\r\n this.populateYears();\r\n this.setCurrentMonthData();\r\n // console.log(this.currentMonthData);\r\n }\r\n\r\n populateYears() {\r\n for (let i = 2001; i <= 2099; i++) {\r\n this.years.push(i);\r\n }\r\n }\r\n selectYear(e: any) {\r\n this.currentNepaliDate.year = parseInt(e.target.value);\r\n\r\n const newDate = {\r\n day: this.currentNepaliDate.day,\r\n month: this.currentNepaliDate.month,\r\n year: this.currentNepaliDate.year,\r\n };\r\n\r\n this.currentDate = this._nepaliDate.nepToEngDate(\r\n newDate.day,\r\n newDate.month,\r\n newDate.year\r\n );\r\n\r\n this.setCurrentMonthData();\r\n }\r\n\r\n selectMonth(e: any) {\r\n let month = e.target.value;\r\n let nep_month_index =\r\n this.monthsMapping[this.language][this.monthDisplayType]?.indexOf(\r\n month\r\n ) ?? 0;\r\n\r\n this.currentNepaliDate.month = nep_month_index;\r\n\r\n const newNepaliDate = {\r\n day: this.currentNepaliDate.day,\r\n month: this.currentNepaliDate.month,\r\n year: this.currentNepaliDate.year,\r\n };\r\n\r\n this.currentDate = this._nepaliDate.nepToEngDate(\r\n newNepaliDate.day,\r\n newNepaliDate.month,\r\n newNepaliDate.year\r\n );\r\n // console.log(this.currentDate);\r\n this.setCurrentMonthData();\r\n }\r\n\r\n resetCurrentMonthData() {\r\n this.currentMonthData = {\r\n 0: [],\r\n 1: [],\r\n 2: [],\r\n 3: [],\r\n 4: [],\r\n 5: [],\r\n 6: [],\r\n };\r\n }\r\n formatValue() {\r\n if (this.selectedDate) {\r\n this.formattedDate = this.dateFormatter(this.selectedDate);\r\n }\r\n }\r\n propagateChange = (_: any) => {};\r\n propagateTouch = (_: any) => {};\r\n writeValue(value: any) {\r\n this.propagateChange(this.selectedDate);\r\n if (value) {\r\n this.selectedDate = value;\r\n this.currentNepaliDate = value;\r\n this.formatValue();\r\n }\r\n }\r\n registerOnTouched() {}\r\n registerOnChange(fn: any) {\r\n this.propagateChange = fn;\r\n }\r\n\r\n setCurrentDate() {\r\n if (!this.selectedDate) {\r\n this.currentNepaliDate = this._nepaliDate.engToNepDate(\r\n this.currentDate.getDate(),\r\n this.currentDate.getMonth(),\r\n this.currentDate.getFullYear()\r\n );\r\n } else {\r\n const { day, month, year } = this.selectedDate;\r\n this.currentNepaliDate = this._nepaliDate.engToNepDate(day, month, year);\r\n this.currentDate = this._nepaliDate.nepToEngDate(\r\n this.selectedDate.year,\r\n this.selectedDate.month,\r\n this.selectedDate.day\r\n );\r\n }\r\n }\r\n\r\n setCurrentMonthData() {\r\n this.resetCurrentMonthData();\r\n\r\n // fill the currentMonthData with current date\r\n let day = this.currentDate.getDay();\r\n\r\n this.currentMonthData[day] = [this.currentNepaliDate.day];\r\n\r\n // fill the currentMonthData with day before the current date\r\n this.setMonthDataBefore(day - 1, this.currentNepaliDate.day - 1);\r\n\r\n var currentMonthMaxValue =\r\n this._nepaliDate.nepaliMonths[this.currentNepaliDate.year - 2000][\r\n this.currentNepaliDate.month\r\n ];\r\n\r\n // fill the currentMonthData with day after the current date\r\n this.setMonthDataAfter(\r\n day + 1,\r\n this.currentNepaliDate.day + 1,\r\n currentMonthMaxValue\r\n );\r\n\r\n // we need some empty spaces in place so that the dates are shown in correct order\r\n // eg if the 1st day starts on monday then we need 1 empty space for non existingn date on Sunday\r\n this.createEmptySpaces();\r\n }\r\n\r\n setMonthDataBefore(day: any, date: any) {\r\n if (date >= 1) {\r\n if (day < 0) {\r\n day = 6;\r\n }\r\n this.currentMonthData[day] = [date, ...this.currentMonthData[day]];\r\n this.setMonthDataBefore(--day, --date);\r\n }\r\n }\r\n\r\n setMonthDataAfter(day: any, date: any, currentMonthMaxValue: any) {\r\n const nepaliDate = {\r\n day: date,\r\n month: this.currentNepaliDate.month,\r\n year: this.currentNepaliDate.year,\r\n };\r\n\r\n // only add the data if the current month matches\r\n if (date <= currentMonthMaxValue) {\r\n if (day > 6) {\r\n day = 0;\r\n }\r\n this.currentMonthData[day] = [...this.currentMonthData[day], date];\r\n this.setMonthDataAfter(++day, ++date, currentMonthMaxValue);\r\n }\r\n }\r\n\r\n createEmptySpaces() {\r\n // first find out which day has the 1st\r\n // if its a Sunday, then don't do anything else add 1 space on each previous day\r\n let dayIndex = 0;\r\n let value: any;\r\n Object.values(this.currentMonthData).map((item, index) => {\r\n value = item;\r\n if (value.includes(1)) {\r\n dayIndex = index;\r\n }\r\n return value.includes(1);\r\n });\r\n\r\n if (dayIndex) {\r\n for (dayIndex; dayIndex > 0; dayIndex--) {\r\n const monthData = this.currentMonthData[dayIndex - 1];\r\n this.currentMonthData[dayIndex - 1] = [null, ...monthData];\r\n }\r\n }\r\n }\r\n\r\n selectDate(day: number) {\r\n this.selectedDate = { ...this.currentNepaliDate, day };\r\n this.formatValue();\r\n this.close();\r\n this.propagateChange(this.selectedDate);\r\n }\r\n\r\n prevMonth() {\r\n if (this.currentNepaliDate.month <= 0) {\r\n this.currentNepaliDate.month = 11;\r\n this.currentNepaliDate.year--;\r\n } else {\r\n this.currentNepaliDate.month--;\r\n }\r\n\r\n const newNepaliDate = {\r\n day: this.currentNepaliDate.day,\r\n month: this.currentNepaliDate.month,\r\n year: this.currentNepaliDate.year,\r\n };\r\n this.currentDate = this._nepaliDate.nepToEngDate(\r\n newNepaliDate.day,\r\n newNepaliDate.month,\r\n newNepaliDate.year\r\n );\r\n\r\n this.setCurrentMonthData();\r\n }\r\n\r\n nextMonth() {\r\n if (this.currentNepaliDate.month >= 11) {\r\n this.currentNepaliDate.month = 0;\r\n this.currentNepaliDate.year++;\r\n } else {\r\n this.currentNepaliDate.month++;\r\n }\r\n\r\n const newDate = {\r\n day: this.currentNepaliDate.day,\r\n month: this.currentNepaliDate.month,\r\n year: this.currentNepaliDate.year,\r\n };\r\n this.currentDate = this._nepaliDate.nepToEngDate(\r\n newDate.day,\r\n newDate.month,\r\n newDate.year\r\n );\r\n this.setCurrentMonthData();\r\n }\r\n\r\n toggleOpen() {\r\n if (!this.alwaysVisible) {\r\n this.isOpen = !this.isOpen;\r\n }\r\n }\r\n\r\n open() {\r\n this.isOpen = true;\r\n }\r\n\r\n close() {\r\n this.isOpen = false;\r\n //this.setCurrentDate();\r\n }\r\n}\r\n","<div class=\"nepali-date-picker\" [ngClass]=\"theme\">\r\n <input\r\n class=\"np_datepicker_input\"\r\n type=\"text\"\r\n [value]=\"formattedDate\"\r\n (focus)=\"open()\"\r\n (keydown)=\"$event.preventDefault()\"\r\n aria-hidden=\"true\"\r\n placeholder=\"yyyy/mm/dd\"\r\n />\r\n <a\r\n class=\"form-icon\"\r\n (click)=\"toggleOpen()\"\r\n [ngClass]=\"isOpen ? 'active' : ''\"\r\n >\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\">\r\n <path\r\n d=\"M152 64H296V24C296 10.75 306.7 0 320 0C333.3 0 344 10.75 344 24V64H384C419.3 64 448 92.65 448 128V448C448 483.3 419.3 512 384 512H64C28.65 512 0 483.3 0 448V128C0 92.65 28.65 64 64 64H104V24C104 10.75 114.7 0 128 0C141.3 0 152 10.75 152 24V64zM48 448C48 456.8 55.16 464 64 464H384C392.8 464 400 456.8 400 448V192H48V448z\"\r\n />\r\n </svg>\r\n </a>\r\n <ng-container [ngTemplateOutlet]=\"dp\" *ngIf=\"isOpen\"></ng-container>\r\n</div>\r\n<!--.nepali-date-picker-->\r\n\r\n<ng-template #dp>\r\n <div class=\"datepicker__container\">\r\n <div class=\"datepicker__options-container\">\r\n <a class=\"prev-month\" (click)=\"prevMonth()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\">\r\n <path\r\n d=\"M224 480c-8.188 0-16.38-3.125-22.62-9.375l-192-192c-12.5-12.5-12.5-32.75 0-45.25l192-192c12.5-12.5 32.75-12.5 45.25 0s12.5 32.75 0 45.25L77.25 256l169.4 169.4c12.5 12.5 12.5 32.75 0 45.25C240.4 476.9 232.2 480 224 480z\"\r\n />\r\n </svg>\r\n </a>\r\n <span class=\"datepicker__options-month-container\">\r\n \r\n <select (change)=\"selectMonth($event)\">\r\n <option\r\n *ngFor=\"\r\n let month of monthsMapping[language][monthDisplayType];\r\n index as i\r\n \"\r\n [value]=\"month\"\r\n [selected]=\"i === currentNepaliDate?.month\"\r\n >\r\n {{ month }}\r\n </option>\r\n </select>\r\n </span>\r\n <span class=\"datepicker__options-year-container\">\r\n \r\n <select (change)=\"selectYear($event)\">\r\n <option\r\n *ngFor=\"let year of years; index as i\"\r\n [value]=\"year\"\r\n [selected]=\"year == currentNepaliDate?.year\"\r\n >\r\n {{ year | toNp: language:\"number\" }}\r\n </option>\r\n </select>\r\n </span>\r\n \r\n <a class=\"next-month\" (click)=\"nextMonth()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\">\r\n <path\r\n d=\"M96 480c-8.188 0-16.38-3.125-22.62-9.375c-12.5-12.5-12.5-32.75 0-45.25L242.8 256L73.38 86.63c-12.5-12.5-12.5-32.75 0-45.25s32.75-12.5 45.25 0l192 192c12.5 12.5 12.5 32.75 0 45.25l-192 192C112.4 476.9 104.2 480 96 480z\"\r\n />\r\n </svg>\r\n </a>\r\n </div>\r\n <div class=\"datepicker__days-container\">\r\n <div\r\n class=\"datepicker__days\"\r\n *ngFor=\"let day of daysMapping[language][dayDisplayType]; index as i\"\r\n >\r\n <div class=\"datepicker__weekday\">{{ day }}</div>\r\n <div\r\n class=\"datepicker__date-container\"\r\n *ngFor=\"let date of currentMonthData[i]\"\r\n >\r\n <div *ngIf=\"hasFuture; else noFutureDate\">\r\n <div\r\n *ngIf=\"date\"\r\n class=\"datepicker__date\"\r\n [class.datepicker__date--active]=\"\r\n date === selectedDate?.day &&\r\n currentNepaliDate.month === selectedDate?.month &&\r\n currentNepaliDate.year === selectedDate?.year\r\n \"\r\n [class.datepicker__date--current-day]=\"\r\n date === nepaliDateToday.day &&\r\n currentNepaliDate.month === nepaliDateToday.month &&\r\n currentNepaliDate.year === nepaliDateToday.year\r\n \"\r\n (click)=\"selectDate(date)\"\r\n >\r\n {{ date | toNp: language:\"number\" }}\r\n </div>\r\n <div *ngIf=\"!date\" class=\"datepicker__date--disabled\">\r\n <span>&nbsp;</span>\r\n </div>\r\n </div>\r\n\r\n <ng-template #noFutureDate>\r\n <div\r\n *ngIf=\"\r\n date &&\r\n this.currentNepaliDate.year * 365 +\r\n this.currentNepaliDate.month * 30 +\r\n date <=\r\n nepaliDateToday.day +\r\n nepaliDateToday.month * 30 +\r\n nepaliDateToday.year * 365;\r\n else disabledDates\r\n \"\r\n class=\"datepicker__date\"\r\n [class.datepicker__date--active]=\"\r\n date === selectedDate?.day &&\r\n currentNepaliDate.month === selectedDate?.month &&\r\n currentNepaliDate.year === selectedDate?.year\r\n \"\r\n [class.datepicker__date--current-day]=\"\r\n date === nepaliDateToday.day &&\r\n currentNepaliDate.month === nepaliDateToday.month &&\r\n currentNepaliDate.year === nepaliDateToday.year\r\n \"\r\n (click)=\"selectDate(date)\"\r\n >\r\n {{ date | toNp: language:\"number\" }}\r\n </div>\r\n\r\n <ng-template #disabledDates>\r\n <div class=\"datepicker__date datepicker__date--disabled\">\r\n {{ date | toNp: language:\"number\" }}\r\n </div>\r\n </ng-template>\r\n\r\n <div *ngIf=\"!date\" class=\"datepicker__date--disabled\">\r\n <span>&nbsp;</span>\r\n </div>\r\n </ng-template>\r\n </div>\r\n <!--.datepicker__date-container ends-->\r\n </div>\r\n <!--.datepicker__days ends-->\r\n </div>\r\n <!--.datepicker__days-container ends-->\r\n </div>\r\n <!--.datepicker__container ends-->\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { NpDatePickerComponent } from './np-datepicker.component';\r\nimport { ToNpPipe } from './to-np.pipe';\r\n\r\n@NgModule({\r\n declarations: [\r\n ToNpPipe,\r\n NpDatePickerComponent\r\n ],\r\n imports: [\r\n BrowserModule,\r\n FormsModule\r\n ],\r\n exports: [\r\n NpDatePickerComponent\r\n ]\r\n})\r\nexport class NepaliDatepickerModule { }\r\n","/*\r\n * Public API Surface of npx-np-datepicker\r\n */\r\n\r\nexport * from './lib/np-datepicker.service';\r\nexport * from './lib/np-datepicker.component';\r\nexport * from './lib/np-datepicker.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.NpDatePickerService","i4.ToNpPipe"],"mappings":";;;;;;;MAKa,mBAAmB,CAAA;AAqH9B,IAAA,WAAA,GAAA;AApHA,QAAA,IAAa,CAAA,aAAA,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AACjE,QAAA,IAAiB,CAAA,iBAAA,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACrE,IAAA,CAAA,YAAY,GAAG;YACb,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EA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"}
Binary file
@@ -91,8 +91,8 @@ class NpDatePickerService {
91
91
  [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30],
92
92
  [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],
93
93
  [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30],
94
- [31, 31, 32, 32, 31, 30, 30, 30, 29, 30, 30, 30],
95
- [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30],
94
+ [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],
95
+ [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],
96
96
  [31, 31, 32, 31, 31, 30, 30, 30, 29, 30, 30, 30],
97
97
  [31, 31, 32, 31, 31, 30, 30, 30, 29, 30, 30, 30],
98
98
  [31, 32, 31, 32, 30, 31, 30, 30, 29, 30, 30, 30],
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-np-datepicker.mjs","sources":["../../../projects/npx-np-datepicker/src/lib/np-datepicker.service.ts","../../../projects/npx-np-datepicker/src/lib/mapping.ts","../../../projects/npx-np-datepicker/src/lib/to-np.pipe.ts","../../../projects/npx-np-datepicker/src/lib/np-datepicker.component.ts","../../../projects/npx-np-datepicker/src/lib/np-date-picker.component.html","../../../projects/npx-np-datepicker/src/lib/np-datepicker.module.ts","../../../projects/npx-np-datepicker/src/public-api.ts","../../../projects/npx-np-datepicker/src/ngx-np-datepicker.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class NpDatePickerService {\r\n englishMonths = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\r\n englishLeapMonths = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\r\n nepaliMonths = [\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31], //2000\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], //2001\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30], // 2002\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31], // 2003\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31], // 2004\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2005\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30], // 2006\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31], // 2006\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 29, 31], // 2007\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2008\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30], // 2009\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31], // 2010\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 32, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [30, 32, 31, 32, 31, 31, 29, 30, 30, 29, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 32, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [30, 32, 31, 32, 31, 31, 29, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], //2071\r\n [31, 32, 31, 32, 31, 30, 30, 29, 30, 29, 30, 30], //2072\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31], //2073\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30], // 2076\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30], // 2078\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2079\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 31, 32, 31, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 31, 32, 31, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 32, 31, 32, 30, 31, 30, 30, 29, 30, 30, 30],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 30, 29, 30, 30, 30],\r\n [30, 31, 32, 32, 30, 31, 30, 30, 29, 30, 30, 30],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30], //2090\r\n [31, 31, 32, 31, 31, 31, 30, 30, 29, 30, 30, 30],\r\n [30, 31, 32, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 31, 32, 31, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 30, 30, 30],\r\n [30, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 29, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 29, 30, 30, 30], //2099\r\n ];\r\n\r\n englishYear: any;\r\n englishMonth: any;\r\n englishDate: any;\r\n\r\n nepaliYear: any;\r\n nepaliMonth: any;\r\n nepaliDate: any;\r\n\r\n weekDay: any;\r\n format = '.';\r\n\r\n constructor() {\r\n var d = new Date();\r\n }\r\n\r\n setCurrentNepaliDate() {\r\n var d = new Date();\r\n return this.engToNepDate( d.getDate(), d.getMonth(),d.getFullYear() );\r\n }\r\n\r\n //English to Nepali date conversion\r\n engToNepDate(date: any, month: any, year: any) {\r\n if (!this.isEnglishRange(date, month, year))\r\n console.log('Invalid date format.');\r\n\r\n this.englishYear = year;\r\n this.englishMonth = month + 1;\r\n this.englishDate = date;\r\n \r\n //Setting nepali reference to 2000/1/1 with english date 1943/4/14\r\n this.nepaliYear = 2000;\r\n this.nepaliMonth = 1;\r\n this.nepaliDate = 1;\r\n\r\n var difference = this.getEnglishDateDifference(1943, 4, 14);\r\n \r\n //Getting nepali year untill the difference remains less than 365\r\n var index = 0;\r\n while (difference >= this.nepaliYearDays(index)) {\r\n this.nepaliYear++;\r\n difference = difference - this.nepaliYearDays(index);\r\n index++;\r\n //console.log('Difference:'+difference+ 'nepaliYearDays:'+this.nepaliYearDays(index));\r\n }\r\n \r\n //console.log(\"nepaliMonths=\"+this.nepaliMonths[index][0]+\"difference:\"+difference);\r\n //Getting nepali month untill the difference remains less than 31\r\n var i = 0;\r\n while (difference >= this.nepaliMonths[index][i]) {\r\n difference = difference - this.nepaliMonths[index][i];\r\n this.nepaliMonth++;\r\n i++;\r\n //console.log(\"nepaliMonths=\"+this.nepaliMonths[index][i]+\"difference:\"+difference);\r\n }\r\n this.nepaliMonth--;\r\n //console.log(difference);\r\n \r\n //Remaning days is the date;\r\n this.nepaliDate = this.nepaliDate + difference;\r\n this.getDay();\r\n \r\n return {\r\n day: this.nepaliDate,\r\n month: this.nepaliMonth,\r\n year: this.nepaliYear\r\n };\r\n }\r\n\r\n toEnglishString(format: any) {\r\n if (typeof format === 'undefined') format = '-';\r\n return (\r\n this.englishYear + format + this.englishMonth + format + this.englishDate\r\n );\r\n }\r\n\r\n getEnglishDateDifference(year: any, month: any, date: any) {\r\n //Getting difference from the current date with the date provided\r\n var difference =\r\n this.countTotalEnglishDays(\r\n this.englishYear,\r\n this.englishMonth,\r\n this.englishDate\r\n ) - this.countTotalEnglishDays(year, month, date);\r\n return difference < 0 ? -difference : difference;\r\n }\r\n\r\n countTotalEnglishDays(year: any, month: any, date: any) {\r\n var totalDays = year * 365 + date;\r\n\r\n for (var i = 0; i < month - 1; i++)\r\n totalDays = totalDays + this.englishMonths[i];\r\n\r\n totalDays = totalDays + this.countleap(year, month);\r\n return totalDays;\r\n }\r\n\r\n countleap(year: any, month: any) {\r\n if (month <= 2) year--;\r\n\r\n return (\r\n Math.floor(year / 4) - Math.floor(year / 100) + Math.floor(year / 400)\r\n );\r\n }\r\n\r\n isEnglishRange(date: any, month: any, year: any) {\r\n if (year < 1944 || year > 2042) return false;\r\n if (month < 1 || month > 12) return false;\r\n if (date < 1 || date > 31) return false;\r\n\r\n return true;\r\n }\r\n\r\n isLeapYear(year: any) {\r\n if (year % 4 === 0) {\r\n return year % 100 === 0 ? year % 400 === 0 : true;\r\n } else return false;\r\n }\r\n\r\n //Nepali to English conversion\r\n nepToEngDate(date: any, month: any, year: any) {\r\n if (!this.isNepaliRange(date, month, year)) {\r\n console.log('Invalid Date Format');\r\n // throw new Exception(\"Invalid date format.\");\r\n return;\r\n }\r\n\r\n this.nepaliYear = year;\r\n this.nepaliMonth = month+1;\r\n this.nepaliDate = date;\r\n\r\n //Setting english reference to 1944/1/1 with nepali date 2000/9/17\r\n this.englishYear = 1944;\r\n this.englishMonth = 1;\r\n this.englishDate = 1;\r\n\r\n var difference = this.getNepaliDateDifference(2000, 9, 17);\r\n\r\n //Getting english year untill the difference remains less than 365\r\n while (difference >= (this.isLeapYear(this.englishYear) ? 366 : 365)) {\r\n difference = difference - (this.isLeapYear(this.englishYear) ? 366 : 365);\r\n this.englishYear++;\r\n }\r\n\r\n //Getting english month untill the difference remains less than 31\r\n var monthDays = this.isLeapYear(this.englishYear)\r\n ? this.englishLeapMonths\r\n : this.englishMonths;\r\n var i = 0;\r\n while (difference >= monthDays[i]) {\r\n this.englishMonth++;\r\n difference = difference - monthDays[i];\r\n i++;\r\n }\r\n\r\n //Remaning days is the date;\r\n this.englishDate = this.englishDate + difference;\r\n this.getDay();\r\n\r\n return new Date(this.englishYear + '-' + this.englishMonth + '-' + this.englishDate);\r\n }\r\n\r\n toNepaliString(format: any) {\r\n if (typeof format === 'undefined') format = '-';\r\n return (\r\n this.nepaliYear + format + this.nepaliMonth + format + this.nepaliDate\r\n );\r\n }\r\n\r\n getNepaliDateDifference(year: any, month: any, date: any) {\r\n //Getting difference from the current date with the date provided\r\n var difference =\r\n this.countTotalNepaliDays(\r\n this.nepaliYear,\r\n this.nepaliMonth,\r\n this.nepaliDate\r\n ) - this.countTotalNepaliDays(year, month, date);\r\n return difference < 0 ? -difference : difference;\r\n }\r\n\r\n countTotalNepaliDays(year: any, month: any, date: any) {\r\n var total = 0;\r\n if (year < 2000) return 0;\r\n\r\n total = total + (date - 1);\r\n\r\n var yearIndex = year - 2000;\r\n for (var i = 0; i < month - 1; i++)\r\n total = total + this.nepaliMonths[yearIndex][i];\r\n\r\n for (var i = 0; i < yearIndex; i++) total = total + this.nepaliYearDays(i);\r\n\r\n return total;\r\n }\r\n\r\n nepaliYearDays(index: any) {\r\n var total = 0;\r\n for (var i = 0; i < 12; i++) total += this.nepaliMonths[index][i];\r\n return total;\r\n }\r\n\r\n isNepaliRange(date: any, month: any, year: any) {\r\n if (year < 2000 || year > 2099) return false;\r\n\r\n if (month < 0 || month > 11) return false;\r\n\r\n if (date < 1 || date > this.nepaliMonths[year - 2000][month - 1])\r\n return false;\r\n\r\n return true;\r\n }\r\n\r\n //Class Regular methods\r\n\r\n getDay() {\r\n //Reference date 1943/4/14 Wednesday\r\n var difference = this.getEnglishDateDifference(1943, 4, 14);\r\n this.weekDay = ((3 + (difference % 7)) % 7) + 1;\r\n return this.weekDay;\r\n }\r\n\r\n getEnglishYear() {\r\n return this.englishYear;\r\n }\r\n\r\n getEnglishMonth() {\r\n return this.englishMonth;\r\n }\r\n\r\n getEnglishDate() {\r\n return this.englishDate;\r\n }\r\n\r\n getNepaliYear() {\r\n return this.nepaliYear;\r\n }\r\n getNepaliMonth() {\r\n return this.nepaliMonth;\r\n }\r\n\r\n getNepaliDate() {\r\n return this.nepaliDate;\r\n }\r\n\r\n}\r\n","import { MonthMapping, DaysMapping, WordsMapping } from './types';\r\n\r\nexport const numberMapping: string[] = ['०', '१', '२', '३', '४', '५', '६', '७', '८', '९'];\r\n\r\nexport const wordsMapping: WordsMapping = {\r\n year: 'साल',\r\n month: 'महिना'\r\n};\r\n\r\nexport const daysMapping: DaysMapping = {\r\n en: {\r\n default: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\r\n short: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa']\r\n },\r\n ne: {\r\n default: ['आइत', 'सोम', 'मंगल्', 'बुध', 'बिही', 'शुक्र', 'शनि'],\r\n short: ['आ', 'सो', 'मं', 'बु', 'बि', 'शु', 'श']\r\n }\r\n};\r\n\r\nexport const monthsMapping: MonthMapping = {\r\n en: {\r\n default: [\r\n 'Baisakh', 'Jestha', 'Asadh', 'Shrawan', 'Bhadra', 'Ashwin', 'Kartik', 'Mangsir', 'Poush', 'Marga', 'Falgun', 'Chaitra'\r\n ],\r\n modern: [\r\n 'Baisakh', 'Jeth', 'Asaar', 'Saawn', 'Bhadau', 'Aashoj', 'Kartik', 'Mangsir', 'Push', 'Magh', 'Fagun', 'Chait'\r\n ],\r\n short: [\r\n 'Bai', 'Jes', 'Asa', 'Shr', 'Bha', 'Ash', 'Kar', 'Man', 'Pou', 'Mar', 'Fal', 'Cha'\r\n ]\r\n },\r\n ne: {\r\n default: [\r\n 'बैशाख', 'जेष्ठ', 'आषाढ', 'श्रवण', 'भाद्र', 'आश्विन', 'कार्तिक', 'मंसिर', 'पौष', 'मार्ग', 'फाल्गुन', 'चैत्र'\r\n ],\r\n modern: [\r\n 'बैशाख', 'जेठ', 'असार', 'साउन', 'भदौ', 'अशोज', 'कार्तिक', 'मंसिर', 'पुष', 'माघ', 'फागुन', 'चैत'\r\n ],\r\n short: [\r\n 'बै', 'जे', 'अ', 'श्रा', 'भा', 'आ', 'का', 'मं', 'पौ', 'मा', 'फा', 'चै'\r\n ]\r\n }\r\n};\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { numberMapping, wordsMapping } from './mapping';\r\n\r\n@Pipe({\r\n name: 'toNp',\r\n})\r\nexport class ToNpPipe implements PipeTransform {\r\n transform(\r\n value: number | string,\r\n language: string = 'ne',\r\n type: string = 'number'\r\n ): any {\r\n if (value) {\r\n if (language === 'ne') {\r\n switch (type) {\r\n case 'number':\r\n const split = value.toString().split('');\r\n return split\r\n .map((n) => {\r\n if (n === ' ') {\r\n return ' ';\r\n }\r\n return numberMapping[+n] ? numberMapping[+n] : n;\r\n })\r\n .join('');\r\n case 'word':\r\n let wrd = value.toString().toLowerCase();\r\n if(wrd ==='month'){\r\n return wordsMapping['month'];\r\n }else if(wrd ==='year'){\r\n return wordsMapping['year'];\r\n }else{\r\n return wrd\r\n }\r\n \r\n default:\r\n }\r\n }else{\r\n return value;\r\n }\r\n } else {\r\n return '';\r\n }\r\n }\r\n}\r\n","import {\r\n Component,\r\n HostListener,\r\n OnInit,\r\n ElementRef,\r\n Input,\r\n forwardRef,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport { NpDatePickerService } from './np-datepicker.service';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\nimport {\r\n NepaliDate,\r\n MonthData,\r\n DaysMapping,\r\n MonthMapping,\r\n DateFormatter,\r\n} from './types';\r\nimport { daysMapping, monthsMapping } from './mapping';\r\n\r\n@Component({\r\n selector: 'np-datepicker',\r\n templateUrl: './np-date-picker.component.html',\r\n styleUrls: ['./np-date-picker.component.css'],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => NpDatePickerComponent),\r\n multi: true,\r\n },\r\n ],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class NpDatePickerComponent implements OnInit, ControlValueAccessor {\r\n nepaliDateToday: NepaliDate = { day: 0, month: 0, year: 0 };\r\n currentNepaliDate: NepaliDate = { day: 0, month: 0, year: 0 };\r\n selectedDate!: NepaliDate;\r\n formattedDate = '';\r\n currentDate: any;\r\n\r\n displayDate!: string;\r\n\r\n years: number[] = [];\r\n\r\n currentMonthData!: any;\r\n\r\n daysMapping: DaysMapping = daysMapping;\r\n\r\n monthsMapping: MonthMapping = monthsMapping;\r\n\r\n isOpen = false;\r\n\r\n hideInput = false;\r\n\r\n alwaysVisible = false;\r\n\r\n @Input()\r\n theme!: string;\r\n\r\n @Input()\r\n language: 'en' | 'ne' = 'ne';\r\n\r\n @Input() hasFuture: Boolean = true;\r\n\r\n @Input() format: string = 'yy-mm-dd';\r\n\r\n monthDisplayType: 'default' | 'modern' | 'short' = 'default';\r\n\r\n dayDisplayType: 'default' | 'short' = 'short';\r\n\r\n dateFormatter: DateFormatter = (selectedDate: NepaliDate) => {\r\n const dd =\r\n selectedDate.day < 10 ? '0' + selectedDate.day : selectedDate.day;\r\n const mm =\r\n selectedDate.month < 10\r\n ? '0' + (selectedDate.month + 1)\r\n : selectedDate.month + 1;\r\n\r\n switch(this.format){\r\n case 'dd-mm-yy':\r\n return `${dd}/${mm}/${this.selectedDate.year}`;\r\n default:\r\n return `${this.selectedDate.year}/${mm}/${dd}`;\r\n } \r\n };\r\n\r\n initialized: boolean = false;\r\n\r\n @HostListener('document:click', ['$event'])\r\n clickout(event: any) {\r\n if (!this.eRef.nativeElement.contains(event.target)) {\r\n this.close();\r\n }\r\n }\r\n\r\n constructor(\r\n public _nepaliDate: NpDatePickerService,\r\n private eRef: ElementRef\r\n ) {\r\n this.currentDate = new Date();\r\n this.nepaliDateToday = _nepaliDate.engToNepDate(\r\n this.currentDate.getDate(),\r\n this.currentDate.getMonth(),\r\n this.currentDate.getFullYear()\r\n );\r\n }\r\n\r\n ngOnInit() {\r\n this.setCurrentDate();\r\n //this.selectDate(this.currentNepaliDate.day);\r\n this.populateYears();\r\n this.setCurrentMonthData();\r\n // console.log(this.currentMonthData);\r\n }\r\n\r\n populateYears() {\r\n for (let i = 2001; i <= 2099; i++) {\r\n this.years.push(i);\r\n }\r\n }\r\n selectYear(e: any) {\r\n this.currentNepaliDate.year = parseInt(e.target.value);\r\n\r\n const newDate = {\r\n day: this.currentNepaliDate.day,\r\n month: this.currentNepaliDate.month,\r\n year: this.currentNepaliDate.year,\r\n };\r\n\r\n this.currentDate = this._nepaliDate.nepToEngDate(\r\n newDate.day,\r\n newDate.month,\r\n newDate.year\r\n );\r\n\r\n this.setCurrentMonthData();\r\n }\r\n\r\n selectMonth(e: any) {\r\n let month = e.target.value;\r\n let nep_month_index =\r\n this.monthsMapping[this.language][this.monthDisplayType]?.indexOf(\r\n month\r\n ) ?? 0;\r\n\r\n this.currentNepaliDate.month = nep_month_index;\r\n\r\n const newNepaliDate = {\r\n day: this.currentNepaliDate.day,\r\n month: this.currentNepaliDate.month,\r\n year: this.currentNepaliDate.year,\r\n };\r\n\r\n this.currentDate = this._nepaliDate.nepToEngDate(\r\n newNepaliDate.day,\r\n newNepaliDate.month,\r\n newNepaliDate.year\r\n );\r\n // console.log(this.currentDate);\r\n this.setCurrentMonthData();\r\n }\r\n\r\n resetCurrentMonthData() {\r\n this.currentMonthData = {\r\n 0: [],\r\n 1: [],\r\n 2: [],\r\n 3: [],\r\n 4: [],\r\n 5: [],\r\n 6: [],\r\n };\r\n }\r\n formatValue() {\r\n if (this.selectedDate) {\r\n this.formattedDate = this.dateFormatter(this.selectedDate);\r\n }\r\n }\r\n propagateChange = (_: any) => {};\r\n propagateTouch = (_: any) => {};\r\n writeValue(value: any) {\r\n this.propagateChange(this.selectedDate);\r\n if (value) {\r\n this.selectedDate = value;\r\n this.currentNepaliDate = value;\r\n this.formatValue();\r\n }\r\n }\r\n registerOnTouched() {}\r\n registerOnChange(fn: any) {\r\n this.propagateChange = fn;\r\n }\r\n\r\n setCurrentDate() {\r\n if (!this.selectedDate) {\r\n this.currentNepaliDate = this._nepaliDate.engToNepDate(\r\n this.currentDate.getDate(),\r\n this.currentDate.getMonth(),\r\n this.currentDate.getFullYear()\r\n );\r\n } else {\r\n const { day, month, year } = this.selectedDate;\r\n this.currentNepaliDate = this._nepaliDate.engToNepDate(day, month, year);\r\n this.currentDate = this._nepaliDate.nepToEngDate(\r\n this.selectedDate.year,\r\n this.selectedDate.month,\r\n this.selectedDate.day\r\n );\r\n }\r\n }\r\n\r\n setCurrentMonthData() {\r\n this.resetCurrentMonthData();\r\n\r\n // fill the currentMonthData with current date\r\n let day = this.currentDate.getDay();\r\n\r\n this.currentMonthData[day] = [this.currentNepaliDate.day];\r\n\r\n // fill the currentMonthData with day before the current date\r\n this.setMonthDataBefore(day - 1, this.currentNepaliDate.day - 1);\r\n\r\n var currentMonthMaxValue =\r\n this._nepaliDate.nepaliMonths[this.currentNepaliDate.year - 2000][\r\n this.currentNepaliDate.month\r\n ];\r\n\r\n // fill the currentMonthData with day after the current date\r\n this.setMonthDataAfter(\r\n day + 1,\r\n this.currentNepaliDate.day + 1,\r\n currentMonthMaxValue\r\n );\r\n\r\n // we need some empty spaces in place so that the dates are shown in correct order\r\n // eg if the 1st day starts on monday then we need 1 empty space for non existingn date on Sunday\r\n this.createEmptySpaces();\r\n }\r\n\r\n setMonthDataBefore(day: any, date: any) {\r\n if (date >= 1) {\r\n if (day < 0) {\r\n day = 6;\r\n }\r\n this.currentMonthData[day] = [date, ...this.currentMonthData[day]];\r\n this.setMonthDataBefore(--day, --date);\r\n }\r\n }\r\n\r\n setMonthDataAfter(day: any, date: any, currentMonthMaxValue: any) {\r\n const nepaliDate = {\r\n day: date,\r\n month: this.currentNepaliDate.month,\r\n year: this.currentNepaliDate.year,\r\n };\r\n\r\n // only add the data if the current month matches\r\n if (date <= currentMonthMaxValue) {\r\n if (day > 6) {\r\n day = 0;\r\n }\r\n this.currentMonthData[day] = [...this.currentMonthData[day], date];\r\n this.setMonthDataAfter(++day, ++date, currentMonthMaxValue);\r\n }\r\n }\r\n\r\n createEmptySpaces() {\r\n // first find out which day has the 1st\r\n // if its a Sunday, then don't do anything else add 1 space on each previous day\r\n let dayIndex = 0;\r\n let value: any;\r\n Object.values(this.currentMonthData).map((item, index) => {\r\n value = item;\r\n if (value.includes(1)) {\r\n dayIndex = index;\r\n }\r\n return value.includes(1);\r\n });\r\n\r\n if (dayIndex) {\r\n for (dayIndex; dayIndex > 0; dayIndex--) {\r\n const monthData = this.currentMonthData[dayIndex - 1];\r\n this.currentMonthData[dayIndex - 1] = [null, ...monthData];\r\n }\r\n }\r\n }\r\n\r\n selectDate(day: number) {\r\n this.selectedDate = { ...this.currentNepaliDate, day };\r\n this.formatValue();\r\n this.close();\r\n this.propagateChange(this.selectedDate);\r\n }\r\n\r\n prevMonth() {\r\n if (this.currentNepaliDate.month <= 0) {\r\n this.currentNepaliDate.month = 11;\r\n this.currentNepaliDate.year--;\r\n } else {\r\n this.currentNepaliDate.month--;\r\n }\r\n\r\n const newNepaliDate = {\r\n day: this.currentNepaliDate.day,\r\n month: this.currentNepaliDate.month,\r\n year: this.currentNepaliDate.year,\r\n };\r\n this.currentDate = this._nepaliDate.nepToEngDate(\r\n newNepaliDate.day,\r\n newNepaliDate.month,\r\n newNepaliDate.year\r\n );\r\n\r\n this.setCurrentMonthData();\r\n }\r\n\r\n nextMonth() {\r\n if (this.currentNepaliDate.month >= 11) {\r\n this.currentNepaliDate.month = 0;\r\n this.currentNepaliDate.year++;\r\n } else {\r\n this.currentNepaliDate.month++;\r\n }\r\n\r\n const newDate = {\r\n day: this.currentNepaliDate.day,\r\n month: this.currentNepaliDate.month,\r\n year: this.currentNepaliDate.year,\r\n };\r\n this.currentDate = this._nepaliDate.nepToEngDate(\r\n newDate.day,\r\n newDate.month,\r\n newDate.year\r\n );\r\n this.setCurrentMonthData();\r\n }\r\n\r\n toggleOpen() {\r\n if (!this.alwaysVisible) {\r\n this.isOpen = !this.isOpen;\r\n }\r\n }\r\n\r\n open() {\r\n this.isOpen = true;\r\n }\r\n\r\n close() {\r\n this.isOpen = false;\r\n //this.setCurrentDate();\r\n }\r\n}\r\n","<div class=\"nepali-date-picker\" [ngClass]=\"theme\">\r\n <input\r\n class=\"np_datepicker_input\"\r\n type=\"text\"\r\n [value]=\"formattedDate\"\r\n (focus)=\"open()\"\r\n (keydown)=\"$event.preventDefault()\"\r\n aria-hidden=\"true\"\r\n placeholder=\"yyyy/mm/dd\"\r\n />\r\n <a\r\n class=\"form-icon\"\r\n (click)=\"toggleOpen()\"\r\n [ngClass]=\"isOpen ? 'active' : ''\"\r\n >\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\">\r\n <path\r\n d=\"M152 64H296V24C296 10.75 306.7 0 320 0C333.3 0 344 10.75 344 24V64H384C419.3 64 448 92.65 448 128V448C448 483.3 419.3 512 384 512H64C28.65 512 0 483.3 0 448V128C0 92.65 28.65 64 64 64H104V24C104 10.75 114.7 0 128 0C141.3 0 152 10.75 152 24V64zM48 448C48 456.8 55.16 464 64 464H384C392.8 464 400 456.8 400 448V192H48V448z\"\r\n />\r\n </svg>\r\n </a>\r\n <ng-container [ngTemplateOutlet]=\"dp\" *ngIf=\"isOpen\"></ng-container>\r\n</div>\r\n<!--.nepali-date-picker-->\r\n\r\n<ng-template #dp>\r\n <div class=\"datepicker__container\">\r\n <div class=\"datepicker__options-container\">\r\n <a class=\"prev-month\" (click)=\"prevMonth()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\">\r\n <path\r\n d=\"M224 480c-8.188 0-16.38-3.125-22.62-9.375l-192-192c-12.5-12.5-12.5-32.75 0-45.25l192-192c12.5-12.5 32.75-12.5 45.25 0s12.5 32.75 0 45.25L77.25 256l169.4 169.4c12.5 12.5 12.5 32.75 0 45.25C240.4 476.9 232.2 480 224 480z\"\r\n />\r\n </svg>\r\n </a>\r\n <span class=\"datepicker__options-month-container\">\r\n \r\n <select (change)=\"selectMonth($event)\">\r\n <option\r\n *ngFor=\"\r\n let month of monthsMapping[language][monthDisplayType];\r\n index as i\r\n \"\r\n [value]=\"month\"\r\n [selected]=\"i === currentNepaliDate?.month\"\r\n >\r\n {{ month }}\r\n </option>\r\n </select>\r\n </span>\r\n <span class=\"datepicker__options-year-container\">\r\n \r\n <select (change)=\"selectYear($event)\">\r\n <option\r\n *ngFor=\"let year of years; index as i\"\r\n [value]=\"year\"\r\n [selected]=\"year == currentNepaliDate?.year\"\r\n >\r\n {{ year | toNp: language:\"number\" }}\r\n </option>\r\n </select>\r\n </span>\r\n \r\n <a class=\"next-month\" (click)=\"nextMonth()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\">\r\n <path\r\n d=\"M96 480c-8.188 0-16.38-3.125-22.62-9.375c-12.5-12.5-12.5-32.75 0-45.25L242.8 256L73.38 86.63c-12.5-12.5-12.5-32.75 0-45.25s32.75-12.5 45.25 0l192 192c12.5 12.5 12.5 32.75 0 45.25l-192 192C112.4 476.9 104.2 480 96 480z\"\r\n />\r\n </svg>\r\n </a>\r\n </div>\r\n <div class=\"datepicker__days-container\">\r\n <div\r\n class=\"datepicker__days\"\r\n *ngFor=\"let day of daysMapping[language][dayDisplayType]; index as i\"\r\n >\r\n <div class=\"datepicker__weekday\">{{ day }}</div>\r\n <div\r\n class=\"datepicker__date-container\"\r\n *ngFor=\"let date of currentMonthData[i]\"\r\n >\r\n <div *ngIf=\"hasFuture; else noFutureDate\">\r\n <div\r\n *ngIf=\"date\"\r\n class=\"datepicker__date\"\r\n [class.datepicker__date--active]=\"\r\n date === selectedDate?.day &&\r\n currentNepaliDate.month === selectedDate?.month &&\r\n currentNepaliDate.year === selectedDate?.year\r\n \"\r\n [class.datepicker__date--current-day]=\"\r\n date === nepaliDateToday.day &&\r\n currentNepaliDate.month === nepaliDateToday.month &&\r\n currentNepaliDate.year === nepaliDateToday.year\r\n \"\r\n (click)=\"selectDate(date)\"\r\n >\r\n {{ date | toNp: language:\"number\" }}\r\n </div>\r\n <div *ngIf=\"!date\" class=\"datepicker__date--disabled\">\r\n <span>&nbsp;</span>\r\n </div>\r\n </div>\r\n\r\n <ng-template #noFutureDate>\r\n <div\r\n *ngIf=\"\r\n date &&\r\n this.currentNepaliDate.year * 365 +\r\n this.currentNepaliDate.month * 30 +\r\n date <=\r\n nepaliDateToday.day +\r\n nepaliDateToday.month * 30 +\r\n nepaliDateToday.year * 365;\r\n else disabledDates\r\n \"\r\n class=\"datepicker__date\"\r\n [class.datepicker__date--active]=\"\r\n date === selectedDate?.day &&\r\n currentNepaliDate.month === selectedDate?.month &&\r\n currentNepaliDate.year === selectedDate?.year\r\n \"\r\n [class.datepicker__date--current-day]=\"\r\n date === nepaliDateToday.day &&\r\n currentNepaliDate.month === nepaliDateToday.month &&\r\n currentNepaliDate.year === nepaliDateToday.year\r\n \"\r\n (click)=\"selectDate(date)\"\r\n >\r\n {{ date | toNp: language:\"number\" }}\r\n </div>\r\n\r\n <ng-template #disabledDates>\r\n <div class=\"datepicker__date datepicker__date--disabled\">\r\n {{ date | toNp: language:\"number\" }}\r\n </div>\r\n </ng-template>\r\n\r\n <div *ngIf=\"!date\" class=\"datepicker__date--disabled\">\r\n <span>&nbsp;</span>\r\n </div>\r\n </ng-template>\r\n </div>\r\n <!--.datepicker__date-container ends-->\r\n </div>\r\n <!--.datepicker__days ends-->\r\n </div>\r\n <!--.datepicker__days-container ends-->\r\n </div>\r\n <!--.datepicker__container ends-->\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { NpDatePickerComponent } from './np-datepicker.component';\r\nimport { ToNpPipe } from './to-np.pipe';\r\n\r\n@NgModule({\r\n declarations: [\r\n ToNpPipe,\r\n NpDatePickerComponent\r\n ],\r\n imports: [\r\n BrowserModule,\r\n FormsModule\r\n ],\r\n exports: [\r\n NpDatePickerComponent\r\n ]\r\n})\r\nexport class NepaliDatepickerModule { }\r\n","/*\r\n * Public API Surface of npx-np-datepicker\r\n */\r\n\r\nexport * from './lib/np-datepicker.service';\r\nexport * from './lib/np-datepicker.component';\r\nexport * from './lib/np-datepicker.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.NpDatePickerService","i4.ToNpPipe"],"mappings":";;;;;;;MAKa,mBAAmB,CAAA;AAqH9B,IAAA,WAAA,GAAA;QApHA,IAAa,CAAA,aAAA,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACjE,IAAiB,CAAA,iBAAA,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AACrE,QAAA,IAAA,CAAA,YAAY,GAAG;YACb,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EA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"}
1
+ {"version":3,"file":"ngx-np-datepicker.mjs","sources":["../../../projects/npx-np-datepicker/src/lib/np-datepicker.service.ts","../../../projects/npx-np-datepicker/src/lib/mapping.ts","../../../projects/npx-np-datepicker/src/lib/to-np.pipe.ts","../../../projects/npx-np-datepicker/src/lib/np-datepicker.component.ts","../../../projects/npx-np-datepicker/src/lib/np-date-picker.component.html","../../../projects/npx-np-datepicker/src/lib/np-datepicker.module.ts","../../../projects/npx-np-datepicker/src/public-api.ts","../../../projects/npx-np-datepicker/src/ngx-np-datepicker.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class NpDatePickerService {\r\n englishMonths = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\r\n englishLeapMonths = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\r\n nepaliMonths = [\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31], //2000\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], //2001\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30], // 2002\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31], // 2003\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31], // 2004\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2005\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30], // 2006\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31], // 2006\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 29, 31], // 2007\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2008\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30], // 2009\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31], // 2010\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 30, 30], // 2011\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2012\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30], // 2013\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31], // 2014\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 30, 30], // 2015\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2016\r\n [31, 32, 31, 32, 31, 30, 30, 29, 30, 29, 30, 30], // 2017\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31], // 2018\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30], // 2019\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2020\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30], // 2021\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31], // 2022\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30], // 2023\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2024\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31], // 2025\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 32, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [30, 32, 31, 32, 31, 31, 29, 30, 30, 29, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 32, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [30, 32, 31, 32, 31, 31, 29, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31],\r\n [31, 31, 31, 32, 31, 31, 29, 30, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], //2071\r\n [31, 32, 31, 32, 31, 30, 30, 29, 30, 29, 30, 30], //2072\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 31], //2073\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30], // 2076\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31],\r\n [31, 31, 31, 32, 31, 31, 30, 29, 30, 29, 30, 30], // 2078\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2079\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 29, 30, 30], // 2080\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 29, 31], // 2081\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 29, 30, 30], // 2082\r\n [31, 31, 32, 31, 31, 30, 30, 30, 29, 30, 30, 30], // 2083\r\n [31, 31, 32, 31, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 32, 31, 32, 30, 31, 30, 30, 29, 30, 30, 30],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 30, 29, 30, 30, 30],\r\n [30, 31, 32, 32, 30, 31, 30, 30, 29, 30, 30, 30],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30], //2090\r\n [31, 31, 32, 31, 31, 31, 30, 30, 29, 30, 30, 30],\r\n [30, 31, 32, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [30, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 31, 32, 31, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 30, 30, 30, 30],\r\n [30, 31, 32, 32, 31, 30, 30, 29, 30, 29, 30, 30],\r\n [31, 32, 31, 32, 31, 30, 30, 30, 29, 30, 30, 30],\r\n [31, 31, 32, 31, 31, 31, 29, 30, 29, 30, 29, 31],\r\n [31, 31, 32, 31, 31, 31, 30, 29, 29, 30, 30, 30], //2099\r\n ];\r\n\r\n englishYear: any;\r\n englishMonth: any;\r\n englishDate: any;\r\n\r\n nepaliYear: any;\r\n nepaliMonth: any;\r\n nepaliDate: any;\r\n\r\n weekDay: any;\r\n format = '.';\r\n\r\n constructor() {\r\n var d = new Date();\r\n }\r\n\r\n setCurrentNepaliDate() {\r\n var d = new Date();\r\n return this.engToNepDate(d.getDate(), d.getMonth(), d.getFullYear());\r\n }\r\n\r\n //English to Nepali date conversion\r\n engToNepDate(date: any, month: any, year: any) {\r\n if (!this.isEnglishRange(date, month, year))\r\n console.log('Invalid date format.');\r\n\r\n this.englishYear = year;\r\n this.englishMonth = month + 1;\r\n this.englishDate = date;\r\n\r\n //Setting nepali reference to 2000/1/1 with english date 1943/4/14\r\n this.nepaliYear = 2000;\r\n this.nepaliMonth = 1;\r\n this.nepaliDate = 1;\r\n\r\n var difference = this.getEnglishDateDifference(1943, 4, 14);\r\n\r\n //Getting nepali year untill the difference remains less than 365\r\n var index = 0;\r\n while (difference >= this.nepaliYearDays(index)) {\r\n this.nepaliYear++;\r\n difference = difference - this.nepaliYearDays(index);\r\n index++;\r\n //console.log('Difference:'+difference+ 'nepaliYearDays:'+this.nepaliYearDays(index));\r\n }\r\n\r\n //console.log(\"nepaliMonths=\"+this.nepaliMonths[index][0]+\"difference:\"+difference);\r\n //Getting nepali month untill the difference remains less than 31\r\n var i = 0;\r\n while (difference >= this.nepaliMonths[index][i]) {\r\n difference = difference - this.nepaliMonths[index][i];\r\n this.nepaliMonth++;\r\n i++;\r\n //console.log(\"nepaliMonths=\"+this.nepaliMonths[index][i]+\"difference:\"+difference);\r\n }\r\n this.nepaliMonth--;\r\n //console.log(difference);\r\n\r\n //Remaning days is the date;\r\n this.nepaliDate = this.nepaliDate + difference;\r\n this.getDay();\r\n\r\n return {\r\n day: this.nepaliDate,\r\n month: this.nepaliMonth,\r\n year: this.nepaliYear\r\n };\r\n }\r\n\r\n toEnglishString(format: any) {\r\n if (typeof format === 'undefined') format = '-';\r\n return (\r\n this.englishYear + format + this.englishMonth + format + this.englishDate\r\n );\r\n }\r\n\r\n getEnglishDateDifference(year: any, month: any, date: any) {\r\n //Getting difference from the current date with the date provided\r\n var difference =\r\n this.countTotalEnglishDays(\r\n this.englishYear,\r\n this.englishMonth,\r\n this.englishDate\r\n ) - this.countTotalEnglishDays(year, month, date);\r\n return difference < 0 ? -difference : difference;\r\n }\r\n\r\n countTotalEnglishDays(year: any, month: any, date: any) {\r\n var totalDays = year * 365 + date;\r\n\r\n for (var i = 0; i < month - 1; i++)\r\n totalDays = totalDays + this.englishMonths[i];\r\n\r\n totalDays = totalDays + this.countleap(year, month);\r\n return totalDays;\r\n }\r\n\r\n countleap(year: any, month: any) {\r\n if (month <= 2) year--;\r\n\r\n return (\r\n Math.floor(year / 4) - Math.floor(year / 100) + Math.floor(year / 400)\r\n );\r\n }\r\n\r\n isEnglishRange(date: any, month: any, year: any) {\r\n if (year < 1944 || year > 2042) return false;\r\n if (month < 1 || month > 12) return false;\r\n if (date < 1 || date > 31) return false;\r\n\r\n return true;\r\n }\r\n\r\n isLeapYear(year: any) {\r\n if (year % 4 === 0) {\r\n return year % 100 === 0 ? year % 400 === 0 : true;\r\n } else return false;\r\n }\r\n\r\n //Nepali to English conversion\r\n nepToEngDate(date: any, month: any, year: any) {\r\n if (!this.isNepaliRange(date, month, year)) {\r\n console.log('Invalid Date Format');\r\n // throw new Exception(\"Invalid date format.\");\r\n return;\r\n }\r\n\r\n this.nepaliYear = year;\r\n this.nepaliMonth = month + 1;\r\n this.nepaliDate = date;\r\n\r\n //Setting english reference to 1944/1/1 with nepali date 2000/9/17\r\n this.englishYear = 1944;\r\n this.englishMonth = 1;\r\n this.englishDate = 1;\r\n\r\n var difference = this.getNepaliDateDifference(2000, 9, 17);\r\n\r\n //Getting english year untill the difference remains less than 365\r\n while (difference >= (this.isLeapYear(this.englishYear) ? 366 : 365)) {\r\n difference = difference - (this.isLeapYear(this.englishYear) ? 366 : 365);\r\n this.englishYear++;\r\n }\r\n\r\n //Getting english month untill the difference remains less than 31\r\n var monthDays = this.isLeapYear(this.englishYear)\r\n ? this.englishLeapMonths\r\n : this.englishMonths;\r\n var i = 0;\r\n while (difference >= monthDays[i]) {\r\n this.englishMonth++;\r\n difference = difference - monthDays[i];\r\n i++;\r\n }\r\n\r\n //Remaning days is the date;\r\n this.englishDate = this.englishDate + difference;\r\n this.getDay();\r\n\r\n return new Date(this.englishYear + '-' + this.englishMonth + '-' + this.englishDate);\r\n }\r\n\r\n toNepaliString(format: any) {\r\n if (typeof format === 'undefined') format = '-';\r\n return (\r\n this.nepaliYear + format + this.nepaliMonth + format + this.nepaliDate\r\n );\r\n }\r\n\r\n getNepaliDateDifference(year: any, month: any, date: any) {\r\n //Getting difference from the current date with the date provided\r\n var difference =\r\n this.countTotalNepaliDays(\r\n this.nepaliYear,\r\n this.nepaliMonth,\r\n this.nepaliDate\r\n ) - this.countTotalNepaliDays(year, month, date);\r\n return difference < 0 ? -difference : difference;\r\n }\r\n\r\n countTotalNepaliDays(year: any, month: any, date: any) {\r\n var total = 0;\r\n if (year < 2000) return 0;\r\n\r\n total = total + (date - 1);\r\n\r\n var yearIndex = year - 2000;\r\n for (var i = 0; i < month - 1; i++)\r\n total = total + this.nepaliMonths[yearIndex][i];\r\n\r\n for (var i = 0; i < yearIndex; i++) total = total + this.nepaliYearDays(i);\r\n\r\n return total;\r\n }\r\n\r\n nepaliYearDays(index: any) {\r\n var total = 0;\r\n for (var i = 0; i < 12; i++) total += this.nepaliMonths[index][i];\r\n return total;\r\n }\r\n\r\n isNepaliRange(date: any, month: any, year: any) {\r\n if (year < 2000 || year > 2099) return false;\r\n\r\n if (month < 0 || month > 11) return false;\r\n\r\n if (date < 1 || date > this.nepaliMonths[year - 2000][month - 1])\r\n return false;\r\n\r\n return true;\r\n }\r\n\r\n //Class Regular methods\r\n\r\n getDay() {\r\n //Reference date 1943/4/14 Wednesday\r\n var difference = this.getEnglishDateDifference(1943, 4, 14);\r\n this.weekDay = ((3 + (difference % 7)) % 7) + 1;\r\n return this.weekDay;\r\n }\r\n\r\n getEnglishYear() {\r\n return this.englishYear;\r\n }\r\n\r\n getEnglishMonth() {\r\n return this.englishMonth;\r\n }\r\n\r\n getEnglishDate() {\r\n return this.englishDate;\r\n }\r\n\r\n getNepaliYear() {\r\n return this.nepaliYear;\r\n }\r\n getNepaliMonth() {\r\n return this.nepaliMonth;\r\n }\r\n\r\n getNepaliDate() {\r\n return this.nepaliDate;\r\n }\r\n\r\n}\r\n","import { MonthMapping, DaysMapping, WordsMapping } from './types';\r\n\r\nexport const numberMapping: string[] = ['०', '१', '२', '३', '४', '५', '६', '७', '८', '९'];\r\n\r\nexport const wordsMapping: WordsMapping = {\r\n year: 'साल',\r\n month: 'महिना'\r\n};\r\n\r\nexport const daysMapping: DaysMapping = {\r\n en: {\r\n default: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\r\n short: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa']\r\n },\r\n ne: {\r\n default: ['आइत', 'सोम', 'मंगल्', 'बुध', 'बिही', 'शुक्र', 'शनि'],\r\n short: ['आ', 'सो', 'मं', 'बु', 'बि', 'शु', 'श']\r\n }\r\n};\r\n\r\nexport const monthsMapping: MonthMapping = {\r\n en: {\r\n default: [\r\n 'Baisakh', 'Jestha', 'Asadh', 'Shrawan', 'Bhadra', 'Ashwin', 'Kartik', 'Mangsir', 'Poush', 'Marga', 'Falgun', 'Chaitra'\r\n ],\r\n modern: [\r\n 'Baisakh', 'Jeth', 'Asaar', 'Saawn', 'Bhadau', 'Aashoj', 'Kartik', 'Mangsir', 'Push', 'Magh', 'Fagun', 'Chait'\r\n ],\r\n short: [\r\n 'Bai', 'Jes', 'Asa', 'Shr', 'Bha', 'Ash', 'Kar', 'Man', 'Pou', 'Mar', 'Fal', 'Cha'\r\n ]\r\n },\r\n ne: {\r\n default: [\r\n 'बैशाख', 'जेष्ठ', 'आषाढ', 'श्रवण', 'भाद्र', 'आश्विन', 'कार्तिक', 'मंसिर', 'पौष', 'मार्ग', 'फाल्गुन', 'चैत्र'\r\n ],\r\n modern: [\r\n 'बैशाख', 'जेठ', 'असार', 'साउन', 'भदौ', 'अशोज', 'कार्तिक', 'मंसिर', 'पुष', 'माघ', 'फागुन', 'चैत'\r\n ],\r\n short: [\r\n 'बै', 'जे', 'अ', 'श्रा', 'भा', 'आ', 'का', 'मं', 'पौ', 'मा', 'फा', 'चै'\r\n ]\r\n }\r\n};\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { numberMapping, wordsMapping } from './mapping';\r\n\r\n@Pipe({\r\n name: 'toNp',\r\n})\r\nexport class ToNpPipe implements PipeTransform {\r\n transform(\r\n value: number | string,\r\n language: string = 'ne',\r\n type: string = 'number'\r\n ): any {\r\n if (value) {\r\n if (language === 'ne') {\r\n switch (type) {\r\n case 'number':\r\n const split = value.toString().split('');\r\n return split\r\n .map((n) => {\r\n if (n === ' ') {\r\n return ' ';\r\n }\r\n return numberMapping[+n] ? numberMapping[+n] : n;\r\n })\r\n .join('');\r\n case 'word':\r\n let wrd = value.toString().toLowerCase();\r\n if(wrd ==='month'){\r\n return wordsMapping['month'];\r\n }else if(wrd ==='year'){\r\n return wordsMapping['year'];\r\n }else{\r\n return wrd\r\n }\r\n \r\n default:\r\n }\r\n }else{\r\n return value;\r\n }\r\n } else {\r\n return '';\r\n }\r\n }\r\n}\r\n","import {\r\n Component,\r\n HostListener,\r\n OnInit,\r\n ElementRef,\r\n Input,\r\n forwardRef,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport { NpDatePickerService } from './np-datepicker.service';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\nimport {\r\n NepaliDate,\r\n MonthData,\r\n DaysMapping,\r\n MonthMapping,\r\n DateFormatter,\r\n} from './types';\r\nimport { daysMapping, monthsMapping } from './mapping';\r\n\r\n@Component({\r\n selector: 'np-datepicker',\r\n templateUrl: './np-date-picker.component.html',\r\n styleUrls: ['./np-date-picker.component.css'],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => NpDatePickerComponent),\r\n multi: true,\r\n },\r\n ],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class NpDatePickerComponent implements OnInit, ControlValueAccessor {\r\n nepaliDateToday: NepaliDate = { day: 0, month: 0, year: 0 };\r\n currentNepaliDate: NepaliDate = { day: 0, month: 0, year: 0 };\r\n selectedDate!: NepaliDate;\r\n formattedDate = '';\r\n currentDate: any;\r\n\r\n displayDate!: string;\r\n\r\n years: number[] = [];\r\n\r\n currentMonthData!: any;\r\n\r\n daysMapping: DaysMapping = daysMapping;\r\n\r\n monthsMapping: MonthMapping = monthsMapping;\r\n\r\n isOpen = false;\r\n\r\n hideInput = false;\r\n\r\n alwaysVisible = false;\r\n\r\n @Input()\r\n theme!: string;\r\n\r\n @Input()\r\n language: 'en' | 'ne' = 'ne';\r\n\r\n @Input() hasFuture: Boolean = true;\r\n\r\n @Input() format: string = 'yy-mm-dd';\r\n\r\n monthDisplayType: 'default' | 'modern' | 'short' = 'default';\r\n\r\n dayDisplayType: 'default' | 'short' = 'short';\r\n\r\n dateFormatter: DateFormatter = (selectedDate: NepaliDate) => {\r\n const dd =\r\n selectedDate.day < 10 ? '0' + selectedDate.day : selectedDate.day;\r\n const mm =\r\n selectedDate.month < 10\r\n ? '0' + (selectedDate.month + 1)\r\n : selectedDate.month + 1;\r\n\r\n switch(this.format){\r\n case 'dd-mm-yy':\r\n return `${dd}/${mm}/${this.selectedDate.year}`;\r\n default:\r\n return `${this.selectedDate.year}/${mm}/${dd}`;\r\n } \r\n };\r\n\r\n initialized: boolean = false;\r\n\r\n @HostListener('document:click', ['$event'])\r\n clickout(event: any) {\r\n if (!this.eRef.nativeElement.contains(event.target)) {\r\n this.close();\r\n }\r\n }\r\n\r\n constructor(\r\n public _nepaliDate: NpDatePickerService,\r\n private eRef: ElementRef\r\n ) {\r\n this.currentDate = new Date();\r\n this.nepaliDateToday = _nepaliDate.engToNepDate(\r\n this.currentDate.getDate(),\r\n this.currentDate.getMonth(),\r\n this.currentDate.getFullYear()\r\n );\r\n }\r\n\r\n ngOnInit() {\r\n this.setCurrentDate();\r\n //this.selectDate(this.currentNepaliDate.day);\r\n this.populateYears();\r\n this.setCurrentMonthData();\r\n // console.log(this.currentMonthData);\r\n }\r\n\r\n populateYears() {\r\n for (let i = 2001; i <= 2099; i++) {\r\n this.years.push(i);\r\n }\r\n }\r\n selectYear(e: any) {\r\n this.currentNepaliDate.year = parseInt(e.target.value);\r\n\r\n const newDate = {\r\n day: this.currentNepaliDate.day,\r\n month: this.currentNepaliDate.month,\r\n year: this.currentNepaliDate.year,\r\n };\r\n\r\n this.currentDate = this._nepaliDate.nepToEngDate(\r\n newDate.day,\r\n newDate.month,\r\n newDate.year\r\n );\r\n\r\n this.setCurrentMonthData();\r\n }\r\n\r\n selectMonth(e: any) {\r\n let month = e.target.value;\r\n let nep_month_index =\r\n this.monthsMapping[this.language][this.monthDisplayType]?.indexOf(\r\n month\r\n ) ?? 0;\r\n\r\n this.currentNepaliDate.month = nep_month_index;\r\n\r\n const newNepaliDate = {\r\n day: this.currentNepaliDate.day,\r\n month: this.currentNepaliDate.month,\r\n year: this.currentNepaliDate.year,\r\n };\r\n\r\n this.currentDate = this._nepaliDate.nepToEngDate(\r\n newNepaliDate.day,\r\n newNepaliDate.month,\r\n newNepaliDate.year\r\n );\r\n // console.log(this.currentDate);\r\n this.setCurrentMonthData();\r\n }\r\n\r\n resetCurrentMonthData() {\r\n this.currentMonthData = {\r\n 0: [],\r\n 1: [],\r\n 2: [],\r\n 3: [],\r\n 4: [],\r\n 5: [],\r\n 6: [],\r\n };\r\n }\r\n formatValue() {\r\n if (this.selectedDate) {\r\n this.formattedDate = this.dateFormatter(this.selectedDate);\r\n }\r\n }\r\n propagateChange = (_: any) => {};\r\n propagateTouch = (_: any) => {};\r\n writeValue(value: any) {\r\n this.propagateChange(this.selectedDate);\r\n if (value) {\r\n this.selectedDate = value;\r\n this.currentNepaliDate = value;\r\n this.formatValue();\r\n }\r\n }\r\n registerOnTouched() {}\r\n registerOnChange(fn: any) {\r\n this.propagateChange = fn;\r\n }\r\n\r\n setCurrentDate() {\r\n if (!this.selectedDate) {\r\n this.currentNepaliDate = this._nepaliDate.engToNepDate(\r\n this.currentDate.getDate(),\r\n this.currentDate.getMonth(),\r\n this.currentDate.getFullYear()\r\n );\r\n } else {\r\n const { day, month, year } = this.selectedDate;\r\n this.currentNepaliDate = this._nepaliDate.engToNepDate(day, month, year);\r\n this.currentDate = this._nepaliDate.nepToEngDate(\r\n this.selectedDate.year,\r\n this.selectedDate.month,\r\n this.selectedDate.day\r\n );\r\n }\r\n }\r\n\r\n setCurrentMonthData() {\r\n this.resetCurrentMonthData();\r\n\r\n // fill the currentMonthData with current date\r\n let day = this.currentDate.getDay();\r\n\r\n this.currentMonthData[day] = [this.currentNepaliDate.day];\r\n\r\n // fill the currentMonthData with day before the current date\r\n this.setMonthDataBefore(day - 1, this.currentNepaliDate.day - 1);\r\n\r\n var currentMonthMaxValue =\r\n this._nepaliDate.nepaliMonths[this.currentNepaliDate.year - 2000][\r\n this.currentNepaliDate.month\r\n ];\r\n\r\n // fill the currentMonthData with day after the current date\r\n this.setMonthDataAfter(\r\n day + 1,\r\n this.currentNepaliDate.day + 1,\r\n currentMonthMaxValue\r\n );\r\n\r\n // we need some empty spaces in place so that the dates are shown in correct order\r\n // eg if the 1st day starts on monday then we need 1 empty space for non existingn date on Sunday\r\n this.createEmptySpaces();\r\n }\r\n\r\n setMonthDataBefore(day: any, date: any) {\r\n if (date >= 1) {\r\n if (day < 0) {\r\n day = 6;\r\n }\r\n this.currentMonthData[day] = [date, ...this.currentMonthData[day]];\r\n this.setMonthDataBefore(--day, --date);\r\n }\r\n }\r\n\r\n setMonthDataAfter(day: any, date: any, currentMonthMaxValue: any) {\r\n const nepaliDate = {\r\n day: date,\r\n month: this.currentNepaliDate.month,\r\n year: this.currentNepaliDate.year,\r\n };\r\n\r\n // only add the data if the current month matches\r\n if (date <= currentMonthMaxValue) {\r\n if (day > 6) {\r\n day = 0;\r\n }\r\n this.currentMonthData[day] = [...this.currentMonthData[day], date];\r\n this.setMonthDataAfter(++day, ++date, currentMonthMaxValue);\r\n }\r\n }\r\n\r\n createEmptySpaces() {\r\n // first find out which day has the 1st\r\n // if its a Sunday, then don't do anything else add 1 space on each previous day\r\n let dayIndex = 0;\r\n let value: any;\r\n Object.values(this.currentMonthData).map((item, index) => {\r\n value = item;\r\n if (value.includes(1)) {\r\n dayIndex = index;\r\n }\r\n return value.includes(1);\r\n });\r\n\r\n if (dayIndex) {\r\n for (dayIndex; dayIndex > 0; dayIndex--) {\r\n const monthData = this.currentMonthData[dayIndex - 1];\r\n this.currentMonthData[dayIndex - 1] = [null, ...monthData];\r\n }\r\n }\r\n }\r\n\r\n selectDate(day: number) {\r\n this.selectedDate = { ...this.currentNepaliDate, day };\r\n this.formatValue();\r\n this.close();\r\n this.propagateChange(this.selectedDate);\r\n }\r\n\r\n prevMonth() {\r\n if (this.currentNepaliDate.month <= 0) {\r\n this.currentNepaliDate.month = 11;\r\n this.currentNepaliDate.year--;\r\n } else {\r\n this.currentNepaliDate.month--;\r\n }\r\n\r\n const newNepaliDate = {\r\n day: this.currentNepaliDate.day,\r\n month: this.currentNepaliDate.month,\r\n year: this.currentNepaliDate.year,\r\n };\r\n this.currentDate = this._nepaliDate.nepToEngDate(\r\n newNepaliDate.day,\r\n newNepaliDate.month,\r\n newNepaliDate.year\r\n );\r\n\r\n this.setCurrentMonthData();\r\n }\r\n\r\n nextMonth() {\r\n if (this.currentNepaliDate.month >= 11) {\r\n this.currentNepaliDate.month = 0;\r\n this.currentNepaliDate.year++;\r\n } else {\r\n this.currentNepaliDate.month++;\r\n }\r\n\r\n const newDate = {\r\n day: this.currentNepaliDate.day,\r\n month: this.currentNepaliDate.month,\r\n year: this.currentNepaliDate.year,\r\n };\r\n this.currentDate = this._nepaliDate.nepToEngDate(\r\n newDate.day,\r\n newDate.month,\r\n newDate.year\r\n );\r\n this.setCurrentMonthData();\r\n }\r\n\r\n toggleOpen() {\r\n if (!this.alwaysVisible) {\r\n this.isOpen = !this.isOpen;\r\n }\r\n }\r\n\r\n open() {\r\n this.isOpen = true;\r\n }\r\n\r\n close() {\r\n this.isOpen = false;\r\n //this.setCurrentDate();\r\n }\r\n}\r\n","<div class=\"nepali-date-picker\" [ngClass]=\"theme\">\r\n <input\r\n class=\"np_datepicker_input\"\r\n type=\"text\"\r\n [value]=\"formattedDate\"\r\n (focus)=\"open()\"\r\n (keydown)=\"$event.preventDefault()\"\r\n aria-hidden=\"true\"\r\n placeholder=\"yyyy/mm/dd\"\r\n />\r\n <a\r\n class=\"form-icon\"\r\n (click)=\"toggleOpen()\"\r\n [ngClass]=\"isOpen ? 'active' : ''\"\r\n >\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\">\r\n <path\r\n d=\"M152 64H296V24C296 10.75 306.7 0 320 0C333.3 0 344 10.75 344 24V64H384C419.3 64 448 92.65 448 128V448C448 483.3 419.3 512 384 512H64C28.65 512 0 483.3 0 448V128C0 92.65 28.65 64 64 64H104V24C104 10.75 114.7 0 128 0C141.3 0 152 10.75 152 24V64zM48 448C48 456.8 55.16 464 64 464H384C392.8 464 400 456.8 400 448V192H48V448z\"\r\n />\r\n </svg>\r\n </a>\r\n <ng-container [ngTemplateOutlet]=\"dp\" *ngIf=\"isOpen\"></ng-container>\r\n</div>\r\n<!--.nepali-date-picker-->\r\n\r\n<ng-template #dp>\r\n <div class=\"datepicker__container\">\r\n <div class=\"datepicker__options-container\">\r\n <a class=\"prev-month\" (click)=\"prevMonth()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\">\r\n <path\r\n d=\"M224 480c-8.188 0-16.38-3.125-22.62-9.375l-192-192c-12.5-12.5-12.5-32.75 0-45.25l192-192c12.5-12.5 32.75-12.5 45.25 0s12.5 32.75 0 45.25L77.25 256l169.4 169.4c12.5 12.5 12.5 32.75 0 45.25C240.4 476.9 232.2 480 224 480z\"\r\n />\r\n </svg>\r\n </a>\r\n <span class=\"datepicker__options-month-container\">\r\n \r\n <select (change)=\"selectMonth($event)\">\r\n <option\r\n *ngFor=\"\r\n let month of monthsMapping[language][monthDisplayType];\r\n index as i\r\n \"\r\n [value]=\"month\"\r\n [selected]=\"i === currentNepaliDate?.month\"\r\n >\r\n {{ month }}\r\n </option>\r\n </select>\r\n </span>\r\n <span class=\"datepicker__options-year-container\">\r\n \r\n <select (change)=\"selectYear($event)\">\r\n <option\r\n *ngFor=\"let year of years; index as i\"\r\n [value]=\"year\"\r\n [selected]=\"year == currentNepaliDate?.year\"\r\n >\r\n {{ year | toNp: language:\"number\" }}\r\n </option>\r\n </select>\r\n </span>\r\n \r\n <a class=\"next-month\" (click)=\"nextMonth()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\">\r\n <path\r\n d=\"M96 480c-8.188 0-16.38-3.125-22.62-9.375c-12.5-12.5-12.5-32.75 0-45.25L242.8 256L73.38 86.63c-12.5-12.5-12.5-32.75 0-45.25s32.75-12.5 45.25 0l192 192c12.5 12.5 12.5 32.75 0 45.25l-192 192C112.4 476.9 104.2 480 96 480z\"\r\n />\r\n </svg>\r\n </a>\r\n </div>\r\n <div class=\"datepicker__days-container\">\r\n <div\r\n class=\"datepicker__days\"\r\n *ngFor=\"let day of daysMapping[language][dayDisplayType]; index as i\"\r\n >\r\n <div class=\"datepicker__weekday\">{{ day }}</div>\r\n <div\r\n class=\"datepicker__date-container\"\r\n *ngFor=\"let date of currentMonthData[i]\"\r\n >\r\n <div *ngIf=\"hasFuture; else noFutureDate\">\r\n <div\r\n *ngIf=\"date\"\r\n class=\"datepicker__date\"\r\n [class.datepicker__date--active]=\"\r\n date === selectedDate?.day &&\r\n currentNepaliDate.month === selectedDate?.month &&\r\n currentNepaliDate.year === selectedDate?.year\r\n \"\r\n [class.datepicker__date--current-day]=\"\r\n date === nepaliDateToday.day &&\r\n currentNepaliDate.month === nepaliDateToday.month &&\r\n currentNepaliDate.year === nepaliDateToday.year\r\n \"\r\n (click)=\"selectDate(date)\"\r\n >\r\n {{ date | toNp: language:\"number\" }}\r\n </div>\r\n <div *ngIf=\"!date\" class=\"datepicker__date--disabled\">\r\n <span>&nbsp;</span>\r\n </div>\r\n </div>\r\n\r\n <ng-template #noFutureDate>\r\n <div\r\n *ngIf=\"\r\n date &&\r\n this.currentNepaliDate.year * 365 +\r\n this.currentNepaliDate.month * 30 +\r\n date <=\r\n nepaliDateToday.day +\r\n nepaliDateToday.month * 30 +\r\n nepaliDateToday.year * 365;\r\n else disabledDates\r\n \"\r\n class=\"datepicker__date\"\r\n [class.datepicker__date--active]=\"\r\n date === selectedDate?.day &&\r\n currentNepaliDate.month === selectedDate?.month &&\r\n currentNepaliDate.year === selectedDate?.year\r\n \"\r\n [class.datepicker__date--current-day]=\"\r\n date === nepaliDateToday.day &&\r\n currentNepaliDate.month === nepaliDateToday.month &&\r\n currentNepaliDate.year === nepaliDateToday.year\r\n \"\r\n (click)=\"selectDate(date)\"\r\n >\r\n {{ date | toNp: language:\"number\" }}\r\n </div>\r\n\r\n <ng-template #disabledDates>\r\n <div class=\"datepicker__date datepicker__date--disabled\">\r\n {{ date | toNp: language:\"number\" }}\r\n </div>\r\n </ng-template>\r\n\r\n <div *ngIf=\"!date\" class=\"datepicker__date--disabled\">\r\n <span>&nbsp;</span>\r\n </div>\r\n </ng-template>\r\n </div>\r\n <!--.datepicker__date-container ends-->\r\n </div>\r\n <!--.datepicker__days ends-->\r\n </div>\r\n <!--.datepicker__days-container ends-->\r\n </div>\r\n <!--.datepicker__container ends-->\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { NpDatePickerComponent } from './np-datepicker.component';\r\nimport { ToNpPipe } from './to-np.pipe';\r\n\r\n@NgModule({\r\n declarations: [\r\n ToNpPipe,\r\n NpDatePickerComponent\r\n ],\r\n imports: [\r\n BrowserModule,\r\n FormsModule\r\n ],\r\n exports: [\r\n NpDatePickerComponent\r\n ]\r\n})\r\nexport class NepaliDatepickerModule { }\r\n","/*\r\n * Public API Surface of npx-np-datepicker\r\n */\r\n\r\nexport * from './lib/np-datepicker.service';\r\nexport * from './lib/np-datepicker.component';\r\nexport * from './lib/np-datepicker.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.NpDatePickerService","i4.ToNpPipe"],"mappings":";;;;;;;MAKa,mBAAmB,CAAA;AAqH9B,IAAA,WAAA,GAAA;QApHA,IAAa,CAAA,aAAA,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACjE,IAAiB,CAAA,iBAAA,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AACrE,QAAA,IAAA,CAAA,YAAY,GAAG;YACb,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;SACjD,CAAC;QAWF,IAAM,CAAA,MAAA,GAAG,GAAG,CAAC;AAGX,QAAA,IAAI,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;KACpB;IAED,oBAAoB,GAAA;AAClB,QAAA,IAAI,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;AACnB,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;KACtE;;AAGD,IAAA,YAAY,CAAC,IAAS,EAAE,KAAU,EAAE,IAAS,EAAA;QAC3C,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC;AACzC,YAAA,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;AAEtC,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;AACxB,QAAA,IAAI,CAAC,YAAY,GAAG,KAAK,GAAG,CAAC,CAAC;AAC9B,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;;AAGxB,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;AACvB,QAAA,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;AACrB,QAAA,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;AAEpB,QAAA,IAAI,UAAU,GAAG,IAAI,CAAC,wBAAwB,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;;QAG5D,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,OAAO,UAAU,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE;YAC/C,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,UAAU,GAAG,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AACrD,YAAA,KAAK,EAAE,CAAC;;AAET,SAAA;;;QAID,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,OAAO,UAAU,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;AAChD,YAAA,UAAU,GAAG,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACtD,IAAI,CAAC,WAAW,EAAE,CAAC;AACnB,YAAA,CAAC,EAAE,CAAC;;AAEL,SAAA;QACD,IAAI,CAAC,WAAW,EAAE,CAAC;;;QAInB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC/C,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,OAAO;YACL,GAAG,EAAE,IAAI,CAAC,UAAU;YACpB,KAAK,EAAE,IAAI,CAAC,WAAW;YACvB,IAAI,EAAE,IAAI,CAAC,UAAU;SACtB,CAAC;KACH;AAED,IAAA,eAAe,CAAC,MAAW,EAAA;QACzB,IAAI,OAAO,MAAM,KAAK,WAAW;YAAE,MAAM,GAAG,GAAG,CAAC;AAChD,QAAA,QACE,IAAI,CAAC,WAAW,GAAG,MAAM,GAAG,IAAI,CAAC,YAAY,GAAG,MAAM,GAAG,IAAI,CAAC,WAAW,EACzE;KACH;AAED,IAAA,wBAAwB,CAAC,IAAS,EAAE,KAAU,EAAE,IAAS,EAAA;;AAEvD,QAAA,IAAI,UAAU,GACZ,IAAI,CAAC,qBAAqB,CACxB,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,WAAW,CACjB,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;AACpD,QAAA,OAAO,UAAU,GAAG,CAAC,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC;KAClD;AAED,IAAA,qBAAqB,CAAC,IAAS,EAAE,KAAU,EAAE,IAAS,EAAA;AACpD,QAAA,IAAI,SAAS,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC;AAElC,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,EAAE;YAChC,SAAS,GAAG,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QAEhD,SAAS,GAAG,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACpD,QAAA,OAAO,SAAS,CAAC;KAClB;IAED,SAAS,CAAC,IAAS,EAAE,KAAU,EAAA;QAC7B,IAAI,KAAK,IAAI,CAAC;AAAE,YAAA,IAAI,EAAE,CAAC;AAEvB,QAAA,QACE,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC,EACtE;KACH;AAED,IAAA,cAAc,CAAC,IAAS,EAAE,KAAU,EAAE,IAAS,EAAA;AAC7C,QAAA,IAAI,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI;AAAE,YAAA,OAAO,KAAK,CAAC;AAC7C,QAAA,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE;AAAE,YAAA,OAAO,KAAK,CAAC;AAC1C,QAAA,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,EAAE;AAAE,YAAA,OAAO,KAAK,CAAC;AAExC,QAAA,OAAO,IAAI,CAAC;KACb;AAED,IAAA,UAAU,CAAC,IAAS,EAAA;AAClB,QAAA,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE;AAClB,YAAA,OAAO,IAAI,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC;AACnD,SAAA;;AAAM,YAAA,OAAO,KAAK,CAAC;KACrB;;AAGD,IAAA,YAAY,CAAC,IAAS,EAAE,KAAU,EAAE,IAAS,EAAA;QAC3C,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE;AAC1C,YAAA,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;;YAEnC,OAAO;AACR,SAAA;AAED,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;AACvB,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK,GAAG,CAAC,CAAC;AAC7B,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;;AAGvB,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;AACxB,QAAA,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;AACtB,QAAA,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;AAErB,QAAA,IAAI,UAAU,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;;QAG3D,OAAO,UAAU,KAAK,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,EAAE;YACpE,UAAU,GAAG,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;YAC1E,IAAI,CAAC,WAAW,EAAE,CAAC;AACpB,SAAA;;QAGD,IAAI,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;cAC7C,IAAI,CAAC,iBAAiB;AACxB,cAAE,IAAI,CAAC,aAAa,CAAC;QACvB,IAAI,CAAC,GAAG,CAAC,CAAC;AACV,QAAA,OAAO,UAAU,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE;YACjC,IAAI,CAAC,YAAY,EAAE,CAAC;AACpB,YAAA,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AACvC,YAAA,CAAC,EAAE,CAAC;AACL,SAAA;;QAGD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QACjD,IAAI,CAAC,MAAM,EAAE,CAAC;AAEd,QAAA,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,GAAG,GAAG,IAAI,CAAC,YAAY,GAAG,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;KACtF;AAED,IAAA,cAAc,CAAC,MAAW,EAAA;QACxB,IAAI,OAAO,MAAM,KAAK,WAAW;YAAE,MAAM,GAAG,GAAG,CAAC;AAChD,QAAA,QACE,IAAI,CAAC,UAAU,GAAG,MAAM,GAAG,IAAI,CAAC,WAAW,GAAG,MAAM,GAAG,IAAI,CAAC,UAAU,EACtE;KACH;AAED,IAAA,uBAAuB,CAAC,IAAS,EAAE,KAAU,EAAE,IAAS,EAAA;;AAEtD,QAAA,IAAI,UAAU,GACZ,IAAI,CAAC,oBAAoB,CACvB,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,UAAU,CAChB,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;AACnD,QAAA,OAAO,UAAU,GAAG,CAAC,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC;KAClD;AAED,IAAA,oBAAoB,CAAC,IAAS,EAAE,KAAU,EAAE,IAAS,EAAA;QACnD,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,IAAI,GAAG,IAAI;AAAE,YAAA,OAAO,CAAC,CAAC;QAE1B,KAAK,GAAG,KAAK,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC;AAE3B,QAAA,IAAI,SAAS,GAAG,IAAI,GAAG,IAAI,CAAC;AAC5B,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,EAAE;AAChC,YAAA,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QAElD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE;YAAE,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;AAE3E,QAAA,OAAO,KAAK,CAAC;KACd;AAED,IAAA,cAAc,CAAC,KAAU,EAAA;QACvB,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;YAAE,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAClE,QAAA,OAAO,KAAK,CAAC;KACd;AAED,IAAA,aAAa,CAAC,IAAS,EAAE,KAAU,EAAE,IAAS,EAAA;AAC5C,QAAA,IAAI,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI;AAAE,YAAA,OAAO,KAAK,CAAC;AAE7C,QAAA,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE;AAAE,YAAA,OAAO,KAAK,CAAC;AAE1C,QAAA,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;AAC9D,YAAA,OAAO,KAAK,CAAC;AAEf,QAAA,OAAO,IAAI,CAAC;KACb;;IAID,MAAM,GAAA;;AAEJ,QAAA,IAAI,UAAU,GAAG,IAAI,CAAC,wBAAwB,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;AAC5D,QAAA,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChD,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;IAED,cAAc,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;IAED,eAAe,GAAA;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;IAED,cAAc,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;IAED,aAAa,GAAA;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;IACD,cAAc,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;IAED,aAAa,GAAA;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;;gHA3VU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAnB,mBAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,cAFlB,MAAM,EAAA,CAAA,CAAA;2FAEP,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAH/B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;ACFM,MAAM,aAAa,GAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAEnF,MAAM,YAAY,GAAiB;AACxC,IAAA,IAAI,EAAE,KAAK;AACX,IAAA,KAAK,EAAE,OAAO;CACf,CAAC;AAEK,MAAM,WAAW,GAAgB;AACtC,IAAA,EAAE,EAAE;AACF,QAAA,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;AAC1D,QAAA,KAAK,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;AAClD,KAAA;AACD,IAAA,EAAE,EAAE;AACF,QAAA,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC;AAC/D,QAAA,KAAK,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC;AAChD,KAAA;CACF,CAAC;AAEK,MAAM,aAAa,GAAiB;AACzC,IAAA,EAAE,EAAE;AACF,QAAA,OAAO,EAAE;YACP,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS;AACxH,SAAA;AACD,QAAA,MAAM,EAAE;YACN,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;AAC/G,SAAA;AACD,QAAA,KAAK,EAAE;YACL,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK;AACnF,SAAA;AACF,KAAA;AACD,IAAA,EAAE,EAAE;AACF,QAAA,OAAO,EAAE;YACP,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO;AAC7G,SAAA;AACD,QAAA,MAAM,EAAE;YACN,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK;AAChG,SAAA;AACD,QAAA,KAAK,EAAE;YACL,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;AACvE,SAAA;AACF,KAAA;CACF;;MCrCY,QAAQ,CAAA;AACnB,IAAA,SAAS,CACP,KAAsB,EACtB,WAAmB,IAAI,EACvB,OAAe,QAAQ,EAAA;AAEvB,QAAA,IAAI,KAAK,EAAE;YACT,IAAI,QAAQ,KAAK,IAAI,EAAE;AACrB,gBAAA,QAAQ,IAAI;AACV,oBAAA,KAAK,QAAQ;wBACX,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;AACzC,wBAAA,OAAO,KAAK;AACT,6BAAA,GAAG,CAAC,CAAC,CAAC,KAAI;4BACT,IAAI,CAAC,KAAK,GAAG,EAAE;AACb,gCAAA,OAAO,GAAG,CAAC;AACZ,6BAAA;AACD,4BAAA,OAAO,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AACnD,yBAAC,CAAC;6BACD,IAAI,CAAC,EAAE,CAAC,CAAC;AACd,oBAAA,KAAK,MAAM;wBACT,IAAI,GAAG,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAC;wBACzC,IAAG,GAAG,KAAI,OAAO,EAAC;AAChB,4BAAA,OAAO,YAAY,CAAC,OAAO,CAAC,CAAC;AAC9B,yBAAA;6BAAK,IAAG,GAAG,KAAI,MAAM,EAAC;AACrB,4BAAA,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;AAC7B,yBAAA;AAAI,6BAAA;AACH,4BAAA,OAAO,GAAG,CAAA;AACX,yBAAA;oBAEH,QAAQ;AACT,iBAAA;AACF,aAAA;AAAI,iBAAA;AACL,gBAAA,OAAO,KAAK,CAAC;AACd,aAAA;AACA,SAAA;AAAM,aAAA;AACL,YAAA,OAAO,EAAE,CAAC;AACX,SAAA;KACF;;qGArCU,QAAQ,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;mGAAR,QAAQ,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,CAAA;2FAAR,QAAQ,EAAA,UAAA,EAAA,CAAA;kBAHpB,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,MAAM;AACb,iBAAA,CAAA;;;MC6BY,qBAAqB,CAAA;IA8DhC,WACS,CAAA,WAAgC,EAC/B,IAAgB,EAAA;QADjB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAqB;QAC/B,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAY;AA/D1B,QAAA,IAAA,CAAA,eAAe,GAAe,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AAC5D,QAAA,IAAA,CAAA,iBAAiB,GAAe,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QAE9D,IAAa,CAAA,aAAA,GAAG,EAAE,CAAC;QAKnB,IAAK,CAAA,KAAA,GAAa,EAAE,CAAC;QAIrB,IAAW,CAAA,WAAA,GAAgB,WAAW,CAAC;QAEvC,IAAa,CAAA,aAAA,GAAiB,aAAa,CAAC;QAE5C,IAAM,CAAA,MAAA,GAAG,KAAK,CAAC;QAEf,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;QAElB,IAAa,CAAA,aAAA,GAAG,KAAK,CAAC;QAMtB,IAAQ,CAAA,QAAA,GAAgB,IAAI,CAAC;QAEpB,IAAS,CAAA,SAAA,GAAY,IAAI,CAAC;QAE1B,IAAM,CAAA,MAAA,GAAW,UAAU,CAAC;QAErC,IAAgB,CAAA,gBAAA,GAAmC,SAAS,CAAC;QAE7D,IAAc,CAAA,cAAA,GAAwB,OAAO,CAAC;AAE9C,QAAA,IAAA,CAAA,aAAa,GAAkB,CAAC,YAAwB,KAAI;YAC1D,MAAM,EAAE,GACN,YAAY,CAAC,GAAG,GAAG,EAAE,GAAG,GAAG,GAAG,YAAY,CAAC,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC;AACpE,YAAA,MAAM,EAAE,GACN,YAAY,CAAC,KAAK,GAAG,EAAE;kBACnB,GAAG,IAAI,YAAY,CAAC,KAAK,GAAG,CAAC,CAAC;AAChC,kBAAE,YAAY,CAAC,KAAK,GAAG,CAAC,CAAC;YAE5B,QAAO,IAAI,CAAC,MAAM;AACjB,gBAAA,KAAK,UAAU;oBACb,OAAO,CAAA,EAAG,EAAE,CAAA,CAAA,EAAI,EAAE,CAAA,CAAA,EAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAA,CAAE,CAAC;AACjD,gBAAA;oBACE,OAAO,CAAA,EAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAA,CAAA,EAAI,EAAE,CAAA,CAAA,EAAI,EAAE,CAAA,CAAE,CAAC;AAClD,aAAA;AACH,SAAC,CAAC;QAEF,IAAW,CAAA,WAAA,GAAY,KAAK,CAAC;AA4F7B,QAAA,IAAA,CAAA,eAAe,GAAG,CAAC,CAAM,KAAI,GAAG,CAAC;AACjC,QAAA,IAAA,CAAA,cAAc,GAAG,CAAC,CAAM,KAAI,GAAG,CAAC;AAhF9B,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC;AAC9B,QAAA,IAAI,CAAC,eAAe,GAAG,WAAW,CAAC,YAAY,CAC7C,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,EAC1B,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,EAC3B,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAC/B,CAAC;KACH;AAhBD,IAAA,QAAQ,CAAC,KAAU,EAAA;AACjB,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;YACnD,IAAI,CAAC,KAAK,EAAE,CAAC;AACd,SAAA;KACF;IAcD,QAAQ,GAAA;QACN,IAAI,CAAC,cAAc,EAAE,CAAC;;QAEtB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,mBAAmB,EAAE,CAAC;;KAE5B;IAED,aAAa,GAAA;QACX,KAAK,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,EAAE;AACjC,YAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,SAAA;KACF;AACD,IAAA,UAAU,CAAC,CAAM,EAAA;AACf,QAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAEvD,QAAA,MAAM,OAAO,GAAG;AACd,YAAA,GAAG,EAAE,IAAI,CAAC,iBAAiB,CAAC,GAAG;AAC/B,YAAA,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,KAAK;AACnC,YAAA,IAAI,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI;SAClC,CAAC;QAEF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAC9C,OAAO,CAAC,GAAG,EACX,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,IAAI,CACb,CAAC;QAEF,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC5B;AAED,IAAA,WAAW,CAAC,CAAM,EAAA;AAChB,QAAA,IAAI,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;QAC3B,IAAI,eAAe,GACjB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAC/D,KAAK,CACN,IAAI,CAAC,CAAC;AAET,QAAA,IAAI,CAAC,iBAAiB,CAAC,KAAK,GAAG,eAAe,CAAC;AAE/C,QAAA,MAAM,aAAa,GAAG;AACpB,YAAA,GAAG,EAAE,IAAI,CAAC,iBAAiB,CAAC,GAAG;AAC/B,YAAA,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,KAAK;AACnC,YAAA,IAAI,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI;SAClC,CAAC;QAEF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAC9C,aAAa,CAAC,GAAG,EACjB,aAAa,CAAC,KAAK,EACnB,aAAa,CAAC,IAAI,CACnB,CAAC;;QAEF,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC5B;IAED,qBAAqB,GAAA;QACnB,IAAI,CAAC,gBAAgB,GAAG;AACtB,YAAA,CAAC,EAAE,EAAE;AACL,YAAA,CAAC,EAAE,EAAE;AACL,YAAA,CAAC,EAAE,EAAE;AACL,YAAA,CAAC,EAAE,EAAE;AACL,YAAA,CAAC,EAAE,EAAE;AACL,YAAA,CAAC,EAAE,EAAE;AACL,YAAA,CAAC,EAAE,EAAE;SACN,CAAC;KACH;IACD,WAAW,GAAA;QACT,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AAC5D,SAAA;KACF;AAGD,IAAA,UAAU,CAAC,KAAU,EAAA;AACnB,QAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACxC,QAAA,IAAI,KAAK,EAAE;AACT,YAAA,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;AAC1B,YAAA,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;YAC/B,IAAI,CAAC,WAAW,EAAE,CAAC;AACpB,SAAA;KACF;AACD,IAAA,iBAAiB,MAAK;AACtB,IAAA,gBAAgB,CAAC,EAAO,EAAA;AACtB,QAAA,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;KAC3B;IAED,cAAc,GAAA;AACZ,QAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;AACtB,YAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CACpD,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,EAC1B,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,EAC3B,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAC/B,CAAC;AACH,SAAA;AAAM,aAAA;YACL,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC;AAC/C,YAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YACzE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAC9C,IAAI,CAAC,YAAY,CAAC,IAAI,EACtB,IAAI,CAAC,YAAY,CAAC,KAAK,EACvB,IAAI,CAAC,YAAY,CAAC,GAAG,CACtB,CAAC;AACH,SAAA;KACF;IAED,mBAAmB,GAAA;QACjB,IAAI,CAAC,qBAAqB,EAAE,CAAC;;QAG7B,IAAI,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;AAEpC,QAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;;AAG1D,QAAA,IAAI,CAAC,kBAAkB,CAAC,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC,iBAAiB,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QAEjE,IAAI,oBAAoB,GACtB,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,GAAG,IAAI,CAAC,CAC/D,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAC7B,CAAC;;AAGJ,QAAA,IAAI,CAAC,iBAAiB,CACpB,GAAG,GAAG,CAAC,EACP,IAAI,CAAC,iBAAiB,CAAC,GAAG,GAAG,CAAC,EAC9B,oBAAoB,CACrB,CAAC;;;QAIF,IAAI,CAAC,iBAAiB,EAAE,CAAC;KAC1B;IAED,kBAAkB,CAAC,GAAQ,EAAE,IAAS,EAAA;QACpC,IAAI,IAAI,IAAI,CAAC,EAAE;YACb,IAAI,GAAG,GAAG,CAAC,EAAE;gBACX,GAAG,GAAG,CAAC,CAAC;AACT,aAAA;AACD,YAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC;YACnE,IAAI,CAAC,kBAAkB,CAAC,EAAE,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;AACxC,SAAA;KACF;AAED,IAAA,iBAAiB,CAAC,GAAQ,EAAE,IAAS,EAAE,oBAAyB,EAAA;AAC9D,QAAA,MAAM,UAAU,GAAG;AACjB,YAAA,GAAG,EAAE,IAAI;AACT,YAAA,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,KAAK;AACnC,YAAA,IAAI,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI;SAClC,CAAC;;QAGF,IAAI,IAAI,IAAI,oBAAoB,EAAE;YAChC,IAAI,GAAG,GAAG,CAAC,EAAE;gBACX,GAAG,GAAG,CAAC,CAAC;AACT,aAAA;AACD,YAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;YACnE,IAAI,CAAC,iBAAiB,CAAC,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,oBAAoB,CAAC,CAAC;AAC7D,SAAA;KACF;IAED,iBAAiB,GAAA;;;QAGf,IAAI,QAAQ,GAAG,CAAC,CAAC;AACjB,QAAA,IAAI,KAAU,CAAC;AACf,QAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,KAAI;YACvD,KAAK,GAAG,IAAI,CAAC;AACb,YAAA,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;gBACrB,QAAQ,GAAG,KAAK,CAAC;AAClB,aAAA;AACD,YAAA,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;AAC3B,SAAC,CAAC,CAAC;AAEH,QAAA,IAAI,QAAQ,EAAE;YACZ,KAAK,QAAQ,EAAE,QAAQ,GAAG,CAAC,EAAE,QAAQ,EAAE,EAAE;gBACvC,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;AACtD,gBAAA,IAAI,CAAC,gBAAgB,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,SAAS,CAAC,CAAC;AAC5D,aAAA;AACF,SAAA;KACF;AAED,IAAA,UAAU,CAAC,GAAW,EAAA;QACpB,IAAI,CAAC,YAAY,GAAG,EAAE,GAAG,IAAI,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC;QACvD,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,KAAK,EAAE,CAAC;AACb,QAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;KACzC;IAED,SAAS,GAAA;AACP,QAAA,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC,EAAE;AACrC,YAAA,IAAI,CAAC,iBAAiB,CAAC,KAAK,GAAG,EAAE,CAAC;AAClC,YAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;AAC/B,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;AAChC,SAAA;AAED,QAAA,MAAM,aAAa,GAAG;AACpB,YAAA,GAAG,EAAE,IAAI,CAAC,iBAAiB,CAAC,GAAG;AAC/B,YAAA,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,KAAK;AACnC,YAAA,IAAI,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI;SAClC,CAAC;QACF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAC9C,aAAa,CAAC,GAAG,EACjB,aAAa,CAAC,KAAK,EACnB,aAAa,CAAC,IAAI,CACnB,CAAC;QAEF,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC5B;IAED,SAAS,GAAA;AACP,QAAA,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,IAAI,EAAE,EAAE;AACtC,YAAA,IAAI,CAAC,iBAAiB,CAAC,KAAK,GAAG,CAAC,CAAC;AACjC,YAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;AAC/B,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;AAChC,SAAA;AAED,QAAA,MAAM,OAAO,GAAG;AACd,YAAA,GAAG,EAAE,IAAI,CAAC,iBAAiB,CAAC,GAAG;AAC/B,YAAA,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,KAAK;AACnC,YAAA,IAAI,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI;SAClC,CAAC;QACF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAC9C,OAAO,CAAC,GAAG,EACX,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,IAAI,CACb,CAAC;QACF,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC5B;IAED,UAAU,GAAA;AACR,QAAA,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;AACvB,YAAA,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;AAC5B,SAAA;KACF;IAED,IAAI,GAAA;AACF,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;KACpB;IAED,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;;KAErB;;kHA7TU,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,mBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAArB,qBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,qBAAqB,EATrB,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,SAAA,EAAA,WAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,SAAA,EAAA;AACT,QAAA;AACE,YAAA,OAAO,EAAE,iBAAiB;AAC1B,YAAA,WAAW,EAAE,UAAU,CAAC,MAAM,qBAAqB,CAAC;AACpD,YAAA,KAAK,EAAE,IAAI;AACZ,SAAA;AACF,KAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC/BH,4gMAuJA,EAAA,MAAA,EAAA,CAAA,2zGAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,cAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,uBAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,MAAA,EAAAC,QAAA,EAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FDrHa,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAbjC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,eAAe,EAGd,SAAA,EAAA;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,2BAA2B,CAAC;AACpD,4BAAA,KAAK,EAAE,IAAI;AACZ,yBAAA;qBACF,EACc,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,4gMAAA,EAAA,MAAA,EAAA,CAAA,2zGAAA,CAAA,EAAA,CAAA;gIA0BrC,KAAK,EAAA,CAAA;sBADJ,KAAK;gBAIN,QAAQ,EAAA,CAAA;sBADP,KAAK;gBAGG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAEG,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAyBN,QAAQ,EAAA,CAAA;sBADP,YAAY;uBAAC,gBAAgB,EAAE,CAAC,QAAQ,CAAC,CAAA;;;MEtE/B,sBAAsB,CAAA;;mHAAtB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAtB,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,iBAX/B,QAAQ;AACR,QAAA,qBAAqB,aAGrB,aAAa;AACb,QAAA,WAAW,aAGX,qBAAqB,CAAA,EAAA,CAAA,CAAA;AAGZ,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,EARxB,OAAA,EAAA,CAAA;YACP,aAAa;YACb,WAAW;AACZ,SAAA,CAAA,EAAA,CAAA,CAAA;2FAKU,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAblC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,QAAQ;wBACR,qBAAqB;AACtB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,aAAa;wBACb,WAAW;AACZ,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,qBAAqB;AACtB,qBAAA;AACF,iBAAA,CAAA;;;AClBD;;AAEG;;ACFH;;AAEG;;;;"}
package/package.json CHANGED
@@ -1,40 +1,45 @@
1
- {
2
- "name": "ngx-np-datepicker",
3
- "version": "2.1.2",
4
- "description": "A configurable Nepali Date Picker (Bikram Sambat) built for angular appilcations. Supports latest (Angular 13) version.",
5
- "homepage": "https://wwwbijay.github.io/angular-nepali-datepicker/",
6
- "keywords": ["Angular","Typescript", "Javascript", "Nepali Date Picker", "Bikram Sambat"],
7
- "license": [
8
- {
9
- "type": "MIT",
10
- "url": "https://www.opensource.org/licenses/mit-license.php"
11
- }
12
- ],
13
- "peerDependencies": {
14
- "@angular/common": "^13.1.0",
15
- "@angular/core": "^13.1.0"
16
- },
17
- "dependencies": {
18
- "tslib": "^2.3.0"
19
- },
20
- "module": "fesm2015/ngx-np-datepicker.mjs",
21
- "es2020": "fesm2020/ngx-np-datepicker.mjs",
22
- "esm2020": "esm2020/ngx-np-datepicker.mjs",
23
- "fesm2020": "fesm2020/ngx-np-datepicker.mjs",
24
- "fesm2015": "fesm2015/ngx-np-datepicker.mjs",
25
- "typings": "ngx-np-datepicker.d.ts",
26
- "exports": {
27
- "./package.json": {
28
- "default": "./package.json"
29
- },
30
- ".": {
31
- "types": "./ngx-np-datepicker.d.ts",
32
- "esm2020": "./esm2020/ngx-np-datepicker.mjs",
33
- "es2020": "./fesm2020/ngx-np-datepicker.mjs",
34
- "es2015": "./fesm2015/ngx-np-datepicker.mjs",
35
- "node": "./fesm2015/ngx-np-datepicker.mjs",
36
- "default": "./fesm2020/ngx-np-datepicker.mjs"
37
- }
38
- },
39
- "sideEffects": false
1
+ {
2
+ "name": "ngx-np-datepicker",
3
+ "version": "2.2.1",
4
+ "description": "A simple Nepali Date Picker(Bikram Sambat) library in angular.",
5
+ "homepage": "https://wwwbijay.github.io/angular-nepali-datepicker/",
6
+ "keywords": [
7
+ "Angular",
8
+ "Typescript",
9
+ "Javascript",
10
+ "Nepali Date Picker"
11
+ ],
12
+ "license": [
13
+ {
14
+ "type": "MIT",
15
+ "url": "https://www.opensource.org/licenses/mit-license.php"
16
+ }
17
+ ],
18
+ "peerDependencies": {
19
+ "@angular/common": "^13.1.0",
20
+ "@angular/core": "^13.1.0"
21
+ },
22
+ "dependencies": {
23
+ "tslib": "^2.3.0"
24
+ },
25
+ "module": "fesm2015/ngx-np-datepicker.mjs",
26
+ "es2020": "fesm2020/ngx-np-datepicker.mjs",
27
+ "esm2020": "esm2020/ngx-np-datepicker.mjs",
28
+ "fesm2020": "fesm2020/ngx-np-datepicker.mjs",
29
+ "fesm2015": "fesm2015/ngx-np-datepicker.mjs",
30
+ "typings": "ngx-np-datepicker.d.ts",
31
+ "exports": {
32
+ "./package.json": {
33
+ "default": "./package.json"
34
+ },
35
+ ".": {
36
+ "types": "./ngx-np-datepicker.d.ts",
37
+ "esm2020": "./esm2020/ngx-np-datepicker.mjs",
38
+ "es2020": "./fesm2020/ngx-np-datepicker.mjs",
39
+ "es2015": "./fesm2015/ngx-np-datepicker.mjs",
40
+ "node": "./fesm2015/ngx-np-datepicker.mjs",
41
+ "default": "./fesm2020/ngx-np-datepicker.mjs"
42
+ }
43
+ },
44
+ "sideEffects": false
40
45
  }