barsa-sap-ui 1.0.374 → 1.0.376

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.
@@ -50,11 +50,11 @@ export class CardItemComponent extends BaseViewItemPropsComponent {
50
50
  }
51
51
  }
52
52
  CardItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: CardItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
53
- CardItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: CardItemComponent, selector: "bsu-card-item", inputs: { setting: "setting" }, providers: [FormPanelService], usesInheritance: true, ngImport: i0, template: "<fd-card\r\n cardType=\"quickView\"\r\n class=\"docs-flex-item-margin\"\r\n [class.openOnClick]=\"setting.openOnClick\"\r\n [style.width]=\"cardWidth\"\r\n [style.min-width]=\"minWidth\"\r\n [style.max-width]=\"maxWidth\"\r\n>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n setting.HeaderComponent ? renderHeaderComponent : renderHeader;\r\n context: {\r\n $implicit: mo,\r\n index: this.index\r\n }\r\n \"\r\n ></ng-container>\r\n\r\n <fd-card-content (click)=\"onRowCheck()\" (dblclick)=\"onRowClick()\" ellipsify *ngIf=\"!noContent || contextMenuItems\">\r\n <div #divEl [applyConditionalFormats]=\"conditionalFormats\" [styleIndex]=\"styleIndex\" [hostEl]=\"divEl\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n setting.ContentComponent ? contentTemplateComponent : contentTemplate;\r\n context: {\r\n $implicit: mo,\r\n index: this.index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n <ng-container *ngIf=\"contextMenuInFooter && contextMenuItems && contextMenuItems.length > 0\">\r\n <div\r\n ulvContextMenu\r\n [allColumns]=\"allColumns\"\r\n [footerMode]=\"true\"\r\n [menuItems]=\"contextMenuItems\"\r\n [styleIndex]=\"styleIndex\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [mo]=\"mo\"\r\n (commandClick)=\"onUlvCommand()\"\r\n ></div>\r\n </ng-container>\r\n </fd-card-content>\r\n</fd-card>\r\n\r\n<ng-template #columnTemplate let-column let-mo=\"mo\" let-index=\"index\" let-layout94=\"layout94\"\r\n ><div\r\n *ngIf=\"column\"\r\n #divEl\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [hostEl]=\"divEl\"\r\n [dbName]=\"column.Name\"\r\n >\r\n <bsu-column-renderer\r\n [mo]=\"mo\"\r\n [column]=\"column\"\r\n [value]=\"column | columnValue: mo | bbbTranslate\"\r\n [icon]=\"column | columnIcon: mo\"\r\n [editMode]=\"isChecked && inlineEditMode && allowInlineEdit\"\r\n [rtl]=\"rtl\"\r\n [isChecked]=\"isChecked\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [controlUi]=\"column.Caption | controlUi: layout94\"\r\n (keyup.control.enter)=\"onEditFormPanelSave($event)\"\r\n (keyup.esc)=\"onEditFormPanelCancel($event)\"\r\n (keydown.Tab)=\"onTabKeyDown($event, index)\"\r\n [formLayoutShowLabel]=\"true\"\r\n ></bsu-column-renderer>\r\n </div>\r\n</ng-template>\r\n<ng-template #contentTemplate let-mo let-index=\"index\">\r\n <fd-quick-view [id]=\"'id'\" *ngIf=\"!noContent\">\r\n <fd-quick-view-group>\r\n <fd-quick-view-subheader\r\n *ngIf=\"setting.Avatar || setting.AvatarField || setting.TitleField || setting.SubtitleField\"\r\n >\r\n <fd-avatar\r\n *ngIf=\"setting.AvatarField || setting.Avatar\"\r\n alterIcon=\"alt|content|backup|default-icon\"\r\n [circle]=\"setting.CircleAvatar\"\r\n [image]=\"\r\n setting.AvatarField\r\n ? (mo[setting.AvatarField.Name]?.FileId | picFieldSrc: 'ID':setting.AvatarField.FieldDefId)\r\n : ''\r\n \"\r\n [size]=\"avatarSize ? avatarSize : deviceSize === 's' ? 's' : 'm'\"\r\n [glyph]=\"\r\n setting.Avatar ||\r\n (mo.$State === 'New' && !isChecked ? 'favorite' : inlineEditMode && isChecked ? 'edit' : '')\r\n \"\r\n >\r\n </fd-avatar>\r\n <fd-quick-view-subheader-title *ngIf=\"setting.TitleField\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.TitleField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </fd-quick-view-subheader-title>\r\n <fd-quick-view-subheader-subtitle *ngIf=\"setting.SubtitleField\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.SubtitleField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </fd-quick-view-subheader-subtitle>\r\n </fd-quick-view-subheader>\r\n <fd-quick-view-group-item *ngFor=\"let column of setting.FieldListMapped\">\r\n <ng-container *ngIf=\"column\">\r\n <fd-quick-view-group-item-label>\r\n {{ column.Caption }}\r\n </fd-quick-view-group-item-label>\r\n <fd-quick-view-group-item-content>\r\n <div fd-quick-view-group-item-content-element class=\"group-item-content\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </fd-quick-view-group-item-content>\r\n </ng-container>\r\n </fd-quick-view-group-item>\r\n <fd-quick-view-group-item>\r\n <fd-quick-view-group-item-content *ngIf=\"setting.DescriptionField\">\r\n <fd-quick-view-group-item-label *ngIf=\"inlineEditMode && allowInlineEdit\">\r\n {{ setting.DescriptionField?.Alias }}\r\n </fd-quick-view-group-item-label>\r\n <div fd-quick-view-group-item-content-element class=\"group-item-content\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.DescriptionField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </fd-quick-view-group-item-content>\r\n <fd-quick-view-group-item-content\r\n class=\"action\"\r\n *ngIf=\"setting.ActionFieldNameField\"\r\n (click)=\"onAction(setting.ActionFieldCommandField || '')\"\r\n >\r\n <a fd-link>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.ActionFieldNameField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </a>\r\n </fd-quick-view-group-item-content>\r\n </fd-quick-view-group-item>\r\n </fd-quick-view-group>\r\n </fd-quick-view>\r\n</ng-template>\r\n<ng-template #contentTemplateComponent let-mo let-index=\"index\">\r\n <bnrc-dynamic-item-component\r\n [component]=\"setting.ContentComponent\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [isChecked]=\"isChecked\"\r\n [setting]=\"setting\"\r\n [parameters]=\"setting.ContentComponent.Settings\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n ></bnrc-dynamic-item-component>\r\n</ng-template>\r\n\r\n<ng-template #renderHeader let-mo let-index=\"index\">\r\n <fd-card-header\r\n *ngIf=\"\r\n isCheckList ||\r\n deviceName !== 'desktop' ||\r\n (contextMenuItems && contextMenuItems.length > 0 && !contextMenuInFooter)\r\n \"\r\n >\r\n <div\r\n fd-card-title\r\n [style.justify-content]=\"!isCheckList && canView && deviceName !== 'desktop' ? 'left' : 'space-between'\"\r\n >\r\n <div style=\"display: flex; justify-content: start; flex-grow: 1\">\r\n <fd-checkbox\r\n *ngIf=\"isCheckList\"\r\n [name]=\"mo.$Caption\"\r\n [ngModel]=\"isChecked\"\r\n (ngModelChange)=\"onRowCheck()\"\r\n ></fd-checkbox>\r\n <div\r\n *ngIf=\"!contextMenuInFooter && contextMenuItems && contextMenuItems.length > 0\"\r\n ulvContextMenu\r\n [allColumns]=\"allColumns\"\r\n [menuItems]=\"contextMenuItems\"\r\n [styleIndex]=\"styleIndex\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [mo]=\"mo\"\r\n (commandClick)=\"onUlvCommand()\"\r\n ></div>\r\n </div>\r\n <ng-container *ngIf=\"canView\">\r\n <button\r\n fd-button\r\n class=\"view-btn\"\r\n (click)=\"onRowClick()\"\r\n [glyph]=\"navigationArrow\"\r\n fdType=\"transparent\"\r\n ></button>\r\n </ng-container>\r\n </div>\r\n </fd-card-header>\r\n</ng-template>\r\n<ng-template #renderHeaderComponent let-mo let-index=\"index\">\r\n <bnrc-dynamic-item-component\r\n [component]=\"setting.HeaderComponent\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [isChecked]=\"isChecked\"\r\n [setting]=\"setting\"\r\n [parameters]=\"setting.HeaderComponent.Settings\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [canView]=\"canView\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [isCheckList]=\"isCheckList\"\r\n (events)=\"onDynamicComponentEvents($event)\"\r\n ></bnrc-dynamic-item-component>\r\n</ng-template>\r\n", styles: ["fd-card fd-card-content{padding:0!important}fd-card fd-card-header{padding:.5rem}fd-card fd-card-header:hover{background:var(--fdCard_Background_Color)}fd-card fd-card-header .fd-card__title{display:flex;justify-content:space-between;align-items:center;width:100%}fd-card fd-card-header button,fd-card fd-card-header div[ulvcontextmenu]{z-index:6}fd-card fd-card-header:hover{background:inherit}fd-quick-view-subheader ::ng-deep div{background:inherit}.action{cursor:pointer;margin-top:6px;flex:1;display:flex;justify-content:end;flex-direction:column}.openOnClick{cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.DynamicItemComponent, selector: "bnrc-dynamic-item-component", inputs: ["mo", "allColumns", "moDataList", "columns", "column", "index", "last", "deviceName", "deviceSize", "rtl", "editMode", "setting", "parameters", "contextMenuItems", "canView", "formSetting", "conditionalFormats", "disableOverflowContextMenu", "navigationArrow", "isCheckList", "fields", "isChecked", "layout94$", "inlineEditMode", "isNewInlineMo", "allowInlineEdit", "typeDefId", "rowIndicator", "rowIndicatorColor", "UlvMainCtrlr"] }, { kind: "directive", type: i3.EllipsifyDirective, selector: "[ellipsify]", inputs: ["limitLine"] }, { kind: "component", type: i4.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "glyph", "zoomGlyph", "circle", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "random", "clickable", "backgroundImage", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "component", type: i5.LinkComponent, selector: "[fdLink], [fd-link], [fd-breadcrumb-link]", inputs: ["class", "emphasized", "disabled", "inverted", "subtle", "undecorated"] }, { kind: "component", type: i6.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i7.CardComponent, selector: "fd-card", inputs: ["badge", "isLoading", "cardType", "id", "role"] }, { kind: "component", type: i7.CardHeaderComponent, selector: "fd-card-header", inputs: ["interactive", "tabindex"] }, { kind: "component", type: i7.CardContentComponent, selector: "fd-card-content" }, { kind: "directive", type: i7.CardTitleDirective, selector: "[fd-card-title]" }, { kind: "component", type: i8.CheckboxComponent, selector: "fd-checkbox", inputs: ["ariaLabel", "value", "ariaLabelledBy", "ariaDescribedBy", "title", "inputId", "state", "name", "label", "disabled", "tristate", "tristateSelectable", "labelClass", "required", "values"], outputs: ["focusChange"] }, { kind: "component", type: i9.QuickViewComponent, selector: "fd-quick-view", inputs: ["id"] }, { kind: "component", type: i9.QuickViewSubheaderComponent, selector: "fd-quick-view-subheader" }, { kind: "component", type: i9.QuickViewSubheaderTitleComponent, selector: "fd-quick-view-subheader-title" }, { kind: "component", type: i9.QuickViewSubheaderSubtitleComponent, selector: "fd-quick-view-subheader-subtitle" }, { kind: "component", type: i9.QuickViewGroupComponent, selector: "fd-quick-view-group" }, { kind: "component", type: i9.QuickViewGroupItemComponent, selector: "fd-quick-view-group-item", inputs: ["id"] }, { kind: "component", type: i9.QuickViewGroupItemLabelComponent, selector: "fd-quick-view-group-item-label" }, { kind: "component", type: i9.QuickViewGroupItemContentComponent, selector: "fd-quick-view-group-item-content" }, { kind: "directive", type: i9.QuickViewGroupItemContentElementDirective, selector: "[fd-quick-view-group-item-content-element]" }, { kind: "component", type: i10.UlvContextMenuComponent, selector: "bsu-ulv-context-menu,[ulvContextMenu]", inputs: ["onlyOverflow", "deviceName", "menuItems", "allColumns", "index", "mo", "styleIndex", "conditionalFormats", "disableOverflowContextMenu", "footerMode"], outputs: ["commandClick"] }, { kind: "component", type: i11.ColumnRendererComponent, selector: "bsu-column-renderer,[colRenderer]", inputs: ["column", "mo", "index", "editMode", "customRowHeight", "controlUi", "formLayoutShowLabel", "isChecked", "isNewInlineMo", "containerDom", "disableEllapsis", "rtl", "deviceName", "deviceSize", "value", "icon"] }, { kind: "directive", type: i12.ApplyConditionalFormatsDirective, selector: "[applyConditionalFormats]", inputs: ["applyConditionalFormats", "styleIndex", "hostEl", "dbName"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.PictureFieldSourcePipe, name: "picFieldSrc" }, { kind: "pipe", type: i3.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i3.ControlUiPipe, name: "controlUi" }, { kind: "pipe", type: i3.ColumnIconPipe, name: "columnIcon" }, { kind: "pipe", type: i3.ColumnValuePipe, name: "columnValue" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
53
+ CardItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: CardItemComponent, selector: "bsu-card-item", inputs: { setting: "setting" }, providers: [FormPanelService], usesInheritance: true, ngImport: i0, template: "<fd-card\n cardType=\"quickView\"\n class=\"docs-flex-item-margin\"\n [class.openOnClick]=\"setting.openOnClick\"\n [style.width]=\"cardWidth\"\n [style.min-width]=\"minWidth\"\n [style.max-width]=\"maxWidth\"\n>\n <ng-container\n *ngTemplateOutlet=\"\n setting.HeaderComponent ? renderHeaderComponent : renderHeader;\n context: {\n $implicit: mo,\n index: this.index\n }\n \"\n ></ng-container>\n\n <fd-card-content (click)=\"onRowCheck()\" (dblclick)=\"onRowClick()\" ellipsify *ngIf=\"!noContent || contextMenuItems\">\n <div #divEl [applyConditionalFormats]=\"conditionalFormats\" [styleIndex]=\"styleIndex\" [hostEl]=\"divEl\">\n <ng-container\n *ngTemplateOutlet=\"\n setting.ContentComponent ? contentTemplateComponent : contentTemplate;\n context: {\n $implicit: mo,\n index: this.index\n }\n \"\n ></ng-container>\n </div>\n <ng-container *ngIf=\"contextMenuInFooter && contextMenuItems && contextMenuItems.length > 0\">\n <div\n ulvContextMenu\n [allColumns]=\"allColumns\"\n [footerMode]=\"true\"\n [menuItems]=\"contextMenuItems\"\n [styleIndex]=\"styleIndex\"\n [conditionalFormats]=\"conditionalFormats\"\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\n [mo]=\"mo\"\n (commandClick)=\"onUlvCommand()\"\n ></div>\n </ng-container>\n </fd-card-content>\n</fd-card>\n\n<ng-template #columnTemplate let-column let-mo=\"mo\" let-index=\"index\" let-layout94=\"layout94\"\n ><div\n *ngIf=\"column\"\n #divEl\n [applyConditionalFormats]=\"conditionalFormats\"\n [styleIndex]=\"styleIndex\"\n [hostEl]=\"divEl\"\n [dbName]=\"column.Name\"\n >\n <bsu-column-renderer\n [mo]=\"mo\"\n [column]=\"column\"\n [value]=\"column | columnValue: mo | bbbTranslate\"\n [icon]=\"column | columnIcon: mo\"\n [editMode]=\"isChecked && inlineEditMode && allowInlineEdit\"\n [rtl]=\"rtl\"\n [isChecked]=\"isChecked\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [index]=\"index\"\n [controlUi]=\"column.Caption | controlUi: layout94\"\n (keyup.control.enter)=\"onEditFormPanelSave($event)\"\n (keyup.esc)=\"onEditFormPanelCancel($event)\"\n (keydown.Tab)=\"onTabKeyDown($event, index)\"\n [formLayoutShowLabel]=\"true\"\n ></bsu-column-renderer>\n </div>\n</ng-template>\n<ng-template #contentTemplate let-mo let-index=\"index\">\n <fd-quick-view [id]=\"'id'\" *ngIf=\"!noContent\">\n <fd-quick-view-group>\n <fd-quick-view-subheader\n *ngIf=\"setting.Avatar || setting.AvatarField || setting.TitleField || setting.SubtitleField\"\n >\n <fd-avatar\n *ngIf=\"setting.AvatarField || setting.Avatar\"\n alterIcon=\"alt|content|backup|default-icon\"\n [circle]=\"setting.CircleAvatar\"\n [image]=\"\n setting.AvatarField\n ? (mo[setting.AvatarField.Name]?.FileId | picFieldSrc: 'ID':setting.AvatarField.FieldDefId)\n : ''\n \"\n [size]=\"avatarSize ? avatarSize : deviceSize === 's' ? 's' : 'm'\"\n [glyph]=\"\n setting.Avatar ||\n (mo.$State === 'New' && !isChecked ? 'favorite' : inlineEditMode && isChecked ? 'edit' : '')\n \"\n >\n </fd-avatar>\n <fd-quick-view-subheader-title *ngIf=\"setting.TitleField\">\n <ng-container\n *ngTemplateOutlet=\"\n columnTemplate;\n context: {\n $implicit: setting.TitleField,\n layout94: layout$ | async,\n mo: mo,\n index: index\n }\n \"\n ></ng-container>\n </fd-quick-view-subheader-title>\n <fd-quick-view-subheader-subtitle *ngIf=\"setting.SubtitleField\">\n <ng-container\n *ngTemplateOutlet=\"\n columnTemplate;\n context: {\n $implicit: setting.SubtitleField,\n layout94: layout$ | async,\n mo: mo,\n index: index\n }\n \"\n ></ng-container>\n </fd-quick-view-subheader-subtitle>\n </fd-quick-view-subheader>\n <fd-quick-view-group-item *ngFor=\"let column of setting.FieldListMapped\">\n <ng-container *ngIf=\"column\">\n <fd-quick-view-group-item-label>\n {{ column.Caption | bbbTranslate }}\n </fd-quick-view-group-item-label>\n <fd-quick-view-group-item-content>\n <div fd-quick-view-group-item-content-element class=\"group-item-content\">\n <ng-container\n *ngTemplateOutlet=\"\n columnTemplate;\n context: {\n $implicit: column,\n layout94: layout$ | async,\n mo: mo,\n index: index\n }\n \"\n ></ng-container>\n </div>\n </fd-quick-view-group-item-content>\n </ng-container>\n </fd-quick-view-group-item>\n <fd-quick-view-group-item>\n <fd-quick-view-group-item-content *ngIf=\"setting.DescriptionField\">\n <fd-quick-view-group-item-label *ngIf=\"inlineEditMode && allowInlineEdit\">\n {{ setting.DescriptionField?.Alias | bbbTranslate }}\n </fd-quick-view-group-item-label>\n <div fd-quick-view-group-item-content-element class=\"group-item-content\">\n <ng-container\n *ngTemplateOutlet=\"\n columnTemplate;\n context: {\n $implicit: setting.DescriptionField,\n layout94: layout$ | async,\n mo: mo,\n index: index\n }\n \"\n ></ng-container>\n </div>\n </fd-quick-view-group-item-content>\n <fd-quick-view-group-item-content\n class=\"action\"\n *ngIf=\"setting.ActionFieldNameField\"\n (click)=\"onAction(setting.ActionFieldCommandField || '')\"\n >\n <a fd-link>\n <ng-container\n *ngTemplateOutlet=\"\n columnTemplate;\n context: {\n $implicit: setting.ActionFieldNameField,\n layout94: layout$ | async,\n mo: mo,\n index: index\n }\n \"\n ></ng-container>\n </a>\n </fd-quick-view-group-item-content>\n </fd-quick-view-group-item>\n </fd-quick-view-group>\n </fd-quick-view>\n</ng-template>\n<ng-template #contentTemplateComponent let-mo let-index=\"index\">\n <bnrc-dynamic-item-component\n [component]=\"setting.ContentComponent\"\n [mo]=\"mo\"\n [styleIndex]=\"mo.$StyleIndex\"\n [isChecked]=\"isChecked\"\n [setting]=\"setting\"\n [parameters]=\"setting.ContentComponent.Settings\"\n [editMode]=\"inlineEditMode\"\n [rtl]=\"rtl\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [index]=\"index\"\n [allColumns]=\"allColumns\"\n ></bnrc-dynamic-item-component>\n</ng-template>\n\n<ng-template #renderHeader let-mo let-index=\"index\">\n <fd-card-header\n *ngIf=\"\n isCheckList ||\n deviceName !== 'desktop' ||\n (contextMenuItems && contextMenuItems.length > 0 && !contextMenuInFooter)\n \"\n >\n <div\n fd-card-title\n [style.justify-content]=\"!isCheckList && canView && deviceName !== 'desktop' ? 'left' : 'space-between'\"\n >\n <div style=\"display: flex; justify-content: start; flex-grow: 1\">\n <fd-checkbox\n *ngIf=\"isCheckList\"\n [name]=\"mo.$Caption\"\n [ngModel]=\"isChecked\"\n (ngModelChange)=\"onRowCheck()\"\n ></fd-checkbox>\n <div\n *ngIf=\"!contextMenuInFooter && contextMenuItems && contextMenuItems.length > 0\"\n ulvContextMenu\n [allColumns]=\"allColumns\"\n [menuItems]=\"contextMenuItems\"\n [styleIndex]=\"styleIndex\"\n [conditionalFormats]=\"conditionalFormats\"\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\n [mo]=\"mo\"\n (commandClick)=\"onUlvCommand()\"\n ></div>\n </div>\n <ng-container *ngIf=\"canView\">\n <button\n fd-button\n class=\"view-btn\"\n (click)=\"onRowClick()\"\n [glyph]=\"navigationArrow\"\n fdType=\"transparent\"\n ></button>\n </ng-container>\n </div>\n </fd-card-header>\n</ng-template>\n<ng-template #renderHeaderComponent let-mo let-index=\"index\">\n <bnrc-dynamic-item-component\n [component]=\"setting.HeaderComponent\"\n [mo]=\"mo\"\n [styleIndex]=\"mo.$StyleIndex\"\n [isChecked]=\"isChecked\"\n [setting]=\"setting\"\n [parameters]=\"setting.HeaderComponent.Settings\"\n [editMode]=\"inlineEditMode\"\n [rtl]=\"rtl\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [index]=\"index\"\n [allColumns]=\"allColumns\"\n [contextMenuItems]=\"contextMenuItems\"\n [canView]=\"canView\"\n [conditionalFormats]=\"conditionalFormats\"\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\n [navigationArrow]=\"navigationArrow\"\n [isCheckList]=\"isCheckList\"\n (events)=\"onDynamicComponentEvents($event)\"\n ></bnrc-dynamic-item-component>\n</ng-template>\n", styles: ["fd-card fd-card-content{padding:0!important}fd-card fd-card-header{padding:.5rem}fd-card fd-card-header:hover{background:var(--fdCard_Background_Color)}fd-card fd-card-header .fd-card__title{display:flex;justify-content:space-between;align-items:center;width:100%}fd-card fd-card-header button,fd-card fd-card-header div[ulvcontextmenu]{z-index:6}fd-card fd-card-header:hover{background:inherit}fd-quick-view-subheader ::ng-deep div{background:inherit}.action{cursor:pointer;margin-top:6px;flex:1;display:flex;justify-content:end;flex-direction:column}.openOnClick{cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.DynamicItemComponent, selector: "bnrc-dynamic-item-component", inputs: ["mo", "allColumns", "moDataList", "columns", "column", "index", "last", "deviceName", "deviceSize", "rtl", "editMode", "setting", "parameters", "contextMenuItems", "canView", "formSetting", "conditionalFormats", "disableOverflowContextMenu", "navigationArrow", "isCheckList", "fields", "isChecked", "layout94$", "inlineEditMode", "isNewInlineMo", "allowInlineEdit", "typeDefId", "rowIndicator", "rowIndicatorColor", "UlvMainCtrlr"] }, { kind: "directive", type: i3.EllipsifyDirective, selector: "[ellipsify]", inputs: ["limitLine"] }, { kind: "component", type: i4.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "glyph", "zoomGlyph", "circle", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "random", "clickable", "backgroundImage", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "component", type: i5.LinkComponent, selector: "[fdLink], [fd-link], [fd-breadcrumb-link]", inputs: ["class", "emphasized", "disabled", "inverted", "subtle", "undecorated"] }, { kind: "component", type: i6.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i7.CardComponent, selector: "fd-card", inputs: ["badge", "isLoading", "cardType", "id", "role"] }, { kind: "component", type: i7.CardHeaderComponent, selector: "fd-card-header", inputs: ["interactive", "tabindex"] }, { kind: "component", type: i7.CardContentComponent, selector: "fd-card-content" }, { kind: "directive", type: i7.CardTitleDirective, selector: "[fd-card-title]" }, { kind: "component", type: i8.CheckboxComponent, selector: "fd-checkbox", inputs: ["ariaLabel", "value", "ariaLabelledBy", "ariaDescribedBy", "title", "inputId", "state", "name", "label", "disabled", "tristate", "tristateSelectable", "labelClass", "required", "values"], outputs: ["focusChange"] }, { kind: "component", type: i9.QuickViewComponent, selector: "fd-quick-view", inputs: ["id"] }, { kind: "component", type: i9.QuickViewSubheaderComponent, selector: "fd-quick-view-subheader" }, { kind: "component", type: i9.QuickViewSubheaderTitleComponent, selector: "fd-quick-view-subheader-title" }, { kind: "component", type: i9.QuickViewSubheaderSubtitleComponent, selector: "fd-quick-view-subheader-subtitle" }, { kind: "component", type: i9.QuickViewGroupComponent, selector: "fd-quick-view-group" }, { kind: "component", type: i9.QuickViewGroupItemComponent, selector: "fd-quick-view-group-item", inputs: ["id"] }, { kind: "component", type: i9.QuickViewGroupItemLabelComponent, selector: "fd-quick-view-group-item-label" }, { kind: "component", type: i9.QuickViewGroupItemContentComponent, selector: "fd-quick-view-group-item-content" }, { kind: "directive", type: i9.QuickViewGroupItemContentElementDirective, selector: "[fd-quick-view-group-item-content-element]" }, { kind: "component", type: i10.UlvContextMenuComponent, selector: "bsu-ulv-context-menu,[ulvContextMenu]", inputs: ["onlyOverflow", "deviceName", "menuItems", "allColumns", "index", "mo", "styleIndex", "conditionalFormats", "disableOverflowContextMenu", "footerMode"], outputs: ["commandClick"] }, { kind: "component", type: i11.ColumnRendererComponent, selector: "bsu-column-renderer,[colRenderer]", inputs: ["column", "mo", "index", "editMode", "customRowHeight", "controlUi", "formLayoutShowLabel", "isChecked", "isNewInlineMo", "containerDom", "disableEllapsis", "rtl", "deviceName", "deviceSize", "value", "icon"] }, { kind: "directive", type: i12.ApplyConditionalFormatsDirective, selector: "[applyConditionalFormats]", inputs: ["applyConditionalFormats", "styleIndex", "hostEl", "dbName"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.PictureFieldSourcePipe, name: "picFieldSrc" }, { kind: "pipe", type: i3.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i3.ControlUiPipe, name: "controlUi" }, { kind: "pipe", type: i3.ColumnIconPipe, name: "columnIcon" }, { kind: "pipe", type: i3.ColumnValuePipe, name: "columnValue" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
54
54
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: CardItemComponent, decorators: [{
55
55
  type: Component,
56
- args: [{ selector: 'bsu-card-item', providers: [FormPanelService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<fd-card\r\n cardType=\"quickView\"\r\n class=\"docs-flex-item-margin\"\r\n [class.openOnClick]=\"setting.openOnClick\"\r\n [style.width]=\"cardWidth\"\r\n [style.min-width]=\"minWidth\"\r\n [style.max-width]=\"maxWidth\"\r\n>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n setting.HeaderComponent ? renderHeaderComponent : renderHeader;\r\n context: {\r\n $implicit: mo,\r\n index: this.index\r\n }\r\n \"\r\n ></ng-container>\r\n\r\n <fd-card-content (click)=\"onRowCheck()\" (dblclick)=\"onRowClick()\" ellipsify *ngIf=\"!noContent || contextMenuItems\">\r\n <div #divEl [applyConditionalFormats]=\"conditionalFormats\" [styleIndex]=\"styleIndex\" [hostEl]=\"divEl\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n setting.ContentComponent ? contentTemplateComponent : contentTemplate;\r\n context: {\r\n $implicit: mo,\r\n index: this.index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n <ng-container *ngIf=\"contextMenuInFooter && contextMenuItems && contextMenuItems.length > 0\">\r\n <div\r\n ulvContextMenu\r\n [allColumns]=\"allColumns\"\r\n [footerMode]=\"true\"\r\n [menuItems]=\"contextMenuItems\"\r\n [styleIndex]=\"styleIndex\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [mo]=\"mo\"\r\n (commandClick)=\"onUlvCommand()\"\r\n ></div>\r\n </ng-container>\r\n </fd-card-content>\r\n</fd-card>\r\n\r\n<ng-template #columnTemplate let-column let-mo=\"mo\" let-index=\"index\" let-layout94=\"layout94\"\r\n ><div\r\n *ngIf=\"column\"\r\n #divEl\r\n [applyConditionalFormats]=\"conditionalFormats\"\r\n [styleIndex]=\"styleIndex\"\r\n [hostEl]=\"divEl\"\r\n [dbName]=\"column.Name\"\r\n >\r\n <bsu-column-renderer\r\n [mo]=\"mo\"\r\n [column]=\"column\"\r\n [value]=\"column | columnValue: mo | bbbTranslate\"\r\n [icon]=\"column | columnIcon: mo\"\r\n [editMode]=\"isChecked && inlineEditMode && allowInlineEdit\"\r\n [rtl]=\"rtl\"\r\n [isChecked]=\"isChecked\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [controlUi]=\"column.Caption | controlUi: layout94\"\r\n (keyup.control.enter)=\"onEditFormPanelSave($event)\"\r\n (keyup.esc)=\"onEditFormPanelCancel($event)\"\r\n (keydown.Tab)=\"onTabKeyDown($event, index)\"\r\n [formLayoutShowLabel]=\"true\"\r\n ></bsu-column-renderer>\r\n </div>\r\n</ng-template>\r\n<ng-template #contentTemplate let-mo let-index=\"index\">\r\n <fd-quick-view [id]=\"'id'\" *ngIf=\"!noContent\">\r\n <fd-quick-view-group>\r\n <fd-quick-view-subheader\r\n *ngIf=\"setting.Avatar || setting.AvatarField || setting.TitleField || setting.SubtitleField\"\r\n >\r\n <fd-avatar\r\n *ngIf=\"setting.AvatarField || setting.Avatar\"\r\n alterIcon=\"alt|content|backup|default-icon\"\r\n [circle]=\"setting.CircleAvatar\"\r\n [image]=\"\r\n setting.AvatarField\r\n ? (mo[setting.AvatarField.Name]?.FileId | picFieldSrc: 'ID':setting.AvatarField.FieldDefId)\r\n : ''\r\n \"\r\n [size]=\"avatarSize ? avatarSize : deviceSize === 's' ? 's' : 'm'\"\r\n [glyph]=\"\r\n setting.Avatar ||\r\n (mo.$State === 'New' && !isChecked ? 'favorite' : inlineEditMode && isChecked ? 'edit' : '')\r\n \"\r\n >\r\n </fd-avatar>\r\n <fd-quick-view-subheader-title *ngIf=\"setting.TitleField\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.TitleField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </fd-quick-view-subheader-title>\r\n <fd-quick-view-subheader-subtitle *ngIf=\"setting.SubtitleField\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.SubtitleField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </fd-quick-view-subheader-subtitle>\r\n </fd-quick-view-subheader>\r\n <fd-quick-view-group-item *ngFor=\"let column of setting.FieldListMapped\">\r\n <ng-container *ngIf=\"column\">\r\n <fd-quick-view-group-item-label>\r\n {{ column.Caption }}\r\n </fd-quick-view-group-item-label>\r\n <fd-quick-view-group-item-content>\r\n <div fd-quick-view-group-item-content-element class=\"group-item-content\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: column,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </fd-quick-view-group-item-content>\r\n </ng-container>\r\n </fd-quick-view-group-item>\r\n <fd-quick-view-group-item>\r\n <fd-quick-view-group-item-content *ngIf=\"setting.DescriptionField\">\r\n <fd-quick-view-group-item-label *ngIf=\"inlineEditMode && allowInlineEdit\">\r\n {{ setting.DescriptionField?.Alias }}\r\n </fd-quick-view-group-item-label>\r\n <div fd-quick-view-group-item-content-element class=\"group-item-content\">\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.DescriptionField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </fd-quick-view-group-item-content>\r\n <fd-quick-view-group-item-content\r\n class=\"action\"\r\n *ngIf=\"setting.ActionFieldNameField\"\r\n (click)=\"onAction(setting.ActionFieldCommandField || '')\"\r\n >\r\n <a fd-link>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n columnTemplate;\r\n context: {\r\n $implicit: setting.ActionFieldNameField,\r\n layout94: layout$ | async,\r\n mo: mo,\r\n index: index\r\n }\r\n \"\r\n ></ng-container>\r\n </a>\r\n </fd-quick-view-group-item-content>\r\n </fd-quick-view-group-item>\r\n </fd-quick-view-group>\r\n </fd-quick-view>\r\n</ng-template>\r\n<ng-template #contentTemplateComponent let-mo let-index=\"index\">\r\n <bnrc-dynamic-item-component\r\n [component]=\"setting.ContentComponent\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [isChecked]=\"isChecked\"\r\n [setting]=\"setting\"\r\n [parameters]=\"setting.ContentComponent.Settings\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n ></bnrc-dynamic-item-component>\r\n</ng-template>\r\n\r\n<ng-template #renderHeader let-mo let-index=\"index\">\r\n <fd-card-header\r\n *ngIf=\"\r\n isCheckList ||\r\n deviceName !== 'desktop' ||\r\n (contextMenuItems && contextMenuItems.length > 0 && !contextMenuInFooter)\r\n \"\r\n >\r\n <div\r\n fd-card-title\r\n [style.justify-content]=\"!isCheckList && canView && deviceName !== 'desktop' ? 'left' : 'space-between'\"\r\n >\r\n <div style=\"display: flex; justify-content: start; flex-grow: 1\">\r\n <fd-checkbox\r\n *ngIf=\"isCheckList\"\r\n [name]=\"mo.$Caption\"\r\n [ngModel]=\"isChecked\"\r\n (ngModelChange)=\"onRowCheck()\"\r\n ></fd-checkbox>\r\n <div\r\n *ngIf=\"!contextMenuInFooter && contextMenuItems && contextMenuItems.length > 0\"\r\n ulvContextMenu\r\n [allColumns]=\"allColumns\"\r\n [menuItems]=\"contextMenuItems\"\r\n [styleIndex]=\"styleIndex\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [mo]=\"mo\"\r\n (commandClick)=\"onUlvCommand()\"\r\n ></div>\r\n </div>\r\n <ng-container *ngIf=\"canView\">\r\n <button\r\n fd-button\r\n class=\"view-btn\"\r\n (click)=\"onRowClick()\"\r\n [glyph]=\"navigationArrow\"\r\n fdType=\"transparent\"\r\n ></button>\r\n </ng-container>\r\n </div>\r\n </fd-card-header>\r\n</ng-template>\r\n<ng-template #renderHeaderComponent let-mo let-index=\"index\">\r\n <bnrc-dynamic-item-component\r\n [component]=\"setting.HeaderComponent\"\r\n [mo]=\"mo\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [isChecked]=\"isChecked\"\r\n [setting]=\"setting\"\r\n [parameters]=\"setting.HeaderComponent.Settings\"\r\n [editMode]=\"inlineEditMode\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [index]=\"index\"\r\n [allColumns]=\"allColumns\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [canView]=\"canView\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [isCheckList]=\"isCheckList\"\r\n (events)=\"onDynamicComponentEvents($event)\"\r\n ></bnrc-dynamic-item-component>\r\n</ng-template>\r\n", styles: ["fd-card fd-card-content{padding:0!important}fd-card fd-card-header{padding:.5rem}fd-card fd-card-header:hover{background:var(--fdCard_Background_Color)}fd-card fd-card-header .fd-card__title{display:flex;justify-content:space-between;align-items:center;width:100%}fd-card fd-card-header button,fd-card fd-card-header div[ulvcontextmenu]{z-index:6}fd-card fd-card-header:hover{background:inherit}fd-quick-view-subheader ::ng-deep div{background:inherit}.action{cursor:pointer;margin-top:6px;flex:1;display:flex;justify-content:end;flex-direction:column}.openOnClick{cursor:pointer}\n"] }]
56
+ args: [{ selector: 'bsu-card-item', providers: [FormPanelService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<fd-card\n cardType=\"quickView\"\n class=\"docs-flex-item-margin\"\n [class.openOnClick]=\"setting.openOnClick\"\n [style.width]=\"cardWidth\"\n [style.min-width]=\"minWidth\"\n [style.max-width]=\"maxWidth\"\n>\n <ng-container\n *ngTemplateOutlet=\"\n setting.HeaderComponent ? renderHeaderComponent : renderHeader;\n context: {\n $implicit: mo,\n index: this.index\n }\n \"\n ></ng-container>\n\n <fd-card-content (click)=\"onRowCheck()\" (dblclick)=\"onRowClick()\" ellipsify *ngIf=\"!noContent || contextMenuItems\">\n <div #divEl [applyConditionalFormats]=\"conditionalFormats\" [styleIndex]=\"styleIndex\" [hostEl]=\"divEl\">\n <ng-container\n *ngTemplateOutlet=\"\n setting.ContentComponent ? contentTemplateComponent : contentTemplate;\n context: {\n $implicit: mo,\n index: this.index\n }\n \"\n ></ng-container>\n </div>\n <ng-container *ngIf=\"contextMenuInFooter && contextMenuItems && contextMenuItems.length > 0\">\n <div\n ulvContextMenu\n [allColumns]=\"allColumns\"\n [footerMode]=\"true\"\n [menuItems]=\"contextMenuItems\"\n [styleIndex]=\"styleIndex\"\n [conditionalFormats]=\"conditionalFormats\"\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\n [mo]=\"mo\"\n (commandClick)=\"onUlvCommand()\"\n ></div>\n </ng-container>\n </fd-card-content>\n</fd-card>\n\n<ng-template #columnTemplate let-column let-mo=\"mo\" let-index=\"index\" let-layout94=\"layout94\"\n ><div\n *ngIf=\"column\"\n #divEl\n [applyConditionalFormats]=\"conditionalFormats\"\n [styleIndex]=\"styleIndex\"\n [hostEl]=\"divEl\"\n [dbName]=\"column.Name\"\n >\n <bsu-column-renderer\n [mo]=\"mo\"\n [column]=\"column\"\n [value]=\"column | columnValue: mo | bbbTranslate\"\n [icon]=\"column | columnIcon: mo\"\n [editMode]=\"isChecked && inlineEditMode && allowInlineEdit\"\n [rtl]=\"rtl\"\n [isChecked]=\"isChecked\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [index]=\"index\"\n [controlUi]=\"column.Caption | controlUi: layout94\"\n (keyup.control.enter)=\"onEditFormPanelSave($event)\"\n (keyup.esc)=\"onEditFormPanelCancel($event)\"\n (keydown.Tab)=\"onTabKeyDown($event, index)\"\n [formLayoutShowLabel]=\"true\"\n ></bsu-column-renderer>\n </div>\n</ng-template>\n<ng-template #contentTemplate let-mo let-index=\"index\">\n <fd-quick-view [id]=\"'id'\" *ngIf=\"!noContent\">\n <fd-quick-view-group>\n <fd-quick-view-subheader\n *ngIf=\"setting.Avatar || setting.AvatarField || setting.TitleField || setting.SubtitleField\"\n >\n <fd-avatar\n *ngIf=\"setting.AvatarField || setting.Avatar\"\n alterIcon=\"alt|content|backup|default-icon\"\n [circle]=\"setting.CircleAvatar\"\n [image]=\"\n setting.AvatarField\n ? (mo[setting.AvatarField.Name]?.FileId | picFieldSrc: 'ID':setting.AvatarField.FieldDefId)\n : ''\n \"\n [size]=\"avatarSize ? avatarSize : deviceSize === 's' ? 's' : 'm'\"\n [glyph]=\"\n setting.Avatar ||\n (mo.$State === 'New' && !isChecked ? 'favorite' : inlineEditMode && isChecked ? 'edit' : '')\n \"\n >\n </fd-avatar>\n <fd-quick-view-subheader-title *ngIf=\"setting.TitleField\">\n <ng-container\n *ngTemplateOutlet=\"\n columnTemplate;\n context: {\n $implicit: setting.TitleField,\n layout94: layout$ | async,\n mo: mo,\n index: index\n }\n \"\n ></ng-container>\n </fd-quick-view-subheader-title>\n <fd-quick-view-subheader-subtitle *ngIf=\"setting.SubtitleField\">\n <ng-container\n *ngTemplateOutlet=\"\n columnTemplate;\n context: {\n $implicit: setting.SubtitleField,\n layout94: layout$ | async,\n mo: mo,\n index: index\n }\n \"\n ></ng-container>\n </fd-quick-view-subheader-subtitle>\n </fd-quick-view-subheader>\n <fd-quick-view-group-item *ngFor=\"let column of setting.FieldListMapped\">\n <ng-container *ngIf=\"column\">\n <fd-quick-view-group-item-label>\n {{ column.Caption | bbbTranslate }}\n </fd-quick-view-group-item-label>\n <fd-quick-view-group-item-content>\n <div fd-quick-view-group-item-content-element class=\"group-item-content\">\n <ng-container\n *ngTemplateOutlet=\"\n columnTemplate;\n context: {\n $implicit: column,\n layout94: layout$ | async,\n mo: mo,\n index: index\n }\n \"\n ></ng-container>\n </div>\n </fd-quick-view-group-item-content>\n </ng-container>\n </fd-quick-view-group-item>\n <fd-quick-view-group-item>\n <fd-quick-view-group-item-content *ngIf=\"setting.DescriptionField\">\n <fd-quick-view-group-item-label *ngIf=\"inlineEditMode && allowInlineEdit\">\n {{ setting.DescriptionField?.Alias | bbbTranslate }}\n </fd-quick-view-group-item-label>\n <div fd-quick-view-group-item-content-element class=\"group-item-content\">\n <ng-container\n *ngTemplateOutlet=\"\n columnTemplate;\n context: {\n $implicit: setting.DescriptionField,\n layout94: layout$ | async,\n mo: mo,\n index: index\n }\n \"\n ></ng-container>\n </div>\n </fd-quick-view-group-item-content>\n <fd-quick-view-group-item-content\n class=\"action\"\n *ngIf=\"setting.ActionFieldNameField\"\n (click)=\"onAction(setting.ActionFieldCommandField || '')\"\n >\n <a fd-link>\n <ng-container\n *ngTemplateOutlet=\"\n columnTemplate;\n context: {\n $implicit: setting.ActionFieldNameField,\n layout94: layout$ | async,\n mo: mo,\n index: index\n }\n \"\n ></ng-container>\n </a>\n </fd-quick-view-group-item-content>\n </fd-quick-view-group-item>\n </fd-quick-view-group>\n </fd-quick-view>\n</ng-template>\n<ng-template #contentTemplateComponent let-mo let-index=\"index\">\n <bnrc-dynamic-item-component\n [component]=\"setting.ContentComponent\"\n [mo]=\"mo\"\n [styleIndex]=\"mo.$StyleIndex\"\n [isChecked]=\"isChecked\"\n [setting]=\"setting\"\n [parameters]=\"setting.ContentComponent.Settings\"\n [editMode]=\"inlineEditMode\"\n [rtl]=\"rtl\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [index]=\"index\"\n [allColumns]=\"allColumns\"\n ></bnrc-dynamic-item-component>\n</ng-template>\n\n<ng-template #renderHeader let-mo let-index=\"index\">\n <fd-card-header\n *ngIf=\"\n isCheckList ||\n deviceName !== 'desktop' ||\n (contextMenuItems && contextMenuItems.length > 0 && !contextMenuInFooter)\n \"\n >\n <div\n fd-card-title\n [style.justify-content]=\"!isCheckList && canView && deviceName !== 'desktop' ? 'left' : 'space-between'\"\n >\n <div style=\"display: flex; justify-content: start; flex-grow: 1\">\n <fd-checkbox\n *ngIf=\"isCheckList\"\n [name]=\"mo.$Caption\"\n [ngModel]=\"isChecked\"\n (ngModelChange)=\"onRowCheck()\"\n ></fd-checkbox>\n <div\n *ngIf=\"!contextMenuInFooter && contextMenuItems && contextMenuItems.length > 0\"\n ulvContextMenu\n [allColumns]=\"allColumns\"\n [menuItems]=\"contextMenuItems\"\n [styleIndex]=\"styleIndex\"\n [conditionalFormats]=\"conditionalFormats\"\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\n [mo]=\"mo\"\n (commandClick)=\"onUlvCommand()\"\n ></div>\n </div>\n <ng-container *ngIf=\"canView\">\n <button\n fd-button\n class=\"view-btn\"\n (click)=\"onRowClick()\"\n [glyph]=\"navigationArrow\"\n fdType=\"transparent\"\n ></button>\n </ng-container>\n </div>\n </fd-card-header>\n</ng-template>\n<ng-template #renderHeaderComponent let-mo let-index=\"index\">\n <bnrc-dynamic-item-component\n [component]=\"setting.HeaderComponent\"\n [mo]=\"mo\"\n [styleIndex]=\"mo.$StyleIndex\"\n [isChecked]=\"isChecked\"\n [setting]=\"setting\"\n [parameters]=\"setting.HeaderComponent.Settings\"\n [editMode]=\"inlineEditMode\"\n [rtl]=\"rtl\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [index]=\"index\"\n [allColumns]=\"allColumns\"\n [contextMenuItems]=\"contextMenuItems\"\n [canView]=\"canView\"\n [conditionalFormats]=\"conditionalFormats\"\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\n [navigationArrow]=\"navigationArrow\"\n [isCheckList]=\"isCheckList\"\n (events)=\"onDynamicComponentEvents($event)\"\n ></bnrc-dynamic-item-component>\n</ng-template>\n", styles: ["fd-card fd-card-content{padding:0!important}fd-card fd-card-header{padding:.5rem}fd-card fd-card-header:hover{background:var(--fdCard_Background_Color)}fd-card fd-card-header .fd-card__title{display:flex;justify-content:space-between;align-items:center;width:100%}fd-card fd-card-header button,fd-card fd-card-header div[ulvcontextmenu]{z-index:6}fd-card fd-card-header:hover{background:inherit}fd-quick-view-subheader ::ng-deep div{background:inherit}.action{cursor:pointer;margin-top:6px;flex:1;display:flex;justify-content:end;flex-direction:column}.openOnClick{cursor:pointer}\n"] }]
57
57
  }], propDecorators: { setting: [{
58
58
  type: Input
59
59
  }] } });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL2NhcmQtaXRlbS9jYXJkLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvY2FyZC1pdGVtL2NhcmQtaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLHVCQUF1QixFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVsRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFVcEYsTUFBTSxPQUFPLGlCQUFrQixTQUFRLDBCQUEwQjtJQVE3RCxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDN0IsSUFBSSxPQUFPLENBQUMsbUJBQW1CLEVBQUU7WUFDN0IsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQztTQUNuQztRQUNELElBQ0ksQ0FBQyxPQUFPLENBQUMsV0FBVztZQUNwQixDQUFDLE9BQU8sQ0FBQyxVQUFVO1lBQ25CLENBQUMsT0FBTyxDQUFDLGFBQWE7WUFDdEIsQ0FBQyxPQUFPLENBQUMsU0FBUztZQUNsQixDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsRUFDM0I7WUFDRSxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztTQUN6QjtRQUNELElBQUksT0FBTyxDQUFDLFNBQVMsRUFBRTtZQUNuQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDO1NBQ3RFO1FBQ0QsSUFBSSxVQUFVLENBQUM7UUFDZixRQUFRLE9BQU8sQ0FBQyxVQUFVLEVBQUU7WUFDeEIsS0FBSyxHQUFHO2dCQUNKLFVBQVUsR0FBRyxHQUFHLENBQUM7Z0JBQ2pCLE1BQU07WUFDVixLQUFLLEdBQUc7Z0JBQ0osVUFBVSxHQUFHLEdBQUcsQ0FBQztnQkFDakIsTUFBTTtZQUNWLEtBQUssR0FBRztnQkFDSixVQUFVLEdBQUcsSUFBSSxDQUFDO2dCQUNsQixNQUFNO1lBQ1YsS0FBSyxHQUFHLENBQUM7WUFDVDtnQkFDSSxVQUFVLEdBQUcsR0FBRyxDQUFDO2dCQUNqQixNQUFNO1NBQ2I7UUFDRCxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztJQUNqQyxDQUFDOzs4R0EzQ1EsaUJBQWlCO2tHQUFqQixpQkFBaUIsd0VBSGYsQ0FBQyxnQkFBZ0IsQ0FBQyxpRENUakMsNmdZQThRQTsyRkRsUWEsaUJBQWlCO2tCQVA3QixTQUFTOytCQUNJLGVBQWUsYUFHZCxDQUFDLGdCQUFnQixDQUFDLG1CQUNaLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLE9BQU87c0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU2l6ZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XHJcbmltcG9ydCB7IEJhc2VWaWV3SXRlbVByb3BzQ29tcG9uZW50LCBGb3JtUGFuZWxTZXJ2aWNlIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5pbXBvcnQgeyBVaUNhcmRMaXN0Vmlld1NldHRpbmcgfSBmcm9tICcuLi9tb2RlbHMvZ3JpZC12aWV3JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdic3UtY2FyZC1pdGVtJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9jYXJkLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vY2FyZC1pdGVtLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBwcm92aWRlcnM6IFtGb3JtUGFuZWxTZXJ2aWNlXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDYXJkSXRlbUNvbXBvbmVudCBleHRlbmRzIEJhc2VWaWV3SXRlbVByb3BzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBJbnB1dCgpIHNldHRpbmc6IFVpQ2FyZExpc3RWaWV3U2V0dGluZztcclxuICAgIG5vQ29udGVudDogYm9vbGVhbjtcclxuICAgIGNhcmRXaWR0aDogc3RyaW5nO1xyXG4gICAgbWF4V2lkdGg6IHN0cmluZztcclxuICAgIG1pbldpZHRoOiBzdHJpbmc7XHJcbiAgICBjb250ZXh0TWVudUluRm9vdGVyOiBib29sZWFuO1xyXG4gICAgYXZhdGFyU2l6ZTogU2l6ZTtcclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICAgICAgY29uc3Qgc2V0dGluZyA9IHRoaXMuc2V0dGluZztcclxuICAgICAgICBpZiAoc2V0dGluZy5Db250ZXh0TWVudUluRm9vdGVyKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY29udGV4dE1lbnVJbkZvb3RlciA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgICAgIXNldHRpbmcuQXZhdGFyRmllbGQgJiZcclxuICAgICAgICAgICAgIXNldHRpbmcuVGl0bGVGaWVsZCAmJlxyXG4gICAgICAgICAgICAhc2V0dGluZy5TdWJ0aXRsZUZpZWxkICYmXHJcbiAgICAgICAgICAgICFzZXR0aW5nLkZpZWxkTGlzdCAmJlxyXG4gICAgICAgICAgICAhc2V0dGluZy5Db250ZW50Q29tcG9uZW50XHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICAgIHRoaXMubm9Db250ZW50ID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHNldHRpbmcuQ2FyZFdpZHRoKSB7XHJcbiAgICAgICAgICAgIHRoaXMubWluV2lkdGggPSB0aGlzLm1heFdpZHRoID0gdGhpcy5jYXJkV2lkdGggPSBzZXR0aW5nLkNhcmRXaWR0aDtcclxuICAgICAgICB9XHJcbiAgICAgICAgbGV0IGF2YXRhclNpemU7XHJcbiAgICAgICAgc3dpdGNoIChzZXR0aW5nLkF2YXRhclNpemUpIHtcclxuICAgICAgICAgICAgY2FzZSAnMic6XHJcbiAgICAgICAgICAgICAgICBhdmF0YXJTaXplID0gJ20nO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgJzMnOlxyXG4gICAgICAgICAgICAgICAgYXZhdGFyU2l6ZSA9ICdsJztcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBjYXNlICc0JzpcclxuICAgICAgICAgICAgICAgIGF2YXRhclNpemUgPSAneGwnO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgJzEnOlxyXG4gICAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICAgICAgYXZhdGFyU2l6ZSA9ICdzJztcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmF2YXRhclNpemUgPSBhdmF0YXJTaXplO1xyXG4gICAgfVxyXG59XHJcbiIsIjxmZC1jYXJkXHJcbiAgICBjYXJkVHlwZT1cInF1aWNrVmlld1wiXHJcbiAgICBjbGFzcz1cImRvY3MtZmxleC1pdGVtLW1hcmdpblwiXHJcbiAgICBbY2xhc3Mub3Blbk9uQ2xpY2tdPVwic2V0dGluZy5vcGVuT25DbGlja1wiXHJcbiAgICBbc3R5bGUud2lkdGhdPVwiY2FyZFdpZHRoXCJcclxuICAgIFtzdHlsZS5taW4td2lkdGhdPVwibWluV2lkdGhcIlxyXG4gICAgW3N0eWxlLm1heC13aWR0aF09XCJtYXhXaWR0aFwiXHJcbj5cclxuICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxyXG4gICAgICAgICAgICBzZXR0aW5nLkhlYWRlckNvbXBvbmVudCA/IHJlbmRlckhlYWRlckNvbXBvbmVudCA6IHJlbmRlckhlYWRlcjtcclxuICAgICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICAgICAgJGltcGxpY2l0OiBtbyxcclxuICAgICAgICAgICAgICAgIGluZGV4OiB0aGlzLmluZGV4XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICBcIlxyXG4gICAgPjwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDxmZC1jYXJkLWNvbnRlbnQgKGNsaWNrKT1cIm9uUm93Q2hlY2soKVwiIChkYmxjbGljayk9XCJvblJvd0NsaWNrKClcIiBlbGxpcHNpZnkgKm5nSWY9XCIhbm9Db250ZW50IHx8IGNvbnRleHRNZW51SXRlbXNcIj5cclxuICAgICAgICA8ZGl2ICNkaXZFbCBbYXBwbHlDb25kaXRpb25hbEZvcm1hdHNdPVwiY29uZGl0aW9uYWxGb3JtYXRzXCIgW3N0eWxlSW5kZXhdPVwic3R5bGVJbmRleFwiIFtob3N0RWxdPVwiZGl2RWxcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxyXG4gICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcclxuICAgICAgICAgICAgICAgICAgICBzZXR0aW5nLkNvbnRlbnRDb21wb25lbnQgPyBjb250ZW50VGVtcGxhdGVDb21wb25lbnQgOiBjb250ZW50VGVtcGxhdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IG1vLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpbmRleDogdGhpcy5pbmRleFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIFwiXHJcbiAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29udGV4dE1lbnVJbkZvb3RlciAmJiBjb250ZXh0TWVudUl0ZW1zICYmIGNvbnRleHRNZW51SXRlbXMubGVuZ3RoID4gMFwiPlxyXG4gICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICB1bHZDb250ZXh0TWVudVxyXG4gICAgICAgICAgICAgICAgW2FsbENvbHVtbnNdPVwiYWxsQ29sdW1uc1wiXHJcbiAgICAgICAgICAgICAgICBbZm9vdGVyTW9kZV09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgIFttZW51SXRlbXNdPVwiY29udGV4dE1lbnVJdGVtc1wiXHJcbiAgICAgICAgICAgICAgICBbc3R5bGVJbmRleF09XCJzdHlsZUluZGV4XCJcclxuICAgICAgICAgICAgICAgIFtjb25kaXRpb25hbEZvcm1hdHNdPVwiY29uZGl0aW9uYWxGb3JtYXRzXCJcclxuICAgICAgICAgICAgICAgIFtkaXNhYmxlT3ZlcmZsb3dDb250ZXh0TWVudV09XCJkaXNhYmxlT3ZlcmZsb3dDb250ZXh0TWVudVwiXHJcbiAgICAgICAgICAgICAgICBbbW9dPVwibW9cIlxyXG4gICAgICAgICAgICAgICAgKGNvbW1hbmRDbGljayk9XCJvblVsdkNvbW1hbmQoKVwiXHJcbiAgICAgICAgICAgID48L2Rpdj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDwvZmQtY2FyZC1jb250ZW50PlxyXG48L2ZkLWNhcmQ+XHJcblxyXG48bmctdGVtcGxhdGUgI2NvbHVtblRlbXBsYXRlIGxldC1jb2x1bW4gbGV0LW1vPVwibW9cIiBsZXQtaW5kZXg9XCJpbmRleFwiIGxldC1sYXlvdXQ5ND1cImxheW91dDk0XCJcclxuICAgID48ZGl2XHJcbiAgICAgICAgKm5nSWY9XCJjb2x1bW5cIlxyXG4gICAgICAgICNkaXZFbFxyXG4gICAgICAgIFthcHBseUNvbmRpdGlvbmFsRm9ybWF0c109XCJjb25kaXRpb25hbEZvcm1hdHNcIlxyXG4gICAgICAgIFtzdHlsZUluZGV4XT1cInN0eWxlSW5kZXhcIlxyXG4gICAgICAgIFtob3N0RWxdPVwiZGl2RWxcIlxyXG4gICAgICAgIFtkYk5hbWVdPVwiY29sdW1uLk5hbWVcIlxyXG4gICAgPlxyXG4gICAgICAgIDxic3UtY29sdW1uLXJlbmRlcmVyXHJcbiAgICAgICAgICAgIFttb109XCJtb1wiXHJcbiAgICAgICAgICAgIFtjb2x1bW5dPVwiY29sdW1uXCJcclxuICAgICAgICAgICAgW3ZhbHVlXT1cImNvbHVtbiB8IGNvbHVtblZhbHVlOiBtbyB8IGJiYlRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgIFtpY29uXT1cImNvbHVtbiB8IGNvbHVtbkljb246IG1vXCJcclxuICAgICAgICAgICAgW2VkaXRNb2RlXT1cImlzQ2hlY2tlZCAmJiBpbmxpbmVFZGl0TW9kZSAmJiBhbGxvd0lubGluZUVkaXRcIlxyXG4gICAgICAgICAgICBbcnRsXT1cInJ0bFwiXHJcbiAgICAgICAgICAgIFtpc0NoZWNrZWRdPVwiaXNDaGVja2VkXCJcclxuICAgICAgICAgICAgW2RldmljZU5hbWVdPVwiZGV2aWNlTmFtZVwiXHJcbiAgICAgICAgICAgIFtkZXZpY2VTaXplXT1cImRldmljZVNpemVcIlxyXG4gICAgICAgICAgICBbaW5kZXhdPVwiaW5kZXhcIlxyXG4gICAgICAgICAgICBbY29udHJvbFVpXT1cImNvbHVtbi5DYXB0aW9uIHwgY29udHJvbFVpOiBsYXlvdXQ5NFwiXHJcbiAgICAgICAgICAgIChrZXl1cC5jb250cm9sLmVudGVyKT1cIm9uRWRpdEZvcm1QYW5lbFNhdmUoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgIChrZXl1cC5lc2MpPVwib25FZGl0Rm9ybVBhbmVsQ2FuY2VsKCRldmVudClcIlxyXG4gICAgICAgICAgICAoa2V5ZG93bi5UYWIpPVwib25UYWJLZXlEb3duKCRldmVudCwgaW5kZXgpXCJcclxuICAgICAgICAgICAgW2Zvcm1MYXlvdXRTaG93TGFiZWxdPVwidHJ1ZVwiXHJcbiAgICAgICAgPjwvYnN1LWNvbHVtbi1yZW5kZXJlcj5cclxuICAgIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG48bmctdGVtcGxhdGUgI2NvbnRlbnRUZW1wbGF0ZSBsZXQtbW8gbGV0LWluZGV4PVwiaW5kZXhcIj5cclxuICAgIDxmZC1xdWljay12aWV3IFtpZF09XCInaWQnXCIgKm5nSWY9XCIhbm9Db250ZW50XCI+XHJcbiAgICAgICAgPGZkLXF1aWNrLXZpZXctZ3JvdXA+XHJcbiAgICAgICAgICAgIDxmZC1xdWljay12aWV3LXN1YmhlYWRlclxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJzZXR0aW5nLkF2YXRhciB8fCBzZXR0aW5nLkF2YXRhckZpZWxkIHx8IHNldHRpbmcuVGl0bGVGaWVsZCB8fCBzZXR0aW5nLlN1YnRpdGxlRmllbGRcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8ZmQtYXZhdGFyXHJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJzZXR0aW5nLkF2YXRhckZpZWxkIHx8IHNldHRpbmcuQXZhdGFyXCJcclxuICAgICAgICAgICAgICAgICAgICBhbHRlckljb249XCJhbHR8Y29udGVudHxiYWNrdXB8ZGVmYXVsdC1pY29uXCJcclxuICAgICAgICAgICAgICAgICAgICBbY2lyY2xlXT1cInNldHRpbmcuQ2lyY2xlQXZhdGFyXCJcclxuICAgICAgICAgICAgICAgICAgICBbaW1hZ2VdPVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldHRpbmcuQXZhdGFyRmllbGRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gKG1vW3NldHRpbmcuQXZhdGFyRmllbGQuTmFtZV0/LkZpbGVJZCB8IHBpY0ZpZWxkU3JjOiAnSUQnOnNldHRpbmcuQXZhdGFyRmllbGQuRmllbGREZWZJZClcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJydcclxuICAgICAgICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtzaXplXT1cImF2YXRhclNpemUgPyBhdmF0YXJTaXplIDogZGV2aWNlU2l6ZSA9PT0gJ3MnID8gJ3MnIDogJ20nXCJcclxuICAgICAgICAgICAgICAgICAgICBbZ2x5cGhdPVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldHRpbmcuQXZhdGFyIHx8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChtby4kU3RhdGUgPT09ICdOZXcnICYmICFpc0NoZWNrZWQgPyAnZmF2b3JpdGUnIDogaW5saW5lRWRpdE1vZGUgJiYgaXNDaGVja2VkID8gJ2VkaXQnIDogJycpXHJcbiAgICAgICAgICAgICAgICAgICAgXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDwvZmQtYXZhdGFyPlxyXG4gICAgICAgICAgICAgICAgPGZkLXF1aWNrLXZpZXctc3ViaGVhZGVyLXRpdGxlICpuZ0lmPVwic2V0dGluZy5UaXRsZUZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxyXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uVGVtcGxhdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGltcGxpY2l0OiBzZXR0aW5nLlRpdGxlRmllbGQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGF5b3V0OTQ6IGxheW91dCQgfCBhc3luYyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtbzogbW8sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kZXg6IGluZGV4XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiXHJcbiAgICAgICAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPC9mZC1xdWljay12aWV3LXN1YmhlYWRlci10aXRsZT5cclxuICAgICAgICAgICAgICAgIDxmZC1xdWljay12aWV3LXN1YmhlYWRlci1zdWJ0aXRsZSAqbmdJZj1cInNldHRpbmcuU3VidGl0bGVGaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtblRlbXBsYXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRpbXBsaWNpdDogc2V0dGluZy5TdWJ0aXRsZUZpZWxkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxheW91dDk0OiBsYXlvdXQkIHwgYXN5bmMsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW86IG1vLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4OiBpbmRleFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDwvZmQtcXVpY2stdmlldy1zdWJoZWFkZXItc3VidGl0bGU+XHJcbiAgICAgICAgICAgIDwvZmQtcXVpY2stdmlldy1zdWJoZWFkZXI+XHJcbiAgICAgICAgICAgIDxmZC1xdWljay12aWV3LWdyb3VwLWl0ZW0gKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBzZXR0aW5nLkZpZWxkTGlzdE1hcHBlZFwiPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxmZC1xdWljay12aWV3LWdyb3VwLWl0ZW0tbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IGNvbHVtbi5DYXB0aW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgPC9mZC1xdWljay12aWV3LWdyb3VwLWl0ZW0tbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPGZkLXF1aWNrLXZpZXctZ3JvdXAtaXRlbS1jb250ZW50PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGZkLXF1aWNrLXZpZXctZ3JvdXAtaXRlbS1jb250ZW50LWVsZW1lbnQgY2xhc3M9XCJncm91cC1pdGVtLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2x1bW5UZW1wbGF0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGltcGxpY2l0OiBjb2x1bW4sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYXlvdXQ5NDogbGF5b3V0JCB8IGFzeW5jLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW86IG1vLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kZXg6IGluZGV4XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2ZkLXF1aWNrLXZpZXctZ3JvdXAtaXRlbS1jb250ZW50PlxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgIDwvZmQtcXVpY2stdmlldy1ncm91cC1pdGVtPlxyXG4gICAgICAgICAgICA8ZmQtcXVpY2stdmlldy1ncm91cC1pdGVtPlxyXG4gICAgICAgICAgICAgICAgPGZkLXF1aWNrLXZpZXctZ3JvdXAtaXRlbS1jb250ZW50ICpuZ0lmPVwic2V0dGluZy5EZXNjcmlwdGlvbkZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGZkLXF1aWNrLXZpZXctZ3JvdXAtaXRlbS1sYWJlbCAqbmdJZj1cImlubGluZUVkaXRNb2RlICYmIGFsbG93SW5saW5lRWRpdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBzZXR0aW5nLkRlc2NyaXB0aW9uRmllbGQ/LkFsaWFzIH19XHJcbiAgICAgICAgICAgICAgICAgICAgPC9mZC1xdWljay12aWV3LWdyb3VwLWl0ZW0tbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBmZC1xdWljay12aWV3LWdyb3VwLWl0ZW0tY29udGVudC1lbGVtZW50IGNsYXNzPVwiZ3JvdXAtaXRlbS1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uVGVtcGxhdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IHNldHRpbmcuRGVzY3JpcHRpb25GaWVsZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGF5b3V0OTQ6IGxheW91dCQgfCBhc3luYyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW86IG1vLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmRleDogaW5kZXhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2ZkLXF1aWNrLXZpZXctZ3JvdXAtaXRlbS1jb250ZW50PlxyXG4gICAgICAgICAgICAgICAgPGZkLXF1aWNrLXZpZXctZ3JvdXAtaXRlbS1jb250ZW50XHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhY3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwic2V0dGluZy5BY3Rpb25GaWVsZE5hbWVGaWVsZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQWN0aW9uKHNldHRpbmcuQWN0aW9uRmllbGRDb21tYW5kRmllbGQgfHwgJycpXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICA8YSBmZC1saW5rPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtblRlbXBsYXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQ6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGltcGxpY2l0OiBzZXR0aW5nLkFjdGlvbkZpZWxkTmFtZUZpZWxkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYXlvdXQ5NDogbGF5b3V0JCB8IGFzeW5jLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtbzogbW8sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4OiBpbmRleFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgICAgICA8L2ZkLXF1aWNrLXZpZXctZ3JvdXAtaXRlbS1jb250ZW50PlxyXG4gICAgICAgICAgICA8L2ZkLXF1aWNrLXZpZXctZ3JvdXAtaXRlbT5cclxuICAgICAgICA8L2ZkLXF1aWNrLXZpZXctZ3JvdXA+XHJcbiAgICA8L2ZkLXF1aWNrLXZpZXc+XHJcbjwvbmctdGVtcGxhdGU+XHJcbjxuZy10ZW1wbGF0ZSAjY29udGVudFRlbXBsYXRlQ29tcG9uZW50IGxldC1tbyBsZXQtaW5kZXg9XCJpbmRleFwiPlxyXG4gICAgPGJucmMtZHluYW1pYy1pdGVtLWNvbXBvbmVudFxyXG4gICAgICAgIFtjb21wb25lbnRdPVwic2V0dGluZy5Db250ZW50Q29tcG9uZW50XCJcclxuICAgICAgICBbbW9dPVwibW9cIlxyXG4gICAgICAgIFtzdHlsZUluZGV4XT1cIm1vLiRTdHlsZUluZGV4XCJcclxuICAgICAgICBbaXNDaGVja2VkXT1cImlzQ2hlY2tlZFwiXHJcbiAgICAgICAgW3NldHRpbmddPVwic2V0dGluZ1wiXHJcbiAgICAgICAgW3BhcmFtZXRlcnNdPVwic2V0dGluZy5Db250ZW50Q29tcG9uZW50LlNldHRpbmdzXCJcclxuICAgICAgICBbZWRpdE1vZGVdPVwiaW5saW5lRWRpdE1vZGVcIlxyXG4gICAgICAgIFtydGxdPVwicnRsXCJcclxuICAgICAgICBbZGV2aWNlTmFtZV09XCJkZXZpY2VOYW1lXCJcclxuICAgICAgICBbZGV2aWNlU2l6ZV09XCJkZXZpY2VTaXplXCJcclxuICAgICAgICBbaW5kZXhdPVwiaW5kZXhcIlxyXG4gICAgICAgIFthbGxDb2x1bW5zXT1cImFsbENvbHVtbnNcIlxyXG4gICAgPjwvYm5yYy1keW5hbWljLWl0ZW0tY29tcG9uZW50PlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICNyZW5kZXJIZWFkZXIgbGV0LW1vIGxldC1pbmRleD1cImluZGV4XCI+XHJcbiAgICA8ZmQtY2FyZC1oZWFkZXJcclxuICAgICAgICAqbmdJZj1cIlxyXG4gICAgICAgICAgICBpc0NoZWNrTGlzdCB8fFxyXG4gICAgICAgICAgICBkZXZpY2VOYW1lICE9PSAnZGVza3RvcCcgfHxcclxuICAgICAgICAgICAgKGNvbnRleHRNZW51SXRlbXMgJiYgY29udGV4dE1lbnVJdGVtcy5sZW5ndGggPiAwICYmICFjb250ZXh0TWVudUluRm9vdGVyKVxyXG4gICAgICAgIFwiXHJcbiAgICA+XHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICBmZC1jYXJkLXRpdGxlXHJcbiAgICAgICAgICAgIFtzdHlsZS5qdXN0aWZ5LWNvbnRlbnRdPVwiIWlzQ2hlY2tMaXN0ICYmIGNhblZpZXcgJiYgZGV2aWNlTmFtZSAhPT0gJ2Rlc2t0b3AnID8gJ2xlZnQnIDogJ3NwYWNlLWJldHdlZW4nXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0OyBmbGV4LWdyb3c6IDFcIj5cclxuICAgICAgICAgICAgICAgIDxmZC1jaGVja2JveFxyXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaXNDaGVja0xpc3RcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtuYW1lXT1cIm1vLiRDYXB0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJpc0NoZWNrZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uUm93Q2hlY2soKVwiXHJcbiAgICAgICAgICAgICAgICA+PC9mZC1jaGVja2JveD5cclxuICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFjb250ZXh0TWVudUluRm9vdGVyICYmIGNvbnRleHRNZW51SXRlbXMgJiYgY29udGV4dE1lbnVJdGVtcy5sZW5ndGggPiAwXCJcclxuICAgICAgICAgICAgICAgICAgICB1bHZDb250ZXh0TWVudVxyXG4gICAgICAgICAgICAgICAgICAgIFthbGxDb2x1bW5zXT1cImFsbENvbHVtbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgIFttZW51SXRlbXNdPVwiY29udGV4dE1lbnVJdGVtc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW3N0eWxlSW5kZXhdPVwic3R5bGVJbmRleFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2NvbmRpdGlvbmFsRm9ybWF0c109XCJjb25kaXRpb25hbEZvcm1hdHNcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlT3ZlcmZsb3dDb250ZXh0TWVudV09XCJkaXNhYmxlT3ZlcmZsb3dDb250ZXh0TWVudVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW21vXT1cIm1vXCJcclxuICAgICAgICAgICAgICAgICAgICAoY29tbWFuZENsaWNrKT1cIm9uVWx2Q29tbWFuZCgpXCJcclxuICAgICAgICAgICAgICAgID48L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjYW5WaWV3XCI+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgZmQtYnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ2aWV3LWJ0blwiXHJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uUm93Q2xpY2soKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2dseXBoXT1cIm5hdmlnYXRpb25BcnJvd1wiXHJcbiAgICAgICAgICAgICAgICAgICAgZmRUeXBlPVwidHJhbnNwYXJlbnRcIlxyXG4gICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZmQtY2FyZC1oZWFkZXI+XHJcbjwvbmctdGVtcGxhdGU+XHJcbjxuZy10ZW1wbGF0ZSAjcmVuZGVySGVhZGVyQ29tcG9uZW50IGxldC1tbyBsZXQtaW5kZXg9XCJpbmRleFwiPlxyXG4gICAgPGJucmMtZHluYW1pYy1pdGVtLWNvbXBvbmVudFxyXG4gICAgICAgIFtjb21wb25lbnRdPVwic2V0dGluZy5IZWFkZXJDb21wb25lbnRcIlxyXG4gICAgICAgIFttb109XCJtb1wiXHJcbiAgICAgICAgW3N0eWxlSW5kZXhdPVwibW8uJFN0eWxlSW5kZXhcIlxyXG4gICAgICAgIFtpc0NoZWNrZWRdPVwiaXNDaGVja2VkXCJcclxuICAgICAgICBbc2V0dGluZ109XCJzZXR0aW5nXCJcclxuICAgICAgICBbcGFyYW1ldGVyc109XCJzZXR0aW5nLkhlYWRlckNvbXBvbmVudC5TZXR0aW5nc1wiXHJcbiAgICAgICAgW2VkaXRNb2RlXT1cImlubGluZUVkaXRNb2RlXCJcclxuICAgICAgICBbcnRsXT1cInJ0bFwiXHJcbiAgICAgICAgW2RldmljZU5hbWVdPVwiZGV2aWNlTmFtZVwiXHJcbiAgICAgICAgW2RldmljZVNpemVdPVwiZGV2aWNlU2l6ZVwiXHJcbiAgICAgICAgW2luZGV4XT1cImluZGV4XCJcclxuICAgICAgICBbYWxsQ29sdW1uc109XCJhbGxDb2x1bW5zXCJcclxuICAgICAgICBbY29udGV4dE1lbnVJdGVtc109XCJjb250ZXh0TWVudUl0ZW1zXCJcclxuICAgICAgICBbY2FuVmlld109XCJjYW5WaWV3XCJcclxuICAgICAgICBbY29uZGl0aW9uYWxGb3JtYXRzXT1cImNvbmRpdGlvbmFsRm9ybWF0c1wiXHJcbiAgICAgICAgW2Rpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XT1cImRpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XCJcclxuICAgICAgICBbbmF2aWdhdGlvbkFycm93XT1cIm5hdmlnYXRpb25BcnJvd1wiXHJcbiAgICAgICAgW2lzQ2hlY2tMaXN0XT1cImlzQ2hlY2tMaXN0XCJcclxuICAgICAgICAoZXZlbnRzKT1cIm9uRHluYW1pY0NvbXBvbmVudEV2ZW50cygkZXZlbnQpXCJcclxuICAgID48L2JucmMtZHluYW1pYy1pdGVtLWNvbXBvbmVudD5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL2NhcmQtaXRlbS9jYXJkLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvY2FyZC1pdGVtL2NhcmQtaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLHVCQUF1QixFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVsRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFVcEYsTUFBTSxPQUFPLGlCQUFrQixTQUFRLDBCQUEwQjtJQVE3RCxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDN0IsSUFBSSxPQUFPLENBQUMsbUJBQW1CLEVBQUU7WUFDN0IsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQztTQUNuQztRQUNELElBQ0ksQ0FBQyxPQUFPLENBQUMsV0FBVztZQUNwQixDQUFDLE9BQU8sQ0FBQyxVQUFVO1lBQ25CLENBQUMsT0FBTyxDQUFDLGFBQWE7WUFDdEIsQ0FBQyxPQUFPLENBQUMsU0FBUztZQUNsQixDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsRUFDM0I7WUFDRSxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztTQUN6QjtRQUNELElBQUksT0FBTyxDQUFDLFNBQVMsRUFBRTtZQUNuQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDO1NBQ3RFO1FBQ0QsSUFBSSxVQUFVLENBQUM7UUFDZixRQUFRLE9BQU8sQ0FBQyxVQUFVLEVBQUU7WUFDeEIsS0FBSyxHQUFHO2dCQUNKLFVBQVUsR0FBRyxHQUFHLENBQUM7Z0JBQ2pCLE1BQU07WUFDVixLQUFLLEdBQUc7Z0JBQ0osVUFBVSxHQUFHLEdBQUcsQ0FBQztnQkFDakIsTUFBTTtZQUNWLEtBQUssR0FBRztnQkFDSixVQUFVLEdBQUcsSUFBSSxDQUFDO2dCQUNsQixNQUFNO1lBQ1YsS0FBSyxHQUFHLENBQUM7WUFDVDtnQkFDSSxVQUFVLEdBQUcsR0FBRyxDQUFDO2dCQUNqQixNQUFNO1NBQ2I7UUFDRCxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztJQUNqQyxDQUFDOzs4R0EzQ1EsaUJBQWlCO2tHQUFqQixpQkFBaUIsd0VBSGYsQ0FBQyxnQkFBZ0IsQ0FBQyxpRENUakMsK2dYQThRQTsyRkRsUWEsaUJBQWlCO2tCQVA3QixTQUFTOytCQUNJLGVBQWUsYUFHZCxDQUFDLGdCQUFnQixDQUFDLG1CQUNaLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLE9BQU87c0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU2l6ZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XHJcbmltcG9ydCB7IEJhc2VWaWV3SXRlbVByb3BzQ29tcG9uZW50LCBGb3JtUGFuZWxTZXJ2aWNlIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5pbXBvcnQgeyBVaUNhcmRMaXN0Vmlld1NldHRpbmcgfSBmcm9tICcuLi9tb2RlbHMvZ3JpZC12aWV3JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdic3UtY2FyZC1pdGVtJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9jYXJkLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vY2FyZC1pdGVtLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBwcm92aWRlcnM6IFtGb3JtUGFuZWxTZXJ2aWNlXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDYXJkSXRlbUNvbXBvbmVudCBleHRlbmRzIEJhc2VWaWV3SXRlbVByb3BzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBJbnB1dCgpIHNldHRpbmc6IFVpQ2FyZExpc3RWaWV3U2V0dGluZztcclxuICAgIG5vQ29udGVudDogYm9vbGVhbjtcclxuICAgIGNhcmRXaWR0aDogc3RyaW5nO1xyXG4gICAgbWF4V2lkdGg6IHN0cmluZztcclxuICAgIG1pbldpZHRoOiBzdHJpbmc7XHJcbiAgICBjb250ZXh0TWVudUluRm9vdGVyOiBib29sZWFuO1xyXG4gICAgYXZhdGFyU2l6ZTogU2l6ZTtcclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICAgICAgY29uc3Qgc2V0dGluZyA9IHRoaXMuc2V0dGluZztcclxuICAgICAgICBpZiAoc2V0dGluZy5Db250ZXh0TWVudUluRm9vdGVyKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY29udGV4dE1lbnVJbkZvb3RlciA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgICAgIXNldHRpbmcuQXZhdGFyRmllbGQgJiZcclxuICAgICAgICAgICAgIXNldHRpbmcuVGl0bGVGaWVsZCAmJlxyXG4gICAgICAgICAgICAhc2V0dGluZy5TdWJ0aXRsZUZpZWxkICYmXHJcbiAgICAgICAgICAgICFzZXR0aW5nLkZpZWxkTGlzdCAmJlxyXG4gICAgICAgICAgICAhc2V0dGluZy5Db250ZW50Q29tcG9uZW50XHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICAgIHRoaXMubm9Db250ZW50ID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHNldHRpbmcuQ2FyZFdpZHRoKSB7XHJcbiAgICAgICAgICAgIHRoaXMubWluV2lkdGggPSB0aGlzLm1heFdpZHRoID0gdGhpcy5jYXJkV2lkdGggPSBzZXR0aW5nLkNhcmRXaWR0aDtcclxuICAgICAgICB9XHJcbiAgICAgICAgbGV0IGF2YXRhclNpemU7XHJcbiAgICAgICAgc3dpdGNoIChzZXR0aW5nLkF2YXRhclNpemUpIHtcclxuICAgICAgICAgICAgY2FzZSAnMic6XHJcbiAgICAgICAgICAgICAgICBhdmF0YXJTaXplID0gJ20nO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgJzMnOlxyXG4gICAgICAgICAgICAgICAgYXZhdGFyU2l6ZSA9ICdsJztcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBjYXNlICc0JzpcclxuICAgICAgICAgICAgICAgIGF2YXRhclNpemUgPSAneGwnO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgJzEnOlxyXG4gICAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICAgICAgYXZhdGFyU2l6ZSA9ICdzJztcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmF2YXRhclNpemUgPSBhdmF0YXJTaXplO1xyXG4gICAgfVxyXG59XHJcbiIsIjxmZC1jYXJkXG4gICAgY2FyZFR5cGU9XCJxdWlja1ZpZXdcIlxuICAgIGNsYXNzPVwiZG9jcy1mbGV4LWl0ZW0tbWFyZ2luXCJcbiAgICBbY2xhc3Mub3Blbk9uQ2xpY2tdPVwic2V0dGluZy5vcGVuT25DbGlja1wiXG4gICAgW3N0eWxlLndpZHRoXT1cImNhcmRXaWR0aFwiXG4gICAgW3N0eWxlLm1pbi13aWR0aF09XCJtaW5XaWR0aFwiXG4gICAgW3N0eWxlLm1heC13aWR0aF09XCJtYXhXaWR0aFwiXG4+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgICAgc2V0dGluZy5IZWFkZXJDb21wb25lbnQgPyByZW5kZXJIZWFkZXJDb21wb25lbnQgOiByZW5kZXJIZWFkZXI7XG4gICAgICAgICAgICBjb250ZXh0OiB7XG4gICAgICAgICAgICAgICAgJGltcGxpY2l0OiBtbyxcbiAgICAgICAgICAgICAgICBpbmRleDogdGhpcy5pbmRleFxuICAgICAgICAgICAgfVxuICAgICAgICBcIlxuICAgID48L25nLWNvbnRhaW5lcj5cblxuICAgIDxmZC1jYXJkLWNvbnRlbnQgKGNsaWNrKT1cIm9uUm93Q2hlY2soKVwiIChkYmxjbGljayk9XCJvblJvd0NsaWNrKClcIiBlbGxpcHNpZnkgKm5nSWY9XCIhbm9Db250ZW50IHx8IGNvbnRleHRNZW51SXRlbXNcIj5cbiAgICAgICAgPGRpdiAjZGl2RWwgW2FwcGx5Q29uZGl0aW9uYWxGb3JtYXRzXT1cImNvbmRpdGlvbmFsRm9ybWF0c1wiIFtzdHlsZUluZGV4XT1cInN0eWxlSW5kZXhcIiBbaG9zdEVsXT1cImRpdkVsXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgICAgICAgICAgc2V0dGluZy5Db250ZW50Q29tcG9uZW50ID8gY29udGVudFRlbXBsYXRlQ29tcG9uZW50IDogY29udGVudFRlbXBsYXRlO1xuICAgICAgICAgICAgICAgICAgICBjb250ZXh0OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IG1vLFxuICAgICAgICAgICAgICAgICAgICAgICAgaW5kZXg6IHRoaXMuaW5kZXhcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29udGV4dE1lbnVJbkZvb3RlciAmJiBjb250ZXh0TWVudUl0ZW1zICYmIGNvbnRleHRNZW51SXRlbXMubGVuZ3RoID4gMFwiPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIHVsdkNvbnRleHRNZW51XG4gICAgICAgICAgICAgICAgW2FsbENvbHVtbnNdPVwiYWxsQ29sdW1uc1wiXG4gICAgICAgICAgICAgICAgW2Zvb3Rlck1vZGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgW21lbnVJdGVtc109XCJjb250ZXh0TWVudUl0ZW1zXCJcbiAgICAgICAgICAgICAgICBbc3R5bGVJbmRleF09XCJzdHlsZUluZGV4XCJcbiAgICAgICAgICAgICAgICBbY29uZGl0aW9uYWxGb3JtYXRzXT1cImNvbmRpdGlvbmFsRm9ybWF0c1wiXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XT1cImRpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XCJcbiAgICAgICAgICAgICAgICBbbW9dPVwibW9cIlxuICAgICAgICAgICAgICAgIChjb21tYW5kQ2xpY2spPVwib25VbHZDb21tYW5kKClcIlxuICAgICAgICAgICAgPjwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2ZkLWNhcmQtY29udGVudD5cbjwvZmQtY2FyZD5cblxuPG5nLXRlbXBsYXRlICNjb2x1bW5UZW1wbGF0ZSBsZXQtY29sdW1uIGxldC1tbz1cIm1vXCIgbGV0LWluZGV4PVwiaW5kZXhcIiBsZXQtbGF5b3V0OTQ9XCJsYXlvdXQ5NFwiXG4gICAgPjxkaXZcbiAgICAgICAgKm5nSWY9XCJjb2x1bW5cIlxuICAgICAgICAjZGl2RWxcbiAgICAgICAgW2FwcGx5Q29uZGl0aW9uYWxGb3JtYXRzXT1cImNvbmRpdGlvbmFsRm9ybWF0c1wiXG4gICAgICAgIFtzdHlsZUluZGV4XT1cInN0eWxlSW5kZXhcIlxuICAgICAgICBbaG9zdEVsXT1cImRpdkVsXCJcbiAgICAgICAgW2RiTmFtZV09XCJjb2x1bW4uTmFtZVwiXG4gICAgPlxuICAgICAgICA8YnN1LWNvbHVtbi1yZW5kZXJlclxuICAgICAgICAgICAgW21vXT1cIm1vXCJcbiAgICAgICAgICAgIFtjb2x1bW5dPVwiY29sdW1uXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJjb2x1bW4gfCBjb2x1bW5WYWx1ZTogbW8gfCBiYmJUcmFuc2xhdGVcIlxuICAgICAgICAgICAgW2ljb25dPVwiY29sdW1uIHwgY29sdW1uSWNvbjogbW9cIlxuICAgICAgICAgICAgW2VkaXRNb2RlXT1cImlzQ2hlY2tlZCAmJiBpbmxpbmVFZGl0TW9kZSAmJiBhbGxvd0lubGluZUVkaXRcIlxuICAgICAgICAgICAgW3J0bF09XCJydGxcIlxuICAgICAgICAgICAgW2lzQ2hlY2tlZF09XCJpc0NoZWNrZWRcIlxuICAgICAgICAgICAgW2RldmljZU5hbWVdPVwiZGV2aWNlTmFtZVwiXG4gICAgICAgICAgICBbZGV2aWNlU2l6ZV09XCJkZXZpY2VTaXplXCJcbiAgICAgICAgICAgIFtpbmRleF09XCJpbmRleFwiXG4gICAgICAgICAgICBbY29udHJvbFVpXT1cImNvbHVtbi5DYXB0aW9uIHwgY29udHJvbFVpOiBsYXlvdXQ5NFwiXG4gICAgICAgICAgICAoa2V5dXAuY29udHJvbC5lbnRlcik9XCJvbkVkaXRGb3JtUGFuZWxTYXZlKCRldmVudClcIlxuICAgICAgICAgICAgKGtleXVwLmVzYyk9XCJvbkVkaXRGb3JtUGFuZWxDYW5jZWwoJGV2ZW50KVwiXG4gICAgICAgICAgICAoa2V5ZG93bi5UYWIpPVwib25UYWJLZXlEb3duKCRldmVudCwgaW5kZXgpXCJcbiAgICAgICAgICAgIFtmb3JtTGF5b3V0U2hvd0xhYmVsXT1cInRydWVcIlxuICAgICAgICA+PC9ic3UtY29sdW1uLXJlbmRlcmVyPlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjY29udGVudFRlbXBsYXRlIGxldC1tbyBsZXQtaW5kZXg9XCJpbmRleFwiPlxuICAgIDxmZC1xdWljay12aWV3IFtpZF09XCInaWQnXCIgKm5nSWY9XCIhbm9Db250ZW50XCI+XG4gICAgICAgIDxmZC1xdWljay12aWV3LWdyb3VwPlxuICAgICAgICAgICAgPGZkLXF1aWNrLXZpZXctc3ViaGVhZGVyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJzZXR0aW5nLkF2YXRhciB8fCBzZXR0aW5nLkF2YXRhckZpZWxkIHx8IHNldHRpbmcuVGl0bGVGaWVsZCB8fCBzZXR0aW5nLlN1YnRpdGxlRmllbGRcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxmZC1hdmF0YXJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJzZXR0aW5nLkF2YXRhckZpZWxkIHx8IHNldHRpbmcuQXZhdGFyXCJcbiAgICAgICAgICAgICAgICAgICAgYWx0ZXJJY29uPVwiYWx0fGNvbnRlbnR8YmFja3VwfGRlZmF1bHQtaWNvblwiXG4gICAgICAgICAgICAgICAgICAgIFtjaXJjbGVdPVwic2V0dGluZy5DaXJjbGVBdmF0YXJcIlxuICAgICAgICAgICAgICAgICAgICBbaW1hZ2VdPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBzZXR0aW5nLkF2YXRhckZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyAobW9bc2V0dGluZy5BdmF0YXJGaWVsZC5OYW1lXT8uRmlsZUlkIHwgcGljRmllbGRTcmM6ICdJRCc6c2V0dGluZy5BdmF0YXJGaWVsZC5GaWVsZERlZklkKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJydcbiAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgW3NpemVdPVwiYXZhdGFyU2l6ZSA/IGF2YXRhclNpemUgOiBkZXZpY2VTaXplID09PSAncycgPyAncycgOiAnbSdcIlxuICAgICAgICAgICAgICAgICAgICBbZ2x5cGhdPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBzZXR0aW5nLkF2YXRhciB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgKG1vLiRTdGF0ZSA9PT0gJ05ldycgJiYgIWlzQ2hlY2tlZCA/ICdmYXZvcml0ZScgOiBpbmxpbmVFZGl0TW9kZSAmJiBpc0NoZWNrZWQgPyAnZWRpdCcgOiAnJylcbiAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPC9mZC1hdmF0YXI+XG4gICAgICAgICAgICAgICAgPGZkLXF1aWNrLXZpZXctc3ViaGVhZGVyLXRpdGxlICpuZ0lmPVwic2V0dGluZy5UaXRsZUZpZWxkXCI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uVGVtcGxhdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IHNldHRpbmcuVGl0bGVGaWVsZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGF5b3V0OTQ6IGxheW91dCQgfCBhc3luYyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW86IG1vLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmRleDogaW5kZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPC9mZC1xdWljay12aWV3LXN1YmhlYWRlci10aXRsZT5cbiAgICAgICAgICAgICAgICA8ZmQtcXVpY2stdmlldy1zdWJoZWFkZXItc3VidGl0bGUgKm5nSWY9XCJzZXR0aW5nLlN1YnRpdGxlRmllbGRcIj5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2x1bW5UZW1wbGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRpbXBsaWNpdDogc2V0dGluZy5TdWJ0aXRsZUZpZWxkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYXlvdXQ5NDogbGF5b3V0JCB8IGFzeW5jLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtbzogbW8sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4OiBpbmRleFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L2ZkLXF1aWNrLXZpZXctc3ViaGVhZGVyLXN1YnRpdGxlPlxuICAgICAgICAgICAgPC9mZC1xdWljay12aWV3LXN1YmhlYWRlcj5cbiAgICAgICAgICAgIDxmZC1xdWljay12aWV3LWdyb3VwLWl0ZW0gKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBzZXR0aW5nLkZpZWxkTGlzdE1hcHBlZFwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb2x1bW5cIj5cbiAgICAgICAgICAgICAgICAgICAgPGZkLXF1aWNrLXZpZXctZ3JvdXAtaXRlbS1sYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IGNvbHVtbi5DYXB0aW9uIHwgYmJiVHJhbnNsYXRlIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZmQtcXVpY2stdmlldy1ncm91cC1pdGVtLWxhYmVsPlxuICAgICAgICAgICAgICAgICAgICA8ZmQtcXVpY2stdmlldy1ncm91cC1pdGVtLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGZkLXF1aWNrLXZpZXctZ3JvdXAtaXRlbS1jb250ZW50LWVsZW1lbnQgY2xhc3M9XCJncm91cC1pdGVtLWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2x1bW5UZW1wbGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IGNvbHVtbixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYXlvdXQ5NDogbGF5b3V0JCB8IGFzeW5jLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vOiBtbyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmRleDogaW5kZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9mZC1xdWljay12aWV3LWdyb3VwLWl0ZW0tY29udGVudD5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvZmQtcXVpY2stdmlldy1ncm91cC1pdGVtPlxuICAgICAgICAgICAgPGZkLXF1aWNrLXZpZXctZ3JvdXAtaXRlbT5cbiAgICAgICAgICAgICAgICA8ZmQtcXVpY2stdmlldy1ncm91cC1pdGVtLWNvbnRlbnQgKm5nSWY9XCJzZXR0aW5nLkRlc2NyaXB0aW9uRmllbGRcIj5cbiAgICAgICAgICAgICAgICAgICAgPGZkLXF1aWNrLXZpZXctZ3JvdXAtaXRlbS1sYWJlbCAqbmdJZj1cImlubGluZUVkaXRNb2RlICYmIGFsbG93SW5saW5lRWRpdFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgc2V0dGluZy5EZXNjcmlwdGlvbkZpZWxkPy5BbGlhcyB8IGJiYlRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICAgICAgICA8L2ZkLXF1aWNrLXZpZXctZ3JvdXAtaXRlbS1sYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBmZC1xdWljay12aWV3LWdyb3VwLWl0ZW0tY29udGVudC1lbGVtZW50IGNsYXNzPVwiZ3JvdXAtaXRlbS1jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uVGVtcGxhdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRpbXBsaWNpdDogc2V0dGluZy5EZXNjcmlwdGlvbkZpZWxkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGF5b3V0OTQ6IGxheW91dCQgfCBhc3luYyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vOiBtbyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4OiBpbmRleFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9mZC1xdWljay12aWV3LWdyb3VwLWl0ZW0tY29udGVudD5cbiAgICAgICAgICAgICAgICA8ZmQtcXVpY2stdmlldy1ncm91cC1pdGVtLWNvbnRlbnRcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhY3Rpb25cIlxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInNldHRpbmcuQWN0aW9uRmllbGROYW1lRmllbGRcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25BY3Rpb24oc2V0dGluZy5BY3Rpb25GaWVsZENvbW1hbmRGaWVsZCB8fCAnJylcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGEgZmQtbGluaz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2x1bW5UZW1wbGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGltcGxpY2l0OiBzZXR0aW5nLkFjdGlvbkZpZWxkTmFtZUZpZWxkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGF5b3V0OTQ6IGxheW91dCQgfCBhc3luYyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vOiBtbyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4OiBpbmRleFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgIDwvZmQtcXVpY2stdmlldy1ncm91cC1pdGVtLWNvbnRlbnQ+XG4gICAgICAgICAgICA8L2ZkLXF1aWNrLXZpZXctZ3JvdXAtaXRlbT5cbiAgICAgICAgPC9mZC1xdWljay12aWV3LWdyb3VwPlxuICAgIDwvZmQtcXVpY2stdmlldz5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2NvbnRlbnRUZW1wbGF0ZUNvbXBvbmVudCBsZXQtbW8gbGV0LWluZGV4PVwiaW5kZXhcIj5cbiAgICA8Ym5yYy1keW5hbWljLWl0ZW0tY29tcG9uZW50XG4gICAgICAgIFtjb21wb25lbnRdPVwic2V0dGluZy5Db250ZW50Q29tcG9uZW50XCJcbiAgICAgICAgW21vXT1cIm1vXCJcbiAgICAgICAgW3N0eWxlSW5kZXhdPVwibW8uJFN0eWxlSW5kZXhcIlxuICAgICAgICBbaXNDaGVja2VkXT1cImlzQ2hlY2tlZFwiXG4gICAgICAgIFtzZXR0aW5nXT1cInNldHRpbmdcIlxuICAgICAgICBbcGFyYW1ldGVyc109XCJzZXR0aW5nLkNvbnRlbnRDb21wb25lbnQuU2V0dGluZ3NcIlxuICAgICAgICBbZWRpdE1vZGVdPVwiaW5saW5lRWRpdE1vZGVcIlxuICAgICAgICBbcnRsXT1cInJ0bFwiXG4gICAgICAgIFtkZXZpY2VOYW1lXT1cImRldmljZU5hbWVcIlxuICAgICAgICBbZGV2aWNlU2l6ZV09XCJkZXZpY2VTaXplXCJcbiAgICAgICAgW2luZGV4XT1cImluZGV4XCJcbiAgICAgICAgW2FsbENvbHVtbnNdPVwiYWxsQ29sdW1uc1wiXG4gICAgPjwvYm5yYy1keW5hbWljLWl0ZW0tY29tcG9uZW50PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNyZW5kZXJIZWFkZXIgbGV0LW1vIGxldC1pbmRleD1cImluZGV4XCI+XG4gICAgPGZkLWNhcmQtaGVhZGVyXG4gICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICBpc0NoZWNrTGlzdCB8fFxuICAgICAgICAgICAgZGV2aWNlTmFtZSAhPT0gJ2Rlc2t0b3AnIHx8XG4gICAgICAgICAgICAoY29udGV4dE1lbnVJdGVtcyAmJiBjb250ZXh0TWVudUl0ZW1zLmxlbmd0aCA+IDAgJiYgIWNvbnRleHRNZW51SW5Gb290ZXIpXG4gICAgICAgIFwiXG4gICAgPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICBmZC1jYXJkLXRpdGxlXG4gICAgICAgICAgICBbc3R5bGUuanVzdGlmeS1jb250ZW50XT1cIiFpc0NoZWNrTGlzdCAmJiBjYW5WaWV3ICYmIGRldmljZU5hbWUgIT09ICdkZXNrdG9wJyA/ICdsZWZ0JyA6ICdzcGFjZS1iZXR3ZWVuJ1wiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0OyBmbGV4LWdyb3c6IDFcIj5cbiAgICAgICAgICAgICAgICA8ZmQtY2hlY2tib3hcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJpc0NoZWNrTGlzdFwiXG4gICAgICAgICAgICAgICAgICAgIFtuYW1lXT1cIm1vLiRDYXB0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwiaXNDaGVja2VkXCJcbiAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25Sb3dDaGVjaygpXCJcbiAgICAgICAgICAgICAgICA+PC9mZC1jaGVja2JveD5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIWNvbnRleHRNZW51SW5Gb290ZXIgJiYgY29udGV4dE1lbnVJdGVtcyAmJiBjb250ZXh0TWVudUl0ZW1zLmxlbmd0aCA+IDBcIlxuICAgICAgICAgICAgICAgICAgICB1bHZDb250ZXh0TWVudVxuICAgICAgICAgICAgICAgICAgICBbYWxsQ29sdW1uc109XCJhbGxDb2x1bW5zXCJcbiAgICAgICAgICAgICAgICAgICAgW21lbnVJdGVtc109XCJjb250ZXh0TWVudUl0ZW1zXCJcbiAgICAgICAgICAgICAgICAgICAgW3N0eWxlSW5kZXhdPVwic3R5bGVJbmRleFwiXG4gICAgICAgICAgICAgICAgICAgIFtjb25kaXRpb25hbEZvcm1hdHNdPVwiY29uZGl0aW9uYWxGb3JtYXRzXCJcbiAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XT1cImRpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XCJcbiAgICAgICAgICAgICAgICAgICAgW21vXT1cIm1vXCJcbiAgICAgICAgICAgICAgICAgICAgKGNvbW1hbmRDbGljayk9XCJvblVsdkNvbW1hbmQoKVwiXG4gICAgICAgICAgICAgICAgPjwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY2FuVmlld1wiPlxuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgZmQtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidmlldy1idG5cIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25Sb3dDbGljaygpXCJcbiAgICAgICAgICAgICAgICAgICAgW2dseXBoXT1cIm5hdmlnYXRpb25BcnJvd1wiXG4gICAgICAgICAgICAgICAgICAgIGZkVHlwZT1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgICAgICAgICA+PC9idXR0b24+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9mZC1jYXJkLWhlYWRlcj5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI3JlbmRlckhlYWRlckNvbXBvbmVudCBsZXQtbW8gbGV0LWluZGV4PVwiaW5kZXhcIj5cbiAgICA8Ym5yYy1keW5hbWljLWl0ZW0tY29tcG9uZW50XG4gICAgICAgIFtjb21wb25lbnRdPVwic2V0dGluZy5IZWFkZXJDb21wb25lbnRcIlxuICAgICAgICBbbW9dPVwibW9cIlxuICAgICAgICBbc3R5bGVJbmRleF09XCJtby4kU3R5bGVJbmRleFwiXG4gICAgICAgIFtpc0NoZWNrZWRdPVwiaXNDaGVja2VkXCJcbiAgICAgICAgW3NldHRpbmddPVwic2V0dGluZ1wiXG4gICAgICAgIFtwYXJhbWV0ZXJzXT1cInNldHRpbmcuSGVhZGVyQ29tcG9uZW50LlNldHRpbmdzXCJcbiAgICAgICAgW2VkaXRNb2RlXT1cImlubGluZUVkaXRNb2RlXCJcbiAgICAgICAgW3J0bF09XCJydGxcIlxuICAgICAgICBbZGV2aWNlTmFtZV09XCJkZXZpY2VOYW1lXCJcbiAgICAgICAgW2RldmljZVNpemVdPVwiZGV2aWNlU2l6ZVwiXG4gICAgICAgIFtpbmRleF09XCJpbmRleFwiXG4gICAgICAgIFthbGxDb2x1bW5zXT1cImFsbENvbHVtbnNcIlxuICAgICAgICBbY29udGV4dE1lbnVJdGVtc109XCJjb250ZXh0TWVudUl0ZW1zXCJcbiAgICAgICAgW2NhblZpZXddPVwiY2FuVmlld1wiXG4gICAgICAgIFtjb25kaXRpb25hbEZvcm1hdHNdPVwiY29uZGl0aW9uYWxGb3JtYXRzXCJcbiAgICAgICAgW2Rpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XT1cImRpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XCJcbiAgICAgICAgW25hdmlnYXRpb25BcnJvd109XCJuYXZpZ2F0aW9uQXJyb3dcIlxuICAgICAgICBbaXNDaGVja0xpc3RdPVwiaXNDaGVja0xpc3RcIlxuICAgICAgICAoZXZlbnRzKT1cIm9uRHluYW1pY0NvbXBvbmVudEV2ZW50cygkZXZlbnQpXCJcbiAgICA+PC9ibnJjLWR5bmFtaWMtaXRlbS1jb21wb25lbnQ+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -0,0 +1,28 @@
1
+ import { Directive, HostListener, Input } from '@angular/core';
2
+ import { FileViewerComponent } from './file-viewer/file-viewer.component';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@fundamental-ngx/core";
5
+ export class DialogHandlerDirective {
6
+ constructor(_dialogService) {
7
+ this._dialogService = _dialogService;
8
+ }
9
+ _handleClick() {
10
+ this._dialogService.open(this.component ?? FileViewerComponent, this.config);
11
+ }
12
+ }
13
+ DialogHandlerDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: DialogHandlerDirective, deps: [{ token: i1.DialogService }], target: i0.ɵɵFactoryTarget.Directive });
14
+ DialogHandlerDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.7", type: DialogHandlerDirective, selector: "[diaogHandler]", inputs: { config: "config", component: "component" }, host: { listeners: { "click": "_handleClick()" } }, ngImport: i0 });
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: DialogHandlerDirective, decorators: [{
16
+ type: Directive,
17
+ args: [{
18
+ selector: '[diaogHandler]'
19
+ }]
20
+ }], ctorParameters: function () { return [{ type: i1.DialogService }]; }, propDecorators: { config: [{
21
+ type: Input
22
+ }], component: [{
23
+ type: Input
24
+ }], _handleClick: [{
25
+ type: HostListener,
26
+ args: ['click']
27
+ }] } });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWhhbmRsZXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvZGlhbG9nLWhhbmRsZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFFbEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7OztBQUsxRSxNQUFNLE9BQU8sc0JBQXNCO0lBRy9CLFlBQW9CLGNBQTZCO1FBQTdCLG1CQUFjLEdBQWQsY0FBYyxDQUFlO0lBQUcsQ0FBQztJQUM5QixZQUFZO1FBQy9CLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksbUJBQW1CLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2pGLENBQUM7O21IQU5RLHNCQUFzQjt1R0FBdEIsc0JBQXNCOzJGQUF0QixzQkFBc0I7a0JBSGxDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGdCQUFnQjtpQkFDN0I7b0dBRVksTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRWlCLFlBQVk7c0JBQWxDLFlBQVk7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdExpc3RlbmVyLCBJbnB1dCwgVGVtcGxhdGVSZWYsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERpYWxvZ0NvbmZpZywgRGlhbG9nU2VydmljZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XG5pbXBvcnQgeyBGaWxlVmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi9maWxlLXZpZXdlci9maWxlLXZpZXdlci5jb21wb25lbnQnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tkaWFvZ0hhbmRsZXJdJ1xufSlcbmV4cG9ydCBjbGFzcyBEaWFsb2dIYW5kbGVyRGlyZWN0aXZlIHtcbiAgICBASW5wdXQoKSBjb25maWc6IERpYWxvZ0NvbmZpZztcbiAgICBASW5wdXQoKSBjb21wb25lbnQ6IFR5cGU8YW55PiB8IFRlbXBsYXRlUmVmPGFueT47XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSkge31cbiAgICBASG9zdExpc3RlbmVyKCdjbGljaycpIF9oYW5kbGVDbGljaygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZGlhbG9nU2VydmljZS5vcGVuKHRoaXMuY29tcG9uZW50ID8/IEZpbGVWaWV3ZXJDb21wb25lbnQsIHRoaXMuY29uZmlnKTtcbiAgICB9XG59XG4iXX0=
@@ -178,6 +178,8 @@ import { BarsaHorizontalFlexPanelComponent } from './barsa-horizontal-flex-panel
178
178
  import { BarsaBaseLayoutPanelComponent } from './barsa-base-panel/barsa-base-layout-panel.component';
