ngx-histaff-alpha 3.5.8 → 3.5.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.
@@ -164,7 +164,7 @@ export class CoreChecklistComponent extends CoreFormControlBaseComponent {
164
164
  multi: true,
165
165
  useExisting: CoreChecklistComponent,
166
166
  },
167
- ], viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #container class=\"core-checklist-container\">\r\n <input type=\"checkbox\" class=\"expand-state\" [(ngModel)]=\"expandState\">\r\n <input class=\"value\" [value]=\"value\">\r\n <label [appTooltip]=\"textStringify\" type=\"text\" class=\"text form-control\" [class.form-control-disabled]=\"disabled\" (click)=\"toggleExpanded()\">\r\n <span>{{ (!!toggleAllValue ? (textCodeWhenAllSelected | translate: lang) : text) || placeholder }}</span>\r\n <div class=\"icon\">\r\n <i class=\"feather-chevron-down\"></i>\r\n </div>\r\n </label>\r\n <div class=\"dropdown\" [class.form-control-disabled]=\"disabled\">\r\n <div class=\"toggle-all-wrapper\">\r\n <core-checkbox [text]=\"toggleAllText\" [(ngModel)]=\"toggleAllValue\"\r\n (ngModelChange)=\"onToggleAllValueChange($event)\" [disabled]=\"disabled\"></core-checkbox>\r\n </div>\r\n <input class=\"search\" type=\"text\" placeholder=\"Search here...\" [(ngModel)]=\"searchText\"\r\n (ngModelChange)=\"onSearchTextChange($event)\" autocomplete=\"false\" [class.form-control-disabled]=\"disabled\">\r\n <ul [class.form-control-disabled]=\"disabled\">\r\n <li *ngFor=\"let option of localOptions; let index = index\">\r\n <core-checkbox [text]=\"option.text\" [(ngModel)]=\"option.checked\"\r\n (ngModelChange)=\"onItemValueChange(option, $event)\" [disabled]=\"disabled\"></core-checkbox>\r\n </li>\r\n </ul>\r\n </div>\r\n\r\n</div>", styles: [".core-checklist-container{font-size:13px;position:relative;display:block;--indicator-height: 0px;--search-bg-color: white;--search-border-color: #D1D1D1;--search-item-hover-bg: #358ccb;--search-item-hover-color: white;--dropdown-bg: lightyellow;--arrow-color: #358ccb;--height: var(--size-form-control-height);--max-z-index: 0}.core-checklist-container input.expand-state,.core-checklist-container .value{display:none}.core-checklist-container label.text{width:100%;height:var(--height);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;display:flex;align-items:center;justify-content:space-between}.core-checklist-container label.text span{width:calc(100% - var(--height));overflow-x:hidden;text-overflow:ellipsis;color:inherit}.core-checklist-container label.text div.icon{display:flex;align-items:center;justify-content:center;position:absolute;right:3px;top:3px;width:calc(var(--height) - 6px);height:calc(var(--height) - 6px);background-color:#e9e9e9;border-radius:3px;cursor:pointer}.core-checklist-container label.text div.icon i{width:28px;height:28px;font-size:28px;color:#848484}.core-checklist-container .dropdown{display:block;position:absolute;width:100%;max-height:0px;overflow-y:auto;overflow-x:hidden;background-color:#fff;font-size:13px;box-shadow:0 1rem 3rem #0000002e;transition:.25s linear;z-index:calc(var(--max-z-index) + 1)}.core-checklist-container .dropdown>.toggle-all-wrapper{margin-left:12px;background-color:var(--search-bg-color);position:sticky}.core-checklist-container .dropdown ul{padding-left:6px}.core-checklist-container .dropdown ul>li{cursor:pointer;padding:6px;transition:.25s linear}.core-checklist-container .dropdown ul>li>label{width:100%}.core-checklist-container .dropdown ul>li:hover{background-color:var(--search-item-hover-bg);color:var(--search-item-hover-color);transition:.25s linear}.core-checklist-container input.expand-state:checked~.dropdown{border:1px solid #ced4da;margin-top:2px;max-height:400px;border-bottom-left-radius:.375rem;border-bottom-right-radius:.375rem;transition:.25s linear}.core-checklist-container input.search{margin:0;width:100%;border:0;border-bottom:1px solid var(--search-border-color);background-color:var(--search-bg-color);position:sticky;top:0;height:38px;padding:6px 12px;font-size:13px;z-index:calc(var(--max-z-index) + 1)}.core-checklist-container input.search:focus{outline:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: TooltipDirective, selector: "[appTooltip]", inputs: ["appTooltip", "showAnyway", "position"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: CoreCheckboxComponent, selector: "core-checkbox", inputs: ["text", "tooltipPosition", "tooltip", "inputValue", "disabled"], outputs: ["onClick"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
167
+ ], viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #container class=\"core-checklist-container\">\r\n <input type=\"checkbox\" class=\"expand-state\" [(ngModel)]=\"expandState\">\r\n <input class=\"value\" [value]=\"value\">\r\n <label [appTooltip]=\"textStringify\" type=\"text\" class=\"text form-control\" [class.form-control-disabled]=\"disabled\" (click)=\"toggleExpanded()\">\r\n <span [appTooltip]=\"!!toggleAllValue ? (textCodeWhenAllSelected | translate: lang) : text\">{{ (!!toggleAllValue ? (textCodeWhenAllSelected | translate: lang) : text) || placeholder }}</span>\r\n <div class=\"icon\">\r\n <i class=\"feather-chevron-down\"></i>\r\n </div>\r\n </label>\r\n <div class=\"dropdown\" [class.form-control-disabled]=\"disabled\">\r\n <div class=\"toggle-all-wrapper\">\r\n <core-checkbox [text]=\"toggleAllText\" [(ngModel)]=\"toggleAllValue\"\r\n (ngModelChange)=\"onToggleAllValueChange($event)\" [disabled]=\"disabled\"></core-checkbox>\r\n </div>\r\n <input class=\"search\" type=\"text\" placeholder=\"Search here...\" [(ngModel)]=\"searchText\"\r\n (ngModelChange)=\"onSearchTextChange($event)\" autocomplete=\"false\" [class.form-control-disabled]=\"disabled\">\r\n <ul [class.form-control-disabled]=\"disabled\">\r\n <li *ngFor=\"let option of localOptions; let index = index\">\r\n <core-checkbox [text]=\"option.text\" [(ngModel)]=\"option.checked\"\r\n (ngModelChange)=\"onItemValueChange(option, $event)\" [disabled]=\"disabled\"></core-checkbox>\r\n </li>\r\n </ul>\r\n </div>\r\n\r\n</div>", styles: [".core-checklist-container{font-size:13px;position:relative;display:block;--indicator-height: 0px;--search-bg-color: white;--search-border-color: #D1D1D1;--search-item-hover-bg: #358ccb;--search-item-hover-color: white;--dropdown-bg: lightyellow;--arrow-color: #358ccb;--height: var(--size-form-control-height);--max-z-index: 0}.core-checklist-container input.expand-state,.core-checklist-container .value{display:none}.core-checklist-container label.text{width:100%;height:var(--height);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;display:flex;align-items:center;justify-content:space-between}.core-checklist-container label.text span{width:calc(100% - var(--height));overflow-x:hidden;text-overflow:ellipsis;color:inherit}.core-checklist-container label.text div.icon{display:flex;align-items:center;justify-content:center;position:absolute;right:3px;top:3px;width:calc(var(--height) - 6px);height:calc(var(--height) - 6px);background-color:#e9e9e9;border-radius:3px;cursor:pointer}.core-checklist-container label.text div.icon i{width:28px;height:28px;font-size:28px;color:#848484}.core-checklist-container .dropdown{display:block;position:absolute;width:100%;max-height:0px;overflow-y:auto;overflow-x:hidden;background-color:#fff;font-size:13px;box-shadow:0 1rem 3rem #0000002e;transition:.25s linear;z-index:calc(var(--max-z-index) + 1)}.core-checklist-container .dropdown>.toggle-all-wrapper{margin-left:12px;background-color:var(--search-bg-color);position:sticky}.core-checklist-container .dropdown ul{padding-left:6px}.core-checklist-container .dropdown ul>li{cursor:pointer;padding:6px;transition:.25s linear}.core-checklist-container .dropdown ul>li>label{width:100%}.core-checklist-container .dropdown ul>li:hover{background-color:var(--search-item-hover-bg);color:var(--search-item-hover-color);transition:.25s linear}.core-checklist-container input.expand-state:checked~.dropdown{border:1px solid #ced4da;margin-top:2px;max-height:400px;border-bottom-left-radius:.375rem;border-bottom-right-radius:.375rem;transition:.25s linear}.core-checklist-container input.search{margin:0;width:100%;border:0;border-bottom:1px solid var(--search-border-color);background-color:var(--search-bg-color);position:sticky;top:0;height:38px;padding:6px 12px;font-size:13px;z-index:calc(var(--max-z-index) + 1)}.core-checklist-container input.search:focus{outline:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: TooltipDirective, selector: "[appTooltip]", inputs: ["appTooltip", "showAnyway", "position"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: CoreCheckboxComponent, selector: "core-checkbox", inputs: ["text", "tooltipPosition", "tooltip", "inputValue", "disabled"], outputs: ["onClick"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
168
168
  }
169
169
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: CoreChecklistComponent, decorators: [{
170
170
  type: Component,
@@ -181,7 +181,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
181
181
  multi: true,
182
182
  useExisting: CoreChecklistComponent,
183
183
  },
184
- ], template: "<div #container class=\"core-checklist-container\">\r\n <input type=\"checkbox\" class=\"expand-state\" [(ngModel)]=\"expandState\">\r\n <input class=\"value\" [value]=\"value\">\r\n <label [appTooltip]=\"textStringify\" type=\"text\" class=\"text form-control\" [class.form-control-disabled]=\"disabled\" (click)=\"toggleExpanded()\">\r\n <span>{{ (!!toggleAllValue ? (textCodeWhenAllSelected | translate: lang) : text) || placeholder }}</span>\r\n <div class=\"icon\">\r\n <i class=\"feather-chevron-down\"></i>\r\n </div>\r\n </label>\r\n <div class=\"dropdown\" [class.form-control-disabled]=\"disabled\">\r\n <div class=\"toggle-all-wrapper\">\r\n <core-checkbox [text]=\"toggleAllText\" [(ngModel)]=\"toggleAllValue\"\r\n (ngModelChange)=\"onToggleAllValueChange($event)\" [disabled]=\"disabled\"></core-checkbox>\r\n </div>\r\n <input class=\"search\" type=\"text\" placeholder=\"Search here...\" [(ngModel)]=\"searchText\"\r\n (ngModelChange)=\"onSearchTextChange($event)\" autocomplete=\"false\" [class.form-control-disabled]=\"disabled\">\r\n <ul [class.form-control-disabled]=\"disabled\">\r\n <li *ngFor=\"let option of localOptions; let index = index\">\r\n <core-checkbox [text]=\"option.text\" [(ngModel)]=\"option.checked\"\r\n (ngModelChange)=\"onItemValueChange(option, $event)\" [disabled]=\"disabled\"></core-checkbox>\r\n </li>\r\n </ul>\r\n </div>\r\n\r\n</div>", styles: [".core-checklist-container{font-size:13px;position:relative;display:block;--indicator-height: 0px;--search-bg-color: white;--search-border-color: #D1D1D1;--search-item-hover-bg: #358ccb;--search-item-hover-color: white;--dropdown-bg: lightyellow;--arrow-color: #358ccb;--height: var(--size-form-control-height);--max-z-index: 0}.core-checklist-container input.expand-state,.core-checklist-container .value{display:none}.core-checklist-container label.text{width:100%;height:var(--height);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;display:flex;align-items:center;justify-content:space-between}.core-checklist-container label.text span{width:calc(100% - var(--height));overflow-x:hidden;text-overflow:ellipsis;color:inherit}.core-checklist-container label.text div.icon{display:flex;align-items:center;justify-content:center;position:absolute;right:3px;top:3px;width:calc(var(--height) - 6px);height:calc(var(--height) - 6px);background-color:#e9e9e9;border-radius:3px;cursor:pointer}.core-checklist-container label.text div.icon i{width:28px;height:28px;font-size:28px;color:#848484}.core-checklist-container .dropdown{display:block;position:absolute;width:100%;max-height:0px;overflow-y:auto;overflow-x:hidden;background-color:#fff;font-size:13px;box-shadow:0 1rem 3rem #0000002e;transition:.25s linear;z-index:calc(var(--max-z-index) + 1)}.core-checklist-container .dropdown>.toggle-all-wrapper{margin-left:12px;background-color:var(--search-bg-color);position:sticky}.core-checklist-container .dropdown ul{padding-left:6px}.core-checklist-container .dropdown ul>li{cursor:pointer;padding:6px;transition:.25s linear}.core-checklist-container .dropdown ul>li>label{width:100%}.core-checklist-container .dropdown ul>li:hover{background-color:var(--search-item-hover-bg);color:var(--search-item-hover-color);transition:.25s linear}.core-checklist-container input.expand-state:checked~.dropdown{border:1px solid #ced4da;margin-top:2px;max-height:400px;border-bottom-left-radius:.375rem;border-bottom-right-radius:.375rem;transition:.25s linear}.core-checklist-container input.search{margin:0;width:100%;border:0;border-bottom:1px solid var(--search-border-color);background-color:var(--search-bg-color);position:sticky;top:0;height:38px;padding:6px 12px;font-size:13px;z-index:calc(var(--max-z-index) + 1)}.core-checklist-container input.search:focus{outline:none}\n"] }]
184
+ ], template: "<div #container class=\"core-checklist-container\">\r\n <input type=\"checkbox\" class=\"expand-state\" [(ngModel)]=\"expandState\">\r\n <input class=\"value\" [value]=\"value\">\r\n <label [appTooltip]=\"textStringify\" type=\"text\" class=\"text form-control\" [class.form-control-disabled]=\"disabled\" (click)=\"toggleExpanded()\">\r\n <span [appTooltip]=\"!!toggleAllValue ? (textCodeWhenAllSelected | translate: lang) : text\">{{ (!!toggleAllValue ? (textCodeWhenAllSelected | translate: lang) : text) || placeholder }}</span>\r\n <div class=\"icon\">\r\n <i class=\"feather-chevron-down\"></i>\r\n </div>\r\n </label>\r\n <div class=\"dropdown\" [class.form-control-disabled]=\"disabled\">\r\n <div class=\"toggle-all-wrapper\">\r\n <core-checkbox [text]=\"toggleAllText\" [(ngModel)]=\"toggleAllValue\"\r\n (ngModelChange)=\"onToggleAllValueChange($event)\" [disabled]=\"disabled\"></core-checkbox>\r\n </div>\r\n <input class=\"search\" type=\"text\" placeholder=\"Search here...\" [(ngModel)]=\"searchText\"\r\n (ngModelChange)=\"onSearchTextChange($event)\" autocomplete=\"false\" [class.form-control-disabled]=\"disabled\">\r\n <ul [class.form-control-disabled]=\"disabled\">\r\n <li *ngFor=\"let option of localOptions; let index = index\">\r\n <core-checkbox [text]=\"option.text\" [(ngModel)]=\"option.checked\"\r\n (ngModelChange)=\"onItemValueChange(option, $event)\" [disabled]=\"disabled\"></core-checkbox>\r\n </li>\r\n </ul>\r\n </div>\r\n\r\n</div>", styles: [".core-checklist-container{font-size:13px;position:relative;display:block;--indicator-height: 0px;--search-bg-color: white;--search-border-color: #D1D1D1;--search-item-hover-bg: #358ccb;--search-item-hover-color: white;--dropdown-bg: lightyellow;--arrow-color: #358ccb;--height: var(--size-form-control-height);--max-z-index: 0}.core-checklist-container input.expand-state,.core-checklist-container .value{display:none}.core-checklist-container label.text{width:100%;height:var(--height);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;display:flex;align-items:center;justify-content:space-between}.core-checklist-container label.text span{width:calc(100% - var(--height));overflow-x:hidden;text-overflow:ellipsis;color:inherit}.core-checklist-container label.text div.icon{display:flex;align-items:center;justify-content:center;position:absolute;right:3px;top:3px;width:calc(var(--height) - 6px);height:calc(var(--height) - 6px);background-color:#e9e9e9;border-radius:3px;cursor:pointer}.core-checklist-container label.text div.icon i{width:28px;height:28px;font-size:28px;color:#848484}.core-checklist-container .dropdown{display:block;position:absolute;width:100%;max-height:0px;overflow-y:auto;overflow-x:hidden;background-color:#fff;font-size:13px;box-shadow:0 1rem 3rem #0000002e;transition:.25s linear;z-index:calc(var(--max-z-index) + 1)}.core-checklist-container .dropdown>.toggle-all-wrapper{margin-left:12px;background-color:var(--search-bg-color);position:sticky}.core-checklist-container .dropdown ul{padding-left:6px}.core-checklist-container .dropdown ul>li{cursor:pointer;padding:6px;transition:.25s linear}.core-checklist-container .dropdown ul>li>label{width:100%}.core-checklist-container .dropdown ul>li:hover{background-color:var(--search-item-hover-bg);color:var(--search-item-hover-color);transition:.25s linear}.core-checklist-container input.expand-state:checked~.dropdown{border:1px solid #ced4da;margin-top:2px;max-height:400px;border-bottom-left-radius:.375rem;border-bottom-right-radius:.375rem;transition:.25s linear}.core-checklist-container input.search{margin:0;width:100%;border:0;border-bottom:1px solid var(--search-border-color);background-color:var(--search-bg-color);position:sticky;top:0;height:38px;padding:6px 12px;font-size:13px;z-index:calc(var(--max-z-index) + 1)}.core-checklist-container input.search:focus{outline:none}\n"] }]
185
185
  }], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i1.DomService }, { type: i2.AlertService }, { type: i0.Injector }, { type: i3.MultiLanguageService }], propDecorators: { paramMode: [{
186
186
  type: Input
187
187
  }], getByIdObject$: [{
@@ -204,4 +204,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
204
204
  type: ViewChild,
205
205
  args: ['container']
206
206
  }] } });
