ngx-histaff-alpha 2.1.7 → 2.1.9

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.
@@ -306,7 +306,7 @@ export class ContractInforComponent extends BaseComponent {
306
306
  }
307
307
  }
308
308
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: ContractInforComponent, deps: [{ token: i1.MultiLanguageService }, { token: i2.RandomAvatarService }, { token: i3.Router }, { token: i3.ActivatedRoute }, { token: i4.OrganizationService }, { token: i5.HttpClient }, { token: i6.AppService }, { token: i7.CorePageListService }, { token: i8.ContractInforService }, { token: i9.AlertService }], target: i0.ɵɵFactoryTarget.Component }); }
309
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: ContractInforComponent, isStandalone: true, selector: "cms-profile-contractinfor", inputs: { hideHeader: "hideHeader" }, viewQueries: [{ propertyName: "sticker", first: true, predicate: ["sticker"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"cms-profile-contractinfor-container\">\r\n <core-page-list\r\n [apiDefinition]=\"apiDefinition\"\r\n [columns]=\"columns\"\r\n [editRoute]=\"editRoute\"\r\n [crud]=\"crud\"\r\n [title]=\"title\"\r\n [left]=\"orgTree\"\r\n [outerParam$]=\"outerParam$\"\r\n [normalMode]=\"true\"\r\n [outerInOperators]=\"outerInOperators\"\r\n [autoResizeWithWindow]=\"true\"\r\n (rowClick)=\"onRowClick($event)\"\r\n [showParamKit]=\"true\"\r\n [datePeriodComparisonFor]=\"datePeriodComparisonFor\"\r\n [datePeriodComparisonForLabelKey]=\"datePeriodComparisonForLabelKey\"\r\n [statusInclusionFor]=\"statusInclusionFor\"\r\n [statusInclusionForLabelKey]=\"statusInclusionForLabelKey\"\r\n [statusOptionsApi]=\"statusOptionsApi\"\r\n [generateTemplateRequest]=\"generateTemplateRequest\"\r\n (corePageHeaderButtonClick)=\"onCorePageHeaderButtonClick($event)\"\r\n [importPreviewPath]=\"'contract-import'\"\r\n [outerSort]=\"outerSort\"\r\n [frozen]=\"3\"\r\n\r\n (selectedIdsChange)=\"customizeSelectedIdsChange($event)\"\r\n (onInstanceCreated)=\"onInstanceCreated($event)\"\r\n >\r\n </core-page-list>\r\n\r\n <ng-template #orgTree>\r\n <core-org-tree [(ngModel)]=\"orgIds\" (ngModelChange)=\"onOrgIdsChange($event)\">\r\n </core-org-tree>\r\n </ng-template>\r\n\r\n <ng-template #sticker let-code=\"context.statusName\">\r\n <core-status-sticker [code]=\"code\"></core-status-sticker>\r\n </ng-template>\r\n</div>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i10.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i10.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: CorePageListComponent, selector: "core-page-list", inputs: ["normalMode", "hideHeader", "hideButtonGroup", "seekerMode", "mccMode", "height", "headerWrap", "headerFirstRowHeight", "enableTimeZoneConverterForDateTimePeriodParameters", "showParamKit", "datePeriodComparisonFor", "datePeriodComparisonForLabelKey", "statusInclusionFor", "statusInclusionForLabelKey", "statusOptionsApi", "hideDatePeriodComparison", "hideStatusInclusion", "title", "hasIdOfStringType", "hideCheck", "apiDefinition", "columns", "frozen", "inlineTools", "inlineToolItems", "editRoute", "crud", "showListInlineTools", "top", "left", "hideLeft", "outerParam$", "outerSort", "outerFilterOperators", "outerInOperators", "autoResizeWithWindow", "extraManualOffset", "wrap", "rowHeight", "selfResolveCorePageHeaderButtonClick", "clearData$", "deleteValidateFn", "generateTemplateRequest", "importPreviewPath", "columnSearchDefaultOpen", "fixedPageSize", "disableDoubleClick", "noPaddingCell", "disableHighlightOnClick", "loading$"], outputs: ["corePageHeaderButtonClick", "rowClick", "rowDoubleClick", "selectedIdsChange", "selectedDataChange", "onInstanceCreated", "onInputFileBase64DataReady"] }, { kind: "component", type: CoreOrgTreeComponent, selector: "core-org-tree", inputs: ["lineColor", "fullWidthMode", "accessorMode", "fullRendering", "height", "disabledLoopExpand", "showCheckInheritance"], outputs: ["itemDoubleClick", "itemClick"] }, { kind: "component", type: CoreStatusStickerComponent, selector: "core-status-sticker", inputs: ["code"] }] }); }
309
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: ContractInforComponent, isStandalone: true, selector: "cms-profile-contractinfor", inputs: { hideHeader: "hideHeader" }, viewQueries: [{ propertyName: "sticker", first: true, predicate: ["sticker"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"cms-profile-contractinfor-container\">\r\n <core-page-list\r\n [apiDefinition]=\"apiDefinition\"\r\n [columns]=\"columns\"\r\n [editRoute]=\"editRoute\"\r\n [crud]=\"crud\"\r\n [title]=\"title\"\r\n [left]=\"orgTree\"\r\n [outerParam$]=\"outerParam$\"\r\n [normalMode]=\"true\"\r\n [outerInOperators]=\"outerInOperators\"\r\n [autoResizeWithWindow]=\"true\"\r\n (rowClick)=\"onRowClick($event)\"\r\n [showParamKit]=\"true\"\r\n [datePeriodComparisonFor]=\"datePeriodComparisonFor\"\r\n [datePeriodComparisonForLabelKey]=\"datePeriodComparisonForLabelKey\"\r\n [statusInclusionFor]=\"statusInclusionFor\"\r\n [statusInclusionForLabelKey]=\"statusInclusionForLabelKey\"\r\n [statusOptionsApi]=\"statusOptionsApi\"\r\n [generateTemplateRequest]=\"generateTemplateRequest\"\r\n (corePageHeaderButtonClick)=\"onCorePageHeaderButtonClick($event)\"\r\n [importPreviewPath]=\"'contract-import'\"\r\n [outerSort]=\"outerSort\"\r\n [frozen]=\"3\"\r\n\r\n (selectedIdsChange)=\"customizeSelectedIdsChange($event)\"\r\n (onInstanceCreated)=\"onInstanceCreated($event)\"\r\n >\r\n </core-page-list>\r\n\r\n <ng-template #orgTree>\r\n <core-org-tree [(ngModel)]=\"orgIds\" (ngModelChange)=\"onOrgIdsChange($event)\">\r\n </core-org-tree>\r\n </ng-template>\r\n\r\n <ng-template #sticker let-code=\"context.statusName\">\r\n <core-status-sticker [code]=\"code\"></core-status-sticker>\r\n </ng-template>\r\n</div>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i10.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i10.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: CorePageListComponent, selector: "core-page-list", inputs: ["normalMode", "hideHeader", "hideButtonGroup", "seekerMode", "mccMode", "height", "headerWrap", "headerFirstRowHeight", "enableTimeZoneConverterForDateTimePeriodParameters", "showParamKit", "datePeriodComparisonFor", "datePeriodComparisonForLabelKey", "statusInclusionFor", "statusInclusionForLabelKey", "statusOptionsApi", "hideDatePeriodComparison", "hideStatusInclusion", "title", "hasIdOfStringType", "hideCheck", "apiDefinition", "columns", "frozen", "inlineTools", "inlineToolItems", "editRoute", "crud", "showListInlineTools", "top", "left", "hideLeft", "outerParam$", "outerSort", "outerFilterOperators", "outerInOperators", "autoResizeWithWindow", "extraManualOffset", "wrap", "rowHeight", "selfResolveCorePageHeaderButtonClick", "clearData$", "deleteValidateFn", "generateTemplateRequest", "importPreviewPath", "columnSearchDefaultOpen", "fixedPageSize", "disableDoubleClick", "noPaddingCell", "disableHighlightOnClick", "loading$"], outputs: ["corePageHeaderButtonClick", "rowClick", "rowDoubleClick", "selectedIdsChange", "selectedDataChange", "onInstanceCreated", "onInputFileBase64DataReady"] }, { kind: "component", type: CoreOrgTreeComponent, selector: "core-org-tree", inputs: ["lineColor", "fullWidthMode", "accessorMode", "fullRendering", "height", "disabledLoopExpand", "showCheckInheritance"], outputs: ["itemDoubleClick", "itemClick"] }, { kind: "component", type: CoreStatusStickerComponent, selector: "core-status-sticker", inputs: ["code", "isTrueCode"] }] }); }
310
310
  }
311
311
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: ContractInforComponent, decorators: [{
312
312
  type: Component,
@@ -122,7 +122,7 @@ export class CorePositionSeekerComponent extends PositionComponent {
122
122
  });
123
123
  }
124
124
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: CorePositionSeekerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
125
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: CorePositionSeekerComponent, isStandalone: true, selector: "core-position-seeker", inputs: { multiMode: "multiMode", preDefinedOuterParam$: "preDefinedOuterParam$", seekerVerifyIgnore: "seekerVerifyIgnore" }, outputs: { rowDoubleClick: "rowDoubleClick", selectedIdsChange: "selectedIdsChange", selectedDataChange: "selectedDataChange", columnsInit: "columnsInit" }, usesInheritance: true, ngImport: i0, template: "<div class=\"core-position-seeker-container\">\r\n <core-page-list [hideCheck]=\"!!!multiMode\" [height]=\"corePageListHeight\" [apiDefinition]=\"apiDefinition\"\r\n [columns]=\"columns\" [editRoute]=\"editRoute\" [crud]=\"crud\" [title]=\"title\" [left]=\"orgTree\"\r\n [outerParam$]=\"outerParam$\" [fixedPageSize]=\"50\" [outerInOperators]=\"outerInOperators\"\r\n [outerFilterOperators]=\"outerFilterOperators\" [autoResizeWithWindow]=\"true\" [seekerMode]=\"true\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (selectedIdsChange)=\"onSelectedIdsChange($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\"></core-page-list>\r\n\r\n <ng-template #orgTree>\r\n <core-org-tree [(ngModel)]=\"orgIds\" [height]=\"650\" (ngModelChange)=\"onOrgIdsChange($event)\"\r\n [fullWidthMode]=\"false\">\r\n </core-org-tree>\r\n </ng-template>\r\n\r\n <ng-template #sticker let-code=\"context.active\">\r\n <core-status-sticker [code]=\"code\"></core-status-sticker>\r\n </ng-template>\r\n\r\n <ng-template #isTDV let-isTDV=\"context.isTDV\">\r\n <core-checkbox [disabled]=\"true\" [inputValue]=\"isTDV\"></core-checkbox>\r\n </ng-template>\r\n\r\n <ng-template #isNotot let-isNotot=\"context.isNotot\">\r\n <core-checkbox [disabled]=\"true\" [inputValue]=\"isNotot\"></core-checkbox>\r\n </ng-template>\r\n\r\n <ng-template #concurrentStatus let-concurrentStatus=\"context.isMaster\">\r\n <core-checkbox [disabled]=\"true\" [inputValue]=\"concurrentStatus\"></core-checkbox>\r\n </ng-template>\r\n\r\n</div>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: CoreOrgTreeComponent, selector: "core-org-tree", inputs: ["lineColor", "fullWidthMode", "accessorMode", "fullRendering", "height", "disabledLoopExpand", "showCheckInheritance"], outputs: ["itemDoubleClick", "itemClick"] }, { kind: "component", type: CorePageListComponent, selector: "core-page-list", inputs: ["normalMode", "hideHeader", "hideButtonGroup", "seekerMode", "mccMode", "height", "headerWrap", "headerFirstRowHeight", "enableTimeZoneConverterForDateTimePeriodParameters", "showParamKit", "datePeriodComparisonFor", "datePeriodComparisonForLabelKey", "statusInclusionFor", "statusInclusionForLabelKey", "statusOptionsApi", "hideDatePeriodComparison", "hideStatusInclusion", "title", "hasIdOfStringType", "hideCheck", "apiDefinition", "columns", "frozen", "inlineTools", "inlineToolItems", "editRoute", "crud", "showListInlineTools", "top", "left", "hideLeft", "outerParam$", "outerSort", "outerFilterOperators", "outerInOperators", "autoResizeWithWindow", "extraManualOffset", "wrap", "rowHeight", "selfResolveCorePageHeaderButtonClick", "clearData$", "deleteValidateFn", "generateTemplateRequest", "importPreviewPath", "columnSearchDefaultOpen", "fixedPageSize", "disableDoubleClick", "noPaddingCell", "disableHighlightOnClick", "loading$"], outputs: ["corePageHeaderButtonClick", "rowClick", "rowDoubleClick", "selectedIdsChange", "selectedDataChange", "onInstanceCreated", "onInputFileBase64DataReady"] }, { kind: "component", type: CoreStatusStickerComponent, selector: "core-status-sticker", inputs: ["code"] }, { kind: "component", type: CoreCheckboxComponent, selector: "core-checkbox", inputs: ["text", "tooltipPosition", "tooltip", "inputValue", "disabled"], outputs: ["onClick"] }] }); }
125
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: CorePositionSeekerComponent, isStandalone: true, selector: "core-position-seeker", inputs: { multiMode: "multiMode", preDefinedOuterParam$: "preDefinedOuterParam$", seekerVerifyIgnore: "seekerVerifyIgnore" }, outputs: { rowDoubleClick: "rowDoubleClick", selectedIdsChange: "selectedIdsChange", selectedDataChange: "selectedDataChange", columnsInit: "columnsInit" }, usesInheritance: true, ngImport: i0, template: "<div class=\"core-position-seeker-container\">\r\n <core-page-list [hideCheck]=\"!!!multiMode\" [height]=\"corePageListHeight\" [apiDefinition]=\"apiDefinition\"\r\n [columns]=\"columns\" [editRoute]=\"editRoute\" [crud]=\"crud\" [title]=\"title\" [left]=\"orgTree\"\r\n [outerParam$]=\"outerParam$\" [fixedPageSize]=\"50\" [outerInOperators]=\"outerInOperators\"\r\n [outerFilterOperators]=\"outerFilterOperators\" [autoResizeWithWindow]=\"true\" [seekerMode]=\"true\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (selectedIdsChange)=\"onSelectedIdsChange($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\"></core-page-list>\r\n\r\n <ng-template #orgTree>\r\n <core-org-tree [(ngModel)]=\"orgIds\" [height]=\"650\" (ngModelChange)=\"onOrgIdsChange($event)\"\r\n [fullWidthMode]=\"false\">\r\n </core-org-tree>\r\n </ng-template>\r\n\r\n <ng-template #sticker let-code=\"context.active\">\r\n <core-status-sticker [code]=\"code\"></core-status-sticker>\r\n </ng-template>\r\n\r\n <ng-template #isTDV let-isTDV=\"context.isTDV\">\r\n <core-checkbox [disabled]=\"true\" [inputValue]=\"isTDV\"></core-checkbox>\r\n </ng-template>\r\n\r\n <ng-template #isNotot let-isNotot=\"context.isNotot\">\r\n <core-checkbox [disabled]=\"true\" [inputValue]=\"isNotot\"></core-checkbox>\r\n </ng-template>\r\n\r\n <ng-template #concurrentStatus let-concurrentStatus=\"context.isMaster\">\r\n <core-checkbox [disabled]=\"true\" [inputValue]=\"concurrentStatus\"></core-checkbox>\r\n </ng-template>\r\n\r\n</div>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: CoreOrgTreeComponent, selector: "core-org-tree", inputs: ["lineColor", "fullWidthMode", "accessorMode", "fullRendering", "height", "disabledLoopExpand", "showCheckInheritance"], outputs: ["itemDoubleClick", "itemClick"] }, { kind: "component", type: CorePageListComponent, selector: "core-page-list", inputs: ["normalMode", "hideHeader", "hideButtonGroup", "seekerMode", "mccMode", "height", "headerWrap", "headerFirstRowHeight", "enableTimeZoneConverterForDateTimePeriodParameters", "showParamKit", "datePeriodComparisonFor", "datePeriodComparisonForLabelKey", "statusInclusionFor", "statusInclusionForLabelKey", "statusOptionsApi", "hideDatePeriodComparison", "hideStatusInclusion", "title", "hasIdOfStringType", "hideCheck", "apiDefinition", "columns", "frozen", "inlineTools", "inlineToolItems", "editRoute", "crud", "showListInlineTools", "top", "left", "hideLeft", "outerParam$", "outerSort", "outerFilterOperators", "outerInOperators", "autoResizeWithWindow", "extraManualOffset", "wrap", "rowHeight", "selfResolveCorePageHeaderButtonClick", "clearData$", "deleteValidateFn", "generateTemplateRequest", "importPreviewPath", "columnSearchDefaultOpen", "fixedPageSize", "disableDoubleClick", "noPaddingCell", "disableHighlightOnClick", "loading$"], outputs: ["corePageHeaderButtonClick", "rowClick", "rowDoubleClick", "selectedIdsChange", "selectedDataChange", "onInstanceCreated", "onInputFileBase64DataReady"] }, { kind: "component", type: CoreStatusStickerComponent, selector: "core-status-sticker", inputs: ["code", "isTrueCode"] }, { kind: "component", type: CoreCheckboxComponent, selector: "core-checkbox", inputs: ["text", "tooltipPosition", "tooltip", "inputValue", "disabled"], outputs: ["onClick"] }] }); }
126
126
  }
127
127
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: CorePositionSeekerComponent, decorators: [{
128
128
  type: Component,
@@ -149,4 +149,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
149
149
  }], columnsInit: [{
150
150
  type: Output
151
151
  }] } });
152
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1wb3NpdGlvbi1zZWVrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWhpc3RhZmYtYWxwaGEvc3JjL2xpYi9hcHAvbGlicmFyaWVzL2NvcmUtcG9zaXRpb24tc2Vla2VyL2NvcmUtcG9zaXRpb24tc2Vla2VyL2NvcmUtcG9zaXRpb24tc2Vla2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1oaXN0YWZmLWFscGhhL3NyYy9saWIvYXBwL2xpYnJhcmllcy9jb3JlLXBvc2l0aW9uLXNlZWtlci9jb3JlLXBvc2l0aW9uLXNlZWtlci9jb3JlLXBvc2l0aW9uLXNlZWtlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDZFQUE2RSxDQUFDO0FBQ3pILE9BQU8sRUFB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WixXQUFXLCtWQUNYLG9CQUFvQixzT0FDcEIscUJBQXFCLHdwQ0FDckIsMEJBQTBCLGtGQUMxQixxQkFBcUI7OzJGQUtaLDJCQUEyQjtrQkFkdkMsU0FBUzsrQkFDRSxzQkFBc0IsY0FDcEIsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxvQkFBb0I7d0JBQ3BCLHFCQUFxQjt3QkFDckIsMEJBQTBCO3dCQUMxQixxQkFBcUI7cUJBQ3RCOzhCQVVRLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0cscUJBQXFCO3NCQUE3QixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFFSSxjQUFjO3NCQUF2QixNQUFNO2dCQUNHLGlCQUFpQjtzQkFBMUIsTUFBTTtnQkFDRyxrQkFBa0I7c0JBQTNCLE1BQU07Z0JBQ0csV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBmaWx0ZXIgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgRW51bVRyYW5zbGF0ZUtleSB9IGZyb20gXCJhbHBoYS1nbG9iYWwtY29uc3RhbnRzXCI7XHJcbmltcG9ydCB7IGFwaSB9IGZyb20gXCJhbHBoYS1nbG9iYWwtY29uc3RhbnRzXCI7XHJcbmltcG9ydCB7IElGb3JtYXRlZFJlc3BvbnNlIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcy9JRm9ybWF0ZWRSZXNwb25zZSc7XHJcbmltcG9ydCB7IFBvc2l0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcG9zaXRpb24vcG9zaXRpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IENvcmVPcmdUcmVlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29yZS1vcmctdHJlZS9jb3JlLW9yZy10cmVlL2NvcmUtb3JnLXRyZWUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29yZVBhZ2VMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29yZS1wYWdlLWxpc3QvY29yZS1wYWdlLWxpc3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29yZVN0YXR1c1N0aWNrZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb3JlLXN0YXR1cy1zdGlja2VyL2NvcmUtc3RhdHVzLXN0aWNrZXIvY29yZS1zdGF0dXMtc3RpY2tlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFbnVtRmlsdGVyT3BlcmF0b3IsIElGaWx0ZXJPcGVyYXRvciB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMvSVF1ZXJ5TGlzdFJlcXVlc3QnO1xyXG5pbXBvcnQgeyBDb3JlQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb3JlLWNoZWNrYm94L2NvcmUtY2hlY2tib3gvY29yZS1jaGVja2JveC5jb21wb25lbnQnO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY29yZS1wb3NpdGlvbi1zZWVrZXInLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBDb3JlT3JnVHJlZUNvbXBvbmVudCxcclxuICAgIENvcmVQYWdlTGlzdENvbXBvbmVudCxcclxuICAgIENvcmVTdGF0dXNTdGlja2VyQ29tcG9uZW50LFxyXG4gICAgQ29yZUNoZWNrYm94Q29tcG9uZW50LFxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NvcmUtcG9zaXRpb24tc2Vla2VyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jb3JlLXBvc2l0aW9uLXNlZWtlci5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29yZVBvc2l0aW9uU2Vla2VyQ29tcG9uZW50IGV4dGVuZHMgUG9zaXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBvdmVycmlkZSB0aXRsZSA9IEVudW1UcmFuc2xhdGVLZXkuVUlfQ09NUE9ORU5UX1RJVExFX1BPU0lUSU9OX1NFRUtFUjtcclxuXHJcbiAgY29yZVBhZ2VMaXN0SGVpZ2h0ID0gODAwO1xyXG5cclxuICBASW5wdXQoKSBtdWx0aU1vZGUhOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHByZURlZmluZWRPdXRlclBhcmFtJCE6IEJlaGF2aW9yU3ViamVjdDxhbnk+O1xyXG4gIEBJbnB1dCgpIHNlZWtlclZlcmlmeUlnbm9yZSE6IGJvb2xlYW47XHJcblxyXG4gIEBPdXRwdXQoKSByb3dEb3VibGVDbGljayA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgc2VsZWN0ZWRJZHNDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIHNlbGVjdGVkRGF0YUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgY29sdW1uc0luaXQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG5cclxuICBkaWFsb2dJbnN0YW5jZU51bWJlciE6IG51bWJlcjtcclxuICBwZW5kaW5nRGF0YTogYW55O1xyXG5cclxuICBvdmVycmlkZSBvdXRlclBhcmFtJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8YW55Pih7IGlzQWN0aXZlOiB0cnVlIH0pO1xyXG4gIG92ZXJyaWRlIG91dGVyRmlsdGVyT3BlcmF0b3JzOiBJRmlsdGVyT3BlcmF0b3JbXSA9IFtcclxuICAgIHtcclxuICAgICAgZmllbGQ6ICdvcmdJZCcsXHJcbiAgICAgIG9wZXJhdG9yOiBFbnVtRmlsdGVyT3BlcmF0b3IuRVFVQUwsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBmaWVsZDogJ2lzQWN0aXZlJyxcclxuICAgICAgb3BlcmF0b3I6IEVudW1GaWx0ZXJPcGVyYXRvci5FUVVBTCxcclxuICAgIH1cclxuICBdO1xyXG5cclxuXHJcbiAgb3ZlcnJpZGUgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuICAgICAgdGhpcy5tbHMubGFuZyQuc3Vic2NyaWJlKHggPT4gdGhpcy5sYW5nID0geClcclxuICAgIClcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICB0aGlzLnByZURlZmluZWRPdXRlclBhcmFtJD8uc3Vic2NyaWJlKHggPT4ge1xyXG4gICAgICAgIGlmICh0aGlzLm91dGVyUGFyYW0kLnZhbHVlID09PSBudWxsKSB7XHJcbiAgICAgICAgICB0aGlzLm91dGVyUGFyYW0kLm5leHQoeCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMub3V0ZXJQYXJhbSQubmV4dCh7XHJcbiAgICAgICAgICAgIC4uLnRoaXMub3V0ZXJQYXJhbSQudmFsdWUsXHJcbiAgICAgICAgICAgIC4uLnhcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICAgIClcclxuXHJcbiAgICB0aGlzLmNvbHVtbnNJbml0LmVtaXQodGhpcy5jb2x1bW5zKTtcclxuXHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICAvLyB0cm9uZyBuZ0FmdGVyVmlld0luaXQgbuG6v3UgbXXhu5FuIHRoYXkgxJHhu5VpIHRodeG7mWMgdMOtbmggY+G7p2EgdHMgY+G6p24gZ8OzaSB2w6BvIHNldFRpbWVvdXRcclxuXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5jb2x1bW5zLmZpbHRlcigoYykgPT4gYy5maWVsZCA9PT0gJ2lzVERWJylbMF0udGVtcGxhdGVSZWYgPSB0aGlzLmlzVERWO1xyXG4gICAgICB0aGlzLmNvbHVtbnMuZmlsdGVyKChjKSA9PiBjLmZpZWxkID09PSAnaXNOb3RvdCcpWzBdLnRlbXBsYXRlUmVmID0gdGhpcy5pc05vdG90O1xyXG4gICAgICB0aGlzLmNvbHVtbnMuZmlsdGVyKChjKSA9PiBjLmZpZWxkID09PSAnaXNNYXN0ZXInKVswXS50ZW1wbGF0ZVJlZiA9IHRoaXMuY29uY3VycmVudFN0YXR1cztcclxuXHJcbiAgICAgIGNvbnN0IHN0aWNrZXJGaWx0ZXIgPSB0aGlzLmNvbHVtbnMuZmlsdGVyKGMgPT4gYy5maWVsZCA9PT0gJ2FjdGl2ZScpO1xyXG4gICAgICBpZiAoISFzdGlja2VyRmlsdGVyLmxlbmd0aCkgc3RpY2tlckZpbHRlclswXS50ZW1wbGF0ZVJlZiA9IHRoaXMuc3RpY2tlcjtcclxuXHJcblxyXG4gICAgICAvLyB0aGlzLmNvbHVtbnMuZmlsdGVyKGMgPT4gYy5maWVsZCA9PT0gJ2lzcGxhbicpWzBdLnRlbXBsYXRlUmVmID0gdGhpcy5pc3BsYW47XHJcbiAgICAgIC8vIHRoaXMuY29sdW1ucy5maWx0ZXIoYyA9PiBjLmZpZWxkID09PSAnaXNub25waHlzaWNhbCcpWzBdLnRlbXBsYXRlUmVmID0gdGhpcy5pc25vbnBoeXNpY2FsO1xyXG5cclxuICAgICAgaWYgKHdpbmRvdy5pbm5lckhlaWdodCAtIDEwMCA8IDgwMCkge1xyXG4gICAgICAgIHRoaXMuY29yZVBhZ2VMaXN0SGVpZ2h0ID0gd2luZG93LmlubmVySGVpZ2h0IC0gMTAwXHJcbiAgICAgIH1cclxuXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG5cclxuICBvblJvd0RvdWJsZUNsaWNrKGU6IGFueSkge1xyXG5cclxuICAgIGlmICghdGhpcy5zZWVrZXJWZXJpZnlJZ25vcmUpIHtcclxuXHJcbiAgICAgIHRoaXMucGVuZGluZ0RhdGEgPSBlXHJcbiAgICAgIGlmIChlLm1hc3RlciAhPSBudWxsKSB7XHJcbiAgICAgICAgaWYgKCEhIWUuaW50ZXJpbSkge1xyXG4gICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXHJcbiAgICAgICAgICAgIHRoaXMuYXBwU2VydmljZS5nZXQoYXBpLkhVX0VNUExPWUVFX0NIRUNLX1BPU0lUSU9OX01BU1RFUl9JTlRFUklNICsgZS5pZCkuc3Vic2NyaWJlKCh4OiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICBpZiAoeC5zdGF0dXMgPT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBib2R5OiBJRm9ybWF0ZWRSZXNwb25zZSA9IHguYm9keTtcclxuICAgICAgICAgICAgICAgIGlmICghIWJvZHkuaW5uZXJCb2R5KSB7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5idXN5ID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLnRpdGxlJC5uZXh0KEVudW1UcmFuc2xhdGVLZXkuVUlfQ09SRV9DT05GSVJNX0RJQUxPR19USVRMRSk7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5ib2R5JC5uZXh0KEVudW1UcmFuc2xhdGVLZXkuVUlfQ09SRV9DT05GSVJNX0RJQUxPR19QT1NJVE9OX0hBVkVfTUFTVEVSKTtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLm9rQnV0dG9uVGV4dCQubmV4dChFbnVtVHJhbnNsYXRlS2V5LlVJX0NPUkVfQ09ORklSTV9ESUFMT0dfQlVUVE9OX0NPTkZJUk0pO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UuY2FuY2VsQnV0dG9uVGV4dCQubmV4dChFbnVtVHJhbnNsYXRlS2V5LlVJX0NPUkVfQ09ORklSTV9ESUFMT0dfQlVUVE9OX0dPX0JBQ0tfVE9fRURJVF9GT1JNKTtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLnNob3dDb25maXJtRGlhbG9nJC5uZXh0KHRydWUpO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UuZGlhbG9nQ29uZmlybWVkJC5waXBlKFxyXG4gICAgICAgICAgICAgICAgICAgIGZpbHRlcih4ID0+ICEhIXRoaXMuZGlhbG9nU2VydmljZS5idXN5ICYmICEheD8uY29uZmlybWVkICYmIHguaW5zdGFuY2VOdW1iZXIgPT09IHRoaXMuZGlhbG9nSW5zdGFuY2VOdW1iZXIpXHJcbiAgICAgICAgICAgICAgICAgICkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UucmVzZXRTZXJ2aWNlKClcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnJvd0RvdWJsZUNsaWNrLmVtaXQodGhpcy5wZW5kaW5nRGF0YSlcclxuICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5idXN5ID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLnRpdGxlJC5uZXh0KEVudW1UcmFuc2xhdGVLZXkuVUlfQ09SRV9DT05GSVJNX0RJQUxPR19USVRMRSk7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5ib2R5JC5uZXh0KEVudW1UcmFuc2xhdGVLZXkuVUlfQ09SRV9DT05GSVJNX0RJQUxPR19QT1NJVE9OX0NBTl9OT1RfU1RBRkYpO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UuY2FuY2VsQnV0dG9uVGV4dCQubmV4dChFbnVtVHJhbnNsYXRlS2V5LlVJX0NPUkVfQ09ORklSTV9ESUFMT0dfQlVUVE9OX0dPX0JBQ0tfVE9fRURJVF9GT1JNKTtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLnNob3dDYW5jZWxPbmx5JC5uZXh0KHRydWUpO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2Uuc2hvd0NvbmZpcm1EaWFsb2ckLm5leHQodHJ1ZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgKVxyXG4gIFxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgXHJcbiAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UuYnVzeSA9IHRydWU7XHJcbiAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2Uuc2hvd0NvbmZpcm1EaWFsb2ckLm5leHQodHJ1ZSk7XHJcbiAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UudGl0bGUkLm5leHQoRW51bVRyYW5zbGF0ZUtleS5VSV9DT1JFX0NPTkZJUk1fRElBTE9HX1RJVExFKTtcclxuICAgICAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5ib2R5JC5uZXh0KEVudW1UcmFuc2xhdGVLZXkuVUlfQ09SRV9DT05GSVJNX0RJQUxPR19QT1NJVE9OX0NBTl9OT1RfU1RBRkYpO1xyXG4gICAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLmNhbmNlbEJ1dHRvblRleHQkLm5leHQoRW51bVRyYW5zbGF0ZUtleS5VSV9DT1JFX0NPTkZJUk1fRElBTE9HX0JVVFRPTl9HT19CQUNLX1RPX0VESVRfRk9STSk7XHJcbiAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2Uuc2hvd0NhbmNlbE9ubHkkLm5leHQodHJ1ZSk7XHJcbiAgXHJcbiAgICAgICAgfVxyXG4gIFxyXG4gICAgICB9IGVsc2Uge1xyXG4gIFxyXG4gICAgICAgIHRoaXMucm93RG91YmxlQ2xpY2suZW1pdChlKVxyXG4gIFxyXG4gICAgICB9XHJcblxyXG4gICAgfSBlbHNlIHtcclxuXHJcbiAgICAgIHRoaXMucm93RG91YmxlQ2xpY2suZW1pdChlKVxyXG5cclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBvblNlbGVjdGVkSWRzQ2hhbmdlKGU6IGFueSkge1xyXG4gICAgdGhpcy5zZWxlY3RlZElkc0NoYW5nZS5lbWl0KGUpXHJcbiAgfVxyXG5cclxuICBvblNlbGVjdGVkRGF0YUNoYW5nZShlOiBhbnlbXSkge1xyXG4gICAgdGhpcy5zZWxlY3RlZERhdGFDaGFuZ2UuZW1pdCh7XHJcbiAgICAgIGNvbHVtbnM6IHRoaXMuY29sdW1ucyxcclxuICAgICAgZGF0YTogZVxyXG4gICAgfSlcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjb3JlLXBvc2l0aW9uLXNlZWtlci1jb250YWluZXJcIj5cclxuICAgIDxjb3JlLXBhZ2UtbGlzdCBbaGlkZUNoZWNrXT1cIiEhIW11bHRpTW9kZVwiIFtoZWlnaHRdPVwiY29yZVBhZ2VMaXN0SGVpZ2h0XCIgW2FwaURlZmluaXRpb25dPVwiYXBpRGVmaW5pdGlvblwiXHJcbiAgICAgICAgW2NvbHVtbnNdPVwiY29sdW1uc1wiIFtlZGl0Um91dGVdPVwiZWRpdFJvdXRlXCIgW2NydWRdPVwiY3J1ZFwiIFt0aXRsZV09XCJ0aXRsZVwiIFtsZWZ0XT1cIm9yZ1RyZWVcIlxyXG4gICAgICAgIFtvdXRlclBhcmFtJF09XCJvdXRlclBhcmFtJFwiIFtmaXhlZFBhZ2VTaXplXT1cIjUwXCIgW291dGVySW5PcGVyYXRvcnNdPVwib3V0ZXJJbk9wZXJhdG9yc1wiXHJcbiAgICAgICAgW291dGVyRmlsdGVyT3BlcmF0b3JzXT1cIm91dGVyRmlsdGVyT3BlcmF0b3JzXCIgW2F1dG9SZXNpemVXaXRoV2luZG93XT1cInRydWVcIiBbc2Vla2VyTW9kZV09XCJ0cnVlXCJcclxuICAgICAgICAocm93RG91YmxlQ2xpY2spPVwib25Sb3dEb3VibGVDbGljaygkZXZlbnQpXCIgKHNlbGVjdGVkSWRzQ2hhbmdlKT1cIm9uU2VsZWN0ZWRJZHNDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgKHNlbGVjdGVkRGF0YUNoYW5nZSk9XCJvblNlbGVjdGVkRGF0YUNoYW5nZSgkZXZlbnQpXCI+PC9jb3JlLXBhZ2UtbGlzdD5cclxuXHJcbiAgICA8bmctdGVtcGxhdGUgI29yZ1RyZWU+XHJcbiAgICAgICAgPGNvcmUtb3JnLXRyZWUgWyhuZ01vZGVsKV09XCJvcmdJZHNcIiBbaGVpZ2h0XT1cIjY1MFwiIChuZ01vZGVsQ2hhbmdlKT1cIm9uT3JnSWRzQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICBbZnVsbFdpZHRoTW9kZV09XCJmYWxzZVwiPlxyXG4gICAgICAgIDwvY29yZS1vcmctdHJlZT5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgPG5nLXRlbXBsYXRlICNzdGlja2VyIGxldC1jb2RlPVwiY29udGV4dC5hY3RpdmVcIj5cclxuICAgICAgICA8Y29yZS1zdGF0dXMtc3RpY2tlciBbY29kZV09XCJjb2RlXCI+PC9jb3JlLXN0YXR1cy1zdGlja2VyPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICA8bmctdGVtcGxhdGUgI2lzVERWIGxldC1pc1REVj1cImNvbnRleHQuaXNURFZcIj5cclxuICAgICAgICA8Y29yZS1jaGVja2JveCBbZGlzYWJsZWRdPVwidHJ1ZVwiIFtpbnB1dFZhbHVlXT1cImlzVERWXCI+PC9jb3JlLWNoZWNrYm94PlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICA8bmctdGVtcGxhdGUgI2lzTm90b3QgbGV0LWlzTm90b3Q9XCJjb250ZXh0LmlzTm90b3RcIj5cclxuICAgICAgICA8Y29yZS1jaGVja2JveCBbZGlzYWJsZWRdPVwidHJ1ZVwiIFtpbnB1dFZhbHVlXT1cImlzTm90b3RcIj48L2NvcmUtY2hlY2tib3g+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgIDxuZy10ZW1wbGF0ZSAjY29uY3VycmVudFN0YXR1cyBsZXQtY29uY3VycmVudFN0YXR1cz1cImNvbnRleHQuaXNNYXN0ZXJcIj5cclxuICAgICAgICA8Y29yZS1jaGVja2JveCBbZGlzYWJsZWRdPVwidHJ1ZVwiIFtpbnB1dFZhbHVlXT1cImNvbmN1cnJlbnRTdGF0dXNcIj48L2NvcmUtY2hlY2tib3g+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuPC9kaXY+Il19
152
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1wb3NpdGlvbi1zZWVrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWhpc3RhZmYtYWxwaGEvc3JjL2xpYi9hcHAvbGlicmFyaWVzL2NvcmUtcG9zaXRpb24tc2Vla2VyL2NvcmUtcG9zaXRpb24tc2Vla2VyL2NvcmUtcG9zaXRpb24tc2Vla2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1oaXN0YWZmLWFscGhhL3NyYy9saWIvYXBwL2xpYnJhcmllcy9jb3JlLXBvc2l0aW9uLXNlZWtlci9jb3JlLXBvc2l0aW9uLXNlZWtlci9jb3JlLXBvc2l0aW9uLXNlZWtlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDZFQUE2RSxDQUFDO0FBQ3pILE9BQU8sRUFBRSxrQkFBa0IsRUFBbUIsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyREFBMkQsQ0FBQzs7O0FBaUJsRyxNQUFNLE9BQU8sMkJBQTRCLFNBQVEsaUJBQWlCO0lBZGxFOztRQWdCVyxVQUFLLEdBQUcsZ0JBQWdCLENBQUMsa0NBQWtDLENBQUM7UUFFckUsdUJBQWtCLEdBQUcsR0FBRyxDQUFDO1FBTWYsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3BDLHNCQUFpQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDdkMsdUJBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN4QyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFNbEMsZ0JBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBTSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzNELHlCQUFvQixHQUFzQjtZQUNqRDtnQkFDRSxLQUFLLEVBQUUsT0FBTztnQkFDZCxRQUFRLEVBQUUsa0JBQWtCLENBQUMsS0FBSzthQUNuQztZQUNEO2dCQUNFLEtBQUssRUFBRSxVQUFVO2dCQUNqQixRQUFRLEVBQUUsa0JBQWtCLENBQUMsS0FBSzthQUNuQztTQUNGLENBQUM7S0F1SEg7SUFwSFUsUUFBUTtRQUNmLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUNyQixJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUM3QyxDQUFBO1FBQ0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQ3JCLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDeEMsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssS0FBSyxJQUFJLEVBQUU7Z0JBQ25DLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQzFCO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO29CQUNwQixHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSztvQkFDekIsR0FBRyxDQUFDO2lCQUNMLENBQUMsQ0FBQzthQUNKO1FBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQTtRQUVELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUV0QyxDQUFDO0lBRVEsZUFBZTtRQUN0QixtRkFBbUY7UUFFbkYsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1lBQzVFLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQ2hGLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7WUFFMUYsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxLQUFLLFFBQVEsQ0FBQyxDQUFDO1lBQ3JFLElBQUksQ0FBQyxDQUFDLGFBQWEsQ0FBQyxNQUFNO2dCQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztZQUd4RSwrRUFBK0U7WUFDL0UsNkZBQTZGO1lBRTdGLElBQUksTUFBTSxDQUFDLFdBQVcsR0FBRyxHQUFHLEdBQUcsR0FBRyxFQUFFO2dCQUNsQyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsTUFBTSxDQUFDLFdBQVcsR0FBRyxHQUFHLENBQUE7YUFDbkQ7UUFFSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFHRCxnQkFBZ0IsQ0FBQyxDQUFNO1FBRXJCLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFFNUIsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUE7WUFDcEIsSUFBSSxDQUFDLENBQUMsTUFBTSxJQUFJLElBQUksRUFBRTtnQkFDcEIsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFO29CQUNoQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FDckIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLHlDQUF5QyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFNLEVBQUUsRUFBRTt3QkFDN0YsSUFBSSxDQUFDLENBQUMsTUFBTSxJQUFJLEdBQUcsRUFBRTs0QkFDbkIsTUFBTSxJQUFJLEdBQXNCLENBQUMsQ0FBQyxJQUFJLENBQUM7NEJBQ3ZDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7Z0NBQ3BCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztnQ0FDL0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLDRCQUE0QixDQUFDLENBQUM7Z0NBQzlFLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDO2dDQUMzRixJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMscUNBQXFDLENBQUMsQ0FBQztnQ0FDOUYsSUFBSSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsa0RBQWtELENBQUMsQ0FBQztnQ0FDL0csSUFBSSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7Z0NBQ2pELElBQUksQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUN0QyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLFNBQVMsSUFBSSxDQUFDLENBQUMsY0FBYyxLQUFLLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUM1RyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7b0NBQ2YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQTtvQ0FDakMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFBO2dDQUM1QyxDQUFDLENBQUMsQ0FBQTs2QkFDSDtpQ0FBTTtnQ0FDTCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7Z0NBQy9CLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO2dDQUM5RSxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsNENBQTRDLENBQUMsQ0FBQztnQ0FDN0YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsa0RBQWtELENBQUMsQ0FBQztnQ0FDL0csSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dDQUM5QyxJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzs2QkFDbEQ7eUJBQ0Y7b0JBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQTtpQkFFRjtxQkFBTTtvQkFFTCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7b0JBQy9CLElBQUksQ0FBQyxhQUFhLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUNqRCxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsNEJBQTRCLENBQUMsQ0FBQztvQkFDOUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLDRDQUE0QyxDQUFDLENBQUM7b0JBQzdGLElBQUksQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGtEQUFrRCxDQUFDLENBQUM7b0JBQy9HLElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztpQkFFL0M7YUFFRjtpQkFBTTtnQkFFTCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTthQUU1QjtTQUVGO2FBQU07WUFFTCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtTQUU1QjtJQUVILENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxDQUFNO1FBQ3hCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDaEMsQ0FBQztJQUVELG9CQUFvQixDQUFDLENBQVE7UUFDM0IsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQztZQUMzQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsSUFBSSxFQUFFLENBQUM7U0FDUixDQUFDLENBQUE7SUFDSixDQUFDOzhHQWxKVSwyQkFBMkI7a0dBQTNCLDJCQUEyQixrWUM3QnhDLHVtREE4Qk0seUREWEYsWUFBWSw4QkFDWixXQUFXLCtWQUNYLG9CQUFvQixzT0FDcEIscUJBQXFCLHdwQ0FDckIsMEJBQTBCLGdHQUMxQixxQkFBcUI7OzJGQUtaLDJCQUEyQjtrQkFkdkMsU0FBUzsrQkFDRSxzQkFBc0IsY0FDcEIsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxvQkFBb0I7d0JBQ3BCLHFCQUFxQjt3QkFDckIsMEJBQTBCO3dCQUMxQixxQkFBcUI7cUJBQ3RCOzhCQVVRLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0cscUJBQXFCO3NCQUE3QixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFFSSxjQUFjO3NCQUF2QixNQUFNO2dCQUNHLGlCQUFpQjtzQkFBMUIsTUFBTTtnQkFDRyxrQkFBa0I7c0JBQTNCLE1BQU07Z0JBQ0csV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBmaWx0ZXIgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgRW51bVRyYW5zbGF0ZUtleSB9IGZyb20gXCJhbHBoYS1nbG9iYWwtY29uc3RhbnRzXCI7XHJcbmltcG9ydCB7IGFwaSB9IGZyb20gXCJhbHBoYS1nbG9iYWwtY29uc3RhbnRzXCI7XHJcbmltcG9ydCB7IElGb3JtYXRlZFJlc3BvbnNlIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcy9JRm9ybWF0ZWRSZXNwb25zZSc7XHJcbmltcG9ydCB7IFBvc2l0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcG9zaXRpb24vcG9zaXRpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IENvcmVPcmdUcmVlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29yZS1vcmctdHJlZS9jb3JlLW9yZy10cmVlL2NvcmUtb3JnLXRyZWUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29yZVBhZ2VMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29yZS1wYWdlLWxpc3QvY29yZS1wYWdlLWxpc3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29yZVN0YXR1c1N0aWNrZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb3JlLXN0YXR1cy1zdGlja2VyL2NvcmUtc3RhdHVzLXN0aWNrZXIvY29yZS1zdGF0dXMtc3RpY2tlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFbnVtRmlsdGVyT3BlcmF0b3IsIElGaWx0ZXJPcGVyYXRvciB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMvSVF1ZXJ5TGlzdFJlcXVlc3QnO1xyXG5pbXBvcnQgeyBDb3JlQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb3JlLWNoZWNrYm94L2NvcmUtY2hlY2tib3gvY29yZS1jaGVja2JveC5jb21wb25lbnQnO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY29yZS1wb3NpdGlvbi1zZWVrZXInLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBDb3JlT3JnVHJlZUNvbXBvbmVudCxcclxuICAgIENvcmVQYWdlTGlzdENvbXBvbmVudCxcclxuICAgIENvcmVTdGF0dXNTdGlja2VyQ29tcG9uZW50LFxyXG4gICAgQ29yZUNoZWNrYm94Q29tcG9uZW50LFxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NvcmUtcG9zaXRpb24tc2Vla2VyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jb3JlLXBvc2l0aW9uLXNlZWtlci5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29yZVBvc2l0aW9uU2Vla2VyQ29tcG9uZW50IGV4dGVuZHMgUG9zaXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBvdmVycmlkZSB0aXRsZSA9IEVudW1UcmFuc2xhdGVLZXkuVUlfQ09NUE9ORU5UX1RJVExFX1BPU0lUSU9OX1NFRUtFUjtcclxuXHJcbiAgY29yZVBhZ2VMaXN0SGVpZ2h0ID0gODAwO1xyXG5cclxuICBASW5wdXQoKSBtdWx0aU1vZGUhOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHByZURlZmluZWRPdXRlclBhcmFtJCE6IEJlaGF2aW9yU3ViamVjdDxhbnk+O1xyXG4gIEBJbnB1dCgpIHNlZWtlclZlcmlmeUlnbm9yZSE6IGJvb2xlYW47XHJcblxyXG4gIEBPdXRwdXQoKSByb3dEb3VibGVDbGljayA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgc2VsZWN0ZWRJZHNDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIHNlbGVjdGVkRGF0YUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgY29sdW1uc0luaXQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG5cclxuICBkaWFsb2dJbnN0YW5jZU51bWJlciE6IG51bWJlcjtcclxuICBwZW5kaW5nRGF0YTogYW55O1xyXG5cclxuICBvdmVycmlkZSBvdXRlclBhcmFtJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8YW55Pih7IGlzQWN0aXZlOiB0cnVlIH0pO1xyXG4gIG92ZXJyaWRlIG91dGVyRmlsdGVyT3BlcmF0b3JzOiBJRmlsdGVyT3BlcmF0b3JbXSA9IFtcclxuICAgIHtcclxuICAgICAgZmllbGQ6ICdvcmdJZCcsXHJcbiAgICAgIG9wZXJhdG9yOiBFbnVtRmlsdGVyT3BlcmF0b3IuRVFVQUwsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBmaWVsZDogJ2lzQWN0aXZlJyxcclxuICAgICAgb3BlcmF0b3I6IEVudW1GaWx0ZXJPcGVyYXRvci5FUVVBTCxcclxuICAgIH1cclxuICBdO1xyXG5cclxuXHJcbiAgb3ZlcnJpZGUgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuICAgICAgdGhpcy5tbHMubGFuZyQuc3Vic2NyaWJlKHggPT4gdGhpcy5sYW5nID0geClcclxuICAgIClcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICB0aGlzLnByZURlZmluZWRPdXRlclBhcmFtJD8uc3Vic2NyaWJlKHggPT4ge1xyXG4gICAgICAgIGlmICh0aGlzLm91dGVyUGFyYW0kLnZhbHVlID09PSBudWxsKSB7XHJcbiAgICAgICAgICB0aGlzLm91dGVyUGFyYW0kLm5leHQoeCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMub3V0ZXJQYXJhbSQubmV4dCh7XHJcbiAgICAgICAgICAgIC4uLnRoaXMub3V0ZXJQYXJhbSQudmFsdWUsXHJcbiAgICAgICAgICAgIC4uLnhcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICAgIClcclxuXHJcbiAgICB0aGlzLmNvbHVtbnNJbml0LmVtaXQodGhpcy5jb2x1bW5zKTtcclxuXHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICAvLyB0cm9uZyBuZ0FmdGVyVmlld0luaXQgbuG6v3UgbXXhu5FuIHRoYXkgxJHhu5VpIHRodeG7mWMgdMOtbmggY+G7p2EgdHMgY+G6p24gZ8OzaSB2w6BvIHNldFRpbWVvdXRcclxuXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5jb2x1bW5zLmZpbHRlcigoYykgPT4gYy5maWVsZCA9PT0gJ2lzVERWJylbMF0udGVtcGxhdGVSZWYgPSB0aGlzLmlzVERWO1xyXG4gICAgICB0aGlzLmNvbHVtbnMuZmlsdGVyKChjKSA9PiBjLmZpZWxkID09PSAnaXNOb3RvdCcpWzBdLnRlbXBsYXRlUmVmID0gdGhpcy5pc05vdG90O1xyXG4gICAgICB0aGlzLmNvbHVtbnMuZmlsdGVyKChjKSA9PiBjLmZpZWxkID09PSAnaXNNYXN0ZXInKVswXS50ZW1wbGF0ZVJlZiA9IHRoaXMuY29uY3VycmVudFN0YXR1cztcclxuXHJcbiAgICAgIGNvbnN0IHN0aWNrZXJGaWx0ZXIgPSB0aGlzLmNvbHVtbnMuZmlsdGVyKGMgPT4gYy5maWVsZCA9PT0gJ2FjdGl2ZScpO1xyXG4gICAgICBpZiAoISFzdGlja2VyRmlsdGVyLmxlbmd0aCkgc3RpY2tlckZpbHRlclswXS50ZW1wbGF0ZVJlZiA9IHRoaXMuc3RpY2tlcjtcclxuXHJcblxyXG4gICAgICAvLyB0aGlzLmNvbHVtbnMuZmlsdGVyKGMgPT4gYy5maWVsZCA9PT0gJ2lzcGxhbicpWzBdLnRlbXBsYXRlUmVmID0gdGhpcy5pc3BsYW47XHJcbiAgICAgIC8vIHRoaXMuY29sdW1ucy5maWx0ZXIoYyA9PiBjLmZpZWxkID09PSAnaXNub25waHlzaWNhbCcpWzBdLnRlbXBsYXRlUmVmID0gdGhpcy5pc25vbnBoeXNpY2FsO1xyXG5cclxuICAgICAgaWYgKHdpbmRvdy5pbm5lckhlaWdodCAtIDEwMCA8IDgwMCkge1xyXG4gICAgICAgIHRoaXMuY29yZVBhZ2VMaXN0SGVpZ2h0ID0gd2luZG93LmlubmVySGVpZ2h0IC0gMTAwXHJcbiAgICAgIH1cclxuXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG5cclxuICBvblJvd0RvdWJsZUNsaWNrKGU6IGFueSkge1xyXG5cclxuICAgIGlmICghdGhpcy5zZWVrZXJWZXJpZnlJZ25vcmUpIHtcclxuXHJcbiAgICAgIHRoaXMucGVuZGluZ0RhdGEgPSBlXHJcbiAgICAgIGlmIChlLm1hc3RlciAhPSBudWxsKSB7XHJcbiAgICAgICAgaWYgKCEhIWUuaW50ZXJpbSkge1xyXG4gICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXHJcbiAgICAgICAgICAgIHRoaXMuYXBwU2VydmljZS5nZXQoYXBpLkhVX0VNUExPWUVFX0NIRUNLX1BPU0lUSU9OX01BU1RFUl9JTlRFUklNICsgZS5pZCkuc3Vic2NyaWJlKCh4OiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICBpZiAoeC5zdGF0dXMgPT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBib2R5OiBJRm9ybWF0ZWRSZXNwb25zZSA9IHguYm9keTtcclxuICAgICAgICAgICAgICAgIGlmICghIWJvZHkuaW5uZXJCb2R5KSB7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5idXN5ID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLnRpdGxlJC5uZXh0KEVudW1UcmFuc2xhdGVLZXkuVUlfQ09SRV9DT05GSVJNX0RJQUxPR19USVRMRSk7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5ib2R5JC5uZXh0KEVudW1UcmFuc2xhdGVLZXkuVUlfQ09SRV9DT05GSVJNX0RJQUxPR19QT1NJVE9OX0hBVkVfTUFTVEVSKTtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLm9rQnV0dG9uVGV4dCQubmV4dChFbnVtVHJhbnNsYXRlS2V5LlVJX0NPUkVfQ09ORklSTV9ESUFMT0dfQlVUVE9OX0NPTkZJUk0pO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UuY2FuY2VsQnV0dG9uVGV4dCQubmV4dChFbnVtVHJhbnNsYXRlS2V5LlVJX0NPUkVfQ09ORklSTV9ESUFMT0dfQlVUVE9OX0dPX0JBQ0tfVE9fRURJVF9GT1JNKTtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLnNob3dDb25maXJtRGlhbG9nJC5uZXh0KHRydWUpO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UuZGlhbG9nQ29uZmlybWVkJC5waXBlKFxyXG4gICAgICAgICAgICAgICAgICAgIGZpbHRlcih4ID0+ICEhIXRoaXMuZGlhbG9nU2VydmljZS5idXN5ICYmICEheD8uY29uZmlybWVkICYmIHguaW5zdGFuY2VOdW1iZXIgPT09IHRoaXMuZGlhbG9nSW5zdGFuY2VOdW1iZXIpXHJcbiAgICAgICAgICAgICAgICAgICkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UucmVzZXRTZXJ2aWNlKClcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnJvd0RvdWJsZUNsaWNrLmVtaXQodGhpcy5wZW5kaW5nRGF0YSlcclxuICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5idXN5ID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLnRpdGxlJC5uZXh0KEVudW1UcmFuc2xhdGVLZXkuVUlfQ09SRV9DT05GSVJNX0RJQUxPR19USVRMRSk7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5ib2R5JC5uZXh0KEVudW1UcmFuc2xhdGVLZXkuVUlfQ09SRV9DT05GSVJNX0RJQUxPR19QT1NJVE9OX0NBTl9OT1RfU1RBRkYpO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UuY2FuY2VsQnV0dG9uVGV4dCQubmV4dChFbnVtVHJhbnNsYXRlS2V5LlVJX0NPUkVfQ09ORklSTV9ESUFMT0dfQlVUVE9OX0dPX0JBQ0tfVE9fRURJVF9GT1JNKTtcclxuICAgICAgICAgICAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLnNob3dDYW5jZWxPbmx5JC5uZXh0KHRydWUpO1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2Uuc2hvd0NvbmZpcm1EaWFsb2ckLm5leHQodHJ1ZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgKVxyXG4gIFxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgXHJcbiAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UuYnVzeSA9IHRydWU7XHJcbiAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2Uuc2hvd0NvbmZpcm1EaWFsb2ckLm5leHQodHJ1ZSk7XHJcbiAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UudGl0bGUkLm5leHQoRW51bVRyYW5zbGF0ZUtleS5VSV9DT1JFX0NPTkZJUk1fRElBTE9HX1RJVExFKTtcclxuICAgICAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5ib2R5JC5uZXh0KEVudW1UcmFuc2xhdGVLZXkuVUlfQ09SRV9DT05GSVJNX0RJQUxPR19QT1NJVE9OX0NBTl9OT1RfU1RBRkYpO1xyXG4gICAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLmNhbmNlbEJ1dHRvblRleHQkLm5leHQoRW51bVRyYW5zbGF0ZUtleS5VSV9DT1JFX0NPTkZJUk1fRElBTE9HX0JVVFRPTl9HT19CQUNLX1RPX0VESVRfRk9STSk7XHJcbiAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2Uuc2hvd0NhbmNlbE9ubHkkLm5leHQodHJ1ZSk7XHJcbiAgXHJcbiAgICAgICAgfVxyXG4gIFxyXG4gICAgICB9IGVsc2Uge1xyXG4gIFxyXG4gICAgICAgIHRoaXMucm93RG91YmxlQ2xpY2suZW1pdChlKVxyXG4gIFxyXG4gICAgICB9XHJcblxyXG4gICAgfSBlbHNlIHtcclxuXHJcbiAgICAgIHRoaXMucm93RG91YmxlQ2xpY2suZW1pdChlKVxyXG5cclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBvblNlbGVjdGVkSWRzQ2hhbmdlKGU6IGFueSkge1xyXG4gICAgdGhpcy5zZWxlY3RlZElkc0NoYW5nZS5lbWl0KGUpXHJcbiAgfVxyXG5cclxuICBvblNlbGVjdGVkRGF0YUNoYW5nZShlOiBhbnlbXSkge1xyXG4gICAgdGhpcy5zZWxlY3RlZERhdGFDaGFuZ2UuZW1pdCh7XHJcbiAgICAgIGNvbHVtbnM6IHRoaXMuY29sdW1ucyxcclxuICAgICAgZGF0YTogZVxyXG4gICAgfSlcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjb3JlLXBvc2l0aW9uLXNlZWtlci1jb250YWluZXJcIj5cclxuICAgIDxjb3JlLXBhZ2UtbGlzdCBbaGlkZUNoZWNrXT1cIiEhIW11bHRpTW9kZVwiIFtoZWlnaHRdPVwiY29yZVBhZ2VMaXN0SGVpZ2h0XCIgW2FwaURlZmluaXRpb25dPVwiYXBpRGVmaW5pdGlvblwiXHJcbiAgICAgICAgW2NvbHVtbnNdPVwiY29sdW1uc1wiIFtlZGl0Um91dGVdPVwiZWRpdFJvdXRlXCIgW2NydWRdPVwiY3J1ZFwiIFt0aXRsZV09XCJ0aXRsZVwiIFtsZWZ0XT1cIm9yZ1RyZWVcIlxyXG4gICAgICAgIFtvdXRlclBhcmFtJF09XCJvdXRlclBhcmFtJFwiIFtmaXhlZFBhZ2VTaXplXT1cIjUwXCIgW291dGVySW5PcGVyYXRvcnNdPVwib3V0ZXJJbk9wZXJhdG9yc1wiXHJcbiAgICAgICAgW291dGVyRmlsdGVyT3BlcmF0b3JzXT1cIm91dGVyRmlsdGVyT3BlcmF0b3JzXCIgW2F1dG9SZXNpemVXaXRoV2luZG93XT1cInRydWVcIiBbc2Vla2VyTW9kZV09XCJ0cnVlXCJcclxuICAgICAgICAocm93RG91YmxlQ2xpY2spPVwib25Sb3dEb3VibGVDbGljaygkZXZlbnQpXCIgKHNlbGVjdGVkSWRzQ2hhbmdlKT1cIm9uU2VsZWN0ZWRJZHNDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgKHNlbGVjdGVkRGF0YUNoYW5nZSk9XCJvblNlbGVjdGVkRGF0YUNoYW5nZSgkZXZlbnQpXCI+PC9jb3JlLXBhZ2UtbGlzdD5cclxuXHJcbiAgICA8bmctdGVtcGxhdGUgI29yZ1RyZWU+XHJcbiAgICAgICAgPGNvcmUtb3JnLXRyZWUgWyhuZ01vZGVsKV09XCJvcmdJZHNcIiBbaGVpZ2h0XT1cIjY1MFwiIChuZ01vZGVsQ2hhbmdlKT1cIm9uT3JnSWRzQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICBbZnVsbFdpZHRoTW9kZV09XCJmYWxzZVwiPlxyXG4gICAgICAgIDwvY29yZS1vcmctdHJlZT5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgPG5nLXRlbXBsYXRlICNzdGlja2VyIGxldC1jb2RlPVwiY29udGV4dC5hY3RpdmVcIj5cclxuICAgICAgICA8Y29yZS1zdGF0dXMtc3RpY2tlciBbY29kZV09XCJjb2RlXCI+PC9jb3JlLXN0YXR1cy1zdGlja2VyPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICA8bmctdGVtcGxhdGUgI2lzVERWIGxldC1pc1REVj1cImNvbnRleHQuaXNURFZcIj5cclxuICAgICAgICA8Y29yZS1jaGVja2JveCBbZGlzYWJsZWRdPVwidHJ1ZVwiIFtpbnB1dFZhbHVlXT1cImlzVERWXCI+PC9jb3JlLWNoZWNrYm94PlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICA8bmctdGVtcGxhdGUgI2lzTm90b3QgbGV0LWlzTm90b3Q9XCJjb250ZXh0LmlzTm90b3RcIj5cclxuICAgICAgICA8Y29yZS1jaGVja2JveCBbZGlzYWJsZWRdPVwidHJ1ZVwiIFtpbnB1dFZhbHVlXT1cImlzTm90b3RcIj48L2NvcmUtY2hlY2tib3g+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgIDxuZy10ZW1wbGF0ZSAjY29uY3VycmVudFN0YXR1cyBsZXQtY29uY3VycmVudFN0YXR1cz1cImNvbnRleHQuaXNNYXN0ZXJcIj5cclxuICAgICAgICA8Y29yZS1jaGVja2JveCBbZGlzYWJsZWRdPVwidHJ1ZVwiIFtpbnB1dFZhbHVlXT1cImNvbmN1cnJlbnRTdGF0dXNcIj48L2NvcmUtY2hlY2tib3g+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuPC9kaXY+Il19
@@ -14,11 +14,21 @@ export const STICKER_COLOR_SCHEMA = [
14
14
  bachgroundColor: '#E2F2FF',
15
15
  color: '#07B7EE'
16
16
  },
17
+ {
18
+ code: 'UI_ENTITY_FIELD_CAPTION_COMMON_IS_ACTIVE_VALUE_TRUE',
19
+ bachgroundColor: '#E2F2FF',
20
+ color: '#07B7EE'
21
+ },
17
22
  {
18
23
  code: 'Ngừng áp dụng',
19
24
  bachgroundColor: '#FFEAEA',
20
25
  color: '#EF2B58'
21
26
  },
27
+ {
28
+ code: 'UI_ENTITY_FIELD_CAPTION_COMMON_IS_ACTIVE_VALUE_FALSE',
29
+ bachgroundColor: '#FFEAEA',
30
+ color: '#EF2B58'
31
+ },
22
32
  {
23
33
  code: 'Không phê duyệt',
24
34
  bachgroundColor: '#FFEAEA',
@@ -125,4 +135,4 @@ export const STICKER_COLOR_SCHEMA = [
125
135
  color: '#'
126
136
  },
127
137
  ];
128
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU1RJQ0tFUl9DT0xPUl9TQ0hFTUEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9saWJyYXJpZXMvY29yZS1zdGF0dXMtc3RpY2tlci9jb3JlLXN0YXR1cy1zdGlja2VyL1NUSUNLRVJfQ09MT1JfU0NIRU1BLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUEwQjtJQUN2RDtRQUNJLElBQUksRUFBRSxlQUFlO1FBQ3JCLGVBQWUsRUFBRSxTQUFTO1FBQzFCLEtBQUssRUFBRSxTQUFTO0tBQ25CO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsY0FBYztRQUNwQixlQUFlLEVBQUUsU0FBUztRQUMxQixLQUFLLEVBQUUsU0FBUztLQUNuQjtJQUNEO1FBQ0ksSUFBSSxFQUFFLFNBQVM7UUFDZixlQUFlLEVBQUUsU0FBUztRQUMxQixLQUFLLEVBQUUsU0FBUztLQUNuQjtJQUNEO1FBQ0ksSUFBSSxFQUFFLGVBQWU7UUFDckIsZUFBZSxFQUFFLFNBQVM7UUFDMUIsS0FBSyxFQUFFLFNBQVM7S0FDbkI7SUFDRDtRQUNJLElBQUksRUFBRSxpQkFBaUI7UUFDdkIsZUFBZSxFQUFFLFNBQVM7UUFDMUIsS0FBSyxFQUFFLFNBQVM7S0FDbkI7SUFDRDtRQUNJLElBQUksRUFBRSxHQUFHO1FBQ1QsZUFBZSxFQUFFLEdBQUc7UUFDcEIsS0FBSyxFQUFFLEdBQUc7S0FDYjtJQUNEO1FBQ0ksSUFBSSxFQUFFLFdBQVc7UUFDakIsZUFBZSxFQUFFLFNBQVM7UUFDMUIsS0FBSyxFQUFFLFNBQVM7S0FDbkI7SUFDRDtRQUNJLElBQUksRUFBRSxrQkFBa0I7UUFDeEIsZUFBZSxFQUFFLFNBQVM7UUFDMUIsS0FBSyxFQUFFLFNBQVM7S0FDbkI7SUFDRDtRQUNJLElBQUksRUFBRSxHQUFHO1FBQ1QsZUFBZSxFQUFFLEdBQUc7UUFDcEIsS0FBSyxFQUFFLEdBQUc7S0FDYjtJQUNEO1FBQ0ksSUFBSSxFQUFFLEdBQUc7UUFDVCxlQUFlLEVBQUUsR0FBRztRQUNwQixLQUFLLEVBQUUsR0FBRztLQUNiO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsR0FBRztRQUNULGVBQWUsRUFBRSxHQUFHO1FBQ3BCLEtBQUssRUFBRSxHQUFHO0tBQ2I7SUFDRDtRQUNJLElBQUksRUFBRSxHQUFHO1FBQ1QsZUFBZSxFQUFFLEdBQUc7UUFDcEIsS0FBSyxFQUFFLEdBQUc7S0FDYjtJQUNEO1FBQ0ksSUFBSSxFQUFFLEdBQUc7UUFDVCxlQUFlLEVBQUUsR0FBRztRQUNwQixLQUFLLEVBQUUsR0FBRztLQUNiO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsR0FBRztRQUNULGVBQWUsRUFBRSxHQUFHO1FBQ3BCLEtBQUssRUFBRSxHQUFHO0tBQ2I7SUFDRDtRQUNJLElBQUksRUFBRSxHQUFHO1FBQ1QsZUFBZSxFQUFFLEdBQUc7UUFDcEIsS0FBSyxFQUFFLEdBQUc7S0FDYjtJQUNEO1FBQ0ksSUFBSSxFQUFFLEdBQUc7UUFDVCxlQUFlLEVBQUUsR0FBRztRQUNwQixLQUFLLEVBQUUsR0FBRztLQUNiO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsR0FBRztRQUNULGVBQWUsRUFBRSxHQUFHO1FBQ3BCLEtBQUssRUFBRSxHQUFHO0tBQ2I7SUFDRDtRQUNJLElBQUksRUFBRSxHQUFHO1FBQ1QsZUFBZSxFQUFFLEdBQUc7UUFDcEIsS0FBSyxFQUFFLEdBQUc7S0FDYjtJQUNEO1FBQ0ksSUFBSSxFQUFFLEdBQUc7UUFDVCxlQUFlLEVBQUUsR0FBRztRQUNwQixLQUFLLEVBQUUsR0FBRztLQUNiO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsR0FBRztRQUNULGVBQWUsRUFBRSxHQUFHO1FBQ3BCLEtBQUssRUFBRSxHQUFHO0tBQ2I7SUFDRDtRQUNJLElBQUksRUFBRSxHQUFHO1FBQ1QsZUFBZSxFQUFFLEdBQUc7UUFDcEIsS0FBSyxFQUFFLEdBQUc7S0FDYjtJQUNEO1FBQ0ksSUFBSSxFQUFFLEdBQUc7UUFDVCxlQUFlLEVBQUUsR0FBRztRQUNwQixLQUFLLEVBQUUsR0FBRztLQUNiO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsR0FBRztRQUNULGVBQWUsRUFBRSxHQUFHO1FBQ3BCLEtBQUssRUFBRSxHQUFHO0tBQ2I7SUFDRDtRQUNJLElBQUksRUFBRSxHQUFHO1FBQ1QsZUFBZSxFQUFFLEdBQUc7UUFDcEIsS0FBSyxFQUFFLEdBQUc7S0FDYjtJQUNEO1FBQ0ksSUFBSSxFQUFFLEdBQUc7UUFDVCxlQUFlLEVBQUUsR0FBRztRQUNwQixLQUFLLEVBQUUsR0FBRztLQUNiO0NBQ0osQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElTdGlja2VyQ29sb3JTY2hlbWEgfSBmcm9tIFwiLi9JU3RpY2tlckNvbG9yU2NoZW1hXCI7XHJcblxyXG5leHBvcnQgY29uc3QgU1RJQ0tFUl9DT0xPUl9TQ0hFTUE6IElTdGlja2VyQ29sb3JTY2hlbWFbXSA9IFtcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnQ2jhu50gcGjDqiBkdXnhu4d0JyxcclxuICAgICAgICBiYWNoZ3JvdW5kQ29sb3I6ICcjRkZGN0U0JyxcclxuICAgICAgICBjb2xvcjogJyNGRkM1NDInXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNvZGU6ICfEkMOjIHBow6ogZHV54buHdCcsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnI0U4RkZGNicsXHJcbiAgICAgICAgY29sb3I6ICcjM0RENTk4J1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnw4FwIGThu6VuZycsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnI0UyRjJGRicsXHJcbiAgICAgICAgY29sb3I6ICcjMDdCN0VFJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnTmfhu6tuZyDDoXAgZOG7pW5nJyxcclxuICAgICAgICBiYWNoZ3JvdW5kQ29sb3I6ICcjRkZFQUVBJyxcclxuICAgICAgICBjb2xvcjogJyNFRjJCNTgnXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNvZGU6ICdLaMO0bmcgcGjDqiBkdXnhu4d0JyxcclxuICAgICAgICBiYWNoZ3JvdW5kQ29sb3I6ICcjRkZFQUVBJyxcclxuICAgICAgICBjb2xvcjogJyNFRjJCNTgnXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNvZGU6ICcjJyxcclxuICAgICAgICBiYWNoZ3JvdW5kQ29sb3I6ICcjJyxcclxuICAgICAgICBjb2xvcjogJyMnXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNvZGU6ICdBzIFwIGR1zKNuZycsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnI0UyRjJGRicsXHJcbiAgICAgICAgY29sb3I6ICcjMDdCN0VFJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnTmfGsMyAbmcgYcyBcCBkdcyjbmcnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyNGRkVBRUEnLFxyXG4gICAgICAgIGNvbG9yOiAnI0VGMkI1OCdcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY29kZTogJyMnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyMnLFxyXG4gICAgICAgIGNvbG9yOiAnIydcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY29kZTogJyMnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyMnLFxyXG4gICAgICAgIGNvbG9yOiAnIydcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY29kZTogJyMnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyMnLFxyXG4gICAgICAgIGNvbG9yOiAnIydcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY29kZTogJyMnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyMnLFxyXG4gICAgICAgIGNvbG9yOiAnIydcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY29kZTogJyMnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyMnLFxyXG4gICAgICAgIGNvbG9yOiAnIydcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY29kZTogJyMnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyMnLFxyXG4gICAgICAgIGNvbG9yOiAnIydcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY29kZTogJyMnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyMnLFxyXG4gICAgICAgIGNvbG9yOiAnIydcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY29kZTogJyMnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyMnLFxyXG4gICAgICAgIGNvbG9yOiAnIydcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY29kZTogJyMnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyMnLFxyXG4gICAgICAgIGNvbG9yOiAnIydcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY29kZTogJyMnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyMnLFxyXG4gICAgICAgIGNvbG9yOiAnIydcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY29kZTogJyMnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyMnLFxyXG4gICAgICAgIGNvbG9yOiAnIydcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY29kZTogJyMnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyMnLFxyXG4gICAgICAgIGNvbG9yOiAnIydcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY29kZTogJyMnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyMnLFxyXG4gICAgICAgIGNvbG9yOiAnIydcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY29kZTogJyMnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyMnLFxyXG4gICAgICAgIGNvbG9yOiAnIydcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY29kZTogJyMnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyMnLFxyXG4gICAgICAgIGNvbG9yOiAnIydcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY29kZTogJyMnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyMnLFxyXG4gICAgICAgIGNvbG9yOiAnIydcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY29kZTogJyMnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyMnLFxyXG4gICAgICAgIGNvbG9yOiAnIydcclxuICAgIH0sXHJcbl1cclxuIl19
138
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU1RJQ0tFUl9DT0xPUl9TQ0hFTUEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9saWJyYXJpZXMvY29yZS1zdGF0dXMtc3RpY2tlci9jb3JlLXN0YXR1cy1zdGlja2VyL1NUSUNLRVJfQ09MT1JfU0NIRU1BLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUEwQjtJQUN2RDtRQUNJLElBQUksRUFBRSxlQUFlO1FBQ3JCLGVBQWUsRUFBRSxTQUFTO1FBQzFCLEtBQUssRUFBRSxTQUFTO0tBQ25CO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsY0FBYztRQUNwQixlQUFlLEVBQUUsU0FBUztRQUMxQixLQUFLLEVBQUUsU0FBUztLQUNuQjtJQUNEO1FBQ0ksSUFBSSxFQUFFLFNBQVM7UUFDZixlQUFlLEVBQUUsU0FBUztRQUMxQixLQUFLLEVBQUUsU0FBUztLQUNuQjtJQUNEO1FBQ0ksSUFBSSxFQUFFLHFEQUFxRDtRQUMzRCxlQUFlLEVBQUUsU0FBUztRQUMxQixLQUFLLEVBQUUsU0FBUztLQUNuQjtJQUNEO1FBQ0ksSUFBSSxFQUFFLGVBQWU7UUFDckIsZUFBZSxFQUFFLFNBQVM7UUFDMUIsS0FBSyxFQUFFLFNBQVM7S0FDbkI7SUFDRDtRQUNJLElBQUksRUFBRSxzREFBc0Q7UUFDNUQsZUFBZSxFQUFFLFNBQVM7UUFDMUIsS0FBSyxFQUFFLFNBQVM7S0FDbkI7SUFDRDtRQUNJLElBQUksRUFBRSxpQkFBaUI7UUFDdkIsZUFBZSxFQUFFLFNBQVM7UUFDMUIsS0FBSyxFQUFFLFNBQVM7S0FDbkI7SUFDRDtRQUNJLElBQUksRUFBRSxHQUFHO1FBQ1QsZUFBZSxFQUFFLEdBQUc7UUFDcEIsS0FBSyxFQUFFLEdBQUc7S0FDYjtJQUNEO1FBQ0ksSUFBSSxFQUFFLFdBQVc7UUFDakIsZUFBZSxFQUFFLFNBQVM7UUFDMUIsS0FBSyxFQUFFLFNBQVM7S0FDbkI7SUFDRDtRQUNJLElBQUksRUFBRSxrQkFBa0I7UUFDeEIsZUFBZSxFQUFFLFNBQVM7UUFDMUIsS0FBSyxFQUFFLFNBQVM7S0FDbkI7SUFDRDtRQUNJLElBQUksRUFBRSxHQUFHO1FBQ1QsZUFBZSxFQUFFLEdBQUc7UUFDcEIsS0FBSyxFQUFFLEdBQUc7S0FDYjtJQUNEO1FBQ0ksSUFBSSxFQUFFLEdBQUc7UUFDVCxlQUFlLEVBQUUsR0FBRztRQUNwQixLQUFLLEVBQUUsR0FBRztLQUNiO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsR0FBRztRQUNULGVBQWUsRUFBRSxHQUFHO1FBQ3BCLEtBQUssRUFBRSxHQUFHO0tBQ2I7SUFDRDtRQUNJLElBQUksRUFBRSxHQUFHO1FBQ1QsZUFBZSxFQUFFLEdBQUc7UUFDcEIsS0FBSyxFQUFFLEdBQUc7S0FDYjtJQUNEO1FBQ0ksSUFBSSxFQUFFLEdBQUc7UUFDVCxlQUFlLEVBQUUsR0FBRztRQUNwQixLQUFLLEVBQUUsR0FBRztLQUNiO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsR0FBRztRQUNULGVBQWUsRUFBRSxHQUFHO1FBQ3BCLEtBQUssRUFBRSxHQUFHO0tBQ2I7SUFDRDtRQUNJLElBQUksRUFBRSxHQUFHO1FBQ1QsZUFBZSxFQUFFLEdBQUc7UUFDcEIsS0FBSyxFQUFFLEdBQUc7S0FDYjtJQUNEO1FBQ0ksSUFBSSxFQUFFLEdBQUc7UUFDVCxlQUFlLEVBQUUsR0FBRztRQUNwQixLQUFLLEVBQUUsR0FBRztLQUNiO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsR0FBRztRQUNULGVBQWUsRUFBRSxHQUFHO1FBQ3BCLEtBQUssRUFBRSxHQUFHO0tBQ2I7SUFDRDtRQUNJLElBQUksRUFBRSxHQUFHO1FBQ1QsZUFBZSxFQUFFLEdBQUc7UUFDcEIsS0FBSyxFQUFFLEdBQUc7S0FDYjtJQUNEO1FBQ0ksSUFBSSxFQUFFLEdBQUc7UUFDVCxlQUFlLEVBQUUsR0FBRztRQUNwQixLQUFLLEVBQUUsR0FBRztLQUNiO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsR0FBRztRQUNULGVBQWUsRUFBRSxHQUFHO1FBQ3BCLEtBQUssRUFBRSxHQUFHO0tBQ2I7SUFDRDtRQUNJLElBQUksRUFBRSxHQUFHO1FBQ1QsZUFBZSxFQUFFLEdBQUc7UUFDcEIsS0FBSyxFQUFFLEdBQUc7S0FDYjtJQUNEO1FBQ0ksSUFBSSxFQUFFLEdBQUc7UUFDVCxlQUFlLEVBQUUsR0FBRztRQUNwQixLQUFLLEVBQUUsR0FBRztLQUNiO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsR0FBRztRQUNULGVBQWUsRUFBRSxHQUFHO1FBQ3BCLEtBQUssRUFBRSxHQUFHO0tBQ2I7SUFDRDtRQUNJLElBQUksRUFBRSxHQUFHO1FBQ1QsZUFBZSxFQUFFLEdBQUc7UUFDcEIsS0FBSyxFQUFFLEdBQUc7S0FDYjtJQUNEO1FBQ0ksSUFBSSxFQUFFLEdBQUc7UUFDVCxlQUFlLEVBQUUsR0FBRztRQUNwQixLQUFLLEVBQUUsR0FBRztLQUNiO0NBQ0osQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElTdGlja2VyQ29sb3JTY2hlbWEgfSBmcm9tIFwiLi9JU3RpY2tlckNvbG9yU2NoZW1hXCI7XHJcblxyXG5leHBvcnQgY29uc3QgU1RJQ0tFUl9DT0xPUl9TQ0hFTUE6IElTdGlja2VyQ29sb3JTY2hlbWFbXSA9IFtcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnQ2jhu50gcGjDqiBkdXnhu4d0JyxcclxuICAgICAgICBiYWNoZ3JvdW5kQ29sb3I6ICcjRkZGN0U0JyxcclxuICAgICAgICBjb2xvcjogJyNGRkM1NDInXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNvZGU6ICfEkMOjIHBow6ogZHV54buHdCcsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnI0U4RkZGNicsXHJcbiAgICAgICAgY29sb3I6ICcjM0RENTk4J1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnw4FwIGThu6VuZycsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnI0UyRjJGRicsXHJcbiAgICAgICAgY29sb3I6ICcjMDdCN0VFJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnVUlfRU5USVRZX0ZJRUxEX0NBUFRJT05fQ09NTU9OX0lTX0FDVElWRV9WQUxVRV9UUlVFJyxcclxuICAgICAgICBiYWNoZ3JvdW5kQ29sb3I6ICcjRTJGMkZGJyxcclxuICAgICAgICBjb2xvcjogJyMwN0I3RUUnXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNvZGU6ICdOZ+G7q25nIMOhcCBk4bulbmcnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyNGRkVBRUEnLFxyXG4gICAgICAgIGNvbG9yOiAnI0VGMkI1OCdcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY29kZTogJ1VJX0VOVElUWV9GSUVMRF9DQVBUSU9OX0NPTU1PTl9JU19BQ1RJVkVfVkFMVUVfRkFMU0UnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyNGRkVBRUEnLFxyXG4gICAgICAgIGNvbG9yOiAnI0VGMkI1OCdcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY29kZTogJ0tow7RuZyBwaMOqIGR1eeG7h3QnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyNGRkVBRUEnLFxyXG4gICAgICAgIGNvbG9yOiAnI0VGMkI1OCdcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY29kZTogJyMnLFxyXG4gICAgICAgIGJhY2hncm91bmRDb2xvcjogJyMnLFxyXG4gICAgICAgIGNvbG9yOiAnIydcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY29kZTogJ0HMgXAgZHXMo25nJyxcclxuICAgICAgICBiYWNoZ3JvdW5kQ29sb3I6ICcjRTJGMkZGJyxcclxuICAgICAgICBjb2xvcjogJyMwN0I3RUUnXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNvZGU6ICdOZ8awzIBuZyBhzIFwIGR1zKNuZycsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnI0ZGRUFFQScsXHJcbiAgICAgICAgY29sb3I6ICcjRUYyQjU4J1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnIycsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnIycsXHJcbiAgICAgICAgY29sb3I6ICcjJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnIycsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnIycsXHJcbiAgICAgICAgY29sb3I6ICcjJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnIycsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnIycsXHJcbiAgICAgICAgY29sb3I6ICcjJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnIycsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnIycsXHJcbiAgICAgICAgY29sb3I6ICcjJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnIycsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnIycsXHJcbiAgICAgICAgY29sb3I6ICcjJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnIycsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnIycsXHJcbiAgICAgICAgY29sb3I6ICcjJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnIycsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnIycsXHJcbiAgICAgICAgY29sb3I6ICcjJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnIycsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnIycsXHJcbiAgICAgICAgY29sb3I6ICcjJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnIycsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnIycsXHJcbiAgICAgICAgY29sb3I6ICcjJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnIycsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnIycsXHJcbiAgICAgICAgY29sb3I6ICcjJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnIycsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnIycsXHJcbiAgICAgICAgY29sb3I6ICcjJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnIycsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnIycsXHJcbiAgICAgICAgY29sb3I6ICcjJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnIycsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnIycsXHJcbiAgICAgICAgY29sb3I6ICcjJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnIycsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnIycsXHJcbiAgICAgICAgY29sb3I6ICcjJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnIycsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnIycsXHJcbiAgICAgICAgY29sb3I6ICcjJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnIycsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnIycsXHJcbiAgICAgICAgY29sb3I6ICcjJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjb2RlOiAnIycsXHJcbiAgICAgICAgYmFjaGdyb3VuZENvbG9yOiAnIycsXHJcbiAgICAgICAgY29sb3I6ICcjJ1xyXG4gICAgfSxcclxuXVxyXG4iXX0=
@@ -19,7 +19,12 @@ export class CoreStatusStickerComponent extends BaseComponent {
19
19
  ngAfterViewInit() {
20
20
  setTimeout(() => {
21
21
  const tryFind = STICKER_COLOR_SCHEMA.filter(x => {
22
- return this.stringService.viToEn(x.code) === this.stringService.viToEn(this.code);
22
+ if (!!this.isTrueCode) {
23
+ return x.code === this.code;
24
+ }
25
+ else {
26
+ return this.stringService.viToEn(x.code) === this.stringService.viToEn(this.code);
27
+ }
23
28
  });
24
29
  if (!!tryFind.length) {
25
30
  this.backgroundColor = tryFind[0].bachgroundColor;
@@ -33,7 +38,7 @@ export class CoreStatusStickerComponent extends BaseComponent {
33
38
  });
34
39
  }
35
40
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: CoreStatusStickerComponent, deps: [{ token: i1.MultiLanguageService }, { token: i2.LayoutService }, { token: i3.StringService }], target: i0.ɵɵFactoryTarget.Component }); }
36
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: CoreStatusStickerComponent, isStandalone: true, selector: "core-status-sticker", inputs: { code: "code" }, usesInheritance: true, ngImport: i0, template: "<div class=\"core-status-sticker-container\">\r\n <!-- maxHeight: '46px' \u0110\u1EA3m b\u1EA3o r\u1EB1ng \u0111\u1ED9 cao c\u1EE7a sticker kh\u00F4ng v\u01B0\u1EE3t qu\u00E1 chi\u1EC1u cao d\u00F2ng (s\u1EED d\u1EE5ng ch\u00EDnh x\u00E1c cho Lazy loading)-->\r\n <div [ngStyle]=\"{\r\n display: 'inline-block',\r\n backgroundColor: backgroundColor,\r\n color: color,\r\n width: '100%',\r\n height: height,\r\n lineHeight: height,\r\n overflow: 'hidden',\r\n textOverflow: 'ellipsis',\r\n whiteSpace: 'nowrap',\r\n maxHeight: '46px',\r\n borderRadius: '5px',\r\n padding: '0px 5px'\r\n }\" [appTooltip]=\"code | translate: lang\">\r\n {{ code | translate: lang }}\r\n </div>\r\n</div>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "directive", type: TooltipDirective, selector: "[appTooltip]", inputs: ["appTooltip", "showAnyway", "position"] }] }); }
41
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: CoreStatusStickerComponent, isStandalone: true, selector: "core-status-sticker", inputs: { code: "code", isTrueCode: "isTrueCode" }, usesInheritance: true, ngImport: i0, template: "<div class=\"core-status-sticker-container\">\r\n <!-- maxHeight: '46px' \u0110\u1EA3m b\u1EA3o r\u1EB1ng \u0111\u1ED9 cao c\u1EE7a sticker kh\u00F4ng v\u01B0\u1EE3t qu\u00E1 chi\u1EC1u cao d\u00F2ng (s\u1EED d\u1EE5ng ch\u00EDnh x\u00E1c cho Lazy loading)-->\r\n <div [ngStyle]=\"{\r\n display: 'inline-block',\r\n backgroundColor: backgroundColor,\r\n color: color,\r\n width: '100%',\r\n height: height,\r\n lineHeight: height,\r\n overflow: 'hidden',\r\n textOverflow: 'ellipsis',\r\n whiteSpace: 'nowrap',\r\n maxHeight: '46px',\r\n borderRadius: '5px',\r\n padding: '0px 5px'\r\n }\" [appTooltip]=\"code | translate: lang\">\r\n {{ code | translate: lang }}\r\n </div>\r\n</div>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "directive", type: TooltipDirective, selector: "[appTooltip]", inputs: ["appTooltip", "showAnyway", "position"] }] }); }
37
42
  }
