barsa-sap-ui 2.0.14 → 2.0.16
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.
- package/esm2022/lib/barsa-asp-viewer/barsa-asp-viewer.component.mjs +2 -2
- package/esm2022/lib/barsa-report-one-of-list/barsa-report-one-of-list.component.mjs +2 -2
- package/esm2022/lib/barsa-table-header/barsa-table-header.component.mjs +3 -3
- package/esm2022/lib/barsa-table-row/barsa-table-row.component.mjs +4 -4
- package/esm2022/lib/barsa-tree-item/barsa-tree-item.component.mjs +8 -8
- package/esm2022/lib/form-dialog/form-dialog.component.mjs +3 -3
- package/esm2022/lib/index.mjs +13 -14
- package/esm2022/lib/layout-control/layout-control.component.mjs +3 -3
- package/esm2022/lib/sap-ui-report-base.component.mjs +17 -3
- package/esm2022/lib/ui-button/ui-button.component.mjs +3 -3
- package/esm2022/lib/ui-table-view/ui-table-view.component.mjs +2 -2
- package/esm2022/lib/ui-text-field-auto-complete/ui-text-field-auto-complete.component.mjs +4 -3
- package/esm2022/lib/ui-tree/ui-tree.component.mjs +16 -4
- package/esm2022/lib/ui-tree-view/ui-tree-view.component.mjs +3 -6
- package/esm2022/lib/ulv-context-menu/ulv-context-menu.component.mjs +3 -3
- package/fesm2022/barsa-sap-ui.mjs +71 -49
- package/fesm2022/barsa-sap-ui.mjs.map +1 -1
- package/lib/barsa-tree-item/barsa-tree-item.component.d.ts +2 -3
- package/lib/sap-ui-report-base.component.d.ts +3 -0
- package/lib/ui-tree/ui-tree.component.d.ts +1 -0
- package/lib/ui-tree-view/ui-tree-view.component.d.ts +1 -2
- package/package.json +1 -1
|
@@ -142,13 +142,13 @@ export class FormDialogComponent extends BaseComponent {
|
|
|
142
142
|
this.caption = typeDefName + ':' + moCaption;
|
|
143
143
|
}
|
|
144
144
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: FormDialogComponent, deps: [{ token: i1.DialogService }, { token: i2.DialogParams }, { token: i2.PortalService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
145
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: FormDialogComponent, selector: "bsu-form-dialog", providers: [ContainerService], viewQueries: [{ propertyName: "dialogTemplateRef", first: true, predicate: ["dialog"], descendants: true, read: TemplateRef, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #dialog>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" #dialogTplRef>\n <fd-dialog-header>\n <ng-template fdkTemplate=\"header\">\n <div fd-bar-left>\n <h1 fd-title>{{ dialogConfig.data.caption }}</h1>\n </div>\n <div fd-bar-right>\n @if (dialogConfig.data.canFullscreen) {\n <fd-button-bar\n ariaLabel=\"fullscreen\"\n [glyph]=\"fullscreen ? 'exitfullscreen' : 'resize'\"\n fullscreenDialog\n [dialog]=\"dialog\"\n [fullscreen]=\"fullscreen\"\n (fullscreenChanged)=\"fullscreen = $event\"\n [dialogComponent]=\"dialogTplRef\"\n ></fd-button-bar>\n }\n <fd-button-bar ariaLabel=\"close\" glyph=\"decline\" (click)=\"onCancel()\"></fd-button-bar>\n </div>\n </ng-template>\n <ng-template\n fdkTemplate=\"subheader\"\n *ngIf=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':false as toolbarItems\"\n >\n <div fd-bar-middle>\n <fd-bar-element [fullWidth]=\"true\" class=\"!tw-justify-
|
|
145
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: FormDialogComponent, selector: "bsu-form-dialog", providers: [ContainerService], viewQueries: [{ propertyName: "dialogTemplateRef", first: true, predicate: ["dialog"], descendants: true, read: TemplateRef, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #dialog>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" #dialogTplRef>\n <fd-dialog-header>\n <ng-template fdkTemplate=\"header\">\n <div fd-bar-left>\n <h1 fd-title>{{ dialogConfig.data.caption }}</h1>\n </div>\n <div fd-bar-right>\n @if (dialogConfig.data.canFullscreen) {\n <fd-button-bar\n ariaLabel=\"fullscreen\"\n [glyph]=\"fullscreen ? 'exitfullscreen' : 'resize'\"\n fullscreenDialog\n [dialog]=\"dialog\"\n [fullscreen]=\"fullscreen\"\n (fullscreenChanged)=\"fullscreen = $event\"\n [dialogComponent]=\"dialogTplRef\"\n ></fd-button-bar>\n }\n <bsu-form-toolbar\n fd-bar-left\n [deviceSize]=\"deviceSize\"\n [buttons]=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':false\"\n [dirValue]=\"(dirValue$ | async)!!\"\n [isFirefox]=\"isFirefox\"\n (toolbarClick)=\"onToolbarClick($event)\"\n #formToolbar\n ></bsu-form-toolbar>\n <fd-button-bar ariaLabel=\"close\" glyph=\"decline\" (click)=\"onCancel()\"></fd-button-bar>\n </div>\n </ng-template>\n <!-- <ng-template\n fdkTemplate=\"subheader\"\n *ngIf=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':false as toolbarItems\"\n >\n <div fd-bar-middle>\n <fd-bar-element [fullWidth]=\"true\" class=\"!tw-justify-end\">\n <bsu-form-toolbar\n [deviceSize]=\"deviceSize\"\n [buttons]=\"toolbarItems\"\n [dirValue]=\"(dirValue$ | async)!!\"\n [isFirefox]=\"isFirefox\"\n (toolbarClick)=\"onToolbarClick($event)\"\n #formToolbar\n ></bsu-form-toolbar>\n </fd-bar-element>\n </div>\n </ng-template> -->\n </fd-dialog-header>\n\n <fd-dialog-body>\n <bnrc-form\n [formPanelCtrl]=\"formPanelCtrlr\"\n [params]=\"params\"\n (formClose)=\"onFormClose()\"\n (uiComponent)=\"onFormUiComponentReady($event)\"\n ></bnrc-form>\n </fd-dialog-body>\n <fd-dialog-footer [style.display]=\"!showFooter ? 'none' : null\">\n @for (btn of (extendToolbarItems$ | async); track btn.Id) { @if (!(btn === '-' || btn.text === '-') &&\n ((btn.isBuiltin && btn.inFooter) || btn.isWorkflow)) {\n <ng-container\n *ngTemplateOutlet=\"\n btn.Data?.CustomUi?.Selector ? dynamicBtnTemplate : btnTemplate;\n context: { $implicit: btn }\n \"\n ></ng-container>\n <ng-template #btnTemplate let-btn>\n <fd-dialog-footer-button>\n <fd-button-bar\n fd-dialog-decisive-button\n [fdType]=\"btn.isWorkflow ? 'attention' : btn.design\"\n [label]=\"btn.text | bbbTranslate\"\n [glyph]=\"btn.newIcon ? btn.newIcon : null\"\n (click)=\"btn.handler(btn, formPanelCtrlr?.Adapter?.Control)\"\n ></fd-button-bar>\n </fd-dialog-footer-button>\n </ng-template>\n <ng-template #dynamicBtnTemplate let-btn>\n <fd-dialog-footer-button>\n <bnrc-dynamic-form-toolbaritem\n fd-toolbar-item\n [component]=\"btn.Data.CustomUi\"\n [context]=\"btn\"\n [isEnable]=\"btn.Command?._isEnable\"\n (btnClick)=\"btn.handler(btn, formPanelCtrlr?.Adapter?.Control)\"\n ></bnrc-dynamic-form-toolbaritem>\n </fd-dialog-footer-button>\n </ng-template>\n } } @if (!isNonePersistance && showSaveButton !== false) {\n <fd-dialog-footer-button>\n <fd-button-bar\n fd-initial-focus\n fd-dialog-decisive-button\n [label]=\"'Cancel' | bbbTranslate\"\n (click)=\"onCancel()\"\n ></fd-button-bar>\n </fd-dialog-footer-button>\n }\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n", styles: [":host{display:block;height:auto}fd-dialog-body{display:flex;flex-direction:column;height:100%;align-items:stretch;justify-content:stretch}fd-dialog-body>bnrc-form{flex-grow:1;display:flex;flex-direction:row;height:100%;justify-content:stretch;align-items:stretch}\n"], dependencies: [{ kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.FormComponent, selector: "bnrc-form", inputs: ["params", "customFormPanelUi", "formPanelCtrl", "UlvMainCtrlr", "formPanelCtrlId", "saveOnChange", "inlineEditInReport"], outputs: ["titleChanged", "moChanged", "formClose", "uiComponent", "formRendered", "bruleAction", "beforeTransition", "afterTransition"] }, { kind: "component", type: i2.DynamicFormToolbaritemComponent, selector: "bnrc-dynamic-form-toolbaritem", inputs: ["mo", "index", "deviceName", "deviceSize", "context", "btn", "isEnable", "showText", "allColumns", "conditionalFormats"], outputs: ["btnClick"] }, { kind: "directive", type: i2.FormCloseDirective, selector: "[formClose]", inputs: ["isMobile"] }, { kind: "directive", type: i4.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i4.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "component", type: i4.ButtonBarComponent, selector: "fd-button-bar", inputs: ["fullWidth", "fdType", "title", "ariaLabelledby", "id"] }, { kind: "component", type: i5.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i5.DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "component", type: i5.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i5.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i6.TemplateDirective, selector: "[fdkTemplate]", inputs: ["fdkTemplate"] }, { kind: "component", type: i7.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "directive", type: i8.ToolbarItemDirective, selector: "[fd-toolbar-item], [fdOverflowGroup], [fdOverflowPriority]", inputs: ["fdOverflowPriority", "fdOverflowGroup"] }, { kind: "component", type: i9.FormToolbarComponent, selector: "bsu-form-toolbar", outputs: ["toolbarClick"] }, { kind: "directive", type: i10.FullscreenDialogDirective, selector: "[fullscreenDialog]", inputs: ["dialog", "dialogComponent", "fullscreen"], outputs: ["fullscreenChanged"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.TlbButtonsPipe, name: "tlbButtons" }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
146
146
|
}
|
|
147
147
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: FormDialogComponent, decorators: [{
|
|
148
148
|
type: Component,
|
|
149
|
-
args: [{ selector: 'bsu-form-dialog', providers: [ContainerService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #dialog>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" #dialogTplRef>\n <fd-dialog-header>\n <ng-template fdkTemplate=\"header\">\n <div fd-bar-left>\n <h1 fd-title>{{ dialogConfig.data.caption }}</h1>\n </div>\n <div fd-bar-right>\n @if (dialogConfig.data.canFullscreen) {\n <fd-button-bar\n ariaLabel=\"fullscreen\"\n [glyph]=\"fullscreen ? 'exitfullscreen' : 'resize'\"\n fullscreenDialog\n [dialog]=\"dialog\"\n [fullscreen]=\"fullscreen\"\n (fullscreenChanged)=\"fullscreen = $event\"\n [dialogComponent]=\"dialogTplRef\"\n ></fd-button-bar>\n }\n <fd-button-bar ariaLabel=\"close\" glyph=\"decline\" (click)=\"onCancel()\"></fd-button-bar>\n </div>\n </ng-template>\n <ng-template\n fdkTemplate=\"subheader\"\n *ngIf=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':false as toolbarItems\"\n >\n <div fd-bar-middle>\n <fd-bar-element [fullWidth]=\"true\" class=\"!tw-justify-
|
|
149
|
+
args: [{ selector: 'bsu-form-dialog', providers: [ContainerService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #dialog>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" #dialogTplRef>\n <fd-dialog-header>\n <ng-template fdkTemplate=\"header\">\n <div fd-bar-left>\n <h1 fd-title>{{ dialogConfig.data.caption }}</h1>\n </div>\n <div fd-bar-right>\n @if (dialogConfig.data.canFullscreen) {\n <fd-button-bar\n ariaLabel=\"fullscreen\"\n [glyph]=\"fullscreen ? 'exitfullscreen' : 'resize'\"\n fullscreenDialog\n [dialog]=\"dialog\"\n [fullscreen]=\"fullscreen\"\n (fullscreenChanged)=\"fullscreen = $event\"\n [dialogComponent]=\"dialogTplRef\"\n ></fd-button-bar>\n }\n <bsu-form-toolbar\n fd-bar-left\n [deviceSize]=\"deviceSize\"\n [buttons]=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':false\"\n [dirValue]=\"(dirValue$ | async)!!\"\n [isFirefox]=\"isFirefox\"\n (toolbarClick)=\"onToolbarClick($event)\"\n #formToolbar\n ></bsu-form-toolbar>\n <fd-button-bar ariaLabel=\"close\" glyph=\"decline\" (click)=\"onCancel()\"></fd-button-bar>\n </div>\n </ng-template>\n <!-- <ng-template\n fdkTemplate=\"subheader\"\n *ngIf=\"extendToolbarItems$ | async | tlbButtons: 'inFooter':false as toolbarItems\"\n >\n <div fd-bar-middle>\n <fd-bar-element [fullWidth]=\"true\" class=\"!tw-justify-end\">\n <bsu-form-toolbar\n [deviceSize]=\"deviceSize\"\n [buttons]=\"toolbarItems\"\n [dirValue]=\"(dirValue$ | async)!!\"\n [isFirefox]=\"isFirefox\"\n (toolbarClick)=\"onToolbarClick($event)\"\n #formToolbar\n ></bsu-form-toolbar>\n </fd-bar-element>\n </div>\n </ng-template> -->\n </fd-dialog-header>\n\n <fd-dialog-body>\n <bnrc-form\n [formPanelCtrl]=\"formPanelCtrlr\"\n [params]=\"params\"\n (formClose)=\"onFormClose()\"\n (uiComponent)=\"onFormUiComponentReady($event)\"\n ></bnrc-form>\n </fd-dialog-body>\n <fd-dialog-footer [style.display]=\"!showFooter ? 'none' : null\">\n @for (btn of (extendToolbarItems$ | async); track btn.Id) { @if (!(btn === '-' || btn.text === '-') &&\n ((btn.isBuiltin && btn.inFooter) || btn.isWorkflow)) {\n <ng-container\n *ngTemplateOutlet=\"\n btn.Data?.CustomUi?.Selector ? dynamicBtnTemplate : btnTemplate;\n context: { $implicit: btn }\n \"\n ></ng-container>\n <ng-template #btnTemplate let-btn>\n <fd-dialog-footer-button>\n <fd-button-bar\n fd-dialog-decisive-button\n [fdType]=\"btn.isWorkflow ? 'attention' : btn.design\"\n [label]=\"btn.text | bbbTranslate\"\n [glyph]=\"btn.newIcon ? btn.newIcon : null\"\n (click)=\"btn.handler(btn, formPanelCtrlr?.Adapter?.Control)\"\n ></fd-button-bar>\n </fd-dialog-footer-button>\n </ng-template>\n <ng-template #dynamicBtnTemplate let-btn>\n <fd-dialog-footer-button>\n <bnrc-dynamic-form-toolbaritem\n fd-toolbar-item\n [component]=\"btn.Data.CustomUi\"\n [context]=\"btn\"\n [isEnable]=\"btn.Command?._isEnable\"\n (btnClick)=\"btn.handler(btn, formPanelCtrlr?.Adapter?.Control)\"\n ></bnrc-dynamic-form-toolbaritem>\n </fd-dialog-footer-button>\n </ng-template>\n } } @if (!isNonePersistance && showSaveButton !== false) {\n <fd-dialog-footer-button>\n <fd-button-bar\n fd-initial-focus\n fd-dialog-decisive-button\n [label]=\"'Cancel' | bbbTranslate\"\n (click)=\"onCancel()\"\n ></fd-button-bar>\n </fd-dialog-footer-button>\n }\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n", styles: [":host{display:block;height:auto}fd-dialog-body{display:flex;flex-direction:column;height:100%;align-items:stretch;justify-content:stretch}fd-dialog-body>bnrc-form{flex-grow:1;display:flex;flex-direction:row;height:100%;justify-content:stretch;align-items:stretch}\n"] }]
|
|
150
150
|
}], ctorParameters: () => [{ type: i1.DialogService }, { type: i2.DialogParams }, { type: i2.PortalService }], propDecorators: { dialogTemplateRef: [{
|
|
151
151
|
type: ViewChild,
|
|
152
152
|
args: ['dialog', { read: TemplateRef, static: true }]
|
|
153
153
|
}] } });
|
|
154
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvZm9ybS1kaWFsb2cvZm9ybS1kaWFsb2cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvZm9ybS1kaWFsb2cvZm9ybS1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBd0IsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVqSCxPQUFPLEVBQ0gsUUFBUSxFQUlSLGdCQUFnQixFQUNoQixhQUFhLEVBRWIsU0FBUyxFQUNaLE1BQU0sc0JBQXNCLENBQUM7Ozs7Ozs7Ozs7OztBQVU5QixNQUFNLE9BQU8sbUJBQW9CLFNBQVEsYUFBYTtJQWdDbEQsWUFDWSxjQUE2QixFQUM3QixZQUEwQixFQUMxQixjQUE2QjtRQUVyQyxLQUFLLEVBQUUsQ0FBQztRQUpBLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQzdCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBOUJ6QyxZQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ2IsZUFBVSxHQUFHLEtBQUssQ0FBQztRQVluQixzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFDMUIsbUJBQWMsR0FBRyxJQUFJLENBQUM7UUFDdEIsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFLbkIsY0FBUyxHQUFHLFNBQVMsRUFBRSxDQUFDO1FBYXBCLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQ3JELElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBQ2pDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsTUFB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QkFBbUIsR0FBRyxXQUFXLENBQUMsbUJBQW1CLENBQUM7UUFDM0QsSUFBSSxDQUFDLElBQUksR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDO1FBQzdCLElBQUksQ0FBQyxTQUFTLEdBQUcsV0FBVyxDQUFDLFNBQVMsQ0FBQztRQUN2QyxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQyxXQUFXLENBQUM7SUFDL0MsQ0FBQztJQUNELFVBQVU7UUFDTixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsVUFBVSxLQUFLLEdBQUcsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLEdBQUcsQ0FBQztRQUN2RSxNQUFNLEtBQUssR0FBRyxXQUFXLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO1FBQzVDLElBQUksTUFBTSxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDM0MsTUFBTSxTQUFTLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsNEJBQTRCLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDNUcsTUFBTSxVQUFVLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsNkJBQTZCLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDOUcsTUFBTSxRQUFRLEdBQUcsV0FBVyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO1FBQzlFLE1BQU0sU0FBUyxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUNqRixJQUFJLFVBQVUsRUFBRSxDQUFDO1lB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QVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLEVBQUUsYUFBYSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3RGLElBQUksQ0FBQyxPQUFPLEdBQUcsV0FBVyxHQUFHLEdBQUcsR0FBRyxTQUFTLENBQUM7SUFDakQsQ0FBQzs4R0F0S1EsbUJBQW1CO2tHQUFuQixtQkFBbUIsMENBSGpCLENBQUMsZ0JBQWdCLENBQUMsa0hBSUEsV0FBVyxrRUN0QjVDLGsySUE2RkE7OzJGRHhFYSxtQkFBbUI7a0JBUC9CLFNBQVM7K0JBQ0ksaUJBQWlCLGFBR2hCLENBQUMsZ0JBQWdCLENBQUMsbUJBQ1osdUJBQXVCLENBQUMsTUFBTTt5SUFJL0MsaUJBQWlCO3NCQURoQixTQUFTO3VCQUFDLFFBQVEsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIENvbXBvbmVudFJlZiwgT25Jbml0LCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEaWFsb2dDb25maWcsIERpYWxvZ1JlZiwgRGlhbG9nU2VydmljZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XG5pbXBvcnQge1xuICAgIEJhcnNhQXBpLFxuICAgIERpYWxvZ1BhcmFtcyxcbiAgICBGb3JtQ29tcG9uZW50LFxuICAgIFBvcnRhbFNlcnZpY2UsXG4gICAgQ29udGFpbmVyU2VydmljZSxcbiAgICBCYXNlQ29tcG9uZW50LFxuICAgIEZvcm1CYXNlQ29tcG9uZW50LFxuICAgIGlzRmlyZWZveFxufSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYnN1LWZvcm0tZGlhbG9nJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZm9ybS1kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2Zvcm0tZGlhbG9nLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbQ29udGFpbmVyU2VydmljZV0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRm9ybURpYWxvZ0NvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBWaWV3Q2hpbGQoJ2RpYWxvZycsIHsgcmVhZDogVGVtcGxhdGVSZWYsIHN0YXRpYzogdHJ1ZSB9KVxuICAgIGRpYWxvZ1RlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIGZvcm1QYW5lbEN0cmxyOiBhbnk7XG4gICAgZm9ybUNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPEZvcm1Db21wb25lbnQ+O1xuICAgIGNhcHRpb24gPSAnJztcbiAgICBmdWxsc2NyZWVuID0gZmFsc2U7XG4gICAgZGlhbG9nT3BlbmVkOiBib29sZWFuO1xuICAgIGRpYWxvZ1JlZjogRGlhbG9nUmVmO1xuICAgIGluRGlhbG9nOiBhbnk7XG4gICAgcGFyYW1zOiB7XG4gICAgICAgIG1vSWQ6IHN0cmluZztcbiAgICAgICAgdHlwZURlZklkOiBzdHJpbmc7XG4gICAgICAgIHJlcG9ydElkOiBzdHJpbmc7XG4gICAgICAgIGluRGlhbG9nOiBib29sZWFuO1xuICAgIH07XG4gICAgcGFyZW50Q29udGFpbmVyOiBhbnk7XG4gICAgZGV2aWNlU2l6ZTogc3RyaW5nO1xuICAgIGlzTm9uZVBlcnNpc3RhbmNlID0gZmFsc2U7XG4gICAgc2hvd1NhdmVCdXR0b24gPSB0cnVlO1xuICAgIHNob3dUb29sYmFyID0gdHJ1ZTtcbiAgICBzaG93Rm9vdGVyOiBib29sZWFuO1xuICAgIGNhbkZ1bGxzY3JlZW46IGJvb2xlYW47XG4gICAgY2FuTW92ZTogYm9vbGVhbjtcbiAgICBjYW5SZXNpemU6IGJvb2xlYW47XG4gICAgaXNGaXJlZm94ID0gaXNGaXJlZm94KCk7XG4gICAgZnVsbHNjcmVlbkRlZmF1bHQ6IGJvb2xlYW47XG4gICAgZXh0ZW5kVG9vbGJhckl0ZW1zJDogT2JzZXJ2YWJsZTxhbnlbXT47XG4gICAgZGV2aWNlU2l6ZSQ6IE9ic2VydmFibGU8J3MnIHwgJ20nIHwgJ2wnIHwgJ3hsJz47XG4gICAgZGlyVmFsdWUkOiBPYnNlcnZhYmxlPCdydGwnIHwgJ2x0cic+O1xuICAgIHJ0bCQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgX2Zvcm1VaUNvbXBvbmVudDogRm9ybUJhc2VDb21wb25lbnQ7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgX2RpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZGlhbG9nUGFyYW1zOiBEaWFsb2dQYXJhbXMsXG4gICAgICAgIHByaXZhdGUgX3BvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2VcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS5kZXZpY2VTaXplJC5zdWJzY3JpYmUoKGRldmljZVNpemUpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZGV2aWNlU2l6ZSA9IGRldmljZVNpemU7XG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBmb3JtUGFuZWxDdHJsciA9IHRoaXMuZGlhbG9nUGFyYW1zLmNvbnRleHQuZm9ybXBhbmVsQ3RybHI7XG4gICAgICAgIGNvbnN0IHBhcmFtZXRlcnMgPSBCYXJzYUFwaS5Db21tb24uVXRpbC5UcnlHZXRWYWx1ZShmb3JtUGFuZWxDdHJsciwgJ1NldHRpbmcuVmlldy5DdXN0b21VaS5QYXJhbWV0ZXJzJywgbnVsbCk7XG4gICAgICAgIGNvbnN0IG1vSWQgPSB0aGlzLmRpYWxvZ1BhcmFtcy5jb250ZXh0LmlkO1xuICAgICAgICBjb25zdCB0eXBlRGVmSWQgPSB0aGlzLmRpYWxvZ1BhcmFtcy5jb250ZXh0LnR5aWQ7XG4gICAgICAgIGNvbnN0IHJlcG9ydElkID0gdGhpcy5kaWFsb2dQYXJhbXMuY29udGV4dC5yZXBpZDtcbiAgICAgICAgdGhpcy5pbkRpYWxvZyA9IHRoaXMuZGlhbG9nUGFyYW1zLmNvbnRleHQuaW5EaWFsb2c7XG4gICAgICAgIHRoaXMuZnVsbHNjcmVlbiA9IHRoaXMuZGlhbG9nUGFyYW1zLmNvbnRleHQuZnVsbHNjcmVlbjtcbiAgICAgICAgdGhpcy5jYW5GdWxsc2NyZWVuID0gcGFyYW1ldGVycz8uQ2FuRnVsbHNjcmVlbjtcbiAgICAgICAgdGhpcy5mdWxsc2NyZWVuRGVmYXVsdCA9IHBhcmFtZXRlcnM/LkZ1bGxzY3JlZW5EZWZhdWx0O1xuICAgICAgICBpZiAodGhpcy5mdWxsc2NyZWVuRGVmYXVsdCkge1xuICAgICAgICAgICAgdGhpcy5mdWxsc2NyZWVuID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNhbk1vdmUgPSBwYXJhbWV0ZXJzPy5DYW5Nb3ZlO1xuICAgICAgICB0aGlzLmNhblJlc2l6ZSA9IHBhcmFtZXRlcnM/LkNhblJlc2l6ZTtcbiAgICAgICAgdGhpcy5wYXJhbXMgPSB7IG1vSWQsIHR5cGVEZWZJZCwgcmVwb3J0SWQsIGluRGlhbG9nOiB0cnVlIH07XG4gICAgICAgIHRoaXMuX3NldENhcHRpb24oZm9ybVBhbmVsQ3RybHIpO1xuICAgICAgICB0aGlzLmZvcm1QYW5lbEN0cmxyID0gZm9ybVBhbmVsQ3RybHI7XG4gICAgfVxuICAgIGdldCBBZGFwdGVyKCk6IGFueSB7XG4gICAgICAgIHJldHVybiB0aGlzLmZvcm1QYW5lbEN0cmxyLkFkYXB0ZXI7XG4gICAgfVxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICBjb25zdCBmb3JtUGFuZWxDdHJsciA9IHRoaXMuZm9ybVBhbmVsQ3RybHI7XG4gICAgICAgIHRoaXMuc2hvd1NhdmVCdXR0b24gPSBCYXJzYUFwaS5Db21tb24uVXRpbC5UcnlHZXRWYWx1ZShcbiAgICAgICAgICAgIGZvcm1QYW5lbEN0cmxyLFxuICAgICAgICAgICAgJ1NldHRpbmcuVmlldy5Gb3JtU2V0dGluZ3MuU2hvd1NhdmVCdXR0b24nXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuc2hvd1Rvb2xiYXIgPSBCYXJzYUFwaS5Db21tb24uVXRpbC5UcnlHZXRWYWx1ZShmb3JtUGFuZWxDdHJsciwgJ1NldHRpbmcuVmlldy5Gb3JtU2V0dGluZ3MuU2hvd1Rvb2xiYXInKTtcbiAgICAgICAgdGhpcy5pc05vbmVQZXJzaXN0YW5jZSA9IGZvcm1QYW5lbEN0cmxyPy5TZXR0aW5nPy5WaWV3Py5Jc05vbmVQZXJzaXN0YW5jZTtcbiAgICAgICAgdGhpcy5zaG93Rm9vdGVyID0gdGhpcy5pc05vbmVQZXJzaXN0YW5jZVxuICAgICAgICAgICAgPyB0aGlzLnNob3dTYXZlQnV0dG9uICE9PSBmYWxzZSAmJiB0aGlzLnNob3dUb29sYmFyICE9PSBmYWxzZVxuICAgICAgICAgICAgOiB0aGlzLnNob3dTYXZlQnV0dG9uO1xuICAgICAgICBpZiAodHlwZW9mIHRoaXMuc2hvd0Zvb3RlciA9PSB0eXBlb2YgbnVsbCB8fCBmb3JtUGFuZWxDdHJscj8uU2V0dGluZz8uV29ya2Zsb3cpIHtcbiAgICAgICAgICAgIHRoaXMuc2hvd0Zvb3RlciA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5vcGVuRGlhbG9nKCk7XG4gICAgfVxuICAgIG9uVG9vbGJhckNsaWNrKGUpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZm9ybVVpQ29tcG9uZW50Lm9uVG9vbGJhckNsaWNrKGUpO1xuICAgIH1cbiAgICBvbkZvcm1VaUNvbXBvbmVudFJlYWR5KHVpQ29tcG9uZW50OiBGb3JtQmFzZUNvbXBvbmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9mb3JtVWlDb21wb25lbnQgPSB1aUNvbXBvbmVudDtcbiAgICAgICAgdGhpcy5leHRlbmRUb29sYmFySXRlbXMkID0gdWlDb21wb25lbnQuZXh0ZW5kVG9vbGJhckl0ZW1zJDtcbiAgICAgICAgdGhpcy5ydGwkID0gdWlDb21wb25lbnQucnRsJDtcbiAgICAgICAgdGhpcy5kaXJWYWx1ZSQgPSB1aUNvbXBvbmVudC5kaXJWYWx1ZSQ7XG4gICAgICAgIHRoaXMuZGV2aWNlU2l6ZSQgPSB1aUNvbXBvbmVudC5kZXZpY2VTaXplJDtcbiAgICB9XG4gICAgb3BlbkRpYWxvZygpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgc21hbGxEZXZpY2UgPSB0aGlzLmRldmljZVNpemUgPT09ICdzJyB8fCB0aGlzLmRldmljZVNpemUgPT09ICdtJztcbiAgICAgICAgY29uc3Qgd2lkdGggPSBzbWFsbERldmljZSA/ICcxMDAlJyA6ICczMHZ3JztcbiAgICAgICAgbGV0IGhlaWdodCA9IHNtYWxsRGV2aWNlID8gJzEwMCUnIDogJ2F1dG8nO1xuICAgICAgICBjb25zdCB2aWV3V2lkdGggPSBCYXJzYUFwaS5Db21tb24uVXRpbC5UcnlHZXRWYWx1ZSh0aGlzLmZvcm1QYW5lbEN0cmxyLCAnU2V0dGluZy5WaWV3Lk1pblNpemUud2lkdGgnLCBudWxsKTtcbiAgICAgICAgY29uc3Qgdmlld0hpZWdodCA9IEJhcnNhQXBpLkNvbW1vbi5VdGlsLlRyeUdldFZhbHVlKHRoaXMuZm9ybVBhbmVsQ3RybHIsICdTZXR0aW5nLlZpZXcuTWluU2l6ZS5oZWlnaHQnLCBudWxsKTtcbiAgICAgICAgY29uc3QgbWluV2lkdGggPSBzbWFsbERldmljZSA/ICcxMDAlJyA6IHZpZXdXaWR0aCA/IHZpZXdXaWR0aCArICdweCcgOiAnYXV0byc7XG4gICAgICAgIGNvbnN0IG1pbkhlaWdodCA9IHNtYWxsRGV2aWNlID8gJzEwMCUnIDogdmlld0hpZWdodCA/IHZpZXdIaWVnaHQgKyAncHgnIDogJ2F1dG8nO1xuICAgICAgICBpZiAodmlld0hpZWdodCkge1xuICAgICAgICAgICAgaGVpZ2h0ID0gc21hbGxEZXZpY2UgPyAnMTAwJScgOiBgJHt2aWV3SGllZ2h0ICsgMTAwfXB4YDtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBtb2RhbFNldHRpbmcgPSBCYXJzYUFwaS5Db21tb24uVXRpbC5UcnlHZXRWYWx1ZShcbiAgICAgICAgICAgIHRoaXMuZm9ybVBhbmVsQ3RybHIsXG4gICAgICAgICAgICAnU2V0dGluZy5WaWV3LkN1c3RvbVVpLlBhcmFtZXRlcnMuTW9kYWxTZXR0aW5nJyxcbiAgICAgICAgICAgIG51bGxcbiAgICAgICAgKTtcblxuICAgICAgICBsZXQgc2V0dGluZzogRGlhbG9nQ29uZmlnID0ge1xuICAgICAgICAgICAgZXNjS2V5Q2xvc2VhYmxlOiBmYWxzZSxcbiAgICAgICAgICAgIHJlc3BvbnNpdmVQYWRkaW5nOiB0cnVlLFxuICAgICAgICAgICAgYmFja2Ryb3BDbGlja0Nsb3NlYWJsZTogZmFsc2UsXG4gICAgICAgICAgICBtb2JpbGU6IHNtYWxsRGV2aWNlLFxuICAgICAgICAgICAgd2lkdGgsXG4gICAgICAgICAgICBoZWlnaHQsXG4gICAgICAgICAgICAvLyBib2R5TWluSGVpZ2h0OiBtaW5IZWlnaHQsXG4gICAgICAgICAgICBtaW5IZWlnaHQsXG4gICAgICAgICAgICBtaW5XaWR0aCxcbiAgICAgICAgICAgIHZlcnRpY2FsUGFkZGluZzogdHJ1ZSxcbiAgICAgICAgICAgIGRyYWdnYWJsZTogdGhpcy5jYW5Nb3ZlLFxuICAgICAgICAgICAgcmVzaXphYmxlOiB0aGlzLmNhblJlc2l6ZSxcbiAgICAgICAgICAgIGRhdGE6IHsgY2FwdGlvbjogdGhpcy5jYXB0aW9uLCBjYW5GdWxsc2NyZWVuOiB0aGlzLmNhbkZ1bGxzY3JlZW4sIGNhbk1vdmU6IHRoaXMuY2FuTW92ZSB9XG4gICAgICAgIH07XG4gICAgICAgIGlmIChtb2RhbFNldHRpbmcpIHtcbiAgICAgICAgICAgIHNldHRpbmcgPSB7IC4uLnNldHRpbmcsIC4uLm1vZGFsU2V0dGluZyB9O1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZGlhbG9nUmVmID0gdGhpcy5fZGlhbG9nU2VydmljZS5vcGVuKHRoaXMuZGlhbG9nVGVtcGxhdGVSZWYsIHNldHRpbmcpO1xuICAgIH1cblxuICAgIG9uQ2FuY2VsKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBhZGFwdGVyID0gdGhpcy5BZGFwdGVyO1xuICAgICAgICBhZGFwdGVyLmZpcmVFdmVudCgnVG9vbENsaWNrJywgYWRhcHRlciwgeyBLZXk6ICdDYW5jZWwnIH0pO1xuICAgICAgICB0aGlzLl9jbG9zZSgpO1xuICAgIH1cbiAgICBvblNhdmUoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGFkYXB0ZXIgPSB0aGlzLkFkYXB0ZXI7XG4gICAgICAgIGFkYXB0ZXIuZmlyZUV2ZW50KCdUb29sQ2xpY2snLCBhZGFwdGVyLCB7IEtleTogJ1NhdmVBbmRDbG9zZScgfSk7XG4gICAgfVxuICAgIG9uT2soKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGFkYXB0ZXIgPSB0aGlzLkFkYXB0ZXI7XG4gICAgICAgIGFkYXB0ZXIuZmlyZUV2ZW50KCdUb29sQ2xpY2snLCBhZGFwdGVyLCB7IEtleTogJ09rJyB9KTtcbiAgICB9XG5cbiAgICBvbkZvcm1DbG9zZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoKTtcbiAgICAgICAgdGhpcy5kaWFsb2dQYXJhbXMuY2xvc2UoKTtcbiAgICAgICAgdGhpcy5kaWFsb2dPcGVuZWQgPSBmYWxzZTtcbiAgICB9XG4gICAgLy8gLyogZXNsaW50LWRpc2FibGUgKi9cbiAgICAvLyBASW5wdXQoKSBTaG93Rm9ybVBhbmVsQ29udHJvbCA9IChmb3JtcGFuZWxDdHJscikgPT4ge307XG4gICAgLy8gLyogZXNsaW50LWRpc2FibGUgKi9cbiAgICAvLyBASW5wdXQoKSBGb3JjZUNsb3NlQ2hpbGQgPSAoKSA9PiB7fTtcbiAgICAvLyAvKiBlc2xpbnQtZGlzYWJsZSAqL1xuICAgIC8vIEBJbnB1dCgpIFJlZnJlc2hGb3JtUGFuZWxDb250cm9sID0gKGZvcm1wYW5lbEN0cmxyKSA9PiB7fTtcbiAgICBwcml2YXRlIF9jbG9zZSgpOiB2b2lkIHtcbiAgICAgICAgLy8gdGhpcy5kaWFsb2dSZWYubmF0aXZlRWxlbWVudC5jbG9zZSgpO1xuICAgICAgICBpZiAodGhpcy5BZGFwdGVyKSB7XG4gICAgICAgICAgICB0aGlzLkFkYXB0ZXIuQ29udHJvbC5maXJlRXZlbnQoJ1JlcXVlc3RGb3JDbG9zZScsIHRoaXMuQWRhcHRlci5Db250cm9sLCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgICAvLyB0aGlzLmRpYWxvZ1JlZi5jbG9zZSgpO1xuICAgICAgICAvLyB0aGlzLmRpYWxvZ1BhcmFtcy5jbG9zZSgpO1xuICAgICAgICAvLyB0aGlzLmRpYWxvZ09wZW5lZCA9IGZhbHNlO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3NldENhcHRpb24oZm9ybVBhbmVsQ3RybHI6IGFueSk6IHZvaWQge1xuICAgICAgICBjb25zdCB0eXBlRGVmTmFtZSA9IEJhcnNhQXBpLkNvbW1vbi5VdGlsLlRyeUdldFZhbHVlKGZvcm1QYW5lbEN0cmxyLCAnTW8uJFR5cGVEZWZOYW1lJywgJycpO1xuICAgICAgICBjb25zdCBtb0NhcHRpb24gPSBCYXJzYUFwaS5Db21tb24uVXRpbC5UcnlHZXRWYWx1ZShmb3JtUGFuZWxDdHJsciwgJ01vLiRDYXB0aW9uJywgJycpO1xuICAgICAgICB0aGlzLmNhcHRpb24gPSB0eXBlRGVmTmFtZSArICc6JyArIG1vQ2FwdGlvbjtcbiAgICB9XG59XG4iLCI8bmctdGVtcGxhdGUgbGV0LWRpYWxvZyBsZXQtZGlhbG9nQ29uZmlnPVwiZGlhbG9nQ29uZmlnXCIgI2RpYWxvZz5cbiAgICA8ZmQtZGlhbG9nIFtkaWFsb2dDb25maWddPVwiZGlhbG9nQ29uZmlnXCIgW2RpYWxvZ1JlZl09XCJkaWFsb2dcIiAjZGlhbG9nVHBsUmVmPlxuICAgICAgICA8ZmQtZGlhbG9nLWhlYWRlcj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBmZGtUZW1wbGF0ZT1cImhlYWRlclwiPlxuICAgICAgICAgICAgICAgIDxkaXYgZmQtYmFyLWxlZnQ+XG4gICAgICAgICAgICAgICAgICAgIDxoMSBmZC10aXRsZT57eyBkaWFsb2dDb25maWcuZGF0YS5jYXB0aW9uIH19PC9oMT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGZkLWJhci1yaWdodD5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChkaWFsb2dDb25maWcuZGF0YS5jYW5GdWxsc2NyZWVuKSB7XG4gICAgICAgICAgICAgICAgICAgIDxmZC1idXR0b24tYmFyXG4gICAgICAgICAgICAgICAgICAgICAgICBhcmlhTGFiZWw9XCJmdWxsc2NyZWVuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtnbHlwaF09XCJmdWxsc2NyZWVuID8gJ2V4aXRmdWxsc2NyZWVuJyA6ICdyZXNpemUnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxzY3JlZW5EaWFsb2dcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaWFsb2ddPVwiZGlhbG9nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtmdWxsc2NyZWVuXT1cImZ1bGxzY3JlZW5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGZ1bGxzY3JlZW5DaGFuZ2VkKT1cImZ1bGxzY3JlZW4gPSAkZXZlbnRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2RpYWxvZ0NvbXBvbmVudF09XCJkaWFsb2dUcGxSZWZcIlxuICAgICAgICAgICAgICAgICAgICA+PC9mZC1idXR0b24tYmFyPlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIDxmZC1idXR0b24tYmFyIGFyaWFMYWJlbD1cImNsb3NlXCIgZ2x5cGg9XCJkZWNsaW5lXCIgKGNsaWNrKT1cIm9uQ2FuY2VsKClcIj48L2ZkLWJ1dHRvbi1iYXI+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICAgICAgZmRrVGVtcGxhdGU9XCJzdWJoZWFkZXJcIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiZXh0ZW5kVG9vbGJhckl0ZW1zJCB8IGFzeW5jIHwgdGxiQnV0dG9uczogJ2luRm9vdGVyJzpmYWxzZSBhcyB0b29sYmFySXRlbXNcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxkaXYgZmQtYmFyLW1pZGRsZT5cbiAgICAgICAgICAgICAgICAgICAgPGZkLWJhci1lbGVtZW50IFtmdWxsV2lkdGhdPVwidHJ1ZVwiIGNsYXNzPVwiIXR3LWp1c3RpZnktc3RhcnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxic3UtZm9ybS10b29sYmFyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RldmljZVNpemVdPVwiZGV2aWNlU2l6ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2J1dHRvbnNdPVwidG9vbGJhckl0ZW1zXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyVmFsdWVdPVwiKGRpclZhbHVlJCB8IGFzeW5jKSEhXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNGaXJlZm94XT1cImlzRmlyZWZveFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKHRvb2xiYXJDbGljayk9XCJvblRvb2xiYXJDbGljaygkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZm9ybVRvb2xiYXJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L2JzdS1mb3JtLXRvb2xiYXI+XG4gICAgICAgICAgICAgICAgICAgIDwvZmQtYmFyLWVsZW1lbnQ+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L2ZkLWRpYWxvZy1oZWFkZXI+XG5cbiAgICAgICAgPGZkLWRpYWxvZy1ib2R5PlxuICAgICAgICAgICAgPGJucmMtZm9ybVxuICAgICAgICAgICAgICAgIFtmb3JtUGFuZWxDdHJsXT1cImZvcm1QYW5lbEN0cmxyXCJcbiAgICAgICAgICAgICAgICBbcGFyYW1zXT1cInBhcmFtc1wiXG4gICAgICAgICAgICAgICAgKGZvcm1DbG9zZSk9XCJvbkZvcm1DbG9zZSgpXCJcbiAgICAgICAgICAgICAgICAodWlDb21wb25lbnQpPVwib25Gb3JtVWlDb21wb25lbnRSZWFkeSgkZXZlbnQpXCJcbiAgICAgICAgICAgID48L2JucmMtZm9ybT5cbiAgICAgICAgPC9mZC1kaWFsb2ctYm9keT5cbiAgICAgICAgPGZkLWRpYWxvZy1mb290ZXIgW3N0eWxlLmRpc3BsYXldPVwiIXNob3dGb290ZXIgPyAnbm9uZScgOiBudWxsXCI+XG4gICAgICAgICAgICBAZm9yIChidG4gb2YgKGV4dGVuZFRvb2xiYXJJdGVtcyQgfCBhc3luYyk7IHRyYWNrIGJ0bi5JZCkgeyBAaWYgKCEoYnRuID09PSAnLScgfHwgYnRuLnRleHQgPT09ICctJykgJiZcbiAgICAgICAgICAgICgoYnRuLmlzQnVpbHRpbiAmJiBidG4uaW5Gb290ZXIpIHx8IGJ0bi5pc1dvcmtmbG93KSkge1xuICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICAgICAgICAgIGJ0bi5EYXRhPy5DdXN0b21VaT8uU2VsZWN0b3IgPyBkeW5hbWljQnRuVGVtcGxhdGUgOiBidG5UZW1wbGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgY29udGV4dDogeyAkaW1wbGljaXQ6IGJ0biB9XG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjYnRuVGVtcGxhdGUgbGV0LWJ0bj5cbiAgICAgICAgICAgICAgICA8ZmQtZGlhbG9nLWZvb3Rlci1idXR0b24+XG4gICAgICAgICAgICAgICAgICAgIDxmZC1idXR0b24tYmFyXG4gICAgICAgICAgICAgICAgICAgICAgICBmZC1kaWFsb2ctZGVjaXNpdmUtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBbZmRUeXBlXT1cImJ0bi5pc1dvcmtmbG93ID8gJ2F0dGVudGlvbicgOiBidG4uZGVzaWduXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJidG4udGV4dCB8IGJiYlRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbZ2x5cGhdPVwiYnRuLm5ld0ljb24gPyBidG4ubmV3SWNvbiA6IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImJ0bi5oYW5kbGVyKGJ0biwgZm9ybVBhbmVsQ3RybHI/LkFkYXB0ZXI/LkNvbnRyb2wpXCJcbiAgICAgICAgICAgICAgICAgICAgPjwvZmQtYnV0dG9uLWJhcj5cbiAgICAgICAgICAgICAgICA8L2ZkLWRpYWxvZy1mb290ZXItYnV0dG9uPlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZHluYW1pY0J0blRlbXBsYXRlIGxldC1idG4+XG4gICAgICAgICAgICAgICAgPGZkLWRpYWxvZy1mb290ZXItYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8Ym5yYy1keW5hbWljLWZvcm0tdG9vbGJhcml0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgIGZkLXRvb2xiYXItaXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbXBvbmVudF09XCJidG4uRGF0YS5DdXN0b21VaVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29udGV4dF09XCJidG5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2lzRW5hYmxlXT1cImJ0bi5Db21tYW5kPy5faXNFbmFibGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGJ0bkNsaWNrKT1cImJ0bi5oYW5kbGVyKGJ0biwgZm9ybVBhbmVsQ3RybHI/LkFkYXB0ZXI/LkNvbnRyb2wpXCJcbiAgICAgICAgICAgICAgICAgICAgPjwvYm5yYy1keW5hbWljLWZvcm0tdG9vbGJhcml0ZW0+XG4gICAgICAgICAgICAgICAgPC9mZC1kaWFsb2ctZm9vdGVyLWJ1dHRvbj5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICB9IH0gQGlmICghaXNOb25lUGVyc2lzdGFuY2UgJiYgc2hvd1NhdmVCdXR0b24gIT09IGZhbHNlKSB7XG4gICAgICAgICAgICA8ZmQtZGlhbG9nLWZvb3Rlci1idXR0b24+XG4gICAgICAgICAgICAgICAgPGZkLWJ1dHRvbi1iYXJcbiAgICAgICAgICAgICAgICAgICAgZmQtaW5pdGlhbC1mb2N1c1xuICAgICAgICAgICAgICAgICAgICBmZC1kaWFsb2ctZGVjaXNpdmUtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInQ2FuY2VsJyB8IGJiYlRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkNhbmNlbCgpXCJcbiAgICAgICAgICAgICAgICA+PC9mZC1idXR0b24tYmFyPlxuICAgICAgICAgICAgPC9mZC1kaWFsb2ctZm9vdGVyLWJ1dHRvbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9mZC1kaWFsb2ctZm9vdGVyPlxuICAgIDwvZmQtZGlhbG9nPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
154
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvZm9ybS1kaWFsb2cvZm9ybS1kaWFsb2cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvZm9ybS1kaWFsb2cvZm9ybS1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBd0IsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVqSCxPQUFPLEVBQ0gsUUFBUSxFQUlSLGdCQUFnQixFQUNoQixhQUFhLEVBRWIsU0FBUyxFQUNaLE1BQU0sc0JBQXNCLENBQUM7Ozs7Ozs7Ozs7OztBQVU5QixNQUFNLE9BQU8sbUJBQW9CLFNBQVEsYUFBYTtJQWdDbEQsWUFDWSxjQUE2QixFQUM3QixZQUEwQixFQUMxQixjQUE2QjtRQUVyQyxLQUFLLEVBQUUsQ0FBQztRQUpBLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQzdCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBOUJ6QyxZQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ2IsZUFBVSxHQUFHLEtBQUssQ0FBQztRQVluQixzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFDMUIsbUJBQWMsR0FBRyxJQUFJLENBQUM7UUFDdEIsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFLbkIsY0FBUyxHQUFHLFNBQVMsRUFBRSxDQUFDO1FBYXBCLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQ3JELElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBQ2pDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsTUFB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QkFBbUIsR0FBRyxXQUFXLENBQUMsbUJBQW1CLENBQUM7UUFDM0QsSUFBSSxDQUFDLElBQUksR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDO1FBQzdCLElBQUksQ0FBQyxTQUFTLEdBQUcsV0FBVyxDQUFDLFNBQVMsQ0FBQztRQUN2QyxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQyxXQUFXLENBQUM7SUFDL0MsQ0FBQztJQUNELFVBQVU7UUFDTixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsVUFBVSxLQUFLLEdBQUcsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLEdBQUcsQ0FBQztRQUN2RSxNQUFNLEtBQUssR0FBRyxXQUFXLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO1FBQzVDLElBQUksTUFBTSxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDM0MsTUFBTSxTQUFTLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsNEJBQTRCLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDNUcsTUFBTSxVQUFVLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsNkJBQTZCLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDOUcsTUFBTSxRQUFRLEdBQUcsV0FBVyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO1FBQzlFLE1BQU0sU0FBUyxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUNqRixJQUFJLFVBQVUsRUFBRSxDQUFDO1lB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QVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLEVBQUUsYUFBYSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3RGLElBQUksQ0FBQyxPQUFPLEdBQUcsV0FBVyxHQUFHLEdBQUcsR0FBRyxTQUFTLENBQUM7SUFDakQsQ0FBQzs4R0F0S1EsbUJBQW1CO2tHQUFuQixtQkFBbUIsMENBSGpCLENBQUMsZ0JBQWdCLENBQUMsa0hBSUEsV0FBVyxrRUN0QjVDLGcxSkFzR0E7OzJGRGpGYSxtQkFBbUI7a0JBUC9CLFNBQVM7K0JBQ0ksaUJBQWlCLGFBR2hCLENBQUMsZ0JBQWdCLENBQUMsbUJBQ1osdUJBQXVCLENBQUMsTUFBTTt5SUFJL0MsaUJBQWlCO3NCQURoQixTQUFTO3VCQUFDLFFBQVEsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIENvbXBvbmVudFJlZiwgT25Jbml0LCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEaWFsb2dDb25maWcsIERpYWxvZ1JlZiwgRGlhbG9nU2VydmljZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XG5pbXBvcnQge1xuICAgIEJhcnNhQXBpLFxuICAgIERpYWxvZ1BhcmFtcyxcbiAgICBGb3JtQ29tcG9uZW50LFxuICAgIFBvcnRhbFNlcnZpY2UsXG4gICAgQ29udGFpbmVyU2VydmljZSxcbiAgICBCYXNlQ29tcG9uZW50LFxuICAgIEZvcm1CYXNlQ29tcG9uZW50LFxuICAgIGlzRmlyZWZveFxufSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYnN1LWZvcm0tZGlhbG9nJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZm9ybS1kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2Zvcm0tZGlhbG9nLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbQ29udGFpbmVyU2VydmljZV0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRm9ybURpYWxvZ0NvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBWaWV3Q2hpbGQoJ2RpYWxvZycsIHsgcmVhZDogVGVtcGxhdGVSZWYsIHN0YXRpYzogdHJ1ZSB9KVxuICAgIGRpYWxvZ1RlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIGZvcm1QYW5lbEN0cmxyOiBhbnk7XG4gICAgZm9ybUNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPEZvcm1Db21wb25lbnQ+O1xuICAgIGNhcHRpb24gPSAnJztcbiAgICBmdWxsc2NyZWVuID0gZmFsc2U7XG4gICAgZGlhbG9nT3BlbmVkOiBib29sZWFuO1xuICAgIGRpYWxvZ1JlZjogRGlhbG9nUmVmO1xuICAgIGluRGlhbG9nOiBhbnk7XG4gICAgcGFyYW1zOiB7XG4gICAgICAgIG1vSWQ6IHN0cmluZztcbiAgICAgICAgdHlwZURlZklkOiBzdHJpbmc7XG4gICAgICAgIHJlcG9ydElkOiBzdHJpbmc7XG4gICAgICAgIGluRGlhbG9nOiBib29sZWFuO1xuICAgIH07XG4gICAgcGFyZW50Q29udGFpbmVyOiBhbnk7XG4gICAgZGV2aWNlU2l6ZTogc3RyaW5nO1xuICAgIGlzTm9uZVBlcnNpc3RhbmNlID0gZmFsc2U7XG4gICAgc2hvd1NhdmVCdXR0b24gPSB0cnVlO1xuICAgIHNob3dUb29sYmFyID0gdHJ1ZTtcbiAgICBzaG93Rm9vdGVyOiBib29sZWFuO1xuICAgIGNhbkZ1bGxzY3JlZW46IGJvb2xlYW47XG4gICAgY2FuTW92ZTogYm9vbGVhbjtcbiAgICBjYW5SZXNpemU6IGJvb2xlYW47XG4gICAgaXNGaXJlZm94ID0gaXNGaXJlZm94KCk7XG4gICAgZnVsbHNjcmVlbkRlZmF1bHQ6IGJvb2xlYW47XG4gICAgZXh0ZW5kVG9vbGJhckl0ZW1zJDogT2JzZXJ2YWJsZTxhbnlbXT47XG4gICAgZGV2aWNlU2l6ZSQ6IE9ic2VydmFibGU8J3MnIHwgJ20nIHwgJ2wnIHwgJ3hsJz47XG4gICAgZGlyVmFsdWUkOiBPYnNlcnZhYmxlPCdydGwnIHwgJ2x0cic+O1xuICAgIHJ0bCQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgX2Zvcm1VaUNvbXBvbmVudDogRm9ybUJhc2VDb21wb25lbnQ7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgX2RpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZGlhbG9nUGFyYW1zOiBEaWFsb2dQYXJhbXMsXG4gICAgICAgIHByaXZhdGUgX3BvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2VcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS5kZXZpY2VTaXplJC5zdWJzY3JpYmUoKGRldmljZVNpemUpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZGV2aWNlU2l6ZSA9IGRldmljZVNpemU7XG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBmb3JtUGFuZWxDdHJsciA9IHRoaXMuZGlhbG9nUGFyYW1zLmNvbnRleHQuZm9ybXBhbmVsQ3RybHI7XG4gICAgICAgIGNvbnN0IHBhcmFtZXRlcnMgPSBCYXJzYUFwaS5Db21tb24uVXRpbC5UcnlHZXRWYWx1ZShmb3JtUGFuZWxDdHJsciwgJ1NldHRpbmcuVmlldy5DdXN0b21VaS5QYXJhbWV0ZXJzJywgbnVsbCk7XG4gICAgICAgIGNvbnN0IG1vSWQgPSB0aGlzLmRpYWxvZ1BhcmFtcy5jb250ZXh0LmlkO1xuICAgICAgICBjb25zdCB0eXBlRGVmSWQgPSB0aGlzLmRpYWxvZ1BhcmFtcy5jb250ZXh0LnR5aWQ7XG4gICAgICAgIGNvbnN0IHJlcG9ydElkID0gdGhpcy5kaWFsb2dQYXJhbXMuY29udGV4dC5yZXBpZDtcbiAgICAgICAgdGhpcy5pbkRpYWxvZyA9IHRoaXMuZGlhbG9nUGFyYW1zLmNvbnRleHQuaW5EaWFsb2c7XG4gICAgICAgIHRoaXMuZnVsbHNjcmVlbiA9IHRoaXMuZGlhbG9nUGFyYW1zLmNvbnRleHQuZnVsbHNjcmVlbjtcbiAgICAgICAgdGhpcy5jYW5GdWxsc2NyZWVuID0gcGFyYW1ldGVycz8uQ2FuRnVsbHNjcmVlbjtcbiAgICAgICAgdGhpcy5mdWxsc2NyZWVuRGVmYXVsdCA9IHBhcmFtZXRlcnM/LkZ1bGxzY3JlZW5EZWZhdWx0O1xuICAgICAgICBpZiAodGhpcy5mdWxsc2NyZWVuRGVmYXVsdCkge1xuICAgICAgICAgICAgdGhpcy5mdWxsc2NyZWVuID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNhbk1vdmUgPSBwYXJhbWV0ZXJzPy5DYW5Nb3ZlO1xuICAgICAgICB0aGlzLmNhblJlc2l6ZSA9IHBhcmFtZXRlcnM/LkNhblJlc2l6ZTtcbiAgICAgICAgdGhpcy5wYXJhbXMgPSB7IG1vSWQsIHR5cGVEZWZJZCwgcmVwb3J0SWQsIGluRGlhbG9nOiB0cnVlIH07XG4gICAgICAgIHRoaXMuX3NldENhcHRpb24oZm9ybVBhbmVsQ3RybHIpO1xuICAgICAgICB0aGlzLmZvcm1QYW5lbEN0cmxyID0gZm9ybVBhbmVsQ3RybHI7XG4gICAgfVxuICAgIGdldCBBZGFwdGVyKCk6IGFueSB7XG4gICAgICAgIHJldHVybiB0aGlzLmZvcm1QYW5lbEN0cmxyLkFkYXB0ZXI7XG4gICAgfVxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICBjb25zdCBmb3JtUGFuZWxDdHJsciA9IHRoaXMuZm9ybVBhbmVsQ3RybHI7XG4gICAgICAgIHRoaXMuc2hvd1NhdmVCdXR0b24gPSBCYXJzYUFwaS5Db21tb24uVXRpbC5UcnlHZXRWYWx1ZShcbiAgICAgICAgICAgIGZvcm1QYW5lbEN0cmxyLFxuICAgICAgICAgICAgJ1NldHRpbmcuVmlldy5Gb3JtU2V0dGluZ3MuU2hvd1NhdmVCdXR0b24nXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuc2hvd1Rvb2xiYXIgPSBCYXJzYUFwaS5Db21tb24uVXRpbC5UcnlHZXRWYWx1ZShmb3JtUGFuZWxDdHJsciwgJ1NldHRpbmcuVmlldy5Gb3JtU2V0dGluZ3MuU2hvd1Rvb2xiYXInKTtcbiAgICAgICAgdGhpcy5pc05vbmVQZXJzaXN0YW5jZSA9IGZvcm1QYW5lbEN0cmxyPy5TZXR0aW5nPy5WaWV3Py5Jc05vbmVQZXJzaXN0YW5jZTtcbiAgICAgICAgdGhpcy5zaG93Rm9vdGVyID0gdGhpcy5pc05vbmVQZXJzaXN0YW5jZVxuICAgICAgICAgICAgPyB0aGlzLnNob3dTYXZlQnV0dG9uICE9PSBmYWxzZSAmJiB0aGlzLnNob3dUb29sYmFyICE9PSBmYWxzZVxuICAgICAgICAgICAgOiB0aGlzLnNob3dTYXZlQnV0dG9uO1xuICAgICAgICBpZiAodHlwZW9mIHRoaXMuc2hvd0Zvb3RlciA9PSB0eXBlb2YgbnVsbCB8fCBmb3JtUGFuZWxDdHJscj8uU2V0dGluZz8uV29ya2Zsb3cpIHtcbiAgICAgICAgICAgIHRoaXMuc2hvd0Zvb3RlciA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5vcGVuRGlhbG9nKCk7XG4gICAgfVxuICAgIG9uVG9vbGJhckNsaWNrKGUpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZm9ybVVpQ29tcG9uZW50Lm9uVG9vbGJhckNsaWNrKGUpO1xuICAgIH1cbiAgICBvbkZvcm1VaUNvbXBvbmVudFJlYWR5KHVpQ29tcG9uZW50OiBGb3JtQmFzZUNvbXBvbmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9mb3JtVWlDb21wb25lbnQgPSB1aUNvbXBvbmVudDtcbiAgICAgICAgdGhpcy5leHRlbmRUb29sYmFySXRlbXMkID0gdWlDb21wb25lbnQuZXh0ZW5kVG9vbGJhckl0ZW1zJDtcbiAgICAgICAgdGhpcy5ydGwkID0gdWlDb21wb25lbnQucnRsJDtcbiAgICAgICAgdGhpcy5kaXJWYWx1ZSQgPSB1aUNvbXBvbmVudC5kaXJWYWx1ZSQ7XG4gICAgICAgIHRoaXMuZGV2aWNlU2l6ZSQgPSB1aUNvbXBvbmVudC5kZXZpY2VTaXplJDtcbiAgICB9XG4gICAgb3BlbkRpYWxvZygpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgc21hbGxEZXZpY2UgPSB0aGlzLmRldmljZVNpemUgPT09ICdzJyB8fCB0aGlzLmRldmljZVNpemUgPT09ICdtJztcbiAgICAgICAgY29uc3Qgd2lkdGggPSBzbWFsbERldmljZSA/ICcxMDAlJyA6ICczMHZ3JztcbiAgICAgICAgbGV0IGhlaWdodCA9IHNtYWxsRGV2aWNlID8gJzEwMCUnIDogJ2F1dG8nO1xuICAgICAgICBjb25zdCB2aWV3V2lkdGggPSBCYXJzYUFwaS5Db21tb24uVXRpbC5UcnlHZXRWYWx1ZSh0aGlzLmZvcm1QYW5lbEN0cmxyLCAnU2V0dGluZy5WaWV3Lk1pblNpemUud2lkdGgnLCBudWxsKTtcbiAgICAgICAgY29uc3Qgdmlld0hpZWdodCA9IEJhcnNhQXBpLkNvbW1vbi5VdGlsLlRyeUdldFZhbHVlKHRoaXMuZm9ybVBhbmVsQ3RybHIsICdTZXR0aW5nLlZpZXcuTWluU2l6ZS5oZWlnaHQnLCBudWxsKTtcbiAgICAgICAgY29uc3QgbWluV2lkdGggPSBzbWFsbERldmljZSA/ICcxMDAlJyA6IHZpZXdXaWR0aCA/IHZpZXdXaWR0aCArICdweCcgOiAnYXV0byc7XG4gICAgICAgIGNvbnN0IG1pbkhlaWdodCA9IHNtYWxsRGV2aWNlID8gJzEwMCUnIDogdmlld0hpZWdodCA/IHZpZXdIaWVnaHQgKyAncHgnIDogJ2F1dG8nO1xuICAgICAgICBpZiAodmlld0hpZWdodCkge1xuICAgICAgICAgICAgaGVpZ2h0ID0gc21hbGxEZXZpY2UgPyAnMTAwJScgOiBgJHt2aWV3SGllZ2h0ICsgMTAwfXB4YDtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBtb2RhbFNldHRpbmcgPSBCYXJzYUFwaS5Db21tb24uVXRpbC5UcnlHZXRWYWx1ZShcbiAgICAgICAgICAgIHRoaXMuZm9ybVBhbmVsQ3RybHIsXG4gICAgICAgICAgICAnU2V0dGluZy5WaWV3LkN1c3RvbVVpLlBhcmFtZXRlcnMuTW9kYWxTZXR0aW5nJyxcbiAgICAgICAgICAgIG51bGxcbiAgICAgICAgKTtcblxuICAgICAgICBsZXQgc2V0dGluZzogRGlhbG9nQ29uZmlnID0ge1xuICAgICAgICAgICAgZXNjS2V5Q2xvc2VhYmxlOiBmYWxzZSxcbiAgICAgICAgICAgIHJlc3BvbnNpdmVQYWRkaW5nOiB0cnVlLFxuICAgICAgICAgICAgYmFja2Ryb3BDbGlja0Nsb3NlYWJsZTogZmFsc2UsXG4gICAgICAgICAgICBtb2JpbGU6IHNtYWxsRGV2aWNlLFxuICAgICAgICAgICAgd2lkdGgsXG4gICAgICAgICAgICBoZWlnaHQsXG4gICAgICAgICAgICAvLyBib2R5TWluSGVpZ2h0OiBtaW5IZWlnaHQsXG4gICAgICAgICAgICBtaW5IZWlnaHQsXG4gICAgICAgICAgICBtaW5XaWR0aCxcbiAgICAgICAgICAgIHZlcnRpY2FsUGFkZGluZzogdHJ1ZSxcbiAgICAgICAgICAgIGRyYWdnYWJsZTogdGhpcy5jYW5Nb3ZlLFxuICAgICAgICAgICAgcmVzaXphYmxlOiB0aGlzLmNhblJlc2l6ZSxcbiAgICAgICAgICAgIGRhdGE6IHsgY2FwdGlvbjogdGhpcy5jYXB0aW9uLCBjYW5GdWxsc2NyZWVuOiB0aGlzLmNhbkZ1bGxzY3JlZW4sIGNhbk1vdmU6IHRoaXMuY2FuTW92ZSB9XG4gICAgICAgIH07XG4gICAgICAgIGlmIChtb2RhbFNldHRpbmcpIHtcbiAgICAgICAgICAgIHNldHRpbmcgPSB7IC4uLnNldHRpbmcsIC4uLm1vZGFsU2V0dGluZyB9O1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZGlhbG9nUmVmID0gdGhpcy5fZGlhbG9nU2VydmljZS5vcGVuKHRoaXMuZGlhbG9nVGVtcGxhdGVSZWYsIHNldHRpbmcpO1xuICAgIH1cblxuICAgIG9uQ2FuY2VsKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBhZGFwdGVyID0gdGhpcy5BZGFwdGVyO1xuICAgICAgICBhZGFwdGVyLmZpcmVFdmVudCgnVG9vbENsaWNrJywgYWRhcHRlciwgeyBLZXk6ICdDYW5jZWwnIH0pO1xuICAgICAgICB0aGlzLl9jbG9zZSgpO1xuICAgIH1cbiAgICBvblNhdmUoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGFkYXB0ZXIgPSB0aGlzLkFkYXB0ZXI7XG4gICAgICAgIGFkYXB0ZXIuZmlyZUV2ZW50KCdUb29sQ2xpY2snLCBhZGFwdGVyLCB7IEtleTogJ1NhdmVBbmRDbG9zZScgfSk7XG4gICAgfVxuICAgIG9uT2soKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGFkYXB0ZXIgPSB0aGlzLkFkYXB0ZXI7XG4gICAgICAgIGFkYXB0ZXIuZmlyZUV2ZW50KCdUb29sQ2xpY2snLCBhZGFwdGVyLCB7IEtleTogJ09rJyB9KTtcbiAgICB9XG5cbiAgICBvbkZvcm1DbG9zZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoKTtcbiAgICAgICAgdGhpcy5kaWFsb2dQYXJhbXMuY2xvc2UoKTtcbiAgICAgICAgdGhpcy5kaWFsb2dPcGVuZWQgPSBmYWxzZTtcbiAgICB9XG4gICAgLy8gLyogZXNsaW50LWRpc2FibGUgKi9cbiAgICAvLyBASW5wdXQoKSBTaG93Rm9ybVBhbmVsQ29udHJvbCA9IChmb3JtcGFuZWxDdHJscikgPT4ge307XG4gICAgLy8gLyogZXNsaW50LWRpc2FibGUgKi9cbiAgICAvLyBASW5wdXQoKSBGb3JjZUNsb3NlQ2hpbGQgPSAoKSA9PiB7fTtcbiAgICAvLyAvKiBlc2xpbnQtZGlzYWJsZSAqL1xuICAgIC8vIEBJbnB1dCgpIFJlZnJlc2hGb3JtUGFuZWxDb250cm9sID0gKGZvcm1wYW5lbEN0cmxyKSA9PiB7fTtcbiAgICBwcml2YXRlIF9jbG9zZSgpOiB2b2lkIHtcbiAgICAgICAgLy8gdGhpcy5kaWFsb2dSZWYubmF0aXZlRWxlbWVudC5jbG9zZSgpO1xuICAgICAgICBpZiAodGhpcy5BZGFwdGVyKSB7XG4gICAgICAgICAgICB0aGlzLkFkYXB0ZXIuQ29udHJvbC5maXJlRXZlbnQoJ1JlcXVlc3RGb3JDbG9zZScsIHRoaXMuQWRhcHRlci5Db250cm9sLCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgICAvLyB0aGlzLmRpYWxvZ1JlZi5jbG9zZSgpO1xuICAgICAgICAvLyB0aGlzLmRpYWxvZ1BhcmFtcy5jbG9zZSgpO1xuICAgICAgICAvLyB0aGlzLmRpYWxvZ09wZW5lZCA9IGZhbHNlO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3NldENhcHRpb24oZm9ybVBhbmVsQ3RybHI6IGFueSk6IHZvaWQge1xuICAgICAgICBjb25zdCB0eXBlRGVmTmFtZSA9IEJhcnNhQXBpLkNvbW1vbi5VdGlsLlRyeUdldFZhbHVlKGZvcm1QYW5lbEN0cmxyLCAnTW8uJFR5cGVEZWZOYW1lJywgJycpO1xuICAgICAgICBjb25zdCBtb0NhcHRpb24gPSBCYXJzYUFwaS5Db21tb24uVXRpbC5UcnlHZXRWYWx1ZShmb3JtUGFuZWxDdHJsciwgJ01vLiRDYXB0aW9uJywgJycpO1xuICAgICAgICB0aGlzLmNhcHRpb24gPSB0eXBlRGVmTmFtZSArICc6JyArIG1vQ2FwdGlvbjtcbiAgICB9XG59XG4iLCI8bmctdGVtcGxhdGUgbGV0LWRpYWxvZyBsZXQtZGlhbG9nQ29uZmlnPVwiZGlhbG9nQ29uZmlnXCIgI2RpYWxvZz5cbiAgICA8ZmQtZGlhbG9nIFtkaWFsb2dDb25maWddPVwiZGlhbG9nQ29uZmlnXCIgW2RpYWxvZ1JlZl09XCJkaWFsb2dcIiAjZGlhbG9nVHBsUmVmPlxuICAgICAgICA8ZmQtZGlhbG9nLWhlYWRlcj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBmZGtUZW1wbGF0ZT1cImhlYWRlclwiPlxuICAgICAgICAgICAgICAgIDxkaXYgZmQtYmFyLWxlZnQ+XG4gICAgICAgICAgICAgICAgICAgIDxoMSBmZC10aXRsZT57eyBkaWFsb2dDb25maWcuZGF0YS5jYXB0aW9uIH19PC9oMT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGZkLWJhci1yaWdodD5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChkaWFsb2dDb25maWcuZGF0YS5jYW5GdWxsc2NyZWVuKSB7XG4gICAgICAgICAgICAgICAgICAgIDxmZC1idXR0b24tYmFyXG4gICAgICAgICAgICAgICAgICAgICAgICBhcmlhTGFiZWw9XCJmdWxsc2NyZWVuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtnbHlwaF09XCJmdWxsc2NyZWVuID8gJ2V4aXRmdWxsc2NyZWVuJyA6ICdyZXNpemUnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxzY3JlZW5EaWFsb2dcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaWFsb2ddPVwiZGlhbG9nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtmdWxsc2NyZWVuXT1cImZ1bGxzY3JlZW5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGZ1bGxzY3JlZW5DaGFuZ2VkKT1cImZ1bGxzY3JlZW4gPSAkZXZlbnRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2RpYWxvZ0NvbXBvbmVudF09XCJkaWFsb2dUcGxSZWZcIlxuICAgICAgICAgICAgICAgICAgICA+PC9mZC1idXR0b24tYmFyPlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIDxic3UtZm9ybS10b29sYmFyXG4gICAgICAgICAgICAgICAgICAgICAgICBmZC1iYXItbGVmdFxuICAgICAgICAgICAgICAgICAgICAgICAgW2RldmljZVNpemVdPVwiZGV2aWNlU2l6ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYnV0dG9uc109XCJleHRlbmRUb29sYmFySXRlbXMkIHwgYXN5bmMgfCB0bGJCdXR0b25zOiAnaW5Gb290ZXInOmZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXJWYWx1ZV09XCIoZGlyVmFsdWUkIHwgYXN5bmMpISFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2lzRmlyZWZveF09XCJpc0ZpcmVmb3hcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKHRvb2xiYXJDbGljayk9XCJvblRvb2xiYXJDbGljaygkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICNmb3JtVG9vbGJhclxuICAgICAgICAgICAgICAgICAgICA+PC9ic3UtZm9ybS10b29sYmFyPlxuICAgICAgICAgICAgICAgICAgICA8ZmQtYnV0dG9uLWJhciBhcmlhTGFiZWw9XCJjbG9zZVwiIGdseXBoPVwiZGVjbGluZVwiIChjbGljayk9XCJvbkNhbmNlbCgpXCI+PC9mZC1idXR0b24tYmFyPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDwhLS0gPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICAgICAgZmRrVGVtcGxhdGU9XCJzdWJoZWFkZXJcIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiZXh0ZW5kVG9vbGJhckl0ZW1zJCB8IGFzeW5jIHwgdGxiQnV0dG9uczogJ2luRm9vdGVyJzpmYWxzZSBhcyB0b29sYmFySXRlbXNcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxkaXYgZmQtYmFyLW1pZGRsZT5cbiAgICAgICAgICAgICAgICAgICAgPGZkLWJhci1lbGVtZW50IFtmdWxsV2lkdGhdPVwidHJ1ZVwiIGNsYXNzPVwiIXR3LWp1c3RpZnktZW5kXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnN1LWZvcm0tdG9vbGJhclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkZXZpY2VTaXplXT1cImRldmljZVNpemVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtidXR0b25zXT1cInRvb2xiYXJJdGVtc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RpclZhbHVlXT1cIihkaXJWYWx1ZSQgfCBhc3luYykhIVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lzRmlyZWZveF09XCJpc0ZpcmVmb3hcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICh0b29sYmFyQ2xpY2spPVwib25Ub29sYmFyQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgI2Zvcm1Ub29sYmFyXG4gICAgICAgICAgICAgICAgICAgICAgICA+PC9ic3UtZm9ybS10b29sYmFyPlxuICAgICAgICAgICAgICAgICAgICA8L2ZkLWJhci1lbGVtZW50PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT4gLS0+XG4gICAgICAgIDwvZmQtZGlhbG9nLWhlYWRlcj5cblxuICAgICAgICA8ZmQtZGlhbG9nLWJvZHk+XG4gICAgICAgICAgICA8Ym5yYy1mb3JtXG4gICAgICAgICAgICAgICAgW2Zvcm1QYW5lbEN0cmxdPVwiZm9ybVBhbmVsQ3RybHJcIlxuICAgICAgICAgICAgICAgIFtwYXJhbXNdPVwicGFyYW1zXCJcbiAgICAgICAgICAgICAgICAoZm9ybUNsb3NlKT1cIm9uRm9ybUNsb3NlKClcIlxuICAgICAgICAgICAgICAgICh1aUNvbXBvbmVudCk9XCJvbkZvcm1VaUNvbXBvbmVudFJlYWR5KCRldmVudClcIlxuICAgICAgICAgICAgPjwvYm5yYy1mb3JtPlxuICAgICAgICA8L2ZkLWRpYWxvZy1ib2R5PlxuICAgICAgICA8ZmQtZGlhbG9nLWZvb3RlciBbc3R5bGUuZGlzcGxheV09XCIhc2hvd0Zvb3RlciA/ICdub25lJyA6IG51bGxcIj5cbiAgICAgICAgICAgIEBmb3IgKGJ0biBvZiAoZXh0ZW5kVG9vbGJhckl0ZW1zJCB8IGFzeW5jKTsgdHJhY2sgYnRuLklkKSB7IEBpZiAoIShidG4gPT09ICctJyB8fCBidG4udGV4dCA9PT0gJy0nKSAmJlxuICAgICAgICAgICAgKChidG4uaXNCdWlsdGluICYmIGJ0bi5pbkZvb3RlcikgfHwgYnRuLmlzV29ya2Zsb3cpKSB7XG4gICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgICAgICAgICAgYnRuLkRhdGE/LkN1c3RvbVVpPy5TZWxlY3RvciA/IGR5bmFtaWNCdG5UZW1wbGF0ZSA6IGJ0blRlbXBsYXRlO1xuICAgICAgICAgICAgICAgICAgICBjb250ZXh0OiB7ICRpbXBsaWNpdDogYnRuIH1cbiAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNidG5UZW1wbGF0ZSBsZXQtYnRuPlxuICAgICAgICAgICAgICAgIDxmZC1kaWFsb2ctZm9vdGVyLWJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPGZkLWJ1dHRvbi1iYXJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZkLWRpYWxvZy1kZWNpc2l2ZS1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgIFtmZFR5cGVdPVwiYnRuLmlzV29ya2Zsb3cgPyAnYXR0ZW50aW9uJyA6IGJ0bi5kZXNpZ25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cImJ0bi50ZXh0IHwgYmJiVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtnbHlwaF09XCJidG4ubmV3SWNvbiA/IGJ0bi5uZXdJY29uIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiYnRuLmhhbmRsZXIoYnRuLCBmb3JtUGFuZWxDdHJscj8uQWRhcHRlcj8uQ29udHJvbClcIlxuICAgICAgICAgICAgICAgICAgICA+PC9mZC1idXR0b24tYmFyPlxuICAgICAgICAgICAgICAgIDwvZmQtZGlhbG9nLWZvb3Rlci1idXR0b24+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNkeW5hbWljQnRuVGVtcGxhdGUgbGV0LWJ0bj5cbiAgICAgICAgICAgICAgICA8ZmQtZGlhbG9nLWZvb3Rlci1idXR0b24+XG4gICAgICAgICAgICAgICAgICAgIDxibnJjLWR5bmFtaWMtZm9ybS10b29sYmFyaXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgZmQtdG9vbGJhci1pdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29tcG9uZW50XT1cImJ0bi5EYXRhLkN1c3RvbVVpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjb250ZXh0XT1cImJ0blwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaXNFbmFibGVdPVwiYnRuLkNvbW1hbmQ/Ll9pc0VuYWJsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoYnRuQ2xpY2spPVwiYnRuLmhhbmRsZXIoYnRuLCBmb3JtUGFuZWxDdHJscj8uQWRhcHRlcj8uQ29udHJvbClcIlxuICAgICAgICAgICAgICAgICAgICA+PC9ibnJjLWR5bmFtaWMtZm9ybS10b29sYmFyaXRlbT5cbiAgICAgICAgICAgICAgICA8L2ZkLWRpYWxvZy1mb290ZXItYnV0dG9uPlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIH0gfSBAaWYgKCFpc05vbmVQZXJzaXN0YW5jZSAmJiBzaG93U2F2ZUJ1dHRvbiAhPT0gZmFsc2UpIHtcbiAgICAgICAgICAgIDxmZC1kaWFsb2ctZm9vdGVyLWJ1dHRvbj5cbiAgICAgICAgICAgICAgICA8ZmQtYnV0dG9uLWJhclxuICAgICAgICAgICAgICAgICAgICBmZC1pbml0aWFsLWZvY3VzXG4gICAgICAgICAgICAgICAgICAgIGZkLWRpYWxvZy1kZWNpc2l2ZS1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidDYW5jZWwnIHwgYmJiVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2FuY2VsKClcIlxuICAgICAgICAgICAgICAgID48L2ZkLWJ1dHRvbi1iYXI+XG4gICAgICAgICAgICA8L2ZkLWRpYWxvZy1mb290ZXItYnV0dG9uPlxuICAgICAgICAgICAgfVxuICAgICAgICA8L2ZkLWRpYWxvZy1mb290ZXI+XG4gICAgPC9mZC1kaWFsb2c+XG48L25nLXRlbXBsYXRlPlxuIl19
|
package/esm2022/lib/index.mjs
CHANGED
|
@@ -450,19 +450,18 @@ export const INIT_SAPFIORI = (rtlService, contentDensityService, themeService, p
|
|
|
450
450
|
if (BarsaApi.LoginFormData.Culture === 'en-US') {
|
|
451
451
|
fontFamily = iranSans;
|
|
452
452
|
}
|
|
453
|
-
const css = `* {
|
|
454
|
-
--
|
|
455
|
-
--
|
|
456
|
-
--
|
|
457
|
-
--
|
|
458
|
-
--
|
|
459
|
-
--
|
|
460
|
-
--
|
|
461
|
-
--
|
|
462
|
-
--
|
|
463
|
-
--
|
|
464
|
-
--
|
|
465
|
-
/* --sapContent_HeaderShadow: none; */
|
|
453
|
+
const css = `* {
|
|
454
|
+
--sapFontFamily: '${iranSans}';
|
|
455
|
+
--fdDynamicPage_Title_Font_Family: '${fontFamily}';
|
|
456
|
+
--fdButton_Font_Family: '${iranSans}';
|
|
457
|
+
--fdIcon_Tab_Bar_Label_Font_Family: '${iranSans}';
|
|
458
|
+
--sapFontFamily: '${fontFamily}';
|
|
459
|
+
--fdWizard_Label_Font_Family: '${fontFamily}';
|
|
460
|
+
--sapFontLightFamily: '${fontFamily}';
|
|
461
|
+
--sapFontHeaderFamily: '${fontFamily}';
|
|
462
|
+
--_ui5_input_compact_height: 1.625rem;
|
|
463
|
+
--sapFontSize: 0.885rem;
|
|
464
|
+
/* --sapContent_HeaderShadow: none; */
|
|
466
465
|
}`, head = document.head || document.getElementsByTagName('head')[0], style = document.createElement('style');
|
|
467
466
|
head.appendChild(style);
|
|
468
467
|
style.type = 'text/css';
|
|
@@ -561,4 +560,4 @@ export const INIT_SAPFIORI = (rtlService, contentDensityService, themeService, p
|
|
|
561
560
|
}
|
|
562
561
|
});
|
|
563
562
|
};
|
|
564
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1zYXAtdWkvc3JjL2xpYi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTJDLGtCQUFrQixFQUFrQixNQUFNLHVCQUF1QixDQUFDO0FBQ3BILE9BQU8sRUFBRSxRQUFRLEVBQUUsaUJBQWlCLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQWlCLE1BQU0sc0JBQXNCLENBQUM7QUFDdkgsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDL0UsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDdEcsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDckYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBQ3ZILE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQzdGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLCtEQUErRCxDQUFDO0FBQy9HLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ3RHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzFGLE9BQU8s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LENBQUM7Z0JBQ0osUUFBUSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxPQUFPLENBQUMsQ0FBQztnQkFDcEUsUUFBUSxDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ2hFLENBQUM7WUFDRCxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzdCLFlBQVksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQzFDLElBQUksS0FBSyxFQUFFLENBQUM7b0JBQ1IsYUFBYSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsOEJBQThCLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO2dCQUNqRyxDQUFDO1lBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSdGxTZXJ2aWNlLCBHbG9iYWxDb250ZW50RGVuc2l0eVNlcnZpY2UsIENvbnRlbnREZW5zaXR5TW9kZSwgVGhlbWluZ1NlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xyXG5pbXBvcnQgeyBCYXJzYUFwaSwgZ2V0RGV2aWNlSXNNb2JpbGUsIGdldERldmljZUlzUGhvbmUsIGdldERldmljZUlzVGFibGV0LCBQb3J0YWxTZXJ2aWNlIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5pbXBvcnQgeyBVaVRleHRGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vdWktdGV4dC1maWVsZC91aS10ZXh0LWZpZWxkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEx5TGF5b3V0RmllbGRMYWJlbENvbXBvbmVudCB9IGZyb20gJy4vbHktbGF5b3V0LWZpZWxkLWxhYmVsL2x5LWxheW91dC1maWVsZC1sYWJlbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUNoZWNrQm94Q29tcG9uZW50IH0gZnJvbSAnLi91aS1jaGVjay1ib3gvdWktY2hlY2stYm94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpU2ltcGxlQ29tYm9Db21wb25lbnQgfSBmcm9tICcuL3VpLXNpbXBsZS1jb21iby91aS1zaW1wbGUtY29tYm8uY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlSYWRpb0dyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi91aS1yYWRpby1ncm91cC91aS1yYWRpby1ncm91cC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUdyaWRDb21wb25lbnQgfSBmcm9tICcuL3VpLWdyaWQvdWktZ3JpZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMeUxheW91dENvbnRhaW5lck9mUm9vdENvbXBvbmVudCB9IGZyb20gJy4vbHktbGF5b3V0LWNvbnRhaW5lci1vZi1yb290L2x5LWxheW91dC1jb250YWluZXItb2Ytcm9vdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMeUxheW91dFBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9seS1sYXlvdXQtcGFuZWwvbHktbGF5b3V0LXBhbmVsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpUmVhZE9ubHlGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vdWktcmVhZC1vbmx5LWZpZWxkL3VpLXJlYWQtb25seS1maWVsZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUNvbnRhaW5lcldpdGhCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL3VpLWNvbnRhaW5lci13aXRoLWJ1dHRvbi91aS1jb250YWluZXItd2l0aC1idXR0b24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlQaWN0dXJlRmlsZUNvbXBvbmVudCB9IGZyb20gJy4vdWktcGljdHVyZS1maWxlL3VpLXBpY3R1cmUtZmlsZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaU1vSW5mb1VsdkNvbWJvQ29tcG9uZW50IH0gZnJvbSAnLi91aS1tby1pbmZvLXVsdi1jb21iby91aS1tby1pbmZvLXVsdi1jb21iby5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaU11bHRpU2VsZWN0Q29tYm9Db21wb25lbnQgfSBmcm9tICcuL3VpLW11bHRpLXNlbGVjdC1jb21iby91aS1tdWx0aS1zZWxlY3QtY29tYm8uY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlOdW1EZWNpbWFsVWlDb21wb25lbnQgfSBmcm9tICcuL3VpLW51bS1kZWNpbWFsLXVpL3VpLW51bS1kZWNpbWFsLXVpLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpTnVtSW50VWlDb21wb25lbnQgfSBmcm9tICcuL3VpLW51bS1pbnQtdWkvdWktbnVtLWludC11aS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaVRpbWVTcGFuQ29tcG9uZW50IH0gZnJvbSAnLi91aS10aW1lLXNwYW4vdWktdGltZS1zcGFuLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpRmlsZUxpbmVhckxpc3RCb3hDb21wb25lbnQgfSBmcm9tICcuL3VpLWZpbGUtbGluZWFyLWxpc3QtYm94L3VpLWZpbGUtbGluZWFyLWxpc3QtYm94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEx5RW1wdHlTcGFjZUNvbXBvbmVudCB9IGZyb20gJy4vbHktZW1wdHktc3BhY2UvbHktZW1wdHktc3BhY2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlTaW5nbGVQaWN0dXJlQ29tcG9uZW50IH0gZnJvbSAnLi91aS1zaW5nbGUtcGljdHVyZS91aS1zaW5nbGUtcGljdHVyZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVbHZTZWxlY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL3Vsdi1zZWxlY3Rpb24vdWx2LXNlbGVjdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVbHZUb29sYmFyQ29tcG9uZW50IH0gZnJvbSAnLi91bHYtdG9vbGJhci91bHYtdG9vbGJhci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVbHZQYWdpbmdDb21wb25lbnQgfSBmcm9tICcuL3Vsdi1wYWdpbmcvdWx2LXBhZ2luZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUdyaWRTb3J0U2V0dGluZ0NvbXBvbmVudCB9IGZyb20gJy4vdWktZ3JpZC1zb3J0LXNldHRpbmcvdWktZ3JpZC1zb3J0LXNldHRpbmcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlHcmlkU29ydEl0ZW1Db21wb25lbnQgfSBmcm9tICcuL3VpLWdyaWQtc29ydC1pdGVtL3VpLWdyaWQtc29ydC1pdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpR3JpZENvbHVtbnNDb21wb25lbnQgfSBmcm9tICcuL3VpLWdyaWQtY29sdW1ucy91aS1ncmlkLWNvbHVtbnMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWFza0NvbXBvbmVudCB9IGZyb20gJy4vbWFzay9tYXNrLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpSW5mb0JhclBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi91aS1pbmZvLWJhci1wYW5lbC91aS1pbmZvLWJhci1wYW5lbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUZvcm1QYW5lbENvbXBvbmVudCB9IGZyb20gJy4vdWktZm9ybS1wYW5lbC91aS1mb3JtLXBhbmVsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpU2VhcmNoQ29tbWFuZEluZm9VaUNvbXBvbmVudCB9IGZyb20gJy4vdWktc2VhcmNoLWNvbW1hbmQtaW5mby11aS91aS1zZWFyY2gtY29tbWFuZC1pbmZvLXVpLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVsdlNldHRpbmdzQ29tcG9uZW50IH0gZnJvbSAnLi91bHYtc2V0dGluZ3MvdWx2LXNldHRpbmdzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpVGlueW1jZUNvbXBvbmVudCB9IGZyb20gJy4vdWktdGlueW1jZS91aS10aW55bWNlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi91aS1idXR0b24vdWktYnV0dG9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpRGF0ZVRpbWVDb21wb25lbnQgfSBmcm9tICcuL3VpLWRhdGUtdGltZS91aS1kYXRlLXRpbWUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9ybURpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vZm9ybS1kaWFsb2cvZm9ybS1kaWFsb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSGVhZGVyRmFjZXRLZXlWYWx1ZUNvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyLWZhY2V0LWtleS12YWx1ZS9oZWFkZXItZmFjZXQta2V5LXZhbHVlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEhlYWRlckZhY2V0Rm9ybUNvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyLWZhY2V0LWZvcm0vaGVhZGVyLWZhY2V0LWZvcm0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgSGVhZGVyRmFjZXRSYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9oZWFkZXItZmFjZXQtcmF0ZS9oZWFkZXItZmFjZXQtcmF0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBIZWFkZXJGYWNldFByb2dyZXNzQ29tcG9uZW50IH0gZnJvbSAnLi9oZWFkZXItZmFjZXQtcHJvZ3Jlc3MvaGVhZGVyLWZhY2V0LXByb2dyZXNzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEhlYWRlckZhY2V0TWljcm9jaGFydENvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyLWZhY2V0LW1pY3JvY2hhcnQvaGVhZGVyLWZhY2V0LW1pY3JvY2hhcnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSGVhZGVyRmFjZXRQbGFpblRleHRDb21wb25lbnQgfSBmcm9tICcuL2hlYWRlci1mYWNldC1wbGFpbi10ZXh0L2hlYWRlci1mYWNldC1wbGFpbi10ZXh0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpTW9JbmZvU3ViRm9ybVVpQ29tcG9uZW50IH0gZnJvbSAnLi91aS1tby1pbmZvLXN1Yi1mb3JtLXVpL3VpLW1vLWluZm8tc3ViLWZvcm0tdWkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmVzcG9uc2l2ZVRvb2xiYXJDb21wb25lbnQgfSBmcm9tICcuL3Jlc3BvbnNpdmUtdG9vbGJhci9yZXNwb25zaXZlLXRvb2xiYXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmVzcG9uc2l2ZVRvb2xiYXJSZW5kZXJlckNvbXBvbmVudCB9IGZyb20gJy4vcmVzcG9uc2l2ZS10b29sYmFyLXJlbmRlcmVyL3Jlc3BvbnNpdmUtdG9vbGJhci1yZW5kZXJlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaVRleHRBcmVhQ29tcG9uZW50IH0gZnJvbSAnLi91aS10ZXh0LWFyZWEvdWktdGV4dC1hcmVhLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExheW91dENvbnRyb2xDb21wb25lbnQgfSBmcm9tICcuL2xheW91dC1jb250cm9sL2xheW91dC1jb250cm9sLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExheW91dFdpemFyZENvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0LXdpemFyZC9sYXlvdXQtd2l6YXJkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZvcm1XaXphcmRDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0td2l6YXJkL2Zvcm0td2l6YXJkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFdpemFyZExheW91dERpcmVjdGl2ZSB9IGZyb20gJy4vd2l6YXJkLWxheW91dC5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBGb3JtRGlhbG9nTGVzc0NvbXBvbmVudCB9IGZyb20gJy4vZm9ybS1kaWFsb2ctbGVzcy9mb3JtLWRpYWxvZy1sZXNzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJpY2hUZXh0U3RhdGljQ29tcG9uZW50IH0gZnJvbSAnLi9yaWNoLXRleHQtc3RhdGljL3JpY2gtdGV4dC1zdGF0aWMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlQaWN0dXJlc0luZm9Db21wb25lbnQgfSBmcm9tICcuL3VpLXBpY3R1cmVzLWluZm8vdWktcGljdHVyZXMtaW5mby5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMeUhvcml6b250YWxMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL2x5LWhvcml6b250YWwtbGF5b3V0L2x5LWhvcml6b250YWwtbGF5b3V0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEx5VmVydGljYWxMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL2x5LXZlcnRpY2FsLWxheW91dC9seS12ZXJ0aWNhbC1sYXlvdXQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTHlUYWJDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL2x5LXRhYi1jb250YWluZXIvbHktdGFiLWNvbnRhaW5lci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMeVRhYlBhZ2VDb21wb25lbnQgfSBmcm9tICcuL2x5LXRhYi1wYWdlL2x5LXRhYi1wYWdlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEx5TGFiZWxDb21wb25lbnQgfSBmcm9tICcuL2x5LWxhYmVsL2x5LWxhYmVsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbFJlbmRlcmVyRGlyZWN0aXZlIH0gZnJvbSAnLi9jb2wtcmVuZGVyZXIuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgVWlNb0luZm9Db21ib1ZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vdWktbW8taW5mby1jb21iby12aWV3ZXIvdWktbW8taW5mby1jb21iby12aWV3ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWxNc2dCb3hBZGFwdGVyQ29tcG9uZW50IH0gZnJvbSAnLi91bC1tc2ctYm94LWFkYXB0ZXIvdWwtbXNnLWJveC1hZGFwdGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEhlYWRlckF2YXRhckNvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyLWF2YXRhci9oZWFkZXItYXZhdGFyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFwcGx5Q29uZGl0aW9uYWxGb3JtYXRzRGlyZWN0aXZlIH0gZnJvbSAnLi9hcHBseS1jb25kaXRpb25hbC1mb3JtbWF0aW5ncy5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBVaVdvcmtmbG93UGFuZWxVaUNvbXBvbmVudCB9IGZyb20gJy4vdWktd29ya2Zsb3ctcGFuZWwtdWkvdWktd29ya2Zsb3ctcGFuZWwtdWkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWx2Q29udGV4dE1lbnVDb21wb25lbnQgfSBmcm9tICcuL3Vsdi1jb250ZXh0LW1lbnUvdWx2LWNvbnRleHQtbWVudS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVbExvYWRpbmdNYXNrVWlDb21wb25lbnQgfSBmcm9tICcuL3VsLWxvYWRpbmctbWFzay11aS91bC1sb2FkaW5nLW1hc2stdWkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlUZXh0RmllbGRBdXRvQ29tcGxldGVDb21wb25lbnQgfSBmcm9tICcuL3VpLXRleHQtZmllbGQtYXV0by1jb21wbGV0ZS91aS10ZXh0LWZpZWxkLWF1dG8tY29tcGxldGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2FwdGNoYUZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi9jYXB0Y2hhLWZpZWxkL2NhcHRjaGEtZmllbGQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTHlTaW1wbGVMYWJlbENvbXBvbmVudCB9IGZyb20gJy4vbHktc2ltcGxlLWxhYmVsL2x5LXNpbXBsZS1sYWJlbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBHbG9iYWxTZWFyY2hQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vZ2xvYmFsLXNlYXJjaC1wYW5lbC9nbG9iYWwtc2VhcmNoLXBhbmVsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEdsb2JhbFNlYXJjaE1vZHVsZUNvbXBvbmVudCB9IGZyb20gJy4vZ2xvYmFsLXNlYXJjaC1tb2R1bGUvZ2xvYmFsLXNlYXJjaC1tb2R1bGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgR2xvYmFsU2VhcmNoQ29tcG9uZW50IH0gZnJvbSAnLi9nbG9iYWwtc2VhcmNoL2dsb2JhbC1zZWFyY2guY29tcG9uZW50JztcclxuaW1wb3J0IHsgSHlwZXJsaW5rQ29tcG9uZW50IH0gZnJvbSAnLi9oeXBlcmxpbmsvaHlwZXJsaW5rLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFN0YXRpY1RleHRDb21wb25lbnQgfSBmcm9tICcuL3N0YXRpYy10ZXh0L3N0YXRpYy10ZXh0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVsVG9hc3RBZGFwdGVyQ29tcG9uZW50IH0gZnJvbSAnLi91bC10b2FzdC1hZGFwdGVyL3VsLXRvYXN0LWFkYXB0ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWVzc2FnZVN0cmlwQ29tcG9uZW50IH0gZnJvbSAnLi9tZXNzYWdlLXN0cmlwL21lc3NhZ2Utc3RyaXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlMaW5lYXJMaXN0Q29udGFpbmVyV2l0aEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vdWktbGluZWFyLWxpc3QtY29udGFpbmVyLXdpdGgtYnV0dG9uL3VpLWxpbmVhci1saXN0LWNvbnRhaW5lci13aXRoLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGdW5kYW1lbnRhbER5bmFtaWNGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9mdW5kYW1lbnRhbC1keW5hbWljLWZvcm0vZnVuZGFtZW50YWwtZHluYW1pYy1mb3JtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExheW91dEFjdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL2xheW91dC1hY3Rpb25zL2xheW91dC1hY3Rpb25zLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEx5TGF5b3V0Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9seS1sYXlvdXQtY29udGFpbmVyL2x5LWxheW91dC1jb250YWluZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlVbHZGb3JtTXVsdGlTZWxlY3RVaUNvbXBvbmVudCB9IGZyb20gJy4vdWktdWx2LWZvcm0tbXVsdGktc2VsZWN0LXVpL3VpLXVsdi1mb3JtLW11bHRpLXNlbGVjdC11aS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVbHZGb3JtTXVsdGlTZWxlY3RDb21wb25lbnQgfSBmcm9tICcuL3Vsdi1mb3JtLW11bHRpLXNlbGVjdC91bHYtZm9ybS1tdWx0aS1zZWxlY3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWx2Q29sdW1uU2V0dGluZ3NDb21wb25lbnQgfSBmcm9tICcuL3Vsdi1jb2x1bW4tc2V0dGluZ3MvdWx2LWNvbHVtbi1zZXR0aW5ncy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVbHZGaWx0ZXJTZXR0aW5nc0NvbXBvbmVudCB9IGZyb20gJy4vdWx2LWZpbHRlci1zZXR0aW5ncy91bHYtZmlsdGVyLXNldHRpbmdzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVsdlNvcnRTZXR0aW5nc0NvbXBvbmVudCB9IGZyb20gJy4vdWx2LXNvcnQtc2V0dGluZ3MvdWx2LXNvcnQtc2V0dGluZ3MuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWx2R3JvdXBieVNldHRpbmdzQ29tcG9uZW50IH0gZnJvbSAnLi91bHYtZ3JvdXBieS1zZXR0aW5ncy91bHYtZ3JvdXBieS1zZXR0aW5ncy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYUxpc3RGaWxlTGluZWFyQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1saXN0LWZpbGUtbGluZWFyL2JhcnNhLWxpc3QtZmlsZS1saW5lYXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlQZGZWaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL3VpLXBkZi12aWV3ZXIvdWktcGRmLXZpZXdlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYVRpbnllbWNlQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS10aW55ZW1jZS9iYXJzYS10aW55ZW1jZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaU1vbmFjb0VkaXRvckNvbXBvbmVudCB9IGZyb20gJy4vdWktbW9uYWNvLWVkaXRvci91aS1tb25hY28tZWRpdG9yLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhTW9uYWNvRWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1tb25hY28tZWRpdG9yL2JhcnNhLW1vbmFjby1lZGl0b3IuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FEYXRlVGltZVBpY2tlckNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtZGF0ZS10aW1lLXBpY2tlci9iYXJzYS1kYXRlLXRpbWUtcGlja2VyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhVHJlZUl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXRyZWUtaXRlbS9iYXJzYS10cmVlLWl0ZW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgVXBsb2FkRmlsZVN0YXR1c1BpcGUgfSBmcm9tICcuL3VwbG9hZC1maWxlLXN0YXR1cy5waXBlJztcclxuaW1wb3J0IHsgVWlTd2l0Y2hCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL3VpLXN3aXRjaC1idXR0b24vdWktc3dpdGNoLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUNvbG9yVWlDb21wb25lbnQgfSBmcm9tICcuL3VpLWNvbG9yLXVpL3VpLWNvbG9yLXVpLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEx5TGluZUNvbXBvbmVudCB9IGZyb20gJy4vbHktbGluZS9seS1saW5lLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpVWx2TWFpblVpQ29tcG9uZW50IH0gZnJvbSAnLi91aS11bHYtbWFpbi11aS91aS11bHYtbWFpbi11aS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSZXBvcnROYXZpZ2F0b3JDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydC1uYXZpZ2F0b3IvcmVwb3J0LW5hdmlnYXRvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYW5hZ2VGaWx0ZXJzUmVwb3J0Q29tcG9uZW50IH0gZnJvbSAnLi9tYW5hZ2UtZmlsdGVycy1yZXBvcnQvbWFuYWdlLWZpbHRlcnMtcmVwb3J0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJlcG9ydFNlYXJjaEZpZWxkc01hbmFnZUNvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0LXNlYXJjaC1maWVsZHMtbWFuYWdlL3JlcG9ydC1zZWFyY2gtZmllbGRzLW1hbmFnZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSZXBvcnRTZWFyY2hGaWVsZHNIaWRkZW5TZXR0aW5nc0NvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0LXNlYXJjaC1maWVsZHMtaGlkZGVuLXNldHRpbmdzL3JlcG9ydC1zZWFyY2gtZmllbGRzLWhpZGRlbi1zZXR0aW5ncy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTZWFyY2hQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vc2VhcmNoLXBhbmVsL3NlYXJjaC1wYW5lbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSZXBvcnRTZWFyY2hQYW5lbFNhdmVDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydC1zZWFyY2gtcGFuZWwtc2F2ZS9yZXBvcnQtc2VhcmNoLXBhbmVsLXNhdmUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlHcmlkRmlsdGVyU2V0dGluZ3NDb21wb25lbnQgfSBmcm9tICcuL3VpLWdyaWQtZmlsdGVyLXNldHRpbmdzL3VpLWdyaWQtZmlsdGVyLXNldHRpbmdzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpR3JpZEZpbHRlckl0ZW1Db21wb25lbnQgfSBmcm9tICcuL3VpLWdyaWQtZmlsdGVyLWl0ZW0vdWktZ3JpZC1maWx0ZXItaXRlbS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTYXBGb250UGlwZSB9IGZyb20gJy4vc2FwLWZvbnQucGlwZSc7XHJcbmltcG9ydCB7IFNhcEZvbnRDbGFzc1BpcGUgfSBmcm9tICcuL3NhcC1mb250LWNsYXNzLnBpcGUnO1xyXG5pbXBvcnQgeyBVaURhdGVSYW5nZUV4Q29tcG9uZW50IH0gZnJvbSAnLi91aS1kYXRlLXJhbmdlLWV4L3VpLWRhdGUtcmFuZ2UtZXguY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWxOb3RpZnlQb3B1cENvbXBvbmVudCB9IGZyb20gJy4vdWwtbm90aWZ5LXBvcHVwL3VsLW5vdGlmeS1wb3B1cC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaVRhYmxlVmlld0NvbXBvbmVudCB9IGZyb20gJy4vdWktdGFibGUtdmlldy91aS10YWJsZS12aWV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpTGlzdFZpZXdDb21wb25lbnQgfSBmcm9tICcuL3VpLWxpc3Qtdmlldy91aS1saXN0LXZpZXcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3RyaW5nVG9BcnJheVBpcGUsIFVpQ2FyZFZpZXdDb21wb25lbnQgfSBmcm9tICcuL3VpLWNhcmQtdmlldy91aS1jYXJkLXZpZXcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlSZXBvcnRDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL3VpLXJlcG9ydC1jb250YWluZXIvdWktcmVwb3J0LWNvbnRhaW5lci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOb0RhdGFDb21wb25lbnQgfSBmcm9tICcuL25vLWRhdGEvbm8tZGF0YS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb2x1bW5SZW5kZXJlckNvbXBvbmVudCB9IGZyb20gJy4vY29sdW1uLXJlbmRlcmVyL2NvbHVtbi1yZW5kZXJlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBJbmxpbmVTYXZlQW5kQ2FuY2VsQ29tcG9uZW50IH0gZnJvbSAnLi9pbmxpbmUtc2F2ZS1hbmQtY2FuY2VsL2lubGluZS1zYXZlLWFuZC1jYW5jZWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlUcmVlVmlld0NvbXBvbmVudCB9IGZyb20gJy4vdWktdHJlZS12aWV3L3VpLXRyZWUtdmlldy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaVRyZWVDb21wb25lbnQgfSBmcm9tICcuL3VpLXRyZWUvdWktdHJlZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUNhbGVuZGFyQ29tcG9uZW50IH0gZnJvbSAnLi91aS1jYWxlbmRhci91aS1jYWxlbmRhci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOb2RlSGFzT25lRGVwdGhMZXZlbFBpcGUgfSBmcm9tICcuL2JhcnNhLXRyZWUtaXRlbS9ub2RlLWhhcy1vbmUtZGVwdGgtbGV2ZWwucGlwZSc7XHJcbmltcG9ydCB7IFVpQXNwUmVwb3J0Vmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi91aS1hc3AtcmVwb3J0LXZpZXdlci91aS1hc3AtcmVwb3J0LXZpZXdlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUdyYXBoQ29tcG9uZW50IH0gZnJvbSAnLi91aS1ncmFwaC91aS1ncmFwaC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUV4Y2VwdGlvbkZvcm1Db21wb25lbnQgfSBmcm9tICcuL3VpLWV4Y2VwdGlvbi1mb3JtL3VpLWV4Y2VwdGlvbi1mb3JtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpRWRpdGFibGVHcmlkQ29tcG9uZW50IH0gZnJvbSAnLi91aS1lZGl0YWJsZS1ncmlkL3VpLWVkaXRhYmxlLWdyaWQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29sdW1uTWF0cml4UmVuZGVyZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbHVtbi1tYXRyaXgtcmVuZGVyZXIvY29sdW1uLW1hdHJpeC1yZW5kZXJlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaU1hdHJpeFZpZXdDb21wb25lbnQgfSBmcm9tICcuL3VpLW1hdHJpeC12aWV3L3VpLW1hdHJpeC12aWV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1c3RvbURhdGVUaW1lQ29tcG9uZW50IH0gZnJvbSAnLi9jdXN0b20tZGF0ZS10aW1lL2N1c3RvbS1kYXRlLXRpbWUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0cml4VmFsdWVQaXBlIH0gZnJvbSAnLi9jb2x1bW4tbWF0cml4LXJlbmRlcmVyL21hdHJpeC12YWx1ZS5waXBlJztcclxuaW1wb3J0IHsgQmFyc2FBc3BWaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWFzcC12aWV3ZXIvYmFyc2EtYXNwLXZpZXdlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGaWxlSW5EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2ZpbGUtaW4tZGlhbG9nL2ZpbGUtaW4tZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IER5bmFtaWNQYWdlU2l6ZVBpcGUgfSBmcm9tICcuL2R5bmFtaWMtcGFnZS1zaXplLnBpcGUnO1xyXG5pbXBvcnQgeyBSZXBvcnRWaWV3UmVuZGVyZXJEaXJlY3RpdmUgfSBmcm9tICcuL3JlcG9ydC12aWV3LXJlbmRlcmVyLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFVpTW9JbmZvR2VuZXJhbE9iamVjdFVpQ29tcG9uZW50IH0gZnJvbSAnLi91aS1tby1pbmZvLWdlbmVyYWwtb2JqZWN0LXVpL3VpLW1vLWluZm8tZ2VuZXJhbC1vYmplY3QtdWkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlHYW50dENoYXJ0Q29tcG9uZW50IH0gZnJvbSAnLi91aS1nYW50dC1jaGFydC91aS1nYW50dC1jaGFydC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBHYW50dERodG1sQ2hhcnRWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9nYW50dC1kaHRtbC1jaGFydC12aWV3L2dhbnR0LWRodG1sLWNoYXJ0LXZpZXcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRnVsbHNjcmVlbkRpYWxvZ0RpcmVjdGl2ZSB9IGZyb20gJy4vZnVsbHNjcmVlbi1kaWFsb2cuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgUHJvZ3Jlc3NJbmRpY2F0b3JDb21wb25lbnQgfSBmcm9tICcuL3Byb2dyZXNzLWluZGljYXRvci9wcm9ncmVzcy1pbmRpY2F0b3IuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2FyZFZpZXdDb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jYXJkLXZpZXctY29udGVudC9jYXJkLXZpZXctY29udGVudC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDYXJkSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY2FyZC1pdGVtL2NhcmQtaXRlbS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUNhcmRWaWV3SG9yaXpvbnRhbEdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi91aS1jYXJkLXZpZXctaG9yaXpvbnRhbC1ncm91cC91aS1jYXJkLXZpZXctaG9yaXpvbnRhbC1ncm91cC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUaXRsZUNvbXBvbmVudCB9IGZyb20gJy4vdGl0bGUvdGl0bGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FVbHZNYWluQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS11bHYtbWFpbi9iYXJzYS11bHYtbWFpbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMaXN0SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vbGlzdC1pdGVtL2xpc3QtaXRlbS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBIdHJlZUNyZWF0ZU5ld0NvbXBvbmVudCB9IGZyb20gJy4vaHRyZWUtY3JlYXRlLW5ldy9odHJlZS1jcmVhdGUtbmV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhVGFibGVSb3dDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXRhYmxlLXJvdy9iYXJzYS10YWJsZS1yb3cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FUYWJsZUNvbHVtbkNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtdGFibGUtY29sdW1uL2JhcnNhLXRhYmxlLWNvbHVtbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYVRhYmxlSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS10YWJsZS1oZWFkZXIvYmFyc2EtdGFibGUtaGVhZGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJyZWFkY3J1bWJDb21wb25lbnQgfSBmcm9tICcuL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaUxhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi91aS1sYWJlbC91aS1sYWJlbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGb3JtVG9vbGJhckJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vZm9ybS10b29sYmFyLWJ1dHRvbi9mb3JtLXRvb2xiYXItYnV0dG9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhU2VhcmNoRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2Etc2VhcmNoLWZvcm0vYmFyc2Etc2VhcmNoLWZvcm0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmVwb3J0TmV3VG9wRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0LW5ldy10b3AtZm9ybS9yZXBvcnQtbmV3LXRvcC1mb3JtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhTmV0d29ya09mZmxpbmVDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLW5ldHdvcmstb2ZmbGluZS9iYXJzYS1uZXR3b3JrLW9mZmxpbmUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmxvYlZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vYmxvYi12aWV3ZXIvYmxvYi12aWV3ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRmlsZVZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vZmlsZS12aWV3ZXIvZmlsZS12aWV3ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRmlsZVZpZXdlckNvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL2ZpbGUtdmlld2VyLWNvbnRlbnQvZmlsZS12aWV3ZXItY29udGVudC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGaWxlVmlld2VyUG9wb3ZlckNvbXBvbmVudCB9IGZyb20gJy4vZmlsZS12aWV3ZXItcG9wb3Zlci9maWxlLXZpZXdlci1wb3BvdmVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERvd25sb2FkRmlsZXNEaXJlY3RpdmUgfSBmcm9tICcuL2Rvd25sb2FkLWZpbGVzLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEZ1bGxzY3JlZW5GaWxlc0RpcmVjdGl2ZSB9IGZyb20gJy4vZnVsbHNjcmVlbi1maWxlcy5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb25JdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9ub3RpZmljYXRpb24taXRlbS9ub3RpZmljYXRpb24taXRlbS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYUNhcnRhYmxlVGVtcGxhdGVDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWNhcnRhYmxlLXRlbXBsYXRlL2JhcnNhLWNhcnRhYmxlLXRlbXBsYXRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhQ2FydGFibGVHcm91cENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtZ3JvdXAtY2FydGFibGUvYmFyc2EtY2FydGFibGUtZ3JvdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FDYXJ0YWJsZUZvcm1Db21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWNhcnRhYmxlLWZvcm0vYmFyc2EtY2FydGFibGUtZm9ybS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYUNvbHVtbkluZGljYXRvckNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtY29sdW1uLWluZGljYXRvci9iYXJzYS1jb2x1bW4taW5kaWNhdG9yLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhRmllbGRLZXlWYWx1ZUNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtZmllbGQta2V5LXZhbHVlL2JhcnNhLWZpZWxkLWtleS12YWx1ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYVRvb2xiYXJpdGVtU2VhcmNoQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS10b29sYmFyaXRlbS1zZWFyY2gvYmFyc2EtdG9vbGJhcml0ZW0tc2VhcmNoLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpSHRtbFZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vdWktaHRtbC12aWV3ZXIvdWktaHRtbC12aWV3ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FQaXNobmFtYXllc2hQYXlhbUNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtcGlzaG5hbWF5ZXNoLXBheWFtL2JhcnNhLXBpc2huYW1heWVzaC1wYXlhbS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYVRleHRFbGxpcHNpc0NvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtdGV4dC1lbGxpcHNpcy9iYXJzYS10ZXh0LWVsbGlwc2lzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhTGlzdEZpbGVMaW5lYXJHbWFpbENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtbGlzdC1maWxlLWxpbmVhci1nbWFpbC9iYXJzYS1saXN0LWZpbGUtbGluZWFyLWdtYWlsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhTGlua2FibGVJdGVtc1BhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1saW5rYWJsZS1pdGVtcy1wYW5lbC9iYXJzYS1saW5rYWJsZS1pdGVtcy1wYW5lbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYUVudW1NZW51QnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1lbnVtLW1lbnUtYnV0dG9uL2JhcnNhLWVudW0tbWVudS1idXR0b24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FDYXJkTGF5b3V0UGFuZWxDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWNhcmQtbGF5b3V0LXBhbmVsL2JhcnNhLWNhcmQtbGF5b3V0LXBhbmVsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhSG9yaXpvbnRhbEZsZXhQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtaG9yaXpvbnRhbC1mbGV4LXBhbmVsL2JhcnNhLWhvcml6b250YWwtZmxleC1wYW5lbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYUJhc2VMYXlvdXRQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtYmFzZS1wYW5lbC9iYXJzYS1iYXNlLWxheW91dC1wYW5lbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYUJhclBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1iYXItcGFuZWwvYmFyc2EtYmFyLXBhbmVsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhRm9ybVNpZGVDb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1mb3JtLXNpZGUtY29udGVudC9iYXJzYS1mb3JtLXNpZGUtY29udGVudC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEaWFsb2dIYW5kbGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaWFsb2ctaGFuZGxlci5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBCYXJzYVNpbXBsZUZvcm1Db21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXNpbXBsZS1mb3JtL2JhcnNhLXNpbXBsZS1mb3JtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZvcm1Ub29sYmFyQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtLXRvb2xiYXIvZm9ybS10b29sYmFyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhTGlzdExheW91dFBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1saXN0LWxheW91dC1wYW5lbC9iYXJzYS1saXN0LWxheW91dC1wYW5lbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYUdyaWRMYXlvdXRQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtZ3JpZC1sYXlvdXQtcGFuZWwvYmFyc2EtZ3JpZC1sYXlvdXQtcGFuZWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FEeW5hbWljRmllbGRDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWR5bmFtaWMtZmllbGQvYmFyc2EtZHluYW1pYy1maWVsZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTYXBTaXplUGlwZSB9IGZyb20gJy4vc2FwLXNpemUucGlwZSc7XHJcbmltcG9ydCB7IFVpTXVsdGlTZWxlY3RSYWRpb0NvbXBvbmVudCB9IGZyb20gJy4vdWktbXVsdGktc2VsZWN0LXJhZGlvL3VpLW11bHRpLXNlbGVjdC1yYWRpby5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaU11bHRpU2VsZWN0Q2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuL3VpLW11bHRpLXNlbGVjdC1jaGVja2JveC91aS1tdWx0aS1zZWxlY3QtY2hlY2tib3guY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlNdWx0aVNlbGVjdFNsaWRlckNvbXBvbmVudCB9IGZyb20gJy4vdWktbXVsdGktc2VsZWN0LXNsaWRlci91aS1tdWx0aS1zZWxlY3Qtc2xpZGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpTXVsdGlTZWxlY3RDYXJkQ29tcG9uZW50IH0gZnJvbSAnLi91aS1tdWx0aS1zZWxlY3QtY2FyZC91aS1tdWx0aS1zZWxlY3QtY2FyZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaU11bHRpU2VsZWN0U21pbGVDb21wb25lbnQgfSBmcm9tICcuL3VpLW11bHRpLXNlbGVjdC1zbWlsZS91aS1tdWx0aS1zZWxlY3Qtc21pbGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlOdW1JbnRTbGlkZXJDb21wb25lbnQgfSBmcm9tICcuL3VpLW51bS1pbnQtc2xpZGVyL3VpLW51bS1pbnQtc2xpZGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhUmVwb3J0Q2hlY2tib3hTd2l0Y2hCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXJlcG9ydC1jaGVja2JveC1zd2l0Y2gtYnV0dG9uL2JhcnNhLXJlcG9ydC1jaGVja2JveC1zd2l0Y2gtYnV0dG9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhQ29sdW1uUm93TnVtYmVyQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1jb2x1bW4tcm93bnVtYmVyL2JhcnNhLWNvbHVtbi1yb3dudW1iZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FSZXBvcnRPbmVPZkxpc3RDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXJlcG9ydC1vbmUtb2YtbGlzdC9iYXJzYS1yZXBvcnQtb25lLW9mLWxpc3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FDYXJkUm93UGF5YW1Db21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWNhcmQtcm93LXBheWFtL2JhcnNhLWNhcmQtcm93LXBheWFtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhUXVlc3Rpb25Qb3N0Q29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1xdWVzdGlvbi1wb3N0L2JhcnNhLXF1ZXN0aW9uLXBvc3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FRdWVzdGlvbkFuc3dlckZvcm1Db21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXF1ZXN0aW9uLWFuc3dlci1mb3JtL2JhcnNhLXF1ZXN0aW9uLWFuc3dlci1mb3JtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhUXVlc3Rpb25BbnN3ZXJGb3JtQWRkQ29tbWVudENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWZvcm0tYWRkLWNvbW1lbnQvYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWZvcm0tYWRkLWNvbW1lbnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FBbnN3ZXJDYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1hbnN3ZXItY2FyZC9iYXJzYS1hbnN3ZXItY2FyZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYVF1ZXN0aW9uQW5zd2VyQ3JlYXRvclRpbWVTZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1xdWVzdGlvbi1hbnN3ZXItY3JlYXRvci10aW1lLXNlY3Rpb24vYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWNyZWF0b3ItdGltZS1zZWN0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhUXVlc3Rpb25BbnN3ZXJDb21tZW50c1NlY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXF1ZXN0aW9uLWFuc3dlci1jb21tZW50cy1zZWN0aW9uL2JhcnNhLXF1ZXN0aW9uLWFuc3dlci1jb21tZW50cy1zZWN0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhUXVlc3Rpb25BbnN3ZXJWb3RlU2VjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtcXVlc3Rpb24tYW5zd2VyLXZvdGUtc2VjdGlvbi9iYXJzYS1xdWVzdGlvbi1hbnN3ZXItdm90ZS1zZWN0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhUXVlc3Rpb25BbnN3ZXJDb250ZW50QWN0aW9uc1NlY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXF1ZXN0aW9uLWFuc3dlci1jb250ZW50LWFjdGlvbnMtc2VjdGlvbi9iYXJzYS1xdWVzdGlvbi1hbnN3ZXItY29udGVudC1hY3Rpb25zLXNlY3Rpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FDaGlwQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1jaGlwL2JhcnNhLWNoaXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FSZXBvcnRDYXJkRmxleFZpZXdDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXJlcG9ydC1jYXJkLWZsZXgtdmlldy9iYXJzYS1yZXBvcnQtY2FyZC1mbGV4LXZpZXcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FUYWdzQ2F0ZWdvcnlSb3dDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXRhZ3MtY2F0ZWdvcnktcm93L2JhcnNhLXRhZ3MtY2F0ZWdvcnktcm93LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhVGFnQ2hpcENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtdGFnLWNoaXAvYmFyc2EtdGFnLWNoaXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FUYWdDYXRlZ29yaWVzQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS10YWctY2F0ZWdvcmllcy9iYXJzYS10YWctY2F0ZWdvcmllcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYUN1c3RvbUlubGluZUVkaXRDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWN1c3RvbS1pbmxpbmUtZWRpdC9iYXJzYS1jdXN0b20taW5saW5lLWVkaXQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FDdXN0b21JbmxpbmVFZGl0Um93Q29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1jdXN0b20taW5saW5lLWVkaXQtcm93L2JhcnNhLWN1c3RvbS1pbmxpbmUtZWRpdC1yb3cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRG9tU2FuaXRpemVyIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcbmltcG9ydCB7IEJhcnNhQ2hhdENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtY2hhdC9iYXJzYS1jaGF0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhQ2hhdENvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWNoYXQtY29udGVudC9iYXJzYS1jaGF0LWNvbnRlbnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FDaGF0TWVzc2FnZUNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtY2hhdC1tZXNzYWdlL2JhcnNhLWNoYXQtbWVzc2FnZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYUNoYXRUaHJlYWRDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWNoYXQtdGhyZWFkL2JhcnNhLWNoYXQtdGhyZWFkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJhcnNhQ2hhdFRocmVhZHNMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1jaGF0LXRocmVhZHMtbGlzdC9iYXJzYS1jaGF0LXRocmVhZHMtbGlzdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYUNoYXRUaHJlYWRzTGlzdFRvb2xiYXJDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWNoYXQtdGhyZWFkcy1saXN0LXRvb2xiYXIvYmFyc2EtY2hhdC10aHJlYWRzLWxpc3QtdG9vbGJhci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCYXJzYUNoYXRDb250ZW50VG9vbGJhckNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtY2hhdC1jb250ZW50LXRvb2xiYXIvYmFyc2EtY2hhdC1jb250ZW50LXRvb2xiYXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FDaGF0TGlzdENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtY2hhdC1saXN0L2JhcnNhLWNoYXQtbGlzdC5jb21wb25lbnQnO1xyXG5cclxuZXhwb3J0IGNvbnN0IGNvbXBvbmVudHMgPSBbXHJcbiAgICBVaVRleHRGaWVsZENvbXBvbmVudCxcclxuICAgIEx5TGF5b3V0RmllbGRMYWJlbENvbXBvbmVudCxcclxuICAgIFVpQ2hlY2tCb3hDb21wb25lbnQsXHJcbiAgICBVaVNpbXBsZUNvbWJvQ29tcG9uZW50LFxyXG4gICAgVWlSYWRpb0dyb3VwQ29tcG9uZW50LFxyXG4gICAgVWlHcmlkQ29tcG9uZW50LFxyXG4gICAgTHlMYXlvdXRDb250YWluZXJPZlJvb3RDb21wb25lbnQsXHJcbiAgICBMeUxheW91dFBhbmVsQ29tcG9uZW50LFxyXG4gICAgVWlSZWFkT25seUZpZWxkQ29tcG9uZW50LFxyXG4gICAgVWlDb250YWluZXJXaXRoQnV0dG9uQ29tcG9uZW50LFxyXG4gICAgVWlQaWN0dXJlRmlsZUNvbXBvbmVudCxcclxuICAgIFVpTW9JbmZvVWx2Q29tYm9Db21wb25lbnQsXHJcbiAgICBVaU11bHRpU2VsZWN0Q29tYm9Db21wb25lbnQsXHJcbiAgICBVaU51bURlY2ltYWxVaUNvbXBvbmVudCxcclxuICAgIFVpTnVtSW50VWlDb21wb25lbnQsXHJcbiAgICBVaVRpbWVTcGFuQ29tcG9uZW50LFxyXG4gICAgVWlGaWxlTGluZWFyTGlzdEJveENvbXBvbmVudCxcclxuICAgIEx5RW1wdHlTcGFjZUNvbXBvbmVudCxcclxuICAgIFVpU2luZ2xlUGljdHVyZUNvbXBvbmVudCxcclxuICAgIFVsdlNlbGVjdGlvbkNvbXBvbmVudCxcclxuICAgIFVsdlRvb2xiYXJDb21wb25lbnQsXHJcbiAgICBVbHZQYWdpbmdDb21wb25lbnQsXHJcbiAgICBVaUdyaWRTb3J0U2V0dGluZ0NvbXBvbmVudCxcclxuICAgIFVpR3JpZFNvcnRJdGVtQ29tcG9uZW50LFxyXG4gICAgVWlHcmlkQ29sdW1uc0NvbXBvbmVudCxcclxuICAgIE1hc2tDb21wb25lbnQsXHJcbiAgICBVaUluZm9CYXJQYW5lbENvbXBvbmVudCxcclxuICAgIFVpRm9ybVBhbmVsQ29tcG9uZW50LFxyXG4gICAgVWlTZWFyY2hDb21tYW5kSW5mb1VpQ29tcG9uZW50LFxyXG4gICAgVWx2U2V0dGluZ3NDb21wb25lbnQsXHJcbiAgICBVaVRpbnltY2VDb21wb25lbnQsXHJcbiAgICBVaUJ1dHRvbkNvbXBvbmVudCxcclxuICAgIFVpRGF0ZVRpbWVDb21wb25lbnQsXHJcbiAgICBGb3JtRGlhbG9nQ29tcG9uZW50LFxyXG4gICAgSGVhZGVyRmFjZXRLZXlWYWx1ZUNvbXBvbmVudCxcclxuICAgIEhlYWRlckZhY2V0Rm9ybUNvbXBvbmVudCxcclxuICAgIEhlYWRlckZhY2V0UmF0ZUNvbXBvbmVudCxcclxuICAgIEhlYWRlckZhY2V0UHJvZ3Jlc3NDb21wb25lbnQsXHJcbiAgICBIZWFkZXJGYWNldE1pY3JvY2hhcnRDb21wb25lbnQsXHJcbiAgICBIZWFkZXJGYWNldFBsYWluVGV4dENvbXBvbmVudCxcclxuICAgIFVpTW9JbmZvU3ViRm9ybVVpQ29tcG9uZW50LFxyXG4gICAgUmVzcG9uc2l2ZVRvb2xiYXJDb21wb25lbnQsXHJcbiAgICBSZXNwb25zaXZlVG9vbGJhclJlbmRlcmVyQ29tcG9uZW50LFxyXG4gICAgVWlUZXh0QXJlYUNvbXBvbmVudCxcclxuICAgIExheW91dENvbnRyb2xDb21wb25lbnQsXHJcbiAgICBMYXlvdXRXaXphcmRDb21wb25lbnQsXHJcbiAgICBGb3JtV2l6YXJkQ29tcG9uZW50LFxyXG4gICAgRm9ybURpYWxvZ0xlc3NDb21wb25lbnQsXHJcbiAgICBSaWNoVGV4dFN0YXRpY0NvbXBvbmVudCxcclxuICAgIFVpUGljdHVyZXNJbmZvQ29tcG9uZW50LFxyXG4gICAgTHlIb3Jpem9udGFsTGF5b3V0Q29tcG9uZW50LFxyXG4gICAgTHlWZXJ0aWNhbExheW91dENvbXBvbmVudCxcclxuICAgIEx5VGFiQ29udGFpbmVyQ29tcG9uZW50LFxyXG4gICAgTHlUYWJQYWdlQ29tcG9uZW50LFxyXG4gICAgTHlMYWJlbENvbXBvbmVudCxcclxuICAgIFVpTW9JbmZvQ29tYm9WaWV3ZXJDb21wb25lbnQsXHJcbiAgICBVbE1zZ0JveEFkYXB0ZXJDb21wb25lbnQsXHJcbiAgICBVaVRyZWVDb21wb25lbnQsXHJcbiAgICBIZWFkZXJBdmF0YXJDb21wb25lbnQsXHJcbiAgICBVaVdvcmtmbG93UGFuZWxVaUNvbXBvbmVudCxcclxuICAgIFVsdkNvbnRleHRNZW51Q29tcG9uZW50LFxyXG4gICAgVWxMb2FkaW5nTWFza1VpQ29tcG9uZW50LFxyXG4gICAgVWlUZXh0RmllbGRBdXRvQ29tcGxldGVDb21wb25lbnQsXHJcbiAgICBDYXB0Y2hhRmllbGRDb21wb25lbnQsXHJcbiAgICBMeVNpbXBsZUxhYmVsQ29tcG9uZW50LFxyXG4gICAgR2xvYmFsU2VhcmNoUGFuZWxDb21wb25lbnQsXHJcbiAgICBHbG9iYWxTZWFyY2hNb2R1bGVDb21wb25lbnQsXHJcbiAgICBHbG9iYWxTZWFyY2hDb21wb25lbnQsXHJcbiAgICBIeXBlcmxpbmtDb21wb25lbnQsXHJcbiAgICBTdGF0aWNUZXh0Q29tcG9uZW50LFxyXG4gICAgVWxUb2FzdEFkYXB0ZXJDb21wb25lbnQsXHJcbiAgICBNZXNzYWdlU3RyaXBDb21wb25lbnQsXHJcbiAgICBVaUxpbmVhckxpc3RDb250YWluZXJXaXRoQnV0dG9uQ29tcG9uZW50LFxyXG4gICAgRnVuZGFtZW50YWxEeW5hbWljRm9ybUNvbXBvbmVudCxcclxuICAgIExheW91dEFjdGlvbnNDb21wb25lbnQsXHJcbiAgICBMeUxheW91dENvbnRhaW5lckNvbXBvbmVudCxcclxuICAgIFVpVWx2Rm9ybU11bHRpU2VsZWN0VWlDb21wb25lbnQsXHJcbiAgICBVbHZGb3JtTXVsdGlTZWxlY3RDb21wb25lbnQsXHJcbiAgICBVbHZDb2x1bW5TZXR0aW5nc0NvbXBvbmVudCxcclxuICAgIFVsdkZpbHRlclNldHRpbmdzQ29tcG9uZW50LFxyXG4gICAgVWx2U29ydFNldHRpbmdzQ29tcG9uZW50LFxyXG4gICAgVWx2R3JvdXBieVNldHRpbmdzQ29tcG9uZW50LFxyXG4gICAgQmFyc2FMaXN0RmlsZUxpbmVhckNvbXBvbmVudCxcclxuICAgIFVpUGRmVmlld2VyQ29tcG9uZW50LFxyXG4gICAgQmFyc2FUaW55ZW1jZUNvbXBvbmVudCxcclxuICAgIFVpTW9uYWNvRWRpdG9yQ29tcG9uZW50LFxyXG4gICAgQmFyc2FNb25hY29FZGl0b3JDb21wb25lbnQsXHJcbiAgICBCYXJzYURhdGVUaW1lUGlja2VyQ29tcG9uZW50LFxyXG4gICAgQmFyc2FUcmVlSXRlbUNvbXBvbmVudCxcclxuICAgIFVpU3dpdGNoQnV0dG9uQ29tcG9uZW50LFxyXG4gICAgVWlDb2xvclVpQ29tcG9uZW50LFxyXG4gICAgTHlMaW5lQ29tcG9uZW50LFxyXG4gICAgVWlVbHZNYWluVWlDb21wb25lbnQsXHJcbiAgICBSZXBvcnROYXZpZ2F0b3JDb21wb25lbnQsXHJcbiAgICBNYW5hZ2VGaWx0ZXJzUmVwb3J0Q29tcG9uZW50LFxyXG4gICAgUmVwb3J0U2VhcmNoRmllbGRzTWFuYWdlQ29tcG9uZW50LFxyXG4gICAgUmVwb3J0U2VhcmNoRmllbGRzSGlkZGVuU2V0dGluZ3NDb21wb25lbnQsXHJcbiAgICBTZWFyY2hQYW5lbENvbXBvbmVudCxcclxuICAgIFJlcG9ydFNlYXJjaFBhbmVsU2F2ZUNvbXBvbmVudCxcclxuICAgIFVpR3JpZEZpbHRlclNldHRpbmdzQ29tcG9uZW50LFxyXG4gICAgVWlHcmlkRmlsdGVySXRlbUNvbXBvbmVudCxcclxuICAgIFVpRGF0ZVJhbmdlRXhDb21wb25lbnQsXHJcbiAgICBVbE5vdGlmeVBvcHVwQ29tcG9uZW50LFxyXG4gICAgVWlUYWJsZVZpZXdDb21wb25lbnQsXHJcbiAgICBVaUxpc3RWaWV3Q29tcG9uZW50LFxyXG4gICAgVWlDYXJkVmlld0NvbXBvbmVudCxcclxuICAgIFVpUmVwb3J0Q29udGFpbmVyQ29tcG9uZW50LFxyXG4gICAgTm9EYXRhQ29tcG9uZW50LFxyXG4gICAgQ29sdW1uUmVuZGVyZXJDb21wb25lbnQsXHJcbiAgICBJbmxpbmVTYXZlQW5kQ2FuY2VsQ29tcG9uZW50LFxyXG4gICAgVWlUcmVlVmlld0NvbXBvbmVudCxcclxuICAgIElubGluZVNhdmVBbmRDYW5jZWxDb21wb25lbnQsXHJcbiAgICBVaUNhbGVuZGFyQ29tcG9uZW50LFxyXG4gICAgVWlBc3BSZXBvcnRWaWV3ZXJDb21wb25lbnQsXHJcbiAgICBVaUdyYXBoQ29tcG9uZW50LFxyXG4gICAgVWlFeGNlcHRpb25Gb3JtQ29tcG9uZW50LFxyXG4gICAgVWlFZGl0YWJsZUdyaWRDb21wb25lbnQsXHJcbiAgICBDb2x1bW5NYXRyaXhSZW5kZXJlckNvbXBvbmVudCxcclxuICAgIFVpTWF0cml4Vmlld0NvbXBvbmVudCxcclxuICAgIEN1c3RvbURhdGVUaW1lQ29tcG9uZW50LFxyXG4gICAgQmFyc2FBc3BWaWV3ZXJDb21wb25lbnQsXHJcbiAgICBGaWxlSW5EaWFsb2dDb21wb25lbnQsXHJcbiAgICBVaU1vSW5mb0dlbmVyYWxPYmplY3RVaUNvbXBvbmVudCxcclxuICAgIFVpR2FudHRDaGFydENvbXBvbmVudCxcclxuICAgIEdhbnR0RGh0bWxDaGFydFZpZXdDb21wb25lbnQsXHJcbiAgICBQcm9ncmVzc0luZGljYXRvckNvbXBvbmVudCxcclxuICAgIENhcmRWaWV3Q29udGVudENvbXBvbmVudCxcclxuICAgIENhcmRJdGVtQ29tcG9uZW50LFxyXG4gICAgVWlDYXJkVmlld0hvcml6b250YWxHcm91cENvbXBvbmVudCxcclxuICAgIFRpdGxlQ29tcG9uZW50LFxyXG4gICAgQmFyc2FVbHZNYWluQ29tcG9uZW50LFxyXG4gICAgTGlzdEl0ZW1Db21wb25lbnQsXHJcbiAgICBIdHJlZUNyZWF0ZU5ld0NvbXBvbmVudCxcclxuICAgIEJhcnNhVGFibGVIZWFkZXJDb21wb25lbnQsXHJcbiAgICBCYXJzYVRhYmxlUm93Q29tcG9uZW50LFxyXG4gICAgQmFyc2FUYWJsZUNvbHVtbkNvbXBvbmVudCxcclxuICAgIEJyZWFkY3J1bWJDb21wb25lbnQsXHJcbiAgICBVaUxhYmVsQ29tcG9uZW50LFxyXG4gICAgRm9ybVRvb2xiYXJCdXR0b25Db21wb25lbnQsXHJcbiAgICBCYXJzYVNlYXJjaEZvcm1Db21wb25lbnQsXHJcbiAgICBSZXBvcnROZXdUb3BGb3JtQ29tcG9uZW50LFxyXG4gICAgQmFyc2FOZXR3b3JrT2ZmbGluZUNvbXBvbmVudCxcclxuICAgIEZpbGVWaWV3ZXJDb250ZW50Q29tcG9uZW50LFxyXG4gICAgRmlsZVZpZXdlclBvcG92ZXJDb21wb25lbnQsXHJcbiAgICBGaWxlVmlld2VyQ29tcG9uZW50LFxyXG4gICAgQmxvYlZpZXdlckNvbXBvbmVudCxcclxuICAgIE5vdGlmaWNhdGlvbkl0ZW1Db21wb25lbnQsXHJcbiAgICBCYXJzYUNhcnRhYmxlVGVtcGxhdGVDb21wb25lbnQsXHJcbiAgICBCYXJzYUNhcnRhYmxlR3JvdXBDb21wb25lbnQsXHJcbiAgICBCYXJzYUNhcnRhYmxlRm9ybUNvbXBvbmVudCxcclxuICAgIEJhcnNhQ29sdW1uSW5kaWNhdG9yQ29tcG9uZW50LFxyXG4gICAgQmFyc2FGaWVsZEtleVZhbHVlQ29tcG9uZW50LFxyXG4gICAgQmFyc2FUb29sYmFyaXRlbVNlYXJjaENvbXBvbmVudCxcclxuICAgIFVpSHRtbFZpZXdlckNvbXBvbmVudCxcclxuICAgIEJhcnNhUGlzaG5hbWF5ZXNoUGF5YW1Db21wb25lbnQsXHJcbiAgICBCYXJzYVRleHRFbGxpcHNpc0NvbXBvbmVudCxcclxuICAgIEJhcnNhTGlzdEZpbGVMaW5lYXJHbWFpbENvbXBvbmVudCxcclxuICAgIEJhcnNhTGlua2FibGVJdGVtc1BhbmVsQ29tcG9uZW50LFxyXG4gICAgQmFyc2FFbnVtTWVudUJ1dHRvbkNvbXBvbmVudCxcclxuICAgIEJhcnNhQ2FyZExheW91dFBhbmVsQ29tcG9uZW50LFxyXG4gICAgQmFyc2FIb3Jpem9udGFsRmxleFBhbmVsQ29tcG9uZW50LFxyXG4gICAgQmFyc2FCYXNlTGF5b3V0UGFuZWxDb21wb25lbnQsXHJcbiAgICBCYXJzYUJhclBhbmVsQ29tcG9uZW50LFxyXG4gICAgQmFyc2FGb3JtU2lkZUNvbnRlbnRDb21wb25lbnQsXHJcbiAgICBCYXJzYVNpbXBsZUZvcm1Db21wb25lbnQsXHJcbiAgICBGb3JtVG9vbGJhckNvbXBvbmVudCxcclxuICAgIEJhcnNhTGlzdExheW91dFBhbmVsQ29tcG9uZW50LFxyXG4gICAgQmFyc2FHcmlkTGF5b3V0UGFuZWxDb21wb25lbnQsXHJcbiAgICBCYXJzYUR5bmFtaWNGaWVsZENvbXBvbmVudCxcclxuICAgIFVpTXVsdGlTZWxlY3RSYWRpb0NvbXBvbmVudCxcclxuICAgIFVpTXVsdGlTZWxlY3RDaGVja2JveENvbXBvbmVudCxcclxuICAgIFVpTnVtSW50U2xpZGVyQ29tcG9uZW50LFxyXG4gICAgVWlNdWx0aVNlbGVjdFNsaWRlckNvbXBvbmVudCxcclxuICAgIFVpTXVsdGlTZWxlY3RDYXJkQ29tcG9uZW50LFxyXG4gICAgVWlNdWx0aVNlbGVjdFNtaWxlQ29tcG9uZW50LFxyXG4gICAgQmFyc2FSZXBvcnRDaGVja2JveFN3aXRjaEJ1dHRvbkNvbXBvbmVudCxcclxuICAgIEJhcnNhQ29sdW1uUm93TnVtYmVyQ29tcG9uZW50LFxyXG4gICAgQmFyc2FDYXJkUm93UGF5YW1Db21wb25lbnQsXHJcbiAgICBCYXJzYUNvbHVtblJvd051bWJlckNvbXBvbmVudCxcclxuICAgIEJhcnNhUXVlc3Rpb25Qb3N0Q29tcG9uZW50LFxyXG4gICAgQmFyc2FRdWVzdGlvbkFuc3dlckZvcm1Db21wb25lbnQsXHJcbiAgICBCYXJzYVF1ZXN0aW9uQW5zd2VyRm9ybUFkZENvbW1lbnRDb21wb25lbnQsXHJcbiAgICBCYXJzYUFuc3dlckNhcmRDb21wb25lbnQsXHJcbiAgICBCYXJzYVF1ZXN0aW9uQW5zd2VyQ29udGVudEFjdGlvbnNTZWN0aW9uQ29tcG9uZW50LFxyXG4gICAgQmFyc2FRdWVzdGlvbkFuc3dlclZvdGVTZWN0aW9uQ29tcG9uZW50LFxyXG4gICAgQmFyc2FRdWVzdGlvbkFuc3dlckNyZWF0b3JUaW1lU2VjdGlvbkNvbXBvbmVudCxcclxuICAgIEJhcnNhUXVlc3Rpb25BbnN3ZXJDb21tZW50c1NlY3Rpb25Db21wb25lbnQsXHJcbiAgICBCYXJzYUNoaXBDb21wb25lbnQsXHJcbiAgICBCYXJzYVRhZ0NoaXBDb21wb25lbnQsXHJcbiAgICBCYXJzYVJlcG9ydENhcmRGbGV4Vmlld0NvbXBvbmVudCxcclxuICAgIEJhcnNhVGFnc0NhdGVnb3J5Um93Q29tcG9uZW50LFxyXG4gICAgQmFyc2FUYWdDYXRlZ29yaWVzQ29tcG9uZW50LFxyXG4gICAgQmFyc2FSZXBvcnRPbmVPZkxpc3RDb21wb25lbnQsXHJcbiAgICBCYXJzYUNhcmRSb3dQYXlhbUNvbXBvbmVudCxcclxuICAgIEJhcnNhQ3VzdG9tSW5saW5lRWRpdENvbXBvbmVudCxcclxuICAgIEJhcnNhQ3VzdG9tSW5saW5lRWRpdFJvd0NvbXBvbmVudCxcclxuICAgIEJhcnNhQ2hhdENvbXBvbmVudCxcclxuICAgIEJhcnNhQ2hhdENvbnRlbnRDb21wb25lbnQsXHJcbiAgICBCYXJzYUNoYXRNZXNzYWdlQ29tcG9uZW50LFxyXG4gICAgQmFyc2FDaGF0VGhyZWFkQ29tcG9uZW50LFxyXG4gICAgQmFyc2FDaGF0VGhyZWFkc0xpc3RDb21wb25lbnQsXHJcbiAgICBCYXJzYUNoYXRUaHJlYWRzTGlzdFRvb2xiYXJDb21wb25lbnQsXHJcbiAgICBCYXJzYUNoYXRDb250ZW50VG9vbGJhckNvbXBvbmVudCxcclxuICAgIEJhcnNhQ2hhdExpc3RDb21wb25lbnRcclxuXTtcclxuZXhwb3J0IGNvbnN0IHBpcGVzID0gW1xyXG4gICAgVXBsb2FkRmlsZVN0YXR1c1BpcGUsXHJcbiAgICBTYXBGb250UGlwZSxcclxuICAgIFNhcEZvbnRDbGFzc1BpcGUsXHJcbiAgICBTdHJpbmdUb0FycmF5UGlwZSxcclxuICAgIE5vZGVIYXNPbmVEZXB0aExldmVsUGlwZSxcclxuICAgIE1hdHJpeFZhbHVlUGlwZSxcclxuICAgIER5bmFtaWNQYWdlU2l6ZVBpcGUsXHJcbiAgICBTYXBTaXplUGlwZVxyXG5dO1xyXG5leHBvcnQgY29uc3QgZGlyZWN0aXZlcyA9IFtcclxuICAgIFdpemFyZExheW91dERpcmVjdGl2ZSxcclxuICAgIENvbFJlbmRlcmVyRGlyZWN0aXZlLFxyXG4gICAgQXBwbHlDb25kaXRpb25hbEZvcm1hdHNEaXJlY3RpdmUsXHJcbiAgICBSZXBvcnRWaWV3UmVuZGVyZXJEaXJlY3RpdmUsXHJcbiAgICBGdWxsc2NyZWVuRGlhbG9nRGlyZWN0aXZlLFxyXG4gICAgRnVsbHNjcmVlbkZpbGVzRGlyZWN0aXZlLFxyXG4gICAgRG93bmxvYWRGaWxlc0RpcmVjdGl2ZSxcclxuICAgIERpYWxvZ0hhbmRsZXJEaXJlY3RpdmVcclxuXTtcclxuXHJcbmV4cG9ydCBjb25zdCBJTklUX1NBUEZJT1JJID1cclxuICAgIChcclxuICAgICAgICBydGxTZXJ2aWNlOiBSdGxTZXJ2aWNlLFxyXG4gICAgICAgIGNvbnRlbnREZW5zaXR5U2VydmljZTogR2xvYmFsQ29udGVudERlbnNpdHlTZXJ2aWNlLFxyXG4gICAgICAgIHRoZW1lU2VydmljZTogVGhlbWluZ1NlcnZpY2UsXHJcbiAgICAgICAgcG9ydGFsU2VydmljZTogUG9ydGFsU2VydmljZSxcclxuICAgICAgICBkb21TYW5pdGl6ZXI6IERvbVNhbml0aXplclxyXG4gICAgKSA9PlxyXG4gICAgKCkgPT4ge1xyXG4gICAgICAgIHJ0bFNlcnZpY2UucnRsLm5leHQoQmFyc2FBcGkuTG9naW5Gb3JtRGF0YS5Jc1J0bCk7XHJcbiAgICAgICAgY29uc3QgWWVrYW5EaWdpdCA9ICdJUkFOWWVrYW5EaWdpdHMnO1xyXG4gICAgICAgIGxldCBmb250RmFtaWx5ID0gWWVrYW5EaWdpdDtcclxuICAgICAgICBjb25zdCBpcmFuU2FucyA9ICdCYXJzYUZvbnQnO1xyXG4gICAgICAgIGlmIChCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLkN1bHR1cmUgPT09ICdlbi1VUycpIHtcclxuICAgICAgICAgICAgZm9udEZhbWlseSA9IGlyYW5TYW5zO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgY3NzID0gYCoge1xyXG4gICAgLS1mZFRpbGVfVGl0bGVfRm9udF9XZWlnaHQ6IGJvbGQ7XHJcbiAgICAtLXNhcEZvbnRGYW1pbHk6ICcke2lyYW5TYW5zfSc7XHJcbiAgICAtLWZkRHluYW1pY1BhZ2VfVGl0bGVfRm9udF9GYW1pbHk6ICcke2ZvbnRGYW1pbHl9JztcclxuICAgIC0tZmRCdXR0b25fRm9udF9GYW1pbHk6ICcke2lyYW5TYW5zfSc7XHJcbiAgICAtLWZkSWNvbl9UYWJfQmFyX0xhYmVsX0ZvbnRfRmFtaWx5OiAnJHtpcmFuU2Fuc30nO1xyXG4gICAgLS1zYXBGb250RmFtaWx5OiAnJHtmb250RmFtaWx5fSc7XHJcbiAgICAtLWZkV2l6YXJkX0xhYmVsX0ZvbnRfRmFtaWx5OiAnJHtmb250RmFtaWx5fSc7XHJcbiAgICAtLXNhcEZvbnRMaWdodEZhbWlseTogJyR7Zm9udEZhbWlseX0nO1xyXG4gICAgLS1zYXBGb250SGVhZGVyRmFtaWx5OiAnJHtmb250RmFtaWx5fSc7XHJcbiAgICAtLV91aTVfaW5wdXRfY29tcGFjdF9oZWlnaHQ6IDEuNjI1cmVtO1xyXG4gICAgLS1zYXBGb250U2l6ZTogMC44ODVyZW07XHJcbiAgICAvKiAtLXNhcENvbnRlbnRfSGVhZGVyU2hhZG93OiBub25lOyAqL1xyXG59YCxcclxuICAgICAgICAgICAgaGVhZCA9IGRvY3VtZW50LmhlYWQgfHwgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2hlYWQnKVswXSxcclxuICAgICAgICAgICAgc3R5bGU6IGFueSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3N0eWxlJyk7XHJcblxyXG4gICAgICAgIGhlYWQuYXBwZW5kQ2hpbGQoc3R5bGUpO1xyXG5cclxuICAgICAgICBzdHlsZS50eXBlID0gJ3RleHQvY3NzJztcclxuICAgICAgICBpZiAoc3R5bGUuc3R5bGVTaGVldCkge1xyXG4gICAgICAgICAgICAvLyBUaGlzIGlzIHJlcXVpcmVkIGZvciBJRTggYW5kIGJlbG93LlxyXG4gICAgICAgICAgICBzdHlsZS5zdHlsZVNoZWV0LmNzc1RleHQgPSBjc3M7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgc3R5bGUuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoY3NzKSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBwb3J0YWxTZXJ2aWNlLnVzZXJQb3J0YWxTZXR0aW5ncyQucGlwZSgpLnN1YnNjcmliZSgodXNlclBvcnRhbFNldHRpbmdzKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IHVzZXJTZXR0aW5ncyA9IHVzZXJQb3J0YWxTZXR0aW5nc1snVXNlclBvcnRhbFNldHRpbmdzJ107XHJcbiAgICAgICAgICAgIGlmICghdXNlclNldHRpbmdzKSB7XHJcbiAgICAgICAgICAgICAgICB0aGVtZVNlcnZpY2Uuc2V0VGhlbWUoJ3NhcF9maW9yaV8zJyk7XHJcbiAgICAgICAgICAgICAgICB0aGVtZVNlcnZpY2UuY3VycmVudFRoZW1lLnN1YnNjcmliZSgodGhlbWUpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAodGhlbWUpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9ydGFsU2VydmljZS5zZXRUaGVtZShkb21TYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFJlc291cmNlVXJsKHRoZW1lLnRoZW1pbmcudGhlbWVQYXRoKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgbGV0IGNvbnRlbnREZW5zaXR5OiBhbnk7XHJcbiAgICAgICAgICAgIGxldCB0aGVtZTogYW55O1xyXG4gICAgICAgICAgICBpZiAoIXVzZXJTZXR0aW5ncykge1xyXG4gICAgICAgICAgICAgICAgaWYgKGdldERldmljZUlzTW9iaWxlKCkgfHwgZ2V0RGV2aWNlSXNQaG9uZSgpIHx8IGdldERldmljZUlzVGFibGV0KCkpIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50RGVuc2l0eSA9IENvbnRlbnREZW5zaXR5TW9kZS5DT1pZO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50RGVuc2l0eSA9IENvbnRlbnREZW5zaXR5TW9kZS5DT01QQUNUO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgeyBDb250ZW50RGVuc2l0eSRDYXB0aW9uLCBUaGVtZSRDYXB0aW9uIH0gPSB1c2VyU2V0dGluZ3M7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50RGVuc2l0eSA9IENvbnRlbnREZW5zaXR5JENhcHRpb247XHJcbiAgICAgICAgICAgICAgICB0aGVtZSA9IFRoZW1lJENhcHRpb247XHJcbiAgICAgICAgICAgICAgICBpZiAoIWNvbnRlbnREZW5zaXR5KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudERlbnNpdHkgPSBDb250ZW50RGVuc2l0eU1vZGUuQ09NUEFDVDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZiAoZ2V0RGV2aWNlSXNNb2JpbGUoKSB8fCBnZXREZXZpY2VJc1Bob25lKCkpIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnREZW5zaXR5ID0gQ29udGVudERlbnNpdHlNb2RlLkNPWlk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYgKGNvbnRlbnREZW5zaXR5KSB7XHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudERlbnNpdHlTZXJ2aWNlLnVwZGF0ZUNvbnRlbnREZW5zaXR5KGNvbnRlbnREZW5zaXR5KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGNvbnN0IGJvZHlDbGFzc0NvbXBhY3QgPSAndWk1LWNvbnRlbnQtZGVuc2l0eS1jb21wYWN0JztcclxuICAgICAgICAgICAgICAgIGNvbnN0IGJvZHlDbGFzc0NvbmRlbnNlZCA9ICd1aTUtY29udGVudC1kZW5zaXR5LWNvbmRlbnNlZCc7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBib2R5Q2xhc3NDb3p5ID0gJ3VpNS1jb250ZW50LWRlbnNpdHktY296eSc7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBib2R5ID0gZG9jdW1lbnQ/LmJvZHk7XHJcbiAgICAgICAgICAgICAgICBzd2l0Y2ggKGNvbnRlbnREZW5zaXR5KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnY29uZGVuc2VkJzpcclxuICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFib2R5LmNsYXNzTGlzdC5jb250YWlucyhib2R5Q2xhc3NDb25kZW5zZWQpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9keS5jbGFzc0xpc3QuYWRkKGJvZHlDbGFzc0NvbmRlbnNlZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5yZW1vdmUoYm9keUNsYXNzQ29tcGFjdCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5yZW1vdmUoYm9keUNsYXNzQ296eSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJ2NvenknOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWJvZHkuY2xhc3NMaXN0LmNvbnRhaW5zKGJvZHlDbGFzc0NvenkpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9keS5jbGFzc0xpc3QuYWRkKGJvZHlDbGFzc0NvenkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9keS5jbGFzc0xpc3QucmVtb3ZlKGJvZHlDbGFzc0NvbXBhY3QpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9keS5jbGFzc0xpc3QucmVtb3ZlKGJvZHlDbGFzc0NvbmRlbnNlZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnY29tcGFjdCc6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghYm9keS5jbGFzc0xpc3QuY29udGFpbnMoYm9keUNsYXNzQ29tcGFjdCkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5hZGQoYm9keUNsYXNzQ29tcGFjdCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5yZW1vdmUoYm9keUNsYXNzQ296eSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5yZW1vdmUoYm9keUNsYXNzQ29uZGVuc2VkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZiAodGhlbWUpIHtcclxuICAgICAgICAgICAgICAgIGlmICh0aGVtZS5pbmRleE9mKCdkYXJrJykgPiAtMSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnY29sb3Itc2NoZW1lJywgJ2RhcmsnKTtcclxuICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2V0QXR0cmlidXRlKCdkYXRhLW1vZGUnLCAnZGFyaycpO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2NvbG9yLXNjaGVtZScsICdsaWdodCcpO1xyXG4gICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2RhdGEtbW9kZScsICdsaWdodCcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgdGhlbWVTZXJ2aWNlLnNldFRoZW1lKHRoZW1lKTtcclxuICAgICAgICAgICAgICAgIHRoZW1lU2VydmljZS5jdXJyZW50VGhlbWUuc3Vic2NyaWJlKCh0aGVtZSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGVtZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3J0YWxTZXJ2aWNlLnNldFRoZW1lKGRvbVNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwodGhlbWUudGhlbWluZy50aGVtZVBhdGgpKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfTtcclxuIl19
|
|
563
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1zYXAtdWkvc3JjL2xpYi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTJDLGtCQUFrQixFQUFrQixNQUFNLHVCQUF1QixDQUFDO0FBQ3BILE9BQU8sRUFBRSxRQUFRLEVBQUUsaUJBQWlCLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQWlCLE1BQU0sc0JBQXNCLENBQUM7QUFDdkgsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDL0UsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDdEcsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDckYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBQ3ZILE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQzdGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLCtEQUErRCxDQUFDO0FBQy9HLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ3RHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzFGLE9BQU8s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Q0FBQztnQkFDSixRQUFRLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLE9BQU8sQ0FBQyxDQUFDO2dCQUNwRSxRQUFRLENBQUMsZUFBZSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDaEUsQ0FBQztZQUNELFlBQVksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDN0IsWUFBWSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtnQkFDMUMsSUFBSSxLQUFLLEVBQUUsQ0FBQztvQkFDUixhQUFhLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyw4QkFBOEIsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pHLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJ0bFNlcnZpY2UsIEdsb2JhbENvbnRlbnREZW5zaXR5U2VydmljZSwgQ29udGVudERlbnNpdHlNb2RlLCBUaGVtaW5nU2VydmljZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XG5pbXBvcnQgeyBCYXJzYUFwaSwgZ2V0RGV2aWNlSXNNb2JpbGUsIGdldERldmljZUlzUGhvbmUsIGdldERldmljZUlzVGFibGV0LCBQb3J0YWxTZXJ2aWNlIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xuaW1wb3J0IHsgVWlUZXh0RmllbGRDb21wb25lbnQgfSBmcm9tICcuL3VpLXRleHQtZmllbGQvdWktdGV4dC1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTHlMYXlvdXRGaWVsZExhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi9seS1sYXlvdXQtZmllbGQtbGFiZWwvbHktbGF5b3V0LWZpZWxkLWxhYmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaUNoZWNrQm94Q29tcG9uZW50IH0gZnJvbSAnLi91aS1jaGVjay1ib3gvdWktY2hlY2stYm94LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVNpbXBsZUNvbWJvQ29tcG9uZW50IH0gZnJvbSAnLi91aS1zaW1wbGUtY29tYm8vdWktc2ltcGxlLWNvbWJvLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVJhZGlvR3JvdXBDb21wb25lbnQgfSBmcm9tICcuL3VpLXJhZGlvLWdyb3VwL3VpLXJhZGlvLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaUdyaWRDb21wb25lbnQgfSBmcm9tICcuL3VpLWdyaWQvdWktZ3JpZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTHlMYXlvdXRDb250YWluZXJPZlJvb3RDb21wb25lbnQgfSBmcm9tICcuL2x5LWxheW91dC1jb250YWluZXItb2Ytcm9vdC9seS1sYXlvdXQtY29udGFpbmVyLW9mLXJvb3QuY29tcG9uZW50JztcbmltcG9ydCB7IEx5TGF5b3V0UGFuZWxDb21wb25lbnQgfSBmcm9tICcuL2x5LWxheW91dC1wYW5lbC9seS1sYXlvdXQtcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IFVpUmVhZE9ubHlGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vdWktcmVhZC1vbmx5LWZpZWxkL3VpLXJlYWQtb25seS1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlDb250YWluZXJXaXRoQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi91aS1jb250YWluZXItd2l0aC1idXR0b24vdWktY29udGFpbmVyLXdpdGgtYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVBpY3R1cmVGaWxlQ29tcG9uZW50IH0gZnJvbSAnLi91aS1waWN0dXJlLWZpbGUvdWktcGljdHVyZS1maWxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaU1vSW5mb1VsdkNvbWJvQ29tcG9uZW50IH0gZnJvbSAnLi91aS1tby1pbmZvLXVsdi1jb21iby91aS1tby1pbmZvLXVsdi1jb21iby5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlNdWx0aVNlbGVjdENvbWJvQ29tcG9uZW50IH0gZnJvbSAnLi91aS1tdWx0aS1zZWxlY3QtY29tYm8vdWktbXVsdGktc2VsZWN0LWNvbWJvLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaU51bURlY2ltYWxVaUNvbXBvbmVudCB9IGZyb20gJy4vdWktbnVtLWRlY2ltYWwtdWkvdWktbnVtLWRlY2ltYWwtdWkuY29tcG9uZW50JztcbmltcG9ydCB7IFVpTnVtSW50VWlDb21wb25lbnQgfSBmcm9tICcuL3VpLW51bS1pbnQtdWkvdWktbnVtLWludC11aS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlUaW1lU3BhbkNvbXBvbmVudCB9IGZyb20gJy4vdWktdGltZS1zcGFuL3VpLXRpbWUtc3Bhbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlGaWxlTGluZWFyTGlzdEJveENvbXBvbmVudCB9IGZyb20gJy4vdWktZmlsZS1saW5lYXItbGlzdC1ib3gvdWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50JztcbmltcG9ydCB7IEx5RW1wdHlTcGFjZUNvbXBvbmVudCB9IGZyb20gJy4vbHktZW1wdHktc3BhY2UvbHktZW1wdHktc3BhY2UuY29tcG9uZW50JztcbmltcG9ydCB7IFVpU2luZ2xlUGljdHVyZUNvbXBvbmVudCB9IGZyb20gJy4vdWktc2luZ2xlLXBpY3R1cmUvdWktc2luZ2xlLXBpY3R1cmUuY29tcG9uZW50JztcbmltcG9ydCB7IFVsdlNlbGVjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vdWx2LXNlbGVjdGlvbi91bHYtc2VsZWN0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVbHZUb29sYmFyQ29tcG9uZW50IH0gZnJvbSAnLi91bHYtdG9vbGJhci91bHYtdG9vbGJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWx2UGFnaW5nQ29tcG9uZW50IH0gZnJvbSAnLi91bHYtcGFnaW5nL3Vsdi1wYWdpbmcuY29tcG9uZW50JztcbmltcG9ydCB7IFVpR3JpZFNvcnRTZXR0aW5nQ29tcG9uZW50IH0gZnJvbSAnLi91aS1ncmlkLXNvcnQtc2V0dGluZy91aS1ncmlkLXNvcnQtc2V0dGluZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlHcmlkU29ydEl0ZW1Db21wb25lbnQgfSBmcm9tICcuL3VpLWdyaWQtc29ydC1pdGVtL3VpLWdyaWQtc29ydC1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaUdyaWRDb2x1bW5zQ29tcG9uZW50IH0gZnJvbSAnLi91aS1ncmlkLWNvbHVtbnMvdWktZ3JpZC1jb2x1bW5zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXNrQ29tcG9uZW50IH0gZnJvbSAnLi9tYXNrL21hc2suY29tcG9uZW50JztcbmltcG9ydCB7IFVpSW5mb0JhclBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi91aS1pbmZvLWJhci1wYW5lbC91aS1pbmZvLWJhci1wYW5lbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlGb3JtUGFuZWxDb21wb25lbnQgfSBmcm9tICcuL3VpLWZvcm0tcGFuZWwvdWktZm9ybS1wYW5lbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlTZWFyY2hDb21tYW5kSW5mb1VpQ29tcG9uZW50IH0gZnJvbSAnLi91aS1zZWFyY2gtY29tbWFuZC1pbmZvLXVpL3VpLXNlYXJjaC1jb21tYW5kLWluZm8tdWkuY29tcG9uZW50JztcbmltcG9ydCB7IFVsdlNldHRpbmdzQ29tcG9uZW50IH0gZnJvbSAnLi91bHYtc2V0dGluZ3MvdWx2LXNldHRpbmdzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVRpbnltY2VDb21wb25lbnQgfSBmcm9tICcuL3VpLXRpbnltY2UvdWktdGlueW1jZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL3VpLWJ1dHRvbi91aS1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IFVpRGF0ZVRpbWVDb21wb25lbnQgfSBmcm9tICcuL3VpLWRhdGUtdGltZS91aS1kYXRlLXRpbWUuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0tZGlhbG9nL2Zvcm0tZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJGYWNldEtleVZhbHVlQ29tcG9uZW50IH0gZnJvbSAnLi9oZWFkZXItZmFjZXQta2V5LXZhbHVlL2hlYWRlci1mYWNldC1rZXktdmFsdWUuY29tcG9uZW50JztcbmltcG9ydCB7IEhlYWRlckZhY2V0Rm9ybUNvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyLWZhY2V0LWZvcm0vaGVhZGVyLWZhY2V0LWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IEhlYWRlckZhY2V0UmF0ZUNvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyLWZhY2V0LXJhdGUvaGVhZGVyLWZhY2V0LXJhdGUuY29tcG9uZW50JztcbmltcG9ydCB7IEhlYWRlckZhY2V0UHJvZ3Jlc3NDb21wb25lbnQgfSBmcm9tICcuL2hlYWRlci1mYWNldC1wcm9ncmVzcy9oZWFkZXItZmFjZXQtcHJvZ3Jlc3MuY29tcG9uZW50JztcbmltcG9ydCB7IEhlYWRlckZhY2V0TWljcm9jaGFydENvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyLWZhY2V0LW1pY3JvY2hhcnQvaGVhZGVyLWZhY2V0LW1pY3JvY2hhcnQuY29tcG9uZW50JztcbmltcG9ydCB7IEhlYWRlckZhY2V0UGxhaW5UZXh0Q29tcG9uZW50IH0gZnJvbSAnLi9oZWFkZXItZmFjZXQtcGxhaW4tdGV4dC9oZWFkZXItZmFjZXQtcGxhaW4tdGV4dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlNb0luZm9TdWJGb3JtVWlDb21wb25lbnQgfSBmcm9tICcuL3VpLW1vLWluZm8tc3ViLWZvcm0tdWkvdWktbW8taW5mby1zdWItZm9ybS11aS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVzcG9uc2l2ZVRvb2xiYXJDb21wb25lbnQgfSBmcm9tICcuL3Jlc3BvbnNpdmUtdG9vbGJhci9yZXNwb25zaXZlLXRvb2xiYXIuY29tcG9uZW50JztcbmltcG9ydCB7IFJlc3BvbnNpdmVUb29sYmFyUmVuZGVyZXJDb21wb25lbnQgfSBmcm9tICcuL3Jlc3BvbnNpdmUtdG9vbGJhci1yZW5kZXJlci9yZXNwb25zaXZlLXRvb2xiYXItcmVuZGVyZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFVpVGV4dEFyZWFDb21wb25lbnQgfSBmcm9tICcuL3VpLXRleHQtYXJlYS91aS10ZXh0LWFyZWEuY29tcG9uZW50JztcbmltcG9ydCB7IExheW91dENvbnRyb2xDb21wb25lbnQgfSBmcm9tICcuL2xheW91dC1jb250cm9sL2xheW91dC1jb250cm9sLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMYXlvdXRXaXphcmRDb21wb25lbnQgfSBmcm9tICcuL2xheW91dC13aXphcmQvbGF5b3V0LXdpemFyZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybVdpemFyZENvbXBvbmVudCB9IGZyb20gJy4vZm9ybS13aXphcmQvZm9ybS13aXphcmQuY29tcG9uZW50JztcbmltcG9ydCB7IFdpemFyZExheW91dERpcmVjdGl2ZSB9IGZyb20gJy4vd2l6YXJkLWxheW91dC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRm9ybURpYWxvZ0xlc3NDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0tZGlhbG9nLWxlc3MvZm9ybS1kaWFsb2ctbGVzcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmljaFRleHRTdGF0aWNDb21wb25lbnQgfSBmcm9tICcuL3JpY2gtdGV4dC1zdGF0aWMvcmljaC10ZXh0LXN0YXRpYy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlQaWN0dXJlc0luZm9Db21wb25lbnQgfSBmcm9tICcuL3VpLXBpY3R1cmVzLWluZm8vdWktcGljdHVyZXMtaW5mby5jb21wb25lbnQnO1xuaW1wb3J0IHsgTHlIb3Jpem9udGFsTGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9seS1ob3Jpem9udGFsLWxheW91dC9seS1ob3Jpem9udGFsLWxheW91dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTHlWZXJ0aWNhbExheW91dENvbXBvbmVudCB9IGZyb20gJy4vbHktdmVydGljYWwtbGF5b3V0L2x5LXZlcnRpY2FsLWxheW91dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTHlUYWJDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL2x5LXRhYi1jb250YWluZXIvbHktdGFiLWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTHlUYWJQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9seS10YWItcGFnZS9seS10YWItcGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTHlMYWJlbENvbXBvbmVudCB9IGZyb20gJy4vbHktbGFiZWwvbHktbGFiZWwuY29tcG9uZW50JztcbmltcG9ydCB7IENvbFJlbmRlcmVyRGlyZWN0aXZlIH0gZnJvbSAnLi9jb2wtcmVuZGVyZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IFVpTW9JbmZvQ29tYm9WaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL3VpLW1vLWluZm8tY29tYm8tdmlld2VyL3VpLW1vLWluZm8tY29tYm8tdmlld2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVbE1zZ0JveEFkYXB0ZXJDb21wb25lbnQgfSBmcm9tICcuL3VsLW1zZy1ib3gtYWRhcHRlci91bC1tc2ctYm94LWFkYXB0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEhlYWRlckF2YXRhckNvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyLWF2YXRhci9oZWFkZXItYXZhdGFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBcHBseUNvbmRpdGlvbmFsRm9ybWF0c0RpcmVjdGl2ZSB9IGZyb20gJy4vYXBwbHktY29uZGl0aW9uYWwtZm9ybW1hdGluZ3MuZGlyZWN0aXZlJztcbmltcG9ydCB7IFVpV29ya2Zsb3dQYW5lbFVpQ29tcG9uZW50IH0gZnJvbSAnLi91aS13b3JrZmxvdy1wYW5lbC11aS91aS13b3JrZmxvdy1wYW5lbC11aS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWx2Q29udGV4dE1lbnVDb21wb25lbnQgfSBmcm9tICcuL3Vsdi1jb250ZXh0LW1lbnUvdWx2LWNvbnRleHQtbWVudS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWxMb2FkaW5nTWFza1VpQ29tcG9uZW50IH0gZnJvbSAnLi91bC1sb2FkaW5nLW1hc2stdWkvdWwtbG9hZGluZy1tYXNrLXVpLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVRleHRGaWVsZEF1dG9Db21wbGV0ZUNvbXBvbmVudCB9IGZyb20gJy4vdWktdGV4dC1maWVsZC1hdXRvLWNvbXBsZXRlL3VpLXRleHQtZmllbGQtYXV0by1jb21wbGV0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2FwdGNoYUZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi9jYXB0Y2hhLWZpZWxkL2NhcHRjaGEtZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7IEx5U2ltcGxlTGFiZWxDb21wb25lbnQgfSBmcm9tICcuL2x5LXNpbXBsZS1sYWJlbC9seS1zaW1wbGUtbGFiZWwuY29tcG9uZW50JztcbmltcG9ydCB7IEdsb2JhbFNlYXJjaFBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9nbG9iYWwtc2VhcmNoLXBhbmVsL2dsb2JhbC1zZWFyY2gtcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IEdsb2JhbFNlYXJjaE1vZHVsZUNvbXBvbmVudCB9IGZyb20gJy4vZ2xvYmFsLXNlYXJjaC1tb2R1bGUvZ2xvYmFsLXNlYXJjaC1tb2R1bGUuY29tcG9uZW50JztcbmltcG9ydCB7IEdsb2JhbFNlYXJjaENvbXBvbmVudCB9IGZyb20gJy4vZ2xvYmFsLXNlYXJjaC9nbG9iYWwtc2VhcmNoLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIeXBlcmxpbmtDb21wb25lbnQgfSBmcm9tICcuL2h5cGVybGluay9oeXBlcmxpbmsuY29tcG9uZW50JztcbmltcG9ydCB7IFN0YXRpY1RleHRDb21wb25lbnQgfSBmcm9tICcuL3N0YXRpYy10ZXh0L3N0YXRpYy10ZXh0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVbFRvYXN0QWRhcHRlckNvbXBvbmVudCB9IGZyb20gJy4vdWwtdG9hc3QtYWRhcHRlci91bC10b2FzdC1hZGFwdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNZXNzYWdlU3RyaXBDb21wb25lbnQgfSBmcm9tICcuL21lc3NhZ2Utc3RyaXAvbWVzc2FnZS1zdHJpcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlMaW5lYXJMaXN0Q29udGFpbmVyV2l0aEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vdWktbGluZWFyLWxpc3QtY29udGFpbmVyLXdpdGgtYnV0dG9uL3VpLWxpbmVhci1saXN0LWNvbnRhaW5lci13aXRoLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnVuZGFtZW50YWxEeW5hbWljRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vZnVuZGFtZW50YWwtZHluYW1pYy1mb3JtL2Z1bmRhbWVudGFsLWR5bmFtaWMtZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGF5b3V0QWN0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0LWFjdGlvbnMvbGF5b3V0LWFjdGlvbnMuY29tcG9uZW50JztcbmltcG9ydCB7IEx5TGF5b3V0Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9seS1sYXlvdXQtY29udGFpbmVyL2x5LWxheW91dC1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFVpVWx2Rm9ybU11bHRpU2VsZWN0VWlDb21wb25lbnQgfSBmcm9tICcuL3VpLXVsdi1mb3JtLW11bHRpLXNlbGVjdC11aS91aS11bHYtZm9ybS1tdWx0aS1zZWxlY3QtdWkuY29tcG9uZW50JztcbmltcG9ydCB7IFVsdkZvcm1NdWx0aVNlbGVjdENvbXBvbmVudCB9IGZyb20gJy4vdWx2LWZvcm0tbXVsdGktc2VsZWN0L3Vsdi1mb3JtLW11bHRpLXNlbGVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWx2Q29sdW1uU2V0dGluZ3NDb21wb25lbnQgfSBmcm9tICcuL3Vsdi1jb2x1bW4tc2V0dGluZ3MvdWx2LWNvbHVtbi1zZXR0aW5ncy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWx2RmlsdGVyU2V0dGluZ3NDb21wb25lbnQgfSBmcm9tICcuL3Vsdi1maWx0ZXItc2V0dGluZ3MvdWx2LWZpbHRlci1zZXR0aW5ncy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWx2U29ydFNldHRpbmdzQ29tcG9uZW50IH0gZnJvbSAnLi91bHYtc29ydC1zZXR0aW5ncy91bHYtc29ydC1zZXR0aW5ncy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWx2R3JvdXBieVNldHRpbmdzQ29tcG9uZW50IH0gZnJvbSAnLi91bHYtZ3JvdXBieS1zZXR0aW5ncy91bHYtZ3JvdXBieS1zZXR0aW5ncy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FMaXN0RmlsZUxpbmVhckNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtbGlzdC1maWxlLWxpbmVhci9iYXJzYS1saXN0LWZpbGUtbGluZWFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVBkZlZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vdWktcGRmLXZpZXdlci91aS1wZGYtdmlld2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYVRpbnllbWNlQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS10aW55ZW1jZS9iYXJzYS10aW55ZW1jZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlNb25hY29FZGl0b3JDb21wb25lbnQgfSBmcm9tICcuL3VpLW1vbmFjby1lZGl0b3IvdWktbW9uYWNvLWVkaXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FNb25hY29FZGl0b3JDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLW1vbmFjby1lZGl0b3IvYmFyc2EtbW9uYWNvLWVkaXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FEYXRlVGltZVBpY2tlckNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtZGF0ZS10aW1lLXBpY2tlci9iYXJzYS1kYXRlLXRpbWUtcGlja2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYVRyZWVJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS10cmVlLWl0ZW0vYmFyc2EtdHJlZS1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVcGxvYWRGaWxlU3RhdHVzUGlwZSB9IGZyb20gJy4vdXBsb2FkLWZpbGUtc3RhdHVzLnBpcGUnO1xuaW1wb3J0IHsgVWlTd2l0Y2hCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL3VpLXN3aXRjaC1idXR0b24vdWktc3dpdGNoLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlDb2xvclVpQ29tcG9uZW50IH0gZnJvbSAnLi91aS1jb2xvci11aS91aS1jb2xvci11aS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTHlMaW5lQ29tcG9uZW50IH0gZnJvbSAnLi9seS1saW5lL2x5LWxpbmUuY29tcG9uZW50JztcbmltcG9ydCB7IFVpVWx2TWFpblVpQ29tcG9uZW50IH0gZnJvbSAnLi91aS11bHYtbWFpbi11aS91aS11bHYtbWFpbi11aS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVwb3J0TmF2aWdhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnQtbmF2aWdhdG9yL3JlcG9ydC1uYXZpZ2F0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IE1hbmFnZUZpbHRlcnNSZXBvcnRDb21wb25lbnQgfSBmcm9tICcuL21hbmFnZS1maWx0ZXJzLXJlcG9ydC9tYW5hZ2UtZmlsdGVycy1yZXBvcnQuY29tcG9uZW50JztcbmltcG9ydCB7IFJlcG9ydFNlYXJjaEZpZWxkc01hbmFnZUNvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0LXNlYXJjaC1maWVsZHMtbWFuYWdlL3JlcG9ydC1zZWFyY2gtZmllbGRzLW1hbmFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVwb3J0U2VhcmNoRmllbGRzSGlkZGVuU2V0dGluZ3NDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydC1zZWFyY2gtZmllbGRzLWhpZGRlbi1zZXR0aW5ncy9yZXBvcnQtc2VhcmNoLWZpZWxkcy1oaWRkZW4tc2V0dGluZ3MuY29tcG9uZW50JztcbmltcG9ydCB7IFNlYXJjaFBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9zZWFyY2gtcGFuZWwvc2VhcmNoLXBhbmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSZXBvcnRTZWFyY2hQYW5lbFNhdmVDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydC1zZWFyY2gtcGFuZWwtc2F2ZS9yZXBvcnQtc2VhcmNoLXBhbmVsLXNhdmUuY29tcG9uZW50JztcbmltcG9ydCB7IFVpR3JpZEZpbHRlclNldHRpbmdzQ29tcG9uZW50IH0gZnJvbSAnLi91aS1ncmlkLWZpbHRlci1zZXR0aW5ncy91aS1ncmlkLWZpbHRlci1zZXR0aW5ncy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlHcmlkRmlsdGVySXRlbUNvbXBvbmVudCB9IGZyb20gJy4vdWktZ3JpZC1maWx0ZXItaXRlbS91aS1ncmlkLWZpbHRlci1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTYXBGb250UGlwZSB9IGZyb20gJy4vc2FwLWZvbnQucGlwZSc7XG5pbXBvcnQgeyBTYXBGb250Q2xhc3NQaXBlIH0gZnJvbSAnLi9zYXAtZm9udC1jbGFzcy5waXBlJztcbmltcG9ydCB7IFVpRGF0ZVJhbmdlRXhDb21wb25lbnQgfSBmcm9tICcuL3VpLWRhdGUtcmFuZ2UtZXgvdWktZGF0ZS1yYW5nZS1leC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWxOb3RpZnlQb3B1cENvbXBvbmVudCB9IGZyb20gJy4vdWwtbm90aWZ5LXBvcHVwL3VsLW5vdGlmeS1wb3B1cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlUYWJsZVZpZXdDb21wb25lbnQgfSBmcm9tICcuL3VpLXRhYmxlLXZpZXcvdWktdGFibGUtdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlMaXN0Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vdWktbGlzdC12aWV3L3VpLWxpc3Qtdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3RyaW5nVG9BcnJheVBpcGUsIFVpQ2FyZFZpZXdDb21wb25lbnQgfSBmcm9tICcuL3VpLWNhcmQtdmlldy91aS1jYXJkLXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IFVpUmVwb3J0Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi91aS1yZXBvcnQtY29udGFpbmVyL3VpLXJlcG9ydC1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IE5vRGF0YUNvbXBvbmVudCB9IGZyb20gJy4vbm8tZGF0YS9uby1kYXRhLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb2x1bW5SZW5kZXJlckNvbXBvbmVudCB9IGZyb20gJy4vY29sdW1uLXJlbmRlcmVyL2NvbHVtbi1yZW5kZXJlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSW5saW5lU2F2ZUFuZENhbmNlbENvbXBvbmVudCB9IGZyb20gJy4vaW5saW5lLXNhdmUtYW5kLWNhbmNlbC9pbmxpbmUtc2F2ZS1hbmQtY2FuY2VsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVRyZWVWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi91aS10cmVlLXZpZXcvdWktdHJlZS12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVRyZWVDb21wb25lbnQgfSBmcm9tICcuL3VpLXRyZWUvdWktdHJlZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlDYWxlbmRhckNvbXBvbmVudCB9IGZyb20gJy4vdWktY2FsZW5kYXIvdWktY2FsZW5kYXIuY29tcG9uZW50JztcbmltcG9ydCB7IE5vZGVIYXNPbmVEZXB0aExldmVsUGlwZSB9IGZyb20gJy4vYmFyc2EtdHJlZS1pdGVtL25vZGUtaGFzLW9uZS1kZXB0aC1sZXZlbC5waXBlJztcbmltcG9ydCB7IFVpQXNwUmVwb3J0Vmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi91aS1hc3AtcmVwb3J0LXZpZXdlci91aS1hc3AtcmVwb3J0LXZpZXdlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlHcmFwaENvbXBvbmVudCB9IGZyb20gJy4vdWktZ3JhcGgvdWktZ3JhcGguY29tcG9uZW50JztcbmltcG9ydCB7IFVpRXhjZXB0aW9uRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vdWktZXhjZXB0aW9uLWZvcm0vdWktZXhjZXB0aW9uLWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IFVpRWRpdGFibGVHcmlkQ29tcG9uZW50IH0gZnJvbSAnLi91aS1lZGl0YWJsZS1ncmlkL3VpLWVkaXRhYmxlLWdyaWQuY29tcG9uZW50JztcbmltcG9ydCB7IENvbHVtbk1hdHJpeFJlbmRlcmVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb2x1bW4tbWF0cml4LXJlbmRlcmVyL2NvbHVtbi1tYXRyaXgtcmVuZGVyZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFVpTWF0cml4Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vdWktbWF0cml4LXZpZXcvdWktbWF0cml4LXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IEN1c3RvbURhdGVUaW1lQ29tcG9uZW50IH0gZnJvbSAnLi9jdXN0b20tZGF0ZS10aW1lL2N1c3RvbS1kYXRlLXRpbWUuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdHJpeFZhbHVlUGlwZSB9IGZyb20gJy4vY29sdW1uLW1hdHJpeC1yZW5kZXJlci9tYXRyaXgtdmFsdWUucGlwZSc7XG5pbXBvcnQgeyBCYXJzYUFzcFZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtYXNwLXZpZXdlci9iYXJzYS1hc3Atdmlld2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWxlSW5EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2ZpbGUtaW4tZGlhbG9nL2ZpbGUtaW4tZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEeW5hbWljUGFnZVNpemVQaXBlIH0gZnJvbSAnLi9keW5hbWljLXBhZ2Utc2l6ZS5waXBlJztcbmltcG9ydCB7IFJlcG9ydFZpZXdSZW5kZXJlckRpcmVjdGl2ZSB9IGZyb20gJy4vcmVwb3J0LXZpZXctcmVuZGVyZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IFVpTW9JbmZvR2VuZXJhbE9iamVjdFVpQ29tcG9uZW50IH0gZnJvbSAnLi91aS1tby1pbmZvLWdlbmVyYWwtb2JqZWN0LXVpL3VpLW1vLWluZm8tZ2VuZXJhbC1vYmplY3QtdWkuY29tcG9uZW50JztcbmltcG9ydCB7IFVpR2FudHRDaGFydENvbXBvbmVudCB9IGZyb20gJy4vdWktZ2FudHQtY2hhcnQvdWktZ2FudHQtY2hhcnQuY29tcG9uZW50JztcbmltcG9ydCB7IEdhbnR0RGh0bWxDaGFydFZpZXdDb21wb25lbnQgfSBmcm9tICcuL2dhbnR0LWRodG1sLWNoYXJ0LXZpZXcvZ2FudHQtZGh0bWwtY2hhcnQtdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnVsbHNjcmVlbkRpYWxvZ0RpcmVjdGl2ZSB9IGZyb20gJy4vZnVsbHNjcmVlbi1kaWFsb2cuZGlyZWN0aXZlJztcbmltcG9ydCB7IFByb2dyZXNzSW5kaWNhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9wcm9ncmVzcy1pbmRpY2F0b3IvcHJvZ3Jlc3MtaW5kaWNhdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDYXJkVmlld0NvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL2NhcmQtdmlldy1jb250ZW50L2NhcmQtdmlldy1jb250ZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDYXJkSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY2FyZC1pdGVtL2NhcmQtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlDYXJkVmlld0hvcml6b250YWxHcm91cENvbXBvbmVudCB9IGZyb20gJy4vdWktY2FyZC12aWV3LWhvcml6b250YWwtZ3JvdXAvdWktY2FyZC12aWV3LWhvcml6b250YWwtZ3JvdXAuY29tcG9uZW50JztcbmltcG9ydCB7IFRpdGxlQ29tcG9uZW50IH0gZnJvbSAnLi90aXRsZS90aXRsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FVbHZNYWluQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS11bHYtbWFpbi9iYXJzYS11bHYtbWFpbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGlzdEl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2xpc3QtaXRlbS9saXN0LWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IEh0cmVlQ3JlYXRlTmV3Q29tcG9uZW50IH0gZnJvbSAnLi9odHJlZS1jcmVhdGUtbmV3L2h0cmVlLWNyZWF0ZS1uZXcuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhVGFibGVSb3dDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXRhYmxlLXJvdy9iYXJzYS10YWJsZS1yb3cuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhVGFibGVDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXRhYmxlLWNvbHVtbi9iYXJzYS10YWJsZS1jb2x1bW4uY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhVGFibGVIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXRhYmxlLWhlYWRlci9iYXJzYS10YWJsZS1oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEJyZWFkY3J1bWJDb21wb25lbnQgfSBmcm9tICcuL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlMYWJlbENvbXBvbmVudCB9IGZyb20gJy4vdWktbGFiZWwvdWktbGFiZWwuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1Ub29sYmFyQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtLXRvb2xiYXItYnV0dG9uL2Zvcm0tdG9vbGJhci1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhU2VhcmNoRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2Etc2VhcmNoLWZvcm0vYmFyc2Etc2VhcmNoLWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IFJlcG9ydE5ld1RvcEZvcm1Db21wb25lbnQgfSBmcm9tICcuL3JlcG9ydC1uZXctdG9wLWZvcm0vcmVwb3J0LW5ldy10b3AtZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FOZXR3b3JrT2ZmbGluZUNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtbmV0d29yay1vZmZsaW5lL2JhcnNhLW5ldHdvcmstb2ZmbGluZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmxvYlZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vYmxvYi12aWV3ZXIvYmxvYi12aWV3ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEZpbGVWaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL2ZpbGUtdmlld2VyL2ZpbGUtdmlld2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWxlVmlld2VyQ29udGVudENvbXBvbmVudCB9IGZyb20gJy4vZmlsZS12aWV3ZXItY29udGVudC9maWxlLXZpZXdlci1jb250ZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWxlVmlld2VyUG9wb3ZlckNvbXBvbmVudCB9IGZyb20gJy4vZmlsZS12aWV3ZXItcG9wb3Zlci9maWxlLXZpZXdlci1wb3BvdmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEb3dubG9hZEZpbGVzRGlyZWN0aXZlIH0gZnJvbSAnLi9kb3dubG9hZC1maWxlcy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnVsbHNjcmVlbkZpbGVzRGlyZWN0aXZlIH0gZnJvbSAnLi9mdWxsc2NyZWVuLWZpbGVzLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25JdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9ub3RpZmljYXRpb24taXRlbS9ub3RpZmljYXRpb24taXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FDYXJ0YWJsZVRlbXBsYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1jYXJ0YWJsZS10ZW1wbGF0ZS9iYXJzYS1jYXJ0YWJsZS10ZW1wbGF0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FDYXJ0YWJsZUdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1ncm91cC1jYXJ0YWJsZS9iYXJzYS1jYXJ0YWJsZS1ncm91cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FDYXJ0YWJsZUZvcm1Db21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWNhcnRhYmxlLWZvcm0vYmFyc2EtY2FydGFibGUtZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FDb2x1bW5JbmRpY2F0b3JDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWNvbHVtbi1pbmRpY2F0b3IvYmFyc2EtY29sdW1uLWluZGljYXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FGaWVsZEtleVZhbHVlQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1maWVsZC1rZXktdmFsdWUvYmFyc2EtZmllbGQta2V5LXZhbHVlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYVRvb2xiYXJpdGVtU2VhcmNoQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS10b29sYmFyaXRlbS1zZWFyY2gvYmFyc2EtdG9vbGJhcml0ZW0tc2VhcmNoLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaUh0bWxWaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL3VpLWh0bWwtdmlld2VyL3VpLWh0bWwtdmlld2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYVBpc2huYW1heWVzaFBheWFtQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1waXNobmFtYXllc2gtcGF5YW0vYmFyc2EtcGlzaG5hbWF5ZXNoLXBheWFtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYVRleHRFbGxpcHNpc0NvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtdGV4dC1lbGxpcHNpcy9iYXJzYS10ZXh0LWVsbGlwc2lzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUxpc3RGaWxlTGluZWFyR21haWxDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWxpc3QtZmlsZS1saW5lYXItZ21haWwvYmFyc2EtbGlzdC1maWxlLWxpbmVhci1nbWFpbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FMaW5rYWJsZUl0ZW1zUGFuZWxDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWxpbmthYmxlLWl0ZW1zLXBhbmVsL2JhcnNhLWxpbmthYmxlLWl0ZW1zLXBhbmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUVudW1NZW51QnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1lbnVtLW1lbnUtYnV0dG9uL2JhcnNhLWVudW0tbWVudS1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhQ2FyZExheW91dFBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1jYXJkLWxheW91dC1wYW5lbC9iYXJzYS1jYXJkLWxheW91dC1wYW5lbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FIb3Jpem9udGFsRmxleFBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1ob3Jpem9udGFsLWZsZXgtcGFuZWwvYmFyc2EtaG9yaXpvbnRhbC1mbGV4LXBhbmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUJhc2VMYXlvdXRQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtYmFzZS1wYW5lbC9iYXJzYS1iYXNlLWxheW91dC1wYW5lbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FCYXJQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtYmFyLXBhbmVsL2JhcnNhLWJhci1wYW5lbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FGb3JtU2lkZUNvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWZvcm0tc2lkZS1jb250ZW50L2JhcnNhLWZvcm0tc2lkZS1jb250ZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEaWFsb2dIYW5kbGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaWFsb2ctaGFuZGxlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQmFyc2FTaW1wbGVGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1zaW1wbGUtZm9ybS9iYXJzYS1zaW1wbGUtZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybVRvb2xiYXJDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0tdG9vbGJhci9mb3JtLXRvb2xiYXIuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhTGlzdExheW91dFBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1saXN0LWxheW91dC1wYW5lbC9iYXJzYS1saXN0LWxheW91dC1wYW5lbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FHcmlkTGF5b3V0UGFuZWxDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWdyaWQtbGF5b3V0LXBhbmVsL2JhcnNhLWdyaWQtbGF5b3V0LXBhbmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUR5bmFtaWNGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtZHluYW1pYy1maWVsZC9iYXJzYS1keW5hbWljLWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTYXBTaXplUGlwZSB9IGZyb20gJy4vc2FwLXNpemUucGlwZSc7XG5pbXBvcnQgeyBVaU11bHRpU2VsZWN0UmFkaW9Db21wb25lbnQgfSBmcm9tICcuL3VpLW11bHRpLXNlbGVjdC1yYWRpby91aS1tdWx0aS1zZWxlY3QtcmFkaW8uY29tcG9uZW50JztcbmltcG9ydCB7IFVpTXVsdGlTZWxlY3RDaGVja2JveENvbXBvbmVudCB9IGZyb20gJy4vdWktbXVsdGktc2VsZWN0LWNoZWNrYm94L3VpLW11bHRpLXNlbGVjdC1jaGVja2JveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlNdWx0aVNlbGVjdFNsaWRlckNvbXBvbmVudCB9IGZyb20gJy4vdWktbXVsdGktc2VsZWN0LXNsaWRlci91aS1tdWx0aS1zZWxlY3Qtc2xpZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaU11bHRpU2VsZWN0Q2FyZENvbXBvbmVudCB9IGZyb20gJy4vdWktbXVsdGktc2VsZWN0LWNhcmQvdWktbXVsdGktc2VsZWN0LWNhcmQuY29tcG9uZW50JztcbmltcG9ydCB7IFVpTXVsdGlTZWxlY3RTbWlsZUNvbXBvbmVudCB9IGZyb20gJy4vdWktbXVsdGktc2VsZWN0LXNtaWxlL3VpLW11bHRpLXNlbGVjdC1zbWlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlOdW1JbnRTbGlkZXJDb21wb25lbnQgfSBmcm9tICcuL3VpLW51bS1pbnQtc2xpZGVyL3VpLW51bS1pbnQtc2xpZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYVJlcG9ydENoZWNrYm94U3dpdGNoQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1yZXBvcnQtY2hlY2tib3gtc3dpdGNoLWJ1dHRvbi9iYXJzYS1yZXBvcnQtY2hlY2tib3gtc3dpdGNoLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FDb2x1bW5Sb3dOdW1iZXJDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWNvbHVtbi1yb3dudW1iZXIvYmFyc2EtY29sdW1uLXJvd251bWJlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FSZXBvcnRPbmVPZkxpc3RDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXJlcG9ydC1vbmUtb2YtbGlzdC9iYXJzYS1yZXBvcnQtb25lLW9mLWxpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhQ2FyZFJvd1BheWFtQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1jYXJkLXJvdy1wYXlhbS9iYXJzYS1jYXJkLXJvdy1wYXlhbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FRdWVzdGlvblBvc3RDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXF1ZXN0aW9uLXBvc3QvYmFyc2EtcXVlc3Rpb24tcG9zdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FRdWVzdGlvbkFuc3dlckZvcm1Db21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXF1ZXN0aW9uLWFuc3dlci1mb3JtL2JhcnNhLXF1ZXN0aW9uLWFuc3dlci1mb3JtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYVF1ZXN0aW9uQW5zd2VyRm9ybUFkZENvbW1lbnRDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXF1ZXN0aW9uLWFuc3dlci1mb3JtLWFkZC1jb21tZW50L2JhcnNhLXF1ZXN0aW9uLWFuc3dlci1mb3JtLWFkZC1jb21tZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUFuc3dlckNhcmRDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWFuc3dlci1jYXJkL2JhcnNhLWFuc3dlci1jYXJkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYVF1ZXN0aW9uQW5zd2VyQ3JlYXRvclRpbWVTZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1xdWVzdGlvbi1hbnN3ZXItY3JlYXRvci10aW1lLXNlY3Rpb24vYmFyc2EtcXVlc3Rpb24tYW5zd2VyLWNyZWF0b3ItdGltZS1zZWN0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYVF1ZXN0aW9uQW5zd2VyQ29tbWVudHNTZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1xdWVzdGlvbi1hbnN3ZXItY29tbWVudHMtc2VjdGlvbi9iYXJzYS1xdWVzdGlvbi1hbnN3ZXItY29tbWVudHMtc2VjdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FRdWVzdGlvbkFuc3dlclZvdGVTZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1xdWVzdGlvbi1hbnN3ZXItdm90ZS1zZWN0aW9uL2JhcnNhLXF1ZXN0aW9uLWFuc3dlci12b3RlLXNlY3Rpb24uY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhUXVlc3Rpb25BbnN3ZXJDb250ZW50QWN0aW9uc1NlY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXF1ZXN0aW9uLWFuc3dlci1jb250ZW50LWFjdGlvbnMtc2VjdGlvbi9iYXJzYS1xdWVzdGlvbi1hbnN3ZXItY29udGVudC1hY3Rpb25zLXNlY3Rpb24uY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhQ2hpcENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtY2hpcC9iYXJzYS1jaGlwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYVJlcG9ydENhcmRGbGV4Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtcmVwb3J0LWNhcmQtZmxleC12aWV3L2JhcnNhLXJlcG9ydC1jYXJkLWZsZXgtdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FUYWdzQ2F0ZWdvcnlSb3dDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXRhZ3MtY2F0ZWdvcnktcm93L2JhcnNhLXRhZ3MtY2F0ZWdvcnktcm93LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYVRhZ0NoaXBDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXRhZy1jaGlwL2JhcnNhLXRhZy1jaGlwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYVRhZ0NhdGVnb3JpZXNDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXRhZy1jYXRlZ29yaWVzL2JhcnNhLXRhZy1jYXRlZ29yaWVzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUN1c3RvbUlubGluZUVkaXRDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWN1c3RvbS1pbmxpbmUtZWRpdC9iYXJzYS1jdXN0b20taW5saW5lLWVkaXQuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhQ3VzdG9tSW5saW5lRWRpdFJvd0NvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtY3VzdG9tLWlubGluZS1lZGl0LXJvdy9iYXJzYS1jdXN0b20taW5saW5lLWVkaXQtcm93LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IEJhcnNhQ2hhdENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtY2hhdC9iYXJzYS1jaGF0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUNoYXRDb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1jaGF0LWNvbnRlbnQvYmFyc2EtY2hhdC1jb250ZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUNoYXRNZXNzYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1jaGF0LW1lc3NhZ2UvYmFyc2EtY2hhdC1tZXNzYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUNoYXRUaHJlYWRDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWNoYXQtdGhyZWFkL2JhcnNhLWNoYXQtdGhyZWFkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUNoYXRUaHJlYWRzTGlzdENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtY2hhdC10aHJlYWRzLWxpc3QvYmFyc2EtY2hhdC10aHJlYWRzLWxpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhQ2hhdFRocmVhZHNMaXN0VG9vbGJhckNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtY2hhdC10aHJlYWRzLWxpc3QtdG9vbGJhci9iYXJzYS1jaGF0LXRocmVhZHMtbGlzdC10b29sYmFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUNoYXRDb250ZW50VG9vbGJhckNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtY2hhdC1jb250ZW50LXRvb2xiYXIvYmFyc2EtY2hhdC1jb250ZW50LXRvb2xiYXIuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhQ2hhdExpc3RDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWNoYXQtbGlzdC9iYXJzYS1jaGF0LWxpc3QuY29tcG9uZW50JztcblxuZXhwb3J0IGNvbnN0IGNvbXBvbmVudHMgPSBbXG4gICAgVWlUZXh0RmllbGRDb21wb25lbnQsXG4gICAgTHlMYXlvdXRGaWVsZExhYmVsQ29tcG9uZW50LFxuICAgIFVpQ2hlY2tCb3hDb21wb25lbnQsXG4gICAgVWlTaW1wbGVDb21ib0NvbXBvbmVudCxcbiAgICBVaVJhZGlvR3JvdXBDb21wb25lbnQsXG4gICAgVWlHcmlkQ29tcG9uZW50LFxuICAgIEx5TGF5b3V0Q29udGFpbmVyT2ZSb290Q29tcG9uZW50LFxuICAgIEx5TGF5b3V0UGFuZWxDb21wb25lbnQsXG4gICAgVWlSZWFkT25seUZpZWxkQ29tcG9uZW50LFxuICAgIFVpQ29udGFpbmVyV2l0aEJ1dHRvbkNvbXBvbmVudCxcbiAgICBVaVBpY3R1cmVGaWxlQ29tcG9uZW50LFxuICAgIFVpTW9JbmZvVWx2Q29tYm9Db21wb25lbnQsXG4gICAgVWlNdWx0aVNlbGVjdENvbWJvQ29tcG9uZW50LFxuICAgIFVpTnVtRGVjaW1hbFVpQ29tcG9uZW50LFxuICAgIFVpTnVtSW50VWlDb21wb25lbnQsXG4gICAgVWlUaW1lU3BhbkNvbXBvbmVudCxcbiAgICBVaUZpbGVMaW5lYXJMaXN0Qm94Q29tcG9uZW50LFxuICAgIEx5RW1wdHlTcGFjZUNvbXBvbmVudCxcbiAgICBVaVNpbmdsZVBpY3R1cmVDb21wb25lbnQsXG4gICAgVWx2U2VsZWN0aW9uQ29tcG9uZW50LFxuICAgIFVsdlRvb2xiYXJDb21wb25lbnQsXG4gICAgVWx2UGFnaW5nQ29tcG9uZW50LFxuICAgIFVpR3JpZFNvcnRTZXR0aW5nQ29tcG9uZW50LFxuICAgIFVpR3JpZFNvcnRJdGVtQ29tcG9uZW50LFxuICAgIFVpR3JpZENvbHVtbnNDb21wb25lbnQsXG4gICAgTWFza0NvbXBvbmVudCxcbiAgICBVaUluZm9CYXJQYW5lbENvbXBvbmVudCxcbiAgICBVaUZvcm1QYW5lbENvbXBvbmVudCxcbiAgICBVaVNlYXJjaENvbW1hbmRJbmZvVWlDb21wb25lbnQsXG4gICAgVWx2U2V0dGluZ3NDb21wb25lbnQsXG4gICAgVWlUaW55bWNlQ29tcG9uZW50LFxuICAgIFVpQnV0dG9uQ29tcG9uZW50LFxuICAgIFVpRGF0ZVRpbWVDb21wb25lbnQsXG4gICAgRm9ybURpYWxvZ0NvbXBvbmVudCxcbiAgICBIZWFkZXJGYWNldEtleVZhbHVlQ29tcG9uZW50LFxuICAgIEhlYWRlckZhY2V0Rm9ybUNvbXBvbmVudCxcbiAgICBIZWFkZXJGYWNldFJhdGVDb21wb25lbnQsXG4gICAgSGVhZGVyRmFjZXRQcm9ncmVzc0NvbXBvbmVudCxcbiAgICBIZWFkZXJGYWNldE1pY3JvY2hhcnRDb21wb25lbnQsXG4gICAgSGVhZGVyRmFjZXRQbGFpblRleHRDb21wb25lbnQsXG4gICAgVWlNb0luZm9TdWJGb3JtVWlDb21wb25lbnQsXG4gICAgUmVzcG9uc2l2ZVRvb2xiYXJDb21wb25lbnQsXG4gICAgUmVzcG9uc2l2ZVRvb2xiYXJSZW5kZXJlckNvbXBvbmVudCxcbiAgICBVaVRleHRBcmVhQ29tcG9uZW50LFxuICAgIExheW91dENvbnRyb2xDb21wb25lbnQsXG4gICAgTGF5b3V0V2l6YXJkQ29tcG9uZW50LFxuICAgIEZvcm1XaXphcmRDb21wb25lbnQsXG4gICAgRm9ybURpYWxvZ0xlc3NDb21wb25lbnQsXG4gICAgUmljaFRleHRTdGF0aWNDb21wb25lbnQsXG4gICAgVWlQaWN0dXJlc0luZm9Db21wb25lbnQsXG4gICAgTHlIb3Jpem9udGFsTGF5b3V0Q29tcG9uZW50LFxuICAgIEx5VmVydGljYWxMYXlvdXRDb21wb25lbnQsXG4gICAgTHlUYWJDb250YWluZXJDb21wb25lbnQsXG4gICAgTHlUYWJQYWdlQ29tcG9uZW50LFxuICAgIEx5TGFiZWxDb21wb25lbnQsXG4gICAgVWlNb0luZm9Db21ib1ZpZXdlckNvbXBvbmVudCxcbiAgICBVbE1zZ0JveEFkYXB0ZXJDb21wb25lbnQsXG4gICAgVWlUcmVlQ29tcG9uZW50LFxuICAgIEhlYWRlckF2YXRhckNvbXBvbmVudCxcbiAgICBVaVdvcmtmbG93UGFuZWxVaUNvbXBvbmVudCxcbiAgICBVbHZDb250ZXh0TWVudUNvbXBvbmVudCxcbiAgICBVbExvYWRpbmdNYXNrVWlDb21wb25lbnQsXG4gICAgVWlUZXh0RmllbGRBdXRvQ29tcGxldGVDb21wb25lbnQsXG4gICAgQ2FwdGNoYUZpZWxkQ29tcG9uZW50LFxuICAgIEx5U2ltcGxlTGFiZWxDb21wb25lbnQsXG4gICAgR2xvYmFsU2VhcmNoUGFuZWxDb21wb25lbnQsXG4gICAgR2xvYmFsU2VhcmNoTW9kdWxlQ29tcG9uZW50LFxuICAgIEdsb2JhbFNlYXJjaENvbXBvbmVudCxcbiAgICBIeXBlcmxpbmtDb21wb25lbnQsXG4gICAgU3RhdGljVGV4dENvbXBvbmVudCxcbiAgICBVbFRvYXN0QWRhcHRlckNvbXBvbmVudCxcbiAgICBNZXNzYWdlU3RyaXBDb21wb25lbnQsXG4gICAgVWlMaW5lYXJMaXN0Q29udGFpbmVyV2l0aEJ1dHRvbkNvbXBvbmVudCxcbiAgICBGdW5kYW1lbnRhbER5bmFtaWNGb3JtQ29tcG9uZW50LFxuICAgIExheW91dEFjdGlvbnNDb21wb25lbnQsXG4gICAgTHlMYXlvdXRDb250YWluZXJDb21wb25lbnQsXG4gICAgVWlVbHZGb3JtTXVsdGlTZWxlY3RVaUNvbXBvbmVudCxcbiAgICBVbHZGb3JtTXVsdGlTZWxlY3RDb21wb25lbnQsXG4gICAgVWx2Q29sdW1uU2V0dGluZ3NDb21wb25lbnQsXG4gICAgVWx2RmlsdGVyU2V0dGluZ3NDb21wb25lbnQsXG4gICAgVWx2U29ydFNldHRpbmdzQ29tcG9uZW50LFxuICAgIFVsdkdyb3VwYnlTZXR0aW5nc0NvbXBvbmVudCxcbiAgICBCYXJzYUxpc3RGaWxlTGluZWFyQ29tcG9uZW50LFxuICAgIFVpUGRmVmlld2VyQ29tcG9uZW50LFxuICAgIEJhcnNhVGlueWVtY2VDb21wb25lbnQsXG4gICAgVWlNb25hY29FZGl0b3JDb21wb25lbnQsXG4gICAgQmFyc2FNb25hY29FZGl0b3JDb21wb25lbnQsXG4gICAgQmFyc2FEYXRlVGltZVBpY2tlckNvbXBvbmVudCxcbiAgICBCYXJzYVRyZWVJdGVtQ29tcG9uZW50LFxuICAgIFVpU3dpdGNoQnV0dG9uQ29tcG9uZW50LFxuICAgIFVpQ29sb3JVaUNvbXBvbmVudCxcbiAgICBMeUxpbmVDb21wb25lbnQsXG4gICAgVWlVbHZNYWluVWlDb21wb25lbnQsXG4gICAgUmVwb3J0TmF2aWdhdG9yQ29tcG9uZW50LFxuICAgIE1hbmFnZUZpbHRlcnNSZXBvcnRDb21wb25lbnQsXG4gICAgUmVwb3J0U2VhcmNoRmllbGRzTWFuYWdlQ29tcG9uZW50LFxuICAgIFJlcG9ydFNlYXJjaEZpZWxkc0hpZGRlblNldHRpbmdzQ29tcG9uZW50LFxuICAgIFNlYXJjaFBhbmVsQ29tcG9uZW50LFxuICAgIFJlcG9ydFNlYXJjaFBhbmVsU2F2ZUNvbXBvbmVudCxcbiAgICBVaUdyaWRGaWx0ZXJTZXR0aW5nc0NvbXBvbmVudCxcbiAgICBVaUdyaWRGaWx0ZXJJdGVtQ29tcG9uZW50LFxuICAgIFVpRGF0ZVJhbmdlRXhDb21wb25lbnQsXG4gICAgVWxOb3RpZnlQb3B1cENvbXBvbmVudCxcbiAgICBVaVRhYmxlVmlld0NvbXBvbmVudCxcbiAgICBVaUxpc3RWaWV3Q29tcG9uZW50LFxuICAgIFVpQ2FyZFZpZXdDb21wb25lbnQsXG4gICAgVWlSZXBvcnRDb250YWluZXJDb21wb25lbnQsXG4gICAgTm9EYXRhQ29tcG9uZW50LFxuICAgIENvbHVtblJlbmRlcmVyQ29tcG9uZW50LFxuICAgIElubGluZVNhdmVBbmRDYW5jZWxDb21wb25lbnQsXG4gICAgVWlUcmVlVmlld0NvbXBvbmVudCxcbiAgICBJbmxpbmVTYXZlQW5kQ2FuY2VsQ29tcG9uZW50LFxuICAgIFVpQ2FsZW5kYXJDb21wb25lbnQsXG4gICAgVWlBc3BSZXBvcnRWaWV3ZXJDb21wb25lbnQsXG4gICAgVWlHcmFwaENvbXBvbmVudCxcbiAgICBVaUV4Y2VwdGlvbkZvcm1Db21wb25lbnQsXG4gICAgVWlFZGl0YWJsZUdyaWRDb21wb25lbnQsXG4gICAgQ29sdW1uTWF0cml4UmVuZGVyZXJDb21wb25lbnQsXG4gICAgVWlNYXRyaXhWaWV3Q29tcG9uZW50LFxuICAgIEN1c3RvbURhdGVUaW1lQ29tcG9uZW50LFxuICAgIEJhcnNhQXNwVmlld2VyQ29tcG9uZW50LFxuICAgIEZpbGVJbkRpYWxvZ0NvbXBvbmVudCxcbiAgICBVaU1vSW5mb0dlbmVyYWxPYmplY3RVaUNvbXBvbmVudCxcbiAgICBVaUdhbnR0Q2hhcnRDb21wb25lbnQsXG4gICAgR2FudHREaHRtbENoYXJ0Vmlld0NvbXBvbmVudCxcbiAgICBQcm9ncmVzc0luZGljYXRvckNvbXBvbmVudCxcbiAgICBDYXJkVmlld0NvbnRlbnRDb21wb25lbnQsXG4gICAgQ2FyZEl0ZW1Db21wb25lbnQsXG4gICAgVWlDYXJkVmlld0hvcml6b250YWxHcm91cENvbXBvbmVudCxcbiAgICBUaXRsZUNvbXBvbmVudCxcbiAgICBCYXJzYVVsdk1haW5Db21wb25lbnQsXG4gICAgTGlzdEl0ZW1Db21wb25lbnQsXG4gICAgSHRyZWVDcmVhdGVOZXdDb21wb25lbnQsXG4gICAgQmFyc2FUYWJsZUhlYWRlckNvbXBvbmVudCxcbiAgICBCYXJzYVRhYmxlUm93Q29tcG9uZW50LFxuICAgIEJhcnNhVGFibGVDb2x1bW5Db21wb25lbnQsXG4gICAgQnJlYWRjcnVtYkNvbXBvbmVudCxcbiAgICBVaUxhYmVsQ29tcG9uZW50LFxuICAgIEZvcm1Ub29sYmFyQnV0dG9uQ29tcG9uZW50LFxuICAgIEJhcnNhU2VhcmNoRm9ybUNvbXBvbmVudCxcbiAgICBSZXBvcnROZXdUb3BGb3JtQ29tcG9uZW50LFxuICAgIEJhcnNhTmV0d29ya09mZmxpbmVDb21wb25lbnQsXG4gICAgRmlsZVZpZXdlckNvbnRlbnRDb21wb25lbnQsXG4gICAgRmlsZVZpZXdlclBvcG92ZXJDb21wb25lbnQsXG4gICAgRmlsZVZpZXdlckNvbXBvbmVudCxcbiAgICBCbG9iVmlld2VyQ29tcG9uZW50LFxuICAgIE5vdGlmaWNhdGlvbkl0ZW1Db21wb25lbnQsXG4gICAgQmFyc2FDYXJ0YWJsZVRlbXBsYXRlQ29tcG9uZW50LFxuICAgIEJhcnNhQ2FydGFibGVHcm91cENvbXBvbmVudCxcbiAgICBCYXJzYUNhcnRhYmxlRm9ybUNvbXBvbmVudCxcbiAgICBCYXJzYUNvbHVtbkluZGljYXRvckNvbXBvbmVudCxcbiAgICBCYXJzYUZpZWxkS2V5VmFsdWVDb21wb25lbnQsXG4gICAgQmFyc2FUb29sYmFyaXRlbVNlYXJjaENvbXBvbmVudCxcbiAgICBVaUh0bWxWaWV3ZXJDb21wb25lbnQsXG4gICAgQmFyc2FQaXNobmFtYXllc2hQYXlhbUNvbXBvbmVudCxcbiAgICBCYXJzYVRleHRFbGxpcHNpc0NvbXBvbmVudCxcbiAgICBCYXJzYUxpc3RGaWxlTGluZWFyR21haWxDb21wb25lbnQsXG4gICAgQmFyc2FMaW5rYWJsZUl0ZW1zUGFuZWxDb21wb25lbnQsXG4gICAgQmFyc2FFbnVtTWVudUJ1dHRvbkNvbXBvbmVudCxcbiAgICBCYXJzYUNhcmRMYXlvdXRQYW5lbENvbXBvbmVudCxcbiAgICBCYXJzYUhvcml6b250YWxGbGV4UGFuZWxDb21wb25lbnQsXG4gICAgQmFyc2FCYXNlTGF5b3V0UGFuZWxDb21wb25lbnQsXG4gICAgQmFyc2FCYXJQYW5lbENvbXBvbmVudCxcbiAgICBCYXJzYUZvcm1TaWRlQ29udGVudENvbXBvbmVudCxcbiAgICBCYXJzYVNpbXBsZUZvcm1Db21wb25lbnQsXG4gICAgRm9ybVRvb2xiYXJDb21wb25lbnQsXG4gICAgQmFyc2FMaXN0TGF5b3V0UGFuZWxDb21wb25lbnQsXG4gICAgQmFyc2FHcmlkTGF5b3V0UGFuZWxDb21wb25lbnQsXG4gICAgQmFyc2FEeW5hbWljRmllbGRDb21wb25lbnQsXG4gICAgVWlNdWx0aVNlbGVjdFJhZGlvQ29tcG9uZW50LFxuICAgIFVpTXVsdGlTZWxlY3RDaGVja2JveENvbXBvbmVudCxcbiAgICBVaU51bUludFNsaWRlckNvbXBvbmVudCxcbiAgICBVaU11bHRpU2VsZWN0U2xpZGVyQ29tcG9uZW50LFxuICAgIFVpTXVsdGlTZWxlY3RDYXJkQ29tcG9uZW50LFxuICAgIFVpTXVsdGlTZWxlY3RTbWlsZUNvbXBvbmVudCxcbiAgICBCYXJzYVJlcG9ydENoZWNrYm94U3dpdGNoQnV0dG9uQ29tcG9uZW50LFxuICAgIEJhcnNhQ29sdW1uUm93TnVtYmVyQ29tcG9uZW50LFxuICAgIEJhcnNhQ2FyZFJvd1BheWFtQ29tcG9uZW50LFxuICAgIEJhcnNhQ29sdW1uUm93TnVtYmVyQ29tcG9uZW50LFxuICAgIEJhcnNhUXVlc3Rpb25Qb3N0Q29tcG9uZW50LFxuICAgIEJhcnNhUXVlc3Rpb25BbnN3ZXJGb3JtQ29tcG9uZW50LFxuICAgIEJhcnNhUXVlc3Rpb25BbnN3ZXJGb3JtQWRkQ29tbWVudENvbXBvbmVudCxcbiAgICBCYXJzYUFuc3dlckNhcmRDb21wb25lbnQsXG4gICAgQmFyc2FRdWVzdGlvbkFuc3dlckNvbnRlbnRBY3Rpb25zU2VjdGlvbkNvbXBvbmVudCxcbiAgICBCYXJzYVF1ZXN0aW9uQW5zd2VyVm90ZVNlY3Rpb25Db21wb25lbnQsXG4gICAgQmFyc2FRdWVzdGlvbkFuc3dlckNyZWF0b3JUaW1lU2VjdGlvbkNvbXBvbmVudCxcbiAgICBCYXJzYVF1ZXN0aW9uQW5zd2VyQ29tbWVudHNTZWN0aW9uQ29tcG9uZW50LFxuICAgIEJhcnNhQ2hpcENvbXBvbmVudCxcbiAgICBCYXJzYVRhZ0NoaXBDb21wb25lbnQsXG4gICAgQmFyc2FSZXBvcnRDYXJkRmxleFZpZXdDb21wb25lbnQsXG4gICAgQmFyc2FUYWdzQ2F0ZWdvcnlSb3dDb21wb25lbnQsXG4gICAgQmFyc2FUYWdDYXRlZ29yaWVzQ29tcG9uZW50LFxuICAgIEJhcnNhUmVwb3J0T25lT2ZMaXN0Q29tcG9uZW50LFxuICAgIEJhcnNhQ2FyZFJvd1BheWFtQ29tcG9uZW50LFxuICAgIEJhcnNhQ3VzdG9tSW5saW5lRWRpdENvbXBvbmVudCxcbiAgICBCYXJzYUN1c3RvbUlubGluZUVkaXRSb3dDb21wb25lbnQsXG4gICAgQmFyc2FDaGF0Q29tcG9uZW50LFxuICAgIEJhcnNhQ2hhdENvbnRlbnRDb21wb25lbnQsXG4gICAgQmFyc2FDaGF0TWVzc2FnZUNvbXBvbmVudCxcbiAgICBCYXJzYUNoYXRUaHJlYWRDb21wb25lbnQsXG4gICAgQmFyc2FDaGF0VGhyZWFkc0xpc3RDb21wb25lbnQsXG4gICAgQmFyc2FDaGF0VGhyZWFkc0xpc3RUb29sYmFyQ29tcG9uZW50LFxuICAgIEJhcnNhQ2hhdENvbnRlbnRUb29sYmFyQ29tcG9uZW50LFxuICAgIEJhcnNhQ2hhdExpc3RDb21wb25lbnRcbl07XG5leHBvcnQgY29uc3QgcGlwZXMgPSBbXG4gICAgVXBsb2FkRmlsZVN0YXR1c1BpcGUsXG4gICAgU2FwRm9udFBpcGUsXG4gICAgU2FwRm9udENsYXNzUGlwZSxcbiAgICBTdHJpbmdUb0FycmF5UGlwZSxcbiAgICBOb2RlSGFzT25lRGVwdGhMZXZlbFBpcGUsXG4gICAgTWF0cml4VmFsdWVQaXBlLFxuICAgIER5bmFtaWNQYWdlU2l6ZVBpcGUsXG4gICAgU2FwU2l6ZVBpcGVcbl07XG5leHBvcnQgY29uc3QgZGlyZWN0aXZlcyA9IFtcbiAgICBXaXphcmRMYXlvdXREaXJlY3RpdmUsXG4gICAgQ29sUmVuZGVyZXJEaXJlY3RpdmUsXG4gICAgQXBwbHlDb25kaXRpb25hbEZvcm1hdHNEaXJlY3RpdmUsXG4gICAgUmVwb3J0Vmlld1JlbmRlcmVyRGlyZWN0aXZlLFxuICAgIEZ1bGxzY3JlZW5EaWFsb2dEaXJlY3RpdmUsXG4gICAgRnVsbHNjcmVlbkZpbGVzRGlyZWN0aXZlLFxuICAgIERvd25sb2FkRmlsZXNEaXJlY3RpdmUsXG4gICAgRGlhbG9nSGFuZGxlckRpcmVjdGl2ZVxuXTtcblxuZXhwb3J0IGNvbnN0IElOSVRfU0FQRklPUkkgPVxuICAgIChcbiAgICAgICAgcnRsU2VydmljZTogUnRsU2VydmljZSxcbiAgICAgICAgY29udGVudERlbnNpdHlTZXJ2aWNlOiBHbG9iYWxDb250ZW50RGVuc2l0eVNlcnZpY2UsXG4gICAgICAgIHRoZW1lU2VydmljZTogVGhlbWluZ1NlcnZpY2UsXG4gICAgICAgIHBvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2UsXG4gICAgICAgIGRvbVNhbml0aXplcjogRG9tU2FuaXRpemVyXG4gICAgKSA9PlxuICAgICgpID0+IHtcbiAgICAgICAgcnRsU2VydmljZS5ydGwubmV4dChCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLklzUnRsKTtcbiAgICAgICAgY29uc3QgWWVrYW5EaWdpdCA9ICdJUkFOWWVrYW5EaWdpdHMnO1xuICAgICAgICBsZXQgZm9udEZhbWlseSA9IFlla2FuRGlnaXQ7XG4gICAgICAgIGNvbnN0IGlyYW5TYW5zID0gJ0JhcnNhRm9udCc7XG4gICAgICAgIGlmIChCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLkN1bHR1cmUgPT09ICdlbi1VUycpIHtcbiAgICAgICAgICAgIGZvbnRGYW1pbHkgPSBpcmFuU2FucztcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGNzcyA9IGAqIHtcbiAgICAtLXNhcEZvbnRGYW1pbHk6ICcke2lyYW5TYW5zfSc7XG4gICAgLS1mZER5bmFtaWNQYWdlX1RpdGxlX0ZvbnRfRmFtaWx5OiAnJHtmb250RmFtaWx5fSc7XG4gICAgLS1mZEJ1dHRvbl9Gb250X0ZhbWlseTogJyR7aXJhblNhbnN9JztcbiAgICAtLWZkSWNvbl9UYWJfQmFyX0xhYmVsX0ZvbnRfRmFtaWx5OiAnJHtpcmFuU2Fuc30nO1xuICAgIC0tc2FwRm9udEZhbWlseTogJyR7Zm9udEZhbWlseX0nO1xuICAgIC0tZmRXaXphcmRfTGFiZWxfRm9udF9GYW1pbHk6ICcke2ZvbnRGYW1pbHl9JztcbiAgICAtLXNhcEZvbnRMaWdodEZhbWlseTogJyR7Zm9udEZhbWlseX0nO1xuICAgIC0tc2FwRm9udEhlYWRlckZhbWlseTogJyR7Zm9udEZhbWlseX0nO1xuICAgIC0tX3VpNV9pbnB1dF9jb21wYWN0X2hlaWdodDogMS42MjVyZW07XG4gICAgLS1zYXBGb250U2l6ZTogMC44ODVyZW07XG4gICAgLyogLS1zYXBDb250ZW50X0hlYWRlclNoYWRvdzogbm9uZTsgKi9cbn1gLFxuICAgICAgICAgICAgaGVhZCA9IGRvY3VtZW50LmhlYWQgfHwgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2hlYWQnKVswXSxcbiAgICAgICAgICAgIHN0eWxlOiBhbnkgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzdHlsZScpO1xuXG4gICAgICAgIGhlYWQuYXBwZW5kQ2hpbGQoc3R5bGUpO1xuXG4gICAgICAgIHN0eWxlLnR5cGUgPSAndGV4dC9jc3MnO1xuICAgICAgICBpZiAoc3R5bGUuc3R5bGVTaGVldCkge1xuICAgICAgICAgICAgLy8gVGhpcyBpcyByZXF1aXJlZCBmb3IgSUU4IGFuZCBiZWxvdy5cbiAgICAgICAgICAgIHN0eWxlLnN0eWxlU2hlZXQuY3NzVGV4dCA9IGNzcztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHN0eWxlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGNzcykpO1xuICAgICAgICB9XG5cbiAgICAgICAgcG9ydGFsU2VydmljZS51c2VyUG9ydGFsU2V0dGluZ3MkLnBpcGUoKS5zdWJzY3JpYmUoKHVzZXJQb3J0YWxTZXR0aW5ncykgPT4ge1xuICAgICAgICAgICAgY29uc3QgdXNlclNldHRpbmdzID0gdXNlclBvcnRhbFNldHRpbmdzWydVc2VyUG9ydGFsU2V0dGluZ3MnXTtcbiAgICAgICAgICAgIGlmICghdXNlclNldHRpbmdzKSB7XG4gICAgICAgICAgICAgICAgdGhlbWVTZXJ2aWNlLnNldFRoZW1lKCdzYXBfZmlvcmlfMycpO1xuICAgICAgICAgICAgICAgIHRoZW1lU2VydmljZS5jdXJyZW50VGhlbWUuc3Vic2NyaWJlKCh0aGVtZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhlbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvcnRhbFNlcnZpY2Uuc2V0VGhlbWUoZG9tU2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RSZXNvdXJjZVVybCh0aGVtZS50aGVtaW5nLnRoZW1lUGF0aCkpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGV0IGNvbnRlbnREZW5zaXR5OiBhbnk7XG4gICAgICAgICAgICBsZXQgdGhlbWU6IGFueTtcbiAgICAgICAgICAgIGlmICghdXNlclNldHRpbmdzKSB7XG4gICAgICAgICAgICAgICAgaWYgKGdldERldmljZUlzTW9iaWxlKCkgfHwgZ2V0RGV2aWNlSXNQaG9uZSgpIHx8IGdldERldmljZUlzVGFibGV0KCkpIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudERlbnNpdHkgPSBDb250ZW50RGVuc2l0eU1vZGUuQ09aWTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50RGVuc2l0eSA9IENvbnRlbnREZW5zaXR5TW9kZS5DT01QQUNUO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgeyBDb250ZW50RGVuc2l0eSRDYXB0aW9uLCBUaGVtZSRDYXB0aW9uIH0gPSB1c2VyU2V0dGluZ3M7XG4gICAgICAgICAgICAgICAgY29udGVudERlbnNpdHkgPSBDb250ZW50RGVuc2l0eSRDYXB0aW9uO1xuICAgICAgICAgICAgICAgIHRoZW1lID0gVGhlbWUkQ2FwdGlvbjtcbiAgICAgICAgICAgICAgICBpZiAoIWNvbnRlbnREZW5zaXR5KSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnREZW5zaXR5ID0gQ29udGVudERlbnNpdHlNb2RlLkNPTVBBQ1Q7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGdldERldmljZUlzTW9iaWxlKCkgfHwgZ2V0RGV2aWNlSXNQaG9uZSgpKSB7XG4gICAgICAgICAgICAgICAgY29udGVudERlbnNpdHkgPSBDb250ZW50RGVuc2l0eU1vZGUuQ09aWTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChjb250ZW50RGVuc2l0eSkge1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudERlbnNpdHlTZXJ2aWNlLnVwZGF0ZUNvbnRlbnREZW5zaXR5KGNvbnRlbnREZW5zaXR5KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgYm9keUNsYXNzQ29tcGFjdCA9ICd1aTUtY29udGVudC1kZW5zaXR5LWNvbXBhY3QnO1xuICAgICAgICAgICAgICAgIGNvbnN0IGJvZHlDbGFzc0NvbmRlbnNlZCA9ICd1aTUtY29udGVudC1kZW5zaXR5LWNvbmRlbnNlZCc7XG4gICAgICAgICAgICAgICAgY29uc3QgYm9keUNsYXNzQ296eSA9ICd1aTUtY29udGVudC1kZW5zaXR5LWNvenknO1xuICAgICAgICAgICAgICAgIGNvbnN0IGJvZHkgPSBkb2N1bWVudD8uYm9keTtcbiAgICAgICAgICAgICAgICBzd2l0Y2ggKGNvbnRlbnREZW5zaXR5KSB7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJ2NvbmRlbnNlZCc6XG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFib2R5LmNsYXNzTGlzdC5jb250YWlucyhib2R5Q2xhc3NDb25kZW5zZWQpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkuY2xhc3NMaXN0LmFkZChib2R5Q2xhc3NDb25kZW5zZWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5yZW1vdmUoYm9keUNsYXNzQ29tcGFjdCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9keS5jbGFzc0xpc3QucmVtb3ZlKGJvZHlDbGFzc0NvenkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnY296eSc6XG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFib2R5LmNsYXNzTGlzdC5jb250YWlucyhib2R5Q2xhc3NDb3p5KSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5hZGQoYm9keUNsYXNzQ296eSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkuY2xhc3NMaXN0LnJlbW92ZShib2R5Q2xhc3NDb21wYWN0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5yZW1vdmUoYm9keUNsYXNzQ29uZGVuc2VkKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICBjYXNlICdjb21wYWN0JzpcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWJvZHkuY2xhc3NMaXN0LmNvbnRhaW5zKGJvZHlDbGFzc0NvbXBhY3QpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkuY2xhc3NMaXN0LmFkZChib2R5Q2xhc3NDb21wYWN0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9keS5jbGFzc0xpc3QucmVtb3ZlKGJvZHlDbGFzc0NvenkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkuY2xhc3NMaXN0LnJlbW92ZShib2R5Q2xhc3NDb25kZW5zZWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRoZW1lKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoZW1lLmluZGV4T2YoJ2RhcmsnKSA+IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnY29sb3Itc2NoZW1lJywgJ2RhcmsnKTtcbiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNldEF0dHJpYnV0ZSgnZGF0YS1tb2RlJywgJ2RhcmsnKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2NvbG9yLXNjaGVtZScsICdsaWdodCcpO1xuICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2V0QXR0cmlidXRlKCdkYXRhLW1vZGUnLCAnbGlnaHQnKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhlbWVTZXJ2aWNlLnNldFRoZW1lKHRoZW1lKTtcbiAgICAgICAgICAgICAgICB0aGVtZVNlcnZpY2UuY3VycmVudFRoZW1lLnN1YnNjcmliZSgodGhlbWUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoZW1lKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3J0YWxTZXJ2aWNlLnNldFRoZW1lKGRvbVNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwodGhlbWUudGhlbWluZy50aGVtZVBhdGgpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9O1xuIl19
|