vcomply-workflow-engine 3.3.2 → 3.3.3
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/esm2020/lib/more-option/more-option.component.mjs +23 -33
- package/esm2020/lib/workflow/grc-object/grc-object-container/grc-object-container.component.mjs +79 -6
- package/esm2020/lib/workflow/shared/components/attributes/attributes-text-box/attributes-text-box.component.mjs +1 -1
- package/esm2020/lib/workflow/shared/components/attributes/attributes.component.mjs +1 -1
- package/esm2020/lib/workflow/shared/components/edit-mode/edit-mode.component.mjs +32 -10
- package/esm2020/lib/workflow/shared/components/grc-category-listing/grc-category-listing.component.mjs +20 -4
- package/esm2020/lib/workflow/shared/components/grc-responsibility-listing/grc-responsibility-listing.component.mjs +62 -60
- package/esm2020/lib/workflow/shared/components/grc-risk-listing/grc-risk-listing.component.mjs +191 -0
- package/esm2020/lib/workflow/shared/components/grc-sub-category-listing/grc-sub-category-listing.component.mjs +77 -11
- package/esm2020/lib/workflow/shared/components/list-popup/list-popup.component.mjs +24 -2
- package/esm2020/lib/workflow/shared/components/program-responsibility-listing/program-responsibility-listing.component.mjs +393 -0
- package/esm2020/lib/workflow/shared/components/risk-category-risk-listing/risk-category-risk-listing.component.mjs +5 -5
- package/esm2020/lib/workflow/shared/components/text-field/text-field.component.mjs +29 -24
- package/esm2020/lib/workflow/shared/constants/field-text.constant.mjs +3 -1
- package/esm2020/lib/workflow/shared/constants/link-responsibility.constant.mjs +19 -0
- package/esm2020/lib/workflow/shared/constants/pagination-limits.constant.mjs +6 -0
- package/esm2020/lib/workflow/shared/interfaces/add-grc.mjs +1 -1
- package/esm2020/lib/workflow/shared/services/grc.service.mjs +83 -1
- package/esm2020/lib/workflow-compliance/workflow-compliance.component.mjs +181 -42
- package/esm2020/lib/workflow-engine.module.mjs +2 -5
- package/esm2020/lib/workflow-grc/workflow-grc.component.mjs +2 -2
- package/esm2020/lib/workflow-policy/workflow-policy.component.mjs +2 -2
- package/fesm2015/vcomply-workflow-engine.mjs +1140 -142
- package/fesm2015/vcomply-workflow-engine.mjs.map +1 -1
- package/fesm2020/vcomply-workflow-engine.mjs +1090 -112
- package/fesm2020/vcomply-workflow-engine.mjs.map +1 -1
- package/lib/workflow/grc-object/grc-object-container/grc-object-container.component.d.ts +8 -1
- package/lib/workflow/shared/components/attributes/attributes-text-box/attributes-text-box.component.d.ts +2 -0
- package/lib/workflow/shared/components/edit-mode/edit-mode.component.d.ts +2 -1
- package/lib/workflow/shared/components/grc-category-listing/grc-category-listing.component.d.ts +5 -1
- package/lib/workflow/shared/components/grc-responsibility-listing/grc-responsibility-listing.component.d.ts +11 -9
- package/lib/workflow/shared/components/grc-risk-listing/grc-risk-listing.component.d.ts +35 -0
- package/lib/workflow/shared/components/grc-sub-category-listing/grc-sub-category-listing.component.d.ts +17 -2
- package/lib/workflow/shared/components/program-responsibility-listing/program-responsibility-listing.component.d.ts +76 -0
- package/lib/workflow/shared/components/risk-category-risk-listing/risk-category-risk-listing.component.d.ts +2 -2
- package/lib/workflow/shared/constants/field-text.constant.d.ts +2 -0
- package/lib/workflow/shared/constants/link-responsibility.constant.d.ts +7 -0
- package/lib/workflow/shared/constants/pagination-limits.constant.d.ts +5 -0
- package/lib/workflow/shared/interfaces/add-grc.d.ts +3 -1
- package/lib/workflow/shared/services/grc.service.d.ts +10 -0
- package/lib/workflow-compliance/workflow-compliance.component.d.ts +26 -2
- package/lib/workflow-engine.module.d.ts +33 -34
- package/package.json +1 -1
|
@@ -7,7 +7,7 @@ import { PopoverModule } from '../../../../ui-kit/popover/popover.module';
|
|
|
7
7
|
import { TooltipModule } from '../../../../ui-kit/tooltip/tooltip.module';
|
|
8
8
|
import { TableCardComponent } from '../table-card/table-card.component';
|
|
9
9
|
import { GrcCategoryListingComponent } from '../grc-category-listing/grc-category-listing.component';
|
|
10
|
-
import {
|
|
10
|
+
import { GrcRiskListingComponent } from '../grc-risk-listing/grc-risk-listing.component';
|
|
11
11
|
import { TABLE_CARD } from '../../constants/grcObject.constant';
|
|
12
12
|
import { NoDataModule } from '../../../../ui-kit/no-data/no-data.module';
|
|
13
13
|
import { LINKS } from '../../constants/cdn-link.constant';
|
|
@@ -210,7 +210,7 @@ export class RiskCategoryRiskListingComponent {
|
|
|
210
210
|
}
|
|
211
211
|
}
|
|
212
212
|
RiskCategoryRiskListingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RiskCategoryRiskListingComponent, deps: [{ token: i1.GrcService }], target: i0.ɵɵFactoryTarget.Component });
|
|
213
|
-
RiskCategoryRiskListingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: RiskCategoryRiskListingComponent, isStandalone: true, selector: "app-risk-category-risk-listing", inputs: { selectedTab: "selectedTab", selectedCatAndRiskData: ["selectedCatAndRisk", "selectedCatAndRiskData"] }, outputs: { closeUsersList: "closeUsersList" }, viewQueries: [{ propertyName: "responsibilityListingComponent", first: true, predicate: ["dataListing"], descendants: true }], ngImport: i0, template: "<div class=\"risk-category-risk-listing\" [class.animate]=\"animation\">\r\n <div class=\"risk-category-risk-listing-head vx-d-flex vx-align-center vx-justify-between vx-pl-4 vx-pr-4\">\r\n <h3 class=\"vx-fs-14 vx-fw-500 vx-label-txt\">Select Risks</h3></div>\r\n <div class=\"risk-category-risk-listing-body\">\r\n <app-table-card class=\"vx-w-100\" [tableCard]=\"tableCard\" [singleSelectedText]=\"'Category Selected'\" [multipleSelectedText]=\"'Categories Selected'\" (setSelectedTab)=\"setSelectedTab($event)\" [selectedTab]=\"1\"></app-table-card>\r\n <div class=\"search-block vx-mb-2\">\r\n <i class=\"icons\"></i>\r\n <input type=\"text\" #searchRiskCategory (keyup.enter)=\"handleSearch($event.target.value)\" placeholder=\"Search Risk Categories\" />\r\n </div>\r\n <div class=\"risk-category-risk-listing-body-inner vx-mb-2 vx-d-flex\" [class.with-noData]=\"(!isCategoryLoader && !categoriesList?.length)\">\r\n <ng-container *ngIf=\"isCategoryLoader || categoriesList?.length\">\r\n <div class=\"inner-item-left vx-pr-2\">\r\n <app-grc-category-listing *ngIf=\"!isCategoryLoader\" [headerText]=\"'Risk Categories'\" [categories]=\"categoriesList\" [selectedCatAndRisk]=\"selectedCatAndRisk\" [tableCard]=\"tableCard\" [currentPage]=\"categoryCurrentPage\" [selectedTabIndex]=\"selectedTab\" [selectedCategoryIds]=\"selectedCategoryIds\" (activeSelectedCategory)=\"activeSelectedCategory($event)\" (onCategoryPageChange)=\"onCategoryPageChange($event)\"></app-grc-category-listing>\r\n <app-list-loader *ngIf=\"isCategoryLoader\"></app-list-loader>\r\n </div>\r\n <div class=\"inner-item-right\">\r\n <app-grc-
|
|
213
|
+
RiskCategoryRiskListingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: RiskCategoryRiskListingComponent, isStandalone: true, selector: "app-risk-category-risk-listing", inputs: { selectedTab: "selectedTab", selectedCatAndRiskData: ["selectedCatAndRisk", "selectedCatAndRiskData"] }, outputs: { closeUsersList: "closeUsersList" }, viewQueries: [{ propertyName: "responsibilityListingComponent", first: true, predicate: ["dataListing"], descendants: true }], ngImport: i0, template: "<div class=\"risk-category-risk-listing\" [class.animate]=\"animation\">\r\n <div class=\"risk-category-risk-listing-head vx-d-flex vx-align-center vx-justify-between vx-pl-4 vx-pr-4\">\r\n <h3 class=\"vx-fs-14 vx-fw-500 vx-label-txt\">Select Risks</h3></div>\r\n <div class=\"risk-category-risk-listing-body\">\r\n <app-table-card class=\"vx-w-100\" [tableCard]=\"tableCard\" [singleSelectedText]=\"'Category Selected'\" [multipleSelectedText]=\"'Categories Selected'\" (setSelectedTab)=\"setSelectedTab($event)\" [selectedTab]=\"1\"></app-table-card>\r\n <div class=\"search-block vx-mb-2\">\r\n <i class=\"icons\"></i>\r\n <input type=\"text\" #searchRiskCategory (keyup.enter)=\"handleSearch($event.target.value)\" placeholder=\"Search Risk Categories\" />\r\n </div>\r\n <div class=\"risk-category-risk-listing-body-inner vx-mb-2 vx-d-flex\" [class.with-noData]=\"(!isCategoryLoader && !categoriesList?.length)\">\r\n <ng-container *ngIf=\"isCategoryLoader || categoriesList?.length\">\r\n <div class=\"inner-item-left vx-pr-2\">\r\n <app-grc-category-listing *ngIf=\"!isCategoryLoader\" [headerText]=\"'Risk Categories'\" [categories]=\"categoriesList\" [selectedCatAndRisk]=\"selectedCatAndRisk\" [tableCard]=\"tableCard\" [currentPage]=\"categoryCurrentPage\" [selectedTabIndex]=\"selectedTab\" [selectedCategoryIds]=\"selectedCategoryIds\" (activeSelectedCategory)=\"activeSelectedCategory($event)\" (onCategoryPageChange)=\"onCategoryPageChange($event)\"></app-grc-category-listing>\r\n <app-list-loader *ngIf=\"isCategoryLoader\"></app-list-loader>\r\n </div>\r\n <div class=\"inner-item-right\">\r\n <app-grc-risk-listing #dataListing *ngIf=\"!isRiskLoader && !isCategoryLoader && risksList?.length\" [headerText]=\"'Risk Name'\" [dataList]=\"risksList\" [activeCategory]=\"activeCategory\" [selectedCatAndRisk]=\"selectedCatAndRisk\" (changeSelectedCatAndRisk)=\"changeSelectedCatAndRisk($event)\" [currentPage]=\"riskCurrentPage\" [perPageLimit]=\"activeCategory?.categoryRiskLimit\" [totalListData]=\"activeCategory?.categoryRiskCount\" [totalPages]=\"getTotalRiskPage()\" (getUpdatedDataList)=\"getUpdatedDataList($event)\" ></app-grc-risk-listing>\r\n <app-list-loader *ngIf=\"isRiskLoader || isCategoryLoader\"></app-list-loader>\r\n <app-no-data *ngIf=\"risksList?.length === 0 && !(isRiskLoader || isCategoryLoader)\" [noDataImage]=\"CDN_LINK?.noData\" [noDataText]=\"'No data to display'\"></app-no-data>\r\n </div>\r\n </ng-container>\r\n <app-no-data *ngIf=\"(!isCategoryLoader && !categoriesList?.length)\" [noDataImage]=\"CDN_LINK?.noData\" [noDataText]=\"'No data to display'\"></app-no-data>\r\n </div>\r\n <app-floating-bar [selectedData]=\"selectedRisks?.length ? selectedRisks : []\" (closeList)=\"close()\" (closeEvent)=\"save()\" [displayElementKey]=\"'name'\" [singularText]=\"'Risk selected'\" [pluralText]=\"'Risks selected'\" (deleteEvent)=\"deleteEvent($event)\"></app-floating-bar>\r\n </div>\r\n</div>", styles: ["@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";::ng-deep .risk-category-risk-listing{position:fixed;inset:0 30px 0 0}::ng-deep .risk-category-risk-listing:before{background:#1E5DD3;content:\"\";position:absolute;top:0;left:0;right:0;width:100%;height:3px}::ng-deep .risk-category-risk-listing.animate{animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;z-index:-1}::ng-deep .risk-category-risk-listing-head{background:#fbfbfb;height:2.75rem;border-bottom:1px solid #f1f1f1}::ng-deep .risk-category-risk-listing-body{background:#fff;height:calc(100vh - 2.75rem);padding:2rem}::ng-deep .risk-category-risk-listing-body .search-block{position:relative}::ng-deep .risk-category-risk-listing-body .search-block input{height:2.75rem;line-height:1.5rem;padding:.5rem 1rem .5rem 2.5rem;outline:none;border:1px solid #7475763f;border-radius:.25rem;width:100%;font-size:14px;color:#747576}::ng-deep .risk-category-risk-listing-body .search-block input:focus{border-color:#1e5dd3}::ng-deep .risk-category-risk-listing-body .search-block input::placeholder{color:#747576}::ng-deep .risk-category-risk-listing-body .search-block i{position:absolute;left:1rem;font-size:12px;font-weight:400;top:1rem;pointer-events:none;color:#f1f1f1}::ng-deep .risk-category-risk-listing-body-inner{height:calc(100vh - 17.5rem)}::ng-deep .risk-category-risk-listing-body-inner.with-noData{align-items:center;justify-content:center}::ng-deep .risk-category-risk-listing-body-inner .inner-item-left{width:25%}::ng-deep .risk-category-risk-listing-body-inner .inner-item-right{width:75%}@keyframes animate-right{0%{transform:translate(100%)}to{transform:translate(0)}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: PopoverModule }, { kind: "ngmodule", type: FormgroupModule }, { kind: "ngmodule", type: TooltipModule }, { kind: "ngmodule", type: FloatingBarModule }, { kind: "component", type: i3.FloatingBarComponent, selector: "app-floating-bar", inputs: ["selectedData", "selectedGroups", "displayElementKey", "elementId", "singularText", "pluralText", "showNextButton", "showFrequencyText", "showWorkflow", "workflowText", "currentFrequency", "isDisabled", "workflowList", "selectedWorkflow", "workflowPlaceHolder", "mode", "defaultSelected", "groupsEnabled", "nonRemovableUsersList", "removePosition"], outputs: ["closeEvent", "deleteEvent", "closeList", "deleteGroupEvent", "workflowTypeChanged"] }, { kind: "ngmodule", type: PaginationModule }, { kind: "component", type: TableCardComponent, selector: "app-table-card", inputs: ["singleSelectedText", "multipleSelectedText", "selectedTab", "tableCard"], outputs: ["setSelectedTab"] }, { kind: "component", type: GrcCategoryListingComponent, selector: "app-grc-category-listing", inputs: ["tableCard", "headerText", "currentPage", "selectedTabIndex", "selectedCatAndRisk", "selectedCategoryIds", "categories", "programData"], outputs: ["activeSelectedCategory", "onCategoryPageChange"] }, { kind: "component", type: GrcRiskListingComponent, selector: "app-grc-risk-listing", inputs: ["tableCard", "activeCategory", "headerText", "currentPage", "perPageLimit", "totalListData", "totalPages", "selectedListData", "selectedListDataIds", "selectedCatAndRisk", "calledFrom", "dataList"], outputs: ["getUpdatedDataList", "changeSelectedCatAndRisk"] }, { kind: "ngmodule", type: ListLoaderModule }, { kind: "component", type: i4.ListLoaderComponent, selector: "app-list-loader" }, { kind: "ngmodule", type: NoDataModule }, { kind: "component", type: i5.NoDataComponent, selector: "app-no-data", inputs: ["action", "secondaryAction", "noDataImage", "noDataText", "noDataButton", "secondaryButton", "noDataSecButton", "altText", "smallButton"], outputs: ["buttonAction", "secondaryActionButton"] }] });
|
|
214
214
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RiskCategoryRiskListingComponent, decorators: [{
|
|
215
215
|
type: Component,
|
|
216
216
|
args: [{ selector: 'app-risk-category-risk-listing', standalone: true, imports: [
|
|
@@ -222,10 +222,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
222
222
|
PaginationModule,
|
|
223
223
|
TableCardComponent,
|
|
224
224
|
GrcCategoryListingComponent,
|
|
225
|
-
|
|
225
|
+
GrcRiskListingComponent,
|
|
226
226
|
ListLoaderModule,
|
|
227
227
|
NoDataModule,
|
|
228
|
-
], inputs: ['selectedTab'], outputs: ['closeUsersList'], template: "<div class=\"risk-category-risk-listing\" [class.animate]=\"animation\">\r\n <div class=\"risk-category-risk-listing-head vx-d-flex vx-align-center vx-justify-between vx-pl-4 vx-pr-4\">\r\n <h3 class=\"vx-fs-14 vx-fw-500 vx-label-txt\">Select Risks</h3></div>\r\n <div class=\"risk-category-risk-listing-body\">\r\n <app-table-card class=\"vx-w-100\" [tableCard]=\"tableCard\" [singleSelectedText]=\"'Category Selected'\" [multipleSelectedText]=\"'Categories Selected'\" (setSelectedTab)=\"setSelectedTab($event)\" [selectedTab]=\"1\"></app-table-card>\r\n <div class=\"search-block vx-mb-2\">\r\n <i class=\"icons\"></i>\r\n <input type=\"text\" #searchRiskCategory (keyup.enter)=\"handleSearch($event.target.value)\" placeholder=\"Search Risk Categories\" />\r\n </div>\r\n <div class=\"risk-category-risk-listing-body-inner vx-mb-2 vx-d-flex\" [class.with-noData]=\"(!isCategoryLoader && !categoriesList?.length)\">\r\n <ng-container *ngIf=\"isCategoryLoader || categoriesList?.length\">\r\n <div class=\"inner-item-left vx-pr-2\">\r\n <app-grc-category-listing *ngIf=\"!isCategoryLoader\" [headerText]=\"'Risk Categories'\" [categories]=\"categoriesList\" [selectedCatAndRisk]=\"selectedCatAndRisk\" [tableCard]=\"tableCard\" [currentPage]=\"categoryCurrentPage\" [selectedTabIndex]=\"selectedTab\" [selectedCategoryIds]=\"selectedCategoryIds\" (activeSelectedCategory)=\"activeSelectedCategory($event)\" (onCategoryPageChange)=\"onCategoryPageChange($event)\"></app-grc-category-listing>\r\n <app-list-loader *ngIf=\"isCategoryLoader\"></app-list-loader>\r\n </div>\r\n <div class=\"inner-item-right\">\r\n <app-grc-
|
|
228
|
+
], inputs: ['selectedTab'], outputs: ['closeUsersList'], template: "<div class=\"risk-category-risk-listing\" [class.animate]=\"animation\">\r\n <div class=\"risk-category-risk-listing-head vx-d-flex vx-align-center vx-justify-between vx-pl-4 vx-pr-4\">\r\n <h3 class=\"vx-fs-14 vx-fw-500 vx-label-txt\">Select Risks</h3></div>\r\n <div class=\"risk-category-risk-listing-body\">\r\n <app-table-card class=\"vx-w-100\" [tableCard]=\"tableCard\" [singleSelectedText]=\"'Category Selected'\" [multipleSelectedText]=\"'Categories Selected'\" (setSelectedTab)=\"setSelectedTab($event)\" [selectedTab]=\"1\"></app-table-card>\r\n <div class=\"search-block vx-mb-2\">\r\n <i class=\"icons\"></i>\r\n <input type=\"text\" #searchRiskCategory (keyup.enter)=\"handleSearch($event.target.value)\" placeholder=\"Search Risk Categories\" />\r\n </div>\r\n <div class=\"risk-category-risk-listing-body-inner vx-mb-2 vx-d-flex\" [class.with-noData]=\"(!isCategoryLoader && !categoriesList?.length)\">\r\n <ng-container *ngIf=\"isCategoryLoader || categoriesList?.length\">\r\n <div class=\"inner-item-left vx-pr-2\">\r\n <app-grc-category-listing *ngIf=\"!isCategoryLoader\" [headerText]=\"'Risk Categories'\" [categories]=\"categoriesList\" [selectedCatAndRisk]=\"selectedCatAndRisk\" [tableCard]=\"tableCard\" [currentPage]=\"categoryCurrentPage\" [selectedTabIndex]=\"selectedTab\" [selectedCategoryIds]=\"selectedCategoryIds\" (activeSelectedCategory)=\"activeSelectedCategory($event)\" (onCategoryPageChange)=\"onCategoryPageChange($event)\"></app-grc-category-listing>\r\n <app-list-loader *ngIf=\"isCategoryLoader\"></app-list-loader>\r\n </div>\r\n <div class=\"inner-item-right\">\r\n <app-grc-risk-listing #dataListing *ngIf=\"!isRiskLoader && !isCategoryLoader && risksList?.length\" [headerText]=\"'Risk Name'\" [dataList]=\"risksList\" [activeCategory]=\"activeCategory\" [selectedCatAndRisk]=\"selectedCatAndRisk\" (changeSelectedCatAndRisk)=\"changeSelectedCatAndRisk($event)\" [currentPage]=\"riskCurrentPage\" [perPageLimit]=\"activeCategory?.categoryRiskLimit\" [totalListData]=\"activeCategory?.categoryRiskCount\" [totalPages]=\"getTotalRiskPage()\" (getUpdatedDataList)=\"getUpdatedDataList($event)\" ></app-grc-risk-listing>\r\n <app-list-loader *ngIf=\"isRiskLoader || isCategoryLoader\"></app-list-loader>\r\n <app-no-data *ngIf=\"risksList?.length === 0 && !(isRiskLoader || isCategoryLoader)\" [noDataImage]=\"CDN_LINK?.noData\" [noDataText]=\"'No data to display'\"></app-no-data>\r\n </div>\r\n </ng-container>\r\n <app-no-data *ngIf=\"(!isCategoryLoader && !categoriesList?.length)\" [noDataImage]=\"CDN_LINK?.noData\" [noDataText]=\"'No data to display'\"></app-no-data>\r\n </div>\r\n <app-floating-bar [selectedData]=\"selectedRisks?.length ? selectedRisks : []\" (closeList)=\"close()\" (closeEvent)=\"save()\" [displayElementKey]=\"'name'\" [singularText]=\"'Risk selected'\" [pluralText]=\"'Risks selected'\" (deleteEvent)=\"deleteEvent($event)\"></app-floating-bar>\r\n </div>\r\n</div>", styles: ["@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";@import\"https://cdn.v-comply.com/design-system/css/display/display.css\";::ng-deep .risk-category-risk-listing{position:fixed;inset:0 30px 0 0}::ng-deep .risk-category-risk-listing:before{background:#1E5DD3;content:\"\";position:absolute;top:0;left:0;right:0;width:100%;height:3px}::ng-deep .risk-category-risk-listing.animate{animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;z-index:-1}::ng-deep .risk-category-risk-listing-head{background:#fbfbfb;height:2.75rem;border-bottom:1px solid #f1f1f1}::ng-deep .risk-category-risk-listing-body{background:#fff;height:calc(100vh - 2.75rem);padding:2rem}::ng-deep .risk-category-risk-listing-body .search-block{position:relative}::ng-deep .risk-category-risk-listing-body .search-block input{height:2.75rem;line-height:1.5rem;padding:.5rem 1rem .5rem 2.5rem;outline:none;border:1px solid #7475763f;border-radius:.25rem;width:100%;font-size:14px;color:#747576}::ng-deep .risk-category-risk-listing-body .search-block input:focus{border-color:#1e5dd3}::ng-deep .risk-category-risk-listing-body .search-block input::placeholder{color:#747576}::ng-deep .risk-category-risk-listing-body .search-block i{position:absolute;left:1rem;font-size:12px;font-weight:400;top:1rem;pointer-events:none;color:#f1f1f1}::ng-deep .risk-category-risk-listing-body-inner{height:calc(100vh - 17.5rem)}::ng-deep .risk-category-risk-listing-body-inner.with-noData{align-items:center;justify-content:center}::ng-deep .risk-category-risk-listing-body-inner .inner-item-left{width:25%}::ng-deep .risk-category-risk-listing-body-inner .inner-item-right{width:75%}@keyframes animate-right{0%{transform:translate(100%)}to{transform:translate(0)}}\n"] }]
|
|
229
229
|
}], ctorParameters: function () { return [{ type: i1.GrcService }]; }, propDecorators: { selectedCatAndRiskData: [{
|
|
230
230
|
type: Input,
|
|
231
231
|
args: ['selectedCatAndRisk']
|
|
@@ -233,4 +233,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
233
233
|
type: ViewChild,
|
|
234
234
|
args: ['dataListing']
|
|
235
235
|
}] } });
|
|
236
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmlzay1jYXRlZ29yeS1yaXNrLWxpc3RpbmcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvd29ya2Zsb3cvc2hhcmVkL2NvbXBvbmVudHMvcmlzay1jYXRlZ29yeS1yaXNrLWxpc3Rpbmcvcmlzay1jYXRlZ29yeS1yaXNrLWxpc3RpbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvd29ya2Zsb3cvc2hhcmVkL2NvbXBvbmVudHMvcmlzay1jYXRlZ29yeS1yaXNrLWxpc3Rpbmcvcmlzay1jYXRlZ29yeS1yaXNrLWxpc3RpbmcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0RBQStELENBQUM7QUFDbEcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQ25GLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDMUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDckcsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sb0VBQW9FLENBQUM7QUFFdkgsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkRBQTZELENBQUM7Ozs7Ozs7QUF1Qi9GLE1BQU0sT0FBTyxnQ0FBZ0M7SUFvQzNDLFlBQW9CLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFuQzFDLGNBQVMsR0FBRyxVQUFVLENBQUM7UUFDdkIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUtqQixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUN6QixpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUVyQixnQkFBVyxHQUFXLENBQUMsQ0FBQztRQUN4Qix3QkFBbUIsR0FBVyxDQUFDLENBQUM7UUFDaEMsaUJBQVksR0FBVyxFQUFFLENBQUM7UUFDMUIsbUJBQWMsR0FBUSxFQUFFLENBQUM7UUFDekIsY0FBUyxHQUFRLEVBQUUsQ0FBQztRQUNwQixtQkFBYyxHQUFRLEVBQUUsQ0FBQztRQUN6QixvQkFBZSxHQUFXLENBQUMsQ0FBQztRQUM1Qix1QkFBa0IsR0FBUSxFQUFFLENBQUM7UUFDN0IsMEJBQXFCLEdBQVEsRUFBRSxDQUFDO1FBQ2hDLHdCQUFtQixHQUFRLEVBQUUsQ0FBQztRQUM5Qix1QkFBa0IsR0FBUSxFQUFFLENBQUM7UUFDN0Isa0JBQWEsR0FBUSxFQUFFLENBQUM7UUFTeEIsbUJBQWMsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUtWLENBQUM7SUFaOUMsSUFBaUMsc0JBQXNCLENBQUMsS0FBVTtRQUNoRSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUMvRCxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFTRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdEIsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNSLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxjQUFjLENBQUMsS0FBVTtRQUN2QixJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssRUFBRSxJQUFJLENBQUM7UUFDL0IsSUFBSSxDQUFDLG1CQUFtQixHQUFHLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUU7WUFDN0IsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3pDO1FBQ0QsSUFBSSxVQUFVLEdBQUc7WUFDZixNQUFNLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixJQUFJLENBQUM7WUFDckMsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZLElBQUksRUFBRTtZQUNyQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFdBQVcsSUFBSSxDQUFDO1NBQzVCLENBQUM7UUFDRixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO1FBQzdCLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMsVUFBVTthQUN4QyxpQkFBaUIsQ0FBQyxVQUFVLENBQUM7YUFDN0IsU0FBUyxDQUNSLENBQUMsR0FBUSxFQUFFLEVBQUU7WUFDWCxJQUFJLENBQUMsY0FBYyxHQUFHLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxRQUFhLEVBQUUsRUFBRTtnQkFDL0MsT0FBTztvQkFDTCxHQUFHLFFBQVE7b0JBQ1gsSUFBSSxFQUFFLFFBQVEsRUFBRSxhQUFhO2lCQUM5QixDQUFDO1lBQ0osQ0FBQyxDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsZUFBZSxHQUFHLENBQUMsQ0FBQztZQUN6QixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsTUFBTTtnQkFDL0MsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO2dCQUN4QixDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ1AsSUFBSSxDQUFDLGNBQWMsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQ3hELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFDaEMsQ0FBQyxFQUNELENBQUMsR0FBUSxFQUFFLEVBQUU7WUFDWCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQ2hDLENBQUMsQ0FDRixDQUFDO0lBQ04sQ0FBQztJQUVELGtCQUFrQjtRQUNoQixJQUFJLFVBQVUsR0FBRztZQUNmLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWSxJQUFJLEVBQUU7U0FDdEMsQ0FBQztRQUNGLElBQUksQ0FBQyxVQUFVLENBQUMsc0JBQXNCLENBQUMsVUFBVSxDQUFDLENBQUMsU0FBUyxDQUMxRCxDQUFDLEdBQVEsRUFBRSxFQUFFO1lBQ1gsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUU7Z0JBQ3JDLE9BQU87b0JBQ0wsS0FBSyxFQUFFLElBQUksRUFBRSxnQkFBZ0I7b0JBQzdCLEtBQUssRUFBRSxJQUFJLEVBQUUsYUFBYTtvQkFDMUIsSUFBSSxFQUFFLElBQUksRUFBRSxZQUFZO2lCQUN6QixDQUFDO1lBQ0osQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLEVBQ0QsQ0FBQyxHQUFRLEVBQUUsRUFBRSxHQUFFLENBQUMsQ0FDakIsQ0FBQztJQUNKLENBQUM7SUFFRCxXQUFXLENBQUMsV0FBaUI7UUFDM0IsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDekIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3JDO1FBQ0QsSUFBSSxPQUFPLEdBQUc7WUFDWixDQUFDLEVBQUUsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDO1lBQzVCLENBQUMsRUFBRSxJQUFJLENBQUMsWUFBWSxJQUFJLEVBQUU7WUFDMUIsSUFBSSxFQUFFLElBQUksQ0FBQyxXQUFXLElBQUksQ0FBQztZQUMzQixNQUFNLEVBQUUsZUFBZTtZQUN2QixXQUFXLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxXQUFXLElBQUksRUFBRTtTQUNwRCxDQUFDO1FBQ0YsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7UUFDekIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFNBQVMsQ0FDakUsQ0FBQyxHQUFRLEVBQUUsRUFBRTtZQUNYLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2hELElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1FBQzVCLENBQUMsRUFDRCxDQUFDLEdBQVEsRUFBRSxFQUFFO1lBQ1gsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7UUFDNUIsQ0FBQyxDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsb0JBQW9CLENBQUMsR0FBUTtRQUMzQixNQUFNLElBQUksR0FBRyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUU7WUFDbEMsT0FBTztnQkFDTCxHQUFHLElBQUk7Z0JBQ1AsSUFBSSxFQUFFLElBQUksRUFBRSxRQUFRO2dCQUNwQixTQUFTLEVBQUUsSUFBSSxFQUFFLGFBQWE7Z0JBQzlCLEdBQUcsRUFBRSxJQUFJLEVBQUUsZUFBZTtnQkFDMUIsV0FBVyxFQUFFO29CQUNYLElBQUksRUFBRSxJQUFJLEVBQUUsVUFBVTtvQkFDdEIsS0FBSyxFQUFFLElBQUksRUFBRSxXQUFXO29CQUN4QixVQUFVLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixJQUFJLEVBQUU7b0JBQ3hDLFNBQVMsRUFBRSxJQUFJLEVBQUUsY0FBYztpQkFDaEM7Z0JBQ0QsV0FBVyxFQUFFLEVBQUU7Z0JBQ2YsVUFBVSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsTUFBVyxFQUFFLEVBQUU7b0JBQzVDLE9BQU87d0JBQ0wsSUFBSSxFQUFFLE1BQU0sRUFBRSxPQUFPO3FCQUN0QixDQUFDO2dCQUNKLENBQUMsQ0FBQzthQUNILENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELHNCQUFzQixDQUFDLEtBQVU7UUFDL0IsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLEVBQUUsUUFBUSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxlQUFlLEdBQUcsQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxLQUFVO1FBQzNCLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxFQUFFLE1BQU0sQ0FBQztRQUNyQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELGdCQUFnQjtRQUNkLE1BQU0sU0FBUyxHQUNiLElBQUksQ0FBQyxjQUFjLEVBQUUsaUJBQWlCO1lBQ3RDLElBQUksQ0FBQyxjQUFjLEVBQUUsaUJBQWlCLENBQUM7UUFDekMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQVU7UUFDckIsSUFBSSxJQUFJLENBQUMsWUFBWSxJQUFJLEtBQUssRUFBRTtZQUM5QixJQUFJLENBQUMsbUJBQW1CLEdBQUcsQ0FBQyxDQUFDO1lBQzdCLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1lBQzFCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1NBQzNCO0lBQ0gsQ0FBQztJQUVELEtBQUs7UUFDSCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxLQUFVO1FBQzdCLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLEVBQUUsTUFBTSxDQUFDO1FBQ3pDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCx3QkFBd0IsQ0FBQyxLQUFVO1FBQ2pDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxLQUFLLENBQUM7UUFDaEMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsdUJBQXVCLENBQUMsWUFBaUI7UUFDdkMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEVBQUUsQ0FBQztRQUM5QixZQUFZLEVBQUUsT0FBTyxDQUFDLENBQUMsUUFBYSxFQUFFLEVBQUU7WUFDdEMsSUFBSSxRQUFRLEVBQUUsUUFBUSxFQUFFLEdBQUcsS0FBSyxlQUFlLEVBQUU7Z0JBQy9DLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7YUFDakQ7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLG1CQUFtQixFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsUUFBUSxFQUFFLFdBQVcsQ0FBQyxDQUFDO2FBQ2pFO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsc0JBQXNCLENBQUMsWUFBaUI7UUFDdEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEVBQUUsQ0FBQztRQUM3QixZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUU7WUFDakMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDeEMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDL0MsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQVU7UUFDcEIsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLFdBQVcsSUFBSSxLQUFLLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQzdELElBQUksQ0FBQyw4QkFBOEIsQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO1NBQ25FO2FBQU07WUFDTCxJQUFJLENBQUMsOEJBQThCLEVBQUUsa0JBQWtCLENBQ3JELEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQ3JCLEtBQUssQ0FDTixDQUFDO1NBQ0g7SUFDSCxDQUFDOzs2SEFsT1UsZ0NBQWdDO2lIQUFoQyxnQ0FBZ0MsMFhDNUM3Qyx1cUdBeUJNLDB3RERFRixZQUFZLGtJQUNaLGFBQWEsOEJBQ2IsZUFBZSw4QkFDZixhQUFhLDhCQUNiLGlCQUFpQix5akJBQ2pCLGdCQUFnQiwrQkFDaEIsa0JBQWtCLDRLQUNsQiwyQkFBMkIscVFBQzNCLGlDQUFpQyx5VUFDakMsZ0JBQWdCLGdIQUNoQixZQUFZOzJGQU9ILGdDQUFnQztrQkFyQjVDLFNBQVM7K0JBQ0UsZ0NBQWdDLGNBQzlCLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixhQUFhO3dCQUNiLGlCQUFpQjt3QkFDakIsZ0JBQWdCO3dCQUNoQixrQkFBa0I7d0JBQ2xCLDJCQUEyQjt3QkFDM0IsaUNBQWlDO3dCQUNqQyxnQkFBZ0I7d0JBQ2hCLFlBQVk7cUJBQ2IsVUFHTyxDQUFDLGFBQWEsQ0FBQyxXQUNkLENBQUMsZ0JBQWdCLENBQUM7aUdBMEJNLHNCQUFzQjtzQkFBdEQsS0FBSzt1QkFBQyxvQkFBb0I7Z0JBVTNCLDhCQUE4QjtzQkFEN0IsU0FBUzt1QkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE9uSW5pdCxcclxuICBWaWV3Q2hpbGQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBGbG9hdGluZ0Jhck1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZENvbXBvbmVudHMvZmxvYXRpbmctYmFyL2Zsb2F0aW5nLWJhci5tb2R1bGUnO1xyXG5pbXBvcnQgeyBGb3JtZ3JvdXBNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi91aS1raXQvZm9ybWdyb3VwL2Zvcm1ncm91cC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBQYWdpbmF0aW9uTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vdWkta2l0L3BhZ2luYXRpb24vcGFnaW5hdGlvbi5tb2R1bGUnO1xyXG5pbXBvcnQgeyBQb3BvdmVyTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vdWkta2l0L3BvcG92ZXIvcG9wb3Zlci5tb2R1bGUnO1xyXG5pbXBvcnQgeyBUb29sdGlwTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vdWkta2l0L3Rvb2x0aXAvdG9vbHRpcC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBUYWJsZUNhcmRDb21wb25lbnQgfSBmcm9tICcuLi90YWJsZS1jYXJkL3RhYmxlLWNhcmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgR3JjQ2F0ZWdvcnlMaXN0aW5nQ29tcG9uZW50IH0gZnJvbSAnLi4vZ3JjLWNhdGVnb3J5LWxpc3RpbmcvZ3JjLWNhdGVnb3J5LWxpc3RpbmcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgR3JjUmVzcG9uc2liaWxpdHlMaXN0aW5nQ29tcG9uZW50IH0gZnJvbSAnLi4vZ3JjLXJlc3BvbnNpYmlsaXR5LWxpc3RpbmcvZ3JjLXJlc3BvbnNpYmlsaXR5LWxpc3RpbmcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgR3JjU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2dyYy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVEFCTEVfQ0FSRCB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9ncmNPYmplY3QuY29uc3RhbnQnO1xyXG5pbXBvcnQgeyBOb0RhdGFNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi91aS1raXQvbm8tZGF0YS9uby1kYXRhLm1vZHVsZSc7XHJcbmltcG9ydCB7IExJTktTIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2Nkbi1saW5rLmNvbnN0YW50JztcclxuaW1wb3J0IHsgTGlzdExvYWRlck1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZENvbXBvbmVudHMvbGlzdC1sb2FkZXIvbGlzdC1sb2FkZXIubW9kdWxlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXJpc2stY2F0ZWdvcnktcmlzay1saXN0aW5nJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIFBvcG92ZXJNb2R1bGUsXHJcbiAgICBGb3JtZ3JvdXBNb2R1bGUsXHJcbiAgICBUb29sdGlwTW9kdWxlLFxyXG4gICAgRmxvYXRpbmdCYXJNb2R1bGUsXHJcbiAgICBQYWdpbmF0aW9uTW9kdWxlLFxyXG4gICAgVGFibGVDYXJkQ29tcG9uZW50LFxyXG4gICAgR3JjQ2F0ZWdvcnlMaXN0aW5nQ29tcG9uZW50LFxyXG4gICAgR3JjUmVzcG9uc2liaWxpdHlMaXN0aW5nQ29tcG9uZW50LFxyXG4gICAgTGlzdExvYWRlck1vZHVsZSxcclxuICAgIE5vRGF0YU1vZHVsZSxcclxuICBdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9yaXNrLWNhdGVnb3J5LXJpc2stbGlzdGluZy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcmlzay1jYXRlZ29yeS1yaXNrLWxpc3RpbmcuY29tcG9uZW50Lmxlc3MnXSxcclxuICBpbnB1dHM6IFsnc2VsZWN0ZWRUYWInXSxcclxuICBvdXRwdXRzOiBbJ2Nsb3NlVXNlcnNMaXN0J10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSaXNrQ2F0ZWdvcnlSaXNrTGlzdGluZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgdGFibGVDYXJkID0gVEFCTEVfQ0FSRDtcclxuICBDRE5fTElOSyA9IExJTktTO1xyXG5cclxuICBjYXRlZ29yeVN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcclxuICByaXNrU3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xyXG5cclxuICBhbmltYXRpb24gPSBmYWxzZTtcclxuICBpc0NhdGVnb3J5TG9hZGVyID0gZmFsc2U7XHJcbiAgaXNSaXNrTG9hZGVyID0gZmFsc2U7XHJcblxyXG4gIHNlbGVjdGVkVGFiOiBudW1iZXIgPSAxO1xyXG4gIGNhdGVnb3J5Q3VycmVudFBhZ2U6IG51bWJlciA9IDE7XHJcbiAgc2VhcmNoU3RyaW5nOiBzdHJpbmcgPSAnJztcclxuICBjYXRlZ29yaWVzTGlzdDogYW55ID0gW107XHJcbiAgcmlza3NMaXN0OiBhbnkgPSBbXTtcclxuICBhY3RpdmVDYXRlZ29yeTogYW55ID0ge307XHJcbiAgcmlza0N1cnJlbnRQYWdlOiBudW1iZXIgPSAxO1xyXG4gIHNlbGVjdGVkQ2F0QW5kUmlzazogYW55ID0gW107XHJcbiAgcHJlU2VsZWN0ZWRDYXRBbmRSaXNrOiBhbnkgPSBbXTtcclxuICBzZWxlY3RlZENhdGVnb3J5SWRzOiBhbnkgPSBbXTtcclxuICBzZWxlY3RlZENhdGVnb3JpZXM6IGFueSA9IFtdO1xyXG4gIHNlbGVjdGVkUmlza3M6IGFueSA9IFtdO1xyXG5cclxuICBASW5wdXQoJ3NlbGVjdGVkQ2F0QW5kUmlzaycpIHNldCBzZWxlY3RlZENhdEFuZFJpc2tEYXRhKHZhbHVlOiBhbnkpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRDYXRBbmRSaXNrID0gdmFsdWU7XHJcbiAgICB0aGlzLnByZVNlbGVjdGVkQ2F0QW5kUmlzayA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodmFsdWUpKTtcclxuICAgIHRoaXMuZ2V0U2VsZWN0ZWRDYXRlZ29yaWVzSWQodGhpcy5zZWxlY3RlZENhdEFuZFJpc2spO1xyXG4gICAgdGhpcy5nZXRSaXNrQ2F0ZWdvcnlQYXlsb2FkKHZhbHVlKTtcclxuICB9XHJcblxyXG4gIGNsb3NlVXNlcnNMaXN0OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnZGF0YUxpc3RpbmcnKVxyXG4gIHJlc3BvbnNpYmlsaXR5TGlzdGluZ0NvbXBvbmVudCE6IEdyY1Jlc3BvbnNpYmlsaXR5TGlzdGluZ0NvbXBvbmVudDtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBncmNTZXJ2aWNlOiBHcmNTZXJ2aWNlKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuYW5pbWF0aW9uID0gdHJ1ZTtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLmFuaW1hdGlvbiA9IGZhbHNlO1xyXG4gICAgfSwgMzAwKTtcclxuICAgIHRoaXMuZ2V0Q2F0ZWdvcmllc0xpc3QoKTtcclxuICAgIHRoaXMuZ2V0Q2F0ZWdvcmllc0NvdW50KCk7XHJcbiAgfVxyXG5cclxuICBzZXRTZWxlY3RlZFRhYihldmVudDogYW55KSB7XHJcbiAgICB0aGlzLnNlbGVjdGVkVGFiID0gZXZlbnQ/LnR5cGU7XHJcbiAgICB0aGlzLmNhdGVnb3J5Q3VycmVudFBhZ2UgPSAxO1xyXG4gICAgdGhpcy5nZXRDYXRlZ29yaWVzTGlzdCgpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q2F0ZWdvcmllc0xpc3QoKSB7XHJcbiAgICBpZiAodGhpcy5jYXRlZ29yeVN1YnNjcmlwdGlvbikge1xyXG4gICAgICB0aGlzLmNhdGVnb3J5U3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcbiAgICBsZXQgcXVlcnlQYXJhbSA9IHtcclxuICAgICAgcGFnZU5vOiB0aGlzLmNhdGVnb3J5Q3VycmVudFBhZ2UgPz8gMSxcclxuICAgICAgc2VhcmNoU3RyaW5nOiB0aGlzLnNlYXJjaFN0cmluZyA/PyAnJyxcclxuICAgICAgdHlwZTogdGhpcy5zZWxlY3RlZFRhYiA/PyAxLFxyXG4gICAgfTtcclxuICAgIHRoaXMuaXNDYXRlZ29yeUxvYWRlciA9IHRydWU7XHJcbiAgICB0aGlzLmNhdGVnb3J5U3Vic2NyaXB0aW9uID0gdGhpcy5ncmNTZXJ2aWNlXHJcbiAgICAgIC5nZXRSaXNrQ2F0ZWdvcmllcyhxdWVyeVBhcmFtKVxyXG4gICAgICAuc3Vic2NyaWJlKFxyXG4gICAgICAgIChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5jYXRlZ29yaWVzTGlzdCA9IHJlcz8ubWFwKChjYXRlZ29yeTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgLi4uY2F0ZWdvcnksXHJcbiAgICAgICAgICAgICAgbmFtZTogY2F0ZWdvcnk/LmNhdGVnb3J5X25hbWUsXHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIHRoaXMucmlza0N1cnJlbnRQYWdlID0gMTtcclxuICAgICAgICAgIHRoaXMuYWN0aXZlQ2F0ZWdvcnkgPSB0aGlzLmNhdGVnb3JpZXNMaXN0Py5sZW5ndGhcclxuICAgICAgICAgICAgPyB0aGlzLmNhdGVnb3JpZXNMaXN0WzBdXHJcbiAgICAgICAgICAgIDogW107XHJcbiAgICAgICAgICB0aGlzLmNhdGVnb3JpZXNMaXN0Py5sZW5ndGggPyB0aGlzLmdldFJpc2tMaXN0KCkgOiBudWxsO1xyXG4gICAgICAgICAgdGhpcy5pc0NhdGVnb3J5TG9hZGVyID0gZmFsc2U7XHJcbiAgICAgICAgfSxcclxuICAgICAgICAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICAgIHRoaXMuaXNDYXRlZ29yeUxvYWRlciA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgKTtcclxuICB9XHJcblxyXG4gIGdldENhdGVnb3JpZXNDb3VudCgpIHtcclxuICAgIGxldCBxdWVyeVBhcmFtID0ge1xyXG4gICAgICBzZWFyY2hTdHJpbmc6IHRoaXMuc2VhcmNoU3RyaW5nID8/ICcnLFxyXG4gICAgfTtcclxuICAgIHRoaXMuZ3JjU2VydmljZS5nZXRSaXNrQ2F0ZWdvcmllc0NvdW50KHF1ZXJ5UGFyYW0pLnN1YnNjcmliZShcclxuICAgICAgKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgdGhpcy50YWJsZUNhcmQgPSByZXMubWFwKChpdGVtOiBhbnkpID0+IHtcclxuICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIHRpdGxlOiBpdGVtPy5jYXRlZ29yeVR5cGVOYW1lLFxyXG4gICAgICAgICAgICBjb3VudDogaXRlbT8uY2F0ZWdvcnlDb3VudCxcclxuICAgICAgICAgICAgdHlwZTogaXRlbT8uY2F0ZWdvcnlUeXBlLFxyXG4gICAgICAgICAgfTtcclxuICAgICAgICB9KTtcclxuICAgICAgfSxcclxuICAgICAgKGVycjogYW55KSA9PiB7fVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldFJpc2tMaXN0KGNsaWNrZWRUeXBlPzogYW55KSB7XHJcbiAgICBpZiAodGhpcy5yaXNrU3Vic2NyaXB0aW9uKSB7XHJcbiAgICAgIHRoaXMucmlza1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG4gICAgbGV0IHBheWxvYWQgPSB7XHJcbiAgICAgIHA6IHRoaXMucmlza0N1cnJlbnRQYWdlID8/IDEsXHJcbiAgICAgIHE6IHRoaXMuc2VhcmNoU3RyaW5nID8/ICcnLFxyXG4gICAgICB0eXBlOiB0aGlzLnNlbGVjdGVkVGFiID8/IDEsXHJcbiAgICAgIHNvdXJjZTogJ3Jpc2tfY2F0ZWdvcnknLFxyXG4gICAgICBjYXRlZ29yeV9pZDogdGhpcy5hY3RpdmVDYXRlZ29yeT8uY2F0ZWdvcnlfaWQgPz8gW10sXHJcbiAgICB9O1xyXG4gICAgdGhpcy5pc1Jpc2tMb2FkZXIgPSB0cnVlO1xyXG4gICAgdGhpcy5yaXNrU3Vic2NyaXB0aW9uID0gdGhpcy5ncmNTZXJ2aWNlLmdldFJpc2tzKHBheWxvYWQpLnN1YnNjcmliZShcclxuICAgICAgKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgdGhpcy5yaXNrc0xpc3QgPSB0aGlzLnNldERhdGFMaXN0U3RydWN0dXJlKHJlcyk7XHJcbiAgICAgICAgdGhpcy5pc1Jpc2tMb2FkZXIgPSBmYWxzZTtcclxuICAgICAgfSxcclxuICAgICAgKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgdGhpcy5pc1Jpc2tMb2FkZXIgPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHNldERhdGFMaXN0U3RydWN0dXJlKHJlczogYW55KSB7XHJcbiAgICBjb25zdCBkYXRhID0gcmVzPy5tYXAoKHJpc2s6IGFueSkgPT4ge1xyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIC4uLnJpc2ssXHJcbiAgICAgICAgbmFtZTogcmlzaz8uUmlza05hbWUsXHJcbiAgICAgICAgY29udHJvbElkOiByaXNrPy5SaXNrQ29udHJvbElkLFxyXG4gICAgICAgIF9pZDogcmlzaz8uRW5jcnlwdGVkUmlza0lkLFxyXG4gICAgICAgIGVudHJ1c3RlZEJ5OiB7XHJcbiAgICAgICAgICBuYW1lOiByaXNrPy5NZW1iZXJOYW1lLFxyXG4gICAgICAgICAgZW1haWw6IHJpc2s/Lk1lbWJlckVtYWlsLFxyXG4gICAgICAgICAgcHJvZmlsZVBpYzogcmlzaz8uTWVtYmVyUHJvZmlsZVBpYyA/PyAnJyxcclxuICAgICAgICAgIHNob3J0TmFtZTogcmlzaz8uTWVtYmVyU29ydE5hbWUsXHJcbiAgICAgICAgfSxcclxuICAgICAgICBlbnRydXN0ZWRUbzoge30sXHJcbiAgICAgICAgd2l0aGluRGF0YTogcmlzaz8uRW50aXR5Py5tYXAoKHdpdGhpbjogYW55KSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBuYW1lOiB3aXRoaW4/LnJjX25hbWUsXHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgIH0pLFxyXG4gICAgICB9O1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gZGF0YTtcclxuICB9XHJcblxyXG4gIGFjdGl2ZVNlbGVjdGVkQ2F0ZWdvcnkoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5hY3RpdmVDYXRlZ29yeSA9IGV2ZW50Py5jYXRlZ29yeTtcclxuICAgIHRoaXMucmlza0N1cnJlbnRQYWdlID0gMTtcclxuICAgIHRoaXMuZ2V0Umlza0xpc3QoZXZlbnQ/LmNsaWNrZWRUeXBlKTtcclxuICB9XHJcblxyXG4gIGdldFVwZGF0ZWREYXRhTGlzdChldmVudDogYW55KSB7XHJcbiAgICB0aGlzLnJpc2tDdXJyZW50UGFnZSA9IGV2ZW50Py5wYWdlTm87XHJcbiAgICB0aGlzLmdldFJpc2tMaXN0KCk7XHJcbiAgfVxyXG5cclxuICBnZXRUb3RhbFJpc2tQYWdlKCkge1xyXG4gICAgY29uc3QgdG90YWxQYWdlID1cclxuICAgICAgdGhpcy5hY3RpdmVDYXRlZ29yeT8uY2F0ZWdvcnlSaXNrQ291bnQgL1xyXG4gICAgICB0aGlzLmFjdGl2ZUNhdGVnb3J5Py5jYXRlZ29yeVJpc2tMaW1pdDtcclxuICAgIHJldHVybiBNYXRoLmNlaWwoTWF0aC5hYnModG90YWxQYWdlKSk7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVTZWFyY2goZXZlbnQ6IGFueSkge1xyXG4gICAgaWYgKHRoaXMuc2VhcmNoU3RyaW5nICE9IGV2ZW50KSB7XHJcbiAgICAgIHRoaXMuY2F0ZWdvcnlDdXJyZW50UGFnZSA9IDE7XHJcbiAgICAgIHRoaXMuc2VhcmNoU3RyaW5nID0gZXZlbnQ7XHJcbiAgICAgIHRoaXMuZ2V0Q2F0ZWdvcmllc0xpc3QoKTtcclxuICAgICAgdGhpcy5nZXRDYXRlZ29yaWVzQ291bnQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNsb3NlKCkge1xyXG4gICAgdGhpcy5jbG9zZVVzZXJzTGlzdC5lbWl0KHRoaXMucHJlU2VsZWN0ZWRDYXRBbmRSaXNrKTtcclxuICB9XHJcblxyXG4gIHNhdmUoKSB7XHJcbiAgICB0aGlzLmNsb3NlVXNlcnNMaXN0LmVtaXQodGhpcy5zZWxlY3RlZENhdEFuZFJpc2spO1xyXG4gIH1cclxuXHJcbiAgb25DYXRlZ29yeVBhZ2VDaGFuZ2UoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5jYXRlZ29yeUN1cnJlbnRQYWdlID0gZXZlbnQ/LnBhZ2VObztcclxuICAgIHRoaXMuZ2V0Q2F0ZWdvcmllc0xpc3QoKTtcclxuICB9XHJcblxyXG4gIGNoYW5nZVNlbGVjdGVkQ2F0QW5kUmlzayhldmVudDogYW55KSB7XHJcbiAgICB0aGlzLnNlbGVjdGVkQ2F0QW5kUmlzayA9IGV2ZW50O1xyXG4gICAgdGhpcy5nZXRSaXNrQ2F0ZWdvcnlQYXlsb2FkKGV2ZW50KTtcclxuICAgIHRoaXMuZ2V0U2VsZWN0ZWRDYXRlZ29yaWVzSWQodGhpcy5zZWxlY3RlZENhdEFuZFJpc2spO1xyXG4gIH1cclxuXHJcbiAgZ2V0U2VsZWN0ZWRDYXRlZ29yaWVzSWQoc2VsZWN0ZWREYXRhOiBhbnkpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRDYXRlZ29yeUlkcyA9IFtdO1xyXG4gICAgc2VsZWN0ZWREYXRhPy5mb3JFYWNoKChzZWxlY3RlZDogYW55KSA9PiB7XHJcbiAgICAgIGlmIChzZWxlY3RlZD8uY2F0ZWdvcnk/Ll9pZCA9PT0gJ3VuY2F0ZWdvcml6ZWQnKSB7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZENhdGVnb3J5SWRzPy5wdXNoKCd1bmNhdGVnb3JpemVkJyk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZENhdGVnb3J5SWRzPy5wdXNoKHNlbGVjdGVkPy5jYXRlZ29yeT8uY2F0ZWdvcnlfaWQpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldFJpc2tDYXRlZ29yeVBheWxvYWQoc2VsZWN0ZWREYXRhOiBhbnkpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRSaXNrcyA9IFtdO1xyXG4gICAgdGhpcy5zZWxlY3RlZENhdGVnb3JpZXMgPSBbXTtcclxuICAgIHNlbGVjdGVkRGF0YS5mb3JFYWNoKChpdGVtOiBhbnkpID0+IHtcclxuICAgICAgdGhpcy5zZWxlY3RlZFJpc2tzLnB1c2goLi4uaXRlbT8ucmlza3MpO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkQ2F0ZWdvcmllcy5wdXNoKGl0ZW0/LmNhdGVnb3J5KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZGVsZXRlRXZlbnQoZXZlbnQ6IGFueSkge1xyXG4gICAgaWYgKHRoaXMuYWN0aXZlQ2F0ZWdvcnk/LmNhdGVnb3J5X2lkID09IGV2ZW50Py5DYXRlZ29yeUlkc1swXSkge1xyXG4gICAgICB0aGlzLnJlc3BvbnNpYmlsaXR5TGlzdGluZ0NvbXBvbmVudC5nZXRTZWxlY3RlZERhdGEoZXZlbnQsIGZhbHNlKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMucmVzcG9uc2liaWxpdHlMaXN0aW5nQ29tcG9uZW50Py5kZWxldGVTZWxlY3RlZFJpc2soXHJcbiAgICAgICAgZXZlbnQ/LkNhdGVnb3J5SWRzWzBdLFxyXG4gICAgICAgIGV2ZW50XHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJyaXNrLWNhdGVnb3J5LXJpc2stbGlzdGluZ1wiIFtjbGFzcy5hbmltYXRlXT1cImFuaW1hdGlvblwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInJpc2stY2F0ZWdvcnktcmlzay1saXN0aW5nLWhlYWQgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWJldHdlZW4gdngtcGwtNCB2eC1wci00XCI+XHJcbiAgICAgICAgPGgzIGNsYXNzPVwidngtZnMtMTQgdngtZnctNTAwIHZ4LWxhYmVsLXR4dFwiPlNlbGVjdCBSaXNrczwvaDM+PC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwicmlzay1jYXRlZ29yeS1yaXNrLWxpc3RpbmctYm9keVwiPlxyXG4gICAgICAgIDxhcHAtdGFibGUtY2FyZCBjbGFzcz1cInZ4LXctMTAwXCIgW3RhYmxlQ2FyZF09XCJ0YWJsZUNhcmRcIiBbc2luZ2xlU2VsZWN0ZWRUZXh0XT1cIidDYXRlZ29yeSBTZWxlY3RlZCdcIiBbbXVsdGlwbGVTZWxlY3RlZFRleHRdPVwiJ0NhdGVnb3JpZXMgU2VsZWN0ZWQnXCIgKHNldFNlbGVjdGVkVGFiKT1cInNldFNlbGVjdGVkVGFiKCRldmVudClcIiBbc2VsZWN0ZWRUYWJdPVwiMVwiPjwvYXBwLXRhYmxlLWNhcmQ+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInNlYXJjaC1ibG9jayB2eC1tYi0yXCI+XHJcbiAgICAgICAgICA8aSBjbGFzcz1cImljb25zXCI+JiN4ZTkwYjs8L2k+XHJcbiAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiAgI3NlYXJjaFJpc2tDYXRlZ29yeSAoa2V5dXAuZW50ZXIpPVwiaGFuZGxlU2VhcmNoKCRldmVudC50YXJnZXQudmFsdWUpXCIgcGxhY2Vob2xkZXI9XCJTZWFyY2ggUmlzayBDYXRlZ29yaWVzXCIgLz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicmlzay1jYXRlZ29yeS1yaXNrLWxpc3RpbmctYm9keS1pbm5lciB2eC1tYi0yIHZ4LWQtZmxleFwiIFtjbGFzcy53aXRoLW5vRGF0YV09XCIoIWlzQ2F0ZWdvcnlMb2FkZXIgJiYgIWNhdGVnb3JpZXNMaXN0Py5sZW5ndGgpXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc0NhdGVnb3J5TG9hZGVyIHx8IGNhdGVnb3JpZXNMaXN0Py5sZW5ndGhcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbm5lci1pdGVtLWxlZnQgdngtcHItMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxhcHAtZ3JjLWNhdGVnb3J5LWxpc3RpbmcgKm5nSWY9XCIhaXNDYXRlZ29yeUxvYWRlclwiIFtoZWFkZXJUZXh0XT1cIidSaXNrIENhdGVnb3JpZXMnXCIgW2NhdGVnb3JpZXNdPVwiY2F0ZWdvcmllc0xpc3RcIiAgW3NlbGVjdGVkQ2F0QW5kUmlza109XCJzZWxlY3RlZENhdEFuZFJpc2tcIiBbdGFibGVDYXJkXT1cInRhYmxlQ2FyZFwiIFtjdXJyZW50UGFnZV09XCJjYXRlZ29yeUN1cnJlbnRQYWdlXCIgW3NlbGVjdGVkVGFiSW5kZXhdPVwic2VsZWN0ZWRUYWJcIiBbc2VsZWN0ZWRDYXRlZ29yeUlkc109XCJzZWxlY3RlZENhdGVnb3J5SWRzXCIgKGFjdGl2ZVNlbGVjdGVkQ2F0ZWdvcnkpPVwiYWN0aXZlU2VsZWN0ZWRDYXRlZ29yeSgkZXZlbnQpXCIgKG9uQ2F0ZWdvcnlQYWdlQ2hhbmdlKT1cIm9uQ2F0ZWdvcnlQYWdlQ2hhbmdlKCRldmVudClcIj48L2FwcC1ncmMtY2F0ZWdvcnktbGlzdGluZz5cclxuICAgICAgICAgICAgICAgICAgICA8YXBwLWxpc3QtbG9hZGVyICpuZ0lmPVwiaXNDYXRlZ29yeUxvYWRlclwiPjwvYXBwLWxpc3QtbG9hZGVyPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5uZXItaXRlbS1yaWdodFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxhcHAtZ3JjLXJlc3BvbnNpYmlsaXR5LWxpc3RpbmcgI2RhdGFMaXN0aW5nICpuZ0lmPVwiIWlzUmlza0xvYWRlciAmJiAhaXNDYXRlZ29yeUxvYWRlciAmJiByaXNrc0xpc3Q/Lmxlbmd0aFwiIFtoZWFkZXJUZXh0XT1cIidSaXNrIE5hbWUnXCIgW2RhdGFMaXN0XT1cInJpc2tzTGlzdFwiIFthY3RpdmVDYXRlZ29yeV09XCJhY3RpdmVDYXRlZ29yeVwiIFtzZWxlY3RlZENhdEFuZFJpc2tdPVwic2VsZWN0ZWRDYXRBbmRSaXNrXCIgKGNoYW5nZVNlbGVjdGVkQ2F0QW5kUmlzayk9XCJjaGFuZ2VTZWxlY3RlZENhdEFuZFJpc2soJGV2ZW50KVwiIFtjdXJyZW50UGFnZV09XCJyaXNrQ3VycmVudFBhZ2VcIiBbcGVyUGFnZUxpbWl0XT1cImFjdGl2ZUNhdGVnb3J5Py5jYXRlZ29yeVJpc2tMaW1pdFwiIFt0b3RhbExpc3REYXRhXT1cImFjdGl2ZUNhdGVnb3J5Py5jYXRlZ29yeVJpc2tDb3VudFwiIFt0b3RhbFBhZ2VzXT1cImdldFRvdGFsUmlza1BhZ2UoKVwiIChnZXRVcGRhdGVkRGF0YUxpc3QpPVwiZ2V0VXBkYXRlZERhdGFMaXN0KCRldmVudClcIiA+PC9hcHAtZ3JjLXJlc3BvbnNpYmlsaXR5LWxpc3Rpbmc+XHJcbiAgICAgICAgICAgICAgICAgICAgPGFwcC1saXN0LWxvYWRlciAqbmdJZj1cImlzUmlza0xvYWRlciB8fCBpc0NhdGVnb3J5TG9hZGVyXCI+PC9hcHAtbGlzdC1sb2FkZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGFwcC1uby1kYXRhICpuZ0lmPVwicmlza3NMaXN0Py5sZW5ndGggPT09IDAgJiYgIShpc1Jpc2tMb2FkZXIgfHwgaXNDYXRlZ29yeUxvYWRlcilcIiBbbm9EYXRhSW1hZ2VdPVwiQ0ROX0xJTks/Lm5vRGF0YVwiIFtub0RhdGFUZXh0XT1cIidObyBkYXRhIHRvIGRpc3BsYXknXCI+PC9hcHAtbm8tZGF0YT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgPGFwcC1uby1kYXRhICpuZ0lmPVwiKCFpc0NhdGVnb3J5TG9hZGVyICYmICFjYXRlZ29yaWVzTGlzdD8ubGVuZ3RoKVwiIFtub0RhdGFJbWFnZV09XCJDRE5fTElOSz8ubm9EYXRhXCIgW25vRGF0YVRleHRdPVwiJ05vIGRhdGEgdG8gZGlzcGxheSdcIj48L2FwcC1uby1kYXRhPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxhcHAtZmxvYXRpbmctYmFyICBbc2VsZWN0ZWREYXRhXT1cInNlbGVjdGVkUmlza3M/Lmxlbmd0aCA/IHNlbGVjdGVkUmlza3MgOiBbXVwiICAoY2xvc2VMaXN0KT1cImNsb3NlKClcIiAoY2xvc2VFdmVudCk9XCJzYXZlKClcIiAgW2Rpc3BsYXlFbGVtZW50S2V5XT1cIiduYW1lJ1wiIFtzaW5ndWxhclRleHRdPVwiJ1Jpc2sgc2VsZWN0ZWQnXCIgW3BsdXJhbFRleHRdPVwiJ1Jpc2tzIHNlbGVjdGVkJ1wiIChkZWxldGVFdmVudCk9XCJkZWxldGVFdmVudCgkZXZlbnQpXCI+PC9hcHAtZmxvYXRpbmctYmFyPlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
|
|
236
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmlzay1jYXRlZ29yeS1yaXNrLWxpc3RpbmcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvd29ya2Zsb3cvc2hhcmVkL2NvbXBvbmVudHMvcmlzay1jYXRlZ29yeS1yaXNrLWxpc3Rpbmcvcmlzay1jYXRlZ29yeS1yaXNrLWxpc3RpbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvd29ya2Zsb3cvc2hhcmVkL2NvbXBvbmVudHMvcmlzay1jYXRlZ29yeS1yaXNrLWxpc3Rpbmcvcmlzay1jYXRlZ29yeS1yaXNrLWxpc3RpbmcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0RBQStELENBQUM7QUFDbEcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQ25GLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDMUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDckcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFFekYs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LGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixhQUFhO3dCQUNiLGlCQUFpQjt3QkFDakIsZ0JBQWdCO3dCQUNoQixrQkFBa0I7d0JBQ2xCLDJCQUEyQjt3QkFDM0IsdUJBQXVCO3dCQUN2QixnQkFBZ0I7d0JBQ2hCLFlBQVk7cUJBQ2IsVUFHTyxDQUFDLGFBQWEsQ0FBQyxXQUNkLENBQUMsZ0JBQWdCLENBQUM7aUdBMEJNLHNCQUFzQjtzQkFBdEQsS0FBSzt1QkFBQyxvQkFBb0I7Z0JBVTNCLDhCQUE4QjtzQkFEN0IsU0FBUzt1QkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE9uSW5pdCxcclxuICBWaWV3Q2hpbGQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBGbG9hdGluZ0Jhck1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZENvbXBvbmVudHMvZmxvYXRpbmctYmFyL2Zsb2F0aW5nLWJhci5tb2R1bGUnO1xyXG5pbXBvcnQgeyBGb3JtZ3JvdXBNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi91aS1raXQvZm9ybWdyb3VwL2Zvcm1ncm91cC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBQYWdpbmF0aW9uTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vdWkta2l0L3BhZ2luYXRpb24vcGFnaW5hdGlvbi5tb2R1bGUnO1xyXG5pbXBvcnQgeyBQb3BvdmVyTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vdWkta2l0L3BvcG92ZXIvcG9wb3Zlci5tb2R1bGUnO1xyXG5pbXBvcnQgeyBUb29sdGlwTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vdWkta2l0L3Rvb2x0aXAvdG9vbHRpcC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBUYWJsZUNhcmRDb21wb25lbnQgfSBmcm9tICcuLi90YWJsZS1jYXJkL3RhYmxlLWNhcmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgR3JjQ2F0ZWdvcnlMaXN0aW5nQ29tcG9uZW50IH0gZnJvbSAnLi4vZ3JjLWNhdGVnb3J5LWxpc3RpbmcvZ3JjLWNhdGVnb3J5LWxpc3RpbmcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgR3JjUmlza0xpc3RpbmdDb21wb25lbnQgfSBmcm9tICcuLi9ncmMtcmlzay1saXN0aW5nL2dyYy1yaXNrLWxpc3RpbmcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgR3JjU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2dyYy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVEFCTEVfQ0FSRCB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9ncmNPYmplY3QuY29uc3RhbnQnO1xyXG5pbXBvcnQgeyBOb0RhdGFNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi91aS1raXQvbm8tZGF0YS9uby1kYXRhLm1vZHVsZSc7XHJcbmltcG9ydCB7IExJTktTIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2Nkbi1saW5rLmNvbnN0YW50JztcclxuaW1wb3J0IHsgTGlzdExvYWRlck1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZENvbXBvbmVudHMvbGlzdC1sb2FkZXIvbGlzdC1sb2FkZXIubW9kdWxlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXJpc2stY2F0ZWdvcnktcmlzay1saXN0aW5nJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIFBvcG92ZXJNb2R1bGUsXHJcbiAgICBGb3JtZ3JvdXBNb2R1bGUsXHJcbiAgICBUb29sdGlwTW9kdWxlLFxyXG4gICAgRmxvYXRpbmdCYXJNb2R1bGUsXHJcbiAgICBQYWdpbmF0aW9uTW9kdWxlLFxyXG4gICAgVGFibGVDYXJkQ29tcG9uZW50LFxyXG4gICAgR3JjQ2F0ZWdvcnlMaXN0aW5nQ29tcG9uZW50LFxyXG4gICAgR3JjUmlza0xpc3RpbmdDb21wb25lbnQsXHJcbiAgICBMaXN0TG9hZGVyTW9kdWxlLFxyXG4gICAgTm9EYXRhTW9kdWxlLFxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3Jpc2stY2F0ZWdvcnktcmlzay1saXN0aW5nLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9yaXNrLWNhdGVnb3J5LXJpc2stbGlzdGluZy5jb21wb25lbnQubGVzcyddLFxyXG4gIGlucHV0czogWydzZWxlY3RlZFRhYiddLFxyXG4gIG91dHB1dHM6IFsnY2xvc2VVc2Vyc0xpc3QnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFJpc2tDYXRlZ29yeVJpc2tMaXN0aW5nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICB0YWJsZUNhcmQgPSBUQUJMRV9DQVJEO1xyXG4gIENETl9MSU5LID0gTElOS1M7XHJcblxyXG4gIGNhdGVnb3J5U3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xyXG4gIHJpc2tTdWJzY3JpcHRpb24hOiBTdWJzY3JpcHRpb247XHJcblxyXG4gIGFuaW1hdGlvbiA9IGZhbHNlO1xyXG4gIGlzQ2F0ZWdvcnlMb2FkZXIgPSBmYWxzZTtcclxuICBpc1Jpc2tMb2FkZXIgPSBmYWxzZTtcclxuXHJcbiAgc2VsZWN0ZWRUYWI6IG51bWJlciA9IDE7XHJcbiAgY2F0ZWdvcnlDdXJyZW50UGFnZTogbnVtYmVyID0gMTtcclxuICBzZWFyY2hTdHJpbmc6IHN0cmluZyA9ICcnO1xyXG4gIGNhdGVnb3JpZXNMaXN0OiBhbnkgPSBbXTtcclxuICByaXNrc0xpc3Q6IGFueSA9IFtdO1xyXG4gIGFjdGl2ZUNhdGVnb3J5OiBhbnkgPSB7fTtcclxuICByaXNrQ3VycmVudFBhZ2U6IG51bWJlciA9IDE7XHJcbiAgc2VsZWN0ZWRDYXRBbmRSaXNrOiBhbnkgPSBbXTtcclxuICBwcmVTZWxlY3RlZENhdEFuZFJpc2s6IGFueSA9IFtdO1xyXG4gIHNlbGVjdGVkQ2F0ZWdvcnlJZHM6IGFueSA9IFtdO1xyXG4gIHNlbGVjdGVkQ2F0ZWdvcmllczogYW55ID0gW107XHJcbiAgc2VsZWN0ZWRSaXNrczogYW55ID0gW107XHJcblxyXG4gIEBJbnB1dCgnc2VsZWN0ZWRDYXRBbmRSaXNrJykgc2V0IHNlbGVjdGVkQ2F0QW5kUmlza0RhdGEodmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5zZWxlY3RlZENhdEFuZFJpc2sgPSB2YWx1ZTtcclxuICAgIHRoaXMucHJlU2VsZWN0ZWRDYXRBbmRSaXNrID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh2YWx1ZSkpO1xyXG4gICAgdGhpcy5nZXRTZWxlY3RlZENhdGVnb3JpZXNJZCh0aGlzLnNlbGVjdGVkQ2F0QW5kUmlzayk7XHJcbiAgICB0aGlzLmdldFJpc2tDYXRlZ29yeVBheWxvYWQodmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgY2xvc2VVc2Vyc0xpc3Q6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBAVmlld0NoaWxkKCdkYXRhTGlzdGluZycpXHJcbiAgcmVzcG9uc2liaWxpdHlMaXN0aW5nQ29tcG9uZW50ITogR3JjUmlza0xpc3RpbmdDb21wb25lbnQ7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZ3JjU2VydmljZTogR3JjU2VydmljZSkge31cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmFuaW1hdGlvbiA9IHRydWU7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5hbmltYXRpb24gPSBmYWxzZTtcclxuICAgIH0sIDMwMCk7XHJcbiAgICB0aGlzLmdldENhdGVnb3JpZXNMaXN0KCk7XHJcbiAgICB0aGlzLmdldENhdGVnb3JpZXNDb3VudCgpO1xyXG4gIH1cclxuXHJcbiAgc2V0U2VsZWN0ZWRUYWIoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5zZWxlY3RlZFRhYiA9IGV2ZW50Py50eXBlO1xyXG4gICAgdGhpcy5jYXRlZ29yeUN1cnJlbnRQYWdlID0gMTtcclxuICAgIHRoaXMuZ2V0Q2F0ZWdvcmllc0xpc3QoKTtcclxuICB9XHJcblxyXG4gIGdldENhdGVnb3JpZXNMaXN0KCkge1xyXG4gICAgaWYgKHRoaXMuY2F0ZWdvcnlTdWJzY3JpcHRpb24pIHtcclxuICAgICAgdGhpcy5jYXRlZ29yeVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG4gICAgbGV0IHF1ZXJ5UGFyYW0gPSB7XHJcbiAgICAgIHBhZ2VObzogdGhpcy5jYXRlZ29yeUN1cnJlbnRQYWdlID8/IDEsXHJcbiAgICAgIHNlYXJjaFN0cmluZzogdGhpcy5zZWFyY2hTdHJpbmcgPz8gJycsXHJcbiAgICAgIHR5cGU6IHRoaXMuc2VsZWN0ZWRUYWIgPz8gMSxcclxuICAgIH07XHJcbiAgICB0aGlzLmlzQ2F0ZWdvcnlMb2FkZXIgPSB0cnVlO1xyXG4gICAgdGhpcy5jYXRlZ29yeVN1YnNjcmlwdGlvbiA9IHRoaXMuZ3JjU2VydmljZVxyXG4gICAgICAuZ2V0Umlza0NhdGVnb3JpZXMocXVlcnlQYXJhbSlcclxuICAgICAgLnN1YnNjcmliZShcclxuICAgICAgICAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgIHRoaXMuY2F0ZWdvcmllc0xpc3QgPSByZXM/Lm1hcCgoY2F0ZWdvcnk6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgIC4uLmNhdGVnb3J5LFxyXG4gICAgICAgICAgICAgIG5hbWU6IGNhdGVnb3J5Py5jYXRlZ29yeV9uYW1lLFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICB0aGlzLnJpc2tDdXJyZW50UGFnZSA9IDE7XHJcbiAgICAgICAgICB0aGlzLmFjdGl2ZUNhdGVnb3J5ID0gdGhpcy5jYXRlZ29yaWVzTGlzdD8ubGVuZ3RoXHJcbiAgICAgICAgICAgID8gdGhpcy5jYXRlZ29yaWVzTGlzdFswXVxyXG4gICAgICAgICAgICA6IFtdO1xyXG4gICAgICAgICAgdGhpcy5jYXRlZ29yaWVzTGlzdD8ubGVuZ3RoID8gdGhpcy5nZXRSaXNrTGlzdCgpIDogbnVsbDtcclxuICAgICAgICAgIHRoaXMuaXNDYXRlZ29yeUxvYWRlciA9IGZhbHNlO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmlzQ2F0ZWdvcnlMb2FkZXIgPSBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRDYXRlZ29yaWVzQ291bnQoKSB7XHJcbiAgICBsZXQgcXVlcnlQYXJhbSA9IHtcclxuICAgICAgc2VhcmNoU3RyaW5nOiB0aGlzLnNlYXJjaFN0cmluZyA/PyAnJyxcclxuICAgIH07XHJcbiAgICB0aGlzLmdyY1NlcnZpY2UuZ2V0Umlza0NhdGVnb3JpZXNDb3VudChxdWVyeVBhcmFtKS5zdWJzY3JpYmUoXHJcbiAgICAgIChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMudGFibGVDYXJkID0gcmVzLm1hcCgoaXRlbTogYW55KSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICB0aXRsZTogaXRlbT8uY2F0ZWdvcnlUeXBlTmFtZSxcclxuICAgICAgICAgICAgY291bnQ6IGl0ZW0/LmNhdGVnb3J5Q291bnQsXHJcbiAgICAgICAgICAgIHR5cGU6IGl0ZW0/LmNhdGVnb3J5VHlwZSxcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0sXHJcbiAgICAgIChlcnI6IGFueSkgPT4ge31cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRSaXNrTGlzdChjbGlja2VkVHlwZT86IGFueSkge1xyXG4gICAgaWYgKHRoaXMucmlza1N1YnNjcmlwdGlvbikge1xyXG4gICAgICB0aGlzLnJpc2tTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICAgIGxldCBwYXlsb2FkID0ge1xyXG4gICAgICBwOiB0aGlzLnJpc2tDdXJyZW50UGFnZSA/PyAxLFxyXG4gICAgICBxOiB0aGlzLnNlYXJjaFN0cmluZyA/PyAnJyxcclxuICAgICAgdHlwZTogdGhpcy5zZWxlY3RlZFRhYiA/PyAxLFxyXG4gICAgICBzb3VyY2U6ICdyaXNrX2NhdGVnb3J5JyxcclxuICAgICAgY2F0ZWdvcnlfaWQ6IHRoaXMuYWN0aXZlQ2F0ZWdvcnk/LmNhdGVnb3J5X2lkID8/IFtdLFxyXG4gICAgfTtcclxuICAgIHRoaXMuaXNSaXNrTG9hZGVyID0gdHJ1ZTtcclxuICAgIHRoaXMucmlza1N1YnNjcmlwdGlvbiA9IHRoaXMuZ3JjU2VydmljZS5nZXRSaXNrcyhwYXlsb2FkKS5zdWJzY3JpYmUoXHJcbiAgICAgIChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMucmlza3NMaXN0ID0gdGhpcy5zZXREYXRhTGlzdFN0cnVjdHVyZShyZXMpO1xyXG4gICAgICAgIHRoaXMuaXNSaXNrTG9hZGVyID0gZmFsc2U7XHJcbiAgICAgIH0sXHJcbiAgICAgIChlcnI6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMuaXNSaXNrTG9hZGVyID0gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBzZXREYXRhTGlzdFN0cnVjdHVyZShyZXM6IGFueSkge1xyXG4gICAgY29uc3QgZGF0YSA9IHJlcz8ubWFwKChyaXNrOiBhbnkpID0+IHtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICAuLi5yaXNrLFxyXG4gICAgICAgIG5hbWU6IHJpc2s/LlJpc2tOYW1lLFxyXG4gICAgICAgIGNvbnRyb2xJZDogcmlzaz8uUmlza0NvbnRyb2xJZCxcclxuICAgICAgICBfaWQ6IHJpc2s/LkVuY3J5cHRlZFJpc2tJZCxcclxuICAgICAgICBlbnRydXN0ZWRCeToge1xyXG4gICAgICAgICAgbmFtZTogcmlzaz8uTWVtYmVyTmFtZSxcclxuICAgICAgICAgIGVtYWlsOiByaXNrPy5NZW1iZXJFbWFpbCxcclxuICAgICAgICAgIHByb2ZpbGVQaWM6IHJpc2s/Lk1lbWJlclByb2ZpbGVQaWMgPz8gJycsXHJcbiAgICAgICAgICBzaG9ydE5hbWU6IHJpc2s/Lk1lbWJlclNvcnROYW1lLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZW50cnVzdGVkVG86IHt9LFxyXG4gICAgICAgIHdpdGhpbkRhdGE6IHJpc2s/LkVudGl0eT8ubWFwKCh3aXRoaW46IGFueSkgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgbmFtZTogd2l0aGluPy5yY19uYW1lLFxyXG4gICAgICAgICAgfTtcclxuICAgICAgICB9KSxcclxuICAgICAgfTtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIGRhdGE7XHJcbiAgfVxyXG5cclxuICBhY3RpdmVTZWxlY3RlZENhdGVnb3J5KGV2ZW50OiBhbnkpIHtcclxuICAgIHRoaXMuYWN0aXZlQ2F0ZWdvcnkgPSBldmVudD8uY2F0ZWdvcnk7XHJcbiAgICB0aGlzLnJpc2tDdXJyZW50UGFnZSA9IDE7XHJcbiAgICB0aGlzLmdldFJpc2tMaXN0KGV2ZW50Py5jbGlja2VkVHlwZSk7XHJcbiAgfVxyXG5cclxuICBnZXRVcGRhdGVkRGF0YUxpc3QoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5yaXNrQ3VycmVudFBhZ2UgPSBldmVudD8ucGFnZU5vO1xyXG4gICAgdGhpcy5nZXRSaXNrTGlzdCgpO1xyXG4gIH1cclxuXHJcbiAgZ2V0VG90YWxSaXNrUGFnZSgpIHtcclxuICAgIGNvbnN0IHRvdGFsUGFnZSA9XHJcbiAgICAgIHRoaXMuYWN0aXZlQ2F0ZWdvcnk/LmNhdGVnb3J5Umlza0NvdW50IC9cclxuICAgICAgdGhpcy5hY3RpdmVDYXRlZ29yeT8uY2F0ZWdvcnlSaXNrTGltaXQ7XHJcbiAgICByZXR1cm4gTWF0aC5jZWlsKE1hdGguYWJzKHRvdGFsUGFnZSkpO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlU2VhcmNoKGV2ZW50OiBhbnkpIHtcclxuICAgIGlmICh0aGlzLnNlYXJjaFN0cmluZyAhPSBldmVudCkge1xyXG4gICAgICB0aGlzLmNhdGVnb3J5Q3VycmVudFBhZ2UgPSAxO1xyXG4gICAgICB0aGlzLnNlYXJjaFN0cmluZyA9IGV2ZW50O1xyXG4gICAgICB0aGlzLmdldENhdGVnb3JpZXNMaXN0KCk7XHJcbiAgICAgIHRoaXMuZ2V0Q2F0ZWdvcmllc0NvdW50KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjbG9zZSgpIHtcclxuICAgIHRoaXMuY2xvc2VVc2Vyc0xpc3QuZW1pdCh0aGlzLnByZVNlbGVjdGVkQ2F0QW5kUmlzayk7XHJcbiAgfVxyXG5cclxuICBzYXZlKCkge1xyXG4gICAgdGhpcy5jbG9zZVVzZXJzTGlzdC5lbWl0KHRoaXMuc2VsZWN0ZWRDYXRBbmRSaXNrKTtcclxuICB9XHJcblxyXG4gIG9uQ2F0ZWdvcnlQYWdlQ2hhbmdlKGV2ZW50OiBhbnkpIHtcclxuICAgIHRoaXMuY2F0ZWdvcnlDdXJyZW50UGFnZSA9IGV2ZW50Py5wYWdlTm87XHJcbiAgICB0aGlzLmdldENhdGVnb3JpZXNMaXN0KCk7XHJcbiAgfVxyXG5cclxuICBjaGFuZ2VTZWxlY3RlZENhdEFuZFJpc2soZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5zZWxlY3RlZENhdEFuZFJpc2sgPSBldmVudDtcclxuICAgIHRoaXMuZ2V0Umlza0NhdGVnb3J5UGF5bG9hZChldmVudCk7XHJcbiAgICB0aGlzLmdldFNlbGVjdGVkQ2F0ZWdvcmllc0lkKHRoaXMuc2VsZWN0ZWRDYXRBbmRSaXNrKTtcclxuICB9XHJcblxyXG4gIGdldFNlbGVjdGVkQ2F0ZWdvcmllc0lkKHNlbGVjdGVkRGF0YTogYW55KSB7XHJcbiAgICB0aGlzLnNlbGVjdGVkQ2F0ZWdvcnlJZHMgPSBbXTtcclxuICAgIHNlbGVjdGVkRGF0YT8uZm9yRWFjaCgoc2VsZWN0ZWQ6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoc2VsZWN0ZWQ/LmNhdGVnb3J5Py5faWQgPT09ICd1bmNhdGVnb3JpemVkJykge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRDYXRlZ29yeUlkcz8ucHVzaCgndW5jYXRlZ29yaXplZCcpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRDYXRlZ29yeUlkcz8ucHVzaChzZWxlY3RlZD8uY2F0ZWdvcnk/LmNhdGVnb3J5X2lkKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBnZXRSaXNrQ2F0ZWdvcnlQYXlsb2FkKHNlbGVjdGVkRGF0YTogYW55KSB7XHJcbiAgICB0aGlzLnNlbGVjdGVkUmlza3MgPSBbXTtcclxuICAgIHRoaXMuc2VsZWN0ZWRDYXRlZ29yaWVzID0gW107XHJcbiAgICBzZWxlY3RlZERhdGEuZm9yRWFjaCgoaXRlbTogYW55KSA9PiB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRSaXNrcy5wdXNoKC4uLml0ZW0/LnJpc2tzKTtcclxuICAgICAgdGhpcy5zZWxlY3RlZENhdGVnb3JpZXMucHVzaChpdGVtPy5jYXRlZ29yeSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGRlbGV0ZUV2ZW50KGV2ZW50OiBhbnkpIHtcclxuICAgIGlmICh0aGlzLmFjdGl2ZUNhdGVnb3J5Py5jYXRlZ29yeV9pZCA9PSBldmVudD8uQ2F0ZWdvcnlJZHNbMF0pIHtcclxuICAgICAgdGhpcy5yZXNwb25zaWJpbGl0eUxpc3RpbmdDb21wb25lbnQuZ2V0U2VsZWN0ZWREYXRhKGV2ZW50LCBmYWxzZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnJlc3BvbnNpYmlsaXR5TGlzdGluZ0NvbXBvbmVudD8uZGVsZXRlU2VsZWN0ZWRSaXNrKFxyXG4gICAgICAgIGV2ZW50Py5DYXRlZ29yeUlkc1swXSxcclxuICAgICAgICBldmVudFxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwicmlzay1jYXRlZ29yeS1yaXNrLWxpc3RpbmdcIiBbY2xhc3MuYW5pbWF0ZV09XCJhbmltYXRpb25cIj5cclxuICAgIDxkaXYgY2xhc3M9XCJyaXNrLWNhdGVnb3J5LXJpc2stbGlzdGluZy1oZWFkIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1iZXR3ZWVuIHZ4LXBsLTQgdngtcHItNFwiPlxyXG4gICAgICAgIDxoMyBjbGFzcz1cInZ4LWZzLTE0IHZ4LWZ3LTUwMCB2eC1sYWJlbC10eHRcIj5TZWxlY3QgUmlza3M8L2gzPjwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInJpc2stY2F0ZWdvcnktcmlzay1saXN0aW5nLWJvZHlcIj5cclxuICAgICAgICA8YXBwLXRhYmxlLWNhcmQgY2xhc3M9XCJ2eC13LTEwMFwiIFt0YWJsZUNhcmRdPVwidGFibGVDYXJkXCIgW3NpbmdsZVNlbGVjdGVkVGV4dF09XCInQ2F0ZWdvcnkgU2VsZWN0ZWQnXCIgW211bHRpcGxlU2VsZWN0ZWRUZXh0XT1cIidDYXRlZ29yaWVzIFNlbGVjdGVkJ1wiIChzZXRTZWxlY3RlZFRhYik9XCJzZXRTZWxlY3RlZFRhYigkZXZlbnQpXCIgW3NlbGVjdGVkVGFiXT1cIjFcIj48L2FwcC10YWJsZS1jYXJkPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzZWFyY2gtYmxvY2sgdngtbWItMlwiPlxyXG4gICAgICAgICAgPGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5MGI7PC9pPlxyXG4gICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgICNzZWFyY2hSaXNrQ2F0ZWdvcnkgKGtleXVwLmVudGVyKT1cImhhbmRsZVNlYXJjaCgkZXZlbnQudGFyZ2V0LnZhbHVlKVwiIHBsYWNlaG9sZGVyPVwiU2VhcmNoIFJpc2sgQ2F0ZWdvcmllc1wiIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJpc2stY2F0ZWdvcnktcmlzay1saXN0aW5nLWJvZHktaW5uZXIgdngtbWItMiB2eC1kLWZsZXhcIiBbY2xhc3Mud2l0aC1ub0RhdGFdPVwiKCFpc0NhdGVnb3J5TG9hZGVyICYmICFjYXRlZ29yaWVzTGlzdD8ubGVuZ3RoKVwiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNDYXRlZ29yeUxvYWRlciB8fCBjYXRlZ29yaWVzTGlzdD8ubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5uZXItaXRlbS1sZWZ0IHZ4LXByLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8YXBwLWdyYy1jYXRlZ29yeS1saXN0aW5nICpuZ0lmPVwiIWlzQ2F0ZWdvcnlMb2FkZXJcIiBbaGVhZGVyVGV4dF09XCInUmlzayBDYXRlZ29yaWVzJ1wiIFtjYXRlZ29yaWVzXT1cImNhdGVnb3JpZXNMaXN0XCIgIFtzZWxlY3RlZENhdEFuZFJpc2tdPVwic2VsZWN0ZWRDYXRBbmRSaXNrXCIgW3RhYmxlQ2FyZF09XCJ0YWJsZUNhcmRcIiBbY3VycmVudFBhZ2VdPVwiY2F0ZWdvcnlDdXJyZW50UGFnZVwiIFtzZWxlY3RlZFRhYkluZGV4XT1cInNlbGVjdGVkVGFiXCIgW3NlbGVjdGVkQ2F0ZWdvcnlJZHNdPVwic2VsZWN0ZWRDYXRlZ29yeUlkc1wiIChhY3RpdmVTZWxlY3RlZENhdGVnb3J5KT1cImFjdGl2ZVNlbGVjdGVkQ2F0ZWdvcnkoJGV2ZW50KVwiIChvbkNhdGVnb3J5UGFnZUNoYW5nZSk9XCJvbkNhdGVnb3J5UGFnZUNoYW5nZSgkZXZlbnQpXCI+PC9hcHAtZ3JjLWNhdGVnb3J5LWxpc3Rpbmc+XHJcbiAgICAgICAgICAgICAgICAgICAgPGFwcC1saXN0LWxvYWRlciAqbmdJZj1cImlzQ2F0ZWdvcnlMb2FkZXJcIj48L2FwcC1saXN0LWxvYWRlcj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlubmVyLWl0ZW0tcmlnaHRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8YXBwLWdyYy1yaXNrLWxpc3RpbmcgI2RhdGFMaXN0aW5nICpuZ0lmPVwiIWlzUmlza0xvYWRlciAmJiAhaXNDYXRlZ29yeUxvYWRlciAmJiByaXNrc0xpc3Q/Lmxlbmd0aFwiIFtoZWFkZXJUZXh0XT1cIidSaXNrIE5hbWUnXCIgW2RhdGFMaXN0XT1cInJpc2tzTGlzdFwiIFthY3RpdmVDYXRlZ29yeV09XCJhY3RpdmVDYXRlZ29yeVwiIFtzZWxlY3RlZENhdEFuZFJpc2tdPVwic2VsZWN0ZWRDYXRBbmRSaXNrXCIgKGNoYW5nZVNlbGVjdGVkQ2F0QW5kUmlzayk9XCJjaGFuZ2VTZWxlY3RlZENhdEFuZFJpc2soJGV2ZW50KVwiIFtjdXJyZW50UGFnZV09XCJyaXNrQ3VycmVudFBhZ2VcIiBbcGVyUGFnZUxpbWl0XT1cImFjdGl2ZUNhdGVnb3J5Py5jYXRlZ29yeVJpc2tMaW1pdFwiIFt0b3RhbExpc3REYXRhXT1cImFjdGl2ZUNhdGVnb3J5Py5jYXRlZ29yeVJpc2tDb3VudFwiIFt0b3RhbFBhZ2VzXT1cImdldFRvdGFsUmlza1BhZ2UoKVwiIChnZXRVcGRhdGVkRGF0YUxpc3QpPVwiZ2V0VXBkYXRlZERhdGFMaXN0KCRldmVudClcIiA+PC9hcHAtZ3JjLXJpc2stbGlzdGluZz5cclxuICAgICAgICAgICAgICAgICAgICA8YXBwLWxpc3QtbG9hZGVyICpuZ0lmPVwiaXNSaXNrTG9hZGVyIHx8IGlzQ2F0ZWdvcnlMb2FkZXJcIj48L2FwcC1saXN0LWxvYWRlcj5cclxuICAgICAgICAgICAgICAgICAgICA8YXBwLW5vLWRhdGEgKm5nSWY9XCJyaXNrc0xpc3Q/Lmxlbmd0aCA9PT0gMCAmJiAhKGlzUmlza0xvYWRlciB8fCBpc0NhdGVnb3J5TG9hZGVyKVwiIFtub0RhdGFJbWFnZV09XCJDRE5fTElOSz8ubm9EYXRhXCIgW25vRGF0YVRleHRdPVwiJ05vIGRhdGEgdG8gZGlzcGxheSdcIj48L2FwcC1uby1kYXRhPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8YXBwLW5vLWRhdGEgKm5nSWY9XCIoIWlzQ2F0ZWdvcnlMb2FkZXIgJiYgIWNhdGVnb3JpZXNMaXN0Py5sZW5ndGgpXCIgW25vRGF0YUltYWdlXT1cIkNETl9MSU5LPy5ub0RhdGFcIiBbbm9EYXRhVGV4dF09XCInTm8gZGF0YSB0byBkaXNwbGF5J1wiPjwvYXBwLW5vLWRhdGE+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGFwcC1mbG9hdGluZy1iYXIgIFtzZWxlY3RlZERhdGFdPVwic2VsZWN0ZWRSaXNrcz8ubGVuZ3RoID8gc2VsZWN0ZWRSaXNrcyA6IFtdXCIgIChjbG9zZUxpc3QpPVwiY2xvc2UoKVwiIChjbG9zZUV2ZW50KT1cInNhdmUoKVwiICBbZGlzcGxheUVsZW1lbnRLZXldPVwiJ25hbWUnXCIgW3Npbmd1bGFyVGV4dF09XCInUmlzayBzZWxlY3RlZCdcIiBbcGx1cmFsVGV4dF09XCInUmlza3Mgc2VsZWN0ZWQnXCIgKGRlbGV0ZUV2ZW50KT1cImRlbGV0ZUV2ZW50KCRldmVudClcIj48L2FwcC1mbG9hdGluZy1iYXI+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
|