@taiga-ui/kit 3.2.0 → 3.4.0

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.
Files changed (34) hide show
  1. package/bundles/taiga-ui-kit-components-input-files.umd.js +58 -35
  2. package/bundles/taiga-ui-kit-components-input-files.umd.js.map +1 -1
  3. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js +2 -2
  4. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
  5. package/bundles/taiga-ui-kit-components-input-tag.umd.js +1 -1
  6. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  7. package/bundles/taiga-ui-kit-components-line-clamp.umd.js +6 -6
  8. package/bundles/taiga-ui-kit-components-line-clamp.umd.js.map +1 -1
  9. package/bundles/taiga-ui-kit-components-radio.umd.js.map +1 -1
  10. package/bundles/taiga-ui-kit-components-tag.umd.js.map +1 -1
  11. package/components/input-files/input-files.component.d.ts +4 -5
  12. package/components/input-files/input-files.module.d.ts +7 -6
  13. package/components/input-files/max-size-rejection-error.pipe.d.ts +13 -0
  14. package/components/radio/radio-options.d.ts +1 -1
  15. package/components/tag/tag-options.d.ts +1 -1
  16. package/esm2015/components/input-files/input-files.component.js +20 -24
  17. package/esm2015/components/input-files/input-files.module.js +4 -3
  18. package/esm2015/components/input-files/max-size-rejection-error.pipe.js +28 -0
  19. package/esm2015/components/input-phone-international/tokens/countries-masks.js +3 -3
  20. package/esm2015/components/input-tag/input-tag.component.js +2 -2
  21. package/esm2015/components/line-clamp/line-clamp-box.component.js +2 -3
  22. package/esm2015/components/radio/radio-options.js +1 -1
  23. package/esm2015/components/tag/tag-options.js +1 -1
  24. package/fesm2015/taiga-ui-kit-components-input-files.js +45 -27
  25. package/fesm2015/taiga-ui-kit-components-input-files.js.map +1 -1
  26. package/fesm2015/taiga-ui-kit-components-input-phone-international.js +2 -2
  27. package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  28. package/fesm2015/taiga-ui-kit-components-input-tag.js +1 -1
  29. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  30. package/fesm2015/taiga-ui-kit-components-line-clamp.js +1 -2
  31. package/fesm2015/taiga-ui-kit-components-line-clamp.js.map +1 -1
  32. package/fesm2015/taiga-ui-kit-components-radio.js.map +1 -1
  33. package/fesm2015/taiga-ui-kit-components-tag.js.map +1 -1
  34. package/package.json +4 -4
@@ -5,11 +5,12 @@ import { TuiButtonModule, TuiGroupModule, TuiLinkModule, TuiLoaderModule, TuiSvg
5
5
  import { TuiFileComponent, TuiFilesComponent, TuiFilesModule, } from '@taiga-ui/kit/components/files';
6
6
  import { PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
7
7
  import { TuiInputFilesComponent } from './input-files.component';
8
+ import { TuiMaxSizeRejectionErrorPipe } from './max-size-rejection-error.pipe';
8
9
  import * as i0 from "@angular/core";
9
10
  export class TuiInputFilesModule {
10
11
  }
11
12
  TuiInputFilesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiInputFilesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
- TuiInputFilesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiInputFilesModule, declarations: [TuiInputFilesComponent], imports: [CommonModule,
13
+ TuiInputFilesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiInputFilesModule, declarations: [TuiInputFilesComponent, TuiMaxSizeRejectionErrorPipe], imports: [CommonModule,
13
14
  PolymorpheusModule,
14
15
  TuiLetModule,
15
16
  TuiFocusedModule,
@@ -67,7 +68,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
67
68
  TuiGroupModule,
68
69
  TuiFilesModule,
69
70
  ],
70
- declarations: [TuiInputFilesComponent],
71
+ declarations: [TuiInputFilesComponent, TuiMaxSizeRejectionErrorPipe],
71
72
  exports: [
72
73
  TuiInputFilesComponent,
73
74
  TuiFilesComponent,
@@ -76,4 +77,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
76
77
  ],
77
78
  }]
78
79
  }] });
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZmlsZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvaW5wdXQtZmlsZXMvaW5wdXQtZmlsZXMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFDSCxrQkFBa0IsRUFDbEIsa0JBQWtCLEVBQ2xCLGdCQUFnQixFQUNoQixxQkFBcUIsRUFDckIsZ0JBQWdCLEVBQ2hCLGdCQUFnQixFQUNoQixZQUFZLEVBQ1osZ0JBQWdCLEdBQ25CLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxlQUFlLEVBQ2YsY0FBYyxFQUNkLGFBQWEsRUFDYixlQUFlLEVBQ2YsWUFBWSxFQUNaLGdCQUFnQixHQUNuQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFDSCxnQkFBZ0IsRUFDaEIsaUJBQWlCLEVBQ2pCLGNBQWMsR0FDakIsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUU1RCxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQzs7QUE2Qi9ELE1BQU0sT0FBTyxtQkFBbUI7O2lIQUFuQixtQkFBbUI7a0hBQW5CLG1CQUFtQixpQkFSYixzQkFBc0IsYUFqQmpDLFlBQVk7UUFDWixrQkFBa0I7UUFDbEIsWUFBWTtRQUNaLGdCQUFnQjtRQUNoQixxQkFBcUI7UUFDckIsZ0JBQWdCO1FBQ2hCLGdCQUFnQjtRQUNoQixrQkFBa0I7UUFDbEIsa0JBQWtCO1FBQ2xCLGdCQUFnQjtRQUNoQixZQUFZO1FBQ1osYUFBYTtRQUNiLGVBQWU7UUFDZixlQUFlO1FBQ2YsY0FBYztRQUNkLGNBQWMsYUFJZCxzQkFBc0I7UUFDdEIsaUJBQWlCO1FBQ2pCLGdCQUFnQjtRQUNoQixnQkFBZ0I7a0hBR1gsbUJBQW1CLFlBMUJuQjtZQUNMLFlBQVk7WUFDWixrQkFBa0I7WUFDbEIsWUFBWTtZQUNaLGdCQUFnQjtZQUNoQixxQkFBcUI7WUFDckIsZ0JBQWdCO1lBQ2hCLGdCQUFnQjtZQUNoQixrQkFBa0I7WUFDbEIsa0JBQWtCO1lBQ2xCLGdCQUFnQjtZQUNoQixZQUFZO1lBQ1osYUFBYTtZQUNiLGVBQWU7WUFDZixlQUFlO1lBQ2YsY0FBYztZQUNkLGNBQWM7U0FDakI7NEZBU1EsbUJBQW1CO2tCQTNCL0IsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixrQkFBa0I7d0JBQ2xCLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixxQkFBcUI7d0JBQ3JCLGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3dCQUNoQixrQkFBa0I7d0JBQ2xCLGtCQUFrQjt3QkFDbEIsZ0JBQWdCO3dCQUNoQixZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixlQUFlO3dCQUNmLGNBQWM7d0JBQ2QsY0FBYztxQkFDakI7b0JBQ0QsWUFBWSxFQUFFLENBQUMsc0JBQXNCLENBQUM7b0JBQ3RDLE9BQU8sRUFBRTt3QkFDTCxzQkFBc0I7d0JBQ3RCLGlCQUFpQjt3QkFDakIsZ0JBQWdCO3dCQUNoQixnQkFBZ0I7cUJBQ25CO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgVHVpRHJvcHBhYmxlTW9kdWxlLFxuICAgIFR1aUZvY3VzYWJsZU1vZHVsZSxcbiAgICBUdWlGb2N1c2VkTW9kdWxlLFxuICAgIFR1aUZvY3VzVmlzaWJsZU1vZHVsZSxcbiAgICBUdWlIb3ZlcmVkTW9kdWxlLFxuICAgIFR1aUl0ZW1EaXJlY3RpdmUsXG4gICAgVHVpTGV0TW9kdWxlLFxuICAgIFR1aVByZXNzZWRNb2R1bGUsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtcbiAgICBUdWlCdXR0b25Nb2R1bGUsXG4gICAgVHVpR3JvdXBNb2R1bGUsXG4gICAgVHVpTGlua01vZHVsZSxcbiAgICBUdWlMb2FkZXJNb2R1bGUsXG4gICAgVHVpU3ZnTW9kdWxlLFxuICAgIFR1aVdyYXBwZXJNb2R1bGUsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7XG4gICAgVHVpRmlsZUNvbXBvbmVudCxcbiAgICBUdWlGaWxlc0NvbXBvbmVudCxcbiAgICBUdWlGaWxlc01vZHVsZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2ZpbGVzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzTW9kdWxlfSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuXG5pbXBvcnQge1R1aUlucHV0RmlsZXNDb21wb25lbnR9IGZyb20gJy4vaW5wdXQtZmlsZXMuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgUG9seW1vcnBoZXVzTW9kdWxlLFxuICAgICAgICBUdWlMZXRNb2R1bGUsXG4gICAgICAgIFR1aUZvY3VzZWRNb2R1bGUsXG4gICAgICAgIFR1aUZvY3VzVmlzaWJsZU1vZHVsZSxcbiAgICAgICAgVHVpUHJlc3NlZE1vZHVsZSxcbiAgICAgICAgVHVpSG92ZXJlZE1vZHVsZSxcbiAgICAgICAgVHVpRm9jdXNhYmxlTW9kdWxlLFxuICAgICAgICBUdWlEcm9wcGFibGVNb2R1bGUsXG4gICAgICAgIFR1aVdyYXBwZXJNb2R1bGUsXG4gICAgICAgIFR1aVN2Z01vZHVsZSxcbiAgICAgICAgVHVpTGlua01vZHVsZSxcbiAgICAgICAgVHVpTG9hZGVyTW9kdWxlLFxuICAgICAgICBUdWlCdXR0b25Nb2R1bGUsXG4gICAgICAgIFR1aUdyb3VwTW9kdWxlLFxuICAgICAgICBUdWlGaWxlc01vZHVsZSxcbiAgICBdLFxuICAgIGRlY2xhcmF0aW9uczogW1R1aUlucHV0RmlsZXNDb21wb25lbnRdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgVHVpSW5wdXRGaWxlc0NvbXBvbmVudCxcbiAgICAgICAgVHVpRmlsZXNDb21wb25lbnQsXG4gICAgICAgIFR1aUZpbGVDb21wb25lbnQsXG4gICAgICAgIFR1aUl0ZW1EaXJlY3RpdmUsXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSW5wdXRGaWxlc01vZHVsZSB7fVxuIl19
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZmlsZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvaW5wdXQtZmlsZXMvaW5wdXQtZmlsZXMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFDSCxrQkFBa0IsRUFDbEIsa0JBQWtCLEVBQ2xCLGdCQUFnQixFQUNoQixxQkFBcUIsRUFDckIsZ0JBQWdCLEVBQ2hCLGdCQUFnQixFQUNoQixZQUFZLEVBQ1osZ0JBQWdCLEdBQ25CLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxlQUFlLEVBQ2YsY0FBYyxFQUNkLGFBQWEsRUFDYixlQUFlLEVBQ2YsWUFBWSxFQUNaLGdCQUFnQixHQUNuQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFDSCxnQkFBZ0IsRUFDaEIsaUJBQWlCLEVBQ2pCLGNBQWMsR0FDakIsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUU1RCxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUMvRCxPQUFPLEVBQUMsNEJBQTRCLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQzs7QUE2QjdFLE1BQU0sT0FBTyxtQkFBbUI7O2lIQUFuQixtQkFBbUI7a0hBQW5CLG1CQUFtQixpQkFSYixzQkFBc0IsRUFBRSw0QkFBNEIsYUFqQi9ELFlBQVk7UUFDWixrQkFBa0I7UUFDbEIsWUFBWTtRQUNaLGdCQUFnQjtRQUNoQixxQkFBcUI7UUFDckIsZ0JBQWdCO1FBQ2hCLGdCQUFnQjtRQUNoQixrQkFBa0I7UUFDbEIsa0JBQWtCO1FBQ2xCLGdCQUFnQjtRQUNoQixZQUFZO1FBQ1osYUFBYTtRQUNiLGVBQWU7UUFDZixlQUFlO1FBQ2YsY0FBYztRQUNkLGNBQWMsYUFJZCxzQkFBc0I7UUFDdEIsaUJBQWlCO1FBQ2pCLGdCQUFnQjtRQUNoQixnQkFBZ0I7a0hBR1gsbUJBQW1CLFlBMUJuQjtZQUNMLFlBQVk7WUFDWixrQkFBa0I7WUFDbEIsWUFBWTtZQUNaLGdCQUFnQjtZQUNoQixxQkFBcUI7WUFDckIsZ0JBQWdCO1lBQ2hCLGdCQUFnQjtZQUNoQixrQkFBa0I7WUFDbEIsa0JBQWtCO1lBQ2xCLGdCQUFnQjtZQUNoQixZQUFZO1lBQ1osYUFBYTtZQUNiLGVBQWU7WUFDZixlQUFlO1lBQ2YsY0FBYztZQUNkLGNBQWM7U0FDakI7NEZBU1EsbUJBQW1CO2tCQTNCL0IsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixrQkFBa0I7d0JBQ2xCLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixxQkFBcUI7d0JBQ3JCLGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3dCQUNoQixrQkFBa0I7d0JBQ2xCLGtCQUFrQjt3QkFDbEIsZ0JBQWdCO3dCQUNoQixZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixlQUFlO3dCQUNmLGNBQWM7d0JBQ2QsY0FBYztxQkFDakI7b0JBQ0QsWUFBWSxFQUFFLENBQUMsc0JBQXNCLEVBQUUsNEJBQTRCLENBQUM7b0JBQ3BFLE9BQU8sRUFBRTt3QkFDTCxzQkFBc0I7d0JBQ3RCLGlCQUFpQjt3QkFDakIsZ0JBQWdCO3dCQUNoQixnQkFBZ0I7cUJBQ25CO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgVHVpRHJvcHBhYmxlTW9kdWxlLFxuICAgIFR1aUZvY3VzYWJsZU1vZHVsZSxcbiAgICBUdWlGb2N1c2VkTW9kdWxlLFxuICAgIFR1aUZvY3VzVmlzaWJsZU1vZHVsZSxcbiAgICBUdWlIb3ZlcmVkTW9kdWxlLFxuICAgIFR1aUl0ZW1EaXJlY3RpdmUsXG4gICAgVHVpTGV0TW9kdWxlLFxuICAgIFR1aVByZXNzZWRNb2R1bGUsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtcbiAgICBUdWlCdXR0b25Nb2R1bGUsXG4gICAgVHVpR3JvdXBNb2R1bGUsXG4gICAgVHVpTGlua01vZHVsZSxcbiAgICBUdWlMb2FkZXJNb2R1bGUsXG4gICAgVHVpU3ZnTW9kdWxlLFxuICAgIFR1aVdyYXBwZXJNb2R1bGUsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7XG4gICAgVHVpRmlsZUNvbXBvbmVudCxcbiAgICBUdWlGaWxlc0NvbXBvbmVudCxcbiAgICBUdWlGaWxlc01vZHVsZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2ZpbGVzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzTW9kdWxlfSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuXG5pbXBvcnQge1R1aUlucHV0RmlsZXNDb21wb25lbnR9IGZyb20gJy4vaW5wdXQtZmlsZXMuY29tcG9uZW50JztcbmltcG9ydCB7VHVpTWF4U2l6ZVJlamVjdGlvbkVycm9yUGlwZX0gZnJvbSAnLi9tYXgtc2l6ZS1yZWplY3Rpb24tZXJyb3IucGlwZSc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIFBvbHltb3JwaGV1c01vZHVsZSxcbiAgICAgICAgVHVpTGV0TW9kdWxlLFxuICAgICAgICBUdWlGb2N1c2VkTW9kdWxlLFxuICAgICAgICBUdWlGb2N1c1Zpc2libGVNb2R1bGUsXG4gICAgICAgIFR1aVByZXNzZWRNb2R1bGUsXG4gICAgICAgIFR1aUhvdmVyZWRNb2R1bGUsXG4gICAgICAgIFR1aUZvY3VzYWJsZU1vZHVsZSxcbiAgICAgICAgVHVpRHJvcHBhYmxlTW9kdWxlLFxuICAgICAgICBUdWlXcmFwcGVyTW9kdWxlLFxuICAgICAgICBUdWlTdmdNb2R1bGUsXG4gICAgICAgIFR1aUxpbmtNb2R1bGUsXG4gICAgICAgIFR1aUxvYWRlck1vZHVsZSxcbiAgICAgICAgVHVpQnV0dG9uTW9kdWxlLFxuICAgICAgICBUdWlHcm91cE1vZHVsZSxcbiAgICAgICAgVHVpRmlsZXNNb2R1bGUsXG4gICAgXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtUdWlJbnB1dEZpbGVzQ29tcG9uZW50LCBUdWlNYXhTaXplUmVqZWN0aW9uRXJyb3JQaXBlXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIFR1aUlucHV0RmlsZXNDb21wb25lbnQsXG4gICAgICAgIFR1aUZpbGVzQ29tcG9uZW50LFxuICAgICAgICBUdWlGaWxlQ29tcG9uZW50LFxuICAgICAgICBUdWlJdGVtRGlyZWN0aXZlLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUlucHV0RmlsZXNNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,28 @@
1
+ import { Inject, Pipe } from '@angular/core';
2
+ import { TUI_DIGITAL_INFORMATION_UNITS, TUI_INPUT_FILE_TEXTS } from '@taiga-ui/kit/tokens';
3
+ import { tuiFormatSize } from '@taiga-ui/kit/utils';
4
+ import { combineLatest } from 'rxjs';
5
+ import { map } from 'rxjs/operators';
6
+ import * as i0 from "@angular/core";
7
+ export class TuiMaxSizeRejectionErrorPipe {
8
+ constructor(inputFileTexts$, units$) {
9
+ this.inputFileTexts$ = inputFileTexts$;
10
+ this.units$ = units$;
11
+ }
12
+ transform(maxFileSize) {
13
+ return combineLatest([this.inputFileTexts$, this.units$]).pipe(map(([{ maxSizeRejectionReason }, units]) => maxSizeRejectionReason + tuiFormatSize(units, maxFileSize)));
14
+ }
15
+ }
16
+ TuiMaxSizeRejectionErrorPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiMaxSizeRejectionErrorPipe, deps: [{ token: TUI_INPUT_FILE_TEXTS }, { token: TUI_DIGITAL_INFORMATION_UNITS }], target: i0.ɵɵFactoryTarget.Pipe });
17
+ TuiMaxSizeRejectionErrorPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiMaxSizeRejectionErrorPipe, name: "tuiMaxSizeRejectionError" });
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiMaxSizeRejectionErrorPipe, decorators: [{
19
+ type: Pipe,
20
+ args: [{ name: `tuiMaxSizeRejectionError` }]
21
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
22
+ type: Inject,
23
+ args: [TUI_INPUT_FILE_TEXTS]
24
+ }] }, { type: undefined, decorators: [{
25
+ type: Inject,
26
+ args: [TUI_DIGITAL_INFORMATION_UNITS]
27
+ }] }]; } });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF4LXNpemUtcmVqZWN0aW9uLWVycm9yLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy9pbnB1dC1maWxlcy9tYXgtc2l6ZS1yZWplY3Rpb24tZXJyb3IucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFFMUQsT0FBTyxFQUFDLDZCQUE2QixFQUFFLG9CQUFvQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDekYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxhQUFhLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFDL0MsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDOztBQUduQyxNQUFNLE9BQU8sNEJBQTRCO0lBQ3JDLFlBRXFCLGVBRWhCLEVBRWdCLE1BRWhCO1FBTmdCLG9CQUFlLEdBQWYsZUFBZSxDQUUvQjtRQUVnQixXQUFNLEdBQU4sTUFBTSxDQUV0QjtJQUNGLENBQUM7SUFFSixTQUFTLENBQUMsV0FBbUI7UUFDekIsT0FBTyxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDMUQsR0FBRyxDQUNDLENBQUMsQ0FBQyxFQUFDLHNCQUFzQixFQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUNsQyxzQkFBc0IsR0FBRyxhQUFhLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUNqRSxDQUNKLENBQUM7SUFDTixDQUFDOzswSEFuQlEsNEJBQTRCLGtCQUV6QixvQkFBb0IsYUFJcEIsNkJBQTZCO3dIQU5oQyw0QkFBNEI7NEZBQTVCLDRCQUE0QjtrQkFEeEMsSUFBSTttQkFBQyxFQUFDLElBQUksRUFBRSwwQkFBMEIsRUFBQzs7MEJBRy9CLE1BQU07MkJBQUMsb0JBQW9COzswQkFJM0IsTUFBTTsyQkFBQyw2QkFBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdCwgUGlwZSwgUGlwZVRyYW5zZm9ybX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aUluamVjdGlvblRva2VuVHlwZX0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1RVSV9ESUdJVEFMX0lORk9STUFUSU9OX1VOSVRTLCBUVUlfSU5QVVRfRklMRV9URVhUU30gZnJvbSAnQHRhaWdhLXVpL2tpdC90b2tlbnMnO1xuaW1wb3J0IHt0dWlGb3JtYXRTaXplfSBmcm9tICdAdGFpZ2EtdWkva2l0L3V0aWxzJztcbmltcG9ydCB7Y29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5AUGlwZSh7bmFtZTogYHR1aU1heFNpemVSZWplY3Rpb25FcnJvcmB9KVxuZXhwb3J0IGNsYXNzIFR1aU1heFNpemVSZWplY3Rpb25FcnJvclBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUVUlfSU5QVVRfRklMRV9URVhUUylcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBpbnB1dEZpbGVUZXh0cyQ6IFR1aUluamVjdGlvblRva2VuVHlwZTxcbiAgICAgICAgICAgIHR5cGVvZiBUVUlfSU5QVVRfRklMRV9URVhUU1xuICAgICAgICA+LFxuICAgICAgICBASW5qZWN0KFRVSV9ESUdJVEFMX0lORk9STUFUSU9OX1VOSVRTKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHVuaXRzJDogVHVpSW5qZWN0aW9uVG9rZW5UeXBlPFxuICAgICAgICAgICAgdHlwZW9mIFRVSV9ESUdJVEFMX0lORk9STUFUSU9OX1VOSVRTXG4gICAgICAgID4sXG4gICAgKSB7fVxuXG4gICAgdHJhbnNmb3JtKG1heEZpbGVTaXplOiBudW1iZXIpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gY29tYmluZUxhdGVzdChbdGhpcy5pbnB1dEZpbGVUZXh0cyQsIHRoaXMudW5pdHMkXSkucGlwZShcbiAgICAgICAgICAgIG1hcChcbiAgICAgICAgICAgICAgICAoW3ttYXhTaXplUmVqZWN0aW9uUmVhc29ufSwgdW5pdHNdKSA9PlxuICAgICAgICAgICAgICAgICAgICBtYXhTaXplUmVqZWN0aW9uUmVhc29uICsgdHVpRm9ybWF0U2l6ZSh1bml0cywgbWF4RmlsZVNpemUpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
@@ -15,7 +15,7 @@ export const TUI_COUNTRIES_MASKS = new InjectionToken(`[TUI_COUNTRIES_MASKS]: Co
15
15
  [TuiCountryIsoCode.AU]: `+61#-####-####`,
16
16
  [TuiCountryIsoCode.AW]: `+297###-####`,
17
17
  [TuiCountryIsoCode.AZ]: `+994##-###-##-##`,
18
- [TuiCountryIsoCode.BA]: `+387 ###-####-#`,
18
+ [TuiCountryIsoCode.BA]: `+387 ###-####-##`,
19
19
  [TuiCountryIsoCode.BB]: `+1(246) ###-####`,
20
20
  [TuiCountryIsoCode.BD]: `+880##-###-###`,
21
21
  [TuiCountryIsoCode.BE]: `+32(###) ###-###`,
@@ -83,7 +83,7 @@ export const TUI_COUNTRIES_MASKS = new InjectionToken(`[TUI_COUNTRIES_MASKS]: Co
83
83
  [TuiCountryIsoCode.GY]: `+592###-####`,
84
84
  [TuiCountryIsoCode.HK]: `+852####-####`,
85
85
  [TuiCountryIsoCode.HN]: `+504####-####`,
86
- [TuiCountryIsoCode.HR]: `+385##-###-###`,
86
+ [TuiCountryIsoCode.HR]: `+385##-###-####`,
87
87
  [TuiCountryIsoCode.HT]: `+509##-##-####`,
88
88
  [TuiCountryIsoCode.HU]: `+36(###) ###-###`,
89
89
  [TuiCountryIsoCode.ID]: `+62(###) ###-##-###`,
@@ -211,4 +211,4 @@ export const TUI_COUNTRIES_MASKS = new InjectionToken(`[TUI_COUNTRIES_MASKS]: Co
211
211
  [TuiCountryIsoCode.ZW]: `+263#-######`,
212
212
  }),
213
213
  });
