@pepperi-addons/ngx-lib 0.2.46 → 0.2.50

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 (62) hide show
  1. package/bread-crumbs/pepperi-addons-ngx-lib-bread-crumbs.metadata.json +1 -1
  2. package/bundles/pepperi-addons-ngx-lib-bread-crumbs.umd.js +7 -7
  3. package/bundles/pepperi-addons-ngx-lib-bread-crumbs.umd.js.map +1 -1
  4. package/bundles/pepperi-addons-ngx-lib-checkbox.umd.js.map +1 -1
  5. package/bundles/pepperi-addons-ngx-lib-dialog.umd.js +32 -31
  6. package/bundles/pepperi-addons-ngx-lib-dialog.umd.js.map +1 -1
  7. package/bundles/pepperi-addons-ngx-lib-group-buttons.umd.js.map +1 -1
  8. package/bundles/pepperi-addons-ngx-lib-icon.umd.js +12 -5
  9. package/bundles/pepperi-addons-ngx-lib-icon.umd.js.map +1 -1
  10. package/bundles/pepperi-addons-ngx-lib-slider.umd.js.map +1 -1
  11. package/bundles/pepperi-addons-ngx-lib-textbox.umd.js.map +1 -1
  12. package/bundles/pepperi-addons-ngx-lib.umd.js +94 -90
  13. package/bundles/pepperi-addons-ngx-lib.umd.js.map +1 -1
  14. package/dialog/pepperi-addons-ngx-lib-dialog.metadata.json +1 -1
  15. package/esm2015/bread-crumbs/bread-crumbs.module.js +5 -4
  16. package/esm2015/checkbox/checkbox.component.js +1 -1
  17. package/esm2015/core/clipboard/clipboard.service.js +3 -3
  18. package/esm2015/core/common/services/addon.service.js +3 -3
  19. package/esm2015/core/common/services/color.service.js +3 -3
  20. package/esm2015/core/common/services/cookie.service.js +3 -3
  21. package/esm2015/core/common/services/data-convertor.service.js +3 -3
  22. package/esm2015/core/common/services/file.service.js +3 -3
  23. package/esm2015/core/common/services/jwt-helper.service.js +3 -3
  24. package/esm2015/core/common/services/session.service.js +3 -3
  25. package/esm2015/core/common/services/utilities.service.js +4 -4
  26. package/esm2015/core/common/services/validator.service.js +3 -3
  27. package/esm2015/core/common/services/window-scrolling.service.js +3 -3
  28. package/esm2015/core/customization/customization.service.js +3 -3
  29. package/esm2015/core/http/services/http.service.js +3 -3
  30. package/esm2015/core/http/services/loader.service.js +3 -3
  31. package/esm2015/core/layout/layout.service.js +3 -3
  32. package/esm2015/core/portal/portal.service.js +3 -3
  33. package/esm2015/core/scroll-to/scroll-to.service.js +3 -3
  34. package/esm2015/dialog/dialog.module.js +3 -1
  35. package/esm2015/dialog/dialog.service.js +3 -3
  36. package/esm2015/group-buttons/group-buttons.component.js +1 -1
  37. package/esm2015/icon/icon-generated-all.model.js +2 -1
  38. package/esm2015/icon/icon-generated.model.js +5 -1
  39. package/esm2015/icon/icon-registry.service.js +3 -3
  40. package/esm2015/icon/icon.component.js +8 -5
  41. package/esm2015/icon/icon.module.js +3 -1
  42. package/esm2015/ngx-lib.module.js +10 -5
  43. package/esm2015/slider/slider.component.js +1 -1
  44. package/esm2015/textbox/textbox.component.js +1 -1
  45. package/fesm2015/pepperi-addons-ngx-lib-bread-crumbs.js +4 -4
  46. package/fesm2015/pepperi-addons-ngx-lib-bread-crumbs.js.map +1 -1
  47. package/fesm2015/pepperi-addons-ngx-lib-checkbox.js.map +1 -1
  48. package/fesm2015/pepperi-addons-ngx-lib-dialog.js +34 -33
  49. package/fesm2015/pepperi-addons-ngx-lib-dialog.js.map +1 -1
  50. package/fesm2015/pepperi-addons-ngx-lib-group-buttons.js.map +1 -1
  51. package/fesm2015/pepperi-addons-ngx-lib-icon.js +13 -7
  52. package/fesm2015/pepperi-addons-ngx-lib-icon.js.map +1 -1
  53. package/fesm2015/pepperi-addons-ngx-lib-slider.js.map +1 -1
  54. package/fesm2015/pepperi-addons-ngx-lib-textbox.js.map +1 -1
  55. package/fesm2015/pepperi-addons-ngx-lib.js +95 -91
  56. package/fesm2015/pepperi-addons-ngx-lib.js.map +1 -1
  57. package/icon/icon-generated-all.model.d.ts +1 -0
  58. package/icon/icon-generated.model.d.ts +5 -1
  59. package/icon/icon.component.d.ts +2 -3
  60. package/icon/pepperi-addons-ngx-lib-icon.metadata.json +1 -1
  61. package/package.json +1 -1
  62. package/pepperi-addons-ngx-lib.metadata.json +1 -1
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"metadata":{"PepDialogModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":18,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":20,"character":8},{"__symbolic":"reference","module":"@angular/material/core","name":"MatCommonModule","line":22,"character":8},{"__symbolic":"reference","module":"@angular/material/button","name":"MatButtonModule","line":23,"character":8},{"__symbolic":"reference","module":"@angular/material/icon","name":"MatIconModule","line":24,"character":8},{"__symbolic":"reference","module":"@angular/material/dialog","name":"MatDialogModule","line":25,"character":8},{"__symbolic":"reference","module":"@pepperi-addons/ngx-lib","name":"PepNgxLibModule","line":27,"character":8},{"__symbolic":"reference","module":"@pepperi-addons/ngx-lib/icon","name":"PepIconModule","line":28,"character":8}],"exports":[{"__symbolic":"reference","name":"PepDialogComponent"}],"declarations":[{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"PepDialogComponent"}],"entryComponents":[{"__symbolic":"reference","name":"ɵa"}]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@pepperi-addons/ngx-lib/icon","name":"PepIconRegistry","line":35,"character":41}]}]}},"PepDialogSizeType":{"__symbolic":"interface"},"PepDialogActionsType":{"__symbolic":"interface"},"PepDialogActionButton":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[null,null,{"__symbolic":"error","message":"Expression form not supported","line":19,"character":54,"module":"./dialog.model"}]}]}},"PepDialogData":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":35,"character":25,"module":"./dialog.model"}]}]}},"PepDialogComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"pep-dialog","template":"<div mat-dialog-title *ngIf=\"showHeader\" class=\"dialog-header-container\">\n <span class=\"dialog-title\" *ngIf=\"title?.length\">\n {{ title }}\n </span>\n <button mat-button *ngIf=\"showClose\" [mat-dialog-close]=\"null\" class=\"pep-button icon-button md weak dialog-close\">\n <mat-icon>\n <pep-icon name=\"system_close\">\n </pep-icon>\n </mat-icon>\n </button>\n</div>\n<div mat-dialog-content>\n <ng-content select=\"[pep-dialog-content]\"></ng-content>\n</div>\n<div mat-dialog-actions *ngIf=\"showFooter\" class=\"pep-border-top\">\n <ng-content select=\"[pep-dialog-actions]\"></ng-content>\n</div>","styles":[""]}]}],"members":{"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":5}}]}],"showClose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":5}}]}],"showHeader":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":5}}]}],"showFooter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":5}}]}]}},"PepDialogService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":12,"character":1},"arguments":[{"providedIn":"platform"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/material/dialog","name":"MatDialog","line":17,"character":24},{"__symbolic":"reference","module":"@pepperi-addons/ngx-lib","name":"PepLayoutService","line":18,"character":31},{"__symbolic":"reference","module":"@angular/cdk/overlay","name":"Overlay","line":19,"character":25}]}],"fixConfigIfNeeded":[{"__symbolic":"method"}],"getDialogConfig":[{"__symbolic":"method"}],"openDefaultDialog":[{"__symbolic":"method"}],"openDialog":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":7,"character":19},"member":"None"},"template":"<pep-dialog [showClose]=\"data?.showClose\" [showHeader]=\"data?.showHeader\" [showFooter]=\"data?.showFooter\"\n [title]=\"data?.title\">\n <div pep-dialog-content [innerHtml]=\"data?.content | pepSafeHtml\"></div>\n <div pep-dialog-actions class=\"pep-spacing-element-negative\">\n <ng-container [ngSwitch]=\"data?.actionsType\">\n <ng-container *ngSwitchCase=\"'close'\">\n <button mat-button [mat-dialog-close]=\"true\" class=\"pep-spacing-element pep-button md weak\">\n {{ 'ACTIONS.CLOSE' | translate }}\n </button>\n </ng-container>\n <ng-container *ngSwitchCase=\"'cancel-continue'\">\n <button mat-button [mat-dialog-close]=\"false\" class=\"pep-spacing-element pep-button md weak\">\n {{ 'ACTIONS.CANCEL' | translate }}\n </button>\n <button mat-button [mat-dialog-close]=\"true\" class=\"pep-spacing-element pep-button md strong\">\n {{ 'ACTIONS.CONTINUE' | translate }}\n </button>\n </ng-container>\n <ng-container *ngSwitchCase=\"'cancel-ok'\">\n <button mat-button [mat-dialog-close]=\"false\" class=\"pep-spacing-element pep-button md weak\">\n {{ 'ACTIONS.CANCEL' | translate }}\n </button>\n <button mat-button [mat-dialog-close]=\"true\" class=\"pep-spacing-element pep-button md strong\">\n {{ 'ACTIONS.OK' | translate }}\n </button>\n </ng-container>\n <ng-container *ngSwitchCase=\"'cancel-delete'\">\n <button mat-button [mat-dialog-close]=\"false\" class=\"pep-spacing-element pep-button md weak\">\n {{ 'ACTIONS.CANCEL' | translate }}\n </button>\n <button mat-button [mat-dialog-close]=\"true\" class=\"pep-spacing-element pep-button md strong caution\">\n {{ 'ACTIONS.DELETE' | translate }}\n </button>\n </ng-container>\n <ng-container *ngSwitchCase=\"'custom'\">\n <ng-container *ngFor=\"let btn of data?.actionButtons\">\n <!-- [mat-dialog-close]=\"btn?.callback ? btn.callback : null\" -->\n <button mat-button (click)=\"onActionButtonClicked(btn)\" class=\"pep-spacing-element pep-button md\"\n [ngClass]=\"btn?.className != '' ? btn?.className : 'weak'\">\n {{ btn?.title }}\n </button>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n</pep-dialog>","styles":[""]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":11,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/material/dialog","name":"MAT_DIALOG_DATA","line":11,"character":16}]}],null],"parameters":[{"__symbolic":"reference","name":"PepDialogData"},{"__symbolic":"reference","name":"MatDialogRef","module":"@angular/material/dialog","arguments":[{"__symbolic":"reference","name":"any"}]}]}],"onActionButtonClicked":[{"__symbolic":"method"}]}}},"origins":{"PepDialogModule":"./dialog.module","PepDialogSizeType":"./dialog.model","PepDialogActionsType":"./dialog.model","PepDialogActionButton":"./dialog.model","PepDialogData":"./dialog.model","PepDialogComponent":"./dialog.component","PepDialogService":"./dialog.service","ɵa":"./default-dialog.component"},"importAs":"@pepperi-addons/ngx-lib/dialog"}
1
+ {"__symbolic":"module","version":4,"metadata":{"PepDialogModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":19,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":21,"character":8},{"__symbolic":"reference","module":"@angular/material/core","name":"MatCommonModule","line":23,"character":8},{"__symbolic":"reference","module":"@angular/material/button","name":"MatButtonModule","line":24,"character":8},{"__symbolic":"reference","module":"@angular/material/icon","name":"MatIconModule","line":25,"character":8},{"__symbolic":"reference","module":"@angular/material/dialog","name":"MatDialogModule","line":26,"character":8},{"__symbolic":"reference","module":"@pepperi-addons/ngx-lib","name":"PepNgxLibModule","line":28,"character":8},{"__symbolic":"reference","module":"@pepperi-addons/ngx-lib/icon","name":"PepIconModule","line":29,"character":8}],"exports":[{"__symbolic":"reference","name":"PepDialogComponent"}],"declarations":[{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"PepDialogComponent"}],"entryComponents":[{"__symbolic":"reference","name":"ɵa"}],"providers":[{"__symbolic":"reference","name":"PepDialogService"}]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@pepperi-addons/ngx-lib/icon","name":"PepIconRegistry","line":37,"character":41}]}]}},"PepDialogSizeType":{"__symbolic":"interface"},"PepDialogActionsType":{"__symbolic":"interface"},"PepDialogActionButton":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[null,null,{"__symbolic":"error","message":"Expression form not supported","line":19,"character":54,"module":"./dialog.model"}]}]}},"PepDialogData":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":35,"character":25,"module":"./dialog.model"}]}]}},"PepDialogComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"pep-dialog","template":"<div mat-dialog-title *ngIf=\"showHeader\" class=\"dialog-header-container\">\n <span class=\"dialog-title\" *ngIf=\"title?.length\">\n {{ title }}\n </span>\n <button mat-button *ngIf=\"showClose\" [mat-dialog-close]=\"null\" class=\"pep-button icon-button md weak dialog-close\">\n <mat-icon>\n <pep-icon name=\"system_close\">\n </pep-icon>\n </mat-icon>\n </button>\n</div>\n<div mat-dialog-content>\n <ng-content select=\"[pep-dialog-content]\"></ng-content>\n</div>\n<div mat-dialog-actions *ngIf=\"showFooter\" class=\"pep-border-top\">\n <ng-content select=\"[pep-dialog-actions]\"></ng-content>\n</div>","styles":[""]}]}],"members":{"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":5}}]}],"showClose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":5}}]}],"showHeader":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":5}}]}],"showFooter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":5}}]}]}},"PepDialogService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":12,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/material/dialog","name":"MatDialog","line":17,"character":24},{"__symbolic":"reference","module":"@pepperi-addons/ngx-lib","name":"PepLayoutService","line":18,"character":31},{"__symbolic":"reference","module":"@angular/cdk/overlay","name":"Overlay","line":19,"character":25}]}],"fixConfigIfNeeded":[{"__symbolic":"method"}],"getDialogConfig":[{"__symbolic":"method"}],"openDefaultDialog":[{"__symbolic":"method"}],"openDialog":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":7,"character":19},"member":"None"},"template":"<pep-dialog [showClose]=\"data?.showClose\" [showHeader]=\"data?.showHeader\" [showFooter]=\"data?.showFooter\"\n [title]=\"data?.title\">\n <div pep-dialog-content [innerHtml]=\"data?.content | pepSafeHtml\"></div>\n <div pep-dialog-actions class=\"pep-spacing-element-negative\">\n <ng-container [ngSwitch]=\"data?.actionsType\">\n <ng-container *ngSwitchCase=\"'close'\">\n <button mat-button [mat-dialog-close]=\"true\" class=\"pep-spacing-element pep-button md weak\">\n {{ 'ACTIONS.CLOSE' | translate }}\n </button>\n </ng-container>\n <ng-container *ngSwitchCase=\"'cancel-continue'\">\n <button mat-button [mat-dialog-close]=\"false\" class=\"pep-spacing-element pep-button md weak\">\n {{ 'ACTIONS.CANCEL' | translate }}\n </button>\n <button mat-button [mat-dialog-close]=\"true\" class=\"pep-spacing-element pep-button md strong\">\n {{ 'ACTIONS.CONTINUE' | translate }}\n </button>\n </ng-container>\n <ng-container *ngSwitchCase=\"'cancel-ok'\">\n <button mat-button [mat-dialog-close]=\"false\" class=\"pep-spacing-element pep-button md weak\">\n {{ 'ACTIONS.CANCEL' | translate }}\n </button>\n <button mat-button [mat-dialog-close]=\"true\" class=\"pep-spacing-element pep-button md strong\">\n {{ 'ACTIONS.OK' | translate }}\n </button>\n </ng-container>\n <ng-container *ngSwitchCase=\"'cancel-delete'\">\n <button mat-button [mat-dialog-close]=\"false\" class=\"pep-spacing-element pep-button md weak\">\n {{ 'ACTIONS.CANCEL' | translate }}\n </button>\n <button mat-button [mat-dialog-close]=\"true\" class=\"pep-spacing-element pep-button md strong caution\">\n {{ 'ACTIONS.DELETE' | translate }}\n </button>\n </ng-container>\n <ng-container *ngSwitchCase=\"'custom'\">\n <ng-container *ngFor=\"let btn of data?.actionButtons\">\n <!-- [mat-dialog-close]=\"btn?.callback ? btn.callback : null\" -->\n <button mat-button (click)=\"onActionButtonClicked(btn)\" class=\"pep-spacing-element pep-button md\"\n [ngClass]=\"btn?.className != '' ? btn?.className : 'weak'\">\n {{ btn?.title }}\n </button>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n</pep-dialog>","styles":[""]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":11,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/material/dialog","name":"MAT_DIALOG_DATA","line":11,"character":16}]}],null],"parameters":[{"__symbolic":"reference","name":"PepDialogData"},{"__symbolic":"reference","name":"MatDialogRef","module":"@angular/material/dialog","arguments":[{"__symbolic":"reference","name":"any"}]}]}],"onActionButtonClicked":[{"__symbolic":"method"}]}}},"origins":{"PepDialogModule":"./dialog.module","PepDialogSizeType":"./dialog.model","PepDialogActionsType":"./dialog.model","PepDialogActionButton":"./dialog.model","PepDialogData":"./dialog.model","PepDialogComponent":"./dialog.component","PepDialogService":"./dialog.service","ɵa":"./default-dialog.component"},"importAs":"@pepperi-addons/ngx-lib/dialog"}
@@ -2,6 +2,7 @@ import { NgModule } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
3
  import { MatIconModule } from '@angular/material/icon';
4
4
  import { MatMenuModule } from '@angular/material/menu';
5
+ import { PepNgxLibModule } from '@pepperi-addons/ngx-lib';
5
6
  import { PepIconModule, PepIconRegistry, pepIconArrowRight, pepIconArrowLeft, } from '@pepperi-addons/ngx-lib/icon';
6
7
  import { PepBreadCrumbsComponent } from './bread-crumbs.component';
7
8
  export class PepBreadCrumbsModule {
@@ -21,14 +22,14 @@ PepBreadCrumbsModule.decorators = [
21
22
  MatIconModule,
22
23
  MatMenuModule,
23
24
  // ngx-lib modules
24
- PepIconModule,
25
- // PepMenuModule
25
+ PepNgxLibModule,
26
+ PepIconModule
26
27
  ],
27
28
  exports: [PepBreadCrumbsComponent],
28
- declarations: [PepBreadCrumbsComponent],
29
+ declarations: [PepBreadCrumbsComponent]
29
30
  },] }
30
31
  ];
31
32
  PepBreadCrumbsModule.ctorParameters = () => [
32
33
  { type: PepIconRegistry }
33
34
  ];
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWQtY3J1bWJzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvYnJlYWQtY3J1bWJzL2JyZWFkLWNydW1icy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV2RCxPQUFPLEVBQ0gsYUFBYSxFQUNiLGVBQWUsRUFDZixpQkFBaUIsRUFDakIsZ0JBQWdCLEdBQ25CLE1BQU0sOEJBQThCLENBQUM7QUFHdEMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFnQm5FLE1BQU0sT0FBTyxvQkFBb0I7SUFDN0IsWUFBb0IsZUFBZ0M7UUFBaEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hELElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDO1lBQy9CLGlCQUFpQjtZQUNqQixnQkFBZ0I7U0FDbkIsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7O1lBbkJKLFFBQVEsU0FBQztnQkFDTixPQUFPLEVBQUU7b0JBQ0wsWUFBWTtvQkFDWixtQkFBbUI7b0JBQ25CLGFBQWE7b0JBQ2IsYUFBYTtvQkFDYixrQkFBa0I7b0JBQ2xCLGFBQWE7b0JBQ2IsZ0JBQWdCO2lCQUNuQjtnQkFDRCxPQUFPLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztnQkFDbEMsWUFBWSxFQUFFLENBQUMsdUJBQXVCLENBQUM7YUFDMUM7OztZQXJCRyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcblxuaW1wb3J0IHtcbiAgICBQZXBJY29uTW9kdWxlLFxuICAgIFBlcEljb25SZWdpc3RyeSxcbiAgICBwZXBJY29uQXJyb3dSaWdodCxcbiAgICBwZXBJY29uQXJyb3dMZWZ0LFxufSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9pY29uJztcbmltcG9ydCB7IFBlcE1lbnVNb2R1bGUgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9tZW51JztcblxuaW1wb3J0IHsgUGVwQnJlYWRDcnVtYnNDb21wb25lbnQgfSBmcm9tICcuL2JyZWFkLWNydW1icy5jb21wb25lbnQnO1xuaW1wb3J0IHsgZnJvbSB9IGZyb20gJ3J4anMnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICAvLyBNYXRlcmlhbCBtb2R1bGVzXG4gICAgICAgIE1hdEljb25Nb2R1bGUsXG4gICAgICAgIE1hdE1lbnVNb2R1bGUsXG4gICAgICAgIC8vIG5neC1saWIgbW9kdWxlc1xuICAgICAgICBQZXBJY29uTW9kdWxlLFxuICAgICAgICAvLyBQZXBNZW51TW9kdWxlXG4gICAgXSxcbiAgICBleHBvcnRzOiBbUGVwQnJlYWRDcnVtYnNDb21wb25lbnRdLFxuICAgIGRlY2xhcmF0aW9uczogW1BlcEJyZWFkQ3J1bWJzQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgUGVwQnJlYWRDcnVtYnNNb2R1bGUge1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcGVwSWNvblJlZ2lzdHJ5OiBQZXBJY29uUmVnaXN0cnkpIHtcbiAgICAgICAgdGhpcy5wZXBJY29uUmVnaXN0cnkucmVnaXN0ZXJJY29ucyhbXG4gICAgICAgICAgICBwZXBJY29uQXJyb3dSaWdodCxcbiAgICAgICAgICAgIHBlcEljb25BcnJvd0xlZnQsXG4gICAgICAgIF0pO1xuICAgIH1cbn1cbiJdfQ==
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWQtY3J1bWJzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvYnJlYWQtY3J1bWJzL2JyZWFkLWNydW1icy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUNILGFBQWEsRUFDYixlQUFlLEVBQ2YsaUJBQWlCLEVBQ2pCLGdCQUFnQixHQUNuQixNQUFNLDhCQUE4QixDQUFDO0FBRXRDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBZW5FLE1BQU0sT0FBTyxvQkFBb0I7SUFDN0IsWUFBb0IsZUFBZ0M7UUFBaEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hELElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDO1lBQy9CLGlCQUFpQjtZQUNqQixnQkFBZ0I7U0FDbkIsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7O1lBbkJKLFFBQVEsU0FBQztnQkFDTixPQUFPLEVBQUU7b0JBQ0wsWUFBWTtvQkFDWixtQkFBbUI7b0JBQ25CLGFBQWE7b0JBQ2IsYUFBYTtvQkFDYixrQkFBa0I7b0JBQ2xCLGVBQWU7b0JBQ2YsYUFBYTtpQkFDaEI7Z0JBQ0QsT0FBTyxFQUFFLENBQUMsdUJBQXVCLENBQUM7Z0JBQ2xDLFlBQVksRUFBRSxDQUFDLHVCQUF1QixDQUFDO2FBQzFDOzs7WUFuQkcsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XG5cbmltcG9ydCB7IFBlcE5neExpYk1vZHVsZSB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliJztcbmltcG9ydCB7XG4gICAgUGVwSWNvbk1vZHVsZSxcbiAgICBQZXBJY29uUmVnaXN0cnksXG4gICAgcGVwSWNvbkFycm93UmlnaHQsXG4gICAgcGVwSWNvbkFycm93TGVmdCxcbn0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvaWNvbic7XG5cbmltcG9ydCB7IFBlcEJyZWFkQ3J1bWJzQ29tcG9uZW50IH0gZnJvbSAnLi9icmVhZC1jcnVtYnMuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgLy8gTWF0ZXJpYWwgbW9kdWxlc1xuICAgICAgICBNYXRJY29uTW9kdWxlLFxuICAgICAgICBNYXRNZW51TW9kdWxlLFxuICAgICAgICAvLyBuZ3gtbGliIG1vZHVsZXNcbiAgICAgICAgUGVwTmd4TGliTW9kdWxlLFxuICAgICAgICBQZXBJY29uTW9kdWxlXG4gICAgXSxcbiAgICBleHBvcnRzOiBbUGVwQnJlYWRDcnVtYnNDb21wb25lbnRdLFxuICAgIGRlY2xhcmF0aW9uczogW1BlcEJyZWFkQ3J1bWJzQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBQZXBCcmVhZENydW1ic01vZHVsZSB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBwZXBJY29uUmVnaXN0cnk6IFBlcEljb25SZWdpc3RyeSkge1xuICAgICAgICB0aGlzLnBlcEljb25SZWdpc3RyeS5yZWdpc3Rlckljb25zKFtcbiAgICAgICAgICAgIHBlcEljb25BcnJvd1JpZ2h0LFxuICAgICAgICAgICAgcGVwSWNvbkFycm93TGVmdCxcbiAgICAgICAgXSk7XG4gICAgfVxufVxuIl19
@@ -146,4 +146,4 @@ PepCheckboxComponent.propDecorators = {
146
146
  visible: [{ type: Input }],
147
147
  valueChange: [{ type: Output }]
148
148
  };