179
179
  import { BarsaBarPanelComponent } from './barsa-bar-panel/barsa-bar-panel.component';
180
180
  import { BarsaFormSideContentComponent } from './barsa-form-side-content/barsa-form-side-content.component';
181
+ import { DialogHandlerDirective } from './dialog-handler.directive';
182
+ import { BarsaSimpleFormComponent } from './barsa-simple-form/barsa-simple-form.component';
181
183
  export const components = [
182
184
  UiTextFieldComponent,
183
185
  LyLayoutFieldLabelComponent,
@@ -343,7 +345,8 @@ export const components = [
343
345
  BarsaHorizontalFlexPanelComponent,
344
346
  BarsaBaseLayoutPanelComponent,
345
347
  BarsaBarPanelComponent,
346
- BarsaFormSideContentComponent
348
+ BarsaFormSideContentComponent,
349
+ BarsaSimpleFormComponent
347
350
  ];
348
351
  export const pipes = [
349
352
  UploadFileStatusPipe,
@@ -361,7 +364,8 @@ export const directives = [
361
364
  ReportViewRendererDirective,
362
365
  FullscreenDialogDirective,
363
366
  FullscreenFilesDirective,
364
- DownloadFilesDirective
367
+ DownloadFilesDirective,
368
+ DialogHandlerDirective
365
369
  ];
366
370
  export const INIT_SAPFIORI = (rtlService, contentDensityService, themeService, portalService) => () => {
367
371
  rtlService.rtl.next(BarsaApi.LoginFormData.IsRtl);
@@ -459,4 +463,4 @@ export const INIT_SAPFIORI = (rtlService, contentDensityService, themeService, p
459
463
  }
460
464
  });
461
465
  };