214
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY291bnRyaWVzLW1hc2tzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvaW5wdXQtcGhvbmUtaW50ZXJuYXRpb25hbC90b2tlbnMvY291bnRyaWVzLW1hc2tzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDN0MsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFakQsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQzVCLElBQUksY0FBYyxDQUNkLHdDQUF3QyxFQUN4QztJQUNJLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQ1osQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxhQUFhO1FBQ3JDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsa0JBQWtCO1FBQzFDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsa0JBQWtCO1FBQzFDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsa0JBQWtCO1FBQzFDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsbUJBQW1CO1FBQzNDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsbUJBQW1CO1FBQzNDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsbUJBQW1CO1FBQzNDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsbUJBQW1CO1FBQzNDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsY0FBYztRQUN0QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGtCQUFrQjtRQUMxQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQjtRQUN6QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGtCQUFrQjtRQUMxQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGdCQUFnQjtRQUN4QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGtCQUFrQjtRQUMxQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGdCQUFnQjtRQUN4QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG1CQUFtQjtRQUMzQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGVBQWU7UUFDdkMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxjQUFjO1FBQ3RDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZUFBZTtRQUN2QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG1CQUFtQjtRQUMzQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGtCQUFrQjtRQUMxQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGVBQWU7UUFDdkMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxvQkFBb0I7UUFDNUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxjQUFjO1FBQ3RDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsa0JBQWtCO1FBQzFDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsbUJBQW1CO1FBQzNDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZUFBZTtRQUN2QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG9CQUFvQjtRQUM1QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG1CQUFtQjtRQUMzQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGVBQWU7UUFDdkMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxlQUFlO1FBQ3ZDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsbUJBQW1CO1FBQzNDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUscUJBQXFCO1FBQzdDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsa0JBQWtCO1FBQzFDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsa0JBQWtCO1FBQzFDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZUFBZTtRQUN2QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG1CQUFtQjtRQUMzQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGVBQWU7UUFDdkMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxxQkFBcUI7UUFDN0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxjQUFjO1FBQ3RDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsV0FBVztRQUNuQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGNBQWM7UUFDdEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxvQkFBb0I7UUFDNUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxlQUFlO1FBQ3ZDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsY0FBYztRQUN0QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQjtRQUN6QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGdCQUFnQjtRQUN4QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQjtRQUN6QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG1CQUFtQjtRQUMzQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGdCQUFnQjtRQUN4QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGNBQWM7UUFDdEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxjQUFjO1FBQ3RDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZUFBZTtRQUN2QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGVBQWU7UUFDdkMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxxQkFBcUI7UUFDN0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxvQkFBb0I7UUFDNUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxjQUFjO1FBQ3RDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsbUJBQW1CO1FBQzNDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsa0JBQWtCO1FBQzFDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsa0JBQWtCO1FBQzFDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsbUJBQW1CO1FBQzNDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsY0FBYztRQUN0QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGtCQUFrQjtRQUMxQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLHdCQUF3QjtRQUNoRCxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGdCQUFnQjtRQUN4QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGVBQWU7UUFDdkMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxvQkFBb0I7UUFDNUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxlQUFlO1FBQ3ZDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZUFBZTtRQUN2QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGdCQUFnQjtRQUN4QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGVBQWU7UUFDdkMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxlQUFlO1FBQ3ZDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsY0FBYztRQUN0QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGNBQWM7UUFDdEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxvQkFBb0I7UUFDNUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxlQUFlO1FBQ3ZDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsbUJBQW1CO1FBQzNDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsY0FBYztRQUN0QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGtCQUFrQjtRQUMxQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGNBQWM7UUFFdEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxjQUFjO1FBQ3RDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsbUJBQW1CO1FBQzNDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZUFBZTtRQUN2QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGdCQUFnQjtRQUN4QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQjtRQUN6QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQjtRQUN6QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG1CQUFtQjtRQUMzQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQjtRQUN6QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGNBQWM7UUFDdEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxlQUFlO1FBQ3ZDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsY0FBYztRQUN0QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLFVBQVU7UUFDbEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxlQUFlO1FBQ3ZDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsY0FBYztRQUN0QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGNBQWM7UUFDdEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxlQUFlO1FBQ3ZDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsV0FBVztRQUNuQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG1CQUFtQjtRQUMzQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGtCQUFrQjtRQUMxQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQjtRQUN6QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQjtRQUN6QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG9CQUFvQjtRQUM1QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG1CQUFtQjtRQUMzQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGtCQUFrQjtRQUMxQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQjtRQUN6QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQjtRQUN6QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGtCQUFrQjtRQUMxQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG1CQUFtQjtRQUMzQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQjtRQUN6QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG1CQUFtQjtRQUMzQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGNBQWM7UUFDdEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxhQUFhO1FBQ3JDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsY0FBYztLQUN6QyxDQUFDO0NBQ0wsQ0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3Rpb25Ub2tlbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aUNvdW50cnlJc29Db2RlfSBmcm9tICdAdGFpZ2EtdWkvaTE4bic7XG5cbmV4cG9ydCBjb25zdCBUVUlfQ09VTlRSSUVTX01BU0tTOiBJbmplY3Rpb25Ub2tlbjxSZWNvcmQ8VHVpQ291bnRyeUlzb0NvZGUsIHN0cmluZz4+ID1cbiAgICBuZXcgSW5qZWN0aW9uVG9rZW48UmVjb3JkPFR1aUNvdW50cnlJc29Db2RlLCBzdHJpbmc+PihcbiAgICAgICAgYFtUVUlfQ09VTlRSSUVTX01BU0tTXTogQ291bnRyaWVzIG1hc2tzYCxcbiAgICAgICAge1xuICAgICAgICAgICAgZmFjdG9yeTogKCkgPT4gKHtcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQURdOiBgKzM3NiMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5BRV06IGArOTcxLSMjLSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQUZdOiBgKzkzIyMtIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5BR106IGArMSgyNjgpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQUldOiBgKzEoMjY0KSAjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkFMXTogYCszNTUoIyMjKSAjIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQU1dOiBgKzM3NCMjLSMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5BT106IGArMjQ0KCMjIykgIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkFSXTogYCs1NCgjIyMpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQVRdOiBgKzQzKCMjIykgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5BVV06IGArNjEjLSMjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkFXXTogYCsyOTcjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkFaXTogYCs5OTQjIy0jIyMtIyMtIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CQV06IGArMzg3ICMjIy0jIyMjLSNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CQl06IGArMSgyNDYpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQkRdOiBgKzg4MCMjLSMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CRV06IGArMzIoIyMjKSAjIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQkZdOiBgKzIyNiMjLSMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CR106IGArMzU5KCMjIykgIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkJIXTogYCs5NzMjIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CSV06IGArMjU3IyMtIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkJKXTogYCsyMjkjIy0jIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQk1dOiBgKzEoNDQxKSAjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkJOXTogYCs2NzMjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkJPXTogYCs1OTEjLSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQlFdOiBgKzU5OS0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkJSXTogYCs1NSgjIykgIyMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQlNdOiBgKzEoMjQyKSAjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkJUXTogYCs5NzUjLSMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CV106IGArMjY3IyMtIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkJZXTogYCszNzUoIyMpICMjIy0jIy0jI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkJaXTogYCs1MDEjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkNBXTogYCsxKCMjIykgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5DRF06IGArMjQzKCMjIykgIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkNGXTogYCsyMzYtIyMtIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkNHXTogYCsyNDIjIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkNIXTogYCs0MSMjLSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQ0ldOiBgKzIyNSMjLSMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5DTF06IGArNTYjLSMjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkNNXTogYCsyMzcjIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5DTl06IGArODYoIyMjKSAjIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5DT106IGArNTcoIyMjKSAjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkNSXTogYCs1MDYjIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5DVV06IGArNTMjLSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQ1ZdOiBgKzIzOCgjIyMpICMjLSMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQ1ddOiBgKzU5OTktIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5DWV06IGArMzU3IyMtIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkNaXTogYCs0MjAoIyMjKSAjIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuREVdOiBgKzQ5KCMjIykgIyMjLSMjIy0jI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkRKXTogYCsyNTMjIy0jIy0jIy0jI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkRLXTogYCs0NSMjLSMjLSMjLSMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuRE1dOiBgKzEoNzY3KSAjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkRPXTogYCsxKCMjIykgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5EWl06IGArMjEzIyMtIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5FQ106IGArNTkzIyMtIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5FRV06IGArMzcyIyMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuRUddOiBgKzIwKCMjIykgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5FUl06IGArMjkxIy0jIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuRVNdOiBgKzM0KCMjIykgIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkVUXTogYCsyNTEjIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkZJXTogYCszNTgoIyMjKSAjIyMtIyMtIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5GSl06IGArNjc5IyMtIyMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5GS106IGArNTAwIyMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5GTV06IGArNjkxIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5GUl06IGArMzMgIyMgIyMgIyMgIyMgIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HQV06IGArMjQxIy0jIy0jIy0jI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkdCXTogYCs0NCMjLSMjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkdEXTogYCsxKDQ3MykgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HRV06IGArOTk1KCMjIykgIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkdIXTogYCsyMzMoIyMjKSAjIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuR0ldOiBgKzM1MCMjIy0jIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkdMXTogYCsyOTkjIy0jIy0jI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkdNXTogYCsyMjAoIyMjKSAjIy0jI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkdOXTogYCsyMjQjIy0jIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuR1FdOiBgKzI0MCMjLSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuR1JdOiBgKzMwKCMjIykgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HVF06IGArNTAyIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkdXXTogYCsyNDUjLSMjIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkdZXTogYCs1OTIjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkhLXTogYCs4NTIjIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5ITl06IGArNTA0IyMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuSFJdOiBgKzM4NSMjLSMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5IVF06IGArNTA5IyMtIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkhVXTogYCszNigjIyMpICMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5JRF06IGArNjIoIyMjKSAjIyMtIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuSUVdOiBgKzM1MygjIyMpICMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5JTF06IGArOTcyIyMtIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5JTl06IGArOTEoIyMjIykgIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLklRXTogYCs5NjQoIyMjKSAjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLklSXTogYCs5OCgjIyMpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuSVNdOiBgKzM1NCMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuSVRdOiBgKzM5KCMjIykgIyMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5KTV06IGArMSg4NzYpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuSk9dOiBgKzk2MiMtIyMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuSlBdOiBgKzgxLSMjLSMjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLktFXTogYCsyNTQjIyMtIyMjIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuS0ddOiBgKzk5NigjIyMpICMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5LSF06IGArODU1IyMtIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLktNXTogYCsyNjkjIy0jIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLktOXTogYCsxKDg2OSkgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5LUF06IGArODUwIyMjIy0jIyMjIyMjIyMjIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuS1JdOiBgKzgyIyMtIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5LV106IGArOTY1IyMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuS1ldOiBgKzEoMzQ1KSAjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLktaXTogYCs3KCMjIykgIyMjLSMjLSMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTEFdOiBgKzg1NiMjLSMjLSMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5MQl06IGArOTYxIyMtIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkxDXTogYCsxKDc1OCkgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5MSV06IGArNDIzKCMjIykgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5MS106IGArOTQjIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkxSXTogYCsyMzEjIy0jIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTFNdOiBgKzI2NiMtIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5MVF06IGArMzcwKCMjIykgIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTFVdOiBgKzM1MigjIyMpICMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5MVl06IGArMzcxIyMtIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkxZXTogYCsyMTgjIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLk1BXTogYCsyMTIjIy0jIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLk1DXTogYCszNzcjIyMtIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLk1EXTogYCszNzMjIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5NRV06IGArMzgyIyMtIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLk1HXTogYCsyNjEjIy0jIy0jIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLk1LXTogYCszODkjIy0jIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTUxdOiBgKzIyMyMjLSMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5NTV06IGArOTUjIy0jIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTU5dOiBgKzk3NiMjLSMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5NT106IGArODUzIyMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTVJdOiBgKzIyMiMjLSMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5NU106IGArMSg2NjQpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTVRdOiBgKzM1NiMjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLk1VXTogYCsyMzAjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLk1WXTogYCs5NjAjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLk1XXTogYCsyNjUjLSMjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLk1YXTogYCs1MigjIyMpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTVldOiBgKzYwKCMjIykgIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLk1aXTogYCsyNTgjIy0jIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTkFdOiBgKzI2NCMjLSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTkVdOiBgKzIyNyMjLSMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5OR106IGArMjM0KCMjIykgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5OSV06IGArNTA1IyMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTkxdOiBgKzMxIyMtIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5OT106IGArNDcoIyMjKSAjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5OUF06IGArOTc3IyMtIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLk5aXTogYCs2NCgjIyMpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuT01dOiBgKzk2OCMjLSMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5QQV06IGArNTA3IyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5QRV06IGArNTEoIyMjKSAjIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuUEZdOiBgKzY4OSMjLSMjLSMjYCxcblxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5QR106IGArNjc1KCMjIykgIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuUEhdOiBgKzYzKCMjIykgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5QS106IGArOTIoIyMjKSAjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlBMXTogYCs0OCgjIyMpICMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5QVF06IGArMzUxIyMtIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5QV106IGArNjgwIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5QWV06IGArNTk1KCMjIykgIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlFBXTogYCs5NzQjIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5ST106IGArNDAjIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlJTXTogYCszODEjIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlJVXTogYCs3IyMjICMjIy0jIy0jI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlJXXTogYCsyNTAoIyMjKSAjIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuU0FdOiBgKzk2NiMtIyMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuU0JdOiBgKzY3NyMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuU0NdOiBgKzI0OCMtIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlNEXTogYCsyNDkjIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlNFXTogYCs0NiMjLSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuU0ddOiBgKzY1IyMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuU0hdOiBgKzI5MCMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TSV06IGArMzg2IyMtIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlNLXTogYCs0MjEoIyMjKSAjIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuU0xdOiBgKzIzMiMjLSMjIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlNNXTogYCszNzgjIyMjLSMjIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlNOXTogYCsyMjEjIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlNPXTogYCsyNTIjIy0jIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuU1JdOiBgKzU5NyMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuU1RdOiBgKzIzOSMjLSMjIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuU1ZdOiBgKzUwMyMjLSMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TWF06IGArMSg3MjEpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuU1ldOiBgKzk2MyMjLSMjIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuU1pdOiBgKzI2OCMjLSMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5UQ106IGArMSg2NDkpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuVERdOiBgKzIzNSMjLSMjLSMjLSMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuVEddOiBgKzIyOCMjLSMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5USF06IGArNjYjIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlRKXTogYCs5OTIjIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlRMXTogYCs2NzAjIyMtIyMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5UTV06IGArOTkzIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlROXTogYCsyMTYjIy0jIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuVE9dOiBgKzY3NiMjIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuVFJdOiBgKzkwKCMjIykgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5UVF06IGArMSg4NjgpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuVFddOiBgKzg4NiMtIyMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuVFpdOiBgKzI1NSMjLSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuVUFdOiBgKzM4MCgjIykgIyMjLSMjLSMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuVUddOiBgKzI1NigjIyMpICMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5VU106IGArMSgjIyMpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuVVldOiBgKzU5OCMtIyMjLSMjLSMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuVVpdOiBgKzk5OCMjLSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuVkNdOiBgKzEoNzg0KSAjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlZFXTogYCs1OCgjIyMpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuVkddOiBgKzEoMjg0KSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuVk5dOiBgKzg0KCMjIykgIyMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5WVV06IGArNjc4IyMtIyMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5XU106IGArNjg1IyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlhLXTogYCszODMjIy0jIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuWUVdOiBgKzk2NyMjIy0jIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuWkFdOiBgKzI3IyMtIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5aTV06IGArMjYwIyMtIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5aV106IGArMjYzIy0jIyMjIyNgLFxuICAgICAgICAgICAgfSksXG4gICAgICAgIH0sXG4gICAgKTtcbiJdfQ==
214
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY291bnRyaWVzLW1hc2tzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvaW5wdXQtcGhvbmUtaW50ZXJuYXRpb25hbC90b2tlbnMvY291bnRyaWVzLW1hc2tzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDN0MsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFakQsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQzVCLElBQUksY0FBYyxDQUNkLHdDQUF3QyxFQUN4QztJQUNJLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQ1osQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxhQUFhO1FBQ3JDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsa0JBQWtCO1FBQzFDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsa0JBQWtCO1FBQzFDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsa0JBQWtCO1FBQzFDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsbUJBQW1CO1FBQzNDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsbUJBQW1CO1FBQzNDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsbUJBQW1CO1FBQzNDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsbUJBQW1CO1FBQzNDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsY0FBYztRQUN0QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGtCQUFrQjtRQUMxQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGtCQUFrQjtRQUMxQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGtCQUFrQjtRQUMxQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGdCQUFnQjtRQUN4QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGtCQUFrQjtRQUMxQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGdCQUFnQjtRQUN4QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG1CQUFtQjtRQUMzQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGVBQWU7UUFDdkMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxjQUFjO1FBQ3RDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZUFBZTtRQUN2QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG1CQUFtQjtRQUMzQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGtCQUFrQjtRQUMxQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGVBQWU7UUFDdkMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxvQkFBb0I7UUFDNUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxjQUFjO1FBQ3RDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsa0JBQWtCO1FBQzFDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsbUJBQW1CO1FBQzNDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZUFBZTtRQUN2QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG9CQUFvQjtRQUM1QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG1CQUFtQjtRQUMzQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGVBQWU7UUFDdkMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxlQUFlO1FBQ3ZDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsbUJBQW1CO1FBQzNDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUscUJBQXFCO1FBQzdDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsa0JBQWtCO1FBQzFDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsa0JBQWtCO1FBQzFDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZUFBZTtRQUN2QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG1CQUFtQjtRQUMzQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGVBQWU7UUFDdkMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxxQkFBcUI7UUFDN0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxjQUFjO1FBQ3RDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsV0FBVztRQUNuQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGNBQWM7UUFDdEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxvQkFBb0I7UUFDNUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxlQUFlO1FBQ3ZDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsY0FBYztRQUN0QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQjtRQUN6QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGdCQUFnQjtRQUN4QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQjtRQUN6QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG1CQUFtQjtRQUMzQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGdCQUFnQjtRQUN4QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGNBQWM7UUFDdEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxjQUFjO1FBQ3RDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZUFBZTtRQUN2QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGVBQWU7UUFDdkMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxxQkFBcUI7UUFDN0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxvQkFBb0I7UUFDNUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxjQUFjO1FBQ3RDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsbUJBQW1CO1FBQzNDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsa0JBQWtCO1FBQzFDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsa0JBQWtCO1FBQzFDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsbUJBQW1CO1FBQzNDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsY0FBYztRQUN0QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGtCQUFrQjtRQUMxQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLHdCQUF3QjtRQUNoRCxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGdCQUFnQjtRQUN4QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGVBQWU7UUFDdkMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxvQkFBb0I7UUFDNUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxlQUFlO1FBQ3ZDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZUFBZTtRQUN2QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGdCQUFnQjtRQUN4QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGVBQWU7UUFDdkMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxlQUFlO1FBQ3ZDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsY0FBYztRQUN0QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGNBQWM7UUFDdEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxvQkFBb0I7UUFDNUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxlQUFlO1FBQ3ZDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsbUJBQW1CO1FBQzNDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsY0FBYztRQUN0QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGtCQUFrQjtRQUMxQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGNBQWM7UUFFdEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxjQUFjO1FBQ3RDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsbUJBQW1CO1FBQzNDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZUFBZTtRQUN2QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGdCQUFnQjtRQUN4QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQjtRQUN6QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQjtRQUN6QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG1CQUFtQjtRQUMzQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQjtRQUN6QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGNBQWM7UUFDdEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxlQUFlO1FBQ3ZDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsY0FBYztRQUN0QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLFVBQVU7UUFDbEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxtQkFBbUI7UUFDM0MsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxlQUFlO1FBQ3ZDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsY0FBYztRQUN0QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGNBQWM7UUFDdEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxrQkFBa0I7UUFDMUMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUI7UUFDekMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxlQUFlO1FBQ3ZDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsV0FBVztRQUNuQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG1CQUFtQjtRQUMzQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGtCQUFrQjtRQUMxQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQjtRQUN6QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQjtRQUN6QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG9CQUFvQjtRQUM1QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG1CQUFtQjtRQUMzQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGtCQUFrQjtRQUMxQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQjtRQUN6QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQjtRQUN6QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGtCQUFrQjtRQUMxQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG1CQUFtQjtRQUMzQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGlCQUFpQjtRQUN6QyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLG1CQUFtQjtRQUMzQyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUFFLGNBQWM7UUFDdEMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxhQUFhO1FBQ3JDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCO1FBQ3hDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsaUJBQWlCO1FBQ3pDLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQUUsY0FBYztLQUN6QyxDQUFDO0NBQ0wsQ0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3Rpb25Ub2tlbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aUNvdW50cnlJc29Db2RlfSBmcm9tICdAdGFpZ2EtdWkvaTE4bic7XG5cbmV4cG9ydCBjb25zdCBUVUlfQ09VTlRSSUVTX01BU0tTOiBJbmplY3Rpb25Ub2tlbjxSZWNvcmQ8VHVpQ291bnRyeUlzb0NvZGUsIHN0cmluZz4+ID1cbiAgICBuZXcgSW5qZWN0aW9uVG9rZW48UmVjb3JkPFR1aUNvdW50cnlJc29Db2RlLCBzdHJpbmc+PihcbiAgICAgICAgYFtUVUlfQ09VTlRSSUVTX01BU0tTXTogQ291bnRyaWVzIG1hc2tzYCxcbiAgICAgICAge1xuICAgICAgICAgICAgZmFjdG9yeTogKCkgPT4gKHtcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQURdOiBgKzM3NiMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5BRV06IGArOTcxLSMjLSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQUZdOiBgKzkzIyMtIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5BR106IGArMSgyNjgpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQUldOiBgKzEoMjY0KSAjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkFMXTogYCszNTUoIyMjKSAjIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQU1dOiBgKzM3NCMjLSMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5BT106IGArMjQ0KCMjIykgIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkFSXTogYCs1NCgjIyMpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQVRdOiBgKzQzKCMjIykgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5BVV06IGArNjEjLSMjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkFXXTogYCsyOTcjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkFaXTogYCs5OTQjIy0jIyMtIyMtIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CQV06IGArMzg3ICMjIy0jIyMjLSMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQkJdOiBgKzEoMjQ2KSAjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkJEXTogYCs4ODAjIy0jIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQkVdOiBgKzMyKCMjIykgIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkJGXTogYCsyMjYjIy0jIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQkddOiBgKzM1OSgjIyMpICMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CSF06IGArOTczIyMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQkldOiBgKzI1NyMjLSMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CSl06IGArMjI5IyMtIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkJNXTogYCsxKDQ0MSkgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CTl06IGArNjczIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CT106IGArNTkxIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkJRXTogYCs1OTktIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CUl06IGArNTUoIyMpICMjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkJTXTogYCsxKDI0MikgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CVF06IGArOTc1Iy0jIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQlddOiBgKzI2NyMjLSMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CWV06IGArMzc1KCMjKSAjIyMtIyMtIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5CWl06IGArNTAxIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5DQV06IGArMSgjIyMpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQ0RdOiBgKzI0MygjIyMpICMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5DRl06IGArMjM2LSMjLSMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5DR106IGArMjQyIyMtIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5DSF06IGArNDEjIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkNJXTogYCsyMjUjIy0jIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQ0xdOiBgKzU2Iy0jIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5DTV06IGArMjM3IyMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQ05dOiBgKzg2KCMjIykgIyMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQ09dOiBgKzU3KCMjIykgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5DUl06IGArNTA2IyMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQ1VdOiBgKzUzIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkNWXTogYCsyMzgoIyMjKSAjIy0jI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkNXXTogYCs1OTk5LSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuQ1ldOiBgKzM1NyMjLSMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5DWl06IGArNDIwKCMjIykgIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkRFXTogYCs0OSgjIyMpICMjIy0jIyMtIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5ESl06IGArMjUzIyMtIyMtIyMtIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5ES106IGArNDUjIy0jIy0jIy0jI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkRNXTogYCsxKDc2NykgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5ET106IGArMSgjIyMpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuRFpdOiBgKzIxMyMjLSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuRUNdOiBgKzU5MyMjLSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuRUVdOiBgKzM3MiMjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkVHXTogYCsyMCgjIyMpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuRVJdOiBgKzI5MSMtIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkVTXTogYCszNCgjIyMpICMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5FVF06IGArMjUxIyMtIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5GSV06IGArMzU4KCMjIykgIyMjLSMjLSMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuRkpdOiBgKzY3OSMjLSMjIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuRktdOiBgKzUwMCMjIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuRk1dOiBgKzY5MSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuRlJdOiBgKzMzICMjICMjICMjICMjICMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuR0FdOiBgKzI0MSMtIyMtIyMtIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HQl06IGArNDQjIy0jIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HRF06IGArMSg0NzMpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuR0VdOiBgKzk5NSgjIyMpICMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HSF06IGArMjMzKCMjIykgIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkdJXTogYCszNTAjIyMtIyMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HTF06IGArMjk5IyMtIyMtIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HTV06IGArMjIwKCMjIykgIyMtIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HTl06IGArMjI0IyMtIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkdRXTogYCsyNDAjIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkdSXTogYCszMCgjIyMpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuR1RdOiBgKzUwMiMtIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HV106IGArMjQ1Iy0jIyMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5HWV06IGArNTkyIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5IS106IGArODUyIyMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuSE5dOiBgKzUwNCMjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkhSXTogYCszODUjIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkhUXTogYCs1MDkjIy0jIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuSFVdOiBgKzM2KCMjIykgIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLklEXTogYCs2MigjIyMpICMjIy0jIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5JRV06IGArMzUzKCMjIykgIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLklMXTogYCs5NzIjIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLklOXTogYCs5MSgjIyMjKSAjIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuSVFdOiBgKzk2NCgjIyMpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuSVJdOiBgKzk4KCMjIykgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5JU106IGArMzU0IyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5JVF06IGArMzkoIyMjKSAjIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkpNXTogYCsxKDg3NikgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5KT106IGArOTYyIy0jIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5KUF06IGArODEtIyMtIyMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuS0VdOiBgKzI1NCMjIy0jIyMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5LR106IGArOTk2KCMjIykgIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLktIXTogYCs4NTUjIy0jIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuS01dOiBgKzI2OSMjLSMjIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuS05dOiBgKzEoODY5KSAjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLktQXTogYCs4NTAjIyMjLSMjIyMjIyMjIyMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5LUl06IGArODIjIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLktXXTogYCs5NjUjIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5LWV06IGArMSgzNDUpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuS1pdOiBgKzcoIyMjKSAjIyMtIyMtIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5MQV06IGArODU2IyMtIyMtIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkxCXTogYCs5NjEjIy0jIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTENdOiBgKzEoNzU4KSAjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkxJXTogYCs0MjMoIyMjKSAjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkxLXTogYCs5NCMjLSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTFJdOiBgKzIzMSMjLSMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5MU106IGArMjY2Iy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkxUXTogYCszNzAoIyMjKSAjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5MVV06IGArMzUyKCMjIykgIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLkxWXTogYCszNzEjIy0jIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTFldOiBgKzIxOCMjLSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTUFdOiBgKzIxMiMjLSMjIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTUNdOiBgKzM3NyMjIy0jIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTURdOiBgKzM3MyMjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLk1FXTogYCszODIjIy0jIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTUddOiBgKzI2MSMjLSMjLSMjIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTUtdOiBgKzM4OSMjLSMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5NTF06IGArMjIzIyMtIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLk1NXTogYCs5NSMjLSMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5NTl06IGArOTc2IyMtIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLk1PXTogYCs4NTMjIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5NUl06IGArMjIyIyMtIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLk1TXTogYCsxKDY2NCkgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5NVF06IGArMzU2IyMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTVVdOiBgKzIzMCMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTVZdOiBgKzk2MCMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTVddOiBgKzI2NSMtIyMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTVhdOiBgKzUyKCMjIykgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5NWV06IGArNjAoIyMjKSAjIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTVpdOiBgKzI1OCMjLSMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5OQV06IGArMjY0IyMtIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5ORV06IGArMjI3IyMtIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLk5HXTogYCsyMzQoIyMjKSAjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLk5JXTogYCs1MDUjIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5OTF06IGArMzEjIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLk5PXTogYCs0NygjIyMpICMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLk5QXTogYCs5NzcjIy0jIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuTlpdOiBgKzY0KCMjIykgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5PTV06IGArOTY4IyMtIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlBBXTogYCs1MDcjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlBFXTogYCs1MSgjIyMpICMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5QRl06IGArNjg5IyMtIyMtIyNgLFxuXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlBHXTogYCs2NzUoIyMjKSAjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5QSF06IGArNjMoIyMjKSAjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlBLXTogYCs5MigjIyMpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuUExdOiBgKzQ4KCMjIykgIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlBUXTogYCszNTEjIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlBXXTogYCs2ODAjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlBZXTogYCs1OTUoIyMjKSAjIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuUUFdOiBgKzk3NCMjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlJPXTogYCs0MCMjLSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuUlNdOiBgKzM4MSMjLSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuUlVdOiBgKzcjIyMgIyMjLSMjLSMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuUlddOiBgKzI1MCgjIyMpICMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TQV06IGArOTY2Iy0jIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TQl06IGArNjc3IyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TQ106IGArMjQ4Iy0jIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuU0RdOiBgKzI0OSMjLSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuU0VdOiBgKzQ2IyMtIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TR106IGArNjUjIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TSF06IGArMjkwIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlNJXTogYCszODYjIy0jIyMtIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuU0tdOiBgKzQyMSgjIyMpICMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TTF06IGArMjMyIyMtIyMjIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuU01dOiBgKzM3OCMjIyMtIyMjIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuU05dOiBgKzIyMSMjLSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuU09dOiBgKzI1MiMjLSMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TUl06IGArNTk3IyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TVF06IGArMjM5IyMtIyMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TVl06IGArNTAzIyMtIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlNYXTogYCsxKDcyMSkgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TWV06IGArOTYzIyMtIyMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5TWl06IGArMjY4IyMtIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlRDXTogYCsxKDY0OSkgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5URF06IGArMjM1IyMtIyMtIyMtIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5UR106IGArMjI4IyMtIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlRIXTogYCs2NiMjLSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuVEpdOiBgKzk5MiMjLSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuVExdOiBgKzY3MCMjIy0jIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlRNXTogYCs5OTMjLSMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuVE5dOiBgKzIxNiMjLSMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5UT106IGArNjc2IyMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5UUl06IGArOTAoIyMjKSAjIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlRUXTogYCsxKDg2OCkgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5UV106IGArODg2Iy0jIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5UWl06IGArMjU1IyMtIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5VQV06IGArMzgwKCMjKSAjIyMtIyMtIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5VR106IGArMjU2KCMjIykgIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlVTXTogYCsxKCMjIykgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5VWV06IGArNTk4Iy0jIyMtIyMtIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5VWl06IGArOTk4IyMtIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5WQ106IGArMSg3ODQpICMjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuVkVdOiBgKzU4KCMjIykgIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5WR106IGArMSgyODQpIyMjLSMjIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5WTl06IGArODQoIyMjKSAjIyMjLSMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlZVXTogYCs2NzgjIy0jIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLldTXTogYCs2ODUjIy0jIyMjYCxcbiAgICAgICAgICAgICAgICBbVHVpQ291bnRyeUlzb0NvZGUuWEtdOiBgKzM4MyMjLSMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5ZRV06IGArOTY3IyMjLSMjIy0jIyNgLFxuICAgICAgICAgICAgICAgIFtUdWlDb3VudHJ5SXNvQ29kZS5aQV06IGArMjcjIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlpNXTogYCsyNjAjIy0jIyMtIyMjI2AsXG4gICAgICAgICAgICAgICAgW1R1aUNvdW50cnlJc29Db2RlLlpXXTogYCsyNjMjLSMjIyMjI2AsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgfSxcbiAgICApO1xuIl19
@@ -294,7 +294,7 @@ TuiInputTagComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
294
294
  tuiAsDataListHost(TuiInputTagComponent),
