@esfaenza/es-charts 15.2.3 → 15.2.5

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.
@@ -10,6 +10,8 @@ import { EsVerticalChartComponent } from "./components/specializations/es-vertic
10
10
  import { EsVerticalStackedChartComponent } from "./components/specializations/es-vertical-stacked-chart.component";
11
11
  import { PageChartSelector } from "./components/chart-pager/chart-pager.component";
12
12
  import { EsChartComponent } from "./components/specializations/es-chart.component";
13
+ import { ChartLoader } from './models/core/ChartLoader';
14
+ import { ChartDispatcher } from './models/core/ChartDispatcher';
13
15
  import * as i0 from "@angular/core";
14
16
  /** Componenti esportati dal modulo */
15
17
  const COMPONENTS = [
@@ -27,6 +29,8 @@ export class EsChartsModule {
27
29
  return {
28
30
  ngModule: EsChartsModule,
29
31
  providers: [
32
+ ChartLoader,
33
+ ChartDispatcher,
30
34
  { provide: ESC_ANIMATIONS, useValue: config?.animations == null || config?.animations == undefined ? true : config?.animations },
31
35
  { provide: ESC_THEME, useValue: config?.theme || 'spiritedaway' },
32
36
  { provide: ESC_LOGS, useValue: config?.debugMode || false },
@@ -60,4 +64,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
60
64
  exports: [...COMPONENTS]
61
65
  }]
62
66
  }] });
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtY2hhcnRzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2VzLWNoYXJ0cy9zcmMvbGliL2VzLWNoYXJ0cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBdUIsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFL0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDNUYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDNUYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDMUYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDekcsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sMERBQTBELENBQUM7QUFDcEcsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sa0VBQWtFLENBQUM7QUFDbkgsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDbkYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saURBQWlELENBQUM7O0FBR25GLHNDQUFzQztBQUN0QyxNQUFNLFVBQVUsR0FBRztJQUNqQixnQkFBZ0I7SUFDaEIsb0JBQW9CO0lBQ3BCLG1CQUFtQjtJQUNuQiwwQkFBMEI7SUFDMUIsd0JBQXdCO0lBQ3hCLCtCQUErQjtJQUMvQixpQkFBaUI7SUFDakIsb0JBQW9CO0NBQ3JCLENBQUE7QUFPRCxNQUFNLE9BQU8sY0FBYztJQUV6QixNQUFNLENBQUMsT0FBTyxDQUFDLE1BQTZCO1FBQzFDLE9BQU87WUFDTCxRQUFRLEVBQUUsY0FBYztZQUN4QixTQUFTLEVBQUU7Z0JBQ1QsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsVUFBVSxJQUFJLElBQUksSUFBSSxNQUFNLEVBQUUsVUFBVSxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsVUFBVSxFQUFFO2dCQUNoSSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxLQUFLLElBQUksY0FBYyxFQUFFO2dCQUNqRSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxTQUFTLElBQUksS0FBSyxFQUFFO2dCQUMzRCxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxPQUFPLElBQUksV0FBVyxFQUFFO2FBQ25FO1NBQ0YsQ0FBQztJQUNKLENBQUM7OzJHQVpVLGNBQWM7NEdBQWQsY0FBYyxpQkFmekIsZ0JBQWdCO1FBQ2hCLG9CQUFvQjtRQUNwQixtQkFBbUI7UUFDbkIsMEJBQTBCO1FBQzFCLHdCQUF3QjtRQUN4QiwrQkFBK0I7UUFDL0IsaUJBQWlCO1FBQ2pCLG9CQUFvQixhQUlWLFlBQVksYUFYdEIsZ0JBQWdCO1FBQ2hCLG9CQUFvQjtRQUNwQixtQkFBbUI7UUFDbkIsMEJBQTBCO1FBQzFCLHdCQUF3QjtRQUN4QiwrQkFBK0I7UUFDL0IsaUJBQWlCO1FBQ2pCLG9CQUFvQjs0R0FRVCxjQUFjLFlBSmYsWUFBWTsyRkFJWCxjQUFjO2tCQUwxQixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsWUFBWSxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUM7b0JBQzdCLE9BQU8sRUFBRSxDQUFDLEdBQUcsVUFBVSxDQUFDO2lCQUN6QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5pbXBvcnQgeyBFc0NoYXJ0c01vZHVsZUNvbmZpZyB9IGZyb20gJy4vbW9kZWxzL0VzQ2hhYXJ0c01vZHVsZUNvbmZpZyc7XHJcbmltcG9ydCB7IEJhc2VBZGFwdGVyIH0gZnJvbSAnLi9hZGFwdGVycy9CYXNlQWRhcHRlcic7XHJcblxyXG5pbXBvcnQgeyBFU0NfQU5JTUFUSU9OUywgRVNDX1RIRU1FLCBFU0NfTE9HUyB9IGZyb20gJy4vdG9rZW5zJztcclxuXHJcbmltcG9ydCB7IEVzTGluZUNoYXJ0Q29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9zcGVjaWFsaXphdGlvbnMvZXMtbGluZS1jaGFydC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRXNBcmVhQ2hhcnRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL3NwZWNpYWxpemF0aW9ucy9lcy1hcmVhLWNoYXJ0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBFc1BpZUNoYXJ0Q29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9zcGVjaWFsaXphdGlvbnMvZXMtcGllLWNoYXJ0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBFc1ZlcnRpY2FsMkRDaGFydENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvc3BlY2lhbGl6YXRpb25zL2VzLXZlcnRpY2FsLTJkLWNoYXJ0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBFc1ZlcnRpY2FsQ2hhcnRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL3NwZWNpYWxpemF0aW9ucy9lcy12ZXJ0aWNhbC1jaGFydC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRXNWZXJ0aWNhbFN0YWNrZWRDaGFydENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvc3BlY2lhbGl6YXRpb25zL2VzLXZlcnRpY2FsLXN0YWNrZWQtY2hhcnQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFBhZ2VDaGFydFNlbGVjdG9yIH0gZnJvbSBcIi4vY29tcG9uZW50cy9jaGFydC1wYWdlci9jaGFydC1wYWdlci5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRXNDaGFydENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvc3BlY2lhbGl6YXRpb25zL2VzLWNoYXJ0LmNvbXBvbmVudFwiO1xyXG5cclxuXHJcbi8qKiBDb21wb25lbnRpIGVzcG9ydGF0aSBkYWwgbW9kdWxvICovXHJcbmNvbnN0IENPTVBPTkVOVFMgPSBbXHJcbiAgRXNDaGFydENvbXBvbmVudCxcclxuICBFc0xpbmVDaGFydENvbXBvbmVudCxcclxuICBFc1BpZUNoYXJ0Q29tcG9uZW50LFxyXG4gIEVzVmVydGljYWwyRENoYXJ0Q29tcG9uZW50LFxyXG4gIEVzVmVydGljYWxDaGFydENvbXBvbmVudCxcclxuICBFc1ZlcnRpY2FsU3RhY2tlZENoYXJ0Q29tcG9uZW50LFxyXG4gIFBhZ2VDaGFydFNlbGVjdG9yLFxyXG4gIEVzQXJlYUNoYXJ0Q29tcG9uZW50XHJcbl1cclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXHJcbiAgZGVjbGFyYXRpb25zOiBbLi4uQ09NUE9ORU5UU10sXHJcbiAgZXhwb3J0czogWy4uLkNPTVBPTkVOVFNdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFc0NoYXJ0c01vZHVsZSB7XHJcblxyXG4gIHN0YXRpYyBmb3JSb290KGNvbmZpZz86IEVzQ2hhcnRzTW9kdWxlQ29uZmlnKTogTW9kdWxlV2l0aFByb3ZpZGVyczxFc0NoYXJ0c01vZHVsZT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgbmdNb2R1bGU6IEVzQ2hhcnRzTW9kdWxlLFxyXG4gICAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICB7IHByb3ZpZGU6IEVTQ19BTklNQVRJT05TLCB1c2VWYWx1ZTogY29uZmlnPy5hbmltYXRpb25zID09IG51bGwgfHwgY29uZmlnPy5hbmltYXRpb25zID09IHVuZGVmaW5lZCA/IHRydWUgOiBjb25maWc/LmFuaW1hdGlvbnMgfSxcclxuICAgICAgICB7IHByb3ZpZGU6IEVTQ19USEVNRSwgdXNlVmFsdWU6IGNvbmZpZz8udGhlbWUgfHwgJ3NwaXJpdGVkYXdheScgfSxcclxuICAgICAgICB7IHByb3ZpZGU6IEVTQ19MT0dTLCB1c2VWYWx1ZTogY29uZmlnPy5kZWJ1Z01vZGUgfHwgZmFsc2UgfSxcclxuICAgICAgICB7IHByb3ZpZGU6IEJhc2VBZGFwdGVyLCB1c2VDbGFzczogY29uZmlnPy5hZGFwdGVyIHx8IEJhc2VBZGFwdGVyIH1cclxuICAgICAgXVxyXG4gICAgfTtcclxuICB9XHJcbn0iXX0=
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtY2hhcnRzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2VzLWNoYXJ0cy9zcmMvbGliL2VzLWNoYXJ0cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBdUIsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFL0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDNUYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDNUYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDMUYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDekcsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sMERBQTBELENBQUM7QUFDcEcsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sa0VBQWtFLENBQUM7QUFDbkgsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDbkYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFFbkYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7QUFFaEUsc0NBQXNDO0FBQ3RDLE1BQU0sVUFBVSxHQUFHO0lBQ2pCLGdCQUFnQjtJQUNoQixvQkFBb0I7SUFDcEIsbUJBQW1CO0lBQ25CLDBCQUEwQjtJQUMxQix3QkFBd0I7SUFDeEIsK0JBQStCO0lBQy9CLGlCQUFpQjtJQUNqQixvQkFBb0I7Q0FDckIsQ0FBQTtBQU9ELE1BQU0sT0FBTyxjQUFjO0lBRXpCLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBNkI7UUFDMUMsT0FBTztZQUNMLFFBQVEsRUFBRSxjQUFjO1lBQ3hCLFNBQVMsRUFBRTtnQkFDVCxXQUFXO2dCQUNYLGVBQWU7Z0JBQ2YsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsVUFBVSxJQUFJLElBQUksSUFBSSxNQUFNLEVBQUUsVUFBVSxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsVUFBVSxFQUFFO2dCQUNoSSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxLQUFLLElBQUksY0FBYyxFQUFFO2dCQUNqRSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxTQUFTLElBQUksS0FBSyxFQUFFO2dCQUMzRCxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxPQUFPLElBQUksV0FBVyxFQUFFO2FBQ25FO1NBQ0YsQ0FBQztJQUNKLENBQUM7OzJHQWRVLGNBQWM7NEdBQWQsY0FBYyxpQkFmekIsZ0JBQWdCO1FBQ2hCLG9CQUFvQjtRQUNwQixtQkFBbUI7UUFDbkIsMEJBQTBCO1FBQzFCLHdCQUF3QjtRQUN4QiwrQkFBK0I7UUFDL0IsaUJBQWlCO1FBQ2pCLG9CQUFvQixhQUlWLFlBQVksYUFYdEIsZ0JBQWdCO1FBQ2hCLG9CQUFvQjtRQUNwQixtQkFBbUI7UUFDbkIsMEJBQTBCO1FBQzFCLHdCQUF3QjtRQUN4QiwrQkFBK0I7UUFDL0IsaUJBQWlCO1FBQ2pCLG9CQUFvQjs0R0FRVCxjQUFjLFlBSmYsWUFBWTsyRkFJWCxjQUFjO2tCQUwxQixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsWUFBWSxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUM7b0JBQzdCLE9BQU8sRUFBRSxDQUFDLEdBQUcsVUFBVSxDQUFDO2lCQUN6QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5pbXBvcnQgeyBFc0NoYXJ0c01vZHVsZUNvbmZpZyB9IGZyb20gJy4vbW9kZWxzL0VzQ2hhYXJ0c01vZHVsZUNvbmZpZyc7XHJcbmltcG9ydCB7IEJhc2VBZGFwdGVyIH0gZnJvbSAnLi9hZGFwdGVycy9CYXNlQWRhcHRlcic7XHJcblxyXG5pbXBvcnQgeyBFU0NfQU5JTUFUSU9OUywgRVNDX1RIRU1FLCBFU0NfTE9HUyB9IGZyb20gJy4vdG9rZW5zJztcclxuXHJcbmltcG9ydCB7IEVzTGluZUNoYXJ0Q29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9zcGVjaWFsaXphdGlvbnMvZXMtbGluZS1jaGFydC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRXNBcmVhQ2hhcnRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL3NwZWNpYWxpemF0aW9ucy9lcy1hcmVhLWNoYXJ0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBFc1BpZUNoYXJ0Q29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9uZW50cy9zcGVjaWFsaXphdGlvbnMvZXMtcGllLWNoYXJ0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBFc1ZlcnRpY2FsMkRDaGFydENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvc3BlY2lhbGl6YXRpb25zL2VzLXZlcnRpY2FsLTJkLWNoYXJ0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBFc1ZlcnRpY2FsQ2hhcnRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL3NwZWNpYWxpemF0aW9ucy9lcy12ZXJ0aWNhbC1jaGFydC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRXNWZXJ0aWNhbFN0YWNrZWRDaGFydENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvc3BlY2lhbGl6YXRpb25zL2VzLXZlcnRpY2FsLXN0YWNrZWQtY2hhcnQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFBhZ2VDaGFydFNlbGVjdG9yIH0gZnJvbSBcIi4vY29tcG9uZW50cy9jaGFydC1wYWdlci9jaGFydC1wYWdlci5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRXNDaGFydENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvc3BlY2lhbGl6YXRpb25zL2VzLWNoYXJ0LmNvbXBvbmVudFwiO1xyXG5cclxuaW1wb3J0IHsgQ2hhcnRMb2FkZXIgfSBmcm9tICcuL21vZGVscy9jb3JlL0NoYXJ0TG9hZGVyJztcclxuaW1wb3J0IHsgQ2hhcnREaXNwYXRjaGVyIH0gZnJvbSAnLi9tb2RlbHMvY29yZS9DaGFydERpc3BhdGNoZXInO1xyXG5cclxuLyoqIENvbXBvbmVudGkgZXNwb3J0YXRpIGRhbCBtb2R1bG8gKi9cclxuY29uc3QgQ09NUE9ORU5UUyA9IFtcclxuICBFc0NoYXJ0Q29tcG9uZW50LFxyXG4gIEVzTGluZUNoYXJ0Q29tcG9uZW50LFxyXG4gIEVzUGllQ2hhcnRDb21wb25lbnQsXHJcbiAgRXNWZXJ0aWNhbDJEQ2hhcnRDb21wb25lbnQsXHJcbiAgRXNWZXJ0aWNhbENoYXJ0Q29tcG9uZW50LFxyXG4gIEVzVmVydGljYWxTdGFja2VkQ2hhcnRDb21wb25lbnQsXHJcbiAgUGFnZUNoYXJ0U2VsZWN0b3IsXHJcbiAgRXNBcmVhQ2hhcnRDb21wb25lbnRcclxuXVxyXG5cclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcclxuICBkZWNsYXJhdGlvbnM6IFsuLi5DT01QT05FTlRTXSxcclxuICBleHBvcnRzOiBbLi4uQ09NUE9ORU5UU11cclxufSlcclxuZXhwb3J0IGNsYXNzIEVzQ2hhcnRzTW9kdWxlIHtcclxuXHJcbiAgc3RhdGljIGZvclJvb3QoY29uZmlnPzogRXNDaGFydHNNb2R1bGVDb25maWcpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEVzQ2hhcnRzTW9kdWxlPiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZ01vZHVsZTogRXNDaGFydHNNb2R1bGUsXHJcbiAgICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIENoYXJ0TG9hZGVyLFxyXG4gICAgICAgIENoYXJ0RGlzcGF0Y2hlcixcclxuICAgICAgICB7IHByb3ZpZGU6IEVTQ19BTklNQVRJT05TLCB1c2VWYWx1ZTogY29uZmlnPy5hbmltYXRpb25zID09IG51bGwgfHwgY29uZmlnPy5hbmltYXRpb25zID09IHVuZGVmaW5lZCA/IHRydWUgOiBjb25maWc/LmFuaW1hdGlvbnMgfSxcclxuICAgICAgICB7IHByb3ZpZGU6IEVTQ19USEVNRSwgdXNlVmFsdWU6IGNvbmZpZz8udGhlbWUgfHwgJ3NwaXJpdGVkYXdheScgfSxcclxuICAgICAgICB7IHByb3ZpZGU6IEVTQ19MT0dTLCB1c2VWYWx1ZTogY29uZmlnPy5kZWJ1Z01vZGUgfHwgZmFsc2UgfSxcclxuICAgICAgICB7IHByb3ZpZGU6IEJhc2VBZGFwdGVyLCB1c2VDbGFzczogY29uZmlnPy5hZGFwdGVyIHx8IEJhc2VBZGFwdGVyIH1cclxuICAgICAgXVxyXG4gICAgfTtcclxuICB9XHJcbn0iXX0=
@@ -81,12 +81,11 @@ export class ChartDispatcher {
81
81
  }
