@huntsman-cancer-institute/cod 17.0.8 → 17.1.0

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.
@@ -1,7 +1,7 @@
1
- import { Component, ElementRef, Renderer2 } from "@angular/core";
2
- import { NgbModal } from "@ng-bootstrap/ng-bootstrap";
3
- import { AttributeBase } from "./attribute-base";
4
- import { AttributeService } from "../services/attribute.service";
1
+ import { Component, ElementRef, Renderer2 } from '@angular/core';
2
+ import { NgbModal } from '@ng-bootstrap/ng-bootstrap';
3
+ import { AttributeBase } from './attribute-base';
4
+ import { AttributeService } from '../services/attribute.service';
5
5
  import * as i0 from "@angular/core";
6
6
  import * as i1 from "../services/attribute.service";
7
7
  import * as i2 from "@ng-bootstrap/ng-bootstrap";
@@ -11,8 +11,8 @@ import * as i5 from "@angular/forms";
11
11
  import * as i6 from "@angular/material/datepicker";
12
12
  import * as i7 from "@angular-material-components/datetime-picker";
13
13
  /**
14
- * This component is specifically designed to exist in a modal for editing. This is different from the flex attribute
15
- * because components such as the grid need extra configuration for editing.
14
+ * This component is specifically designed to exist in a modal for editing.
15
+ * This is different from the flex attribute because components such as the grid need extra configuration for editing.
16
16
  */
17
17
  export class AttributeEditComponent extends AttributeBase {
18
18
  //dictionaryEndpoint = this.attributeService.dictionaryEndpoint;
@@ -22,8 +22,8 @@ export class AttributeEditComponent extends AttributeBase {
22
22
  init() {
23
23
  super.init();
24
24
  }
25
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: AttributeEditComponent, deps: [{ token: i1.AttributeService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.NgbModal }], target: i0.ɵɵFactoryTarget.Component }); }
26
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: AttributeEditComponent, selector: "hci-attribute-edit", usesInheritance: true, ngImport: i0, template: `
25
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AttributeEditComponent, deps: [{ token: i1.AttributeService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.NgbModal }], target: i0.ɵɵFactoryTarget.Component }); }
26
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: AttributeEditComponent, selector: "hci-attribute-edit", usesInheritance: true, ngImport: i0, template: `
27
27
  <!-- String -->
28
28
  <ng-container *ngIf="attribute.codeAttributeDataType === 'S'">
29
29
  <div #attributeRef