38
43
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: CoreStatusStickerComponent, decorators: [{
39
44
  type: Component,
@@ -44,5 +49,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
44
49
  ], template: "<div class=\"core-status-sticker-container\">\r\n <!-- maxHeight: '46px' \u0110\u1EA3m b\u1EA3o r\u1EB1ng \u0111\u1ED9 cao c\u1EE7a sticker kh\u00F4ng v\u01B0\u1EE3t qu\u00E1 chi\u1EC1u cao d\u00F2ng (s\u1EED d\u1EE5ng ch\u00EDnh x\u00E1c cho Lazy loading)-->\r\n <div [ngStyle]=\"{\r\n display: 'inline-block',\r\n backgroundColor: backgroundColor,\r\n color: color,\r\n width: '100%',\r\n height: height,\r\n lineHeight: height,\r\n overflow: 'hidden',\r\n textOverflow: 'ellipsis',\r\n whiteSpace: 'nowrap',\r\n maxHeight: '46px',\r\n borderRadius: '5px',\r\n padding: '0px 5px'\r\n }\" [appTooltip]=\"code | translate: lang\">\r\n {{ code | translate: lang }}\r\n </div>\r\n</div>" }]
45
50
  }], ctorParameters: () => [{ type: i1.MultiLanguageService }, { type: i2.LayoutService }, { type: i3.StringService }], propDecorators: { code: [{
46
51
  type: Input
52
+ }], isTrueCode: [{
53
+ type: Input
47
54
  }] } });
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1zdGF0dXMtc3RpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9saWJyYXJpZXMvY29yZS1zdGF0dXMtc3RpY2tlci9jb3JlLXN0YXR1cy1zdGlja2VyL2NvcmUtc3RhdHVzLXN0aWNrZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWhpc3RhZmYtYWxwaGEvc3JjL2xpYi9hcHAvbGlicmFyaWVzL2NvcmUtc3RhdHVzLXN0aWNrZXIvY29yZS1zdGF0dXMtc3RpY2tlci9jb3JlLXN0YXR1cy1zdGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFJekUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7O0FBYW5FLE1BQU0sT0FBTywwQkFBMkIsU0FBUSxhQUFhO0lBUTNELFlBQ2tCLEdBQXlCLEVBQ2pDLGFBQTRCLEVBQzVCLGFBQTRCO1FBRXBDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUpLLFFBQUcsR0FBSCxHQUFHLENBQXNCO1FBQ2pDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBR3RDLENBQUM7SUFFRCxlQUFlO1FBQ2IsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUVkLE1BQU0sT0FBTyxHQUFHLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDOUMsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO1lBQ25GLENBQUMsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRTtnQkFDcEIsSUFBSSxDQUFDLGVBQWUsR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDO2dCQUNsRCxJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7YUFDL0I7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLGVBQWUsR0FBRyxhQUFhLENBQUM7Z0JBQ3JDLElBQUksQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDO2FBQ3hCO1lBRUQsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztRQUU1RCxDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7OEdBakNVLDBCQUEwQjtrR0FBMUIsMEJBQTBCLGdJQ3JCdkMscXhCQWtCTSx5RERKRixZQUFZLCtHQUNaLGFBQWEsa0RBQ2IsZ0JBQWdCOzsyRkFLUCwwQkFBMEI7a0JBWHRDLFNBQVM7K0JBQ0UscUJBQXFCLGNBQ25CLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsZ0JBQWdCO3FCQUNqQjtpSkFNUSxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9iYXNlLWNvbXBvbmVudC9iYXNlL2Jhc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3RyaW5nU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3N0cmluZy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTGF5b3V0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2xheW91dC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTXVsdGlMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9tdWx0aS1sYW5ndWFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU1RJQ0tFUl9DT0xPUl9TQ0hFTUEgfSBmcm9tICcuL1NUSUNLRVJfQ09MT1JfU0NIRU1BJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlUGlwZSB9IGZyb20gJy4uLy4uLy4uL2FwcC1waXBlcy90cmFuc2xhdGUucGlwZSc7XHJcbmltcG9ydCB7IFRvb2x0aXBEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi90b29sdGlwL3Rvb2x0aXAuZGlyZWN0aXZlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY29yZS1zdGF0dXMtc3RpY2tlcicsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBUcmFuc2xhdGVQaXBlLFxyXG4gICAgVG9vbHRpcERpcmVjdGl2ZSxcclxuICBdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jb3JlLXN0YXR1cy1zdGlja2VyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jb3JlLXN0YXR1cy1zdGlja2VyLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIENvcmVTdGF0dXNTdGlja2VyQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xyXG5cclxuICBASW5wdXQoKSBjb2RlITogc3RyaW5nO1xyXG5cclxuICBiYWNrZ3JvdW5kQ29sb3IhOiBzdHJpbmc7XHJcbiAgY29sb3IhOiBzdHJpbmc7XHJcbiAgaGVpZ2h0ITogc3RyaW5nO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBvdmVycmlkZSBtbHM6IE11bHRpTGFuZ3VhZ2VTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBsYXlvdXRTZXJ2aWNlOiBMYXlvdXRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBzdHJpbmdTZXJ2aWNlOiBTdHJpbmdTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICBzdXBlcihtbHMpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcblxyXG4gICAgICBjb25zdCB0cnlGaW5kID0gU1RJQ0tFUl9DT0xPUl9TQ0hFTUEuZmlsdGVyKHggPT4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnN0cmluZ1NlcnZpY2UudmlUb0VuKHguY29kZSkgPT09IHRoaXMuc3RyaW5nU2VydmljZS52aVRvRW4odGhpcy5jb2RlKVxyXG4gICAgICB9KTtcclxuICAgICAgaWYgKCEhdHJ5RmluZC5sZW5ndGgpIHtcclxuICAgICAgICB0aGlzLmJhY2tncm91bmRDb2xvciA9IHRyeUZpbmRbMF0uYmFjaGdyb3VuZENvbG9yO1xyXG4gICAgICAgIHRoaXMuY29sb3IgPSB0cnlGaW5kWzBdLmNvbG9yO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuYmFja2dyb3VuZENvbG9yID0gJ3RyYW5zcGFyZW50JztcclxuICAgICAgICB0aGlzLmNvbG9yID0gJ2luaGVyaXQnO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLmhlaWdodCA9IHRoaXMubGF5b3V0U2VydmljZS5mb3JtQ29udHJvbEhlaWdodCArICdweCc7XHJcblxyXG4gICAgfSlcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjb3JlLXN0YXR1cy1zdGlja2VyLWNvbnRhaW5lclwiPlxyXG4gICAgPCEtLSBtYXhIZWlnaHQ6ICc0NnB4JyDEkOG6o20gYuG6o28gcuG6sW5nIMSR4buZIGNhbyBj4bunYSBzdGlja2VyIGtow7RuZyB2xrDhu6N0IHF1w6EgY2hp4buBdSBjYW8gZMOybmcgKHPhu60gZOG7pW5nIGNow61uaCB4w6FjIGNobyBMYXp5IGxvYWRpbmcpLS0+XHJcbiAgICA8ZGl2IFtuZ1N0eWxlXT1cIntcclxuICAgICAgICBkaXNwbGF5OiAnaW5saW5lLWJsb2NrJyxcclxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IGJhY2tncm91bmRDb2xvcixcclxuICAgICAgICBjb2xvcjogY29sb3IsXHJcbiAgICAgICAgd2lkdGg6ICcxMDAlJyxcclxuICAgICAgICBoZWlnaHQ6IGhlaWdodCxcclxuICAgICAgICBsaW5lSGVpZ2h0OiBoZWlnaHQsXHJcbiAgICAgICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxyXG4gICAgICAgIHRleHRPdmVyZmxvdzogJ2VsbGlwc2lzJyxcclxuICAgICAgICB3aGl0ZVNwYWNlOiAnbm93cmFwJyxcclxuICAgICAgICBtYXhIZWlnaHQ6ICc0NnB4JyxcclxuICAgICAgICBib3JkZXJSYWRpdXM6ICc1cHgnLFxyXG4gICAgICAgIHBhZGRpbmc6ICcwcHggNXB4J1xyXG4gICAgfVwiIFthcHBUb29sdGlwXT1cImNvZGUgfCB0cmFuc2xhdGU6IGxhbmdcIj5cclxuICAgICAgICB7eyBjb2RlIHwgdHJhbnNsYXRlOiBsYW5nIH19XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1zdGF0dXMtc3RpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9saWJyYXJpZXMvY29yZS1zdGF0dXMtc3RpY2tlci9jb3JlLXN0YXR1cy1zdGlja2VyL2NvcmUtc3RhdHVzLXN0aWNrZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWhpc3RhZmYtYWxwaGEvc3JjL2xpYi9hcHAvbGlicmFyaWVzL2NvcmUtc3RhdHVzLXN0aWNrZXIvY29yZS1zdGF0dXMtc3RpY2tlci9jb3JlLXN0YXR1cy1zdGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFJekUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7O0FBYW5FLE1BQU0sT0FBTywwQkFBMkIsU0FBUSxhQUFhO0lBUzNELFlBQ2tCLEdBQXlCLEVBQ2pDLGFBQTRCLEVBQzVCLGFBQTRCO1FBRXBDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUpLLFFBQUcsR0FBSCxHQUFHLENBQXNCO1FBQ2pDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBR3RDLENBQUM7SUFFRCxlQUFlO1FBRWIsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUVkLE1BQU0sT0FBTyxHQUFHLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDOUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRTtvQkFDckIsT0FBTyxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUE7aUJBQzVCO3FCQUFNO29CQUNMLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtpQkFDbEY7WUFDSCxDQUFDLENBQUMsQ0FBQztZQUNILElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUU7Z0JBQ3BCLElBQUksQ0FBQyxlQUFlLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQztnQkFDbEQsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO2FBQy9CO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxlQUFlLEdBQUcsYUFBYSxDQUFDO2dCQUNyQyxJQUFJLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQzthQUN4QjtZQUVELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7UUFFNUQsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDOzhHQXZDVSwwQkFBMEI7a0dBQTFCLDBCQUEwQiwwSkNyQnZDLHF4QkFrQk0seURESkYsWUFBWSwrR0FDWixhQUFhLGtEQUNiLGdCQUFnQjs7MkZBS1AsMEJBQTBCO2tCQVh0QyxTQUFTOytCQUNFLHFCQUFxQixjQUNuQixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixhQUFhO3dCQUNiLGdCQUFnQjtxQkFDakI7aUpBTVEsSUFBSTtzQkFBWixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9iYXNlLWNvbXBvbmVudC9iYXNlL2Jhc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3RyaW5nU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3N0cmluZy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTGF5b3V0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2xheW91dC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTXVsdGlMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9tdWx0aS1sYW5ndWFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU1RJQ0tFUl9DT0xPUl9TQ0hFTUEgfSBmcm9tICcuL1NUSUNLRVJfQ09MT1JfU0NIRU1BJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlUGlwZSB9IGZyb20gJy4uLy4uLy4uL2FwcC1waXBlcy90cmFuc2xhdGUucGlwZSc7XHJcbmltcG9ydCB7IFRvb2x0aXBEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi90b29sdGlwL3Rvb2x0aXAuZGlyZWN0aXZlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY29yZS1zdGF0dXMtc3RpY2tlcicsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBUcmFuc2xhdGVQaXBlLFxyXG4gICAgVG9vbHRpcERpcmVjdGl2ZSxcclxuICBdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jb3JlLXN0YXR1cy1zdGlja2VyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jb3JlLXN0YXR1cy1zdGlja2VyLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIENvcmVTdGF0dXNTdGlja2VyQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xyXG5cclxuICBASW5wdXQoKSBjb2RlITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGlzVHJ1ZUNvZGUhOiBib29sZWFuO1xyXG5cclxuICBiYWNrZ3JvdW5kQ29sb3IhOiBzdHJpbmc7XHJcbiAgY29sb3IhOiBzdHJpbmc7XHJcbiAgaGVpZ2h0ITogc3RyaW5nO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBvdmVycmlkZSBtbHM6IE11bHRpTGFuZ3VhZ2VTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBsYXlvdXRTZXJ2aWNlOiBMYXlvdXRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBzdHJpbmdTZXJ2aWNlOiBTdHJpbmdTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICBzdXBlcihtbHMpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG5cclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG5cclxuICAgICAgY29uc3QgdHJ5RmluZCA9IFNUSUNLRVJfQ09MT1JfU0NIRU1BLmZpbHRlcih4ID0+IHtcclxuICAgICAgICBpZiAoISF0aGlzLmlzVHJ1ZUNvZGUpIHtcclxuICAgICAgICAgIHJldHVybiB4LmNvZGUgPT09IHRoaXMuY29kZVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXR1cm4gdGhpcy5zdHJpbmdTZXJ2aWNlLnZpVG9Fbih4LmNvZGUpID09PSB0aGlzLnN0cmluZ1NlcnZpY2UudmlUb0VuKHRoaXMuY29kZSlcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICBpZiAoISF0cnlGaW5kLmxlbmd0aCkge1xyXG4gICAgICAgIHRoaXMuYmFja2dyb3VuZENvbG9yID0gdHJ5RmluZFswXS5iYWNoZ3JvdW5kQ29sb3I7XHJcbiAgICAgICAgdGhpcy5jb2xvciA9IHRyeUZpbmRbMF0uY29sb3I7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5iYWNrZ3JvdW5kQ29sb3IgPSAndHJhbnNwYXJlbnQnO1xyXG4gICAgICAgIHRoaXMuY29sb3IgPSAnaW5oZXJpdCc7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuaGVpZ2h0ID0gdGhpcy5sYXlvdXRTZXJ2aWNlLmZvcm1Db250cm9sSGVpZ2h0ICsgJ3B4JztcclxuXHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImNvcmUtc3RhdHVzLXN0aWNrZXItY29udGFpbmVyXCI+XHJcbiAgICA8IS0tIG1heEhlaWdodDogJzQ2cHgnIMSQ4bqjbSBi4bqjbyBy4bqxbmcgxJHhu5kgY2FvIGPhu6dhIHN0aWNrZXIga2jDtG5nIHbGsOG7o3QgcXXDoSBjaGnhu4F1IGNhbyBkw7JuZyAoc+G7rSBk4bulbmcgY2jDrW5oIHjDoWMgY2hvIExhenkgbG9hZGluZyktLT5cclxuICAgIDxkaXYgW25nU3R5bGVdPVwie1xyXG4gICAgICAgIGRpc3BsYXk6ICdpbmxpbmUtYmxvY2snLFxyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogYmFja2dyb3VuZENvbG9yLFxyXG4gICAgICAgIGNvbG9yOiBjb2xvcixcclxuICAgICAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgICAgIGhlaWdodDogaGVpZ2h0LFxyXG4gICAgICAgIGxpbmVIZWlnaHQ6IGhlaWdodCxcclxuICAgICAgICBvdmVyZmxvdzogJ2hpZGRlbicsXHJcbiAgICAgICAgdGV4dE92ZXJmbG93OiAnZWxsaXBzaXMnLFxyXG4gICAgICAgIHdoaXRlU3BhY2U6ICdub3dyYXAnLFxyXG4gICAgICAgIG1heEhlaWdodDogJzQ2cHgnLFxyXG4gICAgICAgIGJvcmRlclJhZGl1czogJzVweCcsXHJcbiAgICAgICAgcGFkZGluZzogJzBweCA1cHgnXHJcbiAgICB9XCIgW2FwcFRvb2x0aXBdPVwiY29kZSB8IHRyYW5zbGF0ZTogbGFuZ1wiPlxyXG4gICAgICAgIHt7IGNvZGUgfCB0cmFuc2xhdGU6IGxhbmcgfX1cclxuICAgIDwvZGl2PlxyXG48L2Rpdj4iXX0=
@@ -210,7 +210,7 @@ export class DecisionComponent extends BaseComponent {
210
210
  this.onSelectedDataChange.emit(e);
211
211
  }