82
82
  }
83
83
  ChartDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartDispatcher, deps: [{ token: ESC_LOGS }], target: i0.ɵɵFactoryTarget.Injectable });
84
- ChartDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartDispatcher, providedIn: 'root' });
84
+ ChartDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartDispatcher });
85
85
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartDispatcher, decorators: [{
86
- type: Injectable,
87
- args: [{ providedIn: 'root' }]
86
+ type: Injectable
88
87
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
89
88
  type: Inject,
90
89
  args: [ESC_LOGS]
91
90
  }] }]; } });
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2hhcnREaXNwYXRjaGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXMtY2hhcnRzL3NyYy9saWIvbW9kZWxzL2NvcmUvQ2hhcnREaXNwYXRjaGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxjQUFjLENBQUM7O0FBRXhDOztHQUVHO0FBRUgsTUFBTSxPQUFPLGVBQWU7SUFZeEI7O09BRUc7SUFDSCxZQUFzQyxJQUFhO1FBQWIsU0FBSSxHQUFKLElBQUksQ0FBUztRQWJuRDs7V0FFRztRQUNLLG9CQUFlLEdBQXNDLEVBQUUsQ0FBQztRQUVoRTs7V0FFRztRQUNLLHNCQUFpQixHQUFhLEVBQUUsQ0FBQztJQUtjLENBQUM7SUFFeEQ7Ozs7OztPQU1HO0lBQ0ksUUFBUSxDQUFDLElBQVksRUFBRSxxQkFBK0I7UUFDekQsSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUMxQyxNQUFNLDRDQUE0QyxHQUFHLElBQUksR0FBRyxnRUFBZ0UsQ0FBQztRQUVqSSxJQUFJLENBQUMsR0FBRyxDQUFDLGdFQUFnRSxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQ2xGLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUscUJBQXFCLEVBQUUsQ0FBQyxDQUFDO1FBQzNFLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFO1lBQ2xDLElBQUksQ0FBQyxHQUFHLENBQUMsbUNBQW1DLENBQUMsQ0FBQztZQUM5QyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7U0FDMUI7SUFDTCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLGVBQWUsQ0FBQyxJQUFZO1FBQy9CLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakQsSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDLEVBQ2Y7WUFDSSx1RkFBdUY7WUFDdkYsSUFBSSxDQUFDLEdBQUcsQ0FBQyw2Q0FBNkMsR0FBRyxJQUFJLEdBQUcsd0NBQXdDLENBQUMsQ0FBQztZQUMxRyxPQUFPO1NBQ1Y7UUFFRCxJQUFJLENBQUMsR0FBRyxDQUFDLGlDQUFpQyxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQ25ELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQzNDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNLLGVBQWU7UUFDbkIsSUFBSSxTQUFTLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN4QyxJQUFJLENBQUMsR0FBRyxDQUFDLDBEQUEwRCxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV0RixTQUFTLENBQUMsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUMzQixJQUFJLENBQUMsR0FBRyxDQUFDLHVDQUF1QyxHQUFHLFNBQVMsQ0FBQyxJQUFJLEdBQUcsVUFBVSxDQUFDLENBQUM7WUFDaEYsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ2xDLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFO2dCQUNsQyxJQUFJLENBQUMsR0FBRyxDQUFDLHNEQUFzRCxDQUFDLENBQUM7Z0JBQ2pFLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQzthQUMxQjs7Z0JBRUcsSUFBSSxDQUFDLEdBQUcsQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO1FBQ2xFLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVEOztPQUVHO0lBQ0ssR0FBRyxDQUFDLElBQVk7UUFDcEIsSUFBSSxJQUFJLENBQUMsSUFBSTtZQUNULE9BQU8sQ0FBQyxHQUFHLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDcEQsQ0FBQzs7NEdBbkZRLGVBQWUsa0JBZUosUUFBUTtnSEFmbkIsZUFBZSxjQURILE1BQU07MkZBQ2xCLGVBQWU7a0JBRDNCLFVBQVU7bUJBQUMsRUFBQyxVQUFVLEVBQUUsTUFBTSxFQUFDOzswQkFnQmYsTUFBTTsyQkFBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBFU0NfTE9HUyB9IGZyb20gJy4uLy4uL3Rva2Vucyc7XHJcblxyXG4vKipcclxuICogQ2xhc3NlIGNoZSBzaSBvY2N1cGEgZGVsIGRpc3BhdGNoIGRlbGxlIG9wZXJhemlvbmkgZGkgcmVuZGVyaW5nIGRlaSBncmFmaWNpIHV0aWxpenphbmRvIHVuYSBjb2RhIHBlciBwZXJtZXR0ZXJlIGFkIG9nbmkgZ3JhZmljbyBkaSBhdmVyZSB0ZW1pIGUgbG9jYWxpenphemlvbmUgY3VzdG9tXHJcbiAqL1xyXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcclxuZXhwb3J0IGNsYXNzIENoYXJ0RGlzcGF0Y2hlciB7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDb2RhIGRpIGluaXppYWxpenphemlvbmkgYW5jb3JhIGRhIGVzZWd1aXJlLiBRdWFuZG8gcXVlc3RhIMOoIHZ1b3RhIHNpZ25pZmljYSBjaGUgbmVzc3VubyBzdGEgY3JlYW5kbyBncmFmaWNpXHJcbiAgICAgKi9cclxuICAgIHByaXZhdGUgSW5pdGlhbGl6YXRpb25zOiB7IG5hbWU6IHN0cmluZywgZnVuY3Rpb246IGFueSB9W10gPSBbXTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIExpc3RhIGRlaSBncmFmaWNpIGluaXppYWxpenphdGkgZSBhdHRpdmkgaW4gdW4gZGF0byBtb21lbnRvICh2aWVuZSByZWdpc3RyYXRhIGxhIHByb3ByaWV0w6AgKipuYW1lKiopLiBOb24gw6ggcG9zc2liaWxlIHJlZ2lzdHJhcmUgZHVlIGdyYWZpY2kgY29uIGxvIHN0ZXNzbyBpZGVudGlmaWNhdGl2b1xyXG4gICAgICovXHJcbiAgICBwcml2YXRlIEluaXRpYWxpemVkR3JhcGhzOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQGlnbm9yZVxyXG4gICAgICovXHJcbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KEVTQ19MT0dTKSBwcml2YXRlIGxvZ3M6IGJvb2xlYW4pIHsgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmVnaXN0cmEgdW4gZ3JhZmljbyBkYSB2aXN1YWxpenphcmUgaW5zaWVtZSBhbGxhIHByb3ByaWEgZnVuemlvbmUgZGkgY3JlYXppb25lLiBRdWVzdCd1bHRpbWEgc2Fyw6AgZGlmZmVyaXRhIGZpbm8gYSBjaGUgdHV0dGkgaSBncmFmaWNpXHJcbiAgICAgKiBwcmVjZWRlbnRlbWVudGUgcmVnaXN0YXRpIG5vbiBoYW5ubyBmaW5pdG8gbGEgZmFzZSBkaSBpbml6aWFsaXp6YXppb25lXHJcbiAgICAgKiBcclxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lIElkZW50aWZpY2F0aXZvIGRlbCBncmFmaWNvIGRhIHJlZ2lzdHJhcmVcclxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IGNoYXJ0Q3JlYXRpb25GdW5jdGlvbiBGdW56aW9uZSBjaGUgZmlzaWNhbWVudGUgZG92csOgIG9jY3VwYXJzaSBkZWxsYSBjcmVhemlvbmUgZGVsIGdyYWZpY29cclxuICAgICAqL1xyXG4gICAgcHVibGljIHJlZ2lzdGVyKG5hbWU6IHN0cmluZywgY2hhcnRDcmVhdGlvbkZ1bmN0aW9uOiBGdW5jdGlvbikge1xyXG4gICAgICAgIGlmICh0aGlzLkluaXRpYWxpemVkR3JhcGhzLmluZGV4T2YobmFtZSkgIT0gLTEpXHJcbiAgICAgICAgICAgIHRocm93IFwiQXR0ZW1wdGluZyB0byByZWdpc3RlciBhIGR1cGxpY2F0ZSBjaGFydCAnXCIgKyBuYW1lICsgXCInLiBNYWtlIHN1cmUgdGhlICduYW1lJyBwcm9wZXJ0aWVzIG9mIHlvdXIgY2hhcnRzIGFyZSB1bml2b3F1ZVwiO1xyXG5cclxuICAgICAgICB0aGlzLmxvZyhcIkRJU1BBVENIRVI6IFJlZ2lzdGVyaW5nIGNoYXJ0IGNyZWF0aW9uIGZ1bmN0aW9uIGV4ZWN1dGlvbiBmb3IgXCIgKyBuYW1lKTtcclxuICAgICAgICB0aGlzLkluaXRpYWxpemF0aW9ucy5wdXNoKHsgbmFtZTogbmFtZSwgZnVuY3Rpb246IGNoYXJ0Q3JlYXRpb25GdW5jdGlvbiB9KTtcclxuICAgICAgICBpZiAodGhpcy5Jbml0aWFsaXphdGlvbnMubGVuZ3RoID09IDEpIHtcclxuICAgICAgICAgICAgdGhpcy5sb2coXCJESVNQQVRDSEVSOiBJbml0aWFsIGRyYWluIHN0YXJ0ZWRcIik7XHJcbiAgICAgICAgICAgIHRoaXMuZHJhaW5Jbml0UXVldWVzKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRGVyZWdpc3RyYSB1biBncmFmaWNvIHByZXNlbnRlLiBDaGlhbWF0YSBnZW5lcmFsbWVudGUgYWwgZGlzcG9zZSBkZWwgZ3JhZmljbyBpbiBxdWVzdGlvbmUgcXVhbmRvIG5vbiBkZXYnZXNzZXJlIHBpw7kgbW9zdHJhdG8gbmVsbGEgcGFnaW5hIGNvcnJlbnRlXHJcbiAgICAgKiBcclxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lIElkZW50aWZpY2F0aXZvIGRlbCBncmFmaWNvIGRhIGRlcmVnaXN0cmFyZVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZGVyZWdpc3RlckdyYXBoKG5hbWU6IHN0cmluZykge1xyXG4gICAgICAgIGxldCBpbmRleCA9IHRoaXMuSW5pdGlhbGl6ZWRHcmFwaHMuaW5kZXhPZihuYW1lKTtcclxuICAgICAgICBpZiAoaW5kZXggPT0gLTEpXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICAvL1F1ZXN0byBzdWNjZWRlIHF1YW5kbyBzaSBjZXJjYSBkaSBkaXN0cnVnZ2VyZSBpbCBncmFmaWNvIG1lbnRyZSBzdGEgdmVuZW5kbyBncmFmaWNhdG9cclxuICAgICAgICAgICAgdGhpcy5sb2coXCJESVNQQVRDSEVSOiBSZWdpc3RyYXRpb24gbWlzc2luZyBmb3IgY2hhcnQgXCIgKyBuYW1lICsgXCIgaXQgd2FzIHByb2JhYmx5IGRlc3Ryb3llZCBkdXJpbmcgbG9hZFwiKTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5sb2coXCJESVNQQVRDSEVSOiBDaGFydCBkZXJlZ2lzdGVyZWQgXCIgKyBuYW1lKTtcclxuICAgICAgICB0aGlzLkluaXRpYWxpemVkR3JhcGhzLnNwbGljZShpbmRleCwgMSlcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIE1ldG9kbyBjaGUgZXNlZ3VlIGluIG1hbmllcmEgc2VxdWVuemlhbGUgbGUgZnVuemlvbmkgZGkgaW5pemlhbGl6emF6aW9uZSBkZWkgZ3JhZmljaSBmaW5jaMOpIHByZXNlbnRpIFxyXG4gICAgICogaW4gbW9kbyBjaGUgbmVzc3VuIGdyYWZpY28gcG9zc2EgZXNzZXJlIGluaXppYWxpenphdG8gY29udGVtcG9yYW5lYW1lbnRlIGFkIHVuIGFsdHJvLlxyXG4gICAgICogXHJcbiAgICAgKiBRdWVzdG8gw6ggaWwgcHVudG8gY2hpYXZlIGNoZSBwZXJtZXR0ZSBkaSBhdmVyZSBwZXIgb2duaSBncmFmaWNvIHRlbWkgZSBsb2NhbGUgZGlmZmVyZW50aVxyXG4gICAgICovXHJcbiAgICBwcml2YXRlIGRyYWluSW5pdFF1ZXVlcygpIHtcclxuICAgICAgICBsZXQgdG9FeGVjdXRlID0gdGhpcy5Jbml0aWFsaXphdGlvbnNbMF07XHJcbiAgICAgICAgdGhpcy5sb2coXCJESVNQQVRDSEVSOiBFeGVjdXRpbmcgaW5pdGlhbGl6YXRpb24gZnVuY3Rpb24gZm9yIGNoYXJ0IFwiICsgdG9FeGVjdXRlLm5hbWUpO1xyXG5cclxuICAgICAgICB0b0V4ZWN1dGUuZnVuY3Rpb24oKS50aGVuKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5sb2coXCJESVNQQVRDSEVSOiBpbml0aWFsaXphdGlvbiBmb3IgY2hhcnQgXCIgKyB0b0V4ZWN1dGUubmFtZSArIFwiIGlzIGRvbmVcIik7XHJcbiAgICAgICAgICAgIHRoaXMuSW5pdGlhbGl6ZWRHcmFwaHMucHVzaCh0b0V4ZWN1dGUubmFtZSk7XHJcbiAgICAgICAgICAgIHRoaXMuSW5pdGlhbGl6YXRpb25zLnNwbGljZSgwLCAxKTtcclxuICAgICAgICAgICAgaWYgKHRoaXMuSW5pdGlhbGl6YXRpb25zLmxlbmd0aCA+PSAxKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmxvZyhcIkRJU1BBVENIRVI6IEZvdW5kIHF1ZXVlZCBpbml0aWFsaXphdGlvbnMuIENvbnRpbnVpbmdcIik7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmRyYWluSW5pdFF1ZXVlcygpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2VcclxuICAgICAgICAgICAgICAgIHRoaXMubG9nKFwiRElTUEFUQ0hFUjogcXVldWUgaXMgb3Zlciwgbm90aGluZyBtb3JlIHRvIGRvXCIpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQGlnbm9yZVxyXG4gICAgICovXHJcbiAgICBwcml2YXRlIGxvZyh0ZXh0OiBzdHJpbmcpIHtcclxuICAgICAgICBpZiAodGhpcy5sb2dzKVxyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcIkBlc2ZhZW56YS9lcy1jaGFydHM6IFwiICsgdGV4dCk7XHJcbiAgICB9XHJcbn0iXX0=
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2hhcnREaXNwYXRjaGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXMtY2hhcnRzL3NyYy9saWIvbW9kZWxzL2NvcmUvQ2hhcnREaXNwYXRjaGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxjQUFjLENBQUM7O0FBRXhDOztHQUVHO0FBRUgsTUFBTSxPQUFPLGVBQWU7SUFZeEI7O09BRUc7SUFDSCxZQUFzQyxJQUFhO1FBQWIsU0FBSSxHQUFKLElBQUksQ0FBUztRQWJuRDs7V0FFRztRQUNLLG9CQUFlLEdBQXNDLEVBQUUsQ0FBQztRQUVoRTs7V0FFRztRQUNLLHNCQUFpQixHQUFhLEVBQUUsQ0FBQztJQUtjLENBQUM7SUFFeEQ7Ozs7OztPQU1HO0lBQ0ksUUFBUSxDQUFDLElBQVksRUFBRSxxQkFBK0I7UUFDekQsSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUMxQyxNQUFNLDRDQUE0QyxHQUFHLElBQUksR0FBRyxnRUFBZ0UsQ0FBQztRQUVqSSxJQUFJLENBQUMsR0FBRyxDQUFDLGdFQUFnRSxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQ2xGLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUscUJBQXFCLEVBQUUsQ0FBQyxDQUFDO1FBQzNFLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFO1lBQ2xDLElBQUksQ0FBQyxHQUFHLENBQUMsbUNBQW1DLENBQUMsQ0FBQztZQUM5QyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7U0FDMUI7SUFDTCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLGVBQWUsQ0FBQyxJQUFZO1FBQy9CLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakQsSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDLEVBQ2Y7WUFDSSx1RkFBdUY7WUFDdkYsSUFBSSxDQUFDLEdBQUcsQ0FBQyw2Q0FBNkMsR0FBRyxJQUFJLEdBQUcsd0NBQXdDLENBQUMsQ0FBQztZQUMxRyxPQUFPO1NBQ1Y7UUFFRCxJQUFJLENBQUMsR0FBRyxDQUFDLGlDQUFpQyxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQ25ELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQzNDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNLLGVBQWU7UUFDbkIsSUFBSSxTQUFTLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN4QyxJQUFJLENBQUMsR0FBRyxDQUFDLDBEQUEwRCxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV0RixTQUFTLENBQUMsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUMzQixJQUFJLENBQUMsR0FBRyxDQUFDLHVDQUF1QyxHQUFHLFNBQVMsQ0FBQyxJQUFJLEdBQUcsVUFBVSxDQUFDLENBQUM7WUFDaEYsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ2xDLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFO2dCQUNsQyxJQUFJLENBQUMsR0FBRyxDQUFDLHNEQUFzRCxDQUFDLENBQUM7Z0JBQ2pFLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQzthQUMxQjs7Z0JBRUcsSUFBSSxDQUFDLEdBQUcsQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO1FBQ2xFLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVEOztPQUVHO0lBQ0ssR0FBRyxDQUFDLElBQVk7UUFDcEIsSUFBSSxJQUFJLENBQUMsSUFBSTtZQUNULE9BQU8sQ0FBQyxHQUFHLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDcEQsQ0FBQzs7NEdBbkZRLGVBQWUsa0JBZUosUUFBUTtnSEFmbkIsZUFBZTsyRkFBZixlQUFlO2tCQUQzQixVQUFVOzswQkFnQk0sTUFBTTsyQkFBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBFU0NfTE9HUyB9IGZyb20gJy4uLy4uL3Rva2Vucyc7XHJcblxyXG4vKipcclxuICogQ2xhc3NlIGNoZSBzaSBvY2N1cGEgZGVsIGRpc3BhdGNoIGRlbGxlIG9wZXJhemlvbmkgZGkgcmVuZGVyaW5nIGRlaSBncmFmaWNpIHV0aWxpenphbmRvIHVuYSBjb2RhIHBlciBwZXJtZXR0ZXJlIGFkIG9nbmkgZ3JhZmljbyBkaSBhdmVyZSB0ZW1pIGUgbG9jYWxpenphemlvbmUgY3VzdG9tXHJcbiAqL1xyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBDaGFydERpc3BhdGNoZXIge1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ29kYSBkaSBpbml6aWFsaXp6YXppb25pIGFuY29yYSBkYSBlc2VndWlyZS4gUXVhbmRvIHF1ZXN0YSDDqCB2dW90YSBzaWduaWZpY2EgY2hlIG5lc3N1bm8gc3RhIGNyZWFuZG8gZ3JhZmljaVxyXG4gICAgICovXHJcbiAgICBwcml2YXRlIEluaXRpYWxpemF0aW9uczogeyBuYW1lOiBzdHJpbmcsIGZ1bmN0aW9uOiBhbnkgfVtdID0gW107XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBMaXN0YSBkZWkgZ3JhZmljaSBpbml6aWFsaXp6YXRpIGUgYXR0aXZpIGluIHVuIGRhdG8gbW9tZW50byAodmllbmUgcmVnaXN0cmF0YSBsYSBwcm9wcmlldMOgICoqbmFtZSoqKS4gTm9uIMOoIHBvc3NpYmlsZSByZWdpc3RyYXJlIGR1ZSBncmFmaWNpIGNvbiBsbyBzdGVzc28gaWRlbnRpZmljYXRpdm9cclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBJbml0aWFsaXplZEdyYXBoczogc3RyaW5nW10gPSBbXTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIEBpZ25vcmVcclxuICAgICAqL1xyXG4gICAgY29uc3RydWN0b3IoQEluamVjdChFU0NfTE9HUykgcHJpdmF0ZSBsb2dzOiBib29sZWFuKSB7IH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJlZ2lzdHJhIHVuIGdyYWZpY28gZGEgdmlzdWFsaXp6YXJlIGluc2llbWUgYWxsYSBwcm9wcmlhIGZ1bnppb25lIGRpIGNyZWF6aW9uZS4gUXVlc3QndWx0aW1hIHNhcsOgIGRpZmZlcml0YSBmaW5vIGEgY2hlIHR1dHRpIGkgZ3JhZmljaVxyXG4gICAgICogcHJlY2VkZW50ZW1lbnRlIHJlZ2lzdGF0aSBub24gaGFubm8gZmluaXRvIGxhIGZhc2UgZGkgaW5pemlhbGl6emF6aW9uZVxyXG4gICAgICogXHJcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZSBJZGVudGlmaWNhdGl2byBkZWwgZ3JhZmljbyBkYSByZWdpc3RyYXJlXHJcbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBjaGFydENyZWF0aW9uRnVuY3Rpb24gRnVuemlvbmUgY2hlIGZpc2ljYW1lbnRlIGRvdnLDoCBvY2N1cGFyc2kgZGVsbGEgY3JlYXppb25lIGRlbCBncmFmaWNvXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyByZWdpc3RlcihuYW1lOiBzdHJpbmcsIGNoYXJ0Q3JlYXRpb25GdW5jdGlvbjogRnVuY3Rpb24pIHtcclxuICAgICAgICBpZiAodGhpcy5Jbml0aWFsaXplZEdyYXBocy5pbmRleE9mKG5hbWUpICE9IC0xKVxyXG4gICAgICAgICAgICB0aHJvdyBcIkF0dGVtcHRpbmcgdG8gcmVnaXN0ZXIgYSBkdXBsaWNhdGUgY2hhcnQgJ1wiICsgbmFtZSArIFwiJy4gTWFrZSBzdXJlIHRoZSAnbmFtZScgcHJvcGVydGllcyBvZiB5b3VyIGNoYXJ0cyBhcmUgdW5pdm9xdWVcIjtcclxuXHJcbiAgICAgICAgdGhpcy5sb2coXCJESVNQQVRDSEVSOiBSZWdpc3RlcmluZyBjaGFydCBjcmVhdGlvbiBmdW5jdGlvbiBleGVjdXRpb24gZm9yIFwiICsgbmFtZSk7XHJcbiAgICAgICAgdGhpcy5Jbml0aWFsaXphdGlvbnMucHVzaCh7IG5hbWU6IG5hbWUsIGZ1bmN0aW9uOiBjaGFydENyZWF0aW9uRnVuY3Rpb24gfSk7XHJcbiAgICAgICAgaWYgKHRoaXMuSW5pdGlhbGl6YXRpb25zLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgICAgIHRoaXMubG9nKFwiRElTUEFUQ0hFUjogSW5pdGlhbCBkcmFpbiBzdGFydGVkXCIpO1xyXG4gICAgICAgICAgICB0aGlzLmRyYWluSW5pdFF1ZXVlcygpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIERlcmVnaXN0cmEgdW4gZ3JhZmljbyBwcmVzZW50ZS4gQ2hpYW1hdGEgZ2VuZXJhbG1lbnRlIGFsIGRpc3Bvc2UgZGVsIGdyYWZpY28gaW4gcXVlc3Rpb25lIHF1YW5kbyBub24gZGV2J2Vzc2VyZSBwacO5IG1vc3RyYXRvIG5lbGxhIHBhZ2luYSBjb3JyZW50ZVxyXG4gICAgICogXHJcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZSBJZGVudGlmaWNhdGl2byBkZWwgZ3JhZmljbyBkYSBkZXJlZ2lzdHJhcmVcclxuICAgICAqL1xyXG4gICAgcHVibGljIGRlcmVnaXN0ZXJHcmFwaChuYW1lOiBzdHJpbmcpIHtcclxuICAgICAgICBsZXQgaW5kZXggPSB0aGlzLkluaXRpYWxpemVkR3JhcGhzLmluZGV4T2YobmFtZSk7XHJcbiAgICAgICAgaWYgKGluZGV4ID09IC0xKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgLy9RdWVzdG8gc3VjY2VkZSBxdWFuZG8gc2kgY2VyY2EgZGkgZGlzdHJ1Z2dlcmUgaWwgZ3JhZmljbyBtZW50cmUgc3RhIHZlbmVuZG8gZ3JhZmljYXRvXHJcbiAgICAgICAgICAgIHRoaXMubG9nKFwiRElTUEFUQ0hFUjogUmVnaXN0cmF0aW9uIG1pc3NpbmcgZm9yIGNoYXJ0IFwiICsgbmFtZSArIFwiIGl0IHdhcyBwcm9iYWJseSBkZXN0cm95ZWQgZHVyaW5nIGxvYWRcIik7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMubG9nKFwiRElTUEFUQ0hFUjogQ2hhcnQgZGVyZWdpc3RlcmVkIFwiICsgbmFtZSk7XHJcbiAgICAgICAgdGhpcy5Jbml0aWFsaXplZEdyYXBocy5zcGxpY2UoaW5kZXgsIDEpXHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBNZXRvZG8gY2hlIGVzZWd1ZSBpbiBtYW5pZXJhIHNlcXVlbnppYWxlIGxlIGZ1bnppb25pIGRpIGluaXppYWxpenphemlvbmUgZGVpIGdyYWZpY2kgZmluY2jDqSBwcmVzZW50aSBcclxuICAgICAqIGluIG1vZG8gY2hlIG5lc3N1biBncmFmaWNvIHBvc3NhIGVzc2VyZSBpbml6aWFsaXp6YXRvIGNvbnRlbXBvcmFuZWFtZW50ZSBhZCB1biBhbHRyby5cclxuICAgICAqIFxyXG4gICAgICogUXVlc3RvIMOoIGlsIHB1bnRvIGNoaWF2ZSBjaGUgcGVybWV0dGUgZGkgYXZlcmUgcGVyIG9nbmkgZ3JhZmljbyB0ZW1pIGUgbG9jYWxlIGRpZmZlcmVudGlcclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBkcmFpbkluaXRRdWV1ZXMoKSB7XHJcbiAgICAgICAgbGV0IHRvRXhlY3V0ZSA9IHRoaXMuSW5pdGlhbGl6YXRpb25zWzBdO1xyXG4gICAgICAgIHRoaXMubG9nKFwiRElTUEFUQ0hFUjogRXhlY3V0aW5nIGluaXRpYWxpemF0aW9uIGZ1bmN0aW9uIGZvciBjaGFydCBcIiArIHRvRXhlY3V0ZS5uYW1lKTtcclxuXHJcbiAgICAgICAgdG9FeGVjdXRlLmZ1bmN0aW9uKCkudGhlbigoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMubG9nKFwiRElTUEFUQ0hFUjogaW5pdGlhbGl6YXRpb24gZm9yIGNoYXJ0IFwiICsgdG9FeGVjdXRlLm5hbWUgKyBcIiBpcyBkb25lXCIpO1xyXG4gICAgICAgICAgICB0aGlzLkluaXRpYWxpemVkR3JhcGhzLnB1c2godG9FeGVjdXRlLm5hbWUpO1xyXG4gICAgICAgICAgICB0aGlzLkluaXRpYWxpemF0aW9ucy5zcGxpY2UoMCwgMSk7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLkluaXRpYWxpemF0aW9ucy5sZW5ndGggPj0gMSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sb2coXCJESVNQQVRDSEVSOiBGb3VuZCBxdWV1ZWQgaW5pdGlhbGl6YXRpb25zLiBDb250aW51aW5nXCIpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5kcmFpbkluaXRRdWV1ZXMoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgICB0aGlzLmxvZyhcIkRJU1BBVENIRVI6IHF1ZXVlIGlzIG92ZXIsIG5vdGhpbmcgbW9yZSB0byBkb1wiKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEBpZ25vcmVcclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBsb2codGV4dDogc3RyaW5nKSB7XHJcbiAgICAgICAgaWYgKHRoaXMubG9ncylcclxuICAgICAgICAgICAgY29uc29sZS5sb2coXCJAZXNmYWVuemEvZXMtY2hhcnRzOiBcIiArIHRleHQpO1xyXG4gICAgfVxyXG59Il19
@@ -1,7 +1,6 @@
1
1
  import { Inject, Injectable } from '@angular/core';