149
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWxpYi9jaGVja2JveC9jaGVja2JveC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFFVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWix1QkFBdUIsRUFFdkIsU0FBUyxFQUNULFVBQVUsR0FHYixNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQ0gsdUJBQXVCLEVBR3ZCLDRCQUE0QixFQUU1QixnQkFBZ0IsR0FDbkIsTUFBTSx5QkFBeUIsQ0FBQztBQVFqQyxNQUFNLE9BQU8sb0JBQW9CO0lBbUU3QixZQUNZLFFBQW1CLEVBQ25CLG9CQUE2QyxFQUM3QyxPQUFtQixFQUNuQixTQUEyQjtRQUgzQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBeUI7UUFDN0MsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUNuQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQXRFOUIsUUFBRyxHQUFHLEVBQUUsQ0FBQztRQUNULFVBQUssR0FBWSxLQUFLLENBQUM7UUFDdkIsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUVaLFVBQUssR0FBeUIsVUFBVSxDQUFDLENBQUMsbUJBQW1CO1FBVTVELGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDbEIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGVBQVUsR0FBMkIsNEJBQTRCLENBQUM7UUFDbEUsWUFBTyxHQUFHLENBQUMsQ0FBQztRQUViLHFCQUFnQixHQUFRLFNBQVMsQ0FBQztRQVUxQyxnQkFBVyxHQUFHLFVBQVUsQ0FBQztRQUVoQixTQUFJLEdBQWMsSUFBSSxDQUFDO1FBQ3ZC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SztvQkFDTCxLQUFLO29CQUNMLEtBQUs7bUJBR0wsS0FBSzt3QkFTTCxLQUFLO3VCQUNMLEtBQUs7dUJBQ0wsS0FBSzt5QkFDTCxLQUFLO3NCQUNMLEtBQUs7OEJBR0wsS0FBSzttQkFXTCxLQUFLO3VCQUNMLEtBQUs7d0JBQ0wsS0FBSzswQkFDTCxLQUFLO3lCQUNMLEtBQUs7c0JBR0wsS0FBSzswQkFtQkwsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIE9uSW5pdCxcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIE9uRGVzdHJveSxcbiAgICBSZW5kZXJlcjIsXG4gICAgRWxlbWVudFJlZixcbiAgICBPcHRpb25hbCxcbiAgICBPbkNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0Q2hlY2tib3hDaGFuZ2UgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGVja2JveCc7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge1xuICAgIFBlcEN1c3RvbWl6YXRpb25TZXJ2aWNlLFxuICAgIFBlcExheW91dFR5cGUsXG4gICAgUGVwSG9yaXpvbnRhbEFsaWdubWVudCxcbiAgICBERUZBVUxUX0hPUklaT05UQUxfQUxJR05NRU5ULFxuICAgIFBlcENoZWNrYm94RmllbGRUeXBlLFxuICAgIFBlcENoZWNrYm94RmllbGQsXG59IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdwZXAtY2hlY2tib3gnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jaGVja2JveC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY2hlY2tib3guY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUGVwQ2hlY2tib3hDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgICBASW5wdXQoKSBrZXkgPSAnJztcbiAgICBASW5wdXQoKSB2YWx1ZTogYm9vbGVhbiA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIGxhYmVsID0gJyc7XG5cbiAgICBwcml2YXRlIF90eXBlOiBQZXBDaGVja2JveEZpZWxkVHlwZSA9ICdjaGVja2JveCc7IC8vIHx8ICdib29sZWFuVGV4dCdcbiAgICBASW5wdXQoKVxuICAgIHNldCB0eXBlKHZhbHVlOiBQZXBDaGVja2JveEZpZWxkVHlwZSkge1xuICAgICAgICB0aGlzLl90eXBlID0gdmFsdWU7XG4gICAgICAgIHRoaXMuc2V0QWRkaXRpb25hbFZhbHVlT2JqZWN0KCk7XG4gICAgfVxuICAgIGdldCB0eXBlKCk6IFBlcENoZWNrYm94RmllbGRUeXBlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3R5cGU7XG4gICAgfVxuXG4gICAgQElucHV0KCkgbWFuZGF0b3J5ID0gZmFsc2U7XG4gICAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcbiAgICBASW5wdXQoKSByZWFkb25seSA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIHhBbGlnbm1lbnQ6IFBlcEhvcml6b250YWxBbGlnbm1lbnQgPSBERUZBVUxUX0hPUklaT05UQUxfQUxJR05NRU5UO1xuICAgIEBJbnB1dCgpIHJvd1NwYW4gPSAxO1xuXG4gICAgcHJpdmF0ZSBfYWRkaXRpb25hbFZhbHVlOiBhbnkgPSB1bmRlZmluZWQ7XG4gICAgQElucHV0KClcbiAgICBzZXQgYWRkaXRpb25hbFZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgdGhpcy5fYWRkaXRpb25hbFZhbHVlID0gdmFsdWU7XG4gICAgICAgIHRoaXMuc2V0QWRkaXRpb25hbFZhbHVlT2JqZWN0KCk7XG4gICAgfVxuICAgIGdldCBhZGRpdGlvbmFsVmFsdWUoKTogYW55IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2FkZGl0aW9uYWxWYWx1ZTtcbiAgICB9XG5cbiAgICBjb250cm9sVHlwZSA9ICdjaGVja2JveCc7XG5cbiAgICBASW5wdXQoKSBmb3JtOiBGb3JtR3JvdXAgPSBudWxsO1xuICAgIEBJbnB1dCgpIGlzQWN0aXZlID0gZmFsc2U7XG4gICAgQElucHV0KCkgc2hvd1RpdGxlID0gdHJ1ZTtcbiAgICBASW5wdXQoKSByZW5kZXJUaXRsZSA9IHRydWU7XG4gICAgQElucHV0KCkgbGF5b3V0VHlwZTogUGVwTGF5b3V0VHlwZSA9ICdmb3JtJztcblxuICAgIHByaXZhdGUgX3Zpc2libGUgPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHZpc2libGUodmlzaWJsZTogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl92aXNpYmxlID0gdmlzaWJsZTtcbiAgICAgICAgaWYgKHZpc2libGUpIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3MoXG4gICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAgICAgJ2hpZGRlbi1lbGVtZW50J1xuICAgICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3MoXG4gICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAgICAgJ2hpZGRlbi1lbGVtZW50J1xuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBnZXQgdmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Zpc2libGU7XG4gICAgfVxuXG4gICAgQE91dHB1dCgpXG4gICAgdmFsdWVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIHN0YW5kQWxvbmUgPSBmYWxzZTtcblxuICAgIGFkZGl0aW9uYWxWYWx1ZU9iamVjdDogYW55O1xuICAgIHB1YmxpYyBqc29uTGliID0gSlNPTjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgICAgIHByaXZhdGUgY3VzdG9taXphdGlvblNlcnZpY2U6IFBlcEN1c3RvbWl6YXRpb25TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGVsZW1lbnQ6IEVsZW1lbnRSZWYsXG4gICAgICAgIHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlXG4gICAgKSB7IH1cblxuICAgIHByaXZhdGUgc2V0QWRkaXRpb25hbFZhbHVlT2JqZWN0KCkge1xuICAgICAgICBpZiAodGhpcy5hZGRpdGlvbmFsVmFsdWUgJiYgdGhpcy50eXBlID09PSAnYm9vbGVhblRleHQnKSB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgdGhpcy5hZGRpdGlvbmFsVmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWRkaXRpb25hbFZhbHVlT2JqZWN0ID0gSlNPTi5wYXJzZShcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWRkaXRpb25hbFZhbHVlXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hZGRpdGlvbmFsVmFsdWVPYmplY3QgPSB0aGlzLmFkZGl0aW9uYWxWYWx1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICAgICAgICB0aGlzLmFkZGl0aW9uYWxWYWx1ZU9iamVjdCA9IHtcbiAgICAgICAgICAgICAgICAgICAgQ2hlY2tlZFRleHQ6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ0NIRUNLQk9YLlRSVUUnKSxcbiAgICAgICAgICAgICAgICAgICAgVW5jaGVja2VkVGV4dDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnQ0hFQ0tCT1guRkFMU0UnKSxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXREZWZhdWx0Rm9ybSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgcGVwRmllbGQgPSBuZXcgUGVwQ2hlY2tib3hGaWVsZCh7XG4gICAgICAgICAgICBrZXk6IHRoaXMua2V5LFxuICAgICAgICAgICAgdmFsdWU6IHRoaXMudmFsdWUsXG4gICAgICAgICAgICBtYW5kYXRvcnk6IHRoaXMubWFuZGF0b3J5LFxuICAgICAgICAgICAgcmVhZG9ubHk6IHRoaXMucmVhZG9ubHksXG4gICAgICAgICAgICBkaXNhYmxlZDogdGhpcy5kaXNhYmxlZCxcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZm9ybSA9IHRoaXMuY3VzdG9taXphdGlvblNlcnZpY2UuZ2V0RGVmYXVsdEZyb21Hcm91cChwZXBGaWVsZCk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmZvcm0gPT09IG51bGwpIHtcbiAgICAgICAgICAgIHRoaXMuc3RhbmRBbG9uZSA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLnNldERlZmF1bHRGb3JtKCk7XG5cbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3MoXG4gICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAgICAgUGVwQ3VzdG9taXphdGlvblNlcnZpY2UuU1RBTkRfQUxPTkVfRklFTERfQ0xBU1NfTkFNRVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IGFueSk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5zdGFuZEFsb25lKSB7XG4gICAgICAgICAgICB0aGlzLnNldERlZmF1bHRGb3JtKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgLy9cbiAgICB9XG5cbiAgICBvbk1hdGVyaWFsQ2hhbmdlKGU6IE1hdENoZWNrYm94Q2hhbmdlKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2hhbmdlVmFsdWUoZS5jaGVja2VkKTtcbiAgICB9XG5cbiAgICB0b2dnbGVDaGVja2VkKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGNvbnN0IGlzQ2hlY2tlZDogYm9vbGVhbiA9XG4gICAgICAgICAgICAgICAgdGhpcy52YWx1ZSA/IHRydWUgOiBmYWxzZTtcbiAgICAgICAgICAgIGNvbnN0IG5ld1ZhbHVlID0gIWlzQ2hlY2tlZDtcbiAgICAgICAgICAgIHRoaXMudmFsdWUgPSBuZXdWYWx1ZTtcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlVmFsdWUobmV3VmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY2hhbmdlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLmN1c3RvbWl6YXRpb25TZXJ2aWNlLnVwZGF0ZUZvcm1GaWVsZFZhbHVlKFxuICAgICAgICAgICAgdGhpcy5mb3JtLFxuICAgICAgICAgICAgdGhpcy5rZXksXG4gICAgICAgICAgICB2YWx1ZVxuICAgICAgICApO1xuICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodmFsdWUpO1xuICAgIH1cbn0iXX0=
149
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWxpYi9jaGVja2JveC9jaGVja2JveC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFFVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWix1QkFBdUIsRUFFdkIsU0FBUyxFQUNULFVBQVUsR0FHYixNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQ0gsdUJBQXVCLEVBR3ZCLDRCQUE0QixFQUU1QixnQkFBZ0IsR0FDbkIsTUFBTSx5QkFBeUIsQ0FBQztBQVFqQyxNQUFNLE9BQU8sb0JBQW9CO0lBbUU3QixZQUNZLFFBQW1CLEVBQ25CLG9CQUE2QyxFQUM3QyxPQUFtQixFQUNuQixTQUEyQjtRQUgzQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBeUI7UUFDN0MsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUNuQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQXRFOUIsUUFBRyxHQUFHLEVBQUUsQ0FBQztRQUNULFVBQUssR0FBRyxLQUFLLENBQUM7UUFDZCxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBRVosVUFBSyxHQUF5QixVQUFVLENBQUMsQ0FBQyxtQkFBbUI7UUFVNUQsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsZUFBVSxHQUEyQiw0QkFBNEIsQ0FBQztRQUNsRSxZQUFPLEdBQUcsQ0FBQyxDQUFDO1FBRWIscUJBQWdCLEdBQVEsU0FBUyxDQUFDO1FBVTFDLGdCQUFXLEdBQUcsVUFBVSxDQUFDO1FBRWhCLFNBQUksR0FBYyxJQUFJLENBQUM7UUFDdkIs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O29CQUNMLEtBQUs7b0JBQ0wsS0FBSzttQkFHTCxLQUFLO3dCQVNMLEtBQUs7dUJBQ0wsS0FBSzt1QkFDTCxLQUFLO3lCQUNMLEtBQUs7c0JBQ0wsS0FBSzs4QkFHTCxLQUFLO21CQVdMLEtBQUs7dUJBQ0wsS0FBSzt3QkFDTCxLQUFLOzBCQUNMLEtBQUs7eUJBQ0wsS0FBSztzQkFHTCxLQUFLOzBCQW1CTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgT25Jbml0LFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgT25EZXN0cm95LFxuICAgIFJlbmRlcmVyMixcbiAgICBFbGVtZW50UmVmLFxuICAgIE9wdGlvbmFsLFxuICAgIE9uQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRDaGVja2JveENoYW5nZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoZWNrYm94JztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7XG4gICAgUGVwQ3VzdG9taXphdGlvblNlcnZpY2UsXG4gICAgUGVwTGF5b3V0VHlwZSxcbiAgICBQZXBIb3Jpem9udGFsQWxpZ25tZW50LFxuICAgIERFRkFVTFRfSE9SSVpPTlRBTF9BTElHTk1FTlQsXG4gICAgUGVwQ2hlY2tib3hGaWVsZFR5cGUsXG4gICAgUGVwQ2hlY2tib3hGaWVsZCxcbn0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWInO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3BlcC1jaGVja2JveCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NoZWNrYm94LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jaGVja2JveC5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBQZXBDaGVja2JveENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICAgIEBJbnB1dCgpIGtleSA9ICcnO1xuICAgIEBJbnB1dCgpIHZhbHVlID0gZmFsc2U7XG4gICAgQElucHV0KCkgbGFiZWwgPSAnJztcblxuICAgIHByaXZhdGUgX3R5cGU6IFBlcENoZWNrYm94RmllbGRUeXBlID0gJ2NoZWNrYm94JzsgLy8gfHwgJ2Jvb2xlYW5UZXh0J1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHR5cGUodmFsdWU6IFBlcENoZWNrYm94RmllbGRUeXBlKSB7XG4gICAgICAgIHRoaXMuX3R5cGUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5zZXRBZGRpdGlvbmFsVmFsdWVPYmplY3QoKTtcbiAgICB9XG4gICAgZ2V0IHR5cGUoKTogUGVwQ2hlY2tib3hGaWVsZFR5cGUge1xuICAgICAgICByZXR1cm4gdGhpcy5fdHlwZTtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBtYW5kYXRvcnkgPSBmYWxzZTtcbiAgICBASW5wdXQoKSBkaXNhYmxlZCA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIHJlYWRvbmx5ID0gZmFsc2U7XG4gICAgQElucHV0KCkgeEFsaWdubWVudDogUGVwSG9yaXpvbnRhbEFsaWdubWVudCA9IERFRkFVTFRfSE9SSVpPTlRBTF9BTElHTk1FTlQ7XG4gICAgQElucHV0KCkgcm93U3BhbiA9IDE7XG5cbiAgICBwcml2YXRlIF9hZGRpdGlvbmFsVmFsdWU6IGFueSA9IHVuZGVmaW5lZDtcbiAgICBASW5wdXQoKVxuICAgIHNldCBhZGRpdGlvbmFsVmFsdWUodmFsdWU6IGFueSkge1xuICAgICAgICB0aGlzLl9hZGRpdGlvbmFsVmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5zZXRBZGRpdGlvbmFsVmFsdWVPYmplY3QoKTtcbiAgICB9XG4gICAgZ2V0IGFkZGl0aW9uYWxWYWx1ZSgpOiBhbnkge1xuICAgICAgICByZXR1cm4gdGhpcy5fYWRkaXRpb25hbFZhbHVlO1xuICAgIH1cblxuICAgIGNvbnRyb2xUeXBlID0gJ2NoZWNrYm94JztcblxuICAgIEBJbnB1dCgpIGZvcm06IEZvcm1Hcm91cCA9IG51bGw7XG4gICAgQElucHV0KCkgaXNBY3RpdmUgPSBmYWxzZTtcbiAgICBASW5wdXQoKSBzaG93VGl0bGUgPSB0cnVlO1xuICAgIEBJbnB1dCgpIHJlbmRlclRpdGxlID0gdHJ1ZTtcbiAgICBASW5wdXQoKSBsYXlvdXRUeXBlOiBQZXBMYXlvdXRUeXBlID0gJ2Zvcm0nO1xuXG4gICAgcHJpdmF0ZSBfdmlzaWJsZSA9IHRydWU7XG4gICAgQElucHV0KClcbiAgICBzZXQgdmlzaWJsZSh2aXNpYmxlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX3Zpc2libGUgPSB2aXNpYmxlO1xuICAgICAgICBpZiAodmlzaWJsZSkge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyhcbiAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgICAgICAnaGlkZGVuLWVsZW1lbnQnXG4gICAgICAgICAgICApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhcbiAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgICAgICAnaGlkZGVuLWVsZW1lbnQnXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgfVxuICAgIGdldCB2aXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fdmlzaWJsZTtcbiAgICB9XG5cbiAgICBAT3V0cHV0KClcbiAgICB2YWx1ZUNoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gICAgc3RhbmRBbG9uZSA9IGZhbHNlO1xuXG4gICAgYWRkaXRpb25hbFZhbHVlT2JqZWN0OiBhbnk7XG4gICAgcHVibGljIGpzb25MaWIgPSBKU09OO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICAgICAgcHJpdmF0ZSBjdXN0b21pemF0aW9uU2VydmljZTogUGVwQ3VzdG9taXphdGlvblNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZWxlbWVudDogRWxlbWVudFJlZixcbiAgICAgICAgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2VcbiAgICApIHsgfVxuXG4gICAgcHJpdmF0ZSBzZXRBZGRpdGlvbmFsVmFsdWVPYmplY3QoKSB7XG4gICAgICAgIGlmICh0aGlzLmFkZGl0aW9uYWxWYWx1ZSAmJiB0aGlzLnR5cGUgPT09ICdib29sZWFuVGV4dCcpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmFkZGl0aW9uYWxWYWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hZGRpdGlvbmFsVmFsdWVPYmplY3QgPSBKU09OLnBhcnNlKFxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hZGRpdGlvbmFsVmFsdWVcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZGl0aW9uYWxWYWx1ZU9iamVjdCA9IHRoaXMuYWRkaXRpb25hbFZhbHVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgICAgICAgIHRoaXMuYWRkaXRpb25hbFZhbHVlT2JqZWN0ID0ge1xuICAgICAgICAgICAgICAgICAgICBDaGVja2VkVGV4dDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnQ0hFQ0tCT1guVFJVRScpLFxuICAgICAgICAgICAgICAgICAgICBVbmNoZWNrZWRUZXh0OiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdDSEVDS0JPWC5GQUxTRScpLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHNldERlZmF1bHRGb3JtKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBwZXBGaWVsZCA9IG5ldyBQZXBDaGVja2JveEZpZWxkKHtcbiAgICAgICAgICAgIGtleTogdGhpcy5rZXksXG4gICAgICAgICAgICB2YWx1ZTogdGhpcy52YWx1ZSxcbiAgICAgICAgICAgIG1hbmRhdG9yeTogdGhpcy5tYW5kYXRvcnksXG4gICAgICAgICAgICByZWFkb25seTogdGhpcy5yZWFkb25seSxcbiAgICAgICAgICAgIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkLFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5mb3JtID0gdGhpcy5jdXN0b21pemF0aW9uU2VydmljZS5nZXREZWZhdWx0RnJvbUdyb3VwKHBlcEZpZWxkKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZm9ybSA9PT0gbnVsbCkge1xuICAgICAgICAgICAgdGhpcy5zdGFuZEFsb25lID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuc2V0RGVmYXVsdEZvcm0oKTtcblxuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhcbiAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgICAgICBQZXBDdXN0b21pemF0aW9uU2VydmljZS5TVEFORF9BTE9ORV9GSUVMRF9DTEFTU19OQU1FXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogYW55KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnN0YW5kQWxvbmUpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0RGVmYXVsdEZvcm0oKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICAvL1xuICAgIH1cblxuICAgIG9uTWF0ZXJpYWxDaGFuZ2UoZTogTWF0Q2hlY2tib3hDaGFuZ2UpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jaGFuZ2VWYWx1ZShlLmNoZWNrZWQpO1xuICAgIH1cblxuICAgIHRvZ2dsZUNoZWNrZWQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgY29uc3QgaXNDaGVja2VkOiBib29sZWFuID1cbiAgICAgICAgICAgICAgICB0aGlzLnZhbHVlID8gdHJ1ZSA6IGZhbHNlO1xuICAgICAgICAgICAgY29uc3QgbmV3VmFsdWUgPSAhaXNDaGVja2VkO1xuICAgICAgICAgICAgdGhpcy52YWx1ZSA9IG5ld1ZhbHVlO1xuICAgICAgICAgICAgdGhpcy5jaGFuZ2VWYWx1ZShuZXdWYWx1ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjaGFuZ2VWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMuY3VzdG9taXphdGlvblNlcnZpY2UudXBkYXRlRm9ybUZpZWxkVmFsdWUoXG4gICAgICAgICAgICB0aGlzLmZvcm0sXG4gICAgICAgICAgICB0aGlzLmtleSxcbiAgICAgICAgICAgIHZhbHVlXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgfVxufSJdfQ==
@@ -3,10 +3,10 @@ import { Injectable } from '@angular/core';
3
3
  import * as i0 from "@angular/core";
4
4
  export class PepClipboardService {
5
5
  }