295
295
  TEXTFIELD_CONTROLLER_PROVIDER,
296
296
  MODE_PROVIDER,
297
- ], queries: [{ propertyName: "datalist", first: true, predicate: TuiDataListDirective, descendants: true, read: TemplateRef }], viewQueries: [{ propertyName: "hostedDropdown", first: true, predicate: TuiHostedDropdownComponent, descendants: true }, { propertyName: "focusableElement", first: true, predicate: ["focusableElement"], descendants: true }, { propertyName: "tagsContainer", first: true, predicate: ["tagsContainer"], descendants: true }, { propertyName: "cleanerSvg", first: true, predicate: ["cleaner"], descendants: true, read: ElementRef }, { propertyName: "scrollBar", first: true, predicate: TuiScrollbarComponent, descendants: true, read: ElementRef }, { propertyName: "errorIconTemplate", first: true, predicate: ["errorIcon"], descendants: true }, { propertyName: "scrollerSetter", first: true, predicate: TuiScrollbarComponent, descendants: true }, { propertyName: "tags", predicate: ["tag"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"hintOptions?.change$ | async\"></ng-container>\n<tui-hosted-dropdown\n class=\"t-hosted\"\n [canOpen]=\"canOpen\"\n [content]=\"datalist || ''\"\n [(open)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <div\n tuiWrapper\n [appearance]=\"appearance\"\n [readOnly]=\"readOnly\"\n [focus]=\"computedFocused\"\n [hover]=\"pseudoHover\"\n [disabled]=\"computedDisabled\"\n [invalid]=\"computedInvalid\"\n (mousedown)=\"onMouseDown($event)\"\n >\n <div class=\"t-content\">\n <div\n *ngIf=\"iconLeft\"\n class=\"t-icons t-icons_left\"\n >\n <tui-svg\n *polymorpheusOutlet=\"iconLeft as src; context: {$implicit: size}\"\n class=\"t-icon\"\n [src]=\"src\"\n ></tui-svg>\n </div>\n <div class=\"t-wrapper\">\n <div class=\"t-absolute-wrapper\">\n <div\n *ngIf=\"hasPlaceholder\"\n automation-id=\"tui-input-tag__placeholder\"\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n >\n <ng-content></ng-content>\n </div>\n </div>\n <tui-scrollbar\n *ngIf=\"!expandable; else items\"\n class=\"t-scrollbar\"\n [hidden]=\"true\"\n >\n <ng-container [ngTemplateOutlet]=\"items\"></ng-container>\n </tui-scrollbar>\n <ng-template #items>\n <div\n #tagsContainer\n class=\"t-tags\"\n >\n <ng-container *ngIf=\"labelOutside; else text\">\n <tui-tag\n *ngFor=\"let item of value; index as index; trackBy: trackByFn\"\n #tag\n automation-id=\"tui-input-tag__tag\"\n class=\"t-tag\"\n [status]=\"(status$ | async)!\"\n [leftContent]=\"getLeftContent(item)\"\n [tuiFocusable]=\"false\"\n [disabled]=\"computedDisabled || disabledItemHandler(item)\"\n [editable]=\"editable && !readOnly\"\n [hoverable]=\"!readOnly\"\n [removable]=\"!readOnly\"\n [separator]=\"separator\"\n [maxLength]=\"maxLength\"\n [size]=\"controller.size\"\n [value]=\"item.toString()\"\n (edited)=\"onTagEdited($event, index)\"\n (keydown.arrowLeft.prevent)=\"onTagKeyDownArrowLeft(index)\"\n (keydown.arrowRight.prevent)=\"onTagKeyDownArrowRight(index)\"\n ></tui-tag>\n </ng-container>\n <ng-template #text>\n <span\n *ngFor=\"let item of value\"\n class=\"t-text\"\n [class.t-text_disabled]=\"disabledItemHandler(item)\"\n [class.t-text_error]=\"!tagValidator(item)\"\n [textContent]=\"item\"\n ></span>\n </ng-template>\n <div\n class=\"t-input-wrapper\"\n [class.t-input-wrapper_collapsed]=\"computedDisabled || readOnly || inputHidden\"\n >\n <div class=\"t-ghost\">{{ search }}</div>\n <input\n #focusableElement\n type=\"text\"\n automation-id=\"tui-input-tag__native\"\n class=\"t-native\"\n [placeholder]=\"placeholder\"\n [class.t-native_hidden]=\"inputHidden\"\n [attr.maxLength]=\"maxLength\"\n [id]=\"id\"\n [disabled]=\"computedDisabled\"\n [readOnly]=\"readOnly || inputHidden\"\n [tuiFocusable]=\"computedFocusable\"\n [ngModel]=\"search\"\n (ngModelChange)=\"onInput($event)\"\n (keydown.arrowLeft)=\"onFieldKeyDownArrowLeft($event)\"\n (keydown.backspace)=\"onFieldKeyDownBackspace($event)\"\n (keydown.enter.prevent)=\"onFieldKeyDownEnter()\"\n />\n </div>\n </div>\n </ng-template>\n </div>\n <div\n *ngIf=\"hasRightIcons\"\n class=\"t-icons t-icons_right\"\n >\n <tui-svg\n *ngIf=\"hasCleaner\"\n #cleaner\n automation-id=\"tui-input-tag__cleaner\"\n src=\"tuiIconCloseLarge\"\n class=\"t-cleaner\"\n (click.stop)=\"onCleanerClick()\"\n ></tui-svg>\n <tui-tooltip\n *ngIf=\"hintOptions && hintOptions.content && !computedDisabled\"\n automation-id=\"tui-input-tag__tooltip\"\n describeId=\"placeholer_until_accesibility_is_added\"\n class=\"t-tooltip\"\n [direction]=\"hintOptions.direction\"\n [appearance]=\"hintOptions.appearance\"\n [content]=\"hintOptions.content\"\n [showDelay]=\"hintOptions.showDelay\"\n [hideDelay]=\"hintOptions.hideDelay\"\n ></tui-tooltip>\n <div *ngIf=\"icon\">\n <tui-svg\n *polymorpheusOutlet=\"icon as src; context: {$implicit: size}\"\n class=\"t-icon\"\n [src]=\"src\"\n ></tui-svg>\n </div>\n </div>\n </div>\n <ng-template #errorIcon>\n <tui-svg\n src=\"tuiIconAttention\"\n class=\"t-error-icon\"\n ></tui-svg>\n </ng-template>\n </div>\n</tui-hosted-dropdown>\n", styles: [":host{font:var(--tui-font-text-s);color:var(--tui-text-01);position:relative;display:block;border-radius:var(--tui-radius-m);text-align:left}:host[data-size=s]{height:var(--tui-height-s);min-height:var(--tui-height-s);max-height:var(--tui-height-s)}:host[data-size=m]{height:var(--tui-height-m);min-height:var(--tui-height-m);max-height:var(--tui-height-m)}:host[data-size=l]{height:var(--tui-height-l);min-height:var(--tui-height-l);max-height:var(--tui-height-l);font:var(--tui-font-text-m);line-height:1.25rem}.t-input{font:var(--tui-font-text-s);color:var(--tui-text-01);padding:0;margin:0;border:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;padding:0 var(--tui-padding-m);border:solid transparent;border-width:0 0 0 0;border-width:0 var(--border-end, 0) 0 var(--border-start, 0);border-inline-start-width:0;border-inline-start-width:var(--border-start, 0);border-inline-end-width:0;border-inline-end-width:var(--border-end, 0);text-indent:var(--text-indent);text-align:inherit;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-transform:inherit;resize:none;text-overflow:ellipsis}.t-input:-webkit-autofill,.t-input:-webkit-autofill:hover,.t-input:-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill) inset!important}:host[data-mode=onDark] .t-input:-webkit-autofill,.t-input :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill,.t-input :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill,:host[data-mode=onDark] .t-input:-webkit-autofill:hover,.t-input :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill:hover,.t-input :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill:hover,:host[data-mode=onDark] .t-input:-webkit-autofill:focus,.t-input :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill:focus,.t-input :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01-night)!important;border-color:var(--tui-autofill-night);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill-night) inset!important}:host[data-size=s] .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"s\"]):not(tui-primitive-textfield),.t-input :host-context(tui-text-area[data-size=\"s\"]):not(tui-text-area){padding:0 var(--tui-padding-s)}:host[data-size=l] .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]):not(tui-primitive-textfield),.t-input :host-context(tui-text-area[data-size=\"l\"]):not(tui-text-area){padding:0 var(--tui-padding-l)}:host._disabled .t-input,.t-input :host-context(tui-primitive-textfield._disabled),.t-input :host-context(tui-text-area._disabled){pointer-events:none}:host[data-size=l]:not(._label-outside) .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1.25rem}:host[data-size=l]:not(._label-outside) .t-input:-webkit-autofill+.t-content .t-placeholder,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.8156rem;transform:translateY(-.625rem)}:host[data-size=m]:not(._label-outside) .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1.125rem}:host[data-size=m]:not(._label-outside) .t-input:-webkit-autofill+.t-content .t-placeholder,.t-input :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.69rem;transform:translateY(-.5rem)}:host._hidden input.t-input,.t-input :host-context(tui-primitive-textfield._hidden){opacity:0;text-indent:-10em;-webkit-user-select:none}.t-content{display:flex;height:100%;width:100%;padding:0 var(--tui-padding-m);box-sizing:border-box;align-items:center;overflow:hidden}:host[data-size=s] .t-content{padding:0 var(--tui-padding-s)}:host[data-size=l] .t-content{padding:0 var(--tui-padding-l)}.t-content:after{content:\"\";margin-right:-.25rem}:host[data-size=m] .t-content:after{display:none}.t-wrapper{flex:1;min-width:0;padding-right:.25rem;-webkit-padding-end:.25rem;padding-inline-end:.25rem;-webkit-padding-start:0;padding-inline-start:0}.t-placeholder{transition-property:transform,font-size,color,letter-spacing;transition-duration:.3s;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;font:var(--tui-font-text-s);color:var(--tui-text-01);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:var(--tui-text-02);pointer-events:none;will-change:transform;transform:translateY(0)}.t-placeholder_raised{transform:translateY(-.625rem)}:host[data-size=m] .t-placeholder_raised{font:var(--tui-font-text-xs);transform:translateY(-.5rem);letter-spacing:.025rem}:host._invalid:not(._focused) .t-placeholder_raised,:host._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill)}:host[data-mode=onDark]._invalid:not(._focused) .t-placeholder_raised,:host[data-mode=onDark]._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill-night)}:host._focused .t-placeholder,:host[data-size=m]._focused._label-outside .t-placeholder,:host[data-size=l]._focused._label-outside .t-placeholder{color:var(--tui-text-03)}:host[data-size=l] .t-placeholder{font-size:.9375rem}:host[data-size=l] .t-placeholder_raised{font-size:.8156rem}:host[data-size=m]._focused:not(._label-outside) .t-placeholder,:host[data-size=l]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01)}:host[data-mode=onDark] .t-placeholder{color:var(--tui-text-02-night)}:host[data-size=m][data-mode=onDark]._focused:not(._label-outside) .t-placeholder,:host[data-size=l][data-mode=onDark]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01-night)}:host[data-mode=onDark]._focused .t-placeholder,:host[data-size=m][data-mode=onDark]._focused._label-outside .t-placeholder,:host[data-size=l][data-mode=onDark]._focused._label-outside .t-placeholder{color:var(--tui-text-02-night)}@supports (-webkit-hyphens: none){.t-placeholder{will-change:unset;transition-property:transform,color,letter-spacing}}.t-cleaner{transition-property:all;transition-duration:.3s;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;color:var(--tui-text-03);position:relative;box-sizing:border-box;cursor:pointer;transition-property:color,transform}.t-cleaner:hover{color:var(--tui-text-02)}:host._readonly .t-cleaner,:host._disabled .t-cleaner{pointer-events:none}:host[data-mode=onDark] .t-cleaner{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-cleaner:hover{color:var(--tui-text-01-night)}.t-icon{display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;color:var(--tui-text-03)}:host[data-mode=onDark] .t-icon{color:var(--tui-text-03-night)}.t-icon_left{margin:0 .5rem 0 -.25rem;-webkit-margin-start:-.25rem;margin-inline-start:-.25rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}:host[data-size=s] .t-icon_left{margin-right:.25rem;-webkit-margin-end:.25rem;margin-inline-end:.25rem}:host{cursor:text}:host._expandable{height:auto;max-height:none}:host._disabled{pointer-events:none}:host._readonly{cursor:default}.t-hosted{display:block;border-radius:inherit}.t-scrollbar{margin:0 -.25rem;padding:0 .25rem}.t-tags{display:flex;align-items:center;box-sizing:border-box}:host._expandable .t-tags{flex-wrap:wrap;white-space:normal}:host._readonly .t-tags{pointer-events:none}:host[data-size=s] .t-tags{min-height:var(--tui-height-s);padding:.25rem .25rem .25rem 0}:host[data-size=m] .t-tags{min-height:var(--tui-height-m);padding:.5rem .25rem .5rem 0}:host[data-size=l] .t-tags{min-height:var(--tui-height-l);padding:.625rem .25rem .625rem 0}:host[data-size=m]:not(._label-outside) .t-tags{padding:1.1875rem 1rem 0 0}:host[data-size=l]:not(._label-outside) .t-tags{padding:1.6875rem 1rem .5625rem 0}.t-tags :host[data-size]{-webkit-padding-start:0;padding-inline-start:0;-webkit-padding-end:.25rem;padding-inline-end:.25rem}:host[data-size]:not(._label-outside) .t-tags{-webkit-padding-end:1rem;padding-inline-end:1rem}.t-content{align-items:flex-start}.t-icons{display:flex;align-items:center;padding:0 0 0 .75rem;-webkit-padding-start:.75rem;padding-inline-start:.75rem;-webkit-padding-end:0;padding-inline-end:0}.t-icons_left{padding:0;margin:0 .5rem 0 -.25rem;-webkit-margin-start:-.25rem;margin-inline-start:-.25rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}:host._expandable .t-icons_right{margin:0 0 0 -.625rem;-webkit-margin-start:-.625rem;margin-inline-start:-.625rem;-webkit-margin-end:0;margin-inline-end:0}:host[data-size=s] .t-icons{height:var(--tui-height-s)}:host[data-size=m] .t-icons{height:var(--tui-height-m)}:host[data-size=l] .t-icons{height:var(--tui-height-l)}.t-absolute-wrapper{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center}:host[data-size=m] .t-absolute-wrapper{height:var(--tui-height-m)}:host[data-size=l] .t-absolute-wrapper{height:var(--tui-height-l)}.t-wrapper{position:relative;padding:0}.t-tag{margin:.125rem .5rem .125rem -.25rem;-webkit-margin-start:-.25rem;margin-inline-start:-.25rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem;max-width:100%;flex-shrink:0}.t-text:after{content:\",\\a0\"}.t-text_disabled{color:var(--tui-text-03)}.t-text_error{color:var(--tui-negative)}:host:not(._expandable) .t-text{white-space:nowrap}:host:not(._focused) .t-text:last-of-type:after{content:\"\"}.t-input-wrapper{position:relative;flex:1;max-width:100%}.t-input-wrapper_collapsed{flex:0;margin:0 0 0 -.5rem;-webkit-margin-start:-.5rem;margin-inline-start:-.5rem;-webkit-margin-end:0;margin-inline-end:0}:host[data-size=s] .t-input-wrapper{min-height:1.5rem}:host[data-size=m] .t-input-wrapper{min-height:calc(var(--tui-height-xs) + 2 * .125rem)}:host[data-size=l] .t-input-wrapper{min-height:calc(var(--tui-height-s) + 2 * .125rem)}:host:not(._label-outside) .t-input-wrapper{min-height:1.25rem}.t-ghost{visibility:hidden;white-space:pre;text-overflow:clip;min-width:.125rem}:host:not(._expandable) .t-ghost{min-width:2rem}.t-native{margin:0;border:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box;padding:0;cursor:inherit}.t-native:-webkit-autofill,.t-native:-webkit-autofill:hover,.t-native:-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill) inset!important}.t-native_hidden{opacity:0;text-indent:-10em}.t-native::-ms-input-placeholder{color:var(--tui-text-03);opacity:0}.t-native::placeholder{color:var(--tui-text-03);opacity:0}:host[data-mode=onDark] .t-native::-ms-input-placeholder{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-native::placeholder{color:var(--tui-text-03-night)}:host._focused .t-native:not(:read-only)::-ms-input-placeholder{opacity:1}:host._focused .t-native:not(:-moz-read-only)::placeholder{opacity:1}:host._focused .t-native:not(:read-only)::placeholder{opacity:1}.t-error-icon{display:block;color:var(--tui-error-fill);width:1rem;height:1rem}\n"], components: [{ type: i1.TuiHostedDropdownComponent, selector: "tui-hosted-dropdown", inputs: ["content", "canOpen", "open"], outputs: ["openChange", "focusedChange"] }, { type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i1.TuiScrollbarComponent, selector: "tui-scrollbar", inputs: ["hidden"] }, { type: i2.TuiTagComponent, selector: "tui-tag, a[tuiTag]", inputs: ["value", "editable", "separator", "maxLength", "size", "showLoader", "status", "hoverable", "removable", "disabled", "autoColor", "leftContent"], outputs: ["edited"] }, { type: i1.TuiTooltipComponent, selector: "tui-tooltip", inputs: ["content", "direction", "appearance", "showDelay", "hideDelay", "describeId"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.TuiActiveZoneDirective, selector: "[tuiActiveZone]:not(ng-container), [tuiActiveZoneChange]:not(ng-container), [tuiActiveZoneParent]:not(ng-container)", inputs: ["tuiActiveZoneParent"], outputs: ["tuiActiveZoneChange"], exportAs: ["tuiActiveZone"] }, { type: i1.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { type: i5.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }, { type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "async": i3.AsyncPipe }, viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER], changeDetection: i0.ChangeDetectionStrategy.OnPush });
297
+ ], queries: [{ propertyName: "datalist", first: true, predicate: TuiDataListDirective, descendants: true, read: TemplateRef }], viewQueries: [{ propertyName: "hostedDropdown", first: true, predicate: TuiHostedDropdownComponent, descendants: true }, { propertyName: "focusableElement", first: true, predicate: ["focusableElement"], descendants: true }, { propertyName: "tagsContainer", first: true, predicate: ["tagsContainer"], descendants: true }, { propertyName: "cleanerSvg", first: true, predicate: ["cleaner"], descendants: true, read: ElementRef }, { propertyName: "scrollBar", first: true, predicate: TuiScrollbarComponent, descendants: true, read: ElementRef }, { propertyName: "errorIconTemplate", first: true, predicate: ["errorIcon"], descendants: true }, { propertyName: "scrollerSetter", first: true, predicate: TuiScrollbarComponent, descendants: true }, { propertyName: "tags", predicate: ["tag"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"hintOptions?.change$ | async\"></ng-container>\n<tui-hosted-dropdown\n class=\"t-hosted\"\n [canOpen]=\"canOpen\"\n [content]=\"datalist || ''\"\n [(open)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <div\n tuiWrapper\n [appearance]=\"appearance\"\n [readOnly]=\"readOnly\"\n [focus]=\"computedFocused\"\n [hover]=\"pseudoHover\"\n [disabled]=\"computedDisabled\"\n [invalid]=\"computedInvalid\"\n (mousedown)=\"onMouseDown($event)\"\n >\n <div class=\"t-content\">\n <div\n *ngIf=\"iconLeft\"\n class=\"t-icons t-icons_left\"\n >\n <tui-svg\n *polymorpheusOutlet=\"iconLeft as src; context: {$implicit: size}\"\n class=\"t-icon\"\n [src]=\"src\"\n ></tui-svg>\n </div>\n <div class=\"t-wrapper\">\n <div class=\"t-absolute-wrapper\">\n <div\n *ngIf=\"hasPlaceholder\"\n automation-id=\"tui-input-tag__placeholder\"\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n >\n <ng-content></ng-content>\n </div>\n </div>\n <tui-scrollbar\n *ngIf=\"!expandable; else items\"\n class=\"t-scrollbar\"\n [hidden]=\"true\"\n >\n <ng-container [ngTemplateOutlet]=\"items\"></ng-container>\n </tui-scrollbar>\n <ng-template #items>\n <div\n #tagsContainer\n class=\"t-tags\"\n >\n <ng-container *ngIf=\"labelOutside; else text\">\n <tui-tag\n *ngFor=\"let item of value; index as index; trackBy: trackByFn\"\n #tag\n automation-id=\"tui-input-tag__tag\"\n class=\"t-tag\"\n [status]=\"(status$ | async)!\"\n [leftContent]=\"getLeftContent(item)\"\n [tuiFocusable]=\"false\"\n [disabled]=\"computedDisabled || disabledItemHandler(item)\"\n [editable]=\"editable && !readOnly\"\n [hoverable]=\"!readOnly\"\n [removable]=\"!readOnly\"\n [separator]=\"separator\"\n [maxLength]=\"maxLength\"\n [size]=\"controller.size\"\n [value]=\"item.toString()\"\n (edited)=\"onTagEdited($event, index)\"\n (keydown.arrowLeft.prevent)=\"onTagKeyDownArrowLeft(index)\"\n (keydown.arrowRight.prevent)=\"onTagKeyDownArrowRight(index)\"\n ></tui-tag>\n </ng-container>\n <ng-template #text>\n <span\n *ngFor=\"let item of value\"\n class=\"t-text\"\n [class.t-text_disabled]=\"disabledItemHandler(item)\"\n [class.t-text_error]=\"!tagValidator(item)\"\n [textContent]=\"item\"\n ></span>\n </ng-template>\n <div\n class=\"t-input-wrapper\"\n [class.t-input-wrapper_collapsed]=\"computedDisabled || readOnly || inputHidden\"\n >\n <div class=\"t-ghost\">{{ search }}</div>\n <input\n #focusableElement\n type=\"text\"\n automation-id=\"tui-input-tag__native\"\n class=\"t-native\"\n [placeholder]=\"placeholder\"\n [class.t-native_hidden]=\"inputHidden\"\n [attr.maxLength]=\"maxLength\"\n [id]=\"id\"\n [disabled]=\"computedDisabled\"\n [readOnly]=\"readOnly || inputHidden\"\n [tuiFocusable]=\"computedFocusable\"\n [ngModel]=\"search\"\n (ngModelChange)=\"onInput($event)\"\n (keydown.arrowLeft)=\"onFieldKeyDownArrowLeft($event)\"\n (keydown.backspace)=\"onFieldKeyDownBackspace($event)\"\n (keydown.enter.prevent)=\"onFieldKeyDownEnter()\"\n />\n </div>\n </div>\n </ng-template>\n </div>\n <div\n *ngIf=\"hasRightIcons\"\n class=\"t-icons t-icons_right\"\n >\n <tui-svg\n *ngIf=\"hasCleaner\"\n #cleaner\n automation-id=\"tui-input-tag__cleaner\"\n src=\"tuiIconCloseLarge\"\n class=\"t-cleaner\"\n (click.stop)=\"onCleanerClick()\"\n ></tui-svg>\n <tui-tooltip\n *ngIf=\"hintOptions && hintOptions.content && !computedDisabled\"\n automation-id=\"tui-input-tag__tooltip\"\n describeId=\"placeholer_until_accesibility_is_added\"\n class=\"t-tooltip\"\n [direction]=\"hintOptions.direction\"\n [appearance]=\"hintOptions.appearance\"\n [content]=\"hintOptions.content\"\n [showDelay]=\"hintOptions.showDelay\"\n [hideDelay]=\"hintOptions.hideDelay\"\n ></tui-tooltip>\n <div *ngIf=\"icon\">\n <tui-svg\n *polymorpheusOutlet=\"icon as src; context: {$implicit: size}\"\n class=\"t-icon\"\n [src]=\"src\"\n ></tui-svg>\n </div>\n </div>\n </div>\n <ng-template #errorIcon>\n <tui-svg\n src=\"tuiIconAttention\"\n class=\"t-error-icon\"\n ></tui-svg>\n </ng-template>\n </div>\n</tui-hosted-dropdown>\n", styles: [":host{font:var(--tui-font-text-s);color:var(--tui-text-01);position:relative;display:block;border-radius:var(--tui-radius-m);text-align:left}:host[data-size=s]{height:var(--tui-height-s);min-height:var(--tui-height-s);max-height:var(--tui-height-s)}:host[data-size=m]{height:var(--tui-height-m);min-height:var(--tui-height-m);max-height:var(--tui-height-m)}:host[data-size=l]{height:var(--tui-height-l);min-height:var(--tui-height-l);max-height:var(--tui-height-l);font:var(--tui-font-text-m);line-height:1.25rem}.t-input{font:var(--tui-font-text-s);color:var(--tui-text-01);padding:0;margin:0;border:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;padding:0 var(--tui-padding-m);border:solid transparent;border-width:0 0 0 0;border-width:0 var(--border-end, 0) 0 var(--border-start, 0);border-inline-start-width:0;border-inline-start-width:var(--border-start, 0);border-inline-end-width:0;border-inline-end-width:var(--border-end, 0);text-indent:var(--text-indent);text-align:inherit;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-transform:inherit;resize:none}.t-input:-webkit-autofill,.t-input:-webkit-autofill:hover,.t-input:-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill) inset!important}:host[data-mode=onDark] .t-input:-webkit-autofill,.t-input :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill,.t-input :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill,:host[data-mode=onDark] .t-input:-webkit-autofill:hover,.t-input :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill:hover,.t-input :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill:hover,:host[data-mode=onDark] .t-input:-webkit-autofill:focus,.t-input :host-context(tui-primitive-textfield[data-mode=\"onDark\"]):-webkit-autofill:focus,.t-input :host-context(tui-text-area[data-mode=\"onDark\"]):-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01-night)!important;border-color:var(--tui-autofill-night);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill-night) inset!important}:host[data-size=s] .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"s\"]):not(tui-primitive-textfield),.t-input :host-context(tui-text-area[data-size=\"s\"]):not(tui-text-area){padding:0 var(--tui-padding-s)}:host[data-size=l] .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]):not(tui-primitive-textfield),.t-input :host-context(tui-text-area[data-size=\"l\"]):not(tui-text-area){padding:0 var(--tui-padding-l)}:host._disabled .t-input,.t-input :host-context(tui-primitive-textfield._disabled),.t-input :host-context(tui-text-area._disabled){pointer-events:none}:host[data-size=l]:not(._label-outside) .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1.25rem}:host[data-size=l]:not(._label-outside) .t-input:-webkit-autofill+.t-content .t-placeholder,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.8156rem;transform:translateY(-.625rem)}:host[data-size=m]:not(._label-outside) .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield){padding-top:1.125rem}:host[data-size=m]:not(._label-outside) .t-input:-webkit-autofill+.t-content .t-placeholder,.t-input :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield):-webkit-autofill+.t-content .t-placeholder{font-size:.69rem;transform:translateY(-.5rem)}:host._hidden input.t-input,.t-input :host-context(tui-primitive-textfield._hidden){opacity:0;text-indent:-10em;-webkit-user-select:none}.t-content{display:flex;height:100%;width:100%;padding:0 var(--tui-padding-m);box-sizing:border-box;align-items:center;overflow:hidden}:host[data-size=s] .t-content{padding:0 var(--tui-padding-s)}:host[data-size=l] .t-content{padding:0 var(--tui-padding-l)}.t-content:after{content:\"\";margin-right:-.25rem}:host[data-size=m] .t-content:after{display:none}.t-wrapper{flex:1;min-width:0;padding-right:.25rem;-webkit-padding-end:.25rem;padding-inline-end:.25rem;-webkit-padding-start:0;padding-inline-start:0}.t-placeholder{transition-property:transform,font-size,color,letter-spacing;transition-duration:.3s;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;font:var(--tui-font-text-s);color:var(--tui-text-01);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:var(--tui-text-02);pointer-events:none;will-change:transform;transform:translateY(0)}.t-placeholder_raised{transform:translateY(-.625rem)}:host[data-size=m] .t-placeholder_raised{font:var(--tui-font-text-xs);transform:translateY(-.5rem);letter-spacing:.025rem}:host._invalid:not(._focused) .t-placeholder_raised,:host._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill)}:host[data-mode=onDark]._invalid:not(._focused) .t-placeholder_raised,:host[data-mode=onDark]._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-error-fill-night)}:host._focused .t-placeholder,:host[data-size=m]._focused._label-outside .t-placeholder,:host[data-size=l]._focused._label-outside .t-placeholder{color:var(--tui-text-03)}:host[data-size=l] .t-placeholder{font-size:.9375rem}:host[data-size=l] .t-placeholder_raised{font-size:.8156rem}:host[data-size=m]._focused:not(._label-outside) .t-placeholder,:host[data-size=l]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01)}:host[data-mode=onDark] .t-placeholder{color:var(--tui-text-02-night)}:host[data-size=m][data-mode=onDark]._focused:not(._label-outside) .t-placeholder,:host[data-size=l][data-mode=onDark]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-01-night)}:host[data-mode=onDark]._focused .t-placeholder,:host[data-size=m][data-mode=onDark]._focused._label-outside .t-placeholder,:host[data-size=l][data-mode=onDark]._focused._label-outside .t-placeholder{color:var(--tui-text-02-night)}@supports (-webkit-hyphens: none){.t-placeholder{will-change:unset;transition-property:transform,color,letter-spacing}}.t-cleaner{transition-property:all;transition-duration:.3s;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;color:var(--tui-text-03);position:relative;box-sizing:border-box;cursor:pointer;transition-property:color,transform}.t-cleaner:hover{color:var(--tui-text-02)}:host._readonly .t-cleaner,:host._disabled .t-cleaner{pointer-events:none}:host[data-mode=onDark] .t-cleaner{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-cleaner:hover{color:var(--tui-text-01-night)}.t-icon{display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;color:var(--tui-text-03)}:host[data-mode=onDark] .t-icon{color:var(--tui-text-03-night)}.t-icon_left{margin:0 .5rem 0 -.25rem;-webkit-margin-start:-.25rem;margin-inline-start:-.25rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}:host[data-size=s] .t-icon_left{margin-right:.25rem;-webkit-margin-end:.25rem;margin-inline-end:.25rem}:host{cursor:text}:host._expandable{height:auto;max-height:none}:host._disabled{pointer-events:none}:host._readonly{cursor:default}.t-hosted{display:block;border-radius:inherit}.t-scrollbar{margin:0 -.25rem;padding:0 .25rem}.t-tags{display:flex;align-items:center;box-sizing:border-box}:host._expandable .t-tags{flex-wrap:wrap;white-space:normal}:host._readonly .t-tags{pointer-events:none}:host[data-size=s] .t-tags{min-height:var(--tui-height-s);padding:.25rem .25rem .25rem 0}:host[data-size=m] .t-tags{min-height:var(--tui-height-m);padding:.5rem .25rem .5rem 0}:host[data-size=l] .t-tags{min-height:var(--tui-height-l);padding:.625rem .25rem .625rem 0}:host[data-size=m]:not(._label-outside) .t-tags{padding:1.1875rem 1rem 0 0}:host[data-size=l]:not(._label-outside) .t-tags{padding:1.6875rem 1rem .5625rem 0}.t-tags :host[data-size]{-webkit-padding-start:0;padding-inline-start:0;-webkit-padding-end:.25rem;padding-inline-end:.25rem}:host[data-size]:not(._label-outside) .t-tags{-webkit-padding-end:1rem;padding-inline-end:1rem}.t-content{align-items:flex-start}.t-icons{display:flex;align-items:center;padding:0 0 0 .75rem;-webkit-padding-start:.75rem;padding-inline-start:.75rem;-webkit-padding-end:0;padding-inline-end:0}.t-icons_left{padding:0;margin:0 .5rem 0 -.25rem;-webkit-margin-start:-.25rem;margin-inline-start:-.25rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}:host._expandable .t-icons_right{margin:0 0 0 -.625rem;-webkit-margin-start:-.625rem;margin-inline-start:-.625rem;-webkit-margin-end:0;margin-inline-end:0}:host[data-size=s] .t-icons{height:var(--tui-height-s)}:host[data-size=m] .t-icons{height:var(--tui-height-m)}:host[data-size=l] .t-icons{height:var(--tui-height-l)}.t-absolute-wrapper{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center}:host[data-size=m] .t-absolute-wrapper{height:var(--tui-height-m)}:host[data-size=l] .t-absolute-wrapper{height:var(--tui-height-l)}.t-wrapper{position:relative;padding:0}.t-tag{margin:.125rem .5rem .125rem -.25rem;-webkit-margin-start:-.25rem;margin-inline-start:-.25rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem;max-width:100%;flex-shrink:0}.t-text:after{content:\",\\a0\"}.t-text_disabled{color:var(--tui-text-03)}.t-text_error{color:var(--tui-negative)}:host:not(._expandable) .t-text{white-space:nowrap}:host:not(._focused) .t-text:last-of-type:after{content:\"\"}.t-input-wrapper{position:relative;flex:1;max-width:100%}.t-input-wrapper_collapsed{flex:0;margin:0 0 0 -.5rem;-webkit-margin-start:-.5rem;margin-inline-start:-.5rem;-webkit-margin-end:0;margin-inline-end:0}:host[data-size=s] .t-input-wrapper{min-height:1.5rem}:host[data-size=m] .t-input-wrapper{min-height:calc(var(--tui-height-xs) + 2 * .125rem)}:host[data-size=l] .t-input-wrapper{min-height:calc(var(--tui-height-s) + 2 * .125rem)}:host:not(._label-outside) .t-input-wrapper{min-height:1.25rem}.t-ghost{visibility:hidden;white-space:pre;text-overflow:clip;min-width:.125rem}:host:not(._expandable) .t-ghost{min-width:2rem}.t-native{margin:0;border:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box;padding:0;cursor:inherit}.t-native:-webkit-autofill,.t-native:-webkit-autofill:hover,.t-native:-webkit-autofill:focus{caret-color:var(--tui-base-09);border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 100rem var(--tui-autofill) inset!important}.t-native_hidden{opacity:0;text-indent:-10em}.t-native::-ms-input-placeholder{color:var(--tui-text-03);opacity:0}.t-native::placeholder{color:var(--tui-text-03);opacity:0}:host[data-mode=onDark] .t-native::-ms-input-placeholder{color:var(--tui-text-03-night)}:host[data-mode=onDark] .t-native::placeholder{color:var(--tui-text-03-night)}:host._focused .t-native:not(:read-only)::-ms-input-placeholder{opacity:1}:host._focused .t-native:not(:-moz-read-only)::placeholder{opacity:1}:host._focused .t-native:not(:read-only)::placeholder{opacity:1}.t-error-icon{display:block;color:var(--tui-error-fill);width:1rem;height:1rem}\n"], components: [{ type: i1.TuiHostedDropdownComponent, selector: "tui-hosted-dropdown", inputs: ["content", "canOpen", "open"], outputs: ["openChange", "focusedChange"] }, { type: i1.TuiSvgComponent, selector: "tui-svg", inputs: ["src"] }, { type: i1.TuiScrollbarComponent, selector: "tui-scrollbar", inputs: ["hidden"] }, { type: i2.TuiTagComponent, selector: "tui-tag, a[tuiTag]", inputs: ["value", "editable", "separator", "maxLength", "size", "showLoader", "status", "hoverable", "removable", "disabled", "autoColor", "leftContent"], outputs: ["edited"] }, { type: i1.TuiTooltipComponent, selector: "tui-tooltip", inputs: ["content", "direction", "appearance", "showDelay", "hideDelay", "describeId"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.TuiActiveZoneDirective, selector: "[tuiActiveZone]:not(ng-container), [tuiActiveZoneChange]:not(ng-container), [tuiActiveZoneParent]:not(ng-container)", inputs: ["tuiActiveZoneParent"], outputs: ["tuiActiveZoneChange"], exportAs: ["tuiActiveZone"] }, { type: i1.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { type: i5.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.TuiFocusableDirective, selector: "[tuiFocusable]", inputs: ["tuiFocusable"] }, { type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "async": i3.AsyncPipe }, viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER], changeDetection: i0.ChangeDetectionStrategy.OnPush });
298
298
  __decorate([
299
299
  tuiDefaultProp()
300
300
  ], TuiInputTagComponent.prototype, "separator", void 0);
@@ -446,4 +446,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
446
446
  type: HostBinding,
447
447
  args: [`class._label-outside`]
448
448
  }] } });