2
2
  import { ChartThemes } from './ChartThemes';
3
3
  import { ESC_LOGS } from '../../tokens';
4
- import { EsChartsModule } from '../../es-charts.module';
5
4
  import * as i0 from "@angular/core";
6
5
  /**
7
6
  * Classe di supporto al caricamento dinamico dei vari pezzi di amcharts che mi servono per il grafico (temi, locali, ecc...)
@@ -203,12 +202,11 @@ export class ChartLoader {
203
202
  }
204
203
  }
205
204
  ChartLoader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartLoader, deps: [{ token: ESC_LOGS }], target: i0.ɵɵFactoryTarget.Injectable });
206
- ChartLoader.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartLoader, providedIn: EsChartsModule });
205
+ ChartLoader.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartLoader });
207
206
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartLoader, decorators: [{
208
- type: Injectable,
209
- args: [{ providedIn: EsChartsModule }]
207
+ type: Injectable
210
208
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
211
209
  type: Inject,
212
210
  args: [ESC_LOGS]
213
211
  }] }]; } });
214
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2hhcnRMb2FkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcy1jaGFydHMvc3JjL2xpYi9tb2RlbHMvY29yZS9DaGFydExvYWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzNDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDeEMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQUV4RDs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRztBQUVILE1BQU0sT0FBTyxXQUFXO0lBc0J0Qjs7T0FFRztJQUNILFlBQXNDLElBQWE7UUFBYixTQUFJLEdBQUosSUFBSSxDQUFTO1FBdkJuRDs7V0FFRztRQUNLLHdCQUFtQixHQUFZLEtBQUssQ0FBQztRQUU3Qzs7V0FFRztRQUNLLG9CQUFlLEdBQVcsRUFBRSxDQUFDO1FBRXJDOztXQUVHO1FBQ0ssZUFBVSxHQUFPLEVBQUUsQ0FBQztRQUU1Qjs7V0FFRztRQUNLLHNCQUFpQixHQUFPLEVBQUUsQ0FBQztJQUtvQixDQUFDO0lBRXhEOzs7OztPQUtHO0lBQ0ksZUFBZSxDQUFDLFVBQWU7UUFDcEMsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtZQUM3QixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNuRSxJQUFJLENBQUMsR0FBRyxDQUFDLHVCQUF1QixHQUFHLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDekQsVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxD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Q0FBQyxDQUFDLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxHQUFHLENBQUMsSUFBWTtRQUNkLElBQUksSUFBSSxDQUFDLElBQUk7WUFDWCxPQUFPLENBQUMsR0FBRyxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyxDQUFDO0lBQ2hELENBQUM7O3dHQXZNVSxXQUFXLGtCQXlCRixRQUFROzRHQXpCakIsV0FBVyxjQURFLGNBQWM7MkZBQzNCLFdBQVc7a0JBRHZCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFOzswQkEwQjNCLE1BQU07MkJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDaGFydFRoZW1lcyB9IGZyb20gJy4vQ2hhcnRUaGVtZXMnXHJcbmltcG9ydCB7IEVTQ19MT0dTIH0gZnJvbSAnLi4vLi4vdG9rZW5zJztcclxuaW1wb3J0IHsgRXNDaGFydHNNb2R1bGUgfSBmcm9tICcuLi8uLi9lcy1jaGFydHMubW9kdWxlJztcclxuXHJcbi8qKlxyXG4gKiBDbGFzc2UgZGkgc3VwcG9ydG8gYWwgY2FyaWNhbWVudG8gZGluYW1pY28gZGVpIHZhcmkgcGV6emkgZGkgYW1jaGFydHMgY2hlIG1pIHNlcnZvbm8gcGVyIGlsIGdyYWZpY28gKHRlbWksIGxvY2FsaSwgZWNjLi4uKVxyXG4gKiBcclxuICogRXNzZW56aWFsbWVudGUgb2duaSB2b2x0YSBjaGUgdmllbmUgY3JlYXRvIHVuIGdyYWZpY28sIHF1ZXN0byBhY3F1aXNpc2NlIGlsIHRlbWEgZSBpbCBsb2NhbGUgYXBwbGljYXRvIElOIFFVRUwgTU9NRU5UTyxcclxuICogcXVlc3RvIHNpZ25pZmljYSBjaGUgcGVyIGNyZWFyZSBkdWUgZ3JhZmljaSBjb24gdGVtaSBkaXZlcnNpIGJpc29nbmEgZmFyZTpcclxuICogXHJcbiAqIDEpIENhcmljYW1lbnRvIHRlbWEgMVxyXG4gKiBcclxuICogMikgQ3JlYXppb25lIGdyYWZpY28gMVxyXG4gKiBcclxuICogMykgU2NhcmljYW1lbnRvIHRlbWEgMVxyXG4gKiBcclxuICogMykgQ2FyaWNhbWVudG8gdGVtYSAyXHJcbiAqIFxyXG4gKiA0KSBDcmVhemlvbmUgZ3JhZmljbyAyXHJcbiAqIFxyXG4gKi9cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiBFc0NoYXJ0c01vZHVsZSB9KVxyXG5leHBvcnQgY2xhc3MgQ2hhcnRMb2FkZXIge1xyXG5cclxuICAvKipcclxuICAgKiBJbmRpY2Egc2UgYXR0dWFsbWVudGUgaG8gbGUgYW5pbWF6aW9uaSBjYXJpY2F0ZSBpbiBtb2RvIGRhIG5vbiByaWNhcmljYXJsZSBpbnV0aWxtZW50ZVxyXG4gICAqL1xyXG4gIHByaXZhdGUgQW5pbWF0aW9uc0FyZUxvYWRlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBJbmRpY2EgbCd1bHRpbW8gdGVtYSBjYXJpY2F0byBpbiBtb2RvIGRhIG5vbiByaWNhcmljYXJsbyBpbnV0aWxtZW50ZSBxdWFsb3JhIGlsIHByb3NzaW1vIGdyYWZpY28gZGEgY3JlYXJlIHJpY2hpZWRhIGxvIHN0ZXNzbyB0ZW1hXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBMYXN0TG9hZGVkVGhlbWU6IHN0cmluZyA9IFwiXCI7XHJcblxyXG4gIC8qKlxyXG4gICAqIENhY2hlIGRlaSB0ZW1pIChtb2R1bGkgY2FyaWNhdGkgZGluYW1pY2FtZW50ZSlcclxuICAgKi9cclxuICBwcml2YXRlIHRoZW1lQ2FjaGU6IHt9ID0ge307XHJcblxyXG4gIC8qKlxyXG4gICAqIENhY2hlIGRlbGxlIGxvY2FsaXp6YXppb25pIChtb2R1bGkgY2FyaWNhdGkgZGluYW1pY2FtZW50ZSlcclxuICAgKi9cclxuICBwcml2YXRlIGxvY2FsaXphdGlvbkNhY2hlOiB7fSA9IHt9O1xyXG5cclxuICAvKipcclxuICAgKiBAaWdub3JlXHJcbiAgICovXHJcbiAgY29uc3RydWN0b3IoQEluamVjdChFU0NfTE9HUykgcHJpdmF0ZSBsb2dzOiBib29sZWFuKSB7IH1cclxuXHJcbiAgLyoqXHJcbiAgICogQXBwbGljYSBpbCB0ZW1hIGNvbiBsZSBhbmltYXppb25pIGFsbCdpc3RhbnphIGdsb2JhbGUgZGkgYW1DaGFydHNcclxuICAgKiBcclxuICAgKiBAcGFyYW0ge09iamVjdH0gY2hhcnRzQ29yZSBJc3RhbnphIGdsb2JhbGUgZGkgYW1DaGFydHNcclxuICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gUHJvbWlzZSBjaGUgaWRlbnRpZmljYSBsYSBmaW5lIGRlbCBjYXJpY2FtZW50b1xyXG4gICAqL1xyXG4gIHB1YmxpYyBhcHBseUFuaW1hdGlvbnMoY2hhcnRzQ29yZTogYW55KTogUHJvbWlzZTxhbnk+IHtcclxuICAgIGlmICghdGhpcy5BbmltYXRpb25zQXJlTG9hZGVkKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmltcG9ydElmTmVlZGVkKCd0aGVtZXMnLCBDaGFydFRoZW1lcy5hbmltYXRlZCkudGhlbigoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5sb2coXCJDT1JFOiBBcHBseWluZyB0aGVtZSBcIiArIENoYXJ0VGhlbWVzLmFuaW1hdGVkKTtcclxuICAgICAgICBjaGFydHNDb3JlLnVzZVRoZW1lKHRoaXMudGhlbWVDYWNoZVtDaGFydFRoZW1lcy5hbmltYXRlZF0pO1xyXG4gICAgICAgIHRoaXMuQW5pbWF0aW9uc0FyZUxvYWRlZCA9IHRydWU7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMubG9nKFwiQ09SRTogdGhlbWUgYWxyZWFkeSBhcHBseWVkIFwiICsgQ2hhcnRUaGVtZXMuYW5pbWF0ZWQpO1xyXG4gICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHsgcmVzb2x2ZSh0cnVlKSB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIERlLWFwcGxpY2EgaWwgdGVtYSBjb24gbGUgYW5pbWF6aW9uaSBkYWxsJ2lzdGFuemEgZ2xvYmFsZSBkaSBhbUNoYXJ0c1xyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBjaGFydHNDb3JlIElzdGFuemEgZ2xvYmFsZSBkaSBhbUNoYXJ0c1xyXG4gICAqIEByZXR1cm5zIHtQcm9taXNlfSBQcm9taXNlIGNoZSBpZGVudGlmaWNhIGxhIGZpbmUgZGVsbG8gc2Nhcmljb1xyXG4gICAqL1xyXG4gIHVuYXBwbHlBbmltYXRpb25zKGNoYXJ0c0NvcmU6IGFueSk6IFByb21pc2U8YW55PiB7XHJcbiAgICBpZiAodGhpcy5BbmltYXRpb25zQXJlTG9hZGVkKSB7XHJcbiAgICAgIHRoaXMubG9nKFwiQ09SRTogQW5pbWF0aW9ucyBpbiB1c2UsIHVuYXBwbHlpbmcgdGhlbWUgXCIgKyBDaGFydFRoZW1lcy5hbmltYXRlZCk7XHJcbiAgICAgIGNoYXJ0c0NvcmUudW51c2VUaGVtZSh0aGlzLnRoZW1lQ2FjaGVbQ2hhcnRUaGVtZXMuYW5pbWF0ZWRdKTtcclxuICAgICAgdGhpcy5BbmltYXRpb25zQXJlTG9hZGVkID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBlbHNlXHJcbiAgICAgIHRoaXMubG9nKFwiQ09SRTogQW5pbWF0aW9ucyBhbHJlYWR5IHVudXNlZCwgbm8gbmVlZCB0byB1bmFwcGx5IHRoZW1cIik7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHsgcmVzb2x2ZSh0cnVlKSB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEFwcGxpY2EgaWwgdGVtYSBzcGVjaWZpY2F0byBhbGwnaXN0YW56YSBnbG9iYWxlIGRpIGFtQ2hhcnRzXHJcbiAgICogXHJcbiAgICogQHBhcmFtIHtPYmplY3R9IGNoYXJ0c0NvcmUgSXN0YW56YSBnbG9iYWxlIGRpIGFtQ2hhcnRzXHJcbiAgICogQHBhcmFtIHsnc3Bpcml0ZWRhd2F5JyB8ICdtb29ucmlzZWtpbmdkb20nIHwgJ2Zyb3plbicgfCAnZGFyaycgfCAna2VsbHknIHwgJ21hdGVyaWFsJyB8ICdkYXRhdml6JyB8ICdub25lJ30gdGhlbWUgVGVtYSBkYSBhcHBsaWNhcmVcclxuICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gUHJvbWlzZSBjaGUgaWRlbnRpZmljYSBsYSBmaW5lIGRlbCBjYXJpY2FtZW50b1xyXG4gICAqL1xyXG4gIGFwcGx5VGhlbWUoY2hhcnRzQ29yZTogYW55LCB0aGVtZTogJ3NwaXJpdGVkYXdheScgfCAnbW9vbnJpc2VraW5nZG9tJyB8ICdmcm96ZW4nIHwgJ2RhcmsnIHwgJ2tlbGx5JyB8ICdtYXRlcmlhbCcgfCAnZGF0YXZpeicgfCAnbm9uZScpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgLy8gVWx0aW1vIHRlbWEgYXBwbGljYXRvIMOoIGxvIHN0ZXNzbyBjaGUgbWkgw6ggc3RhdG8gcmljaGllc3RvIGRpIGFwcGxpY2FyZSAtLT4gTk8tT1BcclxuICAgIGlmICh0aGlzLkxhc3RMb2FkZWRUaGVtZSA9PSB0aGVtZSkge1xyXG4gICAgICB0aGlzLmxvZyhcIkNPUkU6IHRoZW1lIGFscmVhZHkgYXBwbGllZCBcIiArIHRoZW1lKTtcclxuICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7IHJlc29sdmUodHJ1ZSkgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gU2NhcmljbyBpbCB0ZW1hIHByZWNlZGVudGUgYSBwcmVzY2luZGVyZSwgb3JtYWkgbm9uIG1pIHNlcnZlIHBpw7lcclxuICAgIHRoaXMudW5hcHBseVByZXZpb3VzVGhlbWUoY2hhcnRzQ29yZSlcclxuXHJcbiAgICAvLyBJbCB0ZW1hIMOoIGlsIG5vbmUgLS0+IHJlZ2lzdHJvIGxhIGNvc2EgZSBiYXN0YSwgaWwgdGVtYSBwcmVjZWRlbnRlIMOoIHN0YXRvIHJpbW9zc28gc3ViaXRvIHF1aSBzb3ByYSBeXHJcbiAgICBpZiAodGhlbWUgPT0gQ2hhcnRUaGVtZXMubm9uZSkge1xyXG4gICAgICB0aGlzLkxhc3RMb2FkZWRUaGVtZSA9IENoYXJ0VGhlbWVzLm5vbmU7XHJcbiAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4geyByZXNvbHZlKHRydWUpIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIElsIHRlbWEgw6ggZGl2ZXJzbyBkYWwgcHJlY2VkZW50ZSBlIG5vbiDDqCBpbCB0ZW1hIHZ1b3RvIC0tPiBJbXBvcnRvIGlsIHRlbWEgc3BlY2lmaWNhdG8gc2Ugbm9uIHByZXNlbnRlIGluIG1lbW9yaWEgZSBsbyBhcHBsaWNvIGFsIGdyYWZpY28gYXR0dWFsZVxyXG4gICAgcmV0dXJuIHRoaXMuaW1wb3J0SWZOZWVkZWQoJ3RoZW1lcycsIHRoZW1lKS50aGVuKCgpID0+IHtcclxuICAgICAgdGhpcy5sb2coXCJDT1JFOiBBcHBseWluZyB0aGVtZSBcIiArIHRoZW1lKTtcclxuICAgICAgY2hhcnRzQ29yZS51c2VUaGVtZSh0aGlzLnRoZW1lQ2FjaGVbdGhlbWVdKTtcclxuICAgICAgdGhpcy5MYXN0TG9hZGVkVGhlbWUgPSB0aGVtZTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGUtYXBwbGljYSBpbCB0ZW1hIHByZWNlZGVudGUgZGFsbCdpc3RhbnphIGdsb2JhbGUgZGkgYW1DaGFydHNcclxuICAgKiBcclxuICAgKiBAcGFyYW0ge09iamVjdH0gY2hhcnRzQ29yZSBJc3RhbnphIGdsb2JhbGUgZGkgYW1DaGFydHNcclxuICAgKi9cclxuICB1bmFwcGx5UHJldmlvdXNUaGVtZShjaGFydHNDb3JlOiBhbnkpIHtcclxuICAgIGlmICghdGhpcy5MYXN0TG9hZGVkVGhlbWUgfHwgdGhpcy5MYXN0TG9hZGVkVGhlbWUgPT0gQ2hhcnRUaGVtZXMubm9uZSlcclxuICAgICAgcmV0dXJuO1xyXG5cclxuICAgIHRoaXMubG9nKFwiQ09SRTogVW5hcHBseWluZyBwcmV2aW91c2x5IHVzZWQgdGhlbWUgXCIgKyB0aGlzLkxhc3RMb2FkZWRUaGVtZSk7XHJcbiAgICBjaGFydHNDb3JlLnVudXNlVGhlbWUodGhpcy50aGVtZUNhY2hlW3RoaXMuTGFzdExvYWRlZFRoZW1lXSlcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEFwcGxpY2EgaWwgbG9jYWxlIHNwZWNpZmljYXRvIGFsbCdpc3RhbnphIHNwZWNpZmljYSBkZWwgZ3JhZmljb1xyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7YW1DaGFydHMuQ2hhcnR9IGNoYXJ0IElzdGFuemEgc3BlY2lmaWNhIGRlbCBncmFmaWNvIGEgY3VpIGFwcGxpY2FyZSBpbCBsb2NhbGVcclxuICAgKiBAcGFyYW0ge3N0cmluZ30gbG9jYWxlIExvY2FsZSBkYSBhcHBsaWNhcmVcclxuICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gUHJvbWlzZSBjaGUgaWRlbnRpZmljYSBsYSBmaW5lIGRlbCBjYXJpY2FtZW50b1xyXG4gICAqL1xyXG4gIGFwcGx5TG9jYWxlKGNoYXJ0OiBhbnksIGxvY2FsZTogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmltcG9ydElmTmVlZGVkKCdsYW5nJywgbG9jYWxlKS50aGVuKCgpID0+IHtcclxuICAgICAgdGhpcy5sb2coXCJDaGFydCBcIiArIGNoYXJ0Lmh0bWxDb250YWluZXIuaWQgKyBcIjogYXBwbHlpbmcgbG9jYWxlIFwiICsgbG9jYWxlKTtcclxuICAgICAgY2hhcnQubGFuZ3VhZ2UubG9jYWxlID0gdGhpcy5sb2NhbGl6YXRpb25DYWNoZVtsb2NhbGVdO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBQZXJtZXR0ZSBkaSBpbXBvcnRhcmUsIHNlIHNlcnZlIHVuIGRhdG8gdGVtYSBvIGxvY2FsaXp6YXppb25lXHJcbiAgICogXHJcbiAgICogQHBhcmFtIHsnbGFuZycgfCAndGhlbWVzJ30gd2hhdCBPZ2dldHRvIGRhIGltcG9ydGFyZSwgc2UgbG9jYWxpenphemlvbmUgbyB0ZW1hXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IGl0ZW0gQ2hpYXZlIGRlbGwnb2dnZXR0byBkYSBpbXBvcnRhcmVcclxuICAgKiBcclxuICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gUHJvbWlzZSBjaGUgaWRlbnRpZmljYSBsYSBmaW5lIGRlbCBjYXJpY2FtZW50b1xyXG4gICAqL1xyXG4gIGltcG9ydElmTmVlZGVkKHdoYXQ6ICdsYW5nJyB8ICd0aGVtZXMnLCBpdGVtOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xyXG5cclxuICAgIC8vIFNlIHN0byBjZXJjYW5kbyBkaSBjYXJpY2FyZSBxdWFsY29zYSBkaSBnacOgIGNhcmljYXRvIG5vbiBmYWNjaW8gbnVsbGFcclxuICAgIGlmICghKHdoYXQgPT0gJ3RoZW1lcycgJiYgIXRoaXMudGhlbWVDYWNoZVtpdGVtXSkgJiYgISh3aGF0ID09ICdsYW5nJyAmJiAhdGhpcy5sb2NhbGl6YXRpb25DYWNoZVtpdGVtXSkpIHtcclxuICAgICAgdGhpcy5sb2coXCJDT1JFOiBcIiArICh3aGF0ID09ICdsYW5nJyA/IFwiTGFuZ3VhZ2UgXCIgOiBcIlRoZW1lIFwiKSArIGl0ZW0gKyBcIiBhbHJlYWR5IGxvYWRlZFwiKTtcclxuICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7IHJlc29sdmUodHJ1ZSkgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5sb2coXCJDT1JFOiBMb2FkaW5nIFwiICsgKHdoYXQgPT0gJ2xhbmcnID8gXCJsYW5ndWFnZSBcIiA6IFwidGhlbWUgXCIpICsgaXRlbSk7XHJcblxyXG4gICAgLypcclxuICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoqKioqKioqIEFUVEVOWklPTkUgKioqKioqKipcclxuICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICAgICAqIFxyXG4gICAgICogIFNlIHN0YWkgdmVkZW5kbyBxdWVzdG8gY29kaWNlIGRpIGltcG9ydCBlIHN0YWkgdmFsdXRhbmRvIGRpIHJpc2NyaXZlcmxvIGNvbWU6XHJcbiAgICAgKiBcclxuICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFYgICAgICAgViAgIFxyXG4gICAgICogICAgICBpbXBvcnQoYEBhbWNoYXJ0cy9hbWNoYXJ0czQvJHt3aGF0fS8ke2l0ZW19YCkudGhlbihtb2R1bGUgPT4ge1xyXG4gICAgICogICAgICAgIGlmICh3aGF0ID09ICd0aGVtZXMnKSB0aGlzLnRoZW1lQ2FjaGVbaXRlbV0gPSBtb2R1bGUuZGVmYXVsdDtcclxuICAgICAqICAgICAgICBlbHNlIGlmICh3aGF0ID09ICdsYW5nJykgdGhpcy5sb2NhbGl6YXRpb25DYWNoZVtpdGVtXSA9IG1vZHVsZS5kZWZhdWx0O1xyXG4gICAgICogICAgICB9KTtcclxuICAgICAqIFxyXG4gICAgICogIFNhcHBpIGNoZSDDqCB1bmEgcGVzc2ltYSBpZGVhLiBHbGkgaW1wb3J0IHNvbm8gdmFsdXRhdGkgZGEgd2VicGFjayBpbiBjb21waWxldGltZSBwZXIgZ2VuZXJhcmUgaSBjaHVuayxcclxuICAgICAqICBtZXR0ZXJlIGxhIG5hdmlnYXppb25lIGFnbGkgaW1wb3J0IGNvbiBsYSBjb25jYXRlbmF6aW9uZSB2aWVuZSBwcmVzbyBtYWxpc3NpbW8gZWQgZXNzZW56aWFsbWVudGUgZGljZSBhIHdlYnBhY2tcclxuICAgICAqICBkaSB0aXJhcmUgc3UgZSBidW5kbGFyZSBsJ2ludGVyYSBub2RlX21vZHVsZXMuIERpdmVydGVudGUsIG5vP1xyXG4gICAgICpcclxuICAgICAqL1xyXG5cclxuICAgIHN3aXRjaCAod2hhdCkge1xyXG4gICAgICBjYXNlICd0aGVtZXMnOlxyXG4gICAgICAgIHN3aXRjaCAoaXRlbSkge1xyXG4gICAgICAgICAgY2FzZSBDaGFydFRoZW1lcy5zcGlyaXRlZGF3YXk6XHJcbiAgICAgICAgICAgIHJldHVybiBpbXBvcnQoXCJAYW1jaGFydHMvYW1jaGFydHM0L3RoZW1lcy9zcGlyaXRlZGF3YXlcIikudGhlbih0aGVtZSA9PiB0aGlzLnRoZW1lQ2FjaGVbaXRlbV0gPSB0aGVtZS5kZWZhdWx0KTtcclxuICAgICAgICAgIGNhc2UgQ2hhcnRUaGVtZXMubW9vbnJpc2VraW5nZG9tOlxyXG4gICAgICAgICAgICByZXR1cm4gaW1wb3J0KFwiQGFtY2hhcnRzL2FtY2hhcnRzNC90aGVtZXMvbW9vbnJpc2VraW5nZG9tXCIpLnRoZW4odGhlbWUgPT4gdGhpcy50aGVtZUNhY2hlW2l0ZW1dID0gdGhlbWUuZGVmYXVsdCk7XHJcbiAgICAgICAgICBjYXNlIENoYXJ0VGhlbWVzLmZyb3plbjpcclxuICAgICAgICAgICAgcmV0dXJuIGltcG9ydChcIkBhbWNoYXJ0cy9hbWNoYXJ0czQvdGhlbWVzL2Zyb3plblwiKS50aGVuKHRoZW1lID0+IHRoaXMudGhlbWVDYWNoZVtpdGVtXSA9IHRoZW1lLmRlZmF1bHQpO1xyXG4gICAgICAgICAgY2FzZSBDaGFydFRoZW1lcy5kYXJrOlxyXG4gICAgICAgICAgICByZXR1cm4gaW1wb3J0KFwiQGFtY2hhcnRzL2FtY2hhcnRzNC90aGVtZXMvZGFya1wiKS50aGVuKHRoZW1lID0+IHRoaXMudGhlbWVDYWNoZVtpdGVtXSA9IHRoZW1lLmRlZmF1bHQpO1xyXG4gICAgICAgICAgY2FzZSBDaGFydFRoZW1lcy5rZWxseTpcclxuICAgICAgICAgICAgcmV0dXJuIGltcG9ydChcIkBhbWNoYXJ0cy9hbWNoYXJ0czQvdGhlbWVzL2tlbGx5XCIpLnRoZW4odGhlbWUgPT4gdGhpcy50aGVtZUNhY2hlW2l0ZW1dID0gdGhlbWUuZGVmYXVsdCk7XHJcbiAgICAgICAgICBjYXNlIENoYXJ0VGhlbWVzLm1hdGVyaWFsOlxyXG4gICAgICAgICAgICByZXR1cm4gaW1wb3J0KFwiQGFtY2hhcnRzL2FtY2hhcnRzNC90aGVtZXMvbWF0ZXJpYWxcIikudGhlbih0aGVtZSA9PiB0aGlzLnRoZW1lQ2FjaGVbaXRlbV0gPSB0aGVtZS5kZWZhdWx0KTtcclxuICAgICAgICAgIGNhc2UgQ2hhcnRUaGVtZXMuZGF0YXZpejpcclxuICAgICAgICAgICAgcmV0dXJuIGltcG9ydChcIkBhbWNoYXJ0cy9hbWNoYXJ0czQvdGhlbWVzL2RhdGF2aXpcIikudGhlbih0aGVtZSA9PiB0aGlzLnRoZW1lQ2FjaGVbaXRlbV0gPSB0aGVtZS5kZWZhdWx0KTtcclxuICAgICAgICAgIGNhc2UgQ2hhcnRUaGVtZXMuYW5pbWF0ZWQ6XHJcbiAgICAgICAgICAgIHJldHVybiBpbXBvcnQoXCJAYW1jaGFydHMvYW1jaGFydHM0L3RoZW1lcy9hbmltYXRlZFwiKS50aGVuKHRoZW1lID0+IHRoaXMudGhlbWVDYWNoZVtpdGVtXSA9IHRoZW1lLmRlZmF1bHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnbGFuZyc6XHJcbiAgICAgICAgc3dpdGNoIChpdGVtKSB7XHJcbiAgICAgICAgICBjYXNlICdpdC1JVCc6XHJcbiAgICAgICAgICAgIHJldHVybiBpbXBvcnQoXCJAYW1jaGFydHMvYW1jaGFydHM0L2xhbmcvaXRfSVRcIikudGhlbihsYW5nID0+IHRoaXMubG9jYWxpemF0aW9uQ2FjaGVbaXRlbV0gPSBsYW5nLmRlZmF1bHQpO1xyXG4gICAgICAgICAgY2FzZSAnZW4tVVMnOlxyXG4gICAgICAgICAgICByZXR1cm4gaW1wb3J0KFwiQGFtY2hhcnRzL2FtY2hhcnRzNC9sYW5nL2VuX1VTXCIpLnRoZW4obGFuZyA9PiB0aGlzLmxvY2FsaXphdGlvbkNhY2hlW2l0ZW1dID0gbGFuZy5kZWZhdWx0KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5sb2coXCJDT1JFOiBMb2FkaW5nIEZhaWxlZC4gXCIgKyAod2hhdCA9PSAnbGFuZycgPyBcIkxhbmd1YWdlIFwiIDogXCJUaGVtZVwiKSArIFwiIG5vdCByZWNvZ25pemVkOiBcIiArIGl0ZW0pO1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7IHJlc29sdmUodHJ1ZSkgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAaWdub3JlXHJcbiAgICovXHJcbiAgbG9nKHRleHQ6IHN0cmluZykge1xyXG4gICAgaWYgKHRoaXMubG9ncylcclxuICAgICAgY29uc29sZS5sb2coXCJAZXNmYWVuemEvZXMtY2hhcnRzOiBcIiArIHRleHQpO1xyXG4gIH1cclxufSJdfQ==
212
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2hhcnRMb2FkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcy1jaGFydHMvc3JjL2xpYi9tb2RlbHMvY29yZS9DaGFydExvYWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzNDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxjQUFjLENBQUM7O0FBR3hDOzs7Ozs7Ozs7Ozs7Ozs7O0dBZ0JHO0FBRUgsTUFBTSxPQUFPLFdBQVc7SUFzQnRCOztPQUVHO0lBQ0gsWUFBc0MsSUFBYTtRQUFiLFNBQUksR0FBSixJQUFJLENBQVM7UUF2Qm5EOztXQUVHO1FBQ0ssd0JBQW1CLEdBQVksS0FBSyxDQUFDO1FBRTdDOztXQUVHO1FBQ0ssb0JBQWUsR0FBVyxFQUFFLENBQUM7UUFFckM7O1dBRUc7UUFDSyxlQUFVLEdBQU8sRUFBRSxDQUFDO1FBRTVCOztXQUVHO1FBQ0ssc0JBQWlCLEdBQU8sRUFBRSxDQUFDO0lBS29CLENBQUM7SUFFeEQ7Ozs7O09BS0c7SUFDSSxlQUFlLENBQUMsVUFBZTtRQUNwQyxJQUFJLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFO1lBQzdCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ25FLElBQUksQ0FBQyxHQUFHLENBQUMsdUJBQXVCLEdBQUcsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUN6RCxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQzNELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUM7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QUNILEdBQUcsQ0FBQyxJQUFZO1FBQ2QsSUFBSSxJQUFJLENBQUMsSUFBSTtZQUNYLE9BQU8sQ0FBQyxHQUFHLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDaEQsQ0FBQzs7d0dBdk1VLFdBQVcsa0JBeUJGLFFBQVE7NEdBekJqQixXQUFXOzJGQUFYLFdBQVc7a0JBRHZCLFVBQVU7OzBCQTBCSSxNQUFNOzJCQUFDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ2hhcnRUaGVtZXMgfSBmcm9tICcuL0NoYXJ0VGhlbWVzJ1xyXG5pbXBvcnQgeyBFU0NfTE9HUyB9IGZyb20gJy4uLy4uL3Rva2Vucyc7XHJcbmltcG9ydCB7IEVzQ2hhcnRzTW9kdWxlIH0gZnJvbSAnLi4vLi4vZXMtY2hhcnRzLm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogQ2xhc3NlIGRpIHN1cHBvcnRvIGFsIGNhcmljYW1lbnRvIGRpbmFtaWNvIGRlaSB2YXJpIHBlenppIGRpIGFtY2hhcnRzIGNoZSBtaSBzZXJ2b25vIHBlciBpbCBncmFmaWNvICh0ZW1pLCBsb2NhbGksIGVjYy4uLilcclxuICogXHJcbiAqIEVzc2VuemlhbG1lbnRlIG9nbmkgdm9sdGEgY2hlIHZpZW5lIGNyZWF0byB1biBncmFmaWNvLCBxdWVzdG8gYWNxdWlzaXNjZSBpbCB0ZW1hIGUgaWwgbG9jYWxlIGFwcGxpY2F0byBJTiBRVUVMIE1PTUVOVE8sXHJcbiAqIHF1ZXN0byBzaWduaWZpY2EgY2hlIHBlciBjcmVhcmUgZHVlIGdyYWZpY2kgY29uIHRlbWkgZGl2ZXJzaSBiaXNvZ25hIGZhcmU6XHJcbiAqIFxyXG4gKiAxKSBDYXJpY2FtZW50byB0ZW1hIDFcclxuICogXHJcbiAqIDIpIENyZWF6aW9uZSBncmFmaWNvIDFcclxuICogXHJcbiAqIDMpIFNjYXJpY2FtZW50byB0ZW1hIDFcclxuICogXHJcbiAqIDMpIENhcmljYW1lbnRvIHRlbWEgMlxyXG4gKiBcclxuICogNCkgQ3JlYXppb25lIGdyYWZpY28gMlxyXG4gKiBcclxuICovXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIENoYXJ0TG9hZGVyIHtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIHNlIGF0dHVhbG1lbnRlIGhvIGxlIGFuaW1hemlvbmkgY2FyaWNhdGUgaW4gbW9kbyBkYSBub24gcmljYXJpY2FybGUgaW51dGlsbWVudGVcclxuICAgKi9cclxuICBwcml2YXRlIEFuaW1hdGlvbnNBcmVMb2FkZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIGwndWx0aW1vIHRlbWEgY2FyaWNhdG8gaW4gbW9kbyBkYSBub24gcmljYXJpY2FybG8gaW51dGlsbWVudGUgcXVhbG9yYSBpbCBwcm9zc2ltbyBncmFmaWNvIGRhIGNyZWFyZSByaWNoaWVkYSBsbyBzdGVzc28gdGVtYVxyXG4gICAqL1xyXG4gIHByaXZhdGUgTGFzdExvYWRlZFRoZW1lOiBzdHJpbmcgPSBcIlwiO1xyXG5cclxuICAvKipcclxuICAgKiBDYWNoZSBkZWkgdGVtaSAobW9kdWxpIGNhcmljYXRpIGRpbmFtaWNhbWVudGUpXHJcbiAgICovXHJcbiAgcHJpdmF0ZSB0aGVtZUNhY2hlOiB7fSA9IHt9O1xyXG5cclxuICAvKipcclxuICAgKiBDYWNoZSBkZWxsZSBsb2NhbGl6emF6aW9uaSAobW9kdWxpIGNhcmljYXRpIGRpbmFtaWNhbWVudGUpXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBsb2NhbGl6YXRpb25DYWNoZToge30gPSB7fTtcclxuXHJcbiAgLyoqXHJcbiAgICogQGlnbm9yZVxyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoRVNDX0xPR1MpIHByaXZhdGUgbG9nczogYm9vbGVhbikgeyB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEFwcGxpY2EgaWwgdGVtYSBjb24gbGUgYW5pbWF6aW9uaSBhbGwnaXN0YW56YSBnbG9iYWxlIGRpIGFtQ2hhcnRzXHJcbiAgICogXHJcbiAgICogQHBhcmFtIHtPYmplY3R9IGNoYXJ0c0NvcmUgSXN0YW56YSBnbG9iYWxlIGRpIGFtQ2hhcnRzXHJcbiAgICogQHJldHVybnMge1Byb21pc2V9IFByb21pc2UgY2hlIGlkZW50aWZpY2EgbGEgZmluZSBkZWwgY2FyaWNhbWVudG9cclxuICAgKi9cclxuICBwdWJsaWMgYXBwbHlBbmltYXRpb25zKGNoYXJ0c0NvcmU6IGFueSk6IFByb21pc2U8YW55PiB7XHJcbiAgICBpZiAoIXRoaXMuQW5pbWF0aW9uc0FyZUxvYWRlZCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5pbXBvcnRJZk5lZWRlZCgndGhlbWVzJywgQ2hhcnRUaGVtZXMuYW5pbWF0ZWQpLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgIHRoaXMubG9nKFwiQ09SRTogQXBwbHlpbmcgdGhlbWUgXCIgKyBDaGFydFRoZW1lcy5hbmltYXRlZCk7XHJcbiAgICAgICAgY2hhcnRzQ29yZS51c2VUaGVtZSh0aGlzLnRoZW1lQ2FjaGVbQ2hhcnRUaGVtZXMuYW5pbWF0ZWRdKTtcclxuICAgICAgICB0aGlzLkFuaW1hdGlvbnNBcmVMb2FkZWQgPSB0cnVlO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICB0aGlzLmxvZyhcIkNPUkU6IHRoZW1lIGFscmVhZHkgYXBwbHllZCBcIiArIENoYXJ0VGhlbWVzLmFuaW1hdGVkKTtcclxuICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7IHJlc29sdmUodHJ1ZSkgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEZS1hcHBsaWNhIGlsIHRlbWEgY29uIGxlIGFuaW1hemlvbmkgZGFsbCdpc3RhbnphIGdsb2JhbGUgZGkgYW1DaGFydHNcclxuICAgKiBcclxuICAgKiBAcGFyYW0ge09iamVjdH0gY2hhcnRzQ29yZSBJc3RhbnphIGdsb2JhbGUgZGkgYW1DaGFydHNcclxuICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gUHJvbWlzZSBjaGUgaWRlbnRpZmljYSBsYSBmaW5lIGRlbGxvIHNjYXJpY29cclxuICAgKi9cclxuICB1bmFwcGx5QW5pbWF0aW9ucyhjaGFydHNDb3JlOiBhbnkpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgaWYgKHRoaXMuQW5pbWF0aW9uc0FyZUxvYWRlZCkge1xyXG4gICAgICB0aGlzLmxvZyhcIkNPUkU6IEFuaW1hdGlvbnMgaW4gdXNlLCB1bmFwcGx5aW5nIHRoZW1lIFwiICsgQ2hhcnRUaGVtZXMuYW5pbWF0ZWQpO1xyXG4gICAgICBjaGFydHNDb3JlLnVudXNlVGhlbWUodGhpcy50aGVtZUNhY2hlW0NoYXJ0VGhlbWVzLmFuaW1hdGVkXSk7XHJcbiAgICAgIHRoaXMuQW5pbWF0aW9uc0FyZUxvYWRlZCA9IGZhbHNlO1xyXG4gICAgfVxyXG4gICAgZWxzZVxyXG4gICAgICB0aGlzLmxvZyhcIkNPUkU6IEFuaW1hdGlvbnMgYWxyZWFkeSB1bnVzZWQsIG5vIG5lZWQgdG8gdW5hcHBseSB0aGVtXCIpO1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7IHJlc29sdmUodHJ1ZSkgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBcHBsaWNhIGlsIHRlbWEgc3BlY2lmaWNhdG8gYWxsJ2lzdGFuemEgZ2xvYmFsZSBkaSBhbUNoYXJ0c1xyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBjaGFydHNDb3JlIElzdGFuemEgZ2xvYmFsZSBkaSBhbUNoYXJ0c1xyXG4gICAqIEBwYXJhbSB7J3NwaXJpdGVkYXdheScgfCAnbW9vbnJpc2VraW5nZG9tJyB8ICdmcm96ZW4nIHwgJ2RhcmsnIHwgJ2tlbGx5JyB8ICdtYXRlcmlhbCcgfCAnZGF0YXZpeicgfCAnbm9uZSd9IHRoZW1lIFRlbWEgZGEgYXBwbGljYXJlXHJcbiAgICogQHJldHVybnMge1Byb21pc2V9IFByb21pc2UgY2hlIGlkZW50aWZpY2EgbGEgZmluZSBkZWwgY2FyaWNhbWVudG9cclxuICAgKi9cclxuICBhcHBseVRoZW1lKGNoYXJ0c0NvcmU6IGFueSwgdGhlbWU6ICdzcGlyaXRlZGF3YXknIHwgJ21vb25yaXNla2luZ2RvbScgfCAnZnJvemVuJyB8ICdkYXJrJyB8ICdrZWxseScgfCAnbWF0ZXJpYWwnIHwgJ2RhdGF2aXonIHwgJ25vbmUnKTogUHJvbWlzZTxhbnk+IHtcclxuICAgIC8vIFVsdGltbyB0ZW1hIGFwcGxpY2F0byDDqCBsbyBzdGVzc28gY2hlIG1pIMOoIHN0YXRvIHJpY2hpZXN0byBkaSBhcHBsaWNhcmUgLS0+IE5PLU9QXHJcbiAgICBpZiAodGhpcy5MYXN0TG9hZGVkVGhlbWUgPT0gdGhlbWUpIHtcclxuICAgICAgdGhpcy5sb2coXCJDT1JFOiB0aGVtZSBhbHJlYWR5IGFwcGxpZWQgXCIgKyB0aGVtZSk7XHJcbiAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4geyByZXNvbHZlKHRydWUpIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFNjYXJpY28gaWwgdGVtYSBwcmVjZWRlbnRlIGEgcHJlc2NpbmRlcmUsIG9ybWFpIG5vbiBtaSBzZXJ2ZSBwacO5XHJcbiAgICB0aGlzLnVuYXBwbHlQcmV2aW91c1RoZW1lKGNoYXJ0c0NvcmUpXHJcblxyXG4gICAgLy8gSWwgdGVtYSDDqCBpbCBub25lIC0tPiByZWdpc3RybyBsYSBjb3NhIGUgYmFzdGEsIGlsIHRlbWEgcHJlY2VkZW50ZSDDqCBzdGF0byByaW1vc3NvIHN1Yml0byBxdWkgc29wcmEgXlxyXG4gICAgaWYgKHRoZW1lID09IENoYXJ0VGhlbWVzLm5vbmUpIHtcclxuICAgICAgdGhpcy5MYXN0TG9hZGVkVGhlbWUgPSBDaGFydFRoZW1lcy5ub25lO1xyXG4gICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHsgcmVzb2x2ZSh0cnVlKSB9KTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBJbCB0ZW1hIMOoIGRpdmVyc28gZGFsIHByZWNlZGVudGUgZSBub24gw6ggaWwgdGVtYSB2dW90byAtLT4gSW1wb3J0byBpbCB0ZW1hIHNwZWNpZmljYXRvIHNlIG5vbiBwcmVzZW50ZSBpbiBtZW1vcmlhIGUgbG8gYXBwbGljbyBhbCBncmFmaWNvIGF0dHVhbGVcclxuICAgIHJldHVybiB0aGlzLmltcG9ydElmTmVlZGVkKCd0aGVtZXMnLCB0aGVtZSkudGhlbigoKSA9PiB7XHJcbiAgICAgIHRoaXMubG9nKFwiQ09SRTogQXBwbHlpbmcgdGhlbWUgXCIgKyB0aGVtZSk7XHJcbiAgICAgIGNoYXJ0c0NvcmUudXNlVGhlbWUodGhpcy50aGVtZUNhY2hlW3RoZW1lXSk7XHJcbiAgICAgIHRoaXMuTGFzdExvYWRlZFRoZW1lID0gdGhlbWU7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIERlLWFwcGxpY2EgaWwgdGVtYSBwcmVjZWRlbnRlIGRhbGwnaXN0YW56YSBnbG9iYWxlIGRpIGFtQ2hhcnRzXHJcbiAgICogXHJcbiAgICogQHBhcmFtIHtPYmplY3R9IGNoYXJ0c0NvcmUgSXN0YW56YSBnbG9iYWxlIGRpIGFtQ2hhcnRzXHJcbiAgICovXHJcbiAgdW5hcHBseVByZXZpb3VzVGhlbWUoY2hhcnRzQ29yZTogYW55KSB7XHJcbiAgICBpZiAoIXRoaXMuTGFzdExvYWRlZFRoZW1lIHx8IHRoaXMuTGFzdExvYWRlZFRoZW1lID09IENoYXJ0VGhlbWVzLm5vbmUpXHJcbiAgICAgIHJldHVybjtcclxuXHJcbiAgICB0aGlzLmxvZyhcIkNPUkU6IFVuYXBwbHlpbmcgcHJldmlvdXNseSB1c2VkIHRoZW1lIFwiICsgdGhpcy5MYXN0TG9hZGVkVGhlbWUpO1xyXG4gICAgY2hhcnRzQ29yZS51bnVzZVRoZW1lKHRoaXMudGhlbWVDYWNoZVt0aGlzLkxhc3RMb2FkZWRUaGVtZV0pXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBcHBsaWNhIGlsIGxvY2FsZSBzcGVjaWZpY2F0byBhbGwnaXN0YW56YSBzcGVjaWZpY2EgZGVsIGdyYWZpY29cclxuICAgKiBcclxuICAgKiBAcGFyYW0ge2FtQ2hhcnRzLkNoYXJ0fSBjaGFydCBJc3RhbnphIHNwZWNpZmljYSBkZWwgZ3JhZmljbyBhIGN1aSBhcHBsaWNhcmUgaWwgbG9jYWxlXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IGxvY2FsZSBMb2NhbGUgZGEgYXBwbGljYXJlXHJcbiAgICogQHJldHVybnMge1Byb21pc2V9IFByb21pc2UgY2hlIGlkZW50aWZpY2EgbGEgZmluZSBkZWwgY2FyaWNhbWVudG9cclxuICAgKi9cclxuICBhcHBseUxvY2FsZShjaGFydDogYW55LCBsb2NhbGU6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5pbXBvcnRJZk5lZWRlZCgnbGFuZycsIGxvY2FsZSkudGhlbigoKSA9PiB7XHJcbiAgICAgIHRoaXMubG9nKFwiQ2hhcnQgXCIgKyBjaGFydC5odG1sQ29udGFpbmVyLmlkICsgXCI6IGFwcGx5aW5nIGxvY2FsZSBcIiArIGxvY2FsZSk7XHJcbiAgICAgIGNoYXJ0Lmxhbmd1YWdlLmxvY2FsZSA9IHRoaXMubG9jYWxpemF0aW9uQ2FjaGVbbG9jYWxlXTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUGVybWV0dGUgZGkgaW1wb3J0YXJlLCBzZSBzZXJ2ZSB1biBkYXRvIHRlbWEgbyBsb2NhbGl6emF6aW9uZVxyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7J2xhbmcnIHwgJ3RoZW1lcyd9IHdoYXQgT2dnZXR0byBkYSBpbXBvcnRhcmUsIHNlIGxvY2FsaXp6YXppb25lIG8gdGVtYVxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBpdGVtIENoaWF2ZSBkZWxsJ29nZ2V0dG8gZGEgaW1wb3J0YXJlXHJcbiAgICogXHJcbiAgICogQHJldHVybnMge1Byb21pc2V9IFByb21pc2UgY2hlIGlkZW50aWZpY2EgbGEgZmluZSBkZWwgY2FyaWNhbWVudG9cclxuICAgKi9cclxuICBpbXBvcnRJZk5lZWRlZCh3aGF0OiAnbGFuZycgfCAndGhlbWVzJywgaXRlbTogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcclxuXHJcbiAgICAvLyBTZSBzdG8gY2VyY2FuZG8gZGkgY2FyaWNhcmUgcXVhbGNvc2EgZGkgZ2nDoCBjYXJpY2F0byBub24gZmFjY2lvIG51bGxhXHJcbiAgICBpZiAoISh3aGF0ID09ICd0aGVtZXMnICYmICF0aGlzLnRoZW1lQ2FjaGVbaXRlbV0pICYmICEod2hhdCA9PSAnbGFuZycgJiYgIXRoaXMubG9jYWxpemF0aW9uQ2FjaGVbaXRlbV0pKSB7XHJcbiAgICAgIHRoaXMubG9nKFwiQ09SRTogXCIgKyAod2hhdCA9PSAnbGFuZycgPyBcIkxhbmd1YWdlIFwiIDogXCJUaGVtZSBcIikgKyBpdGVtICsgXCIgYWxyZWFkeSBsb2FkZWRcIik7XHJcbiAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4geyByZXNvbHZlKHRydWUpIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMubG9nKFwiQ09SRTogTG9hZGluZyBcIiArICh3aGF0ID09ICdsYW5nJyA/IFwibGFuZ3VhZ2UgXCIgOiBcInRoZW1lIFwiKSArIGl0ZW0pO1xyXG5cclxuICAgIC8qXHJcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKioqKioqKiBBVFRFTlpJT05FICoqKioqKioqXHJcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAgICAgKiBcclxuICAgICAqICBTZSBzdGFpIHZlZGVuZG8gcXVlc3RvIGNvZGljZSBkaSBpbXBvcnQgZSBzdGFpIHZhbHV0YW5kbyBkaSByaXNjcml2ZXJsbyBjb21lOlxyXG4gICAgICogXHJcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWICAgICAgIFYgICBcclxuICAgICAqICAgICAgaW1wb3J0KGBAYW1jaGFydHMvYW1jaGFydHM0LyR7d2hhdH0vJHtpdGVtfWApLnRoZW4obW9kdWxlID0+IHtcclxuICAgICAqICAgICAgICBpZiAod2hhdCA9PSAndGhlbWVzJykgdGhpcy50aGVtZUNhY2hlW2l0ZW1dID0gbW9kdWxlLmRlZmF1bHQ7XHJcbiAgICAgKiAgICAgICAgZWxzZSBpZiAod2hhdCA9PSAnbGFuZycpIHRoaXMubG9jYWxpemF0aW9uQ2FjaGVbaXRlbV0gPSBtb2R1bGUuZGVmYXVsdDtcclxuICAgICAqICAgICAgfSk7XHJcbiAgICAgKiBcclxuICAgICAqICBTYXBwaSBjaGUgw6ggdW5hIHBlc3NpbWEgaWRlYS4gR2xpIGltcG9ydCBzb25vIHZhbHV0YXRpIGRhIHdlYnBhY2sgaW4gY29tcGlsZXRpbWUgcGVyIGdlbmVyYXJlIGkgY2h1bmssXHJcbiAgICAgKiAgbWV0dGVyZSBsYSBuYXZpZ2F6aW9uZSBhZ2xpIGltcG9ydCBjb24gbGEgY29uY2F0ZW5hemlvbmUgdmllbmUgcHJlc28gbWFsaXNzaW1vIGVkIGVzc2VuemlhbG1lbnRlIGRpY2UgYSB3ZWJwYWNrXHJcbiAgICAgKiAgZGkgdGlyYXJlIHN1IGUgYnVuZGxhcmUgbCdpbnRlcmEgbm9kZV9tb2R1bGVzLiBEaXZlcnRlbnRlLCBubz9cclxuICAgICAqXHJcbiAgICAgKi9cclxuXHJcbiAgICBzd2l0Y2ggKHdoYXQpIHtcclxuICAgICAgY2FzZSAndGhlbWVzJzpcclxuICAgICAgICBzd2l0Y2ggKGl0ZW0pIHtcclxuICAgICAgICAgIGNhc2UgQ2hhcnRUaGVtZXMuc3Bpcml0ZWRhd2F5OlxyXG4gICAgICAgICAgICByZXR1cm4gaW1wb3J0KFwiQGFtY2hhcnRzL2FtY2hhcnRzNC90aGVtZXMvc3Bpcml0ZWRhd2F5XCIpLnRoZW4odGhlbWUgPT4gdGhpcy50aGVtZUNhY2hlW2l0ZW1dID0gdGhlbWUuZGVmYXVsdCk7XHJcbiAgICAgICAgICBjYXNlIENoYXJ0VGhlbWVzLm1vb25yaXNla2luZ2RvbTpcclxuICAgICAgICAgICAgcmV0dXJuIGltcG9ydChcIkBhbWNoYXJ0cy9hbWNoYXJ0czQvdGhlbWVzL21vb25yaXNla2luZ2RvbVwiKS50aGVuKHRoZW1lID0+IHRoaXMudGhlbWVDYWNoZVtpdGVtXSA9IHRoZW1lLmRlZmF1bHQpO1xyXG4gICAgICAgICAgY2FzZSBDaGFydFRoZW1lcy5mcm96ZW46XHJcbiAgICAgICAgICAgIHJldHVybiBpbXBvcnQoXCJAYW1jaGFydHMvYW1jaGFydHM0L3RoZW1lcy9mcm96ZW5cIikudGhlbih0aGVtZSA9PiB0aGlzLnRoZW1lQ2FjaGVbaXRlbV0gPSB0aGVtZS5kZWZhdWx0KTtcclxuICAgICAgICAgIGNhc2UgQ2hhcnRUaGVtZXMuZGFyazpcclxuICAgICAgICAgICAgcmV0dXJuIGltcG9ydChcIkBhbWNoYXJ0cy9hbWNoYXJ0czQvdGhlbWVzL2RhcmtcIikudGhlbih0aGVtZSA9PiB0aGlzLnRoZW1lQ2FjaGVbaXRlbV0gPSB0aGVtZS5kZWZhdWx0KTtcclxuICAgICAgICAgIGNhc2UgQ2hhcnRUaGVtZXMua2VsbHk6XHJcbiAgICAgICAgICAgIHJldHVybiBpbXBvcnQoXCJAYW1jaGFydHMvYW1jaGFydHM0L3RoZW1lcy9rZWxseVwiKS50aGVuKHRoZW1lID0+IHRoaXMudGhlbWVDYWNoZVtpdGVtXSA9IHRoZW1lLmRlZmF1bHQpO1xyXG4gICAgICAgICAgY2FzZSBDaGFydFRoZW1lcy5tYXRlcmlhbDpcclxuICAgICAgICAgICAgcmV0dXJuIGltcG9ydChcIkBhbWNoYXJ0cy9hbWNoYXJ0czQvdGhlbWVzL21hdGVyaWFsXCIpLnRoZW4odGhlbWUgPT4gdGhpcy50aGVtZUNhY2hlW2l0ZW1dID0gdGhlbWUuZGVmYXVsdCk7XHJcbiAgICAgICAgICBjYXNlIENoYXJ0VGhlbWVzLmRhdGF2aXo6XHJcbiAgICAgICAgICAgIHJldHVybiBpbXBvcnQoXCJAYW1jaGFydHMvYW1jaGFydHM0L3RoZW1lcy9kYXRhdml6XCIpLnRoZW4odGhlbWUgPT4gdGhpcy50aGVtZUNhY2hlW2l0ZW1dID0gdGhlbWUuZGVmYXVsdCk7XHJcbiAgICAgICAgICBjYXNlIENoYXJ0VGhlbWVzLmFuaW1hdGVkOlxyXG4gICAgICAgICAgICByZXR1cm4gaW1wb3J0KFwiQGFtY2hhcnRzL2FtY2hhcnRzNC90aGVtZXMvYW5pbWF0ZWRcIikudGhlbih0aGVtZSA9PiB0aGlzLnRoZW1lQ2FjaGVbaXRlbV0gPSB0aGVtZS5kZWZhdWx0KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2xhbmcnOlxyXG4gICAgICAgIHN3aXRjaCAoaXRlbSkge1xyXG4gICAgICAgICAgY2FzZSAnaXQtSVQnOlxyXG4gICAgICAgICAgICByZXR1cm4gaW1wb3J0KFwiQGFtY2hhcnRzL2FtY2hhcnRzNC9sYW5nL2l0X0lUXCIpLnRoZW4obGFuZyA9PiB0aGlzLmxvY2FsaXphdGlvbkNhY2hlW2l0ZW1dID0gbGFuZy5kZWZhdWx0KTtcclxuICAgICAgICAgIGNhc2UgJ2VuLVVTJzpcclxuICAgICAgICAgICAgcmV0dXJuIGltcG9ydChcIkBhbWNoYXJ0cy9hbWNoYXJ0czQvbGFuZy9lbl9VU1wiKS50aGVuKGxhbmcgPT4gdGhpcy5sb2NhbGl6YXRpb25DYWNoZVtpdGVtXSA9IGxhbmcuZGVmYXVsdCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMubG9nKFwiQ09SRTogTG9hZGluZyBGYWlsZWQuIFwiICsgKHdoYXQgPT0gJ2xhbmcnID8gXCJMYW5ndWFnZSBcIiA6IFwiVGhlbWVcIikgKyBcIiBub3QgcmVjb2duaXplZDogXCIgKyBpdGVtKTtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4geyByZXNvbHZlKHRydWUpIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQGlnbm9yZVxyXG4gICAqL1xyXG4gIGxvZyh0ZXh0OiBzdHJpbmcpIHtcclxuICAgIGlmICh0aGlzLmxvZ3MpXHJcbiAgICAgIGNvbnNvbGUubG9nKFwiQGVzZmFlbnphL2VzLWNoYXJ0czogXCIgKyB0ZXh0KTtcclxuICB9XHJcbn0iXX0=