@eo-sdk/client 10.6.42 → 10.6.44
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/app/eo-framework/form-elements/organization/organization.component.d.ts.map +1 -1
- package/esm2020/app/eo-client/about-state/about-state.component.mjs +3 -3
- package/esm2020/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.mjs +3 -3
- package/esm2020/app/eo-framework/form-elements/organization/organization.component.mjs +16 -2
- package/fesm2015/eo-sdk-client.mjs +19 -5
- package/fesm2015/eo-sdk-client.mjs.map +1 -1
- package/fesm2020/eo-sdk-client.mjs +19 -5
- package/fesm2020/eo-sdk-client.mjs.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"organization.component.d.ts","sourceRoot":"","sources":["../../../../../../../src/app/eo-framework/form-elements/organization/organization.component.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EAEnB,YAAY,EAMb,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,oBAAoB,EAAoC,SAAS,EAAC,MAAM,gBAAgB,CAAC;AACjG,OAAO,EAAC,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,WAAW,EAAQ,MAAM,cAAc,CAAC;AACjG,OAAO,EAAC,YAAY,EAAC,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAqD,YAAY,EAAC,MAAM,MAAM,CAAC;;AAEtF,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,qBAiBa,qBAAsB,YAAW,oBAAoB,EAAE,mBAAmB,EAAE,SAAS;IAsDpF,OAAO,CAAC,OAAO;IACzB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,aAAa;IACd,WAAW,EAAE,WAAW;IAvDN,iBAAiB,EAAE,YAAY,CAAC;IAE3D,IAAI;;;MAGH;IAED,SAAS,SAA4B;IACrC,SAAS,SAAK;IACd,QAAQ,SAAO;IACgB,SAAS,EAAE,OAAO,CAAC;IAGlD,eAAe,oBAAsB;IAGrC,iBAAiB,oBAAsB;IAEvC,eAAe,EAAE,GAAG,EAAE,CAAC;IAEvB,KAAK,MAAC;IACN,aAAa,EAAE,MAAM,CAAC;IAEtB,UAAU,EAAE,GAAG,EAAE,CAAM;IACvB,KAAK,EAAE,GAAG,CAAM;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,kBAAkB,CAAkB;IAC5C,IAAa,iBAAiB,CAAC,CAAC,EAAE,OAAO,EAGxC;IACD,IAAI,iBAAiB,IAJa,OAAO,CAMxC;IACQ,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IAC9B,IAAa,QAAQ,CAAC,CAAC,EAAE,OAAO,EAE/B;IACD,IAAI,QAAQ,IAHa,OAAO,CAK/B;IACD,IAAa,QAAQ,CAAC,EAAE,EAAE,GAAG,EAI5B;IACQ,WAAW,EAAE,MAAM,CAAC;IAEpB,UAAU,EAAE,MAAM,EAAE,CAAM;IAC1B,YAAY,EAAE,kBAAkB,CAAC;gBAEtB,OAAO,EAAE,cAAc,EACjC,SAAS,EAAE,gBAAgB,EAC3B,aAAa,EAAE,aAAa,EAC7B,WAAW,EAAE,WAAW;IAG1B,QAAQ;IAIf,OAAO,CAAC,oBAAoB;IAwB5B,eAAe,MAAO,GAAG,UACxB;IAED,UAAU,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI;IAU5B,gBAAgB,CAAC,EAAE,EAAE,GAAG,GAAG,IAAI;IAI/B,iBAAiB,CAAC,EAAE,EAAE,GAAG,GAAG,IAAI;IAGhC,OAAO,CAAC,SAAS;IAKjB,cAAc,CAAC,IAAI,EAAE,MAAM;IAsB3B,SAAS,CAAC,KAAK,EAAE,GAAG,GAAG,YAAY;
|
|
1
|
+
{"version":3,"file":"organization.component.d.ts","sourceRoot":"","sources":["../../../../../../../src/app/eo-framework/form-elements/organization/organization.component.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EAEnB,YAAY,EAMb,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,oBAAoB,EAAoC,SAAS,EAAC,MAAM,gBAAgB,CAAC;AACjG,OAAO,EAAC,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,WAAW,EAAQ,MAAM,cAAc,CAAC;AACjG,OAAO,EAAC,YAAY,EAAC,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAqD,YAAY,EAAC,MAAM,MAAM,CAAC;;AAEtF,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,qBAiBa,qBAAsB,YAAW,oBAAoB,EAAE,mBAAmB,EAAE,SAAS;IAsDpF,OAAO,CAAC,OAAO;IACzB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,aAAa;IACd,WAAW,EAAE,WAAW;IAvDN,iBAAiB,EAAE,YAAY,CAAC;IAE3D,IAAI;;;MAGH;IAED,SAAS,SAA4B;IACrC,SAAS,SAAK;IACd,QAAQ,SAAO;IACgB,SAAS,EAAE,OAAO,CAAC;IAGlD,eAAe,oBAAsB;IAGrC,iBAAiB,oBAAsB;IAEvC,eAAe,EAAE,GAAG,EAAE,CAAC;IAEvB,KAAK,MAAC;IACN,aAAa,EAAE,MAAM,CAAC;IAEtB,UAAU,EAAE,GAAG,EAAE,CAAM;IACvB,KAAK,EAAE,GAAG,CAAM;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,kBAAkB,CAAkB;IAC5C,IAAa,iBAAiB,CAAC,CAAC,EAAE,OAAO,EAGxC;IACD,IAAI,iBAAiB,IAJa,OAAO,CAMxC;IACQ,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IAC9B,IAAa,QAAQ,CAAC,CAAC,EAAE,OAAO,EAE/B;IACD,IAAI,QAAQ,IAHa,OAAO,CAK/B;IACD,IAAa,QAAQ,CAAC,EAAE,EAAE,GAAG,EAI5B;IACQ,WAAW,EAAE,MAAM,CAAC;IAEpB,UAAU,EAAE,MAAM,EAAE,CAAM;IAC1B,YAAY,EAAE,kBAAkB,CAAC;gBAEtB,OAAO,EAAE,cAAc,EACjC,SAAS,EAAE,gBAAgB,EAC3B,aAAa,EAAE,aAAa,EAC7B,WAAW,EAAE,WAAW;IAG1B,QAAQ;IAIf,OAAO,CAAC,oBAAoB;IAwB5B,eAAe,MAAO,GAAG,UACxB;IAED,UAAU,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI;IAU5B,gBAAgB,CAAC,EAAE,EAAE,GAAG,GAAG,IAAI;IAI/B,iBAAiB,CAAC,EAAE,EAAE,GAAG,GAAG,IAAI;IAGhC,OAAO,CAAC,SAAS;IAKjB,cAAc,CAAC,IAAI,EAAE,MAAM;IAsB3B,SAAS,CAAC,KAAK,EAAE,GAAG,GAAG,YAAY;IA+BnC,UAAU,CAAC,KAAK,KAAA;IAYhB,QAAQ,CAAC,KAAK,KAAA;IAWd,kBAAkB;IAIlB,OAAO,CAAC,eAAe;IAIvB,qBAAqB;yCArMV,qBAAqB;2CAArB,qBAAqB;CA0MjC"}
|
|
@@ -8,10 +8,10 @@ export class AboutStateComponent {
|
|
|
8
8
|
this.backend = backend;
|
|
9
9
|
this.userService = userService;
|
|
10
10
|
this.config = config;
|
|
11
|
-
this.__libraries__ = [{ "name": "@ag-grid-community/angular", "version": "22.1.2", "license": "MIT" }, { "name": "@ag-grid-community/client-side-row-model", "version": "22.1.1", "license": "MIT" }, { "name": "@ag-grid-community/core", "version": "22.1.1", "license": "MIT" }, { "name": "@ag-grid-community/csv-export", "version": "22.1.1", "license": "MIT" }, { "name": "@angular/animations", "version": "15.2.2", "license": "MIT" }, { "name": "@angular/cdk", "version": "15.2.2", "license": "MIT" }, { "name": "@angular/common", "version": "15.2.2", "license": "MIT" }, { "name": "@angular/compiler", "version": "15.2.2", "license": "MIT" }, { "name": "@angular/core", "version": "15.2.2", "license": "MIT" }, { "name": "@angular/forms", "version": "15.2.2", "license": "MIT" }, { "name": "@angular/platform-browser", "version": "15.2.2", "license": "MIT" }, { "name": "@angular/platform-browser-dynamic", "version": "15.2.2", "license": "MIT" }, { "name": "@angular/router", "version": "15.2.2", "license": "MIT" }, { "name": "@carbon/charts-angular", "version": "1.8.1", "license": "Apache-2.0" }, { "name": "@eo-sdk/core", "version": "10.6.
|
|
11
|
+
this.__libraries__ = [{ "name": "@ag-grid-community/angular", "version": "22.1.2", "license": "MIT" }, { "name": "@ag-grid-community/client-side-row-model", "version": "22.1.1", "license": "MIT" }, { "name": "@ag-grid-community/core", "version": "22.1.1", "license": "MIT" }, { "name": "@ag-grid-community/csv-export", "version": "22.1.1", "license": "MIT" }, { "name": "@angular/animations", "version": "15.2.2", "license": "MIT" }, { "name": "@angular/cdk", "version": "15.2.2", "license": "MIT" }, { "name": "@angular/common", "version": "15.2.2", "license": "MIT" }, { "name": "@angular/compiler", "version": "15.2.2", "license": "MIT" }, { "name": "@angular/core", "version": "15.2.2", "license": "MIT" }, { "name": "@angular/forms", "version": "15.2.2", "license": "MIT" }, { "name": "@angular/platform-browser", "version": "15.2.2", "license": "MIT" }, { "name": "@angular/platform-browser-dynamic", "version": "15.2.2", "license": "MIT" }, { "name": "@angular/router", "version": "15.2.2", "license": "MIT" }, { "name": "@carbon/charts-angular", "version": "1.8.1", "license": "Apache-2.0" }, { "name": "@eo-sdk/core", "version": "10.6.43", "license": "MIT" }, { "name": "@ngneat/until-destroy", "version": "10.0.0", "license": "MIT" }, { "name": "@ngx-pwa/local-storage", "version": "15.0.0", "license": "MIT" }, { "name": "@ngx-translate/core", "version": "14.0.0", "license": "MIT" }, { "name": "@yuuvis/components", "version": "1.0.8", "license": "MIT" }, { "name": "@yuuvis/widget-grid", "version": "1.0.2", "license": "MIT" }, { "name": "core-js", "version": "2.6.12", "license": "MIT" }, { "name": "file-saver", "version": "2.0.5", "license": "MIT" }, { "name": "font-awesome", "version": "4.7.0", "license": "(OFL-1.1 AND MIT)" }, { "name": "lodash-es", "version": "4.17.21", "license": "MIT" }, { "name": "moment", "version": "2.29.4", "license": "MIT" }, { "name": "ngx-toastr", "version": "16.0.2", "license": "MIT" }, { "name": "rxjs", "version": "7.5.7", "license": "Apache-2.0" }, { "name": "tslib", "version": "2.6.2", "license": "0BSD" }, { "name": "zone.js", "version": "0.11.8", "license": "MIT" }];
|
|
12
12
|
this.ctrl = {
|
|
13
13
|
componentName: 'yuuvis® RAD client',
|
|
14
|
-
componentVersion: '10.6.
|
|
14
|
+
componentVersion: '10.6.44',
|
|
15
15
|
productName: '',
|
|
16
16
|
productVersion: ''
|
|
17
17
|
};
|
|
@@ -79,4 +79,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
|
|
|
79
79
|
type: Component,
|
|
80
80
|
args: [{ selector: 'eo-about-state', template: "<div class=\"eo-about-state\">\n\n <div class=\"about\">\n <div class=\"header\" [style.background-image]=\"backgroundImage\">\n <img [src]=\"headerLogo\"/>\n </div>\n\n <div class=\"body\">\n <div class=\"claim\" translate>eo.help.about.claim</div>\n\n <div class=\"wrap\">\n <table>\n <tbody>\n <tr>\n <th translate>eo.help.about.component.label</th>\n <td>{{ctrl.componentName}}</td>\n </tr>\n <tr>\n <th translate>eo.help.about.component.version.label</th>\n <td>{{ctrl.componentVersion}}</td>\n </tr>\n <tr>\n <th translate>eo.help.about.product.label</th>\n <td>{{ ctrl.productName }}</td>\n </tr>\n <tr>\n <th translate>eo.help.about.product.version.label</th>\n <td>{{ ctrl.productVersion }}</td>\n </tr>\n <tr>\n <th translate>eo.help.about.producer.label</th>\n <td translate>eo.help.about.producer.text</td>\n </tr>\n </tbody>\n </table>\n </div>\n\n\n <h2 translate>eo.help.license.title</h2>\n <p translate>eo.help.license.intro</p>\n <div class=\"showLic\" (click)=\"licenseShow = !licenseShow\">\n <span class=\"toggle\"><span translate>eo.help.license.title</span><span class=\"toggle-indicator\">{{licenseShow ? '-' : '+'}}</span></span></div>\n <div class=\"licenses\" *ngIf=\"licenseShow\">\n <div class=\"lib\" *ngFor=\"let lib of __libraries__; trackBy: trackByFn\">\n <div class=\"name\">{{lib.name}}</div>\n <div class=\"lic\">\n <a href=\"{{licenses[lib.license].url}}\" target=\"_blank\" *ngIf=\"licenses[lib.license].url\">{{licenses[lib.license].label}}</a>\n <span *ngIf=\"!licenses[lib.license].url\">{{licenses[lib.license].label}}</span>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n</div>\n", styles: [":host{--about-header-height: 300px;position:absolute;inset:0;display:flex;flex-flow:row;justify-content:center;overflow-y:auto}.eo-about-state{box-sizing:border-box;width:800px;display:flex;flex-flow:column}@media screen and (max-width: 832px){.eo-about-state{margin:0;min-width:inherit;width:100%}}.eo-about-state .about{box-shadow:0 2px 5px #0003;background:var(--panel-background);margin:var(--app-pane-padding)}.eo-about-state .about .header{position:relative;height:var(--about-header-height);background-size:cover}.eo-about-state .about .header:after{content:\"\";position:absolute;inset:0;background-color:rgba(var(--color-accent-rgb),.8)}.eo-about-state .about .header img{right:8%;bottom:18%;position:absolute;z-index:20;width:40%}.eo-about-state .about .body{padding:var(--app-pane-padding)}.eo-about-state .about .body .claim{padding:var(--app-pane-padding) 0}.eo-about-state .about .body h2{margin:1.5em 0 0;color:var(--text-color-caption);font-weight:var(--font-weight-light);font-size:var(--font-title)}.eo-about-state .about .body .wrap{display:flex;flex-flow:row wrap}.eo-about-state .about .body ul.links{color:var(--color-accent);list-style-type:none}.eo-about-state .about .body ul.links li{padding:2px 0}.eo-about-state .about .body ul.links a{text-decoration:none;color:var(--color-accent)}.eo-about-state .about .body ul.links a:hover{text-decoration:underline}.eo-about-state .about .body table{margin:var(--app-pane-padding);padding:calc(var(--app-pane-padding) / 4) 0;background-color:rgba(var(--color-black-rgb),.06);border-radius:2px}.eo-about-state .about .body table th{display:flex;flex-flow:column;align-items:flex-start;justify-content:center;font-size:var(--font-hint);color:var(--text-color-caption)}.eo-about-state .about .body table th,.eo-about-state .about .body table td{padding:calc(var(--app-pane-padding) / 8) calc(var(--app-pane-padding) / 2)}.eo-about-state .about .body .showLic span.toggle{color:var(--color-accent);display:inline-block;padding:0 4px 2px;border-radius:4px;border:1px solid var(--color-accent);cursor:pointer}.eo-about-state .about .body .showLic .toggle-indicator{padding:0 4px}.eo-about-state .about .body .licenses{padding-top:var(--app-pane-padding)}.eo-about-state .about .body .licenses .lib{display:flex;flex-flow:row nowrap;padding:calc(var(--app-pane-padding) / 4);border-top:1px solid var(--list-item-border-color)}.eo-about-state .about .body .licenses .lib .name{flex:1 1 auto}.eo-about-state .about .body .licenses .lib .lic{flex:0 0 auto;font-size:var(--font-hint);color:var(--text-color-caption)}.eo-about-state .about .body .licenses .lib .lic a{text-decoration:none;border-radius:2px;border:1px solid var(--color-accent);color:var(--color-accent);display:inline-block;padding:2px 4px;background-color:rgba(var(--color-black-rgb),.06);line-height:1em}\n"] }]
|
|
81
81
|
}], ctorParameters: function () { return [{ type: i1.BackendService }, { type: i1.UserService }, { type: i1.Config }]; } });
|
|
82
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJvdXQtc3RhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvYWJvdXQtc3RhdGUvYWJvdXQtc3RhdGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvYWJvdXQtc3RhdGUvYWJvdXQtc3RhdGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFReEMsTUFBTSxPQUFPLG1CQUFtQjtJQXNEOUIsWUFBb0IsT0FBdUIsRUFBVSxXQUF3QixFQUFVLE1BQWM7UUFBakYsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7UUFqRHJHLGtCQUFhLEdBQUcsQ0FBQyxFQUFDLE1BQU0sRUFBQyw0QkFBNEIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQywwQ0FBMEMsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyx5QkFBeUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQywrQkFBK0IsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxxQkFBcUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxjQUFjLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsaUJBQWlCLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsbUJBQW1CLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsZUFBZSxFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLGdCQUFnQixFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLDJCQUEyQixFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLG1DQUFtQyxFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLGlCQUFpQixFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLHdCQUF3QixFQUFDLFNBQVMsRUFBQyxPQUFPLEVBQUMsU0FBUyxFQUFDLFlBQVksRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLGNBQWMsRUFBQyxTQUFTLEVBQUMsU0FBUyxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyx1QkFBdUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyx3QkFBd0IsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxxQkFBcUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxvQkFBb0IsRUFBQyxTQUFTLEVBQUMsT0FBTyxFQUFD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QUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDakQ7UUFFRCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDcEQsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFDMUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUM7UUFDekQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxXQUFXO2FBQ2IsS0FBSzthQUNMLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQUssRUFBRSxJQUFJO1FBQ25CLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzs7Z0hBN0VVLG1CQUFtQjtvR0FBbkIsbUJBQW1CLHNEQ1JoQyxvOERBdURBOzJGRC9DYSxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0UsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtVc2VyU2VydmljZSwgQ29uZmlnLCBCYWNrZW5kU2VydmljZX0gZnJvbSAnQGVvLXNkay9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW8tYWJvdXQtc3RhdGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vYWJvdXQtc3RhdGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hYm91dC1zdGF0ZS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEFib3V0U3RhdGVDb21wb25lbnQge1xuXG4gIGJhY2tncm91bmRJbWFnZTogc3RyaW5nO1xuICBoZWFkZXJMb2dvOiBzdHJpbmc7XG4gIGxpY2Vuc2VTaG93OiBib29sZWFuO1xuICBfX2xpYnJhcmllc19fID0gW3tcIm5hbWVcIjpcIkBhZy1ncmlkLWNvbW11bml0eS9hbmd1bGFyXCIsXCJ2ZXJzaW9uXCI6XCIyMi4xLjJcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYWctZ3JpZC1jb21tdW5pdHkvY2xpZW50LXNpZGUtcm93LW1vZGVsXCIsXCJ2ZXJzaW9uXCI6XCIyMi4xLjFcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYWctZ3JpZC1jb21tdW5pdHkvY29yZVwiLFwidmVyc2lvblwiOlwiMjIuMS4xXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFnLWdyaWQtY29tbXVuaXR5L2Nzdi1leHBvcnRcIixcInZlcnNpb25cIjpcIjIyLjEuMVwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhbmd1bGFyL2FuaW1hdGlvbnNcIixcInZlcnNpb25cIjpcIjE1LjIuMlwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhbmd1bGFyL2Nka1wiLFwidmVyc2lvblwiOlwiMTUuMi4yXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvY29tbW9uXCIsXCJ2ZXJzaW9uXCI6XCIxNS4yLjJcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYW5ndWxhci9jb21waWxlclwiLFwidmVyc2lvblwiOlwiMTUuMi4yXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvY29yZVwiLFwidmVyc2lvblwiOlwiMTUuMi4yXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvZm9ybXNcIixcInZlcnNpb25cIjpcIjE1LjIuMlwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXJcIixcInZlcnNpb25cIjpcIjE1LjIuMlwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXItZHluYW1pY1wiLFwidmVyc2lvblwiOlwiMTUuMi4yXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvcm91dGVyXCIsXCJ2ZXJzaW9uXCI6XCIxNS4yLjJcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAY2FyYm9uL2NoYXJ0cy1hbmd1bGFyXCIsXCJ2ZXJzaW9uXCI6XCIxLjguMVwiLFwibGljZW5zZVwiOlwiQXBhY2hlLTIuMFwifSx7XCJuYW1lXCI6XCJAZW8tc2RrL2NvcmVcIixcInZlcnNpb25cIjpcIjEwLjYuNDFcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAbmduZWF0L3VudGlsLWRlc3Ryb3lcIixcInZlcnNpb25cIjpcIjEwLjAuMFwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBuZ3gtcHdhL2xvY2FsLXN0b3JhZ2VcIixcInZlcnNpb25cIjpcIjE1LjAuMFwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIixcInZlcnNpb25cIjpcIjE0LjAuMFwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkB5dXV2aXMvY29tcG9uZW50c1wiLFwidmVyc2lvblwiOlwiMS4wLjhcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAeXV1dmlzL3dpZGdldC1ncmlkXCIsXCJ2ZXJzaW9uXCI6XCIxLjAuMlwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcImNvcmUtanNcIixcInZlcnNpb25cIjpcIjIuNi4xMlwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcImZpbGUtc2F2ZXJcIixcInZlcnNpb25cIjpcIjIuMC41XCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiZm9udC1hd2Vzb21lXCIsXCJ2ZXJzaW9uXCI6XCI0LjcuMFwiLFwibGljZW5zZVwiOlwiKE9GTC0xLjEgQU5EIE1JVClcIn0se1wibmFtZVwiOlwibG9kYXNoLWVzXCIsXCJ2ZXJzaW9uXCI6XCI0LjE3LjIxXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwibW9tZW50XCIsXCJ2ZXJzaW9uXCI6XCIyLjI5LjRcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJuZ3gtdG9hc3RyXCIsXCJ2ZXJzaW9uXCI6XCIxNi4wLjJcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJyeGpzXCIsXCJ2ZXJzaW9uXCI6XCI3LjUuN1wiLFwibGljZW5zZVwiOlwiQXBhY2hlLTIuMFwifSx7XCJuYW1lXCI6XCJ0c2xpYlwiLFwidmVyc2lvblwiOlwiMi42LjJcIixcImxpY2Vuc2VcIjpcIjBCU0RcIn0se1wibmFtZVwiOlwiem9uZS5qc1wiLFwidmVyc2lvblwiOlwiMC4xMS44XCIsXCJsaWNlbnNlXCI6XCJNSVRcIn1dO1xuICB1c2VyTGFuZzogc3RyaW5nO1xuXG4gIGN0cmwgPSB7XG4gICAgY29tcG9uZW50TmFtZTogJ3l1dXZpc8KuIFJBRCBjbGllbnQnLFxuICAgIGNvbXBvbmVudFZlcnNpb246ICcxMC42LjQyJyxcbiAgICBwcm9kdWN0TmFtZTogJycsXG4gICAgcHJvZHVjdFZlcnNpb246ICcnXG4gIH07XG5cbiAgbGljZW5zZXMgPSB7XG4gICAgJ01JVCc6IHtcbiAgICAgICdsYWJlbCc6ICdNSVQnLFxuICAgICAgJ3VybCc6ICdodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUJ1xuICAgIH0sXG4gICAgJ0FwYWNoZS0yLjAnOiB7XG4gICAgICAnbGFiZWwnOiAnQXBhY2hlIDIuMCcsXG4gICAgICAndXJsJzogJ2h0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMCdcbiAgICB9LFxuICAgICdCU0QtMy1DbGF1c2UtQ2xlYXInOiB7XG4gICAgICAnbGFiZWwnOiAnQlNEIDMtQ2xhdXNlJyxcbiAgICAgICd1cmwnOiAnaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL0JTRC0zLUNsYXVzZSdcbiAgICB9LFxuICAgICdDQzAtMS4wJzoge1xuICAgICAgJ2xhYmVsJzogJ0NDMCAxLjAnLFxuICAgICAgJ3VybCc6ICdodHRwczovL2NyZWF0aXZlY29tbW9ucy5vcmcvcHVibGljZG9tYWluL3plcm8vMS4wLydcbiAgICB9LFxuICAgICcoT0ZMLTEuMSBBTkQgTUlUKSc6IHtcbiAgICAgICdsYWJlbCc6ICdNSVQnLFxuICAgICAgJ3VybCc6ICdodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUJ1xuICAgIH0sXG4gICAgJ1NJTE9GTC0xLjEnOiB7XG4gICAgICAnbGFiZWwnOiAnU0lMIE9wZW4gRm9udCBMaWNlbnNlIDEuMScsXG4gICAgICAndXJsJzogJ2h0dHA6Ly9zY3JpcHRzLnNpbC5vcmcvT0ZMX3dlYidcbiAgICB9LFxuICAgICdDb21tZXJjaWFsJzoge1xuICAgICAgJ2xhYmVsJzogJ0NvbW1lcmNpYWwnXG4gICAgfSxcbiAgICAnYWctZ3JpZCc6IHtcbiAgICAgICdsYWJlbCc6ICdhZy1HcmlkLUVudGVycHJpc2UgU29mdHdhcmUgTGljZW5jZSBBZ3JlZW1lbnQgVmVyc2lvbiAxLjcnLFxuICAgICAgJ3VybCc6ICdodHRwczovL2dpdGh1Yi5jb20vY2VvbHRlci9hZy1ncmlkLWVudGVycHJpc2UvYmxvYi9tYXN0ZXIvTElDRU5TRS5tZCdcbiAgICB9LFxuICAgICcwQlNEJzoge1xuICAgICAgJ2xhYmVsJzogJ1plcm8tQ2xhdXNlIEJTRCcsXG4gICAgICAndXJsJzogJ2h0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy8wQlNEJ1xuICAgIH1cbiAgfTtcblxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYmFja2VuZDogQmFja2VuZFNlcnZpY2UsIHByaXZhdGUgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlLCBwcml2YXRlIGNvbmZpZzogQ29uZmlnKSB7XG4gICAgdGhpcy5fX2xpYnJhcmllc19fID0gdGhpcy5fX2xpYnJhcmllc19fLmZpbHRlcihsaWIgPT4gdGhpcy5saWNlbnNlc1tsaWIubGljZW5zZV0pO1xuICAgIHRoaXMuZ2V0VXNlckxhbmcoKTtcbiAgICB0aGlzLmJhY2tncm91bmRJbWFnZSA9IGB1cmwoJHt0aGlzLmNvbmZpZy5nZXREYXNoYm9hcmRCYWNrZ3JvdW5kSW1hZ2UoKX0pYDtcbiAgICB0aGlzLmhlYWRlckxvZ28gPSB0aGlzLmNvbmZpZy5nZXRSYXcoJ2Fib3V0LmhlYWRlckxvZ28nKTtcbiAgICBpZiAoIXRoaXMuaGVhZGVyTG9nbykge1xuICAgICAgdGhpcy5oZWFkZXJMb2dvID0gdGhpcy5jb25maWcuZ2V0UmF3KCdhcHBMb2dvJyk7XG4gICAgfVxuXG4gICAgdGhpcy5iYWNrZW5kLmdldEpzb24oJy9zeXN0ZW0vaW5mbycpLnN1YnNjcmliZShpbmZvID0+IHtcbiAgICAgIHRoaXMuY3RybC5wcm9kdWN0TmFtZSA9IGluZm8ucHJvZHVjdC5uYW1lO1xuICAgICAgdGhpcy5jdHJsLnByb2R1Y3RWZXJzaW9uID0gaW5mby5wcm9kdWN0LnByb2R1Y3R2ZXJzaW9uO1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0VXNlckxhbmcoKSB7XG4gICAgdGhpcy51c2VyU2VydmljZVxuICAgICAgLnVzZXIkXG4gICAgICAuc3Vic2NyaWJlKGRhdGEgPT4gdGhpcy51c2VyTGFuZyA9IGRhdGEudXNlclNldHRpbmdzLmNsaWVudGxvY2FsZSk7XG4gIH1cblxuICB0cmFja0J5Rm4oaW5kZXgsIGl0ZW0pOiBudW1iZXIge1xuICAgIHJldHVybiBpbmRleDtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImVvLWFib3V0LXN0YXRlXCI+XG5cbiAgPGRpdiBjbGFzcz1cImFib3V0XCI+XG4gICAgPGRpdiBjbGFzcz1cImhlYWRlclwiIFtzdHlsZS5iYWNrZ3JvdW5kLWltYWdlXT1cImJhY2tncm91bmRJbWFnZVwiPlxuICAgICAgPGltZyBbc3JjXT1cImhlYWRlckxvZ29cIi8+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiYm9keVwiPlxuICAgICAgPGRpdiBjbGFzcz1cImNsYWltXCIgdHJhbnNsYXRlPmVvLmhlbHAuYWJvdXQuY2xhaW08L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cIndyYXBcIj5cbiAgICAgICAgPHRhYmxlPlxuICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGggdHJhbnNsYXRlPmVvLmhlbHAuYWJvdXQuY29tcG9uZW50LmxhYmVsPC90aD5cbiAgICAgICAgICAgIDx0ZD57e2N0cmwuY29tcG9uZW50TmFtZX19PC90ZD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgIDx0aCB0cmFuc2xhdGU+ZW8uaGVscC5hYm91dC5jb21wb25lbnQudmVyc2lvbi5sYWJlbDwvdGg+XG4gICAgICAgICAgICA8dGQ+e3tjdHJsLmNvbXBvbmVudFZlcnNpb259fTwvdGQ+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGggdHJhbnNsYXRlPmVvLmhlbHAuYWJvdXQucHJvZHVjdC5sYWJlbDwvdGg+XG4gICAgICAgICAgICA8dGQ+e3sgY3RybC5wcm9kdWN0TmFtZSB9fTwvdGQ+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGggdHJhbnNsYXRlPmVvLmhlbHAuYWJvdXQucHJvZHVjdC52ZXJzaW9uLmxhYmVsPC90aD5cbiAgICAgICAgICAgIDx0ZD57eyBjdHJsLnByb2R1Y3RWZXJzaW9uIH19PC90ZD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgIDx0aCB0cmFuc2xhdGU+ZW8uaGVscC5hYm91dC5wcm9kdWNlci5sYWJlbDwvdGg+XG4gICAgICAgICAgICA8dGQgdHJhbnNsYXRlPmVvLmhlbHAuYWJvdXQucHJvZHVjZXIudGV4dDwvdGQ+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICA8L3RhYmxlPlxuICAgICAgPC9kaXY+XG5cblxuICAgICAgPGgyIHRyYW5zbGF0ZT5lby5oZWxwLmxpY2Vuc2UudGl0bGU8L2gyPlxuICAgICAgPHAgdHJhbnNsYXRlPmVvLmhlbHAubGljZW5zZS5pbnRybzwvcD5cbiAgICAgIDxkaXYgY2xhc3M9XCJzaG93TGljXCIgKGNsaWNrKT1cImxpY2Vuc2VTaG93ID0gIWxpY2Vuc2VTaG93XCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwidG9nZ2xlXCI+PHNwYW4gdHJhbnNsYXRlPmVvLmhlbHAubGljZW5zZS50aXRsZTwvc3Bhbj48c3BhbiBjbGFzcz1cInRvZ2dsZS1pbmRpY2F0b3JcIj57e2xpY2Vuc2VTaG93ID8gJy0nIDogJysnfX08L3NwYW4+PC9zcGFuPjwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImxpY2Vuc2VzXCIgKm5nSWY9XCJsaWNlbnNlU2hvd1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibGliXCIgKm5nRm9yPVwibGV0IGxpYiBvZiBfX2xpYnJhcmllc19fOyB0cmFja0J5OiB0cmFja0J5Rm5cIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibmFtZVwiPnt7bGliLm5hbWV9fTwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJsaWNcIj5cbiAgICAgICAgICAgIDxhIGhyZWY9XCJ7e2xpY2Vuc2VzW2xpYi5saWNlbnNlXS51cmx9fVwiIHRhcmdldD1cIl9ibGFua1wiICpuZ0lmPVwibGljZW5zZXNbbGliLmxpY2Vuc2VdLnVybFwiPnt7bGljZW5zZXNbbGliLmxpY2Vuc2VdLmxhYmVsfX08L2E+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFsaWNlbnNlc1tsaWIubGljZW5zZV0udXJsXCI+e3tsaWNlbnNlc1tsaWIubGljZW5zZV0ubGFiZWx9fTwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbjwvZGl2PlxuIl19
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJvdXQtc3RhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvYWJvdXQtc3RhdGUvYWJvdXQtc3RhdGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvYWJvdXQtc3RhdGUvYWJvdXQtc3RhdGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFReEMsTUFBTSxPQUFPLG1CQUFtQjtJQXNEOUIsWUFBb0IsT0FBdUIsRUFBVSxXQUF3QixFQUFVLE1BQWM7UUFBakYsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7UUFqRHJHLGtCQUFhLEdBQUcsQ0FBQyxFQUFDLE1BQU0sRUFBQyw0QkFBNEIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQywwQ0FBMEMsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyx5QkFBeUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQywrQkFBK0IsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxxQkFBcUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxjQUFjLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsaUJBQWlCLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsbUJBQW1CLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsZUFBZSxFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLGdCQUFnQixFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLDJCQUEyQixFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLG1DQUFtQyxFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLGlCQUFpQixFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLHdCQUF3QixFQUFDLFNBQVMsRUFBQyxPQUFPLEVBQUMsU0FBUyxFQUFDLFlBQVksRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLGNBQWMsRUFBQyxTQUFTLEVBQUMsU0FBUyxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyx1QkFBdUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyx3QkFBd0IsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxxQkFBcUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxvQkFBb0IsRUFBQyxTQUFTLEVBQUMsT0FBTyxFQUFD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QUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDakQ7UUFFRCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDcEQsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFDMUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUM7UUFDekQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxXQUFXO2FBQ2IsS0FBSzthQUNMLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQUssRUFBRSxJQUFJO1FBQ25CLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzs7Z0hBN0VVLG1CQUFtQjtvR0FBbkIsbUJBQW1CLHNEQ1JoQyxvOERBdURBOzJGRC9DYSxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0UsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtVc2VyU2VydmljZSwgQ29uZmlnLCBCYWNrZW5kU2VydmljZX0gZnJvbSAnQGVvLXNkay9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW8tYWJvdXQtc3RhdGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vYWJvdXQtc3RhdGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hYm91dC1zdGF0ZS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEFib3V0U3RhdGVDb21wb25lbnQge1xuXG4gIGJhY2tncm91bmRJbWFnZTogc3RyaW5nO1xuICBoZWFkZXJMb2dvOiBzdHJpbmc7XG4gIGxpY2Vuc2VTaG93OiBib29sZWFuO1xuICBfX2xpYnJhcmllc19fID0gW3tcIm5hbWVcIjpcIkBhZy1ncmlkLWNvbW11bml0eS9hbmd1bGFyXCIsXCJ2ZXJzaW9uXCI6XCIyMi4xLjJcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYWctZ3JpZC1jb21tdW5pdHkvY2xpZW50LXNpZGUtcm93LW1vZGVsXCIsXCJ2ZXJzaW9uXCI6XCIyMi4xLjFcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYWctZ3JpZC1jb21tdW5pdHkvY29yZVwiLFwidmVyc2lvblwiOlwiMjIuMS4xXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFnLWdyaWQtY29tbXVuaXR5L2Nzdi1leHBvcnRcIixcInZlcnNpb25cIjpcIjIyLjEuMVwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhbmd1bGFyL2FuaW1hdGlvbnNcIixcInZlcnNpb25cIjpcIjE1LjIuMlwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhbmd1bGFyL2Nka1wiLFwidmVyc2lvblwiOlwiMTUuMi4yXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvY29tbW9uXCIsXCJ2ZXJzaW9uXCI6XCIxNS4yLjJcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYW5ndWxhci9jb21waWxlclwiLFwidmVyc2lvblwiOlwiMTUuMi4yXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvY29yZVwiLFwidmVyc2lvblwiOlwiMTUuMi4yXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvZm9ybXNcIixcInZlcnNpb25cIjpcIjE1LjIuMlwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXJcIixcInZlcnNpb25cIjpcIjE1LjIuMlwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXItZHluYW1pY1wiLFwidmVyc2lvblwiOlwiMTUuMi4yXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvcm91dGVyXCIsXCJ2ZXJzaW9uXCI6XCIxNS4yLjJcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAY2FyYm9uL2NoYXJ0cy1hbmd1bGFyXCIsXCJ2ZXJzaW9uXCI6XCIxLjguMVwiLFwibGljZW5zZVwiOlwiQXBhY2hlLTIuMFwifSx7XCJuYW1lXCI6XCJAZW8tc2RrL2NvcmVcIixcInZlcnNpb25cIjpcIjEwLjYuNDNcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAbmduZWF0L3VudGlsLWRlc3Ryb3lcIixcInZlcnNpb25cIjpcIjEwLjAuMFwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBuZ3gtcHdhL2xvY2FsLXN0b3JhZ2VcIixcInZlcnNpb25cIjpcIjE1LjAuMFwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIixcInZlcnNpb25cIjpcIjE0LjAuMFwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkB5dXV2aXMvY29tcG9uZW50c1wiLFwidmVyc2lvblwiOlwiMS4wLjhcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAeXV1dmlzL3dpZGdldC1ncmlkXCIsXCJ2ZXJzaW9uXCI6XCIxLjAuMlwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcImNvcmUtanNcIixcInZlcnNpb25cIjpcIjIuNi4xMlwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcImZpbGUtc2F2ZXJcIixcInZlcnNpb25cIjpcIjIuMC41XCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiZm9udC1hd2Vzb21lXCIsXCJ2ZXJzaW9uXCI6XCI0LjcuMFwiLFwibGljZW5zZVwiOlwiKE9GTC0xLjEgQU5EIE1JVClcIn0se1wibmFtZVwiOlwibG9kYXNoLWVzXCIsXCJ2ZXJzaW9uXCI6XCI0LjE3LjIxXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwibW9tZW50XCIsXCJ2ZXJzaW9uXCI6XCIyLjI5LjRcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJuZ3gtdG9hc3RyXCIsXCJ2ZXJzaW9uXCI6XCIxNi4wLjJcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJyeGpzXCIsXCJ2ZXJzaW9uXCI6XCI3LjUuN1wiLFwibGljZW5zZVwiOlwiQXBhY2hlLTIuMFwifSx7XCJuYW1lXCI6XCJ0c2xpYlwiLFwidmVyc2lvblwiOlwiMi42LjJcIixcImxpY2Vuc2VcIjpcIjBCU0RcIn0se1wibmFtZVwiOlwiem9uZS5qc1wiLFwidmVyc2lvblwiOlwiMC4xMS44XCIsXCJsaWNlbnNlXCI6XCJNSVRcIn1dO1xuICB1c2VyTGFuZzogc3RyaW5nO1xuXG4gIGN0cmwgPSB7XG4gICAgY29tcG9uZW50TmFtZTogJ3l1dXZpc8KuIFJBRCBjbGllbnQnLFxuICAgIGNvbXBvbmVudFZlcnNpb246ICcxMC42LjQ0JyxcbiAgICBwcm9kdWN0TmFtZTogJycsXG4gICAgcHJvZHVjdFZlcnNpb246ICcnXG4gIH07XG5cbiAgbGljZW5zZXMgPSB7XG4gICAgJ01JVCc6IHtcbiAgICAgICdsYWJlbCc6ICdNSVQnLFxuICAgICAgJ3VybCc6ICdodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUJ1xuICAgIH0sXG4gICAgJ0FwYWNoZS0yLjAnOiB7XG4gICAgICAnbGFiZWwnOiAnQXBhY2hlIDIuMCcsXG4gICAgICAndXJsJzogJ2h0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMCdcbiAgICB9LFxuICAgICdCU0QtMy1DbGF1c2UtQ2xlYXInOiB7XG4gICAgICAnbGFiZWwnOiAnQlNEIDMtQ2xhdXNlJyxcbiAgICAgICd1cmwnOiAnaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL0JTRC0zLUNsYXVzZSdcbiAgICB9LFxuICAgICdDQzAtMS4wJzoge1xuICAgICAgJ2xhYmVsJzogJ0NDMCAxLjAnLFxuICAgICAgJ3VybCc6ICdodHRwczovL2NyZWF0aXZlY29tbW9ucy5vcmcvcHVibGljZG9tYWluL3plcm8vMS4wLydcbiAgICB9LFxuICAgICcoT0ZMLTEuMSBBTkQgTUlUKSc6IHtcbiAgICAgICdsYWJlbCc6ICdNSVQnLFxuICAgICAgJ3VybCc6ICdodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUJ1xuICAgIH0sXG4gICAgJ1NJTE9GTC0xLjEnOiB7XG4gICAgICAnbGFiZWwnOiAnU0lMIE9wZW4gRm9udCBMaWNlbnNlIDEuMScsXG4gICAgICAndXJsJzogJ2h0dHA6Ly9zY3JpcHRzLnNpbC5vcmcvT0ZMX3dlYidcbiAgICB9LFxuICAgICdDb21tZXJjaWFsJzoge1xuICAgICAgJ2xhYmVsJzogJ0NvbW1lcmNpYWwnXG4gICAgfSxcbiAgICAnYWctZ3JpZCc6IHtcbiAgICAgICdsYWJlbCc6ICdhZy1HcmlkLUVudGVycHJpc2UgU29mdHdhcmUgTGljZW5jZSBBZ3JlZW1lbnQgVmVyc2lvbiAxLjcnLFxuICAgICAgJ3VybCc6ICdodHRwczovL2dpdGh1Yi5jb20vY2VvbHRlci9hZy1ncmlkLWVudGVycHJpc2UvYmxvYi9tYXN0ZXIvTElDRU5TRS5tZCdcbiAgICB9LFxuICAgICcwQlNEJzoge1xuICAgICAgJ2xhYmVsJzogJ1plcm8tQ2xhdXNlIEJTRCcsXG4gICAgICAndXJsJzogJ2h0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy8wQlNEJ1xuICAgIH1cbiAgfTtcblxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYmFja2VuZDogQmFja2VuZFNlcnZpY2UsIHByaXZhdGUgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlLCBwcml2YXRlIGNvbmZpZzogQ29uZmlnKSB7XG4gICAgdGhpcy5fX2xpYnJhcmllc19fID0gdGhpcy5fX2xpYnJhcmllc19fLmZpbHRlcihsaWIgPT4gdGhpcy5saWNlbnNlc1tsaWIubGljZW5zZV0pO1xuICAgIHRoaXMuZ2V0VXNlckxhbmcoKTtcbiAgICB0aGlzLmJhY2tncm91bmRJbWFnZSA9IGB1cmwoJHt0aGlzLmNvbmZpZy5nZXREYXNoYm9hcmRCYWNrZ3JvdW5kSW1hZ2UoKX0pYDtcbiAgICB0aGlzLmhlYWRlckxvZ28gPSB0aGlzLmNvbmZpZy5nZXRSYXcoJ2Fib3V0LmhlYWRlckxvZ28nKTtcbiAgICBpZiAoIXRoaXMuaGVhZGVyTG9nbykge1xuICAgICAgdGhpcy5oZWFkZXJMb2dvID0gdGhpcy5jb25maWcuZ2V0UmF3KCdhcHBMb2dvJyk7XG4gICAgfVxuXG4gICAgdGhpcy5iYWNrZW5kLmdldEpzb24oJy9zeXN0ZW0vaW5mbycpLnN1YnNjcmliZShpbmZvID0+IHtcbiAgICAgIHRoaXMuY3RybC5wcm9kdWN0TmFtZSA9IGluZm8ucHJvZHVjdC5uYW1lO1xuICAgICAgdGhpcy5jdHJsLnByb2R1Y3RWZXJzaW9uID0gaW5mby5wcm9kdWN0LnByb2R1Y3R2ZXJzaW9uO1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0VXNlckxhbmcoKSB7XG4gICAgdGhpcy51c2VyU2VydmljZVxuICAgICAgLnVzZXIkXG4gICAgICAuc3Vic2NyaWJlKGRhdGEgPT4gdGhpcy51c2VyTGFuZyA9IGRhdGEudXNlclNldHRpbmdzLmNsaWVudGxvY2FsZSk7XG4gIH1cblxuICB0cmFja0J5Rm4oaW5kZXgsIGl0ZW0pOiBudW1iZXIge1xuICAgIHJldHVybiBpbmRleDtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImVvLWFib3V0LXN0YXRlXCI+XG5cbiAgPGRpdiBjbGFzcz1cImFib3V0XCI+XG4gICAgPGRpdiBjbGFzcz1cImhlYWRlclwiIFtzdHlsZS5iYWNrZ3JvdW5kLWltYWdlXT1cImJhY2tncm91bmRJbWFnZVwiPlxuICAgICAgPGltZyBbc3JjXT1cImhlYWRlckxvZ29cIi8+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiYm9keVwiPlxuICAgICAgPGRpdiBjbGFzcz1cImNsYWltXCIgdHJhbnNsYXRlPmVvLmhlbHAuYWJvdXQuY2xhaW08L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cIndyYXBcIj5cbiAgICAgICAgPHRhYmxlPlxuICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGggdHJhbnNsYXRlPmVvLmhlbHAuYWJvdXQuY29tcG9uZW50LmxhYmVsPC90aD5cbiAgICAgICAgICAgIDx0ZD57e2N0cmwuY29tcG9uZW50TmFtZX19PC90ZD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgIDx0aCB0cmFuc2xhdGU+ZW8uaGVscC5hYm91dC5jb21wb25lbnQudmVyc2lvbi5sYWJlbDwvdGg+XG4gICAgICAgICAgICA8dGQ+e3tjdHJsLmNvbXBvbmVudFZlcnNpb259fTwvdGQ+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGggdHJhbnNsYXRlPmVvLmhlbHAuYWJvdXQucHJvZHVjdC5sYWJlbDwvdGg+XG4gICAgICAgICAgICA8dGQ+e3sgY3RybC5wcm9kdWN0TmFtZSB9fTwvdGQ+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGggdHJhbnNsYXRlPmVvLmhlbHAuYWJvdXQucHJvZHVjdC52ZXJzaW9uLmxhYmVsPC90aD5cbiAgICAgICAgICAgIDx0ZD57eyBjdHJsLnByb2R1Y3RWZXJzaW9uIH19PC90ZD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgIDx0aCB0cmFuc2xhdGU+ZW8uaGVscC5hYm91dC5wcm9kdWNlci5sYWJlbDwvdGg+XG4gICAgICAgICAgICA8dGQgdHJhbnNsYXRlPmVvLmhlbHAuYWJvdXQucHJvZHVjZXIudGV4dDwvdGQ+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICA8L3RhYmxlPlxuICAgICAgPC9kaXY+XG5cblxuICAgICAgPGgyIHRyYW5zbGF0ZT5lby5oZWxwLmxpY2Vuc2UudGl0bGU8L2gyPlxuICAgICAgPHAgdHJhbnNsYXRlPmVvLmhlbHAubGljZW5zZS5pbnRybzwvcD5cbiAgICAgIDxkaXYgY2xhc3M9XCJzaG93TGljXCIgKGNsaWNrKT1cImxpY2Vuc2VTaG93ID0gIWxpY2Vuc2VTaG93XCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwidG9nZ2xlXCI+PHNwYW4gdHJhbnNsYXRlPmVvLmhlbHAubGljZW5zZS50aXRsZTwvc3Bhbj48c3BhbiBjbGFzcz1cInRvZ2dsZS1pbmRpY2F0b3JcIj57e2xpY2Vuc2VTaG93ID8gJy0nIDogJysnfX08L3NwYW4+PC9zcGFuPjwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImxpY2Vuc2VzXCIgKm5nSWY9XCJsaWNlbnNlU2hvd1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibGliXCIgKm5nRm9yPVwibGV0IGxpYiBvZiBfX2xpYnJhcmllc19fOyB0cmFja0J5OiB0cmFja0J5Rm5cIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibmFtZVwiPnt7bGliLm5hbWV9fTwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJsaWNcIj5cbiAgICAgICAgICAgIDxhIGhyZWY9XCJ7e2xpY2Vuc2VzW2xpYi5saWNlbnNlXS51cmx9fVwiIHRhcmdldD1cIl9ibGFua1wiICpuZ0lmPVwibGljZW5zZXNbbGliLmxpY2Vuc2VdLnVybFwiPnt7bGljZW5zZXNbbGliLmxpY2Vuc2VdLmxhYmVsfX08L2E+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFsaWNlbnNlc1tsaWIubGljZW5zZV0udXJsXCI+e3tsaWNlbnNlc1tsaWIubGljZW5zZV0ubGFiZWx9fTwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbjwvZGl2PlxuIl19
|
|
@@ -255,14 +255,14 @@ let ChartsSetupComponent = class ChartsSetupComponent {
|
|
|
255
255
|
}
|
|
256
256
|
};
|
|
257
257
|
ChartsSetupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ChartsSetupComponent, deps: [{ token: i1.UntypedFormBuilder }, { token: i2.StoredQueriesService }, { token: i2.TranslateService }, { token: i2.UserService }, { token: i2.SystemService }], target: i0.ɵɵFactoryTarget.Component });
|
|
258
|
-
ChartsSetupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ChartsSetupComponent, selector: "eo-charts-setup", inputs: { widgetConfig: "widgetConfig" }, outputs: { widgetConfigChange: "widgetConfigChange" }, viewQueries: [{ propertyName: "aggregationCodesystem", first: true, predicate: ["aggregationCodesystem"], descendants: true }, { propertyName: "histogramCodesystem", first: true, predicate: ["histogramCodesystem"], descendants: true }], ngImport: i0, template: "<div class=\"setup\">\n <form [formGroup]=\"setupForm\">\n <eo-form-input [required]=\"true\" [skipToggle]=\"true\"\n [label]=\"'eo.workspace.widget.form.label.chartTypeField' | translate\">\n <eo-codesystem formControlName=\"chartType\" [pickerTitle]=\"chartTypePicker.title\"\n [codesystem]=\"chartTypePicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input [required]=\"true\" [skipToggle]=\"true\" *ngIf=\"storedQueriesPicker?.codesystem?.entries\"\n [label]=\"'eo.search.title.storedqueries' | translate\" [description]=\"'eo.workspace.widget.stored.queries.description'\">\n <eo-codesystem formControlName=\"storedQuery\" [pickerTitle]=\"storedQueriesPicker.title\"\n [codesystem]=\"storedQueriesPicker.codesystem\"\n [emptyMessage]=\"'eo.workspace.widget.stored.queries.list.notAvailable'\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input [required]=\"true\" [skipToggle]=\"true\"\n *ngIf=\"aggregationPicker?.codesystem?.entries && this.setupForm.get('storedQuery').value\"\n [label]=\"'eo.workspace.widget.form.label.aggregationField' | translate\">\n <eo-codesystem #aggregationCodesystem formControlName=\"aggregation\" [pickerTitle]=\"aggregationPicker.title\"\n [codesystem]=\"aggregationPicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input [required]=\"true\" [skipToggle]=\"true\"\n *ngIf=\"isDateTimeType\" [label]=\"'eo.workspace.widget.form.label.histogram' | translate\">\n <eo-codesystem formControlName=\"histogramType\" [pickerTitle]=\"histogramTypePicker.title\"\n [codesystem]=\"histogramTypePicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input [skipToggle]=\"true\"
|
|
258
|
+
ChartsSetupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ChartsSetupComponent, selector: "eo-charts-setup", inputs: { widgetConfig: "widgetConfig" }, outputs: { widgetConfigChange: "widgetConfigChange" }, viewQueries: [{ propertyName: "aggregationCodesystem", first: true, predicate: ["aggregationCodesystem"], descendants: true }, { propertyName: "histogramCodesystem", first: true, predicate: ["histogramCodesystem"], descendants: true }], ngImport: i0, template: "<div class=\"setup\">\n <form [formGroup]=\"setupForm\">\n <eo-form-input [required]=\"true\" [skipToggle]=\"true\"\n [label]=\"'eo.workspace.widget.form.label.chartTypeField' | translate\">\n <eo-codesystem formControlName=\"chartType\" [pickerTitle]=\"chartTypePicker.title\"\n [codesystem]=\"chartTypePicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input [required]=\"true\" [skipToggle]=\"true\" *ngIf=\"storedQueriesPicker?.codesystem?.entries\"\n [label]=\"'eo.search.title.storedqueries' | translate\" [description]=\"'eo.workspace.widget.stored.queries.description'\">\n <eo-codesystem formControlName=\"storedQuery\" [pickerTitle]=\"storedQueriesPicker.title\"\n [codesystem]=\"storedQueriesPicker.codesystem\"\n [emptyMessage]=\"'eo.workspace.widget.stored.queries.list.notAvailable'\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input [required]=\"true\" [skipToggle]=\"true\"\n *ngIf=\"aggregationPicker?.codesystem?.entries && this.setupForm.get('storedQuery').value\"\n [label]=\"'eo.workspace.widget.form.label.aggregationField' | translate\">\n <eo-codesystem #aggregationCodesystem formControlName=\"aggregation\" [pickerTitle]=\"aggregationPicker.title\"\n [codesystem]=\"aggregationPicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input [required]=\"true\" [skipToggle]=\"true\"\n *ngIf=\"isDateTimeType\" [label]=\"'eo.workspace.widget.form.label.histogram' | translate\">\n <eo-codesystem formControlName=\"histogramType\" [pickerTitle]=\"histogramTypePicker.title\"\n [codesystem]=\"histogramTypePicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input [skipToggle]=\"true\" [description]=\"'eo.workspace.widget.chart.form.label.description'\"\n [label]=\"'eo.workspace.widget.form.partialValue' | translate\">\n <eo-number [scale]=\"0\" formControlName=\"size\"></eo-number>\n </eo-form-input>\n\n <div class=\"err-msg\" *ngIf=\"setupForm.get('size').hasError('max') || setupForm.get('size').hasError('min')\">\n <div translate>\n eo.form.property.string.error.classification.partialValue </div>\n </div>\n\n </form>\n</div>\n\n<div class=\"preview\"\n *ngIf=\"setupForm.get('aggregation').value && setupForm.get('chartType').value && setupForm.get('storedQuery').value && (isDateTimeType && setupForm.get('histogramType').value || !isDateTimeType); else tplEmpty\">\n <eo-charts-widget [widgetConfig]=\"widgetConfig\" [editMode]=\"true\"></eo-charts-widget>\n</div>\n\n<ng-template #tplEmpty>\n <div class=\"empty\">\n <eo-error-message\n [emptyState]=\"{icon: 'ic_saved_search.svg', text: 'eo.workspace.widget.configuration.notOk'}\"></eo-error-message>\n </div>\n</ng-template>\n", styles: [":host{display:grid;grid-template-rows:1fr;grid-template-columns:minmax(200px,400px) 1fr;grid-template-areas:\"setup preview\";height:100%}:host .setup{grid-area:setup;padding:var(--app-pane-padding);border-right:1px solid var(--panel-divider-color)}:host .setup eo-form-input{display:block;margin-bottom:var(--app-pane-padding)}:host .setup .err-msg{background-color:var(--color-error);color:var(--color-white);margin:calc(var(--app-pane-padding) / 4) 0;padding:calc(var(--app-pane-padding) / 4);border:0;border-radius:2px}:host .preview{grid-area:preview;overflow-y:auto;background-color:var(--main-background);padding:var(--app-pane-padding)}:host .preview eo-charts-widget{border:1px transparent var(--panel-divider-color)}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i4.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i5.ErrorMessageComponent, selector: "eo-error-message", inputs: ["emptyState"] }, { kind: "component", type: i6.FormInputComponent, selector: "eo-form-input", inputs: ["label", "tag", "description", "skipToggle", "isNull", "invalid", "disabled", "required"], outputs: ["onToggleLabel"] }, { kind: "component", type: i7.CodesystemComponent, selector: "eo-codesystem", inputs: ["situation", "pickerTitle", "placeholder", "codesystem", "multiselect", "readonly", "inputStyleClass", "emptyMessage", "filterFunction", "disablingFilterFunction"] }, { kind: "component", type: i8.NumberComponent, selector: "eo-number", inputs: ["scale", "precision", "grouping", "pattern", "readonly"] }, { kind: "component", type: i9.ChartsWidgetComponent, selector: "eo-charts-widget", inputs: ["editMode", "widgetConfig"] }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }] });
|
|
259
259
|
ChartsSetupComponent = __decorate([
|
|
260
260
|
UntilDestroy()
|
|
261
261
|
], ChartsSetupComponent);
|
|
262
262
|
export { ChartsSetupComponent };
|
|
263
263
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ChartsSetupComponent, decorators: [{
|
|
264
264
|
type: Component,
|
|
265
|
-
args: [{ selector: 'eo-charts-setup', template: "<div class=\"setup\">\n <form [formGroup]=\"setupForm\">\n <eo-form-input [required]=\"true\" [skipToggle]=\"true\"\n [label]=\"'eo.workspace.widget.form.label.chartTypeField' | translate\">\n <eo-codesystem formControlName=\"chartType\" [pickerTitle]=\"chartTypePicker.title\"\n [codesystem]=\"chartTypePicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input [required]=\"true\" [skipToggle]=\"true\" *ngIf=\"storedQueriesPicker?.codesystem?.entries\"\n [label]=\"'eo.search.title.storedqueries' | translate\" [description]=\"'eo.workspace.widget.stored.queries.description'\">\n <eo-codesystem formControlName=\"storedQuery\" [pickerTitle]=\"storedQueriesPicker.title\"\n [codesystem]=\"storedQueriesPicker.codesystem\"\n [emptyMessage]=\"'eo.workspace.widget.stored.queries.list.notAvailable'\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input [required]=\"true\" [skipToggle]=\"true\"\n *ngIf=\"aggregationPicker?.codesystem?.entries && this.setupForm.get('storedQuery').value\"\n [label]=\"'eo.workspace.widget.form.label.aggregationField' | translate\">\n <eo-codesystem #aggregationCodesystem formControlName=\"aggregation\" [pickerTitle]=\"aggregationPicker.title\"\n [codesystem]=\"aggregationPicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input [required]=\"true\" [skipToggle]=\"true\"\n *ngIf=\"isDateTimeType\" [label]=\"'eo.workspace.widget.form.label.histogram' | translate\">\n <eo-codesystem formControlName=\"histogramType\" [pickerTitle]=\"histogramTypePicker.title\"\n [codesystem]=\"histogramTypePicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input [skipToggle]=\"true\"
|
|
265
|
+
args: [{ selector: 'eo-charts-setup', template: "<div class=\"setup\">\n <form [formGroup]=\"setupForm\">\n <eo-form-input [required]=\"true\" [skipToggle]=\"true\"\n [label]=\"'eo.workspace.widget.form.label.chartTypeField' | translate\">\n <eo-codesystem formControlName=\"chartType\" [pickerTitle]=\"chartTypePicker.title\"\n [codesystem]=\"chartTypePicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input [required]=\"true\" [skipToggle]=\"true\" *ngIf=\"storedQueriesPicker?.codesystem?.entries\"\n [label]=\"'eo.search.title.storedqueries' | translate\" [description]=\"'eo.workspace.widget.stored.queries.description'\">\n <eo-codesystem formControlName=\"storedQuery\" [pickerTitle]=\"storedQueriesPicker.title\"\n [codesystem]=\"storedQueriesPicker.codesystem\"\n [emptyMessage]=\"'eo.workspace.widget.stored.queries.list.notAvailable'\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input [required]=\"true\" [skipToggle]=\"true\"\n *ngIf=\"aggregationPicker?.codesystem?.entries && this.setupForm.get('storedQuery').value\"\n [label]=\"'eo.workspace.widget.form.label.aggregationField' | translate\">\n <eo-codesystem #aggregationCodesystem formControlName=\"aggregation\" [pickerTitle]=\"aggregationPicker.title\"\n [codesystem]=\"aggregationPicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input [required]=\"true\" [skipToggle]=\"true\"\n *ngIf=\"isDateTimeType\" [label]=\"'eo.workspace.widget.form.label.histogram' | translate\">\n <eo-codesystem formControlName=\"histogramType\" [pickerTitle]=\"histogramTypePicker.title\"\n [codesystem]=\"histogramTypePicker.codesystem\"></eo-codesystem>\n </eo-form-input>\n\n <eo-form-input [skipToggle]=\"true\" [description]=\"'eo.workspace.widget.chart.form.label.description'\"\n [label]=\"'eo.workspace.widget.form.partialValue' | translate\">\n <eo-number [scale]=\"0\" formControlName=\"size\"></eo-number>\n </eo-form-input>\n\n <div class=\"err-msg\" *ngIf=\"setupForm.get('size').hasError('max') || setupForm.get('size').hasError('min')\">\n <div translate>\n eo.form.property.string.error.classification.partialValue </div>\n </div>\n\n </form>\n</div>\n\n<div class=\"preview\"\n *ngIf=\"setupForm.get('aggregation').value && setupForm.get('chartType').value && setupForm.get('storedQuery').value && (isDateTimeType && setupForm.get('histogramType').value || !isDateTimeType); else tplEmpty\">\n <eo-charts-widget [widgetConfig]=\"widgetConfig\" [editMode]=\"true\"></eo-charts-widget>\n</div>\n\n<ng-template #tplEmpty>\n <div class=\"empty\">\n <eo-error-message\n [emptyState]=\"{icon: 'ic_saved_search.svg', text: 'eo.workspace.widget.configuration.notOk'}\"></eo-error-message>\n </div>\n</ng-template>\n", styles: [":host{display:grid;grid-template-rows:1fr;grid-template-columns:minmax(200px,400px) 1fr;grid-template-areas:\"setup preview\";height:100%}:host .setup{grid-area:setup;padding:var(--app-pane-padding);border-right:1px solid var(--panel-divider-color)}:host .setup eo-form-input{display:block;margin-bottom:var(--app-pane-padding)}:host .setup .err-msg{background-color:var(--color-error);color:var(--color-white);margin:calc(var(--app-pane-padding) / 4) 0;padding:calc(var(--app-pane-padding) / 4);border:0;border-radius:2px}:host .preview{grid-area:preview;overflow-y:auto;background-color:var(--main-background);padding:var(--app-pane-padding)}:host .preview eo-charts-widget{border:1px transparent var(--panel-divider-color)}\n"] }]
|
|
266
266
|
}], ctorParameters: function () { return [{ type: i1.UntypedFormBuilder }, { type: i2.StoredQueriesService }, { type: i2.TranslateService }, { type: i2.UserService }, { type: i2.SystemService }]; }, propDecorators: { widgetConfigChange: [{
|
|
267
267
|
type: Output
|
|
268
268
|
}], aggregationCodesystem: [{
|
|
@@ -274,4 +274,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
|
|
|
274
274
|
}], widgetConfig: [{
|
|
275
275
|
type: Input
|
|
276
276
|
}] } });
|
|
277
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnRzLXNldHVwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tY2xpZW50L2Rhc2hib2FyZC93aWRnZXRzL2NoYXJ0cy13aWRnZXQvY2hhcnRzLXNldHVwL2NoYXJ0cy1zZXR1cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWNsaWVudC9kYXNoYm9hcmQvd2lkZ2V0cy9jaGFydHMtd2lkZ2V0L2NoYXJ0cy1zZXR1cC9jaGFydHMtc2V0dXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBR3hGLE9BQU8sRUFBdUMsVUFBVSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEYsT0FBTyxFQUFrRixLQUFLLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDcEgsT0FBTyxFQUFDLFlBQVksRUFBRSxjQUFjLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRSxPQUFPLEVBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUMsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7O0FBUy9CLElBQU0sb0JBQW9CLEdBQTFCLE1BQU0sb0JBQW9CO0lBdUMvQixJQUFhLFlBQVksQ0FBQyxFQUFXO1FBQ25DLElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztJQUVELFlBQ1UsRUFBc0IsRUFDdEIsb0JBQTBDLEVBQzFDLFNBQTJCLEVBQzNCLFdBQXdCLEVBQ3hCLE1BQXFCO1FBSnJCLE9BQUUsR0FBRixFQUFFLENBQW9CO1FBQ3RCLHlC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aUJBQ2Q7WUFDSCxDQUFDLENBQUMsQ0FBQztTQUNKO2FBQU07WUFDTCxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQztnQkFDeEIsU0FBUyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSztnQkFDaEYsV0FBVyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsbUJBQW1CO2dCQUNoRyxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLFNBQVMsRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUMsVUFBVTtnQkFDN0ksSUFBSSxFQUFFLElBQUksQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLElBQUk7YUFDMUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDOztpSEEvUlUsb0JBQW9CO3FHQUFwQixvQkFBb0IscVlDZmpDLDBnR0FvREE7QURyQ2Esb0JBQW9CO0lBTmhDLFlBQVksRUFBRTtHQU1GLG9CQUFvQixDQWdTaEM7U0FoU1ksb0JBQW9COzJGQUFwQixvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0UsaUJBQWlCO2lPQU1qQixrQkFBa0I7c0JBQTNCLE1BQU07Z0JBa0M2QixxQkFBcUI7c0JBQXhELFNBQVM7dUJBQUMsdUJBQXVCO2dCQUNBLG1CQUFtQjtzQkFBcEQsU0FBUzt1QkFBQyxxQkFBcUI7Z0JBRW5CLFlBQVk7c0JBQXhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0lXaWRnZXRDb21wb25lbnR9IGZyb20gJ0B5dXV2aXMvd2lkZ2V0LWdyaWQnO1xuaW1wb3J0IHtJY2hhcnRzfSBmcm9tICcuLi9pY2hhcnRzJztcbmltcG9ydCB7VW50eXBlZEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0b3JzfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1N0b3JlZFF1ZXJpZXNTZXJ2aWNlLCBTdG9yZWRRdWVyeSwgU3lzdGVtU2VydmljZSwgVHJhbnNsYXRlU2VydmljZSwgVXNlclNlcnZpY2UsIFV0aWxzfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xuaW1wb3J0IHtVbnRpbERlc3Ryb3ksIHVudGlsRGVzdHJveWVkfSBmcm9tICdAbmduZWF0L3VudGlsLWRlc3Ryb3knO1xuaW1wb3J0IHtFTVBUWSwgc2tpcCwgdGFwfSBmcm9tICdyeGpzJztcbmltcG9ydCB7Q29kZXN5c3RlbUNvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZW8tZnJhbWV3b3JrJztcblxuQFVudGlsRGVzdHJveSgpXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlby1jaGFydHMtc2V0dXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2hhcnRzLXNldHVwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2hhcnRzLXNldHVwLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ2hhcnRzU2V0dXBDb21wb25lbnQgaW1wbGVtZW50cyBJV2lkZ2V0Q29tcG9uZW50LCBPbkluaXQge1xuICBwcml2YXRlIF93aWRnZXRDb25maWc6IEljaGFydHM7XG4gIEBPdXRwdXQoKSB3aWRnZXRDb25maWdDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPEljaGFydHM+KCk7XG4gIHN0b3JlZFF1ZXJpZXM6IFN0b3JlZFF1ZXJ5W107XG4gIHNldHVwRm9ybTogVW50eXBlZEZvcm1Hcm91cCA9IHRoaXMuZmIuZ3JvdXAoe1xuICAgIHN0b3JlZFF1ZXJ5OiBbbnVsbF0sXG4gICAgY2hhcnRUeXBlOiBbXSxcbiAgICBzaXplOiBbJycsIFtWYWxpZGF0b3JzLm1heCgxMDApLCBWYWxpZGF0b3JzLm1pbigzKV1dLFxuICAgIGFnZ3JlZ2F0aW9uOiBbXSxcbiAgICBoaXN0b2dyYW1UeXBlOiBbXSxcbiAgfSk7XG5cbiAgc3RvcmVkUXVlcmllc1BpY2tlciA9IHtcbiAgICB0aXRsZTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8uc2VhcmNoLnRpdGxlLnN0b3JlZHF1ZXJpZXMnKSxcbiAgICBjb2Rlc3lzdGVtOiBudWxsLFxuICB9O1xuXG4gIGFnZ3JlZ2F0aW9uUGlja2VyID0ge1xuICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmZvcm0ubGFiZWwuYWdncmVnYXRpb25GaWVsZCcpLFxuICAgIGNvZGVzeXN0ZW06IG51bGwsXG4gIH07XG5cbiAgY2hhcnRUeXBlUGlja2VyID0ge1xuICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmZvcm0ubGFiZWwuY2hhcnRUeXBlRmllbGQnKSxcbiAgICBjb2Rlc3lzdGVtOiBudWxsLFxuICB9O1xuXG4gIGhpc3RvZ3JhbVR5cGVQaWNrZXIgPSB7XG4gICAgdGl0bGU6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuZm9ybS5sYWJlbC5oaXN0b2dyYW0nKSxcbiAgICBjb2Rlc3lzdGVtOiBudWxsLFxuICB9O1xuXG4gIGlzRGF0ZVRpbWVUeXBlID0gZmFsc2U7XG4gIHNlbGVjdGVkU2F2ZWRTZWFyY2hOYW1lID0gJyc7XG4gIHN0b3JlZFF1ZXJ5OiBTdG9yZWRRdWVyeTtcblxuICBAVmlld0NoaWxkKCdhZ2dyZWdhdGlvbkNvZGVzeXN0ZW0nKSBhZ2dyZWdhdGlvbkNvZGVzeXN0ZW06IENvZGVzeXN0ZW1Db21wb25lbnQ7XG4gIEBWaWV3Q2hpbGQoJ2hpc3RvZ3JhbUNvZGVzeXN0ZW0nKSBoaXN0b2dyYW1Db2Rlc3lzdGVtOiBDb2Rlc3lzdGVtQ29tcG9uZW50O1xuXG4gIEBJbnB1dCgpIHNldCB3aWRnZXRDb25maWcod2M6IEljaGFydHMpIHtcbiAgICB0aGlzLl93aWRnZXRDb25maWcgPSB3YztcbiAgfVxuXG4gIGdldCB3aWRnZXRDb25maWcoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3dpZGdldENvbmZpZztcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZmI6IFVudHlwZWRGb3JtQnVpbGRlcixcbiAgICBwcml2YXRlIHN0b3JlZFF1ZXJpZXNTZXJ2aWNlOiBTdG9yZWRRdWVyaWVzU2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcbiAgICBwcml2YXRlIHN5c3RlbTogU3lzdGVtU2VydmljZSkge1xuICAgIHRoaXMuc2V0dXBGb3JtLnZhbHVlQ2hhbmdlcy5waXBlKHNraXAoMSksIHVudGlsRGVzdHJveWVkKHRoaXMpKS5zdWJzY3JpYmUoKF8pID0+IHtcbiAgICAgIHRoaXMuc2V0V2lkZ2V0Q29uZmlnKCk7XG4gICAgfSk7XG4gICAgdGhpcy5nZXRTdG9yZWRRdWVyeXMoKTtcbiAgICB0aGlzLmdldENoYXJ0RmlsZWQoKTtcbiAgICB0aGlzLmdldEhpc3RvZ3JhbUZpbGVkKCk7XG4gIH1cblxuICBwcml2YXRlIHNldFdpZGdldENvbmZpZygpIHtcbiAgICBpZiAodGhpcy5zZXR1cEZvcm0udmFsaWQgJiYgdGhpcy5zdG9yZWRRdWVyaWVzKSB7XG4gICAgICB0aGlzLnN0b3JlZFF1ZXJ5ID0gdGhpcy5zdG9yZWRRdWVyaWVzLmZpbmQoKHNxKSA9PiBzcS5uYW1lID09PSB0aGlzLnNldHVwRm9ybS5nZXQoJ3N0b3JlZFF1ZXJ5JykudmFsdWUpO1xuICAgICAgdGhpcy53aWRnZXRDb25maWcgPSB7XG4gICAgICAgIHN0b3JlZFF1ZXJ5OiB0aGlzLnN0b3JlZFF1ZXJ5Py5pZCxcbiAgICAgICAgZm9ybVZhbHVlOiB0aGlzLnNldHVwRm9ybS52YWx1ZSxcbiAgICAgICAgYWdncmVnYXRpb25UeXBlOiAnJ1xuICAgICAgfTtcbiAgICAgIGlmICh0aGlzLnNldHVwRm9ybS5nZXQoJ3N0b3JlZFF1ZXJ5JykudmFsdWUgIT09IHRoaXMuc2VsZWN0ZWRTYXZlZFNlYXJjaE5hbWUpIHtcbiAgICAgICAgaWYgKHRoaXMuc3RvcmVkUXVlcnkpIHtcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuYWdncmVnYXRpb25QaWNrZXIuY29kZXN5c3RlbSA9IG51bGw7XG4gICAgICAgICAgICBpZiAodGhpcy5zZWxlY3RlZFNhdmVkU2VhcmNoTmFtZSAhPT0gJycpIHtcbiAgICAgICAgICAgICAgdGhpcy5zZXR1cEZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgICAgICAgYWdncmVnYXRpb246ICdzeXNvYmplY3QuY3JlYXRlZCcsXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRoaXMuc3RvcmVkUXVlcnkudHlwZXMubGVuZ3RoICE9PSAxKSB7XG4gICAgICAgICAgICAgIHRoaXMuZ2V0QWdncmVnYXRpb25GaWVsZCgnc3lzZG9jdW1lbnQnKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHRoaXMuZ2V0QWdncmVnYXRpb25GaWVsZCh0aGlzLnN0b3JlZFF1ZXJ5LnR5cGVzWzBdLnFuYW1lKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRTYXZlZFNlYXJjaE5hbWUgPSB0aGlzLnNldHVwRm9ybS5nZXQoJ3N0b3JlZFF1ZXJ5JykudmFsdWU7XG4gICAgICAgICAgICB0aGlzLmlzRGF0ZVRpbWVUeXBlID0gdGhpcy53aWRnZXRDb25maWc/LmZvcm1WYWx1ZS5hZ2dyZWdhdGlvbiA9PT0gJ3N5c29iamVjdC5jcmVhdGVkJyB8fCB0aGlzLndpZGdldENvbmZpZz8uYWdncmVnYXRpb25UeXBlID09PSAnREFURVRJTUUnO1xuICAgICAgICAgIH0sIDEwMCk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMud2lkZ2V0Q29uZmlnLmFnZ3JlZ2F0aW9uVHlwZSA9IHRoaXMuYWdncmVnYXRpb25Db2Rlc3lzdGVtPy5zZWxlY3RlZE5vZGVzPy5kYXRhPy50eXBlO1xuICAgICAgICB0aGlzLmlzRGF0ZVRpbWVUeXBlID0gdGhpcy53aWRnZXRDb25maWc/LmFnZ3JlZ2F0aW9uVHlwZSA9PT0gJ0RBVEVUSU1FJztcbiAgICAgIH1cbiAgICAgIHRoaXMud2lkZ2V0Q29uZmlnQ2hhbmdlLmVtaXQodGhpcy5fd2lkZ2V0Q29uZmlnKTtcbiAgICB9XG4gIH1cblxuICBnZXRTdG9yZWRRdWVyeXMoKSB7XG4gICAgdGhpcy5zdG9yZWRRdWVyaWVzU2VydmljZVxuICAgICAgLmZldGNoU3RvcmVkUXVlcmllcygpLnBpcGUoXG4gICAgICAgIHVudGlsRGVzdHJveWVkKHRoaXMpLFxuICAgICAgKS5zdWJzY3JpYmUoc3RvcmVkUXVlcmllcyA9PiB7XG4gICAgICAgIHRoaXMuc3RvcmVkUXVlcmllcyA9IHN0b3JlZFF1ZXJpZXM7XG4gICAgICAgIHRoaXMuc3RvcmVkUXVlcmllc1BpY2tlci5jb2Rlc3lzdGVtID0ge1xuICAgICAgICAgIGVudHJpZXM6IHRoaXMuc3RvcmVkUXVlcmllcy5tYXAoc3RvcmVkUXVlcnkgPT4gKHtcbiAgICAgICAgICAgIGlkOiBzdG9yZWRRdWVyeS5pZCxcbiAgICAgICAgICAgIGxhYmVsOiBzdG9yZWRRdWVyeS5uYW1lLFxuICAgICAgICAgICAgZGVmYXVsdHJlcHJlc2VudGF0aW9uOiBzdG9yZWRRdWVyeS5uYW1lLFxuICAgICAgICAgICAgZGF0YTogc3RvcmVkUXVlcnkubmFtZVxuICAgICAgICAgIH0pKS5zb3J0KFV0aWxzLnNvcnRWYWx1ZXMoJ2xhYmVsJykpLFxuICAgICAgICB9O1xuICAgICAgfSk7XG4gIH1cblxuICBnZXRTdG9yZWRRdWVyeShpZDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmVkUXVlcmllc1NlcnZpY2UuZ2V0U3RvcmVkUXVlcnkoaWQpLnBpcGUoXG4gICAgICB1bnRpbERlc3Ryb3llZCh0aGlzKSxcbiAgICAgIHRhcChzdG9yZWRRdWVyeSA9PiB7XG4gICAgICAgIHRoaXMuc3RvcmVkUXVlcnkgPSBzdG9yZWRRdWVyeTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGdldEFnZ3JlZ2F0aW9uRmllbGQodHlwZSkge1xuICAgIHJldHVybiB0aGlzLnVzZXJTZXJ2aWNlLmdldEZpZWxkRGVmaW5pdGlvbih0eXBlKS5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpKS5zdWJzY3JpYmUoZGVmaW5pdGlvbiA9PiB7XG4gICAgICBsZXQgZXhjbHVkZSA9IG5ldyBTZXQoWydmaWxlbmFtZScsICdtaW1ldHlwZScsICdtb2RpZmllcnRpdGxlJywgJ3ZlcnNpb24nLCAnY3JlYXRvcnRpdGxlJywgJ3RpdGxlJywgJ2Rlc2NyaXB0aW9uJ10pO1xuICAgICAgaWYgKHR5cGUgIT09ICdzeXNkb2N1bWVudCcpIHtcbiAgICAgICAgZXhjbHVkZS5hZGQoJ3R5cGUnKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuYWdncmVnYXRpb25QaWNrZXIuY29kZXN5c3RlbSA9IHtcbiAgICAgICAgZW50cmllczogZGVmaW5pdGlvbi5lbGVtZW50cy5tYXAoZmllbGQgPT4ge1xuICAgICAgICAgIGxldCBsYWJlbCA9IGRlZmluaXRpb24uZWxlbWVudHMuZmlsdGVyKGl0ZW0gPT4gaXRlbS5sYWJlbCA9PT0gZmllbGQubGFiZWwpLmxlbmd0aCA+IDFcbiAgICAgICAgICAgID8gZmllbGQubGFiZWwgKyAnICgnICsgdGhpcy5zeXN0ZW0uZ2V0T2JqZWN0VHlwZShmaWVsZC5xbmFtZS5zcGxpdCgnLicpWzBdKS5sYWJlbCArICcpJ1xuICAgICAgICAgICAgOiBmaWVsZC5sYWJlbDtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaWQ6IGZpZWxkLnFuYW1lLFxuICAgICAgICAgICAgZGVmYXVsdHJlcHJlc2VudGF0aW9uOiBsYWJlbCxcbiAgICAgICAgICAgIGRhdGE6IGZpZWxkLnFuYW1lLFxuICAgICAgICAgICAgdHlwZTogZmllbGQudHlwZVxuICAgICAgICAgIH07XG4gICAgICAgIH0pLnNvcnQoVXRpbHMuc29ydFZhbHVlcygnZGVmYXVsdHJlcHJlc2VudGF0aW9uJykpLFxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuXG4gIGdldENoYXJ0RmlsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuY2hhcnRUeXBlUGlja2VyLmNvZGVzeXN0ZW0gPSB7XG4gICAgICBlbnRyaWVzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBpZDogJ2JhcicsXG4gICAgICAgICAgZGVmYXVsdHJlcHJlc2VudGF0aW9uOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICAgICAgJ2VvLndvcmtzcGFjZS53aWRnZXQuY2hhcnRzLnR5cGUuYmFyJyksXG4gICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgICAnZW8ud29ya3NwYWNlLndpZGdldC5jaGFydHMudHlwZS5iYXInXG4gICAgICAgICAgKSxcbiAgICAgICAgICB2YWx1ZTogJ2JhcicsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBpZDogJ3BpZScsXG4gICAgICAgICAgZGVmYXVsdHJlcHJlc2VudGF0aW9uOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICAgICAgJ2VvLndvcmtzcGFjZS53aWRnZXQuY2hhcnRzLnR5cGUucGllJyksXG4gICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgICAnZW8ud29ya3NwYWNlLndpZGdldC5jaGFydHMudHlwZS5waWUnXG4gICAgICAgICAgKSxcbiAgICAgICAgICB2YWx1ZTogJ3BpZScsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBpZDogJ2RvbnV0JyxcbiAgICAgICAgICBkZWZhdWx0cmVwcmVzZW50YXRpb246IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgICAnZW8ud29ya3NwYWNlLndpZGdldC5jaGFydHMudHlwZS5kb251dCdcbiAgICAgICAgICApLFxuICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICAgICAgJ2VvLndvcmtzcGFjZS53aWRnZXQuY2hhcnRzLnR5cGUuZG9udXQnXG4gICAgICAgICAgKSxcbiAgICAgICAgICB2YWx1ZTogJ2RvbnV0JyxcbiAgICAgICAgfSxcbiAgICAgIF0ubWFwKChyZXMpID0+ICh7XG4gICAgICAgIGlkOiByZXMuaWQsXG4gICAgICAgIGxhYmVsOiByZXMubGFiZWwsXG4gICAgICAgIGRlZmF1bHRyZXByZXNlbnRhdGlvbjogcmVzLmRlZmF1bHRyZXByZXNlbnRhdGlvbixcbiAgICAgICAgZGF0YTogcmVzLnZhbHVlXG4gICAgICB9KSkuc29ydChVdGlscy5zb3J0VmFsdWVzKCdkZWZhdWx0cmVwcmVzZW50YXRpb24nKSksXG4gICAgfTtcbiAgfVxuXG4gIGdldEhpc3RvZ3JhbUZpbGVkKCkge1xuICAgIHJldHVybiB0aGlzLmhpc3RvZ3JhbVR5cGVQaWNrZXIuY29kZXN5c3RlbSA9IHtcbiAgICAgIGVudHJpZXM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGlkOiAnc3RhbmRhcmQnLFxuICAgICAgICAgIGRlZmF1bHRyZXByZXNlbnRhdGlvbjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICAgICdlby53b3Jrc3BhY2Uud2lkZ2V0LmNoYXJ0cy5oaXN0b2dyYW0uc3RhbmRhcmQnKSxcbiAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICAgICdlby53b3Jrc3BhY2Uud2lkZ2V0LmNoYXJ0cy5oaXN0b2dyYW0uc3RhbmRhcmQnXG4gICAgICAgICAgKSxcbiAgICAgICAgICB2YWx1ZTogJ3N0YW5kYXJkJyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGlkOiAnZGFpbHknLFxuICAgICAgICAgIGRlZmF1bHRyZXByZXNlbnRhdGlvbjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICAgICdlby53b3Jrc3BhY2Uud2lkZ2V0LmNoYXJ0cy5oaXN0b2dyYW0uZGFpbHknXG4gICAgICAgICAgKSxcbiAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICAgICdlby53b3Jrc3BhY2Uud2lkZ2V0LmNoYXJ0cy5oaXN0b2dyYW0uZGFpbHknXG4gICAgICAgICAgKSxcbiAgICAgICAgICB2YWx1ZTogJ2RhaWx5J1xuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgaWQ6ICd3ZWVrbHknLFxuICAgICAgICAgIGRlZmF1bHRyZXByZXNlbnRhdGlvbjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICAgICdlby53b3Jrc3BhY2Uud2lkZ2V0LmNoYXJ0cy5oaXN0b2dyYW0ud2Vla2x5J1xuICAgICAgICAgICksXG4gICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgICAnZW8ud29ya3NwYWNlLndpZGdldC5jaGFydHMuaGlzdG9ncmFtLndlZWtseSdcbiAgICAgICAgICApLFxuICAgICAgICAgIHZhbHVlOiAnd2Vla2x5J1xuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgaWQ6ICdtb250aGx5JyxcbiAgICAgICAgICBkZWZhdWx0cmVwcmVzZW50YXRpb246IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgICAnZW8ud29ya3NwYWNlLndpZGdldC5jaGFydHMuaGlzdG9ncmFtLm1vbnRobHknKSxcbiAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICAgICdlby53b3Jrc3BhY2Uud2lkZ2V0LmNoYXJ0cy5oaXN0b2dyYW0ubW9udGhseSdcbiAgICAgICAgICApLFxuICAgICAgICAgIHZhbHVlOiAnbW9udGhseSdcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGlkOiAneWVhcmx5JyxcbiAgICAgICAgICBkZWZhdWx0cmVwcmVzZW50YXRpb246IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgICAnZW8ud29ya3NwYWNlLndpZGdldC5jaGFydHMuaGlzdG9ncmFtLnllYXJseScpLFxuICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICAgICAgJ2VvLndvcmtzcGFjZS53aWRnZXQuY2hhcnRzLmhpc3RvZ3JhbS55ZWFybHknXG4gICAgICAgICAgKSxcbiAgICAgICAgICB2YWx1ZTogJ3llYXJseSdcbiAgICAgICAgfVxuICAgICAgXS5tYXAoKHJlcykgPT4gKHtcbiAgICAgICAgaWQ6IHJlcy5pZCxcbiAgICAgICAgbGFiZWw6IHJlcy5sYWJlbCxcbiAgICAgICAgZGVmYXVsdHJlcHJlc2VudGF0aW9uOiByZXMuZGVmYXVsdHJlcHJlc2VudGF0aW9uLFxuICAgICAgICBkYXRhOiByZXMudmFsdWVcbiAgICAgIH0pKSxcbiAgICB9O1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3dpZGdldENvbmZpZz8uc3RvcmVkUXVlcnkpIHtcbiAgICAgIHRoaXMuZ2V0U3RvcmVkUXVlcnkodGhpcy5fd2lkZ2V0Q29uZmlnPy5zdG9yZWRRdWVyeSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5zZXR1cEZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgc3RvcmVkUXVlcnk6IHRoaXMuc3RvcmVkUXVlcnkgPyB0aGlzLnN0b3JlZFF1ZXJ5Lm5hbWUgOiAnJyxcbiAgICAgICAgICBjaGFydFR5cGU6IHRoaXMuX3dpZGdldENvbmZpZyA/IHRoaXMuX3dpZGdldENvbmZpZz8uZm9ybVZhbHVlPy5jaGFydFR5cGUgOiAncGllJyxcbiAgICAgICAgICBzaXplOiB0aGlzLl93aWRnZXRDb25maWc/LmZvcm1WYWx1ZT8uc2l6ZSxcbiAgICAgICAgICBhZ2dyZWdhdGlvbjogdGhpcy5fd2lkZ2V0Q29uZmlnID8gdGhpcy5fd2lkZ2V0Q29uZmlnLmZvcm1WYWx1ZS5hZ2dyZWdhdGlvbiA6ICdzeXNvYmplY3QuY3JlYXRlZCcsXG4gICAgICAgICAgaGlzdG9ncmFtVHlwZTogdGhpcy5fd2lkZ2V0Q29uZmlnICYmIHRoaXMuX3dpZGdldENvbmZpZz8uZm9ybVZhbHVlPy5oaXN0b2dyYW1UeXBlID8gdGhpcy5fd2lkZ2V0Q29uZmlnPy5mb3JtVmFsdWU/Lmhpc3RvZ3JhbVR5cGUgOiAnc3RhbmRhcmQnLFxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKHRoaXMuc3RvcmVkUXVlcnkpIHtcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkU2F2ZWRTZWFyY2hOYW1lID0gdGhpcy5zZXR1cEZvcm0uZ2V0KCdzdG9yZWRRdWVyeScpLnZhbHVlO1xuICAgICAgICAgIGlmICh0aGlzLnN0b3JlZFF1ZXJ5LnR5cGVzLmxlbmd0aCAhPT0gMSkge1xuICAgICAgICAgICAgdGhpcy5nZXRBZ2dyZWdhdGlvbkZpZWxkKCdzeXNkb2N1bWVudCcpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmdldEFnZ3JlZ2F0aW9uRmllbGQodGhpcy5zdG9yZWRRdWVyeS50eXBlc1swXS5xbmFtZSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zZXR1cEZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgICAgIGFnZ3JlZ2F0aW9uOiB0aGlzLl93aWRnZXRDb25maWcgPyB0aGlzLl93aWRnZXRDb25maWcuZm9ybVZhbHVlLmFnZ3JlZ2F0aW9uIDogJ3N5c29iamVjdC5jcmVhdGVkJyxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgdGhpcy5pc0RhdGVUaW1lVHlwZSA9IHRoaXMud2lkZ2V0Q29uZmlnPy5mb3JtVmFsdWUuYWdncmVnYXRpb24gPT09ICdzeXNvYmplY3QuY3JlYXRlZCcgfHwgdGhpcy53aWRnZXRDb25maWc/LmFnZ3JlZ2F0aW9uVHlwZSA9PT0gJ0RBVEVUSU1FJztcbiAgICAgICAgICB9LCAxMDApO1xuICAgICAgICB9XG4gICAgICB9LCAoZXJyb3IpID0+IHtcbiAgICAgICAgdGhpcy5pc0RhdGVUaW1lVHlwZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLl93aWRnZXRDb25maWcuYWdncmVnYXRpb25UeXBlID0gbnVsbDtcbiAgICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDA0KSB7XG4gICAgICAgICAgdGhpcy5zZXR1cEZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgICBjaGFydFR5cGU6ICdwaWUnLFxuICAgICAgICAgICAgYWdncmVnYXRpb246IHRoaXMuX3dpZGdldENvbmZpZyA/IHRoaXMuX3dpZGdldENvbmZpZy5mb3JtVmFsdWUuYWdncmVnYXRpb24gOiAnc3lzb2JqZWN0LmNyZWF0ZWQnLFxuICAgICAgICAgICAgaGlzdG9ncmFtVHlwZTogJ3N0YW5kYXJkJyxcbiAgICAgICAgICAgIHNpemU6ICcnLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHJldHVybiBFTVBUWTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2V0dXBGb3JtLnBhdGNoVmFsdWUoe1xuICAgICAgICBjaGFydFR5cGU6IHRoaXMuX3dpZGdldENvbmZpZyA/IHRoaXMuX3dpZGdldENvbmZpZz8uZm9ybVZhbHVlPy5jaGFydFR5cGUgOiAncGllJyxcbiAgICAgICAgYWdncmVnYXRpb246IHRoaXMuX3dpZGdldENvbmZpZyA/IHRoaXMuX3dpZGdldENvbmZpZy5mb3JtVmFsdWUuYWdncmVnYXRpb24gOiAnc3lzb2JqZWN0LmNyZWF0ZWQnLFxuICAgICAgICBoaXN0b2dyYW1UeXBlOiB0aGlzLl93aWRnZXRDb25maWcgJiYgdGhpcy5fd2lkZ2V0Q29uZmlnPy5mb3JtVmFsdWU/Lmhpc3RvZ3JhbVR5cGUgPyB0aGlzLl93aWRnZXRDb25maWc/LmZvcm1WYWx1ZT8uaGlzdG9ncmFtVHlwZSA6ICdzdGFuZGFyZCcsXG4gICAgICAgIHNpemU6IHRoaXMuX3dpZGdldENvbmZpZz8uZm9ybVZhbHVlPy5zaXplLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic2V0dXBcIj5cbiAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cInNldHVwRm9ybVwiPlxuICAgICAgICA8ZW8tZm9ybS1pbnB1dCBbcmVxdWlyZWRdPVwidHJ1ZVwiIFtza2lwVG9nZ2xlXT1cInRydWVcIlxuICAgICAgICAgICAgW2xhYmVsXT1cIidlby53b3Jrc3BhY2Uud2lkZ2V0LmZvcm0ubGFiZWwuY2hhcnRUeXBlRmllbGQnIHwgdHJhbnNsYXRlXCI+XG4gICAgICAgICAgICA8ZW8tY29kZXN5c3RlbSBmb3JtQ29udHJvbE5hbWU9XCJjaGFydFR5cGVcIiBbcGlja2VyVGl0bGVdPVwiY2hhcnRUeXBlUGlja2VyLnRpdGxlXCJcbiAgICAgICAgICAgICAgICBbY29kZXN5c3RlbV09XCJjaGFydFR5cGVQaWNrZXIuY29kZXN5c3RlbVwiPjwvZW8tY29kZXN5c3RlbT5cbiAgICAgICAgPC9lby1mb3JtLWlucHV0PlxuXG4gICAgICAgIDxlby1mb3JtLWlucHV0IFtyZXF1aXJlZF09XCJ0cnVlXCIgW3NraXBUb2dnbGVdPVwidHJ1ZVwiICpuZ0lmPVwic3RvcmVkUXVlcmllc1BpY2tlcj8uY29kZXN5c3RlbT8uZW50cmllc1wiXG4gICAgICAgICAgICBbbGFiZWxdPVwiJ2VvLnNlYXJjaC50aXRsZS5zdG9yZWRxdWVyaWVzJyB8IHRyYW5zbGF0ZVwiIFtkZXNjcmlwdGlvbl09XCInZW8ud29ya3NwYWNlLndpZGdldC5zdG9yZWQucXVlcmllcy5kZXNjcmlwdGlvbidcIj5cbiAgICAgICAgICAgIDxlby1jb2Rlc3lzdGVtIGZvcm1Db250cm9sTmFtZT1cInN0b3JlZFF1ZXJ5XCIgW3BpY2tlclRpdGxlXT1cInN0b3JlZFF1ZXJpZXNQaWNrZXIudGl0bGVcIlxuICAgICAgICAgICAgICAgIFtjb2Rlc3lzdGVtXT1cInN0b3JlZFF1ZXJpZXNQaWNrZXIuY29kZXN5c3RlbVwiXG4gICAgICAgICAgICAgICAgW2VtcHR5TWVzc2FnZV09XCInZW8ud29ya3NwYWNlLndpZGdldC5zdG9yZWQucXVlcmllcy5saXN0Lm5vdEF2YWlsYWJsZSdcIj48L2VvLWNvZGVzeXN0ZW0+XG4gICAgICAgIDwvZW8tZm9ybS1pbnB1dD5cblxuICAgICAgICA8ZW8tZm9ybS1pbnB1dCBbcmVxdWlyZWRdPVwidHJ1ZVwiIFtza2lwVG9nZ2xlXT1cInRydWVcIlxuICAgICAgICAgICAgKm5nSWY9XCJhZ2dyZWdhdGlvblBpY2tlcj8uY29kZXN5c3RlbT8uZW50cmllcyAmJiB0aGlzLnNldHVwRm9ybS5nZXQoJ3N0b3JlZFF1ZXJ5JykudmFsdWVcIlxuICAgICAgICAgICAgW2xhYmVsXT1cIidlby53b3Jrc3BhY2Uud2lkZ2V0LmZvcm0ubGFiZWwuYWdncmVnYXRpb25GaWVsZCcgfCB0cmFuc2xhdGVcIj5cbiAgICAgICAgICAgIDxlby1jb2Rlc3lzdGVtICNhZ2dyZWdhdGlvbkNvZGVzeXN0ZW0gZm9ybUNvbnRyb2xOYW1lPVwiYWdncmVnYXRpb25cIiBbcGlja2VyVGl0bGVdPVwiYWdncmVnYXRpb25QaWNrZXIudGl0bGVcIlxuICAgICAgICAgICAgICAgIFtjb2Rlc3lzdGVtXT1cImFnZ3JlZ2F0aW9uUGlja2VyLmNvZGVzeXN0ZW1cIj48L2VvLWNvZGVzeXN0ZW0+XG4gICAgICAgIDwvZW8tZm9ybS1pbnB1dD5cblxuICAgICAgICA8ZW8tZm9ybS1pbnB1dCBbcmVxdWlyZWRdPVwidHJ1ZVwiIFtza2lwVG9nZ2xlXT1cInRydWVcIlxuICAgICAgICAgICAgKm5nSWY9XCJpc0RhdGVUaW1lVHlwZVwiIFtsYWJlbF09XCInZW8ud29ya3NwYWNlLndpZGdldC5mb3JtLmxhYmVsLmhpc3RvZ3JhbScgfCB0cmFuc2xhdGVcIj5cbiAgICAgICAgICAgIDxlby1jb2Rlc3lzdGVtIGZvcm1Db250cm9sTmFtZT1cImhpc3RvZ3JhbVR5cGVcIiBbcGlja2VyVGl0bGVdPVwiaGlzdG9ncmFtVHlwZVBpY2tlci50aXRsZVwiXG4gICAgICAgICAgICAgICAgW2NvZGVzeXN0ZW1dPVwiaGlzdG9ncmFtVHlwZVBpY2tlci5jb2Rlc3lzdGVtXCI+PC9lby1jb2Rlc3lzdGVtPlxuICAgICAgICA8L2VvLWZvcm0taW5wdXQ+XG5cbiAgICAgICAgPGVvLWZvcm0taW5wdXQgW3NraXBUb2dnbGVdPVwidHJ1ZVwiICpuZ0lmPVwidGhpcy53aWRnZXRDb25maWc/LmZvcm1WYWx1ZT8uaGlzdG9ncmFtVHlwZSAhPT0gJ3N0YW5kYXJkJ1wiIFtkZXNjcmlwdGlvbl09XCInZW8ud29ya3NwYWNlLndpZGdldC5jaGFydC5mb3JtLmxhYmVsLmRlc2NyaXB0aW9uJ1wiXG4gICAgICAgICAgICBbbGFiZWxdPVwiJ2VvLndvcmtzcGFjZS53aWRnZXQuZm9ybS5wYXJ0aWFsVmFsdWUnIHwgdHJhbnNsYXRlXCI+XG4gICAgICAgICAgICA8ZW8tbnVtYmVyIFtzY2FsZV09XCIwXCIgZm9ybUNvbnRyb2xOYW1lPVwic2l6ZVwiPjwvZW8tbnVtYmVyPlxuICAgICAgICA8L2VvLWZvcm0taW5wdXQ+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImVyci1tc2dcIiAqbmdJZj1cInNldHVwRm9ybS5nZXQoJ3NpemUnKS5oYXNFcnJvcignbWF4JykgfHwgc2V0dXBGb3JtLmdldCgnc2l6ZScpLmhhc0Vycm9yKCdtaW4nKVwiPlxuICAgICAgICAgICAgPGRpdiB0cmFuc2xhdGU+XG4gICAgICAgICAgICAgICAgZW8uZm9ybS5wcm9wZXJ0eS5zdHJpbmcuZXJyb3IuY2xhc3NpZmljYXRpb24ucGFydGlhbFZhbHVlIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgIDwvZm9ybT5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwicHJldmlld1wiXG4gICAgKm5nSWY9XCJzZXR1cEZvcm0uZ2V0KCdhZ2dyZWdhdGlvbicpLnZhbHVlICYmIHNldHVwRm9ybS5nZXQoJ2NoYXJ0VHlwZScpLnZhbHVlICYmIHNldHVwRm9ybS5nZXQoJ3N0b3JlZFF1ZXJ5JykudmFsdWUgJiYgKGlzRGF0ZVRpbWVUeXBlICYmIHNldHVwRm9ybS5nZXQoJ2hpc3RvZ3JhbVR5cGUnKS52YWx1ZSB8fCAhaXNEYXRlVGltZVR5cGUpOyBlbHNlIHRwbEVtcHR5XCI+XG4gICAgPGVvLWNoYXJ0cy13aWRnZXQgW3dpZGdldENvbmZpZ109XCJ3aWRnZXRDb25maWdcIiBbZWRpdE1vZGVdPVwidHJ1ZVwiPjwvZW8tY2hhcnRzLXdpZGdldD5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3RwbEVtcHR5PlxuICAgIDxkaXYgY2xhc3M9XCJlbXB0eVwiPlxuICAgICAgICA8ZW8tZXJyb3ItbWVzc2FnZVxuICAgICAgICAgICAgW2VtcHR5U3RhdGVdPVwie2ljb246ICdpY19zYXZlZF9zZWFyY2guc3ZnJywgdGV4dDogJ2VvLndvcmtzcGFjZS53aWRnZXQuY29uZmlndXJhdGlvbi5ub3RPayd9XCI+PC9lby1lcnJvci1tZXNzYWdlPlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
277
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnRzLXNldHVwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tY2xpZW50L2Rhc2hib2FyZC93aWRnZXRzL2NoYXJ0cy13aWRnZXQvY2hhcnRzLXNldHVwL2NoYXJ0cy1zZXR1cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWNsaWVudC9kYXNoYm9hcmQvd2lkZ2V0cy9jaGFydHMtd2lkZ2V0L2NoYXJ0cy1zZXR1cC9jaGFydHMtc2V0dXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBR3hGLE9BQU8sRUFBdUMsVUFBVSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEYsT0FBTyxFQUFrRixLQUFLLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDcEgsT0FBTyxFQUFDLFlBQVksRUFBRSxjQUFjLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRSxPQUFPLEVBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUMsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7O0FBUy9CLElBQU0sb0JBQW9CLEdBQTFCLE1BQU0sb0JBQW9CO0lBdUMvQixJQUFhLFlBQVksQ0FBQyxFQUFXO1FBQ25DLElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztJQUVELFlBQ1UsRUFBc0IsRUFDdEIsb0JBQTBDLEVBQzFDLFNBQTJCLEVBQzNCLFdBQXdCLEVBQ3hCLE1BQXFCO1FBSnJCLE9BQUUsR0FBRixFQUFFLENBQW9CO1FBQ3RCLHlC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aUJBQ2Q7WUFDSCxDQUFDLENBQUMsQ0FBQztTQUNKO2FBQU07WUFDTCxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQztnQkFDeEIsU0FBUyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSztnQkFDaEYsV0FBVyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsbUJBQW1CO2dCQUNoRyxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLFNBQVMsRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUMsVUFBVTtnQkFDN0ksSUFBSSxFQUFFLElBQUksQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLElBQUk7YUFDMUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDOztpSEEvUlUsb0JBQW9CO3FHQUFwQixvQkFBb0IscVlDZmpDLHE4RkFvREE7QURyQ2Esb0JBQW9CO0lBTmhDLFlBQVksRUFBRTtHQU1GLG9CQUFvQixDQWdTaEM7U0FoU1ksb0JBQW9COzJGQUFwQixvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0UsaUJBQWlCO2lPQU1qQixrQkFBa0I7c0JBQTNCLE1BQU07Z0JBa0M2QixxQkFBcUI7c0JBQXhELFNBQVM7dUJBQUMsdUJBQXVCO2dCQUNBLG1CQUFtQjtzQkFBcEQsU0FBUzt1QkFBQyxxQkFBcUI7Z0JBRW5CLFlBQVk7c0JBQXhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0lXaWRnZXRDb21wb25lbnR9IGZyb20gJ0B5dXV2aXMvd2lkZ2V0LWdyaWQnO1xuaW1wb3J0IHtJY2hhcnRzfSBmcm9tICcuLi9pY2hhcnRzJztcbmltcG9ydCB7VW50eXBlZEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0b3JzfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1N0b3JlZFF1ZXJpZXNTZXJ2aWNlLCBTdG9yZWRRdWVyeSwgU3lzdGVtU2VydmljZSwgVHJhbnNsYXRlU2VydmljZSwgVXNlclNlcnZpY2UsIFV0aWxzfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xuaW1wb3J0IHtVbnRpbERlc3Ryb3ksIHVudGlsRGVzdHJveWVkfSBmcm9tICdAbmduZWF0L3VudGlsLWRlc3Ryb3knO1xuaW1wb3J0IHtFTVBUWSwgc2tpcCwgdGFwfSBmcm9tICdyeGpzJztcbmltcG9ydCB7Q29kZXN5c3RlbUNvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZW8tZnJhbWV3b3JrJztcblxuQFVudGlsRGVzdHJveSgpXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlby1jaGFydHMtc2V0dXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2hhcnRzLXNldHVwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2hhcnRzLXNldHVwLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ2hhcnRzU2V0dXBDb21wb25lbnQgaW1wbGVtZW50cyBJV2lkZ2V0Q29tcG9uZW50LCBPbkluaXQge1xuICBwcml2YXRlIF93aWRnZXRDb25maWc6IEljaGFydHM7XG4gIEBPdXRwdXQoKSB3aWRnZXRDb25maWdDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPEljaGFydHM+KCk7XG4gIHN0b3JlZFF1ZXJpZXM6IFN0b3JlZFF1ZXJ5W107XG4gIHNldHVwRm9ybTogVW50eXBlZEZvcm1Hcm91cCA9IHRoaXMuZmIuZ3JvdXAoe1xuICAgIHN0b3JlZFF1ZXJ5OiBbbnVsbF0sXG4gICAgY2hhcnRUeXBlOiBbXSxcbiAgICBzaXplOiBbJycsIFtWYWxpZGF0b3JzLm1heCgxMDApLCBWYWxpZGF0b3JzLm1pbigzKV1dLFxuICAgIGFnZ3JlZ2F0aW9uOiBbXSxcbiAgICBoaXN0b2dyYW1UeXBlOiBbXSxcbiAgfSk7XG5cbiAgc3RvcmVkUXVlcmllc1BpY2tlciA9IHtcbiAgICB0aXRsZTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8uc2VhcmNoLnRpdGxlLnN0b3JlZHF1ZXJpZXMnKSxcbiAgICBjb2Rlc3lzdGVtOiBudWxsLFxuICB9O1xuXG4gIGFnZ3JlZ2F0aW9uUGlja2VyID0ge1xuICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmZvcm0ubGFiZWwuYWdncmVnYXRpb25GaWVsZCcpLFxuICAgIGNvZGVzeXN0ZW06IG51bGwsXG4gIH07XG5cbiAgY2hhcnRUeXBlUGlja2VyID0ge1xuICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmZvcm0ubGFiZWwuY2hhcnRUeXBlRmllbGQnKSxcbiAgICBjb2Rlc3lzdGVtOiBudWxsLFxuICB9O1xuXG4gIGhpc3RvZ3JhbVR5cGVQaWNrZXIgPSB7XG4gICAgdGl0bGU6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuZm9ybS5sYWJlbC5oaXN0b2dyYW0nKSxcbiAgICBjb2Rlc3lzdGVtOiBudWxsLFxuICB9O1xuXG4gIGlzRGF0ZVRpbWVUeXBlID0gZmFsc2U7XG4gIHNlbGVjdGVkU2F2ZWRTZWFyY2hOYW1lID0gJyc7XG4gIHN0b3JlZFF1ZXJ5OiBTdG9yZWRRdWVyeTtcblxuICBAVmlld0NoaWxkKCdhZ2dyZWdhdGlvbkNvZGVzeXN0ZW0nKSBhZ2dyZWdhdGlvbkNvZGVzeXN0ZW06IENvZGVzeXN0ZW1Db21wb25lbnQ7XG4gIEBWaWV3Q2hpbGQoJ2hpc3RvZ3JhbUNvZGVzeXN0ZW0nKSBoaXN0b2dyYW1Db2Rlc3lzdGVtOiBDb2Rlc3lzdGVtQ29tcG9uZW50O1xuXG4gIEBJbnB1dCgpIHNldCB3aWRnZXRDb25maWcod2M6IEljaGFydHMpIHtcbiAgICB0aGlzLl93aWRnZXRDb25maWcgPSB3YztcbiAgfVxuXG4gIGdldCB3aWRnZXRDb25maWcoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3dpZGdldENvbmZpZztcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZmI6IFVudHlwZWRGb3JtQnVpbGRlcixcbiAgICBwcml2YXRlIHN0b3JlZFF1ZXJpZXNTZXJ2aWNlOiBTdG9yZWRRdWVyaWVzU2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcbiAgICBwcml2YXRlIHN5c3RlbTogU3lzdGVtU2VydmljZSkge1xuICAgIHRoaXMuc2V0dXBGb3JtLnZhbHVlQ2hhbmdlcy5waXBlKHNraXAoMSksIHVudGlsRGVzdHJveWVkKHRoaXMpKS5zdWJzY3JpYmUoKF8pID0+IHtcbiAgICAgIHRoaXMuc2V0V2lkZ2V0Q29uZmlnKCk7XG4gICAgfSk7XG4gICAgdGhpcy5nZXRTdG9yZWRRdWVyeXMoKTtcbiAgICB0aGlzLmdldENoYXJ0RmlsZWQoKTtcbiAgICB0aGlzLmdldEhpc3RvZ3JhbUZpbGVkKCk7XG4gIH1cblxuICBwcml2YXRlIHNldFdpZGdldENvbmZpZygpIHtcbiAgICBpZiAodGhpcy5zZXR1cEZvcm0udmFsaWQgJiYgdGhpcy5zdG9yZWRRdWVyaWVzKSB7XG4gICAgICB0aGlzLnN0b3JlZFF1ZXJ5ID0gdGhpcy5zdG9yZWRRdWVyaWVzLmZpbmQoKHNxKSA9PiBzcS5uYW1lID09PSB0aGlzLnNldHVwRm9ybS5nZXQoJ3N0b3JlZFF1ZXJ5JykudmFsdWUpO1xuICAgICAgdGhpcy53aWRnZXRDb25maWcgPSB7XG4gICAgICAgIHN0b3JlZFF1ZXJ5OiB0aGlzLnN0b3JlZFF1ZXJ5Py5pZCxcbiAgICAgICAgZm9ybVZhbHVlOiB0aGlzLnNldHVwRm9ybS52YWx1ZSxcbiAgICAgICAgYWdncmVnYXRpb25UeXBlOiAnJ1xuICAgICAgfTtcbiAgICAgIGlmICh0aGlzLnNldHVwRm9ybS5nZXQoJ3N0b3JlZFF1ZXJ5JykudmFsdWUgIT09IHRoaXMuc2VsZWN0ZWRTYXZlZFNlYXJjaE5hbWUpIHtcbiAgICAgICAgaWYgKHRoaXMuc3RvcmVkUXVlcnkpIHtcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuYWdncmVnYXRpb25QaWNrZXIuY29kZXN5c3RlbSA9IG51bGw7XG4gICAgICAgICAgICBpZiAodGhpcy5zZWxlY3RlZFNhdmVkU2VhcmNoTmFtZSAhPT0gJycpIHtcbiAgICAgICAgICAgICAgdGhpcy5zZXR1cEZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgICAgICAgYWdncmVnYXRpb246ICdzeXNvYmplY3QuY3JlYXRlZCcsXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRoaXMuc3RvcmVkUXVlcnkudHlwZXMubGVuZ3RoICE9PSAxKSB7XG4gICAgICAgICAgICAgIHRoaXMuZ2V0QWdncmVnYXRpb25GaWVsZCgnc3lzZG9jdW1lbnQnKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHRoaXMuZ2V0QWdncmVnYXRpb25GaWVsZCh0aGlzLnN0b3JlZFF1ZXJ5LnR5cGVzWzBdLnFuYW1lKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRTYXZlZFNlYXJjaE5hbWUgPSB0aGlzLnNldHVwRm9ybS5nZXQoJ3N0b3JlZFF1ZXJ5JykudmFsdWU7XG4gICAgICAgICAgICB0aGlzLmlzRGF0ZVRpbWVUeXBlID0gdGhpcy53aWRnZXRDb25maWc/LmZvcm1WYWx1ZS5hZ2dyZWdhdGlvbiA9PT0gJ3N5c29iamVjdC5jcmVhdGVkJyB8fCB0aGlzLndpZGdldENvbmZpZz8uYWdncmVnYXRpb25UeXBlID09PSAnREFURVRJTUUnO1xuICAgICAgICAgIH0sIDEwMCk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMud2lkZ2V0Q29uZmlnLmFnZ3JlZ2F0aW9uVHlwZSA9IHRoaXMuYWdncmVnYXRpb25Db2Rlc3lzdGVtPy5zZWxlY3RlZE5vZGVzPy5kYXRhPy50eXBlO1xuICAgICAgICB0aGlzLmlzRGF0ZVRpbWVUeXBlID0gdGhpcy53aWRnZXRDb25maWc/LmFnZ3JlZ2F0aW9uVHlwZSA9PT0gJ0RBVEVUSU1FJztcbiAgICAgIH1cbiAgICAgIHRoaXMud2lkZ2V0Q29uZmlnQ2hhbmdlLmVtaXQodGhpcy5fd2lkZ2V0Q29uZmlnKTtcbiAgICB9XG4gIH1cblxuICBnZXRTdG9yZWRRdWVyeXMoKSB7XG4gICAgdGhpcy5zdG9yZWRRdWVyaWVzU2VydmljZVxuICAgICAgLmZldGNoU3RvcmVkUXVlcmllcygpLnBpcGUoXG4gICAgICAgIHVudGlsRGVzdHJveWVkKHRoaXMpLFxuICAgICAgKS5zdWJzY3JpYmUoc3RvcmVkUXVlcmllcyA9PiB7XG4gICAgICAgIHRoaXMuc3RvcmVkUXVlcmllcyA9IHN0b3JlZFF1ZXJpZXM7XG4gICAgICAgIHRoaXMuc3RvcmVkUXVlcmllc1BpY2tlci5jb2Rlc3lzdGVtID0ge1xuICAgICAgICAgIGVudHJpZXM6IHRoaXMuc3RvcmVkUXVlcmllcy5tYXAoc3RvcmVkUXVlcnkgPT4gKHtcbiAgICAgICAgICAgIGlkOiBzdG9yZWRRdWVyeS5pZCxcbiAgICAgICAgICAgIGxhYmVsOiBzdG9yZWRRdWVyeS5uYW1lLFxuICAgICAgICAgICAgZGVmYXVsdHJlcHJlc2VudGF0aW9uOiBzdG9yZWRRdWVyeS5uYW1lLFxuICAgICAgICAgICAgZGF0YTogc3RvcmVkUXVlcnkubmFtZVxuICAgICAgICAgIH0pKS5zb3J0KFV0aWxzLnNvcnRWYWx1ZXMoJ2xhYmVsJykpLFxuICAgICAgICB9O1xuICAgICAgfSk7XG4gIH1cblxuICBnZXRTdG9yZWRRdWVyeShpZDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmVkUXVlcmllc1NlcnZpY2UuZ2V0U3RvcmVkUXVlcnkoaWQpLnBpcGUoXG4gICAgICB1bnRpbERlc3Ryb3llZCh0aGlzKSxcbiAgICAgIHRhcChzdG9yZWRRdWVyeSA9PiB7XG4gICAgICAgIHRoaXMuc3RvcmVkUXVlcnkgPSBzdG9yZWRRdWVyeTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGdldEFnZ3JlZ2F0aW9uRmllbGQodHlwZSkge1xuICAgIHJldHVybiB0aGlzLnVzZXJTZXJ2aWNlLmdldEZpZWxkRGVmaW5pdGlvbih0eXBlKS5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpKS5zdWJzY3JpYmUoZGVmaW5pdGlvbiA9PiB7XG4gICAgICBsZXQgZXhjbHVkZSA9IG5ldyBTZXQoWydmaWxlbmFtZScsICdtaW1ldHlwZScsICdtb2RpZmllcnRpdGxlJywgJ3ZlcnNpb24nLCAnY3JlYXRvcnRpdGxlJywgJ3RpdGxlJywgJ2Rlc2NyaXB0aW9uJ10pO1xuICAgICAgaWYgKHR5cGUgIT09ICdzeXNkb2N1bWVudCcpIHtcbiAgICAgICAgZXhjbHVkZS5hZGQoJ3R5cGUnKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuYWdncmVnYXRpb25QaWNrZXIuY29kZXN5c3RlbSA9IHtcbiAgICAgICAgZW50cmllczogZGVmaW5pdGlvbi5lbGVtZW50cy5tYXAoZmllbGQgPT4ge1xuICAgICAgICAgIGxldCBsYWJlbCA9IGRlZmluaXRpb24uZWxlbWVudHMuZmlsdGVyKGl0ZW0gPT4gaXRlbS5sYWJlbCA9PT0gZmllbGQubGFiZWwpLmxlbmd0aCA+IDFcbiAgICAgICAgICAgID8gZmllbGQubGFiZWwgKyAnICgnICsgdGhpcy5zeXN0ZW0uZ2V0T2JqZWN0VHlwZShmaWVsZC5xbmFtZS5zcGxpdCgnLicpWzBdKS5sYWJlbCArICcpJ1xuICAgICAgICAgICAgOiBmaWVsZC5sYWJlbDtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaWQ6IGZpZWxkLnFuYW1lLFxuICAgICAgICAgICAgZGVmYXVsdHJlcHJlc2VudGF0aW9uOiBsYWJlbCxcbiAgICAgICAgICAgIGRhdGE6IGZpZWxkLnFuYW1lLFxuICAgICAgICAgICAgdHlwZTogZmllbGQudHlwZVxuICAgICAgICAgIH07XG4gICAgICAgIH0pLnNvcnQoVXRpbHMuc29ydFZhbHVlcygnZGVmYXVsdHJlcHJlc2VudGF0aW9uJykpLFxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuXG4gIGdldENoYXJ0RmlsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuY2hhcnRUeXBlUGlja2VyLmNvZGVzeXN0ZW0gPSB7XG4gICAgICBlbnRyaWVzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBpZDogJ2JhcicsXG4gICAgICAgICAgZGVmYXVsdHJlcHJlc2VudGF0aW9uOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICAgICAgJ2VvLndvcmtzcGFjZS53aWRnZXQuY2hhcnRzLnR5cGUuYmFyJyksXG4gICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgICAnZW8ud29ya3NwYWNlLndpZGdldC5jaGFydHMudHlwZS5iYXInXG4gICAgICAgICAgKSxcbiAgICAgICAgICB2YWx1ZTogJ2JhcicsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBpZDogJ3BpZScsXG4gICAgICAgICAgZGVmYXVsdHJlcHJlc2VudGF0aW9uOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICAgICAgJ2VvLndvcmtzcGFjZS53aWRnZXQuY2hhcnRzLnR5cGUucGllJyksXG4gICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgICAnZW8ud29ya3NwYWNlLndpZGdldC5jaGFydHMudHlwZS5waWUnXG4gICAgICAgICAgKSxcbiAgICAgICAgICB2YWx1ZTogJ3BpZScsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBpZDogJ2RvbnV0JyxcbiAgICAgICAgICBkZWZhdWx0cmVwcmVzZW50YXRpb246IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgICAnZW8ud29ya3NwYWNlLndpZGdldC5jaGFydHMudHlwZS5kb251dCdcbiAgICAgICAgICApLFxuICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICAgICAgJ2VvLndvcmtzcGFjZS53aWRnZXQuY2hhcnRzLnR5cGUuZG9udXQnXG4gICAgICAgICAgKSxcbiAgICAgICAgICB2YWx1ZTogJ2RvbnV0JyxcbiAgICAgICAgfSxcbiAgICAgIF0ubWFwKChyZXMpID0+ICh7XG4gICAgICAgIGlkOiByZXMuaWQsXG4gICAgICAgIGxhYmVsOiByZXMubGFiZWwsXG4gICAgICAgIGRlZmF1bHRyZXByZXNlbnRhdGlvbjogcmVzLmRlZmF1bHRyZXByZXNlbnRhdGlvbixcbiAgICAgICAgZGF0YTogcmVzLnZhbHVlXG4gICAgICB9KSkuc29ydChVdGlscy5zb3J0VmFsdWVzKCdkZWZhdWx0cmVwcmVzZW50YXRpb24nKSksXG4gICAgfTtcbiAgfVxuXG4gIGdldEhpc3RvZ3JhbUZpbGVkKCkge1xuICAgIHJldHVybiB0aGlzLmhpc3RvZ3JhbVR5cGVQaWNrZXIuY29kZXN5c3RlbSA9IHtcbiAgICAgIGVudHJpZXM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGlkOiAnc3RhbmRhcmQnLFxuICAgICAgICAgIGRlZmF1bHRyZXByZXNlbnRhdGlvbjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICAgICdlby53b3Jrc3BhY2Uud2lkZ2V0LmNoYXJ0cy5oaXN0b2dyYW0uc3RhbmRhcmQnKSxcbiAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICAgICdlby53b3Jrc3BhY2Uud2lkZ2V0LmNoYXJ0cy5oaXN0b2dyYW0uc3RhbmRhcmQnXG4gICAgICAgICAgKSxcbiAgICAgICAgICB2YWx1ZTogJ3N0YW5kYXJkJyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGlkOiAnZGFpbHknLFxuICAgICAgICAgIGRlZmF1bHRyZXByZXNlbnRhdGlvbjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICAgICdlby53b3Jrc3BhY2Uud2lkZ2V0LmNoYXJ0cy5oaXN0b2dyYW0uZGFpbHknXG4gICAgICAgICAgKSxcbiAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICAgICdlby53b3Jrc3BhY2Uud2lkZ2V0LmNoYXJ0cy5oaXN0b2dyYW0uZGFpbHknXG4gICAgICAgICAgKSxcbiAgICAgICAgICB2YWx1ZTogJ2RhaWx5J1xuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgaWQ6ICd3ZWVrbHknLFxuICAgICAgICAgIGRlZmF1bHRyZXByZXNlbnRhdGlvbjogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICAgICdlby53b3Jrc3BhY2Uud2lkZ2V0LmNoYXJ0cy5oaXN0b2dyYW0ud2Vla2x5J1xuICAgICAgICAgICksXG4gICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgICAnZW8ud29ya3NwYWNlLndpZGdldC5jaGFydHMuaGlzdG9ncmFtLndlZWtseSdcbiAgICAgICAgICApLFxuICAgICAgICAgIHZhbHVlOiAnd2Vla2x5J1xuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgaWQ6ICdtb250aGx5JyxcbiAgICAgICAgICBkZWZhdWx0cmVwcmVzZW50YXRpb246IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgICAnZW8ud29ya3NwYWNlLndpZGdldC5jaGFydHMuaGlzdG9ncmFtLm1vbnRobHknKSxcbiAgICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICAgICdlby53b3Jrc3BhY2Uud2lkZ2V0LmNoYXJ0cy5oaXN0b2dyYW0ubW9udGhseSdcbiAgICAgICAgICApLFxuICAgICAgICAgIHZhbHVlOiAnbW9udGhseSdcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGlkOiAneWVhcmx5JyxcbiAgICAgICAgICBkZWZhdWx0cmVwcmVzZW50YXRpb246IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgICAnZW8ud29ya3NwYWNlLndpZGdldC5jaGFydHMuaGlzdG9ncmFtLnllYXJseScpLFxuICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICAgICAgJ2VvLndvcmtzcGFjZS53aWRnZXQuY2hhcnRzLmhpc3RvZ3JhbS55ZWFybHknXG4gICAgICAgICAgKSxcbiAgICAgICAgICB2YWx1ZTogJ3llYXJseSdcbiAgICAgICAgfVxuICAgICAgXS5tYXAoKHJlcykgPT4gKHtcbiAgICAgICAgaWQ6IHJlcy5pZCxcbiAgICAgICAgbGFiZWw6IHJlcy5sYWJlbCxcbiAgICAgICAgZGVmYXVsdHJlcHJlc2VudGF0aW9uOiByZXMuZGVmYXVsdHJlcHJlc2VudGF0aW9uLFxuICAgICAgICBkYXRhOiByZXMudmFsdWVcbiAgICAgIH0pKSxcbiAgICB9O1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3dpZGdldENvbmZpZz8uc3RvcmVkUXVlcnkpIHtcbiAgICAgIHRoaXMuZ2V0U3RvcmVkUXVlcnkodGhpcy5fd2lkZ2V0Q29uZmlnPy5zdG9yZWRRdWVyeSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5zZXR1cEZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgc3RvcmVkUXVlcnk6IHRoaXMuc3RvcmVkUXVlcnkgPyB0aGlzLnN0b3JlZFF1ZXJ5Lm5hbWUgOiAnJyxcbiAgICAgICAgICBjaGFydFR5cGU6IHRoaXMuX3dpZGdldENvbmZpZyA/IHRoaXMuX3dpZGdldENvbmZpZz8uZm9ybVZhbHVlPy5jaGFydFR5cGUgOiAncGllJyxcbiAgICAgICAgICBzaXplOiB0aGlzLl93aWRnZXRDb25maWc/LmZvcm1WYWx1ZT8uc2l6ZSxcbiAgICAgICAgICBhZ2dyZWdhdGlvbjogdGhpcy5fd2lkZ2V0Q29uZmlnID8gdGhpcy5fd2lkZ2V0Q29uZmlnLmZvcm1WYWx1ZS5hZ2dyZWdhdGlvbiA6ICdzeXNvYmplY3QuY3JlYXRlZCcsXG4gICAgICAgICAgaGlzdG9ncmFtVHlwZTogdGhpcy5fd2lkZ2V0Q29uZmlnICYmIHRoaXMuX3dpZGdldENvbmZpZz8uZm9ybVZhbHVlPy5oaXN0b2dyYW1UeXBlID8gdGhpcy5fd2lkZ2V0Q29uZmlnPy5mb3JtVmFsdWU/Lmhpc3RvZ3JhbVR5cGUgOiAnc3RhbmRhcmQnLFxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKHRoaXMuc3RvcmVkUXVlcnkpIHtcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkU2F2ZWRTZWFyY2hOYW1lID0gdGhpcy5zZXR1cEZvcm0uZ2V0KCdzdG9yZWRRdWVyeScpLnZhbHVlO1xuICAgICAgICAgIGlmICh0aGlzLnN0b3JlZFF1ZXJ5LnR5cGVzLmxlbmd0aCAhPT0gMSkge1xuICAgICAgICAgICAgdGhpcy5nZXRBZ2dyZWdhdGlvbkZpZWxkKCdzeXNkb2N1bWVudCcpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmdldEFnZ3JlZ2F0aW9uRmllbGQodGhpcy5zdG9yZWRRdWVyeS50eXBlc1swXS5xbmFtZSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zZXR1cEZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgICAgIGFnZ3JlZ2F0aW9uOiB0aGlzLl93aWRnZXRDb25maWcgPyB0aGlzLl93aWRnZXRDb25maWcuZm9ybVZhbHVlLmFnZ3JlZ2F0aW9uIDogJ3N5c29iamVjdC5jcmVhdGVkJyxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgdGhpcy5pc0RhdGVUaW1lVHlwZSA9IHRoaXMud2lkZ2V0Q29uZmlnPy5mb3JtVmFsdWUuYWdncmVnYXRpb24gPT09ICdzeXNvYmplY3QuY3JlYXRlZCcgfHwgdGhpcy53aWRnZXRDb25maWc/LmFnZ3JlZ2F0aW9uVHlwZSA9PT0gJ0RBVEVUSU1FJztcbiAgICAgICAgICB9LCAxMDApO1xuICAgICAgICB9XG4gICAgICB9LCAoZXJyb3IpID0+IHtcbiAgICAgICAgdGhpcy5pc0RhdGVUaW1lVHlwZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLl93aWRnZXRDb25maWcuYWdncmVnYXRpb25UeXBlID0gbnVsbDtcbiAgICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDA0KSB7XG4gICAgICAgICAgdGhpcy5zZXR1cEZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgICBjaGFydFR5cGU6ICdwaWUnLFxuICAgICAgICAgICAgYWdncmVnYXRpb246IHRoaXMuX3dpZGdldENvbmZpZyA/IHRoaXMuX3dpZGdldENvbmZpZy5mb3JtVmFsdWUuYWdncmVnYXRpb24gOiAnc3lzb2JqZWN0LmNyZWF0ZWQnLFxuICAgICAgICAgICAgaGlzdG9ncmFtVHlwZTogJ3N0YW5kYXJkJyxcbiAgICAgICAgICAgIHNpemU6ICcnLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHJldHVybiBFTVBUWTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2V0dXBGb3JtLnBhdGNoVmFsdWUoe1xuICAgICAgICBjaGFydFR5cGU6IHRoaXMuX3dpZGdldENvbmZpZyA/IHRoaXMuX3dpZGdldENvbmZpZz8uZm9ybVZhbHVlPy5jaGFydFR5cGUgOiAncGllJyxcbiAgICAgICAgYWdncmVnYXRpb246IHRoaXMuX3dpZGdldENvbmZpZyA/IHRoaXMuX3dpZGdldENvbmZpZy5mb3JtVmFsdWUuYWdncmVnYXRpb24gOiAnc3lzb2JqZWN0LmNyZWF0ZWQnLFxuICAgICAgICBoaXN0b2dyYW1UeXBlOiB0aGlzLl93aWRnZXRDb25maWcgJiYgdGhpcy5fd2lkZ2V0Q29uZmlnPy5mb3JtVmFsdWU/Lmhpc3RvZ3JhbVR5cGUgPyB0aGlzLl93aWRnZXRDb25maWc/LmZvcm1WYWx1ZT8uaGlzdG9ncmFtVHlwZSA6ICdzdGFuZGFyZCcsXG4gICAgICAgIHNpemU6IHRoaXMuX3dpZGdldENvbmZpZz8uZm9ybVZhbHVlPy5zaXplLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic2V0dXBcIj5cbiAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cInNldHVwRm9ybVwiPlxuICAgICAgICA8ZW8tZm9ybS1pbnB1dCBbcmVxdWlyZWRdPVwidHJ1ZVwiIFtza2lwVG9nZ2xlXT1cInRydWVcIlxuICAgICAgICAgICAgW2xhYmVsXT1cIidlby53b3Jrc3BhY2Uud2lkZ2V0LmZvcm0ubGFiZWwuY2hhcnRUeXBlRmllbGQnIHwgdHJhbnNsYXRlXCI+XG4gICAgICAgICAgICA8ZW8tY29kZXN5c3RlbSBmb3JtQ29udHJvbE5hbWU9XCJjaGFydFR5cGVcIiBbcGlja2VyVGl0bGVdPVwiY2hhcnRUeXBlUGlja2VyLnRpdGxlXCJcbiAgICAgICAgICAgICAgICBbY29kZXN5c3RlbV09XCJjaGFydFR5cGVQaWNrZXIuY29kZXN5c3RlbVwiPjwvZW8tY29kZXN5c3RlbT5cbiAgICAgICAgPC9lby1mb3JtLWlucHV0PlxuXG4gICAgICAgIDxlby1mb3JtLWlucHV0IFtyZXF1aXJlZF09XCJ0cnVlXCIgW3NraXBUb2dnbGVdPVwidHJ1ZVwiICpuZ0lmPVwic3RvcmVkUXVlcmllc1BpY2tlcj8uY29kZXN5c3RlbT8uZW50cmllc1wiXG4gICAgICAgICAgICBbbGFiZWxdPVwiJ2VvLnNlYXJjaC50aXRsZS5zdG9yZWRxdWVyaWVzJyB8IHRyYW5zbGF0ZVwiIFtkZXNjcmlwdGlvbl09XCInZW8ud29ya3NwYWNlLndpZGdldC5zdG9yZWQucXVlcmllcy5kZXNjcmlwdGlvbidcIj5cbiAgICAgICAgICAgIDxlby1jb2Rlc3lzdGVtIGZvcm1Db250cm9sTmFtZT1cInN0b3JlZFF1ZXJ5XCIgW3BpY2tlclRpdGxlXT1cInN0b3JlZFF1ZXJpZXNQaWNrZXIudGl0bGVcIlxuICAgICAgICAgICAgICAgIFtjb2Rlc3lzdGVtXT1cInN0b3JlZFF1ZXJpZXNQaWNrZXIuY29kZXN5c3RlbVwiXG4gICAgICAgICAgICAgICAgW2VtcHR5TWVzc2FnZV09XCInZW8ud29ya3NwYWNlLndpZGdldC5zdG9yZWQucXVlcmllcy5saXN0Lm5vdEF2YWlsYWJsZSdcIj48L2VvLWNvZGVzeXN0ZW0+XG4gICAgICAgIDwvZW8tZm9ybS1pbnB1dD5cblxuICAgICAgICA8ZW8tZm9ybS1pbnB1dCBbcmVxdWlyZWRdPVwidHJ1ZVwiIFtza2lwVG9nZ2xlXT1cInRydWVcIlxuICAgICAgICAgICAgKm5nSWY9XCJhZ2dyZWdhdGlvblBpY2tlcj8uY29kZXN5c3RlbT8uZW50cmllcyAmJiB0aGlzLnNldHVwRm9ybS5nZXQoJ3N0b3JlZFF1ZXJ5JykudmFsdWVcIlxuICAgICAgICAgICAgW2xhYmVsXT1cIidlby53b3Jrc3BhY2Uud2lkZ2V0LmZvcm0ubGFiZWwuYWdncmVnYXRpb25GaWVsZCcgfCB0cmFuc2xhdGVcIj5cbiAgICAgICAgICAgIDxlby1jb2Rlc3lzdGVtICNhZ2dyZWdhdGlvbkNvZGVzeXN0ZW0gZm9ybUNvbnRyb2xOYW1lPVwiYWdncmVnYXRpb25cIiBbcGlja2VyVGl0bGVdPVwiYWdncmVnYXRpb25QaWNrZXIudGl0bGVcIlxuICAgICAgICAgICAgICAgIFtjb2Rlc3lzdGVtXT1cImFnZ3JlZ2F0aW9uUGlja2VyLmNvZGVzeXN0ZW1cIj48L2VvLWNvZGVzeXN0ZW0+XG4gICAgICAgIDwvZW8tZm9ybS1pbnB1dD5cblxuICAgICAgICA8ZW8tZm9ybS1pbnB1dCBbcmVxdWlyZWRdPVwidHJ1ZVwiIFtza2lwVG9nZ2xlXT1cInRydWVcIlxuICAgICAgICAgICAgKm5nSWY9XCJpc0RhdGVUaW1lVHlwZVwiIFtsYWJlbF09XCInZW8ud29ya3NwYWNlLndpZGdldC5mb3JtLmxhYmVsLmhpc3RvZ3JhbScgfCB0cmFuc2xhdGVcIj5cbiAgICAgICAgICAgIDxlby1jb2Rlc3lzdGVtIGZvcm1Db250cm9sTmFtZT1cImhpc3RvZ3JhbVR5cGVcIiBbcGlja2VyVGl0bGVdPVwiaGlzdG9ncmFtVHlwZVBpY2tlci50aXRsZVwiXG4gICAgICAgICAgICAgICAgW2NvZGVzeXN0ZW1dPVwiaGlzdG9ncmFtVHlwZVBpY2tlci5jb2Rlc3lzdGVtXCI+PC9lby1jb2Rlc3lzdGVtPlxuICAgICAgICA8L2VvLWZvcm0taW5wdXQ+XG5cbiAgICAgICAgPGVvLWZvcm0taW5wdXQgW3NraXBUb2dnbGVdPVwidHJ1ZVwiIFtkZXNjcmlwdGlvbl09XCInZW8ud29ya3NwYWNlLndpZGdldC5jaGFydC5mb3JtLmxhYmVsLmRlc2NyaXB0aW9uJ1wiXG4gICAgICAgICAgICBbbGFiZWxdPVwiJ2VvLndvcmtzcGFjZS53aWRnZXQuZm9ybS5wYXJ0aWFsVmFsdWUnIHwgdHJhbnNsYXRlXCI+XG4gICAgICAgICAgICA8ZW8tbnVtYmVyIFtzY2FsZV09XCIwXCIgZm9ybUNvbnRyb2xOYW1lPVwic2l6ZVwiPjwvZW8tbnVtYmVyPlxuICAgICAgICA8L2VvLWZvcm0taW5wdXQ+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImVyci1tc2dcIiAqbmdJZj1cInNldHVwRm9ybS5nZXQoJ3NpemUnKS5oYXNFcnJvcignbWF4JykgfHwgc2V0dXBGb3JtLmdldCgnc2l6ZScpLmhhc0Vycm9yKCdtaW4nKVwiPlxuICAgICAgICAgICAgPGRpdiB0cmFuc2xhdGU+XG4gICAgICAgICAgICAgICAgZW8uZm9ybS5wcm9wZXJ0eS5zdHJpbmcuZXJyb3IuY2xhc3NpZmljYXRpb24ucGFydGlhbFZhbHVlIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgIDwvZm9ybT5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwicHJldmlld1wiXG4gICAgKm5nSWY9XCJzZXR1cEZvcm0uZ2V0KCdhZ2dyZWdhdGlvbicpLnZhbHVlICYmIHNldHVwRm9ybS5nZXQoJ2NoYXJ0VHlwZScpLnZhbHVlICYmIHNldHVwRm9ybS5nZXQoJ3N0b3JlZFF1ZXJ5JykudmFsdWUgJiYgKGlzRGF0ZVRpbWVUeXBlICYmIHNldHVwRm9ybS5nZXQoJ2hpc3RvZ3JhbVR5cGUnKS52YWx1ZSB8fCAhaXNEYXRlVGltZVR5cGUpOyBlbHNlIHRwbEVtcHR5XCI+XG4gICAgPGVvLWNoYXJ0cy13aWRnZXQgW3dpZGdldENvbmZpZ109XCJ3aWRnZXRDb25maWdcIiBbZWRpdE1vZGVdPVwidHJ1ZVwiPjwvZW8tY2hhcnRzLXdpZGdldD5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3RwbEVtcHR5PlxuICAgIDxkaXYgY2xhc3M9XCJlbXB0eVwiPlxuICAgICAgICA8ZW8tZXJyb3ItbWVzc2FnZVxuICAgICAgICAgICAgW2VtcHR5U3RhdGVdPVwie2ljb246ICdpY19zYXZlZF9zZWFyY2guc3ZnJywgdGV4dDogJ2VvLndvcmtzcGFjZS53aWRnZXQuY29uZmlndXJhdGlvbi5ub3RPayd9XCI+PC9lby1lcnJvci1tZXNzYWdlPlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -115,7 +115,21 @@ export class OrganizationComponent {
|
|
|
115
115
|
}
|
|
116
116
|
}
|
|
117
117
|
resolveFn(value) {
|
|
118
|
-
let
|
|
118
|
+
let valuesArray = [];
|
|
119
|
+
if (value instanceof Array) {
|
|
120
|
+
value.forEach(v => {
|
|
121
|
+
if (v instanceof Array) {
|
|
122
|
+
valuesArray = valuesArray.concat(v);
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
valuesArray.push(v);
|
|
126
|
+
}
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
else {
|
|
130
|
+
valuesArray = [value];
|
|
131
|
+
}
|
|
132
|
+
let map = valuesArray.map(v => {
|
|
119
133
|
let match = this.innerValue.find(iv => iv.name === v);
|
|
120
134
|
return match ? observableOf(match) : this.systemService.getOrganizationObject(v);
|
|
121
135
|
});
|
|
@@ -219,4 +233,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
|
|
|
219
233
|
}], filterObject: [{
|
|
220
234
|
type: Input
|
|
221
235
|
}] } });
|
|
222
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JnYW5pemF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tZnJhbWV3b3JrL2Zvcm0tZWxlbWVudHMvb3JnYW5pemF0aW9uL29yZ2FuaXphdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9mb3JtLWVsZW1lbnRzL29yZ2FuaXphdGlvbi9vcmdhbml6YXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxZQUFZLEVBQ1osVUFBVSxFQUNWLFdBQVcsRUFDWCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXVCLGFBQWEsRUFBRSxpQkFBaUIsRUFBWSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pHLE9BQU8sRUFBK0QsS0FBSyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBRWpHLE9BQU8sRUFBQyxRQUFRLElBQUksa0JBQWtCLEVBQUUsRUFBRSxJQUFJLFlBQVksRUFBZSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7QUEwQnRGLE1BQU0sT0FBTyxxQkFBcUI7SUE2QmhDLElBQWEsaUJBQWlCLENBQUMsQ0FBVTtRQUN2QyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQzdFLENBQUM7SUFDRCxJQUFJLGlCQUFpQjtRQUNuQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQTtJQUNoQyxDQUFDO0lBR0QsSUFBYSxRQUFRLENBQUMsQ0FBVTtRQUM5QixJQUFJLENBQUMsU0FBUyxH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LElBQUk7eUJBQ1o7cUJBQ0Y7MExBSTBCLGlCQUFpQjtzQkFBM0MsU0FBUzt1QkFBQyxjQUFjO2dCQVVNLFNBQVM7c0JBQXZDLFdBQVc7dUJBQUMsZ0JBQWdCO2dCQUc3QixlQUFlO3NCQURkLE1BQU07Z0JBSVAsaUJBQWlCO3NCQURoQixNQUFNO2dCQVlNLGlCQUFpQjtzQkFBN0IsS0FBSztnQkFPRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ08sUUFBUTtzQkFBcEIsS0FBSztnQkFNTyxRQUFRO3NCQUFwQixLQUFLO2dCQUtHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUcsVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50Q2hlY2tlZCxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIGZvcndhcmRSZWYsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxJREFUT1JTLCBOR19WQUxVRV9BQ0NFU1NPUiwgVmFsaWRhdG9yfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0JhY2tlbmRTZXJ2aWNlLCBTeXN0ZW1TZXJ2aWNlLCBUcmFuc2xhdGVTZXJ2aWNlLCBVc2VyU2VydmljZSwgVXRpbHN9IGZyb20gJ0Blby1zZGsvY29yZSc7XG5pbXBvcnQge0F1dG9Db21wbGV0ZX0gZnJvbSAnQHl1dXZpcy9jb21wb25lbnRzL2F1dG9jb21wbGV0ZSc7XG5pbXBvcnQge2ZvcmtKb2luIGFzIG9ic2VydmFibGVGb3JrSm9pbiwgb2YgYXMgb2JzZXJ2YWJsZU9mLCBTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE9yZ2FuaXphdGlvbkZpbHRlciB7XG4gIHR5cGU/OiBzdHJpbmc7ICAgICAgICAvLyBUaGUgdHlwZSBvZiB0aGUgb3JnYW5pemF0aW9uIHVuaXQgKCdVU0VSJyBvciAnR1JPVVAnKSB0byBiZSBkaXNwbGF5ZWRcbiAgZ3JvdXBzPzogc3RyaW5nW107ICAgIC8vIGFuIGFycmF5IG9mIGdyb3VwIG5hbWVzIHRvIGZpbHRlciBhdXRvY29tcGxldGUgcmVzdWx0cyB3aXRoXG4gIHJvbGVzPzogc3RyaW5nW107ICAgICAvLyBhbiBhcnJheSBvZiByb2xlIG5hbWVzIHRvIGZpbHRlciBhdXRvY29tcGxldGUgcmVzdWx0cyB3aXRoXG4gIGFjdGl2ZW9ubHk/OiBib29sZWFuOyAvLyB3aGV0aGVyIG9yIG5vdCB0byBmZXRjaCBvbmx5IGFjdGl2ZSBvcmdhbml6YXRpb24gb2JqZWN0c1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlby1vcmdhbml6YXRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vb3JnYW5pemF0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vb3JnYW5pemF0aW9uLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gT3JnYW5pemF0aW9uQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gT3JnYW5pemF0aW9uQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIE9yZ2FuaXphdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBBZnRlckNvbnRlbnRDaGVja2VkLCBWYWxpZGF0b3Ige1xuXG4gIEBWaWV3Q2hpbGQoJ2F1dG9jb21wbGV0ZScpIGF1dG9Db21wbGV0ZUlucHV0OiBBdXRvQ29tcGxldGU7XG5cbiAgaWNvbiA9IHtcbiAgICB1c2VyOiAnPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAtOTYwIDk2MCA5NjBcIiB3aWR0aD1cIjIwXCI+PHBhdGggZD1cIk00ODAtNDgwcS02MCAwLTEwMi00MnQtNDItMTAycTAtNjAgNDItMTAydDEwMi00MnE2MCAwIDEwMiA0MnQ0MiAxMDJxMCA2MC00MiAxMDJ0LTEwMiA0MlpNMTkyLTE5MnYtOTZxMC0yMyAxMi41LTQzLjVUMjM5LTM2NnE1NS0zMiAxMTYuNS00OVQ0ODAtNDMycTYzIDAgMTI0LjUgMTdUNzIxLTM2NnEyMiAxMyAzNC41IDM0dDEyLjUgNDR2OTZIMTkyWlwiLz48L3N2Zz4nLFxuICAgIGdyb3VwOiAnPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAtOTYwIDk2MCA5NjBcIiB3aWR0aD1cIjIwXCI+PHBhdGggZD1cIk05Ni0xOTJ2LTkycTAtMjYgMTIuNS00Ny41VDE0My0zNjZxNTQtMzIgMTE0LjUtNDlUMzg0LTQzMnE2NiAwIDEyNi41IDE3VDYyNS0zNjZxMjIgMTMgMzQuNSAzNC41VDY3Mi0yODR2OTJIOTZabTY0OCAwdi05MnEwLTQyLTE5LjUtNzhUNjcyLTQyMXEzOSA4IDc1LjUgMjEuNVQ4MTctMzY2cTIyIDEzIDM0LjUgMzQuNVQ4NjQtMjg0djkySDc0NFpNMzg0LTQ4MHEtNjAgMC0xMDItNDJ0LTQyLTEwMnEwLTYwIDQyLTEwMnQxMDItNDJxNjAgMCAxMDIgNDJ0NDIgMTAycTAgNjAtNDIgMTAydC0xMDIgNDJabTMzNi0xNDRxMCA2MC00MiAxMDJ0LTEwMiA0MnEtOCAwLTE1LS41dC0xNS0yLjVxMjUtMjkgMzkuNS02NC41VDYwMC02MjRxMC00MS0xNC41LTc2LjVUNTQ2LTc2NXE4LTIgMTUtMi41dDE1LS41cTYwIDAgMTAyIDQydDQyIDEwMlpcIi8+PC9zdmc+J1xuICB9XG5cbiAgcmVtb3RlVXJsID0gJy9vcmdhbml6YXRpb24vcXVlcnk/cT0nO1xuICBtaW5MZW5ndGggPSAyO1xuICB3aWxkQ2FyZCA9ICcqJztcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5yZWFkb25seScpIF9yZWFkb25seTogYm9vbGVhbjtcblxuICBAT3V0cHV0KClcbiAgb25WYWx1ZVJlc29sdmVkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAvLyBlbWl0dGVkIHdoZW4gdmFsdWUgY2hhbmdlZCBob2xkaW5nIHRoZSByZXNvbHZlZCBkYXRhX21ldGFcbiAgQE91dHB1dCgpXG4gIG9uRGF0YU1ldGFDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIGF1dG9jb21wbGV0ZVJlczogYW55W107XG4gIC8vIG1vZGVsIHZhbHVlXG4gIHZhbHVlO1xuICBjdXJyZW50VXNlcklkOiBzdHJpbmc7XG4gIC8vIGlubmVyIG5nLW1vZGVsIHZhbHVlXG4gIGlubmVyVmFsdWU6IGFueVtdID0gW107XG4gIGVycm9yOiBhbnkgPSB7fTtcbiAgZGVsZXRlZEl0ZW1JRDogc3RyaW5nO1xuICBwcml2YXRlIF9yZW1vdmVDdXJyZW50VXNlcjogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBzZXQgcmVtb3ZlQ3VycmVudFVzZXIoYjogYm9vbGVhbikge1xuICAgIHRoaXMuX3JlbW92ZUN1cnJlbnRVc2VyID0gYjtcbiAgICB0aGlzLmN1cnJlbnRVc2VySWQgPSBiID8gdGhpcy51c2VyU2VydmljZS5nZXRDdXJyZW50VXNlcigpPy5pZCA6IHVuZGVmaW5lZDtcbiAgfVxuICBnZXQgcmVtb3ZlQ3VycmVudFVzZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3JlbW92ZUN1cnJlbnRVc2VyXG4gIH1cbiAgQElucHV0KCkgc2l0dWF0aW9uOiBzdHJpbmc7XG4gIEBJbnB1dCgpIG11bHRpc2VsZWN0OiBib29sZWFuO1xuICBASW5wdXQoKSBzZXQgcmVhZG9ubHkocjogYm9vbGVhbikge1xuICAgIHRoaXMuX3JlYWRvbmx5ID0gcjtcbiAgfVxuICBnZXQgcmVhZG9ubHkoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3JlYWRvbmx5O1xuICB9XG4gIEBJbnB1dCgpIHNldCBkYXRhTWV0YShkTTogYW55KSB7XG4gICAgaWYgKGRNKSB7XG4gICAgICB0aGlzLmlubmVyVmFsdWUgPSBBcnJheS5pc0FycmF5KGRNKSA/IGRNIDogW2RNXTtcbiAgICB9XG4gIH1cbiAgQElucHV0KCkgcGxhY2Vob2xkZXI6IHN0cmluZztcbiAgLy8gbGlzdCBvZiB2YWx1ZXMgdGhhdCBzaG91bGQgbm90IGJlIHNlbGVjdGFibGVcbiAgQElucHV0KCkgZXhjZXB0aW9uczogc3RyaW5nW10gPSBbXTtcbiAgQElucHV0KCkgZmlsdGVyT2JqZWN0OiBPcmdhbml6YXRpb25GaWx0ZXI7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBiYWNrZW5kOiBCYWNrZW5kU2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHN5c3RlbVNlcnZpY2U6IFN5c3RlbVNlcnZpY2UsXG4gICAgcHVibGljIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcbiAgKSB7IH1cblxuICBwdWJsaWMgdmFsaWRhdGUoKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkQXV0b2NvbXBsZXRlVXJpKHF1ZXJ5OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IHBhcmFtcyA9IHtcbiAgICAgIHE6IHF1ZXJ5LFxuICAgICAgYWN0aXZlb25seTogKHRoaXMuc2l0dWF0aW9uICE9PSAnU0VBUkNIJykgPyAndHJ1ZScgOiAnZmFsc2UnLFxuICAgICAgZGV0YWlsczogdHJ1ZVxuICAgIH07XG5cbiAgICBpZiAodGhpcy5maWx0ZXJPYmplY3QpIHtcbiAgICAgIGlmICh0aGlzLmZpbHRlck9iamVjdC50eXBlKSB7XG4gICAgICAgIHBhcmFtc1snc2NvcGUnXSA9IHRoaXMuZmlsdGVyT2JqZWN0LnR5cGU7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5maWx0ZXJPYmplY3QuZ3JvdXBzKSB7XG4gICAgICAgIHBhcmFtc1snZ3JvdXBmaWx0ZXInXSA9IHRoaXMuZmlsdGVyT2JqZWN0Lmdyb3VwcztcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmZpbHRlck9iamVjdC5yb2xlcykge1xuICAgICAgICBwYXJhbXNbJ3JvbGVmaWx0ZXInXSA9IHRoaXMuZmlsdGVyT2JqZWN0LnJvbGVzO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuZmlsdGVyT2JqZWN0Lmhhc093blByb3BlcnR5KCdhY3RpdmVvbmx5JykpIHtcbiAgICAgICAgcGFyYW1zWydhY3RpdmVvbmx5J10gPSB0aGlzLmZpbHRlck9iamVjdC5hY3RpdmVvbmx5ID8gJ3RydWUnIDogJ2ZhbHNlJztcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIFV0aWxzLmJ1aWxkVXJpKCcvb3JnYW5pemF0aW9uL3F1ZXJ5JywgcGFyYW1zKTtcbiAgfVxuXG4gIHByb3BhZ2F0ZUNoYW5nZSA9IChfOiBhbnkpID0+IHtcbiAgfVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgICAgdGhpcy5yZXNvbHZlRm4odmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZhbHVlID0gbnVsbDtcbiAgICAgIHRoaXMuaW5uZXJWYWx1ZSA9IFtdO1xuICAgIH1cbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gIH1cblxuICBwcml2YXRlIHByb3BhZ2F0ZSgpIHtcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLnZhbHVlKTtcbiAgICB0aGlzLm9uRGF0YU1ldGFDaGFuZ2VkLmVtaXQodGhpcy5pbm5lclZhbHVlKTtcbiAgfVxuXG4gIGF1dG9jb21wbGV0ZUZuKHRlcm06IHN0cmluZykge1xuICAgIGlmICh0ZXJtLmxlbmd0aCA+PSB0aGlzLm1pbkxlbmd0aCB8fCB0ZXJtID09PSB0aGlzLndpbGRDYXJkKSB7XG4gICAgICBpZiAodGhpcy5tdWx0aXNlbGVjdCB8fCAoIXRoaXMubXVsdGlzZWxlY3QgJiYgdGhpcy5pbm5lclZhbHVlLmxlbmd0aCA9PT0gMCkpIHtcbiAgICAgICAgdGhpcy5iYWNrZW5kLmdldEpzb24odGhpcy5idWlsZEF1dG9jb21wbGV0ZVVyaSh0ZXJtKSlcbiAgICAgICAgICAuc3Vic2NyaWJlKChyZXMpID0+IHtcbiAgICAgICAgICAgIC8vIGF1dG9jb21wbGV0ZSB2YWx1ZXMgc2hvdWxkIGJlIHVuaXF1ZSBhbmQgbm90IHBhcnQgb2YgdGhlIGV4Y2VwdGlvbnNcbiAgICAgICAgICAgIHRoaXMuYXV0b2NvbXBsZXRlUmVzID0gcmVzLmZpbHRlcih2ID0+ICghdGhpcy52YWx1ZSB8fCB0aGlzLnZhbHVlLmluZGV4T2Yodi5uYW1lKSA9PT0gLTEpICYmIHRoaXMuZXhjZXB0aW9ucy5pbmRleE9mKHYubmFtZSkgPT09IC0xICYmICghdGhpcy5yZW1vdmVDdXJyZW50VXNlciB8fCB0aGlzLmN1cnJlbnRVc2VySWQgIT09IHYuaWQpKVxuICAgICAgICAgICAgICAuc29ydChVdGlscy5zb3J0VmFsdWVzKCd0aXRsZScpKS5zbGljZSgwLCAxMCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICAgIFV0aWxzLnRocm93KG51bGwsXG4gICAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLmZvcm0ucHJvcGVydHkub3JnYW5pemF0aW9uLnJlcXVlc3QuZXJyb3IudGl0bGUnKSxcbiAgICAgICAgICAgICAgdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8uZm9ybS5wcm9wZXJ0eS5vcmdhbml6YXRpb24ucmVxdWVzdC5lcnJvci5tc2cnKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmF1dG9jb21wbGV0ZVJlcyA9IFtdO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmF1dG9jb21wbGV0ZVJlcyA9IFtdO1xuICAgIH1cbiAgfVxuXG4gIHJlc29sdmVGbih2YWx1ZTogYW55KTogU3Vic2NyaXB0aW9uIHtcbiAgICBsZXQgbWFwID0gKHZhbHVlIGluc3RhbmNlb2YgQXJyYXkgPyB2YWx1ZSA6IFt2YWx1ZV0pLm1hcCh2ID0+IHtcbiAgICAgIGxldCBtYXRjaCA9IHRoaXMuaW5uZXJWYWx1ZS5maW5kKGl2ID0+IGl2Lm5hbWUgPT09IHYpO1xuICAgICAgcmV0dXJuIG1hdGNoID8gb2JzZXJ2YWJsZU9mKG1hdGNoKSA6IHRoaXMuc3lzdGVtU2VydmljZS5nZXRPcmdhbml6YXRpb25PYmplY3Qodik7XG4gICAgfSk7XG5cbiAgICBpZiAobWFwLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5pbm5lclZhbHVlID0gW107XG4gICAgICB0aGlzLm9uVmFsdWVSZXNvbHZlZC5lbWl0KHRoaXMuaW5uZXJWYWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBvYnNlcnZhYmxlRm9ya0pvaW4obWFwKS5zdWJzY3JpYmUoZGF0YSA9PiB7XG4gICAgICAgIHRoaXMuaW5uZXJWYWx1ZSA9IGRhdGE7XG4gICAgICAgIHRoaXMub25WYWx1ZVJlc29sdmVkLmVtaXQodGhpcy5pbm5lclZhbHVlKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8vIGhhbmRsZSBzZWxlY3Rpb24gY2hhbmdlcyB0byB0aGUgbW9kZWxcbiAgb25VbnNlbGVjdCh2YWx1ZSkge1xuICAgIHRoaXMuaW5uZXJWYWx1ZSA9IHRoaXMuaW5uZXJWYWx1ZS5maWx0ZXIodiA9PiB2Lm5hbWUgIT09IHZhbHVlLm5hbWUpO1xuICAgIGxldCBfdmFsdWUgPSB0aGlzLmlubmVyVmFsdWUubWFwKHYgPT4gdi5uYW1lKTtcbiAgICB0aGlzLnZhbHVlID0gdGhpcy5tdWx0aXNlbGVjdCA/IF92YWx1ZSA6IG51bGw7XG4gICAgaWYgKCF0aGlzLm11bHRpc2VsZWN0KSB7XG4gICAgICB0aGlzLmNsZWFySW5uZXJJbnB1dCgpO1xuICAgIH1cbiAgICB0aGlzLmF1dG9Db21wbGV0ZUlucHV0LmZvY3VzSW5wdXQoKTtcbiAgICB0aGlzLnByb3BhZ2F0ZSgpO1xuICB9XG5cbiAgLy8gaGFuZGxlIHNlbGVjdGlvbiBjaGFuZ2VzIHRvIHRoZSBtb2RlbFxuICBvblNlbGVjdCh2YWx1ZSkge1xuICAgIGlmICh0aGlzLm11bHRpc2VsZWN0KSB7XG4gICAgICB0aGlzLnZhbHVlID0gdGhpcy5pbm5lclZhbHVlLm1hcCh2ID0+IHYubmFtZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIGludGVybmFsIGF1dG9jb21wbGV0ZSBjb250cm9sIGlzIGFsd2F5cyBzZXQgdG8gbXVsdGlzZWxlY3RcbiAgICAgIC8vIHNvIHRoZSByZXNvbHZlZCB2YWx1ZSBpcyBhbHdheXMgYW4gYXJyYXlcbiAgICAgIHRoaXMudmFsdWUgPSB0aGlzLmlubmVyVmFsdWVbMF0ubmFtZTtcbiAgICB9XG4gICAgdGhpcy5wcm9wYWdhdGUoKTtcbiAgfVxuXG4gIG9uQXV0b0NvbXBsZXRlQmx1cigpIHtcbiAgICB0aGlzLmNsZWFySW5uZXJJbnB1dCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBjbGVhcklubmVySW5wdXQoKSB7XG4gICAgdGhpcy5hdXRvQ29tcGxldGVJbnB1dC5jbGVhcklucHV0KCk7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudENoZWNrZWQoKSB7XG4gICAgaWYgKHRoaXMuc2l0dWF0aW9uID09PSAnU0VBUkNIJykge1xuICAgICAgdGhpcy5tdWx0aXNlbGVjdCA9IHRydWU7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZW8tb3JnYW5pemF0aW9uXCIgW25nQ2xhc3NdPVwie2FjSW5wdXRIaWRkZW46ICFtdWx0aXNlbGVjdCAmJiBpbm5lclZhbHVlLmxlbmd0aH1cIj5cblxuICA8eXZjLWF1dG9jb21wbGV0ZSBbKG5nTW9kZWwpXT1cImlubmVyVmFsdWVcIiAjYXV0b2NvbXBsZXRlIChzdWdnZXN0aW9uU2VsZWN0KT1cIm9uU2VsZWN0KCRldmVudClcIlxuICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIChzdWdnZXN0aW9uVW5zZWxlY3QpPVwib25VbnNlbGVjdCgkZXZlbnQpXCIgKGJsdXIpPVwib25BdXRvQ29tcGxldGVCbHVyKClcIlxuICAgIFtkaXNhYmxlZF09XCJyZWFkb25seVwiIFthdXRvY29tcGxldGVWYWx1ZXNdPVwiYXV0b2NvbXBsZXRlUmVzXCIgZmllbGQ9XCJpZFwiXG4gICAgW2ZvcmNlU2VsZWN0aW9uXT1cInRydWVcIlxuICAgIChhdXRvY29tcGxldGVGbmMpPVwiYXV0b2NvbXBsZXRlRm4oJGV2ZW50KVwiIFttdWx0aXBsZV09XCJ0cnVlXCI+XG5cbiAgICA8bmctdGVtcGxhdGUgI2F1dG9jb21wbGV0ZU9wdGlvblRlbXBsYXRlIGxldC1pdGVtPlxuICAgICAgPGRpdiBjbGFzcz1cIm9yZy1pdGVtXCI+XG4gICAgICAgIDx5dmMtaWNvbiBbc3ZnXT1cIml0ZW0udHlwZSA9PT0gJ2dyb3VwJyA/ICBpY29uLmdyb3VwIDogaWNvbi51c2VyXCI+PC95dmMtaWNvbj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCIoaXRlbS5maXJzdG5hbWU/Lmxlbmd0aCAmJiBpdGVtLmxhc3RuYW1lPy5sZW5ndGgpIHx8IGl0ZW0udHlwZSA9PT0gJ2dyb3VwJ1wiPnt7aXRlbS50aXRsZX19XG4gICAgICAgICAgKHt7aXRlbS5uYW1lfX0pPC9zcGFuPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIiFpdGVtLmZpcnN0bmFtZT8ubGVuZ3RoICYmICFpdGVtLmxhc3RuYW1lPy5sZW5ndGggJiYgaXRlbS50eXBlICE9PSAnZ3JvdXAnXCI+KHt7aXRlbS5uYW1lfX0pPC9zcGFuPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIiFpdGVtLmZpcnN0bmFtZT8ubGVuZ3RoICYmIGl0ZW0ubGFzdG5hbWU/Lmxlbmd0aFwiPnt7aXRlbS5sYXN0bmFtZX19ICh7e2l0ZW0ubmFtZX19KTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCJpdGVtLmZpcnN0bmFtZT8ubGVuZ3RoICYmICFpdGVtLmxhc3RuYW1lPy5sZW5ndGhcIj57e2l0ZW0uZmlyc3RuYW1lfX0gKHt7aXRlbS5uYW1lfX0pPC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgIDxuZy10ZW1wbGF0ZSAjY2hpcFRlbXBsYXRlIGxldC1pdGVtPlxuICAgICAgPGRpdiBjbGFzcz1cIm9yZy1pdGVtXCIgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKTsgJGV2ZW50LnByZXZlbnREZWZhdWx0KClcIj5cbiAgICAgICAgPHl2Yy1pY29uIFtzdmddPVwiaXRlbS50eXBlID09PSAnZ3JvdXAnID8gIGljb24uZ3JvdXAgOiBpY29uLnVzZXJcIj48L3l2Yy1pY29uPlxuICAgICAgICA8c3BhblxuICAgICAgICAgICpuZ0lmPVwiKGl0ZW0uZmlyc3RuYW1lPy5sZW5ndGggJiYgaXRlbS5sYXN0bmFtZT8ubGVuZ3RoICYmIGl0ZW0uYWN0aXZlKSB8fCBpdGVtLnR5cGUgPT09ICdncm91cCdcIj57e2l0ZW0udGl0bGV9fVxuICAgICAgICAgICh7e2l0ZW0ubmFtZX19KTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJpbmFjdGl2ZVwiXG4gICAgICAgICAgKm5nSWY9XCIoaXRlbS5maXJzdG5hbWU/Lmxlbmd0aCAmJiBpdGVtLmxhc3RuYW1lPy5sZW5ndGggJiYgIWl0ZW0uYWN0aXZlKVwiPnt7aXRlbS50aXRsZX19XG4gICAgICAgICAgKHt7aXRlbS5uYW1lfX0pPC9zcGFuPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIighaXRlbS5maXJzdG5hbWU/Lmxlbmd0aCAmJiAhaXRlbS5sYXN0bmFtZT8ubGVuZ3RoICYmICFpdGVtLmFjdGl2ZSAmJiAhaXRlbS50eXBlKVwiXG4gICAgICAgICAgY2xhc3M9XCJkZWxldGVkLXVzZXItbGFiZWxcIj57eydlby5mb3JtLnByb3BlcnR5Lm9yZ2FuaXphdGlvbi5lcnJvci51c2Vybm90Zm91bmQnfHRyYW5zbGF0ZX19PC9zcGFuPlxuICAgICAgICA8c3BhblxuICAgICAgICAgICpuZ0lmPVwiIWl0ZW0uZmlyc3RuYW1lPy5sZW5ndGggJiYgIWl0ZW0ubGFzdG5hbWU/Lmxlbmd0aCAmJiBpdGVtLmFjdGl2ZSAmJiBpdGVtLnR5cGUgIT09ICdncm91cCdcIj4oe3tpdGVtLm5hbWV9fSk8L3NwYW4+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiIWl0ZW0uZmlyc3RuYW1lPy5sZW5ndGggJiYgaXRlbS5sYXN0bmFtZT8ubGVuZ3RoXCI+e3tpdGVtLmxhc3RuYW1lfX0gKHt7aXRlbS5uYW1lfX0pPC9zcGFuPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIml0ZW0uZmlyc3RuYW1lPy5sZW5ndGggJiYgIWl0ZW0ubGFzdG5hbWU/Lmxlbmd0aFwiPnt7aXRlbS5maXJzdG5hbWV9fSAoe3tpdGVtLm5hbWV9fSk8L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuXG4gIDwveXZjLWF1dG9jb21wbGV0ZT5cbjwvZGl2PlxuIl19
|
|
236
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JnYW5pemF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tZnJhbWV3b3JrL2Zvcm0tZWxlbWVudHMvb3JnYW5pemF0aW9uL29yZ2FuaXphdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay9mb3JtLWVsZW1lbnRzL29yZ2FuaXphdGlvbi9vcmdhbml6YXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxZQUFZLEVBQ1osVUFBVSxFQUNWLFdBQVcsRUFDWCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXVCLGFBQWEsRUFBRSxpQkFBaUIsRUFBWSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pHLE9BQU8sRUFBK0QsS0FBSyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBRWpHLE9BQU8sRUFBQyxRQUFRLElBQUksa0JBQWtCLEVBQUUsRUFBRSxJQUFJLFlBQVksRUFBZSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7QUEwQnRGLE1BQU0sT0FBTyxxQkFBcUI7SUE2QmhDLElBQWEsaUJBQWlCLENBQUMsQ0FBVTtRQUN2QyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQzdFLENBQUM7SUFDRCxJQUFJLGlCQUFpQjtRQUNuQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQTtJQUNoQyxDQUFDO0lBR0QsSUFBYSxRQUFRLENBQUMsQ0FBVTtRQUM5QixJQUFJLENBQUMsU0FBUyxH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QXVDQTsyRkRBYSxxQkFBcUI7a0JBakJqQyxTQUFTOytCQUNFLGlCQUFpQixhQUdoQjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxzQkFBc0IsQ0FBQzs0QkFDcEQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLGFBQWE7NEJBQ3RCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHNCQUFzQixDQUFDOzRCQUNwRCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjswTEFJMEIsaUJBQWlCO3NCQUEzQyxTQUFTO3VCQUFDLGNBQWM7Z0JBVU0sU0FBUztzQkFBdkMsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBRzdCLGVBQWU7c0JBRGQsTUFBTTtnQkFJUCxpQkFBaUI7c0JBRGhCLE1BQU07Z0JBWU0saUJBQWlCO3NCQUE3QixLQUFLO2dCQU9HLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDTyxRQUFRO3NCQUFwQixLQUFLO2dCQU1PLFFBQVE7c0JBQXBCLEtBQUs7Z0JBS0csV0FBVztzQkFBbkIsS0FBSztnQkFFRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRDaGVja2VkLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgZm9yd2FyZFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SLCBWYWxpZGF0b3J9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7QmFja2VuZFNlcnZpY2UsIFN5c3RlbVNlcnZpY2UsIFRyYW5zbGF0ZVNlcnZpY2UsIFVzZXJTZXJ2aWNlLCBVdGlsc30gZnJvbSAnQGVvLXNkay9jb3JlJztcbmltcG9ydCB7QXV0b0NvbXBsZXRlfSBmcm9tICdAeXV1dmlzL2NvbXBvbmVudHMvYXV0b2NvbXBsZXRlJztcbmltcG9ydCB7Zm9ya0pvaW4gYXMgb2JzZXJ2YWJsZUZvcmtKb2luLCBvZiBhcyBvYnNlcnZhYmxlT2YsIFN1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgT3JnYW5pemF0aW9uRmlsdGVyIHtcbiAgdHlwZT86IHN0cmluZzsgICAgICAgIC8vIFRoZSB0eXBlIG9mIHRoZSBvcmdhbml6YXRpb24gdW5pdCAoJ1VTRVInIG9yICdHUk9VUCcpIHRvIGJlIGRpc3BsYXllZFxuICBncm91cHM/OiBzdHJpbmdbXTsgICAgLy8gYW4gYXJyYXkgb2YgZ3JvdXAgbmFtZXMgdG8gZmlsdGVyIGF1dG9jb21wbGV0ZSByZXN1bHRzIHdpdGhcbiAgcm9sZXM/OiBzdHJpbmdbXTsgICAgIC8vIGFuIGFycmF5IG9mIHJvbGUgbmFtZXMgdG8gZmlsdGVyIGF1dG9jb21wbGV0ZSByZXN1bHRzIHdpdGhcbiAgYWN0aXZlb25seT86IGJvb2xlYW47IC8vIHdoZXRoZXIgb3Igbm90IHRvIGZldGNoIG9ubHkgYWN0aXZlIG9yZ2FuaXphdGlvbiBvYmplY3RzXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VvLW9yZ2FuaXphdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9vcmdhbml6YXRpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9vcmdhbml6YXRpb24uY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBPcmdhbml6YXRpb25Db21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBPcmdhbml6YXRpb25Db21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgT3JnYW5pemF0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEFmdGVyQ29udGVudENoZWNrZWQsIFZhbGlkYXRvciB7XG5cbiAgQFZpZXdDaGlsZCgnYXV0b2NvbXBsZXRlJykgYXV0b0NvbXBsZXRlSW5wdXQ6IEF1dG9Db21wbGV0ZTtcblxuICBpY29uID0ge1xuICAgIHVzZXI6ICc8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIC05NjAgOTYwIDk2MFwiIHdpZHRoPVwiMjBcIj48cGF0aCBkPVwiTTQ4MC00ODBxLTYwIDAtMTAyLTQydC00Mi0xMDJxMC02MCA0Mi0xMDJ0MTAyLTQycTYwIDAgMTAyIDQydDQyIDEwMnEwIDYwLTQyIDEwMnQtMTAyIDQyWk0xOTItMTkydi05NnEwLTIzIDEyLjUtNDMuNVQyMzktMzY2cTU1LTMyIDExNi41LTQ5VDQ4MC00MzJxNjMgMCAxMjQuNSAxN1Q3MjEtMzY2cTIyIDEzIDM0LjUgMzR0MTIuNSA0NHY5NkgxOTJaXCIvPjwvc3ZnPicsXG4gICAgZ3JvdXA6ICc8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIC05NjAgOTYwIDk2MFwiIHdpZHRoPVwiMjBcIj48cGF0aCBkPVwiTTk2LTE5MnYtOTJxMC0yNiAxMi41LTQ3LjVUMTQzLTM2NnE1NC0zMiAxMTQuNS00OVQzODQtNDMycTY2IDAgMTI2LjUgMTdUNjI1LTM2NnEyMiAxMyAzNC41IDM0LjVUNjcyLTI4NHY5Mkg5NlptNjQ4IDB2LTkycTAtNDItMTkuNS03OFQ2NzItNDIxcTM5IDggNzUuNSAyMS41VDgxNy0zNjZxMjIgMTMgMzQuNSAzNC41VDg2NC0yODR2OTJINzQ0Wk0zODQtNDgwcS02MCAwLTEwMi00MnQtNDItMTAycTAtNjAgNDItMTAydDEwMi00MnE2MCAwIDEwMiA0MnQ0MiAxMDJxMCA2MC00MiAxMDJ0LTEwMiA0MlptMzM2LTE0NHEwIDYwLTQyIDEwMnQtMTAyIDQycS04IDAtMTUtLjV0LTE1LTIuNXEyNS0yOSAzOS41LTY0LjVUNjAwLTYyNHEwLTQxLTE0LjUtNzYuNVQ1NDYtNzY1cTgtMiAxNS0yLjV0MTUtLjVxNjAgMCAxMDIgNDJ0NDIgMTAyWlwiLz48L3N2Zz4nXG4gIH1cblxuICByZW1vdGVVcmwgPSAnL29yZ2FuaXphdGlvbi9xdWVyeT9xPSc7XG4gIG1pbkxlbmd0aCA9IDI7XG4gIHdpbGRDYXJkID0gJyonO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnJlYWRvbmx5JykgX3JlYWRvbmx5OiBib29sZWFuO1xuXG4gIEBPdXRwdXQoKVxuICBvblZhbHVlUmVzb2x2ZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIC8vIGVtaXR0ZWQgd2hlbiB2YWx1ZSBjaGFuZ2VkIGhvbGRpbmcgdGhlIHJlc29sdmVkIGRhdGFfbWV0YVxuICBAT3V0cHV0KClcbiAgb25EYXRhTWV0YUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgYXV0b2NvbXBsZXRlUmVzOiBhbnlbXTtcbiAgLy8gbW9kZWwgdmFsdWVcbiAgdmFsdWU7XG4gIGN1cnJlbnRVc2VySWQ6IHN0cmluZztcbiAgLy8gaW5uZXIgbmctbW9kZWwgdmFsdWVcbiAgaW5uZXJWYWx1ZTogYW55W10gPSBbXTtcbiAgZXJyb3I6IGFueSA9IHt9O1xuICBkZWxldGVkSXRlbUlEOiBzdHJpbmc7XG4gIHByaXZhdGUgX3JlbW92ZUN1cnJlbnRVc2VyOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNldCByZW1vdmVDdXJyZW50VXNlcihiOiBib29sZWFuKSB7XG4gICAgdGhpcy5fcmVtb3ZlQ3VycmVudFVzZXIgPSBiO1xuICAgIHRoaXMuY3VycmVudFVzZXJJZCA9IGIgPyB0aGlzLnVzZXJTZXJ2aWNlLmdldEN1cnJlbnRVc2VyKCk/LmlkIDogdW5kZWZpbmVkO1xuICB9XG4gIGdldCByZW1vdmVDdXJyZW50VXNlcigpIHtcbiAgICByZXR1cm4gdGhpcy5fcmVtb3ZlQ3VycmVudFVzZXJcbiAgfVxuICBASW5wdXQoKSBzaXR1YXRpb246IHN0cmluZztcbiAgQElucHV0KCkgbXVsdGlzZWxlY3Q6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHNldCByZWFkb25seShyOiBib29sZWFuKSB7XG4gICAgdGhpcy5fcmVhZG9ubHkgPSByO1xuICB9XG4gIGdldCByZWFkb25seSgpIHtcbiAgICByZXR1cm4gdGhpcy5fcmVhZG9ubHk7XG4gIH1cbiAgQElucHV0KCkgc2V0IGRhdGFNZXRhKGRNOiBhbnkpIHtcbiAgICBpZiAoZE0pIHtcbiAgICAgIHRoaXMuaW5uZXJWYWx1ZSA9IEFycmF5LmlzQXJyYXkoZE0pID8gZE0gOiBbZE1dO1xuICAgIH1cbiAgfVxuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nO1xuICAvLyBsaXN0IG9mIHZhbHVlcyB0aGF0IHNob3VsZCBub3QgYmUgc2VsZWN0YWJsZVxuICBASW5wdXQoKSBleGNlcHRpb25zOiBzdHJpbmdbXSA9IFtdO1xuICBASW5wdXQoKSBmaWx0ZXJPYmplY3Q6IE9yZ2FuaXphdGlvbkZpbHRlcjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGJhY2tlbmQ6IEJhY2tlbmRTZXJ2aWNlLFxuICAgIHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgc3lzdGVtU2VydmljZTogU3lzdGVtU2VydmljZSxcbiAgICBwdWJsaWMgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlLFxuICApIHsgfVxuXG4gIHB1YmxpYyB2YWxpZGF0ZSgpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgYnVpbGRBdXRvY29tcGxldGVVcmkocXVlcnk6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3QgcGFyYW1zID0ge1xuICAgICAgcTogcXVlcnksXG4gICAgICBhY3RpdmVvbmx5OiAodGhpcy5zaXR1YXRpb24gIT09ICdTRUFSQ0gnKSA/ICd0cnVlJyA6ICdmYWxzZScsXG4gICAgICBkZXRhaWxzOiB0cnVlXG4gICAgfTtcblxuICAgIGlmICh0aGlzLmZpbHRlck9iamVjdCkge1xuICAgICAgaWYgKHRoaXMuZmlsdGVyT2JqZWN0LnR5cGUpIHtcbiAgICAgICAgcGFyYW1zWydzY29wZSddID0gdGhpcy5maWx0ZXJPYmplY3QudHlwZTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmZpbHRlck9iamVjdC5ncm91cHMpIHtcbiAgICAgICAgcGFyYW1zWydncm91cGZpbHRlciddID0gdGhpcy5maWx0ZXJPYmplY3QuZ3JvdXBzO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuZmlsdGVyT2JqZWN0LnJvbGVzKSB7XG4gICAgICAgIHBhcmFtc1sncm9sZWZpbHRlciddID0gdGhpcy5maWx0ZXJPYmplY3Qucm9sZXM7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5maWx0ZXJPYmplY3QuaGFzT3duUHJvcGVydHkoJ2FjdGl2ZW9ubHknKSkge1xuICAgICAgICBwYXJhbXNbJ2FjdGl2ZW9ubHknXSA9IHRoaXMuZmlsdGVyT2JqZWN0LmFjdGl2ZW9ubHkgPyAndHJ1ZScgOiAnZmFsc2UnO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gVXRpbHMuYnVpbGRVcmkoJy9vcmdhbml6YXRpb24vcXVlcnknLCBwYXJhbXMpO1xuICB9XG5cbiAgcHJvcGFnYXRlQ2hhbmdlID0gKF86IGFueSkgPT4ge1xuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICB0aGlzLnJlc29sdmVGbih2YWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmFsdWUgPSBudWxsO1xuICAgICAgdGhpcy5pbm5lclZhbHVlID0gW107XG4gICAgfVxuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgfVxuXG4gIHByaXZhdGUgcHJvcGFnYXRlKCkge1xuICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlKHRoaXMudmFsdWUpO1xuICAgIHRoaXMub25EYXRhTWV0YUNoYW5nZWQuZW1pdCh0aGlzLmlubmVyVmFsdWUpO1xuICB9XG5cbiAgYXV0b2NvbXBsZXRlRm4odGVybTogc3RyaW5nKSB7XG4gICAgaWYgKHRlcm0ubGVuZ3RoID49IHRoaXMubWluTGVuZ3RoIHx8IHRlcm0gPT09IHRoaXMud2lsZENhcmQpIHtcbiAgICAgIGlmICh0aGlzLm11bHRpc2VsZWN0IHx8ICghdGhpcy5tdWx0aXNlbGVjdCAmJiB0aGlzLmlubmVyVmFsdWUubGVuZ3RoID09PSAwKSkge1xuICAgICAgICB0aGlzLmJhY2tlbmQuZ2V0SnNvbih0aGlzLmJ1aWxkQXV0b2NvbXBsZXRlVXJpKHRlcm0pKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKHJlcykgPT4ge1xuICAgICAgICAgICAgLy8gYXV0b2NvbXBsZXRlIHZhbHVlcyBzaG91bGQgYmUgdW5pcXVlIGFuZCBub3QgcGFydCBvZiB0aGUgZXhjZXB0aW9uc1xuICAgICAgICAgICAgdGhpcy5hdXRvY29tcGxldGVSZXMgPSByZXMuZmlsdGVyKHYgPT4gKCF0aGlzLnZhbHVlIHx8IHRoaXMudmFsdWUuaW5kZXhPZih2Lm5hbWUpID09PSAtMSkgJiYgdGhpcy5leGNlcHRpb25zLmluZGV4T2Yodi5uYW1lKSA9PT0gLTEgJiYgKCF0aGlzLnJlbW92ZUN1cnJlbnRVc2VyIHx8IHRoaXMuY3VycmVudFVzZXJJZCAhPT0gdi5pZCkpXG4gICAgICAgICAgICAgIC5zb3J0KFV0aWxzLnNvcnRWYWx1ZXMoJ3RpdGxlJykpLnNsaWNlKDAsIDEwKTtcbiAgICAgICAgICB9LFxuICAgICAgICAgICAgVXRpbHMudGhyb3cobnVsbCxcbiAgICAgICAgICAgICAgdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8uZm9ybS5wcm9wZXJ0eS5vcmdhbml6YXRpb24ucmVxdWVzdC5lcnJvci50aXRsZScpLFxuICAgICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby5mb3JtLnByb3BlcnR5Lm9yZ2FuaXphdGlvbi5yZXF1ZXN0LmVycm9yLm1zZycpXG4gICAgICAgICAgICApXG4gICAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuYXV0b2NvbXBsZXRlUmVzID0gW107XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuYXV0b2NvbXBsZXRlUmVzID0gW107XG4gICAgfVxuICB9XG5cbiAgcmVzb2x2ZUZuKHZhbHVlOiBhbnkpOiBTdWJzY3JpcHRpb24ge1xuICAgIGxldCB2YWx1ZXNBcnJheSA9IFtdO1xuICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIEFycmF5KSB7XG4gICAgICB2YWx1ZS5mb3JFYWNoKHYgPT4ge1xuICAgICAgICBpZiAodiBpbnN0YW5jZW9mIEFycmF5KSB7XG4gICAgICAgICAgdmFsdWVzQXJyYXkgPSB2YWx1ZXNBcnJheS5jb25jYXQodik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdmFsdWVzQXJyYXkucHVzaCh2KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHZhbHVlc0FycmF5ID0gW3ZhbHVlXTtcbiAgICB9XG5cbiAgICBsZXQgbWFwID0gdmFsdWVzQXJyYXkubWFwKHYgPT4ge1xuICAgICAgbGV0IG1hdGNoID0gdGhpcy5pbm5lclZhbHVlLmZpbmQoaXYgPT4gaXYubmFtZSA9PT0gdik7XG4gICAgICByZXR1cm4gbWF0Y2ggPyBvYnNlcnZhYmxlT2YobWF0Y2gpIDogdGhpcy5zeXN0ZW1TZXJ2aWNlLmdldE9yZ2FuaXphdGlvbk9iamVjdCh2KTtcbiAgICB9KTtcblxuICAgIGlmIChtYXAubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLmlubmVyVmFsdWUgPSBbXTtcbiAgICAgIHRoaXMub25WYWx1ZVJlc29sdmVkLmVtaXQodGhpcy5pbm5lclZhbHVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG9ic2VydmFibGVGb3JrSm9pbihtYXApLnN1YnNjcmliZShkYXRhID0+IHtcbiAgICAgICAgdGhpcy5pbm5lclZhbHVlID0gZGF0YTtcbiAgICAgICAgdGhpcy5vblZhbHVlUmVzb2x2ZWQuZW1pdCh0aGlzLmlubmVyVmFsdWUpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLy8gaGFuZGxlIHNlbGVjdGlvbiBjaGFuZ2VzIHRvIHRoZSBtb2RlbFxuICBvblVuc2VsZWN0KHZhbHVlKSB7XG4gICAgdGhpcy5pbm5lclZhbHVlID0gdGhpcy5pbm5lclZhbHVlLmZpbHRlcih2ID0+IHYubmFtZSAhPT0gdmFsdWUubmFtZSk7XG4gICAgbGV0IF92YWx1ZSA9IHRoaXMuaW5uZXJWYWx1ZS5tYXAodiA9PiB2Lm5hbWUpO1xuICAgIHRoaXMudmFsdWUgPSB0aGlzLm11bHRpc2VsZWN0ID8gX3ZhbHVlIDogbnVsbDtcbiAgICBpZiAoIXRoaXMubXVsdGlzZWxlY3QpIHtcbiAgICAgIHRoaXMuY2xlYXJJbm5lcklucHV0KCk7XG4gICAgfVxuICAgIHRoaXMuYXV0b0NvbXBsZXRlSW5wdXQuZm9jdXNJbnB1dCgpO1xuICAgIHRoaXMucHJvcGFnYXRlKCk7XG4gIH1cblxuICAvLyBoYW5kbGUgc2VsZWN0aW9uIGNoYW5nZXMgdG8gdGhlIG1vZGVsXG4gIG9uU2VsZWN0KHZhbHVlKSB7XG4gICAgaWYgKHRoaXMubXVsdGlzZWxlY3QpIHtcbiAgICAgIHRoaXMudmFsdWUgPSB0aGlzLmlubmVyVmFsdWUubWFwKHYgPT4gdi5uYW1lKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gaW50ZXJuYWwgYXV0b2NvbXBsZXRlIGNvbnRyb2wgaXMgYWx3YXlzIHNldCB0byBtdWx0aXNlbGVjdFxuICAgICAgLy8gc28gdGhlIHJlc29sdmVkIHZhbHVlIGlzIGFsd2F5cyBhbiBhcnJheVxuICAgICAgdGhpcy52YWx1ZSA9IHRoaXMuaW5uZXJWYWx1ZVswXS5uYW1lO1xuICAgIH1cbiAgICB0aGlzLnByb3BhZ2F0ZSgpO1xuICB9XG5cbiAgb25BdXRvQ29tcGxldGVCbHVyKCkge1xuICAgIHRoaXMuY2xlYXJJbm5lcklucHV0KCk7XG4gIH1cblxuICBwcml2YXRlIGNsZWFySW5uZXJJbnB1dCgpIHtcbiAgICB0aGlzLmF1dG9Db21wbGV0ZUlucHV0LmNsZWFySW5wdXQoKTtcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50Q2hlY2tlZCgpIHtcbiAgICBpZiAodGhpcy5zaXR1YXRpb24gPT09ICdTRUFSQ0gnKSB7XG4gICAgICB0aGlzLm11bHRpc2VsZWN0ID0gdHJ1ZTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJlby1vcmdhbml6YXRpb25cIiBbbmdDbGFzc109XCJ7YWNJbnB1dEhpZGRlbjogIW11bHRpc2VsZWN0ICYmIGlubmVyVmFsdWUubGVuZ3RofVwiPlxuXG4gIDx5dmMtYXV0b2NvbXBsZXRlIFsobmdNb2RlbCldPVwiaW5uZXJWYWx1ZVwiICNhdXRvY29tcGxldGUgKHN1Z2dlc3Rpb25TZWxlY3QpPVwib25TZWxlY3QoJGV2ZW50KVwiXG4gICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCIgKHN1Z2dlc3Rpb25VbnNlbGVjdCk9XCJvblVuc2VsZWN0KCRldmVudClcIiAoYmx1cik9XCJvbkF1dG9Db21wbGV0ZUJsdXIoKVwiXG4gICAgW2Rpc2FibGVkXT1cInJlYWRvbmx5XCIgW2F1dG9jb21wbGV0ZVZhbHVlc109XCJhdXRvY29tcGxldGVSZXNcIiBmaWVsZD1cImlkXCJcbiAgICBbZm9yY2VTZWxlY3Rpb25dPVwidHJ1ZVwiXG4gICAgKGF1dG9jb21wbGV0ZUZuYyk9XCJhdXRvY29tcGxldGVGbigkZXZlbnQpXCIgW211bHRpcGxlXT1cInRydWVcIj5cblxuICAgIDxuZy10ZW1wbGF0ZSAjYXV0b2NvbXBsZXRlT3B0aW9uVGVtcGxhdGUgbGV0LWl0ZW0+XG4gICAgICA8ZGl2IGNsYXNzPVwib3JnLWl0ZW1cIj5cbiAgICAgICAgPHl2Yy1pY29uIFtzdmddPVwiaXRlbS50eXBlID09PSAnZ3JvdXAnID8gIGljb24uZ3JvdXAgOiBpY29uLnVzZXJcIj48L3l2Yy1pY29uPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIihpdGVtLmZpcnN0bmFtZT8ubGVuZ3RoICYmIGl0ZW0ubGFzdG5hbWU/Lmxlbmd0aCkgfHwgaXRlbS50eXBlID09PSAnZ3JvdXAnXCI+e3tpdGVtLnRpdGxlfX1cbiAgICAgICAgICAoe3tpdGVtLm5hbWV9fSk8L3NwYW4+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiIWl0ZW0uZmlyc3RuYW1lPy5sZW5ndGggJiYgIWl0ZW0ubGFzdG5hbWU/Lmxlbmd0aCAmJiBpdGVtLnR5cGUgIT09ICdncm91cCdcIj4oe3tpdGVtLm5hbWV9fSk8L3NwYW4+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiIWl0ZW0uZmlyc3RuYW1lPy5sZW5ndGggJiYgaXRlbS5sYXN0bmFtZT8ubGVuZ3RoXCI+e3tpdGVtLmxhc3RuYW1lfX0gKHt7aXRlbS5uYW1lfX0pPC9zcGFuPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIml0ZW0uZmlyc3RuYW1lPy5sZW5ndGggJiYgIWl0ZW0ubGFzdG5hbWU/Lmxlbmd0aFwiPnt7aXRlbS5maXJzdG5hbWV9fSAoe3tpdGVtLm5hbWV9fSk8L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgPG5nLXRlbXBsYXRlICNjaGlwVGVtcGxhdGUgbGV0LWl0ZW0+XG4gICAgICA8ZGl2IGNsYXNzPVwib3JnLWl0ZW1cIiAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOyAkZXZlbnQucHJldmVudERlZmF1bHQoKVwiPlxuICAgICAgICA8eXZjLWljb24gW3N2Z109XCJpdGVtLnR5cGUgPT09ICdncm91cCcgPyAgaWNvbi5ncm91cCA6IGljb24udXNlclwiPjwveXZjLWljb24+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgKm5nSWY9XCIoaXRlbS5maXJzdG5hbWU/Lmxlbmd0aCAmJiBpdGVtLmxhc3RuYW1lPy5sZW5ndGggJiYgaXRlbS5hY3RpdmUpIHx8IGl0ZW0udHlwZSA9PT0gJ2dyb3VwJ1wiPnt7aXRlbS50aXRsZX19XG4gICAgICAgICAgKHt7aXRlbS5uYW1lfX0pPC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImluYWN0aXZlXCJcbiAgICAgICAgICAqbmdJZj1cIihpdGVtLmZpcnN0bmFtZT8ubGVuZ3RoICYmIGl0ZW0ubGFzdG5hbWU/Lmxlbmd0aCAmJiAhaXRlbS5hY3RpdmUpXCI+e3tpdGVtLnRpdGxlfX1cbiAgICAgICAgICAoe3tpdGVtLm5hbWV9fSk8L3NwYW4+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiKCFpdGVtLmZpcnN0bmFtZT8ubGVuZ3RoICYmICFpdGVtLmxhc3RuYW1lPy5sZW5ndGggJiYgIWl0ZW0uYWN0aXZlICYmICFpdGVtLnR5cGUpXCJcbiAgICAgICAgICBjbGFzcz1cImRlbGV0ZWQtdXNlci1sYWJlbFwiPnt7J2VvLmZvcm0ucHJvcGVydHkub3JnYW5pemF0aW9uLmVycm9yLnVzZXJub3Rmb3VuZCd8dHJhbnNsYXRlfX08L3NwYW4+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgKm5nSWY9XCIhaXRlbS5maXJzdG5hbWU/Lmxlbmd0aCAmJiAhaXRlbS5sYXN0bmFtZT8ubGVuZ3RoICYmIGl0ZW0uYWN0aXZlICYmIGl0ZW0udHlwZSAhPT0gJ2dyb3VwJ1wiPih7e2l0ZW0ubmFtZX19KTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCIhaXRlbS5maXJzdG5hbWU/Lmxlbmd0aCAmJiBpdGVtLmxhc3RuYW1lPy5sZW5ndGhcIj57e2l0ZW0ubGFzdG5hbWV9fSAoe3tpdGVtLm5hbWV9fSk8L3NwYW4+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiaXRlbS5maXJzdG5hbWU/Lmxlbmd0aCAmJiAhaXRlbS5sYXN0bmFtZT8ubGVuZ3RoXCI+e3tpdGVtLmZpcnN0bmFtZX19ICh7e2l0ZW0ubmFtZX19KTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgPC95dmMtYXV0b2NvbXBsZXRlPlxuPC9kaXY+XG4iXX0=
|