tin-spa 2.9.14 → 2.9.15
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.
|
@@ -11,16 +11,18 @@ export class LogsComponent {
|
|
|
11
11
|
title: 'Logs',
|
|
12
12
|
tableConfig: {
|
|
13
13
|
showFilter: true,
|
|
14
|
-
minColumns: ['dateLogged', '
|
|
14
|
+
minColumns: ['dateLogged', 'userFullName', 'details'],
|
|
15
15
|
flatButtons: this.dataService.appConfig.multitenant,
|
|
16
|
+
logResponse: true,
|
|
16
17
|
columns: [
|
|
17
18
|
{ name: 'dateLogged', type: 'datetimesec', alias: 'Date' },
|
|
18
19
|
{ name: 'userName', alias: 'User' },
|
|
19
|
-
{ name: '
|
|
20
|
+
{ name: 'userFullName', alias: 'Name' },
|
|
20
21
|
{ name: 'source', },
|
|
21
22
|
{ name: 'details', maxLength: 150 },
|
|
23
|
+
{ name: 'tenantName', alias: 'Tenant', hiddenCondition: x => !this.dataService.appConfig.multitenant },
|
|
22
24
|
],
|
|
23
|
-
loadAction: { url: '
|
|
25
|
+
loadAction: { url: 'logs/all/x' },
|
|
24
26
|
buttons: [
|
|
25
27
|
// { name: 'view', dialog : true, tip: 'View Log' },
|
|
26
28
|
]
|
|
@@ -37,4 +39,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
37
39
|
type: Component,
|
|
38
40
|
args: [{ selector: 'spa-logs', template: "\r\n <spa-page [config]=\"logsPageConfig\"></spa-page>\r\n", styles: [".mat-mini-fab{width:32px;height:32px}.mat-mini-fab mat-icon{font-size:16px;margin-top:-3px}.refreshIcon{font-size:22px!important;margin-top:-7px!important}\n"] }]
|
|
39
41
|
}], ctorParameters: function () { return [{ type: i1.AuthService }, { type: i2.DataServiceLib }]; } });
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9ncy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90aW4tc3BhL3NyYy9saWIvcGFnZXMvbG9ncy9sb2dzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rpbi1zcGEvc3JjL2xpYi9wYWdlcy9sb2dzL2xvZ3MuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFVbEQsTUFBTSxPQUFPLGFBQWE7SUFDeEIsWUFBb0IsV0FBd0IsRUFBVSxXQUEyQjtRQUE3RCxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUFVLGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtRQU1qRixtQkFBYyxHQUFnQjtZQUM1QixLQUFLLEVBQUcsTUFBTTtZQUdkLFdBQVcsRUFBRTtnQkFDWCxVQUFVLEVBQUUsSUFBSTtnQkFDaEIsVUFBVSxFQUFFLENBQUMsWUFBWSxFQUFFLGNBQWMsRUFBRSxTQUFTLENBQUM7Z0JBQ3JELFdBQVcsRUFBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxXQUFXO2dCQUNwRCxXQUFXLEVBQUcsSUFBSTtnQkFDbEIsT0FBTyxFQUFFO29CQUNQLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUcsYUFBYSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUU7b0JBQzNELEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFO29CQUNuQyxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRTtvQkFDdkMsRUFBRSxJQUFJLEVBQUUsUUFBUSxHQUFHO29CQUNuQixFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFHLEdBQUcsRUFBRTtvQkFDcEMsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUU7aUJBRXhHO2dCQUNELFVBQVUsRUFBRSxFQUFFLEdBQUcsRUFBRSxZQUFZLEVBQUU7Z0JBQ2pDLE9BQU8sRUFBRTtnQkFDUCxvREFBb0Q7aUJBQ3JEO2FBQ0Y7U0FDRixDQUFBO0lBN0JxRixDQUFDO0lBRXZGLFFBQVE7UUFDTixJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvRCxDQUFDOzswR0FMVSxhQUFhOzhGQUFiLGFBQWEsZ0RDVjFCLDREQUVBOzJGRFFhLGFBQWE7a0JBTHpCLFNBQVM7K0JBQ0UsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERhdGFTZXJ2aWNlTGliIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2RhdGFsaWIuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2F1dGguc2VydmljZSc7XHJcbmltcG9ydCB7IFBhZ2VDb25maWcgfSBmcm9tICcuLi8uLi9jbGFzc2VzL0NsYXNzZXMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzcGEtbG9ncycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2xvZ3MuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2xvZ3MuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMb2dzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSwgcHJpdmF0ZSBkYXRhU2VydmljZTogRGF0YVNlcnZpY2VMaWIsKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmF1dGhTZXJ2aWNlLmlzQXV0aG9yaXNlZCh0aGlzLmRhdGFTZXJ2aWNlLmNhcExvZ3MubmFtZSk7XHJcbiAgfVxyXG5cclxuICBsb2dzUGFnZUNvbmZpZyA6IFBhZ2VDb25maWcgPSB7XHJcbiAgICB0aXRsZSA6ICdMb2dzJyxcclxuXHJcblxyXG4gICAgdGFibGVDb25maWc6IHtcclxuICAgICAgc2hvd0ZpbHRlcjogdHJ1ZSxcclxuICAgICAgbWluQ29sdW1uczogWydkYXRlTG9nZ2VkJywgJ3VzZXJGdWxsTmFtZScsICdkZXRhaWxzJ10sXHJcbiAgICAgIGZsYXRCdXR0b25zIDogdGhpcy5kYXRhU2VydmljZS5hcHBDb25maWcubXVsdGl0ZW5hbnQsXHJcbiAgICAgIGxvZ1Jlc3BvbnNlIDogdHJ1ZSxcclxuICAgICAgY29sdW1uczogW1xyXG4gICAgICAgIHsgbmFtZTogJ2RhdGVMb2dnZWQnLCB0eXBlIDogJ2RhdGV0aW1lc2VjJywgYWxpYXM6ICdEYXRlJyB9LFxyXG4gICAgICAgIHsgbmFtZTogJ3VzZXJOYW1lJywgYWxpYXM6ICdVc2VyJyB9LFxyXG4gICAgICAgIHsgbmFtZTogJ3VzZXJGdWxsTmFtZScsIGFsaWFzOiAnTmFtZScgfSxcclxuICAgICAgICB7IG5hbWU6ICdzb3VyY2UnLCB9LFxyXG4gICAgICAgIHsgbmFtZTogJ2RldGFpbHMnLCBtYXhMZW5ndGggOiAxNTAgfSxcclxuICAgICAgICB7IG5hbWU6ICd0ZW5hbnROYW1lJywgYWxpYXM6ICdUZW5hbnQnLCBoaWRkZW5Db25kaXRpb246IHggPT4gICF0aGlzLmRhdGFTZXJ2aWNlLmFwcENvbmZpZy5tdWx0aXRlbmFudCB9LFxyXG5cclxuICAgICAgXSxcclxuICAgICAgbG9hZEFjdGlvbjogeyB1cmw6ICdsb2dzL2FsbC94JyB9LFxyXG4gICAgICBidXR0b25zIDpbXHJcbiAgICAgICAgLy8geyBuYW1lOiAndmlldycsIGRpYWxvZyA6IHRydWUsIHRpcDogJ1ZpZXcgTG9nJyB9LFxyXG4gICAgICBdXHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG4iLCJcclxuIDxzcGEtcGFnZSBbY29uZmlnXT1cImxvZ3NQYWdlQ29uZmlnXCI+PC9zcGEtcGFnZT5cclxuIl19
|
|
@@ -98,7 +98,7 @@ export class DataServiceLib {
|
|
|
98
98
|
{ name: 'employmentStatus', alias: 'Employment Status', type: 'select', loadAction: { url: 'employees/list/employment-status' } },
|
|
99
99
|
{ name: 'activeStatus', alias: 'Active Status', type: 'select', loadAction: { url: 'employees/list/active-status' } },
|
|
100
100
|
{ name: 'passportNumber', type: 'text', alias: 'Passport Number' },
|
|
101
|
-
{ name: 'userName', type: '
|
|
101
|
+
{ name: 'userName', type: 'select', alias: 'User', loadAction: { url: 'user/list/x' }, optionDisplay: 'name', optionValue: 'value', nullable: true, infoMessage: 'Related user account' },
|
|
102
102
|
{ name: 'address', type: 'text', rows: 2, span: true },
|
|
103
103
|
{ name: 'phone', type: 'text' },
|
|
104
104
|
{ name: 'email', type: 'text' },
|
|
@@ -812,4 +812,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
812
812
|
providedIn: 'root'
|
|
813
813
|
}]
|
|
814
814
|
}], ctorParameters: function () { return [{ type: i1.HttpService }, { type: i2.Router }, { type: i2.ActivatedRoute }, { type: i3.AuthService }]; } });
|
|
815
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWxpYi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL3NlcnZpY2VzL2RhdGFsaWIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBdUIsU0FBUyxFQUFVLE9BQU8sRUFBZ0QsTUFBTSxvQkFBb0IsQ0FBQztBQUNuSSxPQUFPLEVBQUUsZUFBZSxFQUFjLEVBQUUsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7O0FBUzVELE1BQU0sT0FBTyxjQUFjO0lBRXpCLFlBQW9CLFdBQXdCLEVBQVMsTUFBYyxFQUFVLEtBQXFCLEVBQVUsV0FBd0I7UUFBaEgsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQW9KcEksY0FBUyxHQUFHLElBQUksU0FBUyxFQUFFLENBQUM7UUFDcEIsb0JBQWUsR0FBRyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdkQsb0JBQWUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBUTdELFlBQU8sR0FBRyxJQUFJLE9BQU8sQ0FBQztRQUN0QixhQUFRLEdBQUcsSUFBSSxPQUFPLENBQUM7UUFDdkIsYUFBUSxHQUFHLElBQUksT0FBTyxDQUFDO1FBQ3ZCLGFBQVEsR0FBRyxJQUFJLE9BQU8sQ0FBQztRQUN2QixZQUFPLEdBQUcsSUFBSSxPQUFPLENBQUM7UUFDdEIsZ0JBQVcsR0FBRyxJQUFJLE9BQU8sQ0FBQztRQUUxQixtQkFBYyxHQUFHLElBQUksT0FBTyxDQUFDO1FBQzdCLGVBQVUsR0FBRyxJQUFJLE9BQU8sQ0FBQztRQUN6Qixr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LENBQUMsV0FBVyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUdELFVBQVU7SUFDSCxVQUFVLENBQUMsRUFBVSxFQUFFLEdBQVc7UUFDdkMsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRU0sYUFBYSxDQUFDLE9BQU8sRUFBRSxNQUFjO1FBQzFDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLE1BQU0sRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3BFLENBQUM7OzJHQW45QlUsY0FBYzsrR0FBZCxjQUFjLGNBRmIsTUFBTTsyRkFFUCxjQUFjO2tCQUgxQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFjdGlvbiwgQXBpUmVzcG9uc2UsIEFwcENvbmZpZywgQnV0dG9uLCBDYXBJdGVtLCBEZXRhaWxzRGlhbG9nQ29uZmlnLCBGb3JtQ29uZmlnLCBUYWJsZUNvbmZpZyB9IGZyb20gJy4uL2NsYXNzZXMvQ2xhc3Nlcyc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgb2YsIHRhcCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBIdHRwU2VydmljZSB9IGZyb20gJy4vaHR0cC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuLi9jbGFzc2VzL0xpYkNsYXNzZXMnO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4vYXV0aC5zZXJ2aWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIERhdGFTZXJ2aWNlTGliIHtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwU2VydmljZTogSHR0cFNlcnZpY2UsIHB1YmxpYyByb3V0ZXI6IFJvdXRlciwgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlKSB7XHJcblxyXG4gICAgdGhpcy5hcHBDb25maWcuYXBwTmFtZSA9IFwiQXBwLU5hbWVcIjtcclxuICAgIHRoaXMuYXBwQ29uZmlnLmxvZ28gPSBcIi4vYXNzZXRzL2xvZ28ucG5nXCJcclxuICAgIHRoaXMuYXBwQ29uZmlnLkFEQXV0aCA9IHRydWU7XHJcblxyXG4gICAgdGhpcy5hcHBDb25maWcuY2FwSXRlbXMgPSBbdGhpcy5jYXBNdWx0aXRlbmFudCwgdGhpcy5jYXBBZG1pbiwgdGhpcy5jYXBIb21lXTtcclxuXHJcblxyXG4gICAgdGhpcy5jYXBIb21lLm5hbWUgPSBcImNhcDFcIjtcclxuICAgIHRoaXMuY2FwSG9tZS5kaXNwbGF5ID0gXCJIb21lXCI7XHJcbiAgICB0aGlzLmNhcEhvbWUubGluayA9IFwiaG9tZVwiO1xyXG4gICAgdGhpcy5jYXBIb21lLmljb24gPVwiaG9tZVwiO1xyXG5cclxuXHJcbiAgICB0aGlzLmNhcEFkbWluLm5hbWUgPSBcImNhcDJcIjtcclxuICAgIHRoaXMuY2FwQWRtaW4uZGlzcGxheSA9IFwiQWRtaW5cIjtcclxuICAgIHRoaXMuY2FwQWRtaW4uaWNvbiA9IFwic2VjdXJpdHlcIlxyXG4gICAgdGhpcy5jYXBBZG1pbi5jYXBTdWJJdGVtcyA9IFt0aGlzLmNhcFVzZXJzLCB0aGlzLmNhcFJvbGVzLCB0aGlzLmNhcExvZ3MsIHRoaXMuY2FwU2V0dGluZ3MsIHRoaXMuY2FwQXBwTW9kZWxzLCB0aGlzLmNhcEFwcHJvdmFsc0NvbmZpZywgdGhpcy5jYXBOb3RpZmljYXRpb25zQ29uZmlnXTtcclxuXHJcbiAgICB0aGlzLmNhcFVzZXJzLm5hbWUgPSBcImNhcDNcIjtcclxuICAgIHRoaXMuY2FwVXNlcnMuZGlzcGxheSA9IFwiVXNlcnNcIjtcclxuICAgIHRoaXMuY2FwVXNlcnMubGluayA9IFwiaG9tZS9hZG1pbi91c2Vyc1wiO1xyXG4gICAgdGhpcy5jYXBVc2Vycy5pY29uID0gXCJncm91cFwiO1xyXG5cclxuICAgIHRoaXMuY2FwUm9sZXMubmFtZSA9IFwiY2FwNFwiXHJcbiAgICB0aGlzLmNhcFJvbGVzLmRpc3BsYXkgPSBcIlJvbGVzXCI7XHJcbiAgICB0aGlzLmNhcFJvbGVzLmxpbmsgPSBcImhvbWUvYWRtaW4vcm9sZXNcIjtcclxuICAgIHRoaXMuY2FwUm9sZXMuaWNvbiA9IFwid29ya1wiO1xyXG5cclxuICAgIHRoaXMuY2FwTG9ncy5uYW1lID0gXCJjYXA1XCJcclxuICAgIHRoaXMuY2FwTG9ncy5kaXNwbGF5ID0gXCJMb2dzXCI7XHJcbiAgICB0aGlzLmNhcExvZ3MubGluayA9IFwiaG9tZS9hZG1pbi9sb2dzXCI7XHJcbiAgICB0aGlzLmNhcExvZ3MuaWNvbiA9IFwidGV4dF9zbmlwcGV0XCI7XHJcblxyXG4gICAgdGhpcy5jYXBTZXR0aW5ncy5uYW1lID0gXCJjYXA2XCJcclxuICAgIHRoaXMuY2FwU2V0dGluZ3MuZGlzcGxheSA9IFwiU2V0dGluZ3NcIjtcclxuICAgIHRoaXMuY2FwU2V0dGluZ3MubGluayA9IFwiaG9tZS9hZG1pbi9zZXR0aW5nc1wiO1xyXG4gICAgdGhpcy5jYXBTZXR0aW5ncy5pY29uID1cInNldHRpbmdzXCI7XHJcblxyXG5cclxuICAgIHRoaXMuY2FwTXVsdGl0ZW5hbnQubmFtZSA9IFwiY2FwN1wiXHJcbiAgICB0aGlzLmNhcE11bHRpdGVuYW50LmRpc3BsYXkgPSBcIk11bHRpdGVuYW50XCI7XHJcbiAgICB0aGlzLmNhcE11bHRpdGVuYW50Lmljb24gPSBcImFwYXJ0bWVudFwiXHJcbiAgICB0aGlzLmNhcE11bHRpdGVuYW50LmNhcFN1Ykl0ZW1zID0gW3RoaXMuY2FwVGVuYW50cywgdGhpcy5jYXBNZW1iZXJzaGlwLCB0aGlzLmNhcFBsYW5zIF07XHJcblxyXG4gICAgdGhpcy5jYXBUZW5hbnRzLm5hbWUgPSBcImNhcDhcIlxyXG4gICAgdGhpcy5jYXBUZW5hbnRzLmRpc3BsYXkgPSBcIlRlbmFudHNcIjtcclxuICAgIHRoaXMuY2FwVGVuYW50cy5saW5rID0gXCJob21lL2FkbWluL3RlbmFudHNcIjtcclxuXHJcbiAgICB0aGlzLmNhcE1lbWJlcnNoaXAubmFtZSA9IFwiY2FwOVwiXHJcbiAgICB0aGlzLmNhcE1lbWJlcnNoaXAuZGlzcGxheSA9IFwiTWVtYmVyc2hpcFwiO1xyXG4gICAgdGhpcy5jYXBNZW1iZXJzaGlwLmxpbmsgPSBcImhvbWUvYWRtaW4vbWVtYmVyc2hpcFwiO1xyXG5cclxuICAgIHRoaXMuY2FwUGxhbnMubmFtZSA9IFwiY2FwMTBcIlxyXG4gICAgdGhpcy5jYXBQbGFucy5kaXNwbGF5ID0gXCJQbGFuc1wiO1xyXG4gICAgdGhpcy5jYXBQbGFucy5saW5rID0gXCJob21lL2FkbWluL3BsYW5zXCI7XHJcblxyXG5cclxuICAgIHRoaXMuY2FwR2VuZXJhbC5uYW1lID0gXCJjYXAxMVwiXHJcbiAgICB0aGlzLmNhcEdlbmVyYWwuZGlzcGxheSA9IFwiR2VuZXJhbFwiO1xyXG4gICAgdGhpcy5jYXBHZW5lcmFsLmNhcFN1Ykl0ZW1zID0gW3RoaXMuY2FwTm90aWZpY2F0aW9ucyx0aGlzLmNhcEFwcHJvdmFscyx0aGlzLmNhcEN1c3RvbWVycywgdGhpcy5jYXBJbnZlbnRvcnksIHRoaXMuY2FwQWNjb3VudHMsIHRoaXMuY2FwU3VwcGxpZXJzLCB0aGlzLmNhcFRhc2tzXTtcclxuXHJcblxyXG5cclxuICAgIHRoaXMuY2FwQ3VzdG9tZXJzLm5hbWUgPSBcImNhcDEyXCJcclxuICAgIHRoaXMuY2FwQ3VzdG9tZXJzLmRpc3BsYXkgPSBcIkN1c3RvbWVyc1wiO1xyXG4gICAgdGhpcy5jYXBDdXN0b21lcnMubGluayA9IFwiaG9tZS9hZG1pbi9jdXN0b21lcnNcIjtcclxuICAgIHRoaXMuY2FwQ3VzdG9tZXJzLmljb24gPSBcImdyb3VwXCJcclxuXHJcbiAgICB0aGlzLmNhcEludmVudG9yeS5uYW1lID0gXCJjYXAxM1wiXHJcbiAgICB0aGlzLmNhcEludmVudG9yeS5kaXNwbGF5ID0gXCJJbnZlbnRvcnlcIjtcclxuICAgIHRoaXMuY2FwSW52ZW50b3J5LmxpbmsgPSBcImhvbWUvYWRtaW4vaW52ZW50b3J5XCI7XHJcbiAgICB0aGlzLmNhcEludmVudG9yeS5pY29uID0gXCJzdG9yZWZyb250XCJcclxuXHJcbiAgICB0aGlzLmNhcEFjY291bnRzLm5hbWUgPSBcImNhcDE0XCJcclxuICAgIHRoaXMuY2FwQWNjb3VudHMuZGlzcGxheSA9IFwiQWNjb3VudHNcIjtcclxuICAgIHRoaXMuY2FwQWNjb3VudHMubGluayA9IFwiaG9tZS9hZG1pbi9hY2NvdW50c1wiO1xyXG4gICAgdGhpcy5jYXBBY2NvdW50cy5pY29uID0gXCJhY2NvdW50X2JhbGFuY2Vfd2FsbGV0XCJcclxuXHJcbiAgICB0aGlzLmNhcFN1cHBsaWVycy5uYW1lID0gXCJjYXAxNVwiXHJcbiAgICB0aGlzLmNhcFN1cHBsaWVycy5kaXNwbGF5ID0gXCJTdXBwbGllcnNcIjtcclxuICAgIHRoaXMuY2FwU3VwcGxpZXJzLmxpbmsgPSBcImhvbWUvYWRtaW4vc3VwcGxpZXJzXCI7XHJcbiAgICB0aGlzLmNhcFN1cHBsaWVycy5pY29uID0gXCJncm91cHNcIlxyXG5cclxuICAgIHRoaXMuY2FwVGFza3MubmFtZSA9IFwiY2FwMTZcIlxyXG4gICAgdGhpcy5jYXBUYXNrcy5kaXNwbGF5ID0gXCJUYXNrc1wiO1xyXG4gICAgdGhpcy5jYXBUYXNrcy5saW5rID0gXCJob21lL2FkbWluL3Rhc2tzXCI7XHJcbiAgICB0aGlzLmNhcFRhc2tzLmljb24gPSBcImNoZWNrX2JveFwiXHJcblxyXG5cclxuICAgIHRoaXMuY2FwSFIubmFtZSA9IFwiY2FwMTdcIlxyXG4gICAgdGhpcy5jYXBIUi5kaXNwbGF5ID0gXCJIUlwiO1xyXG4gICAgdGhpcy5jYXBIUi5saW5rID0gXCJob21lL2FkbWluL2hyXCI7XHJcbiAgICB0aGlzLmNhcEhSLmljb24gPSBcImRpdmVyc2l0eV8zXCJcclxuICAgIHRoaXMuY2FwSFIuY2FwU3ViSXRlbXMgPSBbdGhpcy5jYXBEZXBhcnRtZW50cywgdGhpcy5jYXBQb3NpdGlvbnMsIHRoaXMuY2FwRW1wbG95ZWVzLF1cclxuXHJcbiAgICB0aGlzLmNhcEVtcGxveWVlcy5uYW1lID0gXCJjYXAxOFwiXHJcbiAgICB0aGlzLmNhcEVtcGxveWVlcy5kaXNwbGF5ID0gXCJFbXBsb3llZXNcIjtcclxuICAgIHRoaXMuY2FwRW1wbG95ZWVzLmxpbmsgPSBcImhvbWUvYWRtaW4vZW1wbG95ZWVzXCI7XHJcbiAgICB0aGlzLmNhcEVtcGxveWVlcy5pY29uID0gXCJncm91cFwiXHJcblxyXG4gICAgdGhpcy5jYXBEZXBhcnRtZW50cy5uYW1lID0gXCJjYXAxOVwiXHJcbiAgICB0aGlzLmNhcERlcGFydG1lbnRzLmRpc3BsYXkgPSBcIkRlcGFydG1lbnRzXCI7XHJcbiAgICB0aGlzLmNhcERlcGFydG1lbnRzLmxpbmsgPSBcImhvbWUvYWRtaW4vZGVwYXJ0bWVudHNcIjtcclxuICAgIHRoaXMuY2FwRGVwYXJ0bWVudHMuaWNvbiA9IFwiYnVzaW5lc3NfY2VudGVyXCJcclxuXHJcbiAgICB0aGlzLmNhcFBvc2l0aW9ucy5uYW1lID0gXCJjYXAyMFwiXHJcbiAgICB0aGlzLmNhcFBvc2l0aW9ucy5kaXNwbGF5ID0gXCJQb3NpdGlvbnNcIjtcclxuICAgIHRoaXMuY2FwUG9zaXRpb25zLmxpbmsgPSBcImhvbWUvYWRtaW4vcG9zaXRpb25zXCI7XHJcbiAgICB0aGlzLmNhcFBvc2l0aW9ucy5pY29uID0gXCJwaWN0dXJlX2luX3BpY3R1cmVfbWVkaXVtXCJcclxuXHJcbiAgICB0aGlzLmNhcEFwcHJvdmFscy5uYW1lID0gXCJjYXAyMVwiXHJcbiAgICB0aGlzLmNhcEFwcHJvdmFscy5kaXNwbGF5ID0gXCJBcHByb3ZhbHNcIjtcclxuICAgIHRoaXMuY2FwQXBwcm92YWxzLmxpbmsgPSBcImhvbWUvYWRtaW4vYXBwcm92YWxzXCI7XHJcbiAgICB0aGlzLmNhcEFwcHJvdmFscy5pY29uID0gXCJydWxlXCJcclxuXHJcbiAgICB0aGlzLmNhcEFwcHJvdmFsc0NvbmZpZy5uYW1lID0gXCJjYXAyMlwiXHJcbiAgICB0aGlzLmNhcEFwcHJvdmFsc0NvbmZpZy5kaXNwbGF5ID0gXCJBcHByb3ZhbHMgQ29uZmlnXCI7XHJcbiAgICB0aGlzLmNhcEFwcHJvdmFsc0NvbmZpZy5saW5rID0gXCJob21lL2FkbWluL2FwcHJvdmFscy1jb25maWdcIjtcclxuICAgIHRoaXMuY2FwQXBwcm92YWxzQ29uZmlnLmljb24gPSBcInB1Ymxpc2hlZF93aXRoX2NoYW5nZXNcIlxyXG4gICAgdGhpcy5jYXBBcHByb3ZhbHNDb25maWcuY2FwU3ViSXRlbXMgPSBbdGhpcy5jYXBTZWxmQXBwcm92YWxdXHJcblxyXG4gICAgdGhpcy5jYXBTZWxmQXBwcm92YWwubmFtZSA9IFwiY2FwMjNcIlxyXG4gICAgdGhpcy5jYXBTZWxmQXBwcm92YWwuZGlzcGxheSA9IFwiU2VsZiBBcHByb3ZhbHNcIjtcclxuICAgIHRoaXMuY2FwU2VsZkFwcHJvdmFsLmlzQm9vbCA9IHRydWU7XHJcblxyXG4gICAgdGhpcy5jYXBOb3RpZmljYXRpb25zLm5hbWUgPSBcImNhcDI0XCJcclxuICAgIHRoaXMuY2FwTm90aWZpY2F0aW9ucy5kaXNwbGF5ID0gXCJOb3RpZmljYXRpb25zXCI7XHJcbiAgICB0aGlzLmNhcE5vdGlmaWNhdGlvbnMubGluayA9IFwiaG9tZS9hZG1pbi9ub3RpZmljYXRpb25zXCI7XHJcbiAgICB0aGlzLmNhcE5vdGlmaWNhdGlvbnMuaWNvbiA9IFwibm90aWZpY2F0aW9uc1wiXHJcblxyXG4gICAgdGhpcy5jYXBBcHBNb2RlbHMubmFtZSA9IFwiY2FwMjVcIlxyXG4gICAgdGhpcy5jYXBBcHBNb2RlbHMuZGlzcGxheSA9IFwiQXBwIE1vZGVsc1wiO1xyXG4gICAgdGhpcy5jYXBBcHBNb2RlbHMubGluayA9IFwiaG9tZS9hZG1pbi9hcHBtb2RlbHNcIjtcclxuICAgIC8vIHRoaXMuY2FwQXBwTW9kZWxzLmljb24gPSBcIm5vdGlmaWNhdGlvbnNcIlxyXG5cclxuICAgIHRoaXMuY2FwTm90aWZpY2F0aW9uc0NvbmZpZy5uYW1lID0gXCJjYXAyNlwiXHJcbiAgICB0aGlzLmNhcE5vdGlmaWNhdGlvbnNDb25maWcuZGlzcGxheSA9IFwiTm90aWYgQ29uZmlnXCI7XHJcbiAgICB0aGlzLmNhcE5vdGlmaWNhdGlvbnNDb25maWcubGluayA9IFwiaG9tZS9hZG1pbi9ub3RpZmljYXRpb25zLWNvbmZpZ1wiO1xyXG5cclxuXHJcbiAgICB0aGlzLmF1dGhTZXJ2aWNlLm15Um9sZU9ic2Vydi5zdWJzY3JpYmUoKHJvbGU6IGFueSkgPT4ge1xyXG4gICAgICB0aGlzLm15Um9sZSA9IHJvbGU7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG5cclxuICBhcHBDb25maWcgPSBuZXcgQXBwQ29uZmlnKCk7XHJcbiAgcHJpdmF0ZSBhcHBDb25maWdTb3VyY2UgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHRoaXMuYXBwQ29uZmlnKTtcclxuICBwdWJsaWMgYXBwQ29uZmlnT2JzZXJ2ID0gdGhpcy5hcHBDb25maWdTb3VyY2UuYXNPYnNlcnZhYmxlKCk7XHJcbiAgVXBkYXRlQXBwQ29uZmlnKGNvbmZpZzogQXBwQ29uZmlnKSB7XHJcbiAgICB0aGlzLmFwcENvbmZpZ1NvdXJjZS5uZXh0KGNvbmZpZyk7XHJcbiAgICB0aGlzLmFwcENvbmZpZyA9IGNvbmZpZztcclxuICB9XHJcblxyXG4gIG15Um9sZTtcclxuXHJcbiAgY2FwSG9tZSA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcEFkbWluID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwVXNlcnMgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBSb2xlcyA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcExvZ3MgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBTZXR0aW5ncyA9IG5ldyBDYXBJdGVtO1xyXG5cclxuICBjYXBNdWx0aXRlbmFudCA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcFRlbmFudHMgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBNZW1iZXJzaGlwID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwUGxhbnMgPSBuZXcgQ2FwSXRlbTtcclxuXHJcbiAgY2FwR2VuZXJhbCA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcEN1c3RvbWVycyA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcEludmVudG9yeSA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcEFjY291bnRzID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwU3VwcGxpZXJzID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwVGFza3MgPSBuZXcgQ2FwSXRlbTtcclxuXHJcbiAgY2FwSFIgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBFbXBsb3llZXMgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBEZXBhcnRtZW50cyA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcFBvc2l0aW9ucyA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcEdyYWRlcyA9IG5ldyBDYXBJdGVtO1xyXG5cclxuICBjYXBBcHByb3ZhbHMgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBBcHByb3ZhbHNDb25maWcgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBOb3RpZmljYXRpb25zID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwU2VsZkFwcHJvdmFsID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwQXBwTW9kZWxzID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwTm90aWZpY2F0aW9uc0NvbmZpZyA9IG5ldyBDYXBJdGVtO1xyXG5cclxuICBwdWJsaWMgdG1wUHJvZmlsZXVzZXJOYW1lID0gXCJcIjtcclxuXHJcblxyXG4gIGlzUHJvY2Vzc2luZyA9IGZhbHNlO1xyXG5cclxuXHJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLURlcGFydG1lbXRzIEZvcm0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgZGVwYXJ0bWVudEZvcm1Db25maWc6IEZvcm1Db25maWcgPSB7XHJcbiAgICBzZWN1cml0eTogeyBhbGxvdzogW3RoaXMuY2FwRGVwYXJ0bWVudHNdIH0sXHJcbiAgICB0aXRsZSA6ICdEZXBhcnRtZW50JyxcclxuICAgIGZpZWxkczogW1xyXG4gICAgICB7IG5hbWU6ICduYW1lJywgdHlwZTogJ3RleHQnLCByZXF1aXJlZDogdHJ1ZSB9LFxyXG4gICAgXSxcclxuICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnZGVwYXJ0bWVudHMvaWQnIH0sXHJcbiAgICBoZXJvRmllbGQ6ICdkZXBhcnRtZW50SUQnLFxyXG4gICAgaW5jbHVkZUF1ZGl0OiB0cnVlLFxyXG4gIH1cclxuXHJcbiAgZWRpdERlcGFydG1lbnRCdXR0b246IEJ1dHRvbiA9IHsgbmFtZTogJ2VkaXQnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdkZXBhcnRtZW50cz9hY3Rpb249ZWRpdCcsIG1ldGhvZDogJ3Bvc3QnLCBzdWNjZXNzTWVzc2FnZTogJ0VkaXRlZCBTdWNjZXNzZnVsbHknIH0gfVxyXG5cclxuICBkZXBhcnRtZW50RGV0YWlsc0NvbmZpZzogRGV0YWlsc0RpYWxvZ0NvbmZpZyA9IHtcclxuICAgIGZvcm1Db25maWc6IHRoaXMuZGVwYXJ0bWVudEZvcm1Db25maWcsXHJcbiAgICBoZXJvRmllbGQ6ICdkZXBhcnRtZW50SUQnLFxyXG4gICAgYnV0dG9uczogW3RoaXMuZWRpdERlcGFydG1lbnRCdXR0b25dLFxyXG4gIH1cclxuXHJcblxyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1Qb3NpdGlvbnMgRm9ybS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICBwb3NpdGlvbkZvcm1Db25maWc6IEZvcm1Db25maWcgPSB7XHJcbiAgICBzZWN1cml0eTogeyBhbGxvdzogW3RoaXMuY2FwUG9zaXRpb25zXSB9LFxyXG4gICAgdGl0bGU6ICdQb3NpdGlvbicsXHJcbiAgICBmaWVsZHM6IFtcclxuICAgICAgeyBuYW1lOiAnbmFtZScsIHR5cGU6ICd0ZXh0JywgcmVxdWlyZWQ6IHRydWUgfSxcclxuICAgICAgeyBuYW1lOiAnZGVzY3JpcHRpb24nLCB0eXBlOiAndGV4dCcsIH0sXHJcbiAgICAgIHsgbmFtZTogJ2RlcGFydG1lbnRJRCcsIGFsaWFzOiAnRGVwYXJ0bWVudCcsIHR5cGU6ICdzZWxlY3QnLCBsb2FkQWN0aW9uOiB7IHVybDogJ2RlcGFydG1lbnRzL2xpc3QveCcgfSwgZGV0YWlsc0NvbmZpZzogdGhpcy5kZXBhcnRtZW50RGV0YWlsc0NvbmZpZyB9LFxyXG5cclxuICAgIF0sXHJcbiAgICBsb2FkQWN0aW9uOiB7IHVybDogJ3Bvc2l0aW9ucy9pZCcgfSxcclxuICAgIGhlcm9GaWVsZDogJ3Bvc2l0aW9uSUQnLFxyXG4gICAgaW5jbHVkZUF1ZGl0OiB0cnVlLFxyXG4gIH1cclxuXHJcbiAgZWRpdFBvc2l0aW9uQnV0dG9uOiBCdXR0b24gPSB7IG5hbWU6ICdlZGl0JywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAncG9zaXRpb25zP2FjdGlvbj1lZGl0JywgbWV0aG9kOiAncG9zdCcsIHN1Y2Nlc3NNZXNzYWdlOiAnRWRpdGVkIFN1Y2Nlc3NmdWxseScgfSB9XHJcblxyXG4gIHBvc2l0aW9uRGV0YWlsc0NvbmZpZyA6IERldGFpbHNEaWFsb2dDb25maWcgPSB7XHJcbiAgICBmb3JtQ29uZmlnIDogdGhpcy5wb3NpdGlvbkZvcm1Db25maWcsXHJcbiAgICBoZXJvRmllbGQgOiAncG9zaXRpb25JRCcsXHJcbiAgICBidXR0b25zOiBbdGhpcy5lZGl0UG9zaXRpb25CdXR0b25dLFxyXG4gIH1cclxuXHJcblxyXG5cclxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tRW1wbG95ZWVzLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuICBnZW5kZXJzID0gW1xyXG4gICAgeyBuYW1lOiAnTWFsZScsIHZhbHVlOiAxIH0sXHJcbiAgICB7IG5hbWU6ICdGZW1hbGUnLCB2YWx1ZTogMiB9XHJcbiAgXVxyXG5cclxuICBlbXBsb3llZUZvcm1Db25maWc6IEZvcm1Db25maWcgPSB7XHJcbiAgICBzZWN1cml0eSA6IHthbGxvdyA6IFt0aGlzLmNhcEVtcGxveWVlc119LFxyXG4gICAgZmllbGRzOiBbXHJcbiAgICAgIHsgbmFtZTogJ25hdGlvbmFsSUQnLCB0eXBlOiAndGV4dCcsIGFsaWFzOiAnTmF0aW9uYWwgSUQnLCByZXF1aXJlZDogdHJ1ZSB9LFxyXG4gICAgICB7IG5hbWU6ICdnZW5kZXInLCBhbGlhczogJ0dlbmRlcicsIHR5cGU6ICdzZWxlY3QnLCBvcHRpb25zOiB0aGlzLmdlbmRlcnMsIHJlcXVpcmVkOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ2ZpcnN0TmFtZScsIHR5cGU6ICd0ZXh0JywgcmVxdWlyZWQ6IHRydWUgfSxcclxuICAgICAgeyBuYW1lOiAnbGFzdE5hbWUnLCB0eXBlOiAndGV4dCcsIHJlcXVpcmVkOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ2RhdGVPZkJpcnRoJywgdHlwZTogJ2RhdGUnLCBhbGlhczogJ0RhdGUgb2YgQmlydGgnLCByZXF1aXJlZDogdHJ1ZSB9LFxyXG4gICAgICB7IG5hbWU6ICdlbXBsb3ltZW50RGF0ZScsIHR5cGU6ICdkYXRlJywgYWxpYXM6ICdFbXBsb3ltZW50IERhdGUnLCByZXF1aXJlZDogdHJ1ZSB9LFxyXG4gICAgICB7IG5hbWU6ICdkZXBhcnRtZW50SUQnLCBhbGlhczogJ0RlcGFydG1lbnQnLCB0eXBlOiAnc2VsZWN0JywgbG9hZEFjdGlvbiA6IHsgdXJsIDogJ2RlcGFydG1lbnRzL2xpc3QveCd9LCBkZXRhaWxzQ29uZmlnOiB0aGlzLmRlcGFydG1lbnREZXRhaWxzQ29uZmlnIH0sXHJcbiAgICAgIHsgbmFtZTogJ3Bvc2l0aW9uSUQnLCBhbGlhczogJ1Bvc2l0aW9uJywgdHlwZTogJ3NlbGVjdCcsIGxvYWRBY3Rpb246IHsgdXJsOiAncG9zaXRpb25zL2xpc3QveCcgfSwgbWFzdGVyRmllbGQ6ICdkZXBhcnRtZW50SUQnLCBkZXRhaWxzQ29uZmlnOiB0aGlzLnBvc2l0aW9uRGV0YWlsc0NvbmZpZyB9LFxyXG4gICAgICB7IG5hbWU6ICdlbXBsb3ltZW50U3RhdHVzJywgYWxpYXM6ICdFbXBsb3ltZW50IFN0YXR1cycsIHR5cGU6ICdzZWxlY3QnLCBsb2FkQWN0aW9uOiB7IHVybDogJ2VtcGxveWVlcy9saXN0L2VtcGxveW1lbnQtc3RhdHVzJyB9IH0sXHJcbiAgICAgIHsgbmFtZTogJ2FjdGl2ZVN0YXR1cycsIGFsaWFzOiAnQWN0aXZlIFN0YXR1cycsIHR5cGU6ICdzZWxlY3QnLCBsb2FkQWN0aW9uOiB7IHVybDogJ2VtcGxveWVlcy9saXN0L2FjdGl2ZS1zdGF0dXMnIH0gfSxcclxuICAgICAgeyBuYW1lOiAncGFzc3BvcnROdW1iZXInLCB0eXBlOiAndGV4dCcsIGFsaWFzOiAnUGFzc3BvcnQgTnVtYmVyJyB9LFxyXG4gICAgICB7IG5hbWU6ICd1c2VyTmFtZScsIHR5cGU6ICd0ZXh0JywgYWxpYXM6ICdVc2VyJywgbG9hZEFjdGlvbjogeyB1cmw6ICd1c2VyL2xpc3QveCcgfSwgb3B0aW9uRGlzcGxheTogJ25hbWUnLCBvcHRpb25WYWx1ZTogJ3ZhbHVlJywgaW5mb01lc3NhZ2UgOiAnUmVsYXRlZCB1c2VyIGFjY291bnQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2FkZHJlc3MnLCB0eXBlOiAndGV4dCcsIHJvd3M6IDIsIHNwYW46IHRydWUgfSxcclxuICAgICAgeyBuYW1lOiAncGhvbmUnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnZW1haWwnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnbm90ZScsIHR5cGU6ICd0ZXh0Jywgcm93czogMiwgc3BhbjogdHJ1ZSB9LFxyXG4gICAgXSxcclxuICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnZW1wbG95ZWVzL2lkJyB9LFxyXG4gICAgaGVyb0ZpZWxkOiAnZW1wbG95ZWVJRCcsXHJcbiAgICBpbmNsdWRlQXVkaXQgOiB0cnVlLFxyXG4gIH1cclxuXHJcbiAgZW1wbG95ZWVzVGFibGVDb25maWc6IFRhYmxlQ29uZmlnID0ge1xyXG4gICAgc2hvd0ZpbHRlcjogdHJ1ZSxcclxuICAgIG1pbkNvbHVtbnM6IFsnbmFtZScsICdkZXBhcnRtZW50TmFtZScsICdwb3NpdGlvbk5hbWUnXSxcclxuICAgIGZsYXRCdXR0b25zOiB0cnVlLFxyXG4gICAgbG9nUmVzcG9uc2UgOiB0cnVlLFxyXG4gICAgY29sdW1uczogW1xyXG4gICAgICB7IG5hbWU6ICduYW1lJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2dlbmRlck5hbWUnLCB0eXBlOiAndGV4dCcsIGFsaWFzOiAnR2VuZGVyJyB9LFxyXG4gICAgICB7IG5hbWU6ICdkZXBhcnRtZW50TmFtZScsIHR5cGU6ICd0ZXh0JywgYWxpYXM6ICdEZXBhcnRtZW50JyB9LFxyXG4gICAgICB7IG5hbWU6ICdwb3NpdGlvbk5hbWUnLCB0eXBlOiAndGV4dCcsIGFsaWFzOiAnUG9zaXRpb24nIH0sXHJcbiAgICAgIHsgbmFtZTogJ2VtcGxveW1lbnRTdGF0dXNOYW1lJywgdHlwZTogJ3RleHQnLCBhbGlhczogJ0VtcGxveW1lbnQgU3RhdHVzJyB9LFxyXG4gICAgICB7IG5hbWU6ICdhY3RpdmVTdGF0dXNOYW1lJywgdHlwZTogJ3RleHQnLCBhbGlhczogJ0FjdGl2ZSBTdGF0dXMnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2lzTGlua2VkJywgdHlwZTogJ2NoZWNrYm94JywgYWxpYXM6ICdMaW5rZWQnIH0sXHJcbiAgICBdLFxyXG4gICAgYnV0dG9uczogW1xyXG4gICAgICB7IG5hbWU6ICdjcmVhdGUnLCBkaXNwbGF5OiAnQ3JlYXRlJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnZW1wbG95ZWVzP2FjdGlvbj1jcmVhdGUnLCBtZXRob2Q6ICdwb3N0JyB9IH0sXHJcbiAgICAgIHsgbmFtZTogJ3ZpZXcnLCBkaWFsb2c6IHRydWUgfSxcclxuICAgICAgeyBuYW1lOiAnZWRpdCcsIGRpYWxvZzogdHJ1ZSwgYWN0aW9uOiB7IHVybDogJ2VtcGxveWVlcz9hY3Rpb249ZWRpdCcsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgICAgeyBuYW1lOiAnZGVsZXRlJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnZW1wbG95ZWVzP2FjdGlvbj1kZWxldGUnLCBtZXRob2Q6ICdwb3N0JyB9IH0sXHJcbiAgICBdLFxyXG4gICAgbG9hZEFjdGlvbjogeyB1cmw6ICdlbXBsb3llZXMvYWxsL3gnIH0sXHJcbiAgICBmb3JtQ29uZmlnOiB0aGlzLmVtcGxveWVlRm9ybUNvbmZpZ1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1Qb3NpdGlvbnMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgcG9zaXRpb25zVGFibGVDb25maWc6IFRhYmxlQ29uZmlnID0ge1xyXG4gICAgc2hvd0ZpbHRlcjogdHJ1ZSxcclxuICAgIGZsYXRCdXR0b25zOiB0cnVlLFxyXG4gICAgY29sdW1uczogW1xyXG4gICAgICB7IG5hbWU6ICduYW1lJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2Rlc2NyaXB0aW9uJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2RlcGFydG1lbnROYW1lJywgdHlwZTogJ2NoaXAnLCBkZXRhaWxzQ29uZmlnOiB0aGlzLmRlcGFydG1lbnREZXRhaWxzQ29uZmlnLCBhbGlhczogJ0RlcGFydG1lbnQnIH0sXHJcbiAgICBdLFxyXG4gICAgYnV0dG9uczogW1xyXG4gICAgICB7IG5hbWU6ICdjcmVhdGUnLCBkaXNwbGF5OiAnQ3JlYXRlJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAncG9zaXRpb25zP2FjdGlvbj1jcmVhdGUnLCBtZXRob2Q6ICdwb3N0JyB9IH0sXHJcbiAgICAgIHtcclxuICAgICAgICBuYW1lOiAndmlldycsXHJcbiAgICAgICAgZGlhbG9nOiB0cnVlLFxyXG4gICAgICAgIGRldGFpbHNDb25maWc6IHtcclxuICAgICAgICAgIGZvcm1Db25maWc6IHRoaXMucG9zaXRpb25Gb3JtQ29uZmlnICxcclxuICAgICAgICAgIGhlcm9GaWVsZDogJ3Bvc2l0aW9uSUQnLFxyXG4gICAgICAgICAgYnV0dG9uczogW3RoaXMuZWRpdFBvc2l0aW9uQnV0dG9uXSxcclxuICAgICAgICAgIHRhYmxlQ29uZmlnczogW1xyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgLi4udGhpcy5lbXBsb3llZXNUYWJsZUNvbmZpZyxcclxuICAgICAgICAgICAgICBsb2FkQWN0aW9uOiB7IHVybDogJ2VtcGxveWVlcy94L3gnIH0sIGxvYWRDcml0ZXJpYTogJ3Bvc2l0aW9uJywgbG9hZElERmllbGQ6ICdwb3NpdGlvbklEJyxcclxuICAgICAgICAgICAgICBjb2x1bW5zOiB0aGlzLmVtcGxveWVlc1RhYmxlQ29uZmlnLmNvbHVtbnMuZmlsdGVyKHggPT4gWydkZXBhcnRtZW50TmFtZScsICdwb3NpdGlvbk5hbWUnXS5pbmNsdWRlcyh4Lm5hbWUpID09IGZhbHNlKSxcclxuICAgICAgICAgICAgICB0YWJUaXRsZTogJ0VtcGxveWVlcycsXHJcbiAgICAgICAgICAgICAgZWxldmF0aW9uOiAnbm9uZScsXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIF0sXHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICB0aGlzLmVkaXRQb3NpdGlvbkJ1dHRvbixcclxuICAgICAgeyBuYW1lOiAnZGVsZXRlJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAncG9zaXRpb25zP2FjdGlvbj1kZWxldGUnLCBtZXRob2Q6ICdwb3N0JyB9IH0sXHJcbiAgICBdLFxyXG4gICAgbG9hZEFjdGlvbjogeyB1cmw6ICdwb3NpdGlvbnMvYWxsL3gnIH0sXHJcbiAgICBmb3JtQ29uZmlnOiB0aGlzLnBvc2l0aW9uRm9ybUNvbmZpZ1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1EZXBhcnRtZW50cy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiAgZGVwYXJ0bWVudFRhYmxlQ29uZmlnOiBUYWJsZUNvbmZpZyA9IHtcclxuICAgIHNob3dGaWx0ZXI6IHRydWUsXHJcbiAgICBtaW5Db2x1bW5zOiBbJ25hbWUnXSxcclxuICAgIGZsYXRCdXR0b25zOiB0cnVlLFxyXG4gICAgY29sdW1uczogW1xyXG4gICAgICAvLyB7IG5hbWU6ICdkZXBhcnRtZW50SUQnLCB0eXBlOiAnbnVtYmVyJywgYWxpYXM6ICdJRCcgfSxcclxuICAgICAgeyBuYW1lOiAnbmFtZScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgXSxcclxuICAgIGJ1dHRvbnM6IFtcclxuICAgICAgeyBuYW1lOiAnY3JlYXRlJywgZGlzcGxheTogJ0NyZWF0ZScsIGRpYWxvZzogdHJ1ZSwgYWN0aW9uOiB7IHVybDogJ2RlcGFydG1lbnRzP2FjdGlvbj1jcmVhdGUnLCBtZXRob2Q6ICdwb3N0JyB9IH0sXHJcbiAgICAgIHtcclxuICAgICAgICBuYW1lOiAndmlldycsXHJcbiAgICAgICAgZGlhbG9nOiB0cnVlLFxyXG4gICAgICAgIGRldGFpbHNDb25maWc6IHtcclxuICAgICAgICAgIGZvcm1Db25maWc6IHRoaXMuZGVwYXJ0bWVudEZvcm1Db25maWcsXHJcbiAgICAgICAgICBoZXJvRmllbGQ6ICdkZXBhcnRtZW50SUQnLFxyXG4gICAgICAgICAgYnV0dG9uczogW3RoaXMuZWRpdERlcGFydG1lbnRCdXR0b25dLFxyXG4gICAgICAgICAgdGFibGVDb25maWdzOiBbXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAuLi50aGlzLmVtcGxveWVlc1RhYmxlQ29uZmlnLFxyXG4gICAgICAgICAgICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnZW1wbG95ZWVzL3gveCcgfSwgbG9hZENyaXRlcmlhOiAnZGVwYXJ0bWVudCcsIGxvYWRJREZpZWxkOiAnZGVwYXJ0bWVudElEJyxcclxuICAgICAgICAgICAgICBjb2x1bW5zOiB0aGlzLmVtcGxveWVlc1RhYmxlQ29uZmlnLmNvbHVtbnMuZmlsdGVyKHggPT4gWydkZXBhcnRtZW50TmFtZScsICdwb3NpdGlvbk5hbWUnXS5pbmNsdWRlcyh4Lm5hbWUpID09IGZhbHNlKSxcclxuICAgICAgICAgICAgICB0YWJUaXRsZTogJ0VtcGxveWVlcycsXHJcbiAgICAgICAgICAgICAgZWxldmF0aW9uOiAnbm9uZScsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAuLi50aGlzLnBvc2l0aW9uc1RhYmxlQ29uZmlnLFxyXG4gICAgICAgICAgICAgIGxvYWRBY3Rpb246IHsgdXJsOiAncG9zaXRpb25zL3gveCcgfSwgbG9hZENyaXRlcmlhOiAnZGVwYXJ0bWVudCcsIGxvYWRJREZpZWxkOiAnZGVwYXJ0bWVudElEJyxcclxuICAgICAgICAgICAgICB0YWJUaXRsZTogJ1Bvc2l0aW9ucycsXHJcbiAgICAgICAgICAgICAgZWxldmF0aW9uOiAnbm9uZScsXHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICBdLFxyXG4gICAgICAgIH1cclxuICAgICAgfSxcclxuICAgICAgdGhpcy5lZGl0RGVwYXJ0bWVudEJ1dHRvbixcclxuICAgICAgeyBuYW1lOiAnZGVsZXRlJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnZGVwYXJ0bWVudHM/YWN0aW9uPWRlbGV0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgIF0sXHJcbiAgICBsb2FkQWN0aW9uOiB7IHVybDogJ2RlcGFydG1lbnRzL2FsbC94JyB9LFxyXG4gICAgZm9ybUNvbmZpZzogdGhpcy5kZXBhcnRtZW50Rm9ybUNvbmZpZ1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1Db250YWN0IFBlcnNvbnMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgY29udGFjdFBlcnNvbkZvcm1Db25maWc6IEZvcm1Db25maWcgPSB7XHJcbiAgICB0aXRsZTogJ0NvbnRhY3QgUGVyc29uJyxcclxuICAgIGluY2x1ZGVBdWRpdDogdHJ1ZSxcclxuICAgIGZpZWxkczogW1xyXG4gICAgICB7IG5hbWU6ICduYW1lJywgdHlwZTogJ3RleHQnLCBzcGFuIDogdHJ1ZSB9LFxyXG4gICAgICB7IG5hbWU6ICdtb2JpbGUnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnZW1haWwnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnY29udGFjdE1ldGhvZHMnLCB0eXBlOiAnY29tcG9zaXRlJywgc3BhbjogdHJ1ZSwgc3ViZmllbGRzIDpbXHJcbiAgICAgICAgeyBuYW1lOiAnY2FuQ2FsbCcsIHR5cGU6ICdjaGVja2JveCcsIGFsaWFzOiAnQ2FsbCcgfSxcclxuICAgICAgICB7IG5hbWU6ICdjYW5TTVMnLCB0eXBlOiAnY2hlY2tib3gnLCBhbGlhczogJ1NNUycgfSxcclxuICAgICAgICB7IG5hbWU6ICdjYW5XaGF0c0FwcCcsIHR5cGU6ICdjaGVja2JveCcsIGFsaWFzOiAnV2hhdHNBcHAnIH1cclxuICAgICAgXSB9LFxyXG5cclxuICAgIF0sXHJcbiAgICByZXNldDogdHJ1ZVxyXG4gIH07XHJcblxyXG4gIGNvbnRhY3RQZXJzb25UYWJsZUNvbmZpZzogVGFibGVDb25maWcgPSB7XHJcbiAgICB0YWJUaXRsZTogJ0NvbnRhY3RzJyxcclxuICAgIHNob3dGaWx0ZXI6IHRydWUsXHJcbiAgICBtaW5Db2x1bW5zOiBbJ25hbWUnLCAnY29udGFjdE1ldGhvZHMnXSxcclxuICAgIGVsZXZhdGlvbjogJ25vbmUnLFxyXG4gICAgZmxhdEJ1dHRvbnM6IHRydWUsXHJcbiAgICBjb2x1bW5zOiBbXHJcbiAgICAgIHsgbmFtZTogJ25hbWUnLCB0eXBlOiAndGV4dCcsIH0sXHJcbiAgICAgIHsgbmFtZTogJ21vYmlsZScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdlbWFpbCcsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgbmFtZTogJ2NvbnRhY3RNZXRob2RzJyxcclxuICAgICAgICB0eXBlOiAnaWNvbicsXHJcbiAgICAgICAgaWNvbnM6IFtcclxuICAgICAgICAgIHsgbmFtZTogJ2NhbGwnLCBjb2xvcjogJ2dyZWVuJywgY29uZGl0aW9uOiB4ID0+IHguY2FuQ2FsbCwgdGlwOiAnQXZhaWxhYmxlIGZvciBDYWxscycgfSxcclxuICAgICAgICAgIHsgbmFtZTogJ3NtcycsIGNvbG9yOiAnZ3JlZW4nLCBjb25kaXRpb246IHggPT4geC5jYW5TTVMsIHRpcDogJ0F2YWlsYWJsZSBmb3IgU01TJyB9LFxyXG4gICAgICAgICAgeyBuYW1lOiAnZm9ydW0nLCBjb2xvcjogJ2dyZWVuJywgY29uZGl0aW9uOiB4ID0+IHguY2FuV2hhdHNBcHAsIHRpcDogJ0F2YWlsYWJsZSBvbiBXaGF0c0FwcCcgfVxyXG4gICAgICAgIF1cclxuICAgICAgfVxyXG4gICAgXSxcclxuICAgIGJ1dHRvbnM6IFtcclxuICAgICAgeyBuYW1lOiAnY3JlYXRlJywgZGlzcGxheTogJ0FkZCcsIGRpYWxvZzogdHJ1ZSwgYWN0aW9uOiB7IHVybDogJ2NvbnRhY3RwZXJzb25zP2FjdGlvbj1jcmVhdGUnLCBtZXRob2Q6ICdwb3N0JyB9LCBjb25maXJtOiB7IG1lc3NhZ2U6ICdBZGQgY29udGFjdCBwZXJzb24/JyB9IH0sXHJcbiAgICAgIHsgbmFtZTogJ2VkaXQnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdjb250YWN0cGVyc29ucz9hY3Rpb249ZWRpdCcsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgICAgeyBuYW1lOiAnZGVsZXRlJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnY29udGFjdHBlcnNvbnM/YWN0aW9uPWRlbGV0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfVxyXG4gICAgXSxcclxuICAgIGZvcm1Db25maWc6IHRoaXMuY29udGFjdFBlcnNvbkZvcm1Db25maWdcclxuICB9O1xyXG5cclxuXHJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLUN1c3RvbWVycy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICBjdXN0b21lckZvcm1Db25maWc6IEZvcm1Db25maWcgPSB7XHJcbiAgICBzZWN1cml0eTogeyBhbGxvdzogW3RoaXMuY2FwQ3VzdG9tZXJzXSB9LFxyXG4gICAgaW5jbHVkZUF1ZGl0OiB0cnVlLFxyXG4gICAgdGl0bGUgOiAnQ3VzdG9tZXInLFxyXG4gICAgZmllbGRzOiBbXHJcbiAgICAgIHsgbmFtZTogJ25hbWUnLCB0eXBlOiAndGV4dCcsIHJlcXVpcmVkOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ3Bob25lJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2NvbnRhY3RQZXJzb24nLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnZW1haWwnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnYWRkcmVzcycsIHR5cGU6ICd0ZXh0Jywgcm93czogMiwgc3BhbjogdHJ1ZSB9LFxyXG4gICAgICB7IG5hbWU6ICdjdXN0b21lclRlbmFudElEJywgYWxpYXM6ICdDdXN0b21lciBUZW5hbnQnLCB0eXBlOiAndGV4dCcsIGxvYWRBY3Rpb246IHsgdXJsOiAndGVuYW50cy9saXN0L3gnIH0gLCBudWxsYWJsZTogdHJ1ZSB9LFxyXG4gICAgXSxcclxuICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnY3VzdG9tZXJzL2lkJyB9LFxyXG4gICAgaGVyb0ZpZWxkOiAnY3VzdG9tZXJJRCcsXHJcblxyXG4gICAgcmVzZXQ6IHRydWUsXHJcbiAgfVxyXG5cclxuICBjdXN0b21lckNyZWF0ZUJ1dHRvbiA6IEJ1dHRvbiA9IHsgbmFtZTogJ2NyZWF0ZScsIGRpc3BsYXk6ICdDcmVhdGUnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdjdXN0b21lcnM/YWN0aW9uPWNyZWF0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfVxyXG4gIGN1c3RvbWVyRWRpdEJ1dHRvbjogQnV0dG9uID0geyBuYW1lOiAnZWRpdCcsIGRpYWxvZzogdHJ1ZSwgYWN0aW9uOiB7IHVybDogJ2N1c3RvbWVycz9hY3Rpb249ZWRpdCcsIG1ldGhvZDogJ3Bvc3QnIH0gfVxyXG5cclxuICBjdXN0b21lckRldGFpbHNDb25maWc6IERldGFpbHNEaWFsb2dDb25maWcgPSB7XHJcbiAgICBmb3JtQ29uZmlnIDogdGhpcy5jdXN0b21lckZvcm1Db25maWcsXHJcbiAgICBoZXJvRmllbGQgOiAnY3VzdG9tZXJJRCcsXHJcbiAgICB0YWJsZUNvbmZpZ3M6IFtcclxuICAgICAge1xyXG4gICAgICAgIC4uLnRoaXMuY29udGFjdFBlcnNvblRhYmxlQ29uZmlnLFxyXG4gICAgICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnY29udGFjdHBlcnNvbnMvY3VzdG9tZXIveCcgfSxcclxuICAgICAgICBsb2FkQ3JpdGVyaWE6ICdjdXN0b21lcicsXHJcbiAgICAgICAgbG9hZElERmllbGQ6ICdjdXN0b21lcklEJ1xyXG4gICAgICB9XHJcbiAgICBdLFxyXG4gICAgYnV0dG9uczogW1xyXG4gICAgICB0aGlzLmN1c3RvbWVyQ3JlYXRlQnV0dG9uLFxyXG4gICAgICB0aGlzLmN1c3RvbWVyRWRpdEJ1dHRvblxyXG4gICAgXVxyXG4gIH07XHJcblxyXG4gIGN1c3RvbWVyc1RhYmxlQ29uZmlnOiBUYWJsZUNvbmZpZyA9IHtcclxuICAgIHNob3dGaWx0ZXI6IHRydWUsXHJcbiAgICBtaW5Db2x1bW5zOiBbJ25hbWUnXSxcclxuICAgIGZsYXRCdXR0b25zOiB0cnVlLFxyXG4gICAgbG9nUmVzcG9uc2U6IHRydWUsXHJcbiAgICBtYXhCdXR0b25zQ291bnQ6IDMsXHJcbiAgICBjb2xsYXBzZUJ1dHRvbnMgOiB0cnVlLFxyXG5cclxuICAgIGNvbHVtbnM6IFtcclxuXHJcbiAgICAgIHsgbmFtZTogJ25hbWUnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAncGhvbmUnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnY29udGFjdFBlcnNvbicsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdpc0xpbmtlZCcsIHR5cGU6ICdjaGVja2JveCcsIGFsaWFzOiAnTGlua2VkJyB9LFxyXG5cclxuICAgIF0sXHJcblxyXG4gICAgYnV0dG9uczogW1xyXG4gICAgICB0aGlzLmN1c3RvbWVyQ3JlYXRlQnV0dG9uLFxyXG4gICAgICB7IG5hbWU6ICd2aWV3JywgZGlhbG9nOiB0cnVlLCBkZXRhaWxzQ29uZmlnOiB0aGlzLmN1c3RvbWVyRGV0YWlsc0NvbmZpZyB9LFxyXG4gICAgICB7IG5hbWU6ICdlZGl0JywgZGlhbG9nOiB0cnVlLCBkZXRhaWxzQ29uZmlnOiB0aGlzLmN1c3RvbWVyRGV0YWlsc0NvbmZpZyB9LFxyXG4gICAgICB7IG5hbWU6ICdkZWxldGUnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdjdXN0b21lcnM/YWN0aW9uPWRlbGV0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgIF0sXHJcblxyXG4gICAgbG9hZEFjdGlvbjogeyB1cmw6ICdjdXN0b21lcnMvYWxsL3gnIH0sXHJcbiAgICBmb3JtQ29uZmlnOiB0aGlzLmN1c3RvbWVyRm9ybUNvbmZpZ1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1TdXBwbGllcnMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgc3VwcGxpZXJGb3JtQ29uZmlnOiBGb3JtQ29uZmlnID0ge1xyXG4gICAgc2VjdXJpdHk6IHsgYWxsb3c6IFt0aGlzLmNhcFN1cHBsaWVyc10gfSxcclxuICAgIGluY2x1ZGVBdWRpdDogdHJ1ZSxcclxuICAgIHRpdGxlOiAnU3VwcGxpZXInLFxyXG4gICAgZmllbGRzOiBbXHJcbiAgICAgIHsgbmFtZTogJ25hbWUnLCB0eXBlOiAndGV4dCcsIHJlcXVpcmVkOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ3Bob25lJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2NvbnRhY3RQZXJzb24nLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnZW1haWwnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnYWRkcmVzcycsIHR5cGU6ICd0ZXh0Jywgcm93czogMiwgc3BhbjogdHJ1ZSB9LFxyXG4gICAgXSxcclxuXHJcbiAgICBsb2FkQWN0aW9uOiB7IHVybDogJ3N1cHBsaWVycy9pZCcgfSxcclxuICAgIGhlcm9GaWVsZDogJ3N1cHBsaWVySUQnLFxyXG4gIH1cclxuXHJcbiAgc3VwcGxpZXJDcmVhdGVCdXR0b24gOiBCdXR0b24gPSB7IG5hbWU6ICdjcmVhdGUnLCBkaXNwbGF5OiAnQ3JlYXRlJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnc3VwcGxpZXJzP2FjdGlvbj1jcmVhdGUnLCBtZXRob2Q6ICdwb3N0JyB9IH1cclxuICBzdXBwbGllckVkaXRCdXR0b24gOiBCdXR0b24gPSB7IG5hbWU6ICdlZGl0JywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnc3VwcGxpZXJzP2FjdGlvbj1lZGl0JywgbWV0aG9kOiAncG9zdCcgfSB9XHJcblxyXG4gIHN1cHBsaWVyRGV0YWlsc0NvbmZpZzogRGV0YWlsc0RpYWxvZ0NvbmZpZyA9IHtcclxuICAgIGZvcm1Db25maWcgOiB0aGlzLnN1cHBsaWVyRm9ybUNvbmZpZyxcclxuICAgIGhlcm9GaWVsZCA6ICdzdXBwbGllcklEJyxcclxuICAgIHRhYmxlQ29uZmlnczogW1xyXG4gICAgICB7XHJcbiAgICAgICAgLi4udGhpcy5jb250YWN0UGVyc29uVGFibGVDb25maWcsXHJcbiAgICAgICAgbG9hZEFjdGlvbjogeyB1cmw6ICdjb250YWN0cGVyc29ucy9zdXBwbGllci94JyB9LFxyXG4gICAgICAgIGxvYWRDcml0ZXJpYTogJ3N1cHBsaWVyJyxcclxuICAgICAgICBsb2FkSURGaWVsZDogJ3N1cHBsaWVySUQnXHJcbiAgICAgIH1cclxuICAgIF0sXHJcbiAgICBidXR0b25zIDogW1xyXG4gICAgICB0aGlzLnN1cHBsaWVyQ3JlYXRlQnV0dG9uLFxyXG4gICAgICB0aGlzLnN1cHBsaWVyRWRpdEJ1dHRvbixcclxuICAgIF1cclxuICB9O1xyXG5cclxuICBzdXBwbGllcnNUYWJsZUNvbmZpZzogVGFibGVDb25maWcgPSB7XHJcbiAgICBzaG93RmlsdGVyOiB0cnVlLFxyXG4gICAgbWluQ29sdW1uczogWyduYW1lJ10sXHJcbiAgICBmbGF0QnV0dG9uczogdHJ1ZSxcclxuICAgIGNvbHVtbnM6IFtcclxuICAgICAgeyBuYW1lOiAnbmFtZScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdwaG9uZScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdjb250YWN0UGVyc29uJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICBdLFxyXG5cclxuICAgIGJ1dHRvbnM6IFtcclxuICAgICAgdGhpcy5zdXBwbGllckNyZWF0ZUJ1dHRvbixcclxuICAgICAgeyBuYW1lOiAndmlldycsIGRpYWxvZzogdHJ1ZSwgZGV0YWlsc0NvbmZpZzogdGhpcy5zdXBwbGllckRldGFpbHNDb25maWcgfSxcclxuICAgICAgeyBuYW1lOiAnZWRpdCcsIGRpYWxvZzogdHJ1ZSwgIGRldGFpbHNDb25maWc6IHRoaXMuc3VwcGxpZXJEZXRhaWxzQ29uZmlnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2RlbGV0ZScsIGRpYWxvZzogdHJ1ZSwgYWN0aW9uOiB7IHVybDogJ3N1cHBsaWVycz9hY3Rpb249ZGVsZXRlJywgbWV0aG9kOiAncG9zdCcgfSB9LFxyXG4gICAgXSxcclxuXHJcbiAgICBsb2FkQWN0aW9uOiB7IHVybDogJ3N1cHBsaWVycy9hbGwveCcgfSxcclxuICAgIGZvcm1Db25maWc6IHRoaXMuc3VwcGxpZXJGb3JtQ29uZmlnXHJcbiAgfVxyXG5cclxuXHJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLU5vdGlmaWNhdGlvbnMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4gIG5vdGlmaWNhdGlvbk9wdGlvbnMgPSBbXHJcbiAgICB7IG5hbWU6ICdVSSBPbmx5JywgdmFsdWU6IDEgfSxcclxuICAgIHsgbmFtZTogJ1VJICsgRW1haWwnLCB2YWx1ZTogMyB9LFxyXG4gICAgLy8geyBuYW1lOiAnVUkgKyBFbWFpbCArIFNNUycsIHZhbHVlOiA3IH0sXHJcbiAgICB7IG5hbWU6ICdVSSArIFdoYXRzQXBwJywgdmFsdWU6IDkgfSxcclxuICAgIHsgbmFtZTogJ1VJICsgVGVsZWdyYW0nLCB2YWx1ZTogMTcgfSxcclxuICAgIHsgbmFtZTogJ1VJICsgVGVsZWdyYW0gKyBXaGF0c0FwcCcsIHZhbHVlOiAyNSB9LFxyXG4gICAgeyBuYW1lOiAnQWxsIENoYW5uZWxzJywgdmFsdWU6IDMxIH1cclxuICBdXHJcblxyXG5cclxuXHJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLUFwcHJvdmFscy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4gIGFwcHJvdmFsSGlzdG9yeUZvcm1Db25maWcgOiBGb3JtQ29uZmlnID0ge1xyXG4gICAgdGl0bGU6ICdBcHByb3ZhbCBIaXN0b3J5JyxcclxuICAgIGZpZWxkczogW1xyXG4gICAgICB7IG5hbWU6ICdsZXZlbE5hbWUnLCB0eXBlOiAndGV4dCcsIHJlYWRvbmx5OiB0cnVlLCBhbGlhczogJ0xldmVsJyB9LFxyXG4gICAgICB7IG5hbWU6ICdzdGF0dXNOYW1lJywgdHlwZTogJ3RleHQnLCByZWFkb25seTogdHJ1ZSwgYWxpYXM6ICdTdGF0dXMnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2NvbW1lbnRzJywgdHlwZTogJ3RleHQnLCByZWFkb25seTogdHJ1ZSwgc3BhbjogdHJ1ZSwgcm93czogMywgY29weUNvbnRlbnQ6IHRydWUgfSxcclxuICAgIF0sXHJcbiAgICBpbmNsdWRlQXVkaXQ6IHRydWVcclxuICB9XHJcblxyXG4gIC8vQXBwcm92YWwgSGlzdG9yeVxyXG4gIGFwcHJvdmFsSGlzdG9yeVRhYmxlQ29uZmlnOiBUYWJsZUNvbmZpZyA9IHtcclxuICAgIHRhYlRpdGxlOiAnVHJhaWwnLFxyXG4gICAgZWxldmF0aW9uOiAnbm9uZScsXHJcbiAgICBtaW5Db2x1bW5zOiBbJ2NyZWF0ZWREYXRlJywgJ2xldmVsTmFtZScsICdzdGF0dXNOYW1lJ10sXHJcbiAgICBmbGF0QnV0dG9uczogdHJ1ZSxcclxuICAgIHNob3dGaWx0ZXIgOiB0cnVlLFxyXG4gICAgY29sdW1uczogW1xyXG4gICAgICB7IG5hbWU6ICdjcmVhdGVkRGF0ZScsIHR5cGU6ICdkYXRldGltZScsIGFsaWFzIDogJ0RhdGUnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2xldmVsTmFtZScsIHR5cGU6ICd0ZXh0JywgYWxpYXM6ICdMZXZlbCcgfSxcclxuICAgICAge1xyXG4gICAgICAgIG5hbWU6ICdzdGF0dXNOYW1lJywgdHlwZTogJ3RleHQnLCBhbGlhczogJ1N0YXR1cycsXHJcbiAgICAgICAgY29sb3JzOiBbXHJcbiAgICAgICAgICB7IG5hbWU6ICcjOTBBNEFFJywgY29uZGl0aW9uOiB4ID0+IHguc3RhdHVzID09PSAwIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICcjNjZCQjZBJywgY29uZGl0aW9uOiB4ID0+IHguc3RhdHVzID09PSAxIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICcjRjQ0MzM2JywgY29uZGl0aW9uOiB4ID0+IHguc3RhdHVzID09PSAyIH1cclxuICAgICAgICBdXHJcbiAgICAgIH0sXHJcbiAgICAgIHsgbmFtZTogJ2NvbW1lbnRzJywgdHlwZTogJ3RleHQnLCB9LFxyXG4gICAgICB7IG5hbWU6ICdjcmVhdGVkQnlOYW1lJywgdHlwZTogJ3RleHQnLCBhbGlhczogJ0J5JyB9LFxyXG5cclxuICAgIF0sXHJcbiAgICBidXR0b25zOiBbXHJcbiAgICAgIHsgbmFtZTogJ3ZpZXcnLCBkaWFsb2c6IHRydWUgfVxyXG4gICAgXSxcclxuXHJcbiAgICBmb3JtQ29uZmlnIDogdGhpcy5hcHByb3ZhbEhpc3RvcnlGb3JtQ29uZmlnLFxyXG5cclxuICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnYXBwcm92YWxoaXN0b3J5L2FwcHJvdmFsL3gnIH0sXHJcbiAgICBsb2FkQ3JpdGVyaWE6ICdhcHByb3ZhbCcsXHJcbiAgICBsb2FkSURGaWVsZDogJ2FwcHJvdmFsSUQnXHJcbiAgfTtcclxuXHJcblxyXG5cclxuICAvL2FwcHJvdmFscyBmb3JtXHJcbiAgYXBwcm92YWxGb3JtQ29uZmlnOiBGb3JtQ29uZmlnID0ge1xyXG4gICAgdGl0bGU6ICdBcHByb3ZhbCcsXHJcbiAgICBmaWVsZHM6IFtcclxuICAgICAgeyBuYW1lOiAnYmxhbmsnLCB0eXBlOiAnYmxhbmsnLCBzcGFuOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ3N0YXR1c05hbWUnLCB0eXBlOiAnbGFiZWwnLCBhbGlhczogJ1N0YXR1cycsIHNwYW46IHRydWUgfSxcclxuICAgICAgeyBuYW1lOiAnbWVzc2FnZScsIHR5cGU6ICd0ZXh0JywgcmVxdWlyZWQ6IHRydWUsIHNwYW46IHRydWUsIHJvd3M6IDMgfSxcclxuXHJcbiAgICBdLFxyXG4gICAgbG9hZEFjdGlvbjogeyB1cmw6ICdhcHByb3ZhbHMvaWQnIH0sXHJcbiAgICBoZXJvRmllbGQ6ICdhcHByb3ZhbElEJ1xyXG4gIH07XHJcblxyXG5cclxuXHJcblxyXG4gIC8vIGFwcHJvdmFsIGFjdGlvbiBkaWFsb2dcclxuICBhcHByb3ZhbEFjdGlvbkZvcm1Db25maWc6IEZvcm1Db25maWcgPSB7XHJcbiAgICB0aXRsZTogJ0FwcHJvdmFsIEFjdGlvbicsXHJcbiAgICBmaXhlZFRpdGxlOiB0cnVlLFxyXG4gICAgZmllbGRzOiBbXHJcbiAgICAgIHtcclxuICAgICAgICBuYW1lOiAnY29tbWVudHMnLCB0eXBlOiAndGV4dCcsIHJlcXVpcmVkOiBmYWxzZSwgc3BhbjogdHJ1ZSwgcm93czogMyxcclxuICAgICAgICBpbmZvTWVzc2FnZTogJ0VudGVyIHlvdXIgY29tbWVudHMgYWJvdXQgdGhpcyBhcHByb3ZhbCBhY3Rpb24uIFRoaXMgd2lsbCBiZSB2aXNpYmxlIGluIHRoZSBhcHByb3ZhbCBoaXN0b3J5LidcclxuICAgICAgfVxyXG4gICAgXVxyXG4gIH07XHJcblxyXG4gIGFwcHJvdmVBY3Rpb25EZXRhaWxzQ29uZmlnOiBEZXRhaWxzRGlhbG9nQ29uZmlnID0ge1xyXG4gICAgZm9ybUNvbmZpZzoge1xyXG4gICAgICAuLi50aGlzLmFwcHJvdmFsQWN0aW9uRm9ybUNvbmZpZyxcclxuICAgICAgZmllbGRzOiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgbmFtZTogJ2NvbW1lbnRzJywgdHlwZTogJ3RleHQnLCByZXF1aXJlZDogZmFsc2UsIHNwYW46IHRydWUsIHJvd3M6IDMsXHJcbiAgICAgICAgICBpbmZvTWVzc2FnZTogJ0VudGVyIHlvdXIgY29tbWVudHMgYWJvdXQgdGhpcyBhcHByb3ZhbCBhY3Rpb24uIFRoaXMgd2lsbCBiZSB2aXNpYmxlIGluIHRoZSBhcHByb3ZhbCBoaXN0b3J5LidcclxuICAgICAgICB9XHJcbiAgICAgIF0sXHJcbiAgICB9LFxyXG4gICAgbW9kZTogJ2VkaXQnLFxyXG4gICAgYnV0dG9uczogW1xyXG4gICAgICB7IG5hbWU6ICdlZGl0JywgZGlzcGxheTogJ0FwcHJvdmUnLCBjb2xvcjogJ2dyZWVuJywgYWN0aW9uOiB7IHVybDogJ2FwcHJvdmUnLCBtZXRob2Q6ICdwb3N0JyB9IH0gLy91cmwgcHJlY29uZmlndXJlZCB0byBiZSBkeW5hbWljXHJcbiAgICBdXHJcbiAgfTtcclxuXHJcbiAgZGVjbGluZUFjdGlvbkRldGFpbHNDb25maWc6IERldGFpbHNEaWFsb2dDb25maWcgPSB7XHJcbiAgICBmb3JtQ29uZmlnOiB7Li4udGhpcy5hcHByb3ZhbEFjdGlvbkZvcm1Db25maWcsXHJcbiAgICAgIGZpZWxkczogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIG5hbWU6ICdjb21tZW50cycsIHR5cGU6ICd0ZXh0JywgcmVxdWlyZWQ6IHRydWUsIHNwYW46IHRydWUsIHJvd3M6IDMsXHJcbiAgICAgICAgICBpbmZvTWVzc2FnZTogJ0VudGVyIHlvdXIgY29tbWVudHMgYWJvdXQgdGhpcyBhcHByb3ZhbCBhY3Rpb24uIFRoaXMgd2lsbCBiZSB2aXNpYmxlIGluIHRoZSBhcHByb3ZhbCBoaXN0b3J5LicsXHJcbiAgICAgICAgICBoaW50IDogJ0RlY2xpbmUgY29tbWVudCBpcyByZXF1aXJlZCAhJ1xyXG4gICAgICAgIH1cclxuICAgICAgXSxcclxuICAgIH0sXHJcbiAgICBtb2RlOiAnZWRpdCcsXHJcbiAgICBidXR0b25zOiBbXHJcbiAgICAgIHsgbmFtZTogJ2VkaXQnLCBkaXNwbGF5OiAnRGVjbGluZScsIGNvbG9yOiAncmVkJywgYWN0aW9uOiB7IHVybDogJ2RlY2xpbmUnLCBtZXRob2Q6ICdwb3N0JyB9IH0gLy91cmwgcHJlY29uZmlndXJlZCB0byBiZSBkeW5hbWljXHJcbiAgICBdXHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIGFwcHJvdmVCdXR0b246IEJ1dHRvbiA9IHtcclxuICAgIG5hbWU6ICdhcHByb3ZlJywgdGlwOiAnQXBwcm92ZSBSZXF1ZXN0JywgZGlhbG9nOiB0cnVlLCBpbkRpYWxvZzogdHJ1ZSwgaWNvbjogeyBuYW1lOiAnZG9uZScgfSwgY29sb3I6ICdncmVlbicsIGRldGFpbHNDb25maWc6IHRoaXMuYXBwcm92ZUFjdGlvbkRldGFpbHNDb25maWcsIGlnbm9yZVBlbmRpbmdBcHByb3ZhbDogdHJ1ZSxcclxuICAgIHZpc2libGU6IHggPT4geCAmJiB4LmNhbkFjdGlvbiAmJiAoIXguaXNNeUFwcHJvdmFsUmVxdWVzdCB8fCB0aGlzLm15Um9sZVt0aGlzLmNhcFNlbGZBcHByb3ZhbC5uYW1lXSksXHJcbiAgfVxyXG5cclxuICBkZWNsaW5lQnV0dG9uOiBCdXR0b24gPSB7XHJcbiAgICBuYW1lOiAnZGVjbGluZScsIHRpcDogJ0RlY2xpbmUgUmVxdWVzdCcsIGRpYWxvZzogdHJ1ZSwgaW5EaWFsb2c6IHRydWUsIGljb246IHsgbmFtZTogJ2Nsb3NlJyB9LCBjb2xvcjogJ3JlZCcsIGRldGFpbHNDb25maWc6IHRoaXMuZGVjbGluZUFjdGlvbkRldGFpbHNDb25maWcsIGlnbm9yZVBlbmRpbmdBcHByb3ZhbDogdHJ1ZSxcclxuICAgIHZpc2libGU6IHggPT4geCAmJiB4LmNhbkFjdGlvbiAmJiAoIXguaXNNeUFwcHJvdmFsUmVxdWVzdCB8fCB0aGlzLm15Um9sZVt0aGlzLmNhcFNlbGZBcHByb3ZhbC5uYW1lXSksXHJcbiAgfVxyXG5cclxuICBjYW5jZWxCdXR0b246IEJ1dHRvbiA9IHtcclxuICAgIG5hbWU6ICdjYW5jZWwnLCB0aXA6ICdDYW5jZWwgQXBwcm92YWwnLCBpbkRpYWxvZzogdHJ1ZSwgaWNvbjogeyBuYW1lOiAnY2FuY2VsJyB9LCBjb2xvcjogJ3JlZCcsIGFjdGlvbjogeyB1cmw6ICdjYW5jZWwnLCBtZXRob2Q6ICdwb3N0JywgfSwgaWdub3JlUGVuZGluZ0FwcHJvdmFsOiB0cnVlLCAvL3VybCBwcmVjb25maWd1cmVkIHRvIGJlIGR5bmFtaWNcclxuICAgIGNvbmZpcm06IHsgbWVzc2FnZTogJ0NhbmNlbCBhcHByb3ZhbCByZXF1ZXN0PyBUaGlzIHdpbGwgcmV2ZXJ0IGNoYW5nZXMgYW5kIHN0b3AgdGhlIGFwcHJvdmFsIHByb2Nlc3MuJyB9LFxyXG4gICAgdmlzaWJsZTogeCA9PiB4ICYmIHguY2FuQ2FuY2VsXHJcbiAgfVxyXG5cclxuICBhcHByb3ZhbERldGFpbHNDb25maWc6IERldGFpbHNEaWFsb2dDb25maWcgPSB7XHJcbiAgICBmb3JtQ29uZmlnOiB0aGlzLmFwcHJvdmFsRm9ybUNvbmZpZyxcclxuICAgIGhlcm9GaWVsZDogJ2FwcHJvdmFsSUQnLFxyXG4gICAgdGFibGVDb25maWdzOiBbdGhpcy5hcHByb3ZhbEhpc3RvcnlUYWJsZUNvbmZpZ10sXHJcblxyXG4gICAgc3RlcENvbmZpZzoge1xyXG4gICAgICBzdGVwczogW10sXHJcbiAgICAgIGxvYWRBY3Rpb246IHsgdXJsOiBgYXBwcm92YWxzL3N0ZXBzL3tpZH1gIH0sXHJcbiAgICAgIGxvYWRJREZpZWxkOiAnYXBwcm92YWxJRCcsXHJcbiAgICAgIHZhbHVlRmllbGQ6ICdjdXJyZW50TGV2ZWwnXHJcbiAgICB9LFxyXG5cclxuICAgIGJ1dHRvbnMgOiBbXHJcbiAgICAgIHRoaXMuYXBwcm92ZUJ1dHRvbixcclxuICAgICAgdGhpcy5kZWNsaW5lQnV0dG9uLFxyXG4gICAgICB0aGlzLmNhbmNlbEJ1dHRvblxyXG4gICAgXVxyXG5cclxuICB9O1xyXG5cclxuXHJcbiAgdmlld0FwcHJvdmFsQnV0dG9uOiBCdXR0b24gPSB7XHJcbiAgICBuYW1lOiAnaW5mbycsIHRpcDogJ0FwcHJvdmFsIEluZm9ybWF0aW9uJywgZGlhbG9nOiB0cnVlLCBpY29uOiB7IG5hbWU6ICdpbmZvJywgIH0sIGRldGFpbHNDb25maWc6IHRoaXMuYXBwcm92YWxEZXRhaWxzQ29uZmlnLCBpZ25vcmVQZW5kaW5nQXBwcm92YWw6IHRydWUsXHJcbiAgICB2aXNpYmxlOiB4ID0+IHguY2FuQWN0aW9uIHx8IHguY2FuQ2FuY2VsXHJcbiAgfVxyXG5cclxuXHJcbiAgLy9yZWNlaXZlZCBhcHByb3ZhbHNcclxuICByZWNlaXZlZEFwcHJvdmFsc1RhYmxlQ29uZmlnOiBUYWJsZUNvbmZpZyA9IHtcclxuICAgIHNob3dGaWx0ZXI6IHRydWUsXHJcbiAgICBtaW5Db2x1bW5zOiBbJ21lc3NhZ2UnLCAnc3RhdHVzTmFtZSddLFxyXG4gICAgbWluQnV0dG9uczogWyd2aWV3JywgJ2FwcHJvdmUnLCAnZGVjbGluZSddLFxyXG4gICAgZmxhdEJ1dHRvbnM6IHRydWUsXHJcbiAgICBncmV5T3V0OiAoeCkgPT4geC5pc0dyZXllZE91dCxcclxuICAgIC8vIGxvZ1Jlc3BvbnNlOiB0cnVlLFxyXG4gICAgY29sbGFwc2VCdXR0b25zOiB0cnVlLFxyXG4gICAgY29sdW1uczogW1xyXG4gICAgICB7IG5hbWU6ICdjcmVhdGVkRGF0ZScsIHR5cGU6ICdkYXRldGltZScsIGFsaWFzOiAnRGF0ZScgfSxcclxuICAgICAgeyBuYW1lOiAnY3JlYXRlZEJ5TmFtZScsIGFsaWFzOiAnUmVxdWVzdCBCeScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdtZXNzYWdlJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBuYW1lOiAndHlwZU5hbWUnLCBhbGlhczogJ1R5cGUnLCB0eXBlOiAnY2hpcCcsXHJcbiAgICAgICAgY29sb3JzOiBbXHJcbiAgICAgICAgICB7IG5hbWU6ICcjNjZCQjZBJywgY29uZGl0aW9uOiB4ID0+IHgudHlwZSA9PT0gMCB9LFxyXG4gICAgICAgICAgeyBuYW1lOiAnb3JhbmdlJywgY29uZGl0aW9uOiB4ID0+IHgudHlwZSA9PT0gMSB9LFxyXG4gICAgICAgICAgeyBuYW1lOiAnI0Y0NDMzNicsIGNvbmRpdGlvbjogeCA9PiB4LnR5cGUgPT09IDIgfVxyXG4gICAgICAgIF1cclxuICAgICAgfSxcclxuICAgICAge1xyXG4gICAgICAgIG5hbWU6ICdzdGF0dXNOYW1lJywgYWxpYXM6ICdTdGF0dXMnLCB0eXBlOiAnY2hpcCcsIGRldGFpbHNDb25maWc6IHRoaXMuYXBwcm92YWxEZXRhaWxzQ29uZmlnLFxyXG4gICAgICAgIGNvbG9yczogW1xyXG4gICAgICAgICAgeyBuYW1lOiAnIzkwQTRBRScsIGNvbmRpdGlvbjogeCA9PiB4LnN0YXR1cyA9PT0gMCB9LFxyXG4gICAgICAgICAgeyBuYW1lOiAnIzY2QkI2QScsIGNvbmRpdGlvbjogeCA9PiB4LnN0YXR1cyA9PT0gMSB9LFxyXG4gICAgICAgICAgeyBuYW1lOiAnI0Y0NDMzNicsIGNvbmRpdGlvbjogeCA9PiB4LnN0YXR1cyA9PT0gMiB9XHJcbiAgICAgICAgXVxyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgbmFtZTogJ2N1cnJlbnRMZXZlbE5hbWUnLCB0eXBlOiAndGV4dCcsIGFsaWFzOiAnQ3VycmVudCBMZXZlbCcsXHJcbiAgICAgICAgaWNvbnM6IFtcclxuICAgICAgICAgIHsgbmFtZTogJ2RvbmUnLCBjb2xvcjogJyM2NkJCNkEnLCBjb25kaXRpb246IHggPT4geC5zdGF0dXMgPT09ICdBcHByb3ZlZCcsIHRpcDogJ0FwcHJvdmVkJyB9LFxyXG4gICAgICAgICAgeyBuYW1lOiAnY2xvc2UnLCBjb2xvcjogJyNGNDQzMzYnLCBjb25kaXRpb246IHggPT4geC5zdGF0dXMgPT09ICdEZWNsaW5lZCcsIHRpcDogJ0RlY2xpbmVkJyB9LFxyXG4gICAgICAgICAgeyBuYW1lOiAnc2NoZWR1bGUnLCBjb2xvcjogJyNGRkMxMDcnLCBjb25kaXRpb246IHggPT4geC5zdGF0dXMgPT09ICdQZW5kaW5nJywgdGlwOiAnUGVuZGluZycgfVxyXG4gICAgICAgIF1cclxuICAgICAgfSxcclxuICAgICAgeyBuYW1lOiAndXBkYXRlZEJ5TmFtZScsIGFsaWFzOiAnQWN0aW9uZWQgQnknLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAndXBkYXRlZERhdGVEaXNwbGF5JywgdHlwZTogJ2RhdGV0aW1lJywgYWxpYXM6ICdBY3Rpb25lZCBEYXRlJyB9LFxyXG4gICAgXSxcclxuXHJcbiAgICBidXR0b25zOiBbXHJcbiAgICAgIHRoaXMudmlld0FwcHJvdmFsQnV0dG9uLFxyXG4gICAgICB0aGlzLmFwcHJvdmVCdXR0b24sXHJcbiAgICAgIHRoaXMuZGVjbGluZUJ1dHRvbixcclxuICAgICAgdGhpcy5jYW5jZWxCdXR0b24sXHJcbiAgICBdLFxyXG5cclxuICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnYXBwcm92YWxzL2FsbC94JyB9XHJcbiAgfTtcclxuXHJcblxyXG4gIC8vc2VuZCBhcHByb3ZhbHNcclxuICBzZW50QXBwcm92YWxzVGFibGVDb25maWc6IFRhYmxlQ29uZmlnID0ge1xyXG4gICAgLi4udGhpcy5yZWNlaXZlZEFwcHJvdmFsc1RhYmxlQ29uZmlnLFxyXG4gICAgYnV0dG9uczogW1xyXG4gICAgICB0aGlzLnZpZXdBcHByb3ZhbEJ1dHRvbixcclxuICAgICAgdGhpcy5jYW5jZWxCdXR0b24sXHJcbiAgICBdLFxyXG4gICAgbG9hZEFjdGlvbjogeyB1cmw6ICdhcHByb3ZhbHMvc2VudC94JyB9XHJcbiAgfTtcclxuXHJcblxyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tT3RoZXIgY29kZVxyXG5cclxuICBwcml2YXRlIGxpc3RDYWNoZTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9IHt9O1xyXG4gIHByaXZhdGUgY2FjaGVEdXJhdGlvbiA9IDEgKiA2MCAqIDEwMDA7XHJcbiAgcHJpdmF0ZSBjYWNoZVRpbWVzdGFtcHM6IHsgW2tleTogc3RyaW5nXTogbnVtYmVyIH0gPSB7fTtcclxuXHJcbiAgcHVibGljIENhbGxBcGkoYWN0aW9uOiBBY3Rpb24sIGRhdGE6IGFueSA9ICcnICkge1xyXG5cclxuXHJcbiAgICBpZiAoIWFjdGlvbj8udXJsKSB7XHJcbiAgICAgIGNvbnNvbGUud2FybignSW52YWxpZCBhY3Rpb24gb3IgbWlzc2luZyBVUkwnKTtcclxuICAgICAgcmV0dXJuIG9mKHsgc3VjY2VzczogZmFsc2UsIG1lc3NhZ2U6ICdJbnZhbGlkIGFjdGlvbiBjb25maWd1cmF0aW9uJyB9KTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoYWN0aW9uLnVybC5pbmNsdWRlcygnL2xpc3QvJykpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuaGFuZGxlTGlzdENhbGwoYWN0aW9uKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zb2xlLmxvZyhcImNhbGxpbmdcIiwgYWN0aW9uKTtcclxuXHJcblxyXG4gICAgaWYgKCFhY3Rpb24ubWV0aG9kIHx8IGFjdGlvbi5tZXRob2QgPT0nZ2V0Jyl7XHJcbiAgICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLkdldChhY3Rpb24udXJsKTtcclxuICAgIH0gZWxzZSBpZiAoYWN0aW9uLm1ldGhvZCA9PSAncG9zdCcpe1xyXG5cclxuICAgICAgaWYgKGFjdGlvbi5pc0Zvcm1EYXRhKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdF9Gb3JtRGF0YShhY3Rpb24udXJsLCBkYXRhKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmIChhY3Rpb24udXJsID09ICdhcHByb3ZlJyB8fCBhY3Rpb24udXJsID09ICdkZWNsaW5lJyB8fCBhY3Rpb24udXJsID09ICdjYW5jZWwnKSB7XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLlBvc3QoYCR7ZGF0YS5lbmRwb2ludH0vYXBwcm92ZT9hY3Rpb249JHthY3Rpb24udXJsfWAsIGRhdGEpO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2V7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdChhY3Rpb24udXJsLCBkYXRhKTtcclxuICAgICAgfVxyXG5cclxuXHJcbiAgICB9XHJcbiAgICBlbHNle1xyXG4gICAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KGFjdGlvbi51cmwsIGRhdGEpO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIHByaXZhdGUgaGFuZGxlTGlzdENhbGwoYWN0aW9uOiBBY3Rpb24pIHtcclxuICAgIGNvbnN0IGNhY2hlS2V5ID0gYWN0aW9uLnVybDtcclxuICAgIGNvbnN0IGN1cnJlbnRUaW1lID0gRGF0ZS5ub3coKTtcclxuXHJcbiAgICAvLyBSZXR1cm4gY2FjaGUgaWYgdmFsaWQgYW5kIG5vdCBmb3JjaW5nIHJlZnJlc2hcclxuICAgIGlmICghYWN0aW9uLnNraXBDYWNoZSAmJiB0aGlzLmxpc3RDYWNoZVtjYWNoZUtleV0gJiYgY3VycmVudFRpbWUgLSB0aGlzLmNhY2hlVGltZXN0YW1wc1tjYWNoZUtleV0gPCB0aGlzLmNhY2hlRHVyYXRpb24pIHtcclxuICAgICAgcmV0dXJuIG9mKHtcclxuICAgICAgICBzdWNjZXNzOiB0cnVlLFxyXG4gICAgICAgIGRhdGE6IHRoaXMubGlzdENhY2hlW2NhY2hlS2V5XVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBNYWtlIEFQSSBjYWxsIGFuZCBjYWNoZSByZXN1bHRcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLkdldChhY3Rpb24udXJsKS5waXBlKFxyXG4gICAgICB0YXAoKHJlc3BvbnNlOiBBcGlSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXNwb25zZS5zdWNjZXNzICYmIHJlc3BvbnNlPy5kYXRhPy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICB0aGlzLmxpc3RDYWNoZVtjYWNoZUtleV0gPSByZXNwb25zZS5kYXRhO1xyXG4gICAgICAgICAgdGhpcy5jYWNoZVRpbWVzdGFtcHNbY2FjaGVLZXldID0gY3VycmVudFRpbWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8vIE1ldGhvZCB0byBpbnZhbGlkYXRlIGNhY2hlIG9uIGRhdGEgY2hhbmdlXHJcbiAgcHVibGljIGludmFsaWRhdGVMaXN0Q2FjaGUoZW50aXR5VXJsOiBzdHJpbmcpIHtcclxuICAgIE9iamVjdC5rZXlzKHRoaXMubGlzdENhY2hlKS5mb3JFYWNoKGtleSA9PiB7XHJcbiAgICAgIC8vIEludmFsaWRhdGUgYW55IGNhY2hlIGVudHJpZXMgcmVsYXRlZCB0byB0aGlzIGVudGl0eVxyXG4gICAgICBpZiAoa2V5LmluY2x1ZGVzKGVudGl0eVVybCkpIHtcclxuICAgICAgICBkZWxldGUgdGhpcy5saXN0Q2FjaGVba2V5XTtcclxuICAgICAgICBkZWxldGUgdGhpcy5jYWNoZVRpbWVzdGFtcHNba2V5XTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgQ2xlYXJDYWNoZSgpe1xyXG4gICAgdGhpcy5saXN0Q2FjaGUgPSB7fTtcclxuXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgQ2hlY2tXZWxjb21lZChwYXRoOiBzdHJpbmcgPSAnaG9tZS9hZG1pbi93ZWxjb21lJykge1xyXG4gICAgdGhpcy5DYWxsQXBpKHsgdXJsOiAndGVuYW50L3dlbGNvbWUveCcgfSkuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgIGlmICgheC5kYXRhKSB7XHJcbiAgICAgICAgdGhpcy5OYXZpZ2F0ZShwYXRoKVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcblxyXG5cclxuICBwdWJsaWMgTmF2aWdhdGUocGF0aDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbcGF0aF0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIE5hdmlnYXRlV2l0aFZhbHVlKHBhdGg6IHN0cmluZywgdmFsdWUgOiBzdHJpbmcpe1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3BhdGhdLCB7XHJcbiAgICAgIHF1ZXJ5UGFyYW1zOiB7IHY6IHZhbHVlIH0sXHJcbiAgICAgIHF1ZXJ5UGFyYW1zSGFuZGxpbmc6ICdtZXJnZScsXHJcbiAgICAgIHNraXBMb2NhdGlvbkNoYW5nZTogZmFsc2VcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIEdldE5hdmlnYXRpb25WYWx1ZSgpe1xyXG4gICAgaWYgKHRoaXMucm91dGUuc25hcHNob3QucXVlcnlQYXJhbXNbXCJ2XCJdICE9IHVuZGVmaW5lZCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtc1tcInZcIl1cclxuICAgIH1lbHNle1xyXG4gICAgICByZXR1cm4gXCJcIjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyB0bXBBY2NvdW50SUQ7XHJcblxyXG5cclxuXHJcbiAgLy9Vc2Vyc1xyXG4gIHB1YmxpYyBHZXRVc2VyKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuR2V0KFwiVXNlci9hbGwveFwiKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBSZWdpc3RlckFjY291bnQodSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdChcIlVzZXIvcmVnaXN0ZXJcIiwgdSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgR2V0VXNlckJ5SUQodmFsOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLkdldChgVXNlci9pZC8ke3ZhbH1gKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBVcGRhdGVVc2VyKHByb2ZpbGUpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLlBvc3QoXCJVc2VyL2VkaXRcIiwgcHJvZmlsZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgVW5sb2NrVXNlcih1c2VyKSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KFwiVXNlci91bmxvY2tcIiwgdXNlcik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgTG9ja1VzZXIodXNlcikge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdChcIlVzZXIvbG9ja1wiLCB1c2VyKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBEZWxldGVVc2VyKHVzZXIpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLlBvc3QoXCJVc2VyL2RlbGV0ZVwiLCB1c2VyKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBMb2dpbih1OiBVc2VyKSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KFwiVXNlci9sb2dpblwiLCB1KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBDaGFuZ2VQYXNzd29yZCh1KSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KFwiVXNlci9jaGFuZ2VwYXNzd29yZC1zZWxmXCIsIHUpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIENoYW5nZVBhc3N3b3JkQWRtaW4odSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdChcIlVzZXIvY2hhbmdlcGFzc3dvcmQtYWRtaW5cIiwgdSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgU2VsZlJlc2V0KHU6IFVzZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdChcIkJhc2ljL1NlbGZSZXNldFwiLCB1KTtcclxuICB9XHJcblxyXG5cclxuICAvL1JvbGVzXHJcblxyXG4gIHB1YmxpYyBQb3N0Um9sZShyb2xlLCBhY3Rpb246IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdChgUm9sZT9hY3Rpb249JHthY3Rpb259YCwgcm9sZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgUHV0Um9sZShyb2xlKSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5QdXQoXCJSb2xlXCIsIHJvbGUpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIEdldFJvbGUoYnk6IHN0cmluZywgdmFsOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLkdldChcIlJvbGUvYWxsL3hcIik7XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIC8vTG9nc1xyXG4gIHB1YmxpYyBHZXRMb2coYnk6IHN0cmluZywgdmFsOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLkdldChcIkxvZy9hbGwveFwiKTtcclxuICB9XHJcblxyXG5cclxuICAvL1NldHRpbmdzXHJcbiAgcHVibGljIEdldFNldHRpbmcoYnk6IHN0cmluZywgdmFsOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLkdldChcIlNldHRpbmcvYWxsL3hcIik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgVXBkYXRlU2V0dGluZyhzZXR0aW5nLCBhY3Rpb246IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdChgU2V0dGluZz9hY3Rpb249JHthY3Rpb259YCwgc2V0dGluZyk7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
|
|
815
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWxpYi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL3NlcnZpY2VzL2RhdGFsaWIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBdUIsU0FBUyxFQUFVLE9BQU8sRUFBZ0QsTUFBTSxvQkFBb0IsQ0FBQztBQUNuSSxPQUFPLEVBQUUsZUFBZSxFQUFjLEVBQUUsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7O0FBUzVELE1BQU0sT0FBTyxjQUFjO0lBRXpCLFlBQW9CLFdBQXdCLEVBQVMsTUFBYyxFQUFVLEtBQXFCLEVBQVUsV0FBd0I7UUFBaEgsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQW9KcEksY0FBUyxHQUFHLElBQUksU0FBUyxFQUFFLENBQUM7UUFDcEIsb0JBQWUsR0FBRyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdkQsb0JBQWUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBUTdELFlBQU8sR0FBRyxJQUFJLE9BQU8sQ0FBQztRQUN0QixhQUFRLEdBQUcsSUFBSSxPQUFPLENBQUM7UUFDdkIsYUFBUSxHQUFHLElBQUksT0FBTyxDQUFDO1FBQ3ZCLGFBQVEsR0FBRyxJQUFJLE9BQU8sQ0FBQztRQUN2QixZQUFPLEdBQUcsSUFBSSxPQUFPLENBQUM7UUFDdEIsZ0JBQVcsR0FBRyxJQUFJLE9BQU8sQ0FBQztRQUUxQixtQkFBYyxHQUFHLElBQUksT0FBTyxDQUFDO1FBQzdCLGVBQVUsR0FBRyxJQUFJLE9BQU8sQ0FBQztRQUN6Qixr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LENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBR0QsVUFBVTtJQUNILFVBQVUsQ0FBQyxFQUFVLEVBQUUsR0FBVztRQUN2QyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFTSxhQUFhLENBQUMsT0FBTyxFQUFFLE1BQWM7UUFDMUMsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsTUFBTSxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDcEUsQ0FBQzs7MkdBbjlCVSxjQUFjOytHQUFkLGNBQWMsY0FGYixNQUFNOzJGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWN0aW9uLCBBcGlSZXNwb25zZSwgQXBwQ29uZmlnLCBCdXR0b24sIENhcEl0ZW0sIERldGFpbHNEaWFsb2dDb25maWcsIEZvcm1Db25maWcsIFRhYmxlQ29uZmlnIH0gZnJvbSAnLi4vY2xhc3Nlcy9DbGFzc2VzJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBvZiwgdGFwIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEh0dHBTZXJ2aWNlIH0gZnJvbSAnLi9odHRwLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4uL2NsYXNzZXMvTGliQ2xhc3Nlcyc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi9hdXRoLnNlcnZpY2UnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRGF0YVNlcnZpY2VMaWIge1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHBTZXJ2aWNlOiBIdHRwU2VydmljZSwgcHVibGljIHJvdXRlcjogUm91dGVyLCBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSwgcHJpdmF0ZSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UpIHtcclxuXHJcbiAgICB0aGlzLmFwcENvbmZpZy5hcHBOYW1lID0gXCJBcHAtTmFtZVwiO1xyXG4gICAgdGhpcy5hcHBDb25maWcubG9nbyA9IFwiLi9hc3NldHMvbG9nby5wbmdcIlxyXG4gICAgdGhpcy5hcHBDb25maWcuQURBdXRoID0gdHJ1ZTtcclxuXHJcbiAgICB0aGlzLmFwcENvbmZpZy5jYXBJdGVtcyA9IFt0aGlzLmNhcE11bHRpdGVuYW50LCB0aGlzLmNhcEFkbWluLCB0aGlzLmNhcEhvbWVdO1xyXG5cclxuXHJcbiAgICB0aGlzLmNhcEhvbWUubmFtZSA9IFwiY2FwMVwiO1xyXG4gICAgdGhpcy5jYXBIb21lLmRpc3BsYXkgPSBcIkhvbWVcIjtcclxuICAgIHRoaXMuY2FwSG9tZS5saW5rID0gXCJob21lXCI7XHJcbiAgICB0aGlzLmNhcEhvbWUuaWNvbiA9XCJob21lXCI7XHJcblxyXG5cclxuICAgIHRoaXMuY2FwQWRtaW4ubmFtZSA9IFwiY2FwMlwiO1xyXG4gICAgdGhpcy5jYXBBZG1pbi5kaXNwbGF5ID0gXCJBZG1pblwiO1xyXG4gICAgdGhpcy5jYXBBZG1pbi5pY29uID0gXCJzZWN1cml0eVwiXHJcbiAgICB0aGlzLmNhcEFkbWluLmNhcFN1Ykl0ZW1zID0gW3RoaXMuY2FwVXNlcnMsIHRoaXMuY2FwUm9sZXMsIHRoaXMuY2FwTG9ncywgdGhpcy5jYXBTZXR0aW5ncywgdGhpcy5jYXBBcHBNb2RlbHMsIHRoaXMuY2FwQXBwcm92YWxzQ29uZmlnLCB0aGlzLmNhcE5vdGlmaWNhdGlvbnNDb25maWddO1xyXG5cclxuICAgIHRoaXMuY2FwVXNlcnMubmFtZSA9IFwiY2FwM1wiO1xyXG4gICAgdGhpcy5jYXBVc2Vycy5kaXNwbGF5ID0gXCJVc2Vyc1wiO1xyXG4gICAgdGhpcy5jYXBVc2Vycy5saW5rID0gXCJob21lL2FkbWluL3VzZXJzXCI7XHJcbiAgICB0aGlzLmNhcFVzZXJzLmljb24gPSBcImdyb3VwXCI7XHJcblxyXG4gICAgdGhpcy5jYXBSb2xlcy5uYW1lID0gXCJjYXA0XCJcclxuICAgIHRoaXMuY2FwUm9sZXMuZGlzcGxheSA9IFwiUm9sZXNcIjtcclxuICAgIHRoaXMuY2FwUm9sZXMubGluayA9IFwiaG9tZS9hZG1pbi9yb2xlc1wiO1xyXG4gICAgdGhpcy5jYXBSb2xlcy5pY29uID0gXCJ3b3JrXCI7XHJcblxyXG4gICAgdGhpcy5jYXBMb2dzLm5hbWUgPSBcImNhcDVcIlxyXG4gICAgdGhpcy5jYXBMb2dzLmRpc3BsYXkgPSBcIkxvZ3NcIjtcclxuICAgIHRoaXMuY2FwTG9ncy5saW5rID0gXCJob21lL2FkbWluL2xvZ3NcIjtcclxuICAgIHRoaXMuY2FwTG9ncy5pY29uID0gXCJ0ZXh0X3NuaXBwZXRcIjtcclxuXHJcbiAgICB0aGlzLmNhcFNldHRpbmdzLm5hbWUgPSBcImNhcDZcIlxyXG4gICAgdGhpcy5jYXBTZXR0aW5ncy5kaXNwbGF5ID0gXCJTZXR0aW5nc1wiO1xyXG4gICAgdGhpcy5jYXBTZXR0aW5ncy5saW5rID0gXCJob21lL2FkbWluL3NldHRpbmdzXCI7XHJcbiAgICB0aGlzLmNhcFNldHRpbmdzLmljb24gPVwic2V0dGluZ3NcIjtcclxuXHJcblxyXG4gICAgdGhpcy5jYXBNdWx0aXRlbmFudC5uYW1lID0gXCJjYXA3XCJcclxuICAgIHRoaXMuY2FwTXVsdGl0ZW5hbnQuZGlzcGxheSA9IFwiTXVsdGl0ZW5hbnRcIjtcclxuICAgIHRoaXMuY2FwTXVsdGl0ZW5hbnQuaWNvbiA9IFwiYXBhcnRtZW50XCJcclxuICAgIHRoaXMuY2FwTXVsdGl0ZW5hbnQuY2FwU3ViSXRlbXMgPSBbdGhpcy5jYXBUZW5hbnRzLCB0aGlzLmNhcE1lbWJlcnNoaXAsIHRoaXMuY2FwUGxhbnMgXTtcclxuXHJcbiAgICB0aGlzLmNhcFRlbmFudHMubmFtZSA9IFwiY2FwOFwiXHJcbiAgICB0aGlzLmNhcFRlbmFudHMuZGlzcGxheSA9IFwiVGVuYW50c1wiO1xyXG4gICAgdGhpcy5jYXBUZW5hbnRzLmxpbmsgPSBcImhvbWUvYWRtaW4vdGVuYW50c1wiO1xyXG5cclxuICAgIHRoaXMuY2FwTWVtYmVyc2hpcC5uYW1lID0gXCJjYXA5XCJcclxuICAgIHRoaXMuY2FwTWVtYmVyc2hpcC5kaXNwbGF5ID0gXCJNZW1iZXJzaGlwXCI7XHJcbiAgICB0aGlzLmNhcE1lbWJlcnNoaXAubGluayA9IFwiaG9tZS9hZG1pbi9tZW1iZXJzaGlwXCI7XHJcblxyXG4gICAgdGhpcy5jYXBQbGFucy5uYW1lID0gXCJjYXAxMFwiXHJcbiAgICB0aGlzLmNhcFBsYW5zLmRpc3BsYXkgPSBcIlBsYW5zXCI7XHJcbiAgICB0aGlzLmNhcFBsYW5zLmxpbmsgPSBcImhvbWUvYWRtaW4vcGxhbnNcIjtcclxuXHJcblxyXG4gICAgdGhpcy5jYXBHZW5lcmFsLm5hbWUgPSBcImNhcDExXCJcclxuICAgIHRoaXMuY2FwR2VuZXJhbC5kaXNwbGF5ID0gXCJHZW5lcmFsXCI7XHJcbiAgICB0aGlzLmNhcEdlbmVyYWwuY2FwU3ViSXRlbXMgPSBbdGhpcy5jYXBOb3RpZmljYXRpb25zLHRoaXMuY2FwQXBwcm92YWxzLHRoaXMuY2FwQ3VzdG9tZXJzLCB0aGlzLmNhcEludmVudG9yeSwgdGhpcy5jYXBBY2NvdW50cywgdGhpcy5jYXBTdXBwbGllcnMsIHRoaXMuY2FwVGFza3NdO1xyXG5cclxuXHJcblxyXG4gICAgdGhpcy5jYXBDdXN0b21lcnMubmFtZSA9IFwiY2FwMTJcIlxyXG4gICAgdGhpcy5jYXBDdXN0b21lcnMuZGlzcGxheSA9IFwiQ3VzdG9tZXJzXCI7XHJcbiAgICB0aGlzLmNhcEN1c3RvbWVycy5saW5rID0gXCJob21lL2FkbWluL2N1c3RvbWVyc1wiO1xyXG4gICAgdGhpcy5jYXBDdXN0b21lcnMuaWNvbiA9IFwiZ3JvdXBcIlxyXG5cclxuICAgIHRoaXMuY2FwSW52ZW50b3J5Lm5hbWUgPSBcImNhcDEzXCJcclxuICAgIHRoaXMuY2FwSW52ZW50b3J5LmRpc3BsYXkgPSBcIkludmVudG9yeVwiO1xyXG4gICAgdGhpcy5jYXBJbnZlbnRvcnkubGluayA9IFwiaG9tZS9hZG1pbi9pbnZlbnRvcnlcIjtcclxuICAgIHRoaXMuY2FwSW52ZW50b3J5Lmljb24gPSBcInN0b3JlZnJvbnRcIlxyXG5cclxuICAgIHRoaXMuY2FwQWNjb3VudHMubmFtZSA9IFwiY2FwMTRcIlxyXG4gICAgdGhpcy5jYXBBY2NvdW50cy5kaXNwbGF5ID0gXCJBY2NvdW50c1wiO1xyXG4gICAgdGhpcy5jYXBBY2NvdW50cy5saW5rID0gXCJob21lL2FkbWluL2FjY291bnRzXCI7XHJcbiAgICB0aGlzLmNhcEFjY291bnRzLmljb24gPSBcImFjY291bnRfYmFsYW5jZV93YWxsZXRcIlxyXG5cclxuICAgIHRoaXMuY2FwU3VwcGxpZXJzLm5hbWUgPSBcImNhcDE1XCJcclxuICAgIHRoaXMuY2FwU3VwcGxpZXJzLmRpc3BsYXkgPSBcIlN1cHBsaWVyc1wiO1xyXG4gICAgdGhpcy5jYXBTdXBwbGllcnMubGluayA9IFwiaG9tZS9hZG1pbi9zdXBwbGllcnNcIjtcclxuICAgIHRoaXMuY2FwU3VwcGxpZXJzLmljb24gPSBcImdyb3Vwc1wiXHJcblxyXG4gICAgdGhpcy5jYXBUYXNrcy5uYW1lID0gXCJjYXAxNlwiXHJcbiAgICB0aGlzLmNhcFRhc2tzLmRpc3BsYXkgPSBcIlRhc2tzXCI7XHJcbiAgICB0aGlzLmNhcFRhc2tzLmxpbmsgPSBcImhvbWUvYWRtaW4vdGFza3NcIjtcclxuICAgIHRoaXMuY2FwVGFza3MuaWNvbiA9IFwiY2hlY2tfYm94XCJcclxuXHJcblxyXG4gICAgdGhpcy5jYXBIUi5uYW1lID0gXCJjYXAxN1wiXHJcbiAgICB0aGlzLmNhcEhSLmRpc3BsYXkgPSBcIkhSXCI7XHJcbiAgICB0aGlzLmNhcEhSLmxpbmsgPSBcImhvbWUvYWRtaW4vaHJcIjtcclxuICAgIHRoaXMuY2FwSFIuaWNvbiA9IFwiZGl2ZXJzaXR5XzNcIlxyXG4gICAgdGhpcy5jYXBIUi5jYXBTdWJJdGVtcyA9IFt0aGlzLmNhcERlcGFydG1lbnRzLCB0aGlzLmNhcFBvc2l0aW9ucywgdGhpcy5jYXBFbXBsb3llZXMsXVxyXG5cclxuICAgIHRoaXMuY2FwRW1wbG95ZWVzLm5hbWUgPSBcImNhcDE4XCJcclxuICAgIHRoaXMuY2FwRW1wbG95ZWVzLmRpc3BsYXkgPSBcIkVtcGxveWVlc1wiO1xyXG4gICAgdGhpcy5jYXBFbXBsb3llZXMubGluayA9IFwiaG9tZS9hZG1pbi9lbXBsb3llZXNcIjtcclxuICAgIHRoaXMuY2FwRW1wbG95ZWVzLmljb24gPSBcImdyb3VwXCJcclxuXHJcbiAgICB0aGlzLmNhcERlcGFydG1lbnRzLm5hbWUgPSBcImNhcDE5XCJcclxuICAgIHRoaXMuY2FwRGVwYXJ0bWVudHMuZGlzcGxheSA9IFwiRGVwYXJ0bWVudHNcIjtcclxuICAgIHRoaXMuY2FwRGVwYXJ0bWVudHMubGluayA9IFwiaG9tZS9hZG1pbi9kZXBhcnRtZW50c1wiO1xyXG4gICAgdGhpcy5jYXBEZXBhcnRtZW50cy5pY29uID0gXCJidXNpbmVzc19jZW50ZXJcIlxyXG5cclxuICAgIHRoaXMuY2FwUG9zaXRpb25zLm5hbWUgPSBcImNhcDIwXCJcclxuICAgIHRoaXMuY2FwUG9zaXRpb25zLmRpc3BsYXkgPSBcIlBvc2l0aW9uc1wiO1xyXG4gICAgdGhpcy5jYXBQb3NpdGlvbnMubGluayA9IFwiaG9tZS9hZG1pbi9wb3NpdGlvbnNcIjtcclxuICAgIHRoaXMuY2FwUG9zaXRpb25zLmljb24gPSBcInBpY3R1cmVfaW5fcGljdHVyZV9tZWRpdW1cIlxyXG5cclxuICAgIHRoaXMuY2FwQXBwcm92YWxzLm5hbWUgPSBcImNhcDIxXCJcclxuICAgIHRoaXMuY2FwQXBwcm92YWxzLmRpc3BsYXkgPSBcIkFwcHJvdmFsc1wiO1xyXG4gICAgdGhpcy5jYXBBcHByb3ZhbHMubGluayA9IFwiaG9tZS9hZG1pbi9hcHByb3ZhbHNcIjtcclxuICAgIHRoaXMuY2FwQXBwcm92YWxzLmljb24gPSBcInJ1bGVcIlxyXG5cclxuICAgIHRoaXMuY2FwQXBwcm92YWxzQ29uZmlnLm5hbWUgPSBcImNhcDIyXCJcclxuICAgIHRoaXMuY2FwQXBwcm92YWxzQ29uZmlnLmRpc3BsYXkgPSBcIkFwcHJvdmFscyBDb25maWdcIjtcclxuICAgIHRoaXMuY2FwQXBwcm92YWxzQ29uZmlnLmxpbmsgPSBcImhvbWUvYWRtaW4vYXBwcm92YWxzLWNvbmZpZ1wiO1xyXG4gICAgdGhpcy5jYXBBcHByb3ZhbHNDb25maWcuaWNvbiA9IFwicHVibGlzaGVkX3dpdGhfY2hhbmdlc1wiXHJcbiAgICB0aGlzLmNhcEFwcHJvdmFsc0NvbmZpZy5jYXBTdWJJdGVtcyA9IFt0aGlzLmNhcFNlbGZBcHByb3ZhbF1cclxuXHJcbiAgICB0aGlzLmNhcFNlbGZBcHByb3ZhbC5uYW1lID0gXCJjYXAyM1wiXHJcbiAgICB0aGlzLmNhcFNlbGZBcHByb3ZhbC5kaXNwbGF5ID0gXCJTZWxmIEFwcHJvdmFsc1wiO1xyXG4gICAgdGhpcy5jYXBTZWxmQXBwcm92YWwuaXNCb29sID0gdHJ1ZTtcclxuXHJcbiAgICB0aGlzLmNhcE5vdGlmaWNhdGlvbnMubmFtZSA9IFwiY2FwMjRcIlxyXG4gICAgdGhpcy5jYXBOb3RpZmljYXRpb25zLmRpc3BsYXkgPSBcIk5vdGlmaWNhdGlvbnNcIjtcclxuICAgIHRoaXMuY2FwTm90aWZpY2F0aW9ucy5saW5rID0gXCJob21lL2FkbWluL25vdGlmaWNhdGlvbnNcIjtcclxuICAgIHRoaXMuY2FwTm90aWZpY2F0aW9ucy5pY29uID0gXCJub3RpZmljYXRpb25zXCJcclxuXHJcbiAgICB0aGlzLmNhcEFwcE1vZGVscy5uYW1lID0gXCJjYXAyNVwiXHJcbiAgICB0aGlzLmNhcEFwcE1vZGVscy5kaXNwbGF5ID0gXCJBcHAgTW9kZWxzXCI7XHJcbiAgICB0aGlzLmNhcEFwcE1vZGVscy5saW5rID0gXCJob21lL2FkbWluL2FwcG1vZGVsc1wiO1xyXG4gICAgLy8gdGhpcy5jYXBBcHBNb2RlbHMuaWNvbiA9IFwibm90aWZpY2F0aW9uc1wiXHJcblxyXG4gICAgdGhpcy5jYXBOb3RpZmljYXRpb25zQ29uZmlnLm5hbWUgPSBcImNhcDI2XCJcclxuICAgIHRoaXMuY2FwTm90aWZpY2F0aW9uc0NvbmZpZy5kaXNwbGF5ID0gXCJOb3RpZiBDb25maWdcIjtcclxuICAgIHRoaXMuY2FwTm90aWZpY2F0aW9uc0NvbmZpZy5saW5rID0gXCJob21lL2FkbWluL25vdGlmaWNhdGlvbnMtY29uZmlnXCI7XHJcblxyXG5cclxuICAgIHRoaXMuYXV0aFNlcnZpY2UubXlSb2xlT2JzZXJ2LnN1YnNjcmliZSgocm9sZTogYW55KSA9PiB7XHJcbiAgICAgIHRoaXMubXlSb2xlID0gcm9sZTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcblxyXG4gIGFwcENvbmZpZyA9IG5ldyBBcHBDb25maWcoKTtcclxuICBwcml2YXRlIGFwcENvbmZpZ1NvdXJjZSA9IG5ldyBCZWhhdmlvclN1YmplY3QodGhpcy5hcHBDb25maWcpO1xyXG4gIHB1YmxpYyBhcHBDb25maWdPYnNlcnYgPSB0aGlzLmFwcENvbmZpZ1NvdXJjZS5hc09ic2VydmFibGUoKTtcclxuICBVcGRhdGVBcHBDb25maWcoY29uZmlnOiBBcHBDb25maWcpIHtcclxuICAgIHRoaXMuYXBwQ29uZmlnU291cmNlLm5leHQoY29uZmlnKTtcclxuICAgIHRoaXMuYXBwQ29uZmlnID0gY29uZmlnO1xyXG4gIH1cclxuXHJcbiAgbXlSb2xlO1xyXG5cclxuICBjYXBIb21lID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwQWRtaW4gPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBVc2VycyA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcFJvbGVzID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwTG9ncyA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcFNldHRpbmdzID0gbmV3IENhcEl0ZW07XHJcblxyXG4gIGNhcE11bHRpdGVuYW50ID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwVGVuYW50cyA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcE1lbWJlcnNoaXAgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBQbGFucyA9IG5ldyBDYXBJdGVtO1xyXG5cclxuICBjYXBHZW5lcmFsID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwQ3VzdG9tZXJzID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwSW52ZW50b3J5ID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwQWNjb3VudHMgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBTdXBwbGllcnMgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBUYXNrcyA9IG5ldyBDYXBJdGVtO1xyXG5cclxuICBjYXBIUiA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcEVtcGxveWVlcyA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcERlcGFydG1lbnRzID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwUG9zaXRpb25zID0gbmV3IENhcEl0ZW07XHJcbiAgY2FwR3JhZGVzID0gbmV3IENhcEl0ZW07XHJcblxyXG4gIGNhcEFwcHJvdmFscyA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcEFwcHJvdmFsc0NvbmZpZyA9IG5ldyBDYXBJdGVtO1xyXG4gIGNhcE5vdGlmaWNhdGlvbnMgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBTZWxmQXBwcm92YWwgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBBcHBNb2RlbHMgPSBuZXcgQ2FwSXRlbTtcclxuICBjYXBOb3RpZmljYXRpb25zQ29uZmlnID0gbmV3IENhcEl0ZW07XHJcblxyXG4gIHB1YmxpYyB0bXBQcm9maWxldXNlck5hbWUgPSBcIlwiO1xyXG5cclxuXHJcbiAgaXNQcm9jZXNzaW5nID0gZmFsc2U7XHJcblxyXG5cclxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tRGVwYXJ0bWVtdHMgRm9ybS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICBkZXBhcnRtZW50Rm9ybUNvbmZpZzogRm9ybUNvbmZpZyA9IHtcclxuICAgIHNlY3VyaXR5OiB7IGFsbG93OiBbdGhpcy5jYXBEZXBhcnRtZW50c10gfSxcclxuICAgIHRpdGxlIDogJ0RlcGFydG1lbnQnLFxyXG4gICAgZmllbGRzOiBbXHJcbiAgICAgIHsgbmFtZTogJ25hbWUnLCB0eXBlOiAndGV4dCcsIHJlcXVpcmVkOiB0cnVlIH0sXHJcbiAgICBdLFxyXG4gICAgbG9hZEFjdGlvbjogeyB1cmw6ICdkZXBhcnRtZW50cy9pZCcgfSxcclxuICAgIGhlcm9GaWVsZDogJ2RlcGFydG1lbnRJRCcsXHJcbiAgICBpbmNsdWRlQXVkaXQ6IHRydWUsXHJcbiAgfVxyXG5cclxuICBlZGl0RGVwYXJ0bWVudEJ1dHRvbjogQnV0dG9uID0geyBuYW1lOiAnZWRpdCcsIGRpYWxvZzogdHJ1ZSwgYWN0aW9uOiB7IHVybDogJ2RlcGFydG1lbnRzP2FjdGlvbj1lZGl0JywgbWV0aG9kOiAncG9zdCcsIHN1Y2Nlc3NNZXNzYWdlOiAnRWRpdGVkIFN1Y2Nlc3NmdWxseScgfSB9XHJcblxyXG4gIGRlcGFydG1lbnREZXRhaWxzQ29uZmlnOiBEZXRhaWxzRGlhbG9nQ29uZmlnID0ge1xyXG4gICAgZm9ybUNvbmZpZzogdGhpcy5kZXBhcnRtZW50Rm9ybUNvbmZpZyxcclxuICAgIGhlcm9GaWVsZDogJ2RlcGFydG1lbnRJRCcsXHJcbiAgICBidXR0b25zOiBbdGhpcy5lZGl0RGVwYXJ0bWVudEJ1dHRvbl0sXHJcbiAgfVxyXG5cclxuXHJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVBvc2l0aW9ucyBGb3JtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gIHBvc2l0aW9uRm9ybUNvbmZpZzogRm9ybUNvbmZpZyA9IHtcclxuICAgIHNlY3VyaXR5OiB7IGFsbG93OiBbdGhpcy5jYXBQb3NpdGlvbnNdIH0sXHJcbiAgICB0aXRsZTogJ1Bvc2l0aW9uJyxcclxuICAgIGZpZWxkczogW1xyXG4gICAgICB7IG5hbWU6ICduYW1lJywgdHlwZTogJ3RleHQnLCByZXF1aXJlZDogdHJ1ZSB9LFxyXG4gICAgICB7IG5hbWU6ICdkZXNjcmlwdGlvbicsIHR5cGU6ICd0ZXh0JywgfSxcclxuICAgICAgeyBuYW1lOiAnZGVwYXJ0bWVudElEJywgYWxpYXM6ICdEZXBhcnRtZW50JywgdHlwZTogJ3NlbGVjdCcsIGxvYWRBY3Rpb246IHsgdXJsOiAnZGVwYXJ0bWVudHMvbGlzdC94JyB9LCBkZXRhaWxzQ29uZmlnOiB0aGlzLmRlcGFydG1lbnREZXRhaWxzQ29uZmlnIH0sXHJcblxyXG4gICAgXSxcclxuICAgIGxvYWRBY3Rpb246IHsgdXJsOiAncG9zaXRpb25zL2lkJyB9LFxyXG4gICAgaGVyb0ZpZWxkOiAncG9zaXRpb25JRCcsXHJcbiAgICBpbmNsdWRlQXVkaXQ6IHRydWUsXHJcbiAgfVxyXG5cclxuICBlZGl0UG9zaXRpb25CdXR0b246IEJ1dHRvbiA9IHsgbmFtZTogJ2VkaXQnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdwb3NpdGlvbnM/YWN0aW9uPWVkaXQnLCBtZXRob2Q6ICdwb3N0Jywgc3VjY2Vzc01lc3NhZ2U6ICdFZGl0ZWQgU3VjY2Vzc2Z1bGx5JyB9IH1cclxuXHJcbiAgcG9zaXRpb25EZXRhaWxzQ29uZmlnIDogRGV0YWlsc0RpYWxvZ0NvbmZpZyA9IHtcclxuICAgIGZvcm1Db25maWcgOiB0aGlzLnBvc2l0aW9uRm9ybUNvbmZpZyxcclxuICAgIGhlcm9GaWVsZCA6ICdwb3NpdGlvbklEJyxcclxuICAgIGJ1dHRvbnM6IFt0aGlzLmVkaXRQb3NpdGlvbkJ1dHRvbl0sXHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1FbXBsb3llZXMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4gIGdlbmRlcnMgPSBbXHJcbiAgICB7IG5hbWU6ICdNYWxlJywgdmFsdWU6IDEgfSxcclxuICAgIHsgbmFtZTogJ0ZlbWFsZScsIHZhbHVlOiAyIH1cclxuICBdXHJcblxyXG4gIGVtcGxveWVlRm9ybUNvbmZpZzogRm9ybUNvbmZpZyA9IHtcclxuICAgIHNlY3VyaXR5IDoge2FsbG93IDogW3RoaXMuY2FwRW1wbG95ZWVzXX0sXHJcbiAgICBmaWVsZHM6IFtcclxuICAgICAgeyBuYW1lOiAnbmF0aW9uYWxJRCcsIHR5cGU6ICd0ZXh0JywgYWxpYXM6ICdOYXRpb25hbCBJRCcsIHJlcXVpcmVkOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ2dlbmRlcicsIGFsaWFzOiAnR2VuZGVyJywgdHlwZTogJ3NlbGVjdCcsIG9wdGlvbnM6IHRoaXMuZ2VuZGVycywgcmVxdWlyZWQ6IHRydWUgfSxcclxuICAgICAgeyBuYW1lOiAnZmlyc3ROYW1lJywgdHlwZTogJ3RleHQnLCByZXF1aXJlZDogdHJ1ZSB9LFxyXG4gICAgICB7IG5hbWU6ICdsYXN0TmFtZScsIHR5cGU6ICd0ZXh0JywgcmVxdWlyZWQ6IHRydWUgfSxcclxuICAgICAgeyBuYW1lOiAnZGF0ZU9mQmlydGgnLCB0eXBlOiAnZGF0ZScsIGFsaWFzOiAnRGF0ZSBvZiBCaXJ0aCcsIHJlcXVpcmVkOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ2VtcGxveW1lbnREYXRlJywgdHlwZTogJ2RhdGUnLCBhbGlhczogJ0VtcGxveW1lbnQgRGF0ZScsIHJlcXVpcmVkOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ2RlcGFydG1lbnRJRCcsIGFsaWFzOiAnRGVwYXJ0bWVudCcsIHR5cGU6ICdzZWxlY3QnLCBsb2FkQWN0aW9uIDogeyB1cmwgOiAnZGVwYXJ0bWVudHMvbGlzdC94J30sIGRldGFpbHNDb25maWc6IHRoaXMuZGVwYXJ0bWVudERldGFpbHNDb25maWcgfSxcclxuICAgICAgeyBuYW1lOiAncG9zaXRpb25JRCcsIGFsaWFzOiAnUG9zaXRpb24nLCB0eXBlOiAnc2VsZWN0JywgbG9hZEFjdGlvbjogeyB1cmw6ICdwb3NpdGlvbnMvbGlzdC94JyB9LCBtYXN0ZXJGaWVsZDogJ2RlcGFydG1lbnRJRCcsIGRldGFpbHNDb25maWc6IHRoaXMucG9zaXRpb25EZXRhaWxzQ29uZmlnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2VtcGxveW1lbnRTdGF0dXMnLCBhbGlhczogJ0VtcGxveW1lbnQgU3RhdHVzJywgdHlwZTogJ3NlbGVjdCcsIGxvYWRBY3Rpb246IHsgdXJsOiAnZW1wbG95ZWVzL2xpc3QvZW1wbG95bWVudC1zdGF0dXMnIH0gfSxcclxuICAgICAgeyBuYW1lOiAnYWN0aXZlU3RhdHVzJywgYWxpYXM6ICdBY3RpdmUgU3RhdHVzJywgdHlwZTogJ3NlbGVjdCcsIGxvYWRBY3Rpb246IHsgdXJsOiAnZW1wbG95ZWVzL2xpc3QvYWN0aXZlLXN0YXR1cycgfSB9LFxyXG4gICAgICB7IG5hbWU6ICdwYXNzcG9ydE51bWJlcicsIHR5cGU6ICd0ZXh0JywgYWxpYXM6ICdQYXNzcG9ydCBOdW1iZXInIH0sXHJcbiAgICAgIHsgbmFtZTogJ3VzZXJOYW1lJywgdHlwZTogJ3NlbGVjdCcsIGFsaWFzOiAnVXNlcicsIGxvYWRBY3Rpb246IHsgdXJsOiAndXNlci9saXN0L3gnIH0sIG9wdGlvbkRpc3BsYXk6ICduYW1lJywgb3B0aW9uVmFsdWU6ICd2YWx1ZScsIG51bGxhYmxlIDogdHJ1ZSwgaW5mb01lc3NhZ2UgOiAnUmVsYXRlZCB1c2VyIGFjY291bnQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2FkZHJlc3MnLCB0eXBlOiAndGV4dCcsIHJvd3M6IDIsIHNwYW46IHRydWUgfSxcclxuICAgICAgeyBuYW1lOiAncGhvbmUnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnZW1haWwnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnbm90ZScsIHR5cGU6ICd0ZXh0Jywgcm93czogMiwgc3BhbjogdHJ1ZSB9LFxyXG4gICAgXSxcclxuICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnZW1wbG95ZWVzL2lkJyB9LFxyXG4gICAgaGVyb0ZpZWxkOiAnZW1wbG95ZWVJRCcsXHJcbiAgICBpbmNsdWRlQXVkaXQgOiB0cnVlLFxyXG4gIH1cclxuXHJcbiAgZW1wbG95ZWVzVGFibGVDb25maWc6IFRhYmxlQ29uZmlnID0ge1xyXG4gICAgc2hvd0ZpbHRlcjogdHJ1ZSxcclxuICAgIG1pbkNvbHVtbnM6IFsnbmFtZScsICdkZXBhcnRtZW50TmFtZScsICdwb3NpdGlvbk5hbWUnXSxcclxuICAgIGZsYXRCdXR0b25zOiB0cnVlLFxyXG4gICAgbG9nUmVzcG9uc2UgOiB0cnVlLFxyXG4gICAgY29sdW1uczogW1xyXG4gICAgICB7IG5hbWU6ICduYW1lJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2dlbmRlck5hbWUnLCB0eXBlOiAndGV4dCcsIGFsaWFzOiAnR2VuZGVyJyB9LFxyXG4gICAgICB7IG5hbWU6ICdkZXBhcnRtZW50TmFtZScsIHR5cGU6ICd0ZXh0JywgYWxpYXM6ICdEZXBhcnRtZW50JyB9LFxyXG4gICAgICB7IG5hbWU6ICdwb3NpdGlvbk5hbWUnLCB0eXBlOiAndGV4dCcsIGFsaWFzOiAnUG9zaXRpb24nIH0sXHJcbiAgICAgIHsgbmFtZTogJ2VtcGxveW1lbnRTdGF0dXNOYW1lJywgdHlwZTogJ3RleHQnLCBhbGlhczogJ0VtcGxveW1lbnQgU3RhdHVzJyB9LFxyXG4gICAgICB7IG5hbWU6ICdhY3RpdmVTdGF0dXNOYW1lJywgdHlwZTogJ3RleHQnLCBhbGlhczogJ0FjdGl2ZSBTdGF0dXMnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2lzTGlua2VkJywgdHlwZTogJ2NoZWNrYm94JywgYWxpYXM6ICdMaW5rZWQnIH0sXHJcbiAgICBdLFxyXG4gICAgYnV0dG9uczogW1xyXG4gICAgICB7IG5hbWU6ICdjcmVhdGUnLCBkaXNwbGF5OiAnQ3JlYXRlJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnZW1wbG95ZWVzP2FjdGlvbj1jcmVhdGUnLCBtZXRob2Q6ICdwb3N0JyB9IH0sXHJcbiAgICAgIHsgbmFtZTogJ3ZpZXcnLCBkaWFsb2c6IHRydWUgfSxcclxuICAgICAgeyBuYW1lOiAnZWRpdCcsIGRpYWxvZzogdHJ1ZSwgYWN0aW9uOiB7IHVybDogJ2VtcGxveWVlcz9hY3Rpb249ZWRpdCcsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgICAgeyBuYW1lOiAnZGVsZXRlJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnZW1wbG95ZWVzP2FjdGlvbj1kZWxldGUnLCBtZXRob2Q6ICdwb3N0JyB9IH0sXHJcbiAgICBdLFxyXG4gICAgbG9hZEFjdGlvbjogeyB1cmw6ICdlbXBsb3llZXMvYWxsL3gnIH0sXHJcbiAgICBmb3JtQ29uZmlnOiB0aGlzLmVtcGxveWVlRm9ybUNvbmZpZ1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1Qb3NpdGlvbnMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgcG9zaXRpb25zVGFibGVDb25maWc6IFRhYmxlQ29uZmlnID0ge1xyXG4gICAgc2hvd0ZpbHRlcjogdHJ1ZSxcclxuICAgIGZsYXRCdXR0b25zOiB0cnVlLFxyXG4gICAgY29sdW1uczogW1xyXG4gICAgICB7IG5hbWU6ICduYW1lJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2Rlc2NyaXB0aW9uJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2RlcGFydG1lbnROYW1lJywgdHlwZTogJ2NoaXAnLCBkZXRhaWxzQ29uZmlnOiB0aGlzLmRlcGFydG1lbnREZXRhaWxzQ29uZmlnLCBhbGlhczogJ0RlcGFydG1lbnQnIH0sXHJcbiAgICBdLFxyXG4gICAgYnV0dG9uczogW1xyXG4gICAgICB7IG5hbWU6ICdjcmVhdGUnLCBkaXNwbGF5OiAnQ3JlYXRlJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAncG9zaXRpb25zP2FjdGlvbj1jcmVhdGUnLCBtZXRob2Q6ICdwb3N0JyB9IH0sXHJcbiAgICAgIHtcclxuICAgICAgICBuYW1lOiAndmlldycsXHJcbiAgICAgICAgZGlhbG9nOiB0cnVlLFxyXG4gICAgICAgIGRldGFpbHNDb25maWc6IHtcclxuICAgICAgICAgIGZvcm1Db25maWc6IHRoaXMucG9zaXRpb25Gb3JtQ29uZmlnICxcclxuICAgICAgICAgIGhlcm9GaWVsZDogJ3Bvc2l0aW9uSUQnLFxyXG4gICAgICAgICAgYnV0dG9uczogW3RoaXMuZWRpdFBvc2l0aW9uQnV0dG9uXSxcclxuICAgICAgICAgIHRhYmxlQ29uZmlnczogW1xyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgLi4udGhpcy5lbXBsb3llZXNUYWJsZUNvbmZpZyxcclxuICAgICAgICAgICAgICBsb2FkQWN0aW9uOiB7IHVybDogJ2VtcGxveWVlcy94L3gnIH0sIGxvYWRDcml0ZXJpYTogJ3Bvc2l0aW9uJywgbG9hZElERmllbGQ6ICdwb3NpdGlvbklEJyxcclxuICAgICAgICAgICAgICBjb2x1bW5zOiB0aGlzLmVtcGxveWVlc1RhYmxlQ29uZmlnLmNvbHVtbnMuZmlsdGVyKHggPT4gWydkZXBhcnRtZW50TmFtZScsICdwb3NpdGlvbk5hbWUnXS5pbmNsdWRlcyh4Lm5hbWUpID09IGZhbHNlKSxcclxuICAgICAgICAgICAgICB0YWJUaXRsZTogJ0VtcGxveWVlcycsXHJcbiAgICAgICAgICAgICAgZWxldmF0aW9uOiAnbm9uZScsXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIF0sXHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICB0aGlzLmVkaXRQb3NpdGlvbkJ1dHRvbixcclxuICAgICAgeyBuYW1lOiAnZGVsZXRlJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAncG9zaXRpb25zP2FjdGlvbj1kZWxldGUnLCBtZXRob2Q6ICdwb3N0JyB9IH0sXHJcbiAgICBdLFxyXG4gICAgbG9hZEFjdGlvbjogeyB1cmw6ICdwb3NpdGlvbnMvYWxsL3gnIH0sXHJcbiAgICBmb3JtQ29uZmlnOiB0aGlzLnBvc2l0aW9uRm9ybUNvbmZpZ1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1EZXBhcnRtZW50cy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiAgZGVwYXJ0bWVudFRhYmxlQ29uZmlnOiBUYWJsZUNvbmZpZyA9IHtcclxuICAgIHNob3dGaWx0ZXI6IHRydWUsXHJcbiAgICBtaW5Db2x1bW5zOiBbJ25hbWUnXSxcclxuICAgIGZsYXRCdXR0b25zOiB0cnVlLFxyXG4gICAgY29sdW1uczogW1xyXG4gICAgICAvLyB7IG5hbWU6ICdkZXBhcnRtZW50SUQnLCB0eXBlOiAnbnVtYmVyJywgYWxpYXM6ICdJRCcgfSxcclxuICAgICAgeyBuYW1lOiAnbmFtZScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgXSxcclxuICAgIGJ1dHRvbnM6IFtcclxuICAgICAgeyBuYW1lOiAnY3JlYXRlJywgZGlzcGxheTogJ0NyZWF0ZScsIGRpYWxvZzogdHJ1ZSwgYWN0aW9uOiB7IHVybDogJ2RlcGFydG1lbnRzP2FjdGlvbj1jcmVhdGUnLCBtZXRob2Q6ICdwb3N0JyB9IH0sXHJcbiAgICAgIHtcclxuICAgICAgICBuYW1lOiAndmlldycsXHJcbiAgICAgICAgZGlhbG9nOiB0cnVlLFxyXG4gICAgICAgIGRldGFpbHNDb25maWc6IHtcclxuICAgICAgICAgIGZvcm1Db25maWc6IHRoaXMuZGVwYXJ0bWVudEZvcm1Db25maWcsXHJcbiAgICAgICAgICBoZXJvRmllbGQ6ICdkZXBhcnRtZW50SUQnLFxyXG4gICAgICAgICAgYnV0dG9uczogW3RoaXMuZWRpdERlcGFydG1lbnRCdXR0b25dLFxyXG4gICAgICAgICAgdGFibGVDb25maWdzOiBbXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAuLi50aGlzLmVtcGxveWVlc1RhYmxlQ29uZmlnLFxyXG4gICAgICAgICAgICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnZW1wbG95ZWVzL3gveCcgfSwgbG9hZENyaXRlcmlhOiAnZGVwYXJ0bWVudCcsIGxvYWRJREZpZWxkOiAnZGVwYXJ0bWVudElEJyxcclxuICAgICAgICAgICAgICBjb2x1bW5zOiB0aGlzLmVtcGxveWVlc1RhYmxlQ29uZmlnLmNvbHVtbnMuZmlsdGVyKHggPT4gWydkZXBhcnRtZW50TmFtZScsICdwb3NpdGlvbk5hbWUnXS5pbmNsdWRlcyh4Lm5hbWUpID09IGZhbHNlKSxcclxuICAgICAgICAgICAgICB0YWJUaXRsZTogJ0VtcGxveWVlcycsXHJcbiAgICAgICAgICAgICAgZWxldmF0aW9uOiAnbm9uZScsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAuLi50aGlzLnBvc2l0aW9uc1RhYmxlQ29uZmlnLFxyXG4gICAgICAgICAgICAgIGxvYWRBY3Rpb246IHsgdXJsOiAncG9zaXRpb25zL3gveCcgfSwgbG9hZENyaXRlcmlhOiAnZGVwYXJ0bWVudCcsIGxvYWRJREZpZWxkOiAnZGVwYXJ0bWVudElEJyxcclxuICAgICAgICAgICAgICB0YWJUaXRsZTogJ1Bvc2l0aW9ucycsXHJcbiAgICAgICAgICAgICAgZWxldmF0aW9uOiAnbm9uZScsXHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICBdLFxyXG4gICAgICAgIH1cclxuICAgICAgfSxcclxuICAgICAgdGhpcy5lZGl0RGVwYXJ0bWVudEJ1dHRvbixcclxuICAgICAgeyBuYW1lOiAnZGVsZXRlJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnZGVwYXJ0bWVudHM/YWN0aW9uPWRlbGV0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgIF0sXHJcbiAgICBsb2FkQWN0aW9uOiB7IHVybDogJ2RlcGFydG1lbnRzL2FsbC94JyB9LFxyXG4gICAgZm9ybUNvbmZpZzogdGhpcy5kZXBhcnRtZW50Rm9ybUNvbmZpZ1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1Db250YWN0IFBlcnNvbnMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgY29udGFjdFBlcnNvbkZvcm1Db25maWc6IEZvcm1Db25maWcgPSB7XHJcbiAgICB0aXRsZTogJ0NvbnRhY3QgUGVyc29uJyxcclxuICAgIGluY2x1ZGVBdWRpdDogdHJ1ZSxcclxuICAgIGZpZWxkczogW1xyXG4gICAgICB7IG5hbWU6ICduYW1lJywgdHlwZTogJ3RleHQnLCBzcGFuIDogdHJ1ZSB9LFxyXG4gICAgICB7IG5hbWU6ICdtb2JpbGUnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnZW1haWwnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnY29udGFjdE1ldGhvZHMnLCB0eXBlOiAnY29tcG9zaXRlJywgc3BhbjogdHJ1ZSwgc3ViZmllbGRzIDpbXHJcbiAgICAgICAgeyBuYW1lOiAnY2FuQ2FsbCcsIHR5cGU6ICdjaGVja2JveCcsIGFsaWFzOiAnQ2FsbCcgfSxcclxuICAgICAgICB7IG5hbWU6ICdjYW5TTVMnLCB0eXBlOiAnY2hlY2tib3gnLCBhbGlhczogJ1NNUycgfSxcclxuICAgICAgICB7IG5hbWU6ICdjYW5XaGF0c0FwcCcsIHR5cGU6ICdjaGVja2JveCcsIGFsaWFzOiAnV2hhdHNBcHAnIH1cclxuICAgICAgXSB9LFxyXG5cclxuICAgIF0sXHJcbiAgICByZXNldDogdHJ1ZVxyXG4gIH07XHJcblxyXG4gIGNvbnRhY3RQZXJzb25UYWJsZUNvbmZpZzogVGFibGVDb25maWcgPSB7XHJcbiAgICB0YWJUaXRsZTogJ0NvbnRhY3RzJyxcclxuICAgIHNob3dGaWx0ZXI6IHRydWUsXHJcbiAgICBtaW5Db2x1bW5zOiBbJ25hbWUnLCAnY29udGFjdE1ldGhvZHMnXSxcclxuICAgIGVsZXZhdGlvbjogJ25vbmUnLFxyXG4gICAgZmxhdEJ1dHRvbnM6IHRydWUsXHJcbiAgICBjb2x1bW5zOiBbXHJcbiAgICAgIHsgbmFtZTogJ25hbWUnLCB0eXBlOiAndGV4dCcsIH0sXHJcbiAgICAgIHsgbmFtZTogJ21vYmlsZScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdlbWFpbCcsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgbmFtZTogJ2NvbnRhY3RNZXRob2RzJyxcclxuICAgICAgICB0eXBlOiAnaWNvbicsXHJcbiAgICAgICAgaWNvbnM6IFtcclxuICAgICAgICAgIHsgbmFtZTogJ2NhbGwnLCBjb2xvcjogJ2dyZWVuJywgY29uZGl0aW9uOiB4ID0+IHguY2FuQ2FsbCwgdGlwOiAnQXZhaWxhYmxlIGZvciBDYWxscycgfSxcclxuICAgICAgICAgIHsgbmFtZTogJ3NtcycsIGNvbG9yOiAnZ3JlZW4nLCBjb25kaXRpb246IHggPT4geC5jYW5TTVMsIHRpcDogJ0F2YWlsYWJsZSBmb3IgU01TJyB9LFxyXG4gICAgICAgICAgeyBuYW1lOiAnZm9ydW0nLCBjb2xvcjogJ2dyZWVuJywgY29uZGl0aW9uOiB4ID0+IHguY2FuV2hhdHNBcHAsIHRpcDogJ0F2YWlsYWJsZSBvbiBXaGF0c0FwcCcgfVxyXG4gICAgICAgIF1cclxuICAgICAgfVxyXG4gICAgXSxcclxuICAgIGJ1dHRvbnM6IFtcclxuICAgICAgeyBuYW1lOiAnY3JlYXRlJywgZGlzcGxheTogJ0FkZCcsIGRpYWxvZzogdHJ1ZSwgYWN0aW9uOiB7IHVybDogJ2NvbnRhY3RwZXJzb25zP2FjdGlvbj1jcmVhdGUnLCBtZXRob2Q6ICdwb3N0JyB9LCBjb25maXJtOiB7IG1lc3NhZ2U6ICdBZGQgY29udGFjdCBwZXJzb24/JyB9IH0sXHJcbiAgICAgIHsgbmFtZTogJ2VkaXQnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdjb250YWN0cGVyc29ucz9hY3Rpb249ZWRpdCcsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgICAgeyBuYW1lOiAnZGVsZXRlJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnY29udGFjdHBlcnNvbnM/YWN0aW9uPWRlbGV0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfVxyXG4gICAgXSxcclxuICAgIGZvcm1Db25maWc6IHRoaXMuY29udGFjdFBlcnNvbkZvcm1Db25maWdcclxuICB9O1xyXG5cclxuXHJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLUN1c3RvbWVycy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICBjdXN0b21lckZvcm1Db25maWc6IEZvcm1Db25maWcgPSB7XHJcbiAgICBzZWN1cml0eTogeyBhbGxvdzogW3RoaXMuY2FwQ3VzdG9tZXJzXSB9LFxyXG4gICAgaW5jbHVkZUF1ZGl0OiB0cnVlLFxyXG4gICAgdGl0bGUgOiAnQ3VzdG9tZXInLFxyXG4gICAgZmllbGRzOiBbXHJcbiAgICAgIHsgbmFtZTogJ25hbWUnLCB0eXBlOiAndGV4dCcsIHJlcXVpcmVkOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ3Bob25lJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2NvbnRhY3RQZXJzb24nLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnZW1haWwnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnYWRkcmVzcycsIHR5cGU6ICd0ZXh0Jywgcm93czogMiwgc3BhbjogdHJ1ZSB9LFxyXG4gICAgICB7IG5hbWU6ICdjdXN0b21lclRlbmFudElEJywgYWxpYXM6ICdDdXN0b21lciBUZW5hbnQnLCB0eXBlOiAndGV4dCcsIGxvYWRBY3Rpb246IHsgdXJsOiAndGVuYW50cy9saXN0L3gnIH0gLCBudWxsYWJsZTogdHJ1ZSB9LFxyXG4gICAgXSxcclxuICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnY3VzdG9tZXJzL2lkJyB9LFxyXG4gICAgaGVyb0ZpZWxkOiAnY3VzdG9tZXJJRCcsXHJcblxyXG4gICAgcmVzZXQ6IHRydWUsXHJcbiAgfVxyXG5cclxuICBjdXN0b21lckNyZWF0ZUJ1dHRvbiA6IEJ1dHRvbiA9IHsgbmFtZTogJ2NyZWF0ZScsIGRpc3BsYXk6ICdDcmVhdGUnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdjdXN0b21lcnM/YWN0aW9uPWNyZWF0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfVxyXG4gIGN1c3RvbWVyRWRpdEJ1dHRvbjogQnV0dG9uID0geyBuYW1lOiAnZWRpdCcsIGRpYWxvZzogdHJ1ZSwgYWN0aW9uOiB7IHVybDogJ2N1c3RvbWVycz9hY3Rpb249ZWRpdCcsIG1ldGhvZDogJ3Bvc3QnIH0gfVxyXG5cclxuICBjdXN0b21lckRldGFpbHNDb25maWc6IERldGFpbHNEaWFsb2dDb25maWcgPSB7XHJcbiAgICBmb3JtQ29uZmlnIDogdGhpcy5jdXN0b21lckZvcm1Db25maWcsXHJcbiAgICBoZXJvRmllbGQgOiAnY3VzdG9tZXJJRCcsXHJcbiAgICB0YWJsZUNvbmZpZ3M6IFtcclxuICAgICAge1xyXG4gICAgICAgIC4uLnRoaXMuY29udGFjdFBlcnNvblRhYmxlQ29uZmlnLFxyXG4gICAgICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnY29udGFjdHBlcnNvbnMvY3VzdG9tZXIveCcgfSxcclxuICAgICAgICBsb2FkQ3JpdGVyaWE6ICdjdXN0b21lcicsXHJcbiAgICAgICAgbG9hZElERmllbGQ6ICdjdXN0b21lcklEJ1xyXG4gICAgICB9XHJcbiAgICBdLFxyXG4gICAgYnV0dG9uczogW1xyXG4gICAgICB0aGlzLmN1c3RvbWVyQ3JlYXRlQnV0dG9uLFxyXG4gICAgICB0aGlzLmN1c3RvbWVyRWRpdEJ1dHRvblxyXG4gICAgXVxyXG4gIH07XHJcblxyXG4gIGN1c3RvbWVyc1RhYmxlQ29uZmlnOiBUYWJsZUNvbmZpZyA9IHtcclxuICAgIHNob3dGaWx0ZXI6IHRydWUsXHJcbiAgICBtaW5Db2x1bW5zOiBbJ25hbWUnXSxcclxuICAgIGZsYXRCdXR0b25zOiB0cnVlLFxyXG4gICAgbG9nUmVzcG9uc2U6IHRydWUsXHJcbiAgICBtYXhCdXR0b25zQ291bnQ6IDMsXHJcbiAgICBjb2xsYXBzZUJ1dHRvbnMgOiB0cnVlLFxyXG5cclxuICAgIGNvbHVtbnM6IFtcclxuXHJcbiAgICAgIHsgbmFtZTogJ25hbWUnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAncGhvbmUnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnY29udGFjdFBlcnNvbicsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdpc0xpbmtlZCcsIHR5cGU6ICdjaGVja2JveCcsIGFsaWFzOiAnTGlua2VkJyB9LFxyXG5cclxuICAgIF0sXHJcblxyXG4gICAgYnV0dG9uczogW1xyXG4gICAgICB0aGlzLmN1c3RvbWVyQ3JlYXRlQnV0dG9uLFxyXG4gICAgICB7IG5hbWU6ICd2aWV3JywgZGlhbG9nOiB0cnVlLCBkZXRhaWxzQ29uZmlnOiB0aGlzLmN1c3RvbWVyRGV0YWlsc0NvbmZpZyB9LFxyXG4gICAgICB7IG5hbWU6ICdlZGl0JywgZGlhbG9nOiB0cnVlLCBkZXRhaWxzQ29uZmlnOiB0aGlzLmN1c3RvbWVyRGV0YWlsc0NvbmZpZyB9LFxyXG4gICAgICB7IG5hbWU6ICdkZWxldGUnLCBkaWFsb2c6IHRydWUsIGFjdGlvbjogeyB1cmw6ICdjdXN0b21lcnM/YWN0aW9uPWRlbGV0ZScsIG1ldGhvZDogJ3Bvc3QnIH0gfSxcclxuICAgIF0sXHJcblxyXG4gICAgbG9hZEFjdGlvbjogeyB1cmw6ICdjdXN0b21lcnMvYWxsL3gnIH0sXHJcbiAgICBmb3JtQ29uZmlnOiB0aGlzLmN1c3RvbWVyRm9ybUNvbmZpZ1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1TdXBwbGllcnMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgc3VwcGxpZXJGb3JtQ29uZmlnOiBGb3JtQ29uZmlnID0ge1xyXG4gICAgc2VjdXJpdHk6IHsgYWxsb3c6IFt0aGlzLmNhcFN1cHBsaWVyc10gfSxcclxuICAgIGluY2x1ZGVBdWRpdDogdHJ1ZSxcclxuICAgIHRpdGxlOiAnU3VwcGxpZXInLFxyXG4gICAgZmllbGRzOiBbXHJcbiAgICAgIHsgbmFtZTogJ25hbWUnLCB0eXBlOiAndGV4dCcsIHJlcXVpcmVkOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ3Bob25lJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2NvbnRhY3RQZXJzb24nLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnZW1haWwnLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAnYWRkcmVzcycsIHR5cGU6ICd0ZXh0Jywgcm93czogMiwgc3BhbjogdHJ1ZSB9LFxyXG4gICAgXSxcclxuXHJcbiAgICBsb2FkQWN0aW9uOiB7IHVybDogJ3N1cHBsaWVycy9pZCcgfSxcclxuICAgIGhlcm9GaWVsZDogJ3N1cHBsaWVySUQnLFxyXG4gIH1cclxuXHJcbiAgc3VwcGxpZXJDcmVhdGVCdXR0b24gOiBCdXR0b24gPSB7IG5hbWU6ICdjcmVhdGUnLCBkaXNwbGF5OiAnQ3JlYXRlJywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnc3VwcGxpZXJzP2FjdGlvbj1jcmVhdGUnLCBtZXRob2Q6ICdwb3N0JyB9IH1cclxuICBzdXBwbGllckVkaXRCdXR0b24gOiBCdXR0b24gPSB7IG5hbWU6ICdlZGl0JywgZGlhbG9nOiB0cnVlLCBhY3Rpb246IHsgdXJsOiAnc3VwcGxpZXJzP2FjdGlvbj1lZGl0JywgbWV0aG9kOiAncG9zdCcgfSB9XHJcblxyXG4gIHN1cHBsaWVyRGV0YWlsc0NvbmZpZzogRGV0YWlsc0RpYWxvZ0NvbmZpZyA9IHtcclxuICAgIGZvcm1Db25maWcgOiB0aGlzLnN1cHBsaWVyRm9ybUNvbmZpZyxcclxuICAgIGhlcm9GaWVsZCA6ICdzdXBwbGllcklEJyxcclxuICAgIHRhYmxlQ29uZmlnczogW1xyXG4gICAgICB7XHJcbiAgICAgICAgLi4udGhpcy5jb250YWN0UGVyc29uVGFibGVDb25maWcsXHJcbiAgICAgICAgbG9hZEFjdGlvbjogeyB1cmw6ICdjb250YWN0cGVyc29ucy9zdXBwbGllci94JyB9LFxyXG4gICAgICAgIGxvYWRDcml0ZXJpYTogJ3N1cHBsaWVyJyxcclxuICAgICAgICBsb2FkSURGaWVsZDogJ3N1cHBsaWVySUQnXHJcbiAgICAgIH1cclxuICAgIF0sXHJcbiAgICBidXR0b25zIDogW1xyXG4gICAgICB0aGlzLnN1cHBsaWVyQ3JlYXRlQnV0dG9uLFxyXG4gICAgICB0aGlzLnN1cHBsaWVyRWRpdEJ1dHRvbixcclxuICAgIF1cclxuICB9O1xyXG5cclxuICBzdXBwbGllcnNUYWJsZUNvbmZpZzogVGFibGVDb25maWcgPSB7XHJcbiAgICBzaG93RmlsdGVyOiB0cnVlLFxyXG4gICAgbWluQ29sdW1uczogWyduYW1lJ10sXHJcbiAgICBmbGF0QnV0dG9uczogdHJ1ZSxcclxuICAgIGNvbHVtbnM6IFtcclxuICAgICAgeyBuYW1lOiAnbmFtZScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdwaG9uZScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdjb250YWN0UGVyc29uJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICBdLFxyXG5cclxuICAgIGJ1dHRvbnM6IFtcclxuICAgICAgdGhpcy5zdXBwbGllckNyZWF0ZUJ1dHRvbixcclxuICAgICAgeyBuYW1lOiAndmlldycsIGRpYWxvZzogdHJ1ZSwgZGV0YWlsc0NvbmZpZzogdGhpcy5zdXBwbGllckRldGFpbHNDb25maWcgfSxcclxuICAgICAgeyBuYW1lOiAnZWRpdCcsIGRpYWxvZzogdHJ1ZSwgIGRldGFpbHNDb25maWc6IHRoaXMuc3VwcGxpZXJEZXRhaWxzQ29uZmlnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2RlbGV0ZScsIGRpYWxvZzogdHJ1ZSwgYWN0aW9uOiB7IHVybDogJ3N1cHBsaWVycz9hY3Rpb249ZGVsZXRlJywgbWV0aG9kOiAncG9zdCcgfSB9LFxyXG4gICAgXSxcclxuXHJcbiAgICBsb2FkQWN0aW9uOiB7IHVybDogJ3N1cHBsaWVycy9hbGwveCcgfSxcclxuICAgIGZvcm1Db25maWc6IHRoaXMuc3VwcGxpZXJGb3JtQ29uZmlnXHJcbiAgfVxyXG5cclxuXHJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLU5vdGlmaWNhdGlvbnMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4gIG5vdGlmaWNhdGlvbk9wdGlvbnMgPSBbXHJcbiAgICB7IG5hbWU6ICdVSSBPbmx5JywgdmFsdWU6IDEgfSxcclxuICAgIHsgbmFtZTogJ1VJICsgRW1haWwnLCB2YWx1ZTogMyB9LFxyXG4gICAgLy8geyBuYW1lOiAnVUkgKyBFbWFpbCArIFNNUycsIHZhbHVlOiA3IH0sXHJcbiAgICB7IG5hbWU6ICdVSSArIFdoYXRzQXBwJywgdmFsdWU6IDkgfSxcclxuICAgIHsgbmFtZTogJ1VJICsgVGVsZWdyYW0nLCB2YWx1ZTogMTcgfSxcclxuICAgIHsgbmFtZTogJ1VJICsgVGVsZWdyYW0gKyBXaGF0c0FwcCcsIHZhbHVlOiAyNSB9LFxyXG4gICAgeyBuYW1lOiAnQWxsIENoYW5uZWxzJywgdmFsdWU6IDMxIH1cclxuICBdXHJcblxyXG5cclxuXHJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLUFwcHJvdmFscy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4gIGFwcHJvdmFsSGlzdG9yeUZvcm1Db25maWcgOiBGb3JtQ29uZmlnID0ge1xyXG4gICAgdGl0bGU6ICdBcHByb3ZhbCBIaXN0b3J5JyxcclxuICAgIGZpZWxkczogW1xyXG4gICAgICB7IG5hbWU6ICdsZXZlbE5hbWUnLCB0eXBlOiAndGV4dCcsIHJlYWRvbmx5OiB0cnVlLCBhbGlhczogJ0xldmVsJyB9LFxyXG4gICAgICB7IG5hbWU6ICdzdGF0dXNOYW1lJywgdHlwZTogJ3RleHQnLCByZWFkb25seTogdHJ1ZSwgYWxpYXM6ICdTdGF0dXMnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2NvbW1lbnRzJywgdHlwZTogJ3RleHQnLCByZWFkb25seTogdHJ1ZSwgc3BhbjogdHJ1ZSwgcm93czogMywgY29weUNvbnRlbnQ6IHRydWUgfSxcclxuICAgIF0sXHJcbiAgICBpbmNsdWRlQXVkaXQ6IHRydWVcclxuICB9XHJcblxyXG4gIC8vQXBwcm92YWwgSGlzdG9yeVxyXG4gIGFwcHJvdmFsSGlzdG9yeVRhYmxlQ29uZmlnOiBUYWJsZUNvbmZpZyA9IHtcclxuICAgIHRhYlRpdGxlOiAnVHJhaWwnLFxyXG4gICAgZWxldmF0aW9uOiAnbm9uZScsXHJcbiAgICBtaW5Db2x1bW5zOiBbJ2NyZWF0ZWREYXRlJywgJ2xldmVsTmFtZScsICdzdGF0dXNOYW1lJ10sXHJcbiAgICBmbGF0QnV0dG9uczogdHJ1ZSxcclxuICAgIHNob3dGaWx0ZXIgOiB0cnVlLFxyXG4gICAgY29sdW1uczogW1xyXG4gICAgICB7IG5hbWU6ICdjcmVhdGVkRGF0ZScsIHR5cGU6ICdkYXRldGltZScsIGFsaWFzIDogJ0RhdGUnIH0sXHJcbiAgICAgIHsgbmFtZTogJ2xldmVsTmFtZScsIHR5cGU6ICd0ZXh0JywgYWxpYXM6ICdMZXZlbCcgfSxcclxuICAgICAge1xyXG4gICAgICAgIG5hbWU6ICdzdGF0dXNOYW1lJywgdHlwZTogJ3RleHQnLCBhbGlhczogJ1N0YXR1cycsXHJcbiAgICAgICAgY29sb3JzOiBbXHJcbiAgICAgICAgICB7IG5hbWU6ICcjOTBBNEFFJywgY29uZGl0aW9uOiB4ID0+IHguc3RhdHVzID09PSAwIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICcjNjZCQjZBJywgY29uZGl0aW9uOiB4ID0+IHguc3RhdHVzID09PSAxIH0sXHJcbiAgICAgICAgICB7IG5hbWU6ICcjRjQ0MzM2JywgY29uZGl0aW9uOiB4ID0+IHguc3RhdHVzID09PSAyIH1cclxuICAgICAgICBdXHJcbiAgICAgIH0sXHJcbiAgICAgIHsgbmFtZTogJ2NvbW1lbnRzJywgdHlwZTogJ3RleHQnLCB9LFxyXG4gICAgICB7IG5hbWU6ICdjcmVhdGVkQnlOYW1lJywgdHlwZTogJ3RleHQnLCBhbGlhczogJ0J5JyB9LFxyXG5cclxuICAgIF0sXHJcbiAgICBidXR0b25zOiBbXHJcbiAgICAgIHsgbmFtZTogJ3ZpZXcnLCBkaWFsb2c6IHRydWUgfVxyXG4gICAgXSxcclxuXHJcbiAgICBmb3JtQ29uZmlnIDogdGhpcy5hcHByb3ZhbEhpc3RvcnlGb3JtQ29uZmlnLFxyXG5cclxuICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnYXBwcm92YWxoaXN0b3J5L2FwcHJvdmFsL3gnIH0sXHJcbiAgICBsb2FkQ3JpdGVyaWE6ICdhcHByb3ZhbCcsXHJcbiAgICBsb2FkSURGaWVsZDogJ2FwcHJvdmFsSUQnXHJcbiAgfTtcclxuXHJcblxyXG5cclxuICAvL2FwcHJvdmFscyBmb3JtXHJcbiAgYXBwcm92YWxGb3JtQ29uZmlnOiBGb3JtQ29uZmlnID0ge1xyXG4gICAgdGl0bGU6ICdBcHByb3ZhbCcsXHJcbiAgICBmaWVsZHM6IFtcclxuICAgICAgeyBuYW1lOiAnYmxhbmsnLCB0eXBlOiAnYmxhbmsnLCBzcGFuOiB0cnVlIH0sXHJcbiAgICAgIHsgbmFtZTogJ3N0YXR1c05hbWUnLCB0eXBlOiAnbGFiZWwnLCBhbGlhczogJ1N0YXR1cycsIHNwYW46IHRydWUgfSxcclxuICAgICAgeyBuYW1lOiAnbWVzc2FnZScsIHR5cGU6ICd0ZXh0JywgcmVxdWlyZWQ6IHRydWUsIHNwYW46IHRydWUsIHJvd3M6IDMgfSxcclxuXHJcbiAgICBdLFxyXG4gICAgbG9hZEFjdGlvbjogeyB1cmw6ICdhcHByb3ZhbHMvaWQnIH0sXHJcbiAgICBoZXJvRmllbGQ6ICdhcHByb3ZhbElEJ1xyXG4gIH07XHJcblxyXG5cclxuXHJcblxyXG4gIC8vIGFwcHJvdmFsIGFjdGlvbiBkaWFsb2dcclxuICBhcHByb3ZhbEFjdGlvbkZvcm1Db25maWc6IEZvcm1Db25maWcgPSB7XHJcbiAgICB0aXRsZTogJ0FwcHJvdmFsIEFjdGlvbicsXHJcbiAgICBmaXhlZFRpdGxlOiB0cnVlLFxyXG4gICAgZmllbGRzOiBbXHJcbiAgICAgIHtcclxuICAgICAgICBuYW1lOiAnY29tbWVudHMnLCB0eXBlOiAndGV4dCcsIHJlcXVpcmVkOiBmYWxzZSwgc3BhbjogdHJ1ZSwgcm93czogMyxcclxuICAgICAgICBpbmZvTWVzc2FnZTogJ0VudGVyIHlvdXIgY29tbWVudHMgYWJvdXQgdGhpcyBhcHByb3ZhbCBhY3Rpb24uIFRoaXMgd2lsbCBiZSB2aXNpYmxlIGluIHRoZSBhcHByb3ZhbCBoaXN0b3J5LidcclxuICAgICAgfVxyXG4gICAgXVxyXG4gIH07XHJcblxyXG4gIGFwcHJvdmVBY3Rpb25EZXRhaWxzQ29uZmlnOiBEZXRhaWxzRGlhbG9nQ29uZmlnID0ge1xyXG4gICAgZm9ybUNvbmZpZzoge1xyXG4gICAgICAuLi50aGlzLmFwcHJvdmFsQWN0aW9uRm9ybUNvbmZpZyxcclxuICAgICAgZmllbGRzOiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgbmFtZTogJ2NvbW1lbnRzJywgdHlwZTogJ3RleHQnLCByZXF1aXJlZDogZmFsc2UsIHNwYW46IHRydWUsIHJvd3M6IDMsXHJcbiAgICAgICAgICBpbmZvTWVzc2FnZTogJ0VudGVyIHlvdXIgY29tbWVudHMgYWJvdXQgdGhpcyBhcHByb3ZhbCBhY3Rpb24uIFRoaXMgd2lsbCBiZSB2aXNpYmxlIGluIHRoZSBhcHByb3ZhbCBoaXN0b3J5LidcclxuICAgICAgICB9XHJcbiAgICAgIF0sXHJcbiAgICB9LFxyXG4gICAgbW9kZTogJ2VkaXQnLFxyXG4gICAgYnV0dG9uczogW1xyXG4gICAgICB7IG5hbWU6ICdlZGl0JywgZGlzcGxheTogJ0FwcHJvdmUnLCBjb2xvcjogJ2dyZWVuJywgYWN0aW9uOiB7IHVybDogJ2FwcHJvdmUnLCBtZXRob2Q6ICdwb3N0JyB9IH0gLy91cmwgcHJlY29uZmlndXJlZCB0byBiZSBkeW5hbWljXHJcbiAgICBdXHJcbiAgfTtcclxuXHJcbiAgZGVjbGluZUFjdGlvbkRldGFpbHNDb25maWc6IERldGFpbHNEaWFsb2dDb25maWcgPSB7XHJcbiAgICBmb3JtQ29uZmlnOiB7Li4udGhpcy5hcHByb3ZhbEFjdGlvbkZvcm1Db25maWcsXHJcbiAgICAgIGZpZWxkczogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIG5hbWU6ICdjb21tZW50cycsIHR5cGU6ICd0ZXh0JywgcmVxdWlyZWQ6IHRydWUsIHNwYW46IHRydWUsIHJvd3M6IDMsXHJcbiAgICAgICAgICBpbmZvTWVzc2FnZTogJ0VudGVyIHlvdXIgY29tbWVudHMgYWJvdXQgdGhpcyBhcHByb3ZhbCBhY3Rpb24uIFRoaXMgd2lsbCBiZSB2aXNpYmxlIGluIHRoZSBhcHByb3ZhbCBoaXN0b3J5LicsXHJcbiAgICAgICAgICBoaW50IDogJ0RlY2xpbmUgY29tbWVudCBpcyByZXF1aXJlZCAhJ1xyXG4gICAgICAgIH1cclxuICAgICAgXSxcclxuICAgIH0sXHJcbiAgICBtb2RlOiAnZWRpdCcsXHJcbiAgICBidXR0b25zOiBbXHJcbiAgICAgIHsgbmFtZTogJ2VkaXQnLCBkaXNwbGF5OiAnRGVjbGluZScsIGNvbG9yOiAncmVkJywgYWN0aW9uOiB7IHVybDogJ2RlY2xpbmUnLCBtZXRob2Q6ICdwb3N0JyB9IH0gLy91cmwgcHJlY29uZmlndXJlZCB0byBiZSBkeW5hbWljXHJcbiAgICBdXHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIGFwcHJvdmVCdXR0b246IEJ1dHRvbiA9IHtcclxuICAgIG5hbWU6ICdhcHByb3ZlJywgdGlwOiAnQXBwcm92ZSBSZXF1ZXN0JywgZGlhbG9nOiB0cnVlLCBpbkRpYWxvZzogdHJ1ZSwgaWNvbjogeyBuYW1lOiAnZG9uZScgfSwgY29sb3I6ICdncmVlbicsIGRldGFpbHNDb25maWc6IHRoaXMuYXBwcm92ZUFjdGlvbkRldGFpbHNDb25maWcsIGlnbm9yZVBlbmRpbmdBcHByb3ZhbDogdHJ1ZSxcclxuICAgIHZpc2libGU6IHggPT4geCAmJiB4LmNhbkFjdGlvbiAmJiAoIXguaXNNeUFwcHJvdmFsUmVxdWVzdCB8fCB0aGlzLm15Um9sZVt0aGlzLmNhcFNlbGZBcHByb3ZhbC5uYW1lXSksXHJcbiAgfVxyXG5cclxuICBkZWNsaW5lQnV0dG9uOiBCdXR0b24gPSB7XHJcbiAgICBuYW1lOiAnZGVjbGluZScsIHRpcDogJ0RlY2xpbmUgUmVxdWVzdCcsIGRpYWxvZzogdHJ1ZSwgaW5EaWFsb2c6IHRydWUsIGljb246IHsgbmFtZTogJ2Nsb3NlJyB9LCBjb2xvcjogJ3JlZCcsIGRldGFpbHNDb25maWc6IHRoaXMuZGVjbGluZUFjdGlvbkRldGFpbHNDb25maWcsIGlnbm9yZVBlbmRpbmdBcHByb3ZhbDogdHJ1ZSxcclxuICAgIHZpc2libGU6IHggPT4geCAmJiB4LmNhbkFjdGlvbiAmJiAoIXguaXNNeUFwcHJvdmFsUmVxdWVzdCB8fCB0aGlzLm15Um9sZVt0aGlzLmNhcFNlbGZBcHByb3ZhbC5uYW1lXSksXHJcbiAgfVxyXG5cclxuICBjYW5jZWxCdXR0b246IEJ1dHRvbiA9IHtcclxuICAgIG5hbWU6ICdjYW5jZWwnLCB0aXA6ICdDYW5jZWwgQXBwcm92YWwnLCBpbkRpYWxvZzogdHJ1ZSwgaWNvbjogeyBuYW1lOiAnY2FuY2VsJyB9LCBjb2xvcjogJ3JlZCcsIGFjdGlvbjogeyB1cmw6ICdjYW5jZWwnLCBtZXRob2Q6ICdwb3N0JywgfSwgaWdub3JlUGVuZGluZ0FwcHJvdmFsOiB0cnVlLCAvL3VybCBwcmVjb25maWd1cmVkIHRvIGJlIGR5bmFtaWNcclxuICAgIGNvbmZpcm06IHsgbWVzc2FnZTogJ0NhbmNlbCBhcHByb3ZhbCByZXF1ZXN0PyBUaGlzIHdpbGwgcmV2ZXJ0IGNoYW5nZXMgYW5kIHN0b3AgdGhlIGFwcHJvdmFsIHByb2Nlc3MuJyB9LFxyXG4gICAgdmlzaWJsZTogeCA9PiB4ICYmIHguY2FuQ2FuY2VsXHJcbiAgfVxyXG5cclxuICBhcHByb3ZhbERldGFpbHNDb25maWc6IERldGFpbHNEaWFsb2dDb25maWcgPSB7XHJcbiAgICBmb3JtQ29uZmlnOiB0aGlzLmFwcHJvdmFsRm9ybUNvbmZpZyxcclxuICAgIGhlcm9GaWVsZDogJ2FwcHJvdmFsSUQnLFxyXG4gICAgdGFibGVDb25maWdzOiBbdGhpcy5hcHByb3ZhbEhpc3RvcnlUYWJsZUNvbmZpZ10sXHJcblxyXG4gICAgc3RlcENvbmZpZzoge1xyXG4gICAgICBzdGVwczogW10sXHJcbiAgICAgIGxvYWRBY3Rpb246IHsgdXJsOiBgYXBwcm92YWxzL3N0ZXBzL3tpZH1gIH0sXHJcbiAgICAgIGxvYWRJREZpZWxkOiAnYXBwcm92YWxJRCcsXHJcbiAgICAgIHZhbHVlRmllbGQ6ICdjdXJyZW50TGV2ZWwnXHJcbiAgICB9LFxyXG5cclxuICAgIGJ1dHRvbnMgOiBbXHJcbiAgICAgIHRoaXMuYXBwcm92ZUJ1dHRvbixcclxuICAgICAgdGhpcy5kZWNsaW5lQnV0dG9uLFxyXG4gICAgICB0aGlzLmNhbmNlbEJ1dHRvblxyXG4gICAgXVxyXG5cclxuICB9O1xyXG5cclxuXHJcbiAgdmlld0FwcHJvdmFsQnV0dG9uOiBCdXR0b24gPSB7XHJcbiAgICBuYW1lOiAnaW5mbycsIHRpcDogJ0FwcHJvdmFsIEluZm9ybWF0aW9uJywgZGlhbG9nOiB0cnVlLCBpY29uOiB7IG5hbWU6ICdpbmZvJywgIH0sIGRldGFpbHNDb25maWc6IHRoaXMuYXBwcm92YWxEZXRhaWxzQ29uZmlnLCBpZ25vcmVQZW5kaW5nQXBwcm92YWw6IHRydWUsXHJcbiAgICB2aXNpYmxlOiB4ID0+IHguY2FuQWN0aW9uIHx8IHguY2FuQ2FuY2VsXHJcbiAgfVxyXG5cclxuXHJcbiAgLy9yZWNlaXZlZCBhcHByb3ZhbHNcclxuICByZWNlaXZlZEFwcHJvdmFsc1RhYmxlQ29uZmlnOiBUYWJsZUNvbmZpZyA9IHtcclxuICAgIHNob3dGaWx0ZXI6IHRydWUsXHJcbiAgICBtaW5Db2x1bW5zOiBbJ21lc3NhZ2UnLCAnc3RhdHVzTmFtZSddLFxyXG4gICAgbWluQnV0dG9uczogWyd2aWV3JywgJ2FwcHJvdmUnLCAnZGVjbGluZSddLFxyXG4gICAgZmxhdEJ1dHRvbnM6IHRydWUsXHJcbiAgICBncmV5T3V0OiAoeCkgPT4geC5pc0dyZXllZE91dCxcclxuICAgIC8vIGxvZ1Jlc3BvbnNlOiB0cnVlLFxyXG4gICAgY29sbGFwc2VCdXR0b25zOiB0cnVlLFxyXG4gICAgY29sdW1uczogW1xyXG4gICAgICB7IG5hbWU6ICdjcmVhdGVkRGF0ZScsIHR5cGU6ICdkYXRldGltZScsIGFsaWFzOiAnRGF0ZScgfSxcclxuICAgICAgeyBuYW1lOiAnY3JlYXRlZEJ5TmFtZScsIGFsaWFzOiAnUmVxdWVzdCBCeScsIHR5cGU6ICd0ZXh0JyB9LFxyXG4gICAgICB7IG5hbWU6ICdtZXNzYWdlJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBuYW1lOiAndHlwZU5hbWUnLCBhbGlhczogJ1R5cGUnLCB0eXBlOiAnY2hpcCcsXHJcbiAgICAgICAgY29sb3JzOiBbXHJcbiAgICAgICAgICB7IG5hbWU6ICcjNjZCQjZBJywgY29uZGl0aW9uOiB4ID0+IHgudHlwZSA9PT0gMCB9LFxyXG4gICAgICAgICAgeyBuYW1lOiAnb3JhbmdlJywgY29uZGl0aW9uOiB4ID0+IHgudHlwZSA9PT0gMSB9LFxyXG4gICAgICAgICAgeyBuYW1lOiAnI0Y0NDMzNicsIGNvbmRpdGlvbjogeCA9PiB4LnR5cGUgPT09IDIgfVxyXG4gICAgICAgIF1cclxuICAgICAgfSxcclxuICAgICAge1xyXG4gICAgICAgIG5hbWU6ICdzdGF0dXNOYW1lJywgYWxpYXM6ICdTdGF0dXMnLCB0eXBlOiAnY2hpcCcsIGRldGFpbHNDb25maWc6IHRoaXMuYXBwcm92YWxEZXRhaWxzQ29uZmlnLFxyXG4gICAgICAgIGNvbG9yczogW1xyXG4gICAgICAgICAgeyBuYW1lOiAnIzkwQTRBRScsIGNvbmRpdGlvbjogeCA9PiB4LnN0YXR1cyA9PT0gMCB9LFxyXG4gICAgICAgICAgeyBuYW1lOiAnIzY2QkI2QScsIGNvbmRpdGlvbjogeCA9PiB4LnN0YXR1cyA9PT0gMSB9LFxyXG4gICAgICAgICAgeyBuYW1lOiAnI0Y0NDMzNicsIGNvbmRpdGlvbjogeCA9PiB4LnN0YXR1cyA9PT0gMiB9XHJcbiAgICAgICAgXVxyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgbmFtZTogJ2N1cnJlbnRMZXZlbE5hbWUnLCB0eXBlOiAndGV4dCcsIGFsaWFzOiAnQ3VycmVudCBMZXZlbCcsXHJcbiAgICAgICAgaWNvbnM6IFtcclxuICAgICAgICAgIHsgbmFtZTogJ2RvbmUnLCBjb2xvcjogJyM2NkJCNkEnLCBjb25kaXRpb246IHggPT4geC5zdGF0dXMgPT09ICdBcHByb3ZlZCcsIHRpcDogJ0FwcHJvdmVkJyB9LFxyXG4gICAgICAgICAgeyBuYW1lOiAnY2xvc2UnLCBjb2xvcjogJyNGNDQzMzYnLCBjb25kaXRpb246IHggPT4geC5zdGF0dXMgPT09ICdEZWNsaW5lZCcsIHRpcDogJ0RlY2xpbmVkJyB9LFxyXG4gICAgICAgICAgeyBuYW1lOiAnc2NoZWR1bGUnLCBjb2xvcjogJyNGRkMxMDcnLCBjb25kaXRpb246IHggPT4geC5zdGF0dXMgPT09ICdQZW5kaW5nJywgdGlwOiAnUGVuZGluZycgfVxyXG4gICAgICAgIF1cclxuICAgICAgfSxcclxuICAgICAgeyBuYW1lOiAndXBkYXRlZEJ5TmFtZScsIGFsaWFzOiAnQWN0aW9uZWQgQnknLCB0eXBlOiAndGV4dCcgfSxcclxuICAgICAgeyBuYW1lOiAndXBkYXRlZERhdGVEaXNwbGF5JywgdHlwZTogJ2RhdGV0aW1lJywgYWxpYXM6ICdBY3Rpb25lZCBEYXRlJyB9LFxyXG4gICAgXSxcclxuXHJcbiAgICBidXR0b25zOiBbXHJcbiAgICAgIHRoaXMudmlld0FwcHJvdmFsQnV0dG9uLFxyXG4gICAgICB0aGlzLmFwcHJvdmVCdXR0b24sXHJcbiAgICAgIHRoaXMuZGVjbGluZUJ1dHRvbixcclxuICAgICAgdGhpcy5jYW5jZWxCdXR0b24sXHJcbiAgICBdLFxyXG5cclxuICAgIGxvYWRBY3Rpb246IHsgdXJsOiAnYXBwcm92YWxzL2FsbC94JyB9XHJcbiAgfTtcclxuXHJcblxyXG4gIC8vc2VuZCBhcHByb3ZhbHNcclxuICBzZW50QXBwcm92YWxzVGFibGVDb25maWc6IFRhYmxlQ29uZmlnID0ge1xyXG4gICAgLi4udGhpcy5yZWNlaXZlZEFwcHJvdmFsc1RhYmxlQ29uZmlnLFxyXG4gICAgYnV0dG9uczogW1xyXG4gICAgICB0aGlzLnZpZXdBcHByb3ZhbEJ1dHRvbixcclxuICAgICAgdGhpcy5jYW5jZWxCdXR0b24sXHJcbiAgICBdLFxyXG4gICAgbG9hZEFjdGlvbjogeyB1cmw6ICdhcHByb3ZhbHMvc2VudC94JyB9XHJcbiAgfTtcclxuXHJcblxyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tT3RoZXIgY29kZVxyXG5cclxuICBwcml2YXRlIGxpc3RDYWNoZTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9IHt9O1xyXG4gIHByaXZhdGUgY2FjaGVEdXJhdGlvbiA9IDEgKiA2MCAqIDEwMDA7XHJcbiAgcHJpdmF0ZSBjYWNoZVRpbWVzdGFtcHM6IHsgW2tleTogc3RyaW5nXTogbnVtYmVyIH0gPSB7fTtcclxuXHJcbiAgcHVibGljIENhbGxBcGkoYWN0aW9uOiBBY3Rpb24sIGRhdGE6IGFueSA9ICcnICkge1xyXG5cclxuXHJcbiAgICBpZiAoIWFjdGlvbj8udXJsKSB7XHJcbiAgICAgIGNvbnNvbGUud2FybignSW52YWxpZCBhY3Rpb24gb3IgbWlzc2luZyBVUkwnKTtcclxuICAgICAgcmV0dXJuIG9mKHsgc3VjY2VzczogZmFsc2UsIG1lc3NhZ2U6ICdJbnZhbGlkIGFjdGlvbiBjb25maWd1cmF0aW9uJyB9KTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoYWN0aW9uLnVybC5pbmNsdWRlcygnL2xpc3QvJykpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuaGFuZGxlTGlzdENhbGwoYWN0aW9uKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zb2xlLmxvZyhcImNhbGxpbmdcIiwgYWN0aW9uKTtcclxuXHJcblxyXG4gICAgaWYgKCFhY3Rpb24ubWV0aG9kIHx8IGFjdGlvbi5tZXRob2QgPT0nZ2V0Jyl7XHJcbiAgICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLkdldChhY3Rpb24udXJsKTtcclxuICAgIH0gZWxzZSBpZiAoYWN0aW9uLm1ldGhvZCA9PSAncG9zdCcpe1xyXG5cclxuICAgICAgaWYgKGFjdGlvbi5pc0Zvcm1EYXRhKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdF9Gb3JtRGF0YShhY3Rpb24udXJsLCBkYXRhKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmIChhY3Rpb24udXJsID09ICdhcHByb3ZlJyB8fCBhY3Rpb24udXJsID09ICdkZWNsaW5lJyB8fCBhY3Rpb24udXJsID09ICdjYW5jZWwnKSB7XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLlBvc3QoYCR7ZGF0YS5lbmRwb2ludH0vYXBwcm92ZT9hY3Rpb249JHthY3Rpb24udXJsfWAsIGRhdGEpO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2V7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdChhY3Rpb24udXJsLCBkYXRhKTtcclxuICAgICAgfVxyXG5cclxuXHJcbiAgICB9XHJcbiAgICBlbHNle1xyXG4gICAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KGFjdGlvbi51cmwsIGRhdGEpO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIHByaXZhdGUgaGFuZGxlTGlzdENhbGwoYWN0aW9uOiBBY3Rpb24pIHtcclxuICAgIGNvbnN0IGNhY2hlS2V5ID0gYWN0aW9uLnVybDtcclxuICAgIGNvbnN0IGN1cnJlbnRUaW1lID0gRGF0ZS5ub3coKTtcclxuXHJcbiAgICAvLyBSZXR1cm4gY2FjaGUgaWYgdmFsaWQgYW5kIG5vdCBmb3JjaW5nIHJlZnJlc2hcclxuICAgIGlmICghYWN0aW9uLnNraXBDYWNoZSAmJiB0aGlzLmxpc3RDYWNoZVtjYWNoZUtleV0gJiYgY3VycmVudFRpbWUgLSB0aGlzLmNhY2hlVGltZXN0YW1wc1tjYWNoZUtleV0gPCB0aGlzLmNhY2hlRHVyYXRpb24pIHtcclxuICAgICAgcmV0dXJuIG9mKHtcclxuICAgICAgICBzdWNjZXNzOiB0cnVlLFxyXG4gICAgICAgIGRhdGE6IHRoaXMubGlzdENhY2hlW2NhY2hlS2V5XVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBNYWtlIEFQSSBjYWxsIGFuZCBjYWNoZSByZXN1bHRcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLkdldChhY3Rpb24udXJsKS5waXBlKFxyXG4gICAgICB0YXAoKHJlc3BvbnNlOiBBcGlSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXNwb25zZS5zdWNjZXNzICYmIHJlc3BvbnNlPy5kYXRhPy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICB0aGlzLmxpc3RDYWNoZVtjYWNoZUtleV0gPSByZXNwb25zZS5kYXRhO1xyXG4gICAgICAgICAgdGhpcy5jYWNoZVRpbWVzdGFtcHNbY2FjaGVLZXldID0gY3VycmVudFRpbWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8vIE1ldGhvZCB0byBpbnZhbGlkYXRlIGNhY2hlIG9uIGRhdGEgY2hhbmdlXHJcbiAgcHVibGljIGludmFsaWRhdGVMaXN0Q2FjaGUoZW50aXR5VXJsOiBzdHJpbmcpIHtcclxuICAgIE9iamVjdC5rZXlzKHRoaXMubGlzdENhY2hlKS5mb3JFYWNoKGtleSA9PiB7XHJcbiAgICAgIC8vIEludmFsaWRhdGUgYW55IGNhY2hlIGVudHJpZXMgcmVsYXRlZCB0byB0aGlzIGVudGl0eVxyXG4gICAgICBpZiAoa2V5LmluY2x1ZGVzKGVudGl0eVVybCkpIHtcclxuICAgICAgICBkZWxldGUgdGhpcy5saXN0Q2FjaGVba2V5XTtcclxuICAgICAgICBkZWxldGUgdGhpcy5jYWNoZVRpbWVzdGFtcHNba2V5XTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgQ2xlYXJDYWNoZSgpe1xyXG4gICAgdGhpcy5saXN0Q2FjaGUgPSB7fTtcclxuXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgQ2hlY2tXZWxjb21lZChwYXRoOiBzdHJpbmcgPSAnaG9tZS9hZG1pbi93ZWxjb21lJykge1xyXG4gICAgdGhpcy5DYWxsQXBpKHsgdXJsOiAndGVuYW50L3dlbGNvbWUveCcgfSkuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgIGlmICgheC5kYXRhKSB7XHJcbiAgICAgICAgdGhpcy5OYXZpZ2F0ZShwYXRoKVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcblxyXG5cclxuICBwdWJsaWMgTmF2aWdhdGUocGF0aDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbcGF0aF0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIE5hdmlnYXRlV2l0aFZhbHVlKHBhdGg6IHN0cmluZywgdmFsdWUgOiBzdHJpbmcpe1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3BhdGhdLCB7XHJcbiAgICAgIHF1ZXJ5UGFyYW1zOiB7IHY6IHZhbHVlIH0sXHJcbiAgICAgIHF1ZXJ5UGFyYW1zSGFuZGxpbmc6ICdtZXJnZScsXHJcbiAgICAgIHNraXBMb2NhdGlvbkNoYW5nZTogZmFsc2VcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIEdldE5hdmlnYXRpb25WYWx1ZSgpe1xyXG4gICAgaWYgKHRoaXMucm91dGUuc25hcHNob3QucXVlcnlQYXJhbXNbXCJ2XCJdICE9IHVuZGVmaW5lZCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtc1tcInZcIl1cclxuICAgIH1lbHNle1xyXG4gICAgICByZXR1cm4gXCJcIjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyB0bXBBY2NvdW50SUQ7XHJcblxyXG5cclxuXHJcbiAgLy9Vc2Vyc1xyXG4gIHB1YmxpYyBHZXRVc2VyKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuR2V0KFwiVXNlci9hbGwveFwiKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBSZWdpc3RlckFjY291bnQodSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdChcIlVzZXIvcmVnaXN0ZXJcIiwgdSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgR2V0VXNlckJ5SUQodmFsOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLkdldChgVXNlci9pZC8ke3ZhbH1gKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBVcGRhdGVVc2VyKHByb2ZpbGUpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLlBvc3QoXCJVc2VyL2VkaXRcIiwgcHJvZmlsZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgVW5sb2NrVXNlcih1c2VyKSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KFwiVXNlci91bmxvY2tcIiwgdXNlcik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgTG9ja1VzZXIodXNlcikge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdChcIlVzZXIvbG9ja1wiLCB1c2VyKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBEZWxldGVVc2VyKHVzZXIpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLlBvc3QoXCJVc2VyL2RlbGV0ZVwiLCB1c2VyKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBMb2dpbih1OiBVc2VyKSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KFwiVXNlci9sb2dpblwiLCB1KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBDaGFuZ2VQYXNzd29yZCh1KSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5Qb3N0KFwiVXNlci9jaGFuZ2VwYXNzd29yZC1zZWxmXCIsIHUpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIENoYW5nZVBhc3N3b3JkQWRtaW4odSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdChcIlVzZXIvY2hhbmdlcGFzc3dvcmQtYWRtaW5cIiwgdSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgU2VsZlJlc2V0KHU6IFVzZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdChcIkJhc2ljL1NlbGZSZXNldFwiLCB1KTtcclxuICB9XHJcblxyXG5cclxuICAvL1JvbGVzXHJcblxyXG4gIHB1YmxpYyBQb3N0Um9sZShyb2xlLCBhY3Rpb246IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdChgUm9sZT9hY3Rpb249JHthY3Rpb259YCwgcm9sZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgUHV0Um9sZShyb2xlKSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwU2VydmljZS5QdXQoXCJSb2xlXCIsIHJvbGUpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIEdldFJvbGUoYnk6IHN0cmluZywgdmFsOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLkdldChcIlJvbGUvYWxsL3hcIik7XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIC8vTG9nc1xyXG4gIHB1YmxpYyBHZXRMb2coYnk6IHN0cmluZywgdmFsOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLkdldChcIkxvZy9hbGwveFwiKTtcclxuICB9XHJcblxyXG5cclxuICAvL1NldHRpbmdzXHJcbiAgcHVibGljIEdldFNldHRpbmcoYnk6IHN0cmluZywgdmFsOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBTZXJ2aWNlLkdldChcIlNldHRpbmcvYWxsL3hcIik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgVXBkYXRlU2V0dGluZyhzZXR0aW5nLCBhY3Rpb246IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuUG9zdChgU2V0dGluZz9hY3Rpb249JHthY3Rpb259YCwgc2V0dGluZyk7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
|
package/fesm2015/tin-spa.mjs
CHANGED
|
@@ -1463,7 +1463,7 @@ class DataServiceLib {
|
|
|
1463
1463
|
{ name: 'employmentStatus', alias: 'Employment Status', type: 'select', loadAction: { url: 'employees/list/employment-status' } },
|
|
1464
1464
|
{ name: 'activeStatus', alias: 'Active Status', type: 'select', loadAction: { url: 'employees/list/active-status' } },
|
|
1465
1465
|
{ name: 'passportNumber', type: 'text', alias: 'Passport Number' },
|
|
1466
|
-
{ name: 'userName', type: '
|
|
1466
|
+
{ name: 'userName', type: 'select', alias: 'User', loadAction: { url: 'user/list/x' }, optionDisplay: 'name', optionValue: 'value', nullable: true, infoMessage: 'Related user account' },
|
|
1467
1467
|
{ name: 'address', type: 'text', rows: 2, span: true },
|
|
1468
1468
|
{ name: 'phone', type: 'text' },
|
|
1469
1469
|
{ name: 'email', type: 'text' },
|
|
@@ -10009,16 +10009,18 @@ class LogsComponent {
|
|
|
10009
10009
|
title: 'Logs',
|
|
10010
10010
|
tableConfig: {
|
|
10011
10011
|
showFilter: true,
|
|
10012
|
-
minColumns: ['dateLogged', '
|
|
10012
|
+
minColumns: ['dateLogged', 'userFullName', 'details'],
|
|
10013
10013
|
flatButtons: this.dataService.appConfig.multitenant,
|
|
10014
|
+
logResponse: true,
|
|
10014
10015
|
columns: [
|
|
10015
10016
|
{ name: 'dateLogged', type: 'datetimesec', alias: 'Date' },
|
|
10016
10017
|
{ name: 'userName', alias: 'User' },
|
|
10017
|
-
{ name: '
|
|
10018
|
+
{ name: 'userFullName', alias: 'Name' },
|
|
10018
10019
|
{ name: 'source', },
|
|
10019
10020
|
{ name: 'details', maxLength: 150 },
|
|
10021
|
+
{ name: 'tenantName', alias: 'Tenant', hiddenCondition: x => !this.dataService.appConfig.multitenant },
|
|
10020
10022
|
],
|
|
10021
|
-
loadAction: { url: '
|
|
10023
|
+
loadAction: { url: 'logs/all/x' },
|
|
10022
10024
|
buttons: [
|
|
10023
10025
|
// { name: 'view', dialog : true, tip: 'View Log' },
|
|
10024
10026
|
]
|