207
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1jaGVja2xpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWhpc3RhZmYtYWxwaGEvc3JjL2xpYi9hcHAvbGlicmFyaWVzL2NvcmUtY2hlY2tsaXN0L2NvcmUtY2hlY2tsaXN0L2NvcmUtY2hlY2tsaXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1oaXN0YWZmLWFscGhhL3NyYy9saWIvYXBwL2xpYnJhcmllcy9jb3JlLWNoZWNrbGlzdC9jb3JlLWNoZWNrbGlzdC9jb3JlLWNoZWNrbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUdULEtBQUssRUFNTCxTQUFTLEVBQ1QsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFaEcsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sK0RBQStELENBQUM7QUFJN0csT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFMUQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDN0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7Ozs7OztBQThCbEUsTUFBTSxPQUFPLHNCQUF1QixTQUFRLDRCQUE0QjtJQW1DdEUsWUFDVSxRQUFtQixFQUNuQixVQUFzQixF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ZCxhQUdVO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLEtBQUssRUFBRSxJQUFJOzRCQUNYLFdBQVcsd0JBQXdCO3lCQUNwQztxQkFDRjs0TEFJUSxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFNWSxRQUFRO3NCQUF6QixLQUFLO2dCQUNZLFFBQVE7c0JBQXpCLEtBQUs7Z0JBRWtCLFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQWZ0ZXJWaWV3SW5pdCxcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBJbmplY3RvcixcclxuICBJbnB1dCxcclxuICBPbkNoYW5nZXMsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBSZW5kZXJlcjIsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBWaWV3Q2hpbGQsXHJcbiAgaXNEZXZNb2RlLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgTkdfVkFMVUVfQUNDRVNTT1IsIE5nQ29udHJvbCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IENvcmVGb3JtQ29udHJvbEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb3JlLWZvcm0tY29udHJvbC1iYXNlL2NvcmUtZm9ybS1jb250cm9sLWJhc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgRG9tU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2RvbS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vYWxlcnQvYWxlcnQuc2VydmljZSc7XHJcbmltcG9ydCB7IEVudW1UcmFuc2xhdGVLZXkgfSBmcm9tIFwiYWxwaGEtZ2xvYmFsLWNvbnN0YW50c1wiO1xyXG5pbXBvcnQgeyBNdWx0aUxhbmd1YWdlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL211bHRpLWxhbmd1YWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBub25lQXV0b0Nsb3NlZEFsZXJ0T3B0aW9ucyB9IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy9hbGVydE9wdGlvbnMnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb3JlQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb3JlLWNoZWNrYm94L2NvcmUtY2hlY2tib3gvY29yZS1jaGVja2JveC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUb29sdGlwRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vdG9vbHRpcC90b29sdGlwLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVBpcGUgfSBmcm9tICcuLi8uLi8uLi9hcHAtcGlwZXMvdHJhbnNsYXRlLnBpcGUnO1xyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUNvcmVDaGVja2xpc3RPcHRpb24ge1xyXG4gIHZhbHVlOiBhbnk7XHJcbiAgdGV4dDogc3RyaW5nO1xyXG4gIGNoZWNrZWQ6IGJvb2xlYW47XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY29yZS1jaGVja2xpc3QnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBUb29sdGlwRGlyZWN0aXZlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIENvcmVDaGVja2JveENvbXBvbmVudCxcclxuICAgIFRyYW5zbGF0ZVBpcGUsXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vY29yZS1jaGVja2xpc3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvcmUtY2hlY2tsaXN0LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgdXNlRXhpc3Rpbmc6IENvcmVDaGVja2xpc3RDb21wb25lbnQsXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb3JlQ2hlY2tsaXN0Q29tcG9uZW50IGV4dGVuZHMgQ29yZUZvcm1Db250cm9sQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXMge1xyXG4gIG5nQ29udHJvbCE6IE5nQ29udHJvbDtcclxuICBASW5wdXQoKSBwYXJhbU1vZGUhOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGdldEJ5SWRPYmplY3QkITogQmVoYXZpb3JTdWJqZWN0PGFueT47XHJcbiAgQElucHV0KCkgc2hvd25Gcm9tITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIG9wdGlvbnMkITogQmVoYXZpb3JTdWJqZWN0PElDb3JlQ2hlY2tsaXN0T3B0aW9uW10+O1xyXG4gIEBJbnB1dCgpIGhlaWdodCE6IHN0cmluZztcclxuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nID0gJyc7XHJcbiAgQElucHV0KCkgbG9hZGluZyE6IGJvb2xlYW47XHJcblxyXG4gIGxhbmchOiBzdHJpbmc7XHJcbiAgdG9nZ2xlQWxsVmFsdWU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICB0ZXh0Q29kZVdoZW5BbGxTZWxlY3RlZDogRW51bVRyYW5zbGF0ZUtleSA9IEVudW1UcmFuc2xhdGVLZXkuVUlfQ09SRV9DSEVDS0JPWF9URVhUX1dIRU5fQUxMX1NFTEVDVEVEXHJcblxyXG4gIEBJbnB1dCgpIG92ZXJyaWRlIHJlYWRvbmx5ITogYm9vbGVhbjtcclxuICBASW5wdXQoKSBvdmVycmlkZSBkaXNhYmxlZCE6IGJvb2xlYW47XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2NvbnRhaW5lcicpIGNvbnRhaW5lciE6IEVsZW1lbnRSZWY7XHJcblxyXG4gIGxpc3RlbmVyRm4hOiAoKSA9PiB2b2lkO1xyXG5cclxuICBvcHRpb25zITogSUNvcmVDaGVja2xpc3RPcHRpb25bXTtcclxuXHJcbiAgbG9jYWxPcHRpb25zITogSUNvcmVDaGVja2xpc3RPcHRpb25bXTtcclxuICBvdmVycmlkZSB2YWx1ZSE6IGFueVtdO1xyXG5cclxuICB0ZXh0ITogc3RyaW5nO1xyXG4gIHRleHRTdHJpbmdpZnkhOiBzdHJpbmc7XHJcbiAgc2VhcmNoVGV4dCE6IHN0cmluZztcclxuICBleHBhbmRTdGF0ZSE6IGJvb2xlYW47XHJcblxyXG4gIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIHRvZ2dsZUFsbFRleHQ6IEVudW1UcmFuc2xhdGVLZXkgPSBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPUkVfQ09OVFJPTF9DSEVDS0xJU1RfVE9HR0xFX0NIRUNLX0FMTDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXHJcbiAgICBwcml2YXRlIGRvbVNlcnZpY2U6IERvbVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICBwcml2YXRlIG1sczogTXVsdGlMYW5ndWFnZVNlcnZpY2UsXHJcbiAgKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLm5nQ29udHJvbCA9IHRoaXMuaW5qZWN0b3IuZ2V0KE5nQ29udHJvbCk7XHJcblxyXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXHJcbiAgICAgIHRoaXMubWxzLmxhbmckLnN1YnNjcmliZSh4ID0+IHRoaXMubGFuZyA9IHgpXHJcbiAgICApXHJcblxyXG4gICAgLyogU1RBUlQ6IENIRUNLIElOUFVUIEVSUk9SICovXHJcbiAgICBpZiAoISEhdGhpcy5vcHRpb25zJCAmJiBpc0Rldk1vZGUoKSkge1xyXG4gICAgICB0aGlzLmFsZXJ0U2VydmljZS5lcnJvcihcclxuICAgICAgICBgXHJcbiAgICAgICAgQ29yZUNoZWNrbGlzdENvbXBvbmVudCByZXF1aXJlZCB0aGlzIGlucHV0OiBvcHRpb25zJCE6IEJlaGF2aW9yU3ViamVjdDxJQ29yZURyb3Bkb3duT3B0aW9uW10+O1xyXG4gICAgICAgIEFsc28sIGl0IG5lZWRzIHRvIHJlY2VpdmUgYSBuZXcgdmFsdWUgdGhhdCB1c3VhbGx5IGNvbWVzIGZyb20gYW5kIEFQSSBHZXRBbGwoKSBhY3Rpb25cclxuICAgICAgICBgLFxyXG4gICAgICAgIG5vbmVBdXRvQ2xvc2VkQWxlcnRPcHRpb25zLFxyXG4gICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICghISF0aGlzLnBhcmFtTW9kZSkge1xyXG4gICAgICAvL2dldEJ5SWRPYmplY3QkXHJcbiAgICAgIGlmICghISF0aGlzLmdldEJ5SWRPYmplY3QkICYmIGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgICAgdGhpcy5hbGVydFNlcnZpY2UuZXJyb3IoXHJcbiAgICAgICAgICBgQ29yZUNoZWNrbGlzdENvbXBvbmVudCBFcnJvcjogUmVxdWlyZWQgaW5wdXRzOlxyXG4gICAgICAgICAgICAgICAgZ2V0QnlJZE9iamVjdCQ6IEJlaGF2aW9yU3ViamVjdCZsdDthbnkmZ3Q7IChmb3IgJyR7dGhpcy5uZ0NvbnRyb2wubmFtZX0nKWAsXHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKCEhIXRoaXMuc2hvd25Gcm9tICYmICghISF0aGlzLm9wdGlvbnMkLnZhbHVlIHx8ICEhIXRoaXMub3B0aW9ucyQudmFsdWUubGVuZ3RoKSkge1xyXG4gICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmVycm9yKFxyXG4gICAgICAgICAgYENvcmVEcm9wZG93bkNvbXBvbmVudCBFcnJvcjogUmVxdWlyZWQgaW5wdXRzOlxyXG4gICAgICAgICAgICAgIHNob3duRnJvbTogc3RyaW5nOyAoZm9yICcke3RoaXMubmdDb250cm9sLm5hbWV9JylgLFxyXG4gICAgICAgICAgbm9uZUF1dG9DbG9zZWRBbGVydE9wdGlvbnMsXHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qIEVORDogQ0hFQ0sgSU5QVVQgRVJST1IgKi9cclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuICAgICAgdGhpcy5vcHRpb25zJC5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgICB0aGlzLm9wdGlvbnMgPSB4O1xyXG4gICAgICAgIHRoaXMubG9jYWxPcHRpb25zID0geDtcclxuXHJcbiAgICAgICAgaWYgKCEhdGhpcy52YWx1ZSkge1xyXG4gICAgICAgICAgdGhpcy53cml0ZVZhbHVlKHRoaXMudmFsdWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSksXHJcbiAgICApO1xyXG5cclxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICB0aGlzLmdldEJ5SWRPYmplY3QkPy5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgICBpZiAoISF4KSB7XHJcbiAgICAgICAgICB0aGlzLndyaXRlVmFsdWUoeC5pZCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMudGV4dCA9ICcnO1xyXG4gICAgICAgICAgdGhpcy50ZXh0U3RyaW5naWZ5ID0gJyc7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KSxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICAvKipcclxuICAgICAqIFRoaXMgZXZlbnRzIGdldCBjYWxsZWQgYnkgYWxsIGNsaWNrcyBvbiB0aGUgcGFnZVxyXG4gICAgICovXHJcbiAgICB0aGlzLmxpc3RlbmVyRm4gPSB0aGlzLnJlbmRlcmVyLmxpc3Rlbignd2luZG93JywgJ2NsaWNrJywgKGU6IEV2ZW50KSA9PiB7XHJcbiAgICAgIC8qXHJcbiAgICAgICAqIGhhbmRsZSBjbGljayBvdXRzaWRlXHJcbiAgICAgICAqL1xyXG4gICAgICBpZiAodGhpcy5jb250YWluZXIgJiYgISEhdGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudC5jb250YWlucyhlLnRhcmdldCkpIHtcclxuICAgICAgICB0aGlzLmV4cGFuZFN0YXRlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5zZWFyY2hUZXh0ID0gJyc7XHJcbiAgICAgICAgdGhpcy5sb2NhbE9wdGlvbnMgPSB0aGlzLm9wdGlvbnMkLnZhbHVlO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICBjb25zdCBtYXhaSW5kZXggPSB0aGlzLmRvbVNlcnZpY2UuZ2V0TWF4WkluZGV4KCk7XHJcbiAgICB0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCctLW1heC16LWluZGV4JywgbWF4WkluZGV4ICsgMSk7XHJcbiAgICBpZiAoISF0aGlzLmhlaWdodCkgdGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1oZWlnaHQnLCB0aGlzLmhlaWdodCk7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSB3cml0ZVZhbHVlKG9iajogYW55W10pOiB2b2lkIHtcclxuICAgIHRoaXMudmFsdWUgPSBvYmo7XHJcbiAgICBsZXQgbmV3VGV4dCA9ICcnO1xyXG4gICAgdGhpcy5vcHRpb25zPy5tYXAoKHgpID0+IHtcclxuICAgICAgLy8gZmluZCBpdGVtIGZyb20gaW5wdXRcclxuICAgICAgY29uc3QgZmlsdGVyID0gb2JqPy5maWx0ZXIoKGkpID0+IHgudmFsdWUgPT09IGkpO1xyXG4gICAgICBpZiAoISFmaWx0ZXI/Lmxlbmd0aCkge1xyXG4gICAgICAgIHguY2hlY2tlZCA9IHRydWU7XHJcbiAgICAgICAgbmV3VGV4dCArPSB4LnRleHQgKyAnOyAnO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHguY2hlY2tlZCA9IGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHRoaXMudGV4dCA9IG5ld1RleHQ7XHJcbiAgICB0aGlzLnRleHRTdHJpbmdpZnkgPSB0aGlzLnRleHQ7XHJcblxyXG4gICAgaWYgKCEhb2JqKSB7XHJcbiAgICAgIHRoaXMudG9nZ2xlQWxsVmFsdWUgPSBvYmoubGVuZ3RoID09PSB0aGlzLm9wdGlvbnM/Lmxlbmd0aDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudG9nZ2xlQWxsVmFsdWUgPSBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uU2VhcmNoVGV4dENoYW5nZSh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmxvY2FsT3B0aW9ucyA9IHRoaXMub3B0aW9ucy5maWx0ZXIoKHgpID0+IHgudGV4dC50b0xvd2VyQ2FzZSgpLmluZGV4T2YodmFsdWUudG9Mb2NhbGVMb3dlckNhc2UoKSkgPj0gMCk7XHJcbiAgfVxyXG5cclxuICB0b2dnbGVFeHBhbmRlZCgpOiB2b2lkIHtcclxuICAgIHRoaXMuZXhwYW5kU3RhdGUgPSAhISF0aGlzLmV4cGFuZFN0YXRlO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKCEhIWNoYW5nZXNbJ29wdGlvbnMnXSkgcmV0dXJuO1xyXG4gICAgdGhpcy5sb2NhbE9wdGlvbnMgPSBjaGFuZ2VzWydvcHRpb25zJ10/LmN1cnJlbnRWYWx1ZTtcclxuICB9XHJcblxyXG4gIG9uVG9nZ2xlQWxsVmFsdWVDaGFuZ2UoZTogYm9vbGVhbikge1xyXG4gICAgbGV0IG5ld1RleHQgPSAnJztcclxuICAgIGxldCBuZXdWYWx1ZTogYW55W10gPSBbXTtcclxuXHJcbiAgICBpZiAoZSkge1xyXG4gICAgICB0aGlzLm9wdGlvbnMubWFwKCh4KSA9PiB7XHJcbiAgICAgICAgbmV3VGV4dCArPSB4LnRleHQgKyAnOyAnO1xyXG4gICAgICAgIG5ld1ZhbHVlLnB1c2goeC52YWx1ZSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMud3JpdGVWYWx1ZShuZXdWYWx1ZSk7XHJcbiAgICB0aGlzLm9uQ2hhbmdlKG5ld1ZhbHVlKTtcclxuICB9XHJcblxyXG4gIG9uSXRlbVZhbHVlQ2hhbmdlKG9wdGlvbjogSUNvcmVDaGVja2xpc3RPcHRpb24sIHZhbHVlOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICBjb25zdCBmaWx0ZXIgPSB0aGlzLm9wdGlvbnMuZmlsdGVyKCh4KSA9PiB4LnZhbHVlID09PSBvcHRpb24udmFsdWUpO1xyXG4gICAgaWYgKGZpbHRlci5sZW5ndGggPT09IDEpIHtcclxuICAgICAgZmlsdGVyWzBdLmNoZWNrZWQgPSB2YWx1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmVycm9yKFxyXG4gICAgICAgIGAke3RoaXMubmdDb250cm9sLm5hbWV9IGVycm9yOiBUaGUgdmFsdWUgJHtvcHRpb24udmFsdWV9IGlzIG5vdCB1bmlxdWUgb3Igbm90IGZvdW5kYCxcclxuICAgICAgICBub25lQXV0b0Nsb3NlZEFsZXJ0T3B0aW9ucyxcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIGxldCBuZXdUZXh0ID0gJyc7XHJcbiAgICBsZXQgbmV3VmFsdWU6IGFueVtdID0gW107XHJcbiAgICB0aGlzLm9wdGlvbnNcclxuICAgICAgPy5maWx0ZXIoKHgpID0+ICEheC5jaGVja2VkKVxyXG4gICAgICAubWFwKCh4KSA9PiB7XHJcbiAgICAgICAgbmV3VGV4dCArPSB4LnRleHQgKyAnOyAnO1xyXG4gICAgICAgIG5ld1ZhbHVlLnB1c2goeC52YWx1ZSk7XHJcbiAgICAgIH0pO1xyXG4gICAgdGhpcy50ZXh0ID0gbmV3VGV4dDtcclxuICAgIHRoaXMudmFsdWUgPSBuZXdWYWx1ZTtcclxuICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XHJcbiAgICB0aGlzLnRvZ2dsZUFsbFZhbHVlID0gbmV3VmFsdWUubGVuZ3RoID09PSB0aGlzLm9wdGlvbnM/Lmxlbmd0aDtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMubGlzdGVuZXJGbikgdGhpcy5saXN0ZW5lckZuKCk7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMubWFwKCh4KSA9PiB4Py51bnN1YnNjcmliZSgpKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiAjY29udGFpbmVyIGNsYXNzPVwiY29yZS1jaGVja2xpc3QtY29udGFpbmVyXCI+XHJcbiAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgY2xhc3M9XCJleHBhbmQtc3RhdGVcIiBbKG5nTW9kZWwpXT1cImV4cGFuZFN0YXRlXCI+XHJcbiAgICA8aW5wdXQgY2xhc3M9XCJ2YWx1ZVwiIFt2YWx1ZV09XCJ2YWx1ZVwiPlxyXG4gICAgPGxhYmVsIFthcHBUb29sdGlwXT1cInRleHRTdHJpbmdpZnlcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwidGV4dCBmb3JtLWNvbnRyb2xcIiBbY2xhc3MuZm9ybS1jb250cm9sLWRpc2FibGVkXT1cImRpc2FibGVkXCIgKGNsaWNrKT1cInRvZ2dsZUV4cGFuZGVkKClcIj5cclxuICAgICAgICA8c3Bhbj57eyAoISF0b2dnbGVBbGxWYWx1ZSA/ICh0ZXh0Q29kZVdoZW5BbGxTZWxlY3RlZCB8IHRyYW5zbGF0ZTogbGFuZykgOiB0ZXh0KSB8fCBwbGFjZWhvbGRlciB9fTwvc3Bhbj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaWNvblwiPlxyXG4gICAgICAgICAgICA8aSBjbGFzcz1cImZlYXRoZXItY2hldnJvbi1kb3duXCI+PC9pPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9sYWJlbD5cclxuICAgIDxkaXYgY2xhc3M9XCJkcm9wZG93blwiIFtjbGFzcy5mb3JtLWNvbnRyb2wtZGlzYWJsZWRdPVwiZGlzYWJsZWRcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidG9nZ2xlLWFsbC13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgIDxjb3JlLWNoZWNrYm94IFt0ZXh0XT1cInRvZ2dsZUFsbFRleHRcIiBbKG5nTW9kZWwpXT1cInRvZ2dsZUFsbFZhbHVlXCJcclxuICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uVG9nZ2xlQWxsVmFsdWVDaGFuZ2UoJGV2ZW50KVwiIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiPjwvY29yZS1jaGVja2JveD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8aW5wdXQgY2xhc3M9XCJzZWFyY2hcIiB0eXBlPVwidGV4dFwiIHBsYWNlaG9sZGVyPVwiU2VhcmNoIGhlcmUuLi5cIiBbKG5nTW9kZWwpXT1cInNlYXJjaFRleHRcIlxyXG4gICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblNlYXJjaFRleHRDaGFuZ2UoJGV2ZW50KVwiIGF1dG9jb21wbGV0ZT1cImZhbHNlXCIgW2NsYXNzLmZvcm0tY29udHJvbC1kaXNhYmxlZF09XCJkaXNhYmxlZFwiPlxyXG4gICAgICAgIDx1bCBbY2xhc3MuZm9ybS1jb250cm9sLWRpc2FibGVkXT1cImRpc2FibGVkXCI+XHJcbiAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIGxvY2FsT3B0aW9uczsgbGV0IGluZGV4ID0gaW5kZXhcIj5cclxuICAgICAgICAgICAgICAgIDxjb3JlLWNoZWNrYm94IFt0ZXh0XT1cIm9wdGlvbi50ZXh0XCIgWyhuZ01vZGVsKV09XCJvcHRpb24uY2hlY2tlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25JdGVtVmFsdWVDaGFuZ2Uob3B0aW9uLCAkZXZlbnQpXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCI+PC9jb3JlLWNoZWNrYm94PlxyXG4gICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgIDwvdWw+XHJcbiAgICA8L2Rpdj5cclxuXHJcbjwvZGl2PiJdfQ==
207
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1jaGVja2xpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWhpc3RhZmYtYWxwaGEvc3JjL2xpYi9hcHAvbGlicmFyaWVzL2NvcmUtY2hlY2tsaXN0L2NvcmUtY2hlY2tsaXN0L2NvcmUtY2hlY2tsaXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1oaXN0YWZmLWFscGhhL3NyYy9saWIvYXBwL2xpYnJhcmllcy9jb3JlLWNoZWNrbGlzdC9jb3JlLWNoZWNrbGlzdC9jb3JlLWNoZWNrbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUdULEtBQUssRUFNTCxTQUFTLEVBQ1QsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFaEcsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sK0RBQStELENBQUM7QUFJN0csT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFMUQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDN0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7Ozs7OztBQThCbEUsTUFBTSxPQUFPLHNCQUF1QixTQUFRLDRCQUE0QjtJQW1DdEUsWUFDVSxRQUFtQixFQUNuQixVQUFzQixF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ZCxhQUdVO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLEtBQUssRUFBRSxJQUFJOzRCQUNYLFdBQVcsd0JBQXdCO3lCQUNwQztxQkFDRjs0TEFJUSxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFNWSxRQUFRO3NCQUF6QixLQUFLO2dCQUNZLFFBQVE7c0JBQXpCLEtBQUs7Z0JBRWtCLFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQWZ0ZXJWaWV3SW5pdCxcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBJbmplY3RvcixcclxuICBJbnB1dCxcclxuICBPbkNoYW5nZXMsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBSZW5kZXJlcjIsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBWaWV3Q2hpbGQsXHJcbiAgaXNEZXZNb2RlLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgTkdfVkFMVUVfQUNDRVNTT1IsIE5nQ29udHJvbCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IENvcmVGb3JtQ29udHJvbEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb3JlLWZvcm0tY29udHJvbC1iYXNlL2NvcmUtZm9ybS1jb250cm9sLWJhc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgRG9tU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2RvbS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vYWxlcnQvYWxlcnQuc2VydmljZSc7XHJcbmltcG9ydCB7IEVudW1UcmFuc2xhdGVLZXkgfSBmcm9tIFwiYWxwaGEtZ2xvYmFsLWNvbnN0YW50c1wiO1xyXG5pbXBvcnQgeyBNdWx0aUxhbmd1YWdlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL211bHRpLWxhbmd1YWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBub25lQXV0b0Nsb3NlZEFsZXJ0T3B0aW9ucyB9IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy9hbGVydE9wdGlvbnMnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb3JlQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb3JlLWNoZWNrYm94L2NvcmUtY2hlY2tib3gvY29yZS1jaGVja2JveC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUb29sdGlwRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vdG9vbHRpcC90b29sdGlwLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVBpcGUgfSBmcm9tICcuLi8uLi8uLi9hcHAtcGlwZXMvdHJhbnNsYXRlLnBpcGUnO1xyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUNvcmVDaGVja2xpc3RPcHRpb24ge1xyXG4gIHZhbHVlOiBhbnk7XHJcbiAgdGV4dDogc3RyaW5nO1xyXG4gIGNoZWNrZWQ6IGJvb2xlYW47XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY29yZS1jaGVja2xpc3QnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBUb29sdGlwRGlyZWN0aXZlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIENvcmVDaGVja2JveENvbXBvbmVudCxcclxuICAgIFRyYW5zbGF0ZVBpcGUsXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vY29yZS1jaGVja2xpc3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvcmUtY2hlY2tsaXN0LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgdXNlRXhpc3Rpbmc6IENvcmVDaGVja2xpc3RDb21wb25lbnQsXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb3JlQ2hlY2tsaXN0Q29tcG9uZW50IGV4dGVuZHMgQ29yZUZvcm1Db250cm9sQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXMge1xyXG4gIG5nQ29udHJvbCE6IE5nQ29udHJvbDtcclxuICBASW5wdXQoKSBwYXJhbU1vZGUhOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGdldEJ5SWRPYmplY3QkITogQmVoYXZpb3JTdWJqZWN0PGFueT47XHJcbiAgQElucHV0KCkgc2hvd25Gcm9tITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIG9wdGlvbnMkITogQmVoYXZpb3JTdWJqZWN0PElDb3JlQ2hlY2tsaXN0T3B0aW9uW10+O1xyXG4gIEBJbnB1dCgpIGhlaWdodCE6IHN0cmluZztcclxuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nID0gJyc7XHJcbiAgQElucHV0KCkgbG9hZGluZyE6IGJvb2xlYW47XHJcblxyXG4gIGxhbmchOiBzdHJpbmc7XHJcbiAgdG9nZ2xlQWxsVmFsdWU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICB0ZXh0Q29kZVdoZW5BbGxTZWxlY3RlZDogRW51bVRyYW5zbGF0ZUtleSA9IEVudW1UcmFuc2xhdGVLZXkuVUlfQ09SRV9DSEVDS0JPWF9URVhUX1dIRU5fQUxMX1NFTEVDVEVEXHJcblxyXG4gIEBJbnB1dCgpIG92ZXJyaWRlIHJlYWRvbmx5ITogYm9vbGVhbjtcclxuICBASW5wdXQoKSBvdmVycmlkZSBkaXNhYmxlZCE6IGJvb2xlYW47XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2NvbnRhaW5lcicpIGNvbnRhaW5lciE6IEVsZW1lbnRSZWY7XHJcblxyXG4gIGxpc3RlbmVyRm4hOiAoKSA9PiB2b2lkO1xyXG5cclxuICBvcHRpb25zITogSUNvcmVDaGVja2xpc3RPcHRpb25bXTtcclxuXHJcbiAgbG9jYWxPcHRpb25zITogSUNvcmVDaGVja2xpc3RPcHRpb25bXTtcclxuICBvdmVycmlkZSB2YWx1ZSE6IGFueVtdO1xyXG5cclxuICB0ZXh0ITogc3RyaW5nO1xyXG4gIHRleHRTdHJpbmdpZnkhOiBzdHJpbmc7XHJcbiAgc2VhcmNoVGV4dCE6IHN0cmluZztcclxuICBleHBhbmRTdGF0ZSE6IGJvb2xlYW47XHJcblxyXG4gIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIHRvZ2dsZUFsbFRleHQ6IEVudW1UcmFuc2xhdGVLZXkgPSBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPUkVfQ09OVFJPTF9DSEVDS0xJU1RfVE9HR0xFX0NIRUNLX0FMTDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXHJcbiAgICBwcml2YXRlIGRvbVNlcnZpY2U6IERvbVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICBwcml2YXRlIG1sczogTXVsdGlMYW5ndWFnZVNlcnZpY2UsXHJcbiAgKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLm5nQ29udHJvbCA9IHRoaXMuaW5qZWN0b3IuZ2V0KE5nQ29udHJvbCk7XHJcblxyXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXHJcbiAgICAgIHRoaXMubWxzLmxhbmckLnN1YnNjcmliZSh4ID0+IHRoaXMubGFuZyA9IHgpXHJcbiAgICApXHJcblxyXG4gICAgLyogU1RBUlQ6IENIRUNLIElOUFVUIEVSUk9SICovXHJcbiAgICBpZiAoISEhdGhpcy5vcHRpb25zJCAmJiBpc0Rldk1vZGUoKSkge1xyXG4gICAgICB0aGlzLmFsZXJ0U2VydmljZS5lcnJvcihcclxuICAgICAgICBgXHJcbiAgICAgICAgQ29yZUNoZWNrbGlzdENvbXBvbmVudCByZXF1aXJlZCB0aGlzIGlucHV0OiBvcHRpb25zJCE6IEJlaGF2aW9yU3ViamVjdDxJQ29yZURyb3Bkb3duT3B0aW9uW10+O1xyXG4gICAgICAgIEFsc28sIGl0IG5lZWRzIHRvIHJlY2VpdmUgYSBuZXcgdmFsdWUgdGhhdCB1c3VhbGx5IGNvbWVzIGZyb20gYW5kIEFQSSBHZXRBbGwoKSBhY3Rpb25cclxuICAgICAgICBgLFxyXG4gICAgICAgIG5vbmVBdXRvQ2xvc2VkQWxlcnRPcHRpb25zLFxyXG4gICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICghISF0aGlzLnBhcmFtTW9kZSkge1xyXG4gICAgICAvL2dldEJ5SWRPYmplY3QkXHJcbiAgICAgIGlmICghISF0aGlzLmdldEJ5SWRPYmplY3QkICYmIGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgICAgdGhpcy5hbGVydFNlcnZpY2UuZXJyb3IoXHJcbiAgICAgICAgICBgQ29yZUNoZWNrbGlzdENvbXBvbmVudCBFcnJvcjogUmVxdWlyZWQgaW5wdXRzOlxyXG4gICAgICAgICAgICAgICAgZ2V0QnlJZE9iamVjdCQ6IEJlaGF2aW9yU3ViamVjdCZsdDthbnkmZ3Q7IChmb3IgJyR7dGhpcy5uZ0NvbnRyb2wubmFtZX0nKWAsXHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKCEhIXRoaXMuc2hvd25Gcm9tICYmICghISF0aGlzLm9wdGlvbnMkLnZhbHVlIHx8ICEhIXRoaXMub3B0aW9ucyQudmFsdWUubGVuZ3RoKSkge1xyXG4gICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmVycm9yKFxyXG4gICAgICAgICAgYENvcmVEcm9wZG93bkNvbXBvbmVudCBFcnJvcjogUmVxdWlyZWQgaW5wdXRzOlxyXG4gICAgICAgICAgICAgIHNob3duRnJvbTogc3RyaW5nOyAoZm9yICcke3RoaXMubmdDb250cm9sLm5hbWV9JylgLFxyXG4gICAgICAgICAgbm9uZUF1dG9DbG9zZWRBbGVydE9wdGlvbnMsXHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qIEVORDogQ0hFQ0sgSU5QVVQgRVJST1IgKi9cclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuICAgICAgdGhpcy5vcHRpb25zJC5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgICB0aGlzLm9wdGlvbnMgPSB4O1xyXG4gICAgICAgIHRoaXMubG9jYWxPcHRpb25zID0geDtcclxuXHJcbiAgICAgICAgaWYgKCEhdGhpcy52YWx1ZSkge1xyXG4gICAgICAgICAgdGhpcy53cml0ZVZhbHVlKHRoaXMudmFsdWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSksXHJcbiAgICApO1xyXG5cclxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICB0aGlzLmdldEJ5SWRPYmplY3QkPy5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgICBpZiAoISF4KSB7XHJcbiAgICAgICAgICB0aGlzLndyaXRlVmFsdWUoeC5pZCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMudGV4dCA9ICcnO1xyXG4gICAgICAgICAgdGhpcy50ZXh0U3RyaW5naWZ5ID0gJyc7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KSxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICAvKipcclxuICAgICAqIFRoaXMgZXZlbnRzIGdldCBjYWxsZWQgYnkgYWxsIGNsaWNrcyBvbiB0aGUgcGFnZVxyXG4gICAgICovXHJcbiAgICB0aGlzLmxpc3RlbmVyRm4gPSB0aGlzLnJlbmRlcmVyLmxpc3Rlbignd2luZG93JywgJ2NsaWNrJywgKGU6IEV2ZW50KSA9PiB7XHJcbiAgICAgIC8qXHJcbiAgICAgICAqIGhhbmRsZSBjbGljayBvdXRzaWRlXHJcbiAgICAgICAqL1xyXG4gICAgICBpZiAodGhpcy5jb250YWluZXIgJiYgISEhdGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudC5jb250YWlucyhlLnRhcmdldCkpIHtcclxuICAgICAgICB0aGlzLmV4cGFuZFN0YXRlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5zZWFyY2hUZXh0ID0gJyc7XHJcbiAgICAgICAgdGhpcy5sb2NhbE9wdGlvbnMgPSB0aGlzLm9wdGlvbnMkLnZhbHVlO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICBjb25zdCBtYXhaSW5kZXggPSB0aGlzLmRvbVNlcnZpY2UuZ2V0TWF4WkluZGV4KCk7XHJcbiAgICB0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCctLW1heC16LWluZGV4JywgbWF4WkluZGV4ICsgMSk7XHJcbiAgICBpZiAoISF0aGlzLmhlaWdodCkgdGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1oZWlnaHQnLCB0aGlzLmhlaWdodCk7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSB3cml0ZVZhbHVlKG9iajogYW55W10pOiB2b2lkIHtcclxuICAgIHRoaXMudmFsdWUgPSBvYmo7XHJcbiAgICBsZXQgbmV3VGV4dCA9ICcnO1xyXG4gICAgdGhpcy5vcHRpb25zPy5tYXAoKHgpID0+IHtcclxuICAgICAgLy8gZmluZCBpdGVtIGZyb20gaW5wdXRcclxuICAgICAgY29uc3QgZmlsdGVyID0gb2JqPy5maWx0ZXIoKGkpID0+IHgudmFsdWUgPT09IGkpO1xyXG4gICAgICBpZiAoISFmaWx0ZXI/Lmxlbmd0aCkge1xyXG4gICAgICAgIHguY2hlY2tlZCA9IHRydWU7XHJcbiAgICAgICAgbmV3VGV4dCArPSB4LnRleHQgKyAnOyAnO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHguY2hlY2tlZCA9IGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHRoaXMudGV4dCA9IG5ld1RleHQ7XHJcbiAgICB0aGlzLnRleHRTdHJpbmdpZnkgPSB0aGlzLnRleHQ7XHJcblxyXG4gICAgaWYgKCEhb2JqKSB7XHJcbiAgICAgIHRoaXMudG9nZ2xlQWxsVmFsdWUgPSBvYmoubGVuZ3RoID09PSB0aGlzLm9wdGlvbnM/Lmxlbmd0aDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudG9nZ2xlQWxsVmFsdWUgPSBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uU2VhcmNoVGV4dENoYW5nZSh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmxvY2FsT3B0aW9ucyA9IHRoaXMub3B0aW9ucy5maWx0ZXIoKHgpID0+IHgudGV4dC50b0xvd2VyQ2FzZSgpLmluZGV4T2YodmFsdWUudG9Mb2NhbGVMb3dlckNhc2UoKSkgPj0gMCk7XHJcbiAgfVxyXG5cclxuICB0b2dnbGVFeHBhbmRlZCgpOiB2b2lkIHtcclxuICAgIHRoaXMuZXhwYW5kU3RhdGUgPSAhISF0aGlzLmV4cGFuZFN0YXRlO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKCEhIWNoYW5nZXNbJ29wdGlvbnMnXSkgcmV0dXJuO1xyXG4gICAgdGhpcy5sb2NhbE9wdGlvbnMgPSBjaGFuZ2VzWydvcHRpb25zJ10/LmN1cnJlbnRWYWx1ZTtcclxuICB9XHJcblxyXG4gIG9uVG9nZ2xlQWxsVmFsdWVDaGFuZ2UoZTogYm9vbGVhbikge1xyXG4gICAgbGV0IG5ld1RleHQgPSAnJztcclxuICAgIGxldCBuZXdWYWx1ZTogYW55W10gPSBbXTtcclxuXHJcbiAgICBpZiAoZSkge1xyXG4gICAgICB0aGlzLm9wdGlvbnMubWFwKCh4KSA9PiB7XHJcbiAgICAgICAgbmV3VGV4dCArPSB4LnRleHQgKyAnOyAnO1xyXG4gICAgICAgIG5ld1ZhbHVlLnB1c2goeC52YWx1ZSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMud3JpdGVWYWx1ZShuZXdWYWx1ZSk7XHJcbiAgICB0aGlzLm9uQ2hhbmdlKG5ld1ZhbHVlKTtcclxuICB9XHJcblxyXG4gIG9uSXRlbVZhbHVlQ2hhbmdlKG9wdGlvbjogSUNvcmVDaGVja2xpc3RPcHRpb24sIHZhbHVlOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICBjb25zdCBmaWx0ZXIgPSB0aGlzLm9wdGlvbnMuZmlsdGVyKCh4KSA9PiB4LnZhbHVlID09PSBvcHRpb24udmFsdWUpO1xyXG4gICAgaWYgKGZpbHRlci5sZW5ndGggPT09IDEpIHtcclxuICAgICAgZmlsdGVyWzBdLmNoZWNrZWQgPSB2YWx1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmVycm9yKFxyXG4gICAgICAgIGAke3RoaXMubmdDb250cm9sLm5hbWV9IGVycm9yOiBUaGUgdmFsdWUgJHtvcHRpb24udmFsdWV9IGlzIG5vdCB1bmlxdWUgb3Igbm90IGZvdW5kYCxcclxuICAgICAgICBub25lQXV0b0Nsb3NlZEFsZXJ0T3B0aW9ucyxcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIGxldCBuZXdUZXh0ID0gJyc7XHJcbiAgICBsZXQgbmV3VmFsdWU6IGFueVtdID0gW107XHJcbiAgICB0aGlzLm9wdGlvbnNcclxuICAgICAgPy5maWx0ZXIoKHgpID0+ICEheC5jaGVja2VkKVxyXG4gICAgICAubWFwKCh4KSA9PiB7XHJcbiAgICAgICAgbmV3VGV4dCArPSB4LnRleHQgKyAnOyAnO1xyXG4gICAgICAgIG5ld1ZhbHVlLnB1c2goeC52YWx1ZSk7XHJcbiAgICAgIH0pO1xyXG4gICAgdGhpcy50ZXh0ID0gbmV3VGV4dDtcclxuICAgIHRoaXMudmFsdWUgPSBuZXdWYWx1ZTtcclxuICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XHJcbiAgICB0aGlzLnRvZ2dsZUFsbFZhbHVlID0gbmV3VmFsdWUubGVuZ3RoID09PSB0aGlzLm9wdGlvbnM/Lmxlbmd0aDtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMubGlzdGVuZXJGbikgdGhpcy5saXN0ZW5lckZuKCk7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMubWFwKCh4KSA9PiB4Py51bnN1YnNjcmliZSgpKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiAjY29udGFpbmVyIGNsYXNzPVwiY29yZS1jaGVja2xpc3QtY29udGFpbmVyXCI+XHJcbiAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgY2xhc3M9XCJleHBhbmQtc3RhdGVcIiBbKG5nTW9kZWwpXT1cImV4cGFuZFN0YXRlXCI+XHJcbiAgICA8aW5wdXQgY2xhc3M9XCJ2YWx1ZVwiIFt2YWx1ZV09XCJ2YWx1ZVwiPlxyXG4gICAgPGxhYmVsIFthcHBUb29sdGlwXT1cInRleHRTdHJpbmdpZnlcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwidGV4dCBmb3JtLWNvbnRyb2xcIiBbY2xhc3MuZm9ybS1jb250cm9sLWRpc2FibGVkXT1cImRpc2FibGVkXCIgKGNsaWNrKT1cInRvZ2dsZUV4cGFuZGVkKClcIj5cclxuICAgICAgICA8c3BhbiBbYXBwVG9vbHRpcF09XCIhIXRvZ2dsZUFsbFZhbHVlID8gKHRleHRDb2RlV2hlbkFsbFNlbGVjdGVkIHwgdHJhbnNsYXRlOiBsYW5nKSA6IHRleHRcIj57eyAoISF0b2dnbGVBbGxWYWx1ZSA/ICh0ZXh0Q29kZVdoZW5BbGxTZWxlY3RlZCB8IHRyYW5zbGF0ZTogbGFuZykgOiB0ZXh0KSB8fCBwbGFjZWhvbGRlciB9fTwvc3Bhbj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaWNvblwiPlxyXG4gICAgICAgICAgICA8aSBjbGFzcz1cImZlYXRoZXItY2hldnJvbi1kb3duXCI+PC9pPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9sYWJlbD5cclxuICAgIDxkaXYgY2xhc3M9XCJkcm9wZG93blwiIFtjbGFzcy5mb3JtLWNvbnRyb2wtZGlzYWJsZWRdPVwiZGlzYWJsZWRcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidG9nZ2xlLWFsbC13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgIDxjb3JlLWNoZWNrYm94IFt0ZXh0XT1cInRvZ2dsZUFsbFRleHRcIiBbKG5nTW9kZWwpXT1cInRvZ2dsZUFsbFZhbHVlXCJcclxuICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uVG9nZ2xlQWxsVmFsdWVDaGFuZ2UoJGV2ZW50KVwiIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiPjwvY29yZS1jaGVja2JveD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8aW5wdXQgY2xhc3M9XCJzZWFyY2hcIiB0eXBlPVwidGV4dFwiIHBsYWNlaG9sZGVyPVwiU2VhcmNoIGhlcmUuLi5cIiBbKG5nTW9kZWwpXT1cInNlYXJjaFRleHRcIlxyXG4gICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblNlYXJjaFRleHRDaGFuZ2UoJGV2ZW50KVwiIGF1dG9jb21wbGV0ZT1cImZhbHNlXCIgW2NsYXNzLmZvcm0tY29udHJvbC1kaXNhYmxlZF09XCJkaXNhYmxlZFwiPlxyXG4gICAgICAgIDx1bCBbY2xhc3MuZm9ybS1jb250cm9sLWRpc2FibGVkXT1cImRpc2FibGVkXCI+XHJcbiAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIGxvY2FsT3B0aW9uczsgbGV0IGluZGV4ID0gaW5kZXhcIj5cclxuICAgICAgICAgICAgICAgIDxjb3JlLWNoZWNrYm94IFt0ZXh0XT1cIm9wdGlvbi50ZXh0XCIgWyhuZ01vZGVsKV09XCJvcHRpb24uY2hlY2tlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25JdGVtVmFsdWVDaGFuZ2Uob3B0aW9uLCAkZXZlbnQpXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCI+PC9jb3JlLWNoZWNrYm94PlxyXG4gICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgIDwvdWw+XHJcbiAgICA8L2Rpdj5cclxuXHJcbjwvZGl2PiJdfQ==
@@ -76,7 +76,8 @@ export class CoreCommonParamKitComponent extends BaseComponent {
76
76
  this.paramRows = [
77
77
  [
78
78
  {
79
- flexSize: 3,
79
+ flexSize: 0,
80
+ width: 300,
80
81
  name: 'orgIds',
81
82
  ngModel: '',
82
83
  ngModelChange: this.onNgModelChange,
@@ -99,7 +100,8 @@ export class CoreCommonParamKitComponent extends BaseComponent {
99
100
  },
100
101
  */
101
102
  {
102
- flexSize: 3,
103
+ flexSize: 0,
104
+ width: 150,
103
105
  name: 'dateFrom',
104
106
  ngModel: null,
105
107
  ngModelChange: this.onNgModelChange,
@@ -109,7 +111,8 @@ export class CoreCommonParamKitComponent extends BaseComponent {
109
111
  controlType: EnumFormBaseContolType.DATEPICKER,
110
112
  },
111
113
  {
112
- flexSize: 3,
114
+ flexSize: 0,
115
+ width: 150,
113
116
  name: 'dateTo',
114
117
  ngModel: null,
115
118
  ngModelChange: this.onNgModelChange,
@@ -119,7 +122,8 @@ export class CoreCommonParamKitComponent extends BaseComponent {
119
122
  controlType: EnumFormBaseContolType.DATEPICKER,
120
123
  },
121
124
  {
122
- flexSize: 3,
125
+ flexSize: 0,
126
+ width: 250,
123
127
  name: 'statusIds',
124
128
  ngModel: statusIdsInitialValue,
125
129
  ngModelChange: this.onNgModelChange,
@@ -236,4 +240,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
236
240
  }], onChange: [{
237
241
  type: Output
238
242
  }] } });
239
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1jb21tb24tcGFyYW0ta2l0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1oaXN0YWZmLWFscGhhL3NyYy9saWIvYXBwL2xpYnJhcmllcy9jb3JlLWNvbW1vbi1wYXJhbS1raXQvY29yZS1jb21tb24tcGFyYW0ta2l0L2NvcmUtY29tbW9uLXBhcmFtLWtpdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9saWJyYXJpZXMvY29yZS1jb21tb24tcGFyYW0ta2l0L2NvcmUtY29tbW9uLXBhcmFtLWtpdC9jb3JlLWNvbW1vbi1wYXJhbS1raXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEdBQUcsTUFBTSxlQUFlLENBQUM7QUFDL0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUd2QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDekUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFLMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwwRUFBMEUsQ0FBQztBQUNySCxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSxvRUFBb0UsQ0FBQzs7OztBQW1CekgsTUFBTSxPQUFPLDJCQUNYLFNBQVEsYUFBYTtJQTJCckIsWUFDa0IsR0FBeUIsRUFDakMs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dUJBQXVCO3NCQUEvQixLQUFLO2dCQUNHLCtCQUErQjtzQkFBdkMsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csMEJBQTBCO3NCQUFsQyxLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLHdCQUF3QjtzQkFBaEMsS0FBSztnQkFDRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0ksUUFBUTtzQkFBakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBJQ29yZUNoZWNrbGlzdE9wdGlvbiB9IGZyb20gJy4uLy4uL2NvcmUtY2hlY2tsaXN0L2NvcmUtY2hlY2tsaXN0L2NvcmUtY2hlY2tsaXN0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IElDb3JlUGFyYW1Db250cm9sIH0gZnJvbSAnLi4vLi4vY29yZS1oZWFkZXItcGFyYW1zL2VudW0tYW5kLWludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBFbnVtRm9ybUJhc2VDb250b2xUeXBlIH0gZnJvbSAnLi4vLi4vLi4vZW51bS9FbnVtRm9ybUJhc2VDb250b2xUeXBlJztcclxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UtY29tcG9uZW50L2Jhc2UvYmFzZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFbnVtVHJhbnNsYXRlS2V5IH0gZnJvbSBcImFscGhhLWdsb2JhbC1jb25zdGFudHNcIjtcclxuaW1wb3J0IHsgYXBpIH0gZnJvbSBcImFscGhhLWdsb2JhbC1jb25zdGFudHNcIjtcclxuaW1wb3J0IHsgTXVsdGlMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9tdWx0aS1sYW5ndWFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXBwU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2FwcC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSUZvcm1hdGVkUmVzcG9uc2UgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzL0lGb3JtYXRlZFJlc3BvbnNlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IENvcmVIZWFkZXJQYXJhbXNDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb3JlLWhlYWRlci1wYXJhbXMvY29yZS1oZWFkZXItcGFyYW1zL2NvcmUtaGVhZGVyLXBhcmFtcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFbnVtQ29yZUZvcm1Db250cm9sU2Vla2VyU291cmNlVHlwZSB9IGZyb20gJy4uLy4uL2NvcmUtZm9ybS1jb250cm9sLXNlZWtlci9FbnVtQ29yZUZvcm1Db250cm9sU2Vla2VyU291cmNlVHlwZSc7XHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJQ29yZUNvbW1vblBhcmFtS2l0RXZlbnRFbWl0dGVyRGF0YSB7XHJcbiAgZmllbGQ6IHN0cmluZztcclxuICB2YWx1ZTogYW55O1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2NvcmUtY29tbW9uLXBhcmFtLWtpdCcsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIENvcmVIZWFkZXJQYXJhbXNDb21wb25lbnQsXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vY29yZS1jb21tb24tcGFyYW0ta2l0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jb3JlLWNvbW1vbi1wYXJhbS1raXQuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIENvcmVDb21tb25QYXJhbUtpdENvbXBvbmVudFxyXG4gIGV4dGVuZHMgQmFzZUNvbXBvbmVudFxyXG4gIGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuICBASW5wdXQoKSBlbmFibGVUaW1lWm9uZUNvbnZlcnRlckZvckRhdGVUaW1lUGVyaW9kUGFyYW1ldGVycyE6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgZGF0ZVBlcmlvZENvbXBhcmlzb25Gb3IhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgZGF0ZVBlcmlvZENvbXBhcmlzb25Gb3JMYWJlbEtleSE6IEVudW1UcmFuc2xhdGVLZXk7XHJcbiAgQElucHV0KCkgc3RhdHVzSW5jbHVzaW9uRm9yITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHN0YXR1c0luY2x1c2lvbkZvckxhYmVsS2V5ITogRW51bVRyYW5zbGF0ZUtleTtcclxuICBASW5wdXQoKSBzdGF0dXNPcHRpb25zQXBpITogYXBpO1xyXG4gIEBJbnB1dCgpIHNob3dPcmdQYXJhbSE6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgaGlkZURhdGVQZXJpb2RDb21wYXJpc29uITogYm9vbGVhbjtcclxuICBASW5wdXQoKSBoaWRlU3RhdHVzSW5jbHVzaW9uITogYm9vbGVhbjtcclxuICBASW5wdXQoKSBoaWRlR2VuZXJhbFNlYXJjaCE6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgc3RhdHVzT3B0aW9ucyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElDb3JlQ2hlY2tsaXN0T3B0aW9uW10+KFtdKTtcclxuICBAT3V0cHV0KCkgb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPElDb3JlQ29tbW9uUGFyYW1LaXRFdmVudEVtaXR0ZXJEYXRhPigpO1xyXG5cclxuXHJcbiAgaXNFbXBsb3llZVN0YXR1c0Nhc2U6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgb25OZ01vZGVsQ2hhbmdlID0gKG5nTW9kZWw6IHN0cmluZywgdmFsdWU6IGFueSkgPT4ge1xyXG4gICAgdGhpcy5vbkNoYW5nZS5lbWl0KHtcclxuICAgICAgZmllbGQ6IG5nTW9kZWwsXHJcbiAgICAgIHZhbHVlLFxyXG4gICAgfSk7XHJcbiAgfTtcclxuXHJcbiAgcGFyYW1Sb3dzITogSUNvcmVQYXJhbUNvbnRyb2xbXVtdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBvdmVycmlkZSBtbHM6IE11bHRpTGFuZ3VhZ2VTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhcHBTZXJ2aWNlOiBBcHBTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICBzdXBlcihtbHMpO1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgbmdPbkluaXQoKTogdm9pZCB7XHJcblxyXG4gICAgY29uc3Qgc3RhdHVzSWRzSW5pdGlhbFZhbHVlOiBhbnlbXSA9IFtdO1xyXG4gICAgLy8gcHJlcGFyZSBzdGF0dXNJZHMgaW5pdGlhbCB2YWx1ZVxyXG4gICAgaWYgKHRoaXMuc3RhdHVzT3B0aW9ucyQudmFsdWUpIHtcclxuICAgICAgdGhpcy5zdGF0dXNPcHRpb25zJC52YWx1ZS5maWx0ZXIoeCA9PiB4LmNoZWNrZWQpLm1hcCh4ID0+IHtcclxuICAgICAgICBzdGF0dXNJZHNJbml0aWFsVmFsdWUucHVzaCh4LnZhbHVlKTtcclxuICAgICAgfSlcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaCh0aGlzLm1scy5sYW5nJC5zdWJzY3JpYmUoKHgpID0+ICh0aGlzLmxhbmcgPSB4KSkpO1xyXG5cclxuICAgIGlmICghIXRoaXMuaGlkZURhdGVQZXJpb2RDb21wYXJpc29uKSB7XHJcbiAgICAgIHRoaXMucGFyYW1Sb3dzID0gW1xyXG4gICAgICAgIFtcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgZmxleFNpemU6IDMsXHJcbiAgICAgICAgICAgIG5hbWU6ICdvcmdJZHMnLFxyXG4gICAgICAgICAgICBuZ01vZGVsOiBbXSxcclxuICAgICAgICAgICAgbmdNb2RlbENoYW5nZTogdGhpcy5vbk5nTW9kZWxDaGFuZ2UsXHJcbiAgICAgICAgICAgIHZhbHVlOiAnJyxcclxuICAgICAgICAgICAgbGFiZWw6IEVudW1UcmFuc2xhdGVLZXkuVUlfRU5USVRZX0ZJRUxEX0NBUFRJT05fSFVfT1JHQU5JWkFUSU9OX0lEUyxcclxuICAgICAgICAgICAgY29udHJvbFR5cGU6IEVudW1Gb3JtQmFzZUNvbnRvbFR5cGUuU0VFS0VSLFxyXG4gICAgICAgICAgICBzZWVrZXJTb3VyY2VUeXBlOiBFbnVtQ29yZUZvcm1Db250cm9sU2Vla2VyU291cmNlVHlwZS5PUkdBTklaQVRJT05fVU5JVF9TRUVLLFxyXG4gICAgICAgICAgICBoaWRkZW46ICF0aGlzLnNob3dPcmdQYXJhbSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBcclxuICAgICAgICAgIC8vIHtcclxuICAgICAgICAgIC8vICAgZmxleFNpemU6IDMsXHJcbiAgICAgICAgICAvLyAgIG5hbWU6ICdnZW5lcmFsU2VhcmNoJyxcclxuICAgICAgICAgIC8vICAgbmdNb2RlbDogJycsXHJcbiAgICAgICAgICAvLyAgIG5nTW9kZWxDaGFuZ2U6IHRoaXMub25OZ01vZGVsQ2hhbmdlLFxyXG4gICAgICAgICAgLy8gICB2YWx1ZTogJycsXHJcbiAgICAgICAgICAvLyAgIGxhYmVsOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPUkVfUEFSQU1TX0dFTkVSQUxfU0VBUkNILFxyXG4gICAgICAgICAgLy8gICBjb250cm9sVHlwZTogRW51bUZvcm1CYXNlQ29udG9sVHlwZS5URVhUQk9YLFxyXG4gICAgICAgICAgLy8gICBoaWRkZW46IHRoaXMuaGlkZUdlbmVyYWxTZWFyY2hcclxuICAgICAgICAgIC8vIH0sXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIGZsZXhTaXplOiAhdGhpcy5oaWRlR2VuZXJhbFNlYXJjaCA/IDMgOiAxMCxcclxuICAgICAgICAgICAgbmFtZTogJ3N0YXR1c0lkcycsXHJcbiAgICAgICAgICAgIG5nTW9kZWw6IHN0YXR1c0lkc0luaXRpYWxWYWx1ZSxcclxuICAgICAgICAgICAgbmdNb2RlbENoYW5nZTogdGhpcy5vbk5nTW9kZWxDaGFuZ2UsXHJcbiAgICAgICAgICAgIHZhbHVlOiBudWxsLFxyXG4gICAgICAgICAgICBoaWRkZW46IHRoaXMuaGlkZVN0YXR1c0luY2x1c2lvbixcclxuICAgICAgICAgICAgbGFiZWw6IHRoaXMuc3RhdHVzSW5jbHVzaW9uRm9yTGFiZWxLZXksXHJcbiAgICAgICAgICAgIGNvbnRyb2xUeXBlOiBFbnVtRm9ybUJhc2VDb250b2xUeXBlLkNIRUNLTElTVCxcclxuICAgICAgICAgICAgY2hlY2tsaXN0T3B0aW9ucyQ6IHRoaXMuc3RhdHVzT3B0aW9ucyQsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIF1cclxuICAgICAgXVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5wYXJhbVJvd3MgPSBbXHJcbiAgICAgICAgW1xyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICBmbGV4U2l6ZTogMyxcclxuICAgICAgICAgICAgbmFtZTogJ29yZ0lkcycsXHJcbiAgICAgICAgICAgIG5nTW9kZWw6ICcnLFxyXG4gICAgICAgICAgICBuZ01vZGVsQ2hhbmdlOiB0aGlzLm9uTmdNb2RlbENoYW5nZSxcclxuICAgICAgICAgICAgdmFsdWU6ICcnLFxyXG4gICAgICAgICAgICBsYWJlbDogRW51bVRyYW5zbGF0ZUtleS5VSV9FTlRJVFlfRklFTERfQ0FQVElPTl9IVV9PUkdBTklaQVRJT05fSURTLFxyXG4gICAgICAgICAgICBjb250cm9sVHlwZTogRW51bUZvcm1CYXNlQ29udG9sVHlwZS5TRUVLRVIsXHJcbiAgICAgICAgICAgIHNlZWtlclNvdXJjZVR5cGU6IEVudW1Db3JlRm9ybUNvbnRyb2xTZWVrZXJTb3VyY2VUeXBlLk9SR0FOSVpBVElPTl9VTklUX1NFRUssXHJcbiAgICAgICAgICAgIGhpZGRlbjogIXRoaXMuc2hvd09yZ1BhcmFtLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIFxyXG4gICAgICAgICAgLypcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgZmxleFNpemU6IDMsXHJcbiAgICAgICAgICAgIG5hbWU6ICdnZW5lcmFsU2VhcmNoJyxcclxuICAgICAgICAgICAgbmdNb2RlbDogJycsXHJcbiAgICAgICAgICAgIG5nTW9kZWxDaGFuZ2U6IHRoaXMub25OZ01vZGVsQ2hhbmdlLFxyXG4gICAgICAgICAgICB2YWx1ZTogJycsXHJcbiAgICAgICAgICAgIGxhYmVsOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPUkVfUEFSQU1TX0dFTkVSQUxfU0VBUkNILFxyXG4gICAgICAgICAgICBjb250cm9sVHlwZTogRW51bUZvcm1CYXNlQ29udG9sVHlwZS5URVhUQk9YLFxyXG4gICAgICAgICAgICBoaWRkZW46IHRoaXMuaGlkZUdlbmVyYWxTZWFyY2hcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAqL1xyXG5cclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgZmxleFNpemU6IDMsXHJcbiAgICAgICAgICAgIG5hbWU6ICdkYXRlRnJvbScsXHJcbiAgICAgICAgICAgIG5nTW9kZWw6IG51bGwsXHJcbiAgICAgICAgICAgIG5nTW9kZWxDaGFuZ2U6IHRoaXMub25OZ01vZGVsQ2hhbmdlLFxyXG4gICAgICAgICAgICB2YWx1ZTogbnVsbCxcclxuICAgICAgICAgICAgaGlkZGVuOiB0aGlzLmhpZGVEYXRlUGVyaW9kQ29tcGFyaXNvbixcclxuICAgICAgICAgICAgbGFiZWw6IHRoaXMuZGF0ZVBlcmlvZENvbXBhcmlzb25Gb3JMYWJlbEtleSxcclxuICAgICAgICAgICAgY29udHJvbFR5cGU6IEVudW1Gb3JtQmFzZUNvbnRvbFR5cGUuREFURVBJQ0tFUixcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIGZsZXhTaXplOiAzLFxyXG4gICAgICAgICAgICBuYW1lOiAnZGF0ZVRvJyxcclxuICAgICAgICAgICAgbmdNb2RlbDogbnVsbCxcclxuICAgICAgICAgICAgbmdNb2RlbENoYW5nZTogdGhpcy5vbk5nTW9kZWxDaGFuZ2UsXHJcbiAgICAgICAgICAgIHZhbHVlOiBudWxsLFxyXG4gICAgICAgICAgICBoaWRkZW46IHRoaXMuaGlkZURhdGVQZXJpb2RDb21wYXJpc29uLFxyXG4gICAgICAgICAgICBsYWJlbDogdGhpcy5kYXRlUGVyaW9kQ29tcGFyaXNvbkZvckxhYmVsS2V5LFxyXG4gICAgICAgICAgICBjb250cm9sVHlwZTogRW51bUZvcm1CYXNlQ29udG9sVHlwZS5EQVRFUElDS0VSLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgZmxleFNpemU6IDMsXHJcbiAgICAgICAgICAgIG5hbWU6ICdzdGF0dXNJZHMnLFxyXG4gICAgICAgICAgICBuZ01vZGVsOiBzdGF0dXNJZHNJbml0aWFsVmFsdWUsXHJcbiAgICAgICAgICAgIG5nTW9kZWxDaGFuZ2U6IHRoaXMub25OZ01vZGVsQ2hhbmdlLFxyXG4gICAgICAgICAgICB2YWx1ZTogbnVsbCxcclxuICAgICAgICAgICAgaGlkZGVuOiB0aGlzLmhpZGVTdGF0dXNJbmNsdXNpb24sXHJcbiAgICAgICAgICAgIGxhYmVsOiB0aGlzLnN0YXR1c0luY2x1c2lvbkZvckxhYmVsS2V5LFxyXG4gICAgICAgICAgICBjb250cm9sVHlwZTogRW51bUZvcm1CYXNlQ29udG9sVHlwZS5DSEVDS0xJU1QsXHJcbiAgICAgICAgICAgIGNoZWNrbGlzdE9wdGlvbnMkOiB0aGlzLnN0YXR1c09wdGlvbnMkLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICBdLFxyXG4gICAgICBdO1xyXG5cclxuICAgIH1cclxuXHJcbiAgICAvL2FsZXJ0KEpTT04uc3RyaW5naWZ5KHRoaXMucGFyYW1Sb3dzWzBdLmZpbHRlcih4ID0+IHgubmFtZSA9PT0gJ3N0YXR1c0lkcycpWzBdLm5nTW9kZWwsIG51bGwsIDIpKVxyXG5cclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuICAgICAgICB0aGlzLnN0YXR1c09wdGlvbnMkLnN1YnNjcmliZSh4cyA9PiB7XHJcbiAgICAgICAgICBjb25zdCBuZXdTdGF0dXNWYWx1ZTogYW55W10gPSBbXTtcclxuICAgICAgICAgIHhzLmZpbHRlcih4ID0+ICEheC5jaGVja2VkKS5tYXAoeSA9PiB7XHJcbiAgICAgICAgICAgIG5ld1N0YXR1c1ZhbHVlLnB1c2goeS52YWx1ZSk7XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICAgY29uc3QgZmlsdGVyID0gdGhpcy5wYXJhbVJvd3NbMF0uZmlsdGVyKG0gPT4gbS5uYW1lID09PSAnc3RhdHVzSWRzJyk7XHJcbiAgICAgICAgICBpZiAoZmlsdGVyLmxlbmd0aCA9PT0gMSkge1xyXG4gICAgICAgICAgICBmaWx0ZXJbMF0ubmdNb2RlbCA9IG5ld1N0YXR1c1ZhbHVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgIClcclxuICAgICAgaWYgKCEhdGhpcy5zdGF0dXNPcHRpb25zQXBpKSB7XHJcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXHJcbiAgICAgICAgICB0aGlzLmFwcFNlcnZpY2UuZ2V0KHRoaXMuc3RhdHVzT3B0aW9uc0FwaSkuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgICAgICAgIGlmICh4Lm9rICYmIHguc3RhdHVzID09PSAyMDApIHtcclxuICAgICAgICAgICAgICBjb25zdCBib2R5OiBJRm9ybWF0ZWRSZXNwb25zZSA9IHguYm9keTtcclxuICAgICAgICAgICAgICBpZiAoYm9keS5zdGF0dXNDb2RlID09PSAyMDApIHtcclxuICBcclxuICAgICAgICAgICAgICAgIC8vIE7hur91IGzDoCB0cuG6oW5nIHRow6FpIG5ow6JuIHZpw6puLCBjaOG7iSBjaGVjayBt4bq3YyDEkeG7i25oIFwixJBhbmcgbMOgbSB2aeG7h2NcIlxyXG4gICAgICAgICAgICAgICAgLy8gVHLDoWkgbOG6oWkgdGjDrCBjaGVjayB04bqldFxyXG4gIFxyXG4gICAgICAgICAgICAgICAgXHJcbiAgXHJcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgYm9keS5pbm5lckJvZHkubGVuZ3RoOyBpbmRleCsrKSB7XHJcbiAgICAgICAgICAgICAgICAgIGNvbnN0IGkgPSBib2R5LmlubmVyQm9keVtpbmRleF07XHJcbiAgICAgICAgICAgICAgICAgIGlmIChpLnR5cGVDb2RlID09PSBcIkVNUF9TVEFUVVNcIikge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaXNFbXBsb3llZVN0YXR1c0Nhc2UgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgXHJcbiAgICAgICAgICAgICAgICBjb25zdCBuZXdPcHRpb25zOiBJQ29yZUNoZWNrbGlzdE9wdGlvbltdID0gW1xyXG4gICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IG51bGwsXHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dDogdGhpcy5tbHMudHJhbnMoRW51bVRyYW5zbGF0ZUtleS5VSV9DT1JFX1BBUkFNU19DT01NT05fTlVMTF9TVEFUVVMsIHRoaXMubGFuZyksXHJcbiAgICAgICAgICAgICAgICAgICAgY2hlY2tlZDogdGhpcy5pc0VtcGxveWVlU3RhdHVzQ2FzZSA/IGZhbHNlIDogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgICB9XTtcclxuICBcclxuICAgICAgICAgICAgICAgIGNvbnN0IG5ld1N0YXR1c0lkczogKG51bWJlciB8IG51bGwpW10gPSAhIXRoaXMuaXNFbXBsb3llZVN0YXR1c0Nhc2UgPyBbXSA6IFtudWxsXTtcclxuICBcclxuICAgICAgICAgICAgICAgIGJvZHkuaW5uZXJCb2R5Lm1hcCgobTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgIG5ld09wdGlvbnMucHVzaCh7XHJcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IG0uaWQsXHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dDogbS5uYW1lLFxyXG4gICAgICAgICAgICAgICAgICAgIGNoZWNrZWQ6ICEhdGhpcy5pc0VtcGxveWVlU3RhdHVzQ2FzZSA/IChtLmNvZGUgPT09IFwiRVNXXCIpIDogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgaWYgKCEhdGhpcy5pc0VtcGxveWVlU3RhdHVzQ2FzZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChtLmNvZGUgPT09IFwiRVNXXCIpIHtcclxuICAgICAgICAgICAgICAgICAgICAgIG5ld1N0YXR1c0lkcy5wdXNoKG0uaWQpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICBuZXdTdGF0dXNJZHMucHVzaChtLmlkKTtcclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgXHJcbiAgICAgICAgICAgICAgICB0aGlzLnN0YXR1c09wdGlvbnMkLm5leHQobmV3T3B0aW9ucyk7XHJcbiAgXHJcbiAgICAgICAgICAgICAgICB0aGlzLnBhcmFtUm93cy5tYXAocm93ID0+IHtcclxuICAgICAgICAgICAgICAgICAgcm93Lm1hcChjb2x1bW4gPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChjb2x1bW4ubmFtZSA9PT0gJ3N0YXR1c0lkcycpIHtcclxuICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbi5uZ01vZGVsID0gbmV3U3RhdHVzSWRzO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgXHJcbiAgICAgICAgICAgICAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoe1xyXG4gICAgICAgICAgICAgICAgICBmaWVsZDogXCJzdGF0dXNJZHNcIixcclxuICAgICAgICAgICAgICAgICAgdmFsdWU6IG5ld1N0YXR1c0lkc1xyXG4gICAgICAgICAgICAgICAgfSlcclxuICBcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJtbDVcIj5cclxuICAgIDxjb3JlLWhlYWRlci1wYXJhbXMgW3Jvd3NdPVwicGFyYW1Sb3dzXCI+PC9jb3JlLWhlYWRlci1wYXJhbXM+XHJcbjwvZGl2PiJdfQ==
243
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1jb21tb24tcGFyYW0ta2l0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1oaXN0YWZmLWFscGhhL3NyYy9saWIvYXBwL2xpYnJhcmllcy9jb3JlLWNvbW1vbi1wYXJhbS1raXQvY29yZS1jb21tb24tcGFyYW0ta2l0L2NvcmUtY29tbW9uLXBhcmFtLWtpdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9saWJyYXJpZXMvY29yZS1jb21tb24tcGFyYW0ta2l0L2NvcmUtY29tbW9uLXBhcmFtLWtpdC9jb3JlLWNvbW1vbi1wYXJhbS1raXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEdBQUcsTUFBTSxlQUFlLENBQUM7QUFDL0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUd2QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDekUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFLMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwwRUFBMEUsQ0FBQztBQUNySCxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSxvRUFBb0UsQ0FBQzs7OztBQW1CekgsTUFBTSxPQUFPLDJCQUNYLFNBQVEsYUFBYTtJQTJCckIsWUFDa0IsR0FBeUIsRUFDakMs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LElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gseUJBQXlCO3FCQUMxQjtrSEFPUSxrREFBa0Q7c0JBQTFELEtBQUs7Z0JBQ0csdUJBQXVCO3NCQUEvQixLQUFLO2dCQUNHLCtCQUErQjtzQkFBdkMsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csMEJBQTBCO3NCQUFsQyxLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLHdCQUF3QjtzQkFBaEMsS0FBSztnQkFDRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0ksUUFBUTtzQkFBakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBJQ29yZUNoZWNrbGlzdE9wdGlvbiB9IGZyb20gJy4uLy4uL2NvcmUtY2hlY2tsaXN0L2NvcmUtY2hlY2tsaXN0L2NvcmUtY2hlY2tsaXN0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IElDb3JlUGFyYW1Db250cm9sIH0gZnJvbSAnLi4vLi4vY29yZS1oZWFkZXItcGFyYW1zL2VudW0tYW5kLWludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBFbnVtRm9ybUJhc2VDb250b2xUeXBlIH0gZnJvbSAnLi4vLi4vLi4vZW51bS9FbnVtRm9ybUJhc2VDb250b2xUeXBlJztcclxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UtY29tcG9uZW50L2Jhc2UvYmFzZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFbnVtVHJhbnNsYXRlS2V5IH0gZnJvbSBcImFscGhhLWdsb2JhbC1jb25zdGFudHNcIjtcclxuaW1wb3J0IHsgYXBpIH0gZnJvbSBcImFscGhhLWdsb2JhbC1jb25zdGFudHNcIjtcclxuaW1wb3J0IHsgTXVsdGlMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9tdWx0aS1sYW5ndWFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXBwU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2FwcC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSUZvcm1hdGVkUmVzcG9uc2UgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzL0lGb3JtYXRlZFJlc3BvbnNlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IENvcmVIZWFkZXJQYXJhbXNDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb3JlLWhlYWRlci1wYXJhbXMvY29yZS1oZWFkZXItcGFyYW1zL2NvcmUtaGVhZGVyLXBhcmFtcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFbnVtQ29yZUZvcm1Db250cm9sU2Vla2VyU291cmNlVHlwZSB9IGZyb20gJy4uLy4uL2NvcmUtZm9ybS1jb250cm9sLXNlZWtlci9FbnVtQ29yZUZvcm1Db250cm9sU2Vla2VyU291cmNlVHlwZSc7XHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJQ29yZUNvbW1vblBhcmFtS2l0RXZlbnRFbWl0dGVyRGF0YSB7XHJcbiAgZmllbGQ6IHN0cmluZztcclxuICB2YWx1ZTogYW55O1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2NvcmUtY29tbW9uLXBhcmFtLWtpdCcsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIENvcmVIZWFkZXJQYXJhbXNDb21wb25lbnQsXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vY29yZS1jb21tb24tcGFyYW0ta2l0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jb3JlLWNvbW1vbi1wYXJhbS1raXQuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIENvcmVDb21tb25QYXJhbUtpdENvbXBvbmVudFxyXG4gIGV4dGVuZHMgQmFzZUNvbXBvbmVudFxyXG4gIGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuICBASW5wdXQoKSBlbmFibGVUaW1lWm9uZUNvbnZlcnRlckZvckRhdGVUaW1lUGVyaW9kUGFyYW1ldGVycyE6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgZGF0ZVBlcmlvZENvbXBhcmlzb25Gb3IhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgZGF0ZVBlcmlvZENvbXBhcmlzb25Gb3JMYWJlbEtleSE6IEVudW1UcmFuc2xhdGVLZXk7XHJcbiAgQElucHV0KCkgc3RhdHVzSW5jbHVzaW9uRm9yITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHN0YXR1c0luY2x1c2lvbkZvckxhYmVsS2V5ITogRW51bVRyYW5zbGF0ZUtleTtcclxuICBASW5wdXQoKSBzdGF0dXNPcHRpb25zQXBpITogYXBpO1xyXG4gIEBJbnB1dCgpIHNob3dPcmdQYXJhbSE6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgaGlkZURhdGVQZXJpb2RDb21wYXJpc29uITogYm9vbGVhbjtcclxuICBASW5wdXQoKSBoaWRlU3RhdHVzSW5jbHVzaW9uITogYm9vbGVhbjtcclxuICBASW5wdXQoKSBoaWRlR2VuZXJhbFNlYXJjaCE6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgc3RhdHVzT3B0aW9ucyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElDb3JlQ2hlY2tsaXN0T3B0aW9uW10+KFtdKTtcclxuICBAT3V0cHV0KCkgb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPElDb3JlQ29tbW9uUGFyYW1LaXRFdmVudEVtaXR0ZXJEYXRhPigpO1xyXG5cclxuXHJcbiAgaXNFbXBsb3llZVN0YXR1c0Nhc2U6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgb25OZ01vZGVsQ2hhbmdlID0gKG5nTW9kZWw6IHN0cmluZywgdmFsdWU6IGFueSkgPT4ge1xyXG4gICAgdGhpcy5vbkNoYW5nZS5lbWl0KHtcclxuICAgICAgZmllbGQ6IG5nTW9kZWwsXHJcbiAgICAgIHZhbHVlLFxyXG4gICAgfSk7XHJcbiAgfTtcclxuXHJcbiAgcGFyYW1Sb3dzITogSUNvcmVQYXJhbUNvbnRyb2xbXVtdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBvdmVycmlkZSBtbHM6IE11bHRpTGFuZ3VhZ2VTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhcHBTZXJ2aWNlOiBBcHBTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICBzdXBlcihtbHMpO1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgbmdPbkluaXQoKTogdm9pZCB7XHJcblxyXG4gICAgY29uc3Qgc3RhdHVzSWRzSW5pdGlhbFZhbHVlOiBhbnlbXSA9IFtdO1xyXG4gICAgLy8gcHJlcGFyZSBzdGF0dXNJZHMgaW5pdGlhbCB2YWx1ZVxyXG4gICAgaWYgKHRoaXMuc3RhdHVzT3B0aW9ucyQudmFsdWUpIHtcclxuICAgICAgdGhpcy5zdGF0dXNPcHRpb25zJC52YWx1ZS5maWx0ZXIoeCA9PiB4LmNoZWNrZWQpLm1hcCh4ID0+IHtcclxuICAgICAgICBzdGF0dXNJZHNJbml0aWFsVmFsdWUucHVzaCh4LnZhbHVlKTtcclxuICAgICAgfSlcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaCh0aGlzLm1scy5sYW5nJC5zdWJzY3JpYmUoKHgpID0+ICh0aGlzLmxhbmcgPSB4KSkpO1xyXG5cclxuICAgIGlmICghIXRoaXMuaGlkZURhdGVQZXJpb2RDb21wYXJpc29uKSB7XHJcbiAgICAgIHRoaXMucGFyYW1Sb3dzID0gW1xyXG4gICAgICAgIFtcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgZmxleFNpemU6IDMsXHJcbiAgICAgICAgICAgIG5hbWU6ICdvcmdJZHMnLFxyXG4gICAgICAgICAgICBuZ01vZGVsOiBbXSxcclxuICAgICAgICAgICAgbmdNb2RlbENoYW5nZTogdGhpcy5vbk5nTW9kZWxDaGFuZ2UsXHJcbiAgICAgICAgICAgIHZhbHVlOiAnJyxcclxuICAgICAgICAgICAgbGFiZWw6IEVudW1UcmFuc2xhdGVLZXkuVUlfRU5USVRZX0ZJRUxEX0NBUFRJT05fSFVfT1JHQU5JWkFUSU9OX0lEUyxcclxuICAgICAgICAgICAgY29udHJvbFR5cGU6IEVudW1Gb3JtQmFzZUNvbnRvbFR5cGUuU0VFS0VSLFxyXG4gICAgICAgICAgICBzZWVrZXJTb3VyY2VUeXBlOiBFbnVtQ29yZUZvcm1Db250cm9sU2Vla2VyU291cmNlVHlwZS5PUkdBTklaQVRJT05fVU5JVF9TRUVLLFxyXG4gICAgICAgICAgICBoaWRkZW46ICF0aGlzLnNob3dPcmdQYXJhbSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBcclxuICAgICAgICAgIC8vIHtcclxuICAgICAgICAgIC8vICAgZmxleFNpemU6IDMsXHJcbiAgICAgICAgICAvLyAgIG5hbWU6ICdnZW5lcmFsU2VhcmNoJyxcclxuICAgICAgICAgIC8vICAgbmdNb2RlbDogJycsXHJcbiAgICAgICAgICAvLyAgIG5nTW9kZWxDaGFuZ2U6IHRoaXMub25OZ01vZGVsQ2hhbmdlLFxyXG4gICAgICAgICAgLy8gICB2YWx1ZTogJycsXHJcbiAgICAgICAgICAvLyAgIGxhYmVsOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPUkVfUEFSQU1TX0dFTkVSQUxfU0VBUkNILFxyXG4gICAgICAgICAgLy8gICBjb250cm9sVHlwZTogRW51bUZvcm1CYXNlQ29udG9sVHlwZS5URVhUQk9YLFxyXG4gICAgICAgICAgLy8gICBoaWRkZW46IHRoaXMuaGlkZUdlbmVyYWxTZWFyY2hcclxuICAgICAgICAgIC8vIH0sXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIGZsZXhTaXplOiAhdGhpcy5oaWRlR2VuZXJhbFNlYXJjaCA/IDMgOiAxMCxcclxuICAgICAgICAgICAgbmFtZTogJ3N0YXR1c0lkcycsXHJcbiAgICAgICAgICAgIG5nTW9kZWw6IHN0YXR1c0lkc0luaXRpYWxWYWx1ZSxcclxuICAgICAgICAgICAgbmdNb2RlbENoYW5nZTogdGhpcy5vbk5nTW9kZWxDaGFuZ2UsXHJcbiAgICAgICAgICAgIHZhbHVlOiBudWxsLFxyXG4gICAgICAgICAgICBoaWRkZW46IHRoaXMuaGlkZVN0YXR1c0luY2x1c2lvbixcclxuICAgICAgICAgICAgbGFiZWw6IHRoaXMuc3RhdHVzSW5jbHVzaW9uRm9yTGFiZWxLZXksXHJcbiAgICAgICAgICAgIGNvbnRyb2xUeXBlOiBFbnVtRm9ybUJhc2VDb250b2xUeXBlLkNIRUNLTElTVCxcclxuICAgICAgICAgICAgY2hlY2tsaXN0T3B0aW9ucyQ6IHRoaXMuc3RhdHVzT3B0aW9ucyQsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIF1cclxuICAgICAgXVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5wYXJhbVJvd3MgPSBbXHJcbiAgICAgICAgW1xyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICBmbGV4U2l6ZTogMCxcclxuICAgICAgICAgICAgd2lkdGg6IDMwMCxcclxuICAgICAgICAgICAgbmFtZTogJ29yZ0lkcycsXHJcbiAgICAgICAgICAgIG5nTW9kZWw6ICcnLFxyXG4gICAgICAgICAgICBuZ01vZGVsQ2hhbmdlOiB0aGlzLm9uTmdNb2RlbENoYW5nZSxcclxuICAgICAgICAgICAgdmFsdWU6ICcnLFxyXG4gICAgICAgICAgICBsYWJlbDogRW51bVRyYW5zbGF0ZUtleS5VSV9FTlRJVFlfRklFTERfQ0FQVElPTl9IVV9PUkdBTklaQVRJT05fSURTLFxyXG4gICAgICAgICAgICBjb250cm9sVHlwZTogRW51bUZvcm1CYXNlQ29udG9sVHlwZS5TRUVLRVIsXHJcbiAgICAgICAgICAgIHNlZWtlclNvdXJjZVR5cGU6IEVudW1Db3JlRm9ybUNvbnRyb2xTZWVrZXJTb3VyY2VUeXBlLk9SR0FOSVpBVElPTl9VTklUX1NFRUssXHJcbiAgICAgICAgICAgIGhpZGRlbjogIXRoaXMuc2hvd09yZ1BhcmFtLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIFxyXG4gICAgICAgICAgLypcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgZmxleFNpemU6IDMsXHJcbiAgICAgICAgICAgIG5hbWU6ICdnZW5lcmFsU2VhcmNoJyxcclxuICAgICAgICAgICAgbmdNb2RlbDogJycsXHJcbiAgICAgICAgICAgIG5nTW9kZWxDaGFuZ2U6IHRoaXMub25OZ01vZGVsQ2hhbmdlLFxyXG4gICAgICAgICAgICB2YWx1ZTogJycsXHJcbiAgICAgICAgICAgIGxhYmVsOiBFbnVtVHJhbnNsYXRlS2V5LlVJX0NPUkVfUEFSQU1TX0dFTkVSQUxfU0VBUkNILFxyXG4gICAgICAgICAgICBjb250cm9sVHlwZTogRW51bUZvcm1CYXNlQ29udG9sVHlwZS5URVhUQk9YLFxyXG4gICAgICAgICAgICBoaWRkZW46IHRoaXMuaGlkZUdlbmVyYWxTZWFyY2hcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAqL1xyXG5cclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgZmxleFNpemU6IDAsXHJcbiAgICAgICAgICAgIHdpZHRoOiAxNTAsXHJcbiAgICAgICAgICAgIG5hbWU6ICdkYXRlRnJvbScsXHJcbiAgICAgICAgICAgIG5nTW9kZWw6IG51bGwsXHJcbiAgICAgICAgICAgIG5nTW9kZWxDaGFuZ2U6IHRoaXMub25OZ01vZGVsQ2hhbmdlLFxyXG4gICAgICAgICAgICB2YWx1ZTogbnVsbCxcclxuICAgICAgICAgICAgaGlkZGVuOiB0aGlzLmhpZGVEYXRlUGVyaW9kQ29tcGFyaXNvbixcclxuICAgICAgICAgICAgbGFiZWw6IHRoaXMuZGF0ZVBlcmlvZENvbXBhcmlzb25Gb3JMYWJlbEtleSxcclxuICAgICAgICAgICAgY29udHJvbFR5cGU6IEVudW1Gb3JtQmFzZUNvbnRvbFR5cGUuREFURVBJQ0tFUixcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIGZsZXhTaXplOiAwLFxyXG4gICAgICAgICAgICB3aWR0aDogMTUwLFxyXG4gICAgICAgICAgICBuYW1lOiAnZGF0ZVRvJyxcclxuICAgICAgICAgICAgbmdNb2RlbDogbnVsbCxcclxuICAgICAgICAgICAgbmdNb2RlbENoYW5nZTogdGhpcy5vbk5nTW9kZWxDaGFuZ2UsXHJcbiAgICAgICAgICAgIHZhbHVlOiBudWxsLFxyXG4gICAgICAgICAgICBoaWRkZW46IHRoaXMuaGlkZURhdGVQZXJpb2RDb21wYXJpc29uLFxyXG4gICAgICAgICAgICBsYWJlbDogdGhpcy5kYXRlUGVyaW9kQ29tcGFyaXNvbkZvckxhYmVsS2V5LFxyXG4gICAgICAgICAgICBjb250cm9sVHlwZTogRW51bUZvcm1CYXNlQ29udG9sVHlwZS5EQVRFUElDS0VSLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgZmxleFNpemU6IDAsXHJcbiAgICAgICAgICAgIHdpZHRoOiAyNTAsXHJcbiAgICAgICAgICAgIG5hbWU6ICdzdGF0dXNJZHMnLFxyXG4gICAgICAgICAgICBuZ01vZGVsOiBzdGF0dXNJZHNJbml0aWFsVmFsdWUsXHJcbiAgICAgICAgICAgIG5nTW9kZWxDaGFuZ2U6IHRoaXMub25OZ01vZGVsQ2hhbmdlLFxyXG4gICAgICAgICAgICB2YWx1ZTogbnVsbCxcclxuICAgICAgICAgICAgaGlkZGVuOiB0aGlzLmhpZGVTdGF0dXNJbmNsdXNpb24sXHJcbiAgICAgICAgICAgIGxhYmVsOiB0aGlzLnN0YXR1c0luY2x1c2lvbkZvckxhYmVsS2V5LFxyXG4gICAgICAgICAgICBjb250cm9sVHlwZTogRW51bUZvcm1CYXNlQ29udG9sVHlwZS5DSEVDS0xJU1QsXHJcbiAgICAgICAgICAgIGNoZWNrbGlzdE9wdGlvbnMkOiB0aGlzLnN0YXR1c09wdGlvbnMkLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICBdLFxyXG4gICAgICBdO1xyXG5cclxuICAgIH1cclxuXHJcbiAgICAvL2FsZXJ0KEpTT04uc3RyaW5naWZ5KHRoaXMucGFyYW1Sb3dzWzBdLmZpbHRlcih4ID0+IHgubmFtZSA9PT0gJ3N0YXR1c0lkcycpWzBdLm5nTW9kZWwsIG51bGwsIDIpKVxyXG5cclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuICAgICAgICB0aGlzLnN0YXR1c09wdGlvbnMkLnN1YnNjcmliZSh4cyA9PiB7XHJcbiAgICAgICAgICBjb25zdCBuZXdTdGF0dXNWYWx1ZTogYW55W10gPSBbXTtcclxuICAgICAgICAgIHhzLmZpbHRlcih4ID0+ICEheC5jaGVja2VkKS5tYXAoeSA9PiB7XHJcbiAgICAgICAgICAgIG5ld1N0YXR1c1ZhbHVlLnB1c2goeS52YWx1ZSk7XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICAgY29uc3QgZmlsdGVyID0gdGhpcy5wYXJhbVJvd3NbMF0uZmlsdGVyKG0gPT4gbS5uYW1lID09PSAnc3RhdHVzSWRzJyk7XHJcbiAgICAgICAgICBpZiAoZmlsdGVyLmxlbmd0aCA9PT0gMSkge1xyXG4gICAgICAgICAgICBmaWx0ZXJbMF0ubmdNb2RlbCA9IG5ld1N0YXR1c1ZhbHVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgIClcclxuICAgICAgaWYgKCEhdGhpcy5zdGF0dXNPcHRpb25zQXBpKSB7XHJcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXHJcbiAgICAgICAgICB0aGlzLmFwcFNlcnZpY2UuZ2V0KHRoaXMuc3RhdHVzT3B0aW9uc0FwaSkuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgICAgICAgIGlmICh4Lm9rICYmIHguc3RhdHVzID09PSAyMDApIHtcclxuICAgICAgICAgICAgICBjb25zdCBib2R5OiBJRm9ybWF0ZWRSZXNwb25zZSA9IHguYm9keTtcclxuICAgICAgICAgICAgICBpZiAoYm9keS5zdGF0dXNDb2RlID09PSAyMDApIHtcclxuICBcclxuICAgICAgICAgICAgICAgIC8vIE7hur91IGzDoCB0cuG6oW5nIHRow6FpIG5ow6JuIHZpw6puLCBjaOG7iSBjaGVjayBt4bq3YyDEkeG7i25oIFwixJBhbmcgbMOgbSB2aeG7h2NcIlxyXG4gICAgICAgICAgICAgICAgLy8gVHLDoWkgbOG6oWkgdGjDrCBjaGVjayB04bqldFxyXG4gIFxyXG4gICAgICAgICAgICAgICAgXHJcbiAgXHJcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgYm9keS5pbm5lckJvZHkubGVuZ3RoOyBpbmRleCsrKSB7XHJcbiAgICAgICAgICAgICAgICAgIGNvbnN0IGkgPSBib2R5LmlubmVyQm9keVtpbmRleF07XHJcbiAgICAgICAgICAgICAgICAgIGlmIChpLnR5cGVDb2RlID09PSBcIkVNUF9TVEFUVVNcIikge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaXNFbXBsb3llZVN0YXR1c0Nhc2UgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgXHJcbiAgICAgICAgICAgICAgICBjb25zdCBuZXdPcHRpb25zOiBJQ29yZUNoZWNrbGlzdE9wdGlvbltdID0gW1xyXG4gICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IG51bGwsXHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dDogdGhpcy5tbHMudHJhbnMoRW51bVRyYW5zbGF0ZUtleS5VSV9DT1JFX1BBUkFNU19DT01NT05fTlVMTF9TVEFUVVMsIHRoaXMubGFuZyksXHJcbiAgICAgICAgICAgICAgICAgICAgY2hlY2tlZDogdGhpcy5pc0VtcGxveWVlU3RhdHVzQ2FzZSA/IGZhbHNlIDogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgICB9XTtcclxuICBcclxuICAgICAgICAgICAgICAgIGNvbnN0IG5ld1N0YXR1c0lkczogKG51bWJlciB8IG51bGwpW10gPSAhIXRoaXMuaXNFbXBsb3llZVN0YXR1c0Nhc2UgPyBbXSA6IFtudWxsXTtcclxuICBcclxuICAgICAgICAgICAgICAgIGJvZHkuaW5uZXJCb2R5Lm1hcCgobTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgIG5ld09wdGlvbnMucHVzaCh7XHJcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IG0uaWQsXHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dDogbS5uYW1lLFxyXG4gICAgICAgICAgICAgICAgICAgIGNoZWNrZWQ6ICEhdGhpcy5pc0VtcGxveWVlU3RhdHVzQ2FzZSA/IChtLmNvZGUgPT09IFwiRVNXXCIpIDogdHJ1ZVxyXG4gICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgaWYgKCEhdGhpcy5pc0VtcGxveWVlU3RhdHVzQ2FzZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChtLmNvZGUgPT09IFwiRVNXXCIpIHtcclxuICAgICAgICAgICAgICAgICAgICAgIG5ld1N0YXR1c0lkcy5wdXNoKG0uaWQpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICBuZXdTdGF0dXNJZHMucHVzaChtLmlkKTtcclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgXHJcbiAgICAgICAgICAgICAgICB0aGlzLnN0YXR1c09wdGlvbnMkLm5leHQobmV3T3B0aW9ucyk7XHJcbiAgXHJcbiAgICAgICAgICAgICAgICB0aGlzLnBhcmFtUm93cy5tYXAocm93ID0+IHtcclxuICAgICAgICAgICAgICAgICAgcm93Lm1hcChjb2x1bW4gPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChjb2x1bW4ubmFtZSA9PT0gJ3N0YXR1c0lkcycpIHtcclxuICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbi5uZ01vZGVsID0gbmV3U3RhdHVzSWRzO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgXHJcbiAgICAgICAgICAgICAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoe1xyXG4gICAgICAgICAgICAgICAgICBmaWVsZDogXCJzdGF0dXNJZHNcIixcclxuICAgICAgICAgICAgICAgICAgdmFsdWU6IG5ld1N0YXR1c0lkc1xyXG4gICAgICAgICAgICAgICAgfSlcclxuICBcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJtbDVcIj5cclxuICAgIDxjb3JlLWhlYWRlci1wYXJhbXMgW3Jvd3NdPVwicGFyYW1Sb3dzXCI+PC9jb3JlLWhlYWRlci1wYXJhbXM+XHJcbjwvZGl2PiJdfQ==