212
212
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: DecisionComponent, deps: [{ token: i1.MultiLanguageService }, { token: i2.RandomAvatarService }, { token: i3.OrganizationService }], target: i0.ɵɵFactoryTarget.Component }); }
213
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: DecisionComponent, isStandalone: true, selector: "cms-profile-decision", inputs: { hideHeader: "hideHeader" }, outputs: { onCorePageHeaderButtonClick: "onCorePageHeaderButtonClick", onRowClick: "onRowClick", onSelectedDataChange: "onSelectedDataChange" }, viewQueries: [{ propertyName: "avatar", first: true, predicate: ["avatar"], descendants: true }, { propertyName: "sticker", first: true, predicate: ["sticker"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"staff-profile-container\">\r\n <core-page-list [apiDefinition]=\"apiDefinition\" [columns]=\"columns\" [editRoute]=\"editRoute\" [crud]=\"crud\"\r\n [title]=\"title\" [left]=\"orgTree\"\r\n [normalMode]=\"true\"\r\n [outerParam$]=\"outerParam$\"\r\n [outerInOperators]=\"outerInOperators\"\r\n [autoResizeWithWindow]=\"true\"\r\n [outerSort]=\"defaultSort\"\r\n (rowClick)=\"onRowClickLocal($event)\"\r\n [showParamKit]=\"true\"\r\n [datePeriodComparisonFor]=\"datePeriodComparisonFor\"\r\n [datePeriodComparisonForLabelKey]=\"datePeriodComparisonForLabelKey\"\r\n [hideStatusInclusion]=\"false\"\r\n [statusInclusionFor]=\"statusInclusionFor\"\r\n [statusInclusionForLabelKey]=\"statusInclusionForLabelKey\"\r\n [statusOptionsApi]=\"workStatusOptionsApi\"\r\n (corePageHeaderButtonClick)=\"onCorePageHeaderButtonClickLocal($event)\"\r\n (selectedDataChange)=\"onSelectedDataChangeLocal($event)\"\r\n [generateTemplateRequest]=\"generateTemplateRequest\"\r\n [importPreviewPath]=\"'decision-import'\"\r\n [frozen]=\"3\"\r\n\r\n [outerSort]=\"outerSort\"\r\n ></core-page-list>\r\n\r\n <ng-template #orgTree>\r\n <core-org-tree [(ngModel)]=\"orgIds\" (ngModelChange)=\"onOrgIdsChange($event)\">\r\n </core-org-tree>\r\n </ng-template>\r\n\r\n <ng-template #sticker let-code=\"context.statusName\">\r\n <core-status-sticker [code]=\"code\"></core-status-sticker>\r\n </ng-template>\r\n\r\n</div>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: CorePageListComponent, selector: "core-page-list", inputs: ["normalMode", "hideHeader", "hideButtonGroup", "seekerMode", "mccMode", "height", "headerWrap", "headerFirstRowHeight", "enableTimeZoneConverterForDateTimePeriodParameters", "showParamKit", "datePeriodComparisonFor", "datePeriodComparisonForLabelKey", "statusInclusionFor", "statusInclusionForLabelKey", "statusOptionsApi", "hideDatePeriodComparison", "hideStatusInclusion", "title", "hasIdOfStringType", "hideCheck", "apiDefinition", "columns", "frozen", "inlineTools", "inlineToolItems", "editRoute", "crud", "showListInlineTools", "top", "left", "hideLeft", "outerParam$", "outerSort", "outerFilterOperators", "outerInOperators", "autoResizeWithWindow", "extraManualOffset", "wrap", "rowHeight", "selfResolveCorePageHeaderButtonClick", "clearData$", "deleteValidateFn", "generateTemplateRequest", "importPreviewPath", "columnSearchDefaultOpen", "fixedPageSize", "disableDoubleClick", "noPaddingCell", "disableHighlightOnClick", "loading$"], outputs: ["corePageHeaderButtonClick", "rowClick", "rowDoubleClick", "selectedIdsChange", "selectedDataChange", "onInstanceCreated", "onInputFileBase64DataReady"] }, { kind: "component", type: CoreOrgTreeComponent, selector: "core-org-tree", inputs: ["lineColor", "fullWidthMode", "accessorMode", "fullRendering", "height", "disabledLoopExpand", "showCheckInheritance"], outputs: ["itemDoubleClick", "itemClick"] }, { kind: "component", type: CoreStatusStickerComponent, selector: "core-status-sticker", inputs: ["code"] }] }); }
213
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: DecisionComponent, isStandalone: true, selector: "cms-profile-decision", inputs: { hideHeader: "hideHeader" }, outputs: { onCorePageHeaderButtonClick: "onCorePageHeaderButtonClick", onRowClick: "onRowClick", onSelectedDataChange: "onSelectedDataChange" }, viewQueries: [{ propertyName: "avatar", first: true, predicate: ["avatar"], descendants: true }, { propertyName: "sticker", first: true, predicate: ["sticker"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"staff-profile-container\">\r\n <core-page-list [apiDefinition]=\"apiDefinition\" [columns]=\"columns\" [editRoute]=\"editRoute\" [crud]=\"crud\"\r\n [title]=\"title\" [left]=\"orgTree\"\r\n [normalMode]=\"true\"\r\n [outerParam$]=\"outerParam$\"\r\n [outerInOperators]=\"outerInOperators\"\r\n [autoResizeWithWindow]=\"true\"\r\n [outerSort]=\"defaultSort\"\r\n (rowClick)=\"onRowClickLocal($event)\"\r\n [showParamKit]=\"true\"\r\n [datePeriodComparisonFor]=\"datePeriodComparisonFor\"\r\n [datePeriodComparisonForLabelKey]=\"datePeriodComparisonForLabelKey\"\r\n [hideStatusInclusion]=\"false\"\r\n [statusInclusionFor]=\"statusInclusionFor\"\r\n [statusInclusionForLabelKey]=\"statusInclusionForLabelKey\"\r\n [statusOptionsApi]=\"workStatusOptionsApi\"\r\n (corePageHeaderButtonClick)=\"onCorePageHeaderButtonClickLocal($event)\"\r\n (selectedDataChange)=\"onSelectedDataChangeLocal($event)\"\r\n [generateTemplateRequest]=\"generateTemplateRequest\"\r\n [importPreviewPath]=\"'decision-import'\"\r\n [frozen]=\"3\"\r\n\r\n [outerSort]=\"outerSort\"\r\n ></core-page-list>\r\n\r\n <ng-template #orgTree>\r\n <core-org-tree [(ngModel)]=\"orgIds\" (ngModelChange)=\"onOrgIdsChange($event)\">\r\n </core-org-tree>\r\n </ng-template>\r\n\r\n <ng-template #sticker let-code=\"context.statusName\">\r\n <core-status-sticker [code]=\"code\"></core-status-sticker>\r\n </ng-template>\r\n\r\n</div>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: CorePageListComponent, selector: "core-page-list", inputs: ["normalMode", "hideHeader", "hideButtonGroup", "seekerMode", "mccMode", "height", "headerWrap", "headerFirstRowHeight", "enableTimeZoneConverterForDateTimePeriodParameters", "showParamKit", "datePeriodComparisonFor", "datePeriodComparisonForLabelKey", "statusInclusionFor", "statusInclusionForLabelKey", "statusOptionsApi", "hideDatePeriodComparison", "hideStatusInclusion", "title", "hasIdOfStringType", "hideCheck", "apiDefinition", "columns", "frozen", "inlineTools", "inlineToolItems", "editRoute", "crud", "showListInlineTools", "top", "left", "hideLeft", "outerParam$", "outerSort", "outerFilterOperators", "outerInOperators", "autoResizeWithWindow", "extraManualOffset", "wrap", "rowHeight", "selfResolveCorePageHeaderButtonClick", "clearData$", "deleteValidateFn", "generateTemplateRequest", "importPreviewPath", "columnSearchDefaultOpen", "fixedPageSize", "disableDoubleClick", "noPaddingCell", "disableHighlightOnClick", "loading$"], outputs: ["corePageHeaderButtonClick", "rowClick", "rowDoubleClick", "selectedIdsChange", "selectedDataChange", "onInstanceCreated", "onInputFileBase64DataReady"] }, { kind: "component", type: CoreOrgTreeComponent, selector: "core-org-tree", inputs: ["lineColor", "fullWidthMode", "accessorMode", "fullRendering", "height", "disabledLoopExpand", "showCheckInheritance"], outputs: ["itemDoubleClick", "itemClick"] }, { kind: "component", type: CoreStatusStickerComponent, selector: "core-status-sticker", inputs: ["code", "isTrueCode"] }] }); }
214
214
  }
215
215
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: DecisionComponent, decorators: [{
216
216
  type: Component,
@@ -92,7 +92,7 @@ export class JobComponent extends BaseComponent {
92
92
  });
93
93
  }
94
94
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: JobComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
95
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: JobComponent, isStandalone: true, selector: "core-job", inputs: { outerParam$: "outerParam$", excludedIds$: "excludedIds$" }, viewQueries: [{ propertyName: "sticker", first: true, predicate: ["sticker"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"core-job-container\">\r\n <core-page-list [apiDefinition]=\"apiDefinition\" [columns]=\"columns\" [editRoute]=\"editRoute\" [crud]=\"crud\"\r\n [title]=\"title\" [outerParam$]=\"outerParam$\" [autoResizeWithWindow]=\"true\"></core-page-list>\r\n <ng-template #sticker let-code=\"context.actflg\">\r\n <core-status-sticker [code]=\"code\"></core-status-sticker>\r\n </ng-template>\r\n</div>", styles: [""], dependencies: [{ kind: "component", type: CorePageListComponent, selector: "core-page-list", inputs: ["normalMode", "hideHeader", "hideButtonGroup", "seekerMode", "mccMode", "height", "headerWrap", "headerFirstRowHeight", "enableTimeZoneConverterForDateTimePeriodParameters", "showParamKit", "datePeriodComparisonFor", "datePeriodComparisonForLabelKey", "statusInclusionFor", "statusInclusionForLabelKey", "statusOptionsApi", "hideDatePeriodComparison", "hideStatusInclusion", "title", "hasIdOfStringType", "hideCheck", "apiDefinition", "columns", "frozen", "inlineTools", "inlineToolItems", "editRoute", "crud", "showListInlineTools", "top", "left", "hideLeft", "outerParam$", "outerSort", "outerFilterOperators", "outerInOperators", "autoResizeWithWindow", "extraManualOffset", "wrap", "rowHeight", "selfResolveCorePageHeaderButtonClick", "clearData$", "deleteValidateFn", "generateTemplateRequest", "importPreviewPath", "columnSearchDefaultOpen", "fixedPageSize", "disableDoubleClick", "noPaddingCell", "disableHighlightOnClick", "loading$"], outputs: ["corePageHeaderButtonClick", "rowClick", "rowDoubleClick", "selectedIdsChange", "selectedDataChange", "onInstanceCreated", "onInputFileBase64DataReady"] }, { kind: "component", type: CoreStatusStickerComponent, selector: "core-status-sticker", inputs: ["code"] }] }); }
95
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: JobComponent, isStandalone: true, selector: "core-job", inputs: { outerParam$: "outerParam$", excludedIds$: "excludedIds$" }, viewQueries: [{ propertyName: "sticker", first: true, predicate: ["sticker"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"core-job-container\">\r\n <core-page-list [apiDefinition]=\"apiDefinition\" [columns]=\"columns\" [editRoute]=\"editRoute\" [crud]=\"crud\"\r\n [title]=\"title\" [outerParam$]=\"outerParam$\" [autoResizeWithWindow]=\"true\"></core-page-list>\r\n <ng-template #sticker let-code=\"context.actflg\">\r\n <core-status-sticker [code]=\"code\"></core-status-sticker>\r\n </ng-template>\r\n</div>", styles: [""], dependencies: [{ kind: "component", type: CorePageListComponent, selector: "core-page-list", inputs: ["normalMode", "hideHeader", "hideButtonGroup", "seekerMode", "mccMode", "height", "headerWrap", "headerFirstRowHeight", "enableTimeZoneConverterForDateTimePeriodParameters", "showParamKit", "datePeriodComparisonFor", "datePeriodComparisonForLabelKey", "statusInclusionFor", "statusInclusionForLabelKey", "statusOptionsApi", "hideDatePeriodComparison", "hideStatusInclusion", "title", "hasIdOfStringType", "hideCheck", "apiDefinition", "columns", "frozen", "inlineTools", "inlineToolItems", "editRoute", "crud", "showListInlineTools", "top", "left", "hideLeft", "outerParam$", "outerSort", "outerFilterOperators", "outerInOperators", "autoResizeWithWindow", "extraManualOffset", "wrap", "rowHeight", "selfResolveCorePageHeaderButtonClick", "clearData$", "deleteValidateFn", "generateTemplateRequest", "importPreviewPath", "columnSearchDefaultOpen", "fixedPageSize", "disableDoubleClick", "noPaddingCell", "disableHighlightOnClick", "loading$"], outputs: ["corePageHeaderButtonClick", "rowClick", "rowDoubleClick", "selectedIdsChange", "selectedDataChange", "onInstanceCreated", "onInputFileBase64DataReady"] }, { kind: "component", type: CoreStatusStickerComponent, selector: "core-status-sticker", inputs: ["code", "isTrueCode"] }] }); }
96
96
  }
97
97
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: JobComponent, decorators: [{
98
98
  type: Component,
@@ -283,7 +283,7 @@ export class PositionComponent extends BaseComponent {
283
283
  }
284
284
  }
285
285
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: PositionComponent, deps: [{ token: i1.PositionEditService }, { token: i2.MultiLanguageService }, { token: i3.ActivatedRoute }, { token: i4.OrganizationService }, { token: i5.AlertService }, { token: i6.DialogService }, { token: i7.AppService }, { token: i8.LayoutService }, { token: i9.CorePageListService }, { token: i10.PositionTransferService }], target: i0.ɵɵFactoryTarget.Component }); }
286
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: PositionComponent, isStandalone: true, selector: "cms-app-position", inputs: { hideHeader: "hideHeader" }, outputs: { onInstanceCreated: "onInstanceCreated" }, viewQueries: [{ propertyName: "isTDV", first: true, predicate: ["isTDV"], descendants: true }, { propertyName: "isNotot", first: true, predicate: ["isNotot"], descendants: true }, { propertyName: "sticker", first: true, predicate: ["sticker"], descendants: true }, { propertyName: "concurrentStatus", first: true, predicate: ["concurrentStatus"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"position-profile-container\">\r\n <core-page-list [apiDefinition]=\"apiDefinition\" [columns]=\"columns\" [editRoute]=\"editRoute\" [crud]=\"crud\"\r\n [title]=\"title\" [left]=\"orgTree\" [normalMode]=\"true\" [outerParam$]=\"outerParam$\"\r\n [outerInOperators]=\"outerInOperators\" [autoResizeWithWindow]=\"true\"\r\n (corePageHeaderButtonClick)=\"onCorePageHeaderButtonClick($event)\"\r\n (selectedIdsChange)=\"onSelectedIdsChangeeee($event)\"\r\n (onInstanceCreated)=\"onInstanceCreatedLocal($event)\"></core-page-list>\r\n\r\n <ng-template #orgTree>\r\n <core-org-tree [(ngModel)]=\"orgIds\" (ngModelChange)=\"onOrgIdsChange($event)\">\r\n </core-org-tree>\r\n </ng-template>\r\n\r\n <ng-template #isTDV let-isTDV=\"context.isTDV\">\r\n <core-checkbox [disabled]=\"true\" [inputValue]=\"isTDV\"></core-checkbox>\r\n </ng-template>\r\n\r\n <ng-template #isNotot let-isNotot=\"context.isNotot\">\r\n <core-checkbox [disabled]=\"true\" [inputValue]=\"isNotot\"></core-checkbox>\r\n </ng-template>\r\n\r\n <ng-template #sticker let-code=\"context.active\">\r\n <core-status-sticker [code]=\"code\"></core-status-sticker>\r\n </ng-template>\r\n <ng-template #concurrentStatus let-concurrentStatus=\"context.isMaster\">\r\n <core-checkbox [disabled]=\"true\" [inputValue]=\"concurrentStatus\"></core-checkbox>\r\n </ng-template>\r\n</div>", styles: [".position-profile-container .b-r{border-right:1px solid #ccc;padding-top:.5rem!important}.position-profile-container .p-l{padding-left:0!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i11.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i11.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: CorePageListComponent, selector: "core-page-list", inputs: ["normalMode", "hideHeader", "hideButtonGroup", "seekerMode", "mccMode", "height", "headerWrap", "headerFirstRowHeight", "enableTimeZoneConverterForDateTimePeriodParameters", "showParamKit", "datePeriodComparisonFor", "datePeriodComparisonForLabelKey", "statusInclusionFor", "statusInclusionForLabelKey", "statusOptionsApi", "hideDatePeriodComparison", "hideStatusInclusion", "title", "hasIdOfStringType", "hideCheck", "apiDefinition", "columns", "frozen", "inlineTools", "inlineToolItems", "editRoute", "crud", "showListInlineTools", "top", "left", "hideLeft", "outerParam$", "outerSort", "outerFilterOperators", "outerInOperators", "autoResizeWithWindow", "extraManualOffset", "wrap", "rowHeight", "selfResolveCorePageHeaderButtonClick", "clearData$", "deleteValidateFn", "generateTemplateRequest", "importPreviewPath", "columnSearchDefaultOpen", "fixedPageSize", "disableDoubleClick", "noPaddingCell", "disableHighlightOnClick", "loading$"], outputs: ["corePageHeaderButtonClick", "rowClick", "rowDoubleClick", "selectedIdsChange", "selectedDataChange", "onInstanceCreated", "onInputFileBase64DataReady"] }, { kind: "component", type: CoreOrgTreeComponent, selector: "core-org-tree", inputs: ["lineColor", "fullWidthMode", "accessorMode", "fullRendering", "height", "disabledLoopExpand", "showCheckInheritance"], outputs: ["itemDoubleClick", "itemClick"] }, { kind: "component", type: CoreCheckboxComponent, selector: "core-checkbox", inputs: ["text", "tooltipPosition", "tooltip", "inputValue", "disabled"], outputs: ["onClick"] }, { kind: "component", type: CoreStatusStickerComponent, selector: "core-status-sticker", inputs: ["code"] }], encapsulation: i0.ViewEncapsulation.None }); }
286
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: PositionComponent, isStandalone: true, selector: "cms-app-position", inputs: { hideHeader: "hideHeader" }, outputs: { onInstanceCreated: "onInstanceCreated" }, viewQueries: [{ propertyName: "isTDV", first: true, predicate: ["isTDV"], descendants: true }, { propertyName: "isNotot", first: true, predicate: ["isNotot"], descendants: true }, { propertyName: "sticker", first: true, predicate: ["sticker"], descendants: true }, { propertyName: "concurrentStatus", first: true, predicate: ["concurrentStatus"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"position-profile-container\">\r\n <core-page-list [apiDefinition]=\"apiDefinition\" [columns]=\"columns\" [editRoute]=\"editRoute\" [crud]=\"crud\"\r\n [title]=\"title\" [left]=\"orgTree\" [normalMode]=\"true\" [outerParam$]=\"outerParam$\"\r\n [outerInOperators]=\"outerInOperators\" [autoResizeWithWindow]=\"true\"\r\n (corePageHeaderButtonClick)=\"onCorePageHeaderButtonClick($event)\"\r\n (selectedIdsChange)=\"onSelectedIdsChangeeee($event)\"\r\n (onInstanceCreated)=\"onInstanceCreatedLocal($event)\"></core-page-list>\r\n\r\n <ng-template #orgTree>\r\n <core-org-tree [(ngModel)]=\"orgIds\" (ngModelChange)=\"onOrgIdsChange($event)\">\r\n </core-org-tree>\r\n </ng-template>\r\n\r\n <ng-template #isTDV let-isTDV=\"context.isTDV\">\r\n <core-checkbox [disabled]=\"true\" [inputValue]=\"isTDV\"></core-checkbox>\r\n </ng-template>\r\n\r\n <ng-template #isNotot let-isNotot=\"context.isNotot\">\r\n <core-checkbox [disabled]=\"true\" [inputValue]=\"isNotot\"></core-checkbox>\r\n </ng-template>\r\n\r\n <ng-template #sticker let-code=\"context.active\">\r\n <core-status-sticker [code]=\"code\"></core-status-sticker>\r\n </ng-template>\r\n <ng-template #concurrentStatus let-concurrentStatus=\"context.isMaster\">\r\n <core-checkbox [disabled]=\"true\" [inputValue]=\"concurrentStatus\"></core-checkbox>\r\n </ng-template>\r\n</div>", styles: [".position-profile-container .b-r{border-right:1px solid #ccc;padding-top:.5rem!important}.position-profile-container .p-l{padding-left:0!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i11.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i11.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: CorePageListComponent, selector: "core-page-list", inputs: ["normalMode", "hideHeader", "hideButtonGroup", "seekerMode", "mccMode", "height", "headerWrap", "headerFirstRowHeight", "enableTimeZoneConverterForDateTimePeriodParameters", "showParamKit", "datePeriodComparisonFor", "datePeriodComparisonForLabelKey", "statusInclusionFor", "statusInclusionForLabelKey", "statusOptionsApi", "hideDatePeriodComparison", "hideStatusInclusion", "title", "hasIdOfStringType", "hideCheck", "apiDefinition", "columns", "frozen", "inlineTools", "inlineToolItems", "editRoute", "crud", "showListInlineTools", "top", "left", "hideLeft", "outerParam$", "outerSort", "outerFilterOperators", "outerInOperators", "autoResizeWithWindow", "extraManualOffset", "wrap", "rowHeight", "selfResolveCorePageHeaderButtonClick", "clearData$", "deleteValidateFn", "generateTemplateRequest", "importPreviewPath", "columnSearchDefaultOpen", "fixedPageSize", "disableDoubleClick", "noPaddingCell", "disableHighlightOnClick", "loading$"], outputs: ["corePageHeaderButtonClick", "rowClick", "rowDoubleClick", "selectedIdsChange", "selectedDataChange", "onInstanceCreated", "onInputFileBase64DataReady"] }, { kind: "component", type: CoreOrgTreeComponent, selector: "core-org-tree", inputs: ["lineColor", "fullWidthMode", "accessorMode", "fullRendering", "height", "disabledLoopExpand", "showCheckInheritance"], outputs: ["itemDoubleClick", "itemClick"] }, { kind: "component", type: CoreCheckboxComponent, selector: "core-checkbox", inputs: ["text", "tooltipPosition", "tooltip", "inputValue", "disabled"], outputs: ["onClick"] }, { kind: "component", type: CoreStatusStickerComponent, selector: "core-status-sticker", inputs: ["code", "isTrueCode"] }], encapsulation: i0.ViewEncapsulation.None }); }
287
287
  }
288
288
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: PositionComponent, decorators: [{
289
289
  type: Component,
@@ -363,7 +363,7 @@ export class WageComponent extends BaseComponent {
363
363
  }
364
364
  }
365
365
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: WageComponent, deps: [{ token: i1.MultiLanguageService }, { token: i2.RandomAvatarService }, { token: i3.OrganizationService }, { token: i4.AppService }, { token: i5.AlertService }, { token: i6.CorePageListService }, { token: i7.HttpClient }, { token: i8.EvaluateDialogService }], target: i0.ɵɵFactoryTarget.Component }); }
366
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: WageComponent, isStandalone: true, selector: "cms-profile-wage", inputs: { hideHeader: "hideHeader" }, viewQueries: [{ propertyName: "avatar", first: true, predicate: ["avatar"], descendants: true }, { propertyName: "sticker", first: true, predicate: ["sticker"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"cms-profile-wage-container\">\r\n <core-page-list\r\n [apiDefinition]=\"apiDefinition\"\r\n [columns]=\"columns\"\r\n [editRoute]=\"editRoute\"\r\n [crud]=\"crud\"\r\n [title]=\"title\" [left]=\"orgTree\"\r\n [normalMode]=\"true\"\r\n [outerParam$]=\"outerParam$\"\r\n [outerInOperators]=\"outerInOperators\"\r\n [autoResizeWithWindow]=\"true\"\r\n (corePageHeaderButtonClick)=\"onCorePageHeaderButtonClick($event)\"\r\n (selectedIdsChange)=\"onSelectedIdsChangeeee($event)\" \r\n [extraManualOffset]=\"178\"\r\n (rowClick)=\"onRowClick($event)\"\r\n [showParamKit]=\"true\"\r\n [datePeriodComparisonFor]=\"datePeriodComparisonFor\"\r\n [datePeriodComparisonForLabelKey]=\"datePeriodComparisonForLabelKey\"\r\n [hideStatusInclusion]=\"false\"\r\n [statusInclusionFor]=\"statusInclusionFor\"\r\n [statusInclusionForLabelKey]=\"statusInclusionForLabelKey\"\r\n [statusOptionsApi]=\"workStatusOptionsApi\"\r\n (onInstanceCreated)=\"onInstanceCreated($event)\"\r\n [frozen]=\"3\"\r\n [outerSort]=\"outerSort\"\r\n [generateTemplateRequest]=\"generateTemplateRequest\"\r\n [importPreviewPath]=\"'hu-working-hsl-pc-import'\"\r\n ></core-page-list>\r\n\r\n <ng-template #orgTree>\r\n <core-org-tree [(ngModel)]=\"orgIds\" (ngModelChange)=\"onOrgIdsChange($event)\">\r\n </core-org-tree>\r\n </ng-template>\r\n\r\n <ng-template #sticker let-code=\"context.statusName\">\r\n <core-status-sticker [code]=\"code\"></core-status-sticker>\r\n </ng-template>\r\n <app-evaluate-dialog [buttonItems]=\"buttonItems\" *ngIf=\"evaluateDialogService.showConfirmDialog$.value == true\"></app-evaluate-dialog>\r\n</div>", styles: [".btn-Update{margin-top:18px;color:#fff;background-color:#f37540;cursor:pointer;font-size:15px;height:36px;width:100px;border-radius:50px;transition:0s!important;border:var(--color-bg-pagination-button) 1px solid;display:flex;align-items:center;justify-content:center}.btn-Update:hover{box-shadow:0 0 5px #0000004d}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CorePageListComponent, selector: "core-page-list", inputs: ["normalMode", "hideHeader", "hideButtonGroup", "seekerMode", "mccMode", "height", "headerWrap", "headerFirstRowHeight", "enableTimeZoneConverterForDateTimePeriodParameters", "showParamKit", "datePeriodComparisonFor", "datePeriodComparisonForLabelKey", "statusInclusionFor", "statusInclusionForLabelKey", "statusOptionsApi", "hideDatePeriodComparison", "hideStatusInclusion", "title", "hasIdOfStringType", "hideCheck", "apiDefinition", "columns", "frozen", "inlineTools", "inlineToolItems", "editRoute", "crud", "showListInlineTools", "top", "left", "hideLeft", "outerParam$", "outerSort", "outerFilterOperators", "outerInOperators", "autoResizeWithWindow", "extraManualOffset", "wrap", "rowHeight", "selfResolveCorePageHeaderButtonClick", "clearData$", "deleteValidateFn", "generateTemplateRequest", "importPreviewPath", "columnSearchDefaultOpen", "fixedPageSize", "disableDoubleClick", "noPaddingCell", "disableHighlightOnClick", "loading$"], outputs: ["corePageHeaderButtonClick", "rowClick", "rowDoubleClick", "selectedIdsChange", "selectedDataChange", "onInstanceCreated", "onInputFileBase64DataReady"] }, { kind: "component", type: CoreOrgTreeComponent, selector: "core-org-tree", inputs: ["lineColor", "fullWidthMode", "accessorMode", "fullRendering", "height", "disabledLoopExpand", "showCheckInheritance"], outputs: ["itemDoubleClick", "itemClick"] }, { kind: "component", type: EvaluateDialogComponent, selector: "app-evaluate-dialog", inputs: ["showingUp", "buttonItems"] }, { kind: "component", type: CoreStatusStickerComponent, selector: "core-status-sticker", inputs: ["code"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i10.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i10.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
366
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: WageComponent, isStandalone: true, selector: "cms-profile-wage", inputs: { hideHeader: "hideHeader" }, viewQueries: [{ propertyName: "avatar", first: true, predicate: ["avatar"], descendants: true }, { propertyName: "sticker", first: true, predicate: ["sticker"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"cms-profile-wage-container\">\r\n <core-page-list\r\n [apiDefinition]=\"apiDefinition\"\r\n [columns]=\"columns\"\r\n [editRoute]=\"editRoute\"\r\n [crud]=\"crud\"\r\n [title]=\"title\" [left]=\"orgTree\"\r\n [normalMode]=\"true\"\r\n [outerParam$]=\"outerParam$\"\r\n [outerInOperators]=\"outerInOperators\"\r\n [autoResizeWithWindow]=\"true\"\r\n (corePageHeaderButtonClick)=\"onCorePageHeaderButtonClick($event)\"\r\n (selectedIdsChange)=\"onSelectedIdsChangeeee($event)\" \r\n [extraManualOffset]=\"178\"\r\n (rowClick)=\"onRowClick($event)\"\r\n [showParamKit]=\"true\"\r\n [datePeriodComparisonFor]=\"datePeriodComparisonFor\"\r\n [datePeriodComparisonForLabelKey]=\"datePeriodComparisonForLabelKey\"\r\n [hideStatusInclusion]=\"false\"\r\n [statusInclusionFor]=\"statusInclusionFor\"\r\n [statusInclusionForLabelKey]=\"statusInclusionForLabelKey\"\r\n [statusOptionsApi]=\"workStatusOptionsApi\"\r\n (onInstanceCreated)=\"onInstanceCreated($event)\"\r\n [frozen]=\"3\"\r\n [outerSort]=\"outerSort\"\r\n [generateTemplateRequest]=\"generateTemplateRequest\"\r\n [importPreviewPath]=\"'hu-working-hsl-pc-import'\"\r\n ></core-page-list>\r\n\r\n <ng-template #orgTree>\r\n <core-org-tree [(ngModel)]=\"orgIds\" (ngModelChange)=\"onOrgIdsChange($event)\">\r\n </core-org-tree>\r\n </ng-template>\r\n\r\n <ng-template #sticker let-code=\"context.statusName\">\r\n <core-status-sticker [code]=\"code\"></core-status-sticker>\r\n </ng-template>\r\n <app-evaluate-dialog [buttonItems]=\"buttonItems\" *ngIf=\"evaluateDialogService.showConfirmDialog$.value == true\"></app-evaluate-dialog>\r\n</div>", styles: [".btn-Update{margin-top:18px;color:#fff;background-color:#f37540;cursor:pointer;font-size:15px;height:36px;width:100px;border-radius:50px;transition:0s!important;border:var(--color-bg-pagination-button) 1px solid;display:flex;align-items:center;justify-content:center}.btn-Update:hover{box-shadow:0 0 5px #0000004d}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CorePageListComponent, selector: "core-page-list", inputs: ["normalMode", "hideHeader", "hideButtonGroup", "seekerMode", "mccMode", "height", "headerWrap", "headerFirstRowHeight", "enableTimeZoneConverterForDateTimePeriodParameters", "showParamKit", "datePeriodComparisonFor", "datePeriodComparisonForLabelKey", "statusInclusionFor", "statusInclusionForLabelKey", "statusOptionsApi", "hideDatePeriodComparison", "hideStatusInclusion", "title", "hasIdOfStringType", "hideCheck", "apiDefinition", "columns", "frozen", "inlineTools", "inlineToolItems", "editRoute", "crud", "showListInlineTools", "top", "left", "hideLeft", "outerParam$", "outerSort", "outerFilterOperators", "outerInOperators", "autoResizeWithWindow", "extraManualOffset", "wrap", "rowHeight", "selfResolveCorePageHeaderButtonClick", "clearData$", "deleteValidateFn", "generateTemplateRequest", "importPreviewPath", "columnSearchDefaultOpen", "fixedPageSize", "disableDoubleClick", "noPaddingCell", "disableHighlightOnClick", "loading$"], outputs: ["corePageHeaderButtonClick", "rowClick", "rowDoubleClick", "selectedIdsChange", "selectedDataChange", "onInstanceCreated", "onInputFileBase64DataReady"] }, { kind: "component", type: CoreOrgTreeComponent, selector: "core-org-tree", inputs: ["lineColor", "fullWidthMode", "accessorMode", "fullRendering", "height", "disabledLoopExpand", "showCheckInheritance"], outputs: ["itemDoubleClick", "itemClick"] }, { kind: "component", type: EvaluateDialogComponent, selector: "app-evaluate-dialog", inputs: ["showingUp", "buttonItems"] }, { kind: "component", type: CoreStatusStickerComponent, selector: "core-status-sticker", inputs: ["code", "isTrueCode"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i10.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i10.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
367
367
  }
368
368
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: WageComponent, decorators: [{
369
369
  type: Component,
@@ -384,4 +384,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
384
384
  type: ViewChild,
385
385
  args: ['sticker']
386
386
  }] } });
387
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9saWJyYXJpZXMvd2FnZS93YWdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1oaXN0YWZmLWFscGhhL3NyYy9saWIvYXBwL2xpYnJhcmllcy93YWdlL3dhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxTQUFTLEVBRVQsS0FBSyxHQUdOLE1BQU0sZUFBZSxDQUFDO0FBS3ZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUd0RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQyxPQUFPLEVBQUUscUJBQXFCLEVBQTJFLE1BQU0sNENBQTRDLENBQUM7QUFDNUosT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTdDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNFQUFzRSxDQUFDO0FBRzdHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBT2pFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRzNFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDOUYsT0FBTyxFQUFFLFdB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QkFBMUIsU0FBUzt1QkFBQyxRQUFRO2dCQUNHLE9BQU87c0JBQTVCLFNBQVM7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIFZpZXdDaGlsZCxcclxuICBUZW1wbGF0ZVJlZixcclxuICBJbnB1dCxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcblxyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50IH0gZnJvbSBcIi4uL2Jhc2UtY29tcG9uZW50L2Jhc2UvYmFzZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgSUFsZXJ0T3B0aW9ucyB9IGZyb20gXCIuLi9hbGVydC9hbGVydC9hbGVydC5tb2RlbFwiO1xyXG5pbXBvcnQgeyBJQ29yZVBhcmFtQ29udHJvbCB9IGZyb20gXCIuLi9jb3JlLWhlYWRlci1wYXJhbXMvZW51bS1hbmQtaW50ZXJmYWNlc1wiO1xyXG5pbXBvcnQgeyBFbnVtVHJhbnNsYXRlS2V5IH0gZnJvbSBcImFscGhhLWdsb2JhbC1jb25zdGFudHNcIjtcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBmaWx0ZXIgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBDb3JlUGFnZUxpc3RDb21wb25lbnQsIElDb3JlUGFnZUxpc3RBcGlEZWZpbml0aW9uLCBJQ29yZVBhZ2VMaXN0Q1JVRCwgSUNvcmVQYWdlTGlzdEVkaXRSb3V0aW5nIH0gZnJvbSBcIi4uL2NvcmUtcGFnZS1saXN0L2NvcmUtcGFnZS1saXN0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBhcGkgfSBmcm9tIFwiYWxwaGEtZ2xvYmFsLWNvbnN0YW50c1wiO1xyXG5pbXBvcnQgeyBJRmlsdGVyT3BlcmF0b3IsIElJbk9wZXJhdG9yLCBJU29ydEl0ZW0gfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy9JUXVlcnlMaXN0UmVxdWVzdFwiO1xyXG5pbXBvcnQgeyBFbnVtQ29yZUJ1dHRvblZOU0NvZGUgfSBmcm9tIFwiLi4vY29yZS1idXR0b24tZ3JvdXAtdm5zL2NvcmUtYnV0dG9uLWdyb3VwLXZucy9FbnVtQ29yZUJ1dHRvblZOU0NvZGVcIjtcclxuaW1wb3J0IHsgQ29yZVBhZ2VMaXN0U2VydmljZSwgSUdlbmVyYXRlVGVtcGxhdGVSZXF1ZXN0IH0gZnJvbSBcIi4uL2NvcmUtcGFnZS1saXN0L2NvcmUtcGFnZS1saXN0LnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgSUNvcmVUYWJsZUNvbHVtbkl0ZW0gfSBmcm9tIFwiLi4vY29yZS10YWJsZS9JQ29yZVRhYmxlQ29sdW1uSXRlbVwiO1xyXG5pbXBvcnQgeyBFbnVtQ29yZVRhYmxlUGlwZVR5cGUgfSBmcm9tIFwiLi4vY29yZS10YWJsZS9FbnVtQ29yZVRhYmxlUGlwZVR5cGVcIjtcclxuaW1wb3J0IHsgRW51bVNvcnREaXJlY3Rpb24gfSBmcm9tIFwiLi4vLi4vZW51bS9FbnVtU29ydERpcmVjdGlvblwiO1xyXG5pbXBvcnQgeyBPcmdhbml6YXRpb25TZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL29yZ2FuaXphdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IE11bHRpTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL211bHRpLWxhbmd1YWdlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgUmFuZG9tQXZhdGFyU2VydmljZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9yYW5kb20tYXZhdGFyLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgQXBwU2VydmljZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9hcHAuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBBbGVydFNlcnZpY2UgfSBmcm9tIFwiLi4vYWxlcnQvYWxlcnQuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBFdmFsdWF0ZURpYWxvZ1NlcnZpY2UgfSBmcm9tIFwiLi4vLi4vc2VydmljZXMvdmFsdWF0ZS1kaWFsb2cuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBFbnVtRm9ybUJhc2VDb250b2xUeXBlIH0gZnJvbSBcIi4uLy4uL2VudW0vRW51bUZvcm1CYXNlQ29udG9sVHlwZVwiO1xyXG5pbXBvcnQgeyBJRm9ybWF0ZWRSZXNwb25zZSB9IGZyb20gXCIuLi8uLi9pbnRlcmZhY2VzL0lGb3JtYXRlZFJlc3BvbnNlXCI7XHJcbmltcG9ydCB7IElDb3JlQnV0dG9uVk5TIH0gZnJvbSBcIi4uL2NvcmUtYnV0dG9uLWdyb3VwLXZucy9jb3JlLWJ1dHRvbi1ncm91cC12bnMvSUNvcmVCdXR0b25WTlNcIjtcclxuaW1wb3J0IHsgYWxlcnRPcHRpb25zIH0gZnJvbSBcIi4uLy4uL2NvbnN0YW50cy9hbGVydE9wdGlvbnNcIjtcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBDb3JlT3JnVHJlZUNvbXBvbmVudCB9IGZyb20gXCIuLi9jb3JlLW9yZy10cmVlL2NvcmUtb3JnLXRyZWUvY29yZS1vcmctdHJlZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgRXZhbHVhdGVEaWFsb2dDb21wb25lbnQgfSBmcm9tIFwiLi4vZXZhbHVhdGUtZGlhbG9nL2V2YWx1YXRlLWRpYWxvZy5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgQ29yZVN0YXR1c1N0aWNrZXJDb21wb25lbnQgfSBmcm9tIFwiLi4vY29yZS1zdGF0dXMtc3RpY2tlci9jb3JlLXN0YXR1cy1zdGlja2VyL2NvcmUtc3RhdHVzLXN0aWNrZXIuY29tcG9uZW50XCI7XHJcblxyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImNtcy1wcm9maWxlLXdhZ2VcIixcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIENvcmVQYWdlTGlzdENvbXBvbmVudCxcclxuICAgIENvcmVPcmdUcmVlQ29tcG9uZW50LFxyXG4gICAgRXZhbHVhdGVEaWFsb2dDb21wb25lbnQsXHJcbiAgICBDb3JlU3RhdHVzU3RpY2tlckNvbXBvbmVudCxcclxuICAgIEZvcm1zTW9kdWxlXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogXCIuL3dhZ2UuY29tcG9uZW50Lmh0bWxcIixcclxuICBzdHlsZVVybHM6IFtcIi4vd2FnZS5jb21wb25lbnQuc2Nzc1wiXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFdhZ2VDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG5cclxuICBASW5wdXQoKSBoaWRlSGVhZGVyITogYm9vbGVhbjtcclxuXHJcbiAgQFZpZXdDaGlsZCgnYXZhdGFyJykgYXZhdGFyITogVGVtcGxhdGVSZWY8YW55PjtcclxuICBAVmlld0NoaWxkKCdzdGlja2VyJykgc3RpY2tlciE6IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIGlkOiBhbnk7XHJcbiAgLyogU1RBUlQ6IExvY2FsIGZpbHRlciBwYXJhbXMgKi9cclxuICBvcmdJZHMhOiBudW1iZXJbXTtcclxuICAvKiBFTkQ6IExvY2FsIGZpbHRlciBwYXJhbXMgKi9cclxuXHJcbiAgbGlzdEluc3RhbmNlITogbnVtYmVyO1xyXG4gIHBhcmFtUm93cyE6IElDb3JlUGFyYW1Db250cm9sW11bXTtcclxuICBzZWxlY3RlZElkczogbnVtYmVyW10gPSBbXTtcclxuICAvKlxyXG4gIFByb3BlcnRpZXMgYmVpbmcgcGFzc2VkIHRvIGNvcmUtcGFnZS1saXN0XHJcbiAgKi9cclxuXHJcbiAgYWxlcnRPcHRpb25zOiBJQWxlcnRPcHRpb25zID0ge1xyXG4gICAgYXV0b0Nsb3NlOiB0cnVlLFxyXG4gICAga2VlcEFmdGVyUm91dGVDaGFuZ2U6IHRydWUsXHJcbiAgICB0aW1lQ2xvc2U6IDEwMDAwXHJcbiAgfTtcclxuXHJcbiAgdGl0bGUgPSBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPTVBPTkVOVF9USVRMRV9XQUdFXHJcbiAgb3V0ZXJQYXJhbSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4obnVsbCk7XHJcblxyXG4gIGRhdGVQZXJpb2RDb21wYXJpc29uRm9yOiBzdHJpbmcgPSAnZWZmZWN0RGF0ZSc7XHJcbiAgZGF0ZVBlcmlvZENvbXBhcmlzb25Gb3JMYWJlbEtleTogRW51bVRyYW5zbGF0ZUtleSAgPSBFbnVtVHJhbnNsYXRlS2V5Lk5VTEw7XHJcbiAgc3RhdHVzSW5jbHVzaW9uRm9yOiBzdHJpbmcgPSAnZW1wV29ya1N0YXR1cyc7XHJcbiAgc3RhdHVzSW5jbHVzaW9uRm9yTGFiZWxLZXk6IEVudW1UcmFuc2xhdGVLZXkgPSBFbnVtVHJhbnNsYXRlS2V5LlVJX0VOVElUWV9GSUVMRF9DQVBUSU9OX1dFTEZBUkVfTU5HX0VNUExPWUVFX1NUQVRVUztcclxuICB3b3JrU3RhdHVzT3B0aW9uc0FwaTogYXBpID0gYXBpLkhVX0VNUExPWUVFX0NWX0dFVF9FTVBMT1lFRV9TVEFUVVNfTElTVDtcclxuICBvdXRlckZpbHRlck9wZXJhdG9ycyE6IElGaWx0ZXJPcGVyYXRvcltdO1xyXG4gIG91dGVySW5PcGVyYXRvcnM6IElJbk9wZXJhdG9yW10gPSBbXTtcclxuXHJcbiAgYXBpRGVmaW5pdGlvbjogSUNvcmVQYWdlTGlzdEFwaURlZmluaXRpb24gPSB7XHJcbiAgICBxdWVyeUxpc3RSZWxhdGl2ZVBhdGg6IGFwaS5IVV9XQUdFX1FVRVJZX0xJU1QsXHJcbiAgfVxyXG5cclxuICBjcnVkOiBJQ29yZVBhZ2VMaXN0Q1JVRCA9IHtcclxuICAgIGRlbGV0ZUlkczogYXBpLkhVX1dBR0VfREVMRVRFX0lEUyxcclxuICAgIHRvZ2dsZUFwcHJvdmVJZHM6IGFwaS5IVV9XQUdFX0NIQU5HRVNUQVRVU0FQUFJPVkVcclxuICB9XHJcblxyXG4gIGF2YXRhclRlbXBsYXRlITogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgZ2VuZXJhdGVUZW1wbGF0ZVJlcXVlc3QhOiBJR2VuZXJhdGVUZW1wbGF0ZVJlcXVlc3Q7XHJcbiAgYnV0dG9uSXRlbXM6IEVudW1Db3JlQnV0dG9uVk5TQ29kZVtdID0gW1xyXG4gICAgRW51bUNvcmVCdXR0b25WTlNDb2RlLk5PTkVfSEVBREVSX0NBTkNFTCxcclxuICAgIEVudW1Db3JlQnV0dG9uVk5TQ29kZS5OT05FX0hFQURFUl9VUERBVEVcclxuICBdO1xyXG5cclxuICBjb2x1bW5zOiBJQ29yZVRhYmxlQ29sdW1uSXRlbVtdID0gW1xyXG4gICAge1xyXG4gICAgICBjYXB0aW9uOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0VOVElUWV9GSUVMRF9DQVBUSU9OX0NPTU1PTl9JRCxcclxuICAgICAgZmllbGQ6ICdpZCcsXHJcbiAgICAgIGhpZGRlbjogdHJ1ZSxcclxuICAgICAgdHlwZTogJ251bWJlcicsXHJcbiAgICAgIGFsaWduOiAncmlnaHQnLFxyXG4gICAgICB3aWR0aDogMjAwLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgY2FwdGlvbjogRW51bVRyYW5zbGF0ZUtleS5VSV9DT01QT05FTlRfTEFCRUxfV0FHRV9TVEFUVVMsXHJcbiAgICAgIGZpZWxkOiAnc3RhdHVzTmFtZScsXHJcbiAgICAgIHR5cGU6ICdzdHJpbmcnLFxyXG4gICAgICBhbGlnbjogJ2xlZnQnLFxyXG4gICAgICB3aWR0aDogMTIwLFxyXG5cclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIGNhcHRpb246IEVudW1UcmFuc2xhdGVLZXkuVUlfQ09NUE9ORU5UX0xBQkVMX1dBR0VfRU1QTE9ZRUVfQ09ERSxcclxuICAgICAgZmllbGQ6ICdlbXBsb3llZUNvZGUnLFxyXG4gICAgICB0eXBlOiAnc3RyaW5nJyxcclxuICAgICAgYWxpZ246ICdsZWZ0JyxcclxuICAgICAgd2lkdGg6IDgwLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgY2FwdGlvbjogRW51bVRyYW5zbGF0ZUtleS5VSV9DT01QT05FTlRfTEFCRUxfV0FHRV9FTVBMT1lFRV9OQU1FLFxyXG4gICAgICBmaWVsZDogJ2VtcGxveWVlTmFtZScsXHJcbiAgICAgIHR5cGU6ICdzdHJpbmcnLFxyXG4gICAgICBhbGlnbjogJ2xlZnQnLFxyXG4gICAgICB3aWR0aDogMjUwLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgY2FwdGlvbjogRW51bVRyYW5zbGF0ZUtleS5VSV9DT01QT05FTlRfTEFCRUxfV0FHRV9PUkdfTkFNRSxcclxuICAgICAgZmllbGQ6ICdvcmdOYW1lJyxcclxuICAgICAgdHlwZTogJ3N0cmluZycsXHJcbiAgICAgIGFsaWduOiAnbGVmdCcsXHJcbiAgICAgIHdpZHRoOiAzMDAsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBjYXB0aW9uOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPTVBPTkVOVF9MQUJFTF9XQUdFX1BPU0lUSU9OX05BTUUsXHJcbiAgICAgIGZpZWxkOiAncG9zaXRpb25OYW1lJyxcclxuICAgICAgdHlwZTogJ3N0cmluZycsXHJcbiAgICAgIGFsaWduOiAnbGVmdCcsXHJcbiAgICAgIHdpZHRoOiAzMDAsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBjYXB0aW9uOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPTVBPTkVOVF9MQUJFTF9XQUdFX0VGRkVDVERBVEUsXHJcbiAgICAgIGZpZWxkOiAnZWZmZWN0RGF0ZScsXHJcbiAgICAgIHR5cGU6ICdkYXRlJyxcclxuICAgICAgcGlwZTogRW51bUNvcmVUYWJsZVBpcGVUeXBlLkRBVEUsXHJcbiAgICAgIGFsaWduOiAncmlnaHQnLFxyXG4gICAgICB3aWR0aDogMTAwLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgY2FwdGlvbjogRW51bVRyYW5zbGF0ZUtleS5VSV9DT01QT05FTlRfTEFCRUxfV0FHRV9FWFBJUkVEQVRFLFxyXG4gICAgICBmaWVsZDogJ2V4cGlyZURhdGUnLFxyXG4gICAgICB0eXBlOiAnZGF0ZScsXHJcbiAgICAgIHBpcGU6IEVudW1Db3JlVGFibGVQaXBlVHlwZS5EQVRFLFxyXG4gICAgICBhbGlnbjogJ2NlbnRlcicsXHJcbiAgICAgIHdpZHRoOiAxMzAsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBjYXB0aW9uOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPTVBPTkVOVF9MQUJFTF9XQUdFX1RZUEVfTkFNRSxcclxuICAgICAgZmllbGQ6ICd0eXBlTmFtZScsXHJcbiAgICAgIHR5cGU6ICdzdHJpbmcnLFxyXG4gICAgICBhbGlnbjogJ2xlZnQnLFxyXG4gICAgICB3aWR0aDogMzAwLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgY2FwdGlvbjogRW51bVRyYW5zbGF0ZUtleS5VSV9DT01QT05FTlRfTEFCRUxfV0FHRV9ERUNJU0lPTk5PLFxyXG4gICAgICBmaWVsZDogJ2RlY2lzaW9uTm8nLFxyXG4gICAgICB0eXBlOiAnc3RyaW5nJyxcclxuICAgICAgYWxpZ246ICdsZWZ0JyxcclxuICAgICAgd2lkdGg6IDExMCxcclxuICAgIH0sXHJcbiAgICAvLyB7XHJcbiAgICAvLyAgIGNhcHRpb246IEVudW1UcmFuc2xhdGVLZXkuVUlfQ09NUE9ORU5UX0xBQkVMX1dBR0VfVEFYVEFCTEUsXHJcbiAgICAvLyAgIGZpZWxkOiAndGF4VGFibGVOYW1lJyxcclxuICAgIC8vICAgdHlwZTogJ3N0cmluZycsXHJcbiAgICAvLyAgIGFsaWduOiAnbGVmdCcsXHJcbiAgICAvLyAgIHdpZHRoOiAxMDAsXHJcbiAgICAvLyB9LFxyXG4gICAgLy8ge1xyXG4gICAgLy8gICBjYXB0aW9uOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPTVBPTkVOVF9MQUJFTF9XQUdFX1JFR0lPTixcclxuICAgIC8vICAgZmllbGQ6ICdyZWdpb25OYW1lJyxcclxuICAgIC8vICAgdHlwZTogJ2RhdGUnLFxyXG4gICAgLy8gICBwaXBlOiBFbnVtQ29yZVRhYmxlUGlwZVR5cGUuREFURSxcclxuICAgIC8vICAgYWxpZ246ICdjZW50ZXInLFxyXG4gICAgLy8gICB3aWR0aDogMTAwLFxyXG4gICAgLy8gfSxcclxuICAgIC8vIHtcclxuICAgIC8vICAgY2FwdGlvbjogRW51bVRyYW5zbGF0ZUtleS5VSV9DT01QT05FTlRfTEFCRUxfV0FHRV9TQUxBUllfVFlQRV9OQU1FLFxyXG4gICAgLy8gICBmaWVsZDogJ3NhbGFyeVR5cGUnLFxyXG4gICAgLy8gICB0eXBlOiAnc3RyaW5nJyxcclxuICAgIC8vICAgYWxpZ246ICdsZWZ0JyxcclxuICAgIC8vICAgd2lkdGg6IDEwMCxcclxuICAgIC8vIH0sXHJcbiAgICAvLyB7XHJcbiAgICAvLyAgIGNhcHRpb246IEVudW1UcmFuc2xhdGVLZXkuVUlfQ09NUE9ORU5UX0xBQkVMX1dBR0VfU0FMQVJZX1NDQUxFX05BTUUsXHJcbiAgICAvLyAgIGZpZWxkOiAnc2FsYXJ5U2NhbGVOYW1lJyxcclxuICAgIC8vICAgdHlwZTogJ3N0cmluZycsXHJcbiAgICAvLyAgIGFsaWduOiAnbGVmdCcsXHJcbiAgICAvLyAgIGhpZGRlbjogdHJ1ZSxcclxuICAgIC8vICAgd2lkdGg6IDIwMCxcclxuICAgIC8vIH0sXHJcbiAgICAvLyB7XHJcbiAgICAvLyAgIGNhcHRpb246IEVudW1UcmFuc2xhdGVLZXkuVUlfQ09NUE9ORU5UX0xBQkVMX1dBR0VfU0FMQVJZX1JBTktfTkFNRSxcclxuICAgIC8vICAgZmllbGQ6ICdzYWxhcnlSYW5rTmFtZScsXHJcbiAgICAvLyAgIHR5cGU6ICdzdHJpbmcnLFxyXG4gICAgLy8gICBhbGlnbjogJ2xlZnQnLFxyXG4gICAgLy8gICBoaWRkZW46IHRydWUsXHJcbiAgICAvLyAgIHdpZHRoOiAyMDAsXHJcbiAgICAvLyB9LFxyXG4gICAgLy8ge1xyXG4gICAgLy8gICBjYXB0aW9uOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPTVBPTkVOVF9MQUJFTF9XQUdFX1NBTEFSWV9MRVZFTF9OQU1FLFxyXG4gICAgLy8gICBmaWVsZDogJ3NhbGFyeUxldmVsTmFtZScsXHJcbiAgICAvLyAgIHR5cGU6ICdzdHJpbmcnLFxyXG4gICAgLy8gICBhbGlnbjogJ2xlZnQnLFxyXG4gICAgLy8gICBoaWRkZW46IHRydWUsXHJcbiAgICAvLyAgIHdpZHRoOiAyMDAsXHJcbiAgICAvLyB9LFxyXG4gICAgLy8ge1xyXG4gICAgLy8gICBjYXB0aW9uOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPTVBPTkVOVF9MQUJFTF9XQUdFX0NPRUZGSUNJRU5ULFxyXG4gICAgLy8gICBmaWVsZDogJ2NvZWZmaWNpZW50JyxcclxuICAgIC8vICAgdHlwZTogJ3N0cmluZycsXHJcbiAgICAvLyAgIHBpcGU6IEVudW1Db3JlVGFibGVQaXBlVHlwZS5OVU1CRVIsXHJcbiAgICAvLyAgIGFsaWduOiAnY2VudGVyJyxcclxuICAgIC8vICAgd2lkdGg6IDcwLFxyXG4gICAgLy8gfSxcclxuICAgIC8vIHtcclxuICAgIC8vICAgY2FwdGlvbjogRW51bVRyYW5zbGF0ZUtleS5VSV9DT01QT05FTlRfTEFCRUxfV0FHRV9TQUxfUEVSQ0VOVCxcclxuICAgIC8vICAgZmllbGQ6ICdzYWxQZXJjZW50JyxcclxuICAgIC8vICAgdHlwZTogJ3N0cmluZycsXHJcbiAgICAvLyAgIHBpcGU6IEVudW1Db3JlVGFibGVQaXBlVHlwZS5OVU1CRVIsXHJcbiAgICAvLyAgIGFsaWduOiAnbGVmdCcsXHJcbiAgICAvLyAgIHdpZHRoOiA3MCxcclxuICAgIC8vIH0sXHJcbiAgICB7XHJcbiAgICAgIGNhcHRpb246IEVudW1UcmFuc2xhdGVLZXkuVUlfQ09NUE9ORU5UX0xBQkVMX1dBR0VfRVhQSVJFX1VQU0FMX0RBVEUsXHJcbiAgICAgIGZpZWxkOiAnZXhwaXJlVXBzYWxEYXRlJyxcclxuICAgICAgdHlwZTogJ2RhdGUnLFxyXG4gICAgICBwaXBlOiBFbnVtQ29yZVRhYmxlUGlwZVR5cGUuREFURSxcclxuICAgICAgYWxpZ246ICdjZW50ZXInLFxyXG4gICAgICB3aWR0aDogMTAwLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgY2FwdGlvbjogRW51bVRyYW5zbGF0ZUtleS5VSV9DT01QT05FTlRfTEFCRUxfV0FHRV9SRUFTT05fVVBTQUwsXHJcbiAgICAgIGZpZWxkOiAncmVhc29uVXBzYWwnLFxyXG4gICAgICB0eXBlOiAnc3RyaW5nJyxcclxuICAgICAgYWxpZ246ICdsZWZ0JyxcclxuICAgICAgd2lkdGg6IDExMCxcclxuICAgIH0sXHJcbiAgXVxyXG5cclxuICBkZWZhdWx0QXZhdGFyITogc3RyaW5nO1xyXG5cclxuICBlZGl0Um91dGU6IElDb3JlUGFnZUxpc3RFZGl0Um91dGluZyA9IHtcclxuICAgIGF1eGlsaWFyeTogJ3BvcHVwQXV4J1xyXG4gIH1cclxuICBvdXRlclNvcnQ6IElTb3J0SXRlbVtdID0gW1xyXG4gICAge1xyXG4gICAgICBmaWVsZDogXCJqb2JPcmRlck51bVwiLFxyXG4gICAgICBzb3J0RGlyZWN0aW9uOiBFbnVtU29ydERpcmVjdGlvbi5BU0NcclxuICAgIH1cclxuICBdXHJcbiAgLyogRW5kIFByb3BlcnRpZXMgYmVpbmcgcGFzc2VkIHRvIGNvcmUtcGFnZS10eXBlLWEgKi9cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgb3ZlcnJpZGUgbWxzOiBNdWx0aUxhbmd1YWdlU2VydmljZSxcclxuICAgIHB1YmxpYyByYXM6IFJhbmRvbUF2YXRhclNlcnZpY2UsXHJcbiAgICBwdWJsaWMgb3JnYW5pemF0aW9uU2VydmljZTogT3JnYW5pemF0aW9uU2VydmljZSxcclxuICAgIHB1YmxpYyBhcHBTZXJ2aWNlOiBBcHBTZXJ2aWNlLFxyXG4gICAgcHVibGljIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlLFxyXG4gICAgcHVibGljIGNvcmVQYWdlTGlzdFNlcnZpY2U6IENvcmVQYWdlTGlzdFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgaHR0cDogSHR0cENsaWVudCxcclxuICAgIHB1YmxpYyBldmFsdWF0ZURpYWxvZ1NlcnZpY2U6IEV2YWx1YXRlRGlhbG9nU2VydmljZVxyXG4gICkge1xyXG4gICAgc3VwZXIobWxzKTtcclxuICAgIHRoaXMuZGVmYXVsdEF2YXRhciA9IHJhcy5nZXQoKTtcclxuXHJcbiAgICAvKiBHZXQgb3JnSWRzIHN0YXJ0dXAgdmFsdWUgKi9cclxuICAgIGNvbnN0IG5ld09yZ0lkczogbnVtYmVyW10gPSBbXTtcclxuICAgIHRoaXMub3JnYW5pemF0aW9uU2VydmljZS5zdGF0dXMkLnZhbHVlLmFjdGl2ZUtleXMubWFwKHggPT4gbmV3T3JnSWRzLnB1c2goTnVtYmVyKHgpKSlcclxuICAgIHRoaXMub25PcmdJZHNDaGFuZ2UobmV3T3JnSWRzKVxyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGNvbnN0IGZpbHRlciA9IHRoaXMuY29sdW1ucy5maWx0ZXIoYyA9PiBjLmZpZWxkID09PSAnYXZhdGFyJyk7XHJcbiAgICAgIGlmICghIWZpbHRlci5sZW5ndGgpIGZpbHRlclswXS50ZW1wbGF0ZVJlZiA9IHRoaXMuYXZhdGFyO1xyXG4gICAgICBjb25zdCBzdGlja2VyRmlsdGVyID0gdGhpcy5jb2x1bW5zLmZpbHRlcihjID0+IGMuZmllbGQgPT09ICdzdGF0dXNOYW1lJyk7XHJcbiAgICAgIGlmICghIXN0aWNrZXJGaWx0ZXIubGVuZ3RoKSBzdGlja2VyRmlsdGVyWzBdLnRlbXBsYXRlUmVmID0gdGhpcy5zdGlja2VyO1xyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIG9uT3JnSWRzQ2hhbmdlKG9yZ0lkczogbnVtYmVyW10pIHtcclxuICAgIHRoaXMub3JnSWRzID0gb3JnSWRzXHJcbiAgICB0aGlzLm91dGVySW5PcGVyYXRvcnMgPSBbXHJcbiAgICAgIHtcclxuICAgICAgICBmaWVsZDogJ29yZ0lkJyxcclxuICAgICAgICB2YWx1ZXM6IG9yZ0lkc1xyXG4gICAgICB9XHJcbiAgICBdXHJcbiAgfVxyXG5cclxuICBvbkluc3RhbmNlQ3JlYXRlZChldmVudDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLmxpc3RJbnN0YW5jZSA9IGV2ZW50O1xyXG4gIH1cclxuICBvbk5nTW9kZWxDaGFuZ2UgPSAobmdNb2RlbDogc3RyaW5nLCB2YWx1ZTogYW55KSA9PiB7XHJcblxyXG4gIH1cclxuICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICB0aGlzLmV2YWx1YXRlRGlhbG9nU2VydmljZS5kaWFsb2dDb25maXJtZWQkLnBpcGUoXHJcbiAgICAgICAgZmlsdGVyKHggPT4gISF4KVxyXG4gICAgICApLnN1YnNjcmliZSh4ID0+IHtcclxuICAgICAgICBpZighIXg/LmNvbmZpcm1lZCl7XHJcbiAgICAgICAgICB0aGlzLlVwZGF0ZVVwc2FsKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgKSAgICBcclxuICAgIHRoaXMucGFyYW1Sb3dzID0gW1xyXG4gICAgICBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgZmxleFNpemU6IDYsXHJcbiAgICAgICAgICBuYW1lOiAnZWZmZWN0VXBzYWxEYXRlJyxcclxuICAgICAgICAgIG5nTW9kZWw6IG51bGwsXHJcbiAgICAgICAgICBuZ01vZGVsQ2hhbmdlOiB0aGlzLm9uTmdNb2RlbENoYW5nZSxcclxuICAgICAgICAgIHZhbHVlOiBudWxsLFxyXG4gICAgICAgICAgbGFiZWw6IHRoaXMuZGF0ZVBlcmlvZENvbXBhcmlzb25Gb3JMYWJlbEtleSxcclxuICAgICAgICAgIGNvbnRyb2xUeXBlOiBFbnVtRm9ybUJhc2VDb250b2xUeXBlLkRBVEVQSUNLRVIsXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcblxyXG4gICAgICAgICAgZmxleFNpemU6IDYsXHJcbiAgICAgICAgICBuYW1lOiAncmVhc29uVXBzYWwnLFxyXG4gICAgICAgICAgbmdNb2RlbDogbnVsbCxcclxuICAgICAgICAgIG5nTW9kZWxDaGFuZ2U6IHRoaXMub25OZ01vZGVsQ2hhbmdlLFxyXG4gICAgICAgICAgdmFsdWU6IG51bGwsXHJcbiAgICAgICAgICBsYWJlbDogRW51bVRyYW5zbGF0ZUtleS5VSV9DT01QT05FTlRfTEFCRUxfV0FHRV9SRUFTT05fVVBTQUwsXHJcbiAgICAgICAgICBjb250cm9sVHlwZTogRW51bUZvcm1CYXNlQ29udG9sVHlwZS5URVhUQk9YLFxyXG4gICAgICAgIH1cclxuICAgICAgXVxyXG4gICAgXTtcclxuXHJcblxyXG4gICAgdGhpcy5tbHMubGFuZyQuc3Vic2NyaWJlKHggPT4ge1xyXG4gICAgICB0aGlzLmxhbmcgPSB4O1xyXG4gICAgICB0aGlzLmdlbmVyYXRlVGVtcGxhdGVSZXF1ZXN0ID0ge1xyXG4gICAgICAgIGV4Q29kZTogJ0hVX1dPUktJTkdfSFNMX1BDJyxcclxuICAgICAgICBsYW5nOiB4XHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBvblNlbGVjdGVkSWRzQ2hhbmdlZWVlKGU6IG51bWJlcltdKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbGVjdGVkSWRzID0gZTtcclxuICB9XHJcbiAgVXBkYXRlVXBzYWwoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZElkcyA9PSBudWxsIHx8IHRoaXMuc2VsZWN0ZWRJZHMubGVuZ3RoID09IDApIHtcclxuICAgICAgcmV0dXJuIHRoaXMuYWxlcnRTZXJ2aWNlLndhcm4odGhpcy5tbHMudHJhbnMoXCJVSV9DT01QT05FTlRfVElUTEVfV0FHRV9JRFNfTlVMTFwiKSwgdGhpcy5hbGVydE9wdGlvbnMpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goIC8vIDw9PSBJbm5lciBwdXNoIHRoaXMucGFyYW1Sb3dzWzBdWzBdLm5nTW9kZWwudG9Mb2NhbGVEYXRlU3RyaW5nKCdlbi1VUycpXHJcbiAgICAgIHRoaXMuYXBwU2VydmljZVxyXG4gICAgICAgIC5wb3N0KCcvYXBpL0h1V29ya2luZy9VcGRhdGVVcHNhbCcsIHsgaWRzOiB0aGlzLnNlbGVjdGVkSWRzLCBkYXRlQ2FsOiB0aGlzLmV2YWx1YXRlRGlhbG9nU2VydmljZS5kYXRlSW5wdXQkLnZhbHVlLnRvTG9jYWxlRGF0ZVN0cmluZygnZW4tVVMnKSwgcmVhc29uVXBzYWw6IHRoaXMuZXZhbHVhdGVEaWFsb2dTZXJ2aWNlLnJlYXNvbiQudmFsdWUgfSlcclxuICAgICAgICAuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKCEhcmVzLm9rICYmIHJlcy5zdGF0dXMgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAvLyByZWxvYWQgbcOgbiBow6xuaCAgXHJcbiAgICAgICAgICAgIGNvbnN0IGxpc3RJbnN0YW5jZXMgPSB0aGlzLmNvcmVQYWdlTGlzdFNlcnZpY2UuaW5zdGFuY2VzLmZpbHRlcihcclxuICAgICAgICAgICAgICAoeSkgPT4geS5pbnN0YW5jZU51bWJlciA9PT0gdGhpcy5saXN0SW5zdGFuY2VcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgaWYgKCEhbGlzdEluc3RhbmNlcy5sZW5ndGgpIHtcclxuICAgICAgICAgICAgICBsaXN0SW5zdGFuY2VzWzBdLnJlbG9hZEZsYWckLm5leHQoXHJcbiAgICAgICAgICAgICAgICAhISFsaXN0SW5zdGFuY2VzWzBdLnJlbG9hZEZsYWckLnZhbHVlXHJcbiAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLy8gZW5kIHJlbG9hZCBtw6BuIGjDrG5oXHJcbiAgICAgICAgICAgIGNvbnN0IGJvZHk6IElGb3JtYXRlZFJlc3BvbnNlID0gcmVzLmJvZHlcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuYWxlcnRTZXJ2aWNlLnN1Y2Nlc3ModGhpcy5tbHMudHJhbnMoYm9keS5tZXNzYWdlQ29kZSksIHRoaXMuYWxlcnRPcHRpb25zKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KSlcclxuICB9XHJcbiAgb25Sb3dDbGljayhlOiBhbnkpIHtcclxuICAgIHRoaXMuaWQgPSBlLmlkXHJcbiAgfVxyXG4gIG9uQ29yZVBhZ2VIZWFkZXJCdXR0b25DbGljayhlOiBJQ29yZUJ1dHRvblZOUykge1xyXG4gICAgc3dpdGNoIChlLmNvZGUpIHtcclxuICAgICAgY2FzZSBFbnVtQ29yZUJ1dHRvblZOU0NvZGUuSEVBREVSX1BSSU5UOlxyXG4gICAgICAgIGRlYnVnZ2VyO1xyXG5cclxuICAgICAgICBsZXQgZmlsZW5hbWU9ICcnO1xyXG4gICAgICAgIHRoaXMuaHR0cC5nZXQoYXBpLkhVX0RFQ0lTSU9OX0ZJTEVfTkFNRSt0aGlzLmlkLnRvU3RyaW5nKCkpLnN1YnNjcmliZSgocmVzcG9uc2U6IGFueSkgPT4ge1xyXG4gICAgICAgICAgZmlsZW5hbWUgPSByZXNwb25zZS5pbm5lckJvZHk7IFxyXG4gICAgICAgIH0pO1xyXG5cclxuXHJcbiAgICAgICAgdGhpcy5odHRwLmdldChhcGkuSFVfREVDSVNJT05fUFJJTlQsIHtcclxuICAgICAgICAgIHJlc3BvbnNlVHlwZTogJ2Jsb2InLFxyXG4gICAgICAgICAgcGFyYW1zOiB7IGlkOiB0aGlzLmlkLnRvU3RyaW5nKCkgfVxyXG4gICAgICAgIH0pLnN1YnNjcmliZSgocmVzcG9uc2U6IEJsb2IpID0+IHtcclxuICAgICAgICAgIGlmIChyZXNwb25zZS50eXBlID09PSAnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJykge1xyXG4gICAgICAgICAgICBjb25zdCBkb3dubG9hZFVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwocmVzcG9uc2UpO1xyXG4gICAgICAgICAgICBjb25zdCBsaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xyXG4gICAgICAgICAgICBsaW5rLmhyZWYgPSBkb3dubG9hZFVybDtcclxuICAgICAgICAgICAgbGluay5zZXRBdHRyaWJ1dGUoJ2Rvd25sb2FkJywgZmlsZW5hbWUrJy5kb2MnKTtcclxuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsaW5rKTtcclxuICAgICAgICAgICAgbGluay5jbGljaygpO1xyXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGxpbmspO1xyXG4gICAgICAgICAgICBVUkwucmV2b2tlT2JqZWN0VVJMKGRvd25sb2FkVXJsKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xyXG4gICAgICAgICAgICByZWFkZXIub25sb2FkID0gKCkgPT4ge1xyXG4gICAgICAgICAgICAgIGNvbnN0IGpzb25Cb2R5ID0gcmVhZGVyLnJlc3VsdCBhcyBzdHJpbmc7XHJcbiAgICAgICAgICAgICAgY29uc3QgZGF0YSA9IEpTT04ucGFyc2UoanNvbkJvZHkpO1xyXG4gICAgICAgICAgICAgIGlmIChkYXRhLnN0YXR1c0NvZGUgPT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5zdWNjZXNzKGRhdGEubWVzc2FnZUNvZGUsIGFsZXJ0T3B0aW9ucyk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5hbGVydFNlcnZpY2UuZXJyb3IoZGF0YS5tZXNzYWdlQ29kZSwgYWxlcnRPcHRpb25zKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIHJlYWRlci5yZWFkQXNUZXh0KHJlc3BvbnNlKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgRW51bUNvcmVCdXR0b25WTlNDb2RlLkhFQURFUl9VUERBVEU6XHJcbiAgICAgICAgdGhpcy5ldmFsdWF0ZURpYWxvZ1NlcnZpY2UuY3JlYXRlTmV3KEVudW1UcmFuc2xhdGVLZXkuVUlfQ09NUE9ORU5UX1RJVExFX0hVX0VWQUxVQVRFX1VQREFURV9EQVRBLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgdW5kZWZpbmVkLFxyXG4gICAgICAgICAgRW51bVRyYW5zbGF0ZUtleS5VSV9DT01QT05FTlRfVElUTEVfSFVfRVZBTFVBVEVfSU5QVVRfUkVBU09OLCB1bmRlZmluZWQsIGZhbHNlLCB0cnVlLClcclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdDpcclxuICAgIH1cclxuICB9XHJcbn0iLCI8ZGl2IGNsYXNzPVwiY21zLXByb2ZpbGUtd2FnZS1jb250YWluZXJcIj5cclxuICA8Y29yZS1wYWdlLWxpc3RcclxuICAgIFthcGlEZWZpbml0aW9uXT1cImFwaURlZmluaXRpb25cIlxyXG4gICAgW2NvbHVtbnNdPVwiY29sdW1uc1wiXHJcbiAgICBbZWRpdFJvdXRlXT1cImVkaXRSb3V0ZVwiXHJcbiAgICBbY3J1ZF09XCJjcnVkXCJcclxuICAgIFt0aXRsZV09XCJ0aXRsZVwiIFtsZWZ0XT1cIm9yZ1RyZWVcIlxyXG4gICAgW25vcm1hbE1vZGVdPVwidHJ1ZVwiXHJcbiAgICBbb3V0ZXJQYXJhbSRdPVwib3V0ZXJQYXJhbSRcIlxyXG4gICAgW291dGVySW5PcGVyYXRvcnNdPVwib3V0ZXJJbk9wZXJhdG9yc1wiXHJcbiAgICBbYXV0b1Jlc2l6ZVdpdGhXaW5kb3ddPVwidHJ1ZVwiXHJcbiAgICAoY29yZVBhZ2VIZWFkZXJCdXR0b25DbGljayk9XCJvbkNvcmVQYWdlSGVhZGVyQnV0dG9uQ2xpY2soJGV2ZW50KVwiXHJcbiAgICAoc2VsZWN0ZWRJZHNDaGFuZ2UpPVwib25TZWxlY3RlZElkc0NoYW5nZWVlZSgkZXZlbnQpXCIgXHJcbiAgICBbZXh0cmFNYW51YWxPZmZzZXRdPVwiMTc4XCJcclxuICAgIChyb3dDbGljayk9XCJvblJvd0NsaWNrKCRldmVudClcIlxyXG4gICAgW3Nob3dQYXJhbUtpdF09XCJ0cnVlXCJcclxuICAgIFtkYXRlUGVyaW9kQ29tcGFyaXNvbkZvcl09XCJkYXRlUGVyaW9kQ29tcGFyaXNvbkZvclwiXHJcbiAgICBbZGF0ZVBlcmlvZENvbXBhcmlzb25Gb3JMYWJlbEtleV09XCJkYXRlUGVyaW9kQ29tcGFyaXNvbkZvckxhYmVsS2V5XCJcclxuICAgIFtoaWRlU3RhdHVzSW5jbHVzaW9uXT1cImZhbHNlXCJcclxuICAgIFtzdGF0dXNJbmNsdXNpb25Gb3JdPVwic3RhdHVzSW5jbHVzaW9uRm9yXCJcclxuICAgIFtzdGF0dXNJbmNsdXNpb25Gb3JMYWJlbEtleV09XCJzdGF0dXNJbmNsdXNpb25Gb3JMYWJlbEtleVwiXHJcbiAgICBbc3RhdHVzT3B0aW9uc0FwaV09XCJ3b3JrU3RhdHVzT3B0aW9uc0FwaVwiXHJcbiAgICAob25JbnN0YW5jZUNyZWF0ZWQpPVwib25JbnN0YW5jZUNyZWF0ZWQoJGV2ZW50KVwiXHJcbiAgICBbZnJvemVuXT1cIjNcIlxyXG4gICAgW291dGVyU29ydF09XCJvdXRlclNvcnRcIlxyXG4gICAgW2dlbmVyYXRlVGVtcGxhdGVSZXF1ZXN0XT1cImdlbmVyYXRlVGVtcGxhdGVSZXF1ZXN0XCJcclxuICAgIFtpbXBvcnRQcmV2aWV3UGF0aF09XCInaHUtd29ya2luZy1oc2wtcGMtaW1wb3J0J1wiXHJcbiAgICA+PC9jb3JlLXBhZ2UtbGlzdD5cclxuXHJcbiAgPG5nLXRlbXBsYXRlICNvcmdUcmVlPlxyXG4gICAgPGNvcmUtb3JnLXRyZWUgWyhuZ01vZGVsKV09XCJvcmdJZHNcIiAobmdNb2RlbENoYW5nZSk9XCJvbk9yZ0lkc0NoYW5nZSgkZXZlbnQpXCI+XHJcbiAgICA8L2NvcmUtb3JnLXRyZWU+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgPG5nLXRlbXBsYXRlICNzdGlja2VyIGxldC1jb2RlPVwiY29udGV4dC5zdGF0dXNOYW1lXCI+XHJcbiAgICA8Y29yZS1zdGF0dXMtc3RpY2tlciBbY29kZV09XCJjb2RlXCI+PC9jb3JlLXN0YXR1cy1zdGlja2VyPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbiAgPGFwcC1ldmFsdWF0ZS1kaWFsb2cgW2J1dHRvbkl0ZW1zXT1cImJ1dHRvbkl0ZW1zXCIgKm5nSWY9XCJldmFsdWF0ZURpYWxvZ1NlcnZpY2Uuc2hvd0NvbmZpcm1EaWFsb2ckLnZhbHVlID09IHRydWVcIj48L2FwcC1ldmFsdWF0ZS1kaWFsb2c+XHJcbjwvZGl2PiJdfQ==
387
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9saWJyYXJpZXMvd2FnZS93YWdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1oaXN0YWZmLWFscGhhL3NyYy9saWIvYXBwL2xpYnJhcmllcy93YWdlL3dhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxTQUFTLEVBRVQsS0FBSyxHQUdOLE1BQU0sZUFBZSxDQUFDO0FBS3ZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUd0RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQyxPQUFPLEVBQUUscUJBQXFCLEVBQTJFLE1BQU0sNENBQTRDLENBQUM7QUFDNUosT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTdDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNFQUFzRSxDQUFDO0FBRzdHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBT2pFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRzNFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDOUYsT0FBTyxFQUFFLFdB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QkFBMUIsU0FBUzt1QkFBQyxRQUFRO2dCQUNHLE9BQU87c0JBQTVCLFNBQVM7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIFZpZXdDaGlsZCxcclxuICBUZW1wbGF0ZVJlZixcclxuICBJbnB1dCxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcblxyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50IH0gZnJvbSBcIi4uL2Jhc2UtY29tcG9uZW50L2Jhc2UvYmFzZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgSUFsZXJ0T3B0aW9ucyB9IGZyb20gXCIuLi9hbGVydC9hbGVydC9hbGVydC5tb2RlbFwiO1xyXG5pbXBvcnQgeyBJQ29yZVBhcmFtQ29udHJvbCB9IGZyb20gXCIuLi9jb3JlLWhlYWRlci1wYXJhbXMvZW51bS1hbmQtaW50ZXJmYWNlc1wiO1xyXG5pbXBvcnQgeyBFbnVtVHJhbnNsYXRlS2V5IH0gZnJvbSBcImFscGhhLWdsb2JhbC1jb25zdGFudHNcIjtcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBmaWx0ZXIgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBDb3JlUGFnZUxpc3RDb21wb25lbnQsIElDb3JlUGFnZUxpc3RBcGlEZWZpbml0aW9uLCBJQ29yZVBhZ2VMaXN0Q1JVRCwgSUNvcmVQYWdlTGlzdEVkaXRSb3V0aW5nIH0gZnJvbSBcIi4uL2NvcmUtcGFnZS1saXN0L2NvcmUtcGFnZS1saXN0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBhcGkgfSBmcm9tIFwiYWxwaGEtZ2xvYmFsLWNvbnN0YW50c1wiO1xyXG5pbXBvcnQgeyBJRmlsdGVyT3BlcmF0b3IsIElJbk9wZXJhdG9yLCBJU29ydEl0ZW0gfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy9JUXVlcnlMaXN0UmVxdWVzdFwiO1xyXG5pbXBvcnQgeyBFbnVtQ29yZUJ1dHRvblZOU0NvZGUgfSBmcm9tIFwiLi4vY29yZS1idXR0b24tZ3JvdXAtdm5zL2NvcmUtYnV0dG9uLWdyb3VwLXZucy9FbnVtQ29yZUJ1dHRvblZOU0NvZGVcIjtcclxuaW1wb3J0IHsgQ29yZVBhZ2VMaXN0U2VydmljZSwgSUdlbmVyYXRlVGVtcGxhdGVSZXF1ZXN0IH0gZnJvbSBcIi4uL2NvcmUtcGFnZS1saXN0L2NvcmUtcGFnZS1saXN0LnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgSUNvcmVUYWJsZUNvbHVtbkl0ZW0gfSBmcm9tIFwiLi4vY29yZS10YWJsZS9JQ29yZVRhYmxlQ29sdW1uSXRlbVwiO1xyXG5pbXBvcnQgeyBFbnVtQ29yZVRhYmxlUGlwZVR5cGUgfSBmcm9tIFwiLi4vY29yZS10YWJsZS9FbnVtQ29yZVRhYmxlUGlwZVR5cGVcIjtcclxuaW1wb3J0IHsgRW51bVNvcnREaXJlY3Rpb24gfSBmcm9tIFwiLi4vLi4vZW51bS9FbnVtU29ydERpcmVjdGlvblwiO1xyXG5pbXBvcnQgeyBPcmdhbml6YXRpb25TZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL29yZ2FuaXphdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IE11bHRpTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL211bHRpLWxhbmd1YWdlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgUmFuZG9tQXZhdGFyU2VydmljZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9yYW5kb20tYXZhdGFyLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgQXBwU2VydmljZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9hcHAuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBBbGVydFNlcnZpY2UgfSBmcm9tIFwiLi4vYWxlcnQvYWxlcnQuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBFdmFsdWF0ZURpYWxvZ1NlcnZpY2UgfSBmcm9tIFwiLi4vLi4vc2VydmljZXMvdmFsdWF0ZS1kaWFsb2cuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBFbnVtRm9ybUJhc2VDb250b2xUeXBlIH0gZnJvbSBcIi4uLy4uL2VudW0vRW51bUZvcm1CYXNlQ29udG9sVHlwZVwiO1xyXG5pbXBvcnQgeyBJRm9ybWF0ZWRSZXNwb25zZSB9IGZyb20gXCIuLi8uLi9pbnRlcmZhY2VzL0lGb3JtYXRlZFJlc3BvbnNlXCI7XHJcbmltcG9ydCB7IElDb3JlQnV0dG9uVk5TIH0gZnJvbSBcIi4uL2NvcmUtYnV0dG9uLWdyb3VwLXZucy9jb3JlLWJ1dHRvbi1ncm91cC12bnMvSUNvcmVCdXR0b25WTlNcIjtcclxuaW1wb3J0IHsgYWxlcnRPcHRpb25zIH0gZnJvbSBcIi4uLy4uL2NvbnN0YW50cy9hbGVydE9wdGlvbnNcIjtcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBDb3JlT3JnVHJlZUNvbXBvbmVudCB9IGZyb20gXCIuLi9jb3JlLW9yZy10cmVlL2NvcmUtb3JnLXRyZWUvY29yZS1vcmctdHJlZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgRXZhbHVhdGVEaWFsb2dDb21wb25lbnQgfSBmcm9tIFwiLi4vZXZhbHVhdGUtZGlhbG9nL2V2YWx1YXRlLWRpYWxvZy5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgQ29yZVN0YXR1c1N0aWNrZXJDb21wb25lbnQgfSBmcm9tIFwiLi4vY29yZS1zdGF0dXMtc3RpY2tlci9jb3JlLXN0YXR1cy1zdGlja2VyL2NvcmUtc3RhdHVzLXN0aWNrZXIuY29tcG9uZW50XCI7XHJcblxyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImNtcy1wcm9maWxlLXdhZ2VcIixcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIENvcmVQYWdlTGlzdENvbXBvbmVudCxcclxuICAgIENvcmVPcmdUcmVlQ29tcG9uZW50LFxyXG4gICAgRXZhbHVhdGVEaWFsb2dDb21wb25lbnQsXHJcbiAgICBDb3JlU3RhdHVzU3RpY2tlckNvbXBvbmVudCxcclxuICAgIEZvcm1zTW9kdWxlXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogXCIuL3dhZ2UuY29tcG9uZW50Lmh0bWxcIixcclxuICBzdHlsZVVybHM6IFtcIi4vd2FnZS5jb21wb25lbnQuc2Nzc1wiXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFdhZ2VDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG5cclxuICBASW5wdXQoKSBoaWRlSGVhZGVyITogYm9vbGVhbjtcclxuXHJcbiAgQFZpZXdDaGlsZCgnYXZhdGFyJykgYXZhdGFyITogVGVtcGxhdGVSZWY8YW55PjtcclxuICBAVmlld0NoaWxkKCdzdGlja2VyJykgc3RpY2tlciE6IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIGlkOiBhbnk7XHJcbiAgLyogU1RBUlQ6IExvY2FsIGZpbHRlciBwYXJhbXMgKi9cclxuICBvcmdJZHMhOiBudW1iZXJbXTtcclxuICAvKiBFTkQ6IExvY2FsIGZpbHRlciBwYXJhbXMgKi9cclxuXHJcbiAgbGlzdEluc3RhbmNlITogbnVtYmVyO1xyXG4gIHBhcmFtUm93cyE6IElDb3JlUGFyYW1Db250cm9sW11bXTtcclxuICBzZWxlY3RlZElkczogbnVtYmVyW10gPSBbXTtcclxuICAvKlxyXG4gIFByb3BlcnRpZXMgYmVpbmcgcGFzc2VkIHRvIGNvcmUtcGFnZS1saXN0XHJcbiAgKi9cclxuXHJcbiAgYWxlcnRPcHRpb25zOiBJQWxlcnRPcHRpb25zID0ge1xyXG4gICAgYXV0b0Nsb3NlOiB0cnVlLFxyXG4gICAga2VlcEFmdGVyUm91dGVDaGFuZ2U6IHRydWUsXHJcbiAgICB0aW1lQ2xvc2U6IDEwMDAwXHJcbiAgfTtcclxuXHJcbiAgdGl0bGUgPSBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPTVBPTkVOVF9USVRMRV9XQUdFXHJcbiAgb3V0ZXJQYXJhbSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4obnVsbCk7XHJcblxyXG4gIGRhdGVQZXJpb2RDb21wYXJpc29uRm9yOiBzdHJpbmcgPSAnZWZmZWN0RGF0ZSc7XHJcbiAgZGF0ZVBlcmlvZENvbXBhcmlzb25Gb3JMYWJlbEtleTogRW51bVRyYW5zbGF0ZUtleSAgPSBFbnVtVHJhbnNsYXRlS2V5Lk5VTEw7XHJcbiAgc3RhdHVzSW5jbHVzaW9uRm9yOiBzdHJpbmcgPSAnZW1wV29ya1N0YXR1cyc7XHJcbiAgc3RhdHVzSW5jbHVzaW9uRm9yTGFiZWxLZXk6IEVudW1UcmFuc2xhdGVLZXkgPSBFbnVtVHJhbnNsYXRlS2V5LlVJX0VOVElUWV9GSUVMRF9DQVBUSU9OX1dFTEZBUkVfTU5HX0VNUExPWUVFX1NUQVRVUztcclxuICB3b3JrU3RhdHVzT3B0aW9uc0FwaTogYXBpID0gYXBpLkhVX0VNUExPWUVFX0NWX0dFVF9FTVBMT1lFRV9TVEFUVVNfTElTVDtcclxuICBvdXRlckZpbHRlck9wZXJhdG9ycyE6IElGaWx0ZXJPcGVyYXRvcltdO1xyXG4gIG91dGVySW5PcGVyYXRvcnM6IElJbk9wZXJhdG9yW10gPSBbXTtcclxuXHJcbiAgYXBpRGVmaW5pdGlvbjogSUNvcmVQYWdlTGlzdEFwaURlZmluaXRpb24gPSB7XHJcbiAgICBxdWVyeUxpc3RSZWxhdGl2ZVBhdGg6IGFwaS5IVV9XQUdFX1FVRVJZX0xJU1QsXHJcbiAgfVxyXG5cclxuICBjcnVkOiBJQ29yZVBhZ2VMaXN0Q1JVRCA9IHtcclxuICAgIGRlbGV0ZUlkczogYXBpLkhVX1dBR0VfREVMRVRFX0lEUyxcclxuICAgIHRvZ2dsZUFwcHJvdmVJZHM6IGFwaS5IVV9XQUdFX0NIQU5HRVNUQVRVU0FQUFJPVkVcclxuICB9XHJcblxyXG4gIGF2YXRhclRlbXBsYXRlITogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgZ2VuZXJhdGVUZW1wbGF0ZVJlcXVlc3QhOiBJR2VuZXJhdGVUZW1wbGF0ZVJlcXVlc3Q7XHJcbiAgYnV0dG9uSXRlbXM6IEVudW1Db3JlQnV0dG9uVk5TQ29kZVtdID0gW1xyXG4gICAgRW51bUNvcmVCdXR0b25WTlNDb2RlLk5PTkVfSEVBREVSX0NBTkNFTCxcclxuICAgIEVudW1Db3JlQnV0dG9uVk5TQ29kZS5OT05FX0hFQURFUl9VUERBVEVcclxuICBdO1xyXG5cclxuICBjb2x1bW5zOiBJQ29yZVRhYmxlQ29sdW1uSXRlbVtdID0gW1xyXG4gICAge1xyXG4gICAgICBjYXB0aW9uOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0VOVElUWV9GSUVMRF9DQVBUSU9OX0NPTU1PTl9JRCxcclxuICAgICAgZmllbGQ6ICdpZCcsXHJcbiAgICAgIGhpZGRlbjogdHJ1ZSxcclxuICAgICAgdHlwZTogJ251bWJlcicsXHJcbiAgICAgIGFsaWduOiAncmlnaHQnLFxyXG4gICAgICB3aWR0aDogMjAwLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgY2FwdGlvbjogRW51bVRyYW5zbGF0ZUtleS5VSV9DT01QT05FTlRfTEFCRUxfV0FHRV9TVEFUVVMsXHJcbiAgICAgIGZpZWxkOiAnc3RhdHVzTmFtZScsXHJcbiAgICAgIHR5cGU6ICdzdHJpbmcnLFxyXG4gICAgICBhbGlnbjogJ2xlZnQnLFxyXG4gICAgICB3aWR0aDogMTIwLFxyXG5cclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIGNhcHRpb246IEVudW1UcmFuc2xhdGVLZXkuVUlfQ09NUE9ORU5UX0xBQkVMX1dBR0VfRU1QTE9ZRUVfQ09ERSxcclxuICAgICAgZmllbGQ6ICdlbXBsb3llZUNvZGUnLFxyXG4gICAgICB0eXBlOiAnc3RyaW5nJyxcclxuICAgICAgYWxpZ246ICdsZWZ0JyxcclxuICAgICAgd2lkdGg6IDgwLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgY2FwdGlvbjogRW51bVRyYW5zbGF0ZUtleS5VSV9DT01QT05FTlRfTEFCRUxfV0FHRV9FTVBMT1lFRV9OQU1FLFxyXG4gICAgICBmaWVsZDogJ2VtcGxveWVlTmFtZScsXHJcbiAgICAgIHR5cGU6ICdzdHJpbmcnLFxyXG4gICAgICBhbGlnbjogJ2xlZnQnLFxyXG4gICAgICB3aWR0aDogMjUwLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgY2FwdGlvbjogRW51bVRyYW5zbGF0ZUtleS5VSV9DT01QT05FTlRfTEFCRUxfV0FHRV9PUkdfTkFNRSxcclxuICAgICAgZmllbGQ6ICdvcmdOYW1lJyxcclxuICAgICAgdHlwZTogJ3N0cmluZycsXHJcbiAgICAgIGFsaWduOiAnbGVmdCcsXHJcbiAgICAgIHdpZHRoOiAzMDAsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBjYXB0aW9uOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPTVBPTkVOVF9MQUJFTF9XQUdFX1BPU0lUSU9OX05BTUUsXHJcbiAgICAgIGZpZWxkOiAncG9zaXRpb25OYW1lJyxcclxuICAgICAgdHlwZTogJ3N0cmluZycsXHJcbiAgICAgIGFsaWduOiAnbGVmdCcsXHJcbiAgICAgIHdpZHRoOiAzMDAsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBjYXB0aW9uOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPTVBPTkVOVF9MQUJFTF9XQUdFX0VGRkVDVERBVEUsXHJcbiAgICAgIGZpZWxkOiAnZWZmZWN0RGF0ZScsXHJcbiAgICAgIHR5cGU6ICdkYXRlJyxcclxuICAgICAgcGlwZTogRW51bUNvcmVUYWJsZVBpcGVUeXBlLkRBVEUsXHJcbiAgICAgIGFsaWduOiAncmlnaHQnLFxyXG4gICAgICB3aWR0aDogMTAwLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgY2FwdGlvbjogRW51bVRyYW5zbGF0ZUtleS5VSV9DT01QT05FTlRfTEFCRUxfV0FHRV9FWFBJUkVEQVRFLFxyXG4gICAgICBmaWVsZDogJ2V4cGlyZURhdGUnLFxyXG4gICAgICB0eXBlOiAnZGF0ZScsXHJcbiAgICAgIHBpcGU6IEVudW1Db3JlVGFibGVQaXBlVHlwZS5EQVRFLFxyXG4gICAgICBhbGlnbjogJ2NlbnRlcicsXHJcbiAgICAgIHdpZHRoOiAxMzAsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBjYXB0aW9uOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPTVBPTkVOVF9MQUJFTF9XQUdFX1RZUEVfTkFNRSxcclxuICAgICAgZmllbGQ6ICd0eXBlTmFtZScsXHJcbiAgICAgIHR5cGU6ICdzdHJpbmcnLFxyXG4gICAgICBhbGlnbjogJ2xlZnQnLFxyXG4gICAgICB3aWR0aDogMzAwLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgY2FwdGlvbjogRW51bVRyYW5zbGF0ZUtleS5VSV9DT01QT05FTlRfTEFCRUxfV0FHRV9ERUNJU0lPTk5PLFxyXG4gICAgICBmaWVsZDogJ2RlY2lzaW9uTm8nLFxyXG4gICAgICB0eXBlOiAnc3RyaW5nJyxcclxuICAgICAgYWxpZ246ICdsZWZ0JyxcclxuICAgICAgd2lkdGg6IDExMCxcclxuICAgIH0sXHJcbiAgICAvLyB7XHJcbiAgICAvLyAgIGNhcHRpb246IEVudW1UcmFuc2xhdGVLZXkuVUlfQ09NUE9ORU5UX0xBQkVMX1dBR0VfVEFYVEFCTEUsXHJcbiAgICAvLyAgIGZpZWxkOiAndGF4VGFibGVOYW1lJyxcclxuICAgIC8vICAgdHlwZTogJ3N0cmluZycsXHJcbiAgICAvLyAgIGFsaWduOiAnbGVmdCcsXHJcbiAgICAvLyAgIHdpZHRoOiAxMDAsXHJcbiAgICAvLyB9LFxyXG4gICAgLy8ge1xyXG4gICAgLy8gICBjYXB0aW9uOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPTVBPTkVOVF9MQUJFTF9XQUdFX1JFR0lPTixcclxuICAgIC8vICAgZmllbGQ6ICdyZWdpb25OYW1lJyxcclxuICAgIC8vICAgdHlwZTogJ2RhdGUnLFxyXG4gICAgLy8gICBwaXBlOiBFbnVtQ29yZVRhYmxlUGlwZVR5cGUuREFURSxcclxuICAgIC8vICAgYWxpZ246ICdjZW50ZXInLFxyXG4gICAgLy8gICB3aWR0aDogMTAwLFxyXG4gICAgLy8gfSxcclxuICAgIC8vIHtcclxuICAgIC8vICAgY2FwdGlvbjogRW51bVRyYW5zbGF0ZUtleS5VSV9DT01QT05FTlRfTEFCRUxfV0FHRV9TQUxBUllfVFlQRV9OQU1FLFxyXG4gICAgLy8gICBmaWVsZDogJ3NhbGFyeVR5cGUnLFxyXG4gICAgLy8gICB0eXBlOiAnc3RyaW5nJyxcclxuICAgIC8vICAgYWxpZ246ICdsZWZ0JyxcclxuICAgIC8vICAgd2lkdGg6IDEwMCxcclxuICAgIC8vIH0sXHJcbiAgICAvLyB7XHJcbiAgICAvLyAgIGNhcHRpb246IEVudW1UcmFuc2xhdGVLZXkuVUlfQ09NUE9ORU5UX0xBQkVMX1dBR0VfU0FMQVJZX1NDQUxFX05BTUUsXHJcbiAgICAvLyAgIGZpZWxkOiAnc2FsYXJ5U2NhbGVOYW1lJyxcclxuICAgIC8vICAgdHlwZTogJ3N0cmluZycsXHJcbiAgICAvLyAgIGFsaWduOiAnbGVmdCcsXHJcbiAgICAvLyAgIGhpZGRlbjogdHJ1ZSxcclxuICAgIC8vICAgd2lkdGg6IDIwMCxcclxuICAgIC8vIH0sXHJcbiAgICAvLyB7XHJcbiAgICAvLyAgIGNhcHRpb246IEVudW1UcmFuc2xhdGVLZXkuVUlfQ09NUE9ORU5UX0xBQkVMX1dBR0VfU0FMQVJZX1JBTktfTkFNRSxcclxuICAgIC8vICAgZmllbGQ6ICdzYWxhcnlSYW5rTmFtZScsXHJcbiAgICAvLyAgIHR5cGU6ICdzdHJpbmcnLFxyXG4gICAgLy8gICBhbGlnbjogJ2xlZnQnLFxyXG4gICAgLy8gICBoaWRkZW46IHRydWUsXHJcbiAgICAvLyAgIHdpZHRoOiAyMDAsXHJcbiAgICAvLyB9LFxyXG4gICAgLy8ge1xyXG4gICAgLy8gICBjYXB0aW9uOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPTVBPTkVOVF9MQUJFTF9XQUdFX1NBTEFSWV9MRVZFTF9OQU1FLFxyXG4gICAgLy8gICBmaWVsZDogJ3NhbGFyeUxldmVsTmFtZScsXHJcbiAgICAvLyAgIHR5cGU6ICdzdHJpbmcnLFxyXG4gICAgLy8gICBhbGlnbjogJ2xlZnQnLFxyXG4gICAgLy8gICBoaWRkZW46IHRydWUsXHJcbiAgICAvLyAgIHdpZHRoOiAyMDAsXHJcbiAgICAvLyB9LFxyXG4gICAgLy8ge1xyXG4gICAgLy8gICBjYXB0aW9uOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPTVBPTkVOVF9MQUJFTF9XQUdFX0NPRUZGSUNJRU5ULFxyXG4gICAgLy8gICBmaWVsZDogJ2NvZWZmaWNpZW50JyxcclxuICAgIC8vICAgdHlwZTogJ3N0cmluZycsXHJcbiAgICAvLyAgIHBpcGU6IEVudW1Db3JlVGFibGVQaXBlVHlwZS5OVU1CRVIsXHJcbiAgICAvLyAgIGFsaWduOiAnY2VudGVyJyxcclxuICAgIC8vICAgd2lkdGg6IDcwLFxyXG4gICAgLy8gfSxcclxuICAgIC8vIHtcclxuICAgIC8vICAgY2FwdGlvbjogRW51bVRyYW5zbGF0ZUtleS5VSV9DT01QT05FTlRfTEFCRUxfV0FHRV9TQUxfUEVSQ0VOVCxcclxuICAgIC8vICAgZmllbGQ6ICdzYWxQZXJjZW50JyxcclxuICAgIC8vICAgdHlwZTogJ3N0cmluZycsXHJcbiAgICAvLyAgIHBpcGU6IEVudW1Db3JlVGFibGVQaXBlVHlwZS5OVU1CRVIsXHJcbiAgICAvLyAgIGFsaWduOiAnbGVmdCcsXHJcbiAgICAvLyAgIHdpZHRoOiA3MCxcclxuICAgIC8vIH0sXHJcbiAgICB7XHJcbiAgICAgIGNhcHRpb246IEVudW1UcmFuc2xhdGVLZXkuVUlfQ09NUE9ORU5UX0xBQkVMX1dBR0VfRVhQSVJFX1VQU0FMX0RBVEUsXHJcbiAgICAgIGZpZWxkOiAnZXhwaXJlVXBzYWxEYXRlJyxcclxuICAgICAgdHlwZTogJ2RhdGUnLFxyXG4gICAgICBwaXBlOiBFbnVtQ29yZVRhYmxlUGlwZVR5cGUuREFURSxcclxuICAgICAgYWxpZ246ICdjZW50ZXInLFxyXG4gICAgICB3aWR0aDogMTAwLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgY2FwdGlvbjogRW51bVRyYW5zbGF0ZUtleS5VSV9DT01QT05FTlRfTEFCRUxfV0FHRV9SRUFTT05fVVBTQUwsXHJcbiAgICAgIGZpZWxkOiAncmVhc29uVXBzYWwnLFxyXG4gICAgICB0eXBlOiAnc3RyaW5nJyxcclxuICAgICAgYWxpZ246ICdsZWZ0JyxcclxuICAgICAgd2lkdGg6IDExMCxcclxuICAgIH0sXHJcbiAgXVxyXG5cclxuICBkZWZhdWx0QXZhdGFyITogc3RyaW5nO1xyXG5cclxuICBlZGl0Um91dGU6IElDb3JlUGFnZUxpc3RFZGl0Um91dGluZyA9IHtcclxuICAgIGF1eGlsaWFyeTogJ3BvcHVwQXV4J1xyXG4gIH1cclxuICBvdXRlclNvcnQ6IElTb3J0SXRlbVtdID0gW1xyXG4gICAge1xyXG4gICAgICBmaWVsZDogXCJqb2JPcmRlck51bVwiLFxyXG4gICAgICBzb3J0RGlyZWN0aW9uOiBFbnVtU29ydERpcmVjdGlvbi5BU0NcclxuICAgIH1cclxuICBdXHJcbiAgLyogRW5kIFByb3BlcnRpZXMgYmVpbmcgcGFzc2VkIHRvIGNvcmUtcGFnZS10eXBlLWEgKi9cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgb3ZlcnJpZGUgbWxzOiBNdWx0aUxhbmd1YWdlU2VydmljZSxcclxuICAgIHB1YmxpYyByYXM6IFJhbmRvbUF2YXRhclNlcnZpY2UsXHJcbiAgICBwdWJsaWMgb3JnYW5pemF0aW9uU2VydmljZTogT3JnYW5pemF0aW9uU2VydmljZSxcclxuICAgIHB1YmxpYyBhcHBTZXJ2aWNlOiBBcHBTZXJ2aWNlLFxyXG4gICAgcHVibGljIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlLFxyXG4gICAgcHVibGljIGNvcmVQYWdlTGlzdFNlcnZpY2U6IENvcmVQYWdlTGlzdFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgaHR0cDogSHR0cENsaWVudCxcclxuICAgIHB1YmxpYyBldmFsdWF0ZURpYWxvZ1NlcnZpY2U6IEV2YWx1YXRlRGlhbG9nU2VydmljZVxyXG4gICkge1xyXG4gICAgc3VwZXIobWxzKTtcclxuICAgIHRoaXMuZGVmYXVsdEF2YXRhciA9IHJhcy5nZXQoKTtcclxuXHJcbiAgICAvKiBHZXQgb3JnSWRzIHN0YXJ0dXAgdmFsdWUgKi9cclxuICAgIGNvbnN0IG5ld09yZ0lkczogbnVtYmVyW10gPSBbXTtcclxuICAgIHRoaXMub3JnYW5pemF0aW9uU2VydmljZS5zdGF0dXMkLnZhbHVlLmFjdGl2ZUtleXMubWFwKHggPT4gbmV3T3JnSWRzLnB1c2goTnVtYmVyKHgpKSlcclxuICAgIHRoaXMub25PcmdJZHNDaGFuZ2UobmV3T3JnSWRzKVxyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGNvbnN0IGZpbHRlciA9IHRoaXMuY29sdW1ucy5maWx0ZXIoYyA9PiBjLmZpZWxkID09PSAnYXZhdGFyJyk7XHJcbiAgICAgIGlmICghIWZpbHRlci5sZW5ndGgpIGZpbHRlclswXS50ZW1wbGF0ZVJlZiA9IHRoaXMuYXZhdGFyO1xyXG4gICAgICBjb25zdCBzdGlja2VyRmlsdGVyID0gdGhpcy5jb2x1bW5zLmZpbHRlcihjID0+IGMuZmllbGQgPT09ICdzdGF0dXNOYW1lJyk7XHJcbiAgICAgIGlmICghIXN0aWNrZXJGaWx0ZXIubGVuZ3RoKSBzdGlja2VyRmlsdGVyWzBdLnRlbXBsYXRlUmVmID0gdGhpcy5zdGlja2VyO1xyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIG9uT3JnSWRzQ2hhbmdlKG9yZ0lkczogbnVtYmVyW10pIHtcclxuICAgIHRoaXMub3JnSWRzID0gb3JnSWRzXHJcbiAgICB0aGlzLm91dGVySW5PcGVyYXRvcnMgPSBbXHJcbiAgICAgIHtcclxuICAgICAgICBmaWVsZDogJ29yZ0lkJyxcclxuICAgICAgICB2YWx1ZXM6IG9yZ0lkc1xyXG4gICAgICB9XHJcbiAgICBdXHJcbiAgfVxyXG5cclxuICBvbkluc3RhbmNlQ3JlYXRlZChldmVudDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLmxpc3RJbnN0YW5jZSA9IGV2ZW50O1xyXG4gIH1cclxuICBvbk5nTW9kZWxDaGFuZ2UgPSAobmdNb2RlbDogc3RyaW5nLCB2YWx1ZTogYW55KSA9PiB7XHJcblxyXG4gIH1cclxuICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICB0aGlzLmV2YWx1YXRlRGlhbG9nU2VydmljZS5kaWFsb2dDb25maXJtZWQkLnBpcGUoXHJcbiAgICAgICAgZmlsdGVyKHggPT4gISF4KVxyXG4gICAgICApLnN1YnNjcmliZSh4ID0+IHtcclxuICAgICAgICBpZighIXg/LmNvbmZpcm1lZCl7XHJcbiAgICAgICAgICB0aGlzLlVwZGF0ZVVwc2FsKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgKSAgICBcclxuICAgIHRoaXMucGFyYW1Sb3dzID0gW1xyXG4gICAgICBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgZmxleFNpemU6IDYsXHJcbiAgICAgICAgICBuYW1lOiAnZWZmZWN0VXBzYWxEYXRlJyxcclxuICAgICAgICAgIG5nTW9kZWw6IG51bGwsXHJcbiAgICAgICAgICBuZ01vZGVsQ2hhbmdlOiB0aGlzLm9uTmdNb2RlbENoYW5nZSxcclxuICAgICAgICAgIHZhbHVlOiBudWxsLFxyXG4gICAgICAgICAgbGFiZWw6IHRoaXMuZGF0ZVBlcmlvZENvbXBhcmlzb25Gb3JMYWJlbEtleSxcclxuICAgICAgICAgIGNvbnRyb2xUeXBlOiBFbnVtRm9ybUJhc2VDb250b2xUeXBlLkRBVEVQSUNLRVIsXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcblxyXG4gICAgICAgICAgZmxleFNpemU6IDYsXHJcbiAgICAgICAgICBuYW1lOiAncmVhc29uVXBzYWwnLFxyXG4gICAgICAgICAgbmdNb2RlbDogbnVsbCxcclxuICAgICAgICAgIG5nTW9kZWxDaGFuZ2U6IHRoaXMub25OZ01vZGVsQ2hhbmdlLFxyXG4gICAgICAgICAgdmFsdWU6IG51bGwsXHJcbiAgICAgICAgICBsYWJlbDogRW51bVRyYW5zbGF0ZUtleS5VSV9DT01QT05FTlRfTEFCRUxfV0FHRV9SRUFTT05fVVBTQUwsXHJcbiAgICAgICAgICBjb250cm9sVHlwZTogRW51bUZvcm1CYXNlQ29udG9sVHlwZS5URVhUQk9YLFxyXG4gICAgICAgIH1cclxuICAgICAgXVxyXG4gICAgXTtcclxuXHJcblxyXG4gICAgdGhpcy5tbHMubGFuZyQuc3Vic2NyaWJlKHggPT4ge1xyXG4gICAgICB0aGlzLmxhbmcgPSB4O1xyXG4gICAgICB0aGlzLmdlbmVyYXRlVGVtcGxhdGVSZXF1ZXN0ID0ge1xyXG4gICAgICAgIGV4Q29kZTogJ0hVX1dPUktJTkdfSFNMX1BDJyxcclxuICAgICAgICBsYW5nOiB4XHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBvblNlbGVjdGVkSWRzQ2hhbmdlZWVlKGU6IG51bWJlcltdKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbGVjdGVkSWRzID0gZTtcclxuICB9XHJcbiAgVXBkYXRlVXBzYWwoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZElkcyA9PSBudWxsIHx8IHRoaXMuc2VsZWN0ZWRJZHMubGVuZ3RoID09IDApIHtcclxuICAgICAgcmV0dXJuIHRoaXMuYWxlcnRTZXJ2aWNlLndhcm4odGhpcy5tbHMudHJhbnMoXCJVSV9DT01QT05FTlRfVElUTEVfV0FHRV9JRFNfTlVMTFwiKSwgdGhpcy5hbGVydE9wdGlvbnMpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goIC8vIDw9PSBJbm5lciBwdXNoIHRoaXMucGFyYW1Sb3dzWzBdWzBdLm5nTW9kZWwudG9Mb2NhbGVEYXRlU3RyaW5nKCdlbi1VUycpXHJcbiAgICAgIHRoaXMuYXBwU2VydmljZVxyXG4gICAgICAgIC5wb3N0KCcvYXBpL0h1V29ya2luZy9VcGRhdGVVcHNhbCcsIHsgaWRzOiB0aGlzLnNlbGVjdGVkSWRzLCBkYXRlQ2FsOiB0aGlzLmV2YWx1YXRlRGlhbG9nU2VydmljZS5kYXRlSW5wdXQkLnZhbHVlLnRvTG9jYWxlRGF0ZVN0cmluZygnZW4tVVMnKSwgcmVhc29uVXBzYWw6IHRoaXMuZXZhbHVhdGVEaWFsb2dTZXJ2aWNlLnJlYXNvbiQudmFsdWUgfSlcclxuICAgICAgICAuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKCEhcmVzLm9rICYmIHJlcy5zdGF0dXMgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAvLyByZWxvYWQgbcOgbiBow6xuaCAgXHJcbiAgICAgICAgICAgIGNvbnN0IGxpc3RJbnN0YW5jZXMgPSB0aGlzLmNvcmVQYWdlTGlzdFNlcnZpY2UuaW5zdGFuY2VzLmZpbHRlcihcclxuICAgICAgICAgICAgICAoeSkgPT4geS5pbnN0YW5jZU51bWJlciA9PT0gdGhpcy5saXN0SW5zdGFuY2VcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgaWYgKCEhbGlzdEluc3RhbmNlcy5sZW5ndGgpIHtcclxuICAgICAgICAgICAgICBsaXN0SW5zdGFuY2VzWzBdLnJlbG9hZEZsYWckLm5leHQoXHJcbiAgICAgICAgICAgICAgICAhISFsaXN0SW5zdGFuY2VzWzBdLnJlbG9hZEZsYWckLnZhbHVlXHJcbiAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLy8gZW5kIHJlbG9hZCBtw6BuIGjDrG5oXHJcbiAgICAgICAgICAgIGNvbnN0IGJvZHk6IElGb3JtYXRlZFJlc3BvbnNlID0gcmVzLmJvZHlcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuYWxlcnRTZXJ2aWNlLnN1Y2Nlc3ModGhpcy5tbHMudHJhbnMoYm9keS5tZXNzYWdlQ29kZSksIHRoaXMuYWxlcnRPcHRpb25zKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KSlcclxuICB9XHJcbiAgb25Sb3dDbGljayhlOiBhbnkpIHtcclxuICAgIHRoaXMuaWQgPSBlLmlkXHJcbiAgfVxyXG4gIG9uQ29yZVBhZ2VIZWFkZXJCdXR0b25DbGljayhlOiBJQ29yZUJ1dHRvblZOUykge1xyXG4gICAgc3dpdGNoIChlLmNvZGUpIHtcclxuICAgICAgY2FzZSBFbnVtQ29yZUJ1dHRvblZOU0NvZGUuSEVBREVSX1BSSU5UOlxyXG4gICAgICAgIGRlYnVnZ2VyO1xyXG5cclxuICAgICAgICBsZXQgZmlsZW5hbWU9ICcnO1xyXG4gICAgICAgIHRoaXMuaHR0cC5nZXQoYXBpLkhVX0RFQ0lTSU9OX0ZJTEVfTkFNRSt0aGlzLmlkLnRvU3RyaW5nKCkpLnN1YnNjcmliZSgocmVzcG9uc2U6IGFueSkgPT4ge1xyXG4gICAgICAgICAgZmlsZW5hbWUgPSByZXNwb25zZS5pbm5lckJvZHk7IFxyXG4gICAgICAgIH0pO1xyXG5cclxuXHJcbiAgICAgICAgdGhpcy5odHRwLmdldChhcGkuSFVfREVDSVNJT05fUFJJTlQsIHtcclxuICAgICAgICAgIHJlc3BvbnNlVHlwZTogJ2Jsb2InLFxyXG4gICAgICAgICAgcGFyYW1zOiB7IGlkOiB0aGlzLmlkLnRvU3RyaW5nKCkgfVxyXG4gICAgICAgIH0pLnN1YnNjcmliZSgocmVzcG9uc2U6IEJsb2IpID0+IHtcclxuICAgICAgICAgIGlmIChyZXNwb25zZS50eXBlID09PSAnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJykge1xyXG4gICAgICAgICAgICBjb25zdCBkb3dubG9hZFVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwocmVzcG9uc2UpO1xyXG4gICAgICAgICAgICBjb25zdCBsaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xyXG4gICAgICAgICAgICBsaW5rLmhyZWYgPSBkb3dubG9hZFVybDtcclxuICAgICAgICAgICAgbGluay5zZXRBdHRyaWJ1dGUoJ2Rvd25sb2FkJywgZmlsZW5hbWUrJy5kb2MnKTtcclxuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsaW5rKTtcclxuICAgICAgICAgICAgbGluay5jbGljaygpO1xyXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGxpbmspO1xyXG4gICAgICAgICAgICBVUkwucmV2b2tlT2JqZWN0VVJMKGRvd25sb2FkVXJsKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xyXG4gICAgICAgICAgICByZWFkZXIub25sb2FkID0gKCkgPT4ge1xyXG4gICAgICAgICAgICAgIGNvbnN0IGpzb25Cb2R5ID0gcmVhZGVyLnJlc3VsdCBhcyBzdHJpbmc7XHJcbiAgICAgICAgICAgICAgY29uc3QgZGF0YSA9IEpTT04ucGFyc2UoanNvbkJvZHkpO1xyXG4gICAgICAgICAgICAgIGlmIChkYXRhLnN0YXR1c0NvZGUgPT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5zdWNjZXNzKGRhdGEubWVzc2FnZUNvZGUsIGFsZXJ0T3B0aW9ucyk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5hbGVydFNlcnZpY2UuZXJyb3IoZGF0YS5tZXNzYWdlQ29kZSwgYWxlcnRPcHRpb25zKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIHJlYWRlci5yZWFkQXNUZXh0KHJlc3BvbnNlKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgRW51bUNvcmVCdXR0b25WTlNDb2RlLkhFQURFUl9VUERBVEU6XHJcbiAgICAgICAgdGhpcy5ldmFsdWF0ZURpYWxvZ1NlcnZpY2UuY3JlYXRlTmV3KEVudW1UcmFuc2xhdGVLZXkuVUlfQ09NUE9ORU5UX1RJVExFX0hVX0VWQUxVQVRFX1VQREFURV9EQVRBLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgdW5kZWZpbmVkLFxyXG4gICAgICAgICAgRW51bVRyYW5zbGF0ZUtleS5VSV9DT01QT05FTlRfVElUTEVfSFVfRVZBTFVBVEVfSU5QVVRfUkVBU09OLCB1bmRlZmluZWQsIGZhbHNlLCB0cnVlLClcclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdDpcclxuICAgIH1cclxuICB9XHJcbn0iLCI8ZGl2IGNsYXNzPVwiY21zLXByb2ZpbGUtd2FnZS1jb250YWluZXJcIj5cclxuICA8Y29yZS1wYWdlLWxpc3RcclxuICAgIFthcGlEZWZpbml0aW9uXT1cImFwaURlZmluaXRpb25cIlxyXG4gICAgW2NvbHVtbnNdPVwiY29sdW1uc1wiXHJcbiAgICBbZWRpdFJvdXRlXT1cImVkaXRSb3V0ZVwiXHJcbiAgICBbY3J1ZF09XCJjcnVkXCJcclxuICAgIFt0aXRsZV09XCJ0aXRsZVwiIFtsZWZ0XT1cIm9yZ1RyZWVcIlxyXG4gICAgW25vcm1hbE1vZGVdPVwidHJ1ZVwiXHJcbiAgICBbb3V0ZXJQYXJhbSRdPVwib3V0ZXJQYXJhbSRcIlxyXG4gICAgW291dGVySW5PcGVyYXRvcnNdPVwib3V0ZXJJbk9wZXJhdG9yc1wiXHJcbiAgICBbYXV0b1Jlc2l6ZVdpdGhXaW5kb3ddPVwidHJ1ZVwiXHJcbiAgICAoY29yZVBhZ2VIZWFkZXJCdXR0b25DbGljayk9XCJvbkNvcmVQYWdlSGVhZGVyQnV0dG9uQ2xpY2soJGV2ZW50KVwiXHJcbiAgICAoc2VsZWN0ZWRJZHNDaGFuZ2UpPVwib25TZWxlY3RlZElkc0NoYW5nZWVlZSgkZXZlbnQpXCIgXHJcbiAgICBbZXh0cmFNYW51YWxPZmZzZXRdPVwiMTc4XCJcclxuICAgIChyb3dDbGljayk9XCJvblJvd0NsaWNrKCRldmVudClcIlxyXG4gICAgW3Nob3dQYXJhbUtpdF09XCJ0cnVlXCJcclxuICAgIFtkYXRlUGVyaW9kQ29tcGFyaXNvbkZvcl09XCJkYXRlUGVyaW9kQ29tcGFyaXNvbkZvclwiXHJcbiAgICBbZGF0ZVBlcmlvZENvbXBhcmlzb25Gb3JMYWJlbEtleV09XCJkYXRlUGVyaW9kQ29tcGFyaXNvbkZvckxhYmVsS2V5XCJcclxuICAgIFtoaWRlU3RhdHVzSW5jbHVzaW9uXT1cImZhbHNlXCJcclxuICAgIFtzdGF0dXNJbmNsdXNpb25Gb3JdPVwic3RhdHVzSW5jbHVzaW9uRm9yXCJcclxuICAgIFtzdGF0dXNJbmNsdXNpb25Gb3JMYWJlbEtleV09XCJzdGF0dXNJbmNsdXNpb25Gb3JMYWJlbEtleVwiXHJcbiAgICBbc3RhdHVzT3B0aW9uc0FwaV09XCJ3b3JrU3RhdHVzT3B0aW9uc0FwaVwiXHJcbiAgICAob25JbnN0YW5jZUNyZWF0ZWQpPVwib25JbnN0YW5jZUNyZWF0ZWQoJGV2ZW50KVwiXHJcbiAgICBbZnJvemVuXT1cIjNcIlxyXG4gICAgW291dGVyU29ydF09XCJvdXRlclNvcnRcIlxyXG4gICAgW2dlbmVyYXRlVGVtcGxhdGVSZXF1ZXN0XT1cImdlbmVyYXRlVGVtcGxhdGVSZXF1ZXN0XCJcclxuICAgIFtpbXBvcnRQcmV2aWV3UGF0aF09XCInaHUtd29ya2luZy1oc2wtcGMtaW1wb3J0J1wiXHJcbiAgICA+PC9jb3JlLXBhZ2UtbGlzdD5cclxuXHJcbiAgPG5nLXRlbXBsYXRlICNvcmdUcmVlPlxyXG4gICAgPGNvcmUtb3JnLXRyZWUgWyhuZ01vZGVsKV09XCJvcmdJZHNcIiAobmdNb2RlbENoYW5nZSk9XCJvbk9yZ0lkc0NoYW5nZSgkZXZlbnQpXCI+XHJcbiAgICA8L2NvcmUtb3JnLXRyZWU+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgPG5nLXRlbXBsYXRlICNzdGlja2VyIGxldC1jb2RlPVwiY29udGV4dC5zdGF0dXNOYW1lXCI+XHJcbiAgICA8Y29yZS1zdGF0dXMtc3RpY2tlciBbY29kZV09XCJjb2RlXCI+PC9jb3JlLXN0YXR1cy1zdGlja2VyPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbiAgPGFwcC1ldmFsdWF0ZS1kaWFsb2cgW2J1dHRvbkl0ZW1zXT1cImJ1dHRvbkl0ZW1zXCIgKm5nSWY9XCJldmFsdWF0ZURpYWxvZ1NlcnZpY2Uuc2hvd0NvbmZpcm1EaWFsb2ckLnZhbHVlID09IHRydWVcIj48L2FwcC1ldmFsdWF0ZS1kaWFsb2c+XHJcbjwvZGl2PiJdfQ==