449
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGFnLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL2lucHV0LXRhZy9pbnB1dC10YWcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvaW5wdXQtdGFnL2lucHV0LXRhZy50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osV0FBVyxFQUNYLE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxFQUNSLE1BQU0sRUFFTixJQUFJLEVBQ0osV0FBVyxFQUNYLFNBQVMsRUFDVCxZQUFZLEdBQ2YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFDSCwwQkFBMEIsRUFDMUIsb0JBQW9CLEVBQ3BCLG1CQUFtQixFQUNuQixXQUFXLEVBRVgsY0FBYyxFQUNkLFlBQVksRUFDWiwwQkFBMEIsRUFHMUIsY0FBYyxFQUVkLGtCQUFrQixFQUNsQixZQUFZLEVBQ1osb0JBQW9CLEVBQ3BCLGlCQUFpQixFQUNqQixnQkFBZ0IsRUFDaEIsaUJBQWlCLEdBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxhQUFhLEVBQ2IsNkJBQTZCLEVBQzdCLFFBQVEsRUFDUix3QkFBd0IsRUFDeEIsZ0NBQWdDLEVBQ2hDLGlCQUFpQixFQUVqQixvQkFBb0IsRUFFcEIsdUJBQXVCLEVBQ3ZCLDBCQUEwQixFQUMxQixnQkFBZ0IsRUFDaEIscUJBQXFCLEdBSXhCLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFDLGtDQUFrQyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFHM0UsT0FBTyxF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QkFEakIsU0FBUzt1QkFBQyxxQkFBcUI7Z0JBbUQ1QixJQUFJO3NCQURQLFdBQVc7dUJBQUMsZ0JBQWdCO2dCQU16QixZQUFZO3NCQURmLFdBQVc7dUJBQUMsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBPdXRwdXQsXG4gICAgUXVlcnlMaXN0LFxuICAgIFNlbGYsXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdDaGlsZHJlbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge05nQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdFR1aU11bHRpcGxlQ29udHJvbCxcbiAgICBBTFdBWVNfRkFMU0VfSEFORExFUixcbiAgICBBTFdBWVNfVFJVRV9IQU5ETEVSLFxuICAgIEVNUFRZX1FVRVJZLFxuICAgIFR1aUFjdGl2ZVpvbmVEaXJlY3RpdmUsXG4gICAgdHVpQXJyYXlSZW1vdmUsXG4gICAgdHVpQXNDb250cm9sLFxuICAgIHR1aUFzRm9jdXNhYmxlSXRlbUFjY2Vzc29yLFxuICAgIFR1aUJvb2xlYW5IYW5kbGVyLFxuICAgIFR1aUNvbnRleHRXaXRoSW1wbGljaXQsXG4gICAgdHVpRGVmYXVsdFByb3AsXG4gICAgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yLFxuICAgIHR1aUdldEFjdHVhbFRhcmdldCxcbiAgICB0dWlJc0VsZW1lbnQsXG4gICAgdHVpSXNOYXRpdmVGb2N1c2VkSW4sXG4gICAgdHVpUHJldmVudERlZmF1bHQsXG4gICAgVHVpU2Nyb2xsU2VydmljZSxcbiAgICB0dWlUeXBlZEZyb21FdmVudCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIE1PREVfUFJPVklERVIsXG4gICAgVEVYVEZJRUxEX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgVFVJX01PREUsXG4gICAgVFVJX1RFWFRGSUVMRF9BUFBFQVJBTkNFLFxuICAgIFRVSV9URVhURklFTERfV0FUQ0hFRF9DT05UUk9MTEVSLFxuICAgIHR1aUFzRGF0YUxpc3RIb3N0LFxuICAgIFR1aUJyaWdodG5lc3MsXG4gICAgVHVpRGF0YUxpc3REaXJlY3RpdmUsXG4gICAgVHVpRGF0YUxpc3RIb3N0LFxuICAgIFR1aUhpbnRPcHRpb25zRGlyZWN0aXZlLFxuICAgIFR1aUhvc3RlZERyb3Bkb3duQ29tcG9uZW50LFxuICAgIFR1aU1vZGVEaXJlY3RpdmUsXG4gICAgVHVpU2Nyb2xsYmFyQ29tcG9uZW50LFxuICAgIFR1aVNpemVMLFxuICAgIFR1aVNpemVTLFxuICAgIFR1aVRleHRmaWVsZENvbnRyb2xsZXIsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7VHVpU3RyaW5naWZpYWJsZUl0ZW19IGZyb20gJ0B0YWlnYS11aS9raXQvY2xhc3Nlcyc7XG5pbXBvcnQge0ZJWEVEX0RST1BET1dOX0NPTlRST0xMRVJfUFJPVklERVJ9IGZyb20gJ0B0YWlnYS11aS9raXQvcHJvdmlkZXJzJztcbmltcG9ydCB7VHVpU3RhdHVzfSBmcm9tICdAdGFpZ2EtdWkva2l0L3R5cGVzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcbmltcG9ydCB7bWVyZ2UsIE9ic2VydmFibGUsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtmaWx0ZXIsIG1hcCwgbWFwVG8sIHN3aXRjaE1hcCwgdGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7VFVJX0lOUFVUX1RBR19PUFRJT05TLCBUdWlJbnB1dFRhZ09wdGlvbnN9IGZyb20gJy4vaW5wdXQtdGFnLW9wdGlvbnMnO1xuXG5jb25zdCBFVkVOVF9ZX1RPX1hfQ09FRkZJQ0lFTlQgPSAzO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogYHR1aS1pbnB1dC10YWdgLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHRlbXBsYXRlVXJsOiBgLi9pbnB1dC10YWcudGVtcGxhdGUuaHRtbGAsXG4gICAgc3R5bGVVcmxzOiBbYC4vaW5wdXQtdGFnLnN0eWxlLmxlc3NgXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgdHVpQXNGb2N1c2FibGVJdGVtQWNjZXNzb3IoVHVpSW5wdXRUYWdDb21wb25lbnQpLFxuICAgICAgICB0dWlBc0NvbnRyb2woVHVpSW5wdXRUYWdDb21wb25lbnQpLFxuICAgICAgICB0dWlBc0RhdGFMaXN0SG9zdChUdWlJbnB1dFRhZ0NvbXBvbmVudCksXG4gICAgICAgIFRFWFRGSUVMRF9DT05UUk9MTEVSX1BST1ZJREVSLFxuICAgICAgICBNT0RFX1BST1ZJREVSLFxuICAgIF0sXG4gICAgdmlld1Byb3ZpZGVyczogW0ZJWEVEX0RST1BET1dOX0NPTlRST0xMRVJfUFJPVklERVJdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlJbnB1dFRhZ0NvbXBvbmVudFxuICAgIGV4dGVuZHMgQWJzdHJhY3RUdWlNdWx0aXBsZUNvbnRyb2w8c3RyaW5nPlxuICAgIGltcGxlbWVudHMgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yLCBUdWlEYXRhTGlzdEhvc3Q8c3RyaW5nPlxue1xuICAgIEBWaWV3Q2hpbGQoVHVpSG9zdGVkRHJvcGRvd25Db21wb25lbnQpXG4gICAgcHJpdmF0ZSByZWFkb25seSBob3N0ZWREcm9wZG93bj86IFR1aUhvc3RlZERyb3Bkb3duQ29tcG9uZW50O1xuXG4gICAgQFZpZXdDaGlsZChgZm9jdXNhYmxlRWxlbWVudGApXG4gICAgcHJpdmF0ZSByZWFkb25seSBmb2N1c2FibGVFbGVtZW50PzogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICAgIEBWaWV3Q2hpbGQoYHRhZ3NDb250YWluZXJgKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGFnc0NvbnRhaW5lcj86IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgQFZpZXdDaGlsZHJlbihgdGFnYCwge3JlYWQ6IEVsZW1lbnRSZWZ9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGFnczogUXVlcnlMaXN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PiA9IEVNUFRZX1FVRVJZO1xuXG4gICAgQFZpZXdDaGlsZChgY2xlYW5lcmAsIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNsZWFuZXJTdmc/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAgIEBWaWV3Q2hpbGQoVHVpU2Nyb2xsYmFyQ29tcG9uZW50LCB7cmVhZDogRWxlbWVudFJlZn0pXG4gICAgcHJpdmF0ZSByZWFkb25seSBzY3JvbGxCYXI/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2Nyb2xsVG9TdGFydCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgc2Nyb2xsVG9FbmQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBzZXBhcmF0b3I6IHN0cmluZyB8IFJlZ0V4cCA9IHRoaXMub3B0aW9ucy5zZXBhcmF0b3I7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2VhcmNoID0gYGA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgZWRpdGFibGUgPSB0cnVlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHRhZ1ZhbGlkYXRvcjogVHVpQm9vbGVhbkhhbmRsZXI8c3RyaW5nPiA9IEFMV0FZU19UUlVFX0hBTkRMRVI7XG5cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZyhgY2xhc3MuX2V4cGFuZGFibGVgKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgZXhwYW5kYWJsZSA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgaW5wdXRIaWRkZW4gPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB1bmlxdWVUYWdzID0gdGhpcy5vcHRpb25zLnVuaXF1ZVRhZ3M7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgbWF4TGVuZ3RoOiBudW1iZXIgfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBwbGFjZWhvbGRlciA9IGBgO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGRpc2FibGVkSXRlbUhhbmRsZXI6IFR1aUJvb2xlYW5IYW5kbGVyPHN0cmluZyB8IFR1aVN0cmluZ2lmaWFibGVJdGVtPGFueT4+ID1cbiAgICAgICAgQUxXQVlTX0ZBTFNFX0hBTkRMRVI7XG5cbiAgICBASW5wdXQoYHBzZXVkb0ZvY3VzZWRgKVxuICAgIHNldCBwc2V1ZG9Gb2N1c2VkU2V0dGVyKHZhbHVlOiBib29sZWFuIHwgbnVsbCkge1xuICAgICAgICBpZiAoIXZhbHVlICYmICF0aGlzLmZvY3VzZWQpIHtcbiAgICAgICAgICAgIHRoaXMuc2Nyb2xsVG9TdGFydCQubmV4dCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5wc2V1ZG9Gb2N1cyA9IHZhbHVlO1xuICAgIH1cblxuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IHNlYXJjaENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gICAgQENvbnRlbnRDaGlsZChUdWlEYXRhTGlzdERpcmVjdGl2ZSwge3JlYWQ6IFRlbXBsYXRlUmVmfSlcbiAgICByZWFkb25seSBkYXRhbGlzdD86IFRlbXBsYXRlUmVmPFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8VHVpQWN0aXZlWm9uZURpcmVjdGl2ZT4+O1xuXG4gICAgQFZpZXdDaGlsZChgZXJyb3JJY29uYClcbiAgICByZWFkb25seSBlcnJvckljb25UZW1wbGF0ZT86IFRlbXBsYXRlUmVmPFJlY29yZDxzdHJpbmcsIHVua25vd24+PjtcblxuICAgIEBWaWV3Q2hpbGQoVHVpU2Nyb2xsYmFyQ29tcG9uZW50KVxuICAgIHNldCBzY3JvbGxlclNldHRlcihzY3JvbGxlcjogVHVpU2Nyb2xsYmFyQ29tcG9uZW50IHwgbnVsbCkge1xuICAgICAgICB0aGlzLmluaXRTY3JvbGxlclN1YnNjcmlwdGlvbihzY3JvbGxlcik7XG4gICAgfVxuXG4gICAgc3RhdHVzJDogT2JzZXJ2YWJsZTxUdWlTdGF0dXM+ID0gdGhpcy5tb2RlJC5waXBlKG1hcCgoKSA9PiB0aGlzLnN0YXR1cykpO1xuXG4gICAgb3BlbiA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBTZWxmKClcbiAgICAgICAgQEluamVjdChOZ0NvbnRyb2wpXG4gICAgICAgIGNvbnRyb2w6IE5nQ29udHJvbCB8IG51bGwsXG4gICAgICAgIEBJbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgQEluamVjdChUdWlTY3JvbGxTZXJ2aWNlKSBwcml2YXRlIHJlYWRvbmx5IHR1aVNjcm9sbFNlcnZpY2U6IFR1aVNjcm9sbFNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChUVUlfVEVYVEZJRUxEX0FQUEVBUkFOQ0UpIHJlYWRvbmx5IGFwcGVhcmFuY2U6IHN0cmluZyxcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChUdWlNb2RlRGlyZWN0aXZlKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IG1vZGVEaXJlY3RpdmU6IFR1aU1vZGVEaXJlY3RpdmUgfCBudWxsLFxuICAgICAgICBASW5qZWN0KFRVSV9NT0RFKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IG1vZGUkOiBPYnNlcnZhYmxlPFR1aUJyaWdodG5lc3MgfCBudWxsPixcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChUdWlIaW50T3B0aW9uc0RpcmVjdGl2ZSlcbiAgICAgICAgcmVhZG9ubHkgaGludE9wdGlvbnM6IFR1aUhpbnRPcHRpb25zRGlyZWN0aXZlIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChUVUlfVEVYVEZJRUxEX1dBVENIRURfQ09OVFJPTExFUilcbiAgICAgICAgcmVhZG9ubHkgY29udHJvbGxlcjogVHVpVGV4dGZpZWxkQ29udHJvbGxlcixcbiAgICAgICAgQEluamVjdChUVUlfSU5QVVRfVEFHX09QVElPTlMpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogVHVpSW5wdXRUYWdPcHRpb25zLFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBASW5qZWN0KFR1aUhvc3RlZERyb3Bkb3duQ29tcG9uZW50KVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHBhcmVudEhvc3RlZERyb3Bkb3duPzogVHVpSG9zdGVkRHJvcGRvd25Db21wb25lbnQsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGNvbnRyb2wsIGNoYW5nZURldGVjdG9yUmVmKTtcbiAgICB9XG5cbiAgICBnZXQgbmF0aXZlRm9jdXNhYmxlRWxlbWVudCgpOiBIVE1MSW5wdXRFbGVtZW50IHwgbnVsbCB7XG4gICAgICAgIHJldHVybiAhdGhpcy5mb2N1c2FibGVFbGVtZW50IHx8IHRoaXMuY29tcHV0ZWREaXNhYmxlZFxuICAgICAgICAgICAgPyBudWxsXG4gICAgICAgICAgICA6IHRoaXMuZm9jdXNhYmxlRWxlbWVudC5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIGdldCBmb2N1c2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdHVpSXNOYXRpdmVGb2N1c2VkSW4odGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpIHx8XG4gICAgICAgICAgICAhIXRoaXMuaG9zdGVkRHJvcGRvd24/LmZvY3VzZWRcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoYGF0dHIuZGF0YS1zaXplYClcbiAgICBnZXQgc2l6ZSgpOiBUdWlTaXplTCB8IFR1aVNpemVTIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udHJvbGxlci5zaXplO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZyhgY2xhc3MuX2xhYmVsLW91dHNpZGVgKVxuICAgIGdldCBsYWJlbE91dHNpZGUoKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IHtzaXplLCBsYWJlbE91dHNpZGV9ID0gdGhpcy5jb250cm9sbGVyO1xuXG4gICAgICAgIHJldHVybiBzaXplID09PSBgc2AgfHwgbGFiZWxPdXRzaWRlO1xuICAgIH1cblxuICAgIGdldCBpY29uKCk6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxUdWlTaXplUyB8IFR1aVNpemVMPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250cm9sbGVyLmljb247XG4gICAgfVxuXG4gICAgZ2V0IGljb25MZWZ0KCk6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxUdWlTaXplUyB8IFR1aVNpemVMPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250cm9sbGVyLmljb25MZWZ0O1xuICAgIH1cblxuICAgIGdldCBoYXNDbGVhbmVyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250cm9sbGVyLmNsZWFuZXIgJiYgdGhpcy5oYXNWYWx1ZSAmJiB0aGlzLmludGVyYWN0aXZlO1xuICAgIH1cblxuICAgIGdldCBoYXNOYXRpdmVWYWx1ZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5zZWFyY2g7XG4gICAgfVxuXG4gICAgZ2V0IGhhc1ZhbHVlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLnZhbHVlLmxlbmd0aCB8fCB0aGlzLmhhc05hdGl2ZVZhbHVlO1xuICAgIH1cblxuICAgIGdldCBoYXNQbGFjZWhvbGRlcigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICF0aGlzLmxhYmVsT3V0c2lkZSB8fFxuICAgICAgICAgICAgKCF0aGlzLmhhc1ZhbHVlICYmICghdGhpcy5oYXNFeGFtcGxlVGV4dCB8fCB0aGlzLmlucHV0SGlkZGVuKSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgcGxhY2Vob2xkZXJSYWlzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAhdGhpcy5sYWJlbE91dHNpZGUgJiZcbiAgICAgICAgICAgICgodGhpcy5jb21wdXRlZEZvY3VzZWQgJiYgIXRoaXMucmVhZE9ubHkpIHx8IHRoaXMuaGFzVmFsdWUpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IGhhc0V4YW1wbGVUZXh0KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgISF0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQ/LnBsYWNlaG9sZGVyICYmXG4gICAgICAgICAgICB0aGlzLmNvbXB1dGVkRm9jdXNlZCAmJlxuICAgICAgICAgICAgIXRoaXMuaGFzVmFsdWUgJiZcbiAgICAgICAgICAgICF0aGlzLnJlYWRPbmx5XG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IGhhc1JpZ2h0SWNvbnMoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLmhhc0NsZWFuZXIgfHxcbiAgICAgICAgICAgICEhdGhpcy5pY29uIHx8XG4gICAgICAgICAgICAoISF0aGlzLmhpbnRPcHRpb25zPy5jb250ZW50ICYmICF0aGlzLmNvbXB1dGVkRGlzYWJsZWQpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IHN0YXR1cygpOiBUdWlTdGF0dXMge1xuICAgICAgICByZXR1cm4gdGhpcy5tb2RlRGlyZWN0aXZlPy5tb2RlID8gYGRlZmF1bHRgIDogdGhpcy5vcHRpb25zLnRhZ1N0YXR1cztcbiAgICB9XG5cbiAgICBnZXQgY2FuT3BlbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaW50ZXJhY3RpdmUgJiYgISF0aGlzLmRhdGFsaXN0O1xuICAgIH1cblxuICAgIGdldExlZnRDb250ZW50KHRhZzogc3RyaW5nKTogUG9seW1vcnBoZXVzQ29udGVudCB7XG4gICAgICAgIHJldHVybiAhdGhpcy50YWdWYWxpZGF0b3IodGFnKSAmJiB0aGlzLmVycm9ySWNvblRlbXBsYXRlXG4gICAgICAgICAgICA/IHRoaXMuZXJyb3JJY29uVGVtcGxhdGVcbiAgICAgICAgICAgIDogYGA7XG4gICAgfVxuXG4gICAgb25DbGVhbmVyQ2xpY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlU2VhcmNoKGBgKTtcbiAgICAgICAgdGhpcy5jbGVhcigpO1xuICAgICAgICB0aGlzLmZvY3VzSW5wdXQoKTtcbiAgICAgICAgdGhpcy5wYXJlbnRIb3N0ZWREcm9wZG93bj8udXBkYXRlT3Blbih0cnVlKTtcbiAgICB9XG5cbiAgICBvbkFjdGl2ZVpvbmUoYWN0aXZlOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMub3BlbiA9IGZhbHNlO1xuICAgICAgICB0aGlzLmFkZFRhZygpO1xuICAgICAgICB0aGlzLnVwZGF0ZUZvY3VzZWQoYWN0aXZlKTtcblxuICAgICAgICBpZiAoIXRoaXMuY29tcHV0ZWRGb2N1c2VkKSB7XG4gICAgICAgICAgICB0aGlzLnNjcm9sbFRvU3RhcnQkLm5leHQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uTW91c2VEb3duKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGFjdHVhbFRhcmdldCA9IHR1aUdldEFjdHVhbFRhcmdldChldmVudCk7XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgIXRoaXMuZm9jdXNhYmxlRWxlbWVudCB8fFxuICAgICAgICAgICAgYWN0dWFsVGFyZ2V0ID09PSB0aGlzLmZvY3VzYWJsZUVsZW1lbnQubmF0aXZlRWxlbWVudCB8fFxuICAgICAgICAgICAgIXR1aUlzRWxlbWVudChldmVudC50YXJnZXQpIHx8XG4gICAgICAgICAgICB0aGlzLmNsZWFuZXJTdmc/Lm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSB8fFxuICAgICAgICAgICAgKHRoaXMudGFnc0NvbnRhaW5lciAmJlxuICAgICAgICAgICAgICAgIGFjdHVhbFRhcmdldCAhPT0gdGhpcy50YWdzQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQgJiZcbiAgICAgICAgICAgICAgICB0aGlzLnRhZ3NDb250YWluZXIubmF0aXZlRWxlbWVudC5jb250YWlucyhhY3R1YWxUYXJnZXQpKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMuZm9jdXNJbnB1dCgpO1xuICAgIH1cblxuICAgIG9uRmllbGRLZXlEb3duQmFja3NwYWNlKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMubGFiZWxPdXRzaWRlICYmICF0aGlzLmhhc05hdGl2ZVZhbHVlICYmIHRoaXMudmFsdWUubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmRlbGV0ZUxhc3RFbmFibGVkSXRlbSgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vbkZpZWxkS2V5RG93bkFycm93TGVmdChldmVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkZpZWxkS2V5RG93bkFycm93TGVmdChldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmxhYmVsT3V0c2lkZSB8fCB0aGlzLmhhc05hdGl2ZVZhbHVlIHx8ICF0aGlzLnZhbHVlLmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy50YWdzLmxhc3QubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cblxuICAgIG9uRmllbGRLZXlEb3duRW50ZXIoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuYWRkVGFnKCk7XG4gICAgICAgIHRoaXMuc2Nyb2xsVG9FbmQkLm5leHQoKTtcbiAgICB9XG5cbiAgICBvblRhZ0tleURvd25BcnJvd0xlZnQoY3VycmVudEluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgaWYgKGN1cnJlbnRJbmRleCA+IDApIHtcbiAgICAgICAgICAgIHRoaXMub25TY3JvbGxLZXlEb3duKGN1cnJlbnRJbmRleCwgLTEpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25UYWdLZXlEb3duQXJyb3dSaWdodChjdXJyZW50SW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBpZiAoY3VycmVudEluZGV4ID09PSB0aGlzLnZhbHVlLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAgIHRoaXMuZm9jdXNJbnB1dCgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vblNjcm9sbEtleURvd24oY3VycmVudEluZGV4LCAxKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uVGFnRWRpdGVkKHZhbHVlOiBzdHJpbmcsIGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mb2N1c0lucHV0KCk7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUoXG4gICAgICAgICAgICB0aGlzLnZhbHVlXG4gICAgICAgICAgICAgICAgLm1hcCgodGFnLCB0YWdJbmRleCkgPT5cbiAgICAgICAgICAgICAgICAgICAgdGFnSW5kZXggIT09IGluZGV4XG4gICAgICAgICAgICAgICAgICAgICAgICA/IHRhZ1xuICAgICAgICAgICAgICAgICAgICAgICAgOiB2YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnNwbGl0KHRoaXMuc2VwYXJhdG9yKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1hcCh0YWcgPT4gdGFnLnRyaW0oKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5maWx0ZXIoQm9vbGVhbiksXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIC5yZWR1Y2U8c3RyaW5nW10+KFxuICAgICAgICAgICAgICAgICAgICAocmVzdWx0LCBpdGVtOiBzdHJpbmcgfCBzdHJpbmdbXSkgPT4gcmVzdWx0LmNvbmNhdChpdGVtKSxcbiAgICAgICAgICAgICAgICAgICAgW10sXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBoYW5kbGVPcHRpb24oaXRlbTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZm9jdXNJbnB1dCgpO1xuICAgICAgICB0aGlzLnVwZGF0ZVNlYXJjaChgYCk7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUodGhpcy52YWx1ZS5jb25jYXQoaXRlbSkpO1xuICAgICAgICB0aGlzLm9wZW4gPSBmYWxzZTtcbiAgICAgICAgdGhpcy5zY3JvbGxUb0VuZCQubmV4dCgpO1xuICAgIH1cblxuICAgIG9uSW5wdXQodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBjb25zdCBhcnJheSA9IHZhbHVlLnNwbGl0KHRoaXMuc2VwYXJhdG9yKTtcbiAgICAgICAgY29uc3QgdGFncyA9IGFycmF5XG4gICAgICAgICAgICAubWFwKGl0ZW0gPT4gaXRlbS50cmltKCkpXG4gICAgICAgICAgICAuZmlsdGVyKChpdGVtLCBpbmRleCwge2xlbmd0aH0pID0+IGl0ZW0ubGVuZ3RoID4gMCAmJiBpbmRleCAhPT0gbGVuZ3RoIC0gMSk7XG4gICAgICAgIGNvbnN0IHZhbGlkYXRlZCA9IHRhZ3MuZmlsdGVyKHRhZyA9PiAhdGhpcy5kaXNhYmxlZEl0ZW1IYW5kbGVyKHRhZykpO1xuXG4gICAgICAgIGlmIChhcnJheS5sZW5ndGggPiAxKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVNlYXJjaChhcnJheVthcnJheS5sZW5ndGggLSAxXS50cmltKCkpO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVWYWx1ZShbLi4udGhpcy52YWx1ZSwgLi4udmFsaWRhdGVkXSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVNlYXJjaCh2YWx1ZSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm9wZW4gPSB0aGlzLmhhc05hdGl2ZVZhbHVlO1xuICAgIH1cblxuICAgIG92ZXJyaWRlIHNldERpc2FibGVkU3RhdGUoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLnNldERpc2FibGVkU3RhdGUoKTtcbiAgICAgICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gICAgfVxuXG4gICAgdHJhY2tCeUZuKF86IG51bWJlciwgdGFnOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICAvLyBBY3R1YWxseSB0YWcgaGFzIFR1aVN0cmluZ2lmaWFibGVJdGVtIHR5cGUgbm90IHN0cmluZ1xuICAgICAgICByZXR1cm4gdGFnLnRvU3RyaW5nKCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIHVwZGF0ZVZhbHVlKHZhbHVlOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgICAgICBjb25zdCBzZWVuID0gbmV3IFNldCgpO1xuXG4gICAgICAgIHN1cGVyLnVwZGF0ZVZhbHVlKFxuICAgICAgICAgICAgdmFsdWVcbiAgICAgICAgICAgICAgICAucmV2ZXJzZSgpXG4gICAgICAgICAgICAgICAgLmZpbHRlcihcbiAgICAgICAgICAgICAgICAgICAgaXRlbSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgIXRoaXMudW5pcXVlVGFncyB8fCAoISFpdGVtICYmICFzZWVuLmhhcyhpdGVtKSAmJiBzZWVuLmFkZChpdGVtKSksXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIC5yZXZlcnNlKCksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvblNjcm9sbEtleURvd24oY3VycmVudEluZGV4OiBudW1iZXIsIGZsYWc6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBjb25zdCB0YWcgPSB0aGlzLnRhZ3MuZmluZCgoX2l0ZW0sIGluZGV4KSA9PiBpbmRleCA9PT0gY3VycmVudEluZGV4ICsgZmxhZyk7XG5cbiAgICAgICAgaWYgKCF0YWcgfHwgIXRoaXMuc2Nyb2xsQmFyKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0YWcubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIGZsYWcgKiB0aGlzLnNjcm9sbEJhci5uYXRpdmVFbGVtZW50LmNsaWVudFdpZHRoIC1cbiAgICAgICAgICAgICAgICBmbGFnICogdGFnLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdCAtXG4gICAgICAgICAgICAgICAgdGFnLm5hdGl2ZUVsZW1lbnQuY2xpZW50V2lkdGggPFxuICAgICAgICAgICAgMFxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMuc2Nyb2xsQmFyLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsTGVmdCArPVxuICAgICAgICAgICAgICAgIGZsYWcgKiB0YWcubmF0aXZlRWxlbWVudC5jbGllbnRXaWR0aDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdFNjcm9sbGVyU3Vic2NyaXB0aW9uKHNjcm9sbGVyOiBUdWlTY3JvbGxiYXJDb21wb25lbnQgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIGlmICghc2Nyb2xsZXI/LmJyb3dzZXJTY3JvbGxSZWYpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHtuYXRpdmVFbGVtZW50fSA9IHNjcm9sbGVyLmJyb3dzZXJTY3JvbGxSZWY7XG5cbiAgICAgICAgY29uc3Qgd2hlZWwkID0gdHVpVHlwZWRGcm9tRXZlbnQobmF0aXZlRWxlbWVudCwgYHdoZWVsYCwge3Bhc3NpdmU6IGZhbHNlfSkucGlwZShcbiAgICAgICAgICAgIGZpbHRlcihldmVudCA9PiBldmVudC5kZWx0YVggPT09IDAgJiYgdGhpcy5zaG91bGRTY3JvbGwobmF0aXZlRWxlbWVudCkpLFxuICAgICAgICAgICAgdHVpUHJldmVudERlZmF1bHQoKSxcbiAgICAgICAgICAgIG1hcCgoe2RlbHRhWX0pID0+XG4gICAgICAgICAgICAgICAgTWF0aC5tYXgobmF0aXZlRWxlbWVudC5zY3JvbGxMZWZ0ICsgZGVsdGFZICogRVZFTlRfWV9UT19YX0NPRUZGSUNJRU5ULCAwKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IHN0YXJ0JCA9IHRoaXMuc2Nyb2xsVG9TdGFydCQucGlwZShtYXBUbygwKSk7XG4gICAgICAgIGNvbnN0IGVuZCQgPSB0aGlzLnNjcm9sbFRvRW5kJC5waXBlKG1hcCgoKSA9PiBuYXRpdmVFbGVtZW50LnNjcm9sbFdpZHRoKSk7XG5cbiAgICAgICAgbWVyZ2Uod2hlZWwkLCBzdGFydCQsIGVuZCQpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAobGVmdCA9PiB0aGlzLnR1aVNjcm9sbFNlcnZpY2Uuc2Nyb2xsJChuYXRpdmVFbGVtZW50LCAwLCBsZWZ0KSksXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlU2VhcmNoKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZm9jdXNhYmxlRWxlbWVudCkge1xuICAgICAgICAgICAgdGhpcy5mb2N1c2FibGVFbGVtZW50Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2VhcmNoID0gdmFsdWU7XG4gICAgICAgIHRoaXMuc2VhcmNoQ2hhbmdlLmVtaXQodmFsdWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2hvdWxkU2Nyb2xsKHtzY3JvbGxXaWR0aCwgb2Zmc2V0V2lkdGh9OiBIVE1MRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gc2Nyb2xsV2lkdGggPiBvZmZzZXRXaWR0aDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFkZFRhZygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaW5wdXRWYWx1ZSA9IHRoaXMuc2VhcmNoLnRyaW0oKTtcblxuICAgICAgICBpZiAoIWlucHV0VmFsdWUgfHwgdGhpcy5kaXNhYmxlZEl0ZW1IYW5kbGVyKGlucHV0VmFsdWUpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnVwZGF0ZVNlYXJjaChgYCk7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUodGhpcy52YWx1ZS5jb25jYXQoaW5wdXRWYWx1ZSkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZGVsZXRlTGFzdEVuYWJsZWRJdGVtKCk6IHZvaWQge1xuICAgICAgICBmb3IgKGxldCBpbmRleCA9IHRoaXMudmFsdWUubGVuZ3RoIC0gMTsgaW5kZXggPj0gMDsgaW5kZXgtLSkge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkSXRlbUhhbmRsZXIodGhpcy52YWx1ZVtpbmRleF0pKSB7XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVWYWx1ZSh0dWlBcnJheVJlbW92ZSh0aGlzLnZhbHVlLCBpbmRleCkpO1xuXG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGZvY3VzSW5wdXQocHJldmVudFNjcm9sbDogYm9vbGVhbiA9IGZhbHNlKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudC5mb2N1cyh7cHJldmVudFNjcm9sbH0pO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImhpbnRPcHRpb25zPy5jaGFuZ2UkIHwgYXN5bmNcIj48L25nLWNvbnRhaW5lcj5cbjx0dWktaG9zdGVkLWRyb3Bkb3duXG4gICAgY2xhc3M9XCJ0LWhvc3RlZFwiXG4gICAgW2Nhbk9wZW5dPVwiY2FuT3BlblwiXG4gICAgW2NvbnRlbnRdPVwiZGF0YWxpc3QgfHwgJydcIlxuICAgIFsob3BlbildPVwib3BlblwiXG4gICAgKHR1aUFjdGl2ZVpvbmVDaGFuZ2UpPVwib25BY3RpdmVab25lKCRldmVudClcIlxuPlxuICAgIDxkaXZcbiAgICAgICAgdHVpV3JhcHBlclxuICAgICAgICBbYXBwZWFyYW5jZV09XCJhcHBlYXJhbmNlXCJcbiAgICAgICAgW3JlYWRPbmx5XT1cInJlYWRPbmx5XCJcbiAgICAgICAgW2ZvY3VzXT1cImNvbXB1dGVkRm9jdXNlZFwiXG4gICAgICAgIFtob3Zlcl09XCJwc2V1ZG9Ib3ZlclwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJjb21wdXRlZERpc2FibGVkXCJcbiAgICAgICAgW2ludmFsaWRdPVwiY29tcHV0ZWRJbnZhbGlkXCJcbiAgICAgICAgKG1vdXNlZG93bik9XCJvbk1vdXNlRG93bigkZXZlbnQpXCJcbiAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0LWNvbnRlbnRcIj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAqbmdJZj1cImljb25MZWZ0XCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtaWNvbnMgdC1pY29uc19sZWZ0XCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8dHVpLXN2Z1xuICAgICAgICAgICAgICAgICAgICAqcG9seW1vcnBoZXVzT3V0bGV0PVwiaWNvbkxlZnQgYXMgc3JjOyBjb250ZXh0OiB7JGltcGxpY2l0OiBzaXplfVwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidC1pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgW3NyY109XCJzcmNcIlxuICAgICAgICAgICAgICAgID48L3R1aS1zdmc+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0LXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidC1hYnNvbHV0ZS13cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaGFzUGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1pbnB1dC10YWdfX3BsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidC1wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MudC1wbGFjZWhvbGRlcl9yYWlzZWRdPVwicGxhY2Vob2xkZXJSYWlzZWRcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDx0dWktc2Nyb2xsYmFyXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIWV4cGFuZGFibGU7IGVsc2UgaXRlbXNcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInQtc2Nyb2xsYmFyXCJcbiAgICAgICAgICAgICAgICAgICAgW2hpZGRlbl09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiaXRlbXNcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L3R1aS1zY3JvbGxiYXI+XG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNpdGVtcz5cbiAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgI3RhZ3NDb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidC10YWdzXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImxhYmVsT3V0c2lkZTsgZWxzZSB0ZXh0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHR1aS10YWdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgdmFsdWU7IGluZGV4IGFzIGluZGV4OyB0cmFja0J5OiB0cmFja0J5Rm5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjdGFnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktaW5wdXQtdGFnX190YWdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInQtdGFnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3N0YXR1c109XCIoc3RhdHVzJCB8IGFzeW5jKSFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGVmdENvbnRlbnRdPVwiZ2V0TGVmdENvbnRlbnQoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHVpRm9jdXNhYmxlXT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImNvbXB1dGVkRGlzYWJsZWQgfHwgZGlzYWJsZWRJdGVtSGFuZGxlcihpdGVtKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtlZGl0YWJsZV09XCJlZGl0YWJsZSAmJiAhcmVhZE9ubHlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaG92ZXJhYmxlXT1cIiFyZWFkT25seVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZW1vdmFibGVdPVwiIXJlYWRPbmx5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NlcGFyYXRvcl09XCJzZXBhcmF0b3JcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbWF4TGVuZ3RoXT1cIm1heExlbmd0aFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzaXplXT1cImNvbnRyb2xsZXIuc2l6ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJpdGVtLnRvU3RyaW5nKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZWRpdGVkKT1cIm9uVGFnRWRpdGVkKCRldmVudCwgaW5kZXgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGtleWRvd24uYXJyb3dMZWZ0LnByZXZlbnQpPVwib25UYWdLZXlEb3duQXJyb3dMZWZ0KGluZGV4KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChrZXlkb3duLmFycm93UmlnaHQucHJldmVudCk9XCJvblRhZ0tleURvd25BcnJvd1JpZ2h0KGluZGV4KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvdHVpLXRhZz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICN0ZXh0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIHZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0LXRleHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MudC10ZXh0X2Rpc2FibGVkXT1cImRpc2FibGVkSXRlbUhhbmRsZXIoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MudC10ZXh0X2Vycm9yXT1cIiF0YWdWYWxpZGF0b3IoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdGV4dENvbnRlbnRdPVwiaXRlbVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0LWlucHV0LXdyYXBwZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy50LWlucHV0LXdyYXBwZXJfY29sbGFwc2VkXT1cImNvbXB1dGVkRGlzYWJsZWQgfHwgcmVhZE9ubHkgfHwgaW5wdXRIaWRkZW5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0LWdob3N0XCI+e3sgc2VhcmNoIH19PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmb2N1c2FibGVFbGVtZW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1pbnB1dC10YWdfX25hdGl2ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidC1uYXRpdmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MudC1uYXRpdmVfaGlkZGVuXT1cImlucHV0SGlkZGVuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIubWF4TGVuZ3RoXT1cIm1heExlbmd0aFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpZF09XCJpZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJjb21wdXRlZERpc2FibGVkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRPbmx5XT1cInJlYWRPbmx5IHx8IGlucHV0SGlkZGVuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3R1aUZvY3VzYWJsZV09XCJjb21wdXRlZEZvY3VzYWJsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cInNlYXJjaFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uSW5wdXQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChrZXlkb3duLmFycm93TGVmdCk9XCJvbkZpZWxkS2V5RG93bkFycm93TGVmdCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGtleWRvd24uYmFja3NwYWNlKT1cIm9uRmllbGRLZXlEb3duQmFja3NwYWNlKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoa2V5ZG93bi5lbnRlci5wcmV2ZW50KT1cIm9uRmllbGRLZXlEb3duRW50ZXIoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgKm5nSWY9XCJoYXNSaWdodEljb25zXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtaWNvbnMgdC1pY29uc19yaWdodFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHR1aS1zdmdcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJoYXNDbGVhbmVyXCJcbiAgICAgICAgICAgICAgICAgICAgI2NsZWFuZXJcbiAgICAgICAgICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1pbnB1dC10YWdfX2NsZWFuZXJcIlxuICAgICAgICAgICAgICAgICAgICBzcmM9XCJ0dWlJY29uQ2xvc2VMYXJnZVwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidC1jbGVhbmVyXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrLnN0b3ApPVwib25DbGVhbmVyQ2xpY2soKVwiXG4gICAgICAgICAgICAgICAgPjwvdHVpLXN2Zz5cbiAgICAgICAgICAgICAgICA8dHVpLXRvb2x0aXBcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJoaW50T3B0aW9ucyAmJiBoaW50T3B0aW9ucy5jb250ZW50ICYmICFjb21wdXRlZERpc2FibGVkXCJcbiAgICAgICAgICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1pbnB1dC10YWdfX3Rvb2x0aXBcIlxuICAgICAgICAgICAgICAgICAgICBkZXNjcmliZUlkPVwicGxhY2Vob2xlcl91bnRpbF9hY2Nlc2liaWxpdHlfaXNfYWRkZWRcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInQtdG9vbHRpcFwiXG4gICAgICAgICAgICAgICAgICAgIFtkaXJlY3Rpb25dPVwiaGludE9wdGlvbnMuZGlyZWN0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgW2FwcGVhcmFuY2VdPVwiaGludE9wdGlvbnMuYXBwZWFyYW5jZVwiXG4gICAgICAgICAgICAgICAgICAgIFtjb250ZW50XT1cImhpbnRPcHRpb25zLmNvbnRlbnRcIlxuICAgICAgICAgICAgICAgICAgICBbc2hvd0RlbGF5XT1cImhpbnRPcHRpb25zLnNob3dEZWxheVwiXG4gICAgICAgICAgICAgICAgICAgIFtoaWRlRGVsYXldPVwiaGludE9wdGlvbnMuaGlkZURlbGF5XCJcbiAgICAgICAgICAgICAgICA+PC90dWktdG9vbHRpcD5cbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaWNvblwiPlxuICAgICAgICAgICAgICAgICAgICA8dHVpLXN2Z1xuICAgICAgICAgICAgICAgICAgICAgICAgKnBvbHltb3JwaGV1c091dGxldD1cImljb24gYXMgc3JjOyBjb250ZXh0OiB7JGltcGxpY2l0OiBzaXplfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInQtaWNvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbc3JjXT1cInNyY1wiXG4gICAgICAgICAgICAgICAgICAgID48L3R1aS1zdmc+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjZXJyb3JJY29uPlxuICAgICAgICAgICAgPHR1aS1zdmdcbiAgICAgICAgICAgICAgICBzcmM9XCJ0dWlJY29uQXR0ZW50aW9uXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtZXJyb3ItaWNvblwiXG4gICAgICAgICAgICA+PC90dWktc3ZnPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvZGl2PlxuPC90dWktaG9zdGVkLWRyb3Bkb3duPlxuIl19
449
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGFnLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL2lucHV0LXRhZy9pbnB1dC10YWcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvaW5wdXQtdGFnL2lucHV0LXRhZy50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osV0FBVyxFQUNYLE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxFQUNSLE1BQU0sRUFFTixJQUFJLEVBQ0osV0FBVyxFQUNYLFNBQVMsRUFDVCxZQUFZLEdBQ2YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFDSCwwQkFBMEIsRUFDMUIsb0JBQW9CLEVBQ3BCLG1CQUFtQixFQUNuQixXQUFXLEVBRVgsY0FBYyxFQUNkLFlBQVksRUFDWiwwQkFBMEIsRUFHMUIsY0FBYyxFQUVkLGtCQUFrQixFQUNsQixZQUFZLEVBQ1osb0JBQW9CLEVBQ3BCLGlCQUFpQixFQUNqQixnQkFBZ0IsRUFDaEIsaUJBQWlCLEdBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxhQUFhLEVBQ2IsNkJBQTZCLEVBQzdCLFFBQVEsRUFDUix3QkFBd0IsRUFDeEIsZ0NBQWdDLEVBQ2hDLGlCQUFpQixFQUVqQixvQkFBb0IsRUFFcEIsdUJBQXVCLEVBQ3ZCLDBCQUEwQixFQUMxQixnQkFBZ0IsRUFDaEIscUJBQXFCLEdBSXhCLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFDLGtDQUFrQyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFHM0UsT0FBTyxFQUFDLEtBQUssRUFBYyxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDaEQsT0FBTyxFQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4RSxPQUFPLEVBQUMscUJBQXFCLEVBQXFCLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7OztBQUU5RSxNQUFNLHdCQUF3QixHQUFHLENBQUMsQ0FBQztBQWdCbkMsTUFBTSxPQUFPLG9CQUNULFNBQVEsMEJBQWtDO0lBNkYxQyxZQUlJLE9BQXlCLEVBQ0UsaUJBQW9DLEVBQ3BCLGdCQUFrQyxFQUN4QyxVQUFtQyxFQUM3QixVQUFrQixFQUc1QyxhQUFzQyxFQUV0QyxLQUF1QyxFQUcvQyxXQUEyQyxFQUUzQyxVQUFrQyxFQUUxQixPQUEyQixFQUczQixvQkFBaUQ7UUFFbEUsS0FBSyxDQUFDLE9BQU8sRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1FBbkJTLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDeEMsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFDN0IsZUFBVSxHQUFWLFVBQVUsQ0FBUTtRQUc1QyxrQkFBYSxHQUFiLGFBQWEsQ0FBeUI7UUFFdEMsVUFBSyxHQUFMLEtBQUssQ0FBa0M7UUFHL0MsZ0JBQVcsR0FBWCxXQUFXLENBQWdDO1FBRTNDLGVBQVUsR0FBVixVQUFVLENBQXdCO1FBRTFCLFlBQU8sR0FBUCxPQUFPLENBQW9CO1FBRzNCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBNkI7UUF2R3JELFNBQUksR0FBdUMsV0FBVyxDQUFDO1FBUXZELG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUNyQyxpQkFBWSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFJcEQsY0FBUyxHQUFvQixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQztRQUlwRCxXQUFNLEdBQUcsRUFBRSxDQUFDO1FBSVosYUFBUSxHQUFHLElBQUksQ0FBQztRQUloQixpQkFBWSxHQUE4QixtQkFBbUIsQ0FBQztRQUs5RCxlQUFVLEdBQUcsSUFBSSxDQUFDO1FBSWxCLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBSXBCLGVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQztRQUlyQyxjQUFTLEdBQWtCLElBQUksQ0FBQztRQUloQyxnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUlqQix3QkFBbUIsR0FDZixvQkFBb0IsQ0FBQztRQVloQixpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFhbkQsWUFBTyxHQUEwQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFFekUsU0FBSSxHQUFHLEtBQUssQ0FBQztJQTRCYixDQUFDO0lBckRELElBQ0ksbUJBQW1CLENBQUMsS0FBcUI7UUFDekMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDekIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUM5QjtRQUVELElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO0lBQzdCLENBQUM7SUFXRCxJQUNJLGNBQWMsQ0FBQyxRQUFzQztRQUNyRCxJQUFJLENBQUMsd0JBQXdCLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQWtDRCxJQUFJLHNCQUFzQjtRQUN0QixPQUFPLENBQUMsSUFBSSxDQUFDLGdCQUFnQixJQUFJLElBQUksQ0FBQyxnQkFBZ0I7WUFDbEQsQ0FBQyxDQUFDLElBQUk7WUFDTixDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQztJQUM5QyxDQUFDO0lBRUQsSUFBSSxPQUFPOztRQUNQLE9BQU8sQ0FDSCxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQztZQUNuRCxDQUFDLENBQUMsQ0FBQSxNQUFBLElBQUksQ0FBQyxjQUFjLDBDQUFFLE9BQU8sQ0FBQSxDQUNqQyxDQUFDO0lBQ04sQ0FBQztJQUVELElBQ0ksSUFBSTtRQUNKLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQ0ksWUFBWTtRQUNaLE1BQU0sRUFBQyxJQUFJLEVBQUUsWUFBWSxFQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUU3QyxPQUFPLElBQUksS0FBSyxHQUFHLElBQUksWUFBWSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDSixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDUixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDO0lBQ3BDLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDVixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUN4RSxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2QsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1IsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2QsT0FBTyxDQUNILENBQUMsSUFBSSxDQUFDLFlBQVk7WUFDbEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQ2pFLENBQUM7SUFDTixDQUFDO0lBRUQsSUFBSSxpQkFBaUI7UUFDakIsT0FBTyxDQUNILENBQUMsSUFBSSxDQUFDLFlBQVk7WUFDbEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUM5RCxDQUFDO0lBQ04sQ0FBQztJQUVELElBQUksY0FBYzs7UUFDZCxPQUFPLENBQ0gsQ0FBQyxDQUFDLENBQUEsTUFBQSxJQUFJLENBQUMsc0JBQXNCLDBDQUFFLFdBQVcsQ0FBQTtZQUMxQyxJQUFJLENBQUMsZUFBZTtZQUNwQixDQUFDLElBQUksQ0FBQyxRQUFRO1lBQ2QsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUNqQixDQUFDO0lBQ04sQ0FBQztJQUVELElBQUksYUFBYTs7UUFDYixPQUFPLENBQ0gsSUFBSSxDQUFDLFVBQVU7WUFDZixDQUFDLENBQUMsSUFBSSxDQUFDLElBQUk7WUFDWCxDQUFDLENBQUMsQ0FBQyxDQUFBLE1BQUEsSUFBSSxDQUFDLFdBQVcsMENBQUUsT0FBTyxDQUFBLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FDMUQsQ0FBQztJQUNOLENBQUM7SUFFRCxJQUFJLE1BQU07O1FBQ04sT0FBTyxDQUFBLE1BQUEsSUFBSSxDQUFDLGFBQWEsMENBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDO0lBQ3pFLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDUCxPQUFPLElBQUksQ0FBQyxXQUFXLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDL0MsQ0FBQztJQUVELGNBQWMsQ0FBQyxHQUFXO1FBQ3RCLE9BQU8sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQyxpQkFBaUI7WUFDcEQsQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUI7WUFDeEIsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNiLENBQUM7SUFFRCxjQUFjOztRQUNWLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdEIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2IsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2xCLE1BQUEsSUFBSSxDQUFDLG9CQUFvQiwwQ0FBRSxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELFlBQVksQ0FBQyxNQUFlO1FBQ3hCLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNkLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDdkIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUM5QjtJQUNMLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBaUI7O1FBQ3pCLE1BQU0sWUFBWSxHQUFHLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRS9DLElBQ0ksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCO1lBQ3RCLFlBQVksS0FBSyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYTtZQUNwRCxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO2FBQzNCLE1BQUEsSUFBSSxDQUFDLFVBQVUsMENBQUUsYUFBYSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUE7WUFDckQsQ0FBQyxJQUFJLENBQUMsYUFBYTtnQkFDZixZQUFZLEtBQUssSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhO2dCQUNqRCxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsRUFDOUQ7WUFDRSxPQUFPO1NBQ1Y7UUFFRCxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxLQUFZO1FBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRTtZQUNqRSxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztTQUNoQzthQUFNO1lBQ0gsSUFBSSxDQUFDLHVCQUF1QixDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3ZDO0lBQ0wsQ0FBQztJQUVELHVCQUF1QixDQUFDLEtBQVk7UUFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQ2pFLE9BQU87U0FDVjtRQUVELEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDekMsQ0FBQztJQUVELG1CQUFtQjtRQUNmLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNkLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELHFCQUFxQixDQUFDLFlBQW9CO1FBQ3RDLElBQUksWUFBWSxHQUFHLENBQUMsRUFBRTtZQUNsQixJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQzFDO0lBQ0wsQ0FBQztJQUVELHNCQUFzQixDQUFDLFlBQW9CO1FBQ3ZDLElBQUksWUFBWSxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUN4QyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7U0FDckI7YUFBTTtZQUNILElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQ3pDO0lBQ0wsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFhLEVBQUUsS0FBYTtRQUNwQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLFdBQVcsQ0FDWixJQUFJLENBQUMsS0FBSzthQUNMLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUUsRUFBRSxDQUNuQixRQUFRLEtBQUssS0FBSztZQUNkLENBQUMsQ0FBQyxHQUFHO1lBQ0wsQ0FBQyxDQUFDLEtBQUs7aUJBQ0EsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7aUJBQ3JCLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztpQkFDdEIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUM3QjthQUNBLE1BQU0sQ0FDSCxDQUFDLE1BQU0sRUFBRSxJQUF1QixFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUN4RCxFQUFFLENBQ0wsQ0FDUixDQUFDO0lBQ04sQ0FBQztJQUVELFlBQVksQ0FBQyxJQUFZO1FBQ3JCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUNsQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxPQUFPLENBQUMsS0FBYTtRQUNqQixNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMxQyxNQUFNLElBQUksR0FBRyxLQUFLO2FBQ2IsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO2FBQ3hCLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBQyxNQUFNLEVBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksS0FBSyxLQUFLLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNoRixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUVyRSxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUNsRCxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQztTQUNuRDthQUFNO1lBQ0gsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM1QjtRQUVELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUNwQyxDQUFDO0lBRVEsZ0JBQWdCO1FBQ3JCLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxTQUFTLENBQUMsQ0FBUyxFQUFFLEdBQVc7UUFDNUIsd0RBQXdEO1FBQ3hELE9BQU8sR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFa0IsV0FBVyxDQUFDLEtBQWU7UUFDMUMsTUFBTSxJQUFJLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUV2QixLQUFLLENBQUMsV0FBVyxDQUNiLEtBQUs7YUFDQSxPQUFPLEVBQUU7YUFDVCxNQUFNLENBQ0gsSUFBSSxDQUFDLEVBQUUsQ0FDSCxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQ3hFO2FBQ0EsT0FBTyxFQUFFLENBQ2pCLENBQUM7SUFDTixDQUFDO0lBRU8sZUFBZSxDQUFDLFlBQW9CLEVBQUUsSUFBWTtRQUN0RCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssS0FBSyxZQUFZLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFFNUUsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDekIsT0FBTztTQUNWO1FBRUQsR0FBRyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUUxQixJQUNJLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxXQUFXO1lBQzNDLElBQUksR0FBRyxHQUFHLENBQUMsYUFBYSxDQUFDLFVBQVU7WUFDbkMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxXQUFXO1lBQ2pDLENBQUMsRUFDSDtZQUNFLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLFVBQVU7Z0JBQ25DLElBQUksR0FBRyxHQUFHLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQztTQUM1QztJQUNMLENBQUM7SUFFTyx3QkFBd0IsQ0FBQyxRQUFzQztRQUNuRSxJQUFJLENBQUMsQ0FBQSxRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsZ0JBQWdCLENBQUEsRUFBRTtZQUM3QixPQUFPO1NBQ1Y7UUFFRCxNQUFNLEVBQUMsYUFBYSxFQUFDLEdBQUcsUUFBUSxDQUFDLGdCQUFnQixDQUFDO1FBRWxELE1BQU0sTUFBTSxHQUFHLGlCQUFpQixDQUFDLGFBQWEsRUFBRSxPQUFPLEVBQUUsRUFBQyxPQUFPLEVBQUUsS0FBSyxFQUFDLENBQUMsQ0FBQyxJQUFJLENBQzNFLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLENBQUMsRUFDdkUsaUJBQWlCLEVBQUUsRUFDbkIsR0FBRyxDQUFDLENBQUMsRUFBQyxNQUFNLEVBQUMsRUFBRSxFQUFFLENBQ2IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsVUFBVSxHQUFHLE1BQU0sR0FBRyx3QkFBd0IsRUFBRSxDQUFDLENBQUMsQ0FDNUUsQ0FDSixDQUFDO1FBQ0YsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbEQsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBRTFFLEtBQUssQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQzthQUN0QixJQUFJLENBQ0QsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLEVBQ3hFLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQzNCO2FBQ0EsU0FBUyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVPLFlBQVksQ0FBQyxLQUFhO1FBQzlCLElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQ3ZCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztTQUNyRDtRQUVELElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFTyxZQUFZLENBQUMsRUFBQyxXQUFXLEVBQUUsV0FBVyxFQUFjO1FBQ3hELE9BQU8sV0FBVyxHQUFHLFdBQVcsQ0FBQztJQUNyQyxDQUFDO0lBRU8sTUFBTTtRQUNWLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFdEMsSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsbUJBQW1CLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDckQsT0FBTztTQUNWO1FBRUQsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVPLHFCQUFxQjtRQUN6QixLQUFLLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFO1lBQ3pELElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFO2dCQUM5QyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBRXBELE1BQU07YUFDVDtTQUNKO0lBQ0wsQ0FBQztJQUVPLFVBQVUsQ0FBQyxnQkFBeUIsS0FBSztRQUM3QyxJQUFJLElBQUksQ0FBQyxzQkFBc0IsRUFBRTtZQUM3QixJQUFJLENBQUMsc0JBQXNCLENBQUMsS0FBSyxDQUFDLEVBQUMsYUFBYSxFQUFDLENBQUMsQ0FBQztTQUN0RDtJQUNMLENBQUM7O2tIQW5iUSxvQkFBb0Isa0JBaUdqQixTQUFTLHlDQUVULGlCQUFpQixhQUNqQixnQkFBZ0IsYUFDaEIsVUFBVSxhQUNWLHdCQUF3QixhQUV4QixnQkFBZ0IsNkJBRWhCLFFBQVEsYUFHUix1QkFBdUIsNkJBRXZCLGdDQUFnQyxhQUVoQyxxQkFBcUIsYUFHckIsMEJBQTBCO3NHQXBIN0Isb0JBQW9CLDBqQkFUbEI7UUFDUCwwQkFBMEIsQ0FBQyxvQkFBb0IsQ0FBQztRQUNoRCxZQUFZLENBQUMsb0JBQW9CLENBQUM7UUFDbEMsaUJBQWlCLENBQUMsb0JBQW9CLENBQUM7UUFDdkMsNkJBQTZCO1FBQzdCLGFBQWE7S0FDaEIsZ0VBa0ZhLG9CQUFvQiwyQkFBUyxXQUFXLDZFQTNFM0MsMEJBQTBCLDJUQVlSLFVBQVUseURBRzVCLHFCQUFxQiwyQkFBUyxVQUFVLCtKQWtFeEMscUJBQXFCLDRGQXhFSixVQUFVLG9EQy9GMUMsNjBOQXNKQSx5MmNEdEVtQixDQUFDLGtDQUFrQyxDQUFDO0FBNkJuRDtJQURDLGNBQWMsRUFBRTt1REFDbUM7QUFJcEQ7SUFEQyxjQUFjLEVBQUU7b0RBQ0w7QUFJWjtJQURDLGNBQWMsRUFBRTtzREFDRDtBQUloQjtJQURDLGNBQWMsRUFBRTswREFDNkM7QUFLOUQ7SUFEQyxjQUFjLEVBQUU7d0RBQ0M7QUFJbEI7SUFEQyxjQUFjLEVBQUU7eURBQ0c7QUFJcEI7SUFEQyxjQUFjLEVBQUU7d0RBQ29CO0FBSXJDO0lBREMsY0FBYyxFQUFFO3VEQUNlO0FBSWhDO0lBREMsY0FBYyxFQUFFO3lEQUNBO0FBSWpCO0lBREMsY0FBYyxFQUFFO2lFQUVROzRGQWpFaEIsb0JBQW9CO2tCQWRoQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxlQUFlO29CQUN6QixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsV0FBVyxFQUFFLDJCQUEyQjtvQkFDeEMsU0FBUyxFQUFFLENBQUMsd0JBQXdCLENBQUM7b0JBQ3JDLFNBQVMsRUFBRTt3QkFDUCwwQkFBMEIsc0JBQXNCO3dCQUNoRCxZQUFZLHNCQUFzQjt3QkFDbEMsaUJBQWlCLHNCQUFzQjt3QkFDdkMsNkJBQTZCO3dCQUM3QixhQUFhO3FCQUNoQjtvQkFDRCxhQUFhLEVBQUUsQ0FBQyxrQ0FBa0MsQ0FBQztpQkFDdEQ7OzBCQWdHUSxRQUFROzswQkFDUixJQUFJOzswQkFDSixNQUFNOzJCQUFDLFNBQVM7OzBCQUVoQixNQUFNOzJCQUFDLGlCQUFpQjs7MEJBQ3hCLE1BQU07MkJBQUMsZ0JBQWdCOzswQkFDdkIsTUFBTTsyQkFBQyxVQUFVOzswQkFDakIsTUFBTTsyQkFBQyx3QkFBd0I7OzBCQUMvQixRQUFROzswQkFDUixNQUFNOzJCQUFDLGdCQUFnQjs7MEJBRXZCLE1BQU07MkJBQUMsUUFBUTs7MEJBRWYsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQyx1QkFBdUI7OzBCQUU5QixNQUFNOzJCQUFDLGdDQUFnQzs7MEJBRXZDLE1BQU07MkJBQUMscUJBQXFCOzswQkFFNUIsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQywwQkFBMEI7NENBL0dyQixjQUFjO3NCQUQ5QixTQUFTO3VCQUFDLDBCQUEwQjtnQkFJcEIsZ0JBQWdCO3NCQURoQyxTQUFTO3VCQUFDLGtCQUFrQjtnQkFJWixhQUFhO3NCQUQ3QixTQUFTO3VCQUFDLGVBQWU7Z0JBSVQsSUFBSTtzQkFEcEIsWUFBWTt1QkFBQyxLQUFLLEVBQUUsRUFBQyxJQUFJLEVBQUUsVUFBVSxFQUFDO2dCQUl0QixVQUFVO3NCQUQxQixTQUFTO3VCQUFDLFNBQVMsRUFBRSxFQUFDLElBQUksRUFBRSxVQUFVLEVBQUM7Z0JBSXZCLFNBQVM7c0JBRHpCLFNBQVM7dUJBQUMscUJBQXFCLEVBQUUsRUFBQyxJQUFJLEVBQUUsVUFBVSxFQUFDO2dCQVFwRCxTQUFTO3NCQUZSLEtBQUs7Z0JBTU4sTUFBTTtzQkFGTCxLQUFLO2dCQU1OLFFBQVE7c0JBRlAsS0FBSztnQkFNTixZQUFZO3NCQUZYLEtBQUs7Z0JBT04sVUFBVTtzQkFIVCxLQUFLOztzQkFDTCxXQUFXO3VCQUFDLG1CQUFtQjtnQkFNaEMsV0FBVztzQkFGVixLQUFLO2dCQU1OLFVBQVU7c0JBRlQsS0FBSztnQkFNTixTQUFTO3NCQUZSLEtBQUs7Z0JBTU4sV0FBVztzQkFGVixLQUFLO2dCQU1OLG1CQUFtQjtzQkFGbEIsS0FBSztnQkFNRixtQkFBbUI7c0JBRHRCLEtBQUs7dUJBQUMsZUFBZTtnQkFVYixZQUFZO3NCQURwQixNQUFNO2dCQUlFLFFBQVE7c0JBRGhCLFlBQVk7dUJBQUMsb0JBQW9CLEVBQUUsRUFBQyxJQUFJLEVBQUUsV0FBVyxFQUFDO2dCQUk5QyxpQkFBaUI7c0JBRHpCLFNBQVM7dUJBQUMsV0FBVztnQkFJbEIsY0FBYztzQkFEakIsU0FBUzt1QkFBQyxxQkFBcUI7Z0JBbUQ1QixJQUFJO3NCQURQLFdBQVc7dUJBQUMsZ0JBQWdCO2dCQU16QixZQUFZO3NCQURmLFdBQVc7dUJBQUMsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBPdXRwdXQsXG4gICAgUXVlcnlMaXN0LFxuICAgIFNlbGYsXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdDaGlsZHJlbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge05nQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdFR1aU11bHRpcGxlQ29udHJvbCxcbiAgICBBTFdBWVNfRkFMU0VfSEFORExFUixcbiAgICBBTFdBWVNfVFJVRV9IQU5ETEVSLFxuICAgIEVNUFRZX1FVRVJZLFxuICAgIFR1aUFjdGl2ZVpvbmVEaXJlY3RpdmUsXG4gICAgdHVpQXJyYXlSZW1vdmUsXG4gICAgdHVpQXNDb250cm9sLFxuICAgIHR1aUFzRm9jdXNhYmxlSXRlbUFjY2Vzc29yLFxuICAgIFR1aUJvb2xlYW5IYW5kbGVyLFxuICAgIFR1aUNvbnRleHRXaXRoSW1wbGljaXQsXG4gICAgdHVpRGVmYXVsdFByb3AsXG4gICAgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yLFxuICAgIHR1aUdldEFjdHVhbFRhcmdldCxcbiAgICB0dWlJc0VsZW1lbnQsXG4gICAgdHVpSXNOYXRpdmVGb2N1c2VkSW4sXG4gICAgdHVpUHJldmVudERlZmF1bHQsXG4gICAgVHVpU2Nyb2xsU2VydmljZSxcbiAgICB0dWlUeXBlZEZyb21FdmVudCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIE1PREVfUFJPVklERVIsXG4gICAgVEVYVEZJRUxEX0NPTlRST0xMRVJfUFJPVklERVIsXG4gICAgVFVJX01PREUsXG4gICAgVFVJX1RFWFRGSUVMRF9BUFBFQVJBTkNFLFxuICAgIFRVSV9URVhURklFTERfV0FUQ0hFRF9DT05UUk9MTEVSLFxuICAgIHR1aUFzRGF0YUxpc3RIb3N0LFxuICAgIFR1aUJyaWdodG5lc3MsXG4gICAgVHVpRGF0YUxpc3REaXJlY3RpdmUsXG4gICAgVHVpRGF0YUxpc3RIb3N0LFxuICAgIFR1aUhpbnRPcHRpb25zRGlyZWN0aXZlLFxuICAgIFR1aUhvc3RlZERyb3Bkb3duQ29tcG9uZW50LFxuICAgIFR1aU1vZGVEaXJlY3RpdmUsXG4gICAgVHVpU2Nyb2xsYmFyQ29tcG9uZW50LFxuICAgIFR1aVNpemVMLFxuICAgIFR1aVNpemVTLFxuICAgIFR1aVRleHRmaWVsZENvbnRyb2xsZXIsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7VHVpU3RyaW5naWZpYWJsZUl0ZW19IGZyb20gJ0B0YWlnYS11aS9raXQvY2xhc3Nlcyc7XG5pbXBvcnQge0ZJWEVEX0RST1BET1dOX0NPTlRST0xMRVJfUFJPVklERVJ9IGZyb20gJ0B0YWlnYS11aS9raXQvcHJvdmlkZXJzJztcbmltcG9ydCB7VHVpU3RhdHVzfSBmcm9tICdAdGFpZ2EtdWkva2l0L3R5cGVzJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcbmltcG9ydCB7bWVyZ2UsIE9ic2VydmFibGUsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtmaWx0ZXIsIG1hcCwgbWFwVG8sIHN3aXRjaE1hcCwgdGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7VFVJX0lOUFVUX1RBR19PUFRJT05TLCBUdWlJbnB1dFRhZ09wdGlvbnN9IGZyb20gJy4vaW5wdXQtdGFnLW9wdGlvbnMnO1xuXG5jb25zdCBFVkVOVF9ZX1RPX1hfQ09FRkZJQ0lFTlQgPSAzO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogYHR1aS1pbnB1dC10YWdgLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHRlbXBsYXRlVXJsOiBgLi9pbnB1dC10YWcudGVtcGxhdGUuaHRtbGAsXG4gICAgc3R5bGVVcmxzOiBbYC4vaW5wdXQtdGFnLnN0eWxlLmxlc3NgXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgdHVpQXNGb2N1c2FibGVJdGVtQWNjZXNzb3IoVHVpSW5wdXRUYWdDb21wb25lbnQpLFxuICAgICAgICB0dWlBc0NvbnRyb2woVHVpSW5wdXRUYWdDb21wb25lbnQpLFxuICAgICAgICB0dWlBc0RhdGFMaXN0SG9zdChUdWlJbnB1dFRhZ0NvbXBvbmVudCksXG4gICAgICAgIFRFWFRGSUVMRF9DT05UUk9MTEVSX1BST1ZJREVSLFxuICAgICAgICBNT0RFX1BST1ZJREVSLFxuICAgIF0sXG4gICAgdmlld1Byb3ZpZGVyczogW0ZJWEVEX0RST1BET1dOX0NPTlRST0xMRVJfUFJPVklERVJdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlJbnB1dFRhZ0NvbXBvbmVudFxuICAgIGV4dGVuZHMgQWJzdHJhY3RUdWlNdWx0aXBsZUNvbnRyb2w8c3RyaW5nPlxuICAgIGltcGxlbWVudHMgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yLCBUdWlEYXRhTGlzdEhvc3Q8c3RyaW5nPlxue1xuICAgIEBWaWV3Q2hpbGQoVHVpSG9zdGVkRHJvcGRvd25Db21wb25lbnQpXG4gICAgcHJpdmF0ZSByZWFkb25seSBob3N0ZWREcm9wZG93bj86IFR1aUhvc3RlZERyb3Bkb3duQ29tcG9uZW50O1xuXG4gICAgQFZpZXdDaGlsZChgZm9jdXNhYmxlRWxlbWVudGApXG4gICAgcHJpdmF0ZSByZWFkb25seSBmb2N1c2FibGVFbGVtZW50PzogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICAgIEBWaWV3Q2hpbGQoYHRhZ3NDb250YWluZXJgKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGFnc0NvbnRhaW5lcj86IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgQFZpZXdDaGlsZHJlbihgdGFnYCwge3JlYWQ6IEVsZW1lbnRSZWZ9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGFnczogUXVlcnlMaXN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PiA9IEVNUFRZX1FVRVJZO1xuXG4gICAgQFZpZXdDaGlsZChgY2xlYW5lcmAsIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNsZWFuZXJTdmc/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAgIEBWaWV3Q2hpbGQoVHVpU2Nyb2xsYmFyQ29tcG9uZW50LCB7cmVhZDogRWxlbWVudFJlZn0pXG4gICAgcHJpdmF0ZSByZWFkb25seSBzY3JvbGxCYXI/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2Nyb2xsVG9TdGFydCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgc2Nyb2xsVG9FbmQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBzZXBhcmF0b3I6IHN0cmluZyB8IFJlZ0V4cCA9IHRoaXMub3B0aW9ucy5zZXBhcmF0b3I7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2VhcmNoID0gYGA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgZWRpdGFibGUgPSB0cnVlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHRhZ1ZhbGlkYXRvcjogVHVpQm9vbGVhbkhhbmRsZXI8c3RyaW5nPiA9IEFMV0FZU19UUlVFX0hBTkRMRVI7XG5cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZyhgY2xhc3MuX2V4cGFuZGFibGVgKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgZXhwYW5kYWJsZSA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgaW5wdXRIaWRkZW4gPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB1bmlxdWVUYWdzID0gdGhpcy5vcHRpb25zLnVuaXF1ZVRhZ3M7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgbWF4TGVuZ3RoOiBudW1iZXIgfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBwbGFjZWhvbGRlciA9IGBgO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGRpc2FibGVkSXRlbUhhbmRsZXI6IFR1aUJvb2xlYW5IYW5kbGVyPHN0cmluZyB8IFR1aVN0cmluZ2lmaWFibGVJdGVtPGFueT4+ID1cbiAgICAgICAgQUxXQVlTX0ZBTFNFX0hBTkRMRVI7XG5cbiAgICBASW5wdXQoYHBzZXVkb0ZvY3VzZWRgKVxuICAgIHNldCBwc2V1ZG9Gb2N1c2VkU2V0dGVyKHZhbHVlOiBib29sZWFuIHwgbnVsbCkge1xuICAgICAgICBpZiAoIXZhbHVlICYmICF0aGlzLmZvY3VzZWQpIHtcbiAgICAgICAgICAgIHRoaXMuc2Nyb2xsVG9TdGFydCQubmV4dCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5wc2V1ZG9Gb2N1cyA9IHZhbHVlO1xuICAgIH1cblxuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IHNlYXJjaENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gICAgQENvbnRlbnRDaGlsZChUdWlEYXRhTGlzdERpcmVjdGl2ZSwge3JlYWQ6IFRlbXBsYXRlUmVmfSlcbiAgICByZWFkb25seSBkYXRhbGlzdD86IFRlbXBsYXRlUmVmPFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8VHVpQWN0aXZlWm9uZURpcmVjdGl2ZT4+O1xuXG4gICAgQFZpZXdDaGlsZChgZXJyb3JJY29uYClcbiAgICByZWFkb25seSBlcnJvckljb25UZW1wbGF0ZT86IFRlbXBsYXRlUmVmPFJlY29yZDxzdHJpbmcsIHVua25vd24+PjtcblxuICAgIEBWaWV3Q2hpbGQoVHVpU2Nyb2xsYmFyQ29tcG9uZW50KVxuICAgIHNldCBzY3JvbGxlclNldHRlcihzY3JvbGxlcjogVHVpU2Nyb2xsYmFyQ29tcG9uZW50IHwgbnVsbCkge1xuICAgICAgICB0aGlzLmluaXRTY3JvbGxlclN1YnNjcmlwdGlvbihzY3JvbGxlcik7XG4gICAgfVxuXG4gICAgc3RhdHVzJDogT2JzZXJ2YWJsZTxUdWlTdGF0dXM+ID0gdGhpcy5tb2RlJC5waXBlKG1hcCgoKSA9PiB0aGlzLnN0YXR1cykpO1xuXG4gICAgb3BlbiA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBTZWxmKClcbiAgICAgICAgQEluamVjdChOZ0NvbnRyb2wpXG4gICAgICAgIGNvbnRyb2w6IE5nQ29udHJvbCB8IG51bGwsXG4gICAgICAgIEBJbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgQEluamVjdChUdWlTY3JvbGxTZXJ2aWNlKSBwcml2YXRlIHJlYWRvbmx5IHR1aVNjcm9sbFNlcnZpY2U6IFR1aVNjcm9sbFNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChUVUlfVEVYVEZJRUxEX0FQUEVBUkFOQ0UpIHJlYWRvbmx5IGFwcGVhcmFuY2U6IHN0cmluZyxcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChUdWlNb2RlRGlyZWN0aXZlKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IG1vZGVEaXJlY3RpdmU6IFR1aU1vZGVEaXJlY3RpdmUgfCBudWxsLFxuICAgICAgICBASW5qZWN0KFRVSV9NT0RFKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IG1vZGUkOiBPYnNlcnZhYmxlPFR1aUJyaWdodG5lc3MgfCBudWxsPixcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChUdWlIaW50T3B0aW9uc0RpcmVjdGl2ZSlcbiAgICAgICAgcmVhZG9ubHkgaGludE9wdGlvbnM6IFR1aUhpbnRPcHRpb25zRGlyZWN0aXZlIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChUVUlfVEVYVEZJRUxEX1dBVENIRURfQ09OVFJPTExFUilcbiAgICAgICAgcmVhZG9ubHkgY29udHJvbGxlcjogVHVpVGV4dGZpZWxkQ29udHJvbGxlcixcbiAgICAgICAgQEluamVjdChUVUlfSU5QVVRfVEFHX09QVElPTlMpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogVHVpSW5wdXRUYWdPcHRpb25zLFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBASW5qZWN0KFR1aUhvc3RlZERyb3Bkb3duQ29tcG9uZW50KVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHBhcmVudEhvc3RlZERyb3Bkb3duPzogVHVpSG9zdGVkRHJvcGRvd25Db21wb25lbnQsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGNvbnRyb2wsIGNoYW5nZURldGVjdG9yUmVmKTtcbiAgICB9XG5cbiAgICBnZXQgbmF0aXZlRm9jdXNhYmxlRWxlbWVudCgpOiBIVE1MSW5wdXRFbGVtZW50IHwgbnVsbCB7XG4gICAgICAgIHJldHVybiAhdGhpcy5mb2N1c2FibGVFbGVtZW50IHx8IHRoaXMuY29tcHV0ZWREaXNhYmxlZFxuICAgICAgICAgICAgPyBudWxsXG4gICAgICAgICAgICA6IHRoaXMuZm9jdXNhYmxlRWxlbWVudC5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIGdldCBmb2N1c2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdHVpSXNOYXRpdmVGb2N1c2VkSW4odGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpIHx8XG4gICAgICAgICAgICAhIXRoaXMuaG9zdGVkRHJvcGRvd24/LmZvY3VzZWRcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoYGF0dHIuZGF0YS1zaXplYClcbiAgICBnZXQgc2l6ZSgpOiBUdWlTaXplTCB8IFR1aVNpemVTIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udHJvbGxlci5zaXplO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZyhgY2xhc3MuX2xhYmVsLW91dHNpZGVgKVxuICAgIGdldCBsYWJlbE91dHNpZGUoKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IHtzaXplLCBsYWJlbE91dHNpZGV9ID0gdGhpcy5jb250cm9sbGVyO1xuXG4gICAgICAgIHJldHVybiBzaXplID09PSBgc2AgfHwgbGFiZWxPdXRzaWRlO1xuICAgIH1cblxuICAgIGdldCBpY29uKCk6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxUdWlTaXplUyB8IFR1aVNpemVMPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250cm9sbGVyLmljb247XG4gICAgfVxuXG4gICAgZ2V0IGljb25MZWZ0KCk6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxUdWlTaXplUyB8IFR1aVNpemVMPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250cm9sbGVyLmljb25MZWZ0O1xuICAgIH1cblxuICAgIGdldCBoYXNDbGVhbmVyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250cm9sbGVyLmNsZWFuZXIgJiYgdGhpcy5oYXNWYWx1ZSAmJiB0aGlzLmludGVyYWN0aXZlO1xuICAgIH1cblxuICAgIGdldCBoYXNOYXRpdmVWYWx1ZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5zZWFyY2g7XG4gICAgfVxuXG4gICAgZ2V0IGhhc1ZhbHVlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLnZhbHVlLmxlbmd0aCB8fCB0aGlzLmhhc05hdGl2ZVZhbHVlO1xuICAgIH1cblxuICAgIGdldCBoYXNQbGFjZWhvbGRlcigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICF0aGlzLmxhYmVsT3V0c2lkZSB8fFxuICAgICAgICAgICAgKCF0aGlzLmhhc1ZhbHVlICYmICghdGhpcy5oYXNFeGFtcGxlVGV4dCB8fCB0aGlzLmlucHV0SGlkZGVuKSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgcGxhY2Vob2xkZXJSYWlzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAhdGhpcy5sYWJlbE91dHNpZGUgJiZcbiAgICAgICAgICAgICgodGhpcy5jb21wdXRlZEZvY3VzZWQgJiYgIXRoaXMucmVhZE9ubHkpIHx8IHRoaXMuaGFzVmFsdWUpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IGhhc0V4YW1wbGVUZXh0KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgISF0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQ/LnBsYWNlaG9sZGVyICYmXG4gICAgICAgICAgICB0aGlzLmNvbXB1dGVkRm9jdXNlZCAmJlxuICAgICAgICAgICAgIXRoaXMuaGFzVmFsdWUgJiZcbiAgICAgICAgICAgICF0aGlzLnJlYWRPbmx5XG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IGhhc1JpZ2h0SWNvbnMoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLmhhc0NsZWFuZXIgfHxcbiAgICAgICAgICAgICEhdGhpcy5pY29uIHx8XG4gICAgICAgICAgICAoISF0aGlzLmhpbnRPcHRpb25zPy5jb250ZW50ICYmICF0aGlzLmNvbXB1dGVkRGlzYWJsZWQpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IHN0YXR1cygpOiBUdWlTdGF0dXMge1xuICAgICAgICByZXR1cm4gdGhpcy5tb2RlRGlyZWN0aXZlPy5tb2RlID8gYGRlZmF1bHRgIDogdGhpcy5vcHRpb25zLnRhZ1N0YXR1cztcbiAgICB9XG5cbiAgICBnZXQgY2FuT3BlbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaW50ZXJhY3RpdmUgJiYgISF0aGlzLmRhdGFsaXN0O1xuICAgIH1cblxuICAgIGdldExlZnRDb250ZW50KHRhZzogc3RyaW5nKTogUG9seW1vcnBoZXVzQ29udGVudCB7XG4gICAgICAgIHJldHVybiAhdGhpcy50YWdWYWxpZGF0b3IodGFnKSAmJiB0aGlzLmVycm9ySWNvblRlbXBsYXRlXG4gICAgICAgICAgICA/IHRoaXMuZXJyb3JJY29uVGVtcGxhdGVcbiAgICAgICAgICAgIDogYGA7XG4gICAgfVxuXG4gICAgb25DbGVhbmVyQ2xpY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlU2VhcmNoKGBgKTtcbiAgICAgICAgdGhpcy5jbGVhcigpO1xuICAgICAgICB0aGlzLmZvY3VzSW5wdXQoKTtcbiAgICAgICAgdGhpcy5wYXJlbnRIb3N0ZWREcm9wZG93bj8udXBkYXRlT3Blbih0cnVlKTtcbiAgICB9XG5cbiAgICBvbkFjdGl2ZVpvbmUoYWN0aXZlOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMub3BlbiA9IGZhbHNlO1xuICAgICAgICB0aGlzLmFkZFRhZygpO1xuICAgICAgICB0aGlzLnVwZGF0ZUZvY3VzZWQoYWN0aXZlKTtcblxuICAgICAgICBpZiAoIXRoaXMuY29tcHV0ZWRGb2N1c2VkKSB7XG4gICAgICAgICAgICB0aGlzLnNjcm9sbFRvU3RhcnQkLm5leHQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uTW91c2VEb3duKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGFjdHVhbFRhcmdldCA9IHR1aUdldEFjdHVhbFRhcmdldChldmVudCk7XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgIXRoaXMuZm9jdXNhYmxlRWxlbWVudCB8fFxuICAgICAgICAgICAgYWN0dWFsVGFyZ2V0ID09PSB0aGlzLmZvY3VzYWJsZUVsZW1lbnQubmF0aXZlRWxlbWVudCB8fFxuICAgICAgICAgICAgIXR1aUlzRWxlbWVudChldmVudC50YXJnZXQpIHx8XG4gICAgICAgICAgICB0aGlzLmNsZWFuZXJTdmc/Lm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSB8fFxuICAgICAgICAgICAgKHRoaXMudGFnc0NvbnRhaW5lciAmJlxuICAgICAgICAgICAgICAgIGFjdHVhbFRhcmdldCAhPT0gdGhpcy50YWdzQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQgJiZcbiAgICAgICAgICAgICAgICB0aGlzLnRhZ3NDb250YWluZXIubmF0aXZlRWxlbWVudC5jb250YWlucyhhY3R1YWxUYXJnZXQpKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMuZm9jdXNJbnB1dCgpO1xuICAgIH1cblxuICAgIG9uRmllbGRLZXlEb3duQmFja3NwYWNlKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMubGFiZWxPdXRzaWRlICYmICF0aGlzLmhhc05hdGl2ZVZhbHVlICYmIHRoaXMudmFsdWUubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmRlbGV0ZUxhc3RFbmFibGVkSXRlbSgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vbkZpZWxkS2V5RG93bkFycm93TGVmdChldmVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkZpZWxkS2V5RG93bkFycm93TGVmdChldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmxhYmVsT3V0c2lkZSB8fCB0aGlzLmhhc05hdGl2ZVZhbHVlIHx8ICF0aGlzLnZhbHVlLmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy50YWdzLmxhc3QubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cblxuICAgIG9uRmllbGRLZXlEb3duRW50ZXIoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuYWRkVGFnKCk7XG4gICAgICAgIHRoaXMuc2Nyb2xsVG9FbmQkLm5leHQoKTtcbiAgICB9XG5cbiAgICBvblRhZ0tleURvd25BcnJvd0xlZnQoY3VycmVudEluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgaWYgKGN1cnJlbnRJbmRleCA+IDApIHtcbiAgICAgICAgICAgIHRoaXMub25TY3JvbGxLZXlEb3duKGN1cnJlbnRJbmRleCwgLTEpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25UYWdLZXlEb3duQXJyb3dSaWdodChjdXJyZW50SW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBpZiAoY3VycmVudEluZGV4ID09PSB0aGlzLnZhbHVlLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAgIHRoaXMuZm9jdXNJbnB1dCgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vblNjcm9sbEtleURvd24oY3VycmVudEluZGV4LCAxKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uVGFnRWRpdGVkKHZhbHVlOiBzdHJpbmcsIGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mb2N1c0lucHV0KCk7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUoXG4gICAgICAgICAgICB0aGlzLnZhbHVlXG4gICAgICAgICAgICAgICAgLm1hcCgodGFnLCB0YWdJbmRleCkgPT5cbiAgICAgICAgICAgICAgICAgICAgdGFnSW5kZXggIT09IGluZGV4XG4gICAgICAgICAgICAgICAgICAgICAgICA/IHRhZ1xuICAgICAgICAgICAgICAgICAgICAgICAgOiB2YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnNwbGl0KHRoaXMuc2VwYXJhdG9yKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1hcCh0YWcgPT4gdGFnLnRyaW0oKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5maWx0ZXIoQm9vbGVhbiksXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIC5yZWR1Y2U8c3RyaW5nW10+KFxuICAgICAgICAgICAgICAgICAgICAocmVzdWx0LCBpdGVtOiBzdHJpbmcgfCBzdHJpbmdbXSkgPT4gcmVzdWx0LmNvbmNhdChpdGVtKSxcbiAgICAgICAgICAgICAgICAgICAgW10sXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBoYW5kbGVPcHRpb24oaXRlbTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZm9jdXNJbnB1dCgpO1xuICAgICAgICB0aGlzLnVwZGF0ZVNlYXJjaChgYCk7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUodGhpcy52YWx1ZS5jb25jYXQoaXRlbSkpO1xuICAgICAgICB0aGlzLm9wZW4gPSBmYWxzZTtcbiAgICAgICAgdGhpcy5zY3JvbGxUb0VuZCQubmV4dCgpO1xuICAgIH1cblxuICAgIG9uSW5wdXQodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBjb25zdCBhcnJheSA9IHZhbHVlLnNwbGl0KHRoaXMuc2VwYXJhdG9yKTtcbiAgICAgICAgY29uc3QgdGFncyA9IGFycmF5XG4gICAgICAgICAgICAubWFwKGl0ZW0gPT4gaXRlbS50cmltKCkpXG4gICAgICAgICAgICAuZmlsdGVyKChpdGVtLCBpbmRleCwge2xlbmd0aH0pID0+IGl0ZW0ubGVuZ3RoID4gMCAmJiBpbmRleCAhPT0gbGVuZ3RoIC0gMSk7XG4gICAgICAgIGNvbnN0IHZhbGlkYXRlZCA9IHRhZ3MuZmlsdGVyKHRhZyA9PiAhdGhpcy5kaXNhYmxlZEl0ZW1IYW5kbGVyKHRhZykpO1xuXG4gICAgICAgIGlmIChhcnJheS5sZW5ndGggPiAxKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVNlYXJjaChhcnJheVthcnJheS5sZW5ndGggLSAxXS50cmltKCkpO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVWYWx1ZShbLi4udGhpcy52YWx1ZSwgLi4udmFsaWRhdGVkXSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVNlYXJjaCh2YWx1ZSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm9wZW4gPSB0aGlzLmhhc05hdGl2ZVZhbHVlO1xuICAgIH1cblxuICAgIG92ZXJyaWRlIHNldERpc2FibGVkU3RhdGUoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLnNldERpc2FibGVkU3RhdGUoKTtcbiAgICAgICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gICAgfVxuXG4gICAgdHJhY2tCeUZuKF86IG51bWJlciwgdGFnOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICAvLyBBY3R1YWxseSB0YWcgaGFzIFR1aVN0cmluZ2lmaWFibGVJdGVtIHR5cGUgbm90IHN0cmluZ1xuICAgICAgICByZXR1cm4gdGFnLnRvU3RyaW5nKCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIHVwZGF0ZVZhbHVlKHZhbHVlOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgICAgICBjb25zdCBzZWVuID0gbmV3IFNldCgpO1xuXG4gICAgICAgIHN1cGVyLnVwZGF0ZVZhbHVlKFxuICAgICAgICAgICAgdmFsdWVcbiAgICAgICAgICAgICAgICAucmV2ZXJzZSgpXG4gICAgICAgICAgICAgICAgLmZpbHRlcihcbiAgICAgICAgICAgICAgICAgICAgaXRlbSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgIXRoaXMudW5pcXVlVGFncyB8fCAoISFpdGVtICYmICFzZWVuLmhhcyhpdGVtKSAmJiBzZWVuLmFkZChpdGVtKSksXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIC5yZXZlcnNlKCksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvblNjcm9sbEtleURvd24oY3VycmVudEluZGV4OiBudW1iZXIsIGZsYWc6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBjb25zdCB0YWcgPSB0aGlzLnRhZ3MuZmluZCgoX2l0ZW0sIGluZGV4KSA9PiBpbmRleCA9PT0gY3VycmVudEluZGV4ICsgZmxhZyk7XG5cbiAgICAgICAgaWYgKCF0YWcgfHwgIXRoaXMuc2Nyb2xsQmFyKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0YWcubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIGZsYWcgKiB0aGlzLnNjcm9sbEJhci5uYXRpdmVFbGVtZW50LmNsaWVudFdpZHRoIC1cbiAgICAgICAgICAgICAgICBmbGFnICogdGFnLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdCAtXG4gICAgICAgICAgICAgICAgdGFnLm5hdGl2ZUVsZW1lbnQuY2xpZW50V2lkdGggPFxuICAgICAgICAgICAgMFxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMuc2Nyb2xsQmFyLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsTGVmdCArPVxuICAgICAgICAgICAgICAgIGZsYWcgKiB0YWcubmF0aXZlRWxlbWVudC5jbGllbnRXaWR0aDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdFNjcm9sbGVyU3Vic2NyaXB0aW9uKHNjcm9sbGVyOiBUdWlTY3JvbGxiYXJDb21wb25lbnQgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIGlmICghc2Nyb2xsZXI/LmJyb3dzZXJTY3JvbGxSZWYpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHtuYXRpdmVFbGVtZW50fSA9IHNjcm9sbGVyLmJyb3dzZXJTY3JvbGxSZWY7XG5cbiAgICAgICAgY29uc3Qgd2hlZWwkID0gdHVpVHlwZWRGcm9tRXZlbnQobmF0aXZlRWxlbWVudCwgYHdoZWVsYCwge3Bhc3NpdmU6IGZhbHNlfSkucGlwZShcbiAgICAgICAgICAgIGZpbHRlcihldmVudCA9PiBldmVudC5kZWx0YVggPT09IDAgJiYgdGhpcy5zaG91bGRTY3JvbGwobmF0aXZlRWxlbWVudCkpLFxuICAgICAgICAgICAgdHVpUHJldmVudERlZmF1bHQoKSxcbiAgICAgICAgICAgIG1hcCgoe2RlbHRhWX0pID0+XG4gICAgICAgICAgICAgICAgTWF0aC5tYXgobmF0aXZlRWxlbWVudC5zY3JvbGxMZWZ0ICsgZGVsdGFZICogRVZFTlRfWV9UT19YX0NPRUZGSUNJRU5ULCAwKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IHN0YXJ0JCA9IHRoaXMuc2Nyb2xsVG9TdGFydCQucGlwZShtYXBUbygwKSk7XG4gICAgICAgIGNvbnN0IGVuZCQgPSB0aGlzLnNjcm9sbFRvRW5kJC5waXBlKG1hcCgoKSA9PiBuYXRpdmVFbGVtZW50LnNjcm9sbFdpZHRoKSk7XG5cbiAgICAgICAgbWVyZ2Uod2hlZWwkLCBzdGFydCQsIGVuZCQpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAobGVmdCA9PiB0aGlzLnR1aVNjcm9sbFNlcnZpY2Uuc2Nyb2xsJChuYXRpdmVFbGVtZW50LCAwLCBsZWZ0KSksXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlU2VhcmNoKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZm9jdXNhYmxlRWxlbWVudCkge1xuICAgICAgICAgICAgdGhpcy5mb2N1c2FibGVFbGVtZW50Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2VhcmNoID0gdmFsdWU7XG4gICAgICAgIHRoaXMuc2VhcmNoQ2hhbmdlLmVtaXQodmFsdWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2hvdWxkU2Nyb2xsKHtzY3JvbGxXaWR0aCwgb2Zmc2V0V2lkdGh9OiBIVE1MRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gc2Nyb2xsV2lkdGggPiBvZmZzZXRXaWR0aDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFkZFRhZygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaW5wdXRWYWx1ZSA9IHRoaXMuc2VhcmNoLnRyaW0oKTtcblxuICAgICAgICBpZiAoIWlucHV0VmFsdWUgfHwgdGhpcy5kaXNhYmxlZEl0ZW1IYW5kbGVyKGlucHV0VmFsdWUpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnVwZGF0ZVNlYXJjaChgYCk7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUodGhpcy52YWx1ZS5jb25jYXQoaW5wdXRWYWx1ZSkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZGVsZXRlTGFzdEVuYWJsZWRJdGVtKCk6IHZvaWQge1xuICAgICAgICBmb3IgKGxldCBpbmRleCA9IHRoaXMudmFsdWUubGVuZ3RoIC0gMTsgaW5kZXggPj0gMDsgaW5kZXgtLSkge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkSXRlbUhhbmRsZXIodGhpcy52YWx1ZVtpbmRleF0pKSB7XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVWYWx1ZSh0dWlBcnJheVJlbW92ZSh0aGlzLnZhbHVlLCBpbmRleCkpO1xuXG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGZvY3VzSW5wdXQocHJldmVudFNjcm9sbDogYm9vbGVhbiA9IGZhbHNlKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudC5mb2N1cyh7cHJldmVudFNjcm9sbH0pO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImhpbnRPcHRpb25zPy5jaGFuZ2UkIHwgYXN5bmNcIj48L25nLWNvbnRhaW5lcj5cbjx0dWktaG9zdGVkLWRyb3Bkb3duXG4gICAgY2xhc3M9XCJ0LWhvc3RlZFwiXG4gICAgW2Nhbk9wZW5dPVwiY2FuT3BlblwiXG4gICAgW2NvbnRlbnRdPVwiZGF0YWxpc3QgfHwgJydcIlxuICAgIFsob3BlbildPVwib3BlblwiXG4gICAgKHR1aUFjdGl2ZVpvbmVDaGFuZ2UpPVwib25BY3RpdmVab25lKCRldmVudClcIlxuPlxuICAgIDxkaXZcbiAgICAgICAgdHVpV3JhcHBlclxuICAgICAgICBbYXBwZWFyYW5jZV09XCJhcHBlYXJhbmNlXCJcbiAgICAgICAgW3JlYWRPbmx5XT1cInJlYWRPbmx5XCJcbiAgICAgICAgW2ZvY3VzXT1cImNvbXB1dGVkRm9jdXNlZFwiXG4gICAgICAgIFtob3Zlcl09XCJwc2V1ZG9Ib3ZlclwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJjb21wdXRlZERpc2FibGVkXCJcbiAgICAgICAgW2ludmFsaWRdPVwiY29tcHV0ZWRJbnZhbGlkXCJcbiAgICAgICAgKG1vdXNlZG93bik9XCJvbk1vdXNlRG93bigkZXZlbnQpXCJcbiAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0LWNvbnRlbnRcIj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAqbmdJZj1cImljb25MZWZ0XCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtaWNvbnMgdC1pY29uc19sZWZ0XCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8dHVpLXN2Z1xuICAgICAgICAgICAgICAgICAgICAqcG9seW1vcnBoZXVzT3V0bGV0PVwiaWNvbkxlZnQgYXMgc3JjOyBjb250ZXh0OiB7JGltcGxpY2l0OiBzaXplfVwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidC1pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgW3NyY109XCJzcmNcIlxuICAgICAgICAgICAgICAgID48L3R1aS1zdmc+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0LXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidC1hYnNvbHV0ZS13cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaGFzUGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1pbnB1dC10YWdfX3BsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidC1wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MudC1wbGFjZWhvbGRlcl9yYWlzZWRdPVwicGxhY2Vob2xkZXJSYWlzZWRcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDx0dWktc2Nyb2xsYmFyXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIWV4cGFuZGFibGU7IGVsc2UgaXRlbXNcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInQtc2Nyb2xsYmFyXCJcbiAgICAgICAgICAgICAgICAgICAgW2hpZGRlbl09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiaXRlbXNcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L3R1aS1zY3JvbGxiYXI+XG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNpdGVtcz5cbiAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgI3RhZ3NDb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidC10YWdzXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImxhYmVsT3V0c2lkZTsgZWxzZSB0ZXh0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHR1aS10YWdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgdmFsdWU7IGluZGV4IGFzIGluZGV4OyB0cmFja0J5OiB0cmFja0J5Rm5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjdGFnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9tYXRpb24taWQ9XCJ0dWktaW5wdXQtdGFnX190YWdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInQtdGFnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3N0YXR1c109XCIoc3RhdHVzJCB8IGFzeW5jKSFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGVmdENvbnRlbnRdPVwiZ2V0TGVmdENvbnRlbnQoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHVpRm9jdXNhYmxlXT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImNvbXB1dGVkRGlzYWJsZWQgfHwgZGlzYWJsZWRJdGVtSGFuZGxlcihpdGVtKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtlZGl0YWJsZV09XCJlZGl0YWJsZSAmJiAhcmVhZE9ubHlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaG92ZXJhYmxlXT1cIiFyZWFkT25seVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZW1vdmFibGVdPVwiIXJlYWRPbmx5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NlcGFyYXRvcl09XCJzZXBhcmF0b3JcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbWF4TGVuZ3RoXT1cIm1heExlbmd0aFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzaXplXT1cImNvbnRyb2xsZXIuc2l6ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJpdGVtLnRvU3RyaW5nKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZWRpdGVkKT1cIm9uVGFnRWRpdGVkKCRldmVudCwgaW5kZXgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGtleWRvd24uYXJyb3dMZWZ0LnByZXZlbnQpPVwib25UYWdLZXlEb3duQXJyb3dMZWZ0KGluZGV4KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChrZXlkb3duLmFycm93UmlnaHQucHJldmVudCk9XCJvblRhZ0tleURvd25BcnJvd1JpZ2h0KGluZGV4KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvdHVpLXRhZz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICN0ZXh0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIHZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0LXRleHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MudC10ZXh0X2Rpc2FibGVkXT1cImRpc2FibGVkSXRlbUhhbmRsZXIoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MudC10ZXh0X2Vycm9yXT1cIiF0YWdWYWxpZGF0b3IoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdGV4dENvbnRlbnRdPVwiaXRlbVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0LWlucHV0LXdyYXBwZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy50LWlucHV0LXdyYXBwZXJfY29sbGFwc2VkXT1cImNvbXB1dGVkRGlzYWJsZWQgfHwgcmVhZE9ubHkgfHwgaW5wdXRIaWRkZW5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0LWdob3N0XCI+e3sgc2VhcmNoIH19PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmb2N1c2FibGVFbGVtZW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1pbnB1dC10YWdfX25hdGl2ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidC1uYXRpdmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MudC1uYXRpdmVfaGlkZGVuXT1cImlucHV0SGlkZGVuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIubWF4TGVuZ3RoXT1cIm1heExlbmd0aFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpZF09XCJpZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJjb21wdXRlZERpc2FibGVkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRPbmx5XT1cInJlYWRPbmx5IHx8IGlucHV0SGlkZGVuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3R1aUZvY3VzYWJsZV09XCJjb21wdXRlZEZvY3VzYWJsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cInNlYXJjaFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uSW5wdXQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChrZXlkb3duLmFycm93TGVmdCk9XCJvbkZpZWxkS2V5RG93bkFycm93TGVmdCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGtleWRvd24uYmFja3NwYWNlKT1cIm9uRmllbGRLZXlEb3duQmFja3NwYWNlKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoa2V5ZG93bi5lbnRlci5wcmV2ZW50KT1cIm9uRmllbGRLZXlEb3duRW50ZXIoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgKm5nSWY9XCJoYXNSaWdodEljb25zXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtaWNvbnMgdC1pY29uc19yaWdodFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHR1aS1zdmdcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJoYXNDbGVhbmVyXCJcbiAgICAgICAgICAgICAgICAgICAgI2NsZWFuZXJcbiAgICAgICAgICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1pbnB1dC10YWdfX2NsZWFuZXJcIlxuICAgICAgICAgICAgICAgICAgICBzcmM9XCJ0dWlJY29uQ2xvc2VMYXJnZVwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidC1jbGVhbmVyXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrLnN0b3ApPVwib25DbGVhbmVyQ2xpY2soKVwiXG4gICAgICAgICAgICAgICAgPjwvdHVpLXN2Zz5cbiAgICAgICAgICAgICAgICA8dHVpLXRvb2x0aXBcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJoaW50T3B0aW9ucyAmJiBoaW50T3B0aW9ucy5jb250ZW50ICYmICFjb21wdXRlZERpc2FibGVkXCJcbiAgICAgICAgICAgICAgICAgICAgYXV0b21hdGlvbi1pZD1cInR1aS1pbnB1dC10YWdfX3Rvb2x0aXBcIlxuICAgICAgICAgICAgICAgICAgICBkZXNjcmliZUlkPVwicGxhY2Vob2xlcl91bnRpbF9hY2Nlc2liaWxpdHlfaXNfYWRkZWRcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInQtdG9vbHRpcFwiXG4gICAgICAgICAgICAgICAgICAgIFtkaXJlY3Rpb25dPVwiaGludE9wdGlvbnMuZGlyZWN0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgW2FwcGVhcmFuY2VdPVwiaGludE9wdGlvbnMuYXBwZWFyYW5jZVwiXG4gICAgICAgICAgICAgICAgICAgIFtjb250ZW50XT1cImhpbnRPcHRpb25zLmNvbnRlbnRcIlxuICAgICAgICAgICAgICAgICAgICBbc2hvd0RlbGF5XT1cImhpbnRPcHRpb25zLnNob3dEZWxheVwiXG4gICAgICAgICAgICAgICAgICAgIFtoaWRlRGVsYXldPVwiaGludE9wdGlvbnMuaGlkZURlbGF5XCJcbiAgICAgICAgICAgICAgICA+PC90dWktdG9vbHRpcD5cbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaWNvblwiPlxuICAgICAgICAgICAgICAgICAgICA8dHVpLXN2Z1xuICAgICAgICAgICAgICAgICAgICAgICAgKnBvbHltb3JwaGV1c091dGxldD1cImljb24gYXMgc3JjOyBjb250ZXh0OiB7JGltcGxpY2l0OiBzaXplfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInQtaWNvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbc3JjXT1cInNyY1wiXG4gICAgICAgICAgICAgICAgICAgID48L3R1aS1zdmc+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjZXJyb3JJY29uPlxuICAgICAgICAgICAgPHR1aS1zdmdcbiAgICAgICAgICAgICAgICBzcmM9XCJ0dWlJY29uQXR0ZW50aW9uXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtZXJyb3ItaWNvblwiXG4gICAgICAgICAgICA+PC90dWktc3ZnPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvZGl2PlxuPC90dWktaG9zdGVkLWRyb3Bkb3duPlxuIl19