@@ -50,14 +50,19 @@ export class AttributeEditComponent extends AttributeBase {
50
50
  {{attribute.displayName}}
51
51
  </div>
52
52
  <div class="d-flex col-md-6">
53
- <input #inputRef
53
+
54
+ <textarea
55
+ #inputRef
54
56
  type="text"
55
57
  spellcheck="spellcheck"
56
58
  lang="en"
57
59
  [ngModel]="attributeValues[0].valueLongText.textData"
58
60
  (ngModelChange)="valueTextChange($event)"
59
61
  [disabled]="!editInline || attribute.isCalculated === 'Y'"
60
- />
62
+ style="width: 500px; height: 125px; resize: none;"
63
+ >
64
+ </textarea>
65
+
61
66
  </div>
62
67
  </div>
63
68
  </ng-container>
@@ -202,7 +207,8 @@ export class AttributeEditComponent extends AttributeBase {
202
207
  {{attribute.displayName}}
203
208
  </div>
204
209
  <div class="d-flex col-md-6">
205
- <select [ngModel]="(attributeValues[0].valueAttributeChoice)?attributeValues[0].valueAttributeChoice.idAttributeChoice:undefined"
210
+ <select
211
+ [ngModel]="(attributeValues[0].valueAttributeChoice)?attributeValues[0].valueAttributeChoice.idAttributeChoice:undefined"
206
212
  (ngModelChange)="valueChoiceChange($event)"
207
213
  class="edit-renderer">
208
214
  <option [ngValue]="undefined"></option>
@@ -345,9 +351,9 @@ export class AttributeEditComponent extends AttributeBase {
345
351
  </ng-template>
346
352
  `, isInline: true, styles: [".hci-cod button.mat-icon-button.mat-button-base{height:20px;width:20px;line-height:unset}.btn-ga{padding:0;height:18px;width:18px}.ga-icon{font-size:.9em;vertical-align:top}.hci-cod .mat-datepicker-toggle-default-icon{height:20px;width:20px}\n"], dependencies: [{ kind: "component", type: i3.AgGridAngular, selector: "ag-grid-angular", inputs: ["gridOptions", "modules", "statusBar", "sideBar", "suppressContextMenu", "preventDefaultOnContextMenu", "allowContextMenuWithControlKey", "suppressMenuHide", "enableBrowserTooltips", "tooltipShowDelay", "tooltipHideDelay", "tooltipMouseTrack", "popupParent", "copyHeadersToClipboard", "copyGroupHeadersToClipboard", "clipboardDelimiter", "suppressCopyRowsToClipboard", "suppressCopySingleCellRanges", "suppressLastEmptyLineOnPaste", "suppressClipboardPaste", "suppressClipboardApi", "columnDefs", "defaultColDef", "defaultColGroupDef", "columnTypes", "maintainColumnOrder", "suppressFieldDotNotation", "deltaColumnMode", "applyColumnDefOrder", "immutableColumns", "suppressSetColumnStateEvents", "suppressColumnStateEvents", "colWidth", "minColWidth", "maxColWidth", "headerHeight", "groupHeaderHeight", "floatingFiltersHeight", "pivotHeaderHeight", "pivotGroupHeaderHeight", "allowDragFromColumnsToolPanel", "suppressMovableColumns", "suppressColumnMoveAnimation", "suppressDragLeaveHidesColumns", "suppressRowGroupHidesColumns", "colResizeDefault", "suppressAutoSize", "autoSizePadding", "skipHeaderOnAutoSize", "components", "frameworkComponents", "editType", "singleClickEdit", "suppressClickEdit", "readOnlyEdit", "stopEditingWhenCellsLoseFocus", "enterMovesDown", "enterMovesDownAfterEdit", "enableCellEditingOnBackspace", "undoRedoCellEditing", "undoRedoCellEditingLimit", "stopEditingWhenGridLosesFocus", "defaultCsvExportParams", "suppressCsvExport", "defaultExcelExportParams", "suppressExcelExport", "excelStyles", "defaultExportParams", "quickFilterText", "cacheQuickFilter", "excludeChildrenWhenTreeDataFiltering", "enableCharts", "chartThemes", "customChartThemes", "chartThemeOverrides", "enableChartToolPanelsButton", "chartToolPanelsDef", "loadingCellRenderer", "loadingCellRendererFramework", "loadingCellRendererParams", "loadingCellRendererSelector", "localeText", "masterDetail", "keepDetailRows", "keepDetailRowsCount", "detailCellRenderer", "detailCellRendererFramework", "detailCellRendererParams", "detailRowHeight", "detailRowAutoHeight", "context", "alignedGrids", "tabIndex", "rowBuffer", "valueCache", "valueCacheNeverExpires", "enableCellExpressions", "suppressParentsInRowNodes", "suppressTouch", "suppressFocusAfterRefresh", "suppressAsyncEvents", "suppressBrowserResizeObserver", "suppressPropertyNamesCheck", "suppressChangeDetection", "debug", "overlayLoadingTemplate", "loadingOverlayComponent", "loadingOverlayComponentFramework", "loadingOverlayComponentParams", "suppressLoadingOverlay", "overlayNoRowsTemplate", "noRowsOverlayComponent", "noRowsOverlayComponentFramework", "noRowsOverlayComponentParams", "suppressNoRowsOverlay", "pagination", "paginationPageSize", "paginationAutoPageSize", "paginateChildRows", "suppressPaginationPanel", "pivotMode", "pivotPanelShow", "pivotColumnGroupTotals", "pivotRowTotals", "pivotSuppressAutoColumn", "suppressExpandablePivotGroups", "functionsReadOnly", "aggFuncs", "suppressAggFuncInHeader", "suppressAggAtRootLevel", "aggregateOnlyChangedColumns", "suppressAggFilteredOnly", "removePivotHeaderRowWhenSingleValueColumn", "animateRows", "enableCellChangeFlash", "cellFlashDelay", "cellFadeDelay", "allowShowChangeAfterFilter", "domLayout", "ensureDomOrder", "enableRtl", "suppressColumnVirtualisation", "suppressMaxRenderedRowRestriction", "suppressRowVirtualisation", "rowDragManaged", "suppressRowDrag", "suppressMoveWhenRowDragging", "rowDragEntireRow", "rowDragMultiRow", "rowDragText", "fullWidthCellRenderer", "fullWidthCellRendererFramework", "fullWidthCellRendererParams", "embedFullWidthRows", "deprecatedEmbedFullWidthRows", "groupDisplayType", "groupDefaultExpanded", "autoGroupColumnDef", "groupMaintainOrder", "groupSelectsChildren", "groupAggFiltering", "groupIncludeFooter", "groupIncludeTotalFooter", "groupSuppressBlankHeader", "groupSelectsFiltered", "showOpenedGroup", "groupRemoveSingleChildren", "groupRemoveLowestSingleChildren", "groupHideOpenParents", "rowGroupPanelShow", "groupRowRenderer", "groupRowRendererFramework", "groupRowRendererParams", "suppressMakeColumnVisibleAfterUnGroup", "treeData", "rowGroupPanelSuppressSort", "groupRowsSticky", "groupRowInnerRenderer", "groupRowInnerRendererFramework", "groupMultiAutoColumn", "groupUseEntireRow", "groupSuppressAutoColumn", "rememberGroupStateWhenNewData", "pinnedTopRowData", "pinnedBottomRowData", "rowModelType", "rowData", "immutableData", "asyncTransactionWaitMillis", "suppressModelUpdateAfterUpdateTransaction", "deltaRowDataMode", "batchUpdateWaitMillis", "datasource", "cacheOverflowSize", "infiniteInitialRowCount", "serverSideInitialRowCount", "serverSideStoreType", "serverSideInfiniteScroll", "cacheBlockSize", "maxBlocksInCache", "maxConcurrentDatasourceRequests", "blockLoadDebounceMillis", "purgeClosedRowNodes", "serverSideDatasource", "serverSideSortAllLevels", "serverSideFilterAllLevels", "serverSideSortOnServer", "serverSideFilterOnServer", "serverSideSortingAlwaysResets", "serverSideFilteringAlwaysResets", "suppressEnterpriseResetOnNewColumns", "viewportDatasource", "viewportRowModelPageSize", "viewportRowModelBufferSize", "alwaysShowHorizontalScroll", "alwaysShowVerticalScroll", "debounceVerticalScrollbar", "suppressHorizontalScroll", "suppressScrollOnNewData", "suppressScrollWhenPopupsAreOpen", "suppressAnimationFrame", "suppressMiddleClickScrolls", "suppressPreventDefaultOnMouseWheel", "scrollbarWidth", "rowSelection", "rowMultiSelectWithClick", "suppressRowDeselection", "suppressRowClickSelection", "suppressCellSelection", "suppressCellFocus", "suppressMultiRangeSelection", "enableCellTextSelection", "enableRangeSelection", "enableRangeHandle", "enableFillHandle", "fillHandleDirection", "suppressClearOnFillReduction", "sortingOrder", "accentedSort", "unSortIcon", "suppressMultiSort", "alwaysMultiSort", "multiSortKey", "suppressMaintainUnsortedOrder", "icons", "rowHeight", "rowStyle", "rowClass", "rowClassRules", "suppressRowHoverHighlight", "suppressRowTransform", "columnHoverHighlight", "deltaSort", "treeDataDisplayType", "angularCompileRows", "angularCompileFilters", "functionsPassive", "enableGroupEdit", "getContextMenuItems", "getMainMenuItems", "postProcessPopup", "processCellForClipboard", "processHeaderForClipboard", "processGroupHeaderForClipboard", "processCellFromClipboard", "sendToClipboard", "processDataFromClipboard", "isExternalFilterPresent", "doesExternalFilterPass", "getChartToolbarItems", "createChartContainer", "navigateToNextHeader", "tabToNextHeader", "navigateToNextCell", "tabToNextCell", "suppressKeyboardEvent", "localeTextFunc", "getLocaleText", "getDocument", "paginationNumberFormatter", "groupRowAggNodes", "getGroupRowAgg", "isGroupOpenByDefault", "initialGroupOrderComparator", "defaultGroupOrderComparator", "processSecondaryColDef", "processSecondaryColGroupDef", "processPivotResultColDef", "processPivotResultColGroupDef", "getDataPath", "defaultGroupSortComparator", "getChildCount", "getServerSideGroupLevelParams", "getServerSideStoreParams", "isServerSideGroupOpenByDefault", "isApplyServerSideTransaction", "isServerSideGroup", "getServerSideGroupKey", "getBusinessKeyForNode", "getRowNodeId", "getRowId", "resetRowDataOnUpdate", "processRowPostCreate", "isRowSelectable", "isRowMaster", "fillOperation", "postSort", "postSortRows", "getRowStyle", "getRowClass", "getRowHeight", "isFullWidthCell", "isFullWidthRow"], outputs: ["toolPanelVisibleChanged", "toolPanelSizeChanged", "pasteStart", "pasteEnd", "columnVisible", "columnPinned", "columnResized", "columnMoved", "columnValueChanged", "columnPivotModeChanged", "columnPivotChanged", "columnGroupOpened", "newColumnsLoaded", "gridColumnsChanged", "displayedColumnsChanged", "virtualColumnsChanged", "columnEverythingChanged", "componentStateChanged", "cellValueChanged", "cellEditRequest", "rowValueChanged", "cellEditingStarted", "cellEditingStopped", "rowEditingStarted", "rowEditingStopped", "filterOpened", "filterChanged", "filterModified", "chartCreated", "chartRangeSelectionChanged", "chartOptionsChanged", "chartDestroyed", "cellKeyDown", "cellKeyPress", "gridReady", "firstDataRendered", "gridSizeChanged", "modelUpdated", "virtualRowRemoved", "viewportChanged", "bodyScroll", "bodyScrollEnd", "dragStarted", "dragStopped", "paginationChanged", "rowDragEnter", "rowDragMove", "rowDragLeave", "rowDragEnd", "columnRowGroupChanged", "rowGroupOpened", "expandOrCollapseAll", "pinnedRowDataChanged", "rowDataChanged", "rowDataUpdated", "asyncTransactionsFlushed", "cellClicked", "cellDoubleClicked", "cellFocused", "cellMouseOver", "cellMouseOut", "cellMouseDown", "rowClicked", "rowDoubleClicked", "rowSelected", "selectionChanged", "cellContextMenu", "rangeSelectionChanged", "sortChanged", "columnRowGroupChangeRequest", "columnPivotChangeRequest", "columnValueChangeRequest", "columnAggFuncChangeRequest"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i5.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i5.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i6.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i6.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i7.NgxMatDatetimepicker, selector: "ngx-mat-datetime-picker", exportAs: ["ngxMatDatetimePicker"] }, { kind: "directive", type: i7.NgxMatDatepickerInput, selector: "input[ngxMatDatetimePicker]", inputs: ["ngxMatDatetimePicker", "min", "max", "matDatepickerFilter"], exportAs: ["ngxMatDatepickerInput"] }, { kind: "component", type: AttributeEditComponent, selector: "hci-attribute-edit" }] }); }
347
353
  }
348
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: AttributeEditComponent, decorators: [{
354
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AttributeEditComponent, decorators: [{
349
355
  type: Component,
350
- args: [{ selector: "hci-attribute-edit", template: `
356
+ args: [{ selector: 'hci-attribute-edit', template: `
351
357
  <!-- String -->
352
358
  <ng-container *ngIf="attribute.codeAttributeDataType === 'S'">
353
359
  <div #attributeRef
@@ -374,14 +380,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImpor
374
380
  {{attribute.displayName}}
375
381
  </div>
376
382
  <div class="d-flex col-md-6">
377
- <input #inputRef
383
+
384
+ <textarea
385
+ #inputRef
378
386
  type="text"
379
387
  spellcheck="spellcheck"
380
388
  lang="en"
381
389
  [ngModel]="attributeValues[0].valueLongText.textData"
382
390
  (ngModelChange)="valueTextChange($event)"
383
391
  [disabled]="!editInline || attribute.isCalculated === 'Y'"
384
- />
392
+ style="width: 500px; height: 125px; resize: none;"
393
+ >
394
+ </textarea>
395
+
385
396
  </div>
386
397
  </div>
387
398
  </ng-container>
@@ -526,7 +537,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImpor
526
537
  {{attribute.displayName}}
527
538
  </div>
528
539
  <div class="d-flex col-md-6">
529
- <select [ngModel]="(attributeValues[0].valueAttributeChoice)?attributeValues[0].valueAttributeChoice.idAttributeChoice:undefined"
540
+ <select
541
+ [ngModel]="(attributeValues[0].valueAttributeChoice)?attributeValues[0].valueAttributeChoice.idAttributeChoice:undefined"
530
542
  (ngModelChange)="valueChoiceChange($event)"
531
543
  class="edit-renderer">
532
544
  <option [ngValue]="undefined"></option>
@@ -669,4 +681,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImpor
669
681
  </ng-template>
670
682
  `, styles: [".hci-cod button.mat-icon-button.mat-button-base{height:20px;width:20px;line-height:unset}.btn-ga{padding:0;height:18px;width:18px}.ga-icon{font-size:.9em;vertical-align:top}.hci-cod .mat-datepicker-toggle-default-icon{height:20px;width:20px}\n"] }]
671
683
  }], ctorParameters: () => [{ type: i1.AttributeService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i2.NgbModal }] });
672
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0cmlidXRlLWVkaXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29kL3NyYy9jb21wb25lbnRzL2F0dHJpYnV0ZS1lZGl0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFNVixTQUFTLEVBRVYsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3BELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUMvQyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7Ozs7O0FBTy9EOzs7R0FHRztBQTRWSCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsYUFBYTtJQUV2RCxnRUFBZ0U7SUFFaEUsWUFBWSxnQkFBa0MsRUFBRSxVQUFzQixFQUFFLFFBQW1CLEVBQUUsWUFBc0I7UUFDakgsS0FBSyxDQUFDLGdCQUFnQixFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVELElBQUk7UUFDRixLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDZixDQUFDOzhHQVZVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLGlGQXpWdkI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBZ1VULDZxV0F5QlUsc0JBQXNCOzsyRkFBdEIsc0JBQXNCO2tCQTNWbEMsU0FBUzsrQkFDRSxvQkFBb0IsWUFDcEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBZ1VUIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBJbmplY3QsXHJcbiAgSW5qZWN0aW9uVG9rZW4sXHJcbiAgSW5wdXQsXHJcbiAgaXNEZXZNb2RlLFxyXG4gIFF1ZXJ5TGlzdCxcclxuICBSZW5kZXJlcjIsXHJcbiAgVmlld0NoaWxkcmVuXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbmltcG9ydCB7TmdiTW9kYWx9IGZyb20gXCJAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcFwiO1xyXG5pbXBvcnQge0F0dHJpYnV0ZUJhc2V9IGZyb20gXCIuL2F0dHJpYnV0ZS1iYXNlXCI7XHJcbmltcG9ydCB7QXR0cmlidXRlU2VydmljZX0gZnJvbSBcIi4uL3NlcnZpY2VzL2F0dHJpYnV0ZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7QXR0cmlidXRlTG9uZ1RleHR9IGZyb20gXCIuLi9tb2RlbC9hdHRyaWJ1dGUtbG9uZy10ZXh0LmVudGl0eVwiO1xyXG5pbXBvcnQge0F0dHJpYnV0ZX0gZnJvbSBcIi4uL21vZGVsL2F0dHJpYnV0ZS5lbnRpdHlcIjtcclxuaW1wb3J0IHtBdHRyaWJ1dGVWYWx1ZX0gZnJvbSBcIi4uL21vZGVsL2F0dHJpYnV0ZS12YWx1ZS5lbnRpdHlcIjtcclxuaW1wb3J0IHtBdHRyaWJ1dGVDaG9pY2V9IGZyb20gXCIuLi9tb2RlbC9hdHRyaWJ1dGUtY2hvaWNlLmVudGl0eVwiO1xyXG5pbXBvcnQge0dyYXBoaWNhbEF0dHJpYnV0ZX0gZnJvbSBcIi4uL21vZGVsL2dyYXBoaWNhbC1hdHRyaWJ1dGUuZW50aXR5XCI7XHJcblxyXG4vKipcclxuICogVGhpcyBjb21wb25lbnQgaXMgc3BlY2lmaWNhbGx5IGRlc2lnbmVkIHRvIGV4aXN0IGluIGEgbW9kYWwgZm9yIGVkaXRpbmcuICBUaGlzIGlzIGRpZmZlcmVudCBmcm9tIHRoZSBmbGV4IGF0dHJpYnV0ZVxyXG4gKiBiZWNhdXNlIGNvbXBvbmVudHMgc3VjaCBhcyB0aGUgZ3JpZCBuZWVkIGV4dHJhIGNvbmZpZ3VyYXRpb24gZm9yIGVkaXRpbmcuXHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJoY2ktYXR0cmlidXRlLWVkaXRcIixcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPCEtLSBTdHJpbmcgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ1MnXCI+XHJcbiAgICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LXJvd1wiPlxyXG4gICAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCAjaW5wdXRSZWZcclxuICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZVN0cmluZ0NoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdElubGluZSB8fCBhdHRyaWJ1dGUuaXNDYWxjdWxhdGVkID09PSAnWSdcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIFRleHQgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ1RYVCdcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1yb3dcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICA8aW5wdXQgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICAgICAgICAgICAgIHNwZWxsY2hlY2s9XCJzcGVsbGNoZWNrXCJcclxuICAgICAgICAgICAgICAgICBsYW5nPVwiZW5cIlxyXG4gICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZUxvbmdUZXh0LnRleHREYXRhXCJcclxuICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZVRleHRDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0SW5saW5lIHx8IGF0dHJpYnV0ZS5pc0NhbGN1bGF0ZWQgPT09ICdZJ1wiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gTnVtZXJpYyAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnTidcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1yb3dcIj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXR0cmlidXRlLmRpc3BsYXlOYW1lXCIgY2xhc3M9XCJkLWZsZXggY29sLW1kLTZcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICA8aW5wdXQgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiXHJcbiAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlTnVtZXJpY1wiXHJcbiAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidmFsdWVOdW1lcmljQ2hhbmdlKCRldmVudClcIi8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBJbnRlZ2VyIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdJJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LXJvd1wiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggY29sLW1kLTZcIj5cclxuICAgICAgICAgIDxpbnB1dCAjaW5wdXRSZWZcclxuICAgICAgICAgICAgICAgICB0eXBlPVwibnVtYmVyXCJcclxuICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVJbnRlZ2VyXCJcclxuICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZUludGVnZXJDaGFuZ2UoJGV2ZW50KVwiIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBEYXRlIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdEJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LXJvd1wiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgIDxpbnB1dCAjaW5wdXRSZWZcclxuICAgICAgICAgICAgICBtYXRJbnB1dFxyXG4gICAgICAgICAgICAgIG5hbWU9XCJ2YWx1ZURhdGVcIlxyXG4gICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlRGF0ZVwiXHJcbiAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidmFsdWVEYXRlQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgIFttYXREYXRlcGlja2VyXT1cInZhbHVlRGF0ZVwiXHJcbiAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0SW5saW5lIHx8IGF0dHJpYnV0ZS5pc0NhbGN1bGF0ZWQgPT09ICdZJ1wiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICA8bWF0LWRhdGVwaWNrZXItdG9nZ2xlICBtYXRTdWZmaXggW2Zvcl09XCJ2YWx1ZURhdGVcIiBjbGFzcz1cImNvZC1kcC10b2dnbGVcIj48L21hdC1kYXRlcGlja2VyLXRvZ2dsZT5cclxuICAgICAgICAgICAgPG1hdC1kYXRlcGlja2VyICN2YWx1ZURhdGU+PC9tYXQtZGF0ZXBpY2tlcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIERhdGUgVGltZSAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnRFQnXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgPGlucHV0ICNpbnB1dFJlZlxyXG4gICAgICAgICAgICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgICAgICAgICAgbmFtZT1cInZhbHVlRGF0ZVRpbWVcIlxyXG4gICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYXR0cmlidXRlVmFsdWVzWzBdLmRhdGVcIlxyXG4gICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlRGF0ZUNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICBbbmd4TWF0RGF0ZXRpbWVQaWNrZXJdPVwiZHRwaWNrZXJcIj5cclxuICAgICAgICAgICAgICAgPG1hdC1kYXRlcGlja2VyLXRvZ2dsZSBtYXRTdWZmaXggW2Zvcl09XCJkdHBpY2tlclwiIGNsYXNzPVwiY29kLWRwLXRvZ2dsZVwiPjwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxyXG4gICAgICAgICAgICAgICA8bmd4LW1hdC1kYXRldGltZS1waWNrZXIgI2R0cGlja2VyIFtzaG93U2Vjb25kc109XCJ0cnVlXCI+PC9uZ3gtbWF0LWRhdGV0aW1lLXBpY2tlcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIENoZWNrYm94IC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdDQidcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1yb3dcIj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXR0cmlidXRlLmRpc3BsYXlOYW1lXCIgY2xhc3M9XCJkLWZsZXggY29sLW1kLTZcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICA8aW5wdXQgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVTdHJpbmcgPT09ICdZJ1wiXHJcbiAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJ2YWx1ZUNoZWNrYm94Q2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdElubGluZSB8fCBhdHRyaWJ1dGUuaXNDYWxjdWxhdGVkID09PSAnWSdcIlxyXG4gICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgLz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIEJvb2xlYW4gLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ0InXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgPHNlbGVjdCBbbmdNb2RlbF09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVTdHJpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZVN0cmluZ0NoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJlZGl0LXJlbmRlcmVyXCI+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwidW5kZWZpbmVkXCI+PC9vcHRpb24+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwiJ1knXCIgW3NlbGVjdGVkXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZyA9PT0gJ1knXCI+WWVzPC9vcHRpb24+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwiJ04nXCIgW3NlbGVjdGVkXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZyA9PT0gJ04nXCI+Tm88L29wdGlvbj5cclxuICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gRXh0ZW5kZWQgQm9vbGVhbiAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnRUInXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgPHNlbGVjdCBbbmdNb2RlbF09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVTdHJpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZVN0cmluZ0NoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJlZGl0LXJlbmRlcmVyXCI+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwidW5kZWZpbmVkXCI+PC9vcHRpb24+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwiJ1knXCIgW3NlbGVjdGVkXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZyA9PT0gJ1knXCI+WWVzPC9vcHRpb24+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwiJ04nXCIgW3NlbGVjdGVkXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZyA9PT0gJ04nXCI+Tm88L29wdGlvbj5cclxuICAgICAgICAgICAgPG9wdGlvbiBbbmdWYWx1ZV09XCInVSdcIiBbc2VsZWN0ZWRdPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlU3RyaW5nID09PSAnVSdcIj5Vbmtub3duPC9vcHRpb24+XHJcbiAgICAgICAgICA8L3NlbGVjdD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIENob2ljZTogU2luZ2xlIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdBQycgJiYgYXR0cmlidXRlLmlzTXVsdGlWYWx1ZSA9PT0gJ04nXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgPHNlbGVjdCBbbmdNb2RlbF09XCIoYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlQXR0cmlidXRlQ2hvaWNlKT9hdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVBdHRyaWJ1dGVDaG9pY2UuaWRBdHRyaWJ1dGVDaG9pY2U6dW5kZWZpbmVkXCJcclxuICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidmFsdWVDaG9pY2VDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZWRpdC1yZW5kZXJlclwiPlxyXG4gICAgICAgICAgICA8b3B0aW9uIFtuZ1ZhbHVlXT1cInVuZGVmaW5lZFwiPjwvb3B0aW9uPlxyXG4gICAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBhdHRyaWJ1dGVDaG9pY2Ugb2YgYXR0cmlidXRlQ2hvaWNlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW25nVmFsdWVdPVwiYXR0cmlidXRlQ2hvaWNlLmlkQXR0cmlidXRlQ2hvaWNlXCI+XHJcbiAgICAgICAgICAgICAge3sgYXR0cmlidXRlQ2hvaWNlLmNob2ljZSB9fVxyXG4gICAgICAgICAgICA8L29wdGlvbj5cclxuICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gQ2hvaWNlOiBNdWx0aSAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnQUMnICYmIGF0dHJpYnV0ZS5pc011bHRpVmFsdWUgPT09ICdZJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LXJvd1wiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gY29sLW1kLTZcIiBzdHlsZT1cInJvdy1nYXA6IDVweFwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgYXR0cmlidXRlQ2hvaWNlIG9mIGF0dHJpYnV0ZUNob2ljZXNcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleFwiPlxyXG4gICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIlxyXG4gICAgICAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJhdHRyaWJ1dGVDaG9pY2UudmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJ2YWx1ZU11bHRpQ2hvaWNlQ2hhbmdlKGF0dHJpYnV0ZUNob2ljZSlcIlxyXG4gICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbCBjaGVja2JveCBtdC1hdXRvIG1iLWF1dG8gbWUtMlwiIC8+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvZC1sYWJlbCBwcy0xXCI+XHJcbiAgICAgICAgICAgICAgICB7e2F0dHJpYnV0ZUNob2ljZS5jaG9pY2V9fVxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgXHJcbiAgICA8IS0tIERpY3Rpb25hcnk6IE11bHRpIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdESUNUJyAmJiBhdHRyaWJ1dGUuaXNNdWx0aVZhbHVlID09PSAnWSdcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1yb3dcIj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXR0cmlidXRlLmRpc3BsYXlOYW1lXCIgY2xhc3M9XCJkLWZsZXggY29sLW1kLTZcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGNvbC1tZC02XCIgc3R5bGU9XCJyb3ctZ2FwOiA1cHhcIj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGVudHJ5IG9mIGRpY3Rpb25hcnlFbnRyaWVzXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwiZW50cnkuY2hlY2tlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdElubGluZSB8fCBhdHRyaWJ1dGUuaXNDYWxjdWxhdGVkID09PSAnWSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cInZhbHVlTXVsdGlEaWN0Q2hhbmdlKGVudHJ5KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdElubGluZSB8fCBhdHRyaWJ1dGUuaXNDYWxjdWxhdGVkID09PSAnWSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbCBjaGVja2JveFwiIC8+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvZC1sYWJlbCBwcy0xXCI+XHJcbiAgICAgICAgICAgICAgICB7e2VudHJ5LmRpc3BsYXl9fVxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPiAgIFxyXG5cclxuICAgIDwhLS0gRGljdGlvbmFyeSAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnRElDVCcgJiYgYXR0cmlidXRlLmlzTXVsdGlWYWx1ZSA9PT0gJ04nXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgPHNlbGVjdCAjaW5wdXRSZWZcclxuICAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlSWREaWN0aW9uYXJ5XCJcclxuICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidmFsdWVEaWN0Q2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgZWRpdC1yZW5kZXJlclwiPlxyXG4gICAgICAgICAgICA8b3B0aW9uIFtuZ1ZhbHVlXT1cInVuZGVmaW5lZFwiPjwvb3B0aW9uPlxyXG4gICAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBlbnRyeSBvZiBkaWN0aW9uYXJ5RW50cmllc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW25nVmFsdWVdPVwiZW50cnkudmFsdWVcIj5cclxuICAgICAgICAgICAgICB7eyBlbnRyeS5kaXNwbGF5IH19XHJcbiAgICAgICAgICAgIDwvb3B0aW9uPlxyXG4gICAgICAgICAgPC9zZWxlY3Q+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBHcmlkIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdHQSdcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW5cIj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXR0cmlidXRlLmRpc3BsYXlOYW1lXCIgY2xhc3M9XCJkLWZsZXggY29sLW1kLTEyXCI+XHJcbiAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgc3R5bGU9XCJtYXJnaW4tbGVmdDogYXV0bztcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0bi1nYVwiIChjbGljayk9XCJhZGRHcmlkUm93KGVkaXRHcmlkTW9kYWwsIGF0dHJpYnV0ZS5pZEF0dHJpYnV0ZSlcIj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImdhLWljb25cIj5cclxuICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXBsdXMgZmEteHNcIj48L2k+XHJcbiAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0bi1nYVwiIChjbGljayk9XCJyZW1vdmVHcmlkUm93KGF0dHJpYnV0ZS5pZEF0dHJpYnV0ZSlcIj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImdhLWljb25cIj5cclxuICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLW1pbnVzIGZhLXhzXCI+PC9pPlxyXG4gICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgPGFnLWdyaWQtYW5ndWxhciAjZ3JpZEF0dHJpYnV0ZVxyXG4gICAgICAgICAgICAgIGNsYXNzPVwiYWctdGhlbWUtYWxwaW5lXCJcclxuICAgICAgICAgICAgICAoZ3JpZFJlYWR5KT1cInRoaXMub25HcmlkUmVhZHkoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgKG1vZGVsVXBkYXRlZCk9XCJvbk1vZGVsVXBkYXRlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAoZ3JpZFNpemVDaGFuZ2VkKT1cIm9uR3JpZFNpemVDaGFuZ2VkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgIChyb3dEb3VibGVDbGlja2VkKT1cImVkaXRHcmlkUm93KGVkaXRHcmlkTW9kYWwsIGF0dHJpYnV0ZS5pZEF0dHJpYnV0ZSwgJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgW2dyaWRPcHRpb25zXT1cInRoaXMuZ3JpZE9wdGlvbnNcIlxyXG4gICAgICAgICAgICAgIFtyb3dTZWxlY3Rpb25dPVwiJ3NpbmdsZSdcIlxyXG4gICAgICAgICAgICAgIFtjb2x1bW5EZWZzXT1cImdyaWRDb2x1bW5zXCJcclxuICAgICAgICAgICAgICBbcm93RGF0YV09XCJncmlkRGF0YVwiXHJcbiAgICAgICAgICAgICAgW3N0eWxlLndpZHRoXT1cImF0dHJpYnV0ZS53ICsgJ3B4J1wiXHJcbiAgICAgICAgICAgICAgW3N0eWxlLmhlaWdodF09XCJhdHRyaWJ1dGUuaCArICdweCdcIj5cclxuICAgICAgICAgIDwvYWctZ3JpZC1hbmd1bGFyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDxuZy10ZW1wbGF0ZSAjZWRpdEdyaWRNb2RhbCBsZXQtY2xvc2U9XCJjbG9zZVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtaGVhZGVyXCI+XHJcbiAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fSBHcmlkIFJvd1xyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWJvZHkgZC1mbGV4IGZsZXgtY29sdW1uIGhjaS1jb2QtZWRpdFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGF0dHJpYnV0ZSBvZiBlZGl0R3JvdXBSb3dBdHRyaWJ1dGVzXCI+XHJcbiAgICAgICAgICA8aGNpLWF0dHJpYnV0ZS1lZGl0IFtpZF09XCInZWRpdC1pZC1hdHRyaWJ1dGUtJyArIGF0dHJpYnV0ZS5pZEF0dHJpYnV0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtncm91cEF0dHJpYnV0ZVJvd0lkXT1cImVkaXRHcm91cEF0dHJpYnV0ZVJvd0lkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHJpYnV0ZV09XCJhdHRyaWJ1dGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImF0dHJpYnV0ZVwiPjwvaGNpLWF0dHJpYnV0ZS1lZGl0PlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWZvb3RlclwiPlxyXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIiAoY2xpY2spPVwiY2xvc2UoJ1NhdmUnKVwiPlNhdmU8L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCIgKGNsaWNrKT1cImNsb3NlKCdDYW5jZWwnKVwiPkNhbmNlbDwvYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgYCxcclxuICBzdHlsZXM6IFtgXHJcbiAgICAuaGNpLWNvZCBidXR0b24ubWF0LWljb24tYnV0dG9uLm1hdC1idXR0b24tYmFzZSB7XHJcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB1bnNldDtcclxuICAgIH1cclxuXHJcbiAgICAuYnRuLWdhIHtcclxuICAgICAgcGFkZGluZzogMHB4O1xyXG4gICAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5nYS1pY29uIHtcclxuICAgICAgZm9udC1zaXplOiAuOWVtO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgfVxyXG5cclxuICAgIC5oY2ktY29kIC5tYXQtZGF0ZXBpY2tlci10b2dnbGUtZGVmYXVsdC1pY29uIHtcclxuICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICB3aWR0aDogMjBweDtcclxuICAgIH1cclxuIGBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBdHRyaWJ1dGVFZGl0Q29tcG9uZW50IGV4dGVuZHMgQXR0cmlidXRlQmFzZSB7XHJcblxyXG4gIC8vZGljdGlvbmFyeUVuZHBvaW50ID0gdGhpcy5hdHRyaWJ1dGVTZXJ2aWNlLmRpY3Rpb25hcnlFbmRwb2ludDtcclxuXHJcbiAgY29uc3RydWN0b3IoYXR0cmlidXRlU2VydmljZTogQXR0cmlidXRlU2VydmljZSwgZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcmVuZGVyZXI6IFJlbmRlcmVyMiwgbW9kYWxTZXJ2aWNlOiBOZ2JNb2RhbCkge1xyXG4gICAgc3VwZXIoYXR0cmlidXRlU2VydmljZSwgZWxlbWVudFJlZiwgcmVuZGVyZXIsIG1vZGFsU2VydmljZSk7XHJcbiAgfVxyXG5cclxuICBpbml0KCk6IHZvaWQge1xyXG4gICAgc3VwZXIuaW5pdCgpO1xyXG4gIH1cclxufVxyXG4iXX0=
684
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0cmlidXRlLWVkaXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29kL3NyYy9jb21wb25lbnRzL2F0dHJpYnV0ZS1lZGl0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFDVixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3BELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUMvQyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7Ozs7O0FBRS9EOzs7R0FHRztBQXVXSCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsYUFBYTtJQUV2RCxnRUFBZ0U7SUFFaEUsWUFBWSxnQkFBa0MsRUFBRSxVQUFzQixFQUFFLFFBQW1CLEVBQUUsWUFBc0I7UUFDakgsS0FBSyxDQUFDLGdCQUFnQixFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVELElBQUk7UUFDRixLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDZixDQUFDOzhHQVZVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLGlGQWxXN0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc1VILDZxV0E0QlUsc0JBQXNCOzsyRkFBdEIsc0JBQXNCO2tCQXRXbEMsU0FBUzsrQkFFSSxvQkFBb0IsWUFFNUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc1VIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBSZW5kZXJlcjJcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7TmdiTW9kYWx9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcclxuaW1wb3J0IHtBdHRyaWJ1dGVCYXNlfSBmcm9tICcuL2F0dHJpYnV0ZS1iYXNlJztcclxuaW1wb3J0IHtBdHRyaWJ1dGVTZXJ2aWNlfSBmcm9tICcuLi9zZXJ2aWNlcy9hdHRyaWJ1dGUuc2VydmljZSc7XHJcblxyXG4vKipcclxuICogVGhpcyBjb21wb25lbnQgaXMgc3BlY2lmaWNhbGx5IGRlc2lnbmVkIHRvIGV4aXN0IGluIGEgbW9kYWwgZm9yIGVkaXRpbmcuXHJcbiAqIFRoaXMgaXMgZGlmZmVyZW50IGZyb20gdGhlIGZsZXggYXR0cmlidXRlIGJlY2F1c2UgY29tcG9uZW50cyBzdWNoIGFzIHRoZSBncmlkIG5lZWQgZXh0cmEgY29uZmlndXJhdGlvbiBmb3IgZWRpdGluZy5cclxuICovXHJcbkBDb21wb25lbnQoXHJcbiAge1xyXG4gICAgc2VsZWN0b3I6ICdoY2ktYXR0cmlidXRlLWVkaXQnLFxyXG4gICAgdGVtcGxhdGU6XHJcbiAgICAgIGBcclxuICAgIDwhLS0gU3RyaW5nIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdTJ1wiPlxyXG4gICAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1yb3dcIj5cclxuICAgICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICA8aW5wdXQgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVTdHJpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidmFsdWVTdHJpbmdDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBUZXh0IC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdUWFQnXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG5cclxuICAgICAgICAgIDx0ZXh0YXJlYVxyXG4gICAgICAgICAgICAjaW5wdXRSZWZcclxuICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgc3BlbGxjaGVjaz1cInNwZWxsY2hlY2tcIlxyXG4gICAgICAgICAgICAgICAgIGxhbmc9XCJlblwiXHJcbiAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlTG9uZ1RleHQudGV4dERhdGFcIlxyXG4gICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlVGV4dENoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgc3R5bGU9XCJ3aWR0aDogNTAwcHg7IGhlaWdodDogMTI1cHg7IHJlc2l6ZTogbm9uZTtcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgPC90ZXh0YXJlYT5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBOdW1lcmljIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdOJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LXJvd1wiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggY29sLW1kLTZcIj5cclxuICAgICAgICAgIDxpbnB1dCAjaW5wdXRSZWZcclxuICAgICAgICAgICAgICAgICB0eXBlPVwibnVtYmVyXCJcclxuICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVOdW1lcmljXCJcclxuICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZU51bWVyaWNDaGFuZ2UoJGV2ZW50KVwiLz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIEludGVnZXIgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ0knXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgPGlucHV0ICNpbnB1dFJlZlxyXG4gICAgICAgICAgICAgICAgIHR5cGU9XCJudW1iZXJcIlxyXG4gICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZUludGVnZXJcIlxyXG4gICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlSW50ZWdlckNoYW5nZSgkZXZlbnQpXCIgLz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIERhdGUgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ0QnXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgPGlucHV0ICNpbnB1dFJlZlxyXG4gICAgICAgICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgICAgICAgbmFtZT1cInZhbHVlRGF0ZVwiXHJcbiAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVEYXRlXCJcclxuICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZURhdGVDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgW21hdERhdGVwaWNrZXJdPVwidmFsdWVEYXRlXCJcclxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxtYXQtZGF0ZXBpY2tlci10b2dnbGUgIG1hdFN1ZmZpeCBbZm9yXT1cInZhbHVlRGF0ZVwiIGNsYXNzPVwiY29kLWRwLXRvZ2dsZVwiPjwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxyXG4gICAgICAgICAgICA8bWF0LWRhdGVwaWNrZXIgI3ZhbHVlRGF0ZT48L21hdC1kYXRlcGlja2VyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gRGF0ZSBUaW1lIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdEVCdcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1yb3dcIj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXR0cmlidXRlLmRpc3BsYXlOYW1lXCIgY2xhc3M9XCJkLWZsZXggY29sLW1kLTZcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICA8aW5wdXQgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgbWF0SW5wdXRcclxuICAgICAgICAgICAgICAgICBuYW1lPVwidmFsdWVEYXRlVGltZVwiXHJcbiAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0uZGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidmFsdWVEYXRlQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdElubGluZSB8fCBhdHRyaWJ1dGUuaXNDYWxjdWxhdGVkID09PSAnWSdcIlxyXG4gICAgICAgICAgICAgICAgIFtuZ3hNYXREYXRldGltZVBpY2tlcl09XCJkdHBpY2tlclwiPlxyXG4gICAgICAgICAgICAgICA8bWF0LWRhdGVwaWNrZXItdG9nZ2xlIG1hdFN1ZmZpeCBbZm9yXT1cImR0cGlja2VyXCIgY2xhc3M9XCJjb2QtZHAtdG9nZ2xlXCI+PC9tYXQtZGF0ZXBpY2tlci10b2dnbGU+XHJcbiAgICAgICAgICAgICAgIDxuZ3gtbWF0LWRhdGV0aW1lLXBpY2tlciAjZHRwaWNrZXIgW3Nob3dTZWNvbmRzXT1cInRydWVcIj48L25neC1tYXQtZGF0ZXRpbWUtcGlja2VyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gQ2hlY2tib3ggLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ0NCJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LXJvd1wiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggY29sLW1kLTZcIj5cclxuICAgICAgICAgIDxpbnB1dCAjaW5wdXRSZWZcclxuICAgICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxyXG4gICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZyA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cInZhbHVlQ2hlY2tib3hDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0SW5saW5lIHx8IGF0dHJpYnV0ZS5pc0NhbGN1bGF0ZWQgPT09ICdZJ1wiXHJcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gQm9vbGVhbiAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnQidcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1yb3dcIj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXR0cmlidXRlLmRpc3BsYXlOYW1lXCIgY2xhc3M9XCJkLWZsZXggY29sLW1kLTZcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICA8c2VsZWN0IFtuZ01vZGVsXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZ1wiXHJcbiAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlU3RyaW5nQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImVkaXQtcmVuZGVyZXJcIj5cclxuICAgICAgICAgICAgPG9wdGlvbiBbbmdWYWx1ZV09XCJ1bmRlZmluZWRcIj48L29wdGlvbj5cclxuICAgICAgICAgICAgPG9wdGlvbiBbbmdWYWx1ZV09XCInWSdcIiBbc2VsZWN0ZWRdPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlU3RyaW5nID09PSAnWSdcIj5ZZXM8L29wdGlvbj5cclxuICAgICAgICAgICAgPG9wdGlvbiBbbmdWYWx1ZV09XCInTidcIiBbc2VsZWN0ZWRdPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlU3RyaW5nID09PSAnTidcIj5Obzwvb3B0aW9uPlxyXG4gICAgICAgICAgPC9zZWxlY3Q+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBFeHRlbmRlZCBCb29sZWFuIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdFQidcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1yb3dcIj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXR0cmlidXRlLmRpc3BsYXlOYW1lXCIgY2xhc3M9XCJkLWZsZXggY29sLW1kLTZcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICA8c2VsZWN0IFtuZ01vZGVsXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZ1wiXHJcbiAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlU3RyaW5nQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImVkaXQtcmVuZGVyZXJcIj5cclxuICAgICAgICAgICAgPG9wdGlvbiBbbmdWYWx1ZV09XCJ1bmRlZmluZWRcIj48L29wdGlvbj5cclxuICAgICAgICAgICAgPG9wdGlvbiBbbmdWYWx1ZV09XCInWSdcIiBbc2VsZWN0ZWRdPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlU3RyaW5nID09PSAnWSdcIj5ZZXM8L29wdGlvbj5cclxuICAgICAgICAgICAgPG9wdGlvbiBbbmdWYWx1ZV09XCInTidcIiBbc2VsZWN0ZWRdPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlU3RyaW5nID09PSAnTidcIj5Obzwvb3B0aW9uPlxyXG4gICAgICAgICAgICA8b3B0aW9uIFtuZ1ZhbHVlXT1cIidVJ1wiIFtzZWxlY3RlZF09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVTdHJpbmcgPT09ICdVJ1wiPlVua25vd248L29wdGlvbj5cclxuICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gQ2hvaWNlOiBTaW5nbGUgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ0FDJyAmJiBhdHRyaWJ1dGUuaXNNdWx0aVZhbHVlID09PSAnTidcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1yb3dcIj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXR0cmlidXRlLmRpc3BsYXlOYW1lXCIgY2xhc3M9XCJkLWZsZXggY29sLW1kLTZcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgICAgPHNlbGVjdFxyXG4gICAgICAgICAgICAgICAgW25nTW9kZWxdPVwiKGF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZUF0dHJpYnV0ZUNob2ljZSk/YXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlQXR0cmlidXRlQ2hvaWNlLmlkQXR0cmlidXRlQ2hvaWNlOnVuZGVmaW5lZFwiXHJcbiAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlQ2hvaWNlQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImVkaXQtcmVuZGVyZXJcIj5cclxuICAgICAgICAgICAgPG9wdGlvbiBbbmdWYWx1ZV09XCJ1bmRlZmluZWRcIj48L29wdGlvbj5cclxuICAgICAgICAgICAgPG9wdGlvbiAqbmdGb3I9XCJsZXQgYXR0cmlidXRlQ2hvaWNlIG9mIGF0dHJpYnV0ZUNob2ljZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtuZ1ZhbHVlXT1cImF0dHJpYnV0ZUNob2ljZS5pZEF0dHJpYnV0ZUNob2ljZVwiPlxyXG4gICAgICAgICAgICAgIHt7IGF0dHJpYnV0ZUNob2ljZS5jaG9pY2UgfX1cclxuICAgICAgICAgICAgPC9vcHRpb24+XHJcbiAgICAgICAgICA8L3NlbGVjdD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIENob2ljZTogTXVsdGkgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ0FDJyAmJiBhdHRyaWJ1dGUuaXNNdWx0aVZhbHVlID09PSAnWSdcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1yb3dcIj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXR0cmlidXRlLmRpc3BsYXlOYW1lXCIgY2xhc3M9XCJkLWZsZXggY29sLW1kLTZcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGNvbC1tZC02XCIgc3R5bGU9XCJyb3ctZ2FwOiA1cHhcIj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGF0dHJpYnV0ZUNob2ljZSBvZiBhdHRyaWJ1dGVDaG9pY2VzXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwiYXR0cmlidXRlQ2hvaWNlLnZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0SW5saW5lIHx8IGF0dHJpYnV0ZS5pc0NhbGN1bGF0ZWQgPT09ICdZJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwidmFsdWVNdWx0aUNob2ljZUNoYW5nZShhdHRyaWJ1dGVDaG9pY2UpXCJcclxuICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgY2hlY2tib3ggbXQtYXV0byBtYi1hdXRvIG1lLTJcIiAvPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2QtbGFiZWwgcHMtMVwiPlxyXG4gICAgICAgICAgICAgICAge3thdHRyaWJ1dGVDaG9pY2UuY2hvaWNlfX1cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIFxyXG4gICAgPCEtLSBEaWN0aW9uYXJ5OiBNdWx0aSAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnRElDVCcgJiYgYXR0cmlidXRlLmlzTXVsdGlWYWx1ZSA9PT0gJ1knXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBjb2wtbWQtNlwiIHN0eWxlPVwicm93LWdhcDogNXB4XCI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBlbnRyeSBvZiBkaWN0aW9uYXJ5RW50cmllc1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiXHJcbiAgICAgICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cImVudHJ5LmNoZWNrZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJ2YWx1ZU11bHRpRGljdENoYW5nZShlbnRyeSlcIlxyXG4gICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgY2hlY2tib3hcIiAvPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2QtbGFiZWwgcHMtMVwiPlxyXG4gICAgICAgICAgICAgICAge3tlbnRyeS5kaXNwbGF5fX1cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj4gICBcclxuXHJcbiAgICA8IS0tIERpY3Rpb25hcnkgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ0RJQ1QnICYmIGF0dHJpYnV0ZS5pc011bHRpVmFsdWUgPT09ICdOJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LXJvd1wiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggY29sLW1kLTZcIj5cclxuICAgICAgICAgIDxzZWxlY3QgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZUlkRGljdGlvbmFyeVwiXHJcbiAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlRGljdENoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0SW5saW5lIHx8IGF0dHJpYnV0ZS5pc0NhbGN1bGF0ZWQgPT09ICdZJ1wiXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sIGVkaXQtcmVuZGVyZXJcIj5cclxuICAgICAgICAgICAgPG9wdGlvbiBbbmdWYWx1ZV09XCJ1bmRlZmluZWRcIj48L29wdGlvbj5cclxuICAgICAgICAgICAgPG9wdGlvbiAqbmdGb3I9XCJsZXQgZW50cnkgb2YgZGljdGlvbmFyeUVudHJpZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtuZ1ZhbHVlXT1cImVudHJ5LnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAge3sgZW50cnkuZGlzcGxheSB9fVxyXG4gICAgICAgICAgICA8L29wdGlvbj5cclxuICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gR3JpZCAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnR0EnXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IHN0eWxlPVwibWFyZ2luLWxlZnQ6IGF1dG87XCI+XHJcbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4tZ2FcIiAoY2xpY2spPVwiYWRkR3JpZFJvdyhlZGl0R3JpZE1vZGFsLCBhdHRyaWJ1dGUuaWRBdHRyaWJ1dGUpXCI+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJnYS1pY29uXCI+XHJcbiAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1wbHVzIGZhLXhzXCI+PC9pPlxyXG4gICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4tZ2FcIiAoY2xpY2spPVwicmVtb3ZlR3JpZFJvdyhhdHRyaWJ1dGUuaWRBdHRyaWJ1dGUpXCI+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJnYS1pY29uXCI+XHJcbiAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1taW51cyBmYS14c1wiPjwvaT5cclxuICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtMTJcIj5cclxuICAgICAgICAgIDxhZy1ncmlkLWFuZ3VsYXIgI2dyaWRBdHRyaWJ1dGVcclxuICAgICAgICAgICAgICBjbGFzcz1cImFnLXRoZW1lLWFscGluZVwiXHJcbiAgICAgICAgICAgICAgKGdyaWRSZWFkeSk9XCJ0aGlzLm9uR3JpZFJlYWR5KCRldmVudClcIlxyXG4gICAgICAgICAgICAgIChtb2RlbFVwZGF0ZWQpPVwib25Nb2RlbFVwZGF0ZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgKGdyaWRTaXplQ2hhbmdlZCk9XCJvbkdyaWRTaXplQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAocm93RG91YmxlQ2xpY2tlZCk9XCJlZGl0R3JpZFJvdyhlZGl0R3JpZE1vZGFsLCBhdHRyaWJ1dGUuaWRBdHRyaWJ1dGUsICRldmVudClcIlxyXG4gICAgICAgICAgICAgIFtncmlkT3B0aW9uc109XCJ0aGlzLmdyaWRPcHRpb25zXCJcclxuICAgICAgICAgICAgICBbcm93U2VsZWN0aW9uXT1cIidzaW5nbGUnXCJcclxuICAgICAgICAgICAgICBbY29sdW1uRGVmc109XCJncmlkQ29sdW1uc1wiXHJcbiAgICAgICAgICAgICAgW3Jvd0RhdGFdPVwiZ3JpZERhdGFcIlxyXG4gICAgICAgICAgICAgIFtzdHlsZS53aWR0aF09XCJhdHRyaWJ1dGUudyArICdweCdcIlxyXG4gICAgICAgICAgICAgIFtzdHlsZS5oZWlnaHRdPVwiYXR0cmlidXRlLmggKyAncHgnXCI+XHJcbiAgICAgICAgICA8L2FnLWdyaWQtYW5ndWxhcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8bmctdGVtcGxhdGUgI2VkaXRHcmlkTW9kYWwgbGV0LWNsb3NlPVwiY2xvc2VcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWhlYWRlclwiPlxyXG4gICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX0gR3JpZCBSb3dcclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1ib2R5IGQtZmxleCBmbGV4LWNvbHVtbiBoY2ktY29kLWVkaXRcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBhdHRyaWJ1dGUgb2YgZWRpdEdyb3VwUm93QXR0cmlidXRlc1wiPlxyXG4gICAgICAgICAgPGhjaS1hdHRyaWJ1dGUtZWRpdCBbaWRdPVwiJ2VkaXQtaWQtYXR0cmlidXRlLScgKyBhdHRyaWJ1dGUuaWRBdHRyaWJ1dGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZ3JvdXBBdHRyaWJ1dGVSb3dJZF09XCJlZGl0R3JvdXBBdHRyaWJ1dGVSb3dJZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyaWJ1dGVdPVwiYXR0cmlidXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhdHRyaWJ1dGVcIj48L2hjaS1hdHRyaWJ1dGUtZWRpdD5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1mb290ZXJcIj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCIgKGNsaWNrKT1cImNsb3NlKCdTYXZlJylcIj5TYXZlPC9idXR0b24+XHJcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiIChjbGljayk9XCJjbG9zZSgnQ2FuY2VsJylcIj5DYW5jZWw8L2J1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gIGAsXHJcbiAgICBzdHlsZXM6IFtcclxuICAgICAgYFxyXG4gICAgLmhjaS1jb2QgYnV0dG9uLm1hdC1pY29uLWJ1dHRvbi5tYXQtYnV0dG9uLWJhc2Uge1xyXG4gICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICB3aWR0aDogMjBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogdW5zZXQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ0bi1nYSB7XHJcbiAgICAgIHBhZGRpbmc6IDBweDtcclxuICAgICAgaGVpZ2h0OiAxOHB4O1xyXG4gICAgICB3aWR0aDogMThweDtcclxuICAgIH1cclxuXHJcbiAgICAuZ2EtaWNvbiB7XHJcbiAgICAgIGZvbnQtc2l6ZTogLjllbTtcclxuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgIH1cclxuXHJcbiAgICAuaGNpLWNvZCAubWF0LWRhdGVwaWNrZXItdG9nZ2xlLWRlZmF1bHQtaWNvbiB7XHJcbiAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICB9XHJcbiAgICAgIGBcclxuICAgIF1cclxuICB9XHJcbilcclxuZXhwb3J0IGNsYXNzIEF0dHJpYnV0ZUVkaXRDb21wb25lbnQgZXh0ZW5kcyBBdHRyaWJ1dGVCYXNlIHtcclxuXHJcbiAgLy9kaWN0aW9uYXJ5RW5kcG9pbnQgPSB0aGlzLmF0dHJpYnV0ZVNlcnZpY2UuZGljdGlvbmFyeUVuZHBvaW50O1xyXG5cclxuICBjb25zdHJ1Y3RvcihhdHRyaWJ1dGVTZXJ2aWNlOiBBdHRyaWJ1dGVTZXJ2aWNlLCBlbGVtZW50UmVmOiBFbGVtZW50UmVmLCByZW5kZXJlcjogUmVuZGVyZXIyLCBtb2RhbFNlcnZpY2U6IE5nYk1vZGFsKSB7XHJcbiAgICBzdXBlcihhdHRyaWJ1dGVTZXJ2aWNlLCBlbGVtZW50UmVmLCByZW5kZXJlciwgbW9kYWxTZXJ2aWNlKTtcclxuICB9XHJcblxyXG4gIGluaXQoKTogdm9pZCB7XHJcbiAgICBzdXBlci5pbml0KCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -47,8 +47,8 @@ export class AttributeFlexComponent extends AttributeBase {
47
47
  }
48
48
  }
49
49
  }
50
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: AttributeFlexComponent, deps: [{ token: i1.AttributeService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.NgbModal }], target: i0.ɵɵFactoryTarget.Component }); }
51
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: AttributeFlexComponent, selector: "hci-attribute-flex", usesInheritance: true, ngImport: i0, template: `
50
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AttributeFlexComponent, deps: [{ token: i1.AttributeService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.NgbModal }], target: i0.ɵɵFactoryTarget.Component }); }
51
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: AttributeFlexComponent, selector: "hci-attribute-flex", usesInheritance: true, ngImport: i0, template: `
52
52
  <!-- Line -->
53
53
  <ng-container *ngIf="attribute.codeAttributeDataType === 'LINE'">
54
54
  <div #attributeRef
@@ -404,7 +404,7 @@ export class AttributeFlexComponent extends AttributeBase {
404
404
  </ng-template>
405
405
  `, isInline: true, styles: [".hci-cod button.mat-icon-button.mat-button-base{height:20px;width:20px;line-height:unset}.btn-ga{padding:0;height:18px;width:18px}.ga-icon{font-size:.9em;vertical-align:top}.hci-cod .mat-datepicker-toggle-default-icon{height:20px;width:20px}\n"], dependencies: [{ kind: "component", type: i3.AgGridAngular, selector: "ag-grid-angular", inputs: ["gridOptions", "modules", "statusBar", "sideBar", "suppressContextMenu", "preventDefaultOnContextMenu", "allowContextMenuWithControlKey", "suppressMenuHide", "enableBrowserTooltips", "tooltipShowDelay", "tooltipHideDelay", "tooltipMouseTrack", "popupParent", "copyHeadersToClipboard", "copyGroupHeadersToClipboard", "clipboardDelimiter", "suppressCopyRowsToClipboard", "suppressCopySingleCellRanges", "suppressLastEmptyLineOnPaste", "suppressClipboardPaste", "suppressClipboardApi", "columnDefs", "defaultColDef", "defaultColGroupDef", "columnTypes", "maintainColumnOrder", "suppressFieldDotNotation", "deltaColumnMode", "applyColumnDefOrder", "immutableColumns", "suppressSetColumnStateEvents", "suppressColumnStateEvents", "colWidth", "minColWidth", "maxColWidth", "headerHeight", "groupHeaderHeight", "floatingFiltersHeight", "pivotHeaderHeight", "pivotGroupHeaderHeight", "allowDragFromColumnsToolPanel", "suppressMovableColumns", "suppressColumnMoveAnimation", "suppressDragLeaveHidesColumns", "suppressRowGroupHidesColumns", "colResizeDefault", "suppressAutoSize", "autoSizePadding", "skipHeaderOnAutoSize", "components", "frameworkComponents", "editType", "singleClickEdit", "suppressClickEdit", "readOnlyEdit", "stopEditingWhenCellsLoseFocus", "enterMovesDown", "enterMovesDownAfterEdit", "enableCellEditingOnBackspace", "undoRedoCellEditing", "undoRedoCellEditingLimit", "stopEditingWhenGridLosesFocus", "defaultCsvExportParams", "suppressCsvExport", "defaultExcelExportParams", "suppressExcelExport", "excelStyles", "defaultExportParams", "quickFilterText", "cacheQuickFilter", "excludeChildrenWhenTreeDataFiltering", "enableCharts", "chartThemes", "customChartThemes", "chartThemeOverrides", "enableChartToolPanelsButton", "chartToolPanelsDef", "loadingCellRenderer", "loadingCellRendererFramework", "loadingCellRendererParams", "loadingCellRendererSelector", "localeText", "masterDetail", "keepDetailRows", "keepDetailRowsCount", "detailCellRenderer", "detailCellRendererFramework", "detailCellRendererParams", "detailRowHeight", "detailRowAutoHeight", "context", "alignedGrids", "tabIndex", "rowBuffer", "valueCache", "valueCacheNeverExpires", "enableCellExpressions", "suppressParentsInRowNodes", "suppressTouch", "suppressFocusAfterRefresh", "suppressAsyncEvents", "suppressBrowserResizeObserver", "suppressPropertyNamesCheck", "suppressChangeDetection", "debug", "overlayLoadingTemplate", "loadingOverlayComponent", "loadingOverlayComponentFramework", "loadingOverlayComponentParams", "suppressLoadingOverlay", "overlayNoRowsTemplate", "noRowsOverlayComponent", "noRowsOverlayComponentFramework", "noRowsOverlayComponentParams", "suppressNoRowsOverlay", "pagination", "paginationPageSize", "paginationAutoPageSize", "paginateChildRows", "suppressPaginationPanel", "pivotMode", "pivotPanelShow", "pivotColumnGroupTotals", "pivotRowTotals", "pivotSuppressAutoColumn", "suppressExpandablePivotGroups", "functionsReadOnly", "aggFuncs", "suppressAggFuncInHeader", "suppressAggAtRootLevel", "aggregateOnlyChangedColumns", "suppressAggFilteredOnly", "removePivotHeaderRowWhenSingleValueColumn", "animateRows", "enableCellChangeFlash", "cellFlashDelay", "cellFadeDelay", "allowShowChangeAfterFilter", "domLayout", "ensureDomOrder", "enableRtl", "suppressColumnVirtualisation", "suppressMaxRenderedRowRestriction", "suppressRowVirtualisation", "rowDragManaged", "suppressRowDrag", "suppressMoveWhenRowDragging", "rowDragEntireRow", "rowDragMultiRow", "rowDragText", "fullWidthCellRenderer", "fullWidthCellRendererFramework", "fullWidthCellRendererParams", "embedFullWidthRows", "deprecatedEmbedFullWidthRows", "groupDisplayType", "groupDefaultExpanded", "autoGroupColumnDef", "groupMaintainOrder", "groupSelectsChildren", "groupAggFiltering", "groupIncludeFooter", "groupIncludeTotalFooter", "groupSuppressBlankHeader", "groupSelectsFiltered", "showOpenedGroup", "groupRemoveSingleChildren", "groupRemoveLowestSingleChildren", "groupHideOpenParents", "rowGroupPanelShow", "groupRowRenderer", "groupRowRendererFramework", "groupRowRendererParams", "suppressMakeColumnVisibleAfterUnGroup", "treeData", "rowGroupPanelSuppressSort", "groupRowsSticky", "groupRowInnerRenderer", "groupRowInnerRendererFramework", "groupMultiAutoColumn", "groupUseEntireRow", "groupSuppressAutoColumn", "rememberGroupStateWhenNewData", "pinnedTopRowData", "pinnedBottomRowData", "rowModelType", "rowData", "immutableData", "asyncTransactionWaitMillis", "suppressModelUpdateAfterUpdateTransaction", "deltaRowDataMode", "batchUpdateWaitMillis", "datasource", "cacheOverflowSize", "infiniteInitialRowCount", "serverSideInitialRowCount", "serverSideStoreType", "serverSideInfiniteScroll", "cacheBlockSize", "maxBlocksInCache", "maxConcurrentDatasourceRequests", "blockLoadDebounceMillis", "purgeClosedRowNodes", "serverSideDatasource", "serverSideSortAllLevels", "serverSideFilterAllLevels", "serverSideSortOnServer", "serverSideFilterOnServer", "serverSideSortingAlwaysResets", "serverSideFilteringAlwaysResets", "suppressEnterpriseResetOnNewColumns", "viewportDatasource", "viewportRowModelPageSize", "viewportRowModelBufferSize", "alwaysShowHorizontalScroll", "alwaysShowVerticalScroll", "debounceVerticalScrollbar", "suppressHorizontalScroll", "suppressScrollOnNewData", "suppressScrollWhenPopupsAreOpen", "suppressAnimationFrame", "suppressMiddleClickScrolls", "suppressPreventDefaultOnMouseWheel", "scrollbarWidth", "rowSelection", "rowMultiSelectWithClick", "suppressRowDeselection", "suppressRowClickSelection", "suppressCellSelection", "suppressCellFocus", "suppressMultiRangeSelection", "enableCellTextSelection", "enableRangeSelection", "enableRangeHandle", "enableFillHandle", "fillHandleDirection", "suppressClearOnFillReduction", "sortingOrder", "accentedSort", "unSortIcon", "suppressMultiSort", "alwaysMultiSort", "multiSortKey", "suppressMaintainUnsortedOrder", "icons", "rowHeight", "rowStyle", "rowClass", "rowClassRules", "suppressRowHoverHighlight", "suppressRowTransform", "columnHoverHighlight", "deltaSort", "treeDataDisplayType", "angularCompileRows", "angularCompileFilters", "functionsPassive", "enableGroupEdit", "getContextMenuItems", "getMainMenuItems", "postProcessPopup", "processCellForClipboard", "processHeaderForClipboard", "processGroupHeaderForClipboard", "processCellFromClipboard", "sendToClipboard", "processDataFromClipboard", "isExternalFilterPresent", "doesExternalFilterPass", "getChartToolbarItems", "createChartContainer", "navigateToNextHeader", "tabToNextHeader", "navigateToNextCell", "tabToNextCell", "suppressKeyboardEvent", "localeTextFunc", "getLocaleText", "getDocument", "paginationNumberFormatter", "groupRowAggNodes", "getGroupRowAgg", "isGroupOpenByDefault", "initialGroupOrderComparator", "defaultGroupOrderComparator", "processSecondaryColDef", "processSecondaryColGroupDef", "processPivotResultColDef", "processPivotResultColGroupDef", "getDataPath", "defaultGroupSortComparator", "getChildCount", "getServerSideGroupLevelParams", "getServerSideStoreParams", "isServerSideGroupOpenByDefault", "isApplyServerSideTransaction", "isServerSideGroup", "getServerSideGroupKey", "getBusinessKeyForNode", "getRowNodeId", "getRowId", "resetRowDataOnUpdate", "processRowPostCreate", "isRowSelectable", "isRowMaster", "fillOperation", "postSort", "postSortRows", "getRowStyle", "getRowClass", "getRowHeight", "isFullWidthCell", "isFullWidthRow"], outputs: ["toolPanelVisibleChanged", "toolPanelSizeChanged", "pasteStart", "pasteEnd", "columnVisible", "columnPinned", "columnResized", "columnMoved", "columnValueChanged", "columnPivotModeChanged", "columnPivotChanged", "columnGroupOpened", "newColumnsLoaded", "gridColumnsChanged", "displayedColumnsChanged", "virtualColumnsChanged", "columnEverythingChanged", "componentStateChanged", "cellValueChanged", "cellEditRequest", "rowValueChanged", "cellEditingStarted", "cellEditingStopped", "rowEditingStarted", "rowEditingStopped", "filterOpened", "filterChanged", "filterModified", "chartCreated", "chartRangeSelectionChanged", "chartOptionsChanged", "chartDestroyed", "cellKeyDown", "cellKeyPress", "gridReady", "firstDataRendered", "gridSizeChanged", "modelUpdated", "virtualRowRemoved", "viewportChanged", "bodyScroll", "bodyScrollEnd", "dragStarted", "dragStopped", "paginationChanged", "rowDragEnter", "rowDragMove", "rowDragLeave", "rowDragEnd", "columnRowGroupChanged", "rowGroupOpened", "expandOrCollapseAll", "pinnedRowDataChanged", "rowDataChanged", "rowDataUpdated", "asyncTransactionsFlushed", "cellClicked", "cellDoubleClicked", "cellFocused", "cellMouseOver", "cellMouseOut", "cellMouseDown", "rowClicked", "rowDoubleClicked", "rowSelected", "selectionChanged", "cellContextMenu", "rangeSelectionChanged", "sortChanged", "columnRowGroupChangeRequest", "columnPivotChangeRequest", "columnValueChangeRequest", "columnAggFuncChangeRequest"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i5.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i5.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i6.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i6.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i7.NgxMatDatetimepicker, selector: "ngx-mat-datetime-picker", exportAs: ["ngxMatDatetimePicker"] }, { kind: "directive", type: i7.NgxMatDatepickerInput, selector: "input[ngxMatDatetimePicker]", inputs: ["ngxMatDatetimePicker", "min", "max", "matDatepickerFilter"], exportAs: ["ngxMatDatepickerInput"] }, { kind: "component", type: i8.AttributeEditComponent, selector: "hci-attribute-edit" }], encapsulation: i0.ViewEncapsulation.None }); }
406
406
  }
407
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: AttributeFlexComponent, decorators: [{
407
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AttributeFlexComponent, decorators: [{
408
408
  type: Component,
409
409
  args: [{ selector: "hci-attribute-flex", encapsulation: ViewEncapsulation.None, template: `
410
410
  <!-- Line -->
@@ -50,10 +50,10 @@ export class DateUtil {
50
50
  }
51
51
  return newDate.getTime();
52
52
  }
53
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: DateUtil, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
54
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: DateUtil }); }
53
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: DateUtil, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
54
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: DateUtil }); }
55
55
  }
56
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: DateUtil, decorators: [{
56
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: DateUtil, decorators: [{
57
57
  type: Injectable
58
58
  }] });
59
59
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS11dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29kL3NyYy9kYXRlL2RhdGUtdXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBSXpDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBSWpDLE1BQU0sT0FBTyxRQUFRO0lBRW5CLE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLEtBQUs7UUFDaEMsSUFBSSxXQUFXLEdBQUcsUUFBUSxDQUFDLHVCQUF1QixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFELElBQUksV0FBVyxHQUFHLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMxRCxJQUFJLFdBQVcsS0FBSyxJQUFJLElBQUksV0FBVyxLQUFLLElBQUksRUFBRSxDQUFDO1lBQy9DLE9BQU8sQ0FBQyxDQUFDO1FBQ2IsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLElBQUksRUFBRSxDQUFDO1lBQ3ZCLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDZCxDQUFDO1FBQ0QsSUFBSSxXQUFXLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDdkIsT0FBTyxDQUFDLENBQUM7UUFDYixDQUFDO1FBQ0QsT0FBTyxXQUFXLEdBQUcsV0FBVyxDQUFDO0lBQ25DLENBQUM7SUFFRCxNQUFNLENBQUMsa0JBQWtCLENBQUMsS0FBSyxFQUFFLEtBQUs7UUFDcEMsSUFBSSxXQUFXLEdBQUcsUUFBUSxDQUFDLHlCQUF5QixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVELElBQUksV0FBVyxHQUFHLFFBQVEsQ0FBQyx5QkFBeUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM1RCxJQUFJLFdBQVcsS0FBSyxJQUFJLElBQUksV0FBVyxLQUFLLElBQUksRUFBRSxDQUFDO1lBQ2pELE9BQU8sQ0FBQyxDQUFDO1FBQ1gsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLElBQUksRUFBRSxDQUFDO1lBQ3pCLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDWixDQUFDO1FBQ0QsSUFBSSxXQUFXLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDekIsT0FBTyxDQUFDLENBQUM7UUFDWCxDQUFDO1FBQ0QsT0FBTyxXQUFXLEdBQUcsV0FBVyxDQUFDO0lBQ25DLENBQUM7SUFFRCxNQUFNLENBQUMsdUJBQXVCLENBQUMsSUFBSTtRQUNqQyxJQUFJLElBQUksS0FBSyxTQUFTLElBQUksSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQzlELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUVELElBQUksT0FBTyxHQUFHLEtBQUssQ0FBQyxJQUFJLEVBQUUsWUFBWSxFQUFFLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQztRQUVwRCxJQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUMsQ0FBQyxDQUFBLGFBQWE7WUFDL0MsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBQ0QsT0FBTyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELE1BQU0sQ0FBRSx5QkFBeUIsQ0FBQyxJQUFJO1FBQ3BDLElBQUksSUFBSSxLQUFLLFNBQVMsSUFBSSxJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUN2RCxPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFFRCxJQUFJLE9BQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxFQUFFLHFCQUFxQixFQUFFLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQztRQUM3RCxJQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUMsQ0FBQyxDQUFBLGFBQWE7WUFDL0MsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsT0FBTyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDM0IsQ0FBQzs4R0F4RFUsUUFBUTtrSEFBUixRQUFROzsyRkFBUixRQUFRO2tCQURwQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0h0dHBDbGllbnR9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5cclxuaW1wb3J0IHtCZWhhdmlvclN1YmplY3R9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IHBhcnNlIH0gZnJvbSBcImRhdGUtZm5zXCI7XHJcblxyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgRGF0ZVV0aWwge1xyXG4gIFxyXG4gIHN0YXRpYyBkYXRlQ29tcGFyYXRvcihkYXRlMSwgZGF0ZTIpIHtcclxuICAgIHZhciBkYXRlMU51bWJlciA9IERhdGVVdGlsLm1vbnRoVG9Db21wYXJhYmxlTnVtYmVyKGRhdGUxKTtcclxuICAgIHZhciBkYXRlMk51bWJlciA9IERhdGVVdGlsLm1vbnRoVG9Db21wYXJhYmxlTnVtYmVyKGRhdGUyKTtcclxuICAgIGlmIChkYXRlMU51bWJlciA9PT0gbnVsbCAmJiBkYXRlMk51bWJlciA9PT0gbnVsbCkge1xyXG4gICAgICAgIHJldHVybiAwO1xyXG4gICAgfVxyXG4gICAgaWYgKGRhdGUxTnVtYmVyID09PSBudWxsKSB7XHJcbiAgICAgICAgcmV0dXJuIC0xO1xyXG4gICAgfVxyXG4gICAgaWYgKGRhdGUyTnVtYmVyID09PSBudWxsKSB7XHJcbiAgICAgICAgcmV0dXJuIDE7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZGF0ZTFOdW1iZXIgLSBkYXRlMk51bWJlcjtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBkYXRlVGltZUNvbXBhcmF0b3IoZGF0ZTEsIGRhdGUyKXtcclxuICAgIHZhciBkYXRlMU51bWJlciA9IERhdGVVdGlsLmRheXRpbWVUb0NvbXBhcmFibGVOdW1iZXIoZGF0ZTEpO1xyXG4gICAgdmFyIGRhdGUyTnVtYmVyID0gRGF0ZVV0aWwuZGF5dGltZVRvQ29tcGFyYWJsZU51bWJlcihkYXRlMik7XHJcbiAgICBpZiAoZGF0ZTFOdW1iZXIgPT09IG51bGwgJiYgZGF0ZTJOdW1iZXIgPT09IG51bGwpIHtcclxuICAgICAgcmV0dXJuIDA7XHJcbiAgICB9XHJcbiAgICBpZiAoZGF0ZTFOdW1iZXIgPT09IG51bGwpIHtcclxuICAgICAgcmV0dXJuIC0xO1xyXG4gICAgfVxyXG4gICAgaWYgKGRhdGUyTnVtYmVyID09PSBudWxsKSB7XHJcbiAgICAgIHJldHVybiAxO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGRhdGUxTnVtYmVyIC0gZGF0ZTJOdW1iZXI7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgbW9udGhUb0NvbXBhcmFibGVOdW1iZXIoZGF0ZSkge1xyXG4gICAgaWYgKGRhdGUgPT09IHVuZGVmaW5lZCB8fCBkYXRlID09PSBudWxsIHx8IGRhdGUubGVuZ3RoICE9PSAxMCkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgdmFyIG5ld0RhdGUgPSBwYXJzZShkYXRlLCBcIk1NL2RkL3l5eXlcIiwgbmV3IERhdGUoKSk7XHJcbiAgICBcclxuICAgIGlmKE51bWJlci5pc05hTihuZXdEYXRlLmdldFRpbWUoKSkpey8vcGFyc2UgZXJyb3JcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbmV3RGF0ZS5nZXRUaW1lKCk7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgIGRheXRpbWVUb0NvbXBhcmFibGVOdW1iZXIoZGF0ZSkge1xyXG4gICAgaWYgKGRhdGUgPT09IHVuZGVmaW5lZCB8fCBkYXRlID09PSBudWxsIHx8IGRhdGUgPT09IFwiXCIpIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgdmFyIG5ld0RhdGUgPSBwYXJzZShkYXRlLCBcIk1NL2RkL3l5eXkgSEg6bW06c3NcIiwgbmV3IERhdGUoKSk7XHJcbiAgICBpZihOdW1iZXIuaXNOYU4obmV3RGF0ZS5nZXRUaW1lKCkpKXsvL3BhcnNlIGVycm9yXHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICByZXR1cm4gbmV3RGF0ZS5nZXRUaW1lKCk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuIl19
@@ -19,10 +19,10 @@ export class IsGroupAttributePipe {
19
19
  }
20
20
  });
21
21
  }
22
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: IsGroupAttributePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
23
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.1", ngImport: i0, type: IsGroupAttributePipe, name: "isGroupAttribute", pure: false }); }
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: IsGroupAttributePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
23
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.1.2", ngImport: i0, type: IsGroupAttributePipe, name: "isGroupAttribute", pure: false }); }
24
24
  }
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: IsGroupAttributePipe, decorators: [{
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: IsGroupAttributePipe, decorators: [{
26
26
  type: Pipe,
27
27
  args: [{
28
28
  name: "isGroupAttribute",