keevo-components 2.0.99 → 2.0.101
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/kv-avatar/kv-avatar.component.mjs +6 -4
- package/esm2022/lib/components/kv-inputs/kv-editor/config/kv-editor.config.mjs +3 -1
- package/esm2022/lib/components/kv-inputs/kv-editor/kv-editor.component.mjs +9 -11
- package/esm2022/lib/components/kv-inputs/kv-editor/services/kv-editor-pdf.service.mjs +2 -3
- package/esm2022/lib/components/kv-inputs/kv-editor/services/kv-editor-quill.service.mjs +2 -2
- package/esm2022/lib/components/kv-table-edit/kv-table-edit.component.mjs +3 -3
- package/esm2022/lib/components/kv-table-viewer/kv-table-viewer.component.mjs +3 -3
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/keevo-components.mjs +22 -21
- package/fesm2022/keevo-components.mjs.map +1 -1
- package/lib/components/kv-button/kv-button.component.d.ts +1 -1
- package/lib/components/kv-buttons/kv-button-popup/kv-button-popup.component.d.ts +1 -1
- package/lib/components/kv-inputs/kv-editor/kv-editor.component.d.ts +2 -5
- package/lib/components/kv-table-viewer/kv-table-viewer.component.d.ts +1 -1
- package/lib/components/kv-tag/kv-tag.component.d.ts +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -63,7 +63,7 @@ export class KvTableViewerComponent {
|
|
|
63
63
|
this.onSelectItems = output();
|
|
64
64
|
this.onSearch = output();
|
|
65
65
|
this.templates = contentChildren(TemplateDirective);
|
|
66
|
-
this._templates = input({});
|
|
66
|
+
this._templates = input({}, { alias: 'templates' });
|
|
67
67
|
this.getCustomTemplate = computed(() => (templatename) => {
|
|
68
68
|
const templates = this._templates();
|
|
69
69
|
return templates[templatename];
|
|
@@ -137,7 +137,7 @@ export class KvTableViewerComponent {
|
|
|
137
137
|
return formatter.format(valor);
|
|
138
138
|
}
|
|
139
139
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: KvTableViewerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
140
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: KvTableViewerComponent, isStandalone: true, selector: "kv-table-viewer", inputs: { columns: { classPropertyName: "columns", publicName: "columns", isSignal: true, isRequired: false, transformFunction: null }, actionsRow: { classPropertyName: "actionsRow", publicName: "actionsRow", isSignal: true, isRequired: false, transformFunction: null }, actionsHeader: { classPropertyName: "actionsHeader", publicName: "actionsHeader", isSignal: true, isRequired: false, transformFunction: null }, actionsLote: { classPropertyName: "actionsLote", publicName: "actionsLote", isSignal: true, isRequired: false, transformFunction: null }, data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, totalRecords: { classPropertyName: "totalRecords", publicName: "totalRecords", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, rows: { classPropertyName: "rows", publicName: "rows", isSignal: true, isRequired: false, transformFunction: null }, rowsPerPageOptions: { classPropertyName: "rowsPerPageOptions", publicName: "rowsPerPageOptions", isSignal: true, isRequired: false, transformFunction: null }, paginator: { classPropertyName: "paginator", publicName: "paginator", isSignal: true, isRequired: false, transformFunction: null }, lazy: { classPropertyName: "lazy", publicName: "lazy", isSignal: true, isRequired: false, transformFunction: null }, scrollable: { classPropertyName: "scrollable", publicName: "scrollable", isSignal: true, isRequired: false, transformFunction: null }, pageLinks: { classPropertyName: "pageLinks", publicName: "pageLinks", isSignal: true, isRequired: false, transformFunction: null }, currentPageReportTemplate: { classPropertyName: "currentPageReportTemplate", publicName: "currentPageReportTemplate", isSignal: true, isRequired: false, transformFunction: null }, selectionPageOnly: { classPropertyName: "selectionPageOnly", publicName: "selectionPageOnly", isSignal: true, isRequired: false, transformFunction: null }, selectableTable: { classPropertyName: "selectableTable", publicName: "selectableTable", isSignal: true, isRequired: false, transformFunction: null }, showHeader: { classPropertyName: "showHeader", publicName: "showHeader", isSignal: true, isRequired: false, transformFunction: null }, tableViewerSize: { classPropertyName: "tableViewerSize", publicName: "tableViewerSize", isSignal: true, isRequired: false, transformFunction: null }, searchInput: { classPropertyName: "searchInput", publicName: "searchInput", isSignal: true, isRequired: false, transformFunction: null }, filterButton: { classPropertyName: "filterButton", publicName: "filterButton", isSignal: true, isRequired: false, transformFunction: null }, idName: { classPropertyName: "idName", publicName: "idName", isSignal: true, isRequired: false, transformFunction: null }, emptyTableImg: { classPropertyName: "emptyTableImg", publicName: "emptyTableImg", isSignal: true, isRequired: false, transformFunction: null }, _templates: { classPropertyName: "_templates", publicName: "_templates", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onPageChange: "onPageChange", onClickRowItem: "onClickRowItem", onSelectItems: "onSelectItems", onSearch: "onSearch" }, queries: [{ propertyName: "templates", predicate: TemplateDirective, isSignal: true }], ngImport: i0, template: "<div\r\n class=\"h-full flex flex-row p-2 kv-table-viewer overflow-hidden {{\r\n data().length == 0 ? 'empty-table' : ''\r\n }}\"\r\n>\r\n <div\r\n class=\"h-full {{ handleTableSize() }} m-0 p-0 flex flex-column gap-2\"\r\n [style.transition]=\"'all 0.3s ease-in-out'\"\r\n >\r\n <div\r\n class=\"flex flex-row align-items-center justify-content-between flex-initial\"\r\n >\r\n <div class=\"flex flex-row align-items-center gap-2\">\r\n @if(searchInput()) {\r\n <input\r\n style=\"height: 1.875rem\"\r\n placeholder=\"Pesquisar...\"\r\n type=\"text\"\r\n pInputText\r\n [(ngModel)]=\"searchValue\"\r\n class=\"text-xs\"\r\n />\r\n\r\n } @if(filterButton()) {\r\n <kv-button\r\n label=\"Filtrar\"\r\n icon=\"filter_alt\"\r\n severity=\"tertiary\"\r\n (onClick)=\"op.toggle($event)\"\r\n ></kv-button>\r\n }\r\n\r\n <p-overlayPanel #op>\r\n <ng-content select=\"[filtro]\"> </ng-content>\r\n </p-overlayPanel>\r\n </div>\r\n <div class=\"flex flex-row gap-2\">\r\n @if(actionsHeader()) { @for(action of actionsHeader(); track $index) {\r\n <kv-button\r\n [icon]=\"action?.icon || ''\"\r\n [label]=\"action?.label || ''\"\r\n [severity]=\"action['severity'] || 'tertiary'\"\r\n (onClick)=\"action?.command($event)\"\r\n ></kv-button>\r\n } } @if(selectedItem()) {\r\n <kv-button\r\n [pTooltip]=\"'Recolher'\"\r\n icon=\"reorder\"\r\n severity=\"tertiary\"\r\n (onClick)=\"selectedItem.set(null)\"\r\n ></kv-button>\r\n }\r\n </div>\r\n </div>\r\n\r\n <div class=\"flex-1 h-full overflow-hidden\">\r\n <p-table\r\n [value]=\"data()\"\r\n [lazy]=\"lazy()\"\r\n [selectionPageOnly]=\"selectionPageOnly()\"\r\n [columns]=\"columns()\"\r\n [paginator]=\"paginator()\"\r\n [rows]=\"rows()\"\r\n [totalRecords]=\"totalRecords()\"\r\n [loading]=\"loading()\"\r\n [pageLinks]=\"pageLinks()\"\r\n [first]=\"first()\"\r\n [scrollable]=\"scrollable()\"\r\n scrollHeight=\"flex\"\r\n [showCurrentPageReport]=\"true\"\r\n [currentPageReportTemplate]=\"currentPageReportTemplate()\"\r\n (onPage)=\"handlePageChange($event)\"\r\n [rowsPerPageOptions]=\"rowsPerPageOptions()\"\r\n [(selection)]=\"selectedItems\"\r\n styleClass=\"p-datatable-sm text-xs overflow-y-auto h-full flex flex-column h-full\"\r\n >\r\n @if(showHeader()) {\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n @if(selectableTable()) {\r\n <th style=\"width: 4rem\"><p-tableHeaderCheckbox /></th>\r\n } @for (col of columns; track col.field) {\r\n <th [style]=\"{ width: col.width || 'auto' }\">{{ col.header }}</th>\r\n }\r\n </tr>\r\n </ng-template>\r\n }\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\">\r\n <tr\r\n class=\"cursor-pointer {{\r\n verifyItemSelecionado()(rowData) && 'bg-gray-100'\r\n }} hover:bg-gray-200\"\r\n >\r\n @if(selectableTable()) {\r\n <td><p-tableCheckbox [value]=\"rowData\" /></td>\r\n } @for (col of columns; track col.field) {\r\n <td (click)=\"rowSelect(rowData)\">\r\n @if(col?.template) {\r\n <div class=\"flex flex-row gap-2 align-items-center\">\r\n @if (getCustomTemplate()(col.template.name)) {\r\n <ng-container\r\n [ngTemplateOutlet]=\"getCustomTemplate()(col.template.name)\"\r\n [ngTemplateOutletContext]=\"{ $implicit: rowData }\"\r\n />\r\n }\r\n </div>\r\n } @else if(col?.icon) {\r\n <span class=\"material-symbols-outlined text-lg\">\r\n {{ col.icon(rowData) }}\r\n </span>\r\n } @else if(col?.tag) {\r\n <kv-tags [tags]=\"[col.tag(rowData)]\" />\r\n } @else {\r\n {{ transformData()(col.pipe, rowData[col.field]) }}\r\n }\r\n </td>\r\n }\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr>\r\n <td [attr.colspan]=\"columns().length + 1\">\r\n <div\r\n class=\"w-full h-full flex align-items-center justify-content-center\"\r\n >\r\n <img\r\n [src]=\"emptyTableImg()\"\r\n class=\"h-10rem w-auto\"\r\n />\r\n </div>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"shadow-2 p-0 m-0 col selected-item-field ml-2\"\r\n [@slideInOut]=\"hasSelectedItems() ? 'i.n' : 'out'\"\r\n [style.overflow]=\"'hidden'\"\r\n >\r\n @if(selectedItems().length > 1) {\r\n <actions-lote-field\r\n [selectedItems]=\"selectedItems()\"\r\n [actionsLote]=\"actionsLote()\"\r\n />\r\n } @else if(selectedItems().length == 1 || selectedItem()) {\r\n <div class=\"bg-gray-100 w-full h-auto p-2 relative\">\r\n @if(actionsRow()) {\r\n <actions-row-menu [actionsRow]=\"actionsRow()\" />\r\n }\r\n <ng-content select=\"[selectedItemHeader]\"></ng-content>\r\n </div>\r\n <div class=\"p-2 overflow-y-auto h-full\">\r\n <ng-content select=\"[selectedItem]\"></ng-content>\r\n </div>\r\n }\r\n\r\n <!-- @else { Nenhum item selecionado } -->\r\n </div>\r\n</div>\r\n", styles: ["::ng-deep .kv-table-viewer .p-paginator .p-paginator-pages .p-paginator-page{font-size:.75rem;min-width:2rem;height:2rem}::ng-deep .kv-table-viewer .p-paginator .p-paginator-current{font-size:.75rem}::ng-deep .kv-table-viewer .p-inputwrapper .p-dropdown{margin:0;height:auto}::ng-deep .p-paginator-rpp-options .p-dropdown-panel .p-dropdown-items{padding:.25rem}::ng-deep .p-paginator-rpp-options .p-dropdown-item{border-radius:.25rem;height:1.5rem;display:flex;align-items:center;justify-content:center}::ng-deep .p-paginator-rpp-options .p-dropdown-item .p-dropdown-label{padding:.5rem}::ng-deep .p-paginator-rpp-options .p-dropdown-item .p-dropdown-trigger{width:1.5rem}::ng-deep .p-paginator-bottom .p-link{min-width:2rem;height:2rem}::ng-deep .p-paginator{padding:0rem}::ng-deep .p-dropdown-label{font-size:.75rem}::ng-deep .p-datatable-wrapper::-webkit-scrollbar{width:6px}::ng-deep .p-datatable-wrapper::-webkit-scrollbar:hover{background-color:#dededebf}::ng-deep .p-datatable-wrapper::-webkit-scrollbar-thumb{border-radius:4px;background-color:transparent}::ng-deep .p-datatable-wrapper:hover::-webkit-scrollbar-thumb{border-left:2px solid white;background-color:#00000080}::ng-deep .p-datatable-wrapper::-webkit-scrollbar-track{border-left:2px solid white;background-color:#dededebf}::ng-deep .empty-table .p-datatable-table{height:100%}\n"], dependencies: [{ kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i1.InputText, selector: "[pInputText]", inputs: ["variant"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i3.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i4.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i5.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i4.TableCheckbox, selector: "p-tableCheckbox", inputs: ["disabled", "value", "index", "inputId", "name", "required", "ariaLabel"] }, { kind: "component", type: i4.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { kind: "ngmodule", type: SkeletonModule }, { kind: "ngmodule", type: ButtonModule }, { kind: "ngmodule", type: KvInputsModule }, { kind: "ngmodule", type: KvButtonModule }, { kind: "component", type: i6.KvButtonComponent, selector: "kv-button", inputs: ["fullWidth", "type", "loading", "severity", "size", "icon", "iconPosition", "label", "disabled", "items", "popup"], outputs: ["iconChange", "onClick"] }, { kind: "ngmodule", type: OverlayPanelModule }, { kind: "component", type: i7.OverlayPanel, selector: "p-overlayPanel", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "component", type: ActionsLoteFieldComponent, selector: "actions-lote-field", inputs: ["selectedItems", "actionsLote"] }, { kind: "ngmodule", type: KvTagsModule }, { kind: "component", type: i8.KvTagsComponent, selector: "kv-tags", inputs: ["tags", "hover"], outputs: ["onClickTag"] }, { kind: "ngmodule", type: TieredMenuModule }, { kind: "component", type: ActionsRowMenuComponent, selector: "actions-row-menu", inputs: ["actionsRow"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i9.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i9.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i9.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], animations: [
|
|
140
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.8", type: KvTableViewerComponent, isStandalone: true, selector: "kv-table-viewer", inputs: { columns: { classPropertyName: "columns", publicName: "columns", isSignal: true, isRequired: false, transformFunction: null }, actionsRow: { classPropertyName: "actionsRow", publicName: "actionsRow", isSignal: true, isRequired: false, transformFunction: null }, actionsHeader: { classPropertyName: "actionsHeader", publicName: "actionsHeader", isSignal: true, isRequired: false, transformFunction: null }, actionsLote: { classPropertyName: "actionsLote", publicName: "actionsLote", isSignal: true, isRequired: false, transformFunction: null }, data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, totalRecords: { classPropertyName: "totalRecords", publicName: "totalRecords", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, rows: { classPropertyName: "rows", publicName: "rows", isSignal: true, isRequired: false, transformFunction: null }, rowsPerPageOptions: { classPropertyName: "rowsPerPageOptions", publicName: "rowsPerPageOptions", isSignal: true, isRequired: false, transformFunction: null }, paginator: { classPropertyName: "paginator", publicName: "paginator", isSignal: true, isRequired: false, transformFunction: null }, lazy: { classPropertyName: "lazy", publicName: "lazy", isSignal: true, isRequired: false, transformFunction: null }, scrollable: { classPropertyName: "scrollable", publicName: "scrollable", isSignal: true, isRequired: false, transformFunction: null }, pageLinks: { classPropertyName: "pageLinks", publicName: "pageLinks", isSignal: true, isRequired: false, transformFunction: null }, currentPageReportTemplate: { classPropertyName: "currentPageReportTemplate", publicName: "currentPageReportTemplate", isSignal: true, isRequired: false, transformFunction: null }, selectionPageOnly: { classPropertyName: "selectionPageOnly", publicName: "selectionPageOnly", isSignal: true, isRequired: false, transformFunction: null }, selectableTable: { classPropertyName: "selectableTable", publicName: "selectableTable", isSignal: true, isRequired: false, transformFunction: null }, showHeader: { classPropertyName: "showHeader", publicName: "showHeader", isSignal: true, isRequired: false, transformFunction: null }, tableViewerSize: { classPropertyName: "tableViewerSize", publicName: "tableViewerSize", isSignal: true, isRequired: false, transformFunction: null }, searchInput: { classPropertyName: "searchInput", publicName: "searchInput", isSignal: true, isRequired: false, transformFunction: null }, filterButton: { classPropertyName: "filterButton", publicName: "filterButton", isSignal: true, isRequired: false, transformFunction: null }, idName: { classPropertyName: "idName", publicName: "idName", isSignal: true, isRequired: false, transformFunction: null }, emptyTableImg: { classPropertyName: "emptyTableImg", publicName: "emptyTableImg", isSignal: true, isRequired: false, transformFunction: null }, _templates: { classPropertyName: "_templates", publicName: "templates", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onPageChange: "onPageChange", onClickRowItem: "onClickRowItem", onSelectItems: "onSelectItems", onSearch: "onSearch" }, queries: [{ propertyName: "templates", predicate: TemplateDirective, isSignal: true }], ngImport: i0, template: "<div\r\n class=\"h-full flex flex-row p-2 kv-table-viewer overflow-hidden {{\r\n data().length == 0 ? 'empty-table' : ''\r\n }}\"\r\n>\r\n <div\r\n class=\"h-full {{ handleTableSize() }} m-0 p-0 flex flex-column gap-2\"\r\n [style.transition]=\"'all 0.3s ease-in-out'\"\r\n >\r\n <div\r\n class=\"flex flex-row align-items-center justify-content-between flex-initial\"\r\n >\r\n <div class=\"flex flex-row align-items-center gap-2\">\r\n @if(searchInput()) {\r\n <input\r\n style=\"height: 1.875rem\"\r\n placeholder=\"Pesquisar...\"\r\n type=\"text\"\r\n pInputText\r\n [(ngModel)]=\"searchValue\"\r\n class=\"text-xs\"\r\n />\r\n\r\n } @if(filterButton()) {\r\n <kv-button\r\n label=\"Filtrar\"\r\n icon=\"filter_alt\"\r\n severity=\"tertiary\"\r\n (onClick)=\"op.toggle($event)\"\r\n ></kv-button>\r\n }\r\n\r\n <p-overlayPanel #op>\r\n <ng-content select=\"[filtro]\"> </ng-content>\r\n </p-overlayPanel>\r\n </div>\r\n <div class=\"flex flex-row gap-2\">\r\n @if(actionsHeader()) { @for(action of actionsHeader(); track $index) {\r\n <kv-button\r\n [icon]=\"action?.icon || ''\"\r\n [label]=\"action?.label || ''\"\r\n [severity]=\"action['severity'] || 'tertiary'\"\r\n (onClick)=\"action?.command($event)\"\r\n ></kv-button>\r\n } } @if(selectedItem()) {\r\n <kv-button\r\n [pTooltip]=\"'Recolher'\"\r\n icon=\"reorder\"\r\n severity=\"tertiary\"\r\n (onClick)=\"selectedItem.set(null)\"\r\n ></kv-button>\r\n }\r\n </div>\r\n </div>\r\n\r\n <div class=\"flex-1 h-full overflow-hidden\">\r\n <p-table\r\n [value]=\"data()\"\r\n [lazy]=\"lazy()\"\r\n [selectionPageOnly]=\"selectionPageOnly()\"\r\n [columns]=\"columns()\"\r\n [paginator]=\"paginator()\"\r\n [rows]=\"rows()\"\r\n [totalRecords]=\"totalRecords()\"\r\n [loading]=\"loading()\"\r\n [pageLinks]=\"pageLinks()\"\r\n [first]=\"first()\"\r\n [scrollable]=\"scrollable()\"\r\n scrollHeight=\"flex\"\r\n [showCurrentPageReport]=\"true\"\r\n [currentPageReportTemplate]=\"currentPageReportTemplate()\"\r\n (onPage)=\"handlePageChange($event)\"\r\n [rowsPerPageOptions]=\"rowsPerPageOptions()\"\r\n [(selection)]=\"selectedItems\"\r\n styleClass=\"p-datatable-sm text-xs overflow-y-auto h-full flex flex-column h-full\"\r\n >\r\n @if(showHeader()) {\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n @if(selectableTable()) {\r\n <th style=\"width: 4rem\"><p-tableHeaderCheckbox /></th>\r\n } @for (col of columns; track col.field) {\r\n <th [style]=\"{ width: col.width || 'auto' }\">{{ col.header }}</th>\r\n }\r\n </tr>\r\n </ng-template>\r\n }\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\">\r\n <tr\r\n class=\"cursor-pointer {{\r\n verifyItemSelecionado()(rowData) && 'bg-gray-100'\r\n }} hover:bg-gray-200\"\r\n >\r\n @if(selectableTable()) {\r\n <td><p-tableCheckbox [value]=\"rowData\" /></td>\r\n } @for (col of columns; track col.field) {\r\n <td (click)=\"rowSelect(rowData)\">\r\n @if(col?.template) {\r\n <div class=\"flex flex-row gap-2 align-items-center\">\r\n @if (getCustomTemplate()(col.template.name)) {\r\n <ng-container\r\n [ngTemplateOutlet]=\"getCustomTemplate()(col.template.name)\"\r\n [ngTemplateOutletContext]=\"{ $implicit: rowData }\"\r\n />\r\n }\r\n </div>\r\n } @else if(col?.icon) {\r\n <span class=\"material-symbols-outlined text-lg\">\r\n {{ col.icon(rowData) }}\r\n </span>\r\n } @else if(col?.tag) {\r\n <kv-tags [tags]=\"[col.tag(rowData)]\" />\r\n } @else {\r\n {{ transformData()(col.pipe, rowData[col.field]) }}\r\n }\r\n </td>\r\n }\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr>\r\n <td [attr.colspan]=\"columns().length + 1\">\r\n <div\r\n class=\"w-full h-full flex align-items-center justify-content-center\"\r\n >\r\n <img\r\n [src]=\"emptyTableImg()\"\r\n class=\"h-10rem w-auto\"\r\n />\r\n </div>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"shadow-2 p-0 m-0 col selected-item-field ml-2\"\r\n [@slideInOut]=\"hasSelectedItems() ? 'i.n' : 'out'\"\r\n [style.overflow]=\"'hidden'\"\r\n >\r\n @if(selectedItems().length > 1) {\r\n <actions-lote-field\r\n [selectedItems]=\"selectedItems()\"\r\n [actionsLote]=\"actionsLote()\"\r\n />\r\n } @else if(selectedItems().length == 1 || selectedItem()) {\r\n <div class=\"bg-gray-100 w-full h-auto p-2 relative\">\r\n @if(actionsRow()) {\r\n <actions-row-menu [actionsRow]=\"actionsRow()\" />\r\n }\r\n <ng-content select=\"[selectedItemHeader]\"></ng-content>\r\n </div>\r\n <div class=\"p-2 overflow-y-auto h-full\">\r\n <ng-content select=\"[selectedItem]\"></ng-content>\r\n </div>\r\n }\r\n\r\n <!-- @else { Nenhum item selecionado } -->\r\n </div>\r\n</div>\r\n", styles: ["::ng-deep .kv-table-viewer .p-paginator .p-paginator-pages .p-paginator-page{font-size:.75rem;min-width:2rem;height:2rem}::ng-deep .kv-table-viewer .p-paginator .p-paginator-current{font-size:.75rem}::ng-deep .kv-table-viewer .p-inputwrapper .p-dropdown{margin:0;height:auto}::ng-deep .p-paginator-rpp-options .p-dropdown-panel .p-dropdown-items{padding:.25rem}::ng-deep .p-paginator-rpp-options .p-dropdown-item{border-radius:.25rem;height:1.5rem;display:flex;align-items:center;justify-content:center}::ng-deep .p-paginator-rpp-options .p-dropdown-item .p-dropdown-label{padding:.5rem}::ng-deep .p-paginator-rpp-options .p-dropdown-item .p-dropdown-trigger{width:1.5rem}::ng-deep .p-paginator-bottom .p-link{min-width:2rem;height:2rem}::ng-deep .p-paginator{padding:0rem}::ng-deep .p-dropdown-label{font-size:.75rem}::ng-deep .p-datatable-wrapper::-webkit-scrollbar{width:6px}::ng-deep .p-datatable-wrapper::-webkit-scrollbar:hover{background-color:#dededebf}::ng-deep .p-datatable-wrapper::-webkit-scrollbar-thumb{border-radius:4px;background-color:transparent}::ng-deep .p-datatable-wrapper:hover::-webkit-scrollbar-thumb{border-left:2px solid white;background-color:#00000080}::ng-deep .p-datatable-wrapper::-webkit-scrollbar-track{border-left:2px solid white;background-color:#dededebf}::ng-deep .empty-table .p-datatable-table{height:100%}\n"], dependencies: [{ kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i1.InputText, selector: "[pInputText]", inputs: ["variant"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i3.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i4.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i5.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i4.TableCheckbox, selector: "p-tableCheckbox", inputs: ["disabled", "value", "index", "inputId", "name", "required", "ariaLabel"] }, { kind: "component", type: i4.TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { kind: "ngmodule", type: SkeletonModule }, { kind: "ngmodule", type: ButtonModule }, { kind: "ngmodule", type: KvInputsModule }, { kind: "ngmodule", type: KvButtonModule }, { kind: "component", type: i6.KvButtonComponent, selector: "kv-button", inputs: ["fullWidth", "type", "loading", "severity", "size", "icon", "iconPosition", "label", "disabled", "items", "popup"], outputs: ["iconChange", "onClick"] }, { kind: "ngmodule", type: OverlayPanelModule }, { kind: "component", type: i7.OverlayPanel, selector: "p-overlayPanel", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "component", type: ActionsLoteFieldComponent, selector: "actions-lote-field", inputs: ["selectedItems", "actionsLote"] }, { kind: "ngmodule", type: KvTagsModule }, { kind: "component", type: i8.KvTagsComponent, selector: "kv-tags", inputs: ["tags", "hover"], outputs: ["onClickTag"] }, { kind: "ngmodule", type: TieredMenuModule }, { kind: "component", type: ActionsRowMenuComponent, selector: "actions-row-menu", inputs: ["actionsRow"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i9.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i9.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i9.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], animations: [
|
|
141
141
|
trigger('slideInOut', [
|
|
142
142
|
state('in', style({
|
|
143
143
|
width: '*',
|
|
@@ -181,4 +181,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImpor
|
|
|
181
181
|
])
|
|
182
182
|
], template: "<div\r\n class=\"h-full flex flex-row p-2 kv-table-viewer overflow-hidden {{\r\n data().length == 0 ? 'empty-table' : ''\r\n }}\"\r\n>\r\n <div\r\n class=\"h-full {{ handleTableSize() }} m-0 p-0 flex flex-column gap-2\"\r\n [style.transition]=\"'all 0.3s ease-in-out'\"\r\n >\r\n <div\r\n class=\"flex flex-row align-items-center justify-content-between flex-initial\"\r\n >\r\n <div class=\"flex flex-row align-items-center gap-2\">\r\n @if(searchInput()) {\r\n <input\r\n style=\"height: 1.875rem\"\r\n placeholder=\"Pesquisar...\"\r\n type=\"text\"\r\n pInputText\r\n [(ngModel)]=\"searchValue\"\r\n class=\"text-xs\"\r\n />\r\n\r\n } @if(filterButton()) {\r\n <kv-button\r\n label=\"Filtrar\"\r\n icon=\"filter_alt\"\r\n severity=\"tertiary\"\r\n (onClick)=\"op.toggle($event)\"\r\n ></kv-button>\r\n }\r\n\r\n <p-overlayPanel #op>\r\n <ng-content select=\"[filtro]\"> </ng-content>\r\n </p-overlayPanel>\r\n </div>\r\n <div class=\"flex flex-row gap-2\">\r\n @if(actionsHeader()) { @for(action of actionsHeader(); track $index) {\r\n <kv-button\r\n [icon]=\"action?.icon || ''\"\r\n [label]=\"action?.label || ''\"\r\n [severity]=\"action['severity'] || 'tertiary'\"\r\n (onClick)=\"action?.command($event)\"\r\n ></kv-button>\r\n } } @if(selectedItem()) {\r\n <kv-button\r\n [pTooltip]=\"'Recolher'\"\r\n icon=\"reorder\"\r\n severity=\"tertiary\"\r\n (onClick)=\"selectedItem.set(null)\"\r\n ></kv-button>\r\n }\r\n </div>\r\n </div>\r\n\r\n <div class=\"flex-1 h-full overflow-hidden\">\r\n <p-table\r\n [value]=\"data()\"\r\n [lazy]=\"lazy()\"\r\n [selectionPageOnly]=\"selectionPageOnly()\"\r\n [columns]=\"columns()\"\r\n [paginator]=\"paginator()\"\r\n [rows]=\"rows()\"\r\n [totalRecords]=\"totalRecords()\"\r\n [loading]=\"loading()\"\r\n [pageLinks]=\"pageLinks()\"\r\n [first]=\"first()\"\r\n [scrollable]=\"scrollable()\"\r\n scrollHeight=\"flex\"\r\n [showCurrentPageReport]=\"true\"\r\n [currentPageReportTemplate]=\"currentPageReportTemplate()\"\r\n (onPage)=\"handlePageChange($event)\"\r\n [rowsPerPageOptions]=\"rowsPerPageOptions()\"\r\n [(selection)]=\"selectedItems\"\r\n styleClass=\"p-datatable-sm text-xs overflow-y-auto h-full flex flex-column h-full\"\r\n >\r\n @if(showHeader()) {\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr>\r\n @if(selectableTable()) {\r\n <th style=\"width: 4rem\"><p-tableHeaderCheckbox /></th>\r\n } @for (col of columns; track col.field) {\r\n <th [style]=\"{ width: col.width || 'auto' }\">{{ col.header }}</th>\r\n }\r\n </tr>\r\n </ng-template>\r\n }\r\n\r\n <ng-template pTemplate=\"body\" let-rowData let-columns=\"columns\">\r\n <tr\r\n class=\"cursor-pointer {{\r\n verifyItemSelecionado()(rowData) && 'bg-gray-100'\r\n }} hover:bg-gray-200\"\r\n >\r\n @if(selectableTable()) {\r\n <td><p-tableCheckbox [value]=\"rowData\" /></td>\r\n } @for (col of columns; track col.field) {\r\n <td (click)=\"rowSelect(rowData)\">\r\n @if(col?.template) {\r\n <div class=\"flex flex-row gap-2 align-items-center\">\r\n @if (getCustomTemplate()(col.template.name)) {\r\n <ng-container\r\n [ngTemplateOutlet]=\"getCustomTemplate()(col.template.name)\"\r\n [ngTemplateOutletContext]=\"{ $implicit: rowData }\"\r\n />\r\n }\r\n </div>\r\n } @else if(col?.icon) {\r\n <span class=\"material-symbols-outlined text-lg\">\r\n {{ col.icon(rowData) }}\r\n </span>\r\n } @else if(col?.tag) {\r\n <kv-tags [tags]=\"[col.tag(rowData)]\" />\r\n } @else {\r\n {{ transformData()(col.pipe, rowData[col.field]) }}\r\n }\r\n </td>\r\n }\r\n </tr>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr>\r\n <td [attr.colspan]=\"columns().length + 1\">\r\n <div\r\n class=\"w-full h-full flex align-items-center justify-content-center\"\r\n >\r\n <img\r\n [src]=\"emptyTableImg()\"\r\n class=\"h-10rem w-auto\"\r\n />\r\n </div>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"shadow-2 p-0 m-0 col selected-item-field ml-2\"\r\n [@slideInOut]=\"hasSelectedItems() ? 'i.n' : 'out'\"\r\n [style.overflow]=\"'hidden'\"\r\n >\r\n @if(selectedItems().length > 1) {\r\n <actions-lote-field\r\n [selectedItems]=\"selectedItems()\"\r\n [actionsLote]=\"actionsLote()\"\r\n />\r\n } @else if(selectedItems().length == 1 || selectedItem()) {\r\n <div class=\"bg-gray-100 w-full h-auto p-2 relative\">\r\n @if(actionsRow()) {\r\n <actions-row-menu [actionsRow]=\"actionsRow()\" />\r\n }\r\n <ng-content select=\"[selectedItemHeader]\"></ng-content>\r\n </div>\r\n <div class=\"p-2 overflow-y-auto h-full\">\r\n <ng-content select=\"[selectedItem]\"></ng-content>\r\n </div>\r\n }\r\n\r\n <!-- @else { Nenhum item selecionado } -->\r\n </div>\r\n</div>\r\n", styles: ["::ng-deep .kv-table-viewer .p-paginator .p-paginator-pages .p-paginator-page{font-size:.75rem;min-width:2rem;height:2rem}::ng-deep .kv-table-viewer .p-paginator .p-paginator-current{font-size:.75rem}::ng-deep .kv-table-viewer .p-inputwrapper .p-dropdown{margin:0;height:auto}::ng-deep .p-paginator-rpp-options .p-dropdown-panel .p-dropdown-items{padding:.25rem}::ng-deep .p-paginator-rpp-options .p-dropdown-item{border-radius:.25rem;height:1.5rem;display:flex;align-items:center;justify-content:center}::ng-deep .p-paginator-rpp-options .p-dropdown-item .p-dropdown-label{padding:.5rem}::ng-deep .p-paginator-rpp-options .p-dropdown-item .p-dropdown-trigger{width:1.5rem}::ng-deep .p-paginator-bottom .p-link{min-width:2rem;height:2rem}::ng-deep .p-paginator{padding:0rem}::ng-deep .p-dropdown-label{font-size:.75rem}::ng-deep .p-datatable-wrapper::-webkit-scrollbar{width:6px}::ng-deep .p-datatable-wrapper::-webkit-scrollbar:hover{background-color:#dededebf}::ng-deep .p-datatable-wrapper::-webkit-scrollbar-thumb{border-radius:4px;background-color:transparent}::ng-deep .p-datatable-wrapper:hover::-webkit-scrollbar-thumb{border-left:2px solid white;background-color:#00000080}::ng-deep .p-datatable-wrapper::-webkit-scrollbar-track{border-left:2px solid white;background-color:#dededebf}::ng-deep .empty-table .p-datatable-table{height:100%}\n"] }]
|
|
183
183
|
}], ctorParameters: () => [] });
|
|
184
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtdGFibGUtdmlld2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LXRhYmxlLXZpZXdlci9rdi10YWJsZS12aWV3ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtdGFibGUtdmlld2VyL2t2LXRhYmxlLXZpZXdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUN6SCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxXQUFXLEVBQWtCLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDekcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUs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LFdBQ1AsQ0FBQyxlQUFlLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFLHlCQUF5QixFQUFFLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSx1QkFBdUIsRUFBRSxXQUFXLENBQUMsY0FHM087d0JBQ1YsT0FBTyxDQUFDLFlBQVksRUFBRTs0QkFDcEIsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUM7Z0NBQ2hCLEtBQUssRUFBRSxHQUFHO2dDQUNWLE9BQU8sRUFBRSxDQUFDO2dDQUNWLFNBQVMsRUFBRSxlQUFlOzZCQUMzQixDQUFDLENBQUM7NEJBQ0gsS0FBSyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUM7Z0NBQ2pCLEtBQUssRUFBRSxLQUFLO2dDQUNaLE9BQU8sRUFBRSxDQUFDO2dDQUNWLFNBQVMsRUFBRSxrQkFBa0I7NkJBQzlCLENBQUMsQ0FBQzs0QkFDSCxVQUFVLENBQUMsV0FBVyxFQUFFO2dDQUN0QixPQUFPLENBQUMsbUJBQW1CLENBQUM7NkJBQzdCLENBQUM7NEJBQ0YsVUFBVSxDQUFDLFdBQVcsRUFBRTtnQ0FDdEIsT0FBTyxDQUFDLG1CQUFtQixDQUFDOzZCQUM3QixDQUFDO3lCQUNILENBQUM7cUJBQ0giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBjb250ZW50Q2hpbGRyZW4sIGVmZmVjdCwgaW5qZWN0LCBpbnB1dCwgb3V0cHV0LCBzaWduYWwsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJ1dHRvbk1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvYnV0dG9uJztcclxuaW1wb3J0IHsgU2tlbGV0b25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL3NrZWxldG9uJztcclxuaW1wb3J0IHsgVGFibGVNb2R1bGUsIFRhYmxlUGFnZUV2ZW50IH0gZnJvbSAncHJpbWVuZy90YWJsZSc7XHJcbmltcG9ydCB7IEt2SW5wdXRzTW9kdWxlIH0gZnJvbSBcIi4uL2t2LWlucHV0cy9rdi1pbnB1dHMubW9kdWxlXCI7XHJcbmltcG9ydCB7IEt2QnV0dG9uTW9kdWxlIH0gZnJvbSBcIi4uL2t2LWJ1dHRvbi9rdi1idXR0b24ubW9kdWxlXCI7XHJcbmltcG9ydCB7IE92ZXJsYXlQYW5lbE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvb3ZlcmxheXBhbmVsJztcclxuaW1wb3J0IHsgQWN0aW9uc0xvdGVGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hY3Rpb25zLWxvdGUtZmllbGQvYWN0aW9ucy1sb3RlLWZpZWxkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEt2VGFnc01vZHVsZSB9IGZyb20gXCIuLi9rdi10YWdzL2t2LXRhZ3MubW9kdWxlXCI7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSwgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBhbmltYXRlLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcclxuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdG9vbHRpcCc7XHJcbmltcG9ydCB7IE1lbnVJdGVtIH0gZnJvbSAncHJpbWVuZy9hcGknO1xyXG5pbXBvcnQgeyBUaWVyZWRNZW51TW9kdWxlIH0gZnJvbSAncHJpbWVuZy90aWVyZWRtZW51JztcclxuaW1wb3J0IHsgQWN0aW9uc1Jvd01lbnVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYWN0aW9ucy1yb3ctbWVudS9hY3Rpb25zLXJvdy1tZW51LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENwZkNucGpQaXBlIH0gZnJvbSAnLi4vLi4vYXBpL3BpcGVzL2NwZmNucGoucGlwZSc7XHJcbmltcG9ydCB7IFRlbGVmb25lUGlwZSB9IGZyb20gJy4uLy4uL2FwaS9waXBlcy90ZWxlZm9uZS5waXBlJztcclxuaW1wb3J0IHsgVGVtcGxhdGVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9hcGkvZGlyZWN0aXZlcy90ZW1wbGF0ZS90ZW1wbGF0ZS5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgSW5wdXRUZXh0TW9kdWxlIH0gZnJvbSAncHJpbWVuZy9pbnB1dHRleHQnO1xyXG5cclxuaW50ZXJmYWNlIENvbHVtblRhYmxlVmlld2VyIHtcclxuICBmaWVsZDogc3RyaW5nO1xyXG4gIGhlYWRlcjogc3RyaW5nO1xyXG4gIHdpZHRoPzogc3RyaW5nO1xyXG4gIGljb24/OiAocm93RGF0YTogYW55KSA9PiBzdHJpbmc7XHJcbiAgdGFnPzogKHJvd0RhdGE6IGFueSkgPT4geyBsYWJlbDogc3RyaW5nLCBzZXZlcml0eTogc3RyaW5nLCBpY29uOiBzdHJpbmcgfTtcclxuICBwaXBlPzogJ2NwZmNucGonIHwgJ3RlbGVmb25lJyB8ICdtb25leScgfCAnZGF0ZScgfCAnZGF0ZXRpbWUnIHwgJ2RhdGVNb250aFllYXInIHwgdW5kZWZpbmVkO1xyXG4gIHRlbXBsYXRlPzogeyBuYW1lOiBzdHJpbmcgfTtcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdrdi10YWJsZS12aWV3ZXInLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0lucHV0VGV4dE1vZHVsZSwgQ29tbW9uTW9kdWxlLCBUb29sdGlwTW9kdWxlLCBUYWJsZU1vZHVsZSwgU2tlbGV0b25Nb2R1bGUsIEJ1dHRvbk1vZHVsZSwgS3ZJbnB1dHNNb2R1bGUsIEt2QnV0dG9uTW9kdWxlLCBPdmVybGF5UGFuZWxNb2R1bGUsIEFjdGlvbnNMb3RlRmllbGRDb21wb25lbnQsIEt2VGFnc01vZHVsZSwgVGllcmVkTWVudU1vZHVsZSwgQWN0aW9uc1Jvd01lbnVDb21wb25lbnQsIEZvcm1zTW9kdWxlXSxcclxuICB0ZW1wbGF0ZVVybDogJy4va3YtdGFibGUtdmlld2VyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4va3YtdGFibGUtdmlld2VyLmNvbXBvbmVudC5zY3NzJyxcclxuICBhbmltYXRpb25zOiBbXHJcbiAgICB0cmlnZ2VyKCdzbGlkZUluT3V0JywgW1xyXG4gICAgICBzdGF0ZSgnaW4nLCBzdHlsZSh7XHJcbiAgICAgICAgd2lkdGg6ICcqJyxcclxuICAgICAgICBvcGFjaXR5OiAxLFxyXG4gICAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMCknXHJcbiAgICAgIH0pKSxcclxuICAgICAgc3RhdGUoJ291dCcsIHN0eWxlKHtcclxuICAgICAgICB3aWR0aDogJzBweCcsXHJcbiAgICAgICAgb3BhY2l0eTogMCxcclxuICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDEwMCUpJ1xyXG4gICAgICB9KSksXHJcbiAgICAgIHRyYW5zaXRpb24oJ291dCA9PiBpbicsIFtcclxuICAgICAgICBhbmltYXRlKCczMDBtcyBlYXNlLWluLW91dCcpXHJcbiAgICAgIF0pLFxyXG4gICAgICB0cmFuc2l0aW9uKCdpbiA9PiBvdXQnLCBbXHJcbiAgICAgICAgYW5pbWF0ZSgnMjAwbXMgZWFzZS1pbi1vdXQnKVxyXG4gICAgICBdKVxyXG4gICAgXSlcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBLdlRhYmxlVmlld2VyQ29tcG9uZW50IHtcclxuXHJcbiAgY3BmQ25walBpcGUgPSBpbmplY3QoQ3BmQ25walBpcGUpO1xyXG4gIHRlbGVmb25lUGlwZSA9IGluamVjdChUZWxlZm9uZVBpcGUpO1xyXG4gIGRhdGVQaXBlID0gaW5qZWN0KERhdGVQaXBlKTtcclxuXHJcbiAgY29sdW1ucyA9IGlucHV0PENvbHVtblRhYmxlVmlld2VyW10+KFtdKTtcclxuXHJcbiAgYWN0aW9uc1JvdyA9IGlucHV0PE1lbnVJdGVtW10gfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XHJcbiAgYWN0aW9uc0hlYWRlciA9IGlucHV0PE1lbnVJdGVtW10gfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XHJcbiAgYWN0aW9uc0xvdGUgPSBpbnB1dDxNZW51SXRlbVtdIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xyXG5cclxuICBkYXRhID0gaW5wdXQ8YW55W10+KFtdKTtcclxuICB0b3RhbFJlY29yZHMgPSBpbnB1dDxudW1iZXI+KDApO1xyXG4gIGxvYWRpbmcgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XHJcbiAgcm93cyA9IGlucHV0PG51bWJlcj4oMTApO1xyXG4gIHJvd3NQZXJQYWdlT3B0aW9ucyA9IGlucHV0PG51bWJlcltdPihbMTAsIDI1LCA1MF0pO1xyXG4gIHBhZ2luYXRvciA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xyXG4gIGxhenkgPSBpbnB1dDxib29sZWFuPih0cnVlKTtcclxuICBzY3JvbGxhYmxlID0gaW5wdXQ8Ym9vbGVhbj4odHJ1ZSk7XHJcbiAgcGFnZUxpbmtzID0gaW5wdXQ8bnVtYmVyPigyKTtcclxuICBjdXJyZW50UGFnZVJlcG9ydFRlbXBsYXRlID0gaW5wdXQ8c3RyaW5nPigne2ZpcnN0fSAtIHtsYXN0fSBkZSB7dG90YWxSZWNvcmRzfScpO1xyXG4gIHNlbGVjdGlvblBhZ2VPbmx5ID0gaW5wdXQ8Ym9vbGVhbj4odHJ1ZSk7XHJcblxyXG5cclxuICBzZWxlY3RhYmxlVGFibGUgPSBpbnB1dDxib29sZWFuPih0cnVlKTtcclxuICBzaG93SGVhZGVyID0gaW5wdXQ8Ym9vbGVhbj4odHJ1ZSk7XHJcbiAgdGFibGVWaWV3ZXJTaXplID0gaW5wdXQ8c3RyaW5nPignY29sLTgnKTtcclxuICBzZWFyY2hJbnB1dCA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xyXG4gIGZpbHRlckJ1dHRvbiA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xyXG4gIGlkTmFtZSA9IGlucHV0PHN0cmluZyB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcclxuICBlbXB0eVRhYmxlSW1nID0gaW5wdXQ8c3RyaW5nPignaHR0cHM6Ly93b3JrLWFzc2V0cy5rZWV2by5jb20uYnIvaW1nL05lbmh1bV9yZWdpc3Ryb19sb2NhbGl6YWRvLnBuZycpO1xyXG5cclxuXHJcbiAgc2VsZWN0ZWRJdGVtcyA9IHNpZ25hbDxhbnlbXT4oW10pO1xyXG4gIHNlbGVjdGVkSXRlbSA9IHNpZ25hbDxhbnk+KG51bGwpO1xyXG4gIGZpcnN0ID0gc2lnbmFsPG51bWJlcj4oMCk7XHJcbiAgc2VhcmNoVmFsdWUgPSBzaWduYWwoJycpO1xyXG5cclxuICBvblBhZ2VDaGFuZ2UgPSBvdXRwdXQ8VGFibGVQYWdlRXZlbnQ+KCk7XHJcbiAgb25DbGlja1Jvd0l0ZW0gPSBvdXRwdXQ8YW55PigpO1xyXG4gIG9uU2VsZWN0SXRlbXMgPSBvdXRwdXQ8YW55W10+KCk7XHJcbiAgb25TZWFyY2ggPSBvdXRwdXQ8c3RyaW5nPigpO1xyXG5cclxuICB0ZW1wbGF0ZXMgPSBjb250ZW50Q2hpbGRyZW4oVGVtcGxhdGVEaXJlY3RpdmUpO1xyXG4gIF90ZW1wbGF0ZXMgPSBpbnB1dDxSZWNvcmQ8c3RyaW5nLCBUZW1wbGF0ZVJlZjxhbnk+Pj4oe30pO1xyXG4gIGdldEN1c3RvbVRlbXBsYXRlID0gY29tcHV0ZWQoKCkgPT4gKHRlbXBsYXRlbmFtZTogc3RyaW5nKTogVGVtcGxhdGVSZWY8YW55PiB8IG51bGwgPT4ge1xyXG4gICAgY29uc3QgdGVtcGxhdGVzID0gdGhpcy5fdGVtcGxhdGVzKCk7XHJcbiAgICByZXR1cm4gdGVtcGxhdGVzW3RlbXBsYXRlbmFtZV07XHJcbiAgfSk7XHJcblxyXG4gIGhhc1NlbGVjdGVkSXRlbXMgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZEl0ZW1zKCkubGVuZ3RoID4gMCB8fCB0aGlzLnNlbGVjdGVkSXRlbSgpO1xyXG4gIH0pO1xyXG5cclxuICB2ZXJpZnlJdGVtU2VsZWNpb25hZG8gPSBjb21wdXRlZCgoKSA9PiAocm93RGF0YTogYW55KSA9PiB7XHJcbiAgICBsZXQgaXNTZWxlY3RlZDtcclxuXHJcbiAgICBsZXQgaWROYW1lID0gdGhpcy5pZE5hbWUoKSB8fCAnaWQnO1xyXG5cclxuICAgIGlmICh0aGlzLnNlbGVjdGFibGVUYWJsZSgpKVxyXG4gICAgICBpc1NlbGVjdGVkID0gdGhpcy5zZWxlY3RlZEl0ZW1zKCkuZmluZCgoaXRlbTogYW55KSA9PiBpdGVtW2lkTmFtZV0gPT0gcm93RGF0YVtpZE5hbWVdKTtcclxuICAgIGVsc2UgaXNTZWxlY3RlZCA9IHRoaXMuc2VsZWN0ZWRJdGVtKCk/LltpZE5hbWVdID09IHJvd0RhdGFbaWROYW1lXTtcclxuXHJcbiAgICByZXR1cm4gaXNTZWxlY3RlZDtcclxuICB9KVxyXG5cclxuICB0cmFuc2Zvcm1EYXRhID0gY29tcHV0ZWQoKCkgPT4gKHR5cGU6IHN0cmluZywgdmFsdWU6IGFueSkgPT4ge1xyXG4gICAgaWYgKHR5cGUgPT09ICdjcGZjbnBqJykgcmV0dXJuIHRoaXMuY3BmQ25walBpcGUudHJhbnNmb3JtKHZhbHVlKTtcclxuICAgIGlmICh0eXBlID09PSAndGVsZWZvbmUnKSByZXR1cm4gdGhpcy50ZWxlZm9uZVBpcGUudHJhbnNmb3JtKHZhbHVlKTtcclxuICAgIGlmICh0eXBlID09PSAnbW9uZXknKSByZXR1cm4gdGhpcy50cmFuc2Zvcm1Nb25leSh2YWx1ZSk7XHJcbiAgICBpZiAodHlwZSA9PT0gJ2RhdGUnKSByZXR1cm4gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0odmFsdWUsICdkZC9NTS95eXl5JywgJ1VUQycpO1xyXG4gICAgaWYgKHR5cGUgPT09ICdkYXRldGltZScpIHJldHVybiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybSh2YWx1ZSwgJ2RkL01NL3l5eXkgaGg6bW0nKTtcclxuICAgIGlmICh0eXBlID09PSAnZGF0ZU1vbnRoWWVhcicpIHJldHVybiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybSh2YWx1ZSwgJ01NL3l5eXknKTtcclxuXHJcbiAgICBlbHNlIHJldHVybiB2YWx1ZTtcclxuICB9KVxyXG5cclxuICBoYW5kbGVUYWJsZVNpemUgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICBjb25zdCBzZWxlY3RlZEl0ZW1zID0gdGhpcy5zZWxlY3RlZEl0ZW1zKCk7XHJcbiAgICBjb25zdCBzZWxlY3RlZEl0ZW0gPSB0aGlzLnNlbGVjdGVkSXRlbSgpO1xyXG5cclxuICAgIGlmIChzZWxlY3RlZEl0ZW1zLmxlbmd0aCA9PSAwICYmICFzZWxlY3RlZEl0ZW0pXHJcbiAgICAgIHJldHVybiAnY29sLTEyJztcclxuICAgIGVsc2UgcmV0dXJuIHRoaXMudGFibGVWaWV3ZXJTaXplKCk7XHJcbiAgfSlcclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgZWZmZWN0KCgpID0+IHtcclxuICAgICAgdGhpcy5vblNlbGVjdEl0ZW1zLmVtaXQodGhpcy5zZWxlY3RlZEl0ZW1zKCkpO1xyXG4gICAgICB0aGlzLm9uU2VhcmNoLmVtaXQodGhpcy5zZWFyY2hWYWx1ZSgpKTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBoYW5kbGVQYWdlQ2hhbmdlKGV2ZW50OiBUYWJsZVBhZ2VFdmVudCkge1xyXG4gICAgdGhpcy5maXJzdC5zZXQoZXZlbnQuZmlyc3QpO1xyXG4gICAgdGhpcy5vblBhZ2VDaGFuZ2UuZW1pdChldmVudCk7XHJcbiAgfVxyXG5cclxuICByb3dTZWxlY3Qocm93RGF0YTogYW55KSB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RhYmxlVGFibGUoKSkge1xyXG4gICAgICBpZiAodGhpcy5zZWxlY3RlZEl0ZW1zKCkuaW5jbHVkZXMocm93RGF0YSkpXHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zLnVwZGF0ZSgoaXRlbXM6IGFueVtdKSA9PiBpdGVtcy5maWx0ZXIoaXRlbSA9PiBpdGVtICE9PSByb3dEYXRhKSk7XHJcbiAgICAgIGVsc2UgdGhpcy5zZWxlY3RlZEl0ZW1zLnVwZGF0ZSgoaXRlbXM6IGFueVtdKSA9PiBbLi4uaXRlbXMsIHJvd0RhdGFdKTtcclxuXHJcbiAgICAgIGlmICh0aGlzLnNlbGVjdGVkSXRlbXMoKS5sZW5ndGggPT09IDEpXHJcbiAgICAgICAgdGhpcy5vbkNsaWNrUm93SXRlbS5lbWl0KHRoaXMuc2VsZWN0ZWRJdGVtcygpWzBdKTtcclxuICAgICAgZWxzZSB0aGlzLm9uQ2xpY2tSb3dJdGVtLmVtaXQocm93RGF0YSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkSXRlbS5zZXQocm93RGF0YSk7XHJcbiAgICAgIHRoaXMub25DbGlja1Jvd0l0ZW0uZW1pdChyb3dEYXRhKTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICB0cmFuc2Zvcm1Nb25leSh2YWxvcjogbnVtYmVyKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGZvcm1hdHRlciA9IG5ldyBJbnRsLk51bWJlckZvcm1hdCgncHQtQlInLCB7XHJcbiAgICAgIHN0eWxlOiAnY3VycmVuY3knLFxyXG4gICAgICBjdXJyZW5jeTogJ0JSTCcsXHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gZm9ybWF0dGVyLmZvcm1hdCh2YWxvcik7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICBjbGFzcz1cImgtZnVsbCBmbGV4IGZsZXgtcm93IHAtMiBrdi10YWJsZS12aWV3ZXIgb3ZlcmZsb3ctaGlkZGVuIHt7XHJcbiAgICBkYXRhKCkubGVuZ3RoID09IDAgPyAnZW1wdHktdGFibGUnIDogJydcclxuICB9fVwiXHJcbj5cclxuICA8ZGl2XHJcbiAgICBjbGFzcz1cImgtZnVsbCB7eyBoYW5kbGVUYWJsZVNpemUoKSB9fSBtLTAgcC0wIGZsZXggZmxleC1jb2x1bW4gZ2FwLTJcIlxyXG4gICAgW3N0eWxlLnRyYW5zaXRpb25dPVwiJ2FsbCAwLjNzIGVhc2UtaW4tb3V0J1wiXHJcbiAgPlxyXG4gICAgPGRpdlxyXG4gICAgICBjbGFzcz1cImZsZXggZmxleC1yb3cgYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGZsZXgtaW5pdGlhbFwiXHJcbiAgICA+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtMlwiPlxyXG4gICAgICAgIEBpZihzZWFyY2hJbnB1dCgpKSB7XHJcbiAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICBzdHlsZT1cImhlaWdodDogMS44NzVyZW1cIlxyXG4gICAgICAgICAgcGxhY2Vob2xkZXI9XCJQZXNxdWlzYXIuLi5cIlxyXG4gICAgICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICAgICAgcElucHV0VGV4dFxyXG4gICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWFyY2hWYWx1ZVwiXHJcbiAgICAgICAgICBjbGFzcz1cInRleHQteHNcIlxyXG4gICAgICAgIC8+XHJcblxyXG4gICAgICAgIH0gQGlmKGZpbHRlckJ1dHRvbigpKSB7XHJcbiAgICAgICAgPGt2LWJ1dHRvblxyXG4gICAgICAgICAgbGFiZWw9XCJGaWx0cmFyXCJcclxuICAgICAgICAgIGljb249XCJmaWx0ZXJfYWx0XCJcclxuICAgICAgICAgIHNldmVyaXR5PVwidGVydGlhcnlcIlxyXG4gICAgICAgICAgKG9uQ2xpY2spPVwib3AudG9nZ2xlKCRldmVudClcIlxyXG4gICAgICAgID48L2t2LWJ1dHRvbj5cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIDxwLW92ZXJsYXlQYW5lbCAjb3A+XHJcbiAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZmlsdHJvXVwiPiA8L25nLWNvbnRlbnQ+XHJcbiAgICAgICAgPC9wLW92ZXJsYXlQYW5lbD5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGdhcC0yXCI+XHJcbiAgICAgICAgQGlmKGFjdGlvbnNIZWFkZXIoKSkgeyBAZm9yKGFjdGlvbiBvZiBhY3Rpb25zSGVhZGVyKCk7IHRyYWNrICRpbmRleCkge1xyXG4gICAgICAgIDxrdi1idXR0b25cclxuICAgICAgICAgIFtpY29uXT1cImFjdGlvbj8uaWNvbiB8fCAnJ1wiXHJcbiAgICAgICAgICBbbGFiZWxdPVwiYWN0aW9uPy5sYWJlbCB8fCAnJ1wiXHJcbiAgICAgICAgICBbc2V2ZXJpdHldPVwiYWN0aW9uWydzZXZlcml0eSddIHx8ICd0ZXJ0aWFyeSdcIlxyXG4gICAgICAgICAgKG9uQ2xpY2spPVwiYWN0aW9uPy5jb21tYW5kKCRldmVudClcIlxyXG4gICAgICAgID48L2t2LWJ1dHRvbj5cclxuICAgICAgICB9IH0gQGlmKHNlbGVjdGVkSXRlbSgpKSB7XHJcbiAgICAgICAgPGt2LWJ1dHRvblxyXG4gICAgICAgICAgW3BUb29sdGlwXT1cIidSZWNvbGhlcidcIlxyXG4gICAgICAgICAgaWNvbj1cInJlb3JkZXJcIlxyXG4gICAgICAgICAgc2V2ZXJpdHk9XCJ0ZXJ0aWFyeVwiXHJcbiAgICAgICAgICAob25DbGljayk9XCJzZWxlY3RlZEl0ZW0uc2V0KG51bGwpXCJcclxuICAgICAgICA+PC9rdi1idXR0b24+XHJcbiAgICAgICAgfVxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJmbGV4LTEgaC1mdWxsIG92ZXJmbG93LWhpZGRlblwiPlxyXG4gICAgICA8cC10YWJsZVxyXG4gICAgICAgIFt2YWx1ZV09XCJkYXRhKClcIlxyXG4gICAgICAgIFtsYXp5XT1cImxhenkoKVwiXHJcbiAgICAgICAgW3NlbGVjdGlvblBhZ2VPbmx5XT1cInNlbGVjdGlvblBhZ2VPbmx5KClcIlxyXG4gICAgICAgIFtjb2x1bW5zXT1cImNvbHVtbnMoKVwiXHJcbiAgICAgICAgW3BhZ2luYXRvcl09XCJwYWdpbmF0b3IoKVwiXHJcbiAgICAgICAgW3Jvd3NdPVwicm93cygpXCJcclxuICAgICAgICBbdG90YWxSZWNvcmRzXT1cInRvdGFsUmVjb3JkcygpXCJcclxuICAgICAgICBbbG9hZGluZ109XCJsb2FkaW5nKClcIlxyXG4gICAgICAgIFtwYWdlTGlua3NdPVwicGFnZUxpbmtzKClcIlxyXG4gICAgICAgIFtmaXJzdF09XCJmaXJzdCgpXCJcclxuICAgICAgICBbc2Nyb2xsYWJsZV09XCJzY3JvbGxhYmxlKClcIlxyXG4gICAgICAgIHNjcm9sbEhlaWdodD1cImZsZXhcIlxyXG4gICAgICAgIFtzaG93Q3VycmVudFBhZ2VSZXBvcnRdPVwidHJ1ZVwiXHJcbiAgICAgICAgW2N1cnJlbnRQYWdlUmVwb3J0VGVtcGxhdGVdPVwiY3VycmVudFBhZ2VSZXBvcnRUZW1wbGF0ZSgpXCJcclxuICAgICAgICAob25QYWdlKT1cImhhbmRsZVBhZ2VDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgW3Jvd3NQZXJQYWdlT3B0aW9uc109XCJyb3dzUGVyUGFnZU9wdGlvbnMoKVwiXHJcbiAgICAgICAgWyhzZWxlY3Rpb24pXT1cInNlbGVjdGVkSXRlbXNcIlxyXG4gICAgICAgIHN0eWxlQ2xhc3M9XCJwLWRhdGF0YWJsZS1zbSB0ZXh0LXhzIG92ZXJmbG93LXktYXV0byBoLWZ1bGwgZmxleCBmbGV4LWNvbHVtbiBoLWZ1bGxcIlxyXG4gICAgICA+XHJcbiAgICAgICAgQGlmKHNob3dIZWFkZXIoKSkge1xyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIiBsZXQtY29sdW1ucz5cclxuICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgQGlmKHNlbGVjdGFibGVUYWJsZSgpKSB7XHJcbiAgICAgICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiA0cmVtXCI+PHAtdGFibGVIZWFkZXJDaGVja2JveCAvPjwvdGg+XHJcbiAgICAgICAgICAgIH0gQGZvciAoY29sIG9mIGNvbHVtbnM7IHRyYWNrIGNvbC5maWVsZCkge1xyXG4gICAgICAgICAgICA8dGggW3N0eWxlXT1cInsgd2lkdGg6IGNvbC53aWR0aCB8fCAnYXV0bycgfVwiPnt7IGNvbC5oZWFkZXIgfX08L3RoPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICA8L3RyPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiYm9keVwiIGxldC1yb3dEYXRhIGxldC1jb2x1bW5zPVwiY29sdW1uc1wiPlxyXG4gICAgICAgICAgPHRyXHJcbiAgICAgICAgICAgIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXIge3tcclxuICAgICAgICAgICAgICB2ZXJpZnlJdGVtU2VsZWNpb25hZG8oKShyb3dEYXRhKSAmJiAnYmctZ3JheS0xMDAnXHJcbiAgICAgICAgICAgIH19IGhvdmVyOmJnLWdyYXktMjAwXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgQGlmKHNlbGVjdGFibGVUYWJsZSgpKSB7XHJcbiAgICAgICAgICAgIDx0ZD48cC10YWJsZUNoZWNrYm94IFt2YWx1ZV09XCJyb3dEYXRhXCIgLz48L3RkPlxyXG4gICAgICAgICAgICB9IEBmb3IgKGNvbCBvZiBjb2x1bW5zOyB0cmFjayBjb2wuZmllbGQpIHtcclxuICAgICAgICAgICAgPHRkIChjbGljayk9XCJyb3dTZWxlY3Qocm93RGF0YSlcIj5cclxuICAgICAgICAgICAgICBAaWYoY29sPy50ZW1wbGF0ZSkge1xyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGdhcC0yIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgQGlmIChnZXRDdXN0b21UZW1wbGF0ZSgpKGNvbC50ZW1wbGF0ZS5uYW1lKSkge1xyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxyXG4gICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJnZXRDdXN0b21UZW1wbGF0ZSgpKGNvbC50ZW1wbGF0ZS5uYW1lKVwiXHJcbiAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogcm93RGF0YSB9XCJcclxuICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgfSBAZWxzZSBpZihjb2w/Lmljb24pIHtcclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgdGV4dC1sZ1wiPlxyXG4gICAgICAgICAgICAgICAge3sgY29sLmljb24ocm93RGF0YSkgfX1cclxuICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgfSBAZWxzZSBpZihjb2w/LnRhZykge1xyXG4gICAgICAgICAgICAgIDxrdi10YWdzIFt0YWdzXT1cIltjb2wudGFnKHJvd0RhdGEpXVwiIC8+XHJcbiAgICAgICAgICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgICAgICAge3sgdHJhbnNmb3JtRGF0YSgpKGNvbC5waXBlLCByb3dEYXRhW2NvbC5maWVsZF0pIH19XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICA8L3RyPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJlbXB0eW1lc3NhZ2VcIj5cclxuICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgPHRkIFthdHRyLmNvbHNwYW5dPVwiY29sdW1ucygpLmxlbmd0aCArIDFcIj5cclxuICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInctZnVsbCBoLWZ1bGwgZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlclwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPGltZ1xyXG4gICAgICAgICAgICAgICAgICBbc3JjXT1cImVtcHR5VGFibGVJbWcoKVwiXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaC0xMHJlbSB3LWF1dG9cIlxyXG4gICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgPC9wLXRhYmxlPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXZcclxuICAgIGNsYXNzPVwic2hhZG93LTIgcC0wIG0tMCBjb2wgc2VsZWN0ZWQtaXRlbS1maWVsZCBtbC0yXCJcclxuICAgIFtAc2xpZGVJbk91dF09XCJoYXNTZWxlY3RlZEl0ZW1zKCkgPyAnaS5uJyA6ICdvdXQnXCJcclxuICAgIFtzdHlsZS5vdmVyZmxvd109XCInaGlkZGVuJ1wiXHJcbiAgPlxyXG4gICAgQGlmKHNlbGVjdGVkSXRlbXMoKS5sZW5ndGggPiAxKSB7XHJcbiAgICA8YWN0aW9ucy1sb3RlLWZpZWxkXHJcbiAgICAgIFtzZWxlY3RlZEl0ZW1zXT1cInNlbGVjdGVkSXRlbXMoKVwiXHJcbiAgICAgIFthY3Rpb25zTG90ZV09XCJhY3Rpb25zTG90ZSgpXCJcclxuICAgIC8+XHJcbiAgICB9IEBlbHNlIGlmKHNlbGVjdGVkSXRlbXMoKS5sZW5ndGggPT0gMSB8fCBzZWxlY3RlZEl0ZW0oKSkge1xyXG4gICAgPGRpdiBjbGFzcz1cImJnLWdyYXktMTAwIHctZnVsbCBoLWF1dG8gcC0yIHJlbGF0aXZlXCI+XHJcbiAgICAgIEBpZihhY3Rpb25zUm93KCkpIHtcclxuICAgICAgPGFjdGlvbnMtcm93LW1lbnUgW2FjdGlvbnNSb3ddPVwiYWN0aW9uc1JvdygpXCIgLz5cclxuICAgICAgfVxyXG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbc2VsZWN0ZWRJdGVtSGVhZGVyXVwiPjwvbmctY29udGVudD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInAtMiBvdmVyZmxvdy15LWF1dG8gaC1mdWxsXCI+XHJcbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltzZWxlY3RlZEl0ZW1dXCI+PC9uZy1jb250ZW50PlxyXG4gICAgPC9kaXY+XHJcbiAgICB9XHJcblxyXG4gICAgPCEtLSBAZWxzZSB7IE5lbmh1bSBpdGVtIHNlbGVjaW9uYWRvIH0gLS0+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
184
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtdGFibGUtdmlld2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2t2LXRhYmxlLXZpZXdlci9rdi10YWJsZS12aWV3ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMva3YtdGFibGUtdmlld2VyL2t2LXRhYmxlLXZpZXdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUN6SCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxXQUFXLEVBQWtCLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDekcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUs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bEMsU0FBUzsrQkFDRSxpQkFBaUIsY0FDZixJQUFJLFdBQ1AsQ0FBQyxlQUFlLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFLHlCQUF5QixFQUFFLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSx1QkFBdUIsRUFBRSxXQUFXLENBQUMsY0FHM087d0JBQ1YsT0FBTyxDQUFDLFlBQVksRUFBRTs0QkFDcEIsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUM7Z0NBQ2hCLEtBQUssRUFBRSxHQUFHO2dDQUNWLE9BQU8sRUFBRSxDQUFDO2dDQUNWLFNBQVMsRUFBRSxlQUFlOzZCQUMzQixDQUFDLENBQUM7NEJBQ0gsS0FBSyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUM7Z0NBQ2pCLEtBQUssRUFBRSxLQUFLO2dDQUNaLE9BQU8sRUFBRSxDQUFDO2dDQUNWLFNBQVMsRUFBRSxrQkFBa0I7NkJBQzlCLENBQUMsQ0FBQzs0QkFDSCxVQUFVLENBQUMsV0FBVyxFQUFFO2dDQUN0QixPQUFPLENBQUMsbUJBQW1CLENBQUM7NkJBQzdCLENBQUM7NEJBQ0YsVUFBVSxDQUFDLFdBQVcsRUFBRTtnQ0FDdEIsT0FBTyxDQUFDLG1CQUFtQixDQUFDOzZCQUM3QixDQUFDO3lCQUNILENBQUM7cUJBQ0giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBjb250ZW50Q2hpbGRyZW4sIGVmZmVjdCwgaW5qZWN0LCBpbnB1dCwgb3V0cHV0LCBzaWduYWwsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJ1dHRvbk1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvYnV0dG9uJztcclxuaW1wb3J0IHsgU2tlbGV0b25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL3NrZWxldG9uJztcclxuaW1wb3J0IHsgVGFibGVNb2R1bGUsIFRhYmxlUGFnZUV2ZW50IH0gZnJvbSAncHJpbWVuZy90YWJsZSc7XHJcbmltcG9ydCB7IEt2SW5wdXRzTW9kdWxlIH0gZnJvbSBcIi4uL2t2LWlucHV0cy9rdi1pbnB1dHMubW9kdWxlXCI7XHJcbmltcG9ydCB7IEt2QnV0dG9uTW9kdWxlIH0gZnJvbSBcIi4uL2t2LWJ1dHRvbi9rdi1idXR0b24ubW9kdWxlXCI7XHJcbmltcG9ydCB7IE92ZXJsYXlQYW5lbE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvb3ZlcmxheXBhbmVsJztcclxuaW1wb3J0IHsgQWN0aW9uc0xvdGVGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hY3Rpb25zLWxvdGUtZmllbGQvYWN0aW9ucy1sb3RlLWZpZWxkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEt2VGFnc01vZHVsZSB9IGZyb20gXCIuLi9rdi10YWdzL2t2LXRhZ3MubW9kdWxlXCI7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSwgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBhbmltYXRlLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcclxuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdG9vbHRpcCc7XHJcbmltcG9ydCB7IE1lbnVJdGVtIH0gZnJvbSAncHJpbWVuZy9hcGknO1xyXG5pbXBvcnQgeyBUaWVyZWRNZW51TW9kdWxlIH0gZnJvbSAncHJpbWVuZy90aWVyZWRtZW51JztcclxuaW1wb3J0IHsgQWN0aW9uc1Jvd01lbnVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYWN0aW9ucy1yb3ctbWVudS9hY3Rpb25zLXJvdy1tZW51LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENwZkNucGpQaXBlIH0gZnJvbSAnLi4vLi4vYXBpL3BpcGVzL2NwZmNucGoucGlwZSc7XHJcbmltcG9ydCB7IFRlbGVmb25lUGlwZSB9IGZyb20gJy4uLy4uL2FwaS9waXBlcy90ZWxlZm9uZS5waXBlJztcclxuaW1wb3J0IHsgVGVtcGxhdGVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9hcGkvZGlyZWN0aXZlcy90ZW1wbGF0ZS90ZW1wbGF0ZS5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgSW5wdXRUZXh0TW9kdWxlIH0gZnJvbSAncHJpbWVuZy9pbnB1dHRleHQnO1xyXG5cclxuaW50ZXJmYWNlIENvbHVtblRhYmxlVmlld2VyIHtcclxuICBmaWVsZDogc3RyaW5nO1xyXG4gIGhlYWRlcjogc3RyaW5nO1xyXG4gIHdpZHRoPzogc3RyaW5nO1xyXG4gIGljb24/OiAocm93RGF0YTogYW55KSA9PiBzdHJpbmc7XHJcbiAgdGFnPzogKHJvd0RhdGE6IGFueSkgPT4geyBsYWJlbDogc3RyaW5nLCBzZXZlcml0eTogc3RyaW5nLCBpY29uOiBzdHJpbmcgfTtcclxuICBwaXBlPzogJ2NwZmNucGonIHwgJ3RlbGVmb25lJyB8ICdtb25leScgfCAnZGF0ZScgfCAnZGF0ZXRpbWUnIHwgJ2RhdGVNb250aFllYXInIHwgdW5kZWZpbmVkO1xyXG4gIHRlbXBsYXRlPzogeyBuYW1lOiBzdHJpbmcgfTtcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdrdi10YWJsZS12aWV3ZXInLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0lucHV0VGV4dE1vZHVsZSwgQ29tbW9uTW9kdWxlLCBUb29sdGlwTW9kdWxlLCBUYWJsZU1vZHVsZSwgU2tlbGV0b25Nb2R1bGUsIEJ1dHRvbk1vZHVsZSwgS3ZJbnB1dHNNb2R1bGUsIEt2QnV0dG9uTW9kdWxlLCBPdmVybGF5UGFuZWxNb2R1bGUsIEFjdGlvbnNMb3RlRmllbGRDb21wb25lbnQsIEt2VGFnc01vZHVsZSwgVGllcmVkTWVudU1vZHVsZSwgQWN0aW9uc1Jvd01lbnVDb21wb25lbnQsIEZvcm1zTW9kdWxlXSxcclxuICB0ZW1wbGF0ZVVybDogJy4va3YtdGFibGUtdmlld2VyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4va3YtdGFibGUtdmlld2VyLmNvbXBvbmVudC5zY3NzJyxcclxuICBhbmltYXRpb25zOiBbXHJcbiAgICB0cmlnZ2VyKCdzbGlkZUluT3V0JywgW1xyXG4gICAgICBzdGF0ZSgnaW4nLCBzdHlsZSh7XHJcbiAgICAgICAgd2lkdGg6ICcqJyxcclxuICAgICAgICBvcGFjaXR5OiAxLFxyXG4gICAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMCknXHJcbiAgICAgIH0pKSxcclxuICAgICAgc3RhdGUoJ291dCcsIHN0eWxlKHtcclxuICAgICAgICB3aWR0aDogJzBweCcsXHJcbiAgICAgICAgb3BhY2l0eTogMCxcclxuICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDEwMCUpJ1xyXG4gICAgICB9KSksXHJcbiAgICAgIHRyYW5zaXRpb24oJ291dCA9PiBpbicsIFtcclxuICAgICAgICBhbmltYXRlKCczMDBtcyBlYXNlLWluLW91dCcpXHJcbiAgICAgIF0pLFxyXG4gICAgICB0cmFuc2l0aW9uKCdpbiA9PiBvdXQnLCBbXHJcbiAgICAgICAgYW5pbWF0ZSgnMjAwbXMgZWFzZS1pbi1vdXQnKVxyXG4gICAgICBdKVxyXG4gICAgXSlcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBLdlRhYmxlVmlld2VyQ29tcG9uZW50IHtcclxuXHJcbiAgY3BmQ25walBpcGUgPSBpbmplY3QoQ3BmQ25walBpcGUpO1xyXG4gIHRlbGVmb25lUGlwZSA9IGluamVjdChUZWxlZm9uZVBpcGUpO1xyXG4gIGRhdGVQaXBlID0gaW5qZWN0KERhdGVQaXBlKTtcclxuXHJcbiAgY29sdW1ucyA9IGlucHV0PENvbHVtblRhYmxlVmlld2VyW10+KFtdKTtcclxuXHJcbiAgYWN0aW9uc1JvdyA9IGlucHV0PE1lbnVJdGVtW10gfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XHJcbiAgYWN0aW9uc0hlYWRlciA9IGlucHV0PE1lbnVJdGVtW10gfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XHJcbiAgYWN0aW9uc0xvdGUgPSBpbnB1dDxNZW51SXRlbVtdIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xyXG5cclxuICBkYXRhID0gaW5wdXQ8YW55W10+KFtdKTtcclxuICB0b3RhbFJlY29yZHMgPSBpbnB1dDxudW1iZXI+KDApO1xyXG4gIGxvYWRpbmcgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XHJcbiAgcm93cyA9IGlucHV0PG51bWJlcj4oMTApO1xyXG4gIHJvd3NQZXJQYWdlT3B0aW9ucyA9IGlucHV0PG51bWJlcltdPihbMTAsIDI1LCA1MF0pO1xyXG4gIHBhZ2luYXRvciA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xyXG4gIGxhenkgPSBpbnB1dDxib29sZWFuPih0cnVlKTtcclxuICBzY3JvbGxhYmxlID0gaW5wdXQ8Ym9vbGVhbj4odHJ1ZSk7XHJcbiAgcGFnZUxpbmtzID0gaW5wdXQ8bnVtYmVyPigyKTtcclxuICBjdXJyZW50UGFnZVJlcG9ydFRlbXBsYXRlID0gaW5wdXQ8c3RyaW5nPigne2ZpcnN0fSAtIHtsYXN0fSBkZSB7dG90YWxSZWNvcmRzfScpO1xyXG4gIHNlbGVjdGlvblBhZ2VPbmx5ID0gaW5wdXQ8Ym9vbGVhbj4odHJ1ZSk7XHJcblxyXG5cclxuICBzZWxlY3RhYmxlVGFibGUgPSBpbnB1dDxib29sZWFuPih0cnVlKTtcclxuICBzaG93SGVhZGVyID0gaW5wdXQ8Ym9vbGVhbj4odHJ1ZSk7XHJcbiAgdGFibGVWaWV3ZXJTaXplID0gaW5wdXQ8c3RyaW5nPignY29sLTgnKTtcclxuICBzZWFyY2hJbnB1dCA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xyXG4gIGZpbHRlckJ1dHRvbiA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xyXG4gIGlkTmFtZSA9IGlucHV0PHN0cmluZyB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcclxuICBlbXB0eVRhYmxlSW1nID0gaW5wdXQ8c3RyaW5nPignaHR0cHM6Ly93b3JrLWFzc2V0cy5rZWV2by5jb20uYnIvaW1nL05lbmh1bV9yZWdpc3Ryb19sb2NhbGl6YWRvLnBuZycpO1xyXG5cclxuXHJcbiAgc2VsZWN0ZWRJdGVtcyA9IHNpZ25hbDxhbnlbXT4oW10pO1xyXG4gIHNlbGVjdGVkSXRlbSA9IHNpZ25hbDxhbnk+KG51bGwpO1xyXG4gIGZpcnN0ID0gc2lnbmFsPG51bWJlcj4oMCk7XHJcbiAgc2VhcmNoVmFsdWUgPSBzaWduYWwoJycpO1xyXG5cclxuICBvblBhZ2VDaGFuZ2UgPSBvdXRwdXQ8VGFibGVQYWdlRXZlbnQ+KCk7XHJcbiAgb25DbGlja1Jvd0l0ZW0gPSBvdXRwdXQ8YW55PigpO1xyXG4gIG9uU2VsZWN0SXRlbXMgPSBvdXRwdXQ8YW55W10+KCk7XHJcbiAgb25TZWFyY2ggPSBvdXRwdXQ8c3RyaW5nPigpO1xyXG5cclxuICB0ZW1wbGF0ZXMgPSBjb250ZW50Q2hpbGRyZW4oVGVtcGxhdGVEaXJlY3RpdmUpO1xyXG4gIF90ZW1wbGF0ZXMgPSBpbnB1dDxSZWNvcmQ8c3RyaW5nLCBUZW1wbGF0ZVJlZjxhbnk+Pj4oe30sIHsgYWxpYXM6ICd0ZW1wbGF0ZXMnIH0pO1xyXG4gIGdldEN1c3RvbVRlbXBsYXRlID0gY29tcHV0ZWQoKCkgPT4gKHRlbXBsYXRlbmFtZTogc3RyaW5nKTogVGVtcGxhdGVSZWY8YW55PiB8IG51bGwgPT4ge1xyXG4gICAgY29uc3QgdGVtcGxhdGVzID0gdGhpcy5fdGVtcGxhdGVzKCk7XHJcbiAgICByZXR1cm4gdGVtcGxhdGVzW3RlbXBsYXRlbmFtZV07XHJcbiAgfSk7XHJcblxyXG4gIGhhc1NlbGVjdGVkSXRlbXMgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZEl0ZW1zKCkubGVuZ3RoID4gMCB8fCB0aGlzLnNlbGVjdGVkSXRlbSgpO1xyXG4gIH0pO1xyXG5cclxuICB2ZXJpZnlJdGVtU2VsZWNpb25hZG8gPSBjb21wdXRlZCgoKSA9PiAocm93RGF0YTogYW55KSA9PiB7XHJcbiAgICBsZXQgaXNTZWxlY3RlZDtcclxuXHJcbiAgICBsZXQgaWROYW1lID0gdGhpcy5pZE5hbWUoKSB8fCAnaWQnO1xyXG5cclxuICAgIGlmICh0aGlzLnNlbGVjdGFibGVUYWJsZSgpKVxyXG4gICAgICBpc1NlbGVjdGVkID0gdGhpcy5zZWxlY3RlZEl0ZW1zKCkuZmluZCgoaXRlbTogYW55KSA9PiBpdGVtW2lkTmFtZV0gPT0gcm93RGF0YVtpZE5hbWVdKTtcclxuICAgIGVsc2UgaXNTZWxlY3RlZCA9IHRoaXMuc2VsZWN0ZWRJdGVtKCk/LltpZE5hbWVdID09IHJvd0RhdGFbaWROYW1lXTtcclxuXHJcbiAgICByZXR1cm4gaXNTZWxlY3RlZDtcclxuICB9KVxyXG5cclxuICB0cmFuc2Zvcm1EYXRhID0gY29tcHV0ZWQoKCkgPT4gKHR5cGU6IHN0cmluZywgdmFsdWU6IGFueSkgPT4ge1xyXG4gICAgaWYgKHR5cGUgPT09ICdjcGZjbnBqJykgcmV0dXJuIHRoaXMuY3BmQ25walBpcGUudHJhbnNmb3JtKHZhbHVlKTtcclxuICAgIGlmICh0eXBlID09PSAndGVsZWZvbmUnKSByZXR1cm4gdGhpcy50ZWxlZm9uZVBpcGUudHJhbnNmb3JtKHZhbHVlKTtcclxuICAgIGlmICh0eXBlID09PSAnbW9uZXknKSByZXR1cm4gdGhpcy50cmFuc2Zvcm1Nb25leSh2YWx1ZSk7XHJcbiAgICBpZiAodHlwZSA9PT0gJ2RhdGUnKSByZXR1cm4gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0odmFsdWUsICdkZC9NTS95eXl5JywgJ1VUQycpO1xyXG4gICAgaWYgKHR5cGUgPT09ICdkYXRldGltZScpIHJldHVybiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybSh2YWx1ZSwgJ2RkL01NL3l5eXkgaGg6bW0nKTtcclxuICAgIGlmICh0eXBlID09PSAnZGF0ZU1vbnRoWWVhcicpIHJldHVybiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybSh2YWx1ZSwgJ01NL3l5eXknKTtcclxuXHJcbiAgICBlbHNlIHJldHVybiB2YWx1ZTtcclxuICB9KVxyXG5cclxuICBoYW5kbGVUYWJsZVNpemUgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICBjb25zdCBzZWxlY3RlZEl0ZW1zID0gdGhpcy5zZWxlY3RlZEl0ZW1zKCk7XHJcbiAgICBjb25zdCBzZWxlY3RlZEl0ZW0gPSB0aGlzLnNlbGVjdGVkSXRlbSgpO1xyXG5cclxuICAgIGlmIChzZWxlY3RlZEl0ZW1zLmxlbmd0aCA9PSAwICYmICFzZWxlY3RlZEl0ZW0pXHJcbiAgICAgIHJldHVybiAnY29sLTEyJztcclxuICAgIGVsc2UgcmV0dXJuIHRoaXMudGFibGVWaWV3ZXJTaXplKCk7XHJcbiAgfSlcclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgZWZmZWN0KCgpID0+IHtcclxuICAgICAgdGhpcy5vblNlbGVjdEl0ZW1zLmVtaXQodGhpcy5zZWxlY3RlZEl0ZW1zKCkpO1xyXG4gICAgICB0aGlzLm9uU2VhcmNoLmVtaXQodGhpcy5zZWFyY2hWYWx1ZSgpKTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBoYW5kbGVQYWdlQ2hhbmdlKGV2ZW50OiBUYWJsZVBhZ2VFdmVudCkge1xyXG4gICAgdGhpcy5maXJzdC5zZXQoZXZlbnQuZmlyc3QpO1xyXG4gICAgdGhpcy5vblBhZ2VDaGFuZ2UuZW1pdChldmVudCk7XHJcbiAgfVxyXG5cclxuICByb3dTZWxlY3Qocm93RGF0YTogYW55KSB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RhYmxlVGFibGUoKSkge1xyXG4gICAgICBpZiAodGhpcy5zZWxlY3RlZEl0ZW1zKCkuaW5jbHVkZXMocm93RGF0YSkpXHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zLnVwZGF0ZSgoaXRlbXM6IGFueVtdKSA9PiBpdGVtcy5maWx0ZXIoaXRlbSA9PiBpdGVtICE9PSByb3dEYXRhKSk7XHJcbiAgICAgIGVsc2UgdGhpcy5zZWxlY3RlZEl0ZW1zLnVwZGF0ZSgoaXRlbXM6IGFueVtdKSA9PiBbLi4uaXRlbXMsIHJvd0RhdGFdKTtcclxuXHJcbiAgICAgIGlmICh0aGlzLnNlbGVjdGVkSXRlbXMoKS5sZW5ndGggPT09IDEpXHJcbiAgICAgICAgdGhpcy5vbkNsaWNrUm93SXRlbS5lbWl0KHRoaXMuc2VsZWN0ZWRJdGVtcygpWzBdKTtcclxuICAgICAgZWxzZSB0aGlzLm9uQ2xpY2tSb3dJdGVtLmVtaXQocm93RGF0YSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkSXRlbS5zZXQocm93RGF0YSk7XHJcbiAgICAgIHRoaXMub25DbGlja1Jvd0l0ZW0uZW1pdChyb3dEYXRhKTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICB0cmFuc2Zvcm1Nb25leSh2YWxvcjogbnVtYmVyKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGZvcm1hdHRlciA9IG5ldyBJbnRsLk51bWJlckZvcm1hdCgncHQtQlInLCB7XHJcbiAgICAgIHN0eWxlOiAnY3VycmVuY3knLFxyXG4gICAgICBjdXJyZW5jeTogJ0JSTCcsXHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gZm9ybWF0dGVyLmZvcm1hdCh2YWxvcik7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICBjbGFzcz1cImgtZnVsbCBmbGV4IGZsZXgtcm93IHAtMiBrdi10YWJsZS12aWV3ZXIgb3ZlcmZsb3ctaGlkZGVuIHt7XHJcbiAgICBkYXRhKCkubGVuZ3RoID09IDAgPyAnZW1wdHktdGFibGUnIDogJydcclxuICB9fVwiXHJcbj5cclxuICA8ZGl2XHJcbiAgICBjbGFzcz1cImgtZnVsbCB7eyBoYW5kbGVUYWJsZVNpemUoKSB9fSBtLTAgcC0wIGZsZXggZmxleC1jb2x1bW4gZ2FwLTJcIlxyXG4gICAgW3N0eWxlLnRyYW5zaXRpb25dPVwiJ2FsbCAwLjNzIGVhc2UtaW4tb3V0J1wiXHJcbiAgPlxyXG4gICAgPGRpdlxyXG4gICAgICBjbGFzcz1cImZsZXggZmxleC1yb3cgYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGZsZXgtaW5pdGlhbFwiXHJcbiAgICA+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtMlwiPlxyXG4gICAgICAgIEBpZihzZWFyY2hJbnB1dCgpKSB7XHJcbiAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICBzdHlsZT1cImhlaWdodDogMS44NzVyZW1cIlxyXG4gICAgICAgICAgcGxhY2Vob2xkZXI9XCJQZXNxdWlzYXIuLi5cIlxyXG4gICAgICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICAgICAgcElucHV0VGV4dFxyXG4gICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWFyY2hWYWx1ZVwiXHJcbiAgICAgICAgICBjbGFzcz1cInRleHQteHNcIlxyXG4gICAgICAgIC8+XHJcblxyXG4gICAgICAgIH0gQGlmKGZpbHRlckJ1dHRvbigpKSB7XHJcbiAgICAgICAgPGt2LWJ1dHRvblxyXG4gICAgICAgICAgbGFiZWw9XCJGaWx0cmFyXCJcclxuICAgICAgICAgIGljb249XCJmaWx0ZXJfYWx0XCJcclxuICAgICAgICAgIHNldmVyaXR5PVwidGVydGlhcnlcIlxyXG4gICAgICAgICAgKG9uQ2xpY2spPVwib3AudG9nZ2xlKCRldmVudClcIlxyXG4gICAgICAgID48L2t2LWJ1dHRvbj5cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIDxwLW92ZXJsYXlQYW5lbCAjb3A+XHJcbiAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZmlsdHJvXVwiPiA8L25nLWNvbnRlbnQ+XHJcbiAgICAgICAgPC9wLW92ZXJsYXlQYW5lbD5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGdhcC0yXCI+XHJcbiAgICAgICAgQGlmKGFjdGlvbnNIZWFkZXIoKSkgeyBAZm9yKGFjdGlvbiBvZiBhY3Rpb25zSGVhZGVyKCk7IHRyYWNrICRpbmRleCkge1xyXG4gICAgICAgIDxrdi1idXR0b25cclxuICAgICAgICAgIFtpY29uXT1cImFjdGlvbj8uaWNvbiB8fCAnJ1wiXHJcbiAgICAgICAgICBbbGFiZWxdPVwiYWN0aW9uPy5sYWJlbCB8fCAnJ1wiXHJcbiAgICAgICAgICBbc2V2ZXJpdHldPVwiYWN0aW9uWydzZXZlcml0eSddIHx8ICd0ZXJ0aWFyeSdcIlxyXG4gICAgICAgICAgKG9uQ2xpY2spPVwiYWN0aW9uPy5jb21tYW5kKCRldmVudClcIlxyXG4gICAgICAgID48L2t2LWJ1dHRvbj5cclxuICAgICAgICB9IH0gQGlmKHNlbGVjdGVkSXRlbSgpKSB7XHJcbiAgICAgICAgPGt2LWJ1dHRvblxyXG4gICAgICAgICAgW3BUb29sdGlwXT1cIidSZWNvbGhlcidcIlxyXG4gICAgICAgICAgaWNvbj1cInJlb3JkZXJcIlxyXG4gICAgICAgICAgc2V2ZXJpdHk9XCJ0ZXJ0aWFyeVwiXHJcbiAgICAgICAgICAob25DbGljayk9XCJzZWxlY3RlZEl0ZW0uc2V0KG51bGwpXCJcclxuICAgICAgICA+PC9rdi1idXR0b24+XHJcbiAgICAgICAgfVxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJmbGV4LTEgaC1mdWxsIG92ZXJmbG93LWhpZGRlblwiPlxyXG4gICAgICA8cC10YWJsZVxyXG4gICAgICAgIFt2YWx1ZV09XCJkYXRhKClcIlxyXG4gICAgICAgIFtsYXp5XT1cImxhenkoKVwiXHJcbiAgICAgICAgW3NlbGVjdGlvblBhZ2VPbmx5XT1cInNlbGVjdGlvblBhZ2VPbmx5KClcIlxyXG4gICAgICAgIFtjb2x1bW5zXT1cImNvbHVtbnMoKVwiXHJcbiAgICAgICAgW3BhZ2luYXRvcl09XCJwYWdpbmF0b3IoKVwiXHJcbiAgICAgICAgW3Jvd3NdPVwicm93cygpXCJcclxuICAgICAgICBbdG90YWxSZWNvcmRzXT1cInRvdGFsUmVjb3JkcygpXCJcclxuICAgICAgICBbbG9hZGluZ109XCJsb2FkaW5nKClcIlxyXG4gICAgICAgIFtwYWdlTGlua3NdPVwicGFnZUxpbmtzKClcIlxyXG4gICAgICAgIFtmaXJzdF09XCJmaXJzdCgpXCJcclxuICAgICAgICBbc2Nyb2xsYWJsZV09XCJzY3JvbGxhYmxlKClcIlxyXG4gICAgICAgIHNjcm9sbEhlaWdodD1cImZsZXhcIlxyXG4gICAgICAgIFtzaG93Q3VycmVudFBhZ2VSZXBvcnRdPVwidHJ1ZVwiXHJcbiAgICAgICAgW2N1cnJlbnRQYWdlUmVwb3J0VGVtcGxhdGVdPVwiY3VycmVudFBhZ2VSZXBvcnRUZW1wbGF0ZSgpXCJcclxuICAgICAgICAob25QYWdlKT1cImhhbmRsZVBhZ2VDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgW3Jvd3NQZXJQYWdlT3B0aW9uc109XCJyb3dzUGVyUGFnZU9wdGlvbnMoKVwiXHJcbiAgICAgICAgWyhzZWxlY3Rpb24pXT1cInNlbGVjdGVkSXRlbXNcIlxyXG4gICAgICAgIHN0eWxlQ2xhc3M9XCJwLWRhdGF0YWJsZS1zbSB0ZXh0LXhzIG92ZXJmbG93LXktYXV0byBoLWZ1bGwgZmxleCBmbGV4LWNvbHVtbiBoLWZ1bGxcIlxyXG4gICAgICA+XHJcbiAgICAgICAgQGlmKHNob3dIZWFkZXIoKSkge1xyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIiBsZXQtY29sdW1ucz5cclxuICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgQGlmKHNlbGVjdGFibGVUYWJsZSgpKSB7XHJcbiAgICAgICAgICAgIDx0aCBzdHlsZT1cIndpZHRoOiA0cmVtXCI+PHAtdGFibGVIZWFkZXJDaGVja2JveCAvPjwvdGg+XHJcbiAgICAgICAgICAgIH0gQGZvciAoY29sIG9mIGNvbHVtbnM7IHRyYWNrIGNvbC5maWVsZCkge1xyXG4gICAgICAgICAgICA8dGggW3N0eWxlXT1cInsgd2lkdGg6IGNvbC53aWR0aCB8fCAnYXV0bycgfVwiPnt7IGNvbC5oZWFkZXIgfX08L3RoPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICA8L3RyPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiYm9keVwiIGxldC1yb3dEYXRhIGxldC1jb2x1bW5zPVwiY29sdW1uc1wiPlxyXG4gICAgICAgICAgPHRyXHJcbiAgICAgICAgICAgIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXIge3tcclxuICAgICAgICAgICAgICB2ZXJpZnlJdGVtU2VsZWNpb25hZG8oKShyb3dEYXRhKSAmJiAnYmctZ3JheS0xMDAnXHJcbiAgICAgICAgICAgIH19IGhvdmVyOmJnLWdyYXktMjAwXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgQGlmKHNlbGVjdGFibGVUYWJsZSgpKSB7XHJcbiAgICAgICAgICAgIDx0ZD48cC10YWJsZUNoZWNrYm94IFt2YWx1ZV09XCJyb3dEYXRhXCIgLz48L3RkPlxyXG4gICAgICAgICAgICB9IEBmb3IgKGNvbCBvZiBjb2x1bW5zOyB0cmFjayBjb2wuZmllbGQpIHtcclxuICAgICAgICAgICAgPHRkIChjbGljayk9XCJyb3dTZWxlY3Qocm93RGF0YSlcIj5cclxuICAgICAgICAgICAgICBAaWYoY29sPy50ZW1wbGF0ZSkge1xyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGdhcC0yIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgQGlmIChnZXRDdXN0b21UZW1wbGF0ZSgpKGNvbC50ZW1wbGF0ZS5uYW1lKSkge1xyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxyXG4gICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJnZXRDdXN0b21UZW1wbGF0ZSgpKGNvbC50ZW1wbGF0ZS5uYW1lKVwiXHJcbiAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogcm93RGF0YSB9XCJcclxuICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgfSBAZWxzZSBpZihjb2w/Lmljb24pIHtcclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgdGV4dC1sZ1wiPlxyXG4gICAgICAgICAgICAgICAge3sgY29sLmljb24ocm93RGF0YSkgfX1cclxuICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgfSBAZWxzZSBpZihjb2w/LnRhZykge1xyXG4gICAgICAgICAgICAgIDxrdi10YWdzIFt0YWdzXT1cIltjb2wudGFnKHJvd0RhdGEpXVwiIC8+XHJcbiAgICAgICAgICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgICAgICAge3sgdHJhbnNmb3JtRGF0YSgpKGNvbC5waXBlLCByb3dEYXRhW2NvbC5maWVsZF0pIH19XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICA8L3RyPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJlbXB0eW1lc3NhZ2VcIj5cclxuICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgPHRkIFthdHRyLmNvbHNwYW5dPVwiY29sdW1ucygpLmxlbmd0aCArIDFcIj5cclxuICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInctZnVsbCBoLWZ1bGwgZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlclwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPGltZ1xyXG4gICAgICAgICAgICAgICAgICBbc3JjXT1cImVtcHR5VGFibGVJbWcoKVwiXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaC0xMHJlbSB3LWF1dG9cIlxyXG4gICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgPC9wLXRhYmxlPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXZcclxuICAgIGNsYXNzPVwic2hhZG93LTIgcC0wIG0tMCBjb2wgc2VsZWN0ZWQtaXRlbS1maWVsZCBtbC0yXCJcclxuICAgIFtAc2xpZGVJbk91dF09XCJoYXNTZWxlY3RlZEl0ZW1zKCkgPyAnaS5uJyA6ICdvdXQnXCJcclxuICAgIFtzdHlsZS5vdmVyZmxvd109XCInaGlkZGVuJ1wiXHJcbiAgPlxyXG4gICAgQGlmKHNlbGVjdGVkSXRlbXMoKS5sZW5ndGggPiAxKSB7XHJcbiAgICA8YWN0aW9ucy1sb3RlLWZpZWxkXHJcbiAgICAgIFtzZWxlY3RlZEl0ZW1zXT1cInNlbGVjdGVkSXRlbXMoKVwiXHJcbiAgICAgIFthY3Rpb25zTG90ZV09XCJhY3Rpb25zTG90ZSgpXCJcclxuICAgIC8+XHJcbiAgICB9IEBlbHNlIGlmKHNlbGVjdGVkSXRlbXMoKS5sZW5ndGggPT0gMSB8fCBzZWxlY3RlZEl0ZW0oKSkge1xyXG4gICAgPGRpdiBjbGFzcz1cImJnLWdyYXktMTAwIHctZnVsbCBoLWF1dG8gcC0yIHJlbGF0aXZlXCI+XHJcbiAgICAgIEBpZihhY3Rpb25zUm93KCkpIHtcclxuICAgICAgPGFjdGlvbnMtcm93LW1lbnUgW2FjdGlvbnNSb3ddPVwiYWN0aW9uc1JvdygpXCIgLz5cclxuICAgICAgfVxyXG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbc2VsZWN0ZWRJdGVtSGVhZGVyXVwiPjwvbmctY29udGVudD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInAtMiBvdmVyZmxvdy15LWF1dG8gaC1mdWxsXCI+XHJcbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltzZWxlY3RlZEl0ZW1dXCI+PC9uZy1jb250ZW50PlxyXG4gICAgPC9kaXY+XHJcbiAgICB9XHJcblxyXG4gICAgPCEtLSBAZWxzZSB7IE5lbmh1bSBpdGVtIHNlbGVjaW9uYWRvIH0gLS0+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|
package/esm2022/public-api.mjs
CHANGED
|
@@ -76,6 +76,7 @@ export * from './lib/api/components/dropdown/filtro.combo';
|
|
|
76
76
|
export * from './lib/components/kv-inputs/kv-check/kv-check.component';
|
|
77
77
|
export * from './lib/components/kv-inputs/kv-dropdown/kv-dropdown.component';
|
|
78
78
|
export * from './lib/components/kv-inputs/kv-editor/kv-editor.component';
|
|
79
|
+
export * from './lib/components/kv-inputs/kv-editor/kv-editor';
|
|
79
80
|
export * from './lib/components/kv-inputs/kv-input-calendar/kv-input-calendar.component';
|
|
80
81
|
export * from './lib/components/kv-inputs/kv-input-mask/kv-input-mask.component';
|
|
81
82
|
export * from './lib/components/kv-inputs/kv-input-number/kv-input-number.component';
|
|
@@ -285,4 +286,4 @@ export { KvFilterCardsComponent, mapaSeverityColors } from './lib/components/kv-
|
|
|
285
286
|
*/
|
|
286
287
|
export * from './lib/components/kv-tags/kv-tags.module';
|
|
287
288
|
export { KvTagsComponent } from './lib/components/kv-tags/kv-tags.component';
|
|
288
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSDs7R0FFRztBQUNILGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYywwQ0FBMEMsQ0FBQztBQUV6RDs7R0FFRztBQUNILGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLHFDQUFxQyxDQUFDO0FBRXBEOztHQUVHO0FBQ0gsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLGlDQUFpQyxDQUFDO0FBRWhEOztHQUVHO0FBQ0gsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyx5Q0FBeUMsQ0FBQztBQUl4RDs7R0FFRztBQUNILGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYywwQ0FBMEMsQ0FBQztBQUV6RDs7R0FFRztBQUNILGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsMkNBQTJDLENBQUM7QUFFMUQ7O0dBRUc7QUFDSCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsMkNBQTJDLENBQUM7QUFFMUQ7O0dBRUc7QUFDSCxjQUFjLG1GQUFtRixDQUFDO0FBQ2xHLGNBQWMsdUVBQXVFLENBQUM7QUFDdEYsY0FBYywrRUFBK0UsQ0FBQztBQUM5RixjQUFjLDJFQUEyRSxDQUFDO0FBQzFGLGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLDZDQUE2QyxDQUFDO0FBRTVEOztHQUVHO0FBQ0gsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMsOERBQThELENBQUM7QUFDN0UsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLDBFQUEwRSxDQUFDO0FBQ3pGLGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYyxzRUFBc0UsQ0FBQztBQUNyRixjQUFjLDBFQUEwRSxDQUFDO0FBQ3pGLGNBQWMsb0ZBQW9GLENBQUM7QUFDbkcsY0FBYyxrRUFBa0UsQ0FBQztBQUNqRixjQUFjLDBFQUEwRSxDQUFDO0FBQ3pGLGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLHNFQUFzRSxDQUFDO0FBQ3JGLGNBQWMsb0VBQW9FLENBQUM7QUFDbkYsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLHdFQUF3RSxDQUFDO0FBQ3ZGLGNBQWMsMEVBQTBFLENBQUM7QUFDekYsY0FBYyxnRkFBZ0YsQ0FBQztBQUMvRixjQUFjLDhFQUE4RSxDQUFDO0FBQzdGLGNBQWMsa0ZBQWtGLENBQUM7QUFHakc7O0dBRUc7QUFDSCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyxxQ0FBcUMsQ0FBQztBQUVwRDs7R0FFRztBQUNILGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyxtREFBbUQsQ0FBQztBQUVsRTs7R0FFRztBQUNILGNBQWMsd0VBQXdFLENBQUM7QUFDdkYsY0FBYyxxRUFBcUUsQ0FBQztBQUVwRjs7R0FFRztBQUNILGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMscURBQXFELENBQUM7QUFFcEU7O0dBRUc7QUFDSCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLDJDQUEyQyxDQUFDO0FBRTFEOztHQUVHO0FBQ0gsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLHFEQUFxRCxDQUFDO0FBRXBFOztHQUVHO0FBQ0gsY0FBYyxvRUFBb0UsQ0FBQztBQUNuRixjQUFjLGlFQUFpRSxDQUFDO0FBRWhGOztHQUVHO0FBQ0gsY0FBYyw0REFBNEQsQ0FBQztBQUUzRTs7R0FFRztBQUNILGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyxtREFBbUQsQ0FBQztBQUVsRTs7R0FFRztBQUNILGNBQWMsdURBQXVELENBQUM7QUFDdEUsY0FBYyw2Q0FBNkMsQ0FBQztBQUU1RDs7R0FFRztBQUNILGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYywyQ0FBMkMsQ0FBQztBQUUxRDs7R0FFRztBQUNILGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyxnRUFBZ0UsQ0FBQztBQUUvRTs7R0FFRztBQUNILGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyxtREFBbUQsQ0FBQztBQUVsRTs7R0FFRztBQUNILGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYyx5REFBeUQsQ0FBQztBQUN4RSxjQUFjLCtDQUErQyxDQUFDO0FBRTlEOztHQUVHO0FBQ0gsY0FBYyw4Q0FBOEMsQ0FBQztBQUU3RDs7R0FFRztBQUNILGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLHFEQUFxRCxDQUFDO0FBRXBFOztHQUVHO0FBQ0gsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsOENBQThDLENBQUM7QUFFN0Q7O0dBRUc7QUFDSCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsaURBQWlELENBQUM7QUFFaEU7O0dBRUc7QUFDSCxjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMseURBQXlELENBQUM7QUFDeEUsY0FBYyxvRkFBb0YsQ0FBQztBQUNuRyxjQUFjLGlGQUFpRixDQUFDO0FBRWhHOztHQUVHO0FBQ0gsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLDJDQUEyQyxDQUFDO0FBRTFEOztHQUVHO0FBQ0gsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLCtDQUErQyxDQUFDO0FBRTlEOztHQUVHO0FBQ0gsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLHlEQUF5RCxDQUFDO0FBRXhFOztHQUVHO0FBQ0gsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLHVEQUF1RCxDQUFDO0FBRXRFOztHQUVHO0FBQ0gsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLDZDQUE2QyxDQUFDO0FBRTVEOztHQUVHO0FBQ0gsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLHVEQUF1RCxDQUFDO0FBRXRFOztHQUVHO0FBQ0gsY0FBYyxrRUFBa0UsQ0FBQztBQUNqRixjQUFjLCtEQUErRCxDQUFDO0FBRTlFOztHQUVHO0FBQ0gsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLDZDQUE2QyxDQUFDO0FBRTVEOztHQUVHO0FBQ0gsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLHVEQUF1RCxDQUFDO0FBRXRFOztHQUVHO0FBQ0gsY0FBYyxvRUFBb0UsQ0FBQztBQUNuRixjQUFjLGlFQUFpRSxDQUFDO0FBR2hGOztHQUVHO0FBQ0gsY0FBYyxnRUFBZ0UsQ0FBQztBQUMvRSxjQUFjLDZEQUE2RCxDQUFDO0FBRTVFOztHQUVHO0FBQ0gsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLG1EQUFtRCxDQUFDO0FBRWxFOztHQUVHO0FBQ0gsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxvRkFBb0Y7QUFDcEYsY0FBYyw2Q0FBNkMsQ0FBQztBQUU1RDs7R0FFRztBQUNILGNBQWMsZ0VBQWdFLENBQUM7QUFDL0UsY0FBYyw2REFBNkQsQ0FBQztBQUU1RTs7R0FFRztBQUNILGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyx1Q0FBdUMsQ0FBQztBQUl0RDs7RUFFRTtBQUNGLGNBQWMseURBQXlELENBQUM7QUFDeEUsT0FBTyxFQUFFLHNCQUFzQixFQUFzQixrQkFBa0IsRUFBYyxNQUFNLDREQUE0RCxDQUFDO0FBSXhKOztFQUVFO0FBQ0YsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxPQUFPLEVBQWUsZUFBZSxFQUFFLE1BQU0sNENBQTRDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2Yga2Vldm8tY29tcG9uZW50c1xyXG4gKi9cclxuXHJcbi8qKlxyXG4gKiBDbGFzc2VzIGJhc2UgZGUgY29tcG9uZW50ZXNcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQtYnV0dG9uJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC1jaGFydCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQtY3J1ZC1mb3JtJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC1jcnVkLWxpc3QnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvYmFzZS1jb21wb25lbnRzL2Jhc2UtY29tcG9uZW50LWNydWQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvYmFzZS1jb21wb25lbnRzL2Jhc2UtY29tcG9uZW50LWRyb3Bkb3duLWV4dGVybmFsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC1kcm9wZG93bic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQtaW5wdXQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvYmFzZS1jb21wb25lbnRzL2Jhc2UtY29tcG9uZW50LW11bHRpLXNlbGVjdCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQtdGFibGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvYmFzZS1jb21wb25lbnRzL2Jhc2UtY29tcG9uZW50JztcclxuXHJcbi8qKlxyXG4gKiBIZWxwZXJzXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvaGVscGVycy9jb21wb25lbnQtcHJvdmlkZXJzJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2hlbHBlcnMva2Vldm8tdmFsaWRhdG9ycyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9oZWxwZXJzL3RyYW5zbGF0ZS1wcmltZW5nJztcclxuXHJcbi8qKlxyXG4gKiBQaXBlc1xyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL3BpcGVzL2NwZmNucGoucGlwZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9waXBlcy9tYXNrLnBpcGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvcGlwZXMvcGlwZXMubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL3BpcGVzL3RlbGVmb25lLnBpcGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvcGlwZXMvY2FwaXRhbGl6ZS5waXBlJztcclxuXHJcbi8qKlxyXG4gKiBTZXJ2aWNlc1xyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL3NlcnZpY2VzL2Jhc2UuYXBpLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvc2VydmljZXMvYnJlYWRjcnVtYnMuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9zZXJ2aWNlcy9jb21wb25lbnQuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9zZXJ2aWNlcy9kb2NzLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvc2VydmljZXMvZm9ybS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL3NlcnZpY2VzL2ltYWdlbnMuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9zZXJ2aWNlcy9ub3RpZmljYXRpb24uc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9zZXJ2aWNlcy9vYmplY3Quc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9zZXJ2aWNlcy9jaGF0LnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvc2VydmljZXMvaW1hZ2UuY3V0dGVyLnNlcnZpY2UnO1xyXG5cclxuXHJcblxyXG4vKipcclxuICogUHJpbWVOR1xyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL21vZHVsZXMvcHJpbWVuZy5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2tlZXZvLWNvbXBvbmVudHMubW9kdWxlJztcclxuXHJcbi8qKlxyXG4gKiBDaGFydHNcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9jb21wb25lbnRzL2NoYXJ0L2NoYXJ0LmNvbmZpZyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9jb21wb25lbnRzL2NoYXJ0L2NoYXJ0Lm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1jaGFydC9rdi1jaGFydC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWNoYXJ0L2t2LWNoYXJ0Lm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogRXJyb3JcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtZXJyb3Iva3YtZXJyb3IuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1lcnJvci9rdi1lcnJvci5tb2R1bGUnO1xyXG5cclxuLyoqXHJcbiAqIEJ1dHRvbnNcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtYnV0dG9ucy9rdi1idXR0b24tcGVyc29uYWxpemUva3YtYnV0dG9uLXBlcnNvbmFsaXplLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtYnV0dG9ucy9rdi1idXR0b24tcG9wdXAva3YtYnV0dG9uLXBvcHVwLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtYnV0dG9ucy9rdi1idXR0b24tc2Vjb25kYXJ5L2t2LWJ1dHRvbi1zZWNvbmRhcnkuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1idXR0b25zL2t2LWJ1dHRvbi1zdWNjZXNzL2t2LWJ1dHRvbi1zdWNjZXNzLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtYnV0dG9ucy9rdi1idXR0b24ubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1idXR0b24va3YtYnV0dG9uLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtYnV0dG9uL2t2LWJ1dHRvbi5tb2R1bGUnO1xyXG5cclxuLyoqXHJcbiAqIElucHV0c1xyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2NvbXBvbmVudHMvZHJvcGRvd24vZmlsdHJvLmNvbWJvJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1pbnB1dHMva3YtY2hlY2sva3YtY2hlY2suY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1pbnB1dHMva3YtZHJvcGRvd24va3YtZHJvcGRvd24uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1pbnB1dHMva3YtZWRpdG9yL2t2LWVkaXRvci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1pbnB1dC1jYWxlbmRhci9rdi1pbnB1dC1jYWxlbmRhci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1pbnB1dC1tYXNrL2t2LWlucHV0LW1hc2suY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1pbnB1dHMva3YtaW5wdXQtbnVtYmVyL2t2LWlucHV0LW51bWJlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1pbnB1dC1wYXNzd29yZC9rdi1pbnB1dC1wYXNzd29yZC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1pbnB1dC10ZXh0LWNoZWNrYm94L2t2LWlucHV0LXRleHQtY2hlY2tib3guY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1pbnB1dHMva3YtaW5wdXQtdGV4dC9rdi1pbnB1dC10ZXh0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWlucHV0LXRleHRhcmVhL2t2LWlucHV0LXRleHRhcmVhLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWlucHV0LXRpbWUva3YtaW5wdXQtdGltZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1pbnB1dHMubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1pbnB1dHMva3YtbXVsdGktc2VsZWN0L2t2LW11bHRpLXNlbGVjdC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1yYWRpby1ncm91cC9rdi1yYWRpby1ncm91cC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1zd2l0Y2gva3Ytc3dpdGNoLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LXNlbGVjdC1idXR0b24va3Ytc2VsZWN0LWJ1dHRvbi5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1zZWxlY3QtYnV0dG9ucy9rdi1zZWxlY3QtYnV0dG9ucy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi10cmVlLW11bHRpLXNlbGVjdC9rdi10cmVlLW11bHRpLXNlbGVjdC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1pbnB1dC10ZXh0LWFkZG9uL2t2LWlucHV0LXRleHQtYWRkb24uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1pbnB1dHMva3YtaW5wdXQtbnVtYmVyLWFkZG9uL2t2LWlucHV0LW51bWJlci1hZGRvbi5jb21wb25lbnQnO1xyXG5cclxuXHJcbi8qKlxyXG4gKiBPcmdjaGFydFxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1vcmdjaGFydC9rdi1vcmdjaGFydC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LW9yZ2NoYXJ0L2t2LW9yZ2NoYXJ0Lm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9zZXJ2aWNlcy9vcmdjaGFydC5zZXJ2aWNlJztcclxuXHJcbi8qKlxyXG4gKiBQaWNrbGlzdFxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1waWNrLWxpc3Qva3YtcGljay1saXN0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtcGljay1saXN0L2t2LXBpY2stbGlzdC5tb2R1bGUnO1xyXG5cclxuLyoqXHJcbiAqIENvbmZpcm1hdGlvbk1vZGFsXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWNvbmZpcm1hdGlvbi1tb2RhbC9rdi1jb25maXJtYXRpb24tbW9kYWwuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1jb25maXJtYXRpb24tbW9kYWwva3YtY29uZmlybWF0aW9uLW1vZGFsLm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogVGFibGUgZWRpdFxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2NvbXBvbmVudHMvdGFibGUvdGFibGVkaXQuY29uZmlnJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2NvbXBvbmVudHMvdGFibGUvdGFibGVlZGl0LmNvbmZpZy5jb2x1bW4nO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXRhYmxlLWVkaXQva3YtdGFibGUtZWRpdC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXRhYmxlLWVkaXQva3YtdGFibGUtZWRpdC5tb2R1bGUnO1xyXG5cclxuLyoqXHJcbiAqIFRhYmxlXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvY29tcG9uZW50cy90YWJsZS9hY3Rpb24taXRlbSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9jb21wb25lbnRzL3RhYmxlL2t2LW1lbnVpdGVtJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2NvbXBvbmVudHMvdGFibGUvdGFibGUuY29uZmlnLmNvbHVtbic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbmZpZyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9jb21wb25lbnRzL3RhYmxlL3RhYmxlLnBhZ2luYXRlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi10YWJsZS9rdi10YWJsZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXRhYmxlL2t2LXRhYmxlLm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogVHJlZVRhYmxlXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXRyZWUtdGFibGUva3YtdHJlZS10YWJsZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXRyZWUtdGFibGUva3YtdHJlZS10YWJsZS5tb2R1bGUnO1xyXG5cclxuLyoqXHJcbiAqIFRhYmxlIEV4cGFuZGFibGVcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtdGFibGUtZXhwYW5kYWJsZS9rdi10YWJsZS1leHBhbmRhYmxlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtdGFibGUtZXhwYW5kYWJsZS9rdi10YWJsZS1leHBhbmRhYmxlLm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogVGFibGUgRXhwYW5kYWJsZVxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi10YWJsZS12aWV3ZXIva3YtdGFibGUtdmlld2VyLmNvbXBvbmVudCc7XHJcblxyXG4vKipcclxuICogVHJlZXZpZXdcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtdHJlZS12aWV3L2t2LXRyZWUtdmlldy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXRyZWUtdmlldy9rdi10cmVlLXZpZXcubW9kdWxlJztcclxuXHJcbi8qKlxyXG4gKiBDb21wb25lbnRlIGRlIG1lbnUgKyBsYXlvdXRcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtbGF5b3V0L2xheW91dC9rdi1sYXlvdXQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1sYXlvdXQva3YtbGF5b3V0Lm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogQ29tcG9uZW50ZSBkZSBsb2dpblxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1sb2dpbi9rdi1sb2dpbi5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWxvZ2luL2t2LWxvZ2luLm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogQ29tcG9uZW50ZSBkZSB3b3Jrc3BhY2VzXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXdvcmtzcGFjZS9rdi13b3Jrc3BhY2UubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi13b3Jrc3BhY2Uvd29ya3NwYWNlL2t2LXdvcmtzcGFjZS5jb21wb25lbnQnO1xyXG5cclxuLyoqXHJcbiAqIEZvcm11bMOhcmlvIGJhc2VcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtcGFnZS1mb3JtL2t2LXBhZ2UtZm9ybS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXBhZ2UtZm9ybS9rdi1wYWdlLWZvcm0ubW9kdWxlJztcclxuXHJcbi8qKlxyXG4gKiBQYWdlLVN0ZXBwZXJcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtcGFnZS1zdGVwcGVyL2t2LXBhZ2Utc3RlcHBlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXBhZ2Utc3RlcHBlci9rdi1wYWdlLXN0ZXBwZXIubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2NvbXBvbmVudHMvc3RlcHBlci8va3Ytc3RlcHBlcnBhbmVsJztcclxuXHJcbi8qKlxyXG4gKiBLdi1TdGVwXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXN0ZXBzL2t2LXN0ZXBzLmNvbXBvbmVudCc7XHJcblxyXG4vKipcclxuICogRGlyZXRpdmFzXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvZGlyZWN0aXZlcy90ZW1wbGF0ZS90ZW1wbGF0ZS5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvZGlyZWN0aXZlcy9kcmFnL2RyYWcuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2RpcmVjdGl2ZXMvc3RlcHBlci9keW5hbWljaW5wdXQuZGlyZWN0aXZlJztcclxuXHJcbi8qKlxyXG4gKiBMb2FkZXJcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtbG9hZGVyL2t2LWxvYWRlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWxvYWRlci9rdi1sb2FkZXIubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1sb2FkZXIva3YtbG9hZGVyLnNlcnZpY2UnO1xyXG5cclxuLyoqXHJcbiAqIENhcm91c2VsXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWNhcm91c2VsL2t2LWNhcm91c2VsLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtY2Fyb3VzZWwva3YtY2Fyb3VzZWwubW9kdWxlJztcclxuXHJcbi8qKlxyXG4gKiBQcm9ncmVzcyBCYXJcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtcHJvZ3Jlc3MtYmFyL2t2LXByb2dyZXNzLWJhci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXByb2dyZXNzLWJhci9rdi1wcm9ncmVzcy1iYXIubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1wcm9ncmVzcy1iYXItYWx0ZXJuYXRpdmUva3YtcHJvZ3Jlc3MtYmFyLWFsdGVybmF0aXZlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtcHJvZ3Jlc3MtYmFyLWFsdGVybmF0aXZlL2t2LXByb2dyZXNzLWJhci1hbHRlcm5hdGl2ZS5tb2R1bGUnO1xyXG5cclxuLyoqXHJcbiAqIE1vZGFsXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LW1vZGFsL2t2LW1vZGFsLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtbW9kYWwva3YtbW9kYWwubW9kdWxlJztcclxuXHJcbi8qKlxyXG4gKiBTdGVwcGVyXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXN0ZXBwZXIva3Ytc3RlcHBlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXN0ZXBwZXIva3Ytc3RlcHBlci5tb2R1bGUnO1xyXG5cclxuLyoqXHJcbiAqIEltYWdlIFVwbG9hZFxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1pbWFnZS11cGxvYWQva3YtaW1hZ2UtdXBsb2FkLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW1hZ2UtdXBsb2FkL2t2LWltYWdlLXVwbG9hZC5tb2R1bGUnO1xyXG5cclxuLyoqXHJcbiAqIEZpbGUgVXBsb2FkJ1xyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1maWxlLXVwbG9hZC9rdi1maWxlLXVwbG9hZC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWZpbGUtdXBsb2FkL2t2LWZpbGUtdXBsb2FkLm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogUmVwb3J0XHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXJlcG9ydC9rdi1yZXBvcnQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1yZXBvcnQva3YtcmVwb3J0Lm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogRmlsdGVyIENhcmRcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtZmlsdGVyLWNhcmQva3YtZmlsdGVyLWNhcmQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1maWx0ZXItY2FyZC9rdi1maWx0ZXItY2FyZC5tb2R1bGUnO1xyXG5cclxuLyoqXHJcbiAqIEZpbHRlciBGaWVsZHNldFxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1maWx0ZXItZmllbGRzZXQva3YtZmlsdGVyLWZpZWxkc2V0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtZmlsdGVyLWZpZWxkc2V0L2t2LWZpbHRlci1maWVsZHNldC5tb2R1bGUnO1xyXG5cclxuLyoqXHJcbiAqIEcgaWNvblxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1nLWljb24va3YtZy1pY29uLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtZy1pY29uL2t2LWctaWNvbi5tb2R1bGUnO1xyXG5cclxuLyoqXHJcbiAqIEZpbGUtVmlld2VyXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWZpbGUtdmlld2VyL2t2LWZpbGUtdmlld2VyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtZmlsZS12aWV3ZXIva3YtZmlsZS12aWV3ZXIubW9kdWxlJztcclxuXHJcbi8qKlxyXG4gKiBGaWxlLVZpZXdlciBOb3ZvXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWZpbGUtdmlld2VyLW5vdm8va3YtZmlsZS12aWV3ZXItbm92by5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWZpbGUtdmlld2VyLW5vdm8va3YtZmlsZS12aWV3ZXItbm92by5tb2R1bGUnO1xyXG5cclxuXHJcbi8qKlxyXG4gKiBDb250ZW50LVZpZXdlciBcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtY29udGVudC12aWV3ZXIva3YtY29udGVudC12aWV3ZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1jb250ZW50LXZpZXdlci9rdi1jb250ZW50LXZpZXdlci5tb2R1bGUnO1xyXG5cclxuLyoqXHJcbiAqIENvbXBvbmVudGVzIGNvbXVucyB1dGlsaXphZG9zIG5vIGtlZXhcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaG9tZS1jYXJkL2t2LWhvbWUtY2FyZC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWhvbWUtY2FyZC9rdi1ob21lLWNhcmQubW9kdWxlJztcclxuXHJcbi8qKlxyXG4gKiBBdmF0YXJcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtYXZhdGFyL2t2LWF2YXRhci5jb21wb25lbnQnO1xyXG4vLyBleHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWF2YXRhci9rdi1jcm9wLWltYWdlL2t2LWNyb3AtaW1hZ2UuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1hdmF0YXIva3YtYXZhdGFyLm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogQ2FyZCBTZWxlY3Rpb25cclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtY2FyZC1zZWxlY3Rpb24va3YtY2FyZC1zZWxlY3Rpb24uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1jYXJkLXNlbGVjdGlvbi9rdi1jYXJkLXNlbGVjdGlvbi5tb2R1bGUnO1xyXG5cclxuLyoqXHJcbiAqIFRBR1xyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi10YWcva3YtdGFnLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtdGFnL2t2LXRhZy5tb2R1bGUnO1xyXG5cclxuXHJcblxyXG4vKipcclxuICogRmlsdGVyIENhcmRzXHJcbiovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtZmlsdGVyLWNhcmRzL2t2LWZpbHRlci1jYXJkcy5tb2R1bGUnO1xyXG5leHBvcnQgeyBLdkZpbHRlckNhcmRzQ29tcG9uZW50LCBLdkZpbHRlckNhcmRDb25maWcsIG1hcGFTZXZlcml0eUNvbG9ycywgS3ZTZXZlcml0eSB9IGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtZmlsdGVyLWNhcmRzL2t2LWZpbHRlci1jYXJkcy5jb21wb25lbnQnO1xyXG5cclxuXHJcblxyXG4vKipcclxuICogVGFnc1xyXG4qL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXRhZ3Mva3YtdGFncy5tb2R1bGUnO1xyXG5leHBvcnQgeyBLdlRhZ0NvbmZpZywgS3ZUYWdzQ29tcG9uZW50IH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi10YWdzL2t2LXRhZ3MuY29tcG9uZW50JztcclxuIl19
|
|
289
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSDs7R0FFRztBQUNILGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYywwQ0FBMEMsQ0FBQztBQUV6RDs7R0FFRztBQUNILGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLHFDQUFxQyxDQUFDO0FBRXBEOztHQUVHO0FBQ0gsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLGlDQUFpQyxDQUFDO0FBRWhEOztHQUVHO0FBQ0gsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyx5Q0FBeUMsQ0FBQztBQUl4RDs7R0FFRztBQUNILGNBQWMsa0NBQWtDLENBQUM7QUFD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LGNBQWMsdURBQXVELENBQUM7QUFFdEU7O0dBRUc7QUFDSCxjQUFjLG9FQUFvRSxDQUFDO0FBQ25GLGNBQWMsaUVBQWlFLENBQUM7QUFHaEY7O0dBRUc7QUFDSCxjQUFjLGdFQUFnRSxDQUFDO0FBQy9FLGNBQWMsNkRBQTZELENBQUM7QUFFNUU7O0dBRUc7QUFDSCxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsbURBQW1ELENBQUM7QUFFbEU7O0dBRUc7QUFDSCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELG9GQUFvRjtBQUNwRixjQUFjLDZDQUE2QyxDQUFDO0FBRTVEOztHQUVHO0FBQ0gsY0FBYyxnRUFBZ0UsQ0FBQztBQUMvRSxjQUFjLDZEQUE2RCxDQUFDO0FBRTVFOztHQUVHO0FBQ0gsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLHVDQUF1QyxDQUFDO0FBSXREOztFQUVFO0FBQ0YsY0FBYyx5REFBeUQsQ0FBQztBQUN4RSxPQUFPLEVBQUUsc0JBQXNCLEVBQXNCLGtCQUFrQixFQUFjLE1BQU0sNERBQTRELENBQUM7QUFJeEo7O0VBRUU7QUFDRixjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELE9BQU8sRUFBZSxlQUFlLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBrZWV2by1jb21wb25lbnRzXHJcbiAqL1xyXG5cclxuLyoqXHJcbiAqIENsYXNzZXMgYmFzZSBkZSBjb21wb25lbnRlc1xyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC1idXR0b24nO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvYmFzZS1jb21wb25lbnRzL2Jhc2UtY29tcG9uZW50LWNoYXJ0JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC1jcnVkLWZvcm0nO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvYmFzZS1jb21wb25lbnRzL2Jhc2UtY29tcG9uZW50LWNydWQtbGlzdCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQtY3J1ZCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQtZHJvcGRvd24tZXh0ZXJuYWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvYmFzZS1jb21wb25lbnRzL2Jhc2UtY29tcG9uZW50LWRyb3Bkb3duJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC1pbnB1dCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQtbXVsdGktc2VsZWN0JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2Jhc2UtY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC10YWJsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQnO1xyXG5cclxuLyoqXHJcbiAqIEhlbHBlcnNcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9oZWxwZXJzL2NvbXBvbmVudC1wcm92aWRlcnMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvaGVscGVycy9rZWV2by12YWxpZGF0b3JzJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2hlbHBlcnMvdHJhbnNsYXRlLXByaW1lbmcnO1xyXG5cclxuLyoqXHJcbiAqIFBpcGVzXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvcGlwZXMvY3BmY25wai5waXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL3BpcGVzL21hc2sucGlwZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9waXBlcy9waXBlcy5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvcGlwZXMvdGVsZWZvbmUucGlwZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9waXBlcy9jYXBpdGFsaXplLnBpcGUnO1xyXG5cclxuLyoqXHJcbiAqIFNlcnZpY2VzXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvc2VydmljZXMvYmFzZS5hcGkuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9zZXJ2aWNlcy9icmVhZGNydW1icy5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL3NlcnZpY2VzL2NvbXBvbmVudC5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL3NlcnZpY2VzL2RvY3Muc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9zZXJ2aWNlcy9mb3JtLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvc2VydmljZXMvaW1hZ2Vucy5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL3NlcnZpY2VzL25vdGlmaWNhdGlvbi5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL3NlcnZpY2VzL29iamVjdC5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL3NlcnZpY2VzL2NoYXQuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9zZXJ2aWNlcy9pbWFnZS5jdXR0ZXIuc2VydmljZSc7XHJcblxyXG5cclxuXHJcbi8qKlxyXG4gKiBQcmltZU5HXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvbW9kdWxlcy9wcmltZW5nLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva2Vldm8tY29tcG9uZW50cy5tb2R1bGUnO1xyXG5cclxuLyoqXHJcbiAqIENoYXJ0c1xyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2NvbXBvbmVudHMvY2hhcnQvY2hhcnQuY29uZmlnJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2NvbXBvbmVudHMvY2hhcnQvY2hhcnQubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWNoYXJ0L2t2LWNoYXJ0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtY2hhcnQva3YtY2hhcnQubW9kdWxlJztcclxuXHJcbi8qKlxyXG4gKiBFcnJvclxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1lcnJvci9rdi1lcnJvci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWVycm9yL2t2LWVycm9yLm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogQnV0dG9uc1xyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1idXR0b25zL2t2LWJ1dHRvbi1wZXJzb25hbGl6ZS9rdi1idXR0b24tcGVyc29uYWxpemUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1idXR0b25zL2t2LWJ1dHRvbi1wb3B1cC9rdi1idXR0b24tcG9wdXAuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1idXR0b25zL2t2LWJ1dHRvbi1zZWNvbmRhcnkva3YtYnV0dG9uLXNlY29uZGFyeS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWJ1dHRvbnMva3YtYnV0dG9uLXN1Y2Nlc3Mva3YtYnV0dG9uLXN1Y2Nlc3MuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1idXR0b25zL2t2LWJ1dHRvbi5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWJ1dHRvbi9rdi1idXR0b24uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1idXR0b24va3YtYnV0dG9uLm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogSW5wdXRzXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvY29tcG9uZW50cy9kcm9wZG93bi9maWx0cm8uY29tYm8nO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1jaGVjay9rdi1jaGVjay5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1kcm9wZG93bi9rdi1kcm9wZG93bi5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1lZGl0b3Iva3YtZWRpdG9yLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWVkaXRvci9rdi1lZGl0b3InXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWlucHV0LWNhbGVuZGFyL2t2LWlucHV0LWNhbGVuZGFyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWlucHV0LW1hc2sva3YtaW5wdXQtbWFzay5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1pbnB1dC1udW1iZXIva3YtaW5wdXQtbnVtYmVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWlucHV0LXBhc3N3b3JkL2t2LWlucHV0LXBhc3N3b3JkLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWlucHV0LXRleHQtY2hlY2tib3gva3YtaW5wdXQtdGV4dC1jaGVja2JveC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1pbnB1dC10ZXh0L2t2LWlucHV0LXRleHQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1pbnB1dHMva3YtaW5wdXQtdGV4dGFyZWEva3YtaW5wdXQtdGV4dGFyZWEuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1pbnB1dHMva3YtaW5wdXQtdGltZS9rdi1pbnB1dC10aW1lLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWlucHV0cy5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1tdWx0aS1zZWxlY3Qva3YtbXVsdGktc2VsZWN0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LXJhZGlvLWdyb3VwL2t2LXJhZGlvLWdyb3VwLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LXN3aXRjaC9rdi1zd2l0Y2guY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1pbnB1dHMva3Ytc2VsZWN0LWJ1dHRvbi9rdi1zZWxlY3QtYnV0dG9uLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LXNlbGVjdC1idXR0b25zL2t2LXNlbGVjdC1idXR0b25zLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LXRyZWUtbXVsdGktc2VsZWN0L2t2LXRyZWUtbXVsdGktc2VsZWN0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaW5wdXRzL2t2LWlucHV0LXRleHQtYWRkb24va3YtaW5wdXQtdGV4dC1hZGRvbi5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWlucHV0cy9rdi1pbnB1dC1udW1iZXItYWRkb24va3YtaW5wdXQtbnVtYmVyLWFkZG9uLmNvbXBvbmVudCc7XHJcblxyXG5cclxuLyoqXHJcbiAqIE9yZ2NoYXJ0XHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LW9yZ2NoYXJ0L2t2LW9yZ2NoYXJ0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3Ytb3JnY2hhcnQva3Ytb3JnY2hhcnQubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL3NlcnZpY2VzL29yZ2NoYXJ0LnNlcnZpY2UnO1xyXG5cclxuLyoqXHJcbiAqIFBpY2tsaXN0XHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXBpY2stbGlzdC9rdi1waWNrLWxpc3QuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1waWNrLWxpc3Qva3YtcGljay1saXN0Lm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogQ29uZmlybWF0aW9uTW9kYWxcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtY29uZmlybWF0aW9uLW1vZGFsL2t2LWNvbmZpcm1hdGlvbi1tb2RhbC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWNvbmZpcm1hdGlvbi1tb2RhbC9rdi1jb25maXJtYXRpb24tbW9kYWwubW9kdWxlJztcclxuXHJcbi8qKlxyXG4gKiBUYWJsZSBlZGl0XHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvY29tcG9uZW50cy90YWJsZS90YWJsZWRpdC5jb25maWcnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvY29tcG9uZW50cy90YWJsZS90YWJsZWVkaXQuY29uZmlnLmNvbHVtbic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtdGFibGUtZWRpdC9rdi10YWJsZS1lZGl0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtdGFibGUtZWRpdC9rdi10YWJsZS1lZGl0Lm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogVGFibGVcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9jb21wb25lbnRzL3RhYmxlL2FjdGlvbi1pdGVtJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2NvbXBvbmVudHMvdGFibGUva3YtbWVudWl0ZW0nO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvY29tcG9uZW50cy90YWJsZS90YWJsZS5jb25maWcuY29sdW1uJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2NvbXBvbmVudHMvdGFibGUvdGFibGUuY29uZmlnJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpL2NvbXBvbmVudHMvdGFibGUvdGFibGUucGFnaW5hdGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXRhYmxlL2t2LXRhYmxlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtdGFibGUva3YtdGFibGUubW9kdWxlJztcclxuXHJcbi8qKlxyXG4gKiBUcmVlVGFibGVcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtdHJlZS10YWJsZS9rdi10cmVlLXRhYmxlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtdHJlZS10YWJsZS9rdi10cmVlLXRhYmxlLm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogVGFibGUgRXhwYW5kYWJsZVxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi10YWJsZS1leHBhbmRhYmxlL2t2LXRhYmxlLWV4cGFuZGFibGUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi10YWJsZS1leHBhbmRhYmxlL2t2LXRhYmxlLWV4cGFuZGFibGUubW9kdWxlJztcclxuXHJcbi8qKlxyXG4gKiBUYWJsZSBFeHBhbmRhYmxlXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXRhYmxlLXZpZXdlci9rdi10YWJsZS12aWV3ZXIuY29tcG9uZW50JztcclxuXHJcbi8qKlxyXG4gKiBUcmVldmlld1xyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi10cmVlLXZpZXcva3YtdHJlZS12aWV3LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtdHJlZS12aWV3L2t2LXRyZWUtdmlldy5tb2R1bGUnO1xyXG5cclxuLyoqXHJcbiAqIENvbXBvbmVudGUgZGUgbWVudSArIGxheW91dFxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1sYXlvdXQvbGF5b3V0L2t2LWxheW91dC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWxheW91dC9rdi1sYXlvdXQubW9kdWxlJztcclxuXHJcbi8qKlxyXG4gKiBDb21wb25lbnRlIGRlIGxvZ2luXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWxvZ2luL2t2LWxvZ2luLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtbG9naW4va3YtbG9naW4ubW9kdWxlJztcclxuXHJcbi8qKlxyXG4gKiBDb21wb25lbnRlIGRlIHdvcmtzcGFjZXNcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3Ytd29ya3NwYWNlL2t2LXdvcmtzcGFjZS5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXdvcmtzcGFjZS93b3Jrc3BhY2Uva3Ytd29ya3NwYWNlLmNvbXBvbmVudCc7XHJcblxyXG4vKipcclxuICogRm9ybXVsw6FyaW8gYmFzZVxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1wYWdlLWZvcm0va3YtcGFnZS1mb3JtLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtcGFnZS1mb3JtL2t2LXBhZ2UtZm9ybS5tb2R1bGUnO1xyXG5cclxuLyoqXHJcbiAqIFBhZ2UtU3RlcHBlclxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1wYWdlLXN0ZXBwZXIva3YtcGFnZS1zdGVwcGVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtcGFnZS1zdGVwcGVyL2t2LXBhZ2Utc3RlcHBlci5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvY29tcG9uZW50cy9zdGVwcGVyLy9rdi1zdGVwcGVycGFuZWwnO1xyXG5cclxuLyoqXHJcbiAqIEt2LVN0ZXBcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3Ytc3RlcHMva3Ytc3RlcHMuY29tcG9uZW50JztcclxuXHJcbi8qKlxyXG4gKiBEaXJldGl2YXNcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9kaXJlY3RpdmVzL3RlbXBsYXRlL3RlbXBsYXRlLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS9kaXJlY3RpdmVzL2RyYWcvZHJhZy5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hcGkvZGlyZWN0aXZlcy9zdGVwcGVyL2R5bmFtaWNpbnB1dC5kaXJlY3RpdmUnO1xyXG5cclxuLyoqXHJcbiAqIExvYWRlclxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1sb2FkZXIva3YtbG9hZGVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtbG9hZGVyL2t2LWxvYWRlci5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWxvYWRlci9rdi1sb2FkZXIuc2VydmljZSc7XHJcblxyXG4vKipcclxuICogQ2Fyb3VzZWxcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtY2Fyb3VzZWwva3YtY2Fyb3VzZWwuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1jYXJvdXNlbC9rdi1jYXJvdXNlbC5tb2R1bGUnO1xyXG5cclxuLyoqXHJcbiAqIFByb2dyZXNzIEJhclxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1wcm9ncmVzcy1iYXIva3YtcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtcHJvZ3Jlc3MtYmFyL2t2LXByb2dyZXNzLWJhci5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXByb2dyZXNzLWJhci1hbHRlcm5hdGl2ZS9rdi1wcm9ncmVzcy1iYXItYWx0ZXJuYXRpdmUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1wcm9ncmVzcy1iYXItYWx0ZXJuYXRpdmUva3YtcHJvZ3Jlc3MtYmFyLWFsdGVybmF0aXZlLm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogTW9kYWxcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtbW9kYWwva3YtbW9kYWwuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1tb2RhbC9rdi1tb2RhbC5tb2R1bGUnO1xyXG5cclxuLyoqXHJcbiAqIFN0ZXBwZXJcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3Ytc3RlcHBlci9rdi1zdGVwcGVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3Ytc3RlcHBlci9rdi1zdGVwcGVyLm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogSW1hZ2UgVXBsb2FkXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWltYWdlLXVwbG9hZC9rdi1pbWFnZS11cGxvYWQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1pbWFnZS11cGxvYWQva3YtaW1hZ2UtdXBsb2FkLm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogRmlsZSBVcGxvYWQnXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWZpbGUtdXBsb2FkL2t2LWZpbGUtdXBsb2FkLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtZmlsZS11cGxvYWQva3YtZmlsZS11cGxvYWQubW9kdWxlJztcclxuXHJcbi8qKlxyXG4gKiBSZXBvcnRcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtcmVwb3J0L2t2LXJlcG9ydC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXJlcG9ydC9rdi1yZXBvcnQubW9kdWxlJztcclxuXHJcbi8qKlxyXG4gKiBGaWx0ZXIgQ2FyZFxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1maWx0ZXItY2FyZC9rdi1maWx0ZXItY2FyZC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWZpbHRlci1jYXJkL2t2LWZpbHRlci1jYXJkLm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogRmlsdGVyIEZpZWxkc2V0XHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWZpbHRlci1maWVsZHNldC9rdi1maWx0ZXItZmllbGRzZXQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1maWx0ZXItZmllbGRzZXQva3YtZmlsdGVyLWZpZWxkc2V0Lm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogRyBpY29uXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWctaWNvbi9rdi1nLWljb24uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1nLWljb24va3YtZy1pY29uLm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogRmlsZS1WaWV3ZXJcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtZmlsZS12aWV3ZXIva3YtZmlsZS12aWV3ZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1maWxlLXZpZXdlci9rdi1maWxlLXZpZXdlci5tb2R1bGUnO1xyXG5cclxuLyoqXHJcbiAqIEZpbGUtVmlld2VyIE5vdm9cclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtZmlsZS12aWV3ZXItbm92by9rdi1maWxlLXZpZXdlci1ub3ZvLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtZmlsZS12aWV3ZXItbm92by9rdi1maWxlLXZpZXdlci1ub3ZvLm1vZHVsZSc7XHJcblxyXG5cclxuLyoqXHJcbiAqIENvbnRlbnQtVmlld2VyIFxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1jb250ZW50LXZpZXdlci9rdi1jb250ZW50LXZpZXdlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWNvbnRlbnQtdmlld2VyL2t2LWNvbnRlbnQtdmlld2VyLm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogQ29tcG9uZW50ZXMgY29tdW5zIHV0aWxpemFkb3Mgbm8ga2VleFxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1ob21lLWNhcmQva3YtaG9tZS1jYXJkLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtaG9tZS1jYXJkL2t2LWhvbWUtY2FyZC5tb2R1bGUnO1xyXG5cclxuLyoqXHJcbiAqIEF2YXRhclxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1hdmF0YXIva3YtYXZhdGFyLmNvbXBvbmVudCc7XHJcbi8vIGV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtYXZhdGFyL2t2LWNyb3AtaW1hZ2Uva3YtY3JvcC1pbWFnZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWF2YXRhci9rdi1hdmF0YXIubW9kdWxlJztcclxuXHJcbi8qKlxyXG4gKiBDYXJkIFNlbGVjdGlvblxyXG4gKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1jYXJkLXNlbGVjdGlvbi9rdi1jYXJkLXNlbGVjdGlvbi5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LWNhcmQtc2VsZWN0aW9uL2t2LWNhcmQtc2VsZWN0aW9uLm1vZHVsZSc7XHJcblxyXG4vKipcclxuICogVEFHXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXRhZy9rdi10YWcuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi10YWcva3YtdGFnLm1vZHVsZSc7XHJcblxyXG5cclxuXHJcbi8qKlxyXG4gKiBGaWx0ZXIgQ2FyZHNcclxuKi9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1maWx0ZXItY2FyZHMva3YtZmlsdGVyLWNhcmRzLm1vZHVsZSc7XHJcbmV4cG9ydCB7IEt2RmlsdGVyQ2FyZHNDb21wb25lbnQsIEt2RmlsdGVyQ2FyZENvbmZpZywgbWFwYVNldmVyaXR5Q29sb3JzLCBLdlNldmVyaXR5IH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9rdi1maWx0ZXItY2FyZHMva3YtZmlsdGVyLWNhcmRzLmNvbXBvbmVudCc7XHJcblxyXG5cclxuXHJcbi8qKlxyXG4gKiBUYWdzXHJcbiovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMva3YtdGFncy9rdi10YWdzLm1vZHVsZSc7XHJcbmV4cG9ydCB7IEt2VGFnQ29uZmlnLCBLdlRhZ3NDb21wb25lbnQgfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2t2LXRhZ3Mva3YtdGFncy5jb21wb25lbnQnO1xyXG4iXX0=
|