tin-spa 2.9.0 → 2.9.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/components/table/detailsDialog.component.mjs +17 -3
- package/esm2020/lib/components/table-action/table-action.component.mjs +2 -2
- package/esm2020/lib/components/table-internal/detailsDialog-internal.component.mjs +17 -3
- package/esm2020/lib/components/table-lite/detailsDialog-lite.component.mjs +17 -3
- package/esm2020/lib/pages/roles/roles.component.mjs +19 -3
- package/esm2020/lib/services/button.service.mjs +20 -7
- package/esm2020/lib/services/datalib.service.mjs +3 -2
- package/fesm2015/tin-spa.mjs +71 -16
- package/fesm2015/tin-spa.mjs.map +1 -1
- package/fesm2020/tin-spa.mjs +88 -16
- package/fesm2020/tin-spa.mjs.map +1 -1
- package/lib/pages/roles/roles.component.d.ts +1 -0
- package/lib/services/button.service.d.ts +1 -2
- package/package.json +1 -1
|
@@ -132,7 +132,7 @@ export class DataServiceLib {
|
|
|
132
132
|
columns: [
|
|
133
133
|
{ name: 'name', type: 'text' },
|
|
134
134
|
{ name: 'description', type: 'text' },
|
|
135
|
-
{ name: 'departmentName', type: '
|
|
135
|
+
{ name: 'departmentName', type: 'chip', detailsConfig: this.departmentDetailsConfig, alias: 'Department' },
|
|
136
136
|
],
|
|
137
137
|
buttons: [
|
|
138
138
|
{ name: 'create', display: 'Create', dialog: true, action: { url: 'positions?action=create', method: 'post' } },
|
|
@@ -621,6 +621,7 @@ export class DataServiceLib {
|
|
|
621
621
|
this.capApprovals.display = "Approvals";
|
|
622
622
|
this.capApprovals.link = "home/admin/approvals";
|
|
623
623
|
this.capApprovals.icon = "rule";
|
|
624
|
+
this.capApprovals.isBool = true;
|
|
624
625
|
this.capApprovalsConfig.name = "cap22";
|
|
625
626
|
this.capApprovalsConfig.display = "Approvals Config";
|
|
626
627
|
this.capApprovalsConfig.link = "home/admin/approvals-config";
|
|
@@ -778,4 +779,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
778
779
|
providedIn: 'root'
|
|
779
780
|
}]
|
|
780
781
|
}], ctorParameters: function () { return [{ type: i1.HttpService }, { type: i2.Router }, { type: i2.ActivatedRoute }]; } });
|
|
781
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWxpYi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL3NlcnZpY2VzL2RhdGFsaWIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBdUIsU0FBUyxFQUFVLE9BQU8sRUFBZ0QsTUFBTSxvQkFBb0IsQ0FBQztBQUNuSSxPQUFPLEVBQUUsZUFBZSxFQUFjLEVBQUUsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7QUFRNUQsTUFBTSxPQUFPLGNBQWM7SUFFekIsWUFBb0IsV0FBd0IsRUFBUyxNQUFjLEVBQVUsS0FBcUI7UUFBOUUsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFrSWxHLGNBQVMsR0FBRyxJQUFJLFNBQVMsRUFBRSxDQUFDO1FBQ3BCLG9CQUFlLEdBQUcsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3ZELG9CQUFlLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQU03RCxZQUFPLEdBQUcsSUFBSSxPQUFPLENBQUM7UUFDdEIsYUFBUSxHQUFHLElBQUksT0FBTyxDQUFDO1FBQ3ZCLGFBQVEsR0FBRyxJQUFJLE9BQU8sQ0FBQztRQUN2QixhQUFRLEdBQUcsSUFBSSxPQUFPLENBQUM7UUFDdkIsWUFBTyxHQUFHLElBQUksT0FBTyxDQUFDO1FBQ3RCLGdCQUFXLEdBQUcsSUFBSSxPQUFPLENBQUM7UUFFMUIsbUJBQWMsR0FBRyxJQUFJLE9BQU8sQ0FBQztRQUM3QixlQUFVLEdBQUcsSUFBSSxPQUFPLENBQUM7UUFDekIsa0JBQWEsR0FBRyxJQUFJLE9BQU8sQ0FBQztRQUM1QixhQUFRLEdB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RUEsUUFBUSxDQUFDLElBQUksRUFBRSxNQUFjO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsZUFBZSxNQUFNLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRU0sT0FBTyxDQUFDLElBQUk7UUFDakIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVNLE9BQU8sQ0FBQyxFQUFVLEVBQUUsR0FBVztRQUNwQyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFJRCxNQUFNO0lBQ0MsTUFBTSxDQUFDLEVBQVUsRUFBRSxHQUFXO1FBQ25DLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUdELFVBQVU7SUFDSCxVQUFVLENBQUMsRUFBVSxFQUFFLEdBQVc7UUFDdkMsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRU0sYUFBYSxDQUFDLE9BQU8sRUFBRSxNQUFjO1FBQzFDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLE1BQU0sRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3BFLENBQUM7OzJHQXo2QlUsY0FBYzsrR0FBZCxjQUFjLGNBRmIsTUFBTTsyRkFFUCxjQUFjO2tCQUgxQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFjdGlvbiwgQXBpUmVzcG9uc2UsIEFwcENvbmZpZywgQnV0dG9uLCBDYXBJdGVtLCBEZXRhaWxzRGlhbG9nQ29uZmlnLCBGb3JtQ29uZmlnLCBUYWJsZUNvbmZpZyB9IGZyb20gJy4uL2NsYXNzZXMvQ2xhc3Nlcyc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgb2YsIHRhcCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBIdHRwU2VydmljZSB9IGZyb20gJy4vaHR0cC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuLi9jbGFzc2VzL0xpYkNsYXNzZXMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRGF0YVNlcnZpY2VMaWIge1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHBTZXJ2aWNlOiBIdHRwU2VydmljZSwgcHVibGljIHJvdXRlcjogUm91dGVyLCBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSkge1xyXG5cclxuICAgIHRoaXMuYXBwQ29uZmlnLmFwcE5hbWUgPSBcIkFwcC1OYW1lXCI7XHJcbiAgICB0aGlzLmFwcENvbmZpZy5sb2dvID0gXCIuL2Fzc2V0cy9sb2dvLnBuZ1wiXHJcbiAgICB0aGlzLmFwcENvbmZpZy5BREF1dGggPSB0cnVlO1xyXG5cclxuICAgIHRoaXMuYXBwQ29uZmlnLmNhcEl0ZW1zID0gW3RoaXMuY2FwTXVsdGl0ZW5hbnQsIHRoaXMuY2FwQWRtaW4sIHRoaXMuY2FwSG9tZV07XHJcblxyXG5cclxuICAgIHRoaXMuY2FwSG9tZS5uYW1lID0gXCJjYXAxXCI7XHJcbiAgICB0aGlzLmNhcEhvbWUuZGlzcGxheSA9IFwiSG9tZVwiO1xyXG4gICAgdGhpcy5jYXBIb21lLmxpbmsgPSBcImhvbWVcIjtcclxuICAgIHRoaXMuY2FwSG9tZS5pY29uID1cImhvbWVcIjtcclxuXHJcblxyXG4gICAgdGhpcy5jYXBBZG1pbi5uYW1lID0gXCJjYXAyXCI7XHJcbiAgICB0aGlzLmNhcEFkbWluLmRpc3BsYXkgPSBcIkFkbWluXCI7XHJcbiAgICB0aGlzLmNhcEFkbWluLmljb24gPSBcInNlY3VyaXR5XCJcclxuICAgIHRoaXMuY2FwQWRtaW4uY2FwU3ViSXRlbXMgPSBbdGhpcy5jYXBVc2VycywgdGhpcy5jYXBSb2xlcywgdGhpcy5jYXBMb2dzLCB0aGlzLmNhcFNldHRpbmdzLCB0aGlzLmNhcEFwcHJvdmFsc0NvbmZpZ107XHJcblxyXG4gICAgdGhpcy5jYXBVc2Vycy5uYW1lID0gXCJjYXAzXCI7XHJcbiAgICB0aGlzLmNhcFVzZXJzLmRpc3BsYXkgPSBcIlVzZXJzXCI7XHJcbiAgICB0aGlzLmNhcFVzZXJzLmxpbmsgPSBcImhvbWUvYWRtaW4vdXNlcnNcIjtcclxuICAgIHRoaXMuY2FwVXNlcnMuaWNvbiA9IFwiZ3JvdXBcIjtcclxuXHJcbiAgICB0aGlzLmNhcFJvbGVzLm5hbWUgPSBcImNhcDRcIlxyXG4gICAgdGhpcy5jYXBSb2xlcy5kaXNwbGF5ID0gXCJSb2xlc1wiO1xyXG4gICAgdGhpcy5jYXBSb2xlcy5saW5rID0gXCJob21lL2FkbWluL3JvbGVzXCI7XHJcbiAgICB0aGlzLmNhcFJvbGVzLmljb24gPSBcIndvcmtcIjtcclxuXHJcbiAgICB0aGlzLmNhcExvZ3MubmFtZSA9IFwiY2FwNVwiXHJcbiAgICB0aGlzLmNhcExvZ3MuZGlzcGxheSA9IFwiTG9nc1wiO1xyXG4gICAgdGhpcy5jYXBMb2dzLmxpbmsgPSBcImhvbWUvYWRtaW4vbG9nc1wiO1xyXG4gICAgdGhpcy5jYXBMb2dzLmljb24gPSBcInRleHRfc25pcHBldFwiO1xyXG5cclxuICAgIHRoaXMuY2FwU2V0dGluZ3MubmFtZSA9IFwiY2FwNlwiXHJcbiAgICB0aGlzLmNhcFNldHRpbmdzLmRpc3BsYXkgPSBcIlNldHRpbmdzXCI7XHJcbiAgICB0aGlzLmNhcFNldHRpbmdzLmxpbmsgPSBcImhvbWUvYWRtaW4vc2V0dGluZ3NcIjtcclxuICAgIHRoaXMuY2FwU2V0dGluZ3MuaWNvbiA9XCJzZXR0aW5nc1wiO1xyXG5cclxuXHJcbiAgICB0aGlzLmNhcE11bHRpdGVuYW50Lm5hbWUgPSBcImNhcDdcIlxyXG4gICAgdGhpcy5jYXBNdWx0aXRlbmFudC5kaXNwbGF5ID0gXCJNdWx0aXRlbmFudFwiO1xyXG4gICAgdGhpcy5jYXBNdWx0aXRlbmFudC5pY29uID0gXCJhcGFydG1lbnRcIlxyXG4gICAgdGhpcy5jYXBNdWx0aXRlbmFudC5jYXBTdWJJdGVtcyA9IFt0aGlzLmNhcFRlbmFudHMsIHRoaXMuY2FwTWVtYmVyc2hpcCwgdGhpcy5jYXBQbGFucyBdO1xyXG5cclxuICAgIHRoaXMuY2FwVGVuYW50cy5uYW1lID0gXCJjYXA4XCJcclxuICAgIHRoaXMuY2FwVGVuYW50cy5kaXNwbGF5ID0gXCJUZW5hbnRzXCI7XHJcbiAgICB0aGlzLmNhcFRlbmFudHMubGluayA9IFwiaG9tZS9hZG1pbi90ZW5hbnRzXCI7XHJcblxyXG4gICAgdGhpcy5jYXBNZW1iZXJzaGlwLm5hbWUgPSBcImNhcDlcIlxyXG4gICAgdGhpcy5jYXBNZW1iZXJzaGlwLmRpc3BsYXkgPSBcIk1lbWJlcnNoaXBcIjtcclxuICAgIHRoaXMuY2FwTWVtYmVyc2hpcC5saW5rID0gXCJob21lL2FkbWluL21lbWJlcnNoaXBcIjtcclxuXHJcbiAgICB0aGlzLmNhcFBsYW5zLm5hbWUgPSBcImNhcDEwXCJcclxuICAgIHRoaXMuY2FwUGxhbnMuZGlzcGxheSA9IFwiUGxhbnNcIjtcclxuICAgIHRoaXMuY2FwUGxhbnMubGluayA9IFwiaG9tZS9hZG1pbi9wbGFuc1wiO1xyXG5cclxuXHJcbiAgICB0aGlzLmNhcEdlbmVyYWwubmFtZSA9IFwiY2FwMTFcIlxyXG4gICAgdGhpcy5jYXBHZW5lcmFsLmRpc3BsYXkgPSBcIkdlbmVyYWxcIjtcclxuICAgIHRoaXMuY2FwR2VuZXJhbC5jYXBTdWJJdGVtcyA9IFt0aGlzLmNhcE5vdGlmaWNhdGlvbnMsdGhpcy5jYXBBcHByb3ZhbHMsdGhpcy5jYXBDdXN0b21lcnMsIHRoaXMuY2FwSW52ZW50b3J5LCB0aGlzLmNhcEFjY291bnRzLCB0aGlzLmNhcFN1cHBsaWVycywgdGhpcy5jYXBUYXNrc107XHJcblxyXG4gICAgdGhpcy5jYXBOb3RpZmljYXRpb25zLm5hbWUgPSBcImNhcDFcIlxyXG4gICAgdGhpcy5jYXBOb3RpZmljYXRpb25zLmRpc3BsYXkgPSBcIk5vdGlmaWNhdGlvbnNcIjtcclxuICAgIHRoaXMuY2FwTm90aWZpY2F0aW9ucy5saW5rID0gXCJob21lL2FkbWluL25vdGlmaWNhdGlvbnNcIjtcclxuICAgIHRoaXMuY2FwTm90aWZpY2F0aW9ucy5pY29uID0gXCJub3RpZmljYXRpb25zXCJcclxuXHJcbiAgICB0aGlzLmNhcEN1c3RvbWVycy5uYW1lID0gXCJjYXAxMlwiXHJcbiAgICB0aGlzLmNhcEN1c3RvbWVycy5kaXNwbGF5ID0gXCJDdXN0b21lcnNcIjtcclxuICAgIHRoaXMuY2FwQ3VzdG9tZXJzLmxpbmsgPSBcImhvbWUvYWRtaW4vY3VzdG9tZXJzXCI7XHJcbiAgICB0aGlzLmNhcEN1c3RvbWVycy5pY29uID0gXCJncm91cFwiXHJcblxyXG4gICAgdGhpcy5jYXBJbnZlbnRvcnkubmFtZSA9IFwiY2FwMTNcIlxyXG4gICAgdGhpcy5jYXBJbnZlbnRvcnkuZGlzcGxheSA9IFwiSW52ZW50b3J5XCI7XHJcbiAgICB0aGlzLmNhcEludmVudG9yeS5saW5rID0gXCJob21lL2FkbWluL2ludmVudG9yeVwiO1xyXG4gICAgdGhpcy5jYXBJbnZlbnRvcnkuaWNvbiA9IFwic3RvcmVmcm9udFwiXHJcblxyXG4gICAgdGhpcy5jYXBBY2NvdW50cy5uYW1lID0gXCJjYXAxNFwiXHJcbiAgICB0aGlzLmNhcEFjY291bnRzLmRpc3BsYXkgPSBcIkFjY291bnRzXCI7XHJcbiAgICB0aGlzLmNhcEFjY291bnRzLmxpbmsgPSBcImhvbWUvYWRtaW4vYWNjb3VudHNcIjtcclxuICAgIHRoaXMuY2FwQWNjb3VudHMuaWNvbiA9IFwiYWNjb3VudF9iYWxhbmNlX3dhbGxldFwiXHJcblxyXG4gICAgdGhpcy5jYXBTdXBwbGllcnMubmFtZSA9IFwiY2FwMTVcIlxyXG4gICAgdGhpcy5jYXBTdXBwbGllcnMuZGlzcGxheSA9IFwiU3VwcGxpZXJzXCI7XHJcbiAgICB0aGlzLmNhcFN1cHBsaWVycy5saW5rID0gXCJob21lL2FkbWluL3N1cHBsaWVyc1wiO1xyXG4gICAgdGhpcy5jYXBTdXBwbGllcnMuaWNvbiA9IFwiZ3JvdXBzXCJcclxuXHJcbiAgICB0aGlzLmNhcFRhc2tzLm5hbWUgPSBcImNhcDE2XCJcclxuICAgIHRoaXMuY2FwVGFza3MuZGlzcGxheSA9IFwiVGFza3NcIjtcclxuICAgIHRoaXMuY2FwVGFza3MubGluayA9IFwiaG9tZS9hZG1pbi90YXNrc1wiO1xyXG4gICAgdGhpcy5jYXBUYXNrcy5pY29uID0gXCJjaGVja19ib3hcIlxyXG5cclxuXHJcbiAgICB0aGlzLmNhcEhSLm5hbWUgPSBcImNhcDE3XCJcclxuICAgIHRoaXMuY2FwSFIuZGlzcGxheSA9IFwiSFJcIjtcclxuICAgIHRoaXMuY2FwSFIubGluayA9IFwiaG9tZS9hZG1pbi9oclwiO1xyXG4gICAgdGhpcy5jYXBIUi5pY29uID0gXCJkaXZlcnNpdHlfM1wiXHJcbiAgICB0aGlzLmNhcEhSLmNhcFN1Ykl0ZW1zID0gW3RoaXMuY2FwRGVwYXJ0bWVudHMsIHRoaXMuY2FwUG9zaXRpb25zLCB0aGlzLmNhcEVtcGxveWVlcyxdXHJcblxyXG4gICAgdGhpcy5jYXBFbXBsb3llZXMubmFtZSA9IFwiY2FwMThcIlxyXG4gICAgdGhpcy5jYXBFbXBsb3llZXMuZGlzcGxheSA9IFwiRW1wbG95ZWVzXCI7XHJcbiAgICB0aGlzLmNhcEVtcGxveWVlcy5saW5rID0gXCJob21lL2FkbWluL2VtcGxveWVlc1wiO1xyXG4gICAgdGhpcy5jYXBFbXBsb3llZXMuaWNvbiA9IFwiZ3JvdXBcIlxyXG5cclxuICAgIHRoaXMuY2FwRGVwYXJ0bWVudHMubmFtZSA9IFwiY2FwMTlcIlxyXG4gICAgdGhpcy5jYXBEZXBhcnRtZW50cy5kaXNwbGF5ID0gXCJEZXBhcnRtZW50c1wiO1xyXG4gICAgdGhpcy5jYXBEZXBhcnRtZW50cy5saW5rID0gXCJob21lL2FkbWluL2RlcGFydG1lbnRzXCI7XHJcbiAgICB0aGlzLmNhcERlcGFydG1lbnRzLmljb24gPSBcImJ1c2luZXNzX2NlbnRlclwiXHJcblxyXG4gICAgdGhpcy5jYXBQb3NpdGlvbnMubmFtZSA9IFwiY2FwMjBcIlxyXG4gICAgdGhpcy5jYXBQb3NpdGlvbnMuZGlzcGxheSA9IFwiUG9zaXRpb25zXCI7XHJcbiAgICB0aGlzLmNhcFBvc2l0aW9ucy5saW5rID0gXCJob21lL2FkbWluL3Bvc2l0aW9uc1wiO1xyXG4gICAgdGhpcy5jYXBQb3NpdGlvbnMuaWNvbiA9IFwicGljdHVyZV9pbl9waWN0dXJlX21lZGl1bVwiXHJcblxyXG4gICAgdGhpcy5jYXBBcHByb3ZhbHMubmFtZSA9IFwiY2FwMjFcIlxyXG4gICAgdGhpcy5jYXBBcHByb3ZhbHMuZGlzcGxheSA9IFwiQXBwcm92YWxzXCI7XHJcbiAgICB0aGlzLmNhcEFwcHJvdmFscy5saW5rID0gXCJob21lL2FkbWluL2FwcHJvdmFsc1wiO1xyXG4gICAgdGhpcy5jYXBBcHByb3ZhbHMuaWNvbiA9IFwicnVsZVwiXHJcblxyXG4gICAgdGhpcy5jYXBBcHByb3ZhbHNDb25maWcubmFtZSA9IFwiY2FwMjJcIlxyXG4gICAgdGhpcy5jYXBBcHByb3ZhbHNDb25maWcuZGlzcGxheSA9IFwiQXBwcm92YWxzIENvbmZpZ1wiO1xyXG4gICAgdGhpcy5jYXBBcHByb3ZhbHNDb25maWcubGluayA9IFwiaG9tZS9hZG1pbi9hcHByb3ZhbHMtY29uZmlnXCI7XHJcbiAgICB0aGlzLmNhcEFwcHJvdmFsc0NvbmZpZy5pY29uID0gXCJwdWJsaXNoZWRfd2l0aF9jaGFuZ2VzXCJcclxuICAgIHRoaXMuY2FwQXBwcm92YWxzQ29uZmlnLmlzQm9vbCA9IHRydWVcclxuXHJcblxyXG4gIH1cclxuXHJcblxyXG4gIGFwcENvbmZpZyA9IG5ldyBBcHBDb25maWcoKTtcclxuICBwcml2YXRlIGFwcENvbmZpZ1NvdXJjZSA9IG5ldyBCZWhhdmlvclN1YmplY3QodGhpcy5hcHBDb25maWcpO1xyXG4gIHB1YmxpYyBhcHBDb25maWdPYnNlcnYgPSB0aGlzLmFwcENvbmZpZ1NvdXJjZS5hc09ic2VydmFibGUoKTtcclxuICBVcGRhdGVBcHBDb25maWcoY29uZmlnOiBBcHBDb25maWcpIHtcclxuICAgIHRoaXMuYXBwQ29uZmlnU291cmNlLm5leHQoY29uZmlnKTtcclxuICAgIHRoaXMuYXBwQ29uZmlnID0gY29uZmlnO1xyXG4gIH1cclxuXHJcbiAgY2FwSG9tZSA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcEFkbWluID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwVXNlcnMgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBSb2xlcyA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcExvZ3MgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBTZXR0aW5ncyA9IG5ldyBDYXBJdGVtO1xyXG5cclxuICBjYXBNdWx0aXRlbmFudCA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcFRlbmFudHMgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBNZW1iZXJzaGlwID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwUGxhbnMgPSBuZXcgQ2FwSXRlbTtcclxuXHJcbiAgY2FwR2VuZXJhbCA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcEN1c3RvbWVycyA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcEludmVudG9yeSA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcEFjY291bnRzID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwU3VwcGxpZXJzID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwVGFza3MgPSBuZXcgQ2FwSXRlbTtcclxuXHJcbiAgY2FwSFIgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBFbXBsb3llZXMgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBEZXBhcnRtZW50cyA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcFBvc2l0aW9ucyA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcEdyYWRlcyA9IG5ldyBDYXBJdGVtO1xyXG5cclxuICBjYXBBcHByb3ZhbHMgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBBcHByb3ZhbHNDb25maWcgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBOb3RpZmljYXRpb25zID0gbmV3IENhcEl0ZW07XHJcblxyXG4gIHB1YmxpYyB0bXBQcm9maWxldXNlck5hbWUgPSBcIlwiO1xyXG5cclxuXHJcbiAgaXNQcm9jZXNzaW5nID0gZmFsc2U7XHJcblxyXG5cclxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tRGVwYXJ0bWVtdHMgRm9ybS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICBkZXBhcnRtZW50Rm9ybUNvbmZpZzogRm9ybUNvbmZpZyA9IHtcclxuICAgIHNlY3VyaXR5OiB7IGFsbG93OiBbdGhpcy5jYXBEZXBhcnRtZW50c10gfSxcclxuICAgIHRpdGxlIDogJ0RlcGFydG1lbnQnLFxyXG4gICAgZmllbGRzOiBbXHJcbiAgICAgIHsgbmFtZTogJ25hbWUnLCB0eXBlOiAndGV4dCcsIHJlcXVpcmVkOiB0cnVlIH0sXHJcbiAgICBdLFxyXG4gICAgbG9hZEFjdGlvbjogeyB1cmw6ICdkZXBhcnRtZW50cy9pZCcgfSxcclxuICAgIGhlcm9GaWVsZDogJ2RlcGFydG1lbnRJRCcsXHJcbiAgICBpbmNsdWRlQXVkaXQ6IHRydWUsXHJcbiAgfVxyXG5cclxuICBlZGl0RGVwYXJ0bWVudEJ1dHRvbjogQnV0dG9uID0geyBuYW1lOiAnZWRpdCcsIGRpYWxvZzogdHJ1ZSwgYWN0aW9uOiB7IHVybDogJ2RlcGFydG1lbnRzP2FjdGlvbj1lZGl0JywgbWV0aG9kOiAncG9zdCcsIHN1Y2Nlc3NNZXNzYWdlOiAnRWRpdGVkIFN1Y2Nlc3NmdWxseScgfSB9XHJcblxyXG4gIGRlcGFydG1lbnREZXRhaWxzQ29uZmlnOiBEZXRhaWxzRGlhbG9nQ29uZmlnID0ge1xyXG4gICAgZm9ybUNvbmZpZzogdGhpcy5kZXBhcnRtZW50Rm9ybUNvbmZpZyxcclxuICAgIGhlcm9GaWVsZDogJ2RlcGFydG1lbnRJRCcsXHJcbiAgICBidXR0b25zOiBbdGhpcy5lZGl0RGVwYXJ0bWVudEJ1dHRvbl0sXHJcbiAgfVxyXG5cclxuXHJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVBvc2l0aW9ucyBGb3JtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gIHBvc2l0aW9uRm9ybUNvbmZpZzogRm9ybUNvbmZpZyA9IHtcclxuICAgIHNlY3VyaXR5OiB7IGFsbG93OiBbdGhpcy5jYXBQb3NpdGlvbnNdIH0sXHJcbiAgICB0aXRsZTogJ1Bvc2l0aW9uJyxcclxuICAgIGZpZWxkczogW1xyXG4gICAgICB7IG5hbWU6ICduYW1lJywgdHlwZTogJ3RleHQnLCByZXF1aXJlZDogdHJ1ZSB9LFxyXG4gICAgICB7IG5hbWU6ICdkZXNjcmlwdGlvbicsIHR5cGU6ICd0ZXh0JywgfSxcclxuICAgICAgeyBuYW1lOiAnZGVwYXJ0bWVudElEJywgYWxpYXM6ICdEZXBhcnRtZW50JywgdHlwZTogJ3NlbGVjdCcsIGxvYWRBY3Rpb246IHsgdXJsOiAnZGVwYXJ0bWVudHMvbGlzdC94JyB9LCBkZXRhaWxzQ29uZmlnOiB0aGlzLmRlcGFydG1lbnREZXRhaWxzQ29uZmlnIH0sXHJcblxyXG4gICAgXSxcclxuICAgIGxvYWRBY3Rpb246IHsgdXJsOiAncG9zaXRpb25zL2lkJyB9LFxyXG4gICAgaGVyb0ZpZWxkOiAncG9zaXRpb25JRCcsXHJcbiAgICBpbmNsdWRlQXVkaXQ6IHRydWUsXHJcbiAgfVxyXG5cclxuICBlZGl0UG9zaXRpb25CdXR0b246IEJ1dHRvbiA9IHsgbmFtZTogJ2VkaXQnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdwb3NpdGlvbnM/YWN0aW9uPWVkaXQnLCBtZXRob2Q6ICdwb3N0Jywgc3VjY2Vzc01lc3NhZ2U6ICdFZGl0ZWQgU3VjY2Vzc2Z1bGx5JyB9IH1cclxuXHJcbiAgcG9zaXRpb25EZXRhaWxzQ29uZmlnIDogRGV0YWlsc0RpYWxvZ0NvbmZpZyA9IHtcclxuICAgIGZvcm1Db25maWcgOiB0aGlzLnBvc2l0aW9uRm9ybUNvbmZpZyxcclxuICAgIGhlcm9GaWVsZCA6ICdwb3NpdGlvbklEJyxcclxuICAgIGJ1dHRvbnM6IFt0aGlzLmVkaXRQb3NpdGlvbkJ1dHRvbl0sXHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1FbXBsb3llZXMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4gIGdlbmRlcnMgPSBbXHJcbiAgICB7IG5hbWU6ICdNYWxlJywgdmFsdWU6IDEgfSxcclxuICAgIHsgbmFtZTogJ0ZlbWFsZScsIHZhbHVlOiAyIH1cclxuICBdXHJcblxyXG4gIGVtcGxveWVlRm9ybUNvbmZpZzogRm9ybUNvbmZpZyA9IHtcclxuICAgIHNlY3VyaXR5IDoge2FsbG93IDogW3RoaXMuY2FwRW1wbG95ZWVzXX0sXHJcbiAgICBmaWVsZHM6IFtcclxuICAgICAgeyBuYW1lOiAnbmF0aW9uYWxJRCcsIHR5cGU6ICd0ZXh0JywgYWxpYXM6ICdOYXRpb25hbCBJRCcsIHJlcXVpcmVkOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ2dlbmRlcicsIGFsaWFzOiAnR2VuZGVyJywgdHlwZTogJ3NlbGVjdCcsIG9wdGlvbnM6IHRoaXMuZ2VuZGVycywgcmVxdWlyZWQ6IHRydWUgfSxcclxuICAgICAgeyBuYW1lOiAnZmlyc3ROYW1lJywgdHlwZTogJ3RleHQnLCByZXF1aXJlZDogdHJ1ZSB9LFxyXG4gICAgICB7IG5hbWU6ICdsYXN0TmFtZScsIHR5cGU6ICd0ZXh0JywgcmVxdWlyZWQ6IHRydWUgfSxcclxuICAgICAgeyBuYW1lOiAnZGF0ZU9mQmlydGgnLCB0eXBlOiAnZGF0ZScsIGFsaWFzOiAnRGF0ZSBvZiBCaXJ0aCcsIHJlcXVpcmVkOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ2VtcGxveW1lbnREYXRlJywgdHlwZTogJ2RhdGUnLCBhbGlhczogJ0VtcGxveW1lbnQgRGF0ZScsIHJlcXVpcmVkOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ2RlcGFydG1lbnRJRCcsIGFsaWFzOiAnRGVwYXJ0bWVudCcsIHR5cGU6ICdzZWxlY3QnLCBsb2FkQWN0aW9uIDogeyB1cmwgOiAnZGVwYXJ0bWVudHMvbGlzdC94J30sIGRldGFpbHNDb25maWc6IHRoaXMuZGVwYXJ0bWVudERldGFpbHNDb25maWcgfSxcclxuICAgICAgeyBuYW1lOiAncG9zaXRpb25JRCcsIGFsaWFzOiAnUG9zaXRpb24nLCB0eXBlOiAnc2VsZWN0JywgbG9hZEFjdGlvbjogeyB1cmw6ICdwb3NpdGlvbnMvbGlzdC94JyB9LCBtYXN0ZXJGaWVsZDogJ2RlcGFydG1lbnRJRCcsIGRldGFpbHNDb25maWc6IHRoaXMucG9zaXRpb25EZXRhaWxzQ29uZmlnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2VtcGxveW1lbnRTdGF0dXMnLCBhbGlhczogJ0VtcGxveW1lbnQgU3RhdHVzJywgdHlwZTogJ3NlbGVjdCcsIGxvYWRBY3Rpb246IHsgdXJsOiAnZW1wbG95ZWVzL2xpc3QvZW1wbG95bWVudC1zdGF0dXMnIH0gfSxcclxuICAgICAgeyBuYW1lOiAnYWN0aXZlU3RhdHVzJywgYWxpYXM6ICdBY3RpdmUgU3RhdHVzJywgdHlwZTogJ3NlbGVjdCcsIGxvYWRBY3Rpb246IHsgdXJsOiAnZW1wbG95ZWVzL2xpc3QvYWN0aXZlLXN0YXR1cycgfSB9LFxyXG4gICAgICB7IG5hbWU6ICdwYXNzcG9ydE51bWJlcicsIHR5cGU6ICd0ZXh0JywgYWxpYXM6ICdQYXNzcG9ydCBOdW1iZXInIH0sXHJcbiAgICAgIHsgbmFtZTogJ3VzZXJOYW1lJywgdHlwZTogJ3RleHQnLCBhbGlhczogJ1VzZXInLCBsb2FkQWN0aW9uOiB7IHVybDogJ3VzZXIvbGlzdC94JyB9LCBvcHRpb25EaXNwbGF5OiAnbmFtZScsIG9wdGlvblZhbHVlOiAndmFsdWUnLCBpbmZvTWVzc2FnZSA6ICdSZWxhdGVkIHVzZXIgYWNjb3VudCcgfSxcclxuICAgICAgeyBuYW1lOiAnYWRkcmVzcycsIHR5cGU6ICd0ZXh0Jywgcm93czogMiwgc3BhbjogdHJ1ZSB9LFxyXG4gICAgICB7IG5hbWU6ICdwaG9uZScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdlbWFpbCcsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdub3RlJywgdHlwZTogJ3RleHQnLCByb3dzOiAyLCBzcGFuOiB0cnVlIH0sXHJcbiAgICBdLFxyXG4gICAgbG9hZEFjdGlvbjogeyB1cmw6ICdlbXBsb3llZXMvaWQnIH0sXHJcbiAgICBoZXJvRmllbGQ6ICdlbXBsb3llZUlEJyxcclxuICAgIGluY2x1ZGVBdWRpdCA6IHRydWUsXHJcbiAgfVxyXG5cclxuICBlbXBsb3llZXNUYWJsZUNvbmZpZzogVGFibGVDb25maWcgPSB7XHJcbiAgICBzaG93RmlsdGVyOiB0cnVlLFxyXG4gICAgbWluQ29sdW1uczogWyduYW1lJywgJ2RlcGFydG1lbnROYW1lJywgJ3Bvc2l0aW9uTmFtZSddLFxyXG4gICAgZmxhdEJ1dHRvbnM6IHRydWUsXHJcbiAgICBjb2x1bW5zOiBbXHJcbiAgICAgIHsgbmFtZTogJ25hbWUnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnZ2VuZGVyTmFtZScsIHR5cGU6ICd0ZXh0JywgYWxpYXM6ICdHZW5kZXInIH0sXHJcbiAgICAgIHsgbmFtZTogJ2RlcGFydG1lbnROYW1lJywgdHlwZTogJ3RleHQnLCBhbGlhczogJ0RlcGFydG1lbnQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ3Bvc2l0aW9uTmFtZScsIHR5cGU6ICd0ZXh0JywgYWxpYXM6ICdQb3NpdGlvbicgfSxcclxuICAgICAgeyBuYW1lOiAnZW1wbG95bWVudFN0YXR1c05hbWUnLCB0eXBlOiAndGV4dCcsIGFsaWFzOiAnRW1wbG95bWVudCBTdGF0dXMnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2FjdGl2ZVN0YXR1c05hbWUnLCB0eXBlOiAndGV4dCcsIGFsaWFzOiAnQWN0aXZlIFN0YXR1cycgfSxcclxuICAgICAgeyBuYW1lOiAnaXNMaW5rZWQnLCB0eXBlOiAnY2hlY2tib3gnLCBhbGlhczogJ0xpbmtlZCcgfSxcclxuICAgIF0sXHJcbiAgICBidXR0b25zOiBbXHJcbiAgICAgIHsgbmFtZTogJ2NyZWF0ZScsIGRpc3BsYXk6ICdDcmVhdGUnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdlbXBsb3llZXM/YWN0aW9uPWNyZWF0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgICAgeyBuYW1lOiAndmlldycsIGRpYWxvZzogdHJ1ZSB9LFxyXG4gICAgICB7IG5hbWU6ICdlZGl0JywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnZW1wbG95ZWVzP2FjdGlvbj1lZGl0JywgbWV0aG9kOiAncG9zdCcgfSB9LFxyXG4gICAgICB7IG5hbWU6ICdkZWxldGUnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdlbXBsb3llZXM/YWN0aW9uPWRlbGV0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgIF0sXHJcbiAgICBsb2FkQWN0aW9uOiB7IHVybDogJ2VtcGxveWVlcy9hbGwveCcgfSxcclxuICAgIGZvcm1Db25maWc6IHRoaXMuZW1wbG95ZWVGb3JtQ29uZmlnXHJcbiAgfVxyXG5cclxuXHJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVBvc2l0aW9ucy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICBwb3NpdGlvbnNUYWJsZUNvbmZpZzogVGFibGVDb25maWcgPSB7XHJcbiAgICBzaG93RmlsdGVyOiB0cnVlLFxyXG4gICAgZmxhdEJ1dHRvbnM6IHRydWUsXHJcbiAgICBjb2x1bW5zOiBbXHJcbiAgICAgIHsgbmFtZTogJ25hbWUnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnZGVzY3JpcHRpb24nLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnZGVwYXJ0bWVudE5hbWUnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgIF0sXHJcbiAgICBidXR0b25zOiBbXHJcbiAgICAgIHsgbmFtZTogJ2NyZWF0ZScsIGRpc3BsYXk6ICdDcmVhdGUnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdwb3NpdGlvbnM/YWN0aW9uPWNyZWF0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgICAge1xyXG4gICAgICAgIG5hbWU6ICd2aWV3JyxcclxuICAgICAgICBkaWFsb2c6IHRydWUsXHJcbiAgICAgICAgZGV0YWlsc0NvbmZpZzoge1xyXG4gICAgICAgICAgZm9ybUNvbmZpZzogdGhpcy5wb3NpdGlvbkZvcm1Db25maWcgLFxyXG4gICAgICAgICAgaGVyb0ZpZWxkOiAncG9zaXRpb25JRCcsXHJcbiAgICAgICAgICBidXR0b25zOiBbdGhpcy5lZGl0UG9zaXRpb25CdXR0b25dLFxyXG4gICAgICAgICAgdGFibGVDb25maWdzOiBbXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAuLi50aGlzLmVtcGxveWVlc1RhYmxlQ29uZmlnLFxyXG4gICAgICAgICAgICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnZW1wbG95ZWVzL3gveCcgfSwgbG9hZENyaXRlcmlhOiAncG9zaXRpb24nLCBsb2FkSURGaWVsZDogJ3Bvc2l0aW9uSUQnLFxyXG4gICAgICAgICAgICAgIGNvbHVtbnM6IHRoaXMuZW1wbG95ZWVzVGFibGVDb25maWcuY29sdW1ucy5maWx0ZXIoeCA9PiBbJ2RlcGFydG1lbnROYW1lJywgJ3Bvc2l0aW9uTmFtZSddLmluY2x1ZGVzKHgubmFtZSkgPT0gZmFsc2UpLFxyXG4gICAgICAgICAgICAgIHRhYlRpdGxlOiAnRW1wbG95ZWVzJyxcclxuICAgICAgICAgICAgICBlbGV2YXRpb246ICdub25lJyxcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgXSxcclxuICAgICAgICB9XHJcbiAgICAgIH0sXHJcbiAgICAgIHRoaXMuZWRpdFBvc2l0aW9uQnV0dG9uLFxyXG4gICAgICB7IG5hbWU6ICdkZWxldGUnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdwb3NpdGlvbnM/YWN0aW9uPWRlbGV0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgIF0sXHJcbiAgICBsb2FkQWN0aW9uOiB7IHVybDogJ3Bvc2l0aW9ucy9hbGwveCcgfSxcclxuICAgIGZvcm1Db25maWc6IHRoaXMucG9zaXRpb25Gb3JtQ29uZmlnXHJcbiAgfVxyXG5cclxuXHJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLURlcGFydG1lbnRzLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuICBkZXBhcnRtZW50VGFibGVDb25maWc6IFRhYmxlQ29uZmlnID0ge1xyXG4gICAgc2hvd0ZpbHRlcjogdHJ1ZSxcclxuICAgIG1pbkNvbHVtbnM6IFsnbmFtZSddLFxyXG4gICAgZmxhdEJ1dHRvbnM6IHRydWUsXHJcbiAgICBjb2x1bW5zOiBbXHJcbiAgICAgIC8vIHsgbmFtZTogJ2RlcGFydG1lbnRJRCcsIHR5cGU6ICdudW1iZXInLCBhbGlhczogJ0lEJyB9LFxyXG4gICAgICB7IG5hbWU6ICduYW1lJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICBdLFxyXG4gICAgYnV0dG9uczogW1xyXG4gICAgICB7IG5hbWU6ICdjcmVhdGUnLCBkaXNwbGF5OiAnQ3JlYXRlJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnZGVwYXJ0bWVudHM/YWN0aW9uPWNyZWF0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgICAge1xyXG4gICAgICAgIG5hbWU6ICd2aWV3JyxcclxuICAgICAgICBkaWFsb2c6IHRydWUsXHJcbiAgICAgICAgZGV0YWlsc0NvbmZpZzoge1xyXG4gICAgICAgICAgZm9ybUNvbmZpZzogdGhpcy5kZXBhcnRtZW50Rm9ybUNvbmZpZyxcclxuICAgICAgICAgIGhlcm9GaWVsZDogJ2RlcGFydG1lbnRJRCcsXHJcbiAgICAgICAgICBidXR0b25zOiBbdGhpcy5lZGl0RGVwYXJ0bWVudEJ1dHRvbl0sXHJcbiAgICAgICAgICB0YWJsZUNvbmZpZ3M6IFtcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgIC4uLnRoaXMuZW1wbG95ZWVzVGFibGVDb25maWcsXHJcbiAgICAgICAgICAgICAgbG9hZEFjdGlvbjogeyB1cmw6ICdlbXBsb3llZXMveC94JyB9LCBsb2FkQ3JpdGVyaWE6ICdkZXBhcnRtZW50JywgbG9hZElERmllbGQ6ICdkZXBhcnRtZW50SUQnLFxyXG4gICAgICAgICAgICAgIGNvbHVtbnM6IHRoaXMuZW1wbG95ZWVzVGFibGVDb25maWcuY29sdW1ucy5maWx0ZXIoeCA9PiBbJ2RlcGFydG1lbnROYW1lJywgJ3Bvc2l0aW9uTmFtZSddLmluY2x1ZGVzKHgubmFtZSkgPT0gZmFsc2UpLFxyXG4gICAgICAgICAgICAgIHRhYlRpdGxlOiAnRW1wbG95ZWVzJyxcclxuICAgICAgICAgICAgICBlbGV2YXRpb246ICdub25lJyxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgIC4uLnRoaXMucG9zaXRpb25zVGFibGVDb25maWcsXHJcbiAgICAgICAgICAgICAgbG9hZEFjdGlvbjogeyB1cmw6ICdwb3NpdGlvbnMveC94JyB9LCBsb2FkQ3JpdGVyaWE6ICdkZXBhcnRtZW50JywgbG9hZElERmllbGQ6ICdkZXBhcnRtZW50SUQnLFxyXG4gICAgICAgICAgICAgIHRhYlRpdGxlOiAnUG9zaXRpb25zJyxcclxuICAgICAgICAgICAgICBlbGV2YXRpb246ICdub25lJyxcclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIF0sXHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICB0aGlzLmVkaXREZXBhcnRtZW50QnV0dG9uLFxyXG4gICAgICB7IG5hbWU6ICdkZWxldGUnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdkZXBhcnRtZW50cz9hY3Rpb249ZGVsZXRlJywgbWV0aG9kOiAncG9zdCcgfSB9LFxyXG4gICAgXSxcclxuICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnZGVwYXJ0bWVudHMvYWxsL3gnIH0sXHJcbiAgICBmb3JtQ29uZmlnOiB0aGlzLmRlcGFydG1lbnRGb3JtQ29uZmlnXHJcbiAgfVxyXG5cclxuXHJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLUNvbnRhY3QgUGVyc29ucy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICBjb250YWN0UGVyc29uRm9ybUNvbmZpZzogRm9ybUNvbmZpZyA9IHtcclxuICAgIHRpdGxlOiAnQ29udGFjdCBQZXJzb24nLFxyXG4gICAgaW5jbHVkZUF1ZGl0OiB0cnVlLFxyXG4gICAgZmllbGRzOiBbXHJcbiAgICAgIHsgbmFtZTogJ25hbWUnLCB0eXBlOiAndGV4dCcsIHNwYW4gOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ21vYmlsZScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdlbWFpbCcsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdjb250YWN0TWV0aG9kcycsIHR5cGU6ICdjb21wb3NpdGUnLCBzcGFuOiB0cnVlLCBzdWJmaWVsZHMgOltcclxuICAgICAgICB7IG5hbWU6ICdjYW5DYWxsJywgdHlwZTogJ2NoZWNrYm94JywgYWxpYXM6ICdDYWxsJyB9LFxyXG4gICAgICAgIHsgbmFtZTogJ2NhblNNUycsIHR5cGU6ICdjaGVja2JveCcsIGFsaWFzOiAnU01TJyB9LFxyXG4gICAgICAgIHsgbmFtZTogJ2NhbldoYXRzQXBwJywgdHlwZTogJ2NoZWNrYm94JywgYWxpYXM6ICdXaGF0c0FwcCcgfVxyXG4gICAgICBdIH0sXHJcblxyXG4gICAgXSxcclxuICAgIHJlc2V0OiB0cnVlXHJcbiAgfTtcclxuXHJcbiAgY29udGFjdFBlcnNvblRhYmxlQ29uZmlnOiBUYWJsZUNvbmZpZyA9IHtcclxuICAgIHRhYlRpdGxlOiAnQ29udGFjdHMnLFxyXG4gICAgc2hvd0ZpbHRlcjogdHJ1ZSxcclxuICAgIG1pbkNvbHVtbnM6IFsnbmFtZScsICdjb250YWN0TWV0aG9kcyddLFxyXG4gICAgZWxldmF0aW9uOiAnbm9uZScsXHJcbiAgICBmbGF0QnV0dG9uczogdHJ1ZSxcclxuICAgIGNvbHVtbnM6IFtcclxuICAgICAgeyBuYW1lOiAnbmFtZScsIHR5cGU6ICd0ZXh0JywgfSxcclxuICAgICAgeyBuYW1lOiAnbW9iaWxlJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2VtYWlsJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBuYW1lOiAnY29udGFjdE1ldGhvZHMnLFxyXG4gICAgICAgIHR5cGU6ICdpY29uJyxcclxuICAgICAgICBpY29uczogW1xyXG4gICAgICAgICAgeyBuYW1lOiAnY2FsbCcsIGNvbG9yOiAnZ3JlZW4nLCBjb25kaXRpb246IHggPT4geC5jYW5DYWxsLCB0aXA6ICdBdmFpbGFibGUgZm9yIENhbGxzJyB9LFxyXG4gICAgICAgICAgeyBuYW1lOiAnc21zJywgY29sb3I6ICdncmVlbicsIGNvbmRpdGlvbjogeCA9PiB4LmNhblNNUywgdGlwOiAnQXZhaWxhYmxlIGZvciBTTVMnIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICdmb3J1bScsIGNvbG9yOiAnZ3JlZW4nLCBjb25kaXRpb246IHggPT4geC5jYW5XaGF0c0FwcCwgdGlwOiAnQXZhaWxhYmxlIG9uIFdoYXRzQXBwJyB9XHJcbiAgICAgICAgXVxyXG4gICAgICB9XHJcbiAgICBdLFxyXG4gICAgYnV0dG9uczogW1xyXG4gICAgICB7IG5hbWU6ICdjcmVhdGUnLCBkaXNwbGF5OiAnQWRkJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnY29udGFjdHBlcnNvbnM/YWN0aW9uPWNyZWF0ZScsIG1ldGhvZDogJ3Bvc3QnIH0sIGNvbmZpcm06IHsgbWVzc2FnZTogJ0FkZCBjb250YWN0IHBlcnNvbj8nIH0gfSxcclxuICAgICAgeyBuYW1lOiAnZWRpdCcsIGRpYWxvZzogdHJ1ZSwgYWN0aW9uOiB7IHVybDogJ2NvbnRhY3RwZXJzb25zP2FjdGlvbj1lZGl0JywgbWV0aG9kOiAncG9zdCcgfSB9LFxyXG4gICAgICB7IG5hbWU6ICdkZWxldGUnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdjb250YWN0cGVyc29ucz9hY3Rpb249ZGVsZXRlJywgbWV0aG9kOiAncG9zdCcgfSB9XHJcbiAgICBdLFxyXG4gICAgZm9ybUNvbmZpZzogdGhpcy5jb250YWN0UGVyc29uRm9ybUNvbmZpZ1xyXG4gIH07XHJcblxyXG5cclxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tQ3VzdG9tZXJzLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gIGN1c3RvbWVyRm9ybUNvbmZpZzogRm9ybUNvbmZpZyA9IHtcclxuICAgIHNlY3VyaXR5OiB7IGFsbG93OiBbdGhpcy5jYXBDdXN0b21lcnNdIH0sXHJcbiAgICBpbmNsdWRlQXVkaXQ6IHRydWUsXHJcbiAgICB0aXRsZSA6ICdDdXN0b21lcicsXHJcbiAgICBmaWVsZHM6IFtcclxuICAgICAgeyBuYW1lOiAnbmFtZScsIHR5cGU6ICd0ZXh0JywgcmVxdWlyZWQ6IHRydWUgfSxcclxuICAgICAgeyBuYW1lOiAncGhvbmUnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnY29udGFjdFBlcnNvbicsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdlbWFpbCcsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdhZGRyZXNzJywgdHlwZTogJ3RleHQnLCByb3dzOiAyLCBzcGFuOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ2N1c3RvbWVyVGVuYW50SUQnLCBhbGlhczogJ0N1c3RvbWVyIFRlbmFudCcsIHR5cGU6ICd0ZXh0JywgbG9hZEFjdGlvbjogeyB1cmw6ICd0ZW5hbnRzL2xpc3QveCcgfSAsIG51bGxhYmxlOiB0cnVlIH0sXHJcbiAgICBdLFxyXG5cclxuICAgIHJlc2V0OiB0cnVlLFxyXG4gIH1cclxuXHJcbiAgY3VzdG9tZXJFZGl0QnV0dG9uOiBCdXR0b24gPSB7IG5hbWU6ICdlZGl0JywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnY3VzdG9tZXJzP2FjdGlvbj1lZGl0JywgbWV0aG9kOiAncG9zdCcgfSB9XHJcblxyXG4gIGN1c3RvbWVyRGV0YWlsc0NvbmZpZzogRGV0YWlsc0RpYWxvZ0NvbmZpZyA9IHtcclxuICAgIGZvcm1Db25maWcgOiB0aGlzLmN1c3RvbWVyRm9ybUNvbmZpZyxcclxuICAgIGhlcm9GaWVsZCA6ICdjdXN0b21lcklEJyxcclxuICAgIHRhYmxlQ29uZmlnczogW1xyXG4gICAgICB7XHJcbiAgICAgICAgLi4udGhpcy5jb250YWN0UGVyc29uVGFibGVDb25maWcsXHJcbiAgICAgICAgbG9hZEFjdGlvbjogeyB1cmw6ICdjb250YWN0cGVyc29ucy9jdXN0b21lci94JyB9LFxyXG4gICAgICAgIGxvYWRDcml0ZXJpYTogJ2N1c3RvbWVyJyxcclxuICAgICAgICBsb2FkSURGaWVsZDogJ2N1c3RvbWVySUQnXHJcbiAgICAgIH1cclxuICAgIF0sXHJcbiAgICBidXR0b25zOiBbdGhpcy5jdXN0b21lckVkaXRCdXR0b25dXHJcbiAgfTtcclxuXHJcbiAgY3VzdG9tZXJzVGFibGVDb25maWc6IFRhYmxlQ29uZmlnID0ge1xyXG4gICAgc2hvd0ZpbHRlcjogdHJ1ZSxcclxuICAgIG1pbkNvbHVtbnM6IFsnbmFtZSddLFxyXG4gICAgZmxhdEJ1dHRvbnM6IHRydWUsXHJcbiAgICBsb2dSZXNwb25zZTogdHJ1ZSxcclxuICAgIG1heEJ1dHRvbnNDb3VudDogMyxcclxuICAgIGNvbGxhcHNlQnV0dG9ucyA6IHRydWUsXHJcblxyXG4gICAgY29sdW1uczogW1xyXG5cclxuICAgICAgeyBuYW1lOiAnbmFtZScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdwaG9uZScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdjb250YWN0UGVyc29uJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2lzTGlua2VkJywgdHlwZTogJ2NoZWNrYm94JywgYWxpYXM6ICdMaW5rZWQnIH0sXHJcblxyXG4gICAgXSxcclxuXHJcbiAgICBidXR0b25zOiBbXHJcbiAgICAgIHsgbmFtZTogJ2NyZWF0ZScsIGRpc3BsYXk6ICdDcmVhdGUnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdjdXN0b21lcnM/YWN0aW9uPWNyZWF0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgICAgeyBuYW1lOiAndmlldycsIGRpYWxvZzogdHJ1ZSwgZGV0YWlsc0NvbmZpZzogdGhpcy5jdXN0b21lckRldGFpbHNDb25maWcgfSxcclxuICAgICAgeyBuYW1lOiAnZWRpdCcsIGRpYWxvZzogdHJ1ZSwgZGV0YWlsc0NvbmZpZzogdGhpcy5jdXN0b21lckRldGFpbHNDb25maWcgfSxcclxuICAgICAgeyBuYW1lOiAnZGVsZXRlJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnY3VzdG9tZXJzP2FjdGlvbj1kZWxldGUnLCBtZXRob2Q6ICdwb3N0JyB9IH0sXHJcbiAgICBdLFxyXG5cclxuICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnY3VzdG9tZXJzL2FsbC94JyB9LFxyXG4gICAgZm9ybUNvbmZpZzogdGhpcy5jdXN0b21lckZvcm1Db25maWdcclxuICB9XHJcblxyXG5cclxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tU3VwcGxpZXJzLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gIHN1cHBsaWVyRm9ybUNvbmZpZzogRm9ybUNvbmZpZyA9IHtcclxuICAgIHNlY3VyaXR5OiB7IGFsbG93OiBbdGhpcy5jYXBTdXBwbGllcnNdIH0sXHJcbiAgICBpbmNsdWRlQXVkaXQ6IHRydWUsXHJcbiAgICB0aXRsZTogJ1N1cHBsaWVyJyxcclxuICAgIGZpZWxkczogW1xyXG4gICAgICB7IG5hbWU6ICduYW1lJywgdHlwZTogJ3RleHQnLCByZXF1aXJlZDogdHJ1ZSB9LFxyXG4gICAgICB7IG5hbWU6ICdwaG9uZScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdjb250YWN0UGVyc29uJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2VtYWlsJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2FkZHJlc3MnLCB0eXBlOiAndGV4dCcsIHJvd3M6IDIsIHNwYW46IHRydWUgfSxcclxuICAgIF0sXHJcblxyXG4gICAgcmVzZXQ6IHRydWUsXHJcbiAgfVxyXG5cclxuICBzdXBwbGllckVkaXRCdXR0b24gOiBCdXR0b24gPSB7IG5hbWU6ICdlZGl0JywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnc3VwcGxpZXJzP2FjdGlvbj1lZGl0JywgbWV0aG9kOiAncG9zdCcgfSB9XHJcblxyXG4gIHN1cHBsaWVyRGV0YWlsc0NvbmZpZzogRGV0YWlsc0RpYWxvZ0NvbmZpZyA9IHtcclxuICAgIGZvcm1Db25maWcgOiB0aGlzLnN1cHBsaWVyRm9ybUNvbmZpZyxcclxuICAgIGhlcm9GaWVsZCA6ICdzdXBwbGllcklEJyxcclxuICAgIHRhYmxlQ29uZmlnczogW1xyXG4gICAgICB7XHJcbiAgICAgICAgLi4udGhpcy5jb250YWN0UGVyc29uVGFibGVDb25maWcsXHJcbiAgICAgICAgbG9hZEFjdGlvbjogeyB1cmw6ICdjb250YWN0cGVyc29ucy9zdXBwbGllci94JyB9LFxyXG4gICAgICAgIGxvYWRDcml0ZXJpYTogJ3N1cHBsaWVyJyxcclxuICAgICAgICBsb2FkSURGaWVsZDogJ3N1cHBsaWVySUQnXHJcbiAgICAgIH1cclxuICAgIF0sXHJcbiAgICBidXR0b25zIDogW3RoaXMuc3VwcGxpZXJFZGl0QnV0dG9uXVxyXG4gIH07XHJcblxyXG4gIHN1cHBsaWVyc1RhYmxlQ29uZmlnOiBUYWJsZUNvbmZpZyA9IHtcclxuICAgIHNob3dGaWx0ZXI6IHRydWUsXHJcbiAgICBtaW5Db2x1bW5zOiBbJ25hbWUnXSxcclxuICAgIGZsYXRCdXR0b25zOiB0cnVlLFxyXG4gICAgY29sdW1uczogW1xyXG4gICAgICB7IG5hbWU6ICduYW1lJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ3Bob25lJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2NvbnRhY3RQZXJzb24nLCB0eXBlOiAndGV4dCcgfSxcclxuICAgIF0sXHJcblxyXG4gICAgYnV0dG9uczogW1xyXG4gICAgICB7IG5hbWU6ICdjcmVhdGUnLCBkaXNwbGF5OiAnQ3JlYXRlJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnc3VwcGxpZXJzP2FjdGlvbj1jcmVhdGUnLCBtZXRob2Q6ICdwb3N0JyB9LH0sXHJcbiAgICAgIHsgbmFtZTogJ3ZpZXcnLCBkaWFsb2c6IHRydWUsIGRldGFpbHNDb25maWc6IHRoaXMuc3VwcGxpZXJEZXRhaWxzQ29uZmlnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2VkaXQnLCBkaWFsb2c6IHRydWUsICBkZXRhaWxzQ29uZmlnOiB0aGlzLnN1cHBsaWVyRGV0YWlsc0NvbmZpZyB9LFxyXG4gICAgICB7IG5hbWU6ICdkZWxldGUnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdzdXBwbGllcnM/YWN0aW9uPWRlbGV0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgIF0sXHJcblxyXG4gICAgbG9hZEFjdGlvbjogeyB1cmw6ICdzdXBwbGllcnMvYWxsL3gnIH0sXHJcbiAgICBmb3JtQ29uZmlnOiB0aGlzLnN1cHBsaWVyRm9ybUNvbmZpZ1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1Ob3RpZmljYXRpb25zLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuICBub3RpZmljYXRpb25PcHRpb25zID0gW1xyXG4gICAgeyBuYW1lOiAnVUkgT25seScsIHZhbHVlOiAxIH0sXHJcbiAgICB7IG5hbWU6ICdVSSArIEVtYWlsJywgdmFsdWU6IDMgfSxcclxuICAgIHsgbmFtZTogJ1VJICsgRW1haWwgKyBTTVMnLCB2YWx1ZTogNyB9LFxyXG4gICAgeyBuYW1lOiAnQWxsIENoYW5uZWxzJywgdmFsdWU6IDE1IH1cclxuICBdXHJcblxyXG5cclxuXHJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLUFwcHJvdmFscy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4gIGFwcHJvdmFsSGlzdG9yeUZvcm1Db25maWcgOiBGb3JtQ29uZmlnID0ge1xyXG4gICAgdGl0bGU6ICdBcHByb3ZhbCBIaXN0b3J5JyxcclxuICAgIGZpZWxkczogW1xyXG4gICAgICB7IG5hbWU6ICdsZXZlbE5hbWUnLCB0eXBlOiAndGV4dCcsIHJlYWRvbmx5OiB0cnVlLCBhbGlhczogJ0xldmVsJyB9LFxyXG4gICAgICB7IG5hbWU6ICdzdGF0dXNOYW1lJywgdHlwZTogJ3RleHQnLCByZWFkb25seTogdHJ1ZSwgYWxpYXM6ICdTdGF0dXMnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2NvbW1lbnRzJywgdHlwZTogJ3RleHQnLCByZWFkb25seTogdHJ1ZSwgc3BhbjogdHJ1ZSwgcm93czogMywgY29weUNvbnRlbnQ6IHRydWUgfSxcclxuICAgIF0sXHJcbiAgICBpbmNsdWRlQXVkaXQ6IHRydWVcclxuICB9XHJcblxyXG4gIC8vQXBwcm92YWwgSGlzdG9yeVxyXG4gIGFwcHJvdmFsSGlzdG9yeVRhYmxlQ29uZmlnOiBUYWJsZUNvbmZpZyA9IHtcclxuICAgIHRhYlRpdGxlOiAnVHJhaWwnLFxyXG4gICAgZWxldmF0aW9uOiAnbm9uZScsXHJcbiAgICBtaW5Db2x1bW5zOiBbJ2NyZWF0ZWREYXRlJywgJ2xldmVsTmFtZScsICdzdGF0dXNOYW1lJ10sXHJcbiAgICBmbGF0QnV0dG9uczogdHJ1ZSxcclxuICAgIHNob3dGaWx0ZXIgOiB0cnVlLFxyXG4gICAgY29sdW1uczogW1xyXG4gICAgICB7IG5hbWU6ICdjcmVhdGVkRGF0ZScsIHR5cGU6ICdkYXRldGltZScsIGFsaWFzIDogJ0RhdGUnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2xldmVsTmFtZScsIHR5cGU6ICd0ZXh0JywgYWxpYXM6ICdMZXZlbCcgfSxcclxuICAgICAge1xyXG4gICAgICAgIG5hbWU6ICdzdGF0dXNOYW1lJywgdHlwZTogJ3RleHQnLCBhbGlhczogJ1N0YXR1cycsXHJcbiAgICAgICAgY29sb3JzOiBbXHJcbiAgICAgICAgICB7IG5hbWU6ICcjOTBBNEFFJywgY29uZGl0aW9uOiB4ID0+IHguc3RhdHVzID09PSAwIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICcjNjZCQjZBJywgY29uZGl0aW9uOiB4ID0+IHguc3RhdHVzID09PSAxIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICcjRjQ0MzM2JywgY29uZGl0aW9uOiB4ID0+IHguc3RhdHVzID09PSAyIH1cclxuICAgICAgICBdXHJcbiAgICAgIH0sXHJcbiAgICAgIHsgbmFtZTogJ2NvbW1lbnRzJywgdHlwZTogJ3RleHQnLCB9LFxyXG4gICAgICB7IG5hbWU6ICdjcmVhdGVkQnlOYW1lJywgdHlwZTogJ3RleHQnLCBhbGlhczogJ0J5JyB9LFxyXG5cclxuICAgIF0sXHJcbiAgICBidXR0b25zOiBbXHJcbiAgICAgIHsgbmFtZTogJ3ZpZXcnLCBkaWFsb2c6IHRydWUgfVxyXG4gICAgXSxcclxuXHJcbiAgICBmb3JtQ29uZmlnIDogdGhpcy5hcHByb3ZhbEhpc3RvcnlGb3JtQ29uZmlnLFxyXG5cclxuICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnYXBwcm92YWxoaXN0b3J5L2FwcHJvdmFsL3gnIH0sXHJcbiAgICBsb2FkQ3JpdGVyaWE6ICdhcHByb3ZhbCcsXHJcbiAgICBsb2FkSURGaWVsZDogJ2FwcHJvdmFsSUQnXHJcbiAgfTtcclxuXHJcblxyXG5cclxuICAvL2FwcHJvdmFscyBmb3JtXHJcbiAgYXBwcm92YWxGb3JtQ29uZmlnOiBGb3JtQ29uZmlnID0ge1xyXG4gICAgdGl0bGU6ICdBcHByb3ZhbCcsXHJcbiAgICBmaWVsZHM6IFtcclxuICAgICAgeyBuYW1lOiAnYmxhbmsnLCB0eXBlOiAnYmxhbmsnLCBzcGFuOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ3N0YXR1c05hbWUnLCB0eXBlOiAnbGFiZWwnLCBhbGlhczogJ1N0YXR1cycsIHNwYW46IHRydWUgfSxcclxuICAgICAgeyBuYW1lOiAnbWVzc2FnZScsIHR5cGU6ICd0ZXh0JywgcmVxdWlyZWQ6IHRydWUsIHNwYW46IHRydWUsIHJvd3M6IDMgfSxcclxuXHJcbiAgICBdLFxyXG4gICAgbG9hZEFjdGlvbjogeyB1cmw6ICdhcHByb3ZhbHMvaWQnIH0sXHJcbiAgICBoZXJvRmllbGQ6ICdhcHByb3ZhbElEJ1xyXG4gIH07XHJcblxyXG5cclxuXHJcblxyXG4gIC8vIGFwcHJvdmFsIGFjdGlvbiBkaWFsb2dcclxuICBhcHByb3ZhbEFjdGlvbkZvcm1Db25maWc6IEZvcm1Db25maWcgPSB7XHJcbiAgICB0aXRsZTogJ0FwcHJvdmFsIEFjdGlvbicsXHJcbiAgICBmaXhlZFRpdGxlOiB0cnVlLFxyXG4gICAgZmllbGRzOiBbXHJcbiAgICAgIHtcclxuICAgICAgICBuYW1lOiAnY29tbWVudHMnLCB0eXBlOiAndGV4dCcsIHJlcXVpcmVkOiBmYWxzZSwgc3BhbjogdHJ1ZSwgcm93czogMyxcclxuICAgICAgICBpbmZvTWVzc2FnZTogJ0VudGVyIHlvdXIgY29tbWVudHMgYWJvdXQgdGhpcyBhcHByb3ZhbCBhY3Rpb24uIFRoaXMgd2lsbCBiZSB2aXNpYmxlIGluIHRoZSBhcHByb3ZhbCBoaXN0b3J5LidcclxuICAgICAgfVxyXG4gICAgXVxyXG4gIH07XHJcblxyXG4gIGFwcHJvdmVBY3Rpb25EZXRhaWxzQ29uZmlnOiBEZXRhaWxzRGlhbG9nQ29uZmlnID0ge1xyXG4gICAgZm9ybUNvbmZpZzoge1xyXG4gICAgICAuLi50aGlzLmFwcHJvdmFsQWN0aW9uRm9ybUNvbmZpZyxcclxuICAgICAgZmllbGRzOiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgbmFtZTogJ2NvbW1lbnRzJywgdHlwZTogJ3RleHQnLCByZXF1aXJlZDogZmFsc2UsIHNwYW46IHRydWUsIHJvd3M6IDMsXHJcbiAgICAgICAgICBpbmZvTWVzc2FnZTogJ0VudGVyIHlvdXIgY29tbWVudHMgYWJvdXQgdGhpcyBhcHByb3ZhbCBhY3Rpb24uIFRoaXMgd2lsbCBiZSB2aXNpYmxlIGluIHRoZSBhcHByb3ZhbCBoaXN0b3J5LidcclxuICAgICAgICB9XHJcbiAgICAgIF0sXHJcbiAgICB9LFxyXG4gICAgbW9kZTogJ2VkaXQnLFxyXG4gICAgYnV0dG9uczogW1xyXG4gICAgICB7IG5hbWU6ICdlZGl0JywgZGlzcGxheTogJ0FwcHJvdmUnLCBjb2xvcjogJ2dyZWVuJywgYWN0aW9uOiB7IHVybDogJ2FwcHJvdmUnLCBtZXRob2Q6ICdwb3N0JyB9IH0gLy91cmwgcHJlY29uZmlndXJlZCB0byBiZSBkeW5hbWljXHJcbiAgICBdXHJcbiAgfTtcclxuXHJcbiAgZGVjbGluZUFjdGlvbkRldGFpbHNDb25maWc6IERldGFpbHNEaWFsb2dDb25maWcgPSB7XHJcbiAgICBmb3JtQ29uZmlnOiB7Li4udGhpcy5hcHByb3ZhbEFjdGlvbkZvcm1Db25maWcsXHJcbiAgICAgIGZpZWxkczogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIG5hbWU6ICdjb21tZW50cycsIHR5cGU6ICd0ZXh0JywgcmVxdWlyZWQ6IHRydWUsIHNwYW46IHRydWUsIHJvd3M6IDMsXHJcbiAgICAgICAgICBpbmZvTWVzc2FnZTogJ0VudGVyIHlvdXIgY29tbWVudHMgYWJvdXQgdGhpcyBhcHByb3ZhbCBhY3Rpb24uIFRoaXMgd2lsbCBiZSB2aXNpYmxlIGluIHRoZSBhcHByb3ZhbCBoaXN0b3J5LicsXHJcbiAgICAgICAgICBoaW50IDogJ0RlY2xpbmUgY29tbWVudCBpcyByZXF1aXJlZCAhJ1xyXG4gICAgICAgIH1cclxuICAgICAgXSxcclxuICAgIH0sXHJcbiAgICBtb2RlOiAnZWRpdCcsXHJcbiAgICBidXR0b25zOiBbXHJcbiAgICAgIHsgbmFtZTogJ2VkaXQnLCBkaXNwbGF5OiAnRGVjbGluZScsIGNvbG9yOiAncmVkJywgYWN0aW9uOiB7IHVybDogJ2RlY2xpbmUnLCBtZXRob2Q6ICdwb3N0JyB9IH0gLy91cmwgcHJlY29uZmlndXJlZCB0byBiZSBkeW5hbWljXHJcbiAgICBdXHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIGFwcHJvdmVCdXR0b246IEJ1dHRvbiA9IHtcclxuICAgIG5hbWU6ICdhcHByb3ZlJywgdGlwOiAnQXBwcm92ZSBSZXF1ZXN0JywgZGlhbG9nOiB0cnVlLCBpbkRpYWxvZzogdHJ1ZSwgaWNvbjogeyBuYW1lOiAnZG9uZScgfSwgY29sb3I6ICdncmVlbicsIGRldGFpbHNDb25maWc6IHRoaXMuYXBwcm92ZUFjdGlvbkRldGFpbHNDb25maWcsIGlnbm9yZUFwcHJvdmFsOiB0cnVlLFxyXG4gICAgdmlzaWJsZTogeCA9PiB4LmNhbkFjdGlvblxyXG4gIH1cclxuXHJcbiAgZGVjbGluZUJ1dHRvbjogQnV0dG9uID0ge1xyXG4gICAgbmFtZTogJ2RlY2xpbmUnLCB0aXA6ICdEZWNsaW5lIFJlcXVlc3QnLCBkaWFsb2c6IHRydWUsIGluRGlhbG9nOiB0cnVlLCBpY29uOiB7IG5hbWU6ICdjbG9zZScgfSwgY29sb3I6ICdyZWQnLCBkZXRhaWxzQ29uZmlnOiB0aGlzLmRlY2xpbmVBY3Rpb25EZXRhaWxzQ29uZmlnLCBpZ25vcmVBcHByb3ZhbDogdHJ1ZSxcclxuICAgIHZpc2libGU6IHggPT4geC5jYW5BY3Rpb25cclxuICB9XHJcblxyXG4gIGNhbmNlbEJ1dHRvbjogQnV0dG9uID0ge1xyXG4gICAgbmFtZTogJ2NhbmNlbCcsIHRpcDogJ0NhbmNlbCBBcHByb3ZhbCcsIGluRGlhbG9nOiB0cnVlLCBpY29uOiB7IG5hbWU6ICdjYW5jZWwnIH0sIGNvbG9yOiAncmVkJywgYWN0aW9uOiB7IHVybDogJ2NhbmNlbCcsIG1ldGhvZDogJ3Bvc3QnLCB9LCBpZ25vcmVBcHByb3ZhbDogdHJ1ZSwgLy91cmwgcHJlY29uZmlndXJlZCB0byBiZSBkeW5hbWljXHJcbiAgICBjb25maXJtOiB7IG1lc3NhZ2U6ICdDYW5jZWwgYXBwcm92YWwgcmVxdWVzdD8gVGhpcyB3aWxsIHJldmVydCBjaGFuZ2VzIGFuZCBzdG9wIHRoZSBhcHByb3ZhbCBwcm9jZXNzLicgfSxcclxuICAgIHZpc2libGU6IHggPT4gIXguY2FuQWN0aW9uICYmIHguY2FuQ2FuY2VsXHJcbiAgfVxyXG5cclxuICBhcHByb3ZhbERldGFpbHNDb25maWc6IERldGFpbHNEaWFsb2dDb25maWcgPSB7XHJcbiAgICBmb3JtQ29uZmlnOiB0aGlzLmFwcHJvdmFsRm9ybUNvbmZpZyxcclxuICAgIGhlcm9GaWVsZDogJ2FwcHJvdmFsSUQnLFxyXG4gICAgdGFibGVDb25maWdzOiBbdGhpcy5hcHByb3ZhbEhpc3RvcnlUYWJsZUNvbmZpZ10sXHJcblxyXG4gICAgc3RlcENvbmZpZzoge1xyXG4gICAgICBzdGVwczogW10sXHJcbiAgICAgIGxvYWRBY3Rpb246IHsgdXJsOiBgYXBwcm92YWxzL3N0ZXBzL3tpZH1gIH0sXHJcbiAgICAgIGxvYWRJREZpZWxkOiAnYXBwcm92YWxJRCcsXHJcbiAgICAgIHZhbHVlRmllbGQ6ICdjdXJyZW50TGV2ZWwnXHJcbiAgICB9LFxyXG5cclxuICAgIGJ1dHRvbnMgOiBbXHJcbiAgICAgIHRoaXMuYXBwcm92ZUJ1dHRvbixcclxuICAgICAgdGhpcy5kZWNsaW5lQnV0dG9uLFxyXG4gICAgICB0aGlzLmNhbmNlbEJ1dHRvblxyXG4gICAgXVxyXG5cclxuICB9O1xyXG5cclxuXHJcbiAgdmlld0FwcHJvdmFsQnV0dG9uOiBCdXR0b24gPSB7XHJcbiAgICBuYW1lOiAnaW5mbycsIHRpcDogJ0FwcHJvdmFsIEluZm9ybWF0aW9uJywgZGlhbG9nOiB0cnVlLCBpY29uOiB7IG5hbWU6ICdpbmZvJywgIH0sIGRldGFpbHNDb25maWc6IHRoaXMuYXBwcm92YWxEZXRhaWxzQ29uZmlnLCBpZ25vcmVBcHByb3ZhbDogdHJ1ZSxcclxuICAgIHZpc2libGU6IHggPT4geC5jYW5BY3Rpb24gfHwgeC5jYW5DYW5jZWxcclxuICB9XHJcblxyXG5cclxuICAvL3JlY2VpdmVkIGFwcHJvdmFsc1xyXG4gIHJlY2VpdmVkQXBwcm92YWxzVGFibGVDb25maWc6IFRhYmxlQ29uZmlnID0ge1xyXG4gICAgc2hvd0ZpbHRlcjogdHJ1ZSxcclxuICAgIG1pbkNvbHVtbnM6IFsnbWVzc2FnZScsICdzdGF0dXNOYW1lJ10sXHJcbiAgICBtaW5CdXR0b25zOiBbJ3ZpZXcnLCAnYXBwcm92ZScsICdkZWNsaW5lJ10sXHJcbiAgICBmbGF0QnV0dG9uczogdHJ1ZSxcclxuICAgIGdyZXlPdXQ6ICh4KSA9PiB4LmlzR3JleWVkT3V0LFxyXG4gICAgLy8gbG9nUmVzcG9uc2U6IHRydWUsXHJcbiAgICBjb2xsYXBzZUJ1dHRvbnM6IHRydWUsXHJcbiAgICBjb2x1bW5zOiBbXHJcbiAgICAgIHsgbmFtZTogJ2NyZWF0ZWREYXRlJywgdHlwZTogJ2RhdGV0aW1lJywgYWxpYXM6ICdEYXRlJyB9LFxyXG4gICAgICB7IG5hbWU6ICdjcmVhdGVkQnlOYW1lJywgYWxpYXM6ICdSZXF1ZXN0IEJ5JywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ21lc3NhZ2UnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAge1xyXG4gICAgICAgIG5hbWU6ICd0eXBlTmFtZScsIGFsaWFzOiAnVHlwZScsIHR5cGU6ICdjaGlwJyxcclxuICAgICAgICBjb2xvcnM6IFtcclxuICAgICAgICAgIHsgbmFtZTogJyM2NkJCNkEnLCBjb25kaXRpb246IHggPT4geC50eXBlID09PSAwIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICdvcmFuZ2UnLCBjb25kaXRpb246IHggPT4geC50eXBlID09PSAxIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICcjRjQ0MzM2JywgY29uZGl0aW9uOiB4ID0+IHgudHlwZSA9PT0gMiB9XHJcbiAgICAgICAgXVxyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgbmFtZTogJ3N0YXR1c05hbWUnLCBhbGlhczogJ1N0YXR1cycsIHR5cGU6ICdjaGlwJywgZGV0YWlsc0NvbmZpZzogdGhpcy5hcHByb3ZhbERldGFpbHNDb25maWcsXHJcbiAgICAgICAgY29sb3JzOiBbXHJcbiAgICAgICAgICB7IG5hbWU6ICcjOTBBNEFFJywgY29uZGl0aW9uOiB4ID0+IHguc3RhdHVzID09PSAwIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICcjNjZCQjZBJywgY29uZGl0aW9uOiB4ID0+IHguc3RhdHVzID09PSAxIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICcjRjQ0MzM2JywgY29uZGl0aW9uOiB4ID0+IHguc3RhdHVzID09PSAyIH1cclxuICAgICAgICBdXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBuYW1lOiAnY3VycmVudExldmVsTmFtZScsIHR5cGU6ICd0ZXh0JywgYWxpYXM6ICdDdXJyZW50IExldmVsJyxcclxuICAgICAgICBpY29uczogW1xyXG4gICAgICAgICAgeyBuYW1lOiAnZG9uZScsIGNvbG9yOiAnIzY2QkI2QScsIGNvbmRpdGlvbjogeCA9PiB4LnN0YXR1cyA9PT0gJ0FwcHJvdmVkJywgdGlwOiAnQXBwcm92ZWQnIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICdjbG9zZScsIGNvbG9yOiAnI0Y0NDMzNicsIGNvbmRpdGlvbjogeCA9PiB4LnN0YXR1cyA9PT0gJ0RlY2xpbmVkJywgdGlwOiAnRGVjbGluZWQnIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICdzY2hlZHVsZScsIGNvbG9yOiAnI0ZGQzEwNycsIGNvbmRpdGlvbjogeCA9PiB4LnN0YXR1cyA9PT0gJ1BlbmRpbmcnLCB0aXA6ICdQZW5kaW5nJyB9XHJcbiAgICAgICAgXVxyXG4gICAgICB9LFxyXG4gICAgICB7IG5hbWU6ICd1cGRhdGVkQnlOYW1lJywgYWxpYXM6ICdBY3Rpb25lZCBCeScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICd1cGRhdGVkRGF0ZURpc3BsYXknLCB0eXBlOiAnZGF0ZXRpbWUnLCBhbGlhczogJ0FjdGlvbmVkIERhdGUnIH0sXHJcbiAgICBdLFxyXG5cclxuICAgIGJ1dHRvbnM6IFtcclxuICAgICAgdGhpcy52aWV3QXBwcm92YWxCdXR0b24sXHJcbiAgICAgIHRoaXMuYXBwcm92ZUJ1dHRvbixcclxuICAgICAgdGhpcy5kZWNsaW5lQnV0dG9uLFxyXG4gICAgXSxcclxuXHJcbiAgICBsb2FkQWN0aW9uOiB7IHVybDogJ2FwcHJvdmFscy9hbGwveCcgfVxyXG4gIH07XHJcblxyXG5cclxuICAvL3NlbmQgYXBwcm92YWxzXHJcbiAgc2VudEFwcHJvdmFsc1RhYmxlQ29uZmlnOiBUYWJsZUNvbmZpZyA9IHtcclxuICAgIC4uLnRoaXMucmVjZWl2ZWRBcHByb3ZhbHNUYWJsZUNvbmZpZyxcclxuICAgIGJ1dHRvbnM6IFtcclxuICAgICAgLy8gdGhpcy52aWV3QXBwcm92YWxCdXR0b24sXHJcbiAgICAgIHRoaXMuY2FuY2VsQnV0dG9uLFxyXG4gICAgXSxcclxuICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnYXBwcm92YWxzL3NlbnQveCcgfVxyXG4gIH07XHJcblxyXG5cclxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLU90aGVyIGNvZGVcclxuXHJcbiAgcHJpdmF0ZSBsaXN0Q2FjaGU6IHsgW2tleTogc3RyaW5nXTogYW55IH0gPSB7fTtcclxuICBwcml2YXRlIGNhY2hlRHVyYXRpb24gPSA1ICogNjAgKiAxMDAwO1xyXG4gIHByaXZhdGUgY2FjaGVUaW1lc3RhbXBzOiB7IFtrZXk6IHN0cmluZ106IG51bWJlciB9ID0ge307XHJcblxyXG4gIHB1YmxpYyBDYWxsQXBpKGFjdGlvbjogQWN0aW9uLCBkYXRhOiBhbnkgPSAnJyApIHtcclxuXHJcbiAgICBpZiAoYWN0aW9uLnVybC5pbmNsdWRlcygnL2xpc3QvJykpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuaGFuZGxlTGlzdENhbGwoYWN0aW9uKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoIWFjdGlvbi5tZXRob2Qpe1xyXG4gICAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5HZXQoYWN0aW9uLnVybCk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYoYWN0aW9uLm1ldGhvZCA9PSdnZXQnKXtcclxuICAgICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuR2V0KGFjdGlvbi51cmwpO1xyXG4gICAgfSBlbHNlIGlmIChhY3Rpb24ubWV0aG9kID09ICdwb3N0Jyl7XHJcblxyXG4gICAgICBpZiAoYWN0aW9uLmlzRm9ybURhdGEgfHwgYWN0aW9uLnVybC5pbmNsdWRlcygnL2Zvcm0nKSkge1xyXG4gICAgICAgIGFjdGlvbi5pc0Zvcm1EYXRhID0gdHJ1ZTtcclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0X0Zvcm1EYXRhKGFjdGlvbi51cmwsIGRhdGEpO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKGFjdGlvbi51cmwgPT0gJ2FwcHJvdmUnIHx8IGFjdGlvbi51cmwgPT0gJ2RlY2xpbmUnIHx8IGFjdGlvbi51cmwgPT0gJ2NhbmNlbCcpIHtcclxuXHJcbiAgICAgICAgY29uc29sZS5sb2coZGF0YSk7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdChgJHtkYXRhLmVuZHBvaW50fS9hcHByb3ZlP2FjdGlvbj0ke2FjdGlvbi51cmx9YCwgZGF0YSk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZXtcclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KGFjdGlvbi51cmwsIGRhdGEpO1xyXG4gICAgICB9XHJcblxyXG5cclxuICAgIH1cclxuICAgIGVsc2V7XHJcbiAgICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLlBvc3QoYWN0aW9uLnVybCwgZGF0YSk7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBoYW5kbGVMaXN0Q2FsbChhY3Rpb246IEFjdGlvbikge1xyXG4gICAgY29uc3QgY2FjaGVLZXkgPSBhY3Rpb24udXJsO1xyXG4gICAgY29uc3QgY3VycmVudFRpbWUgPSBEYXRlLm5vdygpO1xyXG5cclxuICAgIC8vIFJldHVybiBjYWNoZSBpZiB2YWxpZCBhbmQgbm90IGZvcmNpbmcgcmVmcmVzaFxyXG4gICAgaWYgKCFhY3Rpb24uc2tpcENhY2hlICYmIHRoaXMubGlzdENhY2hlW2NhY2hlS2V5XSAmJiBjdXJyZW50VGltZSAtIHRoaXMuY2FjaGVUaW1lc3RhbXBzW2NhY2hlS2V5XSA8IHRoaXMuY2FjaGVEdXJhdGlvbikge1xyXG4gICAgICByZXR1cm4gb2Yoe1xyXG4gICAgICAgIHN1Y2Nlc3M6IHRydWUsXHJcbiAgICAgICAgZGF0YTogdGhpcy5saXN0Q2FjaGVbY2FjaGVLZXldXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIE1ha2UgQVBJIGNhbGwgYW5kIGNhY2hlIHJlc3VsdFxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuR2V0KGFjdGlvbi51cmwpLnBpcGUoXHJcbiAgICAgIHRhcCgocmVzcG9uc2U6IEFwaVJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3BvbnNlLnN1Y2Nlc3MgJiYgcmVzcG9uc2U/LmRhdGE/Lmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgIHRoaXMubGlzdENhY2hlW2NhY2hlS2V5XSA9IHJlc3BvbnNlLmRhdGE7XHJcbiAgICAgICAgICB0aGlzLmNhY2hlVGltZXN0YW1wc1tjYWNoZUtleV0gPSBjdXJyZW50VGltZTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLy8gTWV0aG9kIHRvIGludmFsaWRhdGUgY2FjaGUgb24gZGF0YSBjaGFuZ2VcclxuICBwdWJsaWMgaW52YWxpZGF0ZUxpc3RDYWNoZShlbnRpdHlVcmw6IHN0cmluZykge1xyXG4gICAgT2JqZWN0LmtleXModGhpcy5saXN0Q2FjaGUpLmZvckVhY2goa2V5ID0+IHtcclxuICAgICAgLy8gSW52YWxpZGF0ZSBhbnkgY2FjaGUgZW50cmllcyByZWxhdGVkIHRvIHRoaXMgZW50aXR5XHJcbiAgICAgIGlmIChrZXkuaW5jbHVkZXMoZW50aXR5VXJsKSkge1xyXG4gICAgICAgIGRlbGV0ZSB0aGlzLmxpc3RDYWNoZVtrZXldO1xyXG4gICAgICAgIGRlbGV0ZSB0aGlzLmNhY2hlVGltZXN0YW1wc1trZXldO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBDbGVhckNhY2hlKCl7XHJcbiAgICB0aGlzLmxpc3RDYWNoZSA9IHt9O1xyXG5cclxuICB9XHJcblxyXG4gIHB1YmxpYyBDaGVja1dlbGNvbWVkKHBhdGg6IHN0cmluZyA9ICdob21lL2FkbWluL3dlbGNvbWUnKSB7XHJcbiAgICB0aGlzLkNhbGxBcGkoeyB1cmw6ICd0ZW5hbnQvd2VsY29tZS94JyB9KS5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgaWYgKCF4LmRhdGEpIHtcclxuICAgICAgICB0aGlzLk5hdmlnYXRlKHBhdGgpXHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIHB1YmxpYyBOYXZpZ2F0ZShwYXRoOiBzdHJpbmcpIHtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtwYXRoXSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgTmF2aWdhdGVXaXRoVmFsdWUocGF0aDogc3RyaW5nLCB2YWx1ZSA6IHN0cmluZyl7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbcGF0aF0sIHtcclxuICAgICAgcXVlcnlQYXJhbXM6IHsgdjogdmFsdWUgfSxcclxuICAgICAgcXVlcnlQYXJhbXNIYW5kbGluZzogJ21lcmdlJyxcclxuICAgICAgc2tpcExvY2F0aW9uQ2hhbmdlOiBmYWxzZVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgR2V0TmF2aWdhdGlvblZhbHVlKCl7XHJcbiAgICBpZiAodGhpcy5yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtc1tcInZcIl0gIT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLnJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zW1widlwiXVxyXG4gICAgfWVsc2V7XHJcbiAgICAgIHJldHVybiBcIlwiO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHRtcEFjY291bnRJRDtcclxuXHJcblxyXG5cclxuICAvL1VzZXJzXHJcbiAgcHVibGljIEdldFVzZXIoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5HZXQoXCJVc2VyL2FsbC94XCIpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIFJlZ2lzdGVyQWNjb3VudCh1KSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KFwiVXNlci9yZWdpc3RlclwiLCB1KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBHZXRVc2VyQnlJRCh2YWw6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuR2V0KGBVc2VyL2lkLyR7dmFsfWApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIFVwZGF0ZVVzZXIocHJvZmlsZSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdChcIlVzZXIvZWRpdFwiLCBwcm9maWxlKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBVbmxvY2tVc2VyKHVzZXIpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLlBvc3QoXCJVc2VyL3VubG9ja1wiLCB1c2VyKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBMb2NrVXNlcih1c2VyKSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KFwiVXNlci9sb2NrXCIsIHVzZXIpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIERlbGV0ZVVzZXIodXNlcikge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdChcIlVzZXIvZGVsZXRlXCIsIHVzZXIpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIExvZ2luKHU6IFVzZXIpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLlBvc3QoXCJVc2VyL2xvZ2luXCIsIHUpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIENoYW5nZVBhc3N3b3JkKHUpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLlBvc3QoXCJVc2VyL2NoYW5nZXBhc3N3b3JkLXNlbGZcIiwgdSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgQ2hhbmdlUGFzc3dvcmRBZG1pbih1KSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KFwiVXNlci9jaGFuZ2VwYXNzd29yZC1hZG1pblwiLCB1KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBTZWxmUmVzZXQodTogVXNlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KFwiQmFzaWMvU2VsZlJlc2V0XCIsIHUpO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vUm9sZXNcclxuXHJcbiAgcHVibGljIFBvc3RSb2xlKHJvbGUsIGFjdGlvbjogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KGBSb2xlP2FjdGlvbj0ke2FjdGlvbn1gLCByb2xlKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBQdXRSb2xlKHJvbGUpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLlB1dChcIlJvbGVcIiwgcm9sZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgR2V0Um9sZShieTogc3RyaW5nLCB2YWw6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuR2V0KFwiUm9sZS9hbGwveFwiKTtcclxuICB9XHJcblxyXG5cclxuXHJcbiAgLy9Mb2dzXHJcbiAgcHVibGljIEdldExvZyhieTogc3RyaW5nLCB2YWw6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuR2V0KFwiTG9nL2FsbC94XCIpO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vU2V0dGluZ3NcclxuICBwdWJsaWMgR2V0U2V0dGluZyhieTogc3RyaW5nLCB2YWw6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuR2V0KFwiU2V0dGluZy9hbGwveFwiKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBVcGRhdGVTZXR0aW5nKHNldHRpbmcsIGFjdGlvbjogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KGBTZXR0aW5nP2FjdGlvbj0ke2FjdGlvbn1gLCBzZXR0aW5nKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
|
|
782
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWxpYi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL3NlcnZpY2VzL2RhdGFsaWIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBdUIsU0FBUyxFQUFVLE9BQU8sRUFBZ0QsTUFBTSxvQkFBb0IsQ0FBQztBQUNuSSxPQUFPLEVBQUUsZUFBZSxFQUFjLEVBQUUsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7QUFRNUQsTUFBTSxPQUFPLGNBQWM7SUFFekIsWUFBb0IsV0FBd0IsRUFBUyxNQUFjLEVBQVUsS0FBcUI7UUFBOUUsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFtSWxHLGNBQVMsR0FBRyxJQUFJLFNBQVMsRUFBRSxDQUFDO1FBQ3BCLG9CQUFlLEdBQUcsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3ZELG9CQUFlLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQU03RCxZQUFPLEdBQUcsSUFBSSxPQUFPLENBQUM7UUFDdEIsYUFBUSxHQUFHLElBQUksT0FBTyxDQUFDO1FBQ3ZCLGFBQVEsR0FBRyxJQUFJLE9BQU8sQ0FBQztRQUN2QixhQUFRLEdBQUcsSUFBSSxPQUFPLENBQUM7UUFDdkIsWUFBTyxHQUFHLElBQUksT0FBTyxDQUFDO1FBQ3RCLGdCQUFXLEdBQUcsSUFBSSxPQUFPLENBQUM7UUFFMUIsbUJBQWMsR0FBRyxJQUFJLE9BQU8sQ0FBQztRQUM3QixlQUFVLEdBQUcsSUFBSSxPQUFPLENBQUM7UUFDekIsa0JBQWEsR0FBRyxJQUFJLE9BQU8sQ0FBQztRQUM1QixhQUFRLEdB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clxuaW1wb3J0IHsgQWN0aW9uLCBBcGlSZXNwb25zZSwgQXBwQ29uZmlnLCBCdXR0b24sIENhcEl0ZW0sIERldGFpbHNEaWFsb2dDb25maWcsIEZvcm1Db25maWcsIFRhYmxlQ29uZmlnIH0gZnJvbSAnLi4vY2xhc3Nlcy9DbGFzc2VzJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBvZiwgdGFwIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEh0dHBTZXJ2aWNlIH0gZnJvbSAnLi9odHRwLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4uL2NsYXNzZXMvTGliQ2xhc3Nlcyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEYXRhU2VydmljZUxpYiB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cFNlcnZpY2U6IEh0dHBTZXJ2aWNlLCBwdWJsaWMgcm91dGVyOiBSb3V0ZXIsIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlKSB7XHJcblxyXG4gICAgdGhpcy5hcHBDb25maWcuYXBwTmFtZSA9IFwiQXBwLU5hbWVcIjtcclxuICAgIHRoaXMuYXBwQ29uZmlnLmxvZ28gPSBcIi4vYXNzZXRzL2xvZ28ucG5nXCJcclxuICAgIHRoaXMuYXBwQ29uZmlnLkFEQXV0aCA9IHRydWU7XHJcblxyXG4gICAgdGhpcy5hcHBDb25maWcuY2FwSXRlbXMgPSBbdGhpcy5jYXBNdWx0aXRlbmFudCwgdGhpcy5jYXBBZG1pbiwgdGhpcy5jYXBIb21lXTtcclxuXHJcblxyXG4gICAgdGhpcy5jYXBIb21lLm5hbWUgPSBcImNhcDFcIjtcclxuICAgIHRoaXMuY2FwSG9tZS5kaXNwbGF5ID0gXCJIb21lXCI7XHJcbiAgICB0aGlzLmNhcEhvbWUubGluayA9IFwiaG9tZVwiO1xyXG4gICAgdGhpcy5jYXBIb21lLmljb24gPVwiaG9tZVwiO1xyXG5cclxuXHJcbiAgICB0aGlzLmNhcEFkbWluLm5hbWUgPSBcImNhcDJcIjtcclxuICAgIHRoaXMuY2FwQWRtaW4uZGlzcGxheSA9IFwiQWRtaW5cIjtcclxuICAgIHRoaXMuY2FwQWRtaW4uaWNvbiA9IFwic2VjdXJpdHlcIlxyXG4gICAgdGhpcy5jYXBBZG1pbi5jYXBTdWJJdGVtcyA9IFt0aGlzLmNhcFVzZXJzLCB0aGlzLmNhcFJvbGVzLCB0aGlzLmNhcExvZ3MsIHRoaXMuY2FwU2V0dGluZ3MsIHRoaXMuY2FwQXBwcm92YWxzQ29uZmlnXTtcclxuXHJcbiAgICB0aGlzLmNhcFVzZXJzLm5hbWUgPSBcImNhcDNcIjtcclxuICAgIHRoaXMuY2FwVXNlcnMuZGlzcGxheSA9IFwiVXNlcnNcIjtcclxuICAgIHRoaXMuY2FwVXNlcnMubGluayA9IFwiaG9tZS9hZG1pbi91c2Vyc1wiO1xyXG4gICAgdGhpcy5jYXBVc2Vycy5pY29uID0gXCJncm91cFwiO1xyXG5cclxuICAgIHRoaXMuY2FwUm9sZXMubmFtZSA9IFwiY2FwNFwiXHJcbiAgICB0aGlzLmNhcFJvbGVzLmRpc3BsYXkgPSBcIlJvbGVzXCI7XHJcbiAgICB0aGlzLmNhcFJvbGVzLmxpbmsgPSBcImhvbWUvYWRtaW4vcm9sZXNcIjtcclxuICAgIHRoaXMuY2FwUm9sZXMuaWNvbiA9IFwid29ya1wiO1xyXG5cclxuICAgIHRoaXMuY2FwTG9ncy5uYW1lID0gXCJjYXA1XCJcclxuICAgIHRoaXMuY2FwTG9ncy5kaXNwbGF5ID0gXCJMb2dzXCI7XHJcbiAgICB0aGlzLmNhcExvZ3MubGluayA9IFwiaG9tZS9hZG1pbi9sb2dzXCI7XHJcbiAgICB0aGlzLmNhcExvZ3MuaWNvbiA9IFwidGV4dF9zbmlwcGV0XCI7XHJcblxyXG4gICAgdGhpcy5jYXBTZXR0aW5ncy5uYW1lID0gXCJjYXA2XCJcclxuICAgIHRoaXMuY2FwU2V0dGluZ3MuZGlzcGxheSA9IFwiU2V0dGluZ3NcIjtcclxuICAgIHRoaXMuY2FwU2V0dGluZ3MubGluayA9IFwiaG9tZS9hZG1pbi9zZXR0aW5nc1wiO1xyXG4gICAgdGhpcy5jYXBTZXR0aW5ncy5pY29uID1cInNldHRpbmdzXCI7XHJcblxyXG5cclxuICAgIHRoaXMuY2FwTXVsdGl0ZW5hbnQubmFtZSA9IFwiY2FwN1wiXHJcbiAgICB0aGlzLmNhcE11bHRpdGVuYW50LmRpc3BsYXkgPSBcIk11bHRpdGVuYW50XCI7XHJcbiAgICB0aGlzLmNhcE11bHRpdGVuYW50Lmljb24gPSBcImFwYXJ0bWVudFwiXHJcbiAgICB0aGlzLmNhcE11bHRpdGVuYW50LmNhcFN1Ykl0ZW1zID0gW3RoaXMuY2FwVGVuYW50cywgdGhpcy5jYXBNZW1iZXJzaGlwLCB0aGlzLmNhcFBsYW5zIF07XHJcblxyXG4gICAgdGhpcy5jYXBUZW5hbnRzLm5hbWUgPSBcImNhcDhcIlxyXG4gICAgdGhpcy5jYXBUZW5hbnRzLmRpc3BsYXkgPSBcIlRlbmFudHNcIjtcclxuICAgIHRoaXMuY2FwVGVuYW50cy5saW5rID0gXCJob21lL2FkbWluL3RlbmFudHNcIjtcclxuXHJcbiAgICB0aGlzLmNhcE1lbWJlcnNoaXAubmFtZSA9IFwiY2FwOVwiXHJcbiAgICB0aGlzLmNhcE1lbWJlcnNoaXAuZGlzcGxheSA9IFwiTWVtYmVyc2hpcFwiO1xyXG4gICAgdGhpcy5jYXBNZW1iZXJzaGlwLmxpbmsgPSBcImhvbWUvYWRtaW4vbWVtYmVyc2hpcFwiO1xyXG5cclxuICAgIHRoaXMuY2FwUGxhbnMubmFtZSA9IFwiY2FwMTBcIlxyXG4gICAgdGhpcy5jYXBQbGFucy5kaXNwbGF5ID0gXCJQbGFuc1wiO1xyXG4gICAgdGhpcy5jYXBQbGFucy5saW5rID0gXCJob21lL2FkbWluL3BsYW5zXCI7XHJcblxyXG5cclxuICAgIHRoaXMuY2FwR2VuZXJhbC5uYW1lID0gXCJjYXAxMVwiXHJcbiAgICB0aGlzLmNhcEdlbmVyYWwuZGlzcGxheSA9IFwiR2VuZXJhbFwiO1xyXG4gICAgdGhpcy5jYXBHZW5lcmFsLmNhcFN1Ykl0ZW1zID0gW3RoaXMuY2FwTm90aWZpY2F0aW9ucyx0aGlzLmNhcEFwcHJvdmFscyx0aGlzLmNhcEN1c3RvbWVycywgdGhpcy5jYXBJbnZlbnRvcnksIHRoaXMuY2FwQWNjb3VudHMsIHRoaXMuY2FwU3VwcGxpZXJzLCB0aGlzLmNhcFRhc2tzXTtcclxuXHJcbiAgICB0aGlzLmNhcE5vdGlmaWNhdGlvbnMubmFtZSA9IFwiY2FwMVwiXHJcbiAgICB0aGlzLmNhcE5vdGlmaWNhdGlvbnMuZGlzcGxheSA9IFwiTm90aWZpY2F0aW9uc1wiO1xyXG4gICAgdGhpcy5jYXBOb3RpZmljYXRpb25zLmxpbmsgPSBcImhvbWUvYWRtaW4vbm90aWZpY2F0aW9uc1wiO1xyXG4gICAgdGhpcy5jYXBOb3RpZmljYXRpb25zLmljb24gPSBcIm5vdGlmaWNhdGlvbnNcIlxyXG5cclxuICAgIHRoaXMuY2FwQ3VzdG9tZXJzLm5hbWUgPSBcImNhcDEyXCJcclxuICAgIHRoaXMuY2FwQ3VzdG9tZXJzLmRpc3BsYXkgPSBcIkN1c3RvbWVyc1wiO1xyXG4gICAgdGhpcy5jYXBDdXN0b21lcnMubGluayA9IFwiaG9tZS9hZG1pbi9jdXN0b21lcnNcIjtcclxuICAgIHRoaXMuY2FwQ3VzdG9tZXJzLmljb24gPSBcImdyb3VwXCJcclxuXHJcbiAgICB0aGlzLmNhcEludmVudG9yeS5uYW1lID0gXCJjYXAxM1wiXHJcbiAgICB0aGlzLmNhcEludmVudG9yeS5kaXNwbGF5ID0gXCJJbnZlbnRvcnlcIjtcclxuICAgIHRoaXMuY2FwSW52ZW50b3J5LmxpbmsgPSBcImhvbWUvYWRtaW4vaW52ZW50b3J5XCI7XHJcbiAgICB0aGlzLmNhcEludmVudG9yeS5pY29uID0gXCJzdG9yZWZyb250XCJcclxuXHJcbiAgICB0aGlzLmNhcEFjY291bnRzLm5hbWUgPSBcImNhcDE0XCJcclxuICAgIHRoaXMuY2FwQWNjb3VudHMuZGlzcGxheSA9IFwiQWNjb3VudHNcIjtcclxuICAgIHRoaXMuY2FwQWNjb3VudHMubGluayA9IFwiaG9tZS9hZG1pbi9hY2NvdW50c1wiO1xyXG4gICAgdGhpcy5jYXBBY2NvdW50cy5pY29uID0gXCJhY2NvdW50X2JhbGFuY2Vfd2FsbGV0XCJcclxuXHJcbiAgICB0aGlzLmNhcFN1cHBsaWVycy5uYW1lID0gXCJjYXAxNVwiXHJcbiAgICB0aGlzLmNhcFN1cHBsaWVycy5kaXNwbGF5ID0gXCJTdXBwbGllcnNcIjtcclxuICAgIHRoaXMuY2FwU3VwcGxpZXJzLmxpbmsgPSBcImhvbWUvYWRtaW4vc3VwcGxpZXJzXCI7XHJcbiAgICB0aGlzLmNhcFN1cHBsaWVycy5pY29uID0gXCJncm91cHNcIlxyXG5cclxuICAgIHRoaXMuY2FwVGFza3MubmFtZSA9IFwiY2FwMTZcIlxyXG4gICAgdGhpcy5jYXBUYXNrcy5kaXNwbGF5ID0gXCJUYXNrc1wiO1xyXG4gICAgdGhpcy5jYXBUYXNrcy5saW5rID0gXCJob21lL2FkbWluL3Rhc2tzXCI7XHJcbiAgICB0aGlzLmNhcFRhc2tzLmljb24gPSBcImNoZWNrX2JveFwiXHJcblxyXG5cclxuICAgIHRoaXMuY2FwSFIubmFtZSA9IFwiY2FwMTdcIlxyXG4gICAgdGhpcy5jYXBIUi5kaXNwbGF5ID0gXCJIUlwiO1xyXG4gICAgdGhpcy5jYXBIUi5saW5rID0gXCJob21lL2FkbWluL2hyXCI7XHJcbiAgICB0aGlzLmNhcEhSLmljb24gPSBcImRpdmVyc2l0eV8zXCJcclxuICAgIHRoaXMuY2FwSFIuY2FwU3ViSXRlbXMgPSBbdGhpcy5jYXBEZXBhcnRtZW50cywgdGhpcy5jYXBQb3NpdGlvbnMsIHRoaXMuY2FwRW1wbG95ZWVzLF1cclxuXHJcbiAgICB0aGlzLmNhcEVtcGxveWVlcy5uYW1lID0gXCJjYXAxOFwiXHJcbiAgICB0aGlzLmNhcEVtcGxveWVlcy5kaXNwbGF5ID0gXCJFbXBsb3llZXNcIjtcclxuICAgIHRoaXMuY2FwRW1wbG95ZWVzLmxpbmsgPSBcImhvbWUvYWRtaW4vZW1wbG95ZWVzXCI7XHJcbiAgICB0aGlzLmNhcEVtcGxveWVlcy5pY29uID0gXCJncm91cFwiXHJcblxyXG4gICAgdGhpcy5jYXBEZXBhcnRtZW50cy5uYW1lID0gXCJjYXAxOVwiXHJcbiAgICB0aGlzLmNhcERlcGFydG1lbnRzLmRpc3BsYXkgPSBcIkRlcGFydG1lbnRzXCI7XHJcbiAgICB0aGlzLmNhcERlcGFydG1lbnRzLmxpbmsgPSBcImhvbWUvYWRtaW4vZGVwYXJ0bWVudHNcIjtcclxuICAgIHRoaXMuY2FwRGVwYXJ0bWVudHMuaWNvbiA9IFwiYnVzaW5lc3NfY2VudGVyXCJcclxuXHJcbiAgICB0aGlzLmNhcFBvc2l0aW9ucy5uYW1lID0gXCJjYXAyMFwiXHJcbiAgICB0aGlzLmNhcFBvc2l0aW9ucy5kaXNwbGF5ID0gXCJQb3NpdGlvbnNcIjtcclxuICAgIHRoaXMuY2FwUG9zaXRpb25zLmxpbmsgPSBcImhvbWUvYWRtaW4vcG9zaXRpb25zXCI7XHJcbiAgICB0aGlzLmNhcFBvc2l0aW9ucy5pY29uID0gXCJwaWN0dXJlX2luX3BpY3R1cmVfbWVkaXVtXCJcclxuXHJcbiAgICB0aGlzLmNhcEFwcHJvdmFscy5uYW1lID0gXCJjYXAyMVwiXHJcbiAgICB0aGlzLmNhcEFwcHJvdmFscy5kaXNwbGF5ID0gXCJBcHByb3ZhbHNcIjtcclxuICAgIHRoaXMuY2FwQXBwcm92YWxzLmxpbmsgPSBcImhvbWUvYWRtaW4vYXBwcm92YWxzXCI7XHJcbiAgICB0aGlzLmNhcEFwcHJvdmFscy5pY29uID0gXCJydWxlXCJcclxuICAgIHRoaXMuY2FwQXBwcm92YWxzLmlzQm9vbCA9IHRydWU7XHJcblxyXG4gICAgdGhpcy5jYXBBcHByb3ZhbHNDb25maWcubmFtZSA9IFwiY2FwMjJcIlxyXG4gICAgdGhpcy5jYXBBcHByb3ZhbHNDb25maWcuZGlzcGxheSA9IFwiQXBwcm92YWxzIENvbmZpZ1wiO1xyXG4gICAgdGhpcy5jYXBBcHByb3ZhbHNDb25maWcubGluayA9IFwiaG9tZS9hZG1pbi9hcHByb3ZhbHMtY29uZmlnXCI7XHJcbiAgICB0aGlzLmNhcEFwcHJvdmFsc0NvbmZpZy5pY29uID0gXCJwdWJsaXNoZWRfd2l0aF9jaGFuZ2VzXCJcclxuICAgIHRoaXMuY2FwQXBwcm92YWxzQ29uZmlnLmlzQm9vbCA9IHRydWVcclxuXHJcblxyXG4gIH1cclxuXHJcblxyXG4gIGFwcENvbmZpZyA9IG5ldyBBcHBDb25maWcoKTtcclxuICBwcml2YXRlIGFwcENvbmZpZ1NvdXJjZSA9IG5ldyBCZWhhdmlvclN1YmplY3QodGhpcy5hcHBDb25maWcpO1xyXG4gIHB1YmxpYyBhcHBDb25maWdPYnNlcnYgPSB0aGlzLmFwcENvbmZpZ1NvdXJjZS5hc09ic2VydmFibGUoKTtcclxuICBVcGRhdGVBcHBDb25maWcoY29uZmlnOiBBcHBDb25maWcpIHtcclxuICAgIHRoaXMuYXBwQ29uZmlnU291cmNlLm5leHQoY29uZmlnKTtcclxuICAgIHRoaXMuYXBwQ29uZmlnID0gY29uZmlnO1xyXG4gIH1cclxuXHJcbiAgY2FwSG9tZSA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcEFkbWluID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwVXNlcnMgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBSb2xlcyA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcExvZ3MgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBTZXR0aW5ncyA9IG5ldyBDYXBJdGVtO1xyXG5cclxuICBjYXBNdWx0aXRlbmFudCA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcFRlbmFudHMgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBNZW1iZXJzaGlwID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwUGxhbnMgPSBuZXcgQ2FwSXRlbTtcclxuXHJcbiAgY2FwR2VuZXJhbCA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcEN1c3RvbWVycyA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcEludmVudG9yeSA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcEFjY291bnRzID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwU3VwcGxpZXJzID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwVGFza3MgPSBuZXcgQ2FwSXRlbTtcclxuXHJcbiAgY2FwSFIgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBFbXBsb3llZXMgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBEZXBhcnRtZW50cyA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcFBvc2l0aW9ucyA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcEdyYWRlcyA9IG5ldyBDYXBJdGVtO1xyXG5cclxuICBjYXBBcHByb3ZhbHMgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBBcHByb3ZhbHNDb25maWcgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBOb3RpZmljYXRpb25zID0gbmV3IENhcEl0ZW07XHJcblxyXG4gIHB1YmxpYyB0bXBQcm9maWxldXNlck5hbWUgPSBcIlwiO1xyXG5cclxuXHJcbiAgaXNQcm9jZXNzaW5nID0gZmFsc2U7XHJcblxyXG5cclxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tRGVwYXJ0bWVtdHMgRm9ybS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICBkZXBhcnRtZW50Rm9ybUNvbmZpZzogRm9ybUNvbmZpZyA9IHtcclxuICAgIHNlY3VyaXR5OiB7IGFsbG93OiBbdGhpcy5jYXBEZXBhcnRtZW50c10gfSxcclxuICAgIHRpdGxlIDogJ0RlcGFydG1lbnQnLFxyXG4gICAgZmllbGRzOiBbXHJcbiAgICAgIHsgbmFtZTogJ25hbWUnLCB0eXBlOiAndGV4dCcsIHJlcXVpcmVkOiB0cnVlIH0sXHJcbiAgICBdLFxyXG4gICAgbG9hZEFjdGlvbjogeyB1cmw6ICdkZXBhcnRtZW50cy9pZCcgfSxcclxuICAgIGhlcm9GaWVsZDogJ2RlcGFydG1lbnRJRCcsXHJcbiAgICBpbmNsdWRlQXVkaXQ6IHRydWUsXHJcbiAgfVxyXG5cclxuICBlZGl0RGVwYXJ0bWVudEJ1dHRvbjogQnV0dG9uID0geyBuYW1lOiAnZWRpdCcsIGRpYWxvZzogdHJ1ZSwgYWN0aW9uOiB7IHVybDogJ2RlcGFydG1lbnRzP2FjdGlvbj1lZGl0JywgbWV0aG9kOiAncG9zdCcsIHN1Y2Nlc3NNZXNzYWdlOiAnRWRpdGVkIFN1Y2Nlc3NmdWxseScgfSB9XHJcblxyXG4gIGRlcGFydG1lbnREZXRhaWxzQ29uZmlnOiBEZXRhaWxzRGlhbG9nQ29uZmlnID0ge1xyXG4gICAgZm9ybUNvbmZpZzogdGhpcy5kZXBhcnRtZW50Rm9ybUNvbmZpZyxcclxuICAgIGhlcm9GaWVsZDogJ2RlcGFydG1lbnRJRCcsXHJcbiAgICBidXR0b25zOiBbdGhpcy5lZGl0RGVwYXJ0bWVudEJ1dHRvbl0sXHJcbiAgfVxyXG5cclxuXHJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVBvc2l0aW9ucyBGb3JtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gIHBvc2l0aW9uRm9ybUNvbmZpZzogRm9ybUNvbmZpZyA9IHtcclxuICAgIHNlY3VyaXR5OiB7IGFsbG93OiBbdGhpcy5jYXBQb3NpdGlvbnNdIH0sXHJcbiAgICB0aXRsZTogJ1Bvc2l0aW9uJyxcclxuICAgIGZpZWxkczogW1xyXG4gICAgICB7IG5hbWU6ICduYW1lJywgdHlwZTogJ3RleHQnLCByZXF1aXJlZDogdHJ1ZSB9LFxyXG4gICAgICB7IG5hbWU6ICdkZXNjcmlwdGlvbicsIHR5cGU6ICd0ZXh0JywgfSxcclxuICAgICAgeyBuYW1lOiAnZGVwYXJ0bWVudElEJywgYWxpYXM6ICdEZXBhcnRtZW50JywgdHlwZTogJ3NlbGVjdCcsIGxvYWRBY3Rpb246IHsgdXJsOiAnZGVwYXJ0bWVudHMvbGlzdC94JyB9LCBkZXRhaWxzQ29uZmlnOiB0aGlzLmRlcGFydG1lbnREZXRhaWxzQ29uZmlnIH0sXHJcblxyXG4gICAgXSxcclxuICAgIGxvYWRBY3Rpb246IHsgdXJsOiAncG9zaXRpb25zL2lkJyB9LFxyXG4gICAgaGVyb0ZpZWxkOiAncG9zaXRpb25JRCcsXHJcbiAgICBpbmNsdWRlQXVkaXQ6IHRydWUsXHJcbiAgfVxyXG5cclxuICBlZGl0UG9zaXRpb25CdXR0b246IEJ1dHRvbiA9IHsgbmFtZTogJ2VkaXQnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdwb3NpdGlvbnM/YWN0aW9uPWVkaXQnLCBtZXRob2Q6ICdwb3N0Jywgc3VjY2Vzc01lc3NhZ2U6ICdFZGl0ZWQgU3VjY2Vzc2Z1bGx5JyB9IH1cclxuXHJcbiAgcG9zaXRpb25EZXRhaWxzQ29uZmlnIDogRGV0YWlsc0RpYWxvZ0NvbmZpZyA9IHtcclxuICAgIGZvcm1Db25maWcgOiB0aGlzLnBvc2l0aW9uRm9ybUNvbmZpZyxcclxuICAgIGhlcm9GaWVsZCA6ICdwb3NpdGlvbklEJyxcclxuICAgIGJ1dHRvbnM6IFt0aGlzLmVkaXRQb3NpdGlvbkJ1dHRvbl0sXHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1FbXBsb3llZXMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4gIGdlbmRlcnMgPSBbXHJcbiAgICB7IG5hbWU6ICdNYWxlJywgdmFsdWU6IDEgfSxcclxuICAgIHsgbmFtZTogJ0ZlbWFsZScsIHZhbHVlOiAyIH1cclxuICBdXHJcblxyXG4gIGVtcGxveWVlRm9ybUNvbmZpZzogRm9ybUNvbmZpZyA9IHtcclxuICAgIHNlY3VyaXR5IDoge2FsbG93IDogW3RoaXMuY2FwRW1wbG95ZWVzXX0sXHJcbiAgICBmaWVsZHM6IFtcclxuICAgICAgeyBuYW1lOiAnbmF0aW9uYWxJRCcsIHR5cGU6ICd0ZXh0JywgYWxpYXM6ICdOYXRpb25hbCBJRCcsIHJlcXVpcmVkOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ2dlbmRlcicsIGFsaWFzOiAnR2VuZGVyJywgdHlwZTogJ3NlbGVjdCcsIG9wdGlvbnM6IHRoaXMuZ2VuZGVycywgcmVxdWlyZWQ6IHRydWUgfSxcclxuICAgICAgeyBuYW1lOiAnZmlyc3ROYW1lJywgdHlwZTogJ3RleHQnLCByZXF1aXJlZDogdHJ1ZSB9LFxyXG4gICAgICB7IG5hbWU6ICdsYXN0TmFtZScsIHR5cGU6ICd0ZXh0JywgcmVxdWlyZWQ6IHRydWUgfSxcclxuICAgICAgeyBuYW1lOiAnZGF0ZU9mQmlydGgnLCB0eXBlOiAnZGF0ZScsIGFsaWFzOiAnRGF0ZSBvZiBCaXJ0aCcsIHJlcXVpcmVkOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ2VtcGxveW1lbnREYXRlJywgdHlwZTogJ2RhdGUnLCBhbGlhczogJ0VtcGxveW1lbnQgRGF0ZScsIHJlcXVpcmVkOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ2RlcGFydG1lbnRJRCcsIGFsaWFzOiAnRGVwYXJ0bWVudCcsIHR5cGU6ICdzZWxlY3QnLCBsb2FkQWN0aW9uIDogeyB1cmwgOiAnZGVwYXJ0bWVudHMvbGlzdC94J30sIGRldGFpbHNDb25maWc6IHRoaXMuZGVwYXJ0bWVudERldGFpbHNDb25maWcgfSxcclxuICAgICAgeyBuYW1lOiAncG9zaXRpb25JRCcsIGFsaWFzOiAnUG9zaXRpb24nLCB0eXBlOiAnc2VsZWN0JywgbG9hZEFjdGlvbjogeyB1cmw6ICdwb3NpdGlvbnMvbGlzdC94JyB9LCBtYXN0ZXJGaWVsZDogJ2RlcGFydG1lbnRJRCcsIGRldGFpbHNDb25maWc6IHRoaXMucG9zaXRpb25EZXRhaWxzQ29uZmlnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2VtcGxveW1lbnRTdGF0dXMnLCBhbGlhczogJ0VtcGxveW1lbnQgU3RhdHVzJywgdHlwZTogJ3NlbGVjdCcsIGxvYWRBY3Rpb246IHsgdXJsOiAnZW1wbG95ZWVzL2xpc3QvZW1wbG95bWVudC1zdGF0dXMnIH0gfSxcclxuICAgICAgeyBuYW1lOiAnYWN0aXZlU3RhdHVzJywgYWxpYXM6ICdBY3RpdmUgU3RhdHVzJywgdHlwZTogJ3NlbGVjdCcsIGxvYWRBY3Rpb246IHsgdXJsOiAnZW1wbG95ZWVzL2xpc3QvYWN0aXZlLXN0YXR1cycgfSB9LFxyXG4gICAgICB7IG5hbWU6ICdwYXNzcG9ydE51bWJlcicsIHR5cGU6ICd0ZXh0JywgYWxpYXM6ICdQYXNzcG9ydCBOdW1iZXInIH0sXHJcbiAgICAgIHsgbmFtZTogJ3VzZXJOYW1lJywgdHlwZTogJ3RleHQnLCBhbGlhczogJ1VzZXInLCBsb2FkQWN0aW9uOiB7IHVybDogJ3VzZXIvbGlzdC94JyB9LCBvcHRpb25EaXNwbGF5OiAnbmFtZScsIG9wdGlvblZhbHVlOiAndmFsdWUnLCBpbmZvTWVzc2FnZSA6ICdSZWxhdGVkIHVzZXIgYWNjb3VudCcgfSxcclxuICAgICAgeyBuYW1lOiAnYWRkcmVzcycsIHR5cGU6ICd0ZXh0Jywgcm93czogMiwgc3BhbjogdHJ1ZSB9LFxyXG4gICAgICB7IG5hbWU6ICdwaG9uZScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdlbWFpbCcsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdub3RlJywgdHlwZTogJ3RleHQnLCByb3dzOiAyLCBzcGFuOiB0cnVlIH0sXHJcbiAgICBdLFxyXG4gICAgbG9hZEFjdGlvbjogeyB1cmw6ICdlbXBsb3llZXMvaWQnIH0sXHJcbiAgICBoZXJvRmllbGQ6ICdlbXBsb3llZUlEJyxcclxuICAgIGluY2x1ZGVBdWRpdCA6IHRydWUsXHJcbiAgfVxyXG5cclxuICBlbXBsb3llZXNUYWJsZUNvbmZpZzogVGFibGVDb25maWcgPSB7XHJcbiAgICBzaG93RmlsdGVyOiB0cnVlLFxyXG4gICAgbWluQ29sdW1uczogWyduYW1lJywgJ2RlcGFydG1lbnROYW1lJywgJ3Bvc2l0aW9uTmFtZSddLFxyXG4gICAgZmxhdEJ1dHRvbnM6IHRydWUsXHJcbiAgICBjb2x1bW5zOiBbXHJcbiAgICAgIHsgbmFtZTogJ25hbWUnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnZ2VuZGVyTmFtZScsIHR5cGU6ICd0ZXh0JywgYWxpYXM6ICdHZW5kZXInIH0sXHJcbiAgICAgIHsgbmFtZTogJ2RlcGFydG1lbnROYW1lJywgdHlwZTogJ3RleHQnLCBhbGlhczogJ0RlcGFydG1lbnQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ3Bvc2l0aW9uTmFtZScsIHR5cGU6ICd0ZXh0JywgYWxpYXM6ICdQb3NpdGlvbicgfSxcclxuICAgICAgeyBuYW1lOiAnZW1wbG95bWVudFN0YXR1c05hbWUnLCB0eXBlOiAndGV4dCcsIGFsaWFzOiAnRW1wbG95bWVudCBTdGF0dXMnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2FjdGl2ZVN0YXR1c05hbWUnLCB0eXBlOiAndGV4dCcsIGFsaWFzOiAnQWN0aXZlIFN0YXR1cycgfSxcclxuICAgICAgeyBuYW1lOiAnaXNMaW5rZWQnLCB0eXBlOiAnY2hlY2tib3gnLCBhbGlhczogJ0xpbmtlZCcgfSxcclxuICAgIF0sXHJcbiAgICBidXR0b25zOiBbXHJcbiAgICAgIHsgbmFtZTogJ2NyZWF0ZScsIGRpc3BsYXk6ICdDcmVhdGUnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdlbXBsb3llZXM/YWN0aW9uPWNyZWF0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgICAgeyBuYW1lOiAndmlldycsIGRpYWxvZzogdHJ1ZSB9LFxyXG4gICAgICB7IG5hbWU6ICdlZGl0JywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnZW1wbG95ZWVzP2FjdGlvbj1lZGl0JywgbWV0aG9kOiAncG9zdCcgfSB9LFxyXG4gICAgICB7IG5hbWU6ICdkZWxldGUnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdlbXBsb3llZXM/YWN0aW9uPWRlbGV0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgIF0sXHJcbiAgICBsb2FkQWN0aW9uOiB7IHVybDogJ2VtcGxveWVlcy9hbGwveCcgfSxcclxuICAgIGZvcm1Db25maWc6IHRoaXMuZW1wbG95ZWVGb3JtQ29uZmlnXHJcbiAgfVxyXG5cclxuXHJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVBvc2l0aW9ucy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICBwb3NpdGlvbnNUYWJsZUNvbmZpZzogVGFibGVDb25maWcgPSB7XHJcbiAgICBzaG93RmlsdGVyOiB0cnVlLFxyXG4gICAgZmxhdEJ1dHRvbnM6IHRydWUsXHJcbiAgICBjb2x1bW5zOiBbXHJcbiAgICAgIHsgbmFtZTogJ25hbWUnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnZGVzY3JpcHRpb24nLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnZGVwYXJ0bWVudE5hbWUnLCB0eXBlOiAnY2hpcCcsIGRldGFpbHNDb25maWc6IHRoaXMuZGVwYXJ0bWVudERldGFpbHNDb25maWcsIGFsaWFzOiAnRGVwYXJ0bWVudCcgfSxcclxuICAgIF0sXHJcbiAgICBidXR0b25zOiBbXHJcbiAgICAgIHsgbmFtZTogJ2NyZWF0ZScsIGRpc3BsYXk6ICdDcmVhdGUnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdwb3NpdGlvbnM/YWN0aW9uPWNyZWF0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgICAge1xyXG4gICAgICAgIG5hbWU6ICd2aWV3JyxcclxuICAgICAgICBkaWFsb2c6IHRydWUsXHJcbiAgICAgICAgZGV0YWlsc0NvbmZpZzoge1xyXG4gICAgICAgICAgZm9ybUNvbmZpZzogdGhpcy5wb3NpdGlvbkZvcm1Db25maWcgLFxyXG4gICAgICAgICAgaGVyb0ZpZWxkOiAncG9zaXRpb25JRCcsXHJcbiAgICAgICAgICBidXR0b25zOiBbdGhpcy5lZGl0UG9zaXRpb25CdXR0b25dLFxyXG4gICAgICAgICAgdGFibGVDb25maWdzOiBbXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAuLi50aGlzLmVtcGxveWVlc1RhYmxlQ29uZmlnLFxyXG4gICAgICAgICAgICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnZW1wbG95ZWVzL3gveCcgfSwgbG9hZENyaXRlcmlhOiAncG9zaXRpb24nLCBsb2FkSURGaWVsZDogJ3Bvc2l0aW9uSUQnLFxyXG4gICAgICAgICAgICAgIGNvbHVtbnM6IHRoaXMuZW1wbG95ZWVzVGFibGVDb25maWcuY29sdW1ucy5maWx0ZXIoeCA9PiBbJ2RlcGFydG1lbnROYW1lJywgJ3Bvc2l0aW9uTmFtZSddLmluY2x1ZGVzKHgubmFtZSkgPT0gZmFsc2UpLFxyXG4gICAgICAgICAgICAgIHRhYlRpdGxlOiAnRW1wbG95ZWVzJyxcclxuICAgICAgICAgICAgICBlbGV2YXRpb246ICdub25lJyxcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgXSxcclxuICAgICAgICB9XHJcbiAgICAgIH0sXHJcbiAgICAgIHRoaXMuZWRpdFBvc2l0aW9uQnV0dG9uLFxyXG4gICAgICB7IG5hbWU6ICdkZWxldGUnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdwb3NpdGlvbnM/YWN0aW9uPWRlbGV0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgIF0sXHJcbiAgICBsb2FkQWN0aW9uOiB7IHVybDogJ3Bvc2l0aW9ucy9hbGwveCcgfSxcclxuICAgIGZvcm1Db25maWc6IHRoaXMucG9zaXRpb25Gb3JtQ29uZmlnXHJcbiAgfVxyXG5cclxuXHJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLURlcGFydG1lbnRzLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuICBkZXBhcnRtZW50VGFibGVDb25maWc6IFRhYmxlQ29uZmlnID0ge1xyXG4gICAgc2hvd0ZpbHRlcjogdHJ1ZSxcclxuICAgIG1pbkNvbHVtbnM6IFsnbmFtZSddLFxyXG4gICAgZmxhdEJ1dHRvbnM6IHRydWUsXHJcbiAgICBjb2x1bW5zOiBbXHJcbiAgICAgIC8vIHsgbmFtZTogJ2RlcGFydG1lbnRJRCcsIHR5cGU6ICdudW1iZXInLCBhbGlhczogJ0lEJyB9LFxyXG4gICAgICB7IG5hbWU6ICduYW1lJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICBdLFxyXG4gICAgYnV0dG9uczogW1xyXG4gICAgICB7IG5hbWU6ICdjcmVhdGUnLCBkaXNwbGF5OiAnQ3JlYXRlJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnZGVwYXJ0bWVudHM/YWN0aW9uPWNyZWF0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgICAge1xyXG4gICAgICAgIG5hbWU6ICd2aWV3JyxcclxuICAgICAgICBkaWFsb2c6IHRydWUsXHJcbiAgICAgICAgZGV0YWlsc0NvbmZpZzoge1xyXG4gICAgICAgICAgZm9ybUNvbmZpZzogdGhpcy5kZXBhcnRtZW50Rm9ybUNvbmZpZyxcclxuICAgICAgICAgIGhlcm9GaWVsZDogJ2RlcGFydG1lbnRJRCcsXHJcbiAgICAgICAgICBidXR0b25zOiBbdGhpcy5lZGl0RGVwYXJ0bWVudEJ1dHRvbl0sXHJcbiAgICAgICAgICB0YWJsZUNvbmZpZ3M6IFtcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgIC4uLnRoaXMuZW1wbG95ZWVzVGFibGVDb25maWcsXHJcbiAgICAgICAgICAgICAgbG9hZEFjdGlvbjogeyB1cmw6ICdlbXBsb3llZXMveC94JyB9LCBsb2FkQ3JpdGVyaWE6ICdkZXBhcnRtZW50JywgbG9hZElERmllbGQ6ICdkZXBhcnRtZW50SUQnLFxyXG4gICAgICAgICAgICAgIGNvbHVtbnM6IHRoaXMuZW1wbG95ZWVzVGFibGVDb25maWcuY29sdW1ucy5maWx0ZXIoeCA9PiBbJ2RlcGFydG1lbnROYW1lJywgJ3Bvc2l0aW9uTmFtZSddLmluY2x1ZGVzKHgubmFtZSkgPT0gZmFsc2UpLFxyXG4gICAgICAgICAgICAgIHRhYlRpdGxlOiAnRW1wbG95ZWVzJyxcclxuICAgICAgICAgICAgICBlbGV2YXRpb246ICdub25lJyxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgIC4uLnRoaXMucG9zaXRpb25zVGFibGVDb25maWcsXHJcbiAgICAgICAgICAgICAgbG9hZEFjdGlvbjogeyB1cmw6ICdwb3NpdGlvbnMveC94JyB9LCBsb2FkQ3JpdGVyaWE6ICdkZXBhcnRtZW50JywgbG9hZElERmllbGQ6ICdkZXBhcnRtZW50SUQnLFxyXG4gICAgICAgICAgICAgIHRhYlRpdGxlOiAnUG9zaXRpb25zJyxcclxuICAgICAgICAgICAgICBlbGV2YXRpb246ICdub25lJyxcclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIF0sXHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICB0aGlzLmVkaXREZXBhcnRtZW50QnV0dG9uLFxyXG4gICAgICB7IG5hbWU6ICdkZWxldGUnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdkZXBhcnRtZW50cz9hY3Rpb249ZGVsZXRlJywgbWV0aG9kOiAncG9zdCcgfSB9LFxyXG4gICAgXSxcclxuICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnZGVwYXJ0bWVudHMvYWxsL3gnIH0sXHJcbiAgICBmb3JtQ29uZmlnOiB0aGlzLmRlcGFydG1lbnRGb3JtQ29uZmlnXHJcbiAgfVxyXG5cclxuXHJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLUNvbnRhY3QgUGVyc29ucy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICBjb250YWN0UGVyc29uRm9ybUNvbmZpZzogRm9ybUNvbmZpZyA9IHtcclxuICAgIHRpdGxlOiAnQ29udGFjdCBQZXJzb24nLFxyXG4gICAgaW5jbHVkZUF1ZGl0OiB0cnVlLFxyXG4gICAgZmllbGRzOiBbXHJcbiAgICAgIHsgbmFtZTogJ25hbWUnLCB0eXBlOiAndGV4dCcsIHNwYW4gOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ21vYmlsZScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdlbWFpbCcsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdjb250YWN0TWV0aG9kcycsIHR5cGU6ICdjb21wb3NpdGUnLCBzcGFuOiB0cnVlLCBzdWJmaWVsZHMgOltcclxuICAgICAgICB7IG5hbWU6ICdjYW5DYWxsJywgdHlwZTogJ2NoZWNrYm94JywgYWxpYXM6ICdDYWxsJyB9LFxyXG4gICAgICAgIHsgbmFtZTogJ2NhblNNUycsIHR5cGU6ICdjaGVja2JveCcsIGFsaWFzOiAnU01TJyB9LFxyXG4gICAgICAgIHsgbmFtZTogJ2NhbldoYXRzQXBwJywgdHlwZTogJ2NoZWNrYm94JywgYWxpYXM6ICdXaGF0c0FwcCcgfVxyXG4gICAgICBdIH0sXHJcblxyXG4gICAgXSxcclxuICAgIHJlc2V0OiB0cnVlXHJcbiAgfTtcclxuXHJcbiAgY29udGFjdFBlcnNvblRhYmxlQ29uZmlnOiBUYWJsZUNvbmZpZyA9IHtcclxuICAgIHRhYlRpdGxlOiAnQ29udGFjdHMnLFxyXG4gICAgc2hvd0ZpbHRlcjogdHJ1ZSxcclxuICAgIG1pbkNvbHVtbnM6IFsnbmFtZScsICdjb250YWN0TWV0aG9kcyddLFxyXG4gICAgZWxldmF0aW9uOiAnbm9uZScsXHJcbiAgICBmbGF0QnV0dG9uczogdHJ1ZSxcclxuICAgIGNvbHVtbnM6IFtcclxuICAgICAgeyBuYW1lOiAnbmFtZScsIHR5cGU6ICd0ZXh0JywgfSxcclxuICAgICAgeyBuYW1lOiAnbW9iaWxlJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2VtYWlsJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBuYW1lOiAnY29udGFjdE1ldGhvZHMnLFxyXG4gICAgICAgIHR5cGU6ICdpY29uJyxcclxuICAgICAgICBpY29uczogW1xyXG4gICAgICAgICAgeyBuYW1lOiAnY2FsbCcsIGNvbG9yOiAnZ3JlZW4nLCBjb25kaXRpb246IHggPT4geC5jYW5DYWxsLCB0aXA6ICdBdmFpbGFibGUgZm9yIENhbGxzJyB9LFxyXG4gICAgICAgICAgeyBuYW1lOiAnc21zJywgY29sb3I6ICdncmVlbicsIGNvbmRpdGlvbjogeCA9PiB4LmNhblNNUywgdGlwOiAnQXZhaWxhYmxlIGZvciBTTVMnIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICdmb3J1bScsIGNvbG9yOiAnZ3JlZW4nLCBjb25kaXRpb246IHggPT4geC5jYW5XaGF0c0FwcCwgdGlwOiAnQXZhaWxhYmxlIG9uIFdoYXRzQXBwJyB9XHJcbiAgICAgICAgXVxyXG4gICAgICB9XHJcbiAgICBdLFxyXG4gICAgYnV0dG9uczogW1xyXG4gICAgICB7IG5hbWU6ICdjcmVhdGUnLCBkaXNwbGF5OiAnQWRkJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnY29udGFjdHBlcnNvbnM/YWN0aW9uPWNyZWF0ZScsIG1ldGhvZDogJ3Bvc3QnIH0sIGNvbmZpcm06IHsgbWVzc2FnZTogJ0FkZCBjb250YWN0IHBlcnNvbj8nIH0gfSxcclxuICAgICAgeyBuYW1lOiAnZWRpdCcsIGRpYWxvZzogdHJ1ZSwgYWN0aW9uOiB7IHVybDogJ2NvbnRhY3RwZXJzb25zP2FjdGlvbj1lZGl0JywgbWV0aG9kOiAncG9zdCcgfSB9LFxyXG4gICAgICB7IG5hbWU6ICdkZWxldGUnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdjb250YWN0cGVyc29ucz9hY3Rpb249ZGVsZXRlJywgbWV0aG9kOiAncG9zdCcgfSB9XHJcbiAgICBdLFxyXG4gICAgZm9ybUNvbmZpZzogdGhpcy5jb250YWN0UGVyc29uRm9ybUNvbmZpZ1xyXG4gIH07XHJcblxyXG5cclxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tQ3VzdG9tZXJzLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gIGN1c3RvbWVyRm9ybUNvbmZpZzogRm9ybUNvbmZpZyA9IHtcclxuICAgIHNlY3VyaXR5OiB7IGFsbG93OiBbdGhpcy5jYXBDdXN0b21lcnNdIH0sXHJcbiAgICBpbmNsdWRlQXVkaXQ6IHRydWUsXHJcbiAgICB0aXRsZSA6ICdDdXN0b21lcicsXHJcbiAgICBmaWVsZHM6IFtcclxuICAgICAgeyBuYW1lOiAnbmFtZScsIHR5cGU6ICd0ZXh0JywgcmVxdWlyZWQ6IHRydWUgfSxcclxuICAgICAgeyBuYW1lOiAncGhvbmUnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnY29udGFjdFBlcnNvbicsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdlbWFpbCcsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdhZGRyZXNzJywgdHlwZTogJ3RleHQnLCByb3dzOiAyLCBzcGFuOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ2N1c3RvbWVyVGVuYW50SUQnLCBhbGlhczogJ0N1c3RvbWVyIFRlbmFudCcsIHR5cGU6ICd0ZXh0JywgbG9hZEFjdGlvbjogeyB1cmw6ICd0ZW5hbnRzL2xpc3QveCcgfSAsIG51bGxhYmxlOiB0cnVlIH0sXHJcbiAgICBdLFxyXG5cclxuICAgIHJlc2V0OiB0cnVlLFxyXG4gIH1cclxuXHJcbiAgY3VzdG9tZXJFZGl0QnV0dG9uOiBCdXR0b24gPSB7IG5hbWU6ICdlZGl0JywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnY3VzdG9tZXJzP2FjdGlvbj1lZGl0JywgbWV0aG9kOiAncG9zdCcgfSB9XHJcblxyXG4gIGN1c3RvbWVyRGV0YWlsc0NvbmZpZzogRGV0YWlsc0RpYWxvZ0NvbmZpZyA9IHtcclxuICAgIGZvcm1Db25maWcgOiB0aGlzLmN1c3RvbWVyRm9ybUNvbmZpZyxcclxuICAgIGhlcm9GaWVsZCA6ICdjdXN0b21lcklEJyxcclxuICAgIHRhYmxlQ29uZmlnczogW1xyXG4gICAgICB7XHJcbiAgICAgICAgLi4udGhpcy5jb250YWN0UGVyc29uVGFibGVDb25maWcsXHJcbiAgICAgICAgbG9hZEFjdGlvbjogeyB1cmw6ICdjb250YWN0cGVyc29ucy9jdXN0b21lci94JyB9LFxyXG4gICAgICAgIGxvYWRDcml0ZXJpYTogJ2N1c3RvbWVyJyxcclxuICAgICAgICBsb2FkSURGaWVsZDogJ2N1c3RvbWVySUQnXHJcbiAgICAgIH1cclxuICAgIF0sXHJcbiAgICBidXR0b25zOiBbdGhpcy5jdXN0b21lckVkaXRCdXR0b25dXHJcbiAgfTtcclxuXHJcbiAgY3VzdG9tZXJzVGFibGVDb25maWc6IFRhYmxlQ29uZmlnID0ge1xyXG4gICAgc2hvd0ZpbHRlcjogdHJ1ZSxcclxuICAgIG1pbkNvbHVtbnM6IFsnbmFtZSddLFxyXG4gICAgZmxhdEJ1dHRvbnM6IHRydWUsXHJcbiAgICBsb2dSZXNwb25zZTogdHJ1ZSxcclxuICAgIG1heEJ1dHRvbnNDb3VudDogMyxcclxuICAgIGNvbGxhcHNlQnV0dG9ucyA6IHRydWUsXHJcblxyXG4gICAgY29sdW1uczogW1xyXG5cclxuICAgICAgeyBuYW1lOiAnbmFtZScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdwaG9uZScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdjb250YWN0UGVyc29uJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2lzTGlua2VkJywgdHlwZTogJ2NoZWNrYm94JywgYWxpYXM6ICdMaW5rZWQnIH0sXHJcblxyXG4gICAgXSxcclxuXHJcbiAgICBidXR0b25zOiBbXHJcbiAgICAgIHsgbmFtZTogJ2NyZWF0ZScsIGRpc3BsYXk6ICdDcmVhdGUnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdjdXN0b21lcnM/YWN0aW9uPWNyZWF0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgICAgeyBuYW1lOiAndmlldycsIGRpYWxvZzogdHJ1ZSwgZGV0YWlsc0NvbmZpZzogdGhpcy5jdXN0b21lckRldGFpbHNDb25maWcgfSxcclxuICAgICAgeyBuYW1lOiAnZWRpdCcsIGRpYWxvZzogdHJ1ZSwgZGV0YWlsc0NvbmZpZzogdGhpcy5jdXN0b21lckRldGFpbHNDb25maWcgfSxcclxuICAgICAgeyBuYW1lOiAnZGVsZXRlJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnY3VzdG9tZXJzP2FjdGlvbj1kZWxldGUnLCBtZXRob2Q6ICdwb3N0JyB9IH0sXHJcbiAgICBdLFxyXG5cclxuICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnY3VzdG9tZXJzL2FsbC94JyB9LFxyXG4gICAgZm9ybUNvbmZpZzogdGhpcy5jdXN0b21lckZvcm1Db25maWdcclxuICB9XHJcblxyXG5cclxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tU3VwcGxpZXJzLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gIHN1cHBsaWVyRm9ybUNvbmZpZzogRm9ybUNvbmZpZyA9IHtcclxuICAgIHNlY3VyaXR5OiB7IGFsbG93OiBbdGhpcy5jYXBTdXBwbGllcnNdIH0sXHJcbiAgICBpbmNsdWRlQXVkaXQ6IHRydWUsXHJcbiAgICB0aXRsZTogJ1N1cHBsaWVyJyxcclxuICAgIGZpZWxkczogW1xyXG4gICAgICB7IG5hbWU6ICduYW1lJywgdHlwZTogJ3RleHQnLCByZXF1aXJlZDogdHJ1ZSB9LFxyXG4gICAgICB7IG5hbWU6ICdwaG9uZScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdjb250YWN0UGVyc29uJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2VtYWlsJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2FkZHJlc3MnLCB0eXBlOiAndGV4dCcsIHJvd3M6IDIsIHNwYW46IHRydWUgfSxcclxuICAgIF0sXHJcblxyXG4gICAgcmVzZXQ6IHRydWUsXHJcbiAgfVxyXG5cclxuICBzdXBwbGllckVkaXRCdXR0b24gOiBCdXR0b24gPSB7IG5hbWU6ICdlZGl0JywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnc3VwcGxpZXJzP2FjdGlvbj1lZGl0JywgbWV0aG9kOiAncG9zdCcgfSB9XHJcblxyXG4gIHN1cHBsaWVyRGV0YWlsc0NvbmZpZzogRGV0YWlsc0RpYWxvZ0NvbmZpZyA9IHtcclxuICAgIGZvcm1Db25maWcgOiB0aGlzLnN1cHBsaWVyRm9ybUNvbmZpZyxcclxuICAgIGhlcm9GaWVsZCA6ICdzdXBwbGllcklEJyxcclxuICAgIHRhYmxlQ29uZmlnczogW1xyXG4gICAgICB7XHJcbiAgICAgICAgLi4udGhpcy5jb250YWN0UGVyc29uVGFibGVDb25maWcsXHJcbiAgICAgICAgbG9hZEFjdGlvbjogeyB1cmw6ICdjb250YWN0cGVyc29ucy9zdXBwbGllci94JyB9LFxyXG4gICAgICAgIGxvYWRDcml0ZXJpYTogJ3N1cHBsaWVyJyxcclxuICAgICAgICBsb2FkSURGaWVsZDogJ3N1cHBsaWVySUQnXHJcbiAgICAgIH1cclxuICAgIF0sXHJcbiAgICBidXR0b25zIDogW3RoaXMuc3VwcGxpZXJFZGl0QnV0dG9uXVxyXG4gIH07XHJcblxyXG4gIHN1cHBsaWVyc1RhYmxlQ29uZmlnOiBUYWJsZUNvbmZpZyA9IHtcclxuICAgIHNob3dGaWx0ZXI6IHRydWUsXHJcbiAgICBtaW5Db2x1bW5zOiBbJ25hbWUnXSxcclxuICAgIGZsYXRCdXR0b25zOiB0cnVlLFxyXG4gICAgY29sdW1uczogW1xyXG4gICAgICB7IG5hbWU6ICduYW1lJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ3Bob25lJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2NvbnRhY3RQZXJzb24nLCB0eXBlOiAndGV4dCcgfSxcclxuICAgIF0sXHJcblxyXG4gICAgYnV0dG9uczogW1xyXG4gICAgICB7IG5hbWU6ICdjcmVhdGUnLCBkaXNwbGF5OiAnQ3JlYXRlJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnc3VwcGxpZXJzP2FjdGlvbj1jcmVhdGUnLCBtZXRob2Q6ICdwb3N0JyB9LH0sXHJcbiAgICAgIHsgbmFtZTogJ3ZpZXcnLCBkaWFsb2c6IHRydWUsIGRldGFpbHNDb25maWc6IHRoaXMuc3VwcGxpZXJEZXRhaWxzQ29uZmlnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2VkaXQnLCBkaWFsb2c6IHRydWUsICBkZXRhaWxzQ29uZmlnOiB0aGlzLnN1cHBsaWVyRGV0YWlsc0NvbmZpZyB9LFxyXG4gICAgICB7IG5hbWU6ICdkZWxldGUnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdzdXBwbGllcnM/YWN0aW9uPWRlbGV0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgIF0sXHJcblxyXG4gICAgbG9hZEFjdGlvbjogeyB1cmw6ICdzdXBwbGllcnMvYWxsL3gnIH0sXHJcbiAgICBmb3JtQ29uZmlnOiB0aGlzLnN1cHBsaWVyRm9ybUNvbmZpZ1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1Ob3RpZmljYXRpb25zLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuICBub3RpZmljYXRpb25PcHRpb25zID0gW1xyXG4gICAgeyBuYW1lOiAnVUkgT25seScsIHZhbHVlOiAxIH0sXHJcbiAgICB7IG5hbWU6ICdVSSArIEVtYWlsJywgdmFsdWU6IDMgfSxcclxuICAgIHsgbmFtZTogJ1VJICsgRW1haWwgKyBTTVMnLCB2YWx1ZTogNyB9LFxyXG4gICAgeyBuYW1lOiAnQWxsIENoYW5uZWxzJywgdmFsdWU6IDE1IH1cclxuICBdXHJcblxyXG5cclxuXHJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLUFwcHJvdmFscy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4gIGFwcHJvdmFsSGlzdG9yeUZvcm1Db25maWcgOiBGb3JtQ29uZmlnID0ge1xyXG4gICAgdGl0bGU6ICdBcHByb3ZhbCBIaXN0b3J5JyxcclxuICAgIGZpZWxkczogW1xyXG4gICAgICB7IG5hbWU6ICdsZXZlbE5hbWUnLCB0eXBlOiAndGV4dCcsIHJlYWRvbmx5OiB0cnVlLCBhbGlhczogJ0xldmVsJyB9LFxyXG4gICAgICB7IG5hbWU6ICdzdGF0dXNOYW1lJywgdHlwZTogJ3RleHQnLCByZWFkb25seTogdHJ1ZSwgYWxpYXM6ICdTdGF0dXMnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2NvbW1lbnRzJywgdHlwZTogJ3RleHQnLCByZWFkb25seTogdHJ1ZSwgc3BhbjogdHJ1ZSwgcm93czogMywgY29weUNvbnRlbnQ6IHRydWUgfSxcclxuICAgIF0sXHJcbiAgICBpbmNsdWRlQXVkaXQ6IHRydWVcclxuICB9XHJcblxyXG4gIC8vQXBwcm92YWwgSGlzdG9yeVxyXG4gIGFwcHJvdmFsSGlzdG9yeVRhYmxlQ29uZmlnOiBUYWJsZUNvbmZpZyA9IHtcclxuICAgIHRhYlRpdGxlOiAnVHJhaWwnLFxyXG4gICAgZWxldmF0aW9uOiAnbm9uZScsXHJcbiAgICBtaW5Db2x1bW5zOiBbJ2NyZWF0ZWREYXRlJywgJ2xldmVsTmFtZScsICdzdGF0dXNOYW1lJ10sXHJcbiAgICBmbGF0QnV0dG9uczogdHJ1ZSxcclxuICAgIHNob3dGaWx0ZXIgOiB0cnVlLFxyXG4gICAgY29sdW1uczogW1xyXG4gICAgICB7IG5hbWU6ICdjcmVhdGVkRGF0ZScsIHR5cGU6ICdkYXRldGltZScsIGFsaWFzIDogJ0RhdGUnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2xldmVsTmFtZScsIHR5cGU6ICd0ZXh0JywgYWxpYXM6ICdMZXZlbCcgfSxcclxuICAgICAge1xyXG4gICAgICAgIG5hbWU6ICdzdGF0dXNOYW1lJywgdHlwZTogJ3RleHQnLCBhbGlhczogJ1N0YXR1cycsXHJcbiAgICAgICAgY29sb3JzOiBbXHJcbiAgICAgICAgICB7IG5hbWU6ICcjOTBBNEFFJywgY29uZGl0aW9uOiB4ID0+IHguc3RhdHVzID09PSAwIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICcjNjZCQjZBJywgY29uZGl0aW9uOiB4ID0+IHguc3RhdHVzID09PSAxIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICcjRjQ0MzM2JywgY29uZGl0aW9uOiB4ID0+IHguc3RhdHVzID09PSAyIH1cclxuICAgICAgICBdXHJcbiAgICAgIH0sXHJcbiAgICAgIHsgbmFtZTogJ2NvbW1lbnRzJywgdHlwZTogJ3RleHQnLCB9LFxyXG4gICAgICB7IG5hbWU6ICdjcmVhdGVkQnlOYW1lJywgdHlwZTogJ3RleHQnLCBhbGlhczogJ0J5JyB9LFxyXG5cclxuICAgIF0sXHJcbiAgICBidXR0b25zOiBbXHJcbiAgICAgIHsgbmFtZTogJ3ZpZXcnLCBkaWFsb2c6IHRydWUgfVxyXG4gICAgXSxcclxuXHJcbiAgICBmb3JtQ29uZmlnIDogdGhpcy5hcHByb3ZhbEhpc3RvcnlGb3JtQ29uZmlnLFxyXG5cclxuICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnYXBwcm92YWxoaXN0b3J5L2FwcHJvdmFsL3gnIH0sXHJcbiAgICBsb2FkQ3JpdGVyaWE6ICdhcHByb3ZhbCcsXHJcbiAgICBsb2FkSURGaWVsZDogJ2FwcHJvdmFsSUQnXHJcbiAgfTtcclxuXHJcblxyXG5cclxuICAvL2FwcHJvdmFscyBmb3JtXHJcbiAgYXBwcm92YWxGb3JtQ29uZmlnOiBGb3JtQ29uZmlnID0ge1xyXG4gICAgdGl0bGU6ICdBcHByb3ZhbCcsXHJcbiAgICBmaWVsZHM6IFtcclxuICAgICAgeyBuYW1lOiAnYmxhbmsnLCB0eXBlOiAnYmxhbmsnLCBzcGFuOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ3N0YXR1c05hbWUnLCB0eXBlOiAnbGFiZWwnLCBhbGlhczogJ1N0YXR1cycsIHNwYW46IHRydWUgfSxcclxuICAgICAgeyBuYW1lOiAnbWVzc2FnZScsIHR5cGU6ICd0ZXh0JywgcmVxdWlyZWQ6IHRydWUsIHNwYW46IHRydWUsIHJvd3M6IDMgfSxcclxuXHJcbiAgICBdLFxyXG4gICAgbG9hZEFjdGlvbjogeyB1cmw6ICdhcHByb3ZhbHMvaWQnIH0sXHJcbiAgICBoZXJvRmllbGQ6ICdhcHByb3ZhbElEJ1xyXG4gIH07XHJcblxyXG5cclxuXHJcblxyXG4gIC8vIGFwcHJvdmFsIGFjdGlvbiBkaWFsb2dcclxuICBhcHByb3ZhbEFjdGlvbkZvcm1Db25maWc6IEZvcm1Db25maWcgPSB7XHJcbiAgICB0aXRsZTogJ0FwcHJvdmFsIEFjdGlvbicsXHJcbiAgICBmaXhlZFRpdGxlOiB0cnVlLFxyXG4gICAgZmllbGRzOiBbXHJcbiAgICAgIHtcclxuICAgICAgICBuYW1lOiAnY29tbWVudHMnLCB0eXBlOiAndGV4dCcsIHJlcXVpcmVkOiBmYWxzZSwgc3BhbjogdHJ1ZSwgcm93czogMyxcclxuICAgICAgICBpbmZvTWVzc2FnZTogJ0VudGVyIHlvdXIgY29tbWVudHMgYWJvdXQgdGhpcyBhcHByb3ZhbCBhY3Rpb24uIFRoaXMgd2lsbCBiZSB2aXNpYmxlIGluIHRoZSBhcHByb3ZhbCBoaXN0b3J5LidcclxuICAgICAgfVxyXG4gICAgXVxyXG4gIH07XHJcblxyXG4gIGFwcHJvdmVBY3Rpb25EZXRhaWxzQ29uZmlnOiBEZXRhaWxzRGlhbG9nQ29uZmlnID0ge1xyXG4gICAgZm9ybUNvbmZpZzoge1xyXG4gICAgICAuLi50aGlzLmFwcHJvdmFsQWN0aW9uRm9ybUNvbmZpZyxcclxuICAgICAgZmllbGRzOiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgbmFtZTogJ2NvbW1lbnRzJywgdHlwZTogJ3RleHQnLCByZXF1aXJlZDogZmFsc2UsIHNwYW46IHRydWUsIHJvd3M6IDMsXHJcbiAgICAgICAgICBpbmZvTWVzc2FnZTogJ0VudGVyIHlvdXIgY29tbWVudHMgYWJvdXQgdGhpcyBhcHByb3ZhbCBhY3Rpb24uIFRoaXMgd2lsbCBiZSB2aXNpYmxlIGluIHRoZSBhcHByb3ZhbCBoaXN0b3J5LidcclxuICAgICAgICB9XHJcbiAgICAgIF0sXHJcbiAgICB9LFxyXG4gICAgbW9kZTogJ2VkaXQnLFxyXG4gICAgYnV0dG9uczogW1xyXG4gICAgICB7IG5hbWU6ICdlZGl0JywgZGlzcGxheTogJ0FwcHJvdmUnLCBjb2xvcjogJ2dyZWVuJywgYWN0aW9uOiB7IHVybDogJ2FwcHJvdmUnLCBtZXRob2Q6ICdwb3N0JyB9IH0gLy91cmwgcHJlY29uZmlndXJlZCB0byBiZSBkeW5hbWljXHJcbiAgICBdXHJcbiAgfTtcclxuXHJcbiAgZGVjbGluZUFjdGlvbkRldGFpbHNDb25maWc6IERldGFpbHNEaWFsb2dDb25maWcgPSB7XHJcbiAgICBmb3JtQ29uZmlnOiB7Li4udGhpcy5hcHByb3ZhbEFjdGlvbkZvcm1Db25maWcsXHJcbiAgICAgIGZpZWxkczogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIG5hbWU6ICdjb21tZW50cycsIHR5cGU6ICd0ZXh0JywgcmVxdWlyZWQ6IHRydWUsIHNwYW46IHRydWUsIHJvd3M6IDMsXHJcbiAgICAgICAgICBpbmZvTWVzc2FnZTogJ0VudGVyIHlvdXIgY29tbWVudHMgYWJvdXQgdGhpcyBhcHByb3ZhbCBhY3Rpb24uIFRoaXMgd2lsbCBiZSB2aXNpYmxlIGluIHRoZSBhcHByb3ZhbCBoaXN0b3J5LicsXHJcbiAgICAgICAgICBoaW50IDogJ0RlY2xpbmUgY29tbWVudCBpcyByZXF1aXJlZCAhJ1xyXG4gICAgICAgIH1cclxuICAgICAgXSxcclxuICAgIH0sXHJcbiAgICBtb2RlOiAnZWRpdCcsXHJcbiAgICBidXR0b25zOiBbXHJcbiAgICAgIHsgbmFtZTogJ2VkaXQnLCBkaXNwbGF5OiAnRGVjbGluZScsIGNvbG9yOiAncmVkJywgYWN0aW9uOiB7IHVybDogJ2RlY2xpbmUnLCBtZXRob2Q6ICdwb3N0JyB9IH0gLy91cmwgcHJlY29uZmlndXJlZCB0byBiZSBkeW5hbWljXHJcbiAgICBdXHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIGFwcHJvdmVCdXR0b246IEJ1dHRvbiA9IHtcclxuICAgIG5hbWU6ICdhcHByb3ZlJywgdGlwOiAnQXBwcm92ZSBSZXF1ZXN0JywgZGlhbG9nOiB0cnVlLCBpbkRpYWxvZzogdHJ1ZSwgaWNvbjogeyBuYW1lOiAnZG9uZScgfSwgY29sb3I6ICdncmVlbicsIGRldGFpbHNDb25maWc6IHRoaXMuYXBwcm92ZUFjdGlvbkRldGFpbHNDb25maWcsIGlnbm9yZUFwcHJvdmFsOiB0cnVlLFxyXG4gICAgdmlzaWJsZTogeCA9PiB4LmNhbkFjdGlvblxyXG4gIH1cclxuXHJcbiAgZGVjbGluZUJ1dHRvbjogQnV0dG9uID0ge1xyXG4gICAgbmFtZTogJ2RlY2xpbmUnLCB0aXA6ICdEZWNsaW5lIFJlcXVlc3QnLCBkaWFsb2c6IHRydWUsIGluRGlhbG9nOiB0cnVlLCBpY29uOiB7IG5hbWU6ICdjbG9zZScgfSwgY29sb3I6ICdyZWQnLCBkZXRhaWxzQ29uZmlnOiB0aGlzLmRlY2xpbmVBY3Rpb25EZXRhaWxzQ29uZmlnLCBpZ25vcmVBcHByb3ZhbDogdHJ1ZSxcclxuICAgIHZpc2libGU6IHggPT4geC5jYW5BY3Rpb25cclxuICB9XHJcblxyXG4gIGNhbmNlbEJ1dHRvbjogQnV0dG9uID0ge1xyXG4gICAgbmFtZTogJ2NhbmNlbCcsIHRpcDogJ0NhbmNlbCBBcHByb3ZhbCcsIGluRGlhbG9nOiB0cnVlLCBpY29uOiB7IG5hbWU6ICdjYW5jZWwnIH0sIGNvbG9yOiAncmVkJywgYWN0aW9uOiB7IHVybDogJ2NhbmNlbCcsIG1ldGhvZDogJ3Bvc3QnLCB9LCBpZ25vcmVBcHByb3ZhbDogdHJ1ZSwgLy91cmwgcHJlY29uZmlndXJlZCB0byBiZSBkeW5hbWljXHJcbiAgICBjb25maXJtOiB7IG1lc3NhZ2U6ICdDYW5jZWwgYXBwcm92YWwgcmVxdWVzdD8gVGhpcyB3aWxsIHJldmVydCBjaGFuZ2VzIGFuZCBzdG9wIHRoZSBhcHByb3ZhbCBwcm9jZXNzLicgfSxcclxuICAgIHZpc2libGU6IHggPT4gIXguY2FuQWN0aW9uICYmIHguY2FuQ2FuY2VsXHJcbiAgfVxyXG5cclxuICBhcHByb3ZhbERldGFpbHNDb25maWc6IERldGFpbHNEaWFsb2dDb25maWcgPSB7XHJcbiAgICBmb3JtQ29uZmlnOiB0aGlzLmFwcHJvdmFsRm9ybUNvbmZpZyxcclxuICAgIGhlcm9GaWVsZDogJ2FwcHJvdmFsSUQnLFxyXG4gICAgdGFibGVDb25maWdzOiBbdGhpcy5hcHByb3ZhbEhpc3RvcnlUYWJsZUNvbmZpZ10sXHJcblxyXG4gICAgc3RlcENvbmZpZzoge1xyXG4gICAgICBzdGVwczogW10sXHJcbiAgICAgIGxvYWRBY3Rpb246IHsgdXJsOiBgYXBwcm92YWxzL3N0ZXBzL3tpZH1gIH0sXHJcbiAgICAgIGxvYWRJREZpZWxkOiAnYXBwcm92YWxJRCcsXHJcbiAgICAgIHZhbHVlRmllbGQ6ICdjdXJyZW50TGV2ZWwnXHJcbiAgICB9LFxyXG5cclxuICAgIGJ1dHRvbnMgOiBbXHJcbiAgICAgIHRoaXMuYXBwcm92ZUJ1dHRvbixcclxuICAgICAgdGhpcy5kZWNsaW5lQnV0dG9uLFxyXG4gICAgICB0aGlzLmNhbmNlbEJ1dHRvblxyXG4gICAgXVxyXG5cclxuICB9O1xyXG5cclxuXHJcbiAgdmlld0FwcHJvdmFsQnV0dG9uOiBCdXR0b24gPSB7XHJcbiAgICBuYW1lOiAnaW5mbycsIHRpcDogJ0FwcHJvdmFsIEluZm9ybWF0aW9uJywgZGlhbG9nOiB0cnVlLCBpY29uOiB7IG5hbWU6ICdpbmZvJywgIH0sIGRldGFpbHNDb25maWc6IHRoaXMuYXBwcm92YWxEZXRhaWxzQ29uZmlnLCBpZ25vcmVBcHByb3ZhbDogdHJ1ZSxcclxuICAgIHZpc2libGU6IHggPT4geC5jYW5BY3Rpb24gfHwgeC5jYW5DYW5jZWxcclxuICB9XHJcblxyXG5cclxuICAvL3JlY2VpdmVkIGFwcHJvdmFsc1xyXG4gIHJlY2VpdmVkQXBwcm92YWxzVGFibGVDb25maWc6IFRhYmxlQ29uZmlnID0ge1xyXG4gICAgc2hvd0ZpbHRlcjogdHJ1ZSxcclxuICAgIG1pbkNvbHVtbnM6IFsnbWVzc2FnZScsICdzdGF0dXNOYW1lJ10sXHJcbiAgICBtaW5CdXR0b25zOiBbJ3ZpZXcnLCAnYXBwcm92ZScsICdkZWNsaW5lJ10sXHJcbiAgICBmbGF0QnV0dG9uczogdHJ1ZSxcclxuICAgIGdyZXlPdXQ6ICh4KSA9PiB4LmlzR3JleWVkT3V0LFxyXG4gICAgLy8gbG9nUmVzcG9uc2U6IHRydWUsXHJcbiAgICBjb2xsYXBzZUJ1dHRvbnM6IHRydWUsXHJcbiAgICBjb2x1bW5zOiBbXHJcbiAgICAgIHsgbmFtZTogJ2NyZWF0ZWREYXRlJywgdHlwZTogJ2RhdGV0aW1lJywgYWxpYXM6ICdEYXRlJyB9LFxyXG4gICAgICB7IG5hbWU6ICdjcmVhdGVkQnlOYW1lJywgYWxpYXM6ICdSZXF1ZXN0IEJ5JywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ21lc3NhZ2UnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAge1xyXG4gICAgICAgIG5hbWU6ICd0eXBlTmFtZScsIGFsaWFzOiAnVHlwZScsIHR5cGU6ICdjaGlwJyxcclxuICAgICAgICBjb2xvcnM6IFtcclxuICAgICAgICAgIHsgbmFtZTogJyM2NkJCNkEnLCBjb25kaXRpb246IHggPT4geC50eXBlID09PSAwIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICdvcmFuZ2UnLCBjb25kaXRpb246IHggPT4geC50eXBlID09PSAxIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICcjRjQ0MzM2JywgY29uZGl0aW9uOiB4ID0+IHgudHlwZSA9PT0gMiB9XHJcbiAgICAgICAgXVxyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgbmFtZTogJ3N0YXR1c05hbWUnLCBhbGlhczogJ1N0YXR1cycsIHR5cGU6ICdjaGlwJywgZGV0YWlsc0NvbmZpZzogdGhpcy5hcHByb3ZhbERldGFpbHNDb25maWcsXHJcbiAgICAgICAgY29sb3JzOiBbXHJcbiAgICAgICAgICB7IG5hbWU6ICcjOTBBNEFFJywgY29uZGl0aW9uOiB4ID0+IHguc3RhdHVzID09PSAwIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICcjNjZCQjZBJywgY29uZGl0aW9uOiB4ID0+IHguc3RhdHVzID09PSAxIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICcjRjQ0MzM2JywgY29uZGl0aW9uOiB4ID0+IHguc3RhdHVzID09PSAyIH1cclxuICAgICAgICBdXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBuYW1lOiAnY3VycmVudExldmVsTmFtZScsIHR5cGU6ICd0ZXh0JywgYWxpYXM6ICdDdXJyZW50IExldmVsJyxcclxuICAgICAgICBpY29uczogW1xyXG4gICAgICAgICAgeyBuYW1lOiAnZG9uZScsIGNvbG9yOiAnIzY2QkI2QScsIGNvbmRpdGlvbjogeCA9PiB4LnN0YXR1cyA9PT0gJ0FwcHJvdmVkJywgdGlwOiAnQXBwcm92ZWQnIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICdjbG9zZScsIGNvbG9yOiAnI0Y0NDMzNicsIGNvbmRpdGlvbjogeCA9PiB4LnN0YXR1cyA9PT0gJ0RlY2xpbmVkJywgdGlwOiAnRGVjbGluZWQnIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICdzY2hlZHVsZScsIGNvbG9yOiAnI0ZGQzEwNycsIGNvbmRpdGlvbjogeCA9PiB4LnN0YXR1cyA9PT0gJ1BlbmRpbmcnLCB0aXA6ICdQZW5kaW5nJyB9XHJcbiAgICAgICAgXVxyXG4gICAgICB9LFxyXG4gICAgICB7IG5hbWU6ICd1cGRhdGVkQnlOYW1lJywgYWxpYXM6ICdBY3Rpb25lZCBCeScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICd1cGRhdGVkRGF0ZURpc3BsYXknLCB0eXBlOiAnZGF0ZXRpbWUnLCBhbGlhczogJ0FjdGlvbmVkIERhdGUnIH0sXHJcbiAgICBdLFxyXG5cclxuICAgIGJ1dHRvbnM6IFtcclxuICAgICAgdGhpcy52aWV3QXBwcm92YWxCdXR0b24sXHJcbiAgICAgIHRoaXMuYXBwcm92ZUJ1dHRvbixcclxuICAgICAgdGhpcy5kZWNsaW5lQnV0dG9uLFxyXG4gICAgXSxcclxuXHJcbiAgICBsb2FkQWN0aW9uOiB7IHVybDogJ2FwcHJvdmFscy9hbGwveCcgfVxyXG4gIH07XHJcblxyXG5cclxuICAvL3NlbmQgYXBwcm92YWxzXHJcbiAgc2VudEFwcHJvdmFsc1RhYmxlQ29uZmlnOiBUYWJsZUNvbmZpZyA9IHtcclxuICAgIC4uLnRoaXMucmVjZWl2ZWRBcHByb3ZhbHNUYWJsZUNvbmZpZyxcclxuICAgIGJ1dHRvbnM6IFtcclxuICAgICAgLy8gdGhpcy52aWV3QXBwcm92YWxCdXR0b24sXHJcbiAgICAgIHRoaXMuY2FuY2VsQnV0dG9uLFxyXG4gICAgXSxcclxuICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnYXBwcm92YWxzL3NlbnQveCcgfVxyXG4gIH07XHJcblxyXG5cclxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLU90aGVyIGNvZGVcclxuXHJcbiAgcHJpdmF0ZSBsaXN0Q2FjaGU6IHsgW2tleTogc3RyaW5nXTogYW55IH0gPSB7fTtcclxuICBwcml2YXRlIGNhY2hlRHVyYXRpb24gPSA1ICogNjAgKiAxMDAwO1xyXG4gIHByaXZhdGUgY2FjaGVUaW1lc3RhbXBzOiB7IFtrZXk6IHN0cmluZ106IG51bWJlciB9ID0ge307XHJcblxyXG4gIHB1YmxpYyBDYWxsQXBpKGFjdGlvbjogQWN0aW9uLCBkYXRhOiBhbnkgPSAnJyApIHtcclxuXHJcbiAgICBpZiAoYWN0aW9uLnVybC5pbmNsdWRlcygnL2xpc3QvJykpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuaGFuZGxlTGlzdENhbGwoYWN0aW9uKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoIWFjdGlvbi5tZXRob2Qpe1xyXG4gICAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5HZXQoYWN0aW9uLnVybCk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYoYWN0aW9uLm1ldGhvZCA9PSdnZXQnKXtcclxuICAgICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuR2V0KGFjdGlvbi51cmwpO1xyXG4gICAgfSBlbHNlIGlmIChhY3Rpb24ubWV0aG9kID09ICdwb3N0Jyl7XHJcblxyXG4gICAgICBpZiAoYWN0aW9uLmlzRm9ybURhdGEgfHwgYWN0aW9uLnVybC5pbmNsdWRlcygnL2Zvcm0nKSkge1xyXG4gICAgICAgIGFjdGlvbi5pc0Zvcm1EYXRhID0gdHJ1ZTtcclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0X0Zvcm1EYXRhKGFjdGlvbi51cmwsIGRhdGEpO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKGFjdGlvbi51cmwgPT0gJ2FwcHJvdmUnIHx8IGFjdGlvbi51cmwgPT0gJ2RlY2xpbmUnIHx8IGFjdGlvbi51cmwgPT0gJ2NhbmNlbCcpIHtcclxuXHJcbiAgICAgICAgY29uc29sZS5sb2coZGF0YSk7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdChgJHtkYXRhLmVuZHBvaW50fS9hcHByb3ZlP2FjdGlvbj0ke2FjdGlvbi51cmx9YCwgZGF0YSk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZXtcclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KGFjdGlvbi51cmwsIGRhdGEpO1xyXG4gICAgICB9XHJcblxyXG5cclxuICAgIH1cclxuICAgIGVsc2V7XHJcbiAgICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLlBvc3QoYWN0aW9uLnVybCwgZGF0YSk7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBoYW5kbGVMaXN0Q2FsbChhY3Rpb246IEFjdGlvbikge1xyXG4gICAgY29uc3QgY2FjaGVLZXkgPSBhY3Rpb24udXJsO1xyXG4gICAgY29uc3QgY3VycmVudFRpbWUgPSBEYXRlLm5vdygpO1xyXG5cclxuICAgIC8vIFJldHVybiBjYWNoZSBpZiB2YWxpZCBhbmQgbm90IGZvcmNpbmcgcmVmcmVzaFxyXG4gICAgaWYgKCFhY3Rpb24uc2tpcENhY2hlICYmIHRoaXMubGlzdENhY2hlW2NhY2hlS2V5XSAmJiBjdXJyZW50VGltZSAtIHRoaXMuY2FjaGVUaW1lc3RhbXBzW2NhY2hlS2V5XSA8IHRoaXMuY2FjaGVEdXJhdGlvbikge1xyXG4gICAgICByZXR1cm4gb2Yoe1xyXG4gICAgICAgIHN1Y2Nlc3M6IHRydWUsXHJcbiAgICAgICAgZGF0YTogdGhpcy5saXN0Q2FjaGVbY2FjaGVLZXldXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIE1ha2UgQVBJIGNhbGwgYW5kIGNhY2hlIHJlc3VsdFxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuR2V0KGFjdGlvbi51cmwpLnBpcGUoXHJcbiAgICAgIHRhcCgocmVzcG9uc2U6IEFwaVJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3BvbnNlLnN1Y2Nlc3MgJiYgcmVzcG9uc2U/LmRhdGE/Lmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgIHRoaXMubGlzdENhY2hlW2NhY2hlS2V5XSA9IHJlc3BvbnNlLmRhdGE7XHJcbiAgICAgICAgICB0aGlzLmNhY2hlVGltZXN0YW1wc1tjYWNoZUtleV0gPSBjdXJyZW50VGltZTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLy8gTWV0aG9kIHRvIGludmFsaWRhdGUgY2FjaGUgb24gZGF0YSBjaGFuZ2VcclxuICBwdWJsaWMgaW52YWxpZGF0ZUxpc3RDYWNoZShlbnRpdHlVcmw6IHN0cmluZykge1xyXG4gICAgT2JqZWN0LmtleXModGhpcy5saXN0Q2FjaGUpLmZvckVhY2goa2V5ID0+IHtcclxuICAgICAgLy8gSW52YWxpZGF0ZSBhbnkgY2FjaGUgZW50cmllcyByZWxhdGVkIHRvIHRoaXMgZW50aXR5XHJcbiAgICAgIGlmIChrZXkuaW5jbHVkZXMoZW50aXR5VXJsKSkge1xyXG4gICAgICAgIGRlbGV0ZSB0aGlzLmxpc3RDYWNoZVtrZXldO1xyXG4gICAgICAgIGRlbGV0ZSB0aGlzLmNhY2hlVGltZXN0YW1wc1trZXldO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBDbGVhckNhY2hlKCl7XHJcbiAgICB0aGlzLmxpc3RDYWNoZSA9IHt9O1xyXG5cclxuICB9XHJcblxyXG4gIHB1YmxpYyBDaGVja1dlbGNvbWVkKHBhdGg6IHN0cmluZyA9ICdob21lL2FkbWluL3dlbGNvbWUnKSB7XHJcbiAgICB0aGlzLkNhbGxBcGkoeyB1cmw6ICd0ZW5hbnQvd2VsY29tZS94JyB9KS5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgaWYgKCF4LmRhdGEpIHtcclxuICAgICAgICB0aGlzLk5hdmlnYXRlKHBhdGgpXHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIHB1YmxpYyBOYXZpZ2F0ZShwYXRoOiBzdHJpbmcpIHtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtwYXRoXSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgTmF2aWdhdGVXaXRoVmFsdWUocGF0aDogc3RyaW5nLCB2YWx1ZSA6IHN0cmluZyl7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbcGF0aF0sIHtcclxuICAgICAgcXVlcnlQYXJhbXM6IHsgdjogdmFsdWUgfSxcclxuICAgICAgcXVlcnlQYXJhbXNIYW5kbGluZzogJ21lcmdlJyxcclxuICAgICAgc2tpcExvY2F0aW9uQ2hhbmdlOiBmYWxzZVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgR2V0TmF2aWdhdGlvblZhbHVlKCl7XHJcbiAgICBpZiAodGhpcy5yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtc1tcInZcIl0gIT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLnJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zW1widlwiXVxyXG4gICAgfWVsc2V7XHJcbiAgICAgIHJldHVybiBcIlwiO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHRtcEFjY291bnRJRDtcclxuXHJcblxyXG5cclxuICAvL1VzZXJzXHJcbiAgcHVibGljIEdldFVzZXIoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5HZXQoXCJVc2VyL2FsbC94XCIpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIFJlZ2lzdGVyQWNjb3VudCh1KSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KFwiVXNlci9yZWdpc3RlclwiLCB1KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBHZXRVc2VyQnlJRCh2YWw6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuR2V0KGBVc2VyL2lkLyR7dmFsfWApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIFVwZGF0ZVVzZXIocHJvZmlsZSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdChcIlVzZXIvZWRpdFwiLCBwcm9maWxlKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBVbmxvY2tVc2VyKHVzZXIpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLlBvc3QoXCJVc2VyL3VubG9ja1wiLCB1c2VyKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBMb2NrVXNlcih1c2VyKSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KFwiVXNlci9sb2NrXCIsIHVzZXIpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIERlbGV0ZVVzZXIodXNlcikge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdChcIlVzZXIvZGVsZXRlXCIsIHVzZXIpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIExvZ2luKHU6IFVzZXIpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLlBvc3QoXCJVc2VyL2xvZ2luXCIsIHUpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIENoYW5nZVBhc3N3b3JkKHUpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLlBvc3QoXCJVc2VyL2NoYW5nZXBhc3N3b3JkLXNlbGZcIiwgdSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgQ2hhbmdlUGFzc3dvcmRBZG1pbih1KSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KFwiVXNlci9jaGFuZ2VwYXNzd29yZC1hZG1pblwiLCB1KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBTZWxmUmVzZXQodTogVXNlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KFwiQmFzaWMvU2VsZlJlc2V0XCIsIHUpO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vUm9sZXNcclxuXHJcbiAgcHVibGljIFBvc3RSb2xlKHJvbGUsIGFjdGlvbjogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KGBSb2xlP2FjdGlvbj0ke2FjdGlvbn1gLCByb2xlKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBQdXRSb2xlKHJvbGUpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLlB1dChcIlJvbGVcIiwgcm9sZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgR2V0Um9sZShieTogc3RyaW5nLCB2YWw6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuR2V0KFwiUm9sZS9hbGwveFwiKTtcclxuICB9XHJcblxyXG5cclxuXHJcbiAgLy9Mb2dzXHJcbiAgcHVibGljIEdldExvZyhieTogc3RyaW5nLCB2YWw6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuR2V0KFwiTG9nL2FsbC94XCIpO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vU2V0dGluZ3NcclxuICBwdWJsaWMgR2V0U2V0dGluZyhieTogc3RyaW5nLCB2YWw6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuR2V0KFwiU2V0dGluZy9hbGwveFwiKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBVcGRhdGVTZXR0aW5nKHNldHRpbmcsIGFjdGlvbjogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KGBTZXR0aW5nP2FjdGlvbj0ke2FjdGlvbn1gLCBzZXR0aW5nKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
|