462
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1zYXAtdWkvc3JjL2xpYi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTBELGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkgsT0FBTyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBaUIsTUFBTSxzQkFBc0IsQ0FBQztBQUN2SCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTlCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ3RHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxxRUFBcUUsQ0FBQztBQUN2SCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUM3RixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUMvRyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUNsRyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUN0RyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUMxRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUMzRyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNsRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUMzRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNoRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUNuRyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUMxRixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDMUYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDdEcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDL0UsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0saUVBQWlFLENBQUM7QUFDakgsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDdkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDNUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDMUUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDekcsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDM0YsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDM0YsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDdkcsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDN0csT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDNUcsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDdkcsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDL0YsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0scUVBQXFFLENBQUM7QUFDekgsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbkYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDaEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDMUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDeEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDeEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDeEYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDcEcsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDOUYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDeEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDekUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDM0csT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDN0YsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDaEYsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDN0YsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDbkcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDeEYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDN0YsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0scUVBQXFFLENBQUM7QUFDdkgsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDaEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDckYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDakcsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDcEcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDaEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDckUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDMUUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDeEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDaEYsT0FBTyxFQUFFLHdDQUF3QyxFQUFFLE1BQU0sdUZBQXVGLENBQUM7QUFDakosT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sK0RBQStELENBQUM7QUFDaEgsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbkYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDakcsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0scUVBQXFFLENBQUM7QUFDdEgsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDdEcsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDakcsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDakcsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDM0YsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDcEcsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDekcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDL0UsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbkYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDeEYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDakcsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDekcsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDckYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDeEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBQ3hILE9BQU8sRUFBRSx5Q0FBeUMsRUFBRSxNQUFNLHVGQUF1RixDQUFDO0FBQ2xKLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLCtEQUErRCxDQUFDO0FBQy9HLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDZEQUE2RCxDQUFDO0FBQzVHLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUN2RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMvRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUNqRyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDdEYsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDekcsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQ25HLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQzFHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUN4RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNsRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx1RUFBdUUsQ0FBQztBQUN6SCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNsRixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwyREFBMkQsQ0FBQztBQUV6RyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUMvRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUMzRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSx5RUFBeUUsQ0FBQztBQUM3SCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDeEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDckYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDOUYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDOUYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDeEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDakcsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDM0YsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0scURBQXFELENBQUM7QUFFaEcsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDdkcsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDMUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDMUUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDakcsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDakcsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDeEUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDNUYsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDN0csT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDcEcsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDakcsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDMUcsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDdEcsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sK0RBQStELENBQUM7QUFDaEgsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbEYsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sK0RBQStELENBQUM7QUFDaEgsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDakcsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sdUVBQXVFLENBQUM7QUFDMUgsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sbUVBQW1FLENBQUM7QUFDckgsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDekcsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDNUcsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0scUVBQXFFLENBQUM7QUFDeEgsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDckcsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDckYsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFFNUcsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3RCLG9CQUFvQjtJQUNwQiwyQkFBMkI7SUFDM0IsbUJBQW1CO0lBQ25CLHNCQUFzQjtJQUN0QixxQkFBcUI7SUFDckIsZUFBZTtJQUNmLGdDQUFnQztJQUNoQyxzQkFBc0I7SUFDdEIsd0JBQXdCO0lBQ3hCLDhCQUE4QjtJQUM5QixzQkFBc0I7SUFDdEIseUJBQXlCO0lBQ3pCLDJCQUEyQjtJQUMzQix1QkFBdUI7SUFDdkIsbUJBQW1CO0lBQ25CLG1CQUFtQjtJQUNuQiw0QkFBNEI7SUFDNUIscUJBQXFCO0lBQ3JCLHdCQUF3QjtJQUN4QixxQkFBcUI7SUFDckIsbUJBQW1CO0lBQ25CLGtCQUFrQjtJQUNsQiwwQkFBMEI7SUFDMUIsdUJBQXVCO0lBQ3ZCLHNCQUFzQjtJQUN0QixhQUFhO0lBQ2IsdUJBQXVCO0lBQ3ZCLDJCQUEyQjtJQUMzQixvQkFBb0I7SUFDcEIsOEJBQThCO0lBQzlCLG9CQUFvQjtJQUNwQixrQkFBa0I7SUFDbEIsaUJBQWlCO0lBQ2pCLG1CQUFtQjtJQUNuQixtQkFBbUI7SUFDbkIsNEJBQTRCO0lBQzVCLHdCQUF3QjtJQUN4Qix3QkFBd0I7SUFDeEIsNEJBQTRCO0lBQzVCLDhCQUE4QjtJQUM5Qiw2QkFBNkI7SUFDN0IsMEJBQTBCO0lBQzFCLDBCQUEwQjtJQUMxQixrQ0FBa0M7SUFDbEMsbUJBQW1CO0lBQ25CLHNCQUFzQjtJQUN0QixxQkFBcUI7SUFDckIsbUJBQW1CO0lBQ25CLHVCQUF1QjtJQUN2Qix1QkFBdUI7SUFDdkIsdUJBQXVCO0lBQ3ZCLDJCQUEyQjtJQUMzQix5QkFBeUI7SUFDekIsdUJBQXVCO0lBQ3ZCLGtCQUFrQjtJQUNsQixnQkFBZ0I7SUFDaEIsNEJBQTRCO0lBQzVCLHdCQUF3QjtJQUN4QixlQUFlO0lBQ2YscUJBQXFCO0lBQ3JCLDBCQUEwQjtJQUMxQix1QkFBdUI7SUFDdkIsd0JBQXdCO0lBQ3hCLGdDQUFnQztJQUNoQyxxQkFBcUI7SUFDckIsc0JBQXNCO0lBQ3RCLDBCQUEwQjtJQUMxQiwyQkFBMkI7SUFDM0IscUJBQXFCO0lBQ3JCLGtCQUFrQjtJQUNsQixtQkFBbUI7SUFDbkIsdUJBQXVCO0lBQ3ZCLHFCQUFxQjtJQUNyQix3Q0FBd0M7SUFDeEMsK0JBQStCO0lBQy9CLHNCQUFzQjtJQUN0QiwwQkFBMEI7SUFDMUIsK0JBQStCO0lBQy9CLDJCQUEyQjtJQUMzQiwwQkFBMEI7SUFDMUIsMEJBQTBCO0lBQzFCLHdCQUF3QjtJQUN4QiwyQkFBMkI7SUFDM0IsNEJBQTRCO0lBQzVCLG9CQUFvQjtJQUNwQixzQkFBc0I7SUFDdEIsdUJBQXVCO0lBQ3ZCLDBCQUEwQjtJQUMxQiw0QkFBNEI7SUFDNUIsc0JBQXNCO0lBQ3RCLHVCQUF1QjtJQUN2QixrQkFBa0I7SUFDbEIsZUFBZTtJQUNmLG9CQUFvQjtJQUNwQix3QkFBd0I7SUFDeEIsNEJBQTRCO0lBQzVCLGlDQUFpQztJQUNqQyx5Q0FBeUM7SUFDekMsb0JBQW9CO0lBQ3BCLDhCQUE4QjtJQUM5Qiw2QkFBNkI7SUFDN0IseUJBQXlCO0lBQ3pCLHNCQUFzQjtJQUN0QixzQkFBc0I7SUFDdEIsb0JBQW9CO0lBQ3BCLG1CQUFtQjtJQUNuQixtQkFBbUI7SUFDbkIsMEJBQTBCO0lBQzFCLGVBQWU7SUFDZix1QkFBdUI7SUFDdkIsNEJBQTRCO0lBQzVCLG1CQUFtQjtJQUNuQiw0QkFBNEI7SUFDNUIsbUJBQW1CO0lBQ25CLDBCQUEwQjtJQUMxQixnQkFBZ0I7SUFDaEIsd0JBQXdCO0lBQ3hCLHVCQUF1QjtJQUN2Qiw2QkFBNkI7SUFDN0IscUJBQXFCO0lBQ3JCLHVCQUF1QjtJQUN2Qix1QkFBdUI7SUFDdkIscUJBQXFCO0lBQ3JCLGdDQUFnQztJQUNoQyxxQkFBcUI7SUFDckIsNEJBQTRCO0lBQzVCLDBCQUEwQjtJQUMxQix3QkFBd0I7SUFDeEIsaUJBQWlCO0lBQ2pCLGtDQUFrQztJQUNsQyxjQUFjO0lBQ2QscUJBQXFCO0lBQ3JCLGlCQUFpQjtJQUNqQix1QkFBdUI7SUFDdkIseUJBQXlCO0lBQ3pCLHNCQUFzQjtJQUN0Qix5QkFBeUI7SUFDekIsbUJBQW1CO0lBQ25CLGdCQUFnQjtJQUNoQiwwQkFBMEI7SUFDMUIsd0JBQXdCO0lBQ3hCLHlCQUF5QjtJQUN6Qiw0QkFBNEI7SUFDNUIsMEJBQTBCO0lBQzFCLDBCQUEwQjtJQUMxQixtQkFBbUI7SUFDbkIsbUJBQW1CO0lBQ25CLHlCQUF5QjtJQUN6Qiw4QkFBOEI7SUFDOUIsMkJBQTJCO0lBQzNCLDBCQUEwQjtJQUMxQiw2QkFBNkI7SUFDN0IsMkJBQTJCO0lBQzNCLCtCQUErQjtJQUMvQixxQkFBcUI7SUFDckIsK0JBQStCO0lBQy9CLDBCQUEwQjtJQUMxQixpQ0FBaUM7SUFDakMsZ0NBQWdDO0lBQ2hDLDRCQUE0QjtJQUM1Qiw2QkFBNkI7SUFDN0IsaUNBQWlDO0lBQ2pDLDZCQUE2QjtJQUM3QixzQkFBc0I7SUFDdEIsNkJBQTZCO0NBQ2hDLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxLQUFLLEdBQUc7SUFDakIsb0JBQW9CO0lBQ3BCLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIsaUJBQWlCO0lBQ2pCLHdCQUF3QjtJQUN4QixlQUFlO0lBQ2YsbUJBQW1CO0NBQ3RCLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUc7SUFDdEIscUJBQXFCO0lBQ3JCLG9CQUFvQjtJQUNwQixnQ0FBZ0M7SUFDaEMsMkJBQTJCO0lBQzNCLHlCQUF5QjtJQUN6Qix3QkFBd0I7SUFDeEIsc0JBQXNCO0NBQ3pCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxhQUFhLEdBQ3RCLENBQ0ksVUFBc0IsRUFDdEIscUJBQWtELEVBQ2xELFlBQTJCLEVBQzNCLGFBQTRCLEVBQzlCLEVBQUUsQ0FDSixHQUFHLEVBQUU7SUFDRCxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xELElBQUksVUFBVSxHQUFHLGlCQUFpQixDQUFDO0lBQ25DLElBQUksUUFBUSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEtBQUssT0FBTyxFQUFFO1FBQzVDLFVBQVUsR0FBRyxhQUFhLENBQUM7S0FDOUI7SUFFRCxNQUFNLEdBQUcsR0FBRzswQ0FDc0IsVUFBVTt3QkFDNUIsVUFBVTtxQ0FDRyxVQUFVOzZCQUNsQixVQUFVOzhCQUNULFVBQVU7Ozs7RUFJdEMsRUFDVSxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQUksSUFBSSxRQUFRLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ2hFLEtBQUssR0FBUSxRQUFRLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRWpELElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFeEIsS0FBSyxDQUFDLElBQUksR0FBRyxVQUFVLENBQUM7SUFDeEIsSUFBSSxLQUFLLENBQUMsVUFBVSxFQUFFO1FBQ2xCLHNDQUFzQztRQUN0QyxLQUFLLENBQUMsVUFBVSxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUM7S0FDbEM7U0FBTTtRQUNILEtBQUssQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0tBQ25EO0lBRUQsYUFBYSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFlBQVksRUFBRSxFQUFFO1FBQ3hGLElBQUksY0FBbUIsQ0FBQztRQUN4QixJQUFJLEtBQVUsQ0FBQztRQUNmLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDZixJQUFJLGlCQUFpQixFQUFFLElBQUksZ0JBQWdCLEVBQUUsSUFBSSxpQkFBaUIsRUFBRSxFQUFFO2dCQUNsRSxjQUFjLEdBQUcsa0JBQWtCLENBQUMsSUFBSSxDQUFDO2FBQzVDO2lCQUFNO2dCQUNILGNBQWMsR0FBRyxrQkFBa0IsQ0FBQyxPQUFPLENBQUM7YUFDL0M7U0FDSjthQUFNO1lBQ0gsTUFBTSxFQUFFLHNCQUFzQixFQUFFLGFBQWEsRUFBRSxHQUFHLFlBQVksQ0FBQztZQUMvRCxjQUFjLEdBQUcsc0JBQXNCLENBQUM7WUFDeEMsS0FBSyxHQUFHLGFBQWEsQ0FBQztZQUN0QixJQUFJLENBQUMsY0FBYyxFQUFFO2dCQUNqQixjQUFjLEdBQUcsa0JBQWtCLENBQUMsT0FBTyxDQUFDO2FBQy9DO1NBQ0o7UUFDRCxJQUFJLGlCQUFpQixFQUFFLElBQUksZ0JBQWdCLEVBQUUsRUFBRTtZQUMzQyxjQUFjLEdBQUcsa0JBQWtCLENBQUMsSUFBSSxDQUFDO1NBQzVDO1FBQ0QsSUFBSSxjQUFjLEVBQUU7WUFDaEI7Z0JBQ0kscUJBQXFCLENBQUMsb0JBQW9CLENBQUMsY0FBYyxDQUFDLENBQUM7YUFDOUQ7WUFDRCxNQUFNLGdCQUFnQixHQUFHLDZCQUE2QixDQUFDO1lBQ3ZELE1BQU0sa0JBQWtCLEdBQUcsK0JBQStCLENBQUM7WUFDM0QsTUFBTSxhQUFhLEdBQUcsMEJBQTBCLENBQUM7WUFDakQsTUFBTSxJQUFJLEdBQUcsUUFBUSxFQUFFLElBQUksQ0FBQztZQUM1QixRQUFRLGNBQWMsRUFBRTtnQkFDcEIsS0FBSyxXQUFXO29CQUNaO3dCQUNJLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFOzRCQUM5QyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO3lCQUMxQzt3QkFDRCxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO3dCQUN4QyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztxQkFDeEM7b0JBRUQsTUFBTTtnQkFDVixLQUFLLE1BQU07b0JBQ1A7d0JBQ0ksSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxFQUFFOzRCQUN6QyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQzt5QkFDckM7d0JBQ0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQzt3QkFDeEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztxQkFDN0M7b0JBQ0QsTUFBTTtnQkFDVixLQUFLLFNBQVM7b0JBQ1Y7d0JBQ0ksSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLEVBQUU7NEJBQzVDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUM7eUJBQ3hDO3dCQUNELElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO3dCQUNyQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO3FCQUM3QztvQkFDRCxNQUFNO2FBQ2I7U0FDSjtRQUNELElBQUksS0FBSyxFQUFFO1lBQ1AsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFO2dCQUM1QixRQUFRLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLE1BQU0sQ0FBQyxDQUFDO2FBQ3RFO2lCQUFNO2dCQUNILFFBQVEsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxjQUFjLEVBQUUsT0FBTyxDQUFDLENBQUM7YUFDdkU7WUFDRCxhQUFhLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUN4RDtJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUnRsU2VydmljZSwgVGhlbWVzU2VydmljZSwgR2xvYmFsQ29udGVudERlbnNpdHlTZXJ2aWNlLCBDb250ZW50RGVuc2l0eU1vZGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xuaW1wb3J0IHsgQmFyc2FBcGksIGdldERldmljZUlzTW9iaWxlLCBnZXREZXZpY2VJc1Bob25lLCBnZXREZXZpY2VJc1RhYmxldCwgUG9ydGFsU2VydmljZSB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBVaVRleHRGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vdWktdGV4dC1maWVsZC91aS10ZXh0LWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMeUxheW91dEZpZWxkTGFiZWxDb21wb25lbnQgfSBmcm9tICcuL2x5LWxheW91dC1maWVsZC1sYWJlbC9seS1sYXlvdXQtZmllbGQtbGFiZWwuY29tcG9uZW50JztcbmltcG9ydCB7IFVpQ2hlY2tCb3hDb21wb25lbnQgfSBmcm9tICcuL3VpLWNoZWNrLWJveC91aS1jaGVjay1ib3guY29tcG9uZW50JztcbmltcG9ydCB7IFVpU2ltcGxlQ29tYm9Db21wb25lbnQgfSBmcm9tICcuL3VpLXNpbXBsZS1jb21iby91aS1zaW1wbGUtY29tYm8uY29tcG9uZW50JztcbmltcG9ydCB7IFVpUmFkaW9Hcm91cENvbXBvbmVudCB9IGZyb20gJy4vdWktcmFkaW8tZ3JvdXAvdWktcmFkaW8tZ3JvdXAuY29tcG9uZW50JztcbmltcG9ydCB7IFVpR3JpZENvbXBvbmVudCB9IGZyb20gJy4vdWktZ3JpZC91aS1ncmlkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMeUxheW91dENvbnRhaW5lck9mUm9vdENvbXBvbmVudCB9IGZyb20gJy4vbHktbGF5b3V0LWNvbnRhaW5lci1vZi1yb290L2x5LWxheW91dC1jb250YWluZXItb2Ytcm9vdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTHlMYXlvdXRQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vbHktbGF5b3V0LXBhbmVsL2x5LWxheW91dC1wYW5lbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlSZWFkT25seUZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi91aS1yZWFkLW9ubHktZmllbGQvdWktcmVhZC1vbmx5LWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaUNvbnRhaW5lcldpdGhCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL3VpLWNvbnRhaW5lci13aXRoLWJ1dHRvbi91aS1jb250YWluZXItd2l0aC1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IFVpUGljdHVyZUZpbGVDb21wb25lbnQgfSBmcm9tICcuL3VpLXBpY3R1cmUtZmlsZS91aS1waWN0dXJlLWZpbGUuY29tcG9uZW50JztcbmltcG9ydCB7IFVpTW9JbmZvVWx2Q29tYm9Db21wb25lbnQgfSBmcm9tICcuL3VpLW1vLWluZm8tdWx2LWNvbWJvL3VpLW1vLWluZm8tdWx2LWNvbWJvLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaU11bHRpU2VsZWN0Q29tYm9Db21wb25lbnQgfSBmcm9tICcuL3VpLW11bHRpLXNlbGVjdC1jb21iby91aS1tdWx0aS1zZWxlY3QtY29tYm8uY29tcG9uZW50JztcbmltcG9ydCB7IFVpTnVtRGVjaW1hbFVpQ29tcG9uZW50IH0gZnJvbSAnLi91aS1udW0tZGVjaW1hbC11aS91aS1udW0tZGVjaW1hbC11aS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlOdW1JbnRVaUNvbXBvbmVudCB9IGZyb20gJy4vdWktbnVtLWludC11aS91aS1udW0taW50LXVpLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVRpbWVTcGFuQ29tcG9uZW50IH0gZnJvbSAnLi91aS10aW1lLXNwYW4vdWktdGltZS1zcGFuLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaUZpbGVMaW5lYXJMaXN0Qm94Q29tcG9uZW50IH0gZnJvbSAnLi91aS1maWxlLWxpbmVhci1saXN0LWJveC91aS1maWxlLWxpbmVhci1saXN0LWJveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTHlFbXB0eVNwYWNlQ29tcG9uZW50IH0gZnJvbSAnLi9seS1lbXB0eS1zcGFjZS9seS1lbXB0eS1zcGFjZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlTaW5nbGVQaWN0dXJlQ29tcG9uZW50IH0gZnJvbSAnLi91aS1zaW5nbGUtcGljdHVyZS91aS1zaW5nbGUtcGljdHVyZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWx2U2VsZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi91bHYtc2VsZWN0aW9uL3Vsdi1zZWxlY3Rpb24uY29tcG9uZW50JztcbmltcG9ydCB7IFVsdlRvb2xiYXJDb21wb25lbnQgfSBmcm9tICcuL3Vsdi10b29sYmFyL3Vsdi10b29sYmFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVbHZQYWdpbmdDb21wb25lbnQgfSBmcm9tICcuL3Vsdi1wYWdpbmcvdWx2LXBhZ2luZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlHcmlkU29ydFNldHRpbmdDb21wb25lbnQgfSBmcm9tICcuL3VpLWdyaWQtc29ydC1zZXR0aW5nL3VpLWdyaWQtc29ydC1zZXR0aW5nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaUdyaWRTb3J0SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vdWktZ3JpZC1zb3J0LWl0ZW0vdWktZ3JpZC1zb3J0LWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IFVpR3JpZENvbHVtbnNDb21wb25lbnQgfSBmcm9tICcuL3VpLWdyaWQtY29sdW1ucy91aS1ncmlkLWNvbHVtbnMuY29tcG9uZW50JztcbmltcG9ydCB7IE1hc2tDb21wb25lbnQgfSBmcm9tICcuL21hc2svbWFzay5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlJbmZvQmFyUGFuZWxDb21wb25lbnQgfSBmcm9tICcuL3VpLWluZm8tYmFyLXBhbmVsL3VpLWluZm8tYmFyLXBhbmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaUZvcm1QYW5lbFRvb2xiYXJDb21wb25lbnQgfSBmcm9tICcuL3VpLWZvcm0tcGFuZWwtdG9vbGJhci91aS1mb3JtLXBhbmVsLXRvb2xiYXIuY29tcG9uZW50JztcbmltcG9ydCB7IFVpRm9ybVBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi91aS1mb3JtLXBhbmVsL3VpLWZvcm0tcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IFVpU2VhcmNoQ29tbWFuZEluZm9VaUNvbXBvbmVudCB9IGZyb20gJy4vdWktc2VhcmNoLWNvbW1hbmQtaW5mby11aS91aS1zZWFyY2gtY29tbWFuZC1pbmZvLXVpLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVbHZTZXR0aW5nc0NvbXBvbmVudCB9IGZyb20gJy4vdWx2LXNldHRpbmdzL3Vsdi1zZXR0aW5ncy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlUaW55bWNlQ29tcG9uZW50IH0gZnJvbSAnLi91aS10aW55bWNlL3VpLXRpbnltY2UuY29tcG9uZW50JztcbmltcG9ydCB7IFVpQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi91aS1idXR0b24vdWktYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaURhdGVUaW1lQ29tcG9uZW50IH0gZnJvbSAnLi91aS1kYXRlLXRpbWUvdWktZGF0ZS10aW1lLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtLWRpYWxvZy9mb3JtLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGVhZGVyRmFjZXRLZXlWYWx1ZUNvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyLWZhY2V0LWtleS12YWx1ZS9oZWFkZXItZmFjZXQta2V5LXZhbHVlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJGYWNldEZvcm1Db21wb25lbnQgfSBmcm9tICcuL2hlYWRlci1mYWNldC1mb3JtL2hlYWRlci1mYWNldC1mb3JtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJGYWNldFJhdGVDb21wb25lbnQgfSBmcm9tICcuL2hlYWRlci1mYWNldC1yYXRlL2hlYWRlci1mYWNldC1yYXRlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJGYWNldFByb2dyZXNzQ29tcG9uZW50IH0gZnJvbSAnLi9oZWFkZXItZmFjZXQtcHJvZ3Jlc3MvaGVhZGVyLWZhY2V0LXByb2dyZXNzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJGYWNldE1pY3JvY2hhcnRDb21wb25lbnQgfSBmcm9tICcuL2hlYWRlci1mYWNldC1taWNyb2NoYXJ0L2hlYWRlci1mYWNldC1taWNyb2NoYXJ0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJGYWNldFBsYWluVGV4dENvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyLWZhY2V0LXBsYWluLXRleHQvaGVhZGVyLWZhY2V0LXBsYWluLXRleHQuY29tcG9uZW50JztcbmltcG9ydCB7IFVpTW9JbmZvU3ViRm9ybVVpQ29tcG9uZW50IH0gZnJvbSAnLi91aS1tby1pbmZvLXN1Yi1mb3JtLXVpL3VpLW1vLWluZm8tc3ViLWZvcm0tdWkuY29tcG9uZW50JztcbmltcG9ydCB7IFJlc3BvbnNpdmVUb29sYmFyQ29tcG9uZW50IH0gZnJvbSAnLi9yZXNwb25zaXZlLXRvb2xiYXIvcmVzcG9uc2l2ZS10b29sYmFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSZXNwb25zaXZlVG9vbGJhclJlbmRlcmVyQ29tcG9uZW50IH0gZnJvbSAnLi9yZXNwb25zaXZlLXRvb2xiYXItcmVuZGVyZXIvcmVzcG9uc2l2ZS10b29sYmFyLXJlbmRlcmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVRleHRBcmVhQ29tcG9uZW50IH0gZnJvbSAnLi91aS10ZXh0LWFyZWEvdWktdGV4dC1hcmVhLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMYXlvdXRDb250cm9sQ29tcG9uZW50IH0gZnJvbSAnLi9sYXlvdXQtY29udHJvbC9sYXlvdXQtY29udHJvbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGF5b3V0V2l6YXJkQ29tcG9uZW50IH0gZnJvbSAnLi9sYXlvdXQtd2l6YXJkL2xheW91dC13aXphcmQuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1XaXphcmRDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0td2l6YXJkL2Zvcm0td2l6YXJkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBXaXphcmRMYXlvdXREaXJlY3RpdmUgfSBmcm9tICcuL3dpemFyZC1sYXlvdXQuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZvcm1EaWFsb2dMZXNzQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtLWRpYWxvZy1sZXNzL2Zvcm0tZGlhbG9nLWxlc3MuY29tcG9uZW50JztcbmltcG9ydCB7IFJpY2hUZXh0U3RhdGljQ29tcG9uZW50IH0gZnJvbSAnLi9yaWNoLXRleHQtc3RhdGljL3JpY2gtdGV4dC1zdGF0aWMuY29tcG9uZW50JztcbmltcG9ydCB7IFVpUGljdHVyZXNJbmZvQ29tcG9uZW50IH0gZnJvbSAnLi91aS1waWN0dXJlcy1pbmZvL3VpLXBpY3R1cmVzLWluZm8uY29tcG9uZW50JztcbmltcG9ydCB7IEx5SG9yaXpvbnRhbExheW91dENvbXBvbmVudCB9IGZyb20gJy4vbHktaG9yaXpvbnRhbC1sYXlvdXQvbHktaG9yaXpvbnRhbC1sYXlvdXQuY29tcG9uZW50JztcbmltcG9ydCB7IEx5VmVydGljYWxMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL2x5LXZlcnRpY2FsLWxheW91dC9seS12ZXJ0aWNhbC1sYXlvdXQuY29tcG9uZW50JztcbmltcG9ydCB7IEx5VGFiQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9seS10YWItY29udGFpbmVyL2x5LXRhYi1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEx5VGFiUGFnZUNvbXBvbmVudCB9IGZyb20gJy4vbHktdGFiLXBhZ2UvbHktdGFiLXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IEx5TGFiZWxDb21wb25lbnQgfSBmcm9tICcuL2x5LWxhYmVsL2x5LWxhYmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb2xSZW5kZXJlckRpcmVjdGl2ZSB9IGZyb20gJy4vY29sLXJlbmRlcmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBVaU1vSW5mb0NvbWJvVmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi91aS1tby1pbmZvLWNvbWJvLXZpZXdlci91aS1tby1pbmZvLWNvbWJvLXZpZXdlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWxNc2dCb3hBZGFwdGVyQ29tcG9uZW50IH0gZnJvbSAnLi91bC1tc2ctYm94LWFkYXB0ZXIvdWwtbXNnLWJveC1hZGFwdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJBdmF0YXJDb21wb25lbnQgfSBmcm9tICcuL2hlYWRlci1hdmF0YXIvaGVhZGVyLWF2YXRhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXBwbHlDb25kaXRpb25hbEZvcm1hdHNEaXJlY3RpdmUgfSBmcm9tICcuL2FwcGx5LWNvbmRpdGlvbmFsLWZvcm1tYXRpbmdzLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBVaVdvcmtmbG93UGFuZWxVaUNvbXBvbmVudCB9IGZyb20gJy4vdWktd29ya2Zsb3ctcGFuZWwtdWkvdWktd29ya2Zsb3ctcGFuZWwtdWkuY29tcG9uZW50JztcbmltcG9ydCB7IFVsdkNvbnRleHRNZW51Q29tcG9uZW50IH0gZnJvbSAnLi91bHYtY29udGV4dC1tZW51L3Vsdi1jb250ZXh0LW1lbnUuY29tcG9uZW50JztcbmltcG9ydCB7IFVsTG9hZGluZ01hc2tVaUNvbXBvbmVudCB9IGZyb20gJy4vdWwtbG9hZGluZy1tYXNrLXVpL3VsLWxvYWRpbmctbWFzay11aS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlUZXh0RmllbGRBdXRvQ29tcGxldGVDb21wb25lbnQgfSBmcm9tICcuL3VpLXRleHQtZmllbGQtYXV0by1jb21wbGV0ZS91aS10ZXh0LWZpZWxkLWF1dG8tY29tcGxldGUuY29tcG9uZW50JztcbmltcG9ydCB7IENhcHRjaGFGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vY2FwdGNoYS1maWVsZC9jYXB0Y2hhLWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMeVNpbXBsZUxhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi9seS1zaW1wbGUtbGFiZWwvbHktc2ltcGxlLWxhYmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHbG9iYWxTZWFyY2hQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vZ2xvYmFsLXNlYXJjaC1wYW5lbC9nbG9iYWwtc2VhcmNoLXBhbmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHbG9iYWxTZWFyY2hNb2R1bGVDb21wb25lbnQgfSBmcm9tICcuL2dsb2JhbC1zZWFyY2gtbW9kdWxlL2dsb2JhbC1zZWFyY2gtbW9kdWxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHbG9iYWxTZWFyY2hDb21wb25lbnQgfSBmcm9tICcuL2dsb2JhbC1zZWFyY2gvZ2xvYmFsLXNlYXJjaC5jb21wb25lbnQnO1xuaW1wb3J0IHsgSHlwZXJsaW5rQ29tcG9uZW50IH0gZnJvbSAnLi9oeXBlcmxpbmsvaHlwZXJsaW5rLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTdGF0aWNUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi9zdGF0aWMtdGV4dC9zdGF0aWMtdGV4dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWxUb2FzdEFkYXB0ZXJDb21wb25lbnQgfSBmcm9tICcuL3VsLXRvYXN0LWFkYXB0ZXIvdWwtdG9hc3QtYWRhcHRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWVzc2FnZVN0cmlwQ29tcG9uZW50IH0gZnJvbSAnLi9tZXNzYWdlLXN0cmlwL21lc3NhZ2Utc3RyaXAuY29tcG9uZW50JztcbmltcG9ydCB7IFVpTGluZWFyTGlzdENvbnRhaW5lcldpdGhCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL3VpLWxpbmVhci1saXN0LWNvbnRhaW5lci13aXRoLWJ1dHRvbi91aS1saW5lYXItbGlzdC1jb250YWluZXItd2l0aC1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IEZ1bmRhbWVudGFsRHluYW1pY0Zvcm1Db21wb25lbnQgfSBmcm9tICcuL2Z1bmRhbWVudGFsLWR5bmFtaWMtZm9ybS9mdW5kYW1lbnRhbC1keW5hbWljLWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IExheW91dEFjdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL2xheW91dC1hY3Rpb25zL2xheW91dC1hY3Rpb25zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMeUxheW91dENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vbHktbGF5b3V0LWNvbnRhaW5lci9seS1sYXlvdXQtY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVVsdkZvcm1NdWx0aVNlbGVjdFVpQ29tcG9uZW50IH0gZnJvbSAnLi91aS11bHYtZm9ybS1tdWx0aS1zZWxlY3QtdWkvdWktdWx2LWZvcm0tbXVsdGktc2VsZWN0LXVpLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVbHZGb3JtTXVsdGlTZWxlY3RDb21wb25lbnQgfSBmcm9tICcuL3Vsdi1mb3JtLW11bHRpLXNlbGVjdC91bHYtZm9ybS1tdWx0aS1zZWxlY3QuY29tcG9uZW50JztcbmltcG9ydCB7IFVsdkNvbHVtblNldHRpbmdzQ29tcG9uZW50IH0gZnJvbSAnLi91bHYtY29sdW1uLXNldHRpbmdzL3Vsdi1jb2x1bW4tc2V0dGluZ3MuY29tcG9uZW50JztcbmltcG9ydCB7IFVsdkZpbHRlclNldHRpbmdzQ29tcG9uZW50IH0gZnJvbSAnLi91bHYtZmlsdGVyLXNldHRpbmdzL3Vsdi1maWx0ZXItc2V0dGluZ3MuY29tcG9uZW50JztcbmltcG9ydCB7IFVsdlNvcnRTZXR0aW5nc0NvbXBvbmVudCB9IGZyb20gJy4vdWx2LXNvcnQtc2V0dGluZ3MvdWx2LXNvcnQtc2V0dGluZ3MuY29tcG9uZW50JztcbmltcG9ydCB7IFVsdkdyb3VwYnlTZXR0aW5nc0NvbXBvbmVudCB9IGZyb20gJy4vdWx2LWdyb3VwYnktc2V0dGluZ3MvdWx2LWdyb3VwYnktc2V0dGluZ3MuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhTGlzdEZpbGVMaW5lYXJDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWxpc3QtZmlsZS1saW5lYXIvYmFyc2EtbGlzdC1maWxlLWxpbmVhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlQZGZWaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL3VpLXBkZi12aWV3ZXIvdWktcGRmLXZpZXdlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FUaW55ZW1jZUNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtdGlueWVtY2UvYmFyc2EtdGlueWVtY2UuY29tcG9uZW50JztcbmltcG9ydCB7IFVpTW9uYWNvRWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi91aS1tb25hY28tZWRpdG9yL3VpLW1vbmFjby1lZGl0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhTW9uYWNvRWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1tb25hY28tZWRpdG9yL2JhcnNhLW1vbmFjby1lZGl0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhRGF0ZVRpbWVQaWNrZXJDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWRhdGUtdGltZS1waWNrZXIvYmFyc2EtZGF0ZS10aW1lLXBpY2tlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FUcmVlSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtdHJlZS1pdGVtL2JhcnNhLXRyZWUtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVXBsb2FkRmlsZVN0YXR1c1BpcGUgfSBmcm9tICcuL3VwbG9hZC1maWxlLXN0YXR1cy5waXBlJztcbmltcG9ydCB7IFVpU3dpdGNoQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi91aS1zd2l0Y2gtYnV0dG9uL3VpLXN3aXRjaC1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IFVpQ29sb3JVaUNvbXBvbmVudCB9IGZyb20gJy4vdWktY29sb3ItdWkvdWktY29sb3ItdWkuY29tcG9uZW50JztcbmltcG9ydCB7IEx5TGluZUNvbXBvbmVudCB9IGZyb20gJy4vbHktbGluZS9seS1saW5lLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVVsdk1haW5VaUNvbXBvbmVudCB9IGZyb20gJy4vdWktdWx2LW1haW4tdWkvdWktdWx2LW1haW4tdWkuY29tcG9uZW50JztcbmltcG9ydCB7IFJlcG9ydE5hdmlnYXRvckNvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0LW5hdmlnYXRvci9yZXBvcnQtbmF2aWdhdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYW5hZ2VGaWx0ZXJzUmVwb3J0Q29tcG9uZW50IH0gZnJvbSAnLi9tYW5hZ2UtZmlsdGVycy1yZXBvcnQvbWFuYWdlLWZpbHRlcnMtcmVwb3J0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSZXBvcnRTZWFyY2hGaWVsZHNNYW5hZ2VDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydC1zZWFyY2gtZmllbGRzLW1hbmFnZS9yZXBvcnQtc2VhcmNoLWZpZWxkcy1tYW5hZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IFJlcG9ydFNlYXJjaEZpZWxkc0hpZGRlblNldHRpbmdzQ29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnQtc2VhcmNoLWZpZWxkcy1oaWRkZW4tc2V0dGluZ3MvcmVwb3J0LXNlYXJjaC1maWVsZHMtaGlkZGVuLXNldHRpbmdzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZWFyY2hQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vc2VhcmNoLXBhbmVsL3NlYXJjaC1wYW5lbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVwb3J0U2VhcmNoUGFuZWxTYXZlQ29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnQtc2VhcmNoLXBhbmVsLXNhdmUvcmVwb3J0LXNlYXJjaC1wYW5lbC1zYXZlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaUdyaWRGaWx0ZXJTZXR0aW5nc0NvbXBvbmVudCB9IGZyb20gJy4vdWktZ3JpZC1maWx0ZXItc2V0dGluZ3MvdWktZ3JpZC1maWx0ZXItc2V0dGluZ3MuY29tcG9uZW50JztcbmltcG9ydCB7IFVpR3JpZEZpbHRlckl0ZW1Db21wb25lbnQgfSBmcm9tICcuL3VpLWdyaWQtZmlsdGVyLWl0ZW0vdWktZ3JpZC1maWx0ZXItaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2FwRm9udFBpcGUgfSBmcm9tICcuL3NhcC1mb250LnBpcGUnO1xuaW1wb3J0IHsgU2FwRm9udENsYXNzUGlwZSB9IGZyb20gJy4vc2FwLWZvbnQtY2xhc3MucGlwZSc7XG5pbXBvcnQgeyBVaURhdGVSYW5nZUV4Q29tcG9uZW50IH0gZnJvbSAnLi91aS1kYXRlLXJhbmdlLWV4L3VpLWRhdGUtcmFuZ2UtZXguY29tcG9uZW50JztcbmltcG9ydCB7IFVsTm90aWZ5UG9wdXBDb21wb25lbnQgfSBmcm9tICcuL3VsLW5vdGlmeS1wb3B1cC91bC1ub3RpZnktcG9wdXAuY29tcG9uZW50JztcbmltcG9ydCB7IFVpVGFibGVWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi91aS10YWJsZS12aWV3L3VpLXRhYmxlLXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IFVpTGlzdFZpZXdDb21wb25lbnQgfSBmcm9tICcuL3VpLWxpc3Qtdmlldy91aS1saXN0LXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IFN0cmluZ1RvQXJyYXlQaXBlLCBVaUNhcmRWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi91aS1jYXJkLXZpZXcvdWktY2FyZC12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVJlcG9ydENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vdWktcmVwb3J0LWNvbnRhaW5lci91aS1yZXBvcnQtY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOb0RhdGFDb21wb25lbnQgfSBmcm9tICcuL25vLWRhdGEvbm8tZGF0YS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29sdW1uUmVuZGVyZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbHVtbi1yZW5kZXJlci9jb2x1bW4tcmVuZGVyZXIuY29tcG9uZW50JztcbmltcG9ydCB7IElubGluZVNhdmVBbmRDYW5jZWxDb21wb25lbnQgfSBmcm9tICcuL2lubGluZS1zYXZlLWFuZC1jYW5jZWwvaW5saW5lLXNhdmUtYW5kLWNhbmNlbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlUcmVlVmlld0NvbXBvbmVudCB9IGZyb20gJy4vdWktdHJlZS12aWV3L3VpLXRyZWUtdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlUcmVlQ29tcG9uZW50IH0gZnJvbSAnLi91aS10cmVlL3VpLXRyZWUuY29tcG9uZW50JztcbmltcG9ydCB7IFVpQ2FsZW5kYXJDb21wb25lbnQgfSBmcm9tICcuL3VpLWNhbGVuZGFyL3VpLWNhbGVuZGFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOb2RlSGFzT25lRGVwdGhMZXZlbFBpcGUgfSBmcm9tICcuL2JhcnNhLXRyZWUtaXRlbS9ub2RlLWhhcy1vbmUtZGVwdGgtbGV2ZWwucGlwZSc7XG5pbXBvcnQgeyBVaUFzcFJlcG9ydFZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vdWktYXNwLXJlcG9ydC12aWV3ZXIvdWktYXNwLXJlcG9ydC12aWV3ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFVpR3JhcGhDb21wb25lbnQgfSBmcm9tICcuL3VpLWdyYXBoL3VpLWdyYXBoLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaUV4Y2VwdGlvbkZvcm1Db21wb25lbnQgfSBmcm9tICcuL3VpLWV4Y2VwdGlvbi1mb3JtL3VpLWV4Y2VwdGlvbi1mb3JtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaUVkaXRhYmxlR3JpZENvbXBvbmVudCB9IGZyb20gJy4vdWktZWRpdGFibGUtZ3JpZC91aS1lZGl0YWJsZS1ncmlkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb2x1bW5NYXRyaXhSZW5kZXJlckNvbXBvbmVudCB9IGZyb20gJy4vY29sdW1uLW1hdHJpeC1yZW5kZXJlci9jb2x1bW4tbWF0cml4LXJlbmRlcmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaU1hdHJpeFZpZXdDb21wb25lbnQgfSBmcm9tICcuL3VpLW1hdHJpeC12aWV3L3VpLW1hdHJpeC12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdXN0b21EYXRlVGltZUNvbXBvbmVudCB9IGZyb20gJy4vY3VzdG9tLWRhdGUtdGltZS9jdXN0b20tZGF0ZS10aW1lLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRyaXhWYWx1ZVBpcGUgfSBmcm9tICcuL2NvbHVtbi1tYXRyaXgtcmVuZGVyZXIvbWF0cml4LXZhbHVlLnBpcGUnO1xuaW1wb3J0IHsgQmFyc2FBc3BWaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWFzcC12aWV3ZXIvYmFyc2EtYXNwLXZpZXdlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmlsZUluRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9maWxlLWluLWRpYWxvZy9maWxlLWluLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRHluYW1pY1BhZ2VTaXplUGlwZSB9IGZyb20gJy4vZHluYW1pYy1wYWdlLXNpemUucGlwZSc7XG5pbXBvcnQgeyBSZXBvcnRWaWV3UmVuZGVyZXJEaXJlY3RpdmUgfSBmcm9tICcuL3JlcG9ydC12aWV3LXJlbmRlcmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBVaU1vSW5mb0dlbmVyYWxPYmplY3RVaUNvbXBvbmVudCB9IGZyb20gJy4vdWktbW8taW5mby1nZW5lcmFsLW9iamVjdC11aS91aS1tby1pbmZvLWdlbmVyYWwtb2JqZWN0LXVpLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaUdhbnR0Q2hhcnRDb21wb25lbnQgfSBmcm9tICcuL3VpLWdhbnR0LWNoYXJ0L3VpLWdhbnR0LWNoYXJ0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHYW50dERodG1sQ2hhcnRWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9nYW50dC1kaHRtbC1jaGFydC12aWV3L2dhbnR0LWRodG1sLWNoYXJ0LXZpZXcuY29tcG9uZW50JztcblxuaW1wb3J0IHsgRnVsbHNjcmVlbkRpYWxvZ0RpcmVjdGl2ZSB9IGZyb20gJy4vZnVsbHNjcmVlbi1kaWFsb2cuZGlyZWN0aXZlJztcbmltcG9ydCB7IFByb2dyZXNzSW5kaWNhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9wcm9ncmVzcy1pbmRpY2F0b3IvcHJvZ3Jlc3MtaW5kaWNhdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDYXJkVmlld0NvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL2NhcmQtdmlldy1jb250ZW50L2NhcmQtdmlldy1jb250ZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDYXJkSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY2FyZC1pdGVtL2NhcmQtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlDYXJkVmlld0hvcml6b250YWxHcm91cENvbXBvbmVudCB9IGZyb20gJy4vdWktY2FyZC12aWV3LWhvcml6b250YWwtZ3JvdXAvdWktY2FyZC12aWV3LWhvcml6b250YWwtZ3JvdXAuY29tcG9uZW50JztcbmltcG9ydCB7IFRpdGxlQ29tcG9uZW50IH0gZnJvbSAnLi90aXRsZS90aXRsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FVbHZNYWluQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS11bHYtbWFpbi9iYXJzYS11bHYtbWFpbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGlzdEl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2xpc3QtaXRlbS9saXN0LWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IEh0cmVlQ3JlYXRlTmV3Q29tcG9uZW50IH0gZnJvbSAnLi9odHJlZS1jcmVhdGUtbmV3L2h0cmVlLWNyZWF0ZS1uZXcuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhVGFibGVSb3dDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXRhYmxlLXJvdy9iYXJzYS10YWJsZS1yb3cuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhVGFibGVDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXRhYmxlLWNvbHVtbi9iYXJzYS10YWJsZS1jb2x1bW4uY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhVGFibGVIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXRhYmxlLWhlYWRlci9iYXJzYS10YWJsZS1oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEJyZWFkY3J1bWJDb21wb25lbnQgfSBmcm9tICcuL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlMYWJlbENvbXBvbmVudCB9IGZyb20gJy4vdWktbGFiZWwvdWktbGFiZWwuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1Ub29sYmFyQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtLXRvb2xiYXItYnV0dG9uL2Zvcm0tdG9vbGJhci1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhU2VhcmNoRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2Etc2VhcmNoLWZvcm0vYmFyc2Etc2VhcmNoLWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IFJlcG9ydE5ld1RvcEZvcm1Db21wb25lbnQgfSBmcm9tICcuL3JlcG9ydC1uZXctdG9wLWZvcm0vcmVwb3J0LW5ldy10b3AtZm9ybS5jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBCYXJzYU5ldHdvcmtPZmZsaW5lQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1uZXR3b3JrLW9mZmxpbmUvYmFyc2EtbmV0d29yay1vZmZsaW5lLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbG9iVmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi9ibG9iLXZpZXdlci9ibG9iLXZpZXdlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmlsZVZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vZmlsZS12aWV3ZXIvZmlsZS12aWV3ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEZpbGVWaWV3ZXJDb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi9maWxlLXZpZXdlci1jb250ZW50L2ZpbGUtdmlld2VyLWNvbnRlbnQuY29tcG9uZW50JztcbmltcG9ydCB7IEZpbGVWaWV3ZXJQb3BvdmVyQ29tcG9uZW50IH0gZnJvbSAnLi9maWxlLXZpZXdlci1wb3BvdmVyL2ZpbGUtdmlld2VyLXBvcG92ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IERvd25sb2FkRmlsZXNEaXJlY3RpdmUgfSBmcm9tICcuL2Rvd25sb2FkLWZpbGVzLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGdWxsc2NyZWVuRmlsZXNEaXJlY3RpdmUgfSBmcm9tICcuL2Z1bGxzY3JlZW4tZmlsZXMuZGlyZWN0aXZlJztcbmltcG9ydCB7IE5vdGlmaWNhdGlvbkl0ZW1Db21wb25lbnQgfSBmcm9tICcuL25vdGlmaWNhdGlvbi1pdGVtL25vdGlmaWNhdGlvbi1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUNhcnRhYmxlVGVtcGxhdGVDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWNhcnRhYmxlLXRlbXBsYXRlL2JhcnNhLWNhcnRhYmxlLXRlbXBsYXRlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUNhcnRhYmxlR3JvdXBDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWdyb3VwLWNhcnRhYmxlL2JhcnNhLWNhcnRhYmxlLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUNhcnRhYmxlRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtY2FydGFibGUtZm9ybS9iYXJzYS1jYXJ0YWJsZS1mb3JtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUNvbHVtbkluZGljYXRvckNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtY29sdW1uLWluZGljYXRvci9iYXJzYS1jb2x1bW4taW5kaWNhdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUZpZWxkS2V5VmFsdWVDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWZpZWxkLWtleS12YWx1ZS9iYXJzYS1maWVsZC1rZXktdmFsdWUuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhVG9vbGJhcml0ZW1TZWFyY2hDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXRvb2xiYXJpdGVtLXNlYXJjaC9iYXJzYS10b29sYmFyaXRlbS1zZWFyY2guY29tcG9uZW50JztcbmltcG9ydCB7IFVpSHRtbFZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vdWktaHRtbC12aWV3ZXIvdWktaHRtbC12aWV3ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhUGlzaG5hbWF5ZXNoUGF5YW1Db21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXBpc2huYW1heWVzaC1wYXlhbS9iYXJzYS1waXNobmFtYXllc2gtcGF5YW0uY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhVGV4dEVsbGlwc2lzQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS10ZXh0LWVsbGlwc2lzL2JhcnNhLXRleHQtZWxsaXBzaXMuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhTGlzdEZpbGVMaW5lYXJHbWFpbENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtbGlzdC1maWxlLWxpbmVhci1nbWFpbC9iYXJzYS1saXN0LWZpbGUtbGluZWFyLWdtYWlsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUxpbmthYmxlSXRlbXNQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtbGlua2FibGUtaXRlbXMtcGFuZWwvYmFyc2EtbGlua2FibGUtaXRlbXMtcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhRW51bU1lbnVCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWVudW0tbWVudS1idXR0b24vYmFyc2EtZW51bS1tZW51LWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FDYXJkTGF5b3V0UGFuZWxDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWNhcmQtbGF5b3V0LXBhbmVsL2JhcnNhLWNhcmQtbGF5b3V0LXBhbmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUhvcml6b250YWxGbGV4UGFuZWxDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWhvcml6b250YWwtZmxleC1wYW5lbC9iYXJzYS1ob3Jpem9udGFsLWZsZXgtcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhQmFzZUxheW91dFBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1iYXNlLXBhbmVsL2JhcnNhLWJhc2UtbGF5b3V0LXBhbmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUJhclBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1iYXItcGFuZWwvYmFyc2EtYmFyLXBhbmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUZvcm1TaWRlQ29udGVudENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtZm9ybS1zaWRlLWNvbnRlbnQvYmFyc2EtZm9ybS1zaWRlLWNvbnRlbnQuY29tcG9uZW50JztcblxuZXhwb3J0IGNvbnN0IGNvbXBvbmVudHMgPSBbXG4gICAgVWlUZXh0RmllbGRDb21wb25lbnQsXG4gICAgTHlMYXlvdXRGaWVsZExhYmVsQ29tcG9uZW50LFxuICAgIFVpQ2hlY2tCb3hDb21wb25lbnQsXG4gICAgVWlTaW1wbGVDb21ib0NvbXBvbmVudCxcbiAgICBVaVJhZGlvR3JvdXBDb21wb25lbnQsXG4gICAgVWlHcmlkQ29tcG9uZW50LFxuICAgIEx5TGF5b3V0Q29udGFpbmVyT2ZSb290Q29tcG9uZW50LFxuICAgIEx5TGF5b3V0UGFuZWxDb21wb25lbnQsXG4gICAgVWlSZWFkT25seUZpZWxkQ29tcG9uZW50LFxuICAgIFVpQ29udGFpbmVyV2l0aEJ1dHRvbkNvbXBvbmVudCxcbiAgICBVaVBpY3R1cmVGaWxlQ29tcG9uZW50LFxuICAgIFVpTW9JbmZvVWx2Q29tYm9Db21wb25lbnQsXG4gICAgVWlNdWx0aVNlbGVjdENvbWJvQ29tcG9uZW50LFxuICAgIFVpTnVtRGVjaW1hbFVpQ29tcG9uZW50LFxuICAgIFVpTnVtSW50VWlDb21wb25lbnQsXG4gICAgVWlUaW1lU3BhbkNvbXBvbmVudCxcbiAgICBVaUZpbGVMaW5lYXJMaXN0Qm94Q29tcG9uZW50LFxuICAgIEx5RW1wdHlTcGFjZUNvbXBvbmVudCxcbiAgICBVaVNpbmdsZVBpY3R1cmVDb21wb25lbnQsXG4gICAgVWx2U2VsZWN0aW9uQ29tcG9uZW50LFxuICAgIFVsdlRvb2xiYXJDb21wb25lbnQsXG4gICAgVWx2UGFnaW5nQ29tcG9uZW50LFxuICAgIFVpR3JpZFNvcnRTZXR0aW5nQ29tcG9uZW50LFxuICAgIFVpR3JpZFNvcnRJdGVtQ29tcG9uZW50LFxuICAgIFVpR3JpZENvbHVtbnNDb21wb25lbnQsXG4gICAgTWFza0NvbXBvbmVudCxcbiAgICBVaUluZm9CYXJQYW5lbENvbXBvbmVudCxcbiAgICBVaUZvcm1QYW5lbFRvb2xiYXJDb21wb25lbnQsXG4gICAgVWlGb3JtUGFuZWxDb21wb25lbnQsXG4gICAgVWlTZWFyY2hDb21tYW5kSW5mb1VpQ29tcG9uZW50LFxuICAgIFVsdlNldHRpbmdzQ29tcG9uZW50LFxuICAgIFVpVGlueW1jZUNvbXBvbmVudCxcbiAgICBVaUJ1dHRvbkNvbXBvbmVudCxcbiAgICBVaURhdGVUaW1lQ29tcG9uZW50LFxuICAgIEZvcm1EaWFsb2dDb21wb25lbnQsXG4gICAgSGVhZGVyRmFjZXRLZXlWYWx1ZUNvbXBvbmVudCxcbiAgICBIZWFkZXJGYWNldEZvcm1Db21wb25lbnQsXG4gICAgSGVhZGVyRmFjZXRSYXRlQ29tcG9uZW50LFxuICAgIEhlYWRlckZhY2V0UHJvZ3Jlc3NDb21wb25lbnQsXG4gICAgSGVhZGVyRmFjZXRNaWNyb2NoYXJ0Q29tcG9uZW50LFxuICAgIEhlYWRlckZhY2V0UGxhaW5UZXh0Q29tcG9uZW50LFxuICAgIFVpTW9JbmZvU3ViRm9ybVVpQ29tcG9uZW50LFxuICAgIFJlc3BvbnNpdmVUb29sYmFyQ29tcG9uZW50LFxuICAgIFJlc3BvbnNpdmVUb29sYmFyUmVuZGVyZXJDb21wb25lbnQsXG4gICAgVWlUZXh0QXJlYUNvbXBvbmVudCxcbiAgICBMYXlvdXRDb250cm9sQ29tcG9uZW50LFxuICAgIExheW91dFdpemFyZENvbXBvbmVudCxcbiAgICBGb3JtV2l6YXJkQ29tcG9uZW50LFxuICAgIEZvcm1EaWFsb2dMZXNzQ29tcG9uZW50LFxuICAgIFJpY2hUZXh0U3RhdGljQ29tcG9uZW50LFxuICAgIFVpUGljdHVyZXNJbmZvQ29tcG9uZW50LFxuICAgIEx5SG9yaXpvbnRhbExheW91dENvbXBvbmVudCxcbiAgICBMeVZlcnRpY2FsTGF5b3V0Q29tcG9uZW50LFxuICAgIEx5VGFiQ29udGFpbmVyQ29tcG9uZW50LFxuICAgIEx5VGFiUGFnZUNvbXBvbmVudCxcbiAgICBMeUxhYmVsQ29tcG9uZW50LFxuICAgIFVpTW9JbmZvQ29tYm9WaWV3ZXJDb21wb25lbnQsXG4gICAgVWxNc2dCb3hBZGFwdGVyQ29tcG9uZW50LFxuICAgIFVpVHJlZUNvbXBvbmVudCxcbiAgICBIZWFkZXJBdmF0YXJDb21wb25lbnQsXG4gICAgVWlXb3JrZmxvd1BhbmVsVWlDb21wb25lbnQsXG4gICAgVWx2Q29udGV4dE1lbnVDb21wb25lbnQsXG4gICAgVWxMb2FkaW5nTWFza1VpQ29tcG9uZW50LFxuICAgIFVpVGV4dEZpZWxkQXV0b0NvbXBsZXRlQ29tcG9uZW50LFxuICAgIENhcHRjaGFGaWVsZENvbXBvbmVudCxcbiAgICBMeVNpbXBsZUxhYmVsQ29tcG9uZW50LFxuICAgIEdsb2JhbFNlYXJjaFBhbmVsQ29tcG9uZW50LFxuICAgIEdsb2JhbFNlYXJjaE1vZHVsZUNvbXBvbmVudCxcbiAgICBHbG9iYWxTZWFyY2hDb21wb25lbnQsXG4gICAgSHlwZXJsaW5rQ29tcG9uZW50LFxuICAgIFN0YXRpY1RleHRDb21wb25lbnQsXG4gICAgVWxUb2FzdEFkYXB0ZXJDb21wb25lbnQsXG4gICAgTWVzc2FnZVN0cmlwQ29tcG9uZW50LFxuICAgIFVpTGluZWFyTGlzdENvbnRhaW5lcldpdGhCdXR0b25Db21wb25lbnQsXG4gICAgRnVuZGFtZW50YWxEeW5hbWljRm9ybUNvbXBvbmVudCxcbiAgICBMYXlvdXRBY3Rpb25zQ29tcG9uZW50LFxuICAgIEx5TGF5b3V0Q29udGFpbmVyQ29tcG9uZW50LFxuICAgIFVpVWx2Rm9ybU11bHRpU2VsZWN0VWlDb21wb25lbnQsXG4gICAgVWx2Rm9ybU11bHRpU2VsZWN0Q29tcG9uZW50LFxuICAgIFVsdkNvbHVtblNldHRpbmdzQ29tcG9uZW50LFxuICAgIFVsdkZpbHRlclNldHRpbmdzQ29tcG9uZW50LFxuICAgIFVsdlNvcnRTZXR0aW5nc0NvbXBvbmVudCxcbiAgICBVbHZHcm91cGJ5U2V0dGluZ3NDb21wb25lbnQsXG4gICAgQmFyc2FMaXN0RmlsZUxpbmVhckNvbXBvbmVudCxcbiAgICBVaVBkZlZpZXdlckNvbXBvbmVudCxcbiAgICBCYXJzYVRpbnllbWNlQ29tcG9uZW50LFxuICAgIFVpTW9uYWNvRWRpdG9yQ29tcG9uZW50LFxuICAgIEJhcnNhTW9uYWNvRWRpdG9yQ29tcG9uZW50LFxuICAgIEJhcnNhRGF0ZVRpbWVQaWNrZXJDb21wb25lbnQsXG4gICAgQmFyc2FUcmVlSXRlbUNvbXBvbmVudCxcbiAgICBVaVN3aXRjaEJ1dHRvbkNvbXBvbmVudCxcbiAgICBVaUNvbG9yVWlDb21wb25lbnQsXG4gICAgTHlMaW5lQ29tcG9uZW50LFxuICAgIFVpVWx2TWFpblVpQ29tcG9uZW50LFxuICAgIFJlcG9ydE5hdmlnYXRvckNvbXBvbmVudCxcbiAgICBNYW5hZ2VGaWx0ZXJzUmVwb3J0Q29tcG9uZW50LFxuICAgIFJlcG9ydFNlYXJjaEZpZWxkc01hbmFnZUNvbXBvbmVudCxcbiAgICBSZXBvcnRTZWFyY2hGaWVsZHNIaWRkZW5TZXR0aW5nc0NvbXBvbmVudCxcbiAgICBTZWFyY2hQYW5lbENvbXBvbmVudCxcbiAgICBSZXBvcnRTZWFyY2hQYW5lbFNhdmVDb21wb25lbnQsXG4gICAgVWlHcmlkRmlsdGVyU2V0dGluZ3NDb21wb25lbnQsXG4gICAgVWlHcmlkRmlsdGVySXRlbUNvbXBvbmVudCxcbiAgICBVaURhdGVSYW5nZUV4Q29tcG9uZW50LFxuICAgIFVsTm90aWZ5UG9wdXBDb21wb25lbnQsXG4gICAgVWlUYWJsZVZpZXdDb21wb25lbnQsXG4gICAgVWlMaXN0Vmlld0NvbXBvbmVudCxcbiAgICBVaUNhcmRWaWV3Q29tcG9uZW50LFxuICAgIFVpUmVwb3J0Q29udGFpbmVyQ29tcG9uZW50LFxuICAgIE5vRGF0YUNvbXBvbmVudCxcbiAgICBDb2x1bW5SZW5kZXJlckNvbXBvbmVudCxcbiAgICBJbmxpbmVTYXZlQW5kQ2FuY2VsQ29tcG9uZW50LFxuICAgIFVpVHJlZVZpZXdDb21wb25lbnQsXG4gICAgSW5saW5lU2F2ZUFuZENhbmNlbENvbXBvbmVudCxcbiAgICBVaUNhbGVuZGFyQ29tcG9uZW50LFxuICAgIFVpQXNwUmVwb3J0Vmlld2VyQ29tcG9uZW50LFxuICAgIFVpR3JhcGhDb21wb25lbnQsXG4gICAgVWlFeGNlcHRpb25Gb3JtQ29tcG9uZW50LFxuICAgIFVpRWRpdGFibGVHcmlkQ29tcG9uZW50LFxuICAgIENvbHVtbk1hdHJpeFJlbmRlcmVyQ29tcG9uZW50LFxuICAgIFVpTWF0cml4Vmlld0NvbXBvbmVudCxcbiAgICBDdXN0b21EYXRlVGltZUNvbXBvbmVudCxcbiAgICBCYXJzYUFzcFZpZXdlckNvbXBvbmVudCxcbiAgICBGaWxlSW5EaWFsb2dDb21wb25lbnQsXG4gICAgVWlNb0luZm9HZW5lcmFsT2JqZWN0VWlDb21wb25lbnQsXG4gICAgVWlHYW50dENoYXJ0Q29tcG9uZW50LFxuICAgIEdhbnR0RGh0bWxDaGFydFZpZXdDb21wb25lbnQsXG4gICAgUHJvZ3Jlc3NJbmRpY2F0b3JDb21wb25lbnQsXG4gICAgQ2FyZFZpZXdDb250ZW50Q29tcG9uZW50LFxuICAgIENhcmRJdGVtQ29tcG9uZW50LFxuICAgIFVpQ2FyZFZpZXdIb3Jpem9udGFsR3JvdXBDb21wb25lbnQsXG4gICAgVGl0bGVDb21wb25lbnQsXG4gICAgQmFyc2FVbHZNYWluQ29tcG9uZW50LFxuICAgIExpc3RJdGVtQ29tcG9uZW50LFxuICAgIEh0cmVlQ3JlYXRlTmV3Q29tcG9uZW50LFxuICAgIEJhcnNhVGFibGVIZWFkZXJDb21wb25lbnQsXG4gICAgQmFyc2FUYWJsZVJvd0NvbXBvbmVudCxcbiAgICBCYXJzYVRhYmxlQ29sdW1uQ29tcG9uZW50LFxuICAgIEJyZWFkY3J1bWJDb21wb25lbnQsXG4gICAgVWlMYWJlbENvbXBvbmVudCxcbiAgICBGb3JtVG9vbGJhckJ1dHRvbkNvbXBvbmVudCxcbiAgICBCYXJzYVNlYXJjaEZvcm1Db21wb25lbnQsXG4gICAgUmVwb3J0TmV3VG9wRm9ybUNvbXBvbmVudCxcbiAgICBCYXJzYU5ldHdvcmtPZmZsaW5lQ29tcG9uZW50LFxuICAgIEZpbGVWaWV3ZXJDb250ZW50Q29tcG9uZW50LFxuICAgIEZpbGVWaWV3ZXJQb3BvdmVyQ29tcG9uZW50LFxuICAgIEZpbGVWaWV3ZXJDb21wb25lbnQsXG4gICAgQmxvYlZpZXdlckNvbXBvbmVudCxcbiAgICBOb3RpZmljYXRpb25JdGVtQ29tcG9uZW50LFxuICAgIEJhcnNhQ2FydGFibGVUZW1wbGF0ZUNvbXBvbmVudCxcbiAgICBCYXJzYUNhcnRhYmxlR3JvdXBDb21wb25lbnQsXG4gICAgQmFyc2FDYXJ0YWJsZUZvcm1Db21wb25lbnQsXG4gICAgQmFyc2FDb2x1bW5JbmRpY2F0b3JDb21wb25lbnQsXG4gICAgQmFyc2FGaWVsZEtleVZhbHVlQ29tcG9uZW50LFxuICAgIEJhcnNhVG9vbGJhcml0ZW1TZWFyY2hDb21wb25lbnQsXG4gICAgVWlIdG1sVmlld2VyQ29tcG9uZW50LFxuICAgIEJhcnNhUGlzaG5hbWF5ZXNoUGF5YW1Db21wb25lbnQsXG4gICAgQmFyc2FUZXh0RWxsaXBzaXNDb21wb25lbnQsXG4gICAgQmFyc2FMaXN0RmlsZUxpbmVhckdtYWlsQ29tcG9uZW50LFxuICAgIEJhcnNhTGlua2FibGVJdGVtc1BhbmVsQ29tcG9uZW50LFxuICAgIEJhcnNhRW51bU1lbnVCdXR0b25Db21wb25lbnQsXG4gICAgQmFyc2FDYXJkTGF5b3V0UGFuZWxDb21wb25lbnQsXG4gICAgQmFyc2FIb3Jpem9udGFsRmxleFBhbmVsQ29tcG9uZW50LFxuICAgIEJhcnNhQmFzZUxheW91dFBhbmVsQ29tcG9uZW50LFxuICAgIEJhcnNhQmFyUGFuZWxDb21wb25lbnQsXG4gICAgQmFyc2FGb3JtU2lkZUNvbnRlbnRDb21wb25lbnRcbl07XG5leHBvcnQgY29uc3QgcGlwZXMgPSBbXG4gICAgVXBsb2FkRmlsZVN0YXR1c1BpcGUsXG4gICAgU2FwRm9udFBpcGUsXG4gICAgU2FwRm9udENsYXNzUGlwZSxcbiAgICBTdHJpbmdUb0FycmF5UGlwZSxcbiAgICBOb2RlSGFzT25lRGVwdGhMZXZlbFBpcGUsXG4gICAgTWF0cml4VmFsdWVQaXBlLFxuICAgIER5bmFtaWNQYWdlU2l6ZVBpcGVcbl07XG5leHBvcnQgY29uc3QgZGlyZWN0aXZlcyA9IFtcbiAgICBXaXphcmRMYXlvdXREaXJlY3RpdmUsXG4gICAgQ29sUmVuZGVyZXJEaXJlY3RpdmUsXG4gICAgQXBwbHlDb25kaXRpb25hbEZvcm1hdHNEaXJlY3RpdmUsXG4gICAgUmVwb3J0Vmlld1JlbmRlcmVyRGlyZWN0aXZlLFxuICAgIEZ1bGxzY3JlZW5EaWFsb2dEaXJlY3RpdmUsXG4gICAgRnVsbHNjcmVlbkZpbGVzRGlyZWN0aXZlLFxuICAgIERvd25sb2FkRmlsZXNEaXJlY3RpdmVcbl07XG5cbmV4cG9ydCBjb25zdCBJTklUX1NBUEZJT1JJID1cbiAgICAoXG4gICAgICAgIHJ0bFNlcnZpY2U6IFJ0bFNlcnZpY2UsXG4gICAgICAgIGNvbnRlbnREZW5zaXR5U2VydmljZTogR2xvYmFsQ29udGVudERlbnNpdHlTZXJ2aWNlLFxuICAgICAgICB0aGVtZVNlcnZpY2U6IFRoZW1lc1NlcnZpY2UsXG4gICAgICAgIHBvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2VcbiAgICApID0+XG4gICAgKCkgPT4ge1xuICAgICAgICBydGxTZXJ2aWNlLnJ0bC5uZXh0KEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuSXNSdGwpO1xuICAgICAgICBsZXQgZm9udEZhbWlseSA9ICdJUkFOWWVrYW5EaWdpdHMnO1xuICAgICAgICBpZiAoQmFyc2FBcGkuTG9naW5Gb3JtRGF0YS5DdWx0dXJlID09PSAnZW4tVVMnKSB7XG4gICAgICAgICAgICBmb250RmFtaWx5ID0gJ0lSQU5TYW5zV2ViJztcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGNzcyA9IGAqIHtcbiAgICAtLWZkRHluYW1pY1BhZ2VfVGl0bGVfRm9udF9GYW1pbHk6ICcke2ZvbnRGYW1pbHl9JztcbiAgICAtLXNhcEZvbnRGYW1pbHk6ICcke2ZvbnRGYW1pbHl9JztcbiAgICAtLWZkV2l6YXJkX0xhYmVsX0ZvbnRfRmFtaWx5OiAnJHtmb250RmFtaWx5fSc7XG4gICAgLS1zYXBGb250TGlnaHRGYW1pbHk6ICcke2ZvbnRGYW1pbHl9JztcbiAgICAtLXNhcEZvbnRIZWFkZXJGYW1pbHk6ICcke2ZvbnRGYW1pbHl9JztcbiAgICAtLV91aTVfaW5wdXRfY29tcGFjdF9oZWlnaHQ6IDEuNjI1cmVtO1xuICAgIC0tc2FwRm9udFNpemU6IDAuODg1cmVtO1xuICAgIC8qIC0tc2FwQ29udGVudF9IZWFkZXJTaGFkb3c6IG5vbmU7ICovXG59YCxcbiAgICAgICAgICAgIGhlYWQgPSBkb2N1bWVudC5oZWFkIHx8IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdoZWFkJylbMF0sXG4gICAgICAgICAgICBzdHlsZTogYW55ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3R5bGUnKTtcblxuICAgICAgICBoZWFkLmFwcGVuZENoaWxkKHN0eWxlKTtcblxuICAgICAgICBzdHlsZS50eXBlID0gJ3RleHQvY3NzJztcbiAgICAgICAgaWYgKHN0eWxlLnN0eWxlU2hlZXQpIHtcbiAgICAgICAgICAgIC8vIFRoaXMgaXMgcmVxdWlyZWQgZm9yIElFOCBhbmQgYmVsb3cuXG4gICAgICAgICAgICBzdHlsZS5zdHlsZVNoZWV0LmNzc1RleHQgPSBjc3M7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdHlsZS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShjc3MpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHBvcnRhbFNlcnZpY2UudXNlclBvcnRhbFNldHRpbmdzJC5waXBlKGZpbHRlcigoYykgPT4gYyAhPSBudWxsKSkuc3Vic2NyaWJlKCh1c2VyU2V0dGluZ3MpID0+IHtcbiAgICAgICAgICAgIGxldCBjb250ZW50RGVuc2l0eTogYW55O1xuICAgICAgICAgICAgbGV0IHRoZW1lOiBhbnk7XG4gICAgICAgICAgICBpZiAoIXVzZXJTZXR0aW5ncykge1xuICAgICAgICAgICAgICAgIGlmIChnZXREZXZpY2VJc01vYmlsZSgpIHx8IGdldERldmljZUlzUGhvbmUoKSB8fCBnZXREZXZpY2VJc1RhYmxldCgpKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnREZW5zaXR5ID0gQ29udGVudERlbnNpdHlNb2RlLkNPWlk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudERlbnNpdHkgPSBDb250ZW50RGVuc2l0eU1vZGUuQ09NUEFDVDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IHsgQ29udGVudERlbnNpdHkkQ2FwdGlvbiwgVGhlbWUkQ2FwdGlvbiB9ID0gdXNlclNldHRpbmdzO1xuICAgICAgICAgICAgICAgIGNvbnRlbnREZW5zaXR5ID0gQ29udGVudERlbnNpdHkkQ2FwdGlvbjtcbiAgICAgICAgICAgICAgICB0aGVtZSA9IFRoZW1lJENhcHRpb247XG4gICAgICAgICAgICAgICAgaWYgKCFjb250ZW50RGVuc2l0eSkge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50RGVuc2l0eSA9IENvbnRlbnREZW5zaXR5TW9kZS5DT01QQUNUO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChnZXREZXZpY2VJc01vYmlsZSgpIHx8IGdldERldmljZUlzUGhvbmUoKSkge1xuICAgICAgICAgICAgICAgIGNvbnRlbnREZW5zaXR5ID0gQ29udGVudERlbnNpdHlNb2RlLkNPWlk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoY29udGVudERlbnNpdHkpIHtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnREZW5zaXR5U2VydmljZS51cGRhdGVDb250ZW50RGVuc2l0eShjb250ZW50RGVuc2l0eSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbnN0IGJvZHlDbGFzc0NvbXBhY3QgPSAndWk1LWNvbnRlbnQtZGVuc2l0eS1jb21wYWN0JztcbiAgICAgICAgICAgICAgICBjb25zdCBib2R5Q2xhc3NDb25kZW5zZWQgPSAndWk1LWNvbnRlbnQtZGVuc2l0eS1jb25kZW5zZWQnO1xuICAgICAgICAgICAgICAgIGNvbnN0IGJvZHlDbGFzc0NvenkgPSAndWk1LWNvbnRlbnQtZGVuc2l0eS1jb3p5JztcbiAgICAgICAgICAgICAgICBjb25zdCBib2R5ID0gZG9jdW1lbnQ/LmJvZHk7XG4gICAgICAgICAgICAgICAgc3dpdGNoIChjb250ZW50RGVuc2l0eSkge1xuICAgICAgICAgICAgICAgICAgICBjYXNlICdjb25kZW5zZWQnOlxuICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghYm9keS5jbGFzc0xpc3QuY29udGFpbnMoYm9keUNsYXNzQ29uZGVuc2VkKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5hZGQoYm9keUNsYXNzQ29uZGVuc2VkKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9keS5jbGFzc0xpc3QucmVtb3ZlKGJvZHlDbGFzc0NvbXBhY3QpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkuY2xhc3NMaXN0LnJlbW92ZShib2R5Q2xhc3NDb3p5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJ2NvenknOlxuICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghYm9keS5jbGFzc0xpc3QuY29udGFpbnMoYm9keUNsYXNzQ296eSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9keS5jbGFzc0xpc3QuYWRkKGJvZHlDbGFzc0NvenkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5yZW1vdmUoYm9keUNsYXNzQ29tcGFjdCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9keS5jbGFzc0xpc3QucmVtb3ZlKGJvZHlDbGFzc0NvbmRlbnNlZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnY29tcGFjdCc6XG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFib2R5LmNsYXNzTGlzdC5jb250YWlucyhib2R5Q2xhc3NDb21wYWN0KSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5hZGQoYm9keUNsYXNzQ29tcGFjdCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkuY2xhc3NMaXN0LnJlbW92ZShib2R5Q2xhc3NDb3p5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5yZW1vdmUoYm9keUNsYXNzQ29uZGVuc2VkKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGVtZSkge1xuICAgICAgICAgICAgICAgIGlmICh0aGVtZS5pbmRleE9mKCdkYXJrJykgPiAtMSkge1xuICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2NvbG9yLXNjaGVtZScsICdkYXJrJyk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdjb2xvci1zY2hlbWUnLCAnbGlnaHQnKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcG9ydGFsU2VydmljZS5zZXRUaGVtZSh0aGVtZVNlcnZpY2Uuc2V0VGhlbWUodGhlbWUpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfTtcbiJdfQ==
466
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1zYXAtdWkvc3JjL2xpYi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTBELGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkgsT0FBTyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBaUIsTUFBTSxzQkFBc0IsQ0FBQztBQUN2SCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTlCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ3RHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxxRUFBcUUsQ0FBQztBQUN2SCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUM3RixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUMvRyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUNsRyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUN0RyxPQUFPLEVBQUUs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QUNELGFBQWEsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1NBQ3hEO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSdGxTZXJ2aWNlLCBUaGVtZXNTZXJ2aWNlLCBHbG9iYWxDb250ZW50RGVuc2l0eVNlcnZpY2UsIENvbnRlbnREZW5zaXR5TW9kZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XG5pbXBvcnQgeyBCYXJzYUFwaSwgZ2V0RGV2aWNlSXNNb2JpbGUsIGdldERldmljZUlzUGhvbmUsIGdldERldmljZUlzVGFibGV0LCBQb3J0YWxTZXJ2aWNlIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xuaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFVpVGV4dEZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi91aS10ZXh0LWZpZWxkL3VpLXRleHQtZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7IEx5TGF5b3V0RmllbGRMYWJlbENvbXBvbmVudCB9IGZyb20gJy4vbHktbGF5b3V0LWZpZWxkLWxhYmVsL2x5LWxheW91dC1maWVsZC1sYWJlbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlDaGVja0JveENvbXBvbmVudCB9IGZyb20gJy4vdWktY2hlY2stYm94L3VpLWNoZWNrLWJveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlTaW1wbGVDb21ib0NvbXBvbmVudCB9IGZyb20gJy4vdWktc2ltcGxlLWNvbWJvL3VpLXNpbXBsZS1jb21iby5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlSYWRpb0dyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi91aS1yYWRpby1ncm91cC91aS1yYWRpby1ncm91cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlHcmlkQ29tcG9uZW50IH0gZnJvbSAnLi91aS1ncmlkL3VpLWdyaWQuY29tcG9uZW50JztcbmltcG9ydCB7IEx5TGF5b3V0Q29udGFpbmVyT2ZSb290Q29tcG9uZW50IH0gZnJvbSAnLi9seS1sYXlvdXQtY29udGFpbmVyLW9mLXJvb3QvbHktbGF5b3V0LWNvbnRhaW5lci1vZi1yb290LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMeUxheW91dFBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9seS1sYXlvdXQtcGFuZWwvbHktbGF5b3V0LXBhbmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVJlYWRPbmx5RmllbGRDb21wb25lbnQgfSBmcm9tICcuL3VpLXJlYWQtb25seS1maWVsZC91aS1yZWFkLW9ubHktZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7IFVpQ29udGFpbmVyV2l0aEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vdWktY29udGFpbmVyLXdpdGgtYnV0dG9uL3VpLWNvbnRhaW5lci13aXRoLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlQaWN0dXJlRmlsZUNvbXBvbmVudCB9IGZyb20gJy4vdWktcGljdHVyZS1maWxlL3VpLXBpY3R1cmUtZmlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlNb0luZm9VbHZDb21ib0NvbXBvbmVudCB9IGZyb20gJy4vdWktbW8taW5mby11bHYtY29tYm8vdWktbW8taW5mby11bHYtY29tYm8uY29tcG9uZW50JztcbmltcG9ydCB7IFVpTXVsdGlTZWxlY3RDb21ib0NvbXBvbmVudCB9IGZyb20gJy4vdWktbXVsdGktc2VsZWN0LWNvbWJvL3VpLW11bHRpLXNlbGVjdC1jb21iby5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlOdW1EZWNpbWFsVWlDb21wb25lbnQgfSBmcm9tICcuL3VpLW51bS1kZWNpbWFsLXVpL3VpLW51bS1kZWNpbWFsLXVpLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaU51bUludFVpQ29tcG9uZW50IH0gZnJvbSAnLi91aS1udW0taW50LXVpL3VpLW51bS1pbnQtdWkuY29tcG9uZW50JztcbmltcG9ydCB7IFVpVGltZVNwYW5Db21wb25lbnQgfSBmcm9tICcuL3VpLXRpbWUtc3Bhbi91aS10aW1lLXNwYW4uY29tcG9uZW50JztcbmltcG9ydCB7IFVpRmlsZUxpbmVhckxpc3RCb3hDb21wb25lbnQgfSBmcm9tICcuL3VpLWZpbGUtbGluZWFyLWxpc3QtYm94L3VpLWZpbGUtbGluZWFyLWxpc3QtYm94LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMeUVtcHR5U3BhY2VDb21wb25lbnQgfSBmcm9tICcuL2x5LWVtcHR5LXNwYWNlL2x5LWVtcHR5LXNwYWNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVNpbmdsZVBpY3R1cmVDb21wb25lbnQgfSBmcm9tICcuL3VpLXNpbmdsZS1waWN0dXJlL3VpLXNpbmdsZS1waWN0dXJlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVbHZTZWxlY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL3Vsdi1zZWxlY3Rpb24vdWx2LXNlbGVjdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWx2VG9vbGJhckNvbXBvbmVudCB9IGZyb20gJy4vdWx2LXRvb2xiYXIvdWx2LXRvb2xiYXIuY29tcG9uZW50JztcbmltcG9ydCB7IFVsdlBhZ2luZ0NvbXBvbmVudCB9IGZyb20gJy4vdWx2LXBhZ2luZy91bHYtcGFnaW5nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaUdyaWRTb3J0U2V0dGluZ0NvbXBvbmVudCB9IGZyb20gJy4vdWktZ3JpZC1zb3J0LXNldHRpbmcvdWktZ3JpZC1zb3J0LXNldHRpbmcuY29tcG9uZW50JztcbmltcG9ydCB7IFVpR3JpZFNvcnRJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi91aS1ncmlkLXNvcnQtaXRlbS91aS1ncmlkLXNvcnQtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlHcmlkQ29sdW1uc0NvbXBvbmVudCB9IGZyb20gJy4vdWktZ3JpZC1jb2x1bW5zL3VpLWdyaWQtY29sdW1ucy5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWFza0NvbXBvbmVudCB9IGZyb20gJy4vbWFzay9tYXNrLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaUluZm9CYXJQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vdWktaW5mby1iYXItcGFuZWwvdWktaW5mby1iYXItcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IFVpRm9ybVBhbmVsVG9vbGJhckNvbXBvbmVudCB9IGZyb20gJy4vdWktZm9ybS1wYW5lbC10b29sYmFyL3VpLWZvcm0tcGFuZWwtdG9vbGJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlGb3JtUGFuZWxDb21wb25lbnQgfSBmcm9tICcuL3VpLWZvcm0tcGFuZWwvdWktZm9ybS1wYW5lbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlTZWFyY2hDb21tYW5kSW5mb1VpQ29tcG9uZW50IH0gZnJvbSAnLi91aS1zZWFyY2gtY29tbWFuZC1pbmZvLXVpL3VpLXNlYXJjaC1jb21tYW5kLWluZm8tdWkuY29tcG9uZW50JztcbmltcG9ydCB7IFVsdlNldHRpbmdzQ29tcG9uZW50IH0gZnJvbSAnLi91bHYtc2V0dGluZ3MvdWx2LXNldHRpbmdzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVRpbnltY2VDb21wb25lbnQgfSBmcm9tICcuL3VpLXRpbnltY2UvdWktdGlueW1jZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL3VpLWJ1dHRvbi91aS1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IFVpRGF0ZVRpbWVDb21wb25lbnQgfSBmcm9tICcuL3VpLWRhdGUtdGltZS91aS1kYXRlLXRpbWUuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0tZGlhbG9nL2Zvcm0tZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJGYWNldEtleVZhbHVlQ29tcG9uZW50IH0gZnJvbSAnLi9oZWFkZXItZmFjZXQta2V5LXZhbHVlL2hlYWRlci1mYWNldC1rZXktdmFsdWUuY29tcG9uZW50JztcbmltcG9ydCB7IEhlYWRlckZhY2V0Rm9ybUNvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyLWZhY2V0LWZvcm0vaGVhZGVyLWZhY2V0LWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IEhlYWRlckZhY2V0UmF0ZUNvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyLWZhY2V0LXJhdGUvaGVhZGVyLWZhY2V0LXJhdGUuY29tcG9uZW50JztcbmltcG9ydCB7IEhlYWRlckZhY2V0UHJvZ3Jlc3NDb21wb25lbnQgfSBmcm9tICcuL2hlYWRlci1mYWNldC1wcm9ncmVzcy9oZWFkZXItZmFjZXQtcHJvZ3Jlc3MuY29tcG9uZW50JztcbmltcG9ydCB7IEhlYWRlckZhY2V0TWljcm9jaGFydENvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyLWZhY2V0LW1pY3JvY2hhcnQvaGVhZGVyLWZhY2V0LW1pY3JvY2hhcnQuY29tcG9uZW50JztcbmltcG9ydCB7IEhlYWRlckZhY2V0UGxhaW5UZXh0Q29tcG9uZW50IH0gZnJvbSAnLi9oZWFkZXItZmFjZXQtcGxhaW4tdGV4dC9oZWFkZXItZmFjZXQtcGxhaW4tdGV4dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlNb0luZm9TdWJGb3JtVWlDb21wb25lbnQgfSBmcm9tICcuL3VpLW1vLWluZm8tc3ViLWZvcm0tdWkvdWktbW8taW5mby1zdWItZm9ybS11aS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVzcG9uc2l2ZVRvb2xiYXJDb21wb25lbnQgfSBmcm9tICcuL3Jlc3BvbnNpdmUtdG9vbGJhci9yZXNwb25zaXZlLXRvb2xiYXIuY29tcG9uZW50JztcbmltcG9ydCB7IFJlc3BvbnNpdmVUb29sYmFyUmVuZGVyZXJDb21wb25lbnQgfSBmcm9tICcuL3Jlc3BvbnNpdmUtdG9vbGJhci1yZW5kZXJlci9yZXNwb25zaXZlLXRvb2xiYXItcmVuZGVyZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFVpVGV4dEFyZWFDb21wb25lbnQgfSBmcm9tICcuL3VpLXRleHQtYXJlYS91aS10ZXh0LWFyZWEuY29tcG9uZW50JztcbmltcG9ydCB7IExheW91dENvbnRyb2xDb21wb25lbnQgfSBmcm9tICcuL2xheW91dC1jb250cm9sL2xheW91dC1jb250cm9sLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMYXlvdXRXaXphcmRDb21wb25lbnQgfSBmcm9tICcuL2xheW91dC13aXphcmQvbGF5b3V0LXdpemFyZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybVdpemFyZENvbXBvbmVudCB9IGZyb20gJy4vZm9ybS13aXphcmQvZm9ybS13aXphcmQuY29tcG9uZW50JztcbmltcG9ydCB7IFdpemFyZExheW91dERpcmVjdGl2ZSB9IGZyb20gJy4vd2l6YXJkLWxheW91dC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRm9ybURpYWxvZ0xlc3NDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0tZGlhbG9nLWxlc3MvZm9ybS1kaWFsb2ctbGVzcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmljaFRleHRTdGF0aWNDb21wb25lbnQgfSBmcm9tICcuL3JpY2gtdGV4dC1zdGF0aWMvcmljaC10ZXh0LXN0YXRpYy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlQaWN0dXJlc0luZm9Db21wb25lbnQgfSBmcm9tICcuL3VpLXBpY3R1cmVzLWluZm8vdWktcGljdHVyZXMtaW5mby5jb21wb25lbnQnO1xuaW1wb3J0IHsgTHlIb3Jpem9udGFsTGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9seS1ob3Jpem9udGFsLWxheW91dC9seS1ob3Jpem9udGFsLWxheW91dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTHlWZXJ0aWNhbExheW91dENvbXBvbmVudCB9IGZyb20gJy4vbHktdmVydGljYWwtbGF5b3V0L2x5LXZlcnRpY2FsLWxheW91dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTHlUYWJDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL2x5LXRhYi1jb250YWluZXIvbHktdGFiLWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTHlUYWJQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9seS10YWItcGFnZS9seS10YWItcGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTHlMYWJlbENvbXBvbmVudCB9IGZyb20gJy4vbHktbGFiZWwvbHktbGFiZWwuY29tcG9uZW50JztcbmltcG9ydCB7IENvbFJlbmRlcmVyRGlyZWN0aXZlIH0gZnJvbSAnLi9jb2wtcmVuZGVyZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IFVpTW9JbmZvQ29tYm9WaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL3VpLW1vLWluZm8tY29tYm8tdmlld2VyL3VpLW1vLWluZm8tY29tYm8tdmlld2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVbE1zZ0JveEFkYXB0ZXJDb21wb25lbnQgfSBmcm9tICcuL3VsLW1zZy1ib3gtYWRhcHRlci91bC1tc2ctYm94LWFkYXB0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEhlYWRlckF2YXRhckNvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyLWF2YXRhci9oZWFkZXItYXZhdGFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBcHBseUNvbmRpdGlvbmFsRm9ybWF0c0RpcmVjdGl2ZSB9IGZyb20gJy4vYXBwbHktY29uZGl0aW9uYWwtZm9ybW1hdGluZ3MuZGlyZWN0aXZlJztcbmltcG9ydCB7IFVpV29ya2Zsb3dQYW5lbFVpQ29tcG9uZW50IH0gZnJvbSAnLi91aS13b3JrZmxvdy1wYW5lbC11aS91aS13b3JrZmxvdy1wYW5lbC11aS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWx2Q29udGV4dE1lbnVDb21wb25lbnQgfSBmcm9tICcuL3Vsdi1jb250ZXh0LW1lbnUvdWx2LWNvbnRleHQtbWVudS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWxMb2FkaW5nTWFza1VpQ29tcG9uZW50IH0gZnJvbSAnLi91bC1sb2FkaW5nLW1hc2stdWkvdWwtbG9hZGluZy1tYXNrLXVpLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVRleHRGaWVsZEF1dG9Db21wbGV0ZUNvbXBvbmVudCB9IGZyb20gJy4vdWktdGV4dC1maWVsZC1hdXRvLWNvbXBsZXRlL3VpLXRleHQtZmllbGQtYXV0by1jb21wbGV0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2FwdGNoYUZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi9jYXB0Y2hhLWZpZWxkL2NhcHRjaGEtZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7IEx5U2ltcGxlTGFiZWxDb21wb25lbnQgfSBmcm9tICcuL2x5LXNpbXBsZS1sYWJlbC9seS1zaW1wbGUtbGFiZWwuY29tcG9uZW50JztcbmltcG9ydCB7IEdsb2JhbFNlYXJjaFBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9nbG9iYWwtc2VhcmNoLXBhbmVsL2dsb2JhbC1zZWFyY2gtcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IEdsb2JhbFNlYXJjaE1vZHVsZUNvbXBvbmVudCB9IGZyb20gJy4vZ2xvYmFsLXNlYXJjaC1tb2R1bGUvZ2xvYmFsLXNlYXJjaC1tb2R1bGUuY29tcG9uZW50JztcbmltcG9ydCB7IEdsb2JhbFNlYXJjaENvbXBvbmVudCB9IGZyb20gJy4vZ2xvYmFsLXNlYXJjaC9nbG9iYWwtc2VhcmNoLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIeXBlcmxpbmtDb21wb25lbnQgfSBmcm9tICcuL2h5cGVybGluay9oeXBlcmxpbmsuY29tcG9uZW50JztcbmltcG9ydCB7IFN0YXRpY1RleHRDb21wb25lbnQgfSBmcm9tICcuL3N0YXRpYy10ZXh0L3N0YXRpYy10ZXh0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVbFRvYXN0QWRhcHRlckNvbXBvbmVudCB9IGZyb20gJy4vdWwtdG9hc3QtYWRhcHRlci91bC10b2FzdC1hZGFwdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNZXNzYWdlU3RyaXBDb21wb25lbnQgfSBmcm9tICcuL21lc3NhZ2Utc3RyaXAvbWVzc2FnZS1zdHJpcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlMaW5lYXJMaXN0Q29udGFpbmVyV2l0aEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vdWktbGluZWFyLWxpc3QtY29udGFpbmVyLXdpdGgtYnV0dG9uL3VpLWxpbmVhci1saXN0LWNvbnRhaW5lci13aXRoLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnVuZGFtZW50YWxEeW5hbWljRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vZnVuZGFtZW50YWwtZHluYW1pYy1mb3JtL2Z1bmRhbWVudGFsLWR5bmFtaWMtZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGF5b3V0QWN0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0LWFjdGlvbnMvbGF5b3V0LWFjdGlvbnMuY29tcG9uZW50JztcbmltcG9ydCB7IEx5TGF5b3V0Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9seS1sYXlvdXQtY29udGFpbmVyL2x5LWxheW91dC1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFVpVWx2Rm9ybU11bHRpU2VsZWN0VWlDb21wb25lbnQgfSBmcm9tICcuL3VpLXVsdi1mb3JtLW11bHRpLXNlbGVjdC11aS91aS11bHYtZm9ybS1tdWx0aS1zZWxlY3QtdWkuY29tcG9uZW50JztcbmltcG9ydCB7IFVsdkZvcm1NdWx0aVNlbGVjdENvbXBvbmVudCB9IGZyb20gJy4vdWx2LWZvcm0tbXVsdGktc2VsZWN0L3Vsdi1mb3JtLW11bHRpLXNlbGVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWx2Q29sdW1uU2V0dGluZ3NDb21wb25lbnQgfSBmcm9tICcuL3Vsdi1jb2x1bW4tc2V0dGluZ3MvdWx2LWNvbHVtbi1zZXR0aW5ncy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWx2RmlsdGVyU2V0dGluZ3NDb21wb25lbnQgfSBmcm9tICcuL3Vsdi1maWx0ZXItc2V0dGluZ3MvdWx2LWZpbHRlci1zZXR0aW5ncy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWx2U29ydFNldHRpbmdzQ29tcG9uZW50IH0gZnJvbSAnLi91bHYtc29ydC1zZXR0aW5ncy91bHYtc29ydC1zZXR0aW5ncy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWx2R3JvdXBieVNldHRpbmdzQ29tcG9uZW50IH0gZnJvbSAnLi91bHYtZ3JvdXBieS1zZXR0aW5ncy91bHYtZ3JvdXBieS1zZXR0aW5ncy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FMaXN0RmlsZUxpbmVhckNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtbGlzdC1maWxlLWxpbmVhci9iYXJzYS1saXN0LWZpbGUtbGluZWFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVBkZlZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vdWktcGRmLXZpZXdlci91aS1wZGYtdmlld2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYVRpbnllbWNlQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS10aW55ZW1jZS9iYXJzYS10aW55ZW1jZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlNb25hY29FZGl0b3JDb21wb25lbnQgfSBmcm9tICcuL3VpLW1vbmFjby1lZGl0b3IvdWktbW9uYWNvLWVkaXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FNb25hY29FZGl0b3JDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLW1vbmFjby1lZGl0b3IvYmFyc2EtbW9uYWNvLWVkaXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FEYXRlVGltZVBpY2tlckNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtZGF0ZS10aW1lLXBpY2tlci9iYXJzYS1kYXRlLXRpbWUtcGlja2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYVRyZWVJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS10cmVlLWl0ZW0vYmFyc2EtdHJlZS1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVcGxvYWRGaWxlU3RhdHVzUGlwZSB9IGZyb20gJy4vdXBsb2FkLWZpbGUtc3RhdHVzLnBpcGUnO1xuaW1wb3J0IHsgVWlTd2l0Y2hCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL3VpLXN3aXRjaC1idXR0b24vdWktc3dpdGNoLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlDb2xvclVpQ29tcG9uZW50IH0gZnJvbSAnLi91aS1jb2xvci11aS91aS1jb2xvci11aS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTHlMaW5lQ29tcG9uZW50IH0gZnJvbSAnLi9seS1saW5lL2x5LWxpbmUuY29tcG9uZW50JztcbmltcG9ydCB7IFVpVWx2TWFpblVpQ29tcG9uZW50IH0gZnJvbSAnLi91aS11bHYtbWFpbi11aS91aS11bHYtbWFpbi11aS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVwb3J0TmF2aWdhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnQtbmF2aWdhdG9yL3JlcG9ydC1uYXZpZ2F0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IE1hbmFnZUZpbHRlcnNSZXBvcnRDb21wb25lbnQgfSBmcm9tICcuL21hbmFnZS1maWx0ZXJzLXJlcG9ydC9tYW5hZ2UtZmlsdGVycy1yZXBvcnQuY29tcG9uZW50JztcbmltcG9ydCB7IFJlcG9ydFNlYXJjaEZpZWxkc01hbmFnZUNvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0LXNlYXJjaC1maWVsZHMtbWFuYWdlL3JlcG9ydC1zZWFyY2gtZmllbGRzLW1hbmFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVwb3J0U2VhcmNoRmllbGRzSGlkZGVuU2V0dGluZ3NDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydC1zZWFyY2gtZmllbGRzLWhpZGRlbi1zZXR0aW5ncy9yZXBvcnQtc2VhcmNoLWZpZWxkcy1oaWRkZW4tc2V0dGluZ3MuY29tcG9uZW50JztcbmltcG9ydCB7IFNlYXJjaFBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9zZWFyY2gtcGFuZWwvc2VhcmNoLXBhbmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSZXBvcnRTZWFyY2hQYW5lbFNhdmVDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydC1zZWFyY2gtcGFuZWwtc2F2ZS9yZXBvcnQtc2VhcmNoLXBhbmVsLXNhdmUuY29tcG9uZW50JztcbmltcG9ydCB7IFVpR3JpZEZpbHRlclNldHRpbmdzQ29tcG9uZW50IH0gZnJvbSAnLi91aS1ncmlkLWZpbHRlci1zZXR0aW5ncy91aS1ncmlkLWZpbHRlci1zZXR0aW5ncy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlHcmlkRmlsdGVySXRlbUNvbXBvbmVudCB9IGZyb20gJy4vdWktZ3JpZC1maWx0ZXItaXRlbS91aS1ncmlkLWZpbHRlci1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTYXBGb250UGlwZSB9IGZyb20gJy4vc2FwLWZvbnQucGlwZSc7XG5pbXBvcnQgeyBTYXBGb250Q2xhc3NQaXBlIH0gZnJvbSAnLi9zYXAtZm9udC1jbGFzcy5waXBlJztcbmltcG9ydCB7IFVpRGF0ZVJhbmdlRXhDb21wb25lbnQgfSBmcm9tICcuL3VpLWRhdGUtcmFuZ2UtZXgvdWktZGF0ZS1yYW5nZS1leC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWxOb3RpZnlQb3B1cENvbXBvbmVudCB9IGZyb20gJy4vdWwtbm90aWZ5LXBvcHVwL3VsLW5vdGlmeS1wb3B1cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlUYWJsZVZpZXdDb21wb25lbnQgfSBmcm9tICcuL3VpLXRhYmxlLXZpZXcvdWktdGFibGUtdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlMaXN0Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vdWktbGlzdC12aWV3L3VpLWxpc3Qtdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3RyaW5nVG9BcnJheVBpcGUsIFVpQ2FyZFZpZXdDb21wb25lbnQgfSBmcm9tICcuL3VpLWNhcmQtdmlldy91aS1jYXJkLXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IFVpUmVwb3J0Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi91aS1yZXBvcnQtY29udGFpbmVyL3VpLXJlcG9ydC1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IE5vRGF0YUNvbXBvbmVudCB9IGZyb20gJy4vbm8tZGF0YS9uby1kYXRhLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb2x1bW5SZW5kZXJlckNvbXBvbmVudCB9IGZyb20gJy4vY29sdW1uLXJlbmRlcmVyL2NvbHVtbi1yZW5kZXJlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSW5saW5lU2F2ZUFuZENhbmNlbENvbXBvbmVudCB9IGZyb20gJy4vaW5saW5lLXNhdmUtYW5kLWNhbmNlbC9pbmxpbmUtc2F2ZS1hbmQtY2FuY2VsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVRyZWVWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi91aS10cmVlLXZpZXcvdWktdHJlZS12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaVRyZWVDb21wb25lbnQgfSBmcm9tICcuL3VpLXRyZWUvdWktdHJlZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlDYWxlbmRhckNvbXBvbmVudCB9IGZyb20gJy4vdWktY2FsZW5kYXIvdWktY2FsZW5kYXIuY29tcG9uZW50JztcbmltcG9ydCB7IE5vZGVIYXNPbmVEZXB0aExldmVsUGlwZSB9IGZyb20gJy4vYmFyc2EtdHJlZS1pdGVtL25vZGUtaGFzLW9uZS1kZXB0aC1sZXZlbC5waXBlJztcbmltcG9ydCB7IFVpQXNwUmVwb3J0Vmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi91aS1hc3AtcmVwb3J0LXZpZXdlci91aS1hc3AtcmVwb3J0LXZpZXdlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlHcmFwaENvbXBvbmVudCB9IGZyb20gJy4vdWktZ3JhcGgvdWktZ3JhcGguY29tcG9uZW50JztcbmltcG9ydCB7IFVpRXhjZXB0aW9uRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vdWktZXhjZXB0aW9uLWZvcm0vdWktZXhjZXB0aW9uLWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IFVpRWRpdGFibGVHcmlkQ29tcG9uZW50IH0gZnJvbSAnLi91aS1lZGl0YWJsZS1ncmlkL3VpLWVkaXRhYmxlLWdyaWQuY29tcG9uZW50JztcbmltcG9ydCB7IENvbHVtbk1hdHJpeFJlbmRlcmVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb2x1bW4tbWF0cml4LXJlbmRlcmVyL2NvbHVtbi1tYXRyaXgtcmVuZGVyZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFVpTWF0cml4Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vdWktbWF0cml4LXZpZXcvdWktbWF0cml4LXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IEN1c3RvbURhdGVUaW1lQ29tcG9uZW50IH0gZnJvbSAnLi9jdXN0b20tZGF0ZS10aW1lL2N1c3RvbS1kYXRlLXRpbWUuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdHJpeFZhbHVlUGlwZSB9IGZyb20gJy4vY29sdW1uLW1hdHJpeC1yZW5kZXJlci9tYXRyaXgtdmFsdWUucGlwZSc7XG5pbXBvcnQgeyBCYXJzYUFzcFZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtYXNwLXZpZXdlci9iYXJzYS1hc3Atdmlld2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWxlSW5EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2ZpbGUtaW4tZGlhbG9nL2ZpbGUtaW4tZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEeW5hbWljUGFnZVNpemVQaXBlIH0gZnJvbSAnLi9keW5hbWljLXBhZ2Utc2l6ZS5waXBlJztcbmltcG9ydCB7IFJlcG9ydFZpZXdSZW5kZXJlckRpcmVjdGl2ZSB9IGZyb20gJy4vcmVwb3J0LXZpZXctcmVuZGVyZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IFVpTW9JbmZvR2VuZXJhbE9iamVjdFVpQ29tcG9uZW50IH0gZnJvbSAnLi91aS1tby1pbmZvLWdlbmVyYWwtb2JqZWN0LXVpL3VpLW1vLWluZm8tZ2VuZXJhbC1vYmplY3QtdWkuY29tcG9uZW50JztcbmltcG9ydCB7IFVpR2FudHRDaGFydENvbXBvbmVudCB9IGZyb20gJy4vdWktZ2FudHQtY2hhcnQvdWktZ2FudHQtY2hhcnQuY29tcG9uZW50JztcbmltcG9ydCB7IEdhbnR0RGh0bWxDaGFydFZpZXdDb21wb25lbnQgfSBmcm9tICcuL2dhbnR0LWRodG1sLWNoYXJ0LXZpZXcvZ2FudHQtZGh0bWwtY2hhcnQtdmlldy5jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBGdWxsc2NyZWVuRGlhbG9nRGlyZWN0aXZlIH0gZnJvbSAnLi9mdWxsc2NyZWVuLWRpYWxvZy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgUHJvZ3Jlc3NJbmRpY2F0b3JDb21wb25lbnQgfSBmcm9tICcuL3Byb2dyZXNzLWluZGljYXRvci9wcm9ncmVzcy1pbmRpY2F0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IENhcmRWaWV3Q29udGVudENvbXBvbmVudCB9IGZyb20gJy4vY2FyZC12aWV3LWNvbnRlbnQvY2FyZC12aWV3LWNvbnRlbnQuY29tcG9uZW50JztcbmltcG9ydCB7IENhcmRJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9jYXJkLWl0ZW0vY2FyZC1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaUNhcmRWaWV3SG9yaXpvbnRhbEdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi91aS1jYXJkLXZpZXctaG9yaXpvbnRhbC1ncm91cC91aS1jYXJkLXZpZXctaG9yaXpvbnRhbC1ncm91cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGl0bGVDb21wb25lbnQgfSBmcm9tICcuL3RpdGxlL3RpdGxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYVVsdk1haW5Db21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXVsdi1tYWluL2JhcnNhLXVsdi1tYWluLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMaXN0SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vbGlzdC1pdGVtL2xpc3QtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgSHRyZWVDcmVhdGVOZXdDb21wb25lbnQgfSBmcm9tICcuL2h0cmVlLWNyZWF0ZS1uZXcvaHRyZWUtY3JlYXRlLW5ldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FUYWJsZVJvd0NvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtdGFibGUtcm93L2JhcnNhLXRhYmxlLXJvdy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FUYWJsZUNvbHVtbkNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtdGFibGUtY29sdW1uL2JhcnNhLXRhYmxlLWNvbHVtbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FUYWJsZUhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtdGFibGUtaGVhZGVyL2JhcnNhLXRhYmxlLWhlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnJlYWRjcnVtYkNvbXBvbmVudCB9IGZyb20gJy4vYnJlYWRjcnVtYi9icmVhZGNydW1iLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVaUxhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi91aS1sYWJlbC91aS1sYWJlbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybVRvb2xiYXJCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2Zvcm0tdG9vbGJhci1idXR0b24vZm9ybS10b29sYmFyLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FTZWFyY2hGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1zZWFyY2gtZm9ybS9iYXJzYS1zZWFyY2gtZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVwb3J0TmV3VG9wRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0LW5ldy10b3AtZm9ybS9yZXBvcnQtbmV3LXRvcC1mb3JtLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IEJhcnNhTmV0d29ya09mZmxpbmVDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLW5ldHdvcmstb2ZmbGluZS9iYXJzYS1uZXR3b3JrLW9mZmxpbmUuY29tcG9uZW50JztcbmltcG9ydCB7IEJsb2JWaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL2Jsb2Itdmlld2VyL2Jsb2Itdmlld2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWxlVmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi9maWxlLXZpZXdlci9maWxlLXZpZXdlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmlsZVZpZXdlckNvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL2ZpbGUtdmlld2VyLWNvbnRlbnQvZmlsZS12aWV3ZXItY29udGVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmlsZVZpZXdlclBvcG92ZXJDb21wb25lbnQgfSBmcm9tICcuL2ZpbGUtdmlld2VyLXBvcG92ZXIvZmlsZS12aWV3ZXItcG9wb3Zlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRG93bmxvYWRGaWxlc0RpcmVjdGl2ZSB9IGZyb20gJy4vZG93bmxvYWQtZmlsZXMuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZ1bGxzY3JlZW5GaWxlc0RpcmVjdGl2ZSB9IGZyb20gJy4vZnVsbHNjcmVlbi1maWxlcy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vbm90aWZpY2F0aW9uLWl0ZW0vbm90aWZpY2F0aW9uLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhQ2FydGFibGVUZW1wbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtY2FydGFibGUtdGVtcGxhdGUvYmFyc2EtY2FydGFibGUtdGVtcGxhdGUuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhQ2FydGFibGVHcm91cENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtZ3JvdXAtY2FydGFibGUvYmFyc2EtY2FydGFibGUtZ3JvdXAuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhQ2FydGFibGVGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1jYXJ0YWJsZS1mb3JtL2JhcnNhLWNhcnRhYmxlLWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhQ29sdW1uSW5kaWNhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1jb2x1bW4taW5kaWNhdG9yL2JhcnNhLWNvbHVtbi1pbmRpY2F0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhRmllbGRLZXlWYWx1ZUNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtZmllbGQta2V5LXZhbHVlL2JhcnNhLWZpZWxkLWtleS12YWx1ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FUb29sYmFyaXRlbVNlYXJjaENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtdG9vbGJhcml0ZW0tc2VhcmNoL2JhcnNhLXRvb2xiYXJpdGVtLXNlYXJjaC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVWlIdG1sVmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi91aS1odG1sLXZpZXdlci91aS1odG1sLXZpZXdlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FQaXNobmFtYXllc2hQYXlhbUNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtcGlzaG5hbWF5ZXNoLXBheWFtL2JhcnNhLXBpc2huYW1heWVzaC1wYXlhbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FUZXh0RWxsaXBzaXNDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLXRleHQtZWxsaXBzaXMvYmFyc2EtdGV4dC1lbGxpcHNpcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FMaXN0RmlsZUxpbmVhckdtYWlsQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1saXN0LWZpbGUtbGluZWFyLWdtYWlsL2JhcnNhLWxpc3QtZmlsZS1saW5lYXItZ21haWwuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhTGlua2FibGVJdGVtc1BhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1saW5rYWJsZS1pdGVtcy1wYW5lbC9iYXJzYS1saW5rYWJsZS1pdGVtcy1wYW5lbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FFbnVtTWVudUJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtZW51bS1tZW51LWJ1dHRvbi9iYXJzYS1lbnVtLW1lbnUtYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUNhcmRMYXlvdXRQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtY2FyZC1sYXlvdXQtcGFuZWwvYmFyc2EtY2FyZC1sYXlvdXQtcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhSG9yaXpvbnRhbEZsZXhQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vYmFyc2EtaG9yaXpvbnRhbC1mbGV4LXBhbmVsL2JhcnNhLWhvcml6b250YWwtZmxleC1wYW5lbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFyc2FCYXNlTGF5b3V0UGFuZWxDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWJhc2UtcGFuZWwvYmFyc2EtYmFzZS1sYXlvdXQtcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhQmFyUGFuZWxDb21wb25lbnQgfSBmcm9tICcuL2JhcnNhLWJhci1wYW5lbC9iYXJzYS1iYXItcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhRm9ybVNpZGVDb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi9iYXJzYS1mb3JtLXNpZGUtY29udGVudC9iYXJzYS1mb3JtLXNpZGUtY29udGVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGlhbG9nSGFuZGxlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlhbG9nLWhhbmRsZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IEJhcnNhU2ltcGxlRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vYmFyc2Etc2ltcGxlLWZvcm0vYmFyc2Etc2ltcGxlLWZvcm0uY29tcG9uZW50JztcbmV4cG9ydCBjb25zdCBjb21wb25lbnRzID0gW1xuICAgIFVpVGV4dEZpZWxkQ29tcG9uZW50LFxuICAgIEx5TGF5b3V0RmllbGRMYWJlbENvbXBvbmVudCxcbiAgICBVaUNoZWNrQm94Q29tcG9uZW50LFxuICAgIFVpU2ltcGxlQ29tYm9Db21wb25lbnQsXG4gICAgVWlSYWRpb0dyb3VwQ29tcG9uZW50LFxuICAgIFVpR3JpZENvbXBvbmVudCxcbiAgICBMeUxheW91dENvbnRhaW5lck9mUm9vdENvbXBvbmVudCxcbiAgICBMeUxheW91dFBhbmVsQ29tcG9uZW50LFxuICAgIFVpUmVhZE9ubHlGaWVsZENvbXBvbmVudCxcbiAgICBVaUNvbnRhaW5lcldpdGhCdXR0b25Db21wb25lbnQsXG4gICAgVWlQaWN0dXJlRmlsZUNvbXBvbmVudCxcbiAgICBVaU1vSW5mb1VsdkNvbWJvQ29tcG9uZW50LFxuICAgIFVpTXVsdGlTZWxlY3RDb21ib0NvbXBvbmVudCxcbiAgICBVaU51bURlY2ltYWxVaUNvbXBvbmVudCxcbiAgICBVaU51bUludFVpQ29tcG9uZW50LFxuICAgIFVpVGltZVNwYW5Db21wb25lbnQsXG4gICAgVWlGaWxlTGluZWFyTGlzdEJveENvbXBvbmVudCxcbiAgICBMeUVtcHR5U3BhY2VDb21wb25lbnQsXG4gICAgVWlTaW5nbGVQaWN0dXJlQ29tcG9uZW50LFxuICAgIFVsdlNlbGVjdGlvbkNvbXBvbmVudCxcbiAgICBVbHZUb29sYmFyQ29tcG9uZW50LFxuICAgIFVsdlBhZ2luZ0NvbXBvbmVudCxcbiAgICBVaUdyaWRTb3J0U2V0dGluZ0NvbXBvbmVudCxcbiAgICBVaUdyaWRTb3J0SXRlbUNvbXBvbmVudCxcbiAgICBVaUdyaWRDb2x1bW5zQ29tcG9uZW50LFxuICAgIE1hc2tDb21wb25lbnQsXG4gICAgVWlJbmZvQmFyUGFuZWxDb21wb25lbnQsXG4gICAgVWlGb3JtUGFuZWxUb29sYmFyQ29tcG9uZW50LFxuICAgIFVpRm9ybVBhbmVsQ29tcG9uZW50LFxuICAgIFVpU2VhcmNoQ29tbWFuZEluZm9VaUNvbXBvbmVudCxcbiAgICBVbHZTZXR0aW5nc0NvbXBvbmVudCxcbiAgICBVaVRpbnltY2VDb21wb25lbnQsXG4gICAgVWlCdXR0b25Db21wb25lbnQsXG4gICAgVWlEYXRlVGltZUNvbXBvbmVudCxcbiAgICBGb3JtRGlhbG9nQ29tcG9uZW50LFxuICAgIEhlYWRlckZhY2V0S2V5VmFsdWVDb21wb25lbnQsXG4gICAgSGVhZGVyRmFjZXRGb3JtQ29tcG9uZW50LFxuICAgIEhlYWRlckZhY2V0UmF0ZUNvbXBvbmVudCxcbiAgICBIZWFkZXJGYWNldFByb2dyZXNzQ29tcG9uZW50LFxuICAgIEhlYWRlckZhY2V0TWljcm9jaGFydENvbXBvbmVudCxcbiAgICBIZWFkZXJGYWNldFBsYWluVGV4dENvbXBvbmVudCxcbiAgICBVaU1vSW5mb1N1YkZvcm1VaUNvbXBvbmVudCxcbiAgICBSZXNwb25zaXZlVG9vbGJhckNvbXBvbmVudCxcbiAgICBSZXNwb25zaXZlVG9vbGJhclJlbmRlcmVyQ29tcG9uZW50LFxuICAgIFVpVGV4dEFyZWFDb21wb25lbnQsXG4gICAgTGF5b3V0Q29udHJvbENvbXBvbmVudCxcbiAgICBMYXlvdXRXaXphcmRDb21wb25lbnQsXG4gICAgRm9ybVdpemFyZENvbXBvbmVudCxcbiAgICBGb3JtRGlhbG9nTGVzc0NvbXBvbmVudCxcbiAgICBSaWNoVGV4dFN0YXRpY0NvbXBvbmVudCxcbiAgICBVaVBpY3R1cmVzSW5mb0NvbXBvbmVudCxcbiAgICBMeUhvcml6b250YWxMYXlvdXRDb21wb25lbnQsXG4gICAgTHlWZXJ0aWNhbExheW91dENvbXBvbmVudCxcbiAgICBMeVRhYkNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBMeVRhYlBhZ2VDb21wb25lbnQsXG4gICAgTHlMYWJlbENvbXBvbmVudCxcbiAgICBVaU1vSW5mb0NvbWJvVmlld2VyQ29tcG9uZW50LFxuICAgIFVsTXNnQm94QWRhcHRlckNvbXBvbmVudCxcbiAgICBVaVRyZWVDb21wb25lbnQsXG4gICAgSGVhZGVyQXZhdGFyQ29tcG9uZW50LFxuICAgIFVpV29ya2Zsb3dQYW5lbFVpQ29tcG9uZW50LFxuICAgIFVsdkNvbnRleHRNZW51Q29tcG9uZW50LFxuICAgIFVsTG9hZGluZ01hc2tVaUNvbXBvbmVudCxcbiAgICBVaVRleHRGaWVsZEF1dG9Db21wbGV0ZUNvbXBvbmVudCxcbiAgICBDYXB0Y2hhRmllbGRDb21wb25lbnQsXG4gICAgTHlTaW1wbGVMYWJlbENvbXBvbmVudCxcbiAgICBHbG9iYWxTZWFyY2hQYW5lbENvbXBvbmVudCxcbiAgICBHbG9iYWxTZWFyY2hNb2R1bGVDb21wb25lbnQsXG4gICAgR2xvYmFsU2VhcmNoQ29tcG9uZW50LFxuICAgIEh5cGVybGlua0NvbXBvbmVudCxcbiAgICBTdGF0aWNUZXh0Q29tcG9uZW50LFxuICAgIFVsVG9hc3RBZGFwdGVyQ29tcG9uZW50LFxuICAgIE1lc3NhZ2VTdHJpcENvbXBvbmVudCxcbiAgICBVaUxpbmVhckxpc3RDb250YWluZXJXaXRoQnV0dG9uQ29tcG9uZW50LFxuICAgIEZ1bmRhbWVudGFsRHluYW1pY0Zvcm1Db21wb25lbnQsXG4gICAgTGF5b3V0QWN0aW9uc0NvbXBvbmVudCxcbiAgICBMeUxheW91dENvbnRhaW5lckNvbXBvbmVudCxcbiAgICBVaVVsdkZvcm1NdWx0aVNlbGVjdFVpQ29tcG9uZW50LFxuICAgIFVsdkZvcm1NdWx0aVNlbGVjdENvbXBvbmVudCxcbiAgICBVbHZDb2x1bW5TZXR0aW5nc0NvbXBvbmVudCxcbiAgICBVbHZGaWx0ZXJTZXR0aW5nc0NvbXBvbmVudCxcbiAgICBVbHZTb3J0U2V0dGluZ3NDb21wb25lbnQsXG4gICAgVWx2R3JvdXBieVNldHRpbmdzQ29tcG9uZW50LFxuICAgIEJhcnNhTGlzdEZpbGVMaW5lYXJDb21wb25lbnQsXG4gICAgVWlQZGZWaWV3ZXJDb21wb25lbnQsXG4gICAgQmFyc2FUaW55ZW1jZUNvbXBvbmVudCxcbiAgICBVaU1vbmFjb0VkaXRvckNvbXBvbmVudCxcbiAgICBCYXJzYU1vbmFjb0VkaXRvckNvbXBvbmVudCxcbiAgICBCYXJzYURhdGVUaW1lUGlja2VyQ29tcG9uZW50LFxuICAgIEJhcnNhVHJlZUl0ZW1Db21wb25lbnQsXG4gICAgVWlTd2l0Y2hCdXR0b25Db21wb25lbnQsXG4gICAgVWlDb2xvclVpQ29tcG9uZW50LFxuICAgIEx5TGluZUNvbXBvbmVudCxcbiAgICBVaVVsdk1haW5VaUNvbXBvbmVudCxcbiAgICBSZXBvcnROYXZpZ2F0b3JDb21wb25lbnQsXG4gICAgTWFuYWdlRmlsdGVyc1JlcG9ydENvbXBvbmVudCxcbiAgICBSZXBvcnRTZWFyY2hGaWVsZHNNYW5hZ2VDb21wb25lbnQsXG4gICAgUmVwb3J0U2VhcmNoRmllbGRzSGlkZGVuU2V0dGluZ3NDb21wb25lbnQsXG4gICAgU2VhcmNoUGFuZWxDb21wb25lbnQsXG4gICAgUmVwb3J0U2VhcmNoUGFuZWxTYXZlQ29tcG9uZW50LFxuICAgIFVpR3JpZEZpbHRlclNldHRpbmdzQ29tcG9uZW50LFxuICAgIFVpR3JpZEZpbHRlckl0ZW1Db21wb25lbnQsXG4gICAgVWlEYXRlUmFuZ2VFeENvbXBvbmVudCxcbiAgICBVbE5vdGlmeVBvcHVwQ29tcG9uZW50LFxuICAgIFVpVGFibGVWaWV3Q29tcG9uZW50LFxuICAgIFVpTGlzdFZpZXdDb21wb25lbnQsXG4gICAgVWlDYXJkVmlld0NvbXBvbmVudCxcbiAgICBVaVJlcG9ydENvbnRhaW5lckNvbXBvbmVudCxcbiAgICBOb0RhdGFDb21wb25lbnQsXG4gICAgQ29sdW1uUmVuZGVyZXJDb21wb25lbnQsXG4gICAgSW5saW5lU2F2ZUFuZENhbmNlbENvbXBvbmVudCxcbiAgICBVaVRyZWVWaWV3Q29tcG9uZW50LFxuICAgIElubGluZVNhdmVBbmRDYW5jZWxDb21wb25lbnQsXG4gICAgVWlDYWxlbmRhckNvbXBvbmVudCxcbiAgICBVaUFzcFJlcG9ydFZpZXdlckNvbXBvbmVudCxcbiAgICBVaUdyYXBoQ29tcG9uZW50LFxuICAgIFVpRXhjZXB0aW9uRm9ybUNvbXBvbmVudCxcbiAgICBVaUVkaXRhYmxlR3JpZENvbXBvbmVudCxcbiAgICBDb2x1bW5NYXRyaXhSZW5kZXJlckNvbXBvbmVudCxcbiAgICBVaU1hdHJpeFZpZXdDb21wb25lbnQsXG4gICAgQ3VzdG9tRGF0ZVRpbWVDb21wb25lbnQsXG4gICAgQmFyc2FBc3BWaWV3ZXJDb21wb25lbnQsXG4gICAgRmlsZUluRGlhbG9nQ29tcG9uZW50LFxuICAgIFVpTW9JbmZvR2VuZXJhbE9iamVjdFVpQ29tcG9uZW50LFxuICAgIFVpR2FudHRDaGFydENvbXBvbmVudCxcbiAgICBHYW50dERodG1sQ2hhcnRWaWV3Q29tcG9uZW50LFxuICAgIFByb2dyZXNzSW5kaWNhdG9yQ29tcG9uZW50LFxuICAgIENhcmRWaWV3Q29udGVudENvbXBvbmVudCxcbiAgICBDYXJkSXRlbUNvbXBvbmVudCxcbiAgICBVaUNhcmRWaWV3SG9yaXpvbnRhbEdyb3VwQ29tcG9uZW50LFxuICAgIFRpdGxlQ29tcG9uZW50LFxuICAgIEJhcnNhVWx2TWFpbkNvbXBvbmVudCxcbiAgICBMaXN0SXRlbUNvbXBvbmVudCxcbiAgICBIdHJlZUNyZWF0ZU5ld0NvbXBvbmVudCxcbiAgICBCYXJzYVRhYmxlSGVhZGVyQ29tcG9uZW50LFxuICAgIEJhcnNhVGFibGVSb3dDb21wb25lbnQsXG4gICAgQmFyc2FUYWJsZUNvbHVtbkNvbXBvbmVudCxcbiAgICBCcmVhZGNydW1iQ29tcG9uZW50LFxuICAgIFVpTGFiZWxDb21wb25lbnQsXG4gICAgRm9ybVRvb2xiYXJCdXR0b25Db21wb25lbnQsXG4gICAgQmFyc2FTZWFyY2hGb3JtQ29tcG9uZW50LFxuICAgIFJlcG9ydE5ld1RvcEZvcm1Db21wb25lbnQsXG4gICAgQmFyc2FOZXR3b3JrT2ZmbGluZUNvbXBvbmVudCxcbiAgICBGaWxlVmlld2VyQ29udGVudENvbXBvbmVudCxcbiAgICBGaWxlVmlld2VyUG9wb3ZlckNvbXBvbmVudCxcbiAgICBGaWxlVmlld2VyQ29tcG9uZW50LFxuICAgIEJsb2JWaWV3ZXJDb21wb25lbnQsXG4gICAgTm90aWZpY2F0aW9uSXRlbUNvbXBvbmVudCxcbiAgICBCYXJzYUNhcnRhYmxlVGVtcGxhdGVDb21wb25lbnQsXG4gICAgQmFyc2FDYXJ0YWJsZUdyb3VwQ29tcG9uZW50LFxuICAgIEJhcnNhQ2FydGFibGVGb3JtQ29tcG9uZW50LFxuICAgIEJhcnNhQ29sdW1uSW5kaWNhdG9yQ29tcG9uZW50LFxuICAgIEJhcnNhRmllbGRLZXlWYWx1ZUNvbXBvbmVudCxcbiAgICBCYXJzYVRvb2xiYXJpdGVtU2VhcmNoQ29tcG9uZW50LFxuICAgIFVpSHRtbFZpZXdlckNvbXBvbmVudCxcbiAgICBCYXJzYVBpc2huYW1heWVzaFBheWFtQ29tcG9uZW50LFxuICAgIEJhcnNhVGV4dEVsbGlwc2lzQ29tcG9uZW50LFxuICAgIEJhcnNhTGlzdEZpbGVMaW5lYXJHbWFpbENvbXBvbmVudCxcbiAgICBCYXJzYUxpbmthYmxlSXRlbXNQYW5lbENvbXBvbmVudCxcbiAgICBCYXJzYUVudW1NZW51QnV0dG9uQ29tcG9uZW50LFxuICAgIEJhcnNhQ2FyZExheW91dFBhbmVsQ29tcG9uZW50LFxuICAgIEJhcnNhSG9yaXpvbnRhbEZsZXhQYW5lbENvbXBvbmVudCxcbiAgICBCYXJzYUJhc2VMYXlvdXRQYW5lbENvbXBvbmVudCxcbiAgICBCYXJzYUJhclBhbmVsQ29tcG9uZW50LFxuICAgIEJhcnNhRm9ybVNpZGVDb250ZW50Q29tcG9uZW50LFxuICAgIEJhcnNhU2ltcGxlRm9ybUNvbXBvbmVudFxuXTtcbmV4cG9ydCBjb25zdCBwaXBlcyA9IFtcbiAgICBVcGxvYWRGaWxlU3RhdHVzUGlwZSxcbiAgICBTYXBGb250UGlwZSxcbiAgICBTYXBGb250Q2xhc3NQaXBlLFxuICAgIFN0cmluZ1RvQXJyYXlQaXBlLFxuICAgIE5vZGVIYXNPbmVEZXB0aExldmVsUGlwZSxcbiAgICBNYXRyaXhWYWx1ZVBpcGUsXG4gICAgRHluYW1pY1BhZ2VTaXplUGlwZVxuXTtcbmV4cG9ydCBjb25zdCBkaXJlY3RpdmVzID0gW1xuICAgIFdpemFyZExheW91dERpcmVjdGl2ZSxcbiAgICBDb2xSZW5kZXJlckRpcmVjdGl2ZSxcbiAgICBBcHBseUNvbmRpdGlvbmFsRm9ybWF0c0RpcmVjdGl2ZSxcbiAgICBSZXBvcnRWaWV3UmVuZGVyZXJEaXJlY3RpdmUsXG4gICAgRnVsbHNjcmVlbkRpYWxvZ0RpcmVjdGl2ZSxcbiAgICBGdWxsc2NyZWVuRmlsZXNEaXJlY3RpdmUsXG4gICAgRG93bmxvYWRGaWxlc0RpcmVjdGl2ZSxcbiAgICBEaWFsb2dIYW5kbGVyRGlyZWN0aXZlXG5dO1xuXG5leHBvcnQgY29uc3QgSU5JVF9TQVBGSU9SSSA9XG4gICAgKFxuICAgICAgICBydGxTZXJ2aWNlOiBSdGxTZXJ2aWNlLFxuICAgICAgICBjb250ZW50RGVuc2l0eVNlcnZpY2U6IEdsb2JhbENvbnRlbnREZW5zaXR5U2VydmljZSxcbiAgICAgICAgdGhlbWVTZXJ2aWNlOiBUaGVtZXNTZXJ2aWNlLFxuICAgICAgICBwb3J0YWxTZXJ2aWNlOiBQb3J0YWxTZXJ2aWNlXG4gICAgKSA9PlxuICAgICgpID0+IHtcbiAgICAgICAgcnRsU2VydmljZS5ydGwubmV4dChCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLklzUnRsKTtcbiAgICAgICAgbGV0IGZvbnRGYW1pbHkgPSAnSVJBTllla2FuRGlnaXRzJztcbiAgICAgICAgaWYgKEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuQ3VsdHVyZSA9PT0gJ2VuLVVTJykge1xuICAgICAgICAgICAgZm9udEZhbWlseSA9ICdJUkFOU2Fuc1dlYic7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBjc3MgPSBgKiB7XG4gICAgLS1mZER5bmFtaWNQYWdlX1RpdGxlX0ZvbnRfRmFtaWx5OiAnJHtmb250RmFtaWx5fSc7XG4gICAgLS1zYXBGb250RmFtaWx5OiAnJHtmb250RmFtaWx5fSc7XG4gICAgLS1mZFdpemFyZF9MYWJlbF9Gb250X0ZhbWlseTogJyR7Zm9udEZhbWlseX0nO1xuICAgIC0tc2FwRm9udExpZ2h0RmFtaWx5OiAnJHtmb250RmFtaWx5fSc7XG4gICAgLS1zYXBGb250SGVhZGVyRmFtaWx5OiAnJHtmb250RmFtaWx5fSc7XG4gICAgLS1fdWk1X2lucHV0X2NvbXBhY3RfaGVpZ2h0OiAxLjYyNXJlbTtcbiAgICAtLXNhcEZvbnRTaXplOiAwLjg4NXJlbTtcbiAgICAvKiAtLXNhcENvbnRlbnRfSGVhZGVyU2hhZG93OiBub25lOyAqL1xufWAsXG4gICAgICAgICAgICBoZWFkID0gZG9jdW1lbnQuaGVhZCB8fCBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaGVhZCcpWzBdLFxuICAgICAgICAgICAgc3R5bGU6IGFueSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3N0eWxlJyk7XG5cbiAgICAgICAgaGVhZC5hcHBlbmRDaGlsZChzdHlsZSk7XG5cbiAgICAgICAgc3R5bGUudHlwZSA9ICd0ZXh0L2Nzcyc7XG4gICAgICAgIGlmIChzdHlsZS5zdHlsZVNoZWV0KSB7XG4gICAgICAgICAgICAvLyBUaGlzIGlzIHJlcXVpcmVkIGZvciBJRTggYW5kIGJlbG93LlxuICAgICAgICAgICAgc3R5bGUuc3R5bGVTaGVldC5jc3NUZXh0ID0gY3NzO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgc3R5bGUuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoY3NzKSk7XG4gICAgICAgIH1cblxuICAgICAgICBwb3J0YWxTZXJ2aWNlLnVzZXJQb3J0YWxTZXR0aW5ncyQucGlwZShmaWx0ZXIoKGMpID0+IGMgIT0gbnVsbCkpLnN1YnNjcmliZSgodXNlclNldHRpbmdzKSA9PiB7XG4gICAgICAgICAgICBsZXQgY29udGVudERlbnNpdHk6IGFueTtcbiAgICAgICAgICAgIGxldCB0aGVtZTogYW55O1xuICAgICAgICAgICAgaWYgKCF1c2VyU2V0dGluZ3MpIHtcbiAgICAgICAgICAgICAgICBpZiAoZ2V0RGV2aWNlSXNNb2JpbGUoKSB8fCBnZXREZXZpY2VJc1Bob25lKCkgfHwgZ2V0RGV2aWNlSXNUYWJsZXQoKSkge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50RGVuc2l0eSA9IENvbnRlbnREZW5zaXR5TW9kZS5DT1pZO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnREZW5zaXR5ID0gQ29udGVudERlbnNpdHlNb2RlLkNPTVBBQ1Q7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zdCB7IENvbnRlbnREZW5zaXR5JENhcHRpb24sIFRoZW1lJENhcHRpb24gfSA9IHVzZXJTZXR0aW5ncztcbiAgICAgICAgICAgICAgICBjb250ZW50RGVuc2l0eSA9IENvbnRlbnREZW5zaXR5JENhcHRpb247XG4gICAgICAgICAgICAgICAgdGhlbWUgPSBUaGVtZSRDYXB0aW9uO1xuICAgICAgICAgICAgICAgIGlmICghY29udGVudERlbnNpdHkpIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudERlbnNpdHkgPSBDb250ZW50RGVuc2l0eU1vZGUuQ09NUEFDVDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoZ2V0RGV2aWNlSXNNb2JpbGUoKSB8fCBnZXREZXZpY2VJc1Bob25lKCkpIHtcbiAgICAgICAgICAgICAgICBjb250ZW50RGVuc2l0eSA9IENvbnRlbnREZW5zaXR5TW9kZS5DT1pZO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGNvbnRlbnREZW5zaXR5KSB7XG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50RGVuc2l0eVNlcnZpY2UudXBkYXRlQ29udGVudERlbnNpdHkoY29udGVudERlbnNpdHkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjb25zdCBib2R5Q2xhc3NDb21wYWN0ID0gJ3VpNS1jb250ZW50LWRlbnNpdHktY29tcGFjdCc7XG4gICAgICAgICAgICAgICAgY29uc3QgYm9keUNsYXNzQ29uZGVuc2VkID0gJ3VpNS1jb250ZW50LWRlbnNpdHktY29uZGVuc2VkJztcbiAgICAgICAgICAgICAgICBjb25zdCBib2R5Q2xhc3NDb3p5ID0gJ3VpNS1jb250ZW50LWRlbnNpdHktY296eSc7XG4gICAgICAgICAgICAgICAgY29uc3QgYm9keSA9IGRvY3VtZW50Py5ib2R5O1xuICAgICAgICAgICAgICAgIHN3aXRjaCAoY29udGVudERlbnNpdHkpIHtcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnY29uZGVuc2VkJzpcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWJvZHkuY2xhc3NMaXN0LmNvbnRhaW5zKGJvZHlDbGFzc0NvbmRlbnNlZCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9keS5jbGFzc0xpc3QuYWRkKGJvZHlDbGFzc0NvbmRlbnNlZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkuY2xhc3NMaXN0LnJlbW92ZShib2R5Q2xhc3NDb21wYWN0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5yZW1vdmUoYm9keUNsYXNzQ296eSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICBjYXNlICdjb3p5JzpcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWJvZHkuY2xhc3NMaXN0LmNvbnRhaW5zKGJvZHlDbGFzc0NvenkpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkuY2xhc3NMaXN0LmFkZChib2R5Q2xhc3NDb3p5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9keS5jbGFzc0xpc3QucmVtb3ZlKGJvZHlDbGFzc0NvbXBhY3QpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkuY2xhc3NMaXN0LnJlbW92ZShib2R5Q2xhc3NDb25kZW5zZWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJ2NvbXBhY3QnOlxuICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghYm9keS5jbGFzc0xpc3QuY29udGFpbnMoYm9keUNsYXNzQ29tcGFjdCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9keS5jbGFzc0xpc3QuYWRkKGJvZHlDbGFzc0NvbXBhY3QpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib2R5LmNsYXNzTGlzdC5yZW1vdmUoYm9keUNsYXNzQ296eSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9keS5jbGFzc0xpc3QucmVtb3ZlKGJvZHlDbGFzc0NvbmRlbnNlZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodGhlbWUpIHtcbiAgICAgICAgICAgICAgICBpZiAodGhlbWUuaW5kZXhPZignZGFyaycpID4gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdjb2xvci1zY2hlbWUnLCAnZGFyaycpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnY29sb3Itc2NoZW1lJywgJ2xpZ2h0Jyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHBvcnRhbFNlcnZpY2Uuc2V0VGhlbWUodGhlbWVTZXJ2aWNlLnNldFRoZW1lKHRoZW1lKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH07XG4iXX0=