6
- PepClipboardService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PepClipboardService_Factory() { return new PepClipboardService(); }, token: PepClipboardService, providedIn: "platform" });
6
+ PepClipboardService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PepClipboardService_Factory() { return new PepClipboardService(); }, token: PepClipboardService, providedIn: "root" });
7
7
  PepClipboardService.decorators = [
8
8
  { type: Injectable, args: [{
9
- providedIn: 'platform',
9
+ providedIn: 'root',
10
10
  },] }
11
11
  ];
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpcGJvYXJkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3NyYy9jb3JlL2NsaXBib2FyZC9jbGlwYm9hcmQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsT0FBTyxFQUFVLFVBQVUsRUFBWSxNQUFNLGVBQWUsQ0FBQzs7QUFNN0QsTUFBTSxPQUFPLG1CQUFtQjs7OztZQUgvQixVQUFVLFNBQUM7Z0JBQ1IsVUFBVSxFQUFFLFVBQVU7YUFDekIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBJbXBvcnQgdGhlIGNvcmUgYW5ndWxhciBzZXJ2aWNlcy5cbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdwbGF0Zm9ybScsXG59KVxuZXhwb3J0IGNsYXNzIFBlcENsaXBib2FyZFNlcnZpY2Uge1xuICAgIC8vIHByaXZhdGUgZG9tOiBEb2N1bWVudDtcbiAgICAvLyAvLyBJIGluaXRpYWxpemUgdGhlIENsaXBib2FyZCBzZXJ2aWNlLlxuICAgIC8vIC8vIC0tXG4gICAgLy8gLy8gQ0FVVElPTjogVGhpcyBzZXJ2aWNlIGlzIHRpZ2h0bHkgY291cGVkIHRvIHRoZSBicm93c2VyIERPTSAoRG9jdW1lbnQgT2JqZWN0IE1vZGVsKS5cbiAgICAvLyAvLyBCdXQsIGJ5IGluamVjdGluZyB0aGUgXCJkb2N1bWVudFwiIHJlZmVyZW5jZSByYXRoZXIgdGhhbiB0cnlpbmcgdG8gcmVmZXJlbmNlIGl0XG4gICAgLy8gLy8gZ2xvYmFsbHksIHdlIGNhbiBhdCBsZWFzdCBwcmV0ZW5kIHRoYXQgd2UgYXJlIHRyeWluZyB0byBsb3dlciB0aGUgdGlnaHQgY291cGxpbmcuXG4gICAgLy8gY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgQEluamVjdChET0NVTUVOVCkgIGRvbTogRG9jdW1lbnQpIHtcbiAgICAvLyAgICAgdGhpcy5kb20gPSBkb207XG4gICAgLy8gfVxuICAgIC8vIC8vIC0tLVxuICAgIC8vIC8vIFBVQkxJQyBNRVRIT0RTLlxuICAgIC8vIC8vIC0tLVxuICAgIC8vIC8vIEkgY29weSB0aGUgZ2l2ZW4gdmFsdWUgdG8gdGhlIHVzZXIncyBzeXN0ZW0gY2xpcGJvYXJkLiBSZXR1cm5zIGEgcHJvbWlzZSB0aGF0XG4gICAgLy8gLy8gcmVzb2x2ZXMgdG8gdGhlIGdpdmVuIHZhbHVlIG9uIHN1Y2Nlc3Mgb3IgcmVqZWN0cyB3aXRoIHRoZSByYWlzZWQgRXJyb3IuXG4gICAgLy8gcHVibGljIGNvcHkodmFsdWU6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgLy8gICAgIGNvbnN0IHByb21pc2UgPSBuZXcgUHJvbWlzZShcbiAgICAvLyAgICAgICAgIChyZXNvbHZlLCByZWplY3QpOiB2b2lkID0+IHtcbiAgICAvLyAgICAgICAgICAgICBsZXQgdGV4dGFyZWEgPSBudWxsO1xuICAgIC8vICAgICAgICAgICAgIHRyeSB7XG4gICAgLy8gICAgICAgICAgICAgICAgIC8vIEluIG9yZGVyIHRvIGV4ZWN1dGUgdGhlIFwiQ29weVwiIGNvbW1hbmQsIHdlIGFjdHVhbGx5IGhhdmUgdG8gaGF2ZVxuICAgIC8vICAgICAgICAgICAgICAgICAvLyBhIFwic2VsZWN0aW9uXCIgaW4gdGhlIGN1cnJlbnRseSByZW5kZXJlZCBkb2N1bWVudC4gQXMgc3VjaCwgd2UncmVcbiAgICAvLyAgICAgICAgICAgICAgICAgLy8gZ29pbmcgdG8gaW5qZWN0IGEgVGV4dGFyZWEgZWxlbWVudCBhbmQgLnNlbGVjdCgpIGl0IGluIG9yZGVyIHRvXG4gICAgLy8gICAgICAgICAgICAgICAgIC8vIGZvcmNlIGEgc2VsZWN0aW9uLlxuICAgIC8vICAgICAgICAgICAgICAgICAvLyAtLVxuICAgIC8vICAgICAgICAgICAgICAgICAvLyBOT1RFOiBUaGlzIFRleHRhcmVhIGlzIGJlaW5nIHJlbmRlcmVkIG9mZi1zY3JlZW4uXG4gICAgLy8gICAgICAgICAgICAgICAgIHRleHRhcmVhID0gdGhpcy5kb20uY3JlYXRlRWxlbWVudCgndGV4dGFyZWEnKTtcbiAgICAvLyAgICAgICAgICAgICAgICAgdGV4dGFyZWEuc3R5bGUuaGVpZ2h0ID0gJzBweCc7XG4gICAgLy8gICAgICAgICAgICAgICAgIHRleHRhcmVhLnN0eWxlLmxlZnQgPSAnLTEwMHB4JztcbiAgICAvLyAgICAgICAgICAgICAgICAgdGV4dGFyZWEuc3R5bGUub3BhY2l0eSA9ICcwJztcbiAgICAvLyAgICAgICAgICAgICAgICAgdGV4dGFyZWEuc3R5bGUucG9zaXRpb24gPSAnZml4ZWQnO1xuICAgIC8vICAgICAgICAgICAgICAgICB0ZXh0YXJlYS5zdHlsZS50b3AgPSAnLTEwMHB4JztcbiAgICAvLyAgICAgICAgICAgICAgICAgdGV4dGFyZWEuc3R5bGUud2lkdGggPSAnMHB4JztcbiAgICAvLyAgICAgICAgICAgICAgICAgdGhpcy5kb20uYm9keS5hcHBlbmRDaGlsZCh0ZXh0YXJlYSk7XG4gICAgLy8gICAgICAgICAgICAgICAgIC8vIFNldCBhbmQgc2VsZWN0IHRoZSB2YWx1ZSAoY3JlYXRpbmcgYW4gYWN0aXZlIFNlbGVjdGlvbiByYW5nZSkuXG4gICAgLy8gICAgICAgICAgICAgICAgIHRleHRhcmVhLnZhbHVlID0gdmFsdWU7XG4gICAgLy8gICAgICAgICAgICAgICAgIHRleHRhcmVhLnNlbGVjdCgpO1xuICAgIC8vICAgICAgICAgICAgICAgICAvLyBBc2sgdGhlIGJyb3dzZXIgdG8gY29weSB0aGUgY3VycmVudCBzZWxlY3Rpb24gdG8gdGhlIGNsaXBib2FyZC5cbiAgICAvLyAgICAgICAgICAgICAgICAgdGhpcy5kb20uZXhlY0NvbW1hbmQoJ2NvcHknKTtcbiAgICAvLyAgICAgICAgICAgICAgICAgcmVzb2x2ZSh2YWx1ZSk7XG4gICAgLy8gICAgICAgICAgICAgfSBmaW5hbGx5IHtcbiAgICAvLyAgICAgICAgICAgICAgICAgLy8gQ2xlYW51cCAtIHJlbW92ZSB0aGUgVGV4dGFyZWEgZnJvbSB0aGUgRE9NIGlmIGl0IHdhcyBpbmplY3RlZC5cbiAgICAvLyAgICAgICAgICAgICAgICAgaWYgKHRleHRhcmVhICYmIHRleHRhcmVhLnBhcmVudE5vZGUpIHtcbiAgICAvLyAgICAgICAgICAgICAgICAgICAgIHRleHRhcmVhLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodGV4dGFyZWEpO1xuICAgIC8vICAgICAgICAgICAgICAgICB9XG4gICAgLy8gICAgICAgICAgICAgfVxuICAgIC8vICAgICAgICAgfVxuICAgIC8vICAgICApO1xuICAgIC8vICAgICByZXR1cm4gKHByb21pc2UpO1xuICAgIC8vIH1cbn1cbiJdfQ==
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpcGJvYXJkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3NyYy9jb3JlL2NsaXBib2FyZC9jbGlwYm9hcmQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsT0FBTyxFQUFVLFVBQVUsRUFBWSxNQUFNLGVBQWUsQ0FBQzs7QUFNN0QsTUFBTSxPQUFPLG1CQUFtQjs7OztZQUgvQixVQUFVLFNBQUM7Z0JBQ1IsVUFBVSxFQUFFLE1BQU07YUFDckIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBJbXBvcnQgdGhlIGNvcmUgYW5ndWxhciBzZXJ2aWNlcy5cbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgUGVwQ2xpcGJvYXJkU2VydmljZSB7XG4gICAgLy8gcHJpdmF0ZSBkb206IERvY3VtZW50O1xuICAgIC8vIC8vIEkgaW5pdGlhbGl6ZSB0aGUgQ2xpcGJvYXJkIHNlcnZpY2UuXG4gICAgLy8gLy8gLS1cbiAgICAvLyAvLyBDQVVUSU9OOiBUaGlzIHNlcnZpY2UgaXMgdGlnaHRseSBjb3VwZWQgdG8gdGhlIGJyb3dzZXIgRE9NIChEb2N1bWVudCBPYmplY3QgTW9kZWwpLlxuICAgIC8vIC8vIEJ1dCwgYnkgaW5qZWN0aW5nIHRoZSBcImRvY3VtZW50XCIgcmVmZXJlbmNlIHJhdGhlciB0aGFuIHRyeWluZyB0byByZWZlcmVuY2UgaXRcbiAgICAvLyAvLyBnbG9iYWxseSwgd2UgY2FuIGF0IGxlYXN0IHByZXRlbmQgdGhhdCB3ZSBhcmUgdHJ5aW5nIHRvIGxvd2VyIHRoZSB0aWdodCBjb3VwbGluZy5cbiAgICAvLyBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBASW5qZWN0KERPQ1VNRU5UKSAgZG9tOiBEb2N1bWVudCkge1xuICAgIC8vICAgICB0aGlzLmRvbSA9IGRvbTtcbiAgICAvLyB9XG4gICAgLy8gLy8gLS0tXG4gICAgLy8gLy8gUFVCTElDIE1FVEhPRFMuXG4gICAgLy8gLy8gLS0tXG4gICAgLy8gLy8gSSBjb3B5IHRoZSBnaXZlbiB2YWx1ZSB0byB0aGUgdXNlcidzIHN5c3RlbSBjbGlwYm9hcmQuIFJldHVybnMgYSBwcm9taXNlIHRoYXRcbiAgICAvLyAvLyByZXNvbHZlcyB0byB0aGUgZ2l2ZW4gdmFsdWUgb24gc3VjY2VzcyBvciByZWplY3RzIHdpdGggdGhlIHJhaXNlZCBFcnJvci5cbiAgICAvLyBwdWJsaWMgY29weSh2YWx1ZTogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICAvLyAgICAgY29uc3QgcHJvbWlzZSA9IG5ldyBQcm9taXNlKFxuICAgIC8vICAgICAgICAgKHJlc29sdmUsIHJlamVjdCk6IHZvaWQgPT4ge1xuICAgIC8vICAgICAgICAgICAgIGxldCB0ZXh0YXJlYSA9IG51bGw7XG4gICAgLy8gICAgICAgICAgICAgdHJ5IHtcbiAgICAvLyAgICAgICAgICAgICAgICAgLy8gSW4gb3JkZXIgdG8gZXhlY3V0ZSB0aGUgXCJDb3B5XCIgY29tbWFuZCwgd2UgYWN0dWFsbHkgaGF2ZSB0byBoYXZlXG4gICAgLy8gICAgICAgICAgICAgICAgIC8vIGEgXCJzZWxlY3Rpb25cIiBpbiB0aGUgY3VycmVudGx5IHJlbmRlcmVkIGRvY3VtZW50LiBBcyBzdWNoLCB3ZSdyZVxuICAgIC8vICAgICAgICAgICAgICAgICAvLyBnb2luZyB0byBpbmplY3QgYSBUZXh0YXJlYSBlbGVtZW50IGFuZCAuc2VsZWN0KCkgaXQgaW4gb3JkZXIgdG9cbiAgICAvLyAgICAgICAgICAgICAgICAgLy8gZm9yY2UgYSBzZWxlY3Rpb24uXG4gICAgLy8gICAgICAgICAgICAgICAgIC8vIC0tXG4gICAgLy8gICAgICAgICAgICAgICAgIC8vIE5PVEU6IFRoaXMgVGV4dGFyZWEgaXMgYmVpbmcgcmVuZGVyZWQgb2ZmLXNjcmVlbi5cbiAgICAvLyAgICAgICAgICAgICAgICAgdGV4dGFyZWEgPSB0aGlzLmRvbS5jcmVhdGVFbGVtZW50KCd0ZXh0YXJlYScpO1xuICAgIC8vICAgICAgICAgICAgICAgICB0ZXh0YXJlYS5zdHlsZS5oZWlnaHQgPSAnMHB4JztcbiAgICAvLyAgICAgICAgICAgICAgICAgdGV4dGFyZWEuc3R5bGUubGVmdCA9ICctMTAwcHgnO1xuICAgIC8vICAgICAgICAgICAgICAgICB0ZXh0YXJlYS5zdHlsZS5vcGFjaXR5ID0gJzAnO1xuICAgIC8vICAgICAgICAgICAgICAgICB0ZXh0YXJlYS5zdHlsZS5wb3NpdGlvbiA9ICdmaXhlZCc7XG4gICAgLy8gICAgICAgICAgICAgICAgIHRleHRhcmVhLnN0eWxlLnRvcCA9ICctMTAwcHgnO1xuICAgIC8vICAgICAgICAgICAgICAgICB0ZXh0YXJlYS5zdHlsZS53aWR0aCA9ICcwcHgnO1xuICAgIC8vICAgICAgICAgICAgICAgICB0aGlzLmRvbS5ib2R5LmFwcGVuZENoaWxkKHRleHRhcmVhKTtcbiAgICAvLyAgICAgICAgICAgICAgICAgLy8gU2V0IGFuZCBzZWxlY3QgdGhlIHZhbHVlIChjcmVhdGluZyBhbiBhY3RpdmUgU2VsZWN0aW9uIHJhbmdlKS5cbiAgICAvLyAgICAgICAgICAgICAgICAgdGV4dGFyZWEudmFsdWUgPSB2YWx1ZTtcbiAgICAvLyAgICAgICAgICAgICAgICAgdGV4dGFyZWEuc2VsZWN0KCk7XG4gICAgLy8gICAgICAgICAgICAgICAgIC8vIEFzayB0aGUgYnJvd3NlciB0byBjb3B5IHRoZSBjdXJyZW50IHNlbGVjdGlvbiB0byB0aGUgY2xpcGJvYXJkLlxuICAgIC8vICAgICAgICAgICAgICAgICB0aGlzLmRvbS5leGVjQ29tbWFuZCgnY29weScpO1xuICAgIC8vICAgICAgICAgICAgICAgICByZXNvbHZlKHZhbHVlKTtcbiAgICAvLyAgICAgICAgICAgICB9IGZpbmFsbHkge1xuICAgIC8vICAgICAgICAgICAgICAgICAvLyBDbGVhbnVwIC0gcmVtb3ZlIHRoZSBUZXh0YXJlYSBmcm9tIHRoZSBET00gaWYgaXQgd2FzIGluamVjdGVkLlxuICAgIC8vICAgICAgICAgICAgICAgICBpZiAodGV4dGFyZWEgJiYgdGV4dGFyZWEucGFyZW50Tm9kZSkge1xuICAgIC8vICAgICAgICAgICAgICAgICAgICAgdGV4dGFyZWEucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh0ZXh0YXJlYSk7XG4gICAgLy8gICAgICAgICAgICAgICAgIH1cbiAgICAvLyAgICAgICAgICAgICB9XG4gICAgLy8gICAgICAgICB9XG4gICAgLy8gICAgICk7XG4gICAgLy8gICAgIHJldHVybiAocHJvbWlzZSk7XG4gICAgLy8gfVxufVxuIl19
@@ -93,10 +93,10 @@ export class PepAddonService {
93
93
  });
94
94
  }
95
95
  }
96
- PepAddonService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PepAddonService_Factory() { return new PepAddonService(i0.ɵɵinject(i1.PepSessionService), i0.ɵɵinject(i2.PepHttpService), i0.ɵɵinject(i3.PepLoaderService)); }, token: PepAddonService, providedIn: "platform" });
96
+ PepAddonService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PepAddonService_Factory() { return new PepAddonService(i0.ɵɵinject(i1.PepSessionService), i0.ɵɵinject(i2.PepHttpService), i0.ɵɵinject(i3.PepLoaderService)); }, token: PepAddonService, providedIn: "root" });
97
97
  PepAddonService.decorators = [
98
98
  { type: Injectable, args: [{
99
- providedIn: 'platform',
99
+ providedIn: 'root',
100
100
  },] }
101
101
  ];
102
102
  PepAddonService.ctorParameters = () => [
@@ -104,4 +104,4 @@ PepAddonService.ctorParameters = () => [
104
104
  { type: PepHttpService },
105
105
  { type: PepLoaderService }
106
106
  ];
107
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvc3JjL2NvcmUvY29tbW9uL3NlcnZpY2VzL2FkZG9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV0RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFHdEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0saUNBQWlDLENBQUM7Ozs7O0FBRzNFOztFQUVFO0FBSUYsTUFBTSxPQUFPLGVBQWU7SUFNeEIsWUFDWSxjQUFpQyxFQUNqQyxXQUEyQixFQUMzQixhQUErQjtRQUYvQixtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFDakMsZ0JBQVcsR0FBWCxXQUFXLENBQWdCO1FBQzNCLGtCQUFhLEdBQWIsYUFBYSxDQUFrQjtRQVIxQiwwQkFBcUIsR0FBRyxpQkFBaUIsQ0FBQztRQUMxQyxzQ0FBaUMsR0FBRyw0QkFBNEIsQ0FBQztRQUNqRSw0QkFBdUIsR0FBRyxhQUFhLENBQUM7UUFDeEMsa0NBQTZCLEdBQUcsR0FBRyxJQUFJLENBQUMsdUJBQXVCLFFBQVEsQ0FBQztRQU9yRixFQUFFO0lBQ04sQ0FBQztJQUVPLHdCQUF3QixDQUFDLE9BQWdCO1FBQzdDLE9BQU8sT0FBTztZQUNWLENBQUMsQ0FBQyxJQUFJLENBQUMsNkJBQTZCO1lBQ3BDLENBQUMsQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUM7SUFDdkMsQ0FBQztJQUVELG9CQUFvQixDQUFDLFlBQVksR0FBRyxFQUFFO1FBQ2xDLElBQUksWUFBWSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7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akIsY0FBYztZQUNkLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBlcFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi9zZXNzaW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGVwRmlsZVNlcnZpY2UgfSBmcm9tICcuL2ZpbGUuc2VydmljZSc7XG5pbXBvcnQgeyBQZXBIdHRwU2VydmljZSB9IGZyb20gJy4uLy4uL2h0dHAvc2VydmljZXMvaHR0cC5zZXJ2aWNlJztcbmltcG9ydCB7IFBlcExvYWRlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9odHRwL3NlcnZpY2VzL2xvYWRlci5zZXJ2aWNlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBNdWx0aVRyYW5zbGF0ZUh0dHBMb2FkZXIgfSBmcm9tICduZ3gtdHJhbnNsYXRlLW11bHRpLWh0dHAtbG9hZGVyJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcblxuLypcbiAgICBUaGlzIHNlcnZpY2UgaXMgdGhlIHdlYmFwcCBhcGkgZm9yIGFkZG9uIHVzZWdlLlxuKi9cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncGxhdGZvcm0nLFxufSlcbmV4cG9ydCBjbGFzcyBQZXBBZGRvblNlcnZpY2Uge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgQURET05fQVNTRVRTX1BBVEhfS0VZID0gJ0FkZG9uQXNzZXRzUGF0aCc7XG4gICAgcHJpdmF0ZSByZWFkb25seSBBRERPTlNfRElDVElPTkFSWV9BU1NFVFNfUEFUSF9LRVkgPSAnQWRkb25zRGljdGlvbmFyeUFzc2V0c1BhdGgnO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgQURET05fQVBJX1JFTEFUSVZFX1BBVEggPSAnL2FkZG9ucy9hcGknO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgQURET05fQVBJX0FTWU5DX1JFTEFUSVZFX1BBVEggPSBgJHt0aGlzLkFERE9OX0FQSV9SRUxBVElWRV9QQVRIfS9hc3luY2A7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBzZXNzaW9uU2VydmljZTogUGVwU2Vzc2lvblNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgaHR0cFNlcnZpY2U6IFBlcEh0dHBTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGxvYWRlclNlcnZpY2U6IFBlcExvYWRlclNlcnZpY2VcbiAgICApIHtcbiAgICAgICAgLy9cbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEFkZG9uQmFzZVJlbGF0aXZlUGF0aChpc0FzeW5jOiBib29sZWFuKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGlzQXN5bmNcbiAgICAgICAgICAgID8gdGhpcy5BRERPTl9BUElfQVNZTkNfUkVMQVRJVkVfUEFUSFxuICAgICAgICAgICAgOiB0aGlzLkFERE9OX0FQSV9SRUxBVElWRV9QQVRIO1xuICAgIH1cblxuICAgIGdldEFkZG9uU3RhdGljRm9sZGVyKHN1YkFkZG9uVVVJRCA9ICcnKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKHN1YkFkZG9uVVVJRC5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBjb25zdCBhZGRvbnNEaWN0aW9uYXJ5ID0gdGhpcy5zZXNzaW9uU2VydmljZS5nZXRPYmplY3QodGhpcy5BRERPTlNfRElDVElPTkFSWV9BU1NFVFNfUEFUSF9LRVkpO1xuICAgICAgICAgICAgcmV0dXJuIGFkZG9uc0RpY3Rpb25hcnkgJiYgYWRkb25zRGljdGlvbmFyeVtzdWJBZGRvblVVSURdID8gYWRkb25zRGljdGlvbmFyeVtzdWJBZGRvblVVSURdIDogJyc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5zZXNzaW9uU2VydmljZS5nZXRPYmplY3QodGhpcy5BRERPTl9BU1NFVFNfUEFUSF9LRVkpIHx8ICcnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2V0QWRkb25TdGF0aWNGb2xkZXIocGF0aDogc3RyaW5nLCBzdWJBZGRvblVVSUQgPSAnJyk6IHZvaWQge1xuICAgICAgICBpZiAoc3ViQWRkb25VVUlELmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGNvbnN0IGFkZG9uc0RpY3Rpb25hcnkgPSB0aGlzLnNlc3Npb25TZXJ2aWNlLmdldE9iamVjdCh0aGlzLkFERE9OU19ESUNUSU9OQVJZX0FTU0VUU19QQVRIX0tFWSkgPz8ge307XG4gICAgICAgICAgICBhZGRvbnNEaWN0aW9uYXJ5W3N1YkFkZG9uVVVJRF0gPSBwYXRoO1xuICAgICAgICAgICAgdGhpcy5zZXNzaW9uU2VydmljZS5zZXRPYmplY3QodGhpcy5BRERPTlNfRElDVElPTkFSWV9BU1NFVFNfUEFUSF9LRVksIGFkZG9uc0RpY3Rpb25hcnkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2Vzc2lvblNlcnZpY2Uuc2V0T2JqZWN0KHRoaXMuQURET05fQVNTRVRTX1BBVEhfS0VZLCBwYXRoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldEFkZG9uQXBpQ2FsbChcbiAgICAgICAgYWRkb25VVUlEOiBzdHJpbmcsXG4gICAgICAgIGZpbGVOYW1lOiBzdHJpbmcsXG4gICAgICAgIGZ1bmN0aW9uTmFtZTogc3RyaW5nLFxuICAgICAgICBodHRwT3B0aW9ucyA9IHt9LFxuICAgICAgICBpc0FzeW5jID0gZmFsc2VcbiAgICApOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5nZXRQYXBpQXBpQ2FsbChcbiAgICAgICAgICAgIGAke3RoaXMuZ2V0QWRkb25CYXNlUmVsYXRpdmVQYXRoKFxuICAgICAgICAgICAgICAgIGlzQXN5bmNcbiAgICAgICAgICAgICl9LyR7YWRkb25VVUlEfS8ke2ZpbGVOYW1lfS8ke2Z1bmN0aW9uTmFtZX1gLFxuICAgICAgICAgICAgaHR0cE9wdGlvbnNcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwb3N0QWRkb25BcGlDYWxsKFxuICAgICAgICBhZGRvblVVSUQ6IHN0cmluZyxcbiAgICAgICAgZmlsZU5hbWU6IHN0cmluZyxcbiAgICAgICAgZnVuY3Rpb25OYW1lOiBzdHJpbmcsXG4gICAgICAgIGJvZHkgPSB7fSxcbiAgICAgICAgaHR0cE9wdGlvbnMgPSB7fSxcbiAgICAgICAgaXNBc3luYyA9IGZhbHNlXG4gICAgKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UucG9zdFBhcGlBcGlDYWxsKFxuICAgICAgICAgICAgYCR7dGhpcy5nZXRBZGRvbkJhc2VSZWxhdGl2ZVBhdGgoXG4gICAgICAgICAgICAgICAgaXNBc3luY1xuICAgICAgICAgICAgKX0vJHthZGRvblVVSUR9LyR7ZmlsZU5hbWV9LyR7ZnVuY3Rpb25OYW1lfWAsXG4gICAgICAgICAgICBib2R5LFxuICAgICAgICAgICAgaHR0cE9wdGlvbnNcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBUT0RPOiBuZWVkIHRvIGNoZWsgdGhpcyBpZiB0aGUgbG9hZGVyIGlzIHdvcmtpbmcuXG4gICAgZmV0Y2goaW5wdXQ6IFJlcXVlc3RJbmZvLCBpbml0PzogUmVxdWVzdEluaXQpOiBQcm9taXNlPFJlc3BvbnNlPiB7XG4gICAgICAgIHRoaXMubG9hZGVyU2VydmljZS5zaG93KCk7XG5cbiAgICAgICAgcmV0dXJuIHdpbmRvdy5mZXRjaChpbnB1dCwgaW5pdCkuZmluYWxseSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmxvYWRlclNlcnZpY2UuaGlkZSgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGNyZWF0ZURlZmF1bHRNdWx0aVRyYW5zbGF0ZUxvYWRlcihcbiAgICAgICAgaHR0cDogSHR0cENsaWVudCxcbiAgICAgICAgZmlsZVNlcnZpY2U6IFBlcEZpbGVTZXJ2aWNlLFxuICAgICAgICBhZGRvblNlcnZpY2U6IFBlcEFkZG9uU2VydmljZSxcbiAgICAgICAgc3ViQWRkb25VVUlEID0gJydcbiAgICApIHtcbiAgICAgICAgY29uc3QgYWRkb25TdGF0aWNGb2xkZXIgPSBhZGRvblNlcnZpY2UuZ2V0QWRkb25TdGF0aWNGb2xkZXIoc3ViQWRkb25VVUlEKTtcbiAgICAgICAgY29uc3QgdHJhbnNsYXRpb25zUGF0aDogc3RyaW5nID0gZmlsZVNlcnZpY2UuZ2V0QXNzZXRzVHJhbnNsYXRpb25zUGF0aChhZGRvblN0YXRpY0ZvbGRlcik7XG4gICAgICAgIGNvbnN0IHRyYW5zbGF0aW9uc1N1ZmZpeDogc3RyaW5nID0gZmlsZVNlcnZpY2UuZ2V0QXNzZXRzVHJhbnNsYXRpb25zU3VmZml4KCk7XG4gICAgICAgIGNvbnN0IGRlZmF1bHRTdWJGb2xkZXIgPSAnYXNzZXRzL2kxOG4vJztcblxuICAgICAgICByZXR1cm4gbmV3IE11bHRpVHJhbnNsYXRlSHR0cExvYWRlcihodHRwLCBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgcHJlZml4OiB0cmFuc2xhdGlvbnNQYXRoLFxuICAgICAgICAgICAgICAgIHN1ZmZpeDogdHJhbnNsYXRpb25zU3VmZml4LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBwcmVmaXg6IGFkZG9uU3RhdGljRm9sZGVyLmxlbmd0aCA+IDAgPyBgJHthZGRvblN0YXRpY0ZvbGRlcn0ke2RlZmF1bHRTdWJGb2xkZXJ9YCA6IGAvJHtkZWZhdWx0U3ViRm9sZGVyfWAsXG4gICAgICAgICAgICAgICAgc3VmZml4OiAnLmpzb24nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXSk7XG4gICAgfVxuXG4gICAgc2V0RGVmYXVsdFRyYW5zbGF0ZUxhbmcodHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLCB1cmxMYW5nUGFyYW0gPSAndXNlckxhbmcnKSB7XG4gICAgICAgIGxldCB1c2VyTGFuZyA9ICdlbic7XG4gICAgICAgIHRyYW5zbGF0ZS5zZXREZWZhdWx0TGFuZyh1c2VyTGFuZyk7XG4gICAgICAgIHVzZXJMYW5nID0gdHJhbnNsYXRlLmdldEJyb3dzZXJMYW5nKCkuc3BsaXQoJy0nKVswXTsgLy8gdXNlIG5hdmlnYXRvciBsYW5nIGlmIGF2YWlsYWJsZVxuXG4gICAgICAgIGlmICh1cmxMYW5nUGFyYW0ubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgY29uc3QgaW5kZXggPSBsb2NhdGlvbi5ocmVmLmluZGV4T2YodXJsTGFuZ1BhcmFtKTtcblxuICAgICAgICAgICAgaWYgKGluZGV4ID4gLTEpIHtcbiAgICAgICAgICAgICAgICAvLyB1cmxMYW5nUGFyYW09WFhcbiAgICAgICAgICAgICAgICBjb25zdCBzdGFydEluZGV4ID0gaW5kZXggKyB1cmxMYW5nUGFyYW0ubGVuZ3RoICsgJz0nLmxlbmd0aDtcbiAgICAgICAgICAgICAgICB1c2VyTGFuZyA9IGxvY2F0aW9uLmhyZWYuc3Vic3RyaW5nKHN0YXJ0SW5kZXgsIHN0YXJ0SW5kZXggKyAyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIHRoZSBsYW5nIHRvIHVzZSwgaWYgdGhlIGxhbmcgaXNuJ3QgYXZhaWxhYmxlLCBpdCB3aWxsIHVzZSB0aGUgY3VycmVudCBsb2FkZXIgdG8gZ2V0IHRoZW1cbiAgICAgICAgdHJhbnNsYXRlLnVzZSh1c2VyTGFuZykuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xuICAgICAgICAgICAgLy8gSW4gaGVyZSB5b3UgY2FuIHB1dCB0aGUgY29kZSB5b3Ugd2FudC4gQXQgdGhpcyBwb2ludCB0aGUgbGFuZyB3aWxsIGJlIGxvYWRlZFxuICAgICAgICB9KTtcbiAgICB9XG5cbn1cbiJdfQ==
107
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvc3JjL2NvcmUvY29tbW9uL3NlcnZpY2VzL2FkZG9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV0RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFHdEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0saUNBQWlDLENBQUM7Ozs7O0FBRzNFOztFQUVFO0FBSUYsTUFBTSxPQUFPLGVBQWU7SUFNeEIsWUFDWSxjQUFpQyxFQUNqQyxXQUEyQixFQUMzQixhQUErQjtRQUYvQixtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFDakMsZ0JBQVcsR0FBWCxXQUFXLENBQWdCO1FBQzNCLGtCQUFhLEdBQWIsYUFBYSxDQUFrQjtRQVIxQiwwQkFBcUIsR0FBRyxpQkFBaUIsQ0FBQztRQUMxQyxzQ0FBaUMsR0FBRyw0QkFBNEIsQ0FBQztRQUNqRSw0QkFBdUIsR0FBRyxhQUFhLENBQUM7UUFDeEMsa0NBQTZCLEdBQUcsR0FBRyxJQUFJLENBQUMsdUJBQXVCLFFBQVEsQ0FBQztRQU9yRixFQUFFO0lBQ04sQ0FBQztJQUVPLHdCQUF3QixDQUFDLE9BQWdCO1FBQzdDLE9BQU8sT0FBTztZQUNWLENBQUMsQ0FBQyxJQUFJLENBQUMsNkJBQTZCO1lBQ3BDLENBQUMsQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUM7SUFDdkMsQ0FBQztJQUVELG9CQUFvQixDQUFDLFlBQVksR0FBRyxFQUFFO1FBQ2xDLElBQUksWUFBWSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7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akIsY0FBYztZQUNkLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBlcFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi9zZXNzaW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGVwRmlsZVNlcnZpY2UgfSBmcm9tICcuL2ZpbGUuc2VydmljZSc7XG5pbXBvcnQgeyBQZXBIdHRwU2VydmljZSB9IGZyb20gJy4uLy4uL2h0dHAvc2VydmljZXMvaHR0cC5zZXJ2aWNlJztcbmltcG9ydCB7IFBlcExvYWRlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9odHRwL3NlcnZpY2VzL2xvYWRlci5zZXJ2aWNlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBNdWx0aVRyYW5zbGF0ZUh0dHBMb2FkZXIgfSBmcm9tICduZ3gtdHJhbnNsYXRlLW11bHRpLWh0dHAtbG9hZGVyJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcblxuLypcbiAgICBUaGlzIHNlcnZpY2UgaXMgdGhlIHdlYmFwcCBhcGkgZm9yIGFkZG9uIHVzZWdlLlxuKi9cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFBlcEFkZG9uU2VydmljZSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBBRERPTl9BU1NFVFNfUEFUSF9LRVkgPSAnQWRkb25Bc3NldHNQYXRoJztcbiAgICBwcml2YXRlIHJlYWRvbmx5IEFERE9OU19ESUNUSU9OQVJZX0FTU0VUU19QQVRIX0tFWSA9ICdBZGRvbnNEaWN0aW9uYXJ5QXNzZXRzUGF0aCc7XG4gICAgcHJpdmF0ZSByZWFkb25seSBBRERPTl9BUElfUkVMQVRJVkVfUEFUSCA9ICcvYWRkb25zL2FwaSc7XG4gICAgcHJpdmF0ZSByZWFkb25seSBBRERPTl9BUElfQVNZTkNfUkVMQVRJVkVfUEFUSCA9IGAke3RoaXMuQURET05fQVBJX1JFTEFUSVZFX1BBVEh9L2FzeW5jYDtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHNlc3Npb25TZXJ2aWNlOiBQZXBTZXNzaW9uU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBodHRwU2VydmljZTogUGVwSHR0cFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgbG9hZGVyU2VydmljZTogUGVwTG9hZGVyU2VydmljZVxuICAgICkge1xuICAgICAgICAvL1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0QWRkb25CYXNlUmVsYXRpdmVQYXRoKGlzQXN5bmM6IGJvb2xlYW4pOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gaXNBc3luY1xuICAgICAgICAgICAgPyB0aGlzLkFERE9OX0FQSV9BU1lOQ19SRUxBVElWRV9QQVRIXG4gICAgICAgICAgICA6IHRoaXMuQURET05fQVBJX1JFTEFUSVZFX1BBVEg7XG4gICAgfVxuXG4gICAgZ2V0QWRkb25TdGF0aWNGb2xkZXIoc3ViQWRkb25VVUlEID0gJycpOiBzdHJpbmcge1xuICAgICAgICBpZiAoc3ViQWRkb25VVUlELmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGNvbnN0IGFkZG9uc0RpY3Rpb25hcnkgPSB0aGlzLnNlc3Npb25TZXJ2aWNlLmdldE9iamVjdCh0aGlzLkFERE9OU19ESUNUSU9OQVJZX0FTU0VUU19QQVRIX0tFWSk7XG4gICAgICAgICAgICByZXR1cm4gYWRkb25zRGljdGlvbmFyeSAmJiBhZGRvbnNEaWN0aW9uYXJ5W3N1YkFkZG9uVVVJRF0gPyBhZGRvbnNEaWN0aW9uYXJ5W3N1YkFkZG9uVVVJRF0gOiAnJztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnNlc3Npb25TZXJ2aWNlLmdldE9iamVjdCh0aGlzLkFERE9OX0FTU0VUU19QQVRIX0tFWSkgfHwgJyc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZXRBZGRvblN0YXRpY0ZvbGRlcihwYXRoOiBzdHJpbmcsIHN1YkFkZG9uVVVJRCA9ICcnKTogdm9pZCB7XG4gICAgICAgIGlmIChzdWJBZGRvblVVSUQubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgY29uc3QgYWRkb25zRGljdGlvbmFyeSA9IHRoaXMuc2Vzc2lvblNlcnZpY2UuZ2V0T2JqZWN0KHRoaXMuQURET05TX0RJQ1RJT05BUllfQVNTRVRTX1BBVEhfS0VZKSA/PyB7fTtcbiAgICAgICAgICAgIGFkZG9uc0RpY3Rpb25hcnlbc3ViQWRkb25VVUlEXSA9IHBhdGg7XG4gICAgICAgICAgICB0aGlzLnNlc3Npb25TZXJ2aWNlLnNldE9iamVjdCh0aGlzLkFERE9OU19ESUNUSU9OQVJZX0FTU0VUU19QQVRIX0tFWSwgYWRkb25zRGljdGlvbmFyeSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5zZXNzaW9uU2VydmljZS5zZXRPYmplY3QodGhpcy5BRERPTl9BU1NFVFNfUEFUSF9LRVksIHBhdGgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0QWRkb25BcGlDYWxsKFxuICAgICAgICBhZGRvblVVSUQ6IHN0cmluZyxcbiAgICAgICAgZmlsZU5hbWU6IHN0cmluZyxcbiAgICAgICAgZnVuY3Rpb25OYW1lOiBzdHJpbmcsXG4gICAgICAgIGh0dHBPcHRpb25zID0ge30sXG4gICAgICAgIGlzQXN5bmMgPSBmYWxzZVxuICAgICk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLmdldFBhcGlBcGlDYWxsKFxuICAgICAgICAgICAgYCR7dGhpcy5nZXRBZGRvbkJhc2VSZWxhdGl2ZVBhdGgoXG4gICAgICAgICAgICAgICAgaXNBc3luY1xuICAgICAgICAgICAgKX0vJHthZGRvblVVSUR9LyR7ZmlsZU5hbWV9LyR7ZnVuY3Rpb25OYW1lfWAsXG4gICAgICAgICAgICBodHRwT3B0aW9uc1xuICAgICAgICApO1xuICAgIH1cblxuICAgIHBvc3RBZGRvbkFwaUNhbGwoXG4gICAgICAgIGFkZG9uVVVJRDogc3RyaW5nLFxuICAgICAgICBmaWxlTmFtZTogc3RyaW5nLFxuICAgICAgICBmdW5jdGlvbk5hbWU6IHN0cmluZyxcbiAgICAgICAgYm9keSA9IHt9LFxuICAgICAgICBodHRwT3B0aW9ucyA9IHt9LFxuICAgICAgICBpc0FzeW5jID0gZmFsc2VcbiAgICApOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5wb3N0UGFwaUFwaUNhbGwoXG4gICAgICAgICAgICBgJHt0aGlzLmdldEFkZG9uQmFzZVJlbGF0aXZlUGF0aChcbiAgICAgICAgICAgICAgICBpc0FzeW5jXG4gICAgICAgICAgICApfS8ke2FkZG9uVVVJRH0vJHtmaWxlTmFtZX0vJHtmdW5jdGlvbk5hbWV9YCxcbiAgICAgICAgICAgIGJvZHksXG4gICAgICAgICAgICBodHRwT3B0aW9uc1xuICAgICAgICApO1xuICAgIH1cblxuICAgIC8vIFRPRE86IG5lZWQgdG8gY2hlayB0aGlzIGlmIHRoZSBsb2FkZXIgaXMgd29ya2luZy5cbiAgICBmZXRjaChpbnB1dDogUmVxdWVzdEluZm8sIGluaXQ/OiBSZXF1ZXN0SW5pdCk6IFByb21pc2U8UmVzcG9uc2U+IHtcbiAgICAgICAgdGhpcy5sb2FkZXJTZXJ2aWNlLnNob3coKTtcblxuICAgICAgICByZXR1cm4gd2luZG93LmZldGNoKGlucHV0LCBpbml0KS5maW5hbGx5KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMubG9hZGVyU2VydmljZS5oaWRlKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgY3JlYXRlRGVmYXVsdE11bHRpVHJhbnNsYXRlTG9hZGVyKFxuICAgICAgICBodHRwOiBIdHRwQ2xpZW50LFxuICAgICAgICBmaWxlU2VydmljZTogUGVwRmlsZVNlcnZpY2UsXG4gICAgICAgIGFkZG9uU2VydmljZTogUGVwQWRkb25TZXJ2aWNlLFxuICAgICAgICBzdWJBZGRvblVVSUQgPSAnJ1xuICAgICkge1xuICAgICAgICBjb25zdCBhZGRvblN0YXRpY0ZvbGRlciA9IGFkZG9uU2VydmljZS5nZXRBZGRvblN0YXRpY0ZvbGRlcihzdWJBZGRvblVVSUQpO1xuICAgICAgICBjb25zdCB0cmFuc2xhdGlvbnNQYXRoOiBzdHJpbmcgPSBmaWxlU2VydmljZS5nZXRBc3NldHNUcmFuc2xhdGlvbnNQYXRoKGFkZG9uU3RhdGljRm9sZGVyKTtcbiAgICAgICAgY29uc3QgdHJhbnNsYXRpb25zU3VmZml4OiBzdHJpbmcgPSBmaWxlU2VydmljZS5nZXRBc3NldHNUcmFuc2xhdGlvbnNTdWZmaXgoKTtcbiAgICAgICAgY29uc3QgZGVmYXVsdFN1YkZvbGRlciA9ICdhc3NldHMvaTE4bi8nO1xuXG4gICAgICAgIHJldHVybiBuZXcgTXVsdGlUcmFuc2xhdGVIdHRwTG9hZGVyKGh0dHAsIFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBwcmVmaXg6IHRyYW5zbGF0aW9uc1BhdGgsXG4gICAgICAgICAgICAgICAgc3VmZml4OiB0cmFuc2xhdGlvbnNTdWZmaXgsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHByZWZpeDogYWRkb25TdGF0aWNGb2xkZXIubGVuZ3RoID4gMCA/IGAke2FkZG9uU3RhdGljRm9sZGVyfSR7ZGVmYXVsdFN1YkZvbGRlcn1gIDogYC8ke2RlZmF1bHRTdWJGb2xkZXJ9YCxcbiAgICAgICAgICAgICAgICBzdWZmaXg6ICcuanNvbicsXG4gICAgICAgICAgICB9LFxuICAgICAgICBdKTtcbiAgICB9XG5cbiAgICBzZXREZWZhdWx0VHJhbnNsYXRlTGFuZyh0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsIHVybExhbmdQYXJhbSA9ICd1c2VyTGFuZycpIHtcbiAgICAgICAgbGV0IHVzZXJMYW5nID0gJ2VuJztcbiAgICAgICAgdHJhbnNsYXRlLnNldERlZmF1bHRMYW5nKHVzZXJMYW5nKTtcbiAgICAgICAgdXNlckxhbmcgPSB0cmFuc2xhdGUuZ2V0QnJvd3NlckxhbmcoKS5zcGxpdCgnLScpWzBdOyAvLyB1c2UgbmF2aWdhdG9yIGxhbmcgaWYgYXZhaWxhYmxlXG5cbiAgICAgICAgaWYgKHVybExhbmdQYXJhbS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBjb25zdCBpbmRleCA9IGxvY2F0aW9uLmhyZWYuaW5kZXhPZih1cmxMYW5nUGFyYW0pO1xuXG4gICAgICAgICAgICBpZiAoaW5kZXggPiAtMSkge1xuICAgICAgICAgICAgICAgIC8vIHVybExhbmdQYXJhbT1YWFxuICAgICAgICAgICAgICAgIGNvbnN0IHN0YXJ0SW5kZXggPSBpbmRleCArIHVybExhbmdQYXJhbS5sZW5ndGggKyAnPScubGVuZ3RoO1xuICAgICAgICAgICAgICAgIHVzZXJMYW5nID0gbG9jYXRpb24uaHJlZi5zdWJzdHJpbmcoc3RhcnRJbmRleCwgc3RhcnRJbmRleCArIDIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gdGhlIGxhbmcgdG8gdXNlLCBpZiB0aGUgbGFuZyBpc24ndCBhdmFpbGFibGUsIGl0IHdpbGwgdXNlIHRoZSBjdXJyZW50IGxvYWRlciB0byBnZXQgdGhlbVxuICAgICAgICB0cmFuc2xhdGUudXNlKHVzZXJMYW5nKS5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XG4gICAgICAgICAgICAvLyBJbiBoZXJlIHlvdSBjYW4gcHV0IHRoZSBjb2RlIHlvdSB3YW50LiBBdCB0aGlzIHBvaW50IHRoZSBsYW5nIHdpbGwgYmUgbG9hZGVkXG4gICAgICAgIH0pO1xuICAgIH1cblxufVxuIl19
@@ -330,10 +330,10 @@ export class PepColorService {
330
330
  '%)');
331
331
  }
332
332
  }
333
- PepColorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PepColorService_Factory() { return new PepColorService(); }, token: PepColorService, providedIn: "platform" });
333
+ PepColorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PepColorService_Factory() { return new PepColorService(); }, token: PepColorService, providedIn: "root" });
334
334
  PepColorService.decorators = [
335
335
  { type: Injectable, args: [{
336
- providedIn: 'platform',
336
+ providedIn: 'root',
337
337
  },] }
338
338
  ];
339
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvc3JjL2NvcmUvY29tbW9uL3NlcnZpY2VzL2NvbG9yLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFzQjNDLE1BQU0sT0FBTyxlQUFlO0lBSDVCO1FBSWEsZ0JBQVcsR0FBRyxlQUFlLENBQUM7UUFDOUIsZ0NBQTJCLEdBQUcsa0JBQWtCLENBQUM7UUFDakQsMENBQXFDLEdBQUcsbUJBQW1CLENBQUM7UUFDNUQsOEJBQXlCLEdBQUcsa0JBQWtCLENBQUM7UUFDL0Msd0NBQW1DLEdBQUcsbUJBQW1CLENBQUM7S0FtYXRFO0lBamFHOzs7T0FHRztJQUNILGVBQWUsQ0FBQyxHQUFXO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDTixPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsR0FBRyxHQUFHLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVqQixJQUFJLElBQUksQ0FBQyxtQ0FBbUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDcEQsT0FBTyxHQUFHLENBQUM7U0FDZDtRQUVELElBQUksSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUMxQyxPQUFPLEdBQUcsR0FBRyxHQUFHLENBQUM7U0FDcEI7UUFFRCxJQUFJLElBQUksQ0FBQyxxQ0FBcUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDdEQsT0FBTyxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFH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UUFDdEMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRXRDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN4QyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRTFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNQLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDTixDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ04sQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNUO2FBQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ2QsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNOLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDTixDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ1Q7YUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDZCxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ04sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNOLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDVDthQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNkLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDTixDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ04sQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNUO2FBQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ2QsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNOLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDTixDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ1Q7YUFBTTtZQUNILENBQUMsR0FBRyxD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QVUsRUFDVixhQUFhLENBQ2hCLENBQUM7UUFFRixJQUFJLGtCQUFrQixLQUFLLElBQUksRUFBRTtZQUM3QixJQUFJLG1CQUFtQixLQUFLLElBQUksRUFBRTtnQkFDOUIsT0FBTyxJQUFJLENBQUM7YUFDZjtZQUVELE9BQU8sbUJBQW1CLENBQUMsS0FBSyxDQUFDO1NBQ3BDO1FBRUQsSUFBSSxtQkFBbUIsS0FBSyxJQUFJLEVBQUU7WUFDOUIsT0FBTyxrQkFBa0IsQ0FBQyxLQUFLLENBQUM7U0FDbkM7UUFFRCxNQUFNLEVBQUUsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUU1QyxJQUNJLG1CQUFtQixDQUFDLFNBQVMsR0FBRyxDQUFDO1lBQ2pDLENBQUMsR0FBRyxrQkFBa0IsQ0FBQyxTQUFTLEVBQ2xDO1lBQ0UsT0FBTyxtQkFBbUIsQ0FBQyxLQUFLLENBQUM7U0FDcEM7UUFFRCxPQUFPLGtCQUFrQixDQUFDLEtBQUssQ0FBQztJQUNwQyxDQUFDO0lBRUQscUJBQXFCLENBQUMsR0FBaUI7UUFDbkMsT0FBTyxDQUNILE1BQU07WUFDTixDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUNqQyxJQUFJO1lBQ0osR0FBRyxDQUFDLENBQUM7WUFDTCxLQUFLO1lBQ0wsR0FBRyxDQUFDLENBQUM7WUFDTCxJQUFJLENBQ1AsQ0FBQztJQUNOLENBQUM7Ozs7WUExYUosVUFBVSxTQUFDO2dCQUNSLFVBQVUsRUFBRSxVQUFVO2FBQ3pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElQZXBSZ2JDb2xvciB7XG4gICAgcj86IGFueTtcbiAgICBnPzogYW55O1xuICAgIGI/OiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVBlcEhzbENvbG9yIHtcbiAgICBoPzogYW55O1xuICAgIHM/OiBhbnk7XG4gICAgbD86IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUGVwQ2xvc2VzdENvbG9yIHtcbiAgICBjb2xvcjogc3RyaW5nO1xuICAgIGxpZ2h0bmVzczogbnVtYmVyO1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3BsYXRmb3JtJyxcbn0pXG5leHBvcnQgY2xhc3MgUGVwQ29sb3JTZXJ2aWNlIHtcbiAgICByZWFkb25seSBGTE9BVF9SRUdFWCA9IC9eXFxkKyhcXC5cXGQrKT8kLztcbiAgICByZWFkb25seSBUSFJFRV9ESUdJVF9IRVhfQ09MT1JfUkVHRVggPSAvXlswLTlhLWZBLUZdezN9JC87XG4gICAgcmVhZG9ubHkgVEhSRUVfRElHSVRfSEVYX0NPTE9SX1dJVEhfSEFTSF9SRUdFWCA9IC9eI1swLTlhLWZBLUZdezN9JC87XG4gICAgcmVhZG9ubHkgU0lYX0RJR0lUX0hFWF9DT0xPUl9SRUdFWCA9IC9eWzAtOWEtZkEtRl17Nn0kLztcbiAgICByZWFkb25seSBTSVhfRElHSVRfSEVYX0NPTE9SX1dJVEhfSEFTSF9SRUdFWCA9IC9eI1swLTlhLWZBLUZdezZ9JC87XG5cbiAgICAvKipcbiAgICAgKiBDb252ZXJ0IGhleCBzdHJpbmcgdG8gNiBkaWdpdHMgaGV4IHN0cmluZy5cbiAgICAgKiBAcGFyYW0gc3RyIFRoZSBzdHJpbmcgdG8gY29udmVydC5cbiAgICAgKi9cbiAgICBoZXgyc2l4RGlnaXRIZXgoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBpZiAoIXN0cikge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBzdHIgPSBzdHIudHJpbSgpO1xuXG4gICAgICAgIGlmICh0aGlzLlNJWF9ESUdJVF9IRVhfQ09MT1JfV0lUSF9IQVNIX1JFR0VYLnRlc3Qoc3RyKSkge1xuICAgICAgICAgICAgcmV0dXJuIHN0cjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLlNJWF9ESUdJVF9IRVhfQ09MT1JfUkVHRVgudGVzdChzdHIpKSB7XG4gICAgICAgICAgICByZXR1cm4gJyMnICsgc3RyO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuVEhSRUVfRElHSVRfSEVYX0NPTE9SX1dJVEhfSEFTSF9SRUdFWC50ZXN0KHN0cikpIHtcbiAgICAgICAgICAgIHJldHVybiAnIycgKyBzdHJbMV0gKyBzdHJbMV0gKyBzdHJbMl0gKyBzdHJbMl0gKyBzdHJbM10gKyBzdHJbM107XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5USFJFRV9ESUdJVF9IRVhfQ09MT1JfUkVHRVgudGVzdChzdHIpKSB7XG4gICAgICAgICAgICByZXR1cm4gJyMnICsgc3RyWzBdICsgc3RyWzBdICsgc3RyWzFdICsgc3RyWzFdICsgc3RyWzJdICsgc3RyWzJdO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29udmVydCByZ2IgY29sb3IgdG8gNiBkaWdpdHMgaGV4IHN0cmluZy5cbiAgICAgKiBAcGFyYW0gY29sb3IgVGhlIHJnYiBjb2xvciB0byBjb252ZXJ0LlxuICAgICAqL1xuICAgIHJnYjJzaXhEaWdpdEhleChjb2xvcjogSVBlcFJnYkNvbG9yKTogc3RyaW5nIHtcbiAgICAgICAgY29sb3IuciA9IGNvbG9yLnIudG9TdHJpbmcoMTYpO1xuICAgICAgICBjb2xvci5nID0gY29sb3IuZy50b1N0cmluZygxNik7XG4gICAgICAgIGNvbG9yLmIgPSBjb2xvci5iLnRvU3RyaW5nKDE2KTtcblxuICAgICAgICBpZiAoY29sb3Iuci5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgIGNvbG9yLnIgPSAnMCcgKyBjb2xvci5yO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGNvbG9yLmcubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgICBjb2xvci5nID0gJzAnICsgY29sb3IuZztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjb2xvci5iLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgY29sb3IuYiA9ICcwJyArIGNvbG9yLmI7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gJyMnICsgY29sb3IuciArIGNvbG9yLmcgKyBjb2xvci5iO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvbnZlcnQgaGV4IHN0cmluZyB0byByZ2IgY29sb3IuXG4gICAgICogQHBhcmFtIHN0ciBUaGUgaGV4IHN0cmluZyB0byBjb252ZXJ0LlxuICAgICAqL1xuICAgIGhleDJyZ2Ioc3RyOiBzdHJpbmcpOiBJUGVwUmdiQ29sb3Ige1xuICAgICAgICBjb25zdCBzaXhEaWdpdEhleCA9IHRoaXMuaGV4MnNpeERpZ2l0SGV4KHN0cik7XG5cbiAgICAgICAgaWYgKHNpeERpZ2l0SGV4ID09PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICByOiBwYXJzZUludChzaXhEaWdpdEhleC5zbGljZSgxLCAzKSwgMTYpLFxuICAgICAgICAgICAgZzogcGFyc2VJbnQoc2l4RGlnaXRIZXguc2xpY2UoMywgNSksIDE2KSxcbiAgICAgICAgICAgIGI6IHBhcnNlSW50KHNpeERpZ2l0SGV4LnNsaWNlKDUsIDcpLCAxNiksXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcmdiU3RyaW5nMmhzbChzdHI6IHN0cmluZyk6IElQZXBIc2xDb2xvciB7XG4gICAgICAgIGNvbnN0IHNlcCA9IHN0ci5pbmRleE9mKCcsJykgPiAtMSA/ICcsJyA6ICcgJztcbiAgICAgICAgY29uc3QgcmdiQXJyID0gc3RyLnN1YnN0cig0KS5zcGxpdCgnKScpWzBdLnNwbGl0KHNlcCk7XG5cbiAgICAgICAgY29uc3QgciA9IHJnYkFyclswXTtcbiAgICAgICAgY29uc3QgZyA9IHJnYkFyclsxXS5zdWJzdHIoMCwgcmdiQXJyWzFdLmxlbmd0aCkudHJpbSgpO1xuICAgICAgICBjb25zdCBiID0gcmdiQXJyWzJdLnN1YnN0cigwLCByZ2JBcnJbMl0ubGVuZ3RoKS50cmltKCk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMucmdiMmhzbCh7IHIsIGcsIGIgfSk7XG4gICAgfVxuXG4gICAgcmdiMmhzbCh7IHIsIGcsIGIgfTogSVBlcFJnYkNvbG9yKTogSVBlcEhzbENvbG9yIHtcbiAgICAgICAgciAvPSAyNTU7XG4gICAgICAgIGcgLz0gMjU1O1xuICAgICAgICBiIC89IDI1NTtcblxuICAgICAgICAvLyBGaW5kIGdyZWF0ZXN0IGFuZCBzbWFsbGVzdCBjaGFubmVsIHZhbHVlc1xuICAgICAgICBjb25zdCBjbWluID0gTWF0aC5taW4ociwgZywgYik7XG4gICAgICAgIGNvbnN0IGNtYXggPSBNYXRoLm1heChyLCBnLCBiKTtcbiAgICAgICAgY29uc3QgZGVsdGEgPSBjbWF4IC0gY21pbjtcblxuICAgICAgICBsZXQgaCA9IDA7XG4gICAgICAgIGxldCBzID0gMDtcbiAgICAgICAgbGV0IGwgPSAwO1xuXG4gICAgICAgIGlmIChkZWx0YSA9PT0gMCkge1xuICAgICAgICAgICAgaCA9IDA7XG4gICAgICAgIH0gZWxzZSBpZiAoY21heCA9PT0gcikge1xuICAgICAgICAgICAgaCA9ICgoZyAtIGIpIC8gZGVsdGEpICUgNjtcbiAgICAgICAgfSBlbHNlIGlmIChjbWF4ID09PSBnKSB7XG4gICAgICAgICAgICBoID0gKGIgLSByKSAvIGRlbHRhICsgMjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGggPSAociAtIGcpIC8gZGVsdGEgKyA0O1xuICAgICAgICB9XG5cbiAgICAgICAgaCA9IE1hdGgucm91bmQoaCAqIDYwKTtcblxuICAgICAgICBpZiAoaCA8IDApIHtcbiAgICAgICAgICAgIGggKz0gMzYwO1xuICAgICAgICB9XG5cbiAgICAgICAgbCA9IChjbWF4ICsgY21pbikgLyAyO1xuICAgICAgICBzID0gZGVsdGEgPT09IDAgPyAwIDogZGVsdGEgLyAoMSAtIE1hdGguYWJzKDIgKiBsIC0gMSkpO1xuICAgICAgICBzID0gKyhzICogMTAwKS50b0ZpeGVkKDEpO1xuICAgICAgICBsID0gKyhsICogMTAwKS50b0ZpeGVkKDEpO1xuXG4gICAgICAgIHJldHVybiB7IGgsIHMsIGwgfTtcbiAgICB9XG5cbiAgICBoc2xTdHJpbmcyaHNsKHN0cjogc3RyaW5nKTogSVBlcEhzbENvbG9yIHtcbiAgICAgICAgY29uc3Qgc2VwID0gc3RyLmluZGV4T2YoJywnKSA+IC0xID8gJywnIDogJyAnO1xuICAgICAgICBjb25zdCBoc2xBcnIgPSBzdHIuc3Vic3RyKDQpLnNwbGl0KCcpJylbMF0uc3BsaXQoc2VwKTtcblxuICAgICAgICBsZXQgaDogYW55ID0gaHNsQXJyWzBdO1xuICAgICAgICBsZXQgcyA9IGhzbEFyclsxXS5zdWJzdHIoMCwgaHNsQXJyWzFdLmxlbmd0aCkudHJpbSgpO1xuICAgICAgICBsZXQgbCA9IGhzbEFyclsyXS5zdWJzdHIoMCwgaHNsQXJyWzJdLmxlbmd0aCkudHJpbSgpO1xuXG4gICAgICAgIC8vIFN0cmlwIGxhYmVsIGFuZCBjb252ZXJ0IHRvIGRlZ3JlZXMgKGlmIG5lY2Vzc2FyeSlcbiAgICAgICAgaWYgKGguaW5kZXhPZignZGVnJykgPiAtMSkge1xuICAgICAgICAgICAgaCA9IGguc3Vic3RyKDAsIGgubGVuZ3RoIC0gMyk7XG4gICAgICAgIH0gZWxzZSBpZiAoaC5pbmRleE9mKCdyYWQnKSA+IC0xKSB7XG4gICAgICAgICAgICBoID0gTWF0aC5yb3VuZChoLnN1YnN0cigwLCBoLmxlbmd0aCAtIDMpICogKDE4MCAvIE1hdGguUEkpKTtcbiAgICAgICAgfSBlbHNlIGlmIChoLmluZGV4T2YoJ3R1cm4nKSA+IC0xKSB7XG4gICAgICAgICAgICBoID0gTWF0aC5yb3VuZChoLnN1YnN0cigwLCBoLmxlbmd0aCAtIDQpICogMzYwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEtlZXAgaHVlIGZyYWN0aW9uIG9mIDM2MCBpZiBlbmRpbmcgdXAgb3ZlclxuICAgICAgICBpZiAoaCA+PSAzNjApIHtcbiAgICAgICAgICAgIGggJT0gMzYwO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gUmVtb3ZlIHRoZSAlXG4gICAgICAgIGlmIChzLmluZGV4T2YoJyUnKSA+IC0xKSB7XG4gICAgICAgICAgICBzID0gcy5yZXBsYWNlKC8lL2csICcnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFJlbW92ZSB0aGUgJVxuICAgICAgICBpZiAobC5pbmRleE9mKCclJykgPiAtMSkge1xuICAgICAgICAgICAgbCA9IGwucmVwbGFjZSgvJS9nLCAnJyk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4geyBoLCBzLCBsIH07XG4gICAgfVxuXG4gICAgaHNsMnJnYih7IGgsIHMsIGwgfTogSVBlcEhzbENvbG9yKTogSVBlcFJnYkNvbG9yIHtcbiAgICAgICAgbGV0IHI7XG4gICAgICAgIGxldCBnO1xuICAgICAgICBsZXQgYjtcblxuICAgICAgICBpZiAoIWlzRmluaXRlKGgpKSB7XG4gICAgICAgICAgICBoID0gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghaXNGaW5pdGUocykpIHtcbiAgICAgICAgICAgIHMgPSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFpc0Zpbml0ZShsKSkge1xuICAgICAgICAgICAgbCA9IDA7XG4gICAgICAgIH1cblxuICAgICAgICBoIC89IDYwO1xuXG4gICAgICAgIGlmIChoIDwgMCkge1xuICAgICAgICAgICAgaCA9IDYgLSAoLWggJSA2KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGggJT0gNjtcblxuICAgICAgICBzID0gTWF0aC5tYXgoMCwgTWF0aC5taW4oMSwgcyAvIDEwMCkpO1xuICAgICAgICBsID0gTWF0aC5tYXgoMCwgTWF0aC5taW4oMSwgbCAvIDEwMCkpO1xuXG4gICAgICAgIGNvbnN0IGMgPSAoMSAtIE1hdGguYWJzKDIgKiBsIC0gMSkpICogcztcbiAgICAgICAgY29uc3QgeCA9IGMgKiAoMSAtIE1hdGguYWJzKChoICUgMikgLSAxKSk7XG5cbiAgICAgICAgaWYgKGggPCAxKSB7XG4gICAgICAgICAgICByID0gYztcbiAgICAgICAgICAgIGcgPSB4O1xuICAgICAgICAgICAgYiA9IDA7XG4gICAgICAgIH0gZWxzZSBpZiAoaCA8IDIpIHtcbiAgICAgICAgICAgIHIgPSB4O1xuICAgICAgICAgICAgZyA9IGM7XG4gICAgICAgICAgICBiID0gMDtcbiAgICAgICAgfSBlbHNlIGlmIChoIDwgMykge1xuICAgICAgICAgICAgciA9IDA7XG4gICAgICAgICAgICBnID0gYztcbiAgICAgICAgICAgIGIgPSB4O1xuICAgICAgICB9IGVsc2UgaWYgKGggPCA0KSB7XG4gICAgICAgICAgICByID0gMDtcbiAgICAgICAgICAgIGcgPSB4O1xuICAgICAgICAgICAgYiA9IGM7XG4gICAgICAgIH0gZWxzZSBpZiAoaCA8IDUpIHtcbiAgICAgICAgICAgIHIgPSB4O1xuICAgICAgICAgICAgZyA9IDA7XG4gICAgICAgICAgICBiID0gYztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHIgPSBjO1xuICAgICAgICAgICAgZyA9IDA7XG4gICAgICAgICAgICBiID0geDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG0gPSBsIC0gYyAvIDI7XG4gICAgICAgIHIgPSBNYXRoLnJvdW5kKChyICsgbSkgKiAyNTUpO1xuICAgICAgICBnID0gTWF0aC5yb3VuZCgoZyArIG0pICogMjU1KTtcbiAgICAgICAgYiA9IE1hdGgucm91bmQoKGIgKyBtKSAqIDI1NSk7XG5cbiAgICAgICAgcmV0dXJuIHsgciwgZywgYiB9O1xuICAgIH1cblxuICAgIGhleDJoc2woc3RyOiBzdHJpbmcpOiBJUGVwSHNsQ29sb3Ige1xuICAgICAgICBjb25zdCBzaXhEaWdpdEhleCA9IHRoaXMuaGV4MnNpeERpZ2l0SGV4KHN0cik7XG5cbiAgICAgICAgaWYgKHNpeERpZ2l0SGV4ID09PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJnYiA9IHRoaXMuaGV4MnJnYihzaXhEaWdpdEhleCk7XG5cbiAgICAgICAgaWYgKHJnYiA9PT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5yZ2IyaHNsKHJnYik7XG4gICAgfVxuXG4gICAgaHNsMmhleChoc2w6IElQZXBIc2xDb2xvcik6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHJnYiA9IHRoaXMuaHNsMnJnYihoc2wpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnJnYjJzaXhEaWdpdEhleChyZ2IpO1xuICAgIH1cblxuICAgIHJlbGF0aXZlTHVtaW5hbmNlKHsgciwgZywgYiB9OiBJUGVwUmdiQ29sb3IpOiBudW1iZXIge1xuICAgICAgICBbciwgZywgYl0gPSBbciwgZywgYl0ubWFwKChjKSA9PiB7XG4gICAgICAgICAgICBjID0gYyAvIDI1NTtcblxuICAgICAgICAgICAgaWYgKGMgPD0gMC4wMzkyOCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBjIC8gMTIuOTI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBNYXRoLnBvdygoYyArIDAuMDU1KSAvIDEuMDU1LCAyLjQpO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gMC4yMTI2ICogciArIDAuNzE1MiAqIGcgKyAwLjA3MjIgKiBiO1xuICAgIH1cblxuICAgIGNvbnRyYXN0KHN0cjE6IHN0cmluZywgc3RyMjogc3RyaW5nKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgTDEgPSB0aGlzLnJlbGF0aXZlTHVtaW5hbmNlKHRoaXMuaGV4MnJnYihzdHIxKSk7XG4gICAgICAgIGNvbnN0IEwyID0gdGhpcy5yZWxhdGl2ZUx1bWluYW5jZSh0aGlzLmhleDJyZ2Ioc3RyMikpO1xuXG4gICAgICAgIGlmIChMMSA8IEwyKSB7XG4gICAgICAgICAgICByZXR1cm4gKEwyICsgMC4wNSkgLyAoTDEgKyAwLjA1KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiAoTDEgKyAwLjA1KSAvIChMMiArIDAuMDUpO1xuICAgIH1cblxuICAgIGZpbmRDbG9zZXN0QWNjZXNzaWJsZURhcmtlckNvbG9yKFxuICAgICAgICBhZGp1c3RhYmxlQ29sb3I6IHN0cmluZyxcbiAgICAgICAgb3RoZXJDb2xvcjogc3RyaW5nLFxuICAgICAgICBjb250cmFzdFJhdGlvOiBudW1iZXJcbiAgICApOiBJUGVwQ2xvc2VzdENvbG9yIHtcbiAgICAgICAgY29uc3QgeyBoLCBzLCBsIH0gPSB0aGlzLmhleDJoc2woYWRqdXN0YWJsZUNvbG9yKTtcblxuICAgICAgICBpZiAodGhpcy5jb250cmFzdChhZGp1c3RhYmxlQ29sb3IsIG90aGVyQ29sb3IpID49IGNvbnRyYXN0UmF0aW8pIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgY29sb3I6IGFkanVzdGFibGVDb2xvcixcbiAgICAgICAgICAgICAgICBsaWdodG5lc3M6IGwsXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IG1pbkNvbG9yID0gdGhpcy5oc2wyaGV4KHsgaCwgcywgbDogMCB9KTtcblxuICAgICAgICBpZiAodGhpcy5jb250cmFzdChtaW5Db2xvciwgb3RoZXJDb2xvcikgPCBjb250cmFzdFJhdGlvKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBtaW4gPSAwO1xuICAgICAgICBsZXQgbWF4ID0gbDtcbiAgICAgICAgbGV0IG1heENvbG9yID0gdGhpcy5oc2wyaGV4KHsgaCwgcywgbCB9KTtcbiAgICAgICAgbGV0IGxhc3RNaW5Db2xvcjtcbiAgICAgICAgbGV0IGxhc3RNYXhDb2xvcjtcbiAgICAgICAgbGV0IGxUZW1wO1xuXG4gICAgICAgIHdoaWxlIChtaW5Db2xvciAhPT0gbGFzdE1pbkNvbG9yIHx8IG1heENvbG9yICE9PSBsYXN0TWF4Q29sb3IpIHtcbiAgICAgICAgICAgIGxhc3RNaW5Db2xvciA9IG1pbkNvbG9yO1xuICAgICAgICAgICAgbGFzdE1heENvbG9yID0gbWF4Q29sb3I7XG5cbiAgICAgICAgICAgIGxUZW1wID0gKG1pbiArIG1heCkgLyAyO1xuICAgICAgICAgICAgYWRqdXN0YWJsZUNvbG9yID0gdGhpcy5oc2wyaGV4KHsgaCwgcywgbDogbFRlbXAgfSk7XG5cbiAgICAgICAgICAgIGlmICh0aGlzLmNvbnRyYXN0KGFkanVzdGFibGVDb2xvciwgb3RoZXJDb2xvcikgPCBjb250cmFzdFJhdGlvKSB7XG4gICAgICAgICAgICAgICAgbWF4ID0gbFRlbXA7XG4gICAgICAgICAgICAgICAgbWF4Q29sb3IgPSB0aGlzLmhzbDJoZXgoeyBoLCBzLCBsOiBsVGVtcCB9KTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgbWluID0gbFRlbXA7XG4gICAgICAgICAgICAgICAgbWluQ29sb3IgPSB0aGlzLmhzbDJoZXgoeyBoLCBzLCBsOiBsVGVtcCB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBjb2xvcjogbWluQ29sb3IsXG4gICAgICAgICAgICBsaWdodG5lc3M6IG1pbixcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBmaW5kQ2xvc2VzdEFjY2Vzc2libGVMaWdodGVyQ29sb3IoXG4gICAgICAgIGFkanVzdGFibGVDb2xvcjogc3RyaW5nLFxuICAgICAgICBvdGhlckNvbG9yOiBzdHJpbmcsXG4gICAgICAgIGNvbnRyYXN0UmF0aW86IG51bWJlclxuICAgICk6IElQZXBDbG9zZXN0Q29sb3Ige1xuICAgICAgICBjb25zdCB7IGgsIHMsIGwgfSA9IHRoaXMuaGV4MmhzbChhZGp1c3RhYmxlQ29sb3IpO1xuXG4gICAgICAgIGlmICh0aGlzLmNvbnRyYXN0KGFkanVzdGFibGVDb2xvciwgb3RoZXJDb2xvcikgPj0gY29udHJhc3RSYXRpbykge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogYWRqdXN0YWJsZUNvbG9yLFxuICAgICAgICAgICAgICAgIGxpZ2h0bmVzczogbCxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgbWF4Q29sb3IgPSB0aGlzLmhzbDJoZXgoeyBoLCBzLCBsOiAxMDAgfSk7XG5cbiAgICAgICAgaWYgKHRoaXMuY29udHJhc3QobWF4Q29sb3IsIG90aGVyQ29sb3IpIDwgY29udHJhc3RSYXRpbykge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgbWluID0gbDtcbiAgICAgICAgbGV0IG1heCA9IDEwMDtcbiAgICAgICAgbGV0IG1pbkNvbG9yID0gdGhpcy5oc2wyaGV4KHsgaCwgcywgbCB9KTtcbiAgICAgICAgbGV0IGxhc3RNaW5Db2xvcjtcbiAgICAgICAgbGV0IGxhc3RNYXhDb2xvcjtcbiAgICAgICAgbGV0IGxUZW1wO1xuXG4gICAgICAgIHdoaWxlIChtaW5Db2xvciAhPT0gbGFzdE1pbkNvbG9yIHx8IG1heENvbG9yICE9PSBsYXN0TWF4Q29sb3IpIHtcbiAgICAgICAgICAgIGxhc3RNaW5Db2xvciA9IG1pbkNvbG9yO1xuICAgICAgICAgICAgbGFzdE1heENvbG9yID0gbWF4Q29sb3I7XG5cbiAgICAgICAgICAgIGxUZW1wID0gKG1pbiArIG1heCkgLyAyO1xuICAgICAgICAgICAgYWRqdXN0YWJsZUNvbG9yID0gdGhpcy5oc2wyaGV4KHsgaCwgcywgbDogbFRlbXAgfSk7XG5cbiAgICAgICAgICAgIGlmICh0aGlzLmNvbnRyYXN0KGFkanVzdGFibGVDb2xvciwgb3RoZXJDb2xvcikgPCBjb250cmFzdFJhdGlvKSB7XG4gICAgICAgICAgICAgICAgbWluID0gbFRlbXA7XG4gICAgICAgICAgICAgICAgbWluQ29sb3IgPSB0aGlzLmhzbDJoZXgoeyBoLCBzLCBsOiBsVGVtcCB9KTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgbWF4ID0gbFRlbXA7XG4gICAgICAgICAgICAgICAgbWF4Q29sb3IgPSB0aGlzLmhzbDJoZXgoeyBoLCBzLCBsOiBsVGVtcCB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBjb2xvcjogbWF4Q29sb3IsXG4gICAgICAgICAgICBsaWdodG5lc3M6IG1heCxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBmaW5kQ2xvc2VzdEFjY2Vzc2libGVDb2xvcihcbiAgICAgICAgYWRqdXN0YWJsZUNvbG9yOiBzdHJpbmcsXG4gICAgICAgIG90aGVyQ29sb3I6IHN0cmluZyxcbiAgICAgICAgY29udHJhc3RSYXRpbzogbnVtYmVyXG4gICAgKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgY2xvc2VzdERhcmtlckNvbG9yOiBJUGVwQ2xvc2VzdENvbG9yID0gdGhpcy5maW5kQ2xvc2VzdEFjY2Vzc2libGVEYXJrZXJDb2xvcihcbiAgICAgICAgICAgIGFkanVzdGFibGVDb2xvcixcbiAgICAgICAgICAgIG90aGVyQ29sb3IsXG4gICAgICAgICAgICBjb250cmFzdFJhdGlvXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IGNsb3Nlc3RMaWdodGVyQ29sb3I6IElQZXBDbG9zZXN0Q29sb3IgPSB0aGlzLmZpbmRDbG9zZXN0QWNjZXNzaWJsZUxpZ2h0ZXJDb2xvcihcbiAgICAgICAgICAgIGFkanVzdGFibGVDb2xvcixcbiAgICAgICAgICAgIG90aGVyQ29sb3IsXG4gICAgICAgICAgICBjb250cmFzdFJhdGlvXG4gICAgICAgICk7XG5cbiAgICAgICAgaWYgKGNsb3Nlc3REYXJrZXJDb2xvciA9PT0gbnVsbCkge1xuICAgICAgICAgICAgaWYgKGNsb3Nlc3RMaWdodGVyQ29sb3IgPT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIGNsb3Nlc3RMaWdodGVyQ29sb3IuY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY2xvc2VzdExpZ2h0ZXJDb2xvciA9PT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIGNsb3Nlc3REYXJrZXJDb2xvci5jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHsgbCB9ID0gdGhpcy5oZXgyaHNsKGFkanVzdGFibGVDb2xvcik7XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgY2xvc2VzdExpZ2h0ZXJDb2xvci5saWdodG5lc3MgLSBsIDxcbiAgICAgICAgICAgIGwgLSBjbG9zZXN0RGFya2VyQ29sb3IubGlnaHRuZXNzXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIGNsb3Nlc3RMaWdodGVyQ29sb3IuY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gY2xvc2VzdERhcmtlckNvbG9yLmNvbG9yO1xuICAgIH1cblxuICAgIGNvbnZlcnRIc2xUb1N0cmluZ0hzbChoc2w6IElQZXBIc2xDb2xvcik6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAnaHNsKCcgK1xuICAgICAgICAgICAgKGhzbC5oIDwgMCA/IGhzbC5oICsgMzYwIDogaHNsLmgpICtcbiAgICAgICAgICAgICcsICcgK1xuICAgICAgICAgICAgaHNsLnMgK1xuICAgICAgICAgICAgJyUsICcgK1xuICAgICAgICAgICAgaHNsLmwgK1xuICAgICAgICAgICAgJyUpJ1xuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
339
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvc3JjL2NvcmUvY29tbW9uL3NlcnZpY2VzL2NvbG9yLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFzQjNDLE1BQU0sT0FBTyxlQUFlO0lBSDVCO1FBSWEsZ0JBQVcsR0FBRyxlQUFlLENBQUM7UUFDOUIsZ0NBQTJCLEdBQUcsa0JBQWtCLENBQUM7UUFDakQsMENBQXFDLEdBQUcsbUJBQW1CLENBQUM7UUFDNUQsOEJBQXlCLEdBQUcsa0JBQWtCLENBQUM7UUFDL0Msd0NBQW1DLEdBQUcsbUJBQW1CLENBQUM7S0FtYXRFO0lBamFHOzs7T0FHRztJQUNILGVBQWUsQ0FBQyxHQUFXO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDTixPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsR0FBRyxHQUFHLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVqQixJQUFJLElBQUksQ0FBQyxtQ0FBbUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDcEQsT0FBTyxHQUFHLENBQUM7U0FDZDtRQUVELElBQUksSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUMxQyxPQUFPLEdBQUcsR0FBRyxHQUFHLENBQUM7U0FDcEI7UUFFRCxJQUFJLElBQUksQ0FBQyxxQ0FBcUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDdEQsT0FBTyxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFH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UUFDdEMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRXRDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN4QyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRTFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNQLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDTixDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ04sQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNUO2FBQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ2QsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNOLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDTixDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ1Q7YUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDZCxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ04sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNOLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDVDthQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNkLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDTixDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ04sQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNUO2FBQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ2QsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNOLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDTixDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ1Q7YUFBTTtZQUNILENBQUMsR0FBRyxD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QVUsRUFDVixhQUFhLENBQ2hCLENBQUM7UUFFRixJQUFJLGtCQUFrQixLQUFLLElBQUksRUFBRTtZQUM3QixJQUFJLG1CQUFtQixLQUFLLElBQUksRUFBRTtnQkFDOUIsT0FBTyxJQUFJLENBQUM7YUFDZjtZQUVELE9BQU8sbUJBQW1CLENBQUMsS0FBSyxDQUFDO1NBQ3BDO1FBRUQsSUFBSSxtQkFBbUIsS0FBSyxJQUFJLEVBQUU7WUFDOUIsT0FBTyxrQkFBa0IsQ0FBQyxLQUFLLENBQUM7U0FDbkM7UUFFRCxNQUFNLEVBQUUsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUU1QyxJQUNJLG1CQUFtQixDQUFDLFNBQVMsR0FBRyxDQUFDO1lBQ2pDLENBQUMsR0FBRyxrQkFBa0IsQ0FBQyxTQUFTLEVBQ2xDO1lBQ0UsT0FBTyxtQkFBbUIsQ0FBQyxLQUFLLENBQUM7U0FDcEM7UUFFRCxPQUFPLGtCQUFrQixDQUFDLEtBQUssQ0FBQztJQUNwQyxDQUFDO0lBRUQscUJBQXFCLENBQUMsR0FBaUI7UUFDbkMsT0FBTyxDQUNILE1BQU07WUFDTixDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUNqQyxJQUFJO1lBQ0osR0FBRyxDQUFDLENBQUM7WUFDTCxLQUFLO1lBQ0wsR0FBRyxDQUFDLENBQUM7WUFDTCxJQUFJLENBQ1AsQ0FBQztJQUNOLENBQUM7Ozs7WUExYUosVUFBVSxTQUFDO2dCQUNSLFVBQVUsRUFBRSxNQUFNO2FBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElQZXBSZ2JDb2xvciB7XG4gICAgcj86IGFueTtcbiAgICBnPzogYW55O1xuICAgIGI/OiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVBlcEhzbENvbG9yIHtcbiAgICBoPzogYW55O1xuICAgIHM/OiBhbnk7XG4gICAgbD86IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUGVwQ2xvc2VzdENvbG9yIHtcbiAgICBjb2xvcjogc3RyaW5nO1xuICAgIGxpZ2h0bmVzczogbnVtYmVyO1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBQZXBDb2xvclNlcnZpY2Uge1xuICAgIHJlYWRvbmx5IEZMT0FUX1JFR0VYID0gL15cXGQrKFxcLlxcZCspPyQvO1xuICAgIHJlYWRvbmx5IFRIUkVFX0RJR0lUX0hFWF9DT0xPUl9SRUdFWCA9IC9eWzAtOWEtZkEtRl17M30kLztcbiAgICByZWFkb25seSBUSFJFRV9ESUdJVF9IRVhfQ09MT1JfV0lUSF9IQVNIX1JFR0VYID0gL14jWzAtOWEtZkEtRl17M30kLztcbiAgICByZWFkb25seSBTSVhfRElHSVRfSEVYX0NPTE9SX1JFR0VYID0gL15bMC05YS1mQS1GXXs2fSQvO1xuICAgIHJlYWRvbmx5IFNJWF9ESUdJVF9IRVhfQ09MT1JfV0lUSF9IQVNIX1JFR0VYID0gL14jWzAtOWEtZkEtRl17Nn0kLztcblxuICAgIC8qKlxuICAgICAqIENvbnZlcnQgaGV4IHN0cmluZyB0byA2IGRpZ2l0cyBoZXggc3RyaW5nLlxuICAgICAqIEBwYXJhbSBzdHIgVGhlIHN0cmluZyB0byBjb252ZXJ0LlxuICAgICAqL1xuICAgIGhleDJzaXhEaWdpdEhleChzdHI6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGlmICghc3RyKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0ciA9IHN0ci50cmltKCk7XG5cbiAgICAgICAgaWYgKHRoaXMuU0lYX0RJR0lUX0hFWF9DT0xPUl9XSVRIX0hBU0hfUkVHRVgudGVzdChzdHIpKSB7XG4gICAgICAgICAgICByZXR1cm4gc3RyO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuU0lYX0RJR0lUX0hFWF9DT0xPUl9SRUdFWC50ZXN0KHN0cikpIHtcbiAgICAgICAgICAgIHJldHVybiAnIycgKyBzdHI7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5USFJFRV9ESUdJVF9IRVhfQ09MT1JfV0lUSF9IQVNIX1JFR0VYLnRlc3Qoc3RyKSkge1xuICAgICAgICAgICAgcmV0dXJuICcjJyArIHN0clsxXSArIHN0clsxXSArIHN0clsyXSArIHN0clsyXSArIHN0clszXSArIHN0clszXTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLlRIUkVFX0RJR0lUX0hFWF9DT0xPUl9SRUdFWC50ZXN0KHN0cikpIHtcbiAgICAgICAgICAgIHJldHVybiAnIycgKyBzdHJbMF0gKyBzdHJbMF0gKyBzdHJbMV0gKyBzdHJbMV0gKyBzdHJbMl0gKyBzdHJbMl07XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb252ZXJ0IHJnYiBjb2xvciB0byA2IGRpZ2l0cyBoZXggc3RyaW5nLlxuICAgICAqIEBwYXJhbSBjb2xvciBUaGUgcmdiIGNvbG9yIHRvIGNvbnZlcnQuXG4gICAgICovXG4gICAgcmdiMnNpeERpZ2l0SGV4KGNvbG9yOiBJUGVwUmdiQ29sb3IpOiBzdHJpbmcge1xuICAgICAgICBjb2xvci5yID0gY29sb3Iuci50b1N0cmluZygxNik7XG4gICAgICAgIGNvbG9yLmcgPSBjb2xvci5nLnRvU3RyaW5nKDE2KTtcbiAgICAgICAgY29sb3IuYiA9IGNvbG9yLmIudG9TdHJpbmcoMTYpO1xuXG4gICAgICAgIGlmIChjb2xvci5yLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgY29sb3IuciA9ICcwJyArIGNvbG9yLnI7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY29sb3IuZy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgIGNvbG9yLmcgPSAnMCcgKyBjb2xvci5nO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGNvbG9yLmIubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgICBjb2xvci5iID0gJzAnICsgY29sb3IuYjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiAnIycgKyBjb2xvci5yICsgY29sb3IuZyArIGNvbG9yLmI7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29udmVydCBoZXggc3RyaW5nIHRvIHJnYiBjb2xvci5cbiAgICAgKiBAcGFyYW0gc3RyIFRoZSBoZXggc3RyaW5nIHRvIGNvbnZlcnQuXG4gICAgICovXG4gICAgaGV4MnJnYihzdHI6IHN0cmluZyk6IElQZXBSZ2JDb2xvciB7XG4gICAgICAgIGNvbnN0IHNpeERpZ2l0SGV4ID0gdGhpcy5oZXgyc2l4RGlnaXRIZXgoc3RyKTtcblxuICAgICAgICBpZiAoc2l4RGlnaXRIZXggPT09IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHI6IHBhcnNlSW50KHNpeERpZ2l0SGV4LnNsaWNlKDEsIDMpLCAxNiksXG4gICAgICAgICAgICBnOiBwYXJzZUludChzaXhEaWdpdEhleC5zbGljZSgzLCA1KSwgMTYpLFxuICAgICAgICAgICAgYjogcGFyc2VJbnQoc2l4RGlnaXRIZXguc2xpY2UoNSwgNyksIDE2KSxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICByZ2JTdHJpbmcyaHNsKHN0cjogc3RyaW5nKTogSVBlcEhzbENvbG9yIHtcbiAgICAgICAgY29uc3Qgc2VwID0gc3RyLmluZGV4T2YoJywnKSA+IC0xID8gJywnIDogJyAnO1xuICAgICAgICBjb25zdCByZ2JBcnIgPSBzdHIuc3Vic3RyKDQpLnNwbGl0KCcpJylbMF0uc3BsaXQoc2VwKTtcblxuICAgICAgICBjb25zdCByID0gcmdiQXJyWzBdO1xuICAgICAgICBjb25zdCBnID0gcmdiQXJyWzFdLnN1YnN0cigwLCByZ2JBcnJbMV0ubGVuZ3RoKS50cmltKCk7XG4gICAgICAgIGNvbnN0IGIgPSByZ2JBcnJbMl0uc3Vic3RyKDAsIHJnYkFyclsyXS5sZW5ndGgpLnRyaW0oKTtcblxuICAgICAgICByZXR1cm4gdGhpcy5yZ2IyaHNsKHsgciwgZywgYiB9KTtcbiAgICB9XG5cbiAgICByZ2IyaHNsKHsgciwgZywgYiB9OiBJUGVwUmdiQ29sb3IpOiBJUGVwSHNsQ29sb3Ige1xuICAgICAgICByIC89IDI1NTtcbiAgICAgICAgZyAvPSAyNTU7XG4gICAgICAgIGIgLz0gMjU1O1xuXG4gICAgICAgIC8vIEZpbmQgZ3JlYXRlc3QgYW5kIHNtYWxsZXN0IGNoYW5uZWwgdmFsdWVzXG4gICAgICAgIGNvbnN0IGNtaW4gPSBNYXRoLm1pbihyLCBnLCBiKTtcbiAgICAgICAgY29uc3QgY21heCA9IE1hdGgubWF4KHIsIGcsIGIpO1xuICAgICAgICBjb25zdCBkZWx0YSA9IGNtYXggLSBjbWluO1xuXG4gICAgICAgIGxldCBoID0gMDtcbiAgICAgICAgbGV0IHMgPSAwO1xuICAgICAgICBsZXQgbCA9IDA7XG5cbiAgICAgICAgaWYgKGRlbHRhID09PSAwKSB7XG4gICAgICAgICAgICBoID0gMDtcbiAgICAgICAgfSBlbHNlIGlmIChjbWF4ID09PSByKSB7XG4gICAgICAgICAgICBoID0gKChnIC0gYikgLyBkZWx0YSkgJSA2O1xuICAgICAgICB9IGVsc2UgaWYgKGNtYXggPT09IGcpIHtcbiAgICAgICAgICAgIGggPSAoYiAtIHIpIC8gZGVsdGEgKyAyO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaCA9IChyIC0gZykgLyBkZWx0YSArIDQ7XG4gICAgICAgIH1cblxuICAgICAgICBoID0gTWF0aC5yb3VuZChoICogNjApO1xuXG4gICAgICAgIGlmIChoIDwgMCkge1xuICAgICAgICAgICAgaCArPSAzNjA7XG4gICAgICAgIH1cblxuICAgICAgICBsID0gKGNtYXggKyBjbWluKSAvIDI7XG4gICAgICAgIHMgPSBkZWx0YSA9PT0gMCA/IDAgOiBkZWx0YSAvICgxIC0gTWF0aC5hYnMoMiAqIGwgLSAxKSk7XG4gICAgICAgIHMgPSArKHMgKiAxMDApLnRvRml4ZWQoMSk7XG4gICAgICAgIGwgPSArKGwgKiAxMDApLnRvRml4ZWQoMSk7XG5cbiAgICAgICAgcmV0dXJuIHsgaCwgcywgbCB9O1xuICAgIH1cblxuICAgIGhzbFN0cmluZzJoc2woc3RyOiBzdHJpbmcpOiBJUGVwSHNsQ29sb3Ige1xuICAgICAgICBjb25zdCBzZXAgPSBzdHIuaW5kZXhPZignLCcpID4gLTEgPyAnLCcgOiAnICc7XG4gICAgICAgIGNvbnN0IGhzbEFyciA9IHN0ci5zdWJzdHIoNCkuc3BsaXQoJyknKVswXS5zcGxpdChzZXApO1xuXG4gICAgICAgIGxldCBoOiBhbnkgPSBoc2xBcnJbMF07XG4gICAgICAgIGxldCBzID0gaHNsQXJyWzFdLnN1YnN0cigwLCBoc2xBcnJbMV0ubGVuZ3RoKS50cmltKCk7XG4gICAgICAgIGxldCBsID0gaHNsQXJyWzJdLnN1YnN0cigwLCBoc2xBcnJbMl0ubGVuZ3RoKS50cmltKCk7XG5cbiAgICAgICAgLy8gU3RyaXAgbGFiZWwgYW5kIGNvbnZlcnQgdG8gZGVncmVlcyAoaWYgbmVjZXNzYXJ5KVxuICAgICAgICBpZiAoaC5pbmRleE9mKCdkZWcnKSA+IC0xKSB7XG4gICAgICAgICAgICBoID0gaC5zdWJzdHIoMCwgaC5sZW5ndGggLSAzKTtcbiAgICAgICAgfSBlbHNlIGlmIChoLmluZGV4T2YoJ3JhZCcpID4gLTEpIHtcbiAgICAgICAgICAgIGggPSBNYXRoLnJvdW5kKGguc3Vic3RyKDAsIGgubGVuZ3RoIC0gMykgKiAoMTgwIC8gTWF0aC5QSSkpO1xuICAgICAgICB9IGVsc2UgaWYgKGguaW5kZXhPZigndHVybicpID4gLTEpIHtcbiAgICAgICAgICAgIGggPSBNYXRoLnJvdW5kKGguc3Vic3RyKDAsIGgubGVuZ3RoIC0gNCkgKiAzNjApO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gS2VlcCBodWUgZnJhY3Rpb24gb2YgMzYwIGlmIGVuZGluZyB1cCBvdmVyXG4gICAgICAgIGlmIChoID49IDM2MCkge1xuICAgICAgICAgICAgaCAlPSAzNjA7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBSZW1vdmUgdGhlICVcbiAgICAgICAgaWYgKHMuaW5kZXhPZignJScpID4gLTEpIHtcbiAgICAgICAgICAgIHMgPSBzLnJlcGxhY2UoLyUvZywgJycpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gUmVtb3ZlIHRoZSAlXG4gICAgICAgIGlmIChsLmluZGV4T2YoJyUnKSA+IC0xKSB7XG4gICAgICAgICAgICBsID0gbC5yZXBsYWNlKC8lL2csICcnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB7IGgsIHMsIGwgfTtcbiAgICB9XG5cbiAgICBoc2wycmdiKHsgaCwgcywgbCB9OiBJUGVwSHNsQ29sb3IpOiBJUGVwUmdiQ29sb3Ige1xuICAgICAgICBsZXQgcjtcbiAgICAgICAgbGV0IGc7XG4gICAgICAgIGxldCBiO1xuXG4gICAgICAgIGlmICghaXNGaW5pdGUoaCkpIHtcbiAgICAgICAgICAgIGggPSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFpc0Zpbml0ZShzKSkge1xuICAgICAgICAgICAgcyA9IDA7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIWlzRmluaXRlKGwpKSB7XG4gICAgICAgICAgICBsID0gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGggLz0gNjA7XG5cbiAgICAgICAgaWYgKGggPCAwKSB7XG4gICAgICAgICAgICBoID0gNiAtICgtaCAlIDYpO1xuICAgICAgICB9XG5cbiAgICAgICAgaCAlPSA2O1xuXG4gICAgICAgIHMgPSBNYXRoLm1heCgwLCBNYXRoLm1pbigxLCBzIC8gMTAwKSk7XG4gICAgICAgIGwgPSBNYXRoLm1heCgwLCBNYXRoLm1pbigxLCBsIC8gMTAwKSk7XG5cbiAgICAgICAgY29uc3QgYyA9ICgxIC0gTWF0aC5hYnMoMiAqIGwgLSAxKSkgKiBzO1xuICAgICAgICBjb25zdCB4ID0gYyAqICgxIC0gTWF0aC5hYnMoKGggJSAyKSAtIDEpKTtcblxuICAgICAgICBpZiAoaCA8IDEpIHtcbiAgICAgICAgICAgIHIgPSBjO1xuICAgICAgICAgICAgZyA9IHg7XG4gICAgICAgICAgICBiID0gMDtcbiAgICAgICAgfSBlbHNlIGlmIChoIDwgMikge1xuICAgICAgICAgICAgciA9IHg7XG4gICAgICAgICAgICBnID0gYztcbiAgICAgICAgICAgIGIgPSAwO1xuICAgICAgICB9IGVsc2UgaWYgKGggPCAzKSB7XG4gICAgICAgICAgICByID0gMDtcbiAgICAgICAgICAgIGcgPSBjO1xuICAgICAgICAgICAgYiA9IHg7XG4gICAgICAgIH0gZWxzZSBpZiAoaCA8IDQpIHtcbiAgICAgICAgICAgIHIgPSAwO1xuICAgICAgICAgICAgZyA9IHg7XG4gICAgICAgICAgICBiID0gYztcbiAgICAgICAgfSBlbHNlIGlmIChoIDwgNSkge1xuICAgICAgICAgICAgciA9IHg7XG4gICAgICAgICAgICBnID0gMDtcbiAgICAgICAgICAgIGIgPSBjO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgciA9IGM7XG4gICAgICAgICAgICBnID0gMDtcbiAgICAgICAgICAgIGIgPSB4O1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbSA9IGwgLSBjIC8gMjtcbiAgICAgICAgciA9IE1hdGgucm91bmQoKHIgKyBtKSAqIDI1NSk7XG4gICAgICAgIGcgPSBNYXRoLnJvdW5kKChnICsgbSkgKiAyNTUpO1xuICAgICAgICBiID0gTWF0aC5yb3VuZCgoYiArIG0pICogMjU1KTtcblxuICAgICAgICByZXR1cm4geyByLCBnLCBiIH07XG4gICAgfVxuXG4gICAgaGV4MmhzbChzdHI6IHN0cmluZyk6IElQZXBIc2xDb2xvciB7XG4gICAgICAgIGNvbnN0IHNpeERpZ2l0SGV4ID0gdGhpcy5oZXgyc2l4RGlnaXRIZXgoc3RyKTtcblxuICAgICAgICBpZiAoc2l4RGlnaXRIZXggPT09IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcmdiID0gdGhpcy5oZXgycmdiKHNpeERpZ2l0SGV4KTtcblxuICAgICAgICBpZiAocmdiID09PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLnJnYjJoc2wocmdiKTtcbiAgICB9XG5cbiAgICBoc2wyaGV4KGhzbDogSVBlcEhzbENvbG9yKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgcmdiID0gdGhpcy5oc2wycmdiKGhzbCk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMucmdiMnNpeERpZ2l0SGV4KHJnYik7XG4gICAgfVxuXG4gICAgcmVsYXRpdmVMdW1pbmFuY2UoeyByLCBnLCBiIH06IElQZXBSZ2JDb2xvcik6IG51bWJlciB7XG4gICAgICAgIFtyLCBnLCBiXSA9IFtyLCBnLCBiXS5tYXAoKGMpID0+IHtcbiAgICAgICAgICAgIGMgPSBjIC8gMjU1O1xuXG4gICAgICAgICAgICBpZiAoYyA8PSAwLjAzOTI4KSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGMgLyAxMi45MjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIE1hdGgucG93KChjICsgMC4wNTUpIC8gMS4wNTUsIDIuNCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiAwLjIxMjYgKiByICsgMC43MTUyICogZyArIDAuMDcyMiAqIGI7XG4gICAgfVxuXG4gICAgY29udHJhc3Qoc3RyMTogc3RyaW5nLCBzdHIyOiBzdHJpbmcpOiBudW1iZXIge1xuICAgICAgICBjb25zdCBMMSA9IHRoaXMucmVsYXRpdmVMdW1pbmFuY2UodGhpcy5oZXgycmdiKHN0cjEpKTtcbiAgICAgICAgY29uc3QgTDIgPSB0aGlzLnJlbGF0aXZlTHVtaW5hbmNlKHRoaXMuaGV4MnJnYihzdHIyKSk7XG5cbiAgICAgICAgaWYgKEwxIDwgTDIpIHtcbiAgICAgICAgICAgIHJldHVybiAoTDIgKyAwLjA1KSAvIChMMSArIDAuMDUpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIChMMSArIDAuMDUpIC8gKEwyICsgMC4wNSk7XG4gICAgfVxuXG4gICAgZmluZENsb3Nlc3RBY2Nlc3NpYmxlRGFya2VyQ29sb3IoXG4gICAgICAgIGFkanVzdGFibGVDb2xvcjogc3RyaW5nLFxuICAgICAgICBvdGhlckNvbG9yOiBzdHJpbmcsXG4gICAgICAgIGNvbnRyYXN0UmF0aW86IG51bWJlclxuICAgICk6IElQZXBDbG9zZXN0Q29sb3Ige1xuICAgICAgICBjb25zdCB7IGgsIHMsIGwgfSA9IHRoaXMuaGV4MmhzbChhZGp1c3RhYmxlQ29sb3IpO1xuXG4gICAgICAgIGlmICh0aGlzLmNvbnRyYXN0KGFkanVzdGFibGVDb2xvciwgb3RoZXJDb2xvcikgPj0gY29udHJhc3RSYXRpbykge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogYWRqdXN0YWJsZUNvbG9yLFxuICAgICAgICAgICAgICAgIGxpZ2h0bmVzczogbCxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgbWluQ29sb3IgPSB0aGlzLmhzbDJoZXgoeyBoLCBzLCBsOiAwIH0pO1xuXG4gICAgICAgIGlmICh0aGlzLmNvbnRyYXN0KG1pbkNvbG9yLCBvdGhlckNvbG9yKSA8IGNvbnRyYXN0UmF0aW8pIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IG1pbiA9IDA7XG4gICAgICAgIGxldCBtYXggPSBsO1xuICAgICAgICBsZXQgbWF4Q29sb3IgPSB0aGlzLmhzbDJoZXgoeyBoLCBzLCBsIH0pO1xuICAgICAgICBsZXQgbGFzdE1pbkNvbG9yO1xuICAgICAgICBsZXQgbGFzdE1heENvbG9yO1xuICAgICAgICBsZXQgbFRlbXA7XG5cbiAgICAgICAgd2hpbGUgKG1pbkNvbG9yICE9PSBsYXN0TWluQ29sb3IgfHwgbWF4Q29sb3IgIT09IGxhc3RNYXhDb2xvcikge1xuICAgICAgICAgICAgbGFzdE1pbkNvbG9yID0gbWluQ29sb3I7XG4gICAgICAgICAgICBsYXN0TWF4Q29sb3IgPSBtYXhDb2xvcjtcblxuICAgICAgICAgICAgbFRlbXAgPSAobWluICsgbWF4KSAvIDI7XG4gICAgICAgICAgICBhZGp1c3RhYmxlQ29sb3IgPSB0aGlzLmhzbDJoZXgoeyBoLCBzLCBsOiBsVGVtcCB9KTtcblxuICAgICAgICAgICAgaWYgKHRoaXMuY29udHJhc3QoYWRqdXN0YWJsZUNvbG9yLCBvdGhlckNvbG9yKSA8IGNvbnRyYXN0UmF0aW8pIHtcbiAgICAgICAgICAgICAgICBtYXggPSBsVGVtcDtcbiAgICAgICAgICAgICAgICBtYXhDb2xvciA9IHRoaXMuaHNsMmhleCh7IGgsIHMsIGw6IGxUZW1wIH0pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBtaW4gPSBsVGVtcDtcbiAgICAgICAgICAgICAgICBtaW5Db2xvciA9IHRoaXMuaHNsMmhleCh7IGgsIHMsIGw6IGxUZW1wIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGNvbG9yOiBtaW5Db2xvcixcbiAgICAgICAgICAgIGxpZ2h0bmVzczogbWluLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIGZpbmRDbG9zZXN0QWNjZXNzaWJsZUxpZ2h0ZXJDb2xvcihcbiAgICAgICAgYWRqdXN0YWJsZUNvbG9yOiBzdHJpbmcsXG4gICAgICAgIG90aGVyQ29sb3I6IHN0cmluZyxcbiAgICAgICAgY29udHJhc3RSYXRpbzogbnVtYmVyXG4gICAgKTogSVBlcENsb3Nlc3RDb2xvciB7XG4gICAgICAgIGNvbnN0IHsgaCwgcywgbCB9ID0gdGhpcy5oZXgyaHNsKGFkanVzdGFibGVDb2xvcik7XG5cbiAgICAgICAgaWYgKHRoaXMuY29udHJhc3QoYWRqdXN0YWJsZUNvbG9yLCBvdGhlckNvbG9yKSA+PSBjb250cmFzdFJhdGlvKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGNvbG9yOiBhZGp1c3RhYmxlQ29sb3IsXG4gICAgICAgICAgICAgICAgbGlnaHRuZXNzOiBsLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBtYXhDb2xvciA9IHRoaXMuaHNsMmhleCh7IGgsIHMsIGw6IDEwMCB9KTtcblxuICAgICAgICBpZiAodGhpcy5jb250cmFzdChtYXhDb2xvciwgb3RoZXJDb2xvcikgPCBjb250cmFzdFJhdGlvKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBtaW4gPSBsO1xuICAgICAgICBsZXQgbWF4ID0gMTAwO1xuICAgICAgICBsZXQgbWluQ29sb3IgPSB0aGlzLmhzbDJoZXgoeyBoLCBzLCBsIH0pO1xuICAgICAgICBsZXQgbGFzdE1pbkNvbG9yO1xuICAgICAgICBsZXQgbGFzdE1heENvbG9yO1xuICAgICAgICBsZXQgbFRlbXA7XG5cbiAgICAgICAgd2hpbGUgKG1pbkNvbG9yICE9PSBsYXN0TWluQ29sb3IgfHwgbWF4Q29sb3IgIT09IGxhc3RNYXhDb2xvcikge1xuICAgICAgICAgICAgbGFzdE1pbkNvbG9yID0gbWluQ29sb3I7XG4gICAgICAgICAgICBsYXN0TWF4Q29sb3IgPSBtYXhDb2xvcjtcblxuICAgICAgICAgICAgbFRlbXAgPSAobWluICsgbWF4KSAvIDI7XG4gICAgICAgICAgICBhZGp1c3RhYmxlQ29sb3IgPSB0aGlzLmhzbDJoZXgoeyBoLCBzLCBsOiBsVGVtcCB9KTtcblxuICAgICAgICAgICAgaWYgKHRoaXMuY29udHJhc3QoYWRqdXN0YWJsZUNvbG9yLCBvdGhlckNvbG9yKSA8IGNvbnRyYXN0UmF0aW8pIHtcbiAgICAgICAgICAgICAgICBtaW4gPSBsVGVtcDtcbiAgICAgICAgICAgICAgICBtaW5Db2xvciA9IHRoaXMuaHNsMmhleCh7IGgsIHMsIGw6IGxUZW1wIH0pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBtYXggPSBsVGVtcDtcbiAgICAgICAgICAgICAgICBtYXhDb2xvciA9IHRoaXMuaHNsMmhleCh7IGgsIHMsIGw6IGxUZW1wIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGNvbG9yOiBtYXhDb2xvcixcbiAgICAgICAgICAgIGxpZ2h0bmVzczogbWF4LFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIGZpbmRDbG9zZXN0QWNjZXNzaWJsZUNvbG9yKFxuICAgICAgICBhZGp1c3RhYmxlQ29sb3I6IHN0cmluZyxcbiAgICAgICAgb3RoZXJDb2xvcjogc3RyaW5nLFxuICAgICAgICBjb250cmFzdFJhdGlvOiBudW1iZXJcbiAgICApOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBjbG9zZXN0RGFya2VyQ29sb3I6IElQZXBDbG9zZXN0Q29sb3IgPSB0aGlzLmZpbmRDbG9zZXN0QWNjZXNzaWJsZURhcmtlckNvbG9yKFxuICAgICAgICAgICAgYWRqdXN0YWJsZUNvbG9yLFxuICAgICAgICAgICAgb3RoZXJDb2xvcixcbiAgICAgICAgICAgIGNvbnRyYXN0UmF0aW9cbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgY2xvc2VzdExpZ2h0ZXJDb2xvcjogSVBlcENsb3Nlc3RDb2xvciA9IHRoaXMuZmluZENsb3Nlc3RBY2Nlc3NpYmxlTGlnaHRlckNvbG9yKFxuICAgICAgICAgICAgYWRqdXN0YWJsZUNvbG9yLFxuICAgICAgICAgICAgb3RoZXJDb2xvcixcbiAgICAgICAgICAgIGNvbnRyYXN0UmF0aW9cbiAgICAgICAgKTtcblxuICAgICAgICBpZiAoY2xvc2VzdERhcmtlckNvbG9yID09PSBudWxsKSB7XG4gICAgICAgICAgICBpZiAoY2xvc2VzdExpZ2h0ZXJDb2xvciA9PT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gY2xvc2VzdExpZ2h0ZXJDb2xvci5jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjbG9zZXN0TGlnaHRlckNvbG9yID09PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm4gY2xvc2VzdERhcmtlckNvbG9yLmNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgeyBsIH0gPSB0aGlzLmhleDJoc2woYWRqdXN0YWJsZUNvbG9yKTtcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICBjbG9zZXN0TGlnaHRlckNvbG9yLmxpZ2h0bmVzcyAtIGwgPFxuICAgICAgICAgICAgbCAtIGNsb3Nlc3REYXJrZXJDb2xvci5saWdodG5lc3NcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gY2xvc2VzdExpZ2h0ZXJDb2xvci5jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjbG9zZXN0RGFya2VyQ29sb3IuY29sb3I7XG4gICAgfVxuXG4gICAgY29udmVydEhzbFRvU3RyaW5nSHNsKGhzbDogSVBlcEhzbENvbG9yKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICdoc2woJyArXG4gICAgICAgICAgICAoaHNsLmggPCAwID8gaHNsLmggKyAzNjAgOiBoc2wuaCkgK1xuICAgICAgICAgICAgJywgJyArXG4gICAgICAgICAgICBoc2wucyArXG4gICAgICAgICAgICAnJSwgJyArXG4gICAgICAgICAgICBoc2wubCArXG4gICAgICAgICAgICAnJSknXG4gICAgICAgICk7XG4gICAgfVxufVxuIl19
@@ -135,14 +135,14 @@ export class PepCookieService {
135
135
  }
136
136
  }
137
137
  }
138
- PepCookieService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PepCookieService_Factory() { return new PepCookieService(i0.ɵɵinject(i1.DOCUMENT, 8), i0.ɵɵinject(i0.PLATFORM_ID)); }, token: PepCookieService, providedIn: "platform" });
138
+ PepCookieService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PepCookieService_Factory() { return new PepCookieService(i0.ɵɵinject(i1.DOCUMENT, 8), i0.ɵɵinject(i0.PLATFORM_ID)); }, token: PepCookieService, providedIn: "root" });
139
139
  PepCookieService.decorators = [
140
140
  { type: Injectable, args: [{
141
- providedIn: 'platform',
141
+ providedIn: 'root',
142
142
  },] }
143
143
  ];
144
144
  PepCookieService.ctorParameters = () => [
145
145
  { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [DOCUMENT,] }] },
146
146
  { type: InjectionToken, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] }
147
147
  ];
148
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29va2llLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3NyYy9jb3JlL2NvbW1vbi9zZXJ2aWNlcy9jb29raWUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsVUFBVSxFQUNWLE1BQU0sRUFDTixXQUFXLEVBQ1gsY0FBYyxFQUNkLFFBQVEsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsUUFBUSxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQUs5RCxNQUFNLE9BQU8sZ0JBQWdCO0lBR3pCLFlBQzBDLFFBQWEsRUFDdEIsVUFBK0I7UUFEdEIsYUFBUSxHQUFSLFFBQVEsQ0FBSztRQUN0QixlQUFVLEdBQVYsVUFBVSxDQUFxQjtRQUU1RCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRDs7O09BR0c7SUFDSCxLQUFLLENBQUMsSUFBWTtRQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUU7WUFDNUIsT0FBTyxLQUFLLENBQUM7U0FDaEI7UUFFRCxJQUFJLEdBQUcsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFaEMsTUFBTSxNQUFNLEdBQVcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsRCxNQUFNLE1BQU0sR0FBWSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFMUQsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQztJQUVEOzs7T0FHRztJQUNILEdBQUcsQ0FBQyxJQUFZO1FBQ1osSUFBSSxJQUFJLENBQUMsb0JBQW9CLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUMvQyxJQUFJ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QztTQUNsRDtRQUFDLFdBQU07WUFDSiwrQ0FBK0M7WUFDL0MsT0FBTyxtQkFBbUIsQ0FBQztTQUM5QjtJQUNMLENBQUM7Ozs7WUF6TUosVUFBVSxTQUFDO2dCQUNSLFVBQVUsRUFBRSxVQUFVO2FBQ3pCOzs7NENBS1EsUUFBUSxZQUFJLE1BQU0sU0FBQyxRQUFRO1lBWmhDLGNBQWMsdUJBYVQsTUFBTSxTQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEluamVjdGFibGUsXG4gICAgSW5qZWN0LFxuICAgIFBMQVRGT1JNX0lELFxuICAgIEluamVjdGlvblRva2VuLFxuICAgIE9wdGlvbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERPQ1VNRU5ULCBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncGxhdGZvcm0nLFxufSlcbmV4cG9ydCBjbGFzcyBQZXBDb29raWVTZXJ2aWNlIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRvY3VtZW50SXNBY2Nlc3NpYmxlOiBib29sZWFuO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgZG9jdW1lbnQ6IGFueSxcbiAgICAgICAgQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBJbmplY3Rpb25Ub2tlbjxhbnk+XG4gICAgKSB7XG4gICAgICAgIHRoaXMuZG9jdW1lbnRJc0FjY2Vzc2libGUgPSBpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBwYXJhbSBuYW1lIENvb2tpZSBuYW1lXG4gICAgICogQHJldHVybnMgYm9vbGVhbiAtIHdoZXRoZXIgY29va2llIHdpdGggc3BlY2lmaWVkIG5hbWUgZXhpc3RzXG4gICAgICovXG4gICAgY2hlY2sobmFtZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIGlmICghdGhpcy5kb2N1bWVudElzQWNjZXNzaWJsZSkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgbmFtZSA9IGVuY29kZVVSSUNvbXBvbmVudChuYW1lKTtcblxuICAgICAgICBjb25zdCByZWdFeHA6IFJlZ0V4cCA9IHRoaXMuZ2V0Q29va2llUmVnRXhwKG5hbWUpO1xuICAgICAgICBjb25zdCBleGlzdHM6IGJvb2xlYW4gPSByZWdFeHAudGVzdCh0aGlzLmRvY3VtZW50LmNvb2tpZSk7XG5cbiAgICAgICAgcmV0dXJuIGV4aXN0cztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAcGFyYW0gbmFtZSBDb29raWUgbmFtZVxuICAgICAqIEByZXR1cm5zIHByb3BlcnR5IHZhbHVlXG4gICAgICovXG4gICAgZ2V0KG5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGlmICh0aGlzLmRvY3VtZW50SXNBY2Nlc3NpYmxlICYmIHRoaXMuY2hlY2sobmFtZSkpIHtcbiAgICAgICAgICAgIG5hbWUgPSBlbmNvZGVVUklDb21wb25lbnQobmFtZSk7XG5cbiAgICAgICAgICAgIGNvbnN0IHJlZ0V4cDogUmVnRXhwID0gdGhpcy5nZXRDb29raWVSZWdFeHAobmFtZSk7XG4gICAgICAgICAgICBjb25zdCByZXN1bHQ6IFJlZ0V4cEV4ZWNBcnJheSA9IHJlZ0V4cC5leGVjKHRoaXMuZG9jdW1lbnQuY29va2llKTtcblxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2FmZURlY29kZVVSSUNvbXBvbmVudChyZXN1bHRbMV0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuICcnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQHJldHVybnMgYWxsIHRoZSBjb29raWVzIGluIGpzb25cbiAgICAgKi9cbiAgICBnZXRBbGwoKTogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSB7XG4gICAgICAgIGlmICghdGhpcy5kb2N1bWVudElzQWNjZXNzaWJsZSkge1xuICAgICAgICAgICAgcmV0dXJuIHt9O1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgY29va2llczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHt9O1xuICAgICAgICBjb25zdCBkb2N1bWVudDogYW55ID0gdGhpcy5kb2N1bWVudDtcblxuICAgICAgICBpZiAoZG9jdW1lbnQuY29va2llICYmIGRvY3VtZW50LmNvb2tpZSAhPT0gJycpIHtcbiAgICAgICAgICAgIGRvY3VtZW50LmNvb2tpZS5zcGxpdCgnOycpLmZvckVhY2goKGN1cnJlbnRDb29raWUpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBbY29va2llTmFtZSwgY29va2llVmFsdWVdID0gY3VycmVudENvb2tpZS5zcGxpdCgnPScpO1xuICAgICAgICAgICAgICAgIGNvb2tpZXNbXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2FmZURlY29kZVVSSUNvbXBvbmVudChjb29raWVOYW1lLnJlcGxhY2UoL14gLywgJycpKVxuICAgICAgICAgICAgICAgIF0gPSB0aGlzLnNhZmVEZWNvZGVVUklDb21wb25lbnQoY29va2llVmFsdWUpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gY29va2llcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAcGFyYW0gbmFtZSAgICAgQ29va2llIG5hbWVcbiAgICAgKiBAcGFyYW0gdmFsdWUgICAgQ29va2llIHZhbHVlXG4gICAgICogQHBhcmFtIGV4cGlyZXMgIE51bWJlciBvZiBkYXlzIHVudGlsIHRoZSBjb29raWVzIGV4cGlyZXMgb3IgYW4gYWN0dWFsIGBEYXRlYFxuICAgICAqIEBwYXJhbSBwYXRoICAgICBDb29raWUgcGF0aFxuICAgICAqIEBwYXJhbSBkb21haW4gICBDb29raWUgZG9tYWluXG4gICAgICogQHBhcmFtIHNlY3VyZSAgIFNlY3VyZSBmbGFnXG4gICAgICogQHBhcmFtIHNhbWVTaXRlIE9XQVNQIHNhbWVzaXRlIHRva2VuIGBMYXhgLCBgTm9uZWAsIG9yIGBTdHJpY3RgLiBEZWZhdWx0cyB0byBgTGF4YFxuICAgICAqL1xuICAgIHNldChcbiAgICAgICAgbmFtZTogc3RyaW5nLFxuICAgICAgICB2YWx1ZTogc3RyaW5nLFxuICAgICAgICBleHBpcmVzPzogbnVtYmVyIHwgRGF0ZSxcbiAgICAgICAgcGF0aD86IHN0cmluZyxcbiAgICAgICAgZG9tYWluPzogc3RyaW5nLFxuICAgICAgICBzZWN1cmU/OiBib29sZWFuLFxuICAgICAgICBzYW1lU2l0ZTogJ0xheCcgfCAnTm9uZScgfCAnU3RyaWN0JyA9ICdMYXgnXG4gICAgKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5kb2N1bWVudElzQWNjZXNzaWJsZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGNvb2tpZVN0cmluZzogc3RyaW5nID1cbiAgICAgICAgICAgIGVuY29kZVVSSUNvbXBvbmVudChuYW1lKSArICc9JyArIGVuY29kZVVSSUNvbXBvbmVudCh2YWx1ZSkgKyAnOyc7XG5cbiAgICAgICAgaWYgKGV4cGlyZXMpIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgZXhwaXJlcyA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBkYXRlRXhwaXJlczogRGF0ZSA9IG5ldyBEYXRlKFxuICAgICAgICAgICAgICAgICAgICBuZXcgRGF0ZSgpLmdldFRpbWUoKSArIGV4cGlyZXMgKiAxMDAwICogNjAgKiA2MCAqIDI0XG4gICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgIGNvb2tpZVN0cmluZyArPSAnZXhwaXJlcz0nICsgZGF0ZUV4cGlyZXMudG9VVENTdHJpbmcoKSArICc7JztcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29va2llU3RyaW5nICs9ICdleHBpcmVzPScgKyBleHBpcmVzLnRvVVRDU3RyaW5nKCkgKyAnOyc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocGF0aCkge1xuICAgICAgICAgICAgY29va2llU3RyaW5nICs9ICdwYXRoPScgKyBwYXRoICsgJzsnO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGRvbWFpbikge1xuICAgICAgICAgICAgY29va2llU3RyaW5nICs9ICdkb21haW49JyArIGRvbWFpbiArICc7JztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzZWN1cmUgPT09IGZhbHNlICYmIHNhbWVTaXRlID09PSAnTm9uZScpIHtcbiAgICAgICAgICAgIHNlY3VyZSA9IHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc2VjdXJlKSB7XG4gICAgICAgICAgICBjb29raWVTdHJpbmcgKz0gJ3NlY3VyZTsnO1xuICAgICAgICB9XG5cbiAgICAgICAgY29va2llU3RyaW5nICs9ICdzYW1lU2l0ZT0nICsgc2FtZVNpdGUgKyAnOyc7XG5cbiAgICAgICAgdGhpcy5kb2N1bWVudC5jb29raWUgPSBjb29raWVTdHJpbmc7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQHBhcmFtIG5hbWUgICBDb29raWUgbmFtZVxuICAgICAqIEBwYXJhbSBwYXRoICAgQ29va2llIHBhdGhcbiAgICAgKiBAcGFyYW0gZG9tYWluIENvb2tpZSBkb21haW5cbiAgICAgKi9cbiAgICBkZWxldGUoXG4gICAgICAgIG5hbWU6IHN0cmluZyxcbiAgICAgICAgcGF0aD86IHN0cmluZyxcbiAgICAgICAgZG9tYWluPzogc3RyaW5nLFxuICAgICAgICBzZWN1cmU/OiBib29sZWFuLFxuICAgICAgICBzYW1lU2l0ZTogJ0xheCcgfCAnTm9uZScgfCAnU3RyaWN0JyA9ICdMYXgnXG4gICAgKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5kb2N1bWVudElzQWNjZXNzaWJsZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5zZXQoXG4gICAgICAgICAgICBuYW1lLFxuICAgICAgICAgICAgJycsXG4gICAgICAgICAgICBuZXcgRGF0ZSgnVGh1LCAwMSBKYW4gMTk3MCAwMDowMDowMSBHTVQnKSxcbiAgICAgICAgICAgIHBhdGgsXG4gICAgICAgICAgICBkb21haW4sXG4gICAgICAgICAgICBzZWN1cmUsXG4gICAgICAgICAgICBzYW1lU2l0ZVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBwYXJhbSBwYXRoICAgQ29va2llIHBhdGhcbiAgICAgKiBAcGFyYW0gZG9tYWluIENvb2tpZSBkb21haW5cbiAgICAgKi9cbiAgICBkZWxldGVBbGwoXG4gICAgICAgIHBhdGg/OiBzdHJpbmcsXG4gICAgICAgIGRvbWFpbj86IHN0cmluZyxcbiAgICAgICAgc2VjdXJlPzogYm9vbGVhbixcbiAgICAgICAgc2FtZVNpdGU6ICdMYXgnIHwgJ05vbmUnIHwgJ1N0cmljdCcgPSAnTGF4J1xuICAgICk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuZG9jdW1lbnRJc0FjY2Vzc2libGUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGNvb2tpZXM6IGFueSA9IHRoaXMuZ2V0QWxsKCk7XG5cbiAgICAgICAgZm9yIChjb25zdCBjb29raWVOYW1lIGluIGNvb2tpZXMpIHtcbiAgICAgICAgICAgIGlmIChjb29raWVzLmhhc093blByb3BlcnR5KGNvb2tpZU5hbWUpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5kZWxldGUoY29va2llTmFtZSwgcGF0aCwgZG9tYWluLCBzZWN1cmUsIHNhbWVTaXRlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBwYXJhbSBuYW1lIENvb2tpZSBuYW1lXG4gICAgICogQHJldHVybnMgcHJvcGVydHkgUmVnRXhwXG4gICAgICovXG4gICAgcHJpdmF0ZSBnZXRDb29raWVSZWdFeHAobmFtZTogc3RyaW5nKTogUmVnRXhwIHtcbiAgICAgICAgY29uc3QgZXNjYXBlZE5hbWU6IHN0cmluZyA9IG5hbWUucmVwbGFjZShcbiAgICAgICAgICAgIC8oW1xcW1xcXVxce1xcfVxcKFxcKVxcfFxcPVxcO1xcK1xcP1xcLFxcLlxcKlxcXlxcJF0pL2dpLFxuICAgICAgICAgICAgJ1xcXFwkMSdcbiAgICAgICAgKTtcblxuICAgICAgICByZXR1cm4gbmV3IFJlZ0V4cChcbiAgICAgICAgICAgICcoPzpeJyArIGVzY2FwZWROYW1lICsgJ3w7XFxcXHMqJyArIGVzY2FwZWROYW1lICsgJyk9KC4qPykoPzo7fCQpJyxcbiAgICAgICAgICAgICdnJ1xuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2FmZURlY29kZVVSSUNvbXBvbmVudChlbmNvZGVkVVJJQ29tcG9uZW50OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChlbmNvZGVkVVJJQ29tcG9uZW50KTtcbiAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgICAvLyBwcm9iYWJseSBpdCBpcyBub3QgdXJpIGVuY29kZWQuIHJldHVybiBhcyBpc1xuICAgICAgICAgICAgcmV0dXJuIGVuY29kZWRVUklDb21wb25lbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
148
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29va2llLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3NyYy9jb3JlL2NvbW1vbi9zZXJ2aWNlcy9jb29raWUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsVUFBVSxFQUNWLE1BQU0sRUFDTixXQUFXLEVBQ1gsY0FBYyxFQUNkLFFBQVEsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsUUFBUSxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQUs5RCxNQUFNLE9BQU8sZ0JBQWdCO0lBR3pCLFlBQzBDLFFBQWEsRUFDdEIsVUFBK0I7UUFEdEIsYUFBUSxHQUFSLFFBQVEsQ0FBSztRQUN0QixlQUFVLEdBQVYsVUFBVSxDQUFxQjtRQUU1RCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRDs7O09BR0c7SUFDSCxLQUFLLENBQUMsSUFBWTtRQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUU7WUFDNUIsT0FBTyxLQUFLLENBQUM7U0FDaEI7UUFFRCxJQUFJLEdBQUcsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFaEMsTUFBTSxNQUFNLEdBQVcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsRCxNQUFNLE1BQU0sR0FBWSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFMUQsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQztJQUVEOzs7T0FHRztJQUNILEdBQUcsQ0FBQyxJQUFZO1FBQ1osSUFBSSxJQUFJLENBQUMsb0JBQW9CLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUMvQyxJQUFJ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QztTQUNsRDtRQUFDLFdBQU07WUFDSiwrQ0FBK0M7WUFDL0MsT0FBTyxtQkFBbUIsQ0FBQztTQUM5QjtJQUNMLENBQUM7Ozs7WUF6TUosVUFBVSxTQUFDO2dCQUNSLFVBQVUsRUFBRSxNQUFNO2FBQ3JCOzs7NENBS1EsUUFBUSxZQUFJLE1BQU0sU0FBQyxRQUFRO1lBWmhDLGNBQWMsdUJBYVQsTUFBTSxTQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEluamVjdGFibGUsXG4gICAgSW5qZWN0LFxuICAgIFBMQVRGT1JNX0lELFxuICAgIEluamVjdGlvblRva2VuLFxuICAgIE9wdGlvbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERPQ1VNRU5ULCBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFBlcENvb2tpZVNlcnZpY2Uge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnRJc0FjY2Vzc2libGU6IGJvb2xlYW47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBkb2N1bWVudDogYW55LFxuICAgICAgICBASW5qZWN0KFBMQVRGT1JNX0lEKSBwcml2YXRlIHBsYXRmb3JtSWQ6IEluamVjdGlvblRva2VuPGFueT5cbiAgICApIHtcbiAgICAgICAgdGhpcy5kb2N1bWVudElzQWNjZXNzaWJsZSA9IGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQHBhcmFtIG5hbWUgQ29va2llIG5hbWVcbiAgICAgKiBAcmV0dXJucyBib29sZWFuIC0gd2hldGhlciBjb29raWUgd2l0aCBzcGVjaWZpZWQgbmFtZSBleGlzdHNcbiAgICAgKi9cbiAgICBjaGVjayhuYW1lOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCF0aGlzLmRvY3VtZW50SXNBY2Nlc3NpYmxlKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBuYW1lID0gZW5jb2RlVVJJQ29tcG9uZW50KG5hbWUpO1xuXG4gICAgICAgIGNvbnN0IHJlZ0V4cDogUmVnRXhwID0gdGhpcy5nZXRDb29raWVSZWdFeHAobmFtZSk7XG4gICAgICAgIGNvbnN0IGV4aXN0czogYm9vbGVhbiA9IHJlZ0V4cC50ZXN0KHRoaXMuZG9jdW1lbnQuY29va2llKTtcblxuICAgICAgICByZXR1cm4gZXhpc3RzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBwYXJhbSBuYW1lIENvb2tpZSBuYW1lXG4gICAgICogQHJldHVybnMgcHJvcGVydHkgdmFsdWVcbiAgICAgKi9cbiAgICBnZXQobmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKHRoaXMuZG9jdW1lbnRJc0FjY2Vzc2libGUgJiYgdGhpcy5jaGVjayhuYW1lKSkge1xuICAgICAgICAgICAgbmFtZSA9IGVuY29kZVVSSUNvbXBvbmVudChuYW1lKTtcblxuICAgICAgICAgICAgY29uc3QgcmVnRXhwOiBSZWdFeHAgPSB0aGlzLmdldENvb2tpZVJlZ0V4cChuYW1lKTtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdDogUmVnRXhwRXhlY0FycmF5ID0gcmVnRXhwLmV4ZWModGhpcy5kb2N1bWVudC5jb29raWUpO1xuXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5zYWZlRGVjb2RlVVJJQ29tcG9uZW50KHJlc3VsdFsxXSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAcmV0dXJucyBhbGwgdGhlIGNvb2tpZXMgaW4ganNvblxuICAgICAqL1xuICAgIGdldEFsbCgpOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9IHtcbiAgICAgICAgaWYgKCF0aGlzLmRvY3VtZW50SXNBY2Nlc3NpYmxlKSB7XG4gICAgICAgICAgICByZXR1cm4ge307XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBjb29raWVzOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge307XG4gICAgICAgIGNvbnN0IGRvY3VtZW50OiBhbnkgPSB0aGlzLmRvY3VtZW50O1xuXG4gICAgICAgIGlmIChkb2N1bWVudC5jb29raWUgJiYgZG9jdW1lbnQuY29va2llICE9PSAnJykge1xuICAgICAgICAgICAgZG9jdW1lbnQuY29va2llLnNwbGl0KCc7JykuZm9yRWFjaCgoY3VycmVudENvb2tpZSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IFtjb29raWVOYW1lLCBjb29raWVWYWx1ZV0gPSBjdXJyZW50Q29va2llLnNwbGl0KCc9Jyk7XG4gICAgICAgICAgICAgICAgY29va2llc1tcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zYWZlRGVjb2RlVVJJQ29tcG9uZW50KGNvb2tpZU5hbWUucmVwbGFjZSgvXiAvLCAnJykpXG4gICAgICAgICAgICAgICAgXSA9IHRoaXMuc2FmZURlY29kZVVSSUNvbXBvbmVudChjb29raWVWYWx1ZSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjb29raWVzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBwYXJhbSBuYW1lICAgICBDb29raWUgbmFtZVxuICAgICAqIEBwYXJhbSB2YWx1ZSAgICBDb29raWUgdmFsdWVcbiAgICAgKiBAcGFyYW0gZXhwaXJlcyAgTnVtYmVyIG9mIGRheXMgdW50aWwgdGhlIGNvb2tpZXMgZXhwaXJlcyBvciBhbiBhY3R1YWwgYERhdGVgXG4gICAgICogQHBhcmFtIHBhdGggICAgIENvb2tpZSBwYXRoXG4gICAgICogQHBhcmFtIGRvbWFpbiAgIENvb2tpZSBkb21haW5cbiAgICAgKiBAcGFyYW0gc2VjdXJlICAgU2VjdXJlIGZsYWdcbiAgICAgKiBAcGFyYW0gc2FtZVNpdGUgT1dBU1Agc2FtZXNpdGUgdG9rZW4gYExheGAsIGBOb25lYCwgb3IgYFN0cmljdGAuIERlZmF1bHRzIHRvIGBMYXhgXG4gICAgICovXG4gICAgc2V0KFxuICAgICAgICBuYW1lOiBzdHJpbmcsXG4gICAgICAgIHZhbHVlOiBzdHJpbmcsXG4gICAgICAgIGV4cGlyZXM/OiBudW1iZXIgfCBEYXRlLFxuICAgICAgICBwYXRoPzogc3RyaW5nLFxuICAgICAgICBkb21haW4/OiBzdHJpbmcsXG4gICAgICAgIHNlY3VyZT86IGJvb2xlYW4sXG4gICAgICAgIHNhbWVTaXRlOiAnTGF4JyB8ICdOb25lJyB8ICdTdHJpY3QnID0gJ0xheCdcbiAgICApOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRvY3VtZW50SXNBY2Nlc3NpYmxlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgY29va2llU3RyaW5nOiBzdHJpbmcgPVxuICAgICAgICAgICAgZW5jb2RlVVJJQ29tcG9uZW50KG5hbWUpICsgJz0nICsgZW5jb2RlVVJJQ29tcG9uZW50KHZhbHVlKSArICc7JztcblxuICAgICAgICBpZiAoZXhwaXJlcykge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBleHBpcmVzID09PSAnbnVtYmVyJykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGRhdGVFeHBpcmVzOiBEYXRlID0gbmV3IERhdGUoXG4gICAgICAgICAgICAgICAgICAgIG5ldyBEYXRlKCkuZ2V0VGltZSgpICsgZXhwaXJlcyAqIDEwMDAgKiA2MCAqIDYwICogMjRcbiAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgY29va2llU3RyaW5nICs9ICdleHBpcmVzPScgKyBkYXRlRXhwaXJlcy50b1VUQ1N0cmluZygpICsgJzsnO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb29raWVTdHJpbmcgKz0gJ2V4cGlyZXM9JyArIGV4cGlyZXMudG9VVENTdHJpbmcoKSArICc7JztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChwYXRoKSB7XG4gICAgICAgICAgICBjb29raWVTdHJpbmcgKz0gJ3BhdGg9JyArIHBhdGggKyAnOyc7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZG9tYWluKSB7XG4gICAgICAgICAgICBjb29raWVTdHJpbmcgKz0gJ2RvbWFpbj0nICsgZG9tYWluICsgJzsnO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHNlY3VyZSA9PT0gZmFsc2UgJiYgc2FtZVNpdGUgPT09ICdOb25lJykge1xuICAgICAgICAgICAgc2VjdXJlID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzZWN1cmUpIHtcbiAgICAgICAgICAgIGNvb2tpZVN0cmluZyArPSAnc2VjdXJlOyc7XG4gICAgICAgIH1cblxuICAgICAgICBjb29raWVTdHJpbmcgKz0gJ3NhbWVTaXRlPScgKyBzYW1lU2l0ZSArICc7JztcblxuICAgICAgICB0aGlzLmRvY3VtZW50LmNvb2tpZSA9IGNvb2tpZVN0cmluZztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAcGFyYW0gbmFtZSAgIENvb2tpZSBuYW1lXG4gICAgICogQHBhcmFtIHBhdGggICBDb29raWUgcGF0aFxuICAgICAqIEBwYXJhbSBkb21haW4gQ29va2llIGRvbWFpblxuICAgICAqL1xuICAgIGRlbGV0ZShcbiAgICAgICAgbmFtZTogc3RyaW5nLFxuICAgICAgICBwYXRoPzogc3RyaW5nLFxuICAgICAgICBkb21haW4/OiBzdHJpbmcsXG4gICAgICAgIHNlY3VyZT86IGJvb2xlYW4sXG4gICAgICAgIHNhbWVTaXRlOiAnTGF4JyB8ICdOb25lJyB8ICdTdHJpY3QnID0gJ0xheCdcbiAgICApOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRvY3VtZW50SXNBY2Nlc3NpYmxlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNldChcbiAgICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgICAnJyxcbiAgICAgICAgICAgIG5ldyBEYXRlKCdUaHUsIDAxIEphbiAxOTcwIDAwOjAwOjAxIEdNVCcpLFxuICAgICAgICAgICAgcGF0aCxcbiAgICAgICAgICAgIGRvbWFpbixcbiAgICAgICAgICAgIHNlY3VyZSxcbiAgICAgICAgICAgIHNhbWVTaXRlXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQHBhcmFtIHBhdGggICBDb29raWUgcGF0aFxuICAgICAqIEBwYXJhbSBkb21haW4gQ29va2llIGRvbWFpblxuICAgICAqL1xuICAgIGRlbGV0ZUFsbChcbiAgICAgICAgcGF0aD86IHN0cmluZyxcbiAgICAgICAgZG9tYWluPzogc3RyaW5nLFxuICAgICAgICBzZWN1cmU/OiBib29sZWFuLFxuICAgICAgICBzYW1lU2l0ZTogJ0xheCcgfCAnTm9uZScgfCAnU3RyaWN0JyA9ICdMYXgnXG4gICAgKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5kb2N1bWVudElzQWNjZXNzaWJsZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgY29va2llczogYW55ID0gdGhpcy5nZXRBbGwoKTtcblxuICAgICAgICBmb3IgKGNvbnN0IGNvb2tpZU5hbWUgaW4gY29va2llcykge1xuICAgICAgICAgICAgaWYgKGNvb2tpZXMuaGFzT3duUHJvcGVydHkoY29va2llTmFtZSkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRlbGV0ZShjb29raWVOYW1lLCBwYXRoLCBkb21haW4sIHNlY3VyZSwgc2FtZVNpdGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQHBhcmFtIG5hbWUgQ29va2llIG5hbWVcbiAgICAgKiBAcmV0dXJucyBwcm9wZXJ0eSBSZWdFeHBcbiAgICAgKi9cbiAgICBwcml2YXRlIGdldENvb2tpZVJlZ0V4cChuYW1lOiBzdHJpbmcpOiBSZWdFeHAge1xuICAgICAgICBjb25zdCBlc2NhcGVkTmFtZTogc3RyaW5nID0gbmFtZS5yZXBsYWNlKFxuICAgICAgICAgICAgLyhbXFxbXFxdXFx7XFx9XFwoXFwpXFx8XFw9XFw7XFwrXFw/XFwsXFwuXFwqXFxeXFwkXSkvZ2ksXG4gICAgICAgICAgICAnXFxcXCQxJ1xuICAgICAgICApO1xuXG4gICAgICAgIHJldHVybiBuZXcgUmVnRXhwKFxuICAgICAgICAgICAgJyg/Ol4nICsgZXNjYXBlZE5hbWUgKyAnfDtcXFxccyonICsgZXNjYXBlZE5hbWUgKyAnKT0oLio/KSg/Ojt8JCknLFxuICAgICAgICAgICAgJ2cnXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzYWZlRGVjb2RlVVJJQ29tcG9uZW50KGVuY29kZWRVUklDb21wb25lbnQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGVuY29kZWRVUklDb21wb25lbnQpO1xuICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICAgIC8vIHByb2JhYmx5IGl0IGlzIG5vdCB1cmkgZW5jb2RlZC4gcmV0dXJuIGFzIGlzXG4gICAgICAgICAgICByZXR1cm4gZW5jb2RlZFVSSUNvbXBvbmVudDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
@@ -103,10 +103,10 @@ export class PepDataConvertorService {
103
103
  return layout;
104
104
  }
105
105
  }
106
- PepDataConvertorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PepDataConvertorService_Factory() { return new PepDataConvertorService(); }, token: PepDataConvertorService, providedIn: "platform" });
106
+ PepDataConvertorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PepDataConvertorService_Factory() { return new PepDataConvertorService(); }, token: PepDataConvertorService, providedIn: "root" });
107
107
  PepDataConvertorService.decorators = [
108
108
  { type: Injectable, args: [{
109
- providedIn: 'platform',
109
+ providedIn: 'root',
110
110
  },] }
111
111
  ];
112
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb252ZXJ0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvc3JjL2NvcmUvY29tbW9uL3NlcnZpY2VzL2RhdGEtY29udmVydG9yLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQ0gsV0FBVyxFQUNYLGNBQWMsRUFDZCxTQUFTLEVBQ1QsY0FBYyxFQUNkLGtCQUFrQixFQUVsQixnQkFBZ0IsR0FDbkIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBRW5ELE1BQU0sT0FBTyxZQUFZO0lBY3JCLFlBQ0ksVUFXSSxFQUFFO1FBRU4sSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDO1FBQy9CLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7UUFDakMsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQzNCLElBQUksQ0FBQyxjQUFjLEdBQUcsT0FBTyxDQUFDLGNBQWMsSUFBSSxFQUFFLENBQUM7UUFDbkQsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDO1FBQ25DLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7UUFDbkMsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxlQUFlLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQztRQUMvQyxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksZ0JBQWdCLENBQUMsSUFBSSxDQUFDO1FBQzlELElBQUksQ0FBQyxLQUFLLEdB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R0FBRyxFQUFFLENBQUM7UUFDekIsU0FBUyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3pDLFNBQVMsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLE9BQU8sU0FBUyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxjQUFjLENBQ1YsQ0FBUyxFQUNULEtBQWEsRUFDYixVQUFrQixFQUNsQixDQUFTLEVBQ1QsTUFBYyxFQUNkLFVBQWtCLEVBQ2xCLFVBQWtCO1FBRWxCLE1BQU0sTUFBTSxHQUFHLElBQUksV0FBVyxDQUFDO1lBQzNCLENBQUMsRUFBRSxDQUFDO1lBQ0osS0FBSyxFQUFFLEtBQUs7WUFDWixVQUFVLEVBQUUsVUFBVTtZQUN0QixDQUFDLEVBQUUsQ0FBQztZQUNKLE1BQU0sRUFBRSxNQUFNO1lBQ2QsVUFBVSxFQUFFLFVBQVU7WUFDdEIsVUFBVSxFQUFFLFVBQVU7U0FDekIsQ0FBQyxDQUFDO1FBRUgsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQzs7OztZQW5ISixVQUFVLFNBQUM7Z0JBQ1IsVUFBVSxFQUFFLFVBQVU7YUFDekIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEZpZWxkTGF5b3V0LFxuICAgIE9iamVjdHNEYXRhUm93LFxuICAgIFVJQ29udHJvbCxcbiAgICBVSUNvbnRyb2xGaWVsZCxcbiAgICBPYmplY3RzRGF0YVJvd0NlbGwsXG4gICAgRklFTERfVFlQRSxcbiAgICBYX0FMSUdOTUVOVF9UWVBFLFxufSBmcm9tICcuLi9tb2RlbC93YXBpLm1vZGVsJztcbmltcG9ydCB7IFBlcEd1aWQgfSBmcm9tICcuLi9tb2RlbC91dGlsaXRpZXMubW9kZWwnO1xuXG5leHBvcnQgY2xhc3MgUGVwRmllbGREYXRhIHtcbiAgICBBcGlOYW1lOiBzdHJpbmc7XG4gICAgRW5hYmxlZD86IGJvb2xlYW47XG4gICAgVmFsdWU6IHN0cmluZztcbiAgICBGb3JtYXR0ZWRWYWx1ZT86IHN0cmluZztcbiAgICBGaWVsZFR5cGU6IEZJRUxEX1RZUEU7XG4gICAgUmVhZE9ubHk/OiBib29sZWFuO1xuICAgIENvbHVtbldpZHRoOiBudW1iZXI7XG4gICAgQ29sdW1uV2lkdGhUeXBlPzogbnVtYmVyO1xuICAgIFhBbGlnbm1lbnQ6IFhfQUxJR05NRU5UX1RZUEU7XG4gICAgVGl0bGU6IHN0cmluZztcbiAgICBBZGRpdGlvbmFsVmFsdWU/OiBzdHJpbmc7XG4gICAgT3B0aW9uYWxWYWx1ZXM/OiBhbnk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgQXBpTmFtZT86IHN0cmluZztcbiAgICAgICAgICAgIEVuYWJsZWQ/OiBib29sZWFuO1xuICAgICAgICAgICAgVmFsdWU/OiBzdHJpbmc7XG4gICAgICAgICAgICBGb3JtYXR0ZWRWYWx1ZT86IHN0cmluZztcbiAgICAgICAgICAgIEZpZWxkVHlwZT86IEZJRUxEX1RZUEU7XG4gICAgICAgICAgICBSZWFkT25seT86IGJvb2xlYW47XG4gICAgICAgICAgICBDb2x1bW5XaWR0aD86IG51bWJlcjtcbiAgICAgICAgICAgIENvbHVtbldpZHRoVHlwZT86IG51bWJlcjtcbiAgICAgICAgICAgIFhBbGlnbm1lbnQ/OiBYX0FMSUdOTUVOVF9UWVBFO1xuICAgICAgICAgICAgVGl0bGU/OiBzdHJpbmc7XG4gICAgICAgIH0gPSB7fVxuICAgICkge1xuICAgICAgICB0aGlzLkFwaU5hbWUgPSBvcHRpb25zLkFwaU5hbWU7XG4gICAgICAgIHRoaXMuRW5hYmxlZCA9ICEhb3B0aW9ucy5FbmFibGVkO1xuICAgICAgICB0aGlzLlZhbHVlID0gb3B0aW9ucy5WYWx1ZTtcbiAgICAgICAgdGhpcy5Gb3JtYXR0ZWRWYWx1ZSA9IG9wdGlvbnMuRm9ybWF0dGVkVmFsdWUgfHwgJyc7XG4gICAgICAgIHRoaXMuRmllbGRUeXBlID0gb3B0aW9ucy5GaWVsZFR5cGU7XG4gICAgICAgIHRoaXMuUmVhZE9ubHkgPSAhIW9wdGlvbnMuUmVhZE9ubHk7XG4gICAgICAgIHRoaXMuQ29sdW1uV2lkdGggPSBvcHRpb25zLkNvbHVtbldpZHRoO1xuICAgICAgICB0aGlzLkNvbHVtbldpZHRoVHlwZSA9IG9wdGlvbnMuQ29sdW1uV2lkdGhUeXBlO1xuICAgICAgICB0aGlzLlhBbGlnbm1lbnQgPSBvcHRpb25zLlhBbGlnbm1lbnQgfHwgWF9BTElHTk1FTlRfVFlQRS5MZWZ0O1xuICAgICAgICB0aGlzLlRpdGxlID0gb3B0aW9ucy5UaXRsZSB8fCAnJztcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgUGVwUm93RGF0YSB7XG4gICAgVVVJRD86IHN0cmluZztcbiAgICBGaWVsZHM6IFBlcEZpZWxkRGF0YVtdO1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3BsYXRmb3JtJyxcbn0pXG5leHBvcnQgY2xhc3MgUGVwRGF0YUNvbnZlcnRvclNlcnZpY2Uge1xuICAgIGdldFVpQ29udHJvbChmb3JtRGF0YTogUGVwUm93RGF0YSk6IFVJQ29udHJvbCB7XG4gICAgICAgIGNvbnN0IHVpQ29udHJvbCA9IG5ldyBVSUNvbnRyb2woKTtcblxuICAgICAgICBpZiAoZm9ybURhdGE/LkZpZWxkcz8ubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgY29uc3QgdWlSb3cgPSBmb3JtRGF0YS5GaWVsZHM7XG4gICAgICAgICAgICB1aUNvbnRyb2wuQ29udHJvbEZpZWxkcyA9IFtdO1xuICAgICAgICAgICAgdWlSb3cuZm9yRWFjaCgoZmllbGQpID0+XG4gICAgICAgICAgICAgICAgdWlDb250cm9sLkNvbnRyb2xGaWVsZHMucHVzaCh0aGlzLnNldFVJQ29udHJvbEZpZWxkKGZpZWxkKSlcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdWlDb250cm9sO1xuICAgIH1cblxuICAgIGNvbnZlcnRGb3JtRGF0YShmb3JtRGF0YTogUGVwUm93RGF0YSk6IE9iamVjdHNEYXRhUm93IHtcbiAgICAgICAgY29uc3Qgcm93RGF0YSA9IG5ldyBPYmplY3RzRGF0YVJvdygpO1xuICAgICAgICByb3dEYXRhLkZpZWxkcyA9IFtdO1xuICAgICAgICByb3dEYXRhLlR5cGUgPSAwO1xuICAgICAgICByb3dEYXRhLlVJRCA9IFBlcEd1aWQubmV3R3VpZCgpO1xuICAgICAgICBmb3JtRGF0YS5GaWVsZHMuZm9yRWFjaCgoZmllbGQpID0+XG4gICAgICAgICAgICByb3dEYXRhLkZpZWxkcy5wdXNoKHRoaXMuc2V0RGF0YUZpZWxkKGZpZWxkKSlcbiAgICAgICAgKTtcblxuICAgICAgICByZXR1cm4gcm93RGF0YTtcbiAgICB9XG5cbiAgICBjb252ZXJ0TGlzdERhdGEoXG4gICAgICAgIHRhYmxlRGF0YTogUGVwUm93RGF0YVtdLFxuICAgICAgICByb3dVVUlEID0gJydcbiAgICApOiBBcnJheTxPYmplY3RzRGF0YVJvdz4ge1xuICAgICAgICBjb25zdCByb3dzID0gbmV3IEFycmF5PE9iamVjdHNEYXRhUm93PigpO1xuXG4gICAgICAgIGlmICh0YWJsZURhdGEubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdGFibGVEYXRhLmZvckVhY2goKHJvdykgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJvd0RhdGEgPSBuZXcgT2JqZWN0c0RhdGFSb3coKTtcbiAgICAgICAgICAgICAgICByb3dEYXRhLkZpZWxkcyA9IFtdO1xuICAgICAgICAgICAgICAgIHJvd0RhdGEuVHlwZSA9IDA7XG4gICAgICAgICAgICAgICAgcm93RGF0YS5VSUQgPSByb3dVVUlEXG4gICAgICAgICAgICAgICAgICAgID8gcm93VVVJRFxuICAgICAgICAgICAgICAgICAgICA6IHJvdy5VVUlEXG4gICAgICAgICAgICAgICAgICAgICAgICA/IHJvdy5VVUlEXG4gICAgICAgICAgICAgICAgICAgICAgICA6IFBlcEd1aWQubmV3R3VpZCgpO1xuICAgICAgICAgICAgICAgIHJvdy5GaWVsZHMuZm9yRWFjaCgoZmllbGQpID0+XG4gICAgICAgICAgICAgICAgICAgIHJvd0RhdGEuRmllbGRzLnB1c2godGhpcy5zZXREYXRhRmllbGQoZmllbGQpKVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgcm93cy5wdXNoKHJvd0RhdGEpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcm93cztcbiAgICB9XG5cbiAgICBzZXRVSUNvbnRyb2xGaWVsZChmaWVsZDogUGVwRmllbGREYXRhKTogVUlDb250cm9sRmllbGQge1xuICAgICAgICBjb25zdCBjb250cm9sRmllbGQgPSBuZXcgVUlDb250cm9sRmllbGQoKTtcbiAgICAgICAgY29udHJvbEZpZWxkLkFwaU5hbWUgPSBmaWVsZC5BcGlOYW1lO1xuICAgICAgICBjb250cm9sRmllbGQuRmllbGRUeXBlID0gZmllbGQuRmllbGRUeXBlO1xuXG4gICAgICAgIGNvbnRyb2xGaWVsZC5MYXlvdXQgPSBuZXcgRmllbGRMYXlvdXQoe1xuICAgICAgICAgICAgWDogMSxcbiAgICAgICAgICAgIFdpZHRoOiAxLFxuICAgICAgICAgICAgWEFsaWdubWVudDogZmllbGQuWEFsaWdubWVudCxcbiAgICAgICAgICAgIFk6IDEsXG4gICAgICAgICAgICBIZWlnaHQ6IDEsXG4gICAgICAgICAgICBZQWxpZ25tZW50OiAxLFxuICAgICAgICB9KTtcblxuICAgICAgICBjb250cm9sRmllbGQuVGl0bGUgPSBmaWVsZC5UaXRsZTtcbiAgICAgICAgY29udHJvbEZpZWxkLlJlYWRPbmx5ID0gZmllbGQuUmVhZE9ubHkgPT09IHRydWUgPyB0cnVlIDogZmFsc2U7XG4gICAgICAgIGNvbnRyb2xGaWVsZC5Db2x1bW5XaWR0aCA9IGZpZWxkLkNvbHVtbldpZHRoO1xuICAgICAgICBjb250cm9sRmllbGQuQ29sdW1uV2lkdGhUeXBlID0gZmllbGQuQ29sdW1uV2lkdGhUeXBlIHx8IDE7XG4gICAgICAgIHJldHVybiBjb250cm9sRmllbGQ7XG4gICAgfVxuXG4gICAgc2V0RGF0YUZpZWxkKGZpZWxkOiBQZXBGaWVsZERhdGEpOiBPYmplY3RzRGF0YVJvd0NlbGwge1xuICAgICAgICBjb25zdCBkYXRhRmllbGQgPSBuZXcgT2JqZWN0c0RhdGFSb3dDZWxsKCk7XG4gICAgICAgIGRhdGFGaWVsZC5BZGRpdGlvbmFsVmFsdWUgPSBmaWVsZC5BZGRpdGlvbmFsVmFsdWU7XG4gICAgICAgIGRhdGFGaWVsZC5BcGlOYW1lID0gZmllbGQuQXBpTmFtZTtcbiAgICAgICAgZGF0YUZpZWxkLkVuYWJsZWQgPSBmaWVsZC5FbmFibGVkID09PSBmYWxzZSA/IGZhbHNlIDogdHJ1ZTtcbiAgICAgICAgZGF0YUZpZWxkLkZpZWxkVHlwZSA9IGZpZWxkLkZpZWxkVHlwZTtcbiAgICAgICAgZGF0YUZpZWxkLkZvcm1hdHRlZFZhbHVlID1cbiAgICAgICAgICAgIGZpZWxkLkZvcm1hdHRlZFZhbHVlIHx8IGZpZWxkLlZhbHVlLnRvU3RyaW5nKCk7XG4gICAgICAgIGRhdGFGaWVsZC5Hcm91cEZpZWxkcyA9IG51bGw7XG4gICAgICAgIGRhdGFGaWVsZC5Ob3RpZmljYXRpb25JbmZvID0gJyc7XG4gICAgICAgIGRhdGFGaWVsZC5PcHRpb25hbFZhbHVlcyA9IGZpZWxkLk9wdGlvbmFsVmFsdWVzO1xuICAgICAgICBkYXRhRmllbGQuUmVmZXJlbmNlT2JqZWN0U3ViVHlwZSA9ICcnO1xuICAgICAgICBkYXRhRmllbGQuVGV4dENvbG9yID0gJyc7XG4gICAgICAgIGRhdGFGaWVsZC5WYWx1ZSA9IGZpZWxkLlZhbHVlLnRvU3RyaW5nKCk7XG4gICAgICAgIGRhdGFGaWVsZC5WaXNpYmxlID0gdHJ1ZTtcbiAgICAgICAgcmV0dXJuIGRhdGFGaWVsZDtcbiAgICB9XG5cbiAgICBzZXRGaWVsZExheW91dChcbiAgICAgICAgeDogbnVtYmVyLFxuICAgICAgICB3aWR0aDogbnVtYmVyLFxuICAgICAgICB4QWxpZ25tZW50OiBudW1iZXIsXG4gICAgICAgIHk6IG51bWJlcixcbiAgICAgICAgaGVpZ2h0OiBudW1iZXIsXG4gICAgICAgIHlBbGlnbm1lbnQ6IG51bWJlcixcbiAgICAgICAgbGluZU51bWJlcjogbnVtYmVyXG4gICAgKTogRmllbGRMYXlvdXQge1xuICAgICAgICBjb25zdCBsYXlvdXQgPSBuZXcgRmllbGRMYXlvdXQoe1xuICAgICAgICAgICAgWDogeCxcbiAgICAgICAgICAgIFdpZHRoOiB3aWR0aCxcbiAgICAgICAgICAgIFhBbGlnbm1lbnQ6IHhBbGlnbm1lbnQsXG4gICAgICAgICAgICBZOiB5LFxuICAgICAgICAgICAgSGVpZ2h0OiBoZWlnaHQsXG4gICAgICAgICAgICBZQWxpZ25tZW50OiB5QWxpZ25tZW50LFxuICAgICAgICAgICAgTGluZU51bWJlcjogbGluZU51bWJlcixcbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIGxheW91dDtcbiAgICB9XG59XG4iXX0=
112
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb252ZXJ0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvc3JjL2NvcmUvY29tbW9uL3NlcnZpY2VzL2RhdGEtY29udmVydG9yLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQ0gsV0FBVyxFQUNYLGNBQWMsRUFDZCxTQUFTLEVBQ1QsY0FBYyxFQUNkLGtCQUFrQixFQUVsQixnQkFBZ0IsR0FDbkIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBRW5ELE1BQU0sT0FBTyxZQUFZO0lBY3JCLFlBQ0ksVUFXSSxFQUFFO1FBRU4sSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDO1FBQy9CLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7UUFDakMsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQzNCLElBQUksQ0FBQyxjQUFjLEdBQUcsT0FBTyxDQUFDLGNBQWMsSUFBSSxFQUFFLENBQUM7UUFDbkQsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDO1FBQ25DLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7UUFDbkMsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxlQUFlLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQztRQUMvQyxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksZ0JBQWdCLENBQUMsSUFBSSxDQUFDO1FBQzlELElBQUksQ0FBQyxLQUFLLEdB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R0FBRyxFQUFFLENBQUM7UUFDekIsU0FBUyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3pDLFNBQVMsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLE9BQU8sU0FBUyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxjQUFjLENBQ1YsQ0FBUyxFQUNULEtBQWEsRUFDYixVQUFrQixFQUNsQixDQUFTLEVBQ1QsTUFBYyxFQUNkLFVBQWtCLEVBQ2xCLFVBQWtCO1FBRWxCLE1BQU0sTUFBTSxHQUFHLElBQUksV0FBVyxDQUFDO1lBQzNCLENBQUMsRUFBRSxDQUFDO1lBQ0osS0FBSyxFQUFFLEtBQUs7WUFDWixVQUFVLEVBQUUsVUFBVTtZQUN0QixDQUFDLEVBQUUsQ0FBQztZQUNKLE1BQU0sRUFBRSxNQUFNO1lBQ2QsVUFBVSxFQUFFLFVBQVU7WUFDdEIsVUFBVSxFQUFFLFVBQVU7U0FDekIsQ0FBQyxDQUFDO1FBRUgsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQzs7OztZQW5ISixVQUFVLFNBQUM7Z0JBQ1IsVUFBVSxFQUFFLE1BQU07YUFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEZpZWxkTGF5b3V0LFxuICAgIE9iamVjdHNEYXRhUm93LFxuICAgIFVJQ29udHJvbCxcbiAgICBVSUNvbnRyb2xGaWVsZCxcbiAgICBPYmplY3RzRGF0YVJvd0NlbGwsXG4gICAgRklFTERfVFlQRSxcbiAgICBYX0FMSUdOTUVOVF9UWVBFLFxufSBmcm9tICcuLi9tb2RlbC93YXBpLm1vZGVsJztcbmltcG9ydCB7IFBlcEd1aWQgfSBmcm9tICcuLi9tb2RlbC91dGlsaXRpZXMubW9kZWwnO1xuXG5leHBvcnQgY2xhc3MgUGVwRmllbGREYXRhIHtcbiAgICBBcGlOYW1lOiBzdHJpbmc7XG4gICAgRW5hYmxlZD86IGJvb2xlYW47XG4gICAgVmFsdWU6IHN0cmluZztcbiAgICBGb3JtYXR0ZWRWYWx1ZT86IHN0cmluZztcbiAgICBGaWVsZFR5cGU6IEZJRUxEX1RZUEU7XG4gICAgUmVhZE9ubHk/OiBib29sZWFuO1xuICAgIENvbHVtbldpZHRoOiBudW1iZXI7XG4gICAgQ29sdW1uV2lkdGhUeXBlPzogbnVtYmVyO1xuICAgIFhBbGlnbm1lbnQ6IFhfQUxJR05NRU5UX1RZUEU7XG4gICAgVGl0bGU6IHN0cmluZztcbiAgICBBZGRpdGlvbmFsVmFsdWU/OiBzdHJpbmc7XG4gICAgT3B0aW9uYWxWYWx1ZXM/OiBhbnk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgQXBpTmFtZT86IHN0cmluZztcbiAgICAgICAgICAgIEVuYWJsZWQ/OiBib29sZWFuO1xuICAgICAgICAgICAgVmFsdWU/OiBzdHJpbmc7XG4gICAgICAgICAgICBGb3JtYXR0ZWRWYWx1ZT86IHN0cmluZztcbiAgICAgICAgICAgIEZpZWxkVHlwZT86IEZJRUxEX1RZUEU7XG4gICAgICAgICAgICBSZWFkT25seT86IGJvb2xlYW47XG4gICAgICAgICAgICBDb2x1bW5XaWR0aD86IG51bWJlcjtcbiAgICAgICAgICAgIENvbHVtbldpZHRoVHlwZT86IG51bWJlcjtcbiAgICAgICAgICAgIFhBbGlnbm1lbnQ/OiBYX0FMSUdOTUVOVF9UWVBFO1xuICAgICAgICAgICAgVGl0bGU/OiBzdHJpbmc7XG4gICAgICAgIH0gPSB7fVxuICAgICkge1xuICAgICAgICB0aGlzLkFwaU5hbWUgPSBvcHRpb25zLkFwaU5hbWU7XG4gICAgICAgIHRoaXMuRW5hYmxlZCA9ICEhb3B0aW9ucy5FbmFibGVkO1xuICAgICAgICB0aGlzLlZhbHVlID0gb3B0aW9ucy5WYWx1ZTtcbiAgICAgICAgdGhpcy5Gb3JtYXR0ZWRWYWx1ZSA9IG9wdGlvbnMuRm9ybWF0dGVkVmFsdWUgfHwgJyc7XG4gICAgICAgIHRoaXMuRmllbGRUeXBlID0gb3B0aW9ucy5GaWVsZFR5cGU7XG4gICAgICAgIHRoaXMuUmVhZE9ubHkgPSAhIW9wdGlvbnMuUmVhZE9ubHk7XG4gICAgICAgIHRoaXMuQ29sdW1uV2lkdGggPSBvcHRpb25zLkNvbHVtbldpZHRoO1xuICAgICAgICB0aGlzLkNvbHVtbldpZHRoVHlwZSA9IG9wdGlvbnMuQ29sdW1uV2lkdGhUeXBlO1xuICAgICAgICB0aGlzLlhBbGlnbm1lbnQgPSBvcHRpb25zLlhBbGlnbm1lbnQgfHwgWF9BTElHTk1FTlRfVFlQRS5MZWZ0O1xuICAgICAgICB0aGlzLlRpdGxlID0gb3B0aW9ucy5UaXRsZSB8fCAnJztcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgUGVwUm93RGF0YSB7XG4gICAgVVVJRD86IHN0cmluZztcbiAgICBGaWVsZHM6IFBlcEZpZWxkRGF0YVtdO1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBQZXBEYXRhQ29udmVydG9yU2VydmljZSB7XG4gICAgZ2V0VWlDb250cm9sKGZvcm1EYXRhOiBQZXBSb3dEYXRhKTogVUlDb250cm9sIHtcbiAgICAgICAgY29uc3QgdWlDb250cm9sID0gbmV3IFVJQ29udHJvbCgpO1xuXG4gICAgICAgIGlmIChmb3JtRGF0YT8uRmllbGRzPy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBjb25zdCB1aVJvdyA9IGZvcm1EYXRhLkZpZWxkcztcbiAgICAgICAgICAgIHVpQ29udHJvbC5Db250cm9sRmllbGRzID0gW107XG4gICAgICAgICAgICB1aVJvdy5mb3JFYWNoKChmaWVsZCkgPT5cbiAgICAgICAgICAgICAgICB1aUNvbnRyb2wuQ29udHJvbEZpZWxkcy5wdXNoKHRoaXMuc2V0VUlDb250cm9sRmllbGQoZmllbGQpKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB1aUNvbnRyb2w7XG4gICAgfVxuXG4gICAgY29udmVydEZvcm1EYXRhKGZvcm1EYXRhOiBQZXBSb3dEYXRhKTogT2JqZWN0c0RhdGFSb3cge1xuICAgICAgICBjb25zdCByb3dEYXRhID0gbmV3IE9iamVjdHNEYXRhUm93KCk7XG4gICAgICAgIHJvd0RhdGEuRmllbGRzID0gW107XG4gICAgICAgIHJvd0RhdGEuVHlwZSA9IDA7XG4gICAgICAgIHJvd0RhdGEuVUlEID0gUGVwR3VpZC5uZXdHdWlkKCk7XG4gICAgICAgIGZvcm1EYXRhLkZpZWxkcy5mb3JFYWNoKChmaWVsZCkgPT5cbiAgICAgICAgICAgIHJvd0RhdGEuRmllbGRzLnB1c2godGhpcy5zZXREYXRhRmllbGQoZmllbGQpKVxuICAgICAgICApO1xuXG4gICAgICAgIHJldHVybiByb3dEYXRhO1xuICAgIH1cblxuICAgIGNvbnZlcnRMaXN0RGF0YShcbiAgICAgICAgdGFibGVEYXRhOiBQZXBSb3dEYXRhW10sXG4gICAgICAgIHJvd1VVSUQgPSAnJ1xuICAgICk6IEFycmF5PE9iamVjdHNEYXRhUm93PiB7XG4gICAgICAgIGNvbnN0IHJvd3MgPSBuZXcgQXJyYXk8T2JqZWN0c0RhdGFSb3c+KCk7XG5cbiAgICAgICAgaWYgKHRhYmxlRGF0YS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICB0YWJsZURhdGEuZm9yRWFjaCgocm93KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qgcm93RGF0YSA9IG5ldyBPYmplY3RzRGF0YVJvdygpO1xuICAgICAgICAgICAgICAgIHJvd0RhdGEuRmllbGRzID0gW107XG4gICAgICAgICAgICAgICAgcm93RGF0YS5UeXBlID0gMDtcbiAgICAgICAgICAgICAgICByb3dEYXRhLlVJRCA9IHJvd1VVSURcbiAgICAgICAgICAgICAgICAgICAgPyByb3dVVUlEXG4gICAgICAgICAgICAgICAgICAgIDogcm93LlVVSURcbiAgICAgICAgICAgICAgICAgICAgPyByb3cuVVVJRFxuICAgICAgICAgICAgICAgICAgICA6IFBlcEd1aWQubmV3R3VpZCgpO1xuICAgICAgICAgICAgICAgIHJvdy5GaWVsZHMuZm9yRWFjaCgoZmllbGQpID0+XG4gICAgICAgICAgICAgICAgICAgIHJvd0RhdGEuRmllbGRzLnB1c2godGhpcy5zZXREYXRhRmllbGQoZmllbGQpKVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgcm93cy5wdXNoKHJvd0RhdGEpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcm93cztcbiAgICB9XG5cbiAgICBzZXRVSUNvbnRyb2xGaWVsZChmaWVsZDogUGVwRmllbGREYXRhKTogVUlDb250cm9sRmllbGQge1xuICAgICAgICBjb25zdCBjb250cm9sRmllbGQgPSBuZXcgVUlDb250cm9sRmllbGQoKTtcbiAgICAgICAgY29udHJvbEZpZWxkLkFwaU5hbWUgPSBmaWVsZC5BcGlOYW1lO1xuICAgICAgICBjb250cm9sRmllbGQuRmllbGRUeXBlID0gZmllbGQuRmllbGRUeXBlO1xuXG4gICAgICAgIGNvbnRyb2xGaWVsZC5MYXlvdXQgPSBuZXcgRmllbGRMYXlvdXQoe1xuICAgICAgICAgICAgWDogMSxcbiAgICAgICAgICAgIFdpZHRoOiAxLFxuICAgICAgICAgICAgWEFsaWdubWVudDogZmllbGQuWEFsaWdubWVudCxcbiAgICAgICAgICAgIFk6IDEsXG4gICAgICAgICAgICBIZWlnaHQ6IDEsXG4gICAgICAgICAgICBZQWxpZ25tZW50OiAxLFxuICAgICAgICB9KTtcblxuICAgICAgICBjb250cm9sRmllbGQuVGl0bGUgPSBmaWVsZC5UaXRsZTtcbiAgICAgICAgY29udHJvbEZpZWxkLlJlYWRPbmx5ID0gZmllbGQuUmVhZE9ubHkgPT09IHRydWUgPyB0cnVlIDogZmFsc2U7XG4gICAgICAgIGNvbnRyb2xGaWVsZC5Db2x1bW5XaWR0aCA9IGZpZWxkLkNvbHVtbldpZHRoO1xuICAgICAgICBjb250cm9sRmllbGQuQ29sdW1uV2lkdGhUeXBlID0gZmllbGQuQ29sdW1uV2lkdGhUeXBlIHx8IDE7XG4gICAgICAgIHJldHVybiBjb250cm9sRmllbGQ7XG4gICAgfVxuXG4gICAgc2V0RGF0YUZpZWxkKGZpZWxkOiBQZXBGaWVsZERhdGEpOiBPYmplY3RzRGF0YVJvd0NlbGwge1xuICAgICAgICBjb25zdCBkYXRhRmllbGQgPSBuZXcgT2JqZWN0c0RhdGFSb3dDZWxsKCk7XG4gICAgICAgIGRhdGFGaWVsZC5BZGRpdGlvbmFsVmFsdWUgPSBmaWVsZC5BZGRpdGlvbmFsVmFsdWU7XG4gICAgICAgIGRhdGFGaWVsZC5BcGlOYW1lID0gZmllbGQuQXBpTmFtZTtcbiAgICAgICAgZGF0YUZpZWxkLkVuYWJsZWQgPSBmaWVsZC5FbmFibGVkID09PSBmYWxzZSA/IGZhbHNlIDogdHJ1ZTtcbiAgICAgICAgZGF0YUZpZWxkLkZpZWxkVHlwZSA9IGZpZWxkLkZpZWxkVHlwZTtcbiAgICAgICAgZGF0YUZpZWxkLkZvcm1hdHRlZFZhbHVlID1cbiAgICAgICAgICAgIGZpZWxkLkZvcm1hdHRlZFZhbHVlIHx8IGZpZWxkLlZhbHVlLnRvU3RyaW5nKCk7XG4gICAgICAgIGRhdGFGaWVsZC5Hcm91cEZpZWxkcyA9IG51bGw7XG4gICAgICAgIGRhdGFGaWVsZC5Ob3RpZmljYXRpb25JbmZvID0gJyc7XG4gICAgICAgIGRhdGFGaWVsZC5PcHRpb25hbFZhbHVlcyA9IGZpZWxkLk9wdGlvbmFsVmFsdWVzO1xuICAgICAgICBkYXRhRmllbGQuUmVmZXJlbmNlT2JqZWN0U3ViVHlwZSA9ICcnO1xuICAgICAgICBkYXRhRmllbGQuVGV4dENvbG9yID0gJyc7XG4gICAgICAgIGRhdGFGaWVsZC5WYWx1ZSA9IGZpZWxkLlZhbHVlLnRvU3RyaW5nKCk7XG4gICAgICAgIGRhdGFGaWVsZC5WaXNpYmxlID0gdHJ1ZTtcbiAgICAgICAgcmV0dXJuIGRhdGFGaWVsZDtcbiAgICB9XG5cbiAgICBzZXRGaWVsZExheW91dChcbiAgICAgICAgeDogbnVtYmVyLFxuICAgICAgICB3aWR0aDogbnVtYmVyLFxuICAgICAgICB4QWxpZ25tZW50OiBudW1iZXIsXG4gICAgICAgIHk6IG51bWJlcixcbiAgICAgICAgaGVpZ2h0OiBudW1iZXIsXG4gICAgICAgIHlBbGlnbm1lbnQ6IG51bWJlcixcbiAgICAgICAgbGluZU51bWJlcjogbnVtYmVyXG4gICAgKTogRmllbGRMYXlvdXQge1xuICAgICAgICBjb25zdCBsYXlvdXQgPSBuZXcgRmllbGRMYXlvdXQoe1xuICAgICAgICAgICAgWDogeCxcbiAgICAgICAgICAgIFdpZHRoOiB3aWR0aCxcbiAgICAgICAgICAgIFhBbGlnbm1lbnQ6IHhBbGlnbm1lbnQsXG4gICAgICAgICAgICBZOiB5LFxuICAgICAgICAgICAgSGVpZ2h0OiBoZWlnaHQsXG4gICAgICAgICAgICBZQWxpZ25tZW50OiB5QWxpZ25tZW50LFxuICAgICAgICAgICAgTGluZU51bWJlcjogbGluZU51bWJlcixcbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIGxheW91dDtcbiAgICB9XG59XG4iXX0=