@gravitee/ui-policy-studio-angular 15.11.2-renovate-angular-a46c3a3 → 15.11.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/filter-pipe/gio-flter-connectors-by-mode.pipe.mjs +4 -4
- package/esm2022/lib/components/flow-details/gio-ps-flow-details.component.mjs +4 -4
- package/esm2022/lib/components/flow-details-info-bar/gio-ps-flow-details-info-bar.component.mjs +4 -4
- package/esm2022/lib/components/flow-details-phase/gio-ps-flow-details-phase.component.mjs +4 -4
- package/esm2022/lib/components/flow-details-phase-step/gio-ps-flow-details-phase-step.component.mjs +4 -4
- package/esm2022/lib/components/flow-execution-form-dialog/gio-ps-flow-execution-form-dialog.component.mjs +4 -4
- package/esm2022/lib/components/flow-form-dialog/flow-message-form-dialog/gio-ps-flow-message-form-dialog.component.mjs +4 -4
- package/esm2022/lib/components/flow-form-dialog/flow-native-form-dialog/gio-ps-flow-native-form-dialog.component.mjs +4 -4
- package/esm2022/lib/components/flow-form-dialog/flow-proxy-form-dialog/gio-ps-flow-proxy-form-dialog.component.mjs +4 -4
- package/esm2022/lib/components/flows-menu/gio-ps-flows-menu.component.mjs +4 -4
- package/esm2022/lib/components/policies-catalog-dialog/gio-ps-policies-catalog-dialog.component.mjs +4 -4
- package/esm2022/lib/components/step-edit-dialog/gio-ps-step-edit-dialog.component.mjs +4 -4
- package/esm2022/lib/components/step-form/gio-ps-step-form.component.mjs +4 -4
- package/esm2022/lib/policy-group-studio/gio-policy-group-studio.component.mjs +4 -4
- package/esm2022/lib/policy-studio/gio-policy-studio.component.mjs +4 -4
- package/esm2022/lib/policy-studio/gio-policy-studio.service.mjs +4 -4
- package/fesm2022/gravitee-ui-policy-studio-angular.mjs +48 -48
- package/fesm2022/gravitee-ui-policy-studio-angular.mjs.map +1 -1
- package/package.json +1 -1
- package/testing/lib/components/flows-menu/gio-ps-flows-menu.harness.d.ts +1 -1
|
@@ -199,10 +199,10 @@ export class GioPolicyStudioComponent {
|
|
|
199
199
|
initGenericPolicies() {
|
|
200
200
|
this.genericPolicies = toGenericPolicies(this.policies ?? [], this.sharedPolicyGroupPolicies ?? []);
|
|
201
201
|
}
|
|
202
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
203
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "19.2.
|
|
202
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioPolicyStudioComponent, deps: [{ token: i1.GioPolicyStudioService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
203
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "19.2.4", type: GioPolicyStudioComponent, isStandalone: true, selector: "gio-policy-studio", inputs: { readOnly: "readOnly", apiType: "apiType", flowExecution: "flowExecution", entrypointsInfo: "entrypointsInfo", endpointsInfo: "endpointsInfo", commonFlows: "commonFlows", plans: "plans", policies: ["policies", "policies", (policies) => policies ?? []], sharedPolicyGroupPolicies: "sharedPolicyGroupPolicies", trialUrl: "trialUrl", loading: "loading", policySchemaFetcher: "policySchemaFetcher", policyDocumentationFetcher: "policyDocumentationFetcher", selectedFlowIndexes: "selectedFlowIndexes" }, outputs: { selectedFlowChanged: "selectedFlowChanged", save: "save" }, usesOnChanges: true, ngImport: i0, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n\n<div class=\"header\">\n <div class=\"header__apiInfo\" *ngIf=\"!loading; else loadingApiInfo\">\n <span class=\"gio-badge-primary\">\n {{ apiType | titlecase }}\n </span>\n <span\n class=\"gio-badge-neutral\"\n [matTooltip]=\"connectorsTooltip\"\n matTooltipPosition=\"right\"\n matTooltipClass=\"gio-policy-studio__tooltip-line-break\"\n >\n <mat-icon *ngFor=\"let entrypoint of entrypointsInfo\" class=\"gio-left\" [svgIcon]=\"entrypoint.icon\"></mat-icon>\n <mat-icon *ngFor=\"let endpoint of endpointsInfo\" class=\"gio-left\" [svgIcon]=\"endpoint.icon\"></mat-icon>\n </span>\n </div>\n <ng-template #loadingApiInfo>\n <div class=\"header__apiInfo\">\n <span class=\"gio-badge-primary\"> </span>\n <span class=\"gio-badge-neutral\"> </span>\n </div>\n </ng-template>\n\n <div class=\"header__btn\">\n <button *ngIf=\"!saving\" mat-flat-button color=\"primary\" [disabled]=\"loading || disableSaveButton\" (click)=\"onSave()\">Save</button>\n <button *ngIf=\"saving\" mat-flat-button color=\"primary\" disabled>Saving...</button>\n </div>\n</div>\n\n<div class=\"wrapper\">\n <div class=\"wrapper__flowsMenu\">\n <gio-ps-flows-menu\n [readOnly]=\"readOnly\"\n [loading]=\"loading\"\n [apiType]=\"apiType\"\n [flowExecution]=\"flowExecution\"\n [flowsGroups]=\"flowsGroups\"\n [entrypoints]=\"entrypointsInfo\"\n [entrypointsInfo]=\"entrypointsInfo\"\n (flowsGroupsChange)=\"onFlowsGroupsChange($event)\"\n (flowExecutionChange)=\"onFlowExecutionChange($event)\"\n [selectedFlowId]=\"selectedFlow?._id\"\n (selectedFlowIdChange)=\"onSelectFlow($event)\"\n (deleteFlow)=\"onDeleteSelectedFlow($event)\"\n ></gio-ps-flows-menu>\n </div>\n\n <div class=\"wrapper__flowDetails\">\n <gio-ps-flow-details\n [readOnly]=\"readOnly\"\n [loading]=\"loading\"\n [apiType]=\"apiType\"\n [flow]=\"selectedFlow\"\n [entrypointsInfo]=\"entrypointsInfo\"\n [endpointsInfo]=\"endpointsInfo\"\n [policies]=\"policies\"\n [genericPolicies]=\"genericPolicies\"\n [trialUrl]=\"trialUrl\"\n (flowChange)=\"onSelectedFlowChange($event)\"\n (deleteFlow)=\"onDeleteSelectedFlow($event)\"\n ></gio-ps-flow-details>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #ffc2ac);color:var(--gio-oem-palette--active-contrast, #1e1b1b)}:host{display:flex;height:100%;flex-direction:column;padding:16px;background-color:#fff}::ng-deep .gio-policy-studio__tooltip-line-break{white-space:pre-line}.header{display:flex;align-items:center;padding-bottom:16px}.header__apiInfo{flex:1 1 auto}.wrapper{display:flex;min-height:0;flex:1 1 auto;flex-direction:row;gap:16px}.wrapper__flowsMenu{overflow:hidden;min-width:230px;max-width:400px;flex:1 1 33%;border:1px solid #d2cecd;border-radius:8px}.wrapper__flowDetails{overflow:hidden;flex:1 1 66%;border:1px solid #d2cecd;border-radius:8px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.TitleCasePipe, name: "titlecase" }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: GioIconsModule }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: GioPolicyStudioFlowsMenuComponent, selector: "gio-ps-flows-menu", inputs: ["readOnly", "loading", "apiType", "flowExecution", "flowsGroups", "selectedFlowId", "entrypoints", "entrypointsInfo"], outputs: ["selectedFlowIdChange", "flowsGroupsChange", "flowExecutionChange", "deleteFlow"] }, { kind: "component", type: GioPolicyStudioDetailsComponent, selector: "gio-ps-flow-details", inputs: ["readOnly", "loading", "apiType", "flow", "entrypointsInfo", "endpointsInfo", "policies", "genericPolicies", "trialUrl"], outputs: ["flowChange", "deleteFlow"] }] }); }
|
|
204
204
|
}
|
|
205
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
205
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioPolicyStudioComponent, decorators: [{
|
|
206
206
|
type: Component,
|
|
207
207
|
args: [{ imports: [
|
|
208
208
|
CommonModule,
|
|
@@ -301,4 +301,4 @@ const getPlansChangeOutput = (flowsGroups, initialFlowsGroups) => {
|
|
|
301
301
|
}));
|
|
302
302
|
return plansWithChangedFlowsOutput.length > 0 ? plansWithChangedFlowsOutput : null;
|
|
303
303
|
};
|
|
304
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLXBvbGljeS1zdHVkaW8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktcG9saWN5LXN0dWRpby1hbmd1bGFyL3NyYy9saWIvcG9saWN5LXN0dWRpby9naW8tcG9saWN5LXN0dWRpby5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wb2xpY3ktc3R1ZGlvLWFuZ3VsYXIvc3JjL2xpYi9wb2xpY3ktc3R1ZGlvL2dpby1wb2xpY3ktc3R1ZGlvLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUF3QixNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQzVHLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDNUYsT0FBTyxFQUFFLEtBQUssRUFBZ0IsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDaEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTNELE9BQU8sRUFVTCxpQkFBaUIsRUFHakIsZUFBZSxHQUVoQixNQUFNLFdBQVcsQ0FBQztBQUNuQixPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUN6RyxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQzs7Ozs7OztBQW9CM0csTUFBTSxP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QUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsc0JBQXNCLENBQUMsQ0FBQztLQUN4RixDQUFDLENBQUMsQ0FBQztJQUVKLE9BQU8sMkJBQTJCLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsMkJBQTJCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztBQUNyRixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDIyIFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjbG9uZURlZXAsIGRpZmZlcmVuY2VCeSwgZmxhdHRlbiwgaXNFcXVhbCwgb21pdCwgdW5pb25CeSwgdW5pcXVlSWQgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgRU1QVFksIFN1YnNjcmlwdGlvbiwgdGltZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBHaW9JY29uc01vZHVsZSB9IGZyb20gJ0BncmF2aXRlZS91aS1wYXJ0aWNsZXMtYW5ndWxhcic7XG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuXG5pbXBvcnQge1xuICBDb25uZWN0b3JJbmZvLFxuICBGbG93LFxuICBGbG93RXhlY3V0aW9uLFxuICBQbGFuLFxuICBQb2xpY3ksXG4gIFBvbGljeURvY3VtZW50YXRpb25GZXRjaGVyLFxuICBQb2xpY3lTY2hlbWFGZXRjaGVyLFxuICBTYXZlT3V0cHV0LFxuICBTaGFyZWRQb2xpY3lHcm91cFBvbGljeSxcbiAgdG9HZW5lcmljUG9saWNpZXMsXG4gIEdlbmVyaWNQb2xpY3ksXG4gIFBvbGljeUlucHV0LFxuICBmcm9tUG9saWN5SW5wdXQsXG4gIEFwaVR5cGUsXG59IGZyb20gJy4uL21vZGVscyc7XG5pbXBvcnQgeyBHaW9Qb2xpY3lTdHVkaW9GbG93c01lbnVDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2Zsb3dzLW1lbnUvZ2lvLXBzLWZsb3dzLW1lbnUuY29tcG9uZW50JztcbmltcG9ydCB7IEdpb1BvbGljeVN0dWRpb0RldGFpbHNDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2Zsb3ctZGV0YWlscy9naW8tcHMtZmxvdy1kZXRhaWxzLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IEZsb3dHcm91cFZNLCBGbG93Vk0gfSBmcm9tICcuL2dpby1wb2xpY3ktc3R1ZGlvLm1vZGVsJztcbmltcG9ydCB7IEdpb1BvbGljeVN0dWRpb1NlcnZpY2UgfSBmcm9tICcuL2dpby1wb2xpY3ktc3R1ZGlvLnNlcnZpY2UnO1xuXG5leHBvcnQgdHlwZSBGbG93U2VsZWN0aW9uID0geyBwbGFuSW5kZXg6IG51bWJlcjsgZmxvd0luZGV4OiBudW1iZXIgfTtcblxuQENvbXBvbmVudCh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgR2lvSWNvbnNNb2R1bGUsXG4gICAgR2lvUG9saWN5U3R1ZGlvRmxvd3NNZW51Q29tcG9uZW50LFxuICAgIEdpb1BvbGljeVN0dWRpb0RldGFpbHNDb21wb25lbnQsXG4gIF0sXG4gIHNlbGVjdG9yOiAnZ2lvLXBvbGljeS1zdHVkaW8nLFxuICB0ZW1wbGF0ZVVybDogJy4vZ2lvLXBvbGljeS1zdHVkaW8uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9naW8tcG9saWN5LXN0dWRpby5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBHaW9Qb2xpY3lTdHVkaW9Db21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBNYXkgYmUgc2V0IHRvIGB0cnVlYCBpZiB0aGUgQVBJIGlzIG5vdCBtYW5hZ2VhYmxlIGZyb20gdGhlIFVJIChlLmcuIGt1YmVybmV0ZXMgb3BlcmF0b3IgQVBJcylcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByZWFkT25seSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBBUEkgdHlwZSAocmVxdWlyZWQpXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgYXBpVHlwZSE6IEFwaVR5cGU7XG5cbiAgLyoqXG4gICAqIEZsb3cgZXhlY3V0aW9uIGNvbmZpZyAocmVxdWlyZWQpXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZmxvd0V4ZWN1dGlvbiE6IEZsb3dFeGVjdXRpb247XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgZW50cnlwb2ludHMgdG8gZGlzcGxheVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGVudHJ5cG9pbnRzSW5mbzogQ29ubmVjdG9ySW5mb1tdID0gW107XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgZW5kcG9pbnRzIHRvIGRpc3BsYXlcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBlbmRwb2ludHNJbmZvOiBDb25uZWN0b3JJbmZvW10gPSBbXTtcblxuICAvKipcbiAgICogTGlzdCBvZiBjb21tb24gZmxvd3MgdG8gYWRkIHRvIGNvbW1vbiBmbG93cyBncm91cFxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGNvbW1vbkZsb3dzOiBGbG93W10gPSBbXTtcblxuICAvKipcbiAgICogTGlzdCBvZiBwbGFucyB3aXRoIHRoZWlyIGZsb3dzXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgcGxhbnM6IFBsYW5bXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIHBvbGljaWVzIHVzYWJsZSBpbiB0aGUgcG9saWN5IHN0dWRpb1xuICAgKi9cbiAgQElucHV0KHtcbiAgICB0cmFuc2Zvcm06IChwb2xpY2llczogdW5rbm93bikgPT4gcG9saWNpZXMgPz8gW10sXG4gIH0pXG4gIHB1YmxpYyBzZXQgcG9saWNpZXModmFsdWU6IChQb2xpY3lJbnB1dCB8IFBvbGljeSlbXSkge1xuICAgIHRoaXMuX3BvbGljaWVzID0gdmFsdWUubWFwKGZyb21Qb2xpY3lJbnB1dCk7XG4gIH1cbiAgcHVibGljIGdldCBwb2xpY2llcygpOiBQb2xpY3lbXSB7XG4gICAgcmV0dXJuIHRoaXMuX3BvbGljaWVzO1xuICB9XG4gIHByaXZhdGUgX3BvbGljaWVzOiBQb2xpY3lbXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIFNoYXJlZFBvbGljeUdyb3VwcyB1c2FibGUgaW4gdGhlIHN0dWRpb1xuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNoYXJlZFBvbGljeUdyb3VwUG9saWNpZXM6IFNoYXJlZFBvbGljeUdyb3VwUG9saWN5W10gPSBbXTtcblxuICAvKipcbiAgICogV2hlbiBhIHBvbGljeSBpcyBub3QgYXZhaWxhYmxlIHdpdGggdGhlIGN1cnJlbnQgbGljZW5zZSxcbiAgICogdGhpcyBVUkwgaXMgdXNlZCB0byByZWRpcmVjdCB0aGUgdXNlciB0byB0aGUgdHJpYWwgcGFnZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0cmlhbFVybD86IHN0cmluZztcblxuICAvKipcbiAgICogTG9hZGluZyBzdGF0ZVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGxvYWRpbmcgPSBmYWxzZTtcblxuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gUG9saWN5IFN0dWRpbyBuZWVkcyB0byBmZXRjaCB0aGUgcG9saWN5IHNjaGVtYVxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlIG9mIHRoZSBwb2xpY3kgc2NoZW1hXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgcG9saWN5U2NoZW1hRmV0Y2hlcjogUG9saWN5U2NoZW1hRmV0Y2hlciA9ICgpID0+IEVNUFRZO1xuXG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBQb2xpY3kgU3R1ZGlvIG5lZWRzIHRvIGZldGNoIHRoZSBwb2xpY3kgZG9jdW1lbnRhdGlvblxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlIG9mIHRoZSBwb2xpY3kgZG9jdW1lbnRhdGlvblxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHBvbGljeURvY3VtZW50YXRpb25GZXRjaGVyOiBQb2xpY3lEb2N1bWVudGF0aW9uRmV0Y2hlciA9ICgpID0+IEVNUFRZO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZWxlY3RlZEZsb3dJbmRleGVzOiBGbG93U2VsZWN0aW9uID0geyBwbGFuSW5kZXg6IDAsIGZsb3dJbmRleDogMCB9O1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgc2VsZWN0ZWRGbG93Q2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Rmxvd1NlbGVjdGlvbj4oKTtcblxuICAvKipcbiAgICogUmV0dXJuIHdoYXQgaXMgbmVlZGVkIHRvIHNhdmUuXG4gICAqKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBzYXZlID0gbmV3IEV2ZW50RW1pdHRlcjxTYXZlT3V0cHV0PigpO1xuXG4gIHB1YmxpYyBjb25uZWN0b3JzVG9vbHRpcCA9ICcnO1xuXG4gIHB1YmxpYyBzZWxlY3RlZEZsb3c/OiBGbG93Vk0gPSB1bmRlZmluZWQ7XG5cbiAgcHVibGljIGZsb3dzR3JvdXBzOiBGbG93R3JvdXBWTVtdID0gW107XG5cbiAgcHVibGljIGRpc2FibGVTYXZlQnV0dG9uID0gdHJ1ZTtcblxuICBwdWJsaWMgc2F2aW5nID0gZmFsc2U7XG5cbiAgLy8gVXNlZCB0byBrZWVwIHRyYWNrIG9mIGluaXRpYWwgZmxvd3MgZ3JvdXBzIHRvIGtub3cgaWYgdGhlcmUgYXJlIGRlbGV0ZWQgZmxvd3NcbiAgcHJpdmF0ZSBpbml0aWFsRmxvd3NHcm91cHM6IEZsb3dHcm91cFZNW10gPSBbXTtcblxuICBwcml2YXRlIGhhc0Zsb3dFeGVjdXRpb25DaGFuZ2VkID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSB1blNhdmluZ0J1dHRvblN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcbiAgcHVibGljIGVuYWJsZVNhdmluZ1RpbWVyID0gdHJ1ZTtcblxuICBwcm90ZWN0ZWQgZ2VuZXJpY1BvbGljaWVzOiBHZW5lcmljUG9saWN5W10gPSBbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHBvbGljeVN0dWRpb1NlcnZpY2U6IEdpb1BvbGljeVN0dWRpb1NlcnZpY2UpIHt9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlcy5lbnRyeXBvaW50c0luZm8gfHwgY2hhbmdlcy5lbmRwb2ludHNJbmZvKSB7XG4gICAgICB0aGlzLmNvbm5lY3RvcnNUb29sdGlwID0gYEVudHJ5cG9pbnRzOiAkeyh0aGlzLmVudHJ5cG9pbnRzSW5mbyA/PyBbXSkubWFwKGUgPT4gZS5uYW1lKS5qb2luKCcsICcpfVxcbkVuZHBvaW50czogJHsoXG4gICAgICAgIHRoaXMuZW5kcG9pbnRzSW5mbyA/PyBbXVxuICAgICAgKVxuICAgICAgICAubWFwKGUgPT4gZS5uYW1lKVxuICAgICAgICAuam9pbignLCAnKX1gO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzLmNvbW1vbkZsb3dzIHx8IGNoYW5nZXMucGxhbnMgfHwgY2hhbmdlcy5zZWxlY3RlZEZsb3dJbmRleGVzKSB7XG4gICAgICB0aGlzLmRpc2FibGVTYXZlQnV0dG9uID0gdHJ1ZTtcbiAgICAgIHRoaXMuZmxvd3NHcm91cHMgPSBnZXRGbG93c0dyb3Vwcyh0aGlzLmFwaVR5cGUsIHRoaXMuY29tbW9uRmxvd3MsIHRoaXMucGxhbnMpO1xuICAgICAgdGhpcy5pbml0aWFsRmxvd3NHcm91cHMgPSBjbG9uZURlZXAodGhpcy5mbG93c0dyb3Vwcyk7XG4gICAgICB0aGlzLnNlbGVjdGVkRmxvdyA9IHRoaXMuZmxvd3NHcm91cHNbdGhpcy5zZWxlY3RlZEZsb3dJbmRleGVzPy5wbGFuSW5kZXggPz8gMF0/LmZsb3dzW3RoaXMuc2VsZWN0ZWRGbG93SW5kZXhlcz8uZmxvd0luZGV4ID8/IDBdO1xuXG4gICAgICAvLyBSZXNldCBzYXZpbmcgc3RhdGUgd2hlbiBmbG93c0dyb3VwcyBhcmUgdXBkYXRlZFxuICAgICAgdGhpcy5zYXZpbmcgPSBmYWxzZTtcbiAgICAgIHRoaXMudW5TYXZpbmdCdXR0b25TdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZXMucG9saWN5U2NoZW1hRmV0Y2hlcikge1xuICAgICAgdGhpcy5wb2xpY3lTdHVkaW9TZXJ2aWNlLnNldFBvbGljeVNjaGVtYUZldGNoZXIodGhpcy5wb2xpY3lTY2hlbWFGZXRjaGVyKTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlcy5wb2xpY3lEb2N1bWVudGF0aW9uRmV0Y2hlcikge1xuICAgICAgdGhpcy5wb2xpY3lTdHVkaW9TZXJ2aWNlLnNldFBvbGljeURvY3VtZW50YXRpb25GZXRjaGVyKHRoaXMucG9saWN5RG9jdW1lbnRhdGlvbkZldGNoZXIpO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzLnBvbGljaWVzIHx8IGNoYW5nZXMuc2hhcmVkUG9saWN5R3JvdXBQb2xpY2llcykge1xuICAgICAgdGhpcy5pbml0R2VuZXJpY1BvbGljaWVzKCk7XG4gICAgfVxuICAgIGlmIChjaGFuZ2VzLmxvYWRpbmcgJiYgdGhpcy5sb2FkaW5nICYmICF0aGlzLnNhdmluZykge1xuICAgICAgdGhpcy5zYXZpbmcgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnVuU2F2aW5nQnV0dG9uU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHVibGljIG9uRmxvd0V4ZWN1dGlvbkNoYW5nZShmbG93RXhlY3V0aW9uOiBGbG93RXhlY3V0aW9uKTogdm9pZCB7XG4gICAgdGhpcy5oYXNGbG93RXhlY3V0aW9uQ2hhbmdlZCA9ICFpc0VxdWFsKHRoaXMuZmxvd0V4ZWN1dGlvbiwgZmxvd0V4ZWN1dGlvbik7XG4gICAgaWYgKHRoaXMuaGFzRmxvd0V4ZWN1dGlvbkNoYW5nZWQpIHtcbiAgICAgIHRoaXMuZGlzYWJsZVNhdmVCdXR0b24gPSBmYWxzZTtcbiAgICAgIHRoaXMuZmxvd0V4ZWN1dGlvbiA9IGZsb3dFeGVjdXRpb247XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uRmxvd3NHcm91cHNDaGFuZ2UoZmxvd3NHcm91cHM6IEZsb3dHcm91cFZNW10pOiB2b2lkIHtcbiAgICB0aGlzLmZsb3dzR3JvdXBzID0gY2xvbmVEZWVwKGZsb3dzR3JvdXBzKTtcbiAgICB0aGlzLmRpc2FibGVTYXZlQnV0dG9uID0gZmFsc2U7XG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRGbG93KSB7XG4gICAgICB0aGlzLm9uU2VsZWN0Rmxvdyh0aGlzLnNlbGVjdGVkRmxvdy5faWQpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvblNlbGVjdGVkRmxvd0NoYW5nZShmbG93OiBGbG93Vk0pOiB2b2lkIHtcbiAgICB0aGlzLmZsb3dzR3JvdXBzID0gdGhpcy5mbG93c0dyb3Vwcy5tYXAoZmxvd0dyb3VwID0+ICh7XG4gICAgICAuLi5mbG93R3JvdXAsXG4gICAgICBmbG93czogZmxvd0dyb3VwLmZsb3dzLm1hcChmID0+IChmLl9pZCA9PT0gZmxvdy5faWQgPyBmbG93IDogZikpLFxuICAgIH0pKTtcbiAgICB0aGlzLnNlbGVjdGVkRmxvdyA9IGZsb3c7XG4gICAgdGhpcy5kaXNhYmxlU2F2ZUJ1dHRvbiA9IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIG9uU2VsZWN0RmxvdyhmbG93SWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGxldCBuZXdQbGFuSW5kZXggPSAwO1xuICAgIGxldCBuZXdGbG93SW5kZXggPSAwO1xuICAgIGZvciAobGV0IGN1cnJlbnRQbGFuSW5kZXggPSAwOyBjdXJyZW50UGxhbkluZGV4IDwgdGhpcy5mbG93c0dyb3Vwcy5sZW5ndGg7IGN1cnJlbnRQbGFuSW5kZXgrKykge1xuICAgICAgY29uc3QgaW5kZXhXaXRoaW5QbGFuID0gdGhpcy5mbG93c0dyb3Vwc1tjdXJyZW50UGxhbkluZGV4XS5mbG93cy5maW5kSW5kZXgoZmxvdyA9PiBmbG93Ll9pZCA9PT0gZmxvd0lkKTtcbiAgICAgIGlmIChpbmRleFdpdGhpblBsYW4gIT09IC0xKSB7XG4gICAgICAgIG5ld1BsYW5JbmRleCA9IGN1cnJlbnRQbGFuSW5kZXg7XG4gICAgICAgIG5ld0Zsb3dJbmRleCA9IGluZGV4V2l0aGluUGxhbjtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5zZWxlY3RlZEZsb3dJbmRleGVzID0geyBwbGFuSW5kZXg6IG5ld1BsYW5JbmRleCwgZmxvd0luZGV4OiBuZXdGbG93SW5kZXggfTtcblxuICAgIHRoaXMuc2VsZWN0ZWRGbG93ID0gdGhpcy5mbG93c0dyb3Vwc1tuZXdQbGFuSW5kZXhdLmZsb3dzW25ld0Zsb3dJbmRleF07XG5cbiAgICB0aGlzLnNlbGVjdGVkRmxvd0NoYW5nZWQuZW1pdCh0aGlzLnNlbGVjdGVkRmxvd0luZGV4ZXMpO1xuICB9XG5cbiAgcHVibGljIG9uRGVsZXRlU2VsZWN0ZWRGbG93KGZsb3c6IEZsb3dWTSk6IHZvaWQge1xuICAgIC8vIERlZmluZSBuZXh0IHNlbGVjdGVkIGZsb3cgYW5kIHJlbW92ZSBmbG93IGZyb20gZmxvd3NHcm91cHNcbiAgICBjb25zdCBhbGxGbG93c0lkID0gZmxhdHRlbih0aGlzLmZsb3dzR3JvdXBzLm1hcChmbG93R3JvdXAgPT4gZmxvd0dyb3VwLmZsb3dzKSkubWFwKGYgPT4gZi5faWQpO1xuICAgIGNvbnN0IGZsb3dUb0RlbGV0ZUluZGV4ID0gYWxsRmxvd3NJZC5pbmRleE9mKGZsb3cuX2lkKTtcbiAgICBjb25zdCBuZXh0U2VsZWN0ZWRGbG93SWQgPSBhbGxGbG93c0lkW2Zsb3dUb0RlbGV0ZUluZGV4ICsgMV0gPz8gYWxsRmxvd3NJZFtmbG93VG9EZWxldGVJbmRleCAtIDFdO1xuICAgIHRoaXMuZmxvd3NHcm91cHMgPSB0aGlzLmZsb3dzR3JvdXBzLm1hcChmbG93R3JvdXAgPT4gKHtcbiAgICAgIC4uLmZsb3dHcm91cCxcbiAgICAgIGZsb3dzOiBmbG93R3JvdXAuZmxvd3MuZmlsdGVyKGYgPT4gZi5faWQgIT09IGZsb3cuX2lkKSxcbiAgICB9KSk7XG5cbiAgICB0aGlzLm9uU2VsZWN0RmxvdyhuZXh0U2VsZWN0ZWRGbG93SWQpO1xuXG4gICAgdGhpcy5kaXNhYmxlU2F2ZUJ1dHRvbiA9IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIG9uU2F2ZSgpOiB2b2lkIHtcbiAgICAvLyBFbWl0IGNvbW1vbiBmbG93cyBvbmx5IGlmIHRoZXkgaGF2ZSBiZWVuIHVwZGF0ZWRcbiAgICBjb25zdCBjb21tb25GbG93cyA9IGdldENvbW1vbkZsb3dzT3V0cHV0KHRoaXMuZmxvd3NHcm91cHMsIHRoaXMuaW5pdGlhbEZsb3dzR3JvdXBzKTtcblxuICAgIC8vIEVtaXQgcGxhbnMgb25seSBpZiB0aGV5IGhhdmUgYmVlbiB1cGRhdGVkXG4gICAgY29uc3QgcGxhbnNUb1VwZGF0ZSA9IGdldFBsYW5zQ2hhbmdlT3V0cHV0KHRoaXMuZmxvd3NHcm91cHMsIHRoaXMuaW5pdGlhbEZsb3dzR3JvdXBzKTtcbiAgICB0aGlzLnNhdmUuZW1pdCh7XG4gICAgICAuLi4oY29tbW9uRmxvd3MgPyB7IGNvbW1vbkZsb3dzIH0gOiB7fSksXG4gICAgICAuLi4ocGxhbnNUb1VwZGF0ZSA/IHsgcGxhbnNUb1VwZGF0ZSB9IDoge30pLFxuICAgICAgLi4uKHRoaXMuaGFzRmxvd0V4ZWN1dGlvbkNoYW5nZWQgPyB7IGZsb3dFeGVjdXRpb246IHRoaXMuZmxvd0V4ZWN1dGlvbiB9IDoge30pLFxuICAgIH0pO1xuICAgIHRoaXMuc2F2aW5nID0gdHJ1ZTtcbiAgICB0aGlzLmRpc2FibGVTYXZlQnV0dG9uID0gdHJ1ZTtcblxuICAgIHRoaXMudW5TYXZpbmdCdXR0b25TdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgaWYgKHRoaXMuZW5hYmxlU2F2aW5nVGltZXIpIHtcbiAgICAgIHRoaXMudW5TYXZpbmdCdXR0b25TdWJzY3JpcHRpb24gPSB0aW1lcig1MDAwKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLnNhdmluZyA9IGZhbHNlO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpbml0R2VuZXJpY1BvbGljaWVzKCk6IHZvaWQge1xuICAgIHRoaXMuZ2VuZXJpY1BvbGljaWVzID0gdG9HZW5lcmljUG9saWNpZXModGhpcy5wb2xpY2llcyA/PyBbXSwgdGhpcy5zaGFyZWRQb2xpY3lHcm91cFBvbGljaWVzID8/IFtdKTtcbiAgfVxufVxuXG5jb25zdCBnZXRGbG93c0dyb3VwcyA9IChhcGlUeXBlOiBBcGlUeXBlLCBjb21tb25GbG93czogRmxvd1tdID0gW10sIHBsYW5zOiBQbGFuW10gPSBbXSk6IEZsb3dHcm91cFZNW10gPT4ge1xuICBjb25zdCBjb21tRmxvd3NHcm91cDogRmxvd0dyb3VwVk0gPSB7XG4gICAgX2lkOiAnZmxvd3NHcm91cF9jb21tb25GbG93JyxcbiAgICBfaXNQbGFuOiBmYWxzZSxcbiAgICBuYW1lOiAnQWxsIHBsYW5zJyxcbiAgICBmbG93czogY29tbW9uRmxvd3MubWFwKGZsb3cgPT4gKHsgLi4uZmxvdywgX2lkOiB1bmlxdWVJZCgnZmxvd18nKSwgX2hhc0NoYW5nZWQ6IGZhbHNlLCBfcGFyZW50Rmxvd0dyb3VwTmFtZTogJ0NvbW1vbicgfSkpLFxuICB9O1xuXG4gIHJldHVybiBbXG4gICAgLi4ucGxhbnMubWFwKHBsYW4gPT4gKHtcbiAgICAgIF9pZDogdW5pcXVlSWQoJ2Zsb3dzR3JvdXBfJyksXG4gICAgICBfcGxhbklkOiBwbGFuLmlkLFxuICAgICAgX2lzUGxhbjogdHJ1ZSxcbiAgICAgIG5hbWU6IHBsYW4ubmFtZSxcbiAgICAgIGZsb3dzOiBwbGFuLmZsb3dzLm1hcChmbG93ID0+ICh7IC4uLmZsb3csIF9pZDogdW5pcXVlSWQoJ2Zsb3dfJyksIF9oYXNDaGFuZ2VkOiBmYWxzZSwgX3BhcmVudEZsb3dHcm91cE5hbWU6IHBsYW4ubmFtZSB9KSksXG4gICAgfSkpLFxuICAgIGNvbW1GbG93c0dyb3VwLFxuICBdO1xufTtcblxuY29uc3QgZ2V0Q29tbW9uRmxvd3NPdXRwdXQgPSAoZmxvd3NHcm91cHM6IEZsb3dHcm91cFZNW10sIGluaXRpYWxGbG93c0dyb3VwczogRmxvd0dyb3VwVk1bXSk6IEZsb3dbXSB8IG51bGwgPT4ge1xuICBjb25zdCBjb21tb25GbG93c0dyb3VwID0gZmxvd3NHcm91cHMuZmluZChmbG93R3JvdXAgPT4gZmxvd0dyb3VwLl9pZCA9PT0gJ2Zsb3dzR3JvdXBfY29tbW9uRmxvdycpO1xuICBjb25zdCBpbml0aWFsQ29tbW9uRmxvd3NHcm91cCA9IGluaXRpYWxGbG93c0dyb3Vwcy5maW5kKGZsb3dHcm91cCA9PiBmbG93R3JvdXAuX2lkID09PSAnZmxvd3NHcm91cF9jb21tb25GbG93Jyk7XG4gIC8vIENoZWNrIGlmIGNvbW1vbiBmbG93cyBoYXZlIGJlZW4gdXBkYXRlZFxuICBjb25zdCBoYXNDaGFuZ2VkID0gY29tbW9uRmxvd3NHcm91cD8uZmxvd3Muc29tZShmbG93ID0+IGZsb3cuX2hhc0NoYW5nZWQpO1xuXG4gIC8vIENoZWNrIGlmIGNvbW1vbiBmbG93cyBoYXZlIGJlZW4gZGVsZXRlZFxuICBjb25zdCBoYXNEZWxldGVkRmxvdyA9IGRpZmZlcmVuY2VCeShpbml0aWFsQ29tbW9uRmxvd3NHcm91cD8uZmxvd3MgPz8gW10sIGNvbW1vbkZsb3dzR3JvdXA/LmZsb3dzID8/IFtdLCAnX2lkJykubGVuZ3RoID4gMDtcblxuICByZXR1cm4gaGFzQ2hhbmdlZCB8fCBoYXNEZWxldGVkRmxvd1xuICAgID8gKGNvbW1vbkZsb3dzR3JvdXA/LmZsb3dzID8/IFtdKS5tYXAoZmxvdyA9PiBvbWl0KGZsb3csICdfaWQnLCAnX2hhc0NoYW5nZWQnLCAnX3BhcmVudEZsb3dHcm91cE5hbWUnKSlcbiAgICA6IG51bGw7XG59O1xuXG5jb25zdCBnZXRQbGFuc0NoYW5nZU91dHB1dCA9IChmbG93c0dyb3VwczogRmxvd0dyb3VwVk1bXSwgaW5pdGlhbEZsb3dzR3JvdXBzOiBGbG93R3JvdXBWTVtdKTogUGxhbltdIHwgbnVsbCA9PiB7XG4gIGNvbnN0IHBsYW5zR3JvdXBzID0gZmxvd3NHcm91cHMuZmlsdGVyKGZsb3dHcm91cCA9PiBmbG93R3JvdXAuX2lkICE9PSAnZmxvd3NHcm91cF9jb21tb25GbG93Jyk7XG4gIGNvbnN0IGluaXRpYWxQbGFuc0dyb3VwcyA9IGluaXRpYWxGbG93c0dyb3Vwcy5maWx0ZXIoZmxvd0dyb3VwID0+IGZsb3dHcm91cC5faWQgIT09ICdmbG93c0dyb3VwX2NvbW1vbkZsb3cnKTtcblxuICAvLyBHZXQgcGxhbnMgd2l0aCBjaGFuZ2VkIGZsb3dzXG4gIGNvbnN0IHBsYW5zR3JvdXBzV2l0aENoYW5nZWRGbG93cyA9IHBsYW5zR3JvdXBzLmZpbHRlcihwbGFuID0+IHBsYW4uZmxvd3Muc29tZShmbG93ID0+IGZsb3cuX2hhc0NoYW5nZWQpKTtcblxuICAvLyBHZXQgcGxhbnMgd2l0aCBkZWxldGVkIGZsb3dzXG4gIGNvbnN0IHBsYW5zR3JvdXBzV2l0aERlbGV0ZWRGbG93czogRmxvd0dyb3VwVk1bXSA9IFtdO1xuXG4gIC8vIENoZWNrIGlmIHRoZXJlIGFyZSBkZWxldGVkIGZsb3dzIGluIGluaXRpYWwgaW5pdGlhbFBsYW5zR3JvdXBzXG4gIGluaXRpYWxQbGFuc0dyb3Vwcy5mb3JFYWNoKHBsYW4gPT4ge1xuICAgIGNvbnN0IHBsYW5Hcm91cFRvQ29tcGFyZSA9IHBsYW5zR3JvdXBzLmZpbmQocCA9PiBwLl9wbGFuSWQgPT09IHBsYW4uX3BsYW5JZCk7XG4gICAgaWYgKHBsYW5Hcm91cFRvQ29tcGFyZSAmJiBkaWZmZXJlbmNlQnkocGxhbi5mbG93cywgcGxhbkdyb3VwVG9Db21wYXJlPy5mbG93cyA/PyBbXSwgJ19pZCcpLmxlbmd0aCA+IDApIHtcbiAgICAgIC8vIElmIHRoZXJlIGFyZSBkZWxldGVkIGZsb3dzLCB3ZSBuZWVkIHRvIHJldHVybiB0aGUgY29tcGxldGUgcGxhbiB3aXRoIHRoZSBuZXcgZmxvd3NcbiAgICAgIHBsYW5zR3JvdXBzV2l0aERlbGV0ZWRGbG93cy5wdXNoKHBsYW5Hcm91cFRvQ29tcGFyZSk7XG4gICAgfVxuICB9KTtcblxuICAvLyBNZXJnZSBwbGFucyB3aXRoIGNoYW5nZWQgZmxvd3MgYW5kIHBsYW5zIHdpdGggZGVsZXRlZCBmbG93c1xuICBjb25zdCBwbGFuc1dpdGhDaGFuZ2VkRmxvd3NPdXRwdXQgPSB1bmlvbkJ5KFsuLi5wbGFuc0dyb3Vwc1dpdGhDaGFuZ2VkRmxvd3MsIC4uLnBsYW5zR3JvdXBzV2l0aERlbGV0ZWRGbG93c10sICdfcGxhbklkJykubWFwKHBsYW4gPT4gKHtcbiAgICAuLi5vbWl0KHBsYW4sICdfaWQnLCAnX2lzUGxhbicsICdfcGxhbklkJyksXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb24gLS0gcGxhbklkIGlzIGFsd2F5cyBkZWZpbmVkXG4gICAgaWQ6IHBsYW4uX3BsYW5JZCEsXG4gICAgZmxvd3M6IHBsYW4uZmxvd3MubWFwKGZsb3cgPT4gb21pdChmbG93LCAnX2lkJywgJ19oYXNDaGFuZ2VkJywgJ19wYXJlbnRGbG93R3JvdXBOYW1lJykpLFxuICB9KSk7XG5cbiAgcmV0dXJuIHBsYW5zV2l0aENoYW5nZWRGbG93c091dHB1dC5sZW5ndGggPiAwID8gcGxhbnNXaXRoQ2hhbmdlZEZsb3dzT3V0cHV0IDogbnVsbDtcbn07XG4iLCI8IS0tXG5cbiAgICBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcblxuICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuXG4gICAgICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcblxuICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuXG4tLT5cblxuPGRpdiBjbGFzcz1cImhlYWRlclwiPlxuICA8ZGl2IGNsYXNzPVwiaGVhZGVyX19hcGlJbmZvXCIgKm5nSWY9XCIhbG9hZGluZzsgZWxzZSBsb2FkaW5nQXBpSW5mb1wiPlxuICAgIDxzcGFuIGNsYXNzPVwiZ2lvLWJhZGdlLXByaW1hcnlcIj5cbiAgICAgIHt7IGFwaVR5cGUgfCB0aXRsZWNhc2UgfX1cbiAgICA8L3NwYW4+XG4gICAgPHNwYW5cbiAgICAgIGNsYXNzPVwiZ2lvLWJhZGdlLW5ldXRyYWxcIlxuICAgICAgW21hdFRvb2x0aXBdPVwiY29ubmVjdG9yc1Rvb2x0aXBcIlxuICAgICAgbWF0VG9vbHRpcFBvc2l0aW9uPVwicmlnaHRcIlxuICAgICAgbWF0VG9vbHRpcENsYXNzPVwiZ2lvLXBvbGljeS1zdHVkaW9fX3Rvb2x0aXAtbGluZS1icmVha1wiXG4gICAgPlxuICAgICAgPG1hdC1pY29uICpuZ0Zvcj1cImxldCBlbnRyeXBvaW50IG9mIGVudHJ5cG9pbnRzSW5mb1wiIGNsYXNzPVwiZ2lvLWxlZnRcIiBbc3ZnSWNvbl09XCJlbnRyeXBvaW50Lmljb25cIj48L21hdC1pY29uPlxuICAgICAgPG1hdC1pY29uICpuZ0Zvcj1cImxldCBlbmRwb2ludCBvZiBlbmRwb2ludHNJbmZvXCIgY2xhc3M9XCJnaW8tbGVmdFwiIFtzdmdJY29uXT1cImVuZHBvaW50Lmljb25cIj48L21hdC1pY29uPlxuICAgIDwvc3Bhbj5cbiAgPC9kaXY+XG4gIDxuZy10ZW1wbGF0ZSAjbG9hZGluZ0FwaUluZm8+XG4gICAgPGRpdiBjbGFzcz1cImhlYWRlcl9fYXBpSW5mb1wiPlxuICAgICAgPHNwYW4gY2xhc3M9XCJnaW8tYmFkZ2UtcHJpbWFyeVwiPiZuYnNwOzwvc3Bhbj5cbiAgICAgIDxzcGFuIGNsYXNzPVwiZ2lvLWJhZGdlLW5ldXRyYWxcIj4mbmJzcDs8L3NwYW4+XG4gICAgPC9kaXY+XG4gIDwvbmctdGVtcGxhdGU+XG5cbiAgPGRpdiBjbGFzcz1cImhlYWRlcl9fYnRuXCI+XG4gICAgPGJ1dHRvbiAqbmdJZj1cIiFzYXZpbmdcIiBtYXQtZmxhdC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgW2Rpc2FibGVkXT1cImxvYWRpbmcgfHwgZGlzYWJsZVNhdmVCdXR0b25cIiAoY2xpY2spPVwib25TYXZlKClcIj5TYXZlPC9idXR0b24+XG4gICAgPGJ1dHRvbiAqbmdJZj1cInNhdmluZ1wiIG1hdC1mbGF0LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiBkaXNhYmxlZD5TYXZpbmcuLi48L2J1dHRvbj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cbiAgPGRpdiBjbGFzcz1cIndyYXBwZXJfX2Zsb3dzTWVudVwiPlxuICAgIDxnaW8tcHMtZmxvd3MtbWVudVxuICAgICAgW3JlYWRPbmx5XT1cInJlYWRPbmx5XCJcbiAgICAgIFtsb2FkaW5nXT1cImxvYWRpbmdcIlxuICAgICAgW2FwaVR5cGVdPVwiYXBpVHlwZVwiXG4gICAgICBbZmxvd0V4ZWN1dGlvbl09XCJmbG93RXhlY3V0aW9uXCJcbiAgICAgIFtmbG93c0dyb3Vwc109XCJmbG93c0dyb3Vwc1wiXG4gICAgICBbZW50cnlwb2ludHNdPVwiZW50cnlwb2ludHNJbmZvXCJcbiAgICAgIFtlbnRyeXBvaW50c0luZm9dPVwiZW50cnlwb2ludHNJbmZvXCJcbiAgICAgIChmbG93c0dyb3Vwc0NoYW5nZSk9XCJvbkZsb3dzR3JvdXBzQ2hhbmdlKCRldmVudClcIlxuICAgICAgKGZsb3dFeGVjdXRpb25DaGFuZ2UpPVwib25GbG93RXhlY3V0aW9uQ2hhbmdlKCRldmVudClcIlxuICAgICAgW3NlbGVjdGVkRmxvd0lkXT1cInNlbGVjdGVkRmxvdz8uX2lkXCJcbiAgICAgIChzZWxlY3RlZEZsb3dJZENoYW5nZSk9XCJvblNlbGVjdEZsb3coJGV2ZW50KVwiXG4gICAgICAoZGVsZXRlRmxvdyk9XCJvbkRlbGV0ZVNlbGVjdGVkRmxvdygkZXZlbnQpXCJcbiAgICA+PC9naW8tcHMtZmxvd3MtbWVudT5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cIndyYXBwZXJfX2Zsb3dEZXRhaWxzXCI+XG4gICAgPGdpby1wcy1mbG93LWRldGFpbHNcbiAgICAgIFtyZWFkT25seV09XCJyZWFkT25seVwiXG4gICAgICBbbG9hZGluZ109XCJsb2FkaW5nXCJcbiAgICAgIFthcGlUeXBlXT1cImFwaVR5cGVcIlxuICAgICAgW2Zsb3ddPVwic2VsZWN0ZWRGbG93XCJcbiAgICAgIFtlbnRyeXBvaW50c0luZm9dPVwiZW50cnlwb2ludHNJbmZvXCJcbiAgICAgIFtlbmRwb2ludHNJbmZvXT1cImVuZHBvaW50c0luZm9cIlxuICAgICAgW3BvbGljaWVzXT1cInBvbGljaWVzXCJcbiAgICAgIFtnZW5lcmljUG9saWNpZXNdPVwiZ2VuZXJpY1BvbGljaWVzXCJcbiAgICAgIFt0cmlhbFVybF09XCJ0cmlhbFVybFwiXG4gICAgICAoZmxvd0NoYW5nZSk9XCJvblNlbGVjdGVkRmxvd0NoYW5nZSgkZXZlbnQpXCJcbiAgICAgIChkZWxldGVGbG93KT1cIm9uRGVsZXRlU2VsZWN0ZWRGbG93KCRldmVudClcIlxuICAgID48L2dpby1wcy1mbG93LWRldGFpbHM+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
304
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLXBvbGljeS1zdHVkaW8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktcG9saWN5LXN0dWRpby1hbmd1bGFyL3NyYy9saWIvcG9saWN5LXN0dWRpby9naW8tcG9saWN5LXN0dWRpby5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wb2xpY3ktc3R1ZGlvLWFuZ3VsYXIvc3JjL2xpYi9wb2xpY3ktc3R1ZGlvL2dpby1wb2xpY3ktc3R1ZGlvLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUF3QixNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQzVHLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDNUYsT0FBTyxFQUFFLEtBQUssRUFBZ0IsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDaEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTNELE9BQU8sRUFVTCxpQkFBaUIsRUFHakIsZUFBZSxHQUVoQixNQUFNLFdBQVcsQ0FBQztBQUNuQixPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUN6RyxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQzs7Ozs7OztBQW9CM0csTUFBTSxP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QUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsc0JBQXNCLENBQUMsQ0FBQztLQUN4RixDQUFDLENBQUMsQ0FBQztJQUVKLE9BQU8sMkJBQTJCLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsMkJBQTJCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztBQUNyRixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDIyIFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjbG9uZURlZXAsIGRpZmZlcmVuY2VCeSwgZmxhdHRlbiwgaXNFcXVhbCwgb21pdCwgdW5pb25CeSwgdW5pcXVlSWQgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgRU1QVFksIFN1YnNjcmlwdGlvbiwgdGltZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBHaW9JY29uc01vZHVsZSB9IGZyb20gJ0BncmF2aXRlZS91aS1wYXJ0aWNsZXMtYW5ndWxhcic7XG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuXG5pbXBvcnQge1xuICBDb25uZWN0b3JJbmZvLFxuICBGbG93LFxuICBGbG93RXhlY3V0aW9uLFxuICBQbGFuLFxuICBQb2xpY3ksXG4gIFBvbGljeURvY3VtZW50YXRpb25GZXRjaGVyLFxuICBQb2xpY3lTY2hlbWFGZXRjaGVyLFxuICBTYXZlT3V0cHV0LFxuICBTaGFyZWRQb2xpY3lHcm91cFBvbGljeSxcbiAgdG9HZW5lcmljUG9saWNpZXMsXG4gIEdlbmVyaWNQb2xpY3ksXG4gIFBvbGljeUlucHV0LFxuICBmcm9tUG9saWN5SW5wdXQsXG4gIEFwaVR5cGUsXG59IGZyb20gJy4uL21vZGVscyc7XG5pbXBvcnQgeyBHaW9Qb2xpY3lTdHVkaW9GbG93c01lbnVDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2Zsb3dzLW1lbnUvZ2lvLXBzLWZsb3dzLW1lbnUuY29tcG9uZW50JztcbmltcG9ydCB7IEdpb1BvbGljeVN0dWRpb0RldGFpbHNDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2Zsb3ctZGV0YWlscy9naW8tcHMtZmxvdy1kZXRhaWxzLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IEZsb3dHcm91cFZNLCBGbG93Vk0gfSBmcm9tICcuL2dpby1wb2xpY3ktc3R1ZGlvLm1vZGVsJztcbmltcG9ydCB7IEdpb1BvbGljeVN0dWRpb1NlcnZpY2UgfSBmcm9tICcuL2dpby1wb2xpY3ktc3R1ZGlvLnNlcnZpY2UnO1xuXG5leHBvcnQgdHlwZSBGbG93U2VsZWN0aW9uID0geyBwbGFuSW5kZXg6IG51bWJlcjsgZmxvd0luZGV4OiBudW1iZXIgfTtcblxuQENvbXBvbmVudCh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgR2lvSWNvbnNNb2R1bGUsXG4gICAgR2lvUG9saWN5U3R1ZGlvRmxvd3NNZW51Q29tcG9uZW50LFxuICAgIEdpb1BvbGljeVN0dWRpb0RldGFpbHNDb21wb25lbnQsXG4gIF0sXG4gIHNlbGVjdG9yOiAnZ2lvLXBvbGljeS1zdHVkaW8nLFxuICB0ZW1wbGF0ZVVybDogJy4vZ2lvLXBvbGljeS1zdHVkaW8uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9naW8tcG9saWN5LXN0dWRpby5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBHaW9Qb2xpY3lTdHVkaW9Db21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBNYXkgYmUgc2V0IHRvIGB0cnVlYCBpZiB0aGUgQVBJIGlzIG5vdCBtYW5hZ2VhYmxlIGZyb20gdGhlIFVJIChlLmcuIGt1YmVybmV0ZXMgb3BlcmF0b3IgQVBJcylcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByZWFkT25seSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBBUEkgdHlwZSAocmVxdWlyZWQpXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgYXBpVHlwZSE6IEFwaVR5cGU7XG5cbiAgLyoqXG4gICAqIEZsb3cgZXhlY3V0aW9uIGNvbmZpZyAocmVxdWlyZWQpXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZmxvd0V4ZWN1dGlvbiE6IEZsb3dFeGVjdXRpb247XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgZW50cnlwb2ludHMgdG8gZGlzcGxheVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGVudHJ5cG9pbnRzSW5mbzogQ29ubmVjdG9ySW5mb1tdID0gW107XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgZW5kcG9pbnRzIHRvIGRpc3BsYXlcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBlbmRwb2ludHNJbmZvOiBDb25uZWN0b3JJbmZvW10gPSBbXTtcblxuICAvKipcbiAgICogTGlzdCBvZiBjb21tb24gZmxvd3MgdG8gYWRkIHRvIGNvbW1vbiBmbG93cyBncm91cFxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGNvbW1vbkZsb3dzOiBGbG93W10gPSBbXTtcblxuICAvKipcbiAgICogTGlzdCBvZiBwbGFucyB3aXRoIHRoZWlyIGZsb3dzXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgcGxhbnM6IFBsYW5bXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIHBvbGljaWVzIHVzYWJsZSBpbiB0aGUgcG9saWN5IHN0dWRpb1xuICAgKi9cbiAgQElucHV0KHtcbiAgICB0cmFuc2Zvcm06IChwb2xpY2llczogdW5rbm93bikgPT4gcG9saWNpZXMgPz8gW10sXG4gIH0pXG4gIHB1YmxpYyBzZXQgcG9saWNpZXModmFsdWU6IChQb2xpY3lJbnB1dCB8IFBvbGljeSlbXSkge1xuICAgIHRoaXMuX3BvbGljaWVzID0gdmFsdWUubWFwKGZyb21Qb2xpY3lJbnB1dCk7XG4gIH1cbiAgcHVibGljIGdldCBwb2xpY2llcygpOiBQb2xpY3lbXSB7XG4gICAgcmV0dXJuIHRoaXMuX3BvbGljaWVzO1xuICB9XG4gIHByaXZhdGUgX3BvbGljaWVzOiBQb2xpY3lbXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIFNoYXJlZFBvbGljeUdyb3VwcyB1c2FibGUgaW4gdGhlIHN0dWRpb1xuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNoYXJlZFBvbGljeUdyb3VwUG9saWNpZXM6IFNoYXJlZFBvbGljeUdyb3VwUG9saWN5W10gPSBbXTtcblxuICAvKipcbiAgICogV2hlbiBhIHBvbGljeSBpcyBub3QgYXZhaWxhYmxlIHdpdGggdGhlIGN1cnJlbnQgbGljZW5zZSxcbiAgICogdGhpcyBVUkwgaXMgdXNlZCB0byByZWRpcmVjdCB0aGUgdXNlciB0byB0aGUgdHJpYWwgcGFnZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0cmlhbFVybD86IHN0cmluZztcblxuICAvKipcbiAgICogTG9hZGluZyBzdGF0ZVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGxvYWRpbmcgPSBmYWxzZTtcblxuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gUG9saWN5IFN0dWRpbyBuZWVkcyB0byBmZXRjaCB0aGUgcG9saWN5IHNjaGVtYVxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlIG9mIHRoZSBwb2xpY3kgc2NoZW1hXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgcG9saWN5U2NoZW1hRmV0Y2hlcjogUG9saWN5U2NoZW1hRmV0Y2hlciA9ICgpID0+IEVNUFRZO1xuXG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBQb2xpY3kgU3R1ZGlvIG5lZWRzIHRvIGZldGNoIHRoZSBwb2xpY3kgZG9jdW1lbnRhdGlvblxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlIG9mIHRoZSBwb2xpY3kgZG9jdW1lbnRhdGlvblxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHBvbGljeURvY3VtZW50YXRpb25GZXRjaGVyOiBQb2xpY3lEb2N1bWVudGF0aW9uRmV0Y2hlciA9ICgpID0+IEVNUFRZO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZWxlY3RlZEZsb3dJbmRleGVzOiBGbG93U2VsZWN0aW9uID0geyBwbGFuSW5kZXg6IDAsIGZsb3dJbmRleDogMCB9O1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgc2VsZWN0ZWRGbG93Q2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Rmxvd1NlbGVjdGlvbj4oKTtcblxuICAvKipcbiAgICogUmV0dXJuIHdoYXQgaXMgbmVlZGVkIHRvIHNhdmUuXG4gICAqKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBzYXZlID0gbmV3IEV2ZW50RW1pdHRlcjxTYXZlT3V0cHV0PigpO1xuXG4gIHB1YmxpYyBjb25uZWN0b3JzVG9vbHRpcCA9ICcnO1xuXG4gIHB1YmxpYyBzZWxlY3RlZEZsb3c/OiBGbG93Vk0gPSB1bmRlZmluZWQ7XG5cbiAgcHVibGljIGZsb3dzR3JvdXBzOiBGbG93R3JvdXBWTVtdID0gW107XG5cbiAgcHVibGljIGRpc2FibGVTYXZlQnV0dG9uID0gdHJ1ZTtcblxuICBwdWJsaWMgc2F2aW5nID0gZmFsc2U7XG5cbiAgLy8gVXNlZCB0byBrZWVwIHRyYWNrIG9mIGluaXRpYWwgZmxvd3MgZ3JvdXBzIHRvIGtub3cgaWYgdGhlcmUgYXJlIGRlbGV0ZWQgZmxvd3NcbiAgcHJpdmF0ZSBpbml0aWFsRmxvd3NHcm91cHM6IEZsb3dHcm91cFZNW10gPSBbXTtcblxuICBwcml2YXRlIGhhc0Zsb3dFeGVjdXRpb25DaGFuZ2VkID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSB1blNhdmluZ0J1dHRvblN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcbiAgcHVibGljIGVuYWJsZVNhdmluZ1RpbWVyID0gdHJ1ZTtcblxuICBwcm90ZWN0ZWQgZ2VuZXJpY1BvbGljaWVzOiBHZW5lcmljUG9saWN5W10gPSBbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHBvbGljeVN0dWRpb1NlcnZpY2U6IEdpb1BvbGljeVN0dWRpb1NlcnZpY2UpIHt9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlcy5lbnRyeXBvaW50c0luZm8gfHwgY2hhbmdlcy5lbmRwb2ludHNJbmZvKSB7XG4gICAgICB0aGlzLmNvbm5lY3RvcnNUb29sdGlwID0gYEVudHJ5cG9pbnRzOiAkeyh0aGlzLmVudHJ5cG9pbnRzSW5mbyA/PyBbXSkubWFwKGUgPT4gZS5uYW1lKS5qb2luKCcsICcpfVxcbkVuZHBvaW50czogJHsoXG4gICAgICAgIHRoaXMuZW5kcG9pbnRzSW5mbyA/PyBbXVxuICAgICAgKVxuICAgICAgICAubWFwKGUgPT4gZS5uYW1lKVxuICAgICAgICAuam9pbignLCAnKX1gO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzLmNvbW1vbkZsb3dzIHx8IGNoYW5nZXMucGxhbnMgfHwgY2hhbmdlcy5zZWxlY3RlZEZsb3dJbmRleGVzKSB7XG4gICAgICB0aGlzLmRpc2FibGVTYXZlQnV0dG9uID0gdHJ1ZTtcbiAgICAgIHRoaXMuZmxvd3NHcm91cHMgPSBnZXRGbG93c0dyb3Vwcyh0aGlzLmFwaVR5cGUsIHRoaXMuY29tbW9uRmxvd3MsIHRoaXMucGxhbnMpO1xuICAgICAgdGhpcy5pbml0aWFsRmxvd3NHcm91cHMgPSBjbG9uZURlZXAodGhpcy5mbG93c0dyb3Vwcyk7XG4gICAgICB0aGlzLnNlbGVjdGVkRmxvdyA9IHRoaXMuZmxvd3NHcm91cHNbdGhpcy5zZWxlY3RlZEZsb3dJbmRleGVzPy5wbGFuSW5kZXggPz8gMF0/LmZsb3dzW3RoaXMuc2VsZWN0ZWRGbG93SW5kZXhlcz8uZmxvd0luZGV4ID8/IDBdO1xuXG4gICAgICAvLyBSZXNldCBzYXZpbmcgc3RhdGUgd2hlbiBmbG93c0dyb3VwcyBhcmUgdXBkYXRlZFxuICAgICAgdGhpcy5zYXZpbmcgPSBmYWxzZTtcbiAgICAgIHRoaXMudW5TYXZpbmdCdXR0b25TdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZXMucG9saWN5U2NoZW1hRmV0Y2hlcikge1xuICAgICAgdGhpcy5wb2xpY3lTdHVkaW9TZXJ2aWNlLnNldFBvbGljeVNjaGVtYUZldGNoZXIodGhpcy5wb2xpY3lTY2hlbWFGZXRjaGVyKTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlcy5wb2xpY3lEb2N1bWVudGF0aW9uRmV0Y2hlcikge1xuICAgICAgdGhpcy5wb2xpY3lTdHVkaW9TZXJ2aWNlLnNldFBvbGljeURvY3VtZW50YXRpb25GZXRjaGVyKHRoaXMucG9saWN5RG9jdW1lbnRhdGlvbkZldGNoZXIpO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzLnBvbGljaWVzIHx8IGNoYW5nZXMuc2hhcmVkUG9saWN5R3JvdXBQb2xpY2llcykge1xuICAgICAgdGhpcy5pbml0R2VuZXJpY1BvbGljaWVzKCk7XG4gICAgfVxuICAgIGlmIChjaGFuZ2VzLmxvYWRpbmcgJiYgdGhpcy5sb2FkaW5nICYmICF0aGlzLnNhdmluZykge1xuICAgICAgdGhpcy5zYXZpbmcgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnVuU2F2aW5nQnV0dG9uU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHVibGljIG9uRmxvd0V4ZWN1dGlvbkNoYW5nZShmbG93RXhlY3V0aW9uOiBGbG93RXhlY3V0aW9uKTogdm9pZCB7XG4gICAgdGhpcy5oYXNGbG93RXhlY3V0aW9uQ2hhbmdlZCA9ICFpc0VxdWFsKHRoaXMuZmxvd0V4ZWN1dGlvbiwgZmxvd0V4ZWN1dGlvbik7XG4gICAgaWYgKHRoaXMuaGFzRmxvd0V4ZWN1dGlvbkNoYW5nZWQpIHtcbiAgICAgIHRoaXMuZGlzYWJsZVNhdmVCdXR0b24gPSBmYWxzZTtcbiAgICAgIHRoaXMuZmxvd0V4ZWN1dGlvbiA9IGZsb3dFeGVjdXRpb247XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uRmxvd3NHcm91cHNDaGFuZ2UoZmxvd3NHcm91cHM6IEZsb3dHcm91cFZNW10pOiB2b2lkIHtcbiAgICB0aGlzLmZsb3dzR3JvdXBzID0gY2xvbmVEZWVwKGZsb3dzR3JvdXBzKTtcbiAgICB0aGlzLmRpc2FibGVTYXZlQnV0dG9uID0gZmFsc2U7XG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRGbG93KSB7XG4gICAgICB0aGlzLm9uU2VsZWN0Rmxvdyh0aGlzLnNlbGVjdGVkRmxvdy5faWQpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvblNlbGVjdGVkRmxvd0NoYW5nZShmbG93OiBGbG93Vk0pOiB2b2lkIHtcbiAgICB0aGlzLmZsb3dzR3JvdXBzID0gdGhpcy5mbG93c0dyb3Vwcy5tYXAoZmxvd0dyb3VwID0+ICh7XG4gICAgICAuLi5mbG93R3JvdXAsXG4gICAgICBmbG93czogZmxvd0dyb3VwLmZsb3dzLm1hcChmID0+IChmLl9pZCA9PT0gZmxvdy5faWQgPyBmbG93IDogZikpLFxuICAgIH0pKTtcbiAgICB0aGlzLnNlbGVjdGVkRmxvdyA9IGZsb3c7XG4gICAgdGhpcy5kaXNhYmxlU2F2ZUJ1dHRvbiA9IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIG9uU2VsZWN0RmxvdyhmbG93SWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGxldCBuZXdQbGFuSW5kZXggPSAwO1xuICAgIGxldCBuZXdGbG93SW5kZXggPSAwO1xuICAgIGZvciAobGV0IGN1cnJlbnRQbGFuSW5kZXggPSAwOyBjdXJyZW50UGxhbkluZGV4IDwgdGhpcy5mbG93c0dyb3Vwcy5sZW5ndGg7IGN1cnJlbnRQbGFuSW5kZXgrKykge1xuICAgICAgY29uc3QgaW5kZXhXaXRoaW5QbGFuID0gdGhpcy5mbG93c0dyb3Vwc1tjdXJyZW50UGxhbkluZGV4XS5mbG93cy5maW5kSW5kZXgoZmxvdyA9PiBmbG93Ll9pZCA9PT0gZmxvd0lkKTtcbiAgICAgIGlmIChpbmRleFdpdGhpblBsYW4gIT09IC0xKSB7XG4gICAgICAgIG5ld1BsYW5JbmRleCA9IGN1cnJlbnRQbGFuSW5kZXg7XG4gICAgICAgIG5ld0Zsb3dJbmRleCA9IGluZGV4V2l0aGluUGxhbjtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5zZWxlY3RlZEZsb3dJbmRleGVzID0geyBwbGFuSW5kZXg6IG5ld1BsYW5JbmRleCwgZmxvd0luZGV4OiBuZXdGbG93SW5kZXggfTtcblxuICAgIHRoaXMuc2VsZWN0ZWRGbG93ID0gdGhpcy5mbG93c0dyb3Vwc1tuZXdQbGFuSW5kZXhdLmZsb3dzW25ld0Zsb3dJbmRleF07XG5cbiAgICB0aGlzLnNlbGVjdGVkRmxvd0NoYW5nZWQuZW1pdCh0aGlzLnNlbGVjdGVkRmxvd0luZGV4ZXMpO1xuICB9XG5cbiAgcHVibGljIG9uRGVsZXRlU2VsZWN0ZWRGbG93KGZsb3c6IEZsb3dWTSk6IHZvaWQge1xuICAgIC8vIERlZmluZSBuZXh0IHNlbGVjdGVkIGZsb3cgYW5kIHJlbW92ZSBmbG93IGZyb20gZmxvd3NHcm91cHNcbiAgICBjb25zdCBhbGxGbG93c0lkID0gZmxhdHRlbih0aGlzLmZsb3dzR3JvdXBzLm1hcChmbG93R3JvdXAgPT4gZmxvd0dyb3VwLmZsb3dzKSkubWFwKGYgPT4gZi5faWQpO1xuICAgIGNvbnN0IGZsb3dUb0RlbGV0ZUluZGV4ID0gYWxsRmxvd3NJZC5pbmRleE9mKGZsb3cuX2lkKTtcbiAgICBjb25zdCBuZXh0U2VsZWN0ZWRGbG93SWQgPSBhbGxGbG93c0lkW2Zsb3dUb0RlbGV0ZUluZGV4ICsgMV0gPz8gYWxsRmxvd3NJZFtmbG93VG9EZWxldGVJbmRleCAtIDFdO1xuICAgIHRoaXMuZmxvd3NHcm91cHMgPSB0aGlzLmZsb3dzR3JvdXBzLm1hcChmbG93R3JvdXAgPT4gKHtcbiAgICAgIC4uLmZsb3dHcm91cCxcbiAgICAgIGZsb3dzOiBmbG93R3JvdXAuZmxvd3MuZmlsdGVyKGYgPT4gZi5faWQgIT09IGZsb3cuX2lkKSxcbiAgICB9KSk7XG5cbiAgICB0aGlzLm9uU2VsZWN0RmxvdyhuZXh0U2VsZWN0ZWRGbG93SWQpO1xuXG4gICAgdGhpcy5kaXNhYmxlU2F2ZUJ1dHRvbiA9IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIG9uU2F2ZSgpOiB2b2lkIHtcbiAgICAvLyBFbWl0IGNvbW1vbiBmbG93cyBvbmx5IGlmIHRoZXkgaGF2ZSBiZWVuIHVwZGF0ZWRcbiAgICBjb25zdCBjb21tb25GbG93cyA9IGdldENvbW1vbkZsb3dzT3V0cHV0KHRoaXMuZmxvd3NHcm91cHMsIHRoaXMuaW5pdGlhbEZsb3dzR3JvdXBzKTtcblxuICAgIC8vIEVtaXQgcGxhbnMgb25seSBpZiB0aGV5IGhhdmUgYmVlbiB1cGRhdGVkXG4gICAgY29uc3QgcGxhbnNUb1VwZGF0ZSA9IGdldFBsYW5zQ2hhbmdlT3V0cHV0KHRoaXMuZmxvd3NHcm91cHMsIHRoaXMuaW5pdGlhbEZsb3dzR3JvdXBzKTtcbiAgICB0aGlzLnNhdmUuZW1pdCh7XG4gICAgICAuLi4oY29tbW9uRmxvd3MgPyB7IGNvbW1vbkZsb3dzIH0gOiB7fSksXG4gICAgICAuLi4ocGxhbnNUb1VwZGF0ZSA/IHsgcGxhbnNUb1VwZGF0ZSB9IDoge30pLFxuICAgICAgLi4uKHRoaXMuaGFzRmxvd0V4ZWN1dGlvbkNoYW5nZWQgPyB7IGZsb3dFeGVjdXRpb246IHRoaXMuZmxvd0V4ZWN1dGlvbiB9IDoge30pLFxuICAgIH0pO1xuICAgIHRoaXMuc2F2aW5nID0gdHJ1ZTtcbiAgICB0aGlzLmRpc2FibGVTYXZlQnV0dG9uID0gdHJ1ZTtcblxuICAgIHRoaXMudW5TYXZpbmdCdXR0b25TdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgaWYgKHRoaXMuZW5hYmxlU2F2aW5nVGltZXIpIHtcbiAgICAgIHRoaXMudW5TYXZpbmdCdXR0b25TdWJzY3JpcHRpb24gPSB0aW1lcig1MDAwKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLnNhdmluZyA9IGZhbHNlO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpbml0R2VuZXJpY1BvbGljaWVzKCk6IHZvaWQge1xuICAgIHRoaXMuZ2VuZXJpY1BvbGljaWVzID0gdG9HZW5lcmljUG9saWNpZXModGhpcy5wb2xpY2llcyA/PyBbXSwgdGhpcy5zaGFyZWRQb2xpY3lHcm91cFBvbGljaWVzID8/IFtdKTtcbiAgfVxufVxuXG5jb25zdCBnZXRGbG93c0dyb3VwcyA9IChhcGlUeXBlOiBBcGlUeXBlLCBjb21tb25GbG93czogRmxvd1tdID0gW10sIHBsYW5zOiBQbGFuW10gPSBbXSk6IEZsb3dHcm91cFZNW10gPT4ge1xuICBjb25zdCBjb21tRmxvd3NHcm91cDogRmxvd0dyb3VwVk0gPSB7XG4gICAgX2lkOiAnZmxvd3NHcm91cF9jb21tb25GbG93JyxcbiAgICBfaXNQbGFuOiBmYWxzZSxcbiAgICBuYW1lOiAnQWxsIHBsYW5zJyxcbiAgICBmbG93czogY29tbW9uRmxvd3MubWFwKGZsb3cgPT4gKHsgLi4uZmxvdywgX2lkOiB1bmlxdWVJZCgnZmxvd18nKSwgX2hhc0NoYW5nZWQ6IGZhbHNlLCBfcGFyZW50Rmxvd0dyb3VwTmFtZTogJ0NvbW1vbicgfSkpLFxuICB9O1xuXG4gIHJldHVybiBbXG4gICAgLi4ucGxhbnMubWFwKHBsYW4gPT4gKHtcbiAgICAgIF9pZDogdW5pcXVlSWQoJ2Zsb3dzR3JvdXBfJyksXG4gICAgICBfcGxhbklkOiBwbGFuLmlkLFxuICAgICAgX2lzUGxhbjogdHJ1ZSxcbiAgICAgIG5hbWU6IHBsYW4ubmFtZSxcbiAgICAgIGZsb3dzOiBwbGFuLmZsb3dzLm1hcChmbG93ID0+ICh7IC4uLmZsb3csIF9pZDogdW5pcXVlSWQoJ2Zsb3dfJyksIF9oYXNDaGFuZ2VkOiBmYWxzZSwgX3BhcmVudEZsb3dHcm91cE5hbWU6IHBsYW4ubmFtZSB9KSksXG4gICAgfSkpLFxuICAgIGNvbW1GbG93c0dyb3VwLFxuICBdO1xufTtcblxuY29uc3QgZ2V0Q29tbW9uRmxvd3NPdXRwdXQgPSAoZmxvd3NHcm91cHM6IEZsb3dHcm91cFZNW10sIGluaXRpYWxGbG93c0dyb3VwczogRmxvd0dyb3VwVk1bXSk6IEZsb3dbXSB8IG51bGwgPT4ge1xuICBjb25zdCBjb21tb25GbG93c0dyb3VwID0gZmxvd3NHcm91cHMuZmluZChmbG93R3JvdXAgPT4gZmxvd0dyb3VwLl9pZCA9PT0gJ2Zsb3dzR3JvdXBfY29tbW9uRmxvdycpO1xuICBjb25zdCBpbml0aWFsQ29tbW9uRmxvd3NHcm91cCA9IGluaXRpYWxGbG93c0dyb3Vwcy5maW5kKGZsb3dHcm91cCA9PiBmbG93R3JvdXAuX2lkID09PSAnZmxvd3NHcm91cF9jb21tb25GbG93Jyk7XG4gIC8vIENoZWNrIGlmIGNvbW1vbiBmbG93cyBoYXZlIGJlZW4gdXBkYXRlZFxuICBjb25zdCBoYXNDaGFuZ2VkID0gY29tbW9uRmxvd3NHcm91cD8uZmxvd3Muc29tZShmbG93ID0+IGZsb3cuX2hhc0NoYW5nZWQpO1xuXG4gIC8vIENoZWNrIGlmIGNvbW1vbiBmbG93cyBoYXZlIGJlZW4gZGVsZXRlZFxuICBjb25zdCBoYXNEZWxldGVkRmxvdyA9IGRpZmZlcmVuY2VCeShpbml0aWFsQ29tbW9uRmxvd3NHcm91cD8uZmxvd3MgPz8gW10sIGNvbW1vbkZsb3dzR3JvdXA/LmZsb3dzID8/IFtdLCAnX2lkJykubGVuZ3RoID4gMDtcblxuICByZXR1cm4gaGFzQ2hhbmdlZCB8fCBoYXNEZWxldGVkRmxvd1xuICAgID8gKGNvbW1vbkZsb3dzR3JvdXA/LmZsb3dzID8/IFtdKS5tYXAoZmxvdyA9PiBvbWl0KGZsb3csICdfaWQnLCAnX2hhc0NoYW5nZWQnLCAnX3BhcmVudEZsb3dHcm91cE5hbWUnKSlcbiAgICA6IG51bGw7XG59O1xuXG5jb25zdCBnZXRQbGFuc0NoYW5nZU91dHB1dCA9IChmbG93c0dyb3VwczogRmxvd0dyb3VwVk1bXSwgaW5pdGlhbEZsb3dzR3JvdXBzOiBGbG93R3JvdXBWTVtdKTogUGxhbltdIHwgbnVsbCA9PiB7XG4gIGNvbnN0IHBsYW5zR3JvdXBzID0gZmxvd3NHcm91cHMuZmlsdGVyKGZsb3dHcm91cCA9PiBmbG93R3JvdXAuX2lkICE9PSAnZmxvd3NHcm91cF9jb21tb25GbG93Jyk7XG4gIGNvbnN0IGluaXRpYWxQbGFuc0dyb3VwcyA9IGluaXRpYWxGbG93c0dyb3Vwcy5maWx0ZXIoZmxvd0dyb3VwID0+IGZsb3dHcm91cC5faWQgIT09ICdmbG93c0dyb3VwX2NvbW1vbkZsb3cnKTtcblxuICAvLyBHZXQgcGxhbnMgd2l0aCBjaGFuZ2VkIGZsb3dzXG4gIGNvbnN0IHBsYW5zR3JvdXBzV2l0aENoYW5nZWRGbG93cyA9IHBsYW5zR3JvdXBzLmZpbHRlcihwbGFuID0+IHBsYW4uZmxvd3Muc29tZShmbG93ID0+IGZsb3cuX2hhc0NoYW5nZWQpKTtcblxuICAvLyBHZXQgcGxhbnMgd2l0aCBkZWxldGVkIGZsb3dzXG4gIGNvbnN0IHBsYW5zR3JvdXBzV2l0aERlbGV0ZWRGbG93czogRmxvd0dyb3VwVk1bXSA9IFtdO1xuXG4gIC8vIENoZWNrIGlmIHRoZXJlIGFyZSBkZWxldGVkIGZsb3dzIGluIGluaXRpYWwgaW5pdGlhbFBsYW5zR3JvdXBzXG4gIGluaXRpYWxQbGFuc0dyb3Vwcy5mb3JFYWNoKHBsYW4gPT4ge1xuICAgIGNvbnN0IHBsYW5Hcm91cFRvQ29tcGFyZSA9IHBsYW5zR3JvdXBzLmZpbmQocCA9PiBwLl9wbGFuSWQgPT09IHBsYW4uX3BsYW5JZCk7XG4gICAgaWYgKHBsYW5Hcm91cFRvQ29tcGFyZSAmJiBkaWZmZXJlbmNlQnkocGxhbi5mbG93cywgcGxhbkdyb3VwVG9Db21wYXJlPy5mbG93cyA/PyBbXSwgJ19pZCcpLmxlbmd0aCA+IDApIHtcbiAgICAgIC8vIElmIHRoZXJlIGFyZSBkZWxldGVkIGZsb3dzLCB3ZSBuZWVkIHRvIHJldHVybiB0aGUgY29tcGxldGUgcGxhbiB3aXRoIHRoZSBuZXcgZmxvd3NcbiAgICAgIHBsYW5zR3JvdXBzV2l0aERlbGV0ZWRGbG93cy5wdXNoKHBsYW5Hcm91cFRvQ29tcGFyZSk7XG4gICAgfVxuICB9KTtcblxuICAvLyBNZXJnZSBwbGFucyB3aXRoIGNoYW5nZWQgZmxvd3MgYW5kIHBsYW5zIHdpdGggZGVsZXRlZCBmbG93c1xuICBjb25zdCBwbGFuc1dpdGhDaGFuZ2VkRmxvd3NPdXRwdXQgPSB1bmlvbkJ5KFsuLi5wbGFuc0dyb3Vwc1dpdGhDaGFuZ2VkRmxvd3MsIC4uLnBsYW5zR3JvdXBzV2l0aERlbGV0ZWRGbG93c10sICdfcGxhbklkJykubWFwKHBsYW4gPT4gKHtcbiAgICAuLi5vbWl0KHBsYW4sICdfaWQnLCAnX2lzUGxhbicsICdfcGxhbklkJyksXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb24gLS0gcGxhbklkIGlzIGFsd2F5cyBkZWZpbmVkXG4gICAgaWQ6IHBsYW4uX3BsYW5JZCEsXG4gICAgZmxvd3M6IHBsYW4uZmxvd3MubWFwKGZsb3cgPT4gb21pdChmbG93LCAnX2lkJywgJ19oYXNDaGFuZ2VkJywgJ19wYXJlbnRGbG93R3JvdXBOYW1lJykpLFxuICB9KSk7XG5cbiAgcmV0dXJuIHBsYW5zV2l0aENoYW5nZWRGbG93c091dHB1dC5sZW5ndGggPiAwID8gcGxhbnNXaXRoQ2hhbmdlZEZsb3dzT3V0cHV0IDogbnVsbDtcbn07XG4iLCI8IS0tXG5cbiAgICBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcblxuICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuXG4gICAgICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcblxuICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuXG4tLT5cblxuPGRpdiBjbGFzcz1cImhlYWRlclwiPlxuICA8ZGl2IGNsYXNzPVwiaGVhZGVyX19hcGlJbmZvXCIgKm5nSWY9XCIhbG9hZGluZzsgZWxzZSBsb2FkaW5nQXBpSW5mb1wiPlxuICAgIDxzcGFuIGNsYXNzPVwiZ2lvLWJhZGdlLXByaW1hcnlcIj5cbiAgICAgIHt7IGFwaVR5cGUgfCB0aXRsZWNhc2UgfX1cbiAgICA8L3NwYW4+XG4gICAgPHNwYW5cbiAgICAgIGNsYXNzPVwiZ2lvLWJhZGdlLW5ldXRyYWxcIlxuICAgICAgW21hdFRvb2x0aXBdPVwiY29ubmVjdG9yc1Rvb2x0aXBcIlxuICAgICAgbWF0VG9vbHRpcFBvc2l0aW9uPVwicmlnaHRcIlxuICAgICAgbWF0VG9vbHRpcENsYXNzPVwiZ2lvLXBvbGljeS1zdHVkaW9fX3Rvb2x0aXAtbGluZS1icmVha1wiXG4gICAgPlxuICAgICAgPG1hdC1pY29uICpuZ0Zvcj1cImxldCBlbnRyeXBvaW50IG9mIGVudHJ5cG9pbnRzSW5mb1wiIGNsYXNzPVwiZ2lvLWxlZnRcIiBbc3ZnSWNvbl09XCJlbnRyeXBvaW50Lmljb25cIj48L21hdC1pY29uPlxuICAgICAgPG1hdC1pY29uICpuZ0Zvcj1cImxldCBlbmRwb2ludCBvZiBlbmRwb2ludHNJbmZvXCIgY2xhc3M9XCJnaW8tbGVmdFwiIFtzdmdJY29uXT1cImVuZHBvaW50Lmljb25cIj48L21hdC1pY29uPlxuICAgIDwvc3Bhbj5cbiAgPC9kaXY+XG4gIDxuZy10ZW1wbGF0ZSAjbG9hZGluZ0FwaUluZm8+XG4gICAgPGRpdiBjbGFzcz1cImhlYWRlcl9fYXBpSW5mb1wiPlxuICAgICAgPHNwYW4gY2xhc3M9XCJnaW8tYmFkZ2UtcHJpbWFyeVwiPiZuYnNwOzwvc3Bhbj5cbiAgICAgIDxzcGFuIGNsYXNzPVwiZ2lvLWJhZGdlLW5ldXRyYWxcIj4mbmJzcDs8L3NwYW4+XG4gICAgPC9kaXY+XG4gIDwvbmctdGVtcGxhdGU+XG5cbiAgPGRpdiBjbGFzcz1cImhlYWRlcl9fYnRuXCI+XG4gICAgPGJ1dHRvbiAqbmdJZj1cIiFzYXZpbmdcIiBtYXQtZmxhdC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgW2Rpc2FibGVkXT1cImxvYWRpbmcgfHwgZGlzYWJsZVNhdmVCdXR0b25cIiAoY2xpY2spPVwib25TYXZlKClcIj5TYXZlPC9idXR0b24+XG4gICAgPGJ1dHRvbiAqbmdJZj1cInNhdmluZ1wiIG1hdC1mbGF0LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiBkaXNhYmxlZD5TYXZpbmcuLi48L2J1dHRvbj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cbiAgPGRpdiBjbGFzcz1cIndyYXBwZXJfX2Zsb3dzTWVudVwiPlxuICAgIDxnaW8tcHMtZmxvd3MtbWVudVxuICAgICAgW3JlYWRPbmx5XT1cInJlYWRPbmx5XCJcbiAgICAgIFtsb2FkaW5nXT1cImxvYWRpbmdcIlxuICAgICAgW2FwaVR5cGVdPVwiYXBpVHlwZVwiXG4gICAgICBbZmxvd0V4ZWN1dGlvbl09XCJmbG93RXhlY3V0aW9uXCJcbiAgICAgIFtmbG93c0dyb3Vwc109XCJmbG93c0dyb3Vwc1wiXG4gICAgICBbZW50cnlwb2ludHNdPVwiZW50cnlwb2ludHNJbmZvXCJcbiAgICAgIFtlbnRyeXBvaW50c0luZm9dPVwiZW50cnlwb2ludHNJbmZvXCJcbiAgICAgIChmbG93c0dyb3Vwc0NoYW5nZSk9XCJvbkZsb3dzR3JvdXBzQ2hhbmdlKCRldmVudClcIlxuICAgICAgKGZsb3dFeGVjdXRpb25DaGFuZ2UpPVwib25GbG93RXhlY3V0aW9uQ2hhbmdlKCRldmVudClcIlxuICAgICAgW3NlbGVjdGVkRmxvd0lkXT1cInNlbGVjdGVkRmxvdz8uX2lkXCJcbiAgICAgIChzZWxlY3RlZEZsb3dJZENoYW5nZSk9XCJvblNlbGVjdEZsb3coJGV2ZW50KVwiXG4gICAgICAoZGVsZXRlRmxvdyk9XCJvbkRlbGV0ZVNlbGVjdGVkRmxvdygkZXZlbnQpXCJcbiAgICA+PC9naW8tcHMtZmxvd3MtbWVudT5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cIndyYXBwZXJfX2Zsb3dEZXRhaWxzXCI+XG4gICAgPGdpby1wcy1mbG93LWRldGFpbHNcbiAgICAgIFtyZWFkT25seV09XCJyZWFkT25seVwiXG4gICAgICBbbG9hZGluZ109XCJsb2FkaW5nXCJcbiAgICAgIFthcGlUeXBlXT1cImFwaVR5cGVcIlxuICAgICAgW2Zsb3ddPVwic2VsZWN0ZWRGbG93XCJcbiAgICAgIFtlbnRyeXBvaW50c0luZm9dPVwiZW50cnlwb2ludHNJbmZvXCJcbiAgICAgIFtlbmRwb2ludHNJbmZvXT1cImVuZHBvaW50c0luZm9cIlxuICAgICAgW3BvbGljaWVzXT1cInBvbGljaWVzXCJcbiAgICAgIFtnZW5lcmljUG9saWNpZXNdPVwiZ2VuZXJpY1BvbGljaWVzXCJcbiAgICAgIFt0cmlhbFVybF09XCJ0cmlhbFVybFwiXG4gICAgICAoZmxvd0NoYW5nZSk9XCJvblNlbGVjdGVkRmxvd0NoYW5nZSgkZXZlbnQpXCJcbiAgICAgIChkZWxldGVGbG93KT1cIm9uRGVsZXRlU2VsZWN0ZWRGbG93KCRldmVudClcIlxuICAgID48L2dpby1wcy1mbG93LWRldGFpbHM+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -62,13 +62,13 @@ export class GioPolicyStudioService {
|
|
|
62
62
|
this.documentationsCache[policy.id] = new BehaviorSubject(documentation);
|
|
63
63
|
}));
|
|
64
64
|
}
|
|
65
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
66
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
65
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioPolicyStudioService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
66
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioPolicyStudioService, providedIn: 'root' }); }
|
|
67
67
|
}
|
|
68
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
68
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioPolicyStudioService, decorators: [{
|
|
69
69
|
type: Injectable,
|
|
70
70
|
args: [{
|
|
71
71
|
providedIn: 'root',
|
|
72
72
|
}]
|
|
73
73
|
}] });
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLXBvbGljeS1zdHVkaW8uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLXBvbGljeS1zdHVkaW8tYW5ndWxhci9zcmMvbGliL3BvbGljeS1zdHVkaW8vZ2lvLXBvbGljeS1zdHVkaW8uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBU3JDLE1BQU0sT0FBTyxzQkFBc0I7SUFIbkM7UUFJVSxpQkFBWSxHQUE2QyxFQUFFLENBQUM7UUFDNUQsd0JBQW1CLEdBQWtFLEVBQUUsQ0FBQztLQXNEakc7SUFqRFEsc0JBQXNCLENBQUMsbUJBQXdDO1FBQ3BFLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxtQkFBbUIsQ0FBQztJQUNqRCxDQUFDO0lBRU0sNkJBQTZCLENBQUMsMEJBQXNEO1FBQ3pGLElBQUksQ0FBQywwQkFBMEIsR0FBRywwQkFBMEIsQ0FBQztJQUMvRCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksZUFBZSxDQUFDLE1BQWM7UUFDbkMsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUI7WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7UUFFbkYsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ2pDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDckQsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FDMUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ1gsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDN0QsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxzQkFBc0IsQ0FBQyxNQUFjO1FBQzFDLElBQUksQ0FBQyxJQUFJLENBQUMsMEJBQTBCO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyx5Q0FBeUMsQ0FBQyxDQUFDO1FBRWpHLElBQUksSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ3hDLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUM1RCxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsMEJBQTBCLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUNqRCxHQUFHLENBQUMsYUFBYSxDQUFDLEVBQUU7WUFDbEIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLGVBQWUsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUMzRSxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQzs4R0F2RFUsc0JBQXNCO2tIQUF0QixzQkFBc0IsY0FGckIsTUFBTTs7MkZBRVAsc0JBQXNCO2tCQUhsQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMjIgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBQb2xpY3ksIFBvbGljeURvY3VtZW50YXRpb25GZXRjaGVyLCBQb2xpY3lTY2hlbWFGZXRjaGVyIH0gZnJvbSAnLi4vbW9kZWxzJztcblxuaW1wb3J0IHsgUG9saWN5RG9jdW1lbnRhdGlvbiB9IGZyb20gJy4vZ2lvLXBvbGljeS1zdHVkaW8ubW9kZWwnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgR2lvUG9saWN5U3R1ZGlvU2VydmljZSB7XG4gIHByaXZhdGUgc2NoZW1hc0NhY2hlOiBSZWNvcmQ8c3RyaW5nLCBCZWhhdmlvclN1YmplY3Q8dW5rbm93bj4+ID0ge307XG4gIHByaXZhdGUgZG9jdW1lbnRhdGlvbnNDYWNoZTogUmVjb3JkPHN0cmluZywgQmVoYXZpb3JTdWJqZWN0PFBvbGljeURvY3VtZW50YXRpb24gfCBzdHJpbmc+PiA9IHt9O1xuXG4gIHByaXZhdGUgcG9saWN5U2NoZW1hRmV0Y2hlcj86IFBvbGljeVNjaGVtYUZldGNoZXI7XG4gIHByaXZhdGUgcG9saWN5RG9jdW1lbnRhdGlvbkZldGNoZXI/OiBQb2xpY3lEb2N1bWVudGF0aW9uRmV0Y2hlcjtcblxuICBwdWJsaWMgc2V0UG9saWN5U2NoZW1hRmV0Y2hlcihwb2xpY3lTY2hlbWFGZXRjaGVyOiBQb2xpY3lTY2hlbWFGZXRjaGVyKSB7XG4gICAgdGhpcy5wb2xpY3lTY2hlbWFGZXRjaGVyID0gcG9saWN5U2NoZW1hRmV0Y2hlcjtcbiAgfVxuXG4gIHB1YmxpYyBzZXRQb2xpY3lEb2N1bWVudGF0aW9uRmV0Y2hlcihwb2xpY3lEb2N1bWVudGF0aW9uRmV0Y2hlcjogUG9saWN5RG9jdW1lbnRhdGlvbkZldGNoZXIpIHtcbiAgICB0aGlzLnBvbGljeURvY3VtZW50YXRpb25GZXRjaGVyID0gcG9saWN5RG9jdW1lbnRhdGlvbkZldGNoZXI7XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGUgcG9saWN5IHNjaGVtYSBmZXRjaGVyIHRvIGdldCB0aGUgc2NoZW1hIGZvciB0aGUgZ2l2ZW4gcG9saWN5LiBJZiB0aGVcbiAgICogc2NoZW1hIGhhcyBhbHJlYWR5IGJlZW4gZmV0Y2hlZCwgaXQgd2lsbCBiZSByZXR1cm5lZCBmcm9tIHRoZSBjYWNoZS5cbiAgICpcbiAgICogQHBhcmFtIHBvbGljeSB0byBnZXQgdGhlIHNjaGVtYSBmb3JcbiAgICogQHJldHVybnMgdGhlIHNjaGVtYSBmb3IgdGhlIHBvbGljeVxuICAgKi9cbiAgcHVibGljIGdldFBvbGljeVNjaGVtYShwb2xpY3k6IFBvbGljeSk6IE9ic2VydmFibGU8dW5rbm93bj4ge1xuICAgIGlmICghdGhpcy5wb2xpY3lTY2hlbWFGZXRjaGVyKSB0aHJvdyBuZXcgRXJyb3IoJ1BvbGljeVNjaGVtYUZldGNoZXIgbm90IGRlZmluZWQhJyk7XG5cbiAgICBpZiAodGhpcy5zY2hlbWFzQ2FjaGVbcG9saWN5LmlkXSkge1xuICAgICAgcmV0dXJuIHRoaXMuc2NoZW1hc0NhY2hlW3BvbGljeS5pZF0uYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMucG9saWN5U2NoZW1hRmV0Y2hlcihwb2xpY3kpLnBpcGUoXG4gICAgICB0YXAoc2NoZW1hID0+IHtcbiAgICAgICAgdGhpcy5zY2hlbWFzQ2FjaGVbcG9saWN5LmlkXSA9IG5ldyBCZWhhdmlvclN1YmplY3Qoc2NoZW1hKTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGUgcG9saWN5IGRvY3VtZW50YXRpb24gZmV0Y2hlciB0byBnZXQgdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBnaXZlbiBwb2xpY3kuIElmIHRoZVxuICAgKiBkb2N1bWVudGF0aW9uIGhhcyBhbHJlYWR5IGJlZW4gZmV0Y2hlZCwgaXQgd2lsbCBiZSByZXR1cm5lZCBmcm9tIHRoZSBjYWNoZS5cbiAgICpcbiAgICogQHBhcmFtIHBvbGljeSB0byBnZXQgdGhlIGRvY3VtZW50YXRpb24gZm9yXG4gICAqIEByZXR1cm5zIHRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGUgcG9saWN5XG4gICAqL1xuICBwdWJsaWMgZ2V0UG9saWN5RG9jdW1lbnRhdGlvbihwb2xpY3k6IFBvbGljeSk6IE9ic2VydmFibGU8UG9saWN5RG9jdW1lbnRhdGlvbiB8IHN0cmluZz4ge1xuICAgIGlmICghdGhpcy5wb2xpY3lEb2N1bWVudGF0aW9uRmV0Y2hlcikgdGhyb3cgbmV3IEVycm9yKCdQb2xpY3lEb2N1bWVudGF0aW9uRmV0Y2hlciBub3QgZGVmaW5lZCEnKTtcblxuICAgIGlmICh0aGlzLmRvY3VtZW50YXRpb25zQ2FjaGVbcG9saWN5LmlkXSkge1xuICAgICAgcmV0dXJuIHRoaXMuZG9jdW1lbnRhdGlvbnNDYWNoZVtwb2xpY3kuaWRdLmFzT2JzZXJ2YWJsZSgpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnBvbGljeURvY3VtZW50YXRpb25GZXRjaGVyKHBvbGljeSkucGlwZShcbiAgICAgIHRhcChkb2N1bWVudGF0aW9uID0+IHtcbiAgICAgICAgdGhpcy5kb2N1bWVudGF0aW9uc0NhY2hlW3BvbGljeS5pZF0gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGRvY3VtZW50YXRpb24pO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxufVxuIl19
|