tango-app-ui-ticket-user 3.0.20-dev → 3.0.21-dev
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/installation/installation.component.mjs +8 -6
- package/esm2022/lib/components/tango-ticket-users/tango-ticket-users.component.mjs +3 -3
- package/esm2022/lib/components/tickets/tickets.component.mjs +10 -8
- package/fesm2022/tango-app-ui-ticket-user.mjs +18 -14
- package/fesm2022/tango-app-ui-ticket-user.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -273,11 +273,13 @@ export class InstallationComponent {
|
|
|
273
273
|
data = this.secondaryIssues.filter((item) => item.checked).map((item) => item.name);
|
|
274
274
|
}
|
|
275
275
|
}
|
|
276
|
-
if (this.
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
276
|
+
if (this.selectedOption != 'Application Issues') {
|
|
277
|
+
if (this.ticketInfo?.ticketDetails.issueStatus === 'notidentified' && data && data.length == 0 || this.ticketInfo?.ticketDetails.ticketType == 'refreshticket' && this.ticketInfo?.ticketDetails?.refreshTicketStatus === 'notidentified' && data && data.length == 0) {
|
|
278
|
+
return this.toastService.getErrorToast("Please Select Issues");
|
|
279
|
+
}
|
|
280
|
+
else if (this.ticketInfo?.ticketDetails.issueStatus === 'identified' && this.comments == '' || this.ticketInfo?.ticketDetails.ticketType == 'refreshticket' && this.ticketInfo?.ticketDetails?.refreshTicketStatus === 'identified' && this.comments == 0) {
|
|
281
|
+
return this.toastService.getErrorToast("Please Enter Comments");
|
|
282
|
+
}
|
|
281
283
|
}
|
|
282
284
|
let ticketDetails = {
|
|
283
285
|
"ticketId": this.ticketId,
|
|
@@ -470,4 +472,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
|
|
|
470
472
|
type: HostListener,
|
|
471
473
|
args: ['document:click', ['$event']]
|
|
472
474
|
}] } });
|
|
473
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdGFsbGF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLXRpY2tldC11c2VyL3NyYy9saWIvY29tcG9uZW50cy9pbnN0YWxsYXRpb24vaW5zdGFsbGF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLXRpY2tldC11c2VyL3NyYy9saWIvY29tcG9uZW50cy9pbnN0YWxsYXRpb24vaW5zdGFsbGF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBd0MsTUFBTSxlQUFlLENBQUM7QUFFekcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDdkYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFRekUsaUZBQWlGO0FBQ2pGLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7Ozs7QUFPMUMsTUFBTSxPQUFPLHFCQUFxQjtJQXdEWjtJQUFnQztJQUMxQztJQUNBO0lBQ0E7SUFDQTtJQUNEO0lBM0RULFdBQVcsR0FBUSxRQUFRLENBQUM7SUFDNUIsYUFBYSxHQUFRLGlCQUFpQixDQUFDO0lBQ3ZDLGdCQUFnQixHQUFZLEtBQUssQ0FBQTtJQUNqQyxlQUFlLENBQU07SUFDckIsV0FBVyxDQUFNO0lBQ2pCLFFBQVEsR0FBUSxFQUFFLENBQUM7SUFDbkIsYUFBYSxDQUFNO0lBQ25CLGFBQWEsR0FBVSxDQUFDLGlCQUFpQixFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDdkYsV0FBVyxHQUFVLENBQUMsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSwwQkFBMEIsRUFBRSxF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aXN0ZW5lciwgVmlld0NoaWxkLCBDaGFuZ2VEZXRlY3RvclJlZiwgT25Jbml0LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTmdiTW9kYWwsIE5nYk1vZGFsUmVmLCBOZ2JBY3RpdmVNb2RhbCwgTmdiVG9vbHRpcCB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcclxuaW1wb3J0IHsgQ29udGFjdERldGFpbHNDb21wb25lbnQgfSBmcm9tICcuLi9jb250YWN0LWRldGFpbHMvY29udGFjdC1kZXRhaWxzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRha2VyZW1vdGVDb21wb25lbnQgfSBmcm9tICcuLi90YWtlcmVtb3RlL3Rha2VyZW1vdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG4vLyBpbXBvcnQgeyBUb2FzdFNlcnZpY2UgfSBmcm9tICdwcm9qZWN0cy90YW5nby1hcHAtc2hhcmVkL3NyYy9wdWJsaWMtYXBpJztcclxuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlIH0gZnJvbSAndGFuZ28tYXBwLXVpLXNoYXJlZCc7XHJcbmltcG9ydCB7IERhdGFTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZGF0YS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVGlja2V0c1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy90aWNrZXQtaW5mcmEuc2VydmljZSc7XHJcbmltcG9ydCB7IEdsb2JhbFN0YXRlU2VydmljZSB9IGZyb20gJ3RhbmdvLWFwcC11aS1nbG9iYWwnO1xyXG4vLyBpbXBvcnQgeyBHbG9iYWxTdGF0ZVNlcnZpY2UgfSBmcm9tICdwcm9qZWN0cy90YW5nby1hcHAtc2hhcmVkL3NyYy9wdWJsaWMtYXBpJztcclxuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1pbnN0YWxsYXRpb24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnN0YWxsYXRpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9pbnN0YWxsYXRpb24uY29tcG9uZW50LnNjc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbnN0YWxsYXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcblxyXG4gIFNlbGVjdGVkVGFiOiBhbnkgPSAndGlja2V0JztcclxuICBzZWxlY3RlZElzc3VlOiBhbnkgPSAnSW50ZXJuZXQgSXNzdWVzJztcclxuICBwcmVyZXF1ZXN0RmFpbGVkOiBib29sZWFuID0gZmFsc2VcclxuICBzZWNvbmRhcnlJc3N1ZXM6IGFueTtcclxuICBpc3N1ZVN0YXR1czogYW55O1xyXG4gIGNvbW1lbnRzOiBhbnkgPSAnJztcclxuICBwcmltYXJ5SXNzdWVzOiBhbnk7XHJcbiAgZHJvcGRvd25JdGVtczogYW55W10gPSBbJ0ludGVybmV0IElzc3VlcycsICdDYW1lcmEgSXNzdWVzJywgJ1N5c3RlbSBJc3N1ZXMnLCAnT3RoZXJzJ107XHJcbiAgb3RoZXJzSXNzdWU6IGFueVtdID0gW3sgbmFtZTogJ1Bvd2VyIFNodXRkb3duJyB9LCB7IG5hbWU6ICdTdG9yZSBUZW1wb3JhcmlseSBDbG9zZWQnIH0sIHsgbmFtZTogJ0FwcGxpY2F0aW9uIElzc3VlcycgfV1cclxuICBjYW1lcmFJc3N1ZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGNhbWVyYVNlbGVjdFdvcms6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIHNob3dTdWJtaXQ6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIGNhbWVyYVNlbGVjdDogYW55O1xyXG4gIHN0YXRlOiBhbnk7XHJcbiAgbG9hZGluZzogYm9vbGVhbiA9IHRydWU7XHJcbiAgbm9EYXRhOiBib29sZWFuID0gZmFsc2U7XHJcbiAgaW5wdXRIaWJlcm5hdGlvbjogYW55ID0gJzAwJztcclxuICBjb3VudDogYW55ID0gMDtcclxuICBpc0NoZWNrZWQ6IGJvb2xlYW5bXSA9IFtdO1xyXG4gIHJlc29sdmVkSXNzdWU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBkcm9wRG93bjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHRpY2tldElkOiBzdHJpbmcgfCBudWxsO1xyXG4gIHRpY2tldEluZm86IGFueTtcclxuICBhY3RpdmVUaWNrZXREZXRhaWxzOiBhbnk7XHJcbiAgc3RvcmVBZGRyZXNzOiBhbnk7XHJcbiAgcmVwbHlPcGVuOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcmVwbGllZElzc3VlOiBhbnk7XHJcbiAgdmlld1RpY2tldERhdGE6IGFueTtcclxuICBjdXJyZW50VGltZTogRGF0ZSA9IG5ldyBEYXRlKCk7XHJcbiAgdGFyZ2V0VGltZTogRGF0ZVxyXG4gIHNlbGVjdGVkRmlsZXM6IGFueSA9IFtdO1xyXG4gIGJyYW5kTG9nbzogc3RyaW5nIHwgQXJyYXlCdWZmZXIgfCBudWxsID0gbnVsbDtcclxuICBsYXN0TW9kaWZpZWREYXRlU3RyaW5nOiBzdHJpbmc7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2ZpbGVJbnB1dCcpIGZpbGVJbnB1dDogYW55O1xyXG4gIEBWaWV3Q2hpbGQoJ3Rvb2x0aXBDb250ZW50JykgdG9vbHRpcENvbnRlbnQhOiBOZ2JUb29sdGlwO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQgPSBuZXcgU3ViamVjdCgpO1xyXG4gIGhlYWRlckZpbHRlcjogYW55O1xyXG4gIHVzZXI6IGFueTtcclxuICB1cGRhdGVkRGF0ZTogRGF0ZTtcclxuICBpc0dyZWF0ZXJUaGFuNV8zMEhvdXJzOiBib29sZWFuO1xyXG4gIHN0b3JlSWQ6IHN0cmluZyB8IG51bGw7XHJcbiAgc3RvcmVEcm9wRG93bjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHNlbGVjdGVkT3B0aW9uOiBhbnk7XHJcbiAgSGliZXJuYXRpb246IGFueTtcclxuICBjbGllbnRJZDogYW55O1xyXG4gIGluc3RhbGxhdGlvblN0YXJ0OiBib29sZWFuID0gdHJ1ZTtcclxuICBjb25maWd1cmluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGluc3RhbGxhdGlvblJlc3VtZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHNob3dmb3JtOiBib29sZWFuID0gZmFsc2U7XHJcbiAgc3RvcmVOYW1lOiBhbnk7XHJcbiAgbm90d29ya2luZ0NhbWFyYWxpc3Q6IGFueVtdID0gW107XHJcbiAgdXNlclR5cGU6IGFueTtcclxuICBlcnJvck1lc3NhZ2U6IHN0cmluZztcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG1vZGFsU2VydmljZTogTmdiTW9kYWwsIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIHNlcnZpY2U6IFRpY2tldHNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICAgIHByaXZhdGUgdG9hc3RTZXJ2aWNlOiBUb2FzdFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgZ3M6IEdsb2JhbFN0YXRlU2VydmljZSkge1xyXG4gICAgdGhpcy50aWNrZXRJZCA9IHRoaXMucm91dGUuc25hcHNob3QucGFyYW1NYXAuZ2V0KCd0aWNrZXRJZCcpO1xyXG4gICAgdGhpcy5zdG9yZUlkID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJhbU1hcC5nZXQoJ3N0b3JlSWQnKTtcclxuICAgIHRoaXMudmlld1RpY2tldCgpXHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50J10pXHJcbiAgb25DbGljayhldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgY29uc3RcclxuICAgICAgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgaWYgKCF0YXJnZXQuY2xvc2VzdCgnLmRyb3BEb3duJykpIHtcclxuICAgICAgdGhpcy5kcm9wRG93biA9IGZhbHNlO1xyXG4gICAgfVxyXG4gICAgaWYgKCF0YXJnZXQuY2xvc2VzdCgnLnN0b3JlRHJvcERvd24nKSkge1xyXG4gICAgICB0aGlzLnN0b3JlRHJvcERvd24gPSBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgbGV0IHVzZXJJbmZvID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgndXNlci1pbmZvJykgfHwgJ3t9JylcclxuICAgIHRoaXMudXNlclR5cGUgPSB1c2VySW5mby51c2VyVHlwZVxyXG4gICAgdGhpcy5ncy5kYXRhUmFuZ2VWYWx1ZS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChkYXRhOiBhbnkpID0+IHtcclxuICAgICAgaWYgKGRhdGEgIT0gbnVsbCkge1xyXG4gICAgICAgIHRoaXMudXNlciA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3VzZXItaW5mbycpIHx8IFwiXCIpXHJcbiAgICAgICAgdGhpcy5oZWFkZXJGaWx0ZXIgPSBkYXRhO1xyXG4gICAgICAgIHRoaXMuYWN0aXZlVGlja2V0KCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xyXG4gIH1cclxuXHJcbiAgdmlld1RpY2tldCgpIHtcclxuICAgIGxldCBwYXJhbXMgPSB7XHJcbiAgICAgIHRpY2tldElkOiB0aGlzLnRpY2tldElkXHJcbiAgICB9XHJcbiAgICB0aGlzLnNlcnZpY2Uudmlld1RpY2tldChwYXJhbXMpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG5cclxuICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy50aWNrZXRJbmZvID0gcmVzPy5kYXRhO1xyXG4gICAgICAgICAgaWYgKHRoaXMudGlja2V0SW5mby50aWNrZXREZXRhaWxzLmluc3RhbGxhdGlvblN0YXR1cyA9PSAnaW5zdGFsbGF0aW9uZmFpbGVkJykge1xyXG4gICAgICAgICAgICB0aGlzLmNvbmZpZ3VyaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuaW5zdGFsbGF0aW9uU3RhcnQgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5pbnN0YWxsYXRpb25SZXN1bWUgPSB0cnVlO1xyXG4gICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnRpY2tldEluZm8udGlja2V0RGV0YWlscy5pbnN0YWxsYXRpb25TdGF0dXMgPT0gJ3BhaXJlZCcpIHtcclxuICAgICAgICAgICAgdGhpcy5jb25maWd1cmluZyA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuaW5zdGFsbGF0aW9uU3RhcnQgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5pbnN0YWxsYXRpb25SZXN1bWUgPSBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMudmlld1RpY2tldERhdGEgPSByZXMuZGF0YS50aWNrZXRBY3Rpdml0eS5zbGljZSgpLnJldmVyc2UoKTtcclxuICAgICAgICAgIHRoaXMudmlld1RpY2tldERhdGEuZm9yRWFjaCgoZTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIGUudGltZVN0YW1wID0gdGhpcy5nZXRSZWxhdGl2ZVRpbWUoZS50aW1lU3RhbXApO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICByZXMuZGF0YS50aWNrZXRBY3Rpdml0eS5mb3JFYWNoKChlbGVtZW50OiBhbnkpID0+IHtcclxuICAgICAgICAgICBcclxuXHJcbiAgICAgICAgICAgIGlmIChlbGVtZW50LmFjdGlvblR5cGUgPT0gJ3ByZXJlcXVlc3RjaGVja2ZhaWxlZCcgJiYgcmVzLmRhdGE/LnRpY2tldERldGFpbHM/Lmlzc3VlU3RhdHVzICE9ICdpZGVudGlmaWVkJykge1xyXG5cclxuICAgICAgICAgICAgICB0aGlzLnByZXJlcXVlc3RGYWlsZWQgPSB0cnVlXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgaWYgKHJlcz8uZGF0YT8uc3RhdHVzID09ICdvcGVuJykge1xyXG4gICAgICAgICAgICB0aGlzLnN0YXR1c1VwZGF0ZSgpXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpXHJcblxyXG5cclxuICAgICAgfSxcclxuICAgICAgZXJyb3I6IChlcnIpID0+IHtcclxuICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuXHJcbiAgICAgIH0sXHJcbiAgICAgIGNvbXBsZXRlKCkge1xyXG5cclxuICAgICAgfVxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIGdldENhbWVyYUxpc3Qobm90d29ya2luZ0NhbWVyYTogYW55KSB7XHJcbiAgICBsZXQgcGFyYW1zID0ge1xyXG4gICAgICBjYW1lcmE6IG5vdHdvcmtpbmdDYW1lcmFcclxuICAgIH1cclxuICAgIHRoaXMuc2VydmljZS5nZXRDYW1lcmFMaXN0KHBhcmFtcykucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT0gMjAwKSB7XHJcbiAgICAgICAgICB0aGlzLm5vdHdvcmtpbmdDYW1hcmFsaXN0ID0gcmVzLmRhdGFcclxuICAgICAgICAgIGNvbnNvbGUubG9nKCdub3R3b3JraW5nQ2FtYXJhbGlzdCcsIHRoaXMubm90d29ya2luZ0NhbWFyYWxpc3QpXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgdXBkYXRlSXNzdWUoKSB7XHJcbiAgICB0aGlzLnNob3dmb3JtID0gdHJ1ZVxyXG4gICAgdGhpcy5wcmltYXJ5UmVhc29uKCk7XHJcbiAgICB0aGlzLnNlY29uZGFyeVJlYXNvbih0aGlzLnNlbGVjdGVkSXNzdWUpO1xyXG4gIH1cclxuXHJcbiAgZ2V0UmVsYXRpdmVUaW1lKHRpbWVzdGFtcDogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSh0aW1lc3RhbXApO1xyXG4gICAgY29uc3QgY3VycmVudERhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gICAgY29uc3QgZGlmZmVyZW5jZSA9IGN1cnJlbnREYXRlLmdldFRpbWUoKSAtIGRhdGUuZ2V0VGltZSgpO1xyXG4gICAgY29uc3Qgc2Vjb25kcyA9IE1hdGguZmxvb3IoZGlmZmVyZW5jZSAvIDEwMDApO1xyXG4gICAgY29uc3QgbWludXRlcyA9IE1hdGguZmxvb3Ioc2Vjb25kcyAvIDYwKTtcclxuICAgIGNvbnN0IGhvdXJzID0gTWF0aC5mbG9vcihtaW51dGVzIC8gNjApO1xyXG4gICAgY29uc3QgZGF5cyA9IE1hdGguZmxvb3IoaG91cnMgLyAyNCk7XHJcblxyXG4gICAgaWYgKGRheXMgPiAwKSB7XHJcbiAgICAgIHJldHVybiBkYXlzID09PSAxID8gJzEgZGF5IGFnbycgOiBgJHtkYXlzfSBkYXlzIGFnb2A7XHJcbiAgICB9IGVsc2UgaWYgKGhvdXJzID4gMCkge1xyXG4gICAgICByZXR1cm4gaG91cnMgPT09IDEgPyAnMSBob3VyIGFnbycgOiBgJHtob3Vyc30gaG91cnMgYWdvYDtcclxuICAgIH0gZWxzZSBpZiAobWludXRlcyA+IDApIHtcclxuICAgICAgcmV0dXJuIG1pbnV0ZXMgPT09IDEgPyAnMSBtaW51dGUgYWdvJyA6IGAke21pbnV0ZXN9IG1pbnV0ZXMgYWdvYDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiAnSnVzdCBub3cnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYWN0aXZlVGlja2V0KCkge1xyXG4gICAgbGV0IGRhdGEgPSB7XHJcbiAgICAgIHVzZXJJZDogdGhpcy51c2VyLl9pZCxcclxuICAgICAgaXNzdWVUeXBlOiBcImluc3RhbGxhdGlvblwiLFxyXG4gICAgICBmcm9tRGF0ZTogdGhpcy5oZWFkZXJGaWx0ZXI/LmRhdGU/LnN0YXJ0RGF0ZSxcclxuICAgICAgdG9EYXRlOiB0aGlzLmhlYWRlckZpbHRlcj8uZGF0ZT8uZW5kRGF0ZSxcclxuICAgIH1cclxuICAgIHRoaXMuc2VydmljZS5hY3RpdmVUaWNrZXQoZGF0YSkucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMuYWN0aXZlVGlja2V0RGV0YWlscyA9IHJlcz8uZGF0YTtcclxuICAgICAgICB0aGlzLnN0b3JlQWRkcmVzcyA9IHRoaXMuYWN0aXZlVGlja2V0RGV0YWlscz8uZGF0YT8uZmlsdGVyKChpdGVtOiBhbnkpID0+IHtcclxuICAgICAgICAgIHJldHVybiBpdGVtLnN0b3JlSWQgPT09IHRoaXMuc3RvcmVJZDtcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLnN0b3JlQWRkcmVzcyA9IHRoaXMuc3RvcmVBZGRyZXNzWzBdO1xyXG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9LFxyXG5cclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBnZXRzdG9yZUFkZHJlc3MoZGV0YWlsczogYW55KSB7XHJcbiAgICB0aGlzLnN0b3JlQWRkcmVzcyA9IGRldGFpbHNcclxuICAgIHRoaXMuc3RvcmVOYW1lID0gdGhpcy5zdG9yZUFkZHJlc3Muc3RvcmVOYW1lO1xyXG4gICAgdGhpcy5zdG9yZUlkID0gdGhpcy5zdG9yZUFkZHJlc3Muc3RvcmVJZFxyXG4gICAgdGhpcy5jbGllbnRJZCA9IHRoaXMuc3RvcmVBZGRyZXNzLmNsaWVudElkXHJcbiAgICB0aGlzLnN0b3JlRHJvcERvd24gPSBmYWxzZTtcclxuICAgIHRoaXMudGlja2V0SWQgPSBkZXRhaWxzLnRpY2tldElkXHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKGB0aWNrZXRzL3VzZXJzL2luc3RhbGxhdGlvbmluZm8vJHtkZXRhaWxzLnRpY2tldElkfS8ke2RldGFpbHMuc3RvcmVJZH1gKVxyXG4gICAgdGhpcy52aWV3VGlja2V0KCk7XHJcbiAgfVxyXG5cclxuICBQcmV2Um91dGUoKSB7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKCcvdGlja2V0cy91c2Vycz90eXBlPWluc3RhbGxhdGlvbicpXHJcbiAgfVxyXG5cclxuICBwcmltYXJ5UmVhc29uKCkge1xyXG4gICAgbGV0IHBhcmFtcyA9IHtcclxuICAgICAgXCJuYW1lXCI6IHRoaXMuc2VsZWN0ZWRJc3N1ZSxcclxuICAgICAgXCJvcmRlclwiOiAyXHJcbiAgICB9XHJcbiAgICB0aGlzLnNlcnZpY2UucHJpbWFyeVJlYXNvbihwYXJhbXMpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgICAgdGhpcy5wcmltYXJ5SXNzdWVzID0gcmVzO1xyXG4gICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICBlcnJvcjogKGVycikgPT4ge1xyXG4gICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG5cclxuICAgICAgfSxcclxuICAgICAgY29tcGxldGUoKSB7XHJcblxyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgc2Vjb25kYXJ5UmVhc29uKHZhbHVlOiBhbnkpIHtcclxuICAgIGxldCBwYXJhbXMgPSB7IFwicHJpbWFyeUlzc3VlXCI6IHZhbHVlIH1cclxuICAgIHRoaXMuc2VydmljZS5zZWNvbmRhcnlSZWFzb24ocGFyYW1zKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKHtcclxuICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgIHRoaXMuc2Vjb25kYXJ5SXNzdWVzID0gcmVzLmRhdGEucmVzdWx0O1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgfSxcclxuICAgICAgZXJyb3IoZXJyKSB7XHJcblxyXG4gICAgICB9LFxyXG4gICAgICBjb21wbGV0ZTogKCkgPT4ge1xyXG4gICAgICB9LFxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHVwZGF0ZVRpY2tldCgpIHtcclxuICAgIHRoaXMuc2hvd2Zvcm0gPSBmYWxzZTtcclxuICAgIHRoaXMucHJlcmVxdWVzdEZhaWxlZCA9IGZhbHNlO1xyXG4gICAgbGV0IGRhdGFcclxuICAgIGlmICh0aGlzLnNlY29uZGFyeUlzc3VlcyAmJiB0aGlzLnNlY29uZGFyeUlzc3Vlcz8ubGVuZ3RoID4gMCkge1xyXG4gICAgICBpZiAodGhpcy5zZWxlY3RlZElzc3VlID09ICdPdGhlcnMnKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRPcHRpb24gPT09ICdBcHBsaWNhdGlvbiBJc3N1ZXMnKSB7XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkSXNzdWUgPSAnQXBwbGljYXRpb24gSXNzdWVzJztcclxuICAgICAgICAgIGRhdGEgPSBbXTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5zZWxlY3RlZElzc3VlID0gJ1N0b3JlIE9wZXJhdGlvbiBJc3N1ZXMnO1xyXG4gICAgICAgICAgZGF0YSA9IFt0aGlzLnNlbGVjdGVkT3B0aW9uXVxyXG4gICAgICAgIH1cclxuICAgICAgICAvLyBkYXRhID0gdGhpcy5vdGhlcnNJc3N1ZS5maWx0ZXIoKGl0ZW06IGFueSkgPT4gaXRlbS5jaGVja2VkKS5tYXAoKGl0ZW06IGFueSkgPT4gaXRlbS5uYW1lKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBkYXRhID0gdGhpcy5zZWNvbmRhcnlJc3N1ZXMuZmlsdGVyKChpdGVtOiBhbnkpID0+IGl0ZW0uY2hlY2tlZCkubWFwKChpdGVtOiBhbnkpID0+IGl0ZW0ubmFtZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGlmKHRoaXMudGlja2V0SW5mbz8udGlja2V0RGV0YWlscy5pc3N1ZVN0YXR1cyA9PT0nbm90aWRlbnRpZmllZCcmJmRhdGEmJmRhdGEubGVuZ3RoPT0wfHx0aGlzLnRpY2tldEluZm8/LnRpY2tldERldGFpbHMudGlja2V0VHlwZT09J3JlZnJlc2h0aWNrZXQnJiZ0aGlzLnRpY2tldEluZm8/LnRpY2tldERldGFpbHM/LnJlZnJlc2hUaWNrZXRTdGF0dXM9PT0nbm90aWRlbnRpZmllZCcmJmRhdGEmJmRhdGEubGVuZ3RoPT0wKXtcclxuICAgICAgcmV0dXJuICB0aGlzLnRvYXN0U2VydmljZS5nZXRFcnJvclRvYXN0KFwiUGxlYXNlIFNlbGVjdCBJc3N1ZXNcIilcclxuICAgIH1lbHNlIGlmKHRoaXMudGlja2V0SW5mbz8udGlja2V0RGV0YWlscy5pc3N1ZVN0YXR1cyA9PT0naWRlbnRpZmllZCcmJnRoaXMuY29tbWVudHMgPT0nJ3x8dGhpcy50aWNrZXRJbmZvPy50aWNrZXREZXRhaWxzLnRpY2tldFR5cGU9PSdyZWZyZXNodGlja2V0JyYmdGhpcy50aWNrZXRJbmZvPy50aWNrZXREZXRhaWxzPy5yZWZyZXNoVGlja2V0U3RhdHVzPT09J2lkZW50aWZpZWQnJiZ0aGlzLmNvbW1lbnRzPT0wKXtcclxuICAgICAgcmV0dXJuICB0aGlzLnRvYXN0U2VydmljZS5nZXRFcnJvclRvYXN0KFwiUGxlYXNlIEVudGVyIENvbW1lbnRzXCIpXHJcbiAgICB9XHJcbiAgICBsZXQgdGlja2V0RGV0YWlscyA9IHtcclxuICAgICAgXCJ0aWNrZXRJZFwiOiB0aGlzLnRpY2tldElkLFxyXG4gICAgICBcInByaW1hcnlcIjogdGhpcy5zZWxlY3RlZElzc3VlLFxyXG4gICAgICBcInNlY29uZGFyeVwiOiBkYXRhLFxyXG4gICAgICBcImNvbW1lbnRcIjogdGhpcy5jb21tZW50c1xyXG4gICAgfVxyXG4gICAgdGhpcy5zZXJ2aWNlLnVwZGF0ZVRpY2tldCh0aWNrZXREZXRhaWxzKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKHtcclxuICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLmdldFN1Y2Nlc3NUb2FzdChyZXMubWVzc2FnZSlcclxuICAgICAgICAgIHRoaXMudmlld1RpY2tldCgpXHJcbiAgICAgICAgICB0aGlzLmNvbW1lbnRzID0gJydcclxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJc3N1ZSA9IFtdXHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLmdldEVycm9yVG9hc3QocmVzLm1lc3NhZ2UpXHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICBlcnJvcjogKGVycikgPT4ge1xyXG4gICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLmdldEVycm9yVG9hc3QoZXJyLkVycm9yKVxyXG4gICAgICB9LFxyXG4gICAgICBjb21wbGV0ZSgpIHtcclxuXHJcbiAgICAgIH0sXHJcbiAgICB9KVxyXG5cclxuICB9XHJcblxyXG4gIHN0YXR1c1VwZGF0ZSgpIHtcclxuICAgIGxldCBkYXRhID0ge1xyXG4gICAgICBcInRpY2tldElkXCI6IHRoaXMudGlja2V0SWQsXHJcbiAgICAgIFwic3RhdHVzXCI6IFwiaW5wcm9ncmVzc1wiXHJcbiAgICB9XHJcbiAgICB0aGlzLnNlcnZpY2Uuc3RhdHVzVXBkYXRlKGRhdGEpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICBjb25zb2xlLmxvZyhyZXMpXHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBhZGRDb21tZW50KCkge1xyXG4gICAgdGhpcy5jb21tZW50cyA9IHRoaXMuY29tbWVudHNcclxuICB9XHJcblxyXG4gIHNlbGVjdEl0ZW0odmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5zaG93U3VibWl0ID0gdHJ1ZVxyXG4gICAgdGhpcy5zZWxlY3RlZElzc3VlID0gdmFsdWU7XHJcbiAgICB0aGlzLnNlY29uZGFyeVJlYXNvbih0aGlzLnNlbGVjdGVkSXNzdWUpXHJcbiAgICAvLyBpZiAodGhpcy5zZWxlY3RlZElzc3VlID09ICdDYW1lcmEgSXNzdWVzJykge1xyXG4gICAgLy8gICB0aGlzLnNob3dTdWJtaXQgPSBmYWxzZVxyXG4gICAgLy8gfVxyXG4gICAgdGhpcy5kcm9wRG93biA9IGZhbHNlO1xyXG4gIH1cclxuICBkb3dubG9hZGltYWdlKHVybDogYW55KSB7XHJcbiAgICBjb25zdCBhID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xyXG4gICAgYS5ocmVmID0gdXJsO1xyXG4gICAgYS5kb3dubG9hZCA9IHVybDtcclxuICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYSk7XHJcbiAgICBhLmNsaWNrKCk7XHJcbiAgfVxyXG4gIG9wZW5SZW1vdGUoKSB7XHJcbiAgICBjb25zdCBtb2RhbFJlZiA9IHRoaXMubW9kYWxTZXJ2aWNlLm9wZW4oVGFrZXJlbW90ZUNvbXBvbmVudCwgeyBjZW50ZXJlZDogdHJ1ZSwgc2Nyb2xsYWJsZTogdHJ1ZSwgfSk7XHJcbiAgICBtb2RhbFJlZi5jb21wb25lbnRJbnN0YW5jZS5zdG9yZURldGFpbHMgPSB7XHJcbiAgICAgIHN0b3JlTmFtZTogdGhpcy5zdG9yZUFkZHJlc3M/LnN0b3JlTmFtZSxcclxuICAgICAgY2xpZW50SWQ6IHRoaXMuc3RvcmVBZGRyZXNzPy5jbGllbnRJZCxcclxuICAgICAgc3RvcmVJZDogdGhpcy5zdG9yZUFkZHJlc3M/LnN0b3JlSWRcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNhbWVyYVNlbGVjdGVkKHZhbHVlOiBhbnkpIHtcclxuICAgIHRoaXMuY2FtZXJhU2VsZWN0ID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBwcm9jZWRkSW1hZ2UodmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5zaG93U3VibWl0ID0gdHJ1ZTtcclxuICAgIHRoaXMuY2FtZXJhSXNzdWUgPSB0cnVlO1xyXG4gICAgdGhpcy5jYW1lcmFTZWxlY3RXb3JrID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBTZWxlY3RlZFRhYnModmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5TZWxlY3RlZFRhYiA9IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgdG9nZ2xlQ2hlY2tib3goaW5kZXg6IG51bWJlcikge1xyXG4gICAgdGhpcy5zZWNvbmRhcnlJc3N1ZXNbaW5kZXhdLmNoZWNrZWQgPSAhdGhpcy5zZWNvbmRhcnlJc3N1ZXNbaW5kZXhdLmNoZWNrZWQ7XHJcbiAgfVxyXG4gIHRvZ2dsZVJhZGlvYm94KG90aGVyczogYW55KSB7XHJcbiAgICB0aGlzLnNlbGVjdGVkT3B0aW9uID0gb3RoZXJzLm5hbWU7XHJcbiAgfVxyXG4gIGRlY3Jlc2VDb3VudCgpOiBhbnkge1xyXG4gICAgdGhpcy5jb3VudCAtPSAxO1xyXG4gIH1cclxuXHJcbiAgaW5jcmVhc2VDb3VudCgpOiBhbnkge1xyXG4gICAgdGhpcy5jb3VudCArPSAxO1xyXG4gIH1cclxuXHJcbiAgb3BlbkNvbnRhY3QoKSB7XHJcblxyXG4gICAgY29uc3QgbW9kYWxSZWYgPSB0aGlzLm1vZGFsU2VydmljZS5vcGVuKENvbnRhY3REZXRhaWxzQ29tcG9uZW50LFxyXG4gICAgICB7XHJcbiAgICAgICAgY2VudGVyZWQ6IHRydWUsXHJcbiAgICAgICAgc2Nyb2xsYWJsZTogdHJ1ZSxcclxuICAgICAgfSk7XHJcbiAgICBtb2RhbFJlZi5jb21wb25lbnRJbnN0YW5jZS52YWx1ZSA9IHtcclxuICAgICAgc3RvcmVOYW1lOiB0aGlzLnN0b3JlQWRkcmVzcy5zdG9yZU5hbWUsXHJcbiAgICAgIHN0b3JlSWQ6IHRoaXMuc3RvcmVBZGRyZXNzLnN0b3JlSWQsXHJcbiAgICAgIGNsaWVudElkOiB0aGlzLnN0b3JlQWRkcmVzcy5jbGllbnRJZFxyXG4gICAgfSxcclxuXHJcbiAgICAgIG1vZGFsUmVmLnJlc3VsdC50aGVuKChyZXN1bHQpID0+IHtcclxuXHJcbiAgICAgIH0pXHJcblxyXG5cclxuICB9XHJcblxyXG4gIG9wZW5Ecm9wZG93bihldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB0aGlzLmRyb3BEb3duID0gIXRoaXMuZHJvcERvd247XHJcbiAgfVxyXG4gIHN0b3JlQ2hhbmdlKGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIHRoaXMuc3RvcmVEcm9wRG93biA9ICF0aGlzLnN0b3JlRHJvcERvd247XHJcbiAgfVxyXG4gIG9wZW5GaWxlSW5wdXQoKSB7XHJcbiAgICB0aGlzLmZpbGVJbnB1dC5uYXRpdmVFbGVtZW50LmNsaWNrKCk7XHJcbiAgfVxyXG5cclxuICBvbkZpbGVTZWxlY3RlZChldmVudDogYW55KSB7XHJcbiAgICBpZiAoZXZlbnQudGFyZ2V0LmZpbGVzICYmIGV2ZW50LnRhcmdldC5maWxlcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGxldCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xyXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGV2ZW50LnRhcmdldC5maWxlcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgIGxldCBmaWxlOiBGaWxlID0gZXZlbnQudGFyZ2V0LmZpbGVzW2ldO1xyXG4gICAgICAgIGlmICghZmlsZS50eXBlLnN0YXJ0c1dpdGgoJ2ltYWdlLycpKSB7XHJcbiAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9ICdPbmx5IGltYWdlIGZpbGVzIGFyZSBhbGxvd2VkISc7XHJcbiAgICAgICAgICByZXR1cm47IC8vIFN0b3AgZnVydGhlciBwcm9jZXNzaW5nXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGZvcm1EYXRhLmFwcGVuZCgnaW1nJywgZmlsZSk7XHJcbiAgICAgICAgbGV0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XHJcbiAgICAgICAgcmVhZGVyLm9ubG9hZCA9IChlOiBhbnkpID0+IHtcclxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWRGaWxlcy5wdXNoKHtcclxuICAgICAgICAgICAgbmFtZTogZmlsZS5uYW1lLFxyXG4gICAgICAgICAgICB1cmw6IGUudGFyZ2V0LnJlc3VsdCxcclxuICAgICAgICAgICAgbGFzdE1vZGlmaWVkRGF0ZVN0cmluZzogbmV3IERhdGUoZmlsZS5sYXN0TW9kaWZpZWQpLnRvTG9jYWxlU3RyaW5nKClcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfTtcclxuICAgICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnNlcnZpY2UudXBsb2FkQXR0YWNobWVudHModGhpcy50aWNrZXRJZCwgZm9ybURhdGEpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgICAgdGhpcy50b2FzdFNlcnZpY2UuZ2V0U3VjY2Vzc1RvYXN0KHJlcy5tZXNzYWdlKVxyXG4gICAgICAgICAgICB0aGlzLnZpZXdUaWNrZXQoKVxyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy50b2FzdFNlcnZpY2UuZ2V0RXJyb3JUb2FzdChyZXMubWVzc2FnZSlcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiAoZXJyKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnRvYXN0U2VydmljZS5nZXRFcnJvclRvYXN0KGVyci5FcnJvcilcclxuICAgICAgICB9LFxyXG4gICAgICAgIGNvbXBsZXRlKCkge1xyXG5cclxuICAgICAgICB9LFxyXG4gICAgICB9KVxyXG5cclxuXHJcblxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2xvc2VUb29sdGlwKCkge1xyXG4gICAgaWYgKHRoaXMudG9vbHRpcENvbnRlbnQpIHtcclxuICAgICAgdGhpcy50b29sdGlwQ29udGVudC5jbG9zZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2hvd1Rvb2x0aXAoKSB7XHJcbiAgICBpZiAodGhpcy50b29sdGlwQ29udGVudCkge1xyXG4gICAgICB0aGlzLnRvb2x0aXBDb250ZW50Lm9wZW4oKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHN0YXJ0SW5zdGFsbGF0aW9uKCkge1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wiL3RpY2tldHMvdXNlcnMvaW5zdGFsbGF0aW9uaW5mby9lZGdlLWFwcC9lZGdlLWVtYWlsLWpvdXJuZXlcIl0sIHtcclxuICAgICAgcXVlcnlQYXJhbXM6IHsgc3RvcmVJZDogdGhpcy5zdG9yZUlkLCB0aWNrZXRJZDogdGhpcy50aWNrZXRJZCB9LFxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIENvbmZpZ3VyaW5nKCkge1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wiL3RpY2tldHMvdXNlcnMvaW5zdGFsbGF0aW9uaW5mby9lZGdlLWFwcC9lZGdlLWluc3RhbGxhdGlvblwiXSwge1xyXG4gICAgICBxdWVyeVBhcmFtczogeyBzdG9yZUlkOiB0aGlzLnN0b3JlSWQsIHRpY2tldElkOiB0aGlzLnRpY2tldElkIH1cclxuICAgIH0pO1xyXG4gIH1cclxuICByZXN1bWVJbnN0YWxsYXRpb24oKSB7XHJcblxyXG4gICAgdGhpcy5zZXJ2aWNlLnVwZGF0ZVN0b3JlKHRoaXMudGlja2V0SWQpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoe1xyXG4gICAgfSlcclxuXHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbXCIvdGlja2V0cy91c2Vycy9pbnN0YWxsYXRpb25pbmZvL2VkZ2UtYXBwL2VkZ2UtaW5zdGFsbGF0aW9uXCJdLCB7XHJcbiAgICAgIHF1ZXJ5UGFyYW1zOiB7IHN0b3JlSWQ6IHRoaXMuc3RvcmVJZCwgdGlja2V0SWQ6IHRoaXMudGlja2V0SWQgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwibWItNSBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtYWluY2FyZC1jb250ZW50IGJnLXdoaXRlIHB4LTMgcHktMiBtZS0zIGN1cnNvci1wb2ludGVyXCIgc3R5bGU9XCJ3aWR0aDogZml0LWNvbnRlbnQ7XCIgKGNsaWNrKT1cIlByZXZSb3V0ZSgpXCI+IDxzdmdcclxuICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE0XCIgaGVpZ2h0PVwiMTRcIiB2aWV3Qm94PVwiMCAwIDE0IDE0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTIuODMyNyA2Ljk5OTM1SDEuMTY2MDJNMS4xNjYwMiA2Ljk5OTM1TDYuOTk5MzUgMTIuODMyN00xLjE2NjAyIDYuOTk5MzVMNi45OTkzNSAxLjE2NjAyXCJcclxuICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgIDwvc3ZnPjwvZGl2PlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZnctc2VtaWJvbGQgc3RvcmUtbGFiZWxcIj4ge3tzdG9yZUlkfX08L3NwYW4+IDxzcGFuICpuZ0lmPVwic3RvcmVBZGRyZXNzPy5hZGRyZXNzXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJmdy1ib2xkIHN0b3JlLWxhYmVsXCI+IHxcclxuICAgICAgICAgICAge3tzdG9yZUFkZHJlc3M/LmFkZHJlc3N9fSA8L3NwYW4+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC1wcmltYXJ5XCI+IHt7YWN0aXZlVGlja2V0RGV0YWlscz8uY291bnR9fSB7e3N0b3JlQWRkcmVzcz8uc3RhdHVzfX08L3NwYW4+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInBvc2l0aW9uLXJlbGF0aXZlIHBzLTNcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cInN0b3JlQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLWRlZmF1bHQgdy0xMDAgYnRuLW91dGxpbmUgYnRuLW91dGxpbmUtZGVmYXVsdCByb3VuZGVkLTMgdGV4dC1ub3dyYXAgYm9yZGVyLXZhbCBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYmctd2hpdGVcIj5cclxuICAgICAgICAgICAgICAgIHt7c3RvcmVJZCA/IHN0b3JlSWQgOiBzdG9yZUFkZHJlc3M/LnN0b3JlSWR9fVxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcy0zXCI+PHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNSA3LjVMMTAgMTIuNUwxNSA3LjVcIiBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS42NjY2N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzdG9yZURyb3BEb3duXCIgY2xhc3M9XCJjYXJkIHB5LTEgei0xIHctMjAwcHggcG9zaXRpb24tYWJzb2x1dGUgdG9wLTUwcHggZW5kLTAgaC0zMDBweCBvdmVyZmxvdy1hdXRvXCI+XHJcbiAgICAgICAgICAgICAgICA8dWwgKm5nRm9yPVwibGV0IGRldGFpbHMgb2YgYWN0aXZlVGlja2V0RGV0YWlscz8uZGF0YVwiIGNsYXNzPVwibGlzdC11bnN0eWxlZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaSBbbmdDbGFzc109XCJzdG9yZUFkZHJlc3M/LnN0b3JlSWQgPT09IGRldGFpbHM/LnN0b3JlSWQgPyAnYWN0aXZlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYW1lcmEgcHgtNSBpdGVtcyBmdy1zZW1pYm9sZCBjdXJzb3ItcG9pbnRlciBweS0yXCIgKGNsaWNrKT1cImdldHN0b3JlQWRkcmVzcyhkZXRhaWxzKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7e2RldGFpbHM/LnN0b3JlSWR9fTwvbGk+XHJcbiAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj5cclxuXHJcbjxkaXYgY2xhc3M9XCJjYXJkXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgYm9yZGVyLTAgcHQtM1wiPlxyXG4gICAgICAgIDxoMyBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjYXJkLWxhYmVsIG1iLTIgZnctc2VtaWJvbGRcIj57e3RpY2tldElkfX08L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1zdWIgZnctYm9sZCBtYi0yIGJhZGdlIGJhZGdlLWxpZ2h0LWRlZmF1bHRcIj48c3ZnIGNsYXNzPVwibWUtM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMzg3N185NjU1MilcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOCAxVjNNNCAxVjNNMS41IDVIMTAuNU0yLjUgMkg5LjVDMTAuMDUyMyAyIDEwLjUgMi40NDc3MiAxMC41IDNWMTBDMTAuNSAxMC41NTIzIDEwLjA1MjMgMTEgOS41IDExSDIuNUMxLjk0NzcyIDExIDEuNSAxMC41NTIzIDEuNSAxMFYzQzEuNSAyLjQ0NzcyIDEuOTQ3NzIgMiAyLjUgMlpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8zODc3Xzk2NTUyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgIDwvc3ZnPiB7eyB0aWNrZXRJbmZvPy5jcmVhdGVkQXR8Y3VzdG9tRGF0ZUZvcm1hdH19PC9zcGFuPlxyXG4gICAgICAgIDwvaDM+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtdG9vbGJhclwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBwb3NpdGlvbi1yZWxhdGl2ZSBteS0xXCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJpbnN0YWxsYXRpb25TdGFydCYmKGdzLnVzZXJBY2Nlc3MgfCBhc3luYyk/Lm1hbmFnZV90aWNrZXRzX2lzRWRpdFwiIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tZGVmYXVsdCBweC0yMCBtZS0yIGJ0bi1wcmltYXJ5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInN0YXJ0SW5zdGFsbGF0aW9uKClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgU3RhcnQgSW5zdGFsbGF0aW9uIDxzdmcgY2xhc3M9XCJtcy0yXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDIwIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNy41IDE1TDEyLjUgMTBMNy41IDVcIiBzdHJva2U9XCJ3aGl0ZVwiIHN0cm9rZS13aWR0aD1cIjEuNjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJjb25maWd1cmluZyYmKGdzLnVzZXJBY2Nlc3MgfCBhc3luYyk/Lm1hbmFnZV90aWNrZXRzX2lzRWRpdFwiIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tZGVmYXVsdCBweC0yMCBtZS0yIGJ0bi1wcmltYXJ5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIkNvbmZpZ3VyaW5nKClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJpbmcgPHN2ZyBjbGFzcz1cIm1zLTJcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF83MTQ4XzE3NjA4KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTAuMDAwMyAxLjY2Njc1VjUuMDAwMDhNMTAuMDAwMyAxNS4wMDAxVjE4LjMzMzRNNC4xMDg2NiA0LjEwODQxTDYuNDY2OTkgNi40NjY3NU0xMy41MzM3IDEzLjUzMzRMMTUuODkyIDE1Ljg5MTdNMS42NjY5OSAxMC4wMDAxSDUuMDAwMzNNMTUuMDAwMyAxMC4wMDAxSDE4LjMzMzdNNC4xMDg2NiAxNS44OTE3TDYuNDY2OTkgMTMuNTMzNE0xMy41MzM3IDYuNDY2NzVMMTUuODkyIDQuMTA4NDFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCJ3aGl0ZVwiIHN0cm9rZS13aWR0aD1cIjEuNjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfNzE0OF8xNzYwOFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJpbnN0YWxsYXRpb25SZXN1bWUmJihncy51c2VyQWNjZXNzIHwgYXN5bmMpPy5tYW5hZ2VfdGlja2V0c19pc0VkaXRcIiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLWRlZmF1bHQgcHgtMTUgbWUtMiBidG4tcHJpbWFyeVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJyZXN1bWVJbnN0YWxsYXRpb24oKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBSZXN1bWUgSW5zdGFsbGF0aW9uIDxzdmcgY2xhc3M9XCJtcy0yXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDIwIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNy41IDE1TDEyLjUgMTBMNy41IDVcIiBzdHJva2U9XCJ3aGl0ZVwiIHN0cm9rZS13aWR0aD1cIjEuNjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCIoZ3MudXNlckFjY2VzcyB8IGFzeW5jKT8ubWFuYWdlX3RpY2tldHNfaXNWaWV3XCIgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJvcGVuQ29udGFjdCgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLWRlZmF1bHQgbXgtMiBidG4tb3V0bGluZSBidG4tb3V0bGluZS1kZWZhdWx0IHJvdW5kZWQtMyB0ZXh0LW5vd3JhcCBib3JkZXItdmFsXCI+PHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zODc3XzEwMjIwMylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTEyLjU0MTUgNC4xNjY1OUMxMy4zNTU1IDQuMzI1MzkgMTQuMTAzNSA0LjcyMzQ3IDE0LjY4OTkgNS4zMDk4NkMxNS4yNzYzIDUuODk2MjYgMTUuNjc0NCA2LjY0NDMxIDE1LjgzMzIgNy40NTgyNU0xMi41NDE1IDAuODMzMjUyQzE0LjIzMjYgMS4wMjExMiAxNS44MDk1IDEuNzc4NCAxNy4wMTM0IDIuOTgwNzZDMTguMjE3MyA0LjE4MzEyIDE4Ljk3NjUgNS43NTkwOSAxOS4xNjY1IDcuNDQ5OTJNMTguMzMzMiAxNC4wOTk5VjE2LjU5OTlDMTguMzM0MSAxNi44MzIgMTguMjg2NiAxNy4wNjE3IDE4LjE5MzYgMTcuMjc0NEMxOC4xMDA2IDE3LjQ4NyAxNy45NjQzIDE3LjY3NzkgMTcuNzkzMyAxNy44MzQ4QzE3LjYyMjIgMTcuOTkxNyAxNy40MjAzIDE4LjExMTIgMTcuMjAwNSAxOC4xODU1QzE2Ljk4MDYgMTguMjU5OSAxNi43NDc3IDE4LjI4NzUgMTYuNTE2NSAxOC4yNjY2QzEzLjk1MjIgMTcuOTg4IDExLjQ4OSAxNy4xMTE3IDkuMzI0ODYgMTUuNzA4M0M3LjMxMTM5IDE0LjQyODggNS42MDQzMSAxMi43MjE3IDQuMzI0ODYgMTAuNzA4M0MyLjkxNjUxIDguNTM0MjYgMi4wNDAwNyA2LjA1OTA4IDEuNzY2NTMgMy40ODMyNUMxLjc0NTcgMy4yNTI4MSAxLjc3MzA5IDMuMDIwNTUgMS44NDY5NSAyLjgwMTI3QzEuOTIwOCAyLjU4MTk5IDIuMDM5NTEgMi4zODA0OSAyLjE5NTUgMi4yMDk2QzIuMzUxNSAyLjAzODcxIDIuNTQxMzcgMS45MDIxOCAyLjc1MzAyIDEuODA4NjlDMi45NjQ2OCAxLjcxNTIgMy4xOTM0OCAxLjY2NjggMy40MjQ4NiAxLjY2NjU5SDUuOTI0ODZDNi4zMjkyOCAxLjY2MjYgNi43MjEzNiAxLjgwNTgyIDcuMDI4IDIuMDY5NTNDNy4zMzQ2NCAyLjMzMzI0IDcuNTM0OTMgMi42OTk0NiA3LjU5MTUzIDMuMDk5OTJDNy42OTcwNSAzLjg5OTk3IDcuODkyNzQgNC42ODU1MiA4LjE3NDg2IDUuNDQxNTlDOC4yODY5OCA1LjczOTg2IDguMzExMjUgNi4wNjQwMSA4LjI0NDc4IDYuMzc1NjVDOC4xNzgzMiA2LjY4NzI5IDguMDIzOTIgNi45NzMzNCA3Ljc5OTg2IDcuMTk5OTJMNi43NDE1MyA4LjI1ODI1QzcuOTI3ODMgMTAuMzQ0NSA5LjY1NTI0IDEyLjA3MiAxMS43NDE1IDEzLjI1ODNMMTIuNzk5OSAxMi4xOTk5QzEzLjAyNjQgMTEuOTc1OSAxMy4zMTI1IDExLjgyMTUgMTMuNjI0MSAxMS43NTVDMTMuOTM1OCAxMS42ODg1IDE0LjI1OTkgMTEuNzEyOCAxNC41NTgyIDExLjgyNDlDMTUuMzE0MyAxMi4xMDcgMTYuMDk5OCAxMi4zMDI3IDE2Ljg5OTkgMTIuNDA4M0MxNy4zMDQ3IDEyLjQ2NTQgMTcuNjc0NCAxMi42NjkzIDE3LjkzODYgMTIuOTgxMkMxOC4yMDI5IDEzLjI5MzEgMTguMzQzMyAxMy42OTEyIDE4LjMzMzIgMTQuMDk5OVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8zODc3XzEwMjIwM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1zLTJcIj5Db250YWN0IERldGFpbHM8L3NwYW4+IDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCIoZ3MudXNlckFjY2VzcyB8IGFzeW5jKT8ubWFuYWdlX3RpY2tldHNfaXNWaWV3XCIgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJvcGVuUmVtb3RlKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tZGVmYXVsdCBteC0yIGJ0bi1vdXRsaW5lIGJ0bi1vdXRsaW5lLWRlZmF1bHQgcm91bmRlZC0zIHRleHQtbm93cmFwIGJvcmRlci12YWxcIj48c3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiLi9hc3NldHMvdGFuZ28vSW1hZ2VzL2Rlc2t0b3Auc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb25uZWN0IFJlbW90ZWx5PC9zcGFuPiA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHlcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tOFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInByZXJlcXVlc3RGYWlsZWQmJihncy51c2VyQWNjZXNzIHwgYXN5bmMpPy5tYW5hZ2VfdGlja2V0c19pc0VkaXRcIiBjbGFzcz1cImluc3RhbC1mYWlsZWQgbWItNSBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW5cIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLXN0YXJ0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiLi9hc3NldHMvdGFuZ28vSW1hZ2VzL19GaWxlIHVwbG9hZCBpY29uLnN2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXMtNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1haW4tdGV4dFwiPkludGFsbGF0aW9uIEZhaWxlZCA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWItdGV4dFwiPlBsZWFzZSBlbnRlciB0aGUgcmVhc29uIGJlaGluZCB0aGUgaW5zdGFsbGF0aW9uIGZhaWxlZDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJ1cGRhdGVJc3N1ZSgpXCIgdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IGJ0bi1kYW5nZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgVXBkYXRlIElzc3VlXHJcbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzaG93Zm9ybVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJvcGVuZWRpc3N1ZSBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicHJvZmlsZS1sYWJlbCBmdy1zZW1pYm9sZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTIxIDEyQzIxIDcuMDI5MyAxNi45NzA3IDMgMTIgM0M3LjAyOTMgMyAzIDcuMDI5MyAzIDEyQzMgMTYuOTcwNyA3LjAyOTMgMjEgMTIgMjFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTIuOSAzLjA0NTA0QzEyLjkgMy4wNDUwNCAxNS42IDYuNjAwMDQgMTUuNiAxMkwxMi45IDMuMDQ1MDRaTTExLjEgMjAuOTU1QzExLjEgMjAuOTU1IDguNCAxNy40IDguNCAxMkM4LjQgNi42MDAwNCAxMS4xIDMuMDQ1MDQgMTEuMSAzLjA0NTA0TTMuNTY3IDE1LjE1SDEySDMuNTY3Wk0zLjU2NyA4Ljg1MDA0SDIwLjQzM0gzLjU2N1pcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMjAuODkxMSAxNy4zMjUyQzIxLjMzNTcgMTcuNTk4OCAyMS4zMDc4IDE4LjI2MzkgMjAuODUwNiAxOC4zMTYxTDE4LjU0MDMgMTguNTc4TDE3LjUwNDQgMjAuNjU4OEMxNy4yOTkyIDIxLjA3MTkgMTYuNjY0NyAyMC44Njk0IDE2LjU1OTQgMjAuMzU4MkwxNS40Mjk5IDE0Ljg1MzhDMTUuMzQwOCAxNC40MjE4IDE1LjcyOTYgMTQuMTUgMTYuMTA0OSAxNC4zODEzTDIwLjg5MTEgMTcuMzI1MlpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMjAuMjUgMTJDMjAuMjUgMTIuNDE0MiAyMC41ODU4IDEyLjc1IDIxIDEyLjc1QzIxLjQxNDIgMTIuNzUgMjEuNzUgMTIuNDE0MiAyMS43NSAxMkgyMC4yNVpNMTIgMjEuNzVDMTIuNDE0MiAyMS43NSAxMi43NSAyMS40MTQyIDEyLjc1IDIxQzEyLjc1IDIwLjU4NTggMTIuNDE0MiAyMC4yNSAxMiAyMC4yNVYyMS43NVpNMTMuNDk3MyAyLjU5MTQyQzEzLjI0NjcgMi4yNjE1NiAxMi43NzYyIDIuMTk3MjUgMTIuNDQ2NCAyLjQ0Nzc4QzEyLjExNjUgMi42OTgzIDEyLjA1MjIgMy4xNjg4IDEyLjMwMjcgMy40OTg2NkwxMy40OTczIDIuNTkxNDJaTTE0Ljg1IDEyQzE0Ljg1IDEyLjQxNDMgMTUuMTg1OCAxMi43NSAxNS42IDEyLjc1QzE2LjAxNDIgMTIuNzUgMTYuMzUgMTIuNDE0MyAxNi4zNSAxMkgxNC44NVpNMTAuNTAyNyAyMS40MDg3QzEwLjc1MzMgMjEuNzM4NSAxMS4yMjM4IDIxLjgwMjggMTEuNTUzNiAyMS41NTIzQzExLjg4MzUgMjEuMzAxOCAxMS45NDc4IDIwLjgzMTMgMTEuNjk3MyAyMC41MDE0TDEwLjUwMjcgMjEuNDA4N1pNMTEuNjk3MyAzLjQ5ODY2QzExLjk0NzggMy4xNjg4IDExLjg4MzUgMi42OTgzIDExLjU1MzYgMi40NDc3OEMxMS4yMjM4IDIuMTk3MjUgMTAuNzUzMyAyLjI2MTU2IDEwLjUwMjcgMi41OTE0MkwxMS42OTczIDMuNDk4NjZaTTMuNTY3IDE0LjRDMy4xNTI3OSAxNC40IDIuODE3IDE0LjczNTggMi44MTcgMTUuMTVDMi44MTcgMTUuNTY0MyAzLjE1Mjc5IDE1LjkgMy41NjcgMTUuOVYxNC40Wk0xMiAxNS45QzEyLjQxNDIgMTUuOSAxMi43NSAxNS41NjQzIDEyLjc1IDE1LjE1QzEyLjc1IDE0LjczNTggMTIuNDE0MiAxNC40IDEyIDE0LjRWMTUuOVpNMy41NjcgOC4xMDAwNEMzLjE1Mjc5IDguMTAwMDQgMi44MTcgOC40MzU4MyAyLjgxNyA4Ljg1MDA0QzIuODE3IDkuMjY0MjYgMy4xNTI3OSA5LjYwMDA0IDMuNTY3IDkuNjAwMDRWOC4xMDAwNFpNMjAuNDMzIDkuNjAwMDRDMjAuODQ3MiA5LjYwMDA0IDIxLjE4MyA5LjI2NDI2IDIxLjE4MyA4Ljg1MDA0QzIxLjE4MyA4LjQzNTgzIDIwLjg0NzIgOC4xMDAwNCAyMC40MzMgOC4xMDAwNFY5LjYwMDA0Wk0yMC44OTExIDE3LjMyNTJMMjEuMjg0MiAxNi42ODY1TDIxLjI4NCAxNi42ODY0TDIwLjg5MTEgMTcuMzI1MlpNMjAuODUwNiAxOC4zMTYxTDIwLjkzNTEgMTkuMDYxM0wyMC45MzU3IDE5LjA2MTNMMjAuODUwNiAxOC4zMTYxWk0xOC41NDAzIDE4LjU3OEwxOC40NTU4IDE3LjgzMjhMMTguMDUwNiAxNy44Nzg3TDE3Ljg2ODkgMTguMjQzOEwxOC41NDAzIDE4LjU3OFpNMTcuNTA0NCAyMC42NTg4TDE2LjgzMyAyMC4zMjQ2TDE2LjgzMjcgMjAuMzI1MkwxNy41MDQ0IDIwLjY1ODhaTTE2LjU1OTQgMjAuMzU4MkwxNS44MjQ3IDIwLjUwOUwxNS44MjQ4IDIwLjUwOTVMMTYuNTU5NCAyMC4zNTgyWk0xNS40Mjk5IDE0Ljg1MzhMMTYuMTY0NiAxNC43MDNMMTYuMTY0NCAxNC43MDIzTDE1LjQyOTkgMTQuODUzOFpNMTYuMTA0OSAxNC4zODEzTDE1LjcxMTQgMTUuMDE5OEwxNS43MTIgMTUuMDIwMUwxNi4xMDQ5IDE0LjM4MTNaTTIxLjc1IDEyQzIxLjc1IDYuNjE1MDkgMTcuMzg0OSAyLjI1IDEyIDIuMjVWMy43NUMxNi41NTY1IDMuNzUgMjAuMjUgNy40NDM1MSAyMC4yNSAxMkgyMS43NVpNMTIgMi4yNUM2LjYxNTA5IDIuMjUgMi4yNSA2LjYxNTA5IDIuMjUgMTJIMy43NUMzLjc1IDcuNDQzNTEgNy40NDM1MSAzLjc1IDEyIDMuNzVWMi4yNVpNMi4yNSAxMkMyLjI1IDE3LjM4NDkgNi42MTUwOSAyMS43NSAxMiAyMS43NVYyMC4yNUM3LjQ0MzUxIDIwLjI1IDMuNzUgMTYuNTU2NSAzLjc1IDEySDIuMjVaTTEyLjkgMy4wNDUwNEMxMi4zMDI3IDMuNDk4NjYgMTIuMzAyNiAzLjQ5ODQ2IDEyLjMwMjQgMy40OTgyOEMxMi4zMDI0IDMuNDk4MjMgMTIuMzAyMyAzLjQ5ODA2IDEyLjMwMjIgMy40OTc5N0MxMi4zMDIxIDMuNDk3NzkgMTIuMzAyIDMuNDk3NjcgMTIuMzAxOSAzLjQ5NzZDMTIuMzAxOCAzLjQ5NzQ2IDEyLjMwMTkgMy40OTc1MyAxMi4zMDIxIDMuNDk3ODFDMTIuMzAyNSAzLjQ5ODM4IDEyLjMwMzYgMy40OTk4IDEyLjMwNTMgMy41MDIwNkMxMi4zMDg2IDMuNTA2NTggMTIuMzE0NCAzLjUxNDQ3IDEyLjMyMjUgMy41MjU2N0MxMi4zMzg3IDMuNTQ4MDkgMTIuMzY0MSAzLjU4Mzc1IDEyLjM5NzMgMy42MzIyNkMxMi40NjM4IDMuNzI5MjkgMTIuNTYxNiAzLjg3NzUyIDEyLjY4MDUgNC4wNzM2MUMxMi45MTgzIDQuNDY2MDYgMTMuMjM5MyA1LjA0ODYzIDEzLjU2MTQgNS43OTQ3OEMxNC4yMDYxIDcuMjg4MzcgMTQuODUgOS40MjUyNiAxNC44NSAxMkgxNi4zNUMxNi4zNSA5LjE3NDgzIDE1LjY0MzkgNi44MzQyMiAxNC45Mzg2IDUuMjAwMzFDMTQuNTg1NyA0LjM4MjcxIDE0LjIzMTcgMy43MzkwMiAxMy45NjMzIDMuMjk2MTZDMTMuODI5IDMuMDc0NiAxMy43MTU5IDIuOTAyOTEgMTMuNjM0NyAyLjc4NDQzQzEzLjU5NDEgMi43MjUxOCAxMy41NjE1IDIuNjc5MiAxMy41MzgxIDIuNjQ2OUMxMy41MjY1IDIuNjMwNzUgMTMuNTE3MSAyLjYxODAyIDEzLjUxMDIgMi42MDg3NkMxMy41MDY4IDIuNjA0MTMgMTMuNTA0IDIuNjAwMzYgMTMuNTAxOCAyLjU5NzQ3QzEzLjUwMDcgMi41OTYwMiAxMy40OTk4IDIuNTk0OCAxMy40OTkxIDIuNTkzNzlDMTMuNDk4NyAyLjU5MzI5IDEzLjQ5ODMgMi41OTI4NCAxMy40OTggMi41OTI0NEMxMy40OTc5IDIuNTkyMjQgMTMuNDk3NyAyLjU5MTk5IDEzLjQ5NzYgMi41OTE4OUMxMy40OTc0IDIuNTkxNjUgMTMuNDk3MyAyLjU5MTQyIDEyLjkgMy4wNDUwNFpNMTEuMSAyMC45NTVDMTEuNjk3MyAyMC41MDE0IDExLjY5NzQgMjAuNTAxNiAxMS42OTc2IDIwLjUwMThDMTEuNjk3NiAyMC41MDE5IDExLjY5NzcgMjAuNTAyIDExLjY5NzggMjAuNTAyMUMxMS42OTc5IDIwLjUwMjMgMTEuNjk4IDIwLjUwMjQgMTEuNjk4MSAyMC41MDI1QzExLjY5ODIgMjAuNTAyNiAxMS42OTgxIDIwLjUwMjYgMTEuNjk3OSAyMC41MDIzQzExLjY5NzUgMjAuNTAxNyAxMS42OTY0IDIwLjUwMDMgMTEuNjk0OCAyMC40OThDMTEuNjkxNCAyMC40OTM1IDExLjY4NTYgMjAuNDg1NiAxMS42Nzc1IDIwLjQ3NDRDMTEuNjYxMyAyMC40NTIgMTEuNjM1OSAyMC40MTYzIDExLjYwMjcgMjAuMzY3OEMxMS41MzYyIDIwLjI3MDggMTEuNDM4NCAyMC4xMjI2IDExLjMxOTUgMTkuOTI2NUMxMS4wODE3IDE5LjUzNCAxMC43NjA3IDE4Ljk1MTUgMTAuNDM4NiAxOC4yMDUzQzkuNzkzODggMTYuNzExNyA5LjE1IDE0LjU3NDggOS4xNSAxMkg3LjY1QzcuNjUgMTQuODI1MyA4LjM1NjEzIDE3LjE2NTkgOS4wNjE0MiAxOC43OTk4QzkuNDE0MzQgMTkuNjE3NCA5Ljc2ODMzIDIwLjI2MTEgMTAuMDM2NyAyMC43MDM5QzEwLjE3MSAyMC45MjU1IDEwLjI4NDEgMjEuMDk3MiAxMC4zNjUzIDIxLjIxNTdDMTAuNDA1OSAyMS4yNzQ5IDEwLjQzODUgMjEuMzIwOSAxMC40NjE5IDIxLjM1MzJDMTAuNDczNSAyMS4zNjkzIDEwLjQ4MjkgMjEuMzgyMSAxMC40ODk4IDIxLjM5MTNDMTAuNDkzMiAyMS4zOTYgMTAuNDk2IDIxLjM5OTcgMTAuNDk4MiAyMS40MDI2QzEwLjQ5OTMgMjEuNDA0MSAxMC41MDAyIDIxLjQwNTMgMTAuNTAwOSAyMS40MDYzQzEwLjUwMTMgMjEuNDA2OCAxMC41MDE3IDIxLjQwNzMgMTAuNTAyIDIxLjQwNzZDMTAuNTAyMSAyMS40MDc4IDEwLjUwMjMgMjEuNDA4MSAxMC41MDI0IDIxLjQwODJDMTAuNTAyNiAyMS40MDg0IDEwLjUwMjcgMjEuNDA4NyAxMS4xIDIwLjk1NVpNOS4xNSAxMkM5LjE1IDkuNDI1MjYgOS43OTM4OCA3LjI4ODM3IDEwLjQzODYgNS43OTQ3OEMxMC43NjA3IDUuMDQ4NjMgMTEuMDgxNyA0LjQ2NjA2IDExLjMxOTUgNC4wNzM2MUMxMS40Mzg0IDMuODc3NTIgMTEuNTM2MiAzLjcyOTI5IDExLjYwMjcgMy42MzIyNkMxMS42MzU5IDMuNTgzNzUgMTEuNjYxMyAzLjU0ODA5IDExLjY3NzUgMy41MjU2N0MxMS42ODU2IDMuNTE0NDcgMTEuNjkxNCAzLjUwNjU4IDExLjY5NDggMy41MDIwNkMxMS42OTY0IDMuNDk5OCAxMS42OTc1IDMuNDk4MzggMTEuNjk3OSAzLjQ5NzgxQzExLjY5ODEgMy40OTc1MyAxMS42OTgyIDMuNDk3NDYgMTEuNjk4MSAzLjQ5NzZDMTEuNjk4IDMuNDk3NjcgMTEuNjk3OSAzLjQ5Nzc5IDExLjY5NzggMy40OTc5N0MxMS42OTc3IDMuNDk4MDYgMTEuNjk3NiAzLjQ5ODIzIDExLjY5NzYgMy40OTgyOEMxMS42OTc0IDMuNDk4NDYgMTEuNjk3MyAzLjQ5ODY2IDExLjEgMy4wNDUwNEMxMC41MDI3IDIuNTkxNDIgMTAuNTAyNiAyLjU5MTY1IDEwLjUwMjQgMi41OTE4OUMxMC41MDIzIDIuNTkxOTkgMTAuNTAyMSAyLjU5MjI0IDEwLjUwMiAyLjU5MjQ0QzEwLjUwMTcgMi41OTI4NCAxMC41MDEzIDIuNTkzMjkgMTAuNTAwOSAyLjU5Mzc5QzEwLjUwMDIgMi41OTQ4IDEwLjQ5OTMgMi41OTYwMiAxMC40OTgyIDIuNTk3NDdDMTAuNDk2IDIuNjAwMzYgMTAuNDkzMiAyLjYwNDEzIDEwLjQ4OTggMi42MDg3NkMxMC40ODI5IDIuNjE4MDIgMTAuNDczNSAyLjYzMDc1IDEwLjQ2MTkgMi42NDY5QzEwLjQzODUgMi42NzkyIDEwLjQwNTkgMi43MjUxOCAxMC4zNjUzIDIuNzg0NDNDMTAuMjg0MSAyLjkwMjkxIDEwLjE3MSAzLjA3NDYgMTAuMDM2NyAzLjI5NjE2QzkuNzY4MzMgMy43MzkwMiA5LjQxNDM0IDQuMzgyNzEgOS4wNjE0MiA1LjIwMDMxQzguMzU2MTMgNi44MzQyMiA3LjY1IDkuMTc0ODMgNy42NSAxMkg5LjE1Wk0zLjU2NyAxNS45SDEyVjE0LjRIMy41NjdWMTUuOVpNMy41NjcgOS42MDAwNEgyMC40MzNWOC4xMDAwNEgzLjU2N1Y5LjYwMDA0Wk0yMC40OTggMTcuOTYzOUMyMC40NzkyIDE3Ljk1MjQgMjAuNDU3NSAxNy45MjUyIDIwLjQ1OTcgMTcuODcyN0MyMC40NjA5IDE3Ljg0MzQgMjAuNDcxNSAxNy43NzcyIDIwLjUyOTcgMTcuNzA1NEMyMC41OTYxIDE3LjYyMzUgMjAuNjg4OSAxNy41Nzk3IDIwLjc2NTUgMTcuNTcwOUwyMC45MzU3IDE5LjA2MTNDMjEuNjE2NyAxOC45ODM1IDIxLjkzODQgMTguNDE3OSAyMS45NTg0IDE3LjkzNDZDMjEuOTc3NiAxNy40NjgyIDIxLjc0NzYgMTYuOTcxNyAyMS4yODQyIDE2LjY4NjVMMjAuNDk4IDE3Ljk2MzlaTTIwLjc2NjEgMTcuNTcwOUwxOC40NTU4IDE3LjgzMjhMMTguNjI0OCAxOS4zMjMyTDIwLjkzNTEgMTkuMDYxM0wyMC43NjYxIDE3LjU3MDlaTTE3Ljg2ODkgMTguMjQzOEwxNi44MzMgMjAuMzI0NkwxOC4xNzU4IDIwLjk5MzFMMTkuMjExNyAxOC45MTIzTDE3Ljg2ODkgMTguMjQzOFpNMTYuODMyNyAyMC4zMjUyQzE2Ljg2NjggMjAuMjU2NSAxNi45Mzk1IDIwLjE4MzkgMTcuMDM5OCAyMC4xNDkyQzE3LjEyNzcgMjAuMTE4OCAxNy4xOTQgMjAuMTMxNiAxNy4yMjIxIDIwLjE0MDVDMTcuMjcyIDIwLjE1NjQgMTcuMjg5NiAyMC4xODU3IDE3LjI5NCAyMC4yMDY5TDE1LjgyNDggMjAuNTA5NUMxNS45MzQ1IDIxLjA0MTkgMTYuMzIyIDIxLjQyODEgMTYuNzY2OCAyMS41Njk3QzE3LjIyODYgMjEuNzE2OCAxNy44NzA3IDIxLjYwNzMgMTguMTc2MSAyMC45OTI1TDE2LjgzMjcgMjAuMzI1MlpNMTcuMjk0MSAyMC4yMDc0TDE2LjE2NDYgMTQuNzAzTDE0LjY5NTIgMTUuMDA0NkwxNS44MjQ3IDIwLjUwOUwxNy4yOTQxIDIwLjIwNzRaTTE2LjE2NDQgMTQuNzAyM0MxNi4xNzIzIDE0Ljc0MDYgMTYuMTY2NiAxNC44ODMgMTYuMDIzMiAxNC45ODMzQzE1Ljg4IDE1LjA4MzUgMTUuNzQ0NiAxNS4wNDAyIDE1LjcxMTQgMTUuMDE5OEwxNi40OTg0IDEzLjc0MjhDMTYuMDg5OSAxMy40OTExIDE1LjU3MjQgMTMuNDY4IDE1LjE2MzMgMTMuNzU0M0MxNC43NTQgMTQuMDQwNyAxNC41OTg0IDE0LjUzNSAxNC42OTU0IDE1LjAwNTNMMTYuMTY0NCAxNC43MDIzWk0xNS43MTIgMTUuMDIwMUwyMC40OTgyIDE3Ljk2NEwyMS4yODQgMTYuNjg2NEwxNi40OTc4IDEzLjc0MjVMMTUuNzEyIDE1LjAyMDFaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiM0NzU0NjdcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+IHt7c2VsZWN0ZWRJc3N1ZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSAoY2xpY2spPVwiY2hvb3NlYW5pc3N1ZSgnJylcIiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBvc2l0aW9uLXJlbGF0aXZlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IChjbGljayk9XCJvcGVuRHJvcGRvd24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtYWluY2FyZC1jb250ZW50IGN1cnNvci1wb2ludGVyIGJnLXdoaXRlIHB4LTMgcHktMlwiPiA8c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk01IDcuNUwxMCAxMi41TDE1IDcuNVwiIHN0cm9rZT1cIiMzNDQwNTRcIiBzdHJva2Utd2lkdGg9XCIxLjY3XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+IDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImRyb3BEb3duXCIgY2xhc3M9XCJjYXJkIHB5LTEgdy0yMDBweCBwb3NpdGlvbi1hYnNvbHV0ZSB0b3AtNTBweCBlbmQtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCAqbmdGb3I9XCJsZXQgaXRlbSBvZiBkcm9wZG93bkl0ZW1zXCIgY2xhc3M9XCJsaXN0LXVuc3R5bGVkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBbbmdDbGFzc109XCJ0aGlzLnNlbGVjdGVkSXNzdWUgPT09IGl0ZW0gPyAnYWN0aXZlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2FtZXJhIHB4LTUgaXRlbXMgZnctc2VtaWJvbGQgY3Vyc29yLXBvaW50ZXIgcHktM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0SXRlbShpdGVtKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tpdGVtfX08L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJzZWxlY3RlZElzc3VlID09PSAnSW50ZXJuZXQgSXNzdWVzJ3x8c2VsZWN0ZWRJc3N1ZSA9PT0gJ0NhbWVyYSBJc3N1ZXMnfHxzZWxlY3RlZElzc3VlID09PSAnU3lzdGVtIElzc3VlcycgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYWluY2FyZC1jb250ZW50IHctMTAwIG10LTIgcHgtNCBweS0yIHBiLTQgbWItNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1haW5jYXJkLWxhYmVsIGZ3LXNlbWlib2xkIHB5LTJcIiAqbmdJZj1cInNlY29uZGFyeUlzc3Vlcz8ubGVuZ3RoPjBcIj4gUGxlYXNlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0IHRoZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbGV2YW50IHByb2JsZW0gZmFjaW5nIGZyb20gdGhlIGZvbGxvd2luZyA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGlzc3VlIG9mIHNlY29uZGFyeUlzc3VlczsgbGV0IGluZGV4ID0gaW5kZXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWFpbmNhcmQtY29udGVudCBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyIHctMTAwIG10LTIgcHgtNCBweS00IGN1cnNvci1wb2ludGVyIFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZUNoZWNrYm94KGluZGV4KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPjxpbWcgY2xhc3M9XCJwZS0zXCIgc3JjPScuL2Fzc2V0cy90YW5nby9JbWFnZXMvRmVhdHVyZWQgaWNvbi5wbmcnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJoZWFkaW5ndGV4dFwiPnt7aXNzdWU/Lm5hbWV9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ3LTMwMHB4XCIgW25nYlRvb2x0aXBdPVwidG9vbHRpcENvbnRlbnRcIiB0cmlnZ2Vycz1cIm1vdXNlZW50ZXI6bW91c2VsZWF2ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJsZWZ0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIGNsYXNzPVwibXMtM1wiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMTgyNl80NDg3MSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOC4wMDA2NSAxMC42NjczVjguMDAwNjVNOC4wMDA2NSA1LjMzMzk4SDguMDA3MzJNMTQuNjY3MyA4LjAwMDY1QzE0LjY2NzMgMTEuNjgyNiAxMS42ODI2IDE0LjY2NzMgOC4wMDA2NSAxNC42NjczQzQuMzE4NzUgMTQuNjY3MyAxLjMzMzk4IDExLjY4MjYgMS4zMzM5OCA4LjAwMDY1QzEuMzMzOTggNC4zMTg3NSA0LjMxODc1IDEuMzMzOTggOC4wMDA2NSAxLjMzMzk4QzExLjY4MjYgMS4zMzM5OCAxNC42NjczIDQuMzE4NzUgMTQuNjY3MyA4LjAwMDY1WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjOThBMkIzXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMTgyNl80NDg3MVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIERlZmluZSB0b29sdGlwIGNvbnRlbnQgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICN0b29sdGlwQ29udGVudD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImN1c3RvbS10b29sdGlwLWNvbnRlbnQgdG9vbHRpcC1jb250ZW50IHctMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwidy0xMDBcIiAqbmdGb3I9XCJsZXQgdG9vbHRpcEl0ZW0gb2YgaXNzdWU/LnRvb2xUaXBzXCI+e3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9vbHRpcEl0ZW0/Lm5hbWUgfX08L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdW5kZWRjaGVjayBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBbY2hlY2tlZF09XCJpc3N1ZS5jaGVja2VkXCIgY2xhc3M9XCJwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgcHQtNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJoaWJlcm50aW9uXCIgY2xhc3M9XCIgbWFpbmNhcmQtbGFiZWwgZnctc2VtaWJvbGQgbWItMlwiPkhpYmVybmF0aW9uIChpbiBkYXlzKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiIHctMjUwcHggcG9zaXRpb24tcmVsYXRpdmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBvc2l0aW9uLWFic29sdXRlIHRyYW5zbGF0ZS1taWRkbGUteSB0b3AtNTAgbWUtNSBwcy0zIHRpY2tldERheXNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ZnLWljb24gdG9nZ2xlLW9mZiBzdmctaWNvbi0xXCIgW25nQ2xhc3NdPVwiY291bnQgPT09IDAgPyAncGUtbm9uZScgOiAnJ1wiIChjbGljayk9XCJkZWNyZXNlQ291bnQoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjFcIiBoZWlnaHQ9XCIyMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjEgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTQuNjY2MDIgMTBIMTYuMzMyN1wiIHN0cm9rZT1cIiMzNDQwNTRcIiBzdHJva2Utd2lkdGg9XCIxLjY3XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGlkPVwiaGliZXJudGlvblwiIFsobmdNb2RlbCldPVwiSGliZXJuYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCIgdmFsdWU9XCJ7e2NvdW50fX1cIiBwbGFjZWhvbGRlcj1cIjBcIiByZWFkT25seSAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tYWJzb2x1dGUgdHJhbnNsYXRlLW1pZGRsZS15IHRvcC01MCBlbmQtMCBtZS0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN2Zy1pY29uIHRvZ2dsZS1vbiBzdmctaWNvbi0xIHRpY2tldERheXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJpbmNyZWFzZUNvdW50KClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIxXCIgaGVpZ2h0PVwiMjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDIxIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMC40OTkzIDQuMTY2NVYxNS44MzMyTTQuNjY2MDIgOS45OTk4NEgxNi4zMzI3XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMzNDQwNTRcIiBzdHJva2Utd2lkdGg9XCIxLjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzZWxlY3RlZElzc3VlID09PSAnT3RoZXJzJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWFpbmNhcmQtY29udGVudCB3LTEwMCBtdC0yIHB4LTQgcHktMiBwYi00IG1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYWluY2FyZC1sYWJlbCBmdy1zZW1pYm9sZCBweS0yXCI+UGxlYXNlIHNlbGVjdCB0aGUgcmVsZXZhbnQgcHJvYmxlbSBmYWNpbmcgZnJvbVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbGxvd2luZzwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgb3RoZXJzIG9mIG90aGVyc0lzc3VlOyBsZXQgaSA9IGluZGV4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1haW5jYXJkLWNvbnRlbnQgZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGFsaWduLWl0ZW1zLWNlbnRlciB3LTEwMCBtdC0yIHB4LTQgcHktNCBjdXJzb3ItcG9pbnRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZVJhZGlvYm94KG90aGVycylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj48aW1nIGNsYXNzPVwicGUtM1wiIHNyYz0nLi9hc3NldHMvdGFuZ28vSW1hZ2VzL0ZlYXR1cmVkIGljb24ucG5nJz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaGVhZGluZ3RleHRcIj57e290aGVycy5uYW1lfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPjxzdmcgY2xhc3M9XCJtcy0zXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8xODI2XzQ0ODcxKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDY1IDEwLjY2NzNWOC4wMDA2NU04LjAwMDY1IDUuMzMzOThIOC4wMDczMk0xNC42NjczIDguMDAwNjVDMTQuNjY3MyAxMS42ODI2IDExLjY4MjYgMTQuNjY3MyA4LjAwMDY1IDE0LjY2NzNDNC4zMTg3NSAxNC42NjczIDEuMzMzOTggMTEuNjgyNiAxLjMzMzk4IDguMDAwNjVDMS4zMzM5OCA0LjMxODc1IDQuMzE4NzUgMS4zMzM5OCA4LjAwMDY1IDEuMzMzOThDMTEuNjgyNiAxLjMzMzk4IDE0LjY2NzMgNC4zMTg3NSAxNC42NjczIDguMDAwNjVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM5OEEyQjNcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8xODI2XzQ0ODcxXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm91bmRlZGNoZWNrIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJyYWRpb0dyb3Vwe3tpfX1cIiBbdmFsdWVdPVwib3RoZXJzLm5hbWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWxlY3RlZE9wdGlvblwiIGNsYXNzPVwicC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIHB0LTZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiaGliZXJudGlvblwiIGNsYXNzPVwiIG1haW5jYXJkLWxhYmVsIGZ3LXNlbWlib2xkIG1iLTJcIj5IaWJlcm5hdGlvbiAoaW4gZGF5cylcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKjwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIiB3LTI1MHB4IHBvc2l0aW9uLXJlbGF0aXZlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3NpdGlvbi1hYnNvbHV0ZSB0cmFuc2xhdGUtbWlkZGxlLXkgdG9wLTUwIG1lLTUgcHMtMyB0aWNrZXREYXlzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN2Zy1pY29uIHRvZ2dsZS1vZmYgc3ZnLWljb24tMVwiIFtuZ0NsYXNzXT1cImNvdW50ID09PSAwID8gJ3BlLW5vbmUnIDogJydcIiAoY2xpY2spPVwiZGVjcmVzZUNvdW50KClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIxXCIgaGVpZ2h0PVwiMjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDIxIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk00LjY2NjAyIDEwSDE2LjMzMjdcIiBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBpZD1cImhpYmVybnRpb25cIiBbKG5nTW9kZWwpXT1cIkhpYmVybmF0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO1wiIHZhbHVlPVwie3tjb3VudH19XCIgcGxhY2Vob2xkZXI9XCJcIiByZWFkT25seSAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tYWJzb2x1dGUgdHJhbnNsYXRlLW1pZGRsZS15IHRvcC01MCBlbmQtMCBtZS0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN2Zy1pY29uIHRvZ2dsZS1vbiBzdmctaWNvbi0xIHRpY2tldERheXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJpbmNyZWFzZUNvdW50KClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIxXCIgaGVpZ2h0PVwiMjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDIxIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMC40OTkzIDQuMTY2NVYxNS44MzMyTTQuNjY2MDIgOS45OTk4NEgxNi4zMzI3XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMzNDQwNTRcIiBzdHJva2Utd2lkdGg9XCIxLjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IG9iaiBvZiB2aWV3VGlja2V0RGF0YTtsZXQgaT1pbmRleFwiPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBIb3Jpem9udGFsIGxpbmUgd2l0aCBkYXkgLS0+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGVyIGJvcmRlci0xIGJvcmRlci1ncmF5IHAtMCB3LTEwMCBtZS0zXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGF5IGZ3LWJvbGQtNDAwXCI+VG9kYXk8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGVyIGJvcmRlci0xIGJvcmRlci1ncmF5IHAtMCB3LTEwMCBtcy0zXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAtLT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gVXNlciBjb2RlIHN0YXJ0ICAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm9iai5hY3Rpb25CeSA9PT0gJ1VzZXInXCIgY2xhc3M9XCJkLWZsZXggbXMtNSBtYi01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIHBlLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRyZSBqdXN0aWZ5LWNvbnRlbnQtY2VudHJlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzeW1ib2wgc3ltYm9sLTQ4cHggc3ltYm9sLWNpcmNsZVwiICpuZ0lmPVwib2JqPy5JZGVudGlmaWVkQnkmJm9iaj8uSWRlbnRpZmllZEJ5IT09JycmJm9iaj8uSWRlbnRpZmllZEJ5IT09J1RhbmdvJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzeW1ib2wtbGFiZWwgYmFkZ2UtbGlnaHQtcHJpbWFyeSB0ZXh0LXN5bWJvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1wcmltYXJ5IGZzLTQgYmFkZ2UgYmFkZ2UtbGlnaHQtcHJpbWFyeSBmdy1ub3JtYWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tvYmo/LklkZW50aWZpZWRCeT8uc2xpY2UoMCwyKSB8IHVwcGVyY2FzZSB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgKm5nSWY9XCIhb2JqPy5JZGVudGlmaWVkQnl8fG9iaj8uSWRlbnRpZmllZEJ5PT09Jyd8fG9iaj8uSWRlbnRpZmllZEJ5PT09J1RhbmdvJ1wiIGNsYXNzPVwibXNncHJvZmlsZVwiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ltYWdlcy90YW5nb3Byb2ZpbGUucG5nXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwLTAgaC0xMDAgbXQtMyBib3JkZXIgYm9yZGVyLTEgYm9yZGVyLWdyYXkgdmVydGljYWxMaW5lXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJweS0zIHB0LTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhlYWRpbmd0ZXh0IGZ3LXNlbWlib2xkXCI+e3tvYmo/LklkZW50aWZpZWRCeT9vYmo/LklkZW50aWZpZWRCeTpcIlRhbmdvXCJ9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidXBkYXRlZGRhdGUgcHgtMyBwdC0xIGZ3LWJvbGQtNDAwXCI+e3tvYmo/LnRpbWVTdGFtcH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJvYmouYWN0aW9uVHlwZSAhPT0nc3RhdHVzQ2hhbmdlJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInByb2ZpbGUtbGFiZWwgZm9udC1ib2xkLTQwMFwiPlVzZXIgaGFzIHJlcGxpZWQ8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm9iai5hY3Rpb25UeXBlID09PSAnc3RhdHVzQ2hhbmdlJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpbWluZ3RleHQgcGUtMyBwdC0xIGZ3LWJvbGQtNDAwXCI+VXBkYXRlZCB0aGUgc3RhdHVzPC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRpbWluZ3RleHQgZnctc2VtaWJvbGQgdGV4dC1wcmltYXJ5XCI+T3BlbiAtPiBJbnByb2dyZXNzPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJvYmouYWN0aW9uVHlwZSA9PT0gJ3N0YXR1c0NoZWNrUmVwbHknXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0dXBkYXRlcyBmdy1ib2xkLTQwMCBtdC0zXCI+SXNzdWUgaGFzIGJlZW4gPGI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJvYmouc3RhdHVzQ2hlY2tSZXBseT09PSdObydcIj5ub3Q8L3NwYW4+IHJlc29sdmVkLjwvYj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dHVwZGF0ZXMgZnctYm9sZC00MDBcIiAqbmdJZj1cIm9iai5zdGF0dXNDaGVja1JlcGx5PT09J05vJ1wiPiBJdCB0YWtlc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tvYmo/LmhpYmVybmF0aW9uRGF5c319IG1vcmUgZGF5cyB0byByZXNvbHZlLjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtdC0yXCIgKm5nSWY9XCJvYmouYWN0aW9uVHlwZSA9PT0gJ2NvbW1lbnQnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGltaW5ndGV4dCBwZS0zIHB0LTEgZnctYm9sZC00MDAgdGV4dC13cmFwXCI+e3tvYmo/LmNvbW1lbnR9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwib2JqLmFjdGlvblR5cGUgPT09J2lzc3VlVXBkYXRlJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCByZXMgb2Ygb2JqPy5yZWFzb25zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dHVwZGF0ZXMgZnctc2VtaWJvbGQgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlJ3JlIGN1cnJlbnRseSBlbmNvdW50ZXJpbmcgYW4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmdy1ib2xkLTcwMFwiPnt7cmVzLnByaW1hcnlJc3N1ZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwicmVzLnByaW1hcnlJc3N1ZSA9PT0nQ2FtZXJhIElzc3VlcydcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibm90d29ya2luZ0NhbWFyYWxpc3QgJiYgbm90d29ya2luZ0NhbWFyYWxpc3Q/Lmxlbmd0aFwiIGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGl0ZW0gb2Ygbm90d29ya2luZ0NhbWFyYWxpc3RcIiBjbGFzcz1cImNvbC1zbS0zIG15LTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3VuZGVkLTMgb3ZlcmZsb3ctaGlkZGVuIG10LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2FtZXJhIGZ3LWJvbGRcIj57e2l0ZW0uY2FtZXJhTmFtZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgW3NyY109XCJpdGVtPy50aHVtYm5haWxJbWFnZVwiIHN0eWxlPVwiaGVpZ2h0OjE4MHB4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0dXBkYXRlcyBmdy1ib2xkLTQwMCBtdC0zIG1lLTJcIj5UaGUgYWJvdmUgY2FtZXJhIHN0cmVhbWluZyBhcmUgbm90IHdvcmtpbmcgZHVlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dHVwZGF0ZXMgZnctYm9sZC03MDAgbXQtM1wiICpuZ0Zvcj1cImxldCBpc3N1ZSBvZiByZXM/LnNlY29uZGFyeUlzc3VlOyBsZXQgbGFzdCA9IGxhc3RcIj57e2lzc3VlPy5uYW1lfX0gPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFsYXN0XCI+ICw8L25nLWNvbnRhaW5lcj48L3NwYW4+IHRvIHRoZSBDYW1lcmE8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJyZXM/LnNlY29uZGFyeUlzc3VlICYmIHJlcz8uc2Vjb25kYXJ5SXNzdWU/Lmxlbmd0aFwiIGNsYXNzPVwibXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbnZlc3RpZ2F0aW9uIGZ3LWJvbGQtNDAwIG1iLTNcIj5UaGUgZm9sbG93aW5nIGFyZSB0aGUgcmVsZXZhbnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvYmxlbVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWNpbmc8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJ0aW1pbmd0ZXh0IGZ3LWJvbGQtNDAwIG1iLTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IHNlY0lzc3VlcyBvZiByZXM/LnNlY29uZGFyeUlzc3VlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+e3tzZWNJc3N1ZXMubmFtZX19PC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBVc2VyIGNvZGUgZW5kIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFRhbmdvIGNvZGUgc3RhcnQgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJvYmouYWN0aW9uQnkgPT09ICdUYW5nbydcIiBjbGFzcz1cImQtZmxleCBtYi01IG1zLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4ganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgcGUtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudHJlIGp1c3RpZnktY29udGVudC1jZW50cmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN5bWJvbCBzeW1ib2wtNDhweCBzeW1ib2wtY2lyY2xlXCIgKm5nSWY9XCJvYmo/LklkZW50aWZpZWRCeSYmb2JqPy5JZGVudGlmaWVkQnkhPT0nJyYmb2JqPy5JZGVudGlmaWVkQnkhPT0nVGFuZ28nXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN5bWJvbC1sYWJlbCBiYWRnZS1saWdodC1wcmltYXJ5IHRleHQtc3ltYm9sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXByaW1hcnkgZnMtNCBiYWRnZSBiYWRnZS1saWdodC1wcmltYXJ5IGZ3LW5vcm1hbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e29iaj8uSWRlbnRpZmllZEJ5Py5zbGljZSgwLDIpIHwgdXBwZXJjYXNlIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyAqbmdJZj1cIiFvYmo/LklkZW50aWZpZWRCeXx8b2JqPy5JZGVudGlmaWVkQnk9PT0nJ3x8b2JqPy5JZGVudGlmaWVkQnk9PT0nVGFuZ28nXCIgY2xhc3M9XCJtc2dwcm9maWxlXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSW1hZ2VzL3RhbmdvcHJvZmlsZS5wbmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwLTAgaC0xMDAgbXQtMyBib3JkZXIgYm9yZGVyLTEgYm9yZGVyLWdyYXkgdmVydGljYWxMaW5lXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJweS0zIHB0LTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0ge3tvYmouYWN0aW9uVHlwZX19IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhlYWRpbmd0ZXh0IGZ3LXNlbWlib2xkXCI+e3tvYmo/LklkZW50aWZpZWRCeT9vYmo/LklkZW50aWZpZWRCeTpcIlRhbmdvXCJ9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ1cGRhdGVkZGF0ZSBmdy1ib2xkLTQwMCBweC0zIHB0LTFcIj57e29iaj8udGltZVN0YW1wfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8c3BhbiAgY2xhc3M9XCJwcm9maWxlLWxhYmVsIGZ3LWJvbGQtNDAwXCI+dGFuZ28gaGFzIHJlcGxpZWQgdG8gdGhlIGlzc3VlPC9zcGFuPiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm9iai5hY3Rpb25UeXBlID09PSAnc3RhdHVzQ2hhbmdlJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aW1pbmd0ZXh0IHBlLTMgcHQtMSBmdy1ib2xkLTQwMFwiPlVwZGF0ZWQgdGhlIHN0YXR1czwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidGltaW5ndGV4dCBmdy1zZW1pYm9sZCB0ZXh0LXByaW1hcnlcIj5PcGVuIC0+IElucHJvZ3Jlc3M8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtdC0yXCIgKm5nSWY9XCJvYmouYWN0aW9uVHlwZSA9PT0gJ2NvbW1lbnQnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGltaW5ndGV4dCBwZS0zIHB0LTEgZnctYm9sZC00MDAgdGV4dC13cmFwXCI+e3tvYmo/LmNvbW1lbnR9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwib2JqLmFjdGlvblR5cGUgPT09ICdwcmVyZXF1ZXN0Y2hlY2tzdGFydCdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aW1pbmd0ZXh0IHBlLTMgcHQtMSBmdy1ib2xkLTQwMFwiPlN0YXJ0ZWQgdGhlPC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRpbWluZ3RleHQgZnctc2VtaWJvbGQgdGV4dC1wcmltYXJ5XCI+UHJlLVJlcXVpc2l0ZSBDaGVjazwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwib2JqLmFjdGlvblR5cGUgPT09ICdwcmVyZXF1ZXN0Y2hlY2tmYWlsZWQnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGltaW5ndGV4dCBwZS0zIHB0LTEgZnctYm9sZC00MDBcIj5Qcm9jZXNzIGZhaWxlZCBvbjwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0aW1pbmd0ZXh0IGZ3LXNlbWlib2xkIHRleHQtcHJpbWFyeVwiPlByZS1SZXF1aXNpdGUgQ2hlY2s8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm9iai5hY3Rpb25UeXBlID09PSAnZmV0Y2hjYW1lcmEnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGltaW5ndGV4dCBwZS0zIHB0LTEgZnctYm9sZC00MDBcIj5VcGRhdGVkIHRoZSBzdGF0dXM8L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidGltaW5ndGV4dCBmdy1zZW1pYm9sZCB0ZXh0LXByaW1hcnlcIj5QcmUtUmVxdWlzaXRlIENoZWNrIC0+IEZldGNoY2FtZXJhPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJvYmouYWN0aW9uVHlwZSA9PT0gJ2NvbmZpZ3VyZSdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aW1pbmd0ZXh0IHBlLTMgcHQtMSBmdy1ib2xkLTQwMFwiPlVwZGF0ZWQgdGhlIHN0YXR1czwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0aW1pbmd0ZXh0IGZ3LXNlbWlib2xkIHRleHQtcHJpbWFyeVwiPiBGZXRjaGNhbWVyYSAtPiBDb25maWd1cmluZzwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwib2JqLmFjdGlvblR5cGUgPT09J2lzc3VlVXBkYXRlJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCByZXMgb2Ygb2JqPy5yZWFzb25zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dHVwZGF0ZXMgZnctc2VtaWJvbGQgbXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlJ3JlIGN1cnJlbnRseSBlbmNvdW50ZXJpbmcgYW4gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmdy1ib2xkLTcwMFwiPnt7cmVzLnByaW1hcnlJc3N1ZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwicmVzLnByaW1hcnlJc3N1ZSA9PT0nQ2FtZXJhIElzc3VlcydcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IG15LTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBub3R3b3JraW5nQ2FtYXJhbGlzdFwiIGNsYXNzPVwiY29sLXNtLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3VuZGVkLTMgb3ZlcmZsb3ctaGlkZGVuIG10LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2FtZXJhIGZ3LWJvbGRcIj57e2l0ZW0uY2FtZXJhTmFtZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgW3NyY109XCJpdGVtPy50aHVtYm5haWxJbWFnZVwiIHN0eWxlPVwiaGVpZ2h0OjE4MHB4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0dXBkYXRlcyBmdy1ib2xkLTQwMCBtdC0zIG1lLTJcIj5UaGUgYWJvdmUgY2FtZXJhIHN0cmVhbWluZyBhcmUgbm90IHdvcmtpbmcgZHVlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dHVwZGF0ZXMgZnctYm9sZC03MDAgbXQtM1wiICpuZ0Zvcj1cImxldCBpc3N1ZSBvZiByZXM/LnNlY29uZGFyeUlzc3VlOyBsZXQgbGFzdCA9IGxhc3RcIj57e2lzc3VlPy5uYW1lfX0gPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFsYXN0XCI+ICw8L25nLWNvbnRhaW5lcj48L3NwYW4+IDxzcGFuIGNsYXNzPVwidGV4dHVwZGF0ZXMgZnctYm9sZC00MDAgbXQtM1wiPnRvIHRoZSBDYW1lcmE8L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbnZlc3RpZ2F0aW9uIGZ3LWJvbGQtNDAwIG1iLTNcIj5UaGUgZm9sbG93aW5nIGFyZSB0aGUgcmVsZXZhbnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvYmxlbVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWNpbmc8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJ0aW1pbmd0ZXh0IGZ3LWJvbGQtNDAwIG1iLTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IHNlY0lzc3VlcyBvZiByZXM/LnNlY29uZGFyeUlzc3VlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+e3tzZWNJc3N1ZXMubmFtZX19PC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwib2JqLmFjdGlvblR5cGUgPT09J3N0ZXBzVG9SZXNvbHZlJ1wiIGNsYXNzPVwibXQtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHR1cGRhdGVzIGZ3LWJvbGQtNDAwXCI+UGxlYXNlIGZvbGxvdyB0aGUgYmVsb3cgc3RlcHMgdG8gcmVzb2x2ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlIGFib3ZlIGlzc3VlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCByZXMgb2Ygb2JqPy5yZWFzb25zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXQtNSBtYi01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRpbmd0ZXh0IGZ3LXNlbWlib2xkIG1iLTFcIj57e3Jlcy5wcmltYXJ5SXNzdWV9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cInRpbWluZ3RleHQgZnctYm9sZC00MDAgbWItMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBzZWNJc3N1ZXMgb2YgcmVzPy5zZWNvbmRhcnlJc3N1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+e3tzZWNJc3N1ZXMubmFtZX19PC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSBUYW5nbyBjb2RlIGVuZCAtLT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImxvYWRpbmdcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGxvYWRlciAgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibm9EYXRhXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTEyIG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImltZy1zcmNcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9Ob2RhdGEuc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzaG93U3VibWl0JiYoZ3MudXNlckFjY2VzcyB8IGFzeW5jKT8ubWFuYWdlX3RpY2tldHNfaXNFZGl0XCIgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyIG10LTEwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiZm9ybS1jb250cm9sXCIgWyhuZ01vZGVsKV09XCJjb21tZW50c1wiIChjbGljayk9XCJhZGRDb21tZW50KClcIiB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiQWRkIHlvdXIgY29tbWVudHMuLlwiPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImZpbGVcIiAjZmlsZUlucHV0IHN0eWxlPVwiZGlzcGxheTogbm9uZTtcIiBhY2NlcHQ9XCJpbWFnZS8qXCIgbXVsdGlwbGUgKGNoYW5nZSk9XCJvbkZpbGVTZWxlY3RlZCgkZXZlbnQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwib3BlbkZpbGVJbnB1dCgpXCIgY2xhc3M9XCJjdXJzb3ItcG9pbnRlciBidG4gYnRuLWRlZmF1bHQgYnRuLW91dGxpbmUgbXMtM1wiPjxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xNy44NjY2IDkuMjA4MzVMMTAuMjA4MiAxNi44NjY3QzkuMjcwMDUgMTcuODA0OSA3Ljk5NzU3IDE4LjMzMiA2LjY3MDc1IDE4LjMzMkM1LjM0MzkzIDE4LjMzMiA0LjA3MTQ1IDE3LjgwNDkgMy4xMzMyNSAxNi44NjY3QzIuMTk1MDUgMTUuOTI4NSAxLjY2Nzk3IDE0LjY1NiAxLjY2Nzk3IDEzLjMyOTJDMS42Njc5NyAxMi4wMDI0IDIuMTk1MDUgMTAuNzI5OSAzLjEzMzI1IDkuNzkxNjhMMTAuNzkxNiAyLjEzMzM1QzExLjQxNzEgMS41MDc4OCAxMi4yNjU0IDEuMTU2NDkgMTMuMTQ5OSAxLjE1NjQ5QzE0LjAzNDUgMS4xNTY0OSAxNC44ODI4IDEuNTA3ODggMTUuNTA4MiAyLjEzMzM1QzE2LjEzMzcgMi43NTg4MiAxNi40ODUxIDMuNjA3MTMgMTYuNDg1MSA0LjQ5MTY4QzE2LjQ4NTEgNS4zNzYyMyAxNi4xMzM3IDYuMjI0NTUgMTUuNTA4MiA2Ljg1MDAyTDcuODQxNTggMTQuNTA4M0M3LjUyODg1IDE0LjgyMTEgNy4xMDQ2OSAxNC45OTY4IDYuNjYyNDIgMTQuOTk2OEM2LjIyMDE0IDE0Ljk5NjggNS43OTU5OCAxNC44MjExIDUuNDgzMjUgMTQuNTA4M0M1LjE3MDUxIDE0LjE5NTYgNC45OTQ4MiAxMy43NzE1IDQuOTk0ODIgMTMuMzI5MkM0Ljk5NDgyIDEyLjg4NjkgNS4xNzA1MSAxMi40NjI3IDUuNDgzMjUgMTIuMTVMMTIuNTU4MiA1LjA4MzM1XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IG1zLTNcIiAoY2xpY2spPVwidXBkYXRlVGlja2V0KClcIj4gU3VibWl0IDwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IGJ0bi1vdXRsaW5lIG1zLTMgdGV4dC1ub3dyYXBcIj48c3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zOTE3XzU0NjIxKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk03LjU3NDM1IDcuNTAwMDhDNy43NzAyNyA2Ljk0MzE0IDguMTU2OTggNi40NzM1IDguNjY1OTggNi4xNzQzNkM5LjE3NDk4IDUuODc1MjEgOS43NzM0MyA1Ljc2NTg2IDEwLjM1NTMgNS44NjU2N0MxMC45MzcyIDUuOTY1NDkgMTEuNDY1IDYuMjY4MDIgMTEuODQ1MiA2LjcxOTY5QzEyLjIyNTUgNy4xNzEzNiAxMi40MzM2IDcuNzQzMDIgMTIuNDMyNyA4LjMzMzQyQzEyLjQzMjcgMTAuMDAwMSA5LjkzMjY4IDEwLjgzMzQgOS45MzI2OCAxMC44MzM0TTkuOTk5MzUgMTQuMTY2N0gxMC4wMDc3TTE4LjMzMjcgMTAuMDAwMUMxOC4zMzI3IDE0LjYwMjUgMTQuNjAxNyAxOC4zMzM0IDkuOTk5MzUgMTguMzMzNEM1LjM5Njk4IDE4LjMzMzQgMS42NjYwMiAxNC42MDI1IDEuNjY2MDIgMTAuMDAwMUMxLjY2NjAyIDUuMzk3NzEgNS4zOTY5OCAxLjY2Njc1IDkuOTk5MzUgMS42NjY3NUMxNC42MDE3IDEuNjY2NzUgMTguMzMyNyA1LjM5NzcxIDE4LjMzMjcgMTAuMDAwMVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzEwMTgyOFwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzM5MTdfNTQ2MjFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+IENhbuKAmXQgYWJsZSB0byByZWFjaCB0aGUgc3RvcmU/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtZGFuZ2VyXCIgKm5nSWY9XCJlcnJvck1lc3NhZ2VcIiA+e3sgZXJyb3JNZXNzYWdlIH19PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTRcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZXIgYm9yZGVyLTEgYm9yZGVyLWdyYXkgcm91bmRlZC0zIHAtNSBoLTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYW1lcmEgZnctc2VtaWJvbGRcIj5BdHRhY2htZW50czwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJ0aWNrZXRJbmZvPy5hdHRhY2htZW50cy5sZW5ndGggPT09MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidy0xMDAgbXQtMTAgbWItMTAgbWgtNjB2aCBkLWdyaWQgdGV4dC1jZW50ZXIgbXgtYXV0b1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwibXgtYXV0b1wiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ltYWdlcy90YWtldGlja2V0LnN2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRha2V0aWNrZXQgbXQtMiBmdy1ib2xkXCI+Tm8gQXR0YWNobWVudHMgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJ0aWNrZXRJbmZvPy5hdHRhY2htZW50cy5sZW5ndGggPiAwXCIgY2xhc3M9XCJyb3cgbXQtMTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS02XCIgKm5nRm9yPVwibGV0IGZpbGUgb2YgdGlja2V0SW5mbz8uYXR0YWNobWVudHNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJBdHRhY2htZW50IGJvcmRlciBib3JkZXItMSBib3JkZXItZ3JheSB3LTEwMCByb3VuZGVkLTIgb3ZlcmZsb3ctaGlkZGVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImgtMTUwcHhcIiAgKGNsaWNrKT1cImRvd25sb2FkaW1hZ2UoZmlsZT8uc2lnbmVkVXJsKVwiIFtzcmNdPVwiZmlsZT8uc2lnbmVkVXJsXCIgYWx0PVwiU2VsZWN0ZWQgSW1hZ2VcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1ncmlkIGJvcmRlciBib3JkZXItdG9wLTEgcHgtNSBweS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaW1hZ2VuYW1lIGZ3LWJvbGRcIj57e2ZpbGUuZmlsZW5hbWV9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8c3BhbiBjbGFzcz1cImZ3LWJvbGQtNDAwIHVwZGF0ZWRkYXRlXCI+e3tmaWxlLmxhc3RNb2RpZmllZERhdGVTdHJpbmd9fTwvc3Bhbj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICA8L2Rpdj4iXX0=
|
|
475
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdGFsbGF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLXRpY2tldC11c2VyL3NyYy9saWIvY29tcG9uZW50cy9pbnN0YWxsYXRpb24vaW5zdGFsbGF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLXRpY2tldC11c2VyL3NyYy9saWIvY29tcG9uZW50cy9pbnN0YWxsYXRpb24vaW5zdGFsbGF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBd0MsTUFBTSxlQUFlLENBQUM7QUFFekcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDdkYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFRekUsaUZBQWlGO0FBQ2pGLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7Ozs7QUFPMUMsTUFBTSxPQUFPLHFCQUFxQjtJQXdEWjtJQUFnQztJQUMxQztJQUNBO0lBQ0E7SUFDQTtJQUNEO0lBM0RULFdBQVcsR0FBUSxRQUFRLENBQUM7SUFDNUIsYUFBYSxHQUFRLGlCQUFpQixDQUFDO0lBQ3ZDLGdCQUFnQixHQUFZLEtBQUssQ0FBQTtJQUNqQyxlQUFlLENBQU07SUFDckIsV0FBVyxDQUFNO0lBQ2pCLFFBQVEsR0FBUSxFQUFFLENBQUM7SUFDbkIsYUFBYSxDQUFNO0lBQ25CLGFBQWEsR0FBVSxDQUFDLGlCQUFpQixFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDdkYsV0FBVyxHQUFVLENBQUMsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSwwQkFBMEIsRUFBRSxF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LENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciwgVmlld0NoaWxkLCBDaGFuZ2VEZXRlY3RvclJlZiwgT25Jbml0LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTmdiTW9kYWwsIE5nYk1vZGFsUmVmLCBOZ2JBY3RpdmVNb2RhbCwgTmdiVG9vbHRpcCB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcclxuaW1wb3J0IHsgQ29udGFjdERldGFpbHNDb21wb25lbnQgfSBmcm9tICcuLi9jb250YWN0LWRldGFpbHMvY29udGFjdC1kZXRhaWxzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRha2VyZW1vdGVDb21wb25lbnQgfSBmcm9tICcuLi90YWtlcmVtb3RlL3Rha2VyZW1vdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG4vLyBpbXBvcnQgeyBUb2FzdFNlcnZpY2UgfSBmcm9tICdwcm9qZWN0cy90YW5nby1hcHAtc2hhcmVkL3NyYy9wdWJsaWMtYXBpJztcclxuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlIH0gZnJvbSAndGFuZ28tYXBwLXVpLXNoYXJlZCc7XHJcbmltcG9ydCB7IERhdGFTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZGF0YS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVGlja2V0c1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy90aWNrZXQtaW5mcmEuc2VydmljZSc7XHJcbmltcG9ydCB7IEdsb2JhbFN0YXRlU2VydmljZSB9IGZyb20gJ3RhbmdvLWFwcC11aS1nbG9iYWwnO1xyXG4vLyBpbXBvcnQgeyBHbG9iYWxTdGF0ZVNlcnZpY2UgfSBmcm9tICdwcm9qZWN0cy90YW5nby1hcHAtc2hhcmVkL3NyYy9wdWJsaWMtYXBpJztcclxuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1pbnN0YWxsYXRpb24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnN0YWxsYXRpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9pbnN0YWxsYXRpb24uY29tcG9uZW50LnNjc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbnN0YWxsYXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcblxyXG4gIFNlbGVjdGVkVGFiOiBhbnkgPSAndGlja2V0JztcclxuICBzZWxlY3RlZElzc3VlOiBhbnkgPSAnSW50ZXJuZXQgSXNzdWVzJztcclxuICBwcmVyZXF1ZXN0RmFpbGVkOiBib29sZWFuID0gZmFsc2VcclxuICBzZWNvbmRhcnlJc3N1ZXM6IGFueTtcclxuICBpc3N1ZVN0YXR1czogYW55O1xyXG4gIGNvbW1lbnRzOiBhbnkgPSAnJztcclxuICBwcmltYXJ5SXNzdWVzOiBhbnk7XHJcbiAgZHJvcGRvd25JdGVtczogYW55W10gPSBbJ0ludGVybmV0IElzc3VlcycsICdDYW1lcmEgSXNzdWVzJywgJ1N5c3RlbSBJc3N1ZXMnLCAnT3RoZXJzJ107XHJcbiAgb3RoZXJzSXNzdWU6IGFueVtdID0gW3sgbmFtZTogJ1Bvd2VyIFNodXRkb3duJyB9LCB7IG5hbWU6ICdTdG9yZSBUZW1wb3JhcmlseSBDbG9zZWQnIH0sIHsgbmFtZTogJ0FwcGxpY2F0aW9uIElzc3VlcycgfV1cclxuICBjYW1lcmFJc3N1ZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGNhbWVyYVNlbGVjdFdvcms6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIHNob3dTdWJtaXQ6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIGNhbWVyYVNlbGVjdDogYW55O1xyXG4gIHN0YXRlOiBhbnk7XHJcbiAgbG9hZGluZzogYm9vbGVhbiA9IHRydWU7XHJcbiAgbm9EYXRhOiBib29sZWFuID0gZmFsc2U7XHJcbiAgaW5wdXRIaWJlcm5hdGlvbjogYW55ID0gJzAwJztcclxuICBjb3VudDogYW55ID0gMDtcclxuICBpc0NoZWNrZWQ6IGJvb2xlYW5bXSA9IFtdO1xyXG4gIHJlc29sdmVkSXNzdWU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBkcm9wRG93bjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHRpY2tldElkOiBzdHJpbmcgfCBudWxsO1xyXG4gIHRpY2tldEluZm86IGFueTtcclxuICBhY3RpdmVUaWNrZXREZXRhaWxzOiBhbnk7XHJcbiAgc3RvcmVBZGRyZXNzOiBhbnk7XHJcbiAgcmVwbHlPcGVuOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcmVwbGllZElzc3VlOiBhbnk7XHJcbiAgdmlld1RpY2tldERhdGE6IGFueTtcclxuICBjdXJyZW50VGltZTogRGF0ZSA9IG5ldyBEYXRlKCk7XHJcbiAgdGFyZ2V0VGltZTogRGF0ZVxyXG4gIHNlbGVjdGVkRmlsZXM6IGFueSA9IFtdO1xyXG4gIGJyYW5kTG9nbzogc3RyaW5nIHwgQXJyYXlCdWZmZXIgfCBudWxsID0gbnVsbDtcclxuICBsYXN0TW9kaWZpZWREYXRlU3RyaW5nOiBzdHJpbmc7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2ZpbGVJbnB1dCcpIGZpbGVJbnB1dDogYW55O1xyXG4gIEBWaWV3Q2hpbGQoJ3Rvb2x0aXBDb250ZW50JykgdG9vbHRpcENvbnRlbnQhOiBOZ2JUb29sdGlwO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQgPSBuZXcgU3ViamVjdCgpO1xyXG4gIGhlYWRlckZpbHRlcjogYW55O1xyXG4gIHVzZXI6IGFueTtcclxuICB1cGRhdGVkRGF0ZTogRGF0ZTtcclxuICBpc0dyZWF0ZXJUaGFuNV8zMEhvdXJzOiBib29sZWFuO1xyXG4gIHN0b3JlSWQ6IHN0cmluZyB8IG51bGw7XHJcbiAgc3RvcmVEcm9wRG93bjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHNlbGVjdGVkT3B0aW9uOiBhbnk7XHJcbiAgSGliZXJuYXRpb246IGFueTtcclxuICBjbGllbnRJZDogYW55O1xyXG4gIGluc3RhbGxhdGlvblN0YXJ0OiBib29sZWFuID0gdHJ1ZTtcclxuICBjb25maWd1cmluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGluc3RhbGxhdGlvblJlc3VtZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHNob3dmb3JtOiBib29sZWFuID0gZmFsc2U7XHJcbiAgc3RvcmVOYW1lOiBhbnk7XHJcbiAgbm90d29ya2luZ0NhbWFyYWxpc3Q6IGFueVtdID0gW107XHJcbiAgdXNlclR5cGU6IGFueTtcclxuICBlcnJvck1lc3NhZ2U6IHN0cmluZztcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG1vZGFsU2VydmljZTogTmdiTW9kYWwsIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIHNlcnZpY2U6IFRpY2tldHNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICAgIHByaXZhdGUgdG9hc3RTZXJ2aWNlOiBUb2FzdFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgZ3M6IEdsb2JhbFN0YXRlU2VydmljZSkge1xyXG4gICAgdGhpcy50aWNrZXRJZCA9IHRoaXMucm91dGUuc25hcHNob3QucGFyYW1NYXAuZ2V0KCd0aWNrZXRJZCcpO1xyXG4gICAgdGhpcy5zdG9yZUlkID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJhbU1hcC5nZXQoJ3N0b3JlSWQnKTtcclxuICAgIHRoaXMudmlld1RpY2tldCgpXHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50J10pXHJcbiAgb25DbGljayhldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgY29uc3RcclxuICAgICAgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgaWYgKCF0YXJnZXQuY2xvc2VzdCgnLmRyb3BEb3duJykpIHtcclxuICAgICAgdGhpcy5kcm9wRG93biA9IGZhbHNlO1xyXG4gICAgfVxyXG4gICAgaWYgKCF0YXJnZXQuY2xvc2VzdCgnLnN0b3JlRHJvcERvd24nKSkge1xyXG4gICAgICB0aGlzLnN0b3JlRHJvcERvd24gPSBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgbGV0IHVzZXJJbmZvID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgndXNlci1pbmZvJykgfHwgJ3t9JylcclxuICAgIHRoaXMudXNlclR5cGUgPSB1c2VySW5mby51c2VyVHlwZVxyXG4gICAgdGhpcy5ncy5kYXRhUmFuZ2VWYWx1ZS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChkYXRhOiBhbnkpID0+IHtcclxuICAgICAgaWYgKGRhdGEgIT0gbnVsbCkge1xyXG4gICAgICAgIHRoaXMudXNlciA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3VzZXItaW5mbycpIHx8IFwiXCIpXHJcbiAgICAgICAgdGhpcy5oZWFkZXJGaWx0ZXIgPSBkYXRhO1xyXG4gICAgICAgIHRoaXMuYWN0aXZlVGlja2V0KCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xyXG4gIH1cclxuXHJcbiAgdmlld1RpY2tldCgpIHtcclxuICAgIGxldCBwYXJhbXMgPSB7XHJcbiAgICAgIHRpY2tldElkOiB0aGlzLnRpY2tldElkXHJcbiAgICB9XHJcbiAgICB0aGlzLnNlcnZpY2Uudmlld1RpY2tldChwYXJhbXMpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG5cclxuICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy50aWNrZXRJbmZvID0gcmVzPy5kYXRhO1xyXG4gICAgICAgICAgaWYgKHRoaXMudGlja2V0SW5mby50aWNrZXREZXRhaWxzLmluc3RhbGxhdGlvblN0YXR1cyA9PSAnaW5zdGFsbGF0aW9uZmFpbGVkJykge1xyXG4gICAgICAgICAgICB0aGlzLmNvbmZpZ3VyaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuaW5zdGFsbGF0aW9uU3RhcnQgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5pbnN0YWxsYXRpb25SZXN1bWUgPSB0cnVlO1xyXG4gICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnRpY2tldEluZm8udGlja2V0RGV0YWlscy5pbnN0YWxsYXRpb25TdGF0dXMgPT0gJ3BhaXJlZCcpIHtcclxuICAgICAgICAgICAgdGhpcy5jb25maWd1cmluZyA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuaW5zdGFsbGF0aW9uU3RhcnQgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5pbnN0YWxsYXRpb25SZXN1bWUgPSBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMudmlld1RpY2tldERhdGEgPSByZXMuZGF0YS50aWNrZXRBY3Rpdml0eS5zbGljZSgpLnJldmVyc2UoKTtcclxuICAgICAgICAgIHRoaXMudmlld1RpY2tldERhdGEuZm9yRWFjaCgoZTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIGUudGltZVN0YW1wID0gdGhpcy5nZXRSZWxhdGl2ZVRpbWUoZS50aW1lU3RhbXApO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICByZXMuZGF0YS50aWNrZXRBY3Rpdml0eS5mb3JFYWNoKChlbGVtZW50OiBhbnkpID0+IHtcclxuICAgICAgICAgICBcclxuXHJcbiAgICAgICAgICAgIGlmIChlbGVtZW50LmFjdGlvblR5cGUgPT0gJ3ByZXJlcXVlc3RjaGVja2ZhaWxlZCcgJiYgcmVzLmRhdGE/LnRpY2tldERldGFpbHM/Lmlzc3VlU3RhdHVzICE9ICdpZGVudGlmaWVkJykge1xyXG5cclxuICAgICAgICAgICAgICB0aGlzLnByZXJlcXVlc3RGYWlsZWQgPSB0cnVlXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgaWYgKHJlcz8uZGF0YT8uc3RhdHVzID09ICdvcGVuJykge1xyXG4gICAgICAgICAgICB0aGlzLnN0YXR1c1VwZGF0ZSgpXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpXHJcblxyXG5cclxuICAgICAgfSxcclxuICAgICAgZXJyb3I6IChlcnIpID0+IHtcclxuICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuXHJcbiAgICAgIH0sXHJcbiAgICAgIGNvbXBsZXRlKCkge1xyXG5cclxuICAgICAgfVxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIGdldENhbWVyYUxpc3Qobm90d29ya2luZ0NhbWVyYTogYW55KSB7XHJcbiAgICBsZXQgcGFyYW1zID0ge1xyXG4gICAgICBjYW1lcmE6IG5vdHdvcmtpbmdDYW1lcmFcclxuICAgIH1cclxuICAgIHRoaXMuc2VydmljZS5nZXRDYW1lcmFMaXN0KHBhcmFtcykucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT0gMjAwKSB7XHJcbiAgICAgICAgICB0aGlzLm5vdHdvcmtpbmdDYW1hcmFsaXN0ID0gcmVzLmRhdGFcclxuICAgICAgICAgIGNvbnNvbGUubG9nKCdub3R3b3JraW5nQ2FtYXJhbGlzdCcsIHRoaXMubm90d29ya2luZ0NhbWFyYWxpc3QpXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgdXBkYXRlSXNzdWUoKSB7XHJcbiAgICB0aGlzLnNob3dmb3JtID0gdHJ1ZVxyXG4gICAgdGhpcy5wcmltYXJ5UmVhc29uKCk7XHJcbiAgICB0aGlzLnNlY29uZGFyeVJlYXNvbih0aGlzLnNlbGVjdGVkSXNzdWUpO1xyXG4gIH1cclxuXHJcbiAgZ2V0UmVsYXRpdmVUaW1lKHRpbWVzdGFtcDogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSh0aW1lc3RhbXApO1xyXG4gICAgY29uc3QgY3VycmVudERhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gICAgY29uc3QgZGlmZmVyZW5jZSA9IGN1cnJlbnREYXRlLmdldFRpbWUoKSAtIGRhdGUuZ2V0VGltZSgpO1xyXG4gICAgY29uc3Qgc2Vjb25kcyA9IE1hdGguZmxvb3IoZGlmZmVyZW5jZSAvIDEwMDApO1xyXG4gICAgY29uc3QgbWludXRlcyA9IE1hdGguZmxvb3Ioc2Vjb25kcyAvIDYwKTtcclxuICAgIGNvbnN0IGhvdXJzID0gTWF0aC5mbG9vcihtaW51dGVzIC8gNjApO1xyXG4gICAgY29uc3QgZGF5cyA9IE1hdGguZmxvb3IoaG91cnMgLyAyNCk7XHJcblxyXG4gICAgaWYgKGRheXMgPiAwKSB7XHJcbiAgICAgIHJldHVybiBkYXlzID09PSAxID8gJzEgZGF5IGFnbycgOiBgJHtkYXlzfSBkYXlzIGFnb2A7XHJcbiAgICB9IGVsc2UgaWYgKGhvdXJzID4gMCkge1xyXG4gICAgICByZXR1cm4gaG91cnMgPT09IDEgPyAnMSBob3VyIGFnbycgOiBgJHtob3Vyc30gaG91cnMgYWdvYDtcclxuICAgIH0gZWxzZSBpZiAobWludXRlcyA+IDApIHtcclxuICAgICAgcmV0dXJuIG1pbnV0ZXMgPT09IDEgPyAnMSBtaW51dGUgYWdvJyA6IGAke21pbnV0ZXN9IG1pbnV0ZXMgYWdvYDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiAnSnVzdCBub3cnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYWN0aXZlVGlja2V0KCkge1xyXG4gICAgbGV0IGRhdGEgPSB7XHJcbiAgICAgIHVzZXJJZDogdGhpcy51c2VyLl9pZCxcclxuICAgICAgaXNzdWVUeXBlOiBcImluc3RhbGxhdGlvblwiLFxyXG4gICAgICBmcm9tRGF0ZTogdGhpcy5oZWFkZXJGaWx0ZXI/LmRhdGU/LnN0YXJ0RGF0ZSxcclxuICAgICAgdG9EYXRlOiB0aGlzLmhlYWRlckZpbHRlcj8uZGF0ZT8uZW5kRGF0ZSxcclxuICAgIH1cclxuICAgIHRoaXMuc2VydmljZS5hY3RpdmVUaWNrZXQoZGF0YSkucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMuYWN0aXZlVGlja2V0RGV0YWlscyA9IHJlcz8uZGF0YTtcclxuICAgICAgICB0aGlzLnN0b3JlQWRkcmVzcyA9IHRoaXMuYWN0aXZlVGlja2V0RGV0YWlscz8uZGF0YT8uZmlsdGVyKChpdGVtOiBhbnkpID0+IHtcclxuICAgICAgICAgIHJldHVybiBpdGVtLnN0b3JlSWQgPT09IHRoaXMuc3RvcmVJZDtcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLnN0b3JlQWRkcmVzcyA9IHRoaXMuc3RvcmVBZGRyZXNzWzBdO1xyXG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9LFxyXG5cclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBnZXRzdG9yZUFkZHJlc3MoZGV0YWlsczogYW55KSB7XHJcbiAgICB0aGlzLnN0b3JlQWRkcmVzcyA9IGRldGFpbHNcclxuICAgIHRoaXMuc3RvcmVOYW1lID0gdGhpcy5zdG9yZUFkZHJlc3Muc3RvcmVOYW1lO1xyXG4gICAgdGhpcy5zdG9yZUlkID0gdGhpcy5zdG9yZUFkZHJlc3Muc3RvcmVJZFxyXG4gICAgdGhpcy5jbGllbnRJZCA9IHRoaXMuc3RvcmVBZGRyZXNzLmNsaWVudElkXHJcbiAgICB0aGlzLnN0b3JlRHJvcERvd24gPSBmYWxzZTtcclxuICAgIHRoaXMudGlja2V0SWQgPSBkZXRhaWxzLnRpY2tldElkXHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKGB0aWNrZXRzL3VzZXJzL2luc3RhbGxhdGlvbmluZm8vJHtkZXRhaWxzLnRpY2tldElkfS8ke2RldGFpbHMuc3RvcmVJZH1gKVxyXG4gICAgdGhpcy52aWV3VGlja2V0KCk7XHJcbiAgfVxyXG5cclxuICBQcmV2Um91dGUoKSB7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKCcvdGlja2V0cy91c2Vycz90eXBlPWluc3RhbGxhdGlvbicpXHJcbiAgfVxyXG5cclxuICBwcmltYXJ5UmVhc29uKCkge1xyXG4gICAgbGV0IHBhcmFtcyA9IHtcclxuICAgICAgXCJuYW1lXCI6IHRoaXMuc2VsZWN0ZWRJc3N1ZSxcclxuICAgICAgXCJvcmRlclwiOiAyXHJcbiAgICB9XHJcbiAgICB0aGlzLnNlcnZpY2UucHJpbWFyeVJlYXNvbihwYXJhbXMpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgICAgdGhpcy5wcmltYXJ5SXNzdWVzID0gcmVzO1xyXG4gICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICBlcnJvcjogKGVycikgPT4ge1xyXG4gICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG5cclxuICAgICAgfSxcclxuICAgICAgY29tcGxldGUoKSB7XHJcblxyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgc2Vjb25kYXJ5UmVhc29uKHZhbHVlOiBhbnkpIHtcclxuICAgIGxldCBwYXJhbXMgPSB7IFwicHJpbWFyeUlzc3VlXCI6IHZhbHVlIH1cclxuICAgIHRoaXMuc2VydmljZS5zZWNvbmRhcnlSZWFzb24ocGFyYW1zKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKHtcclxuICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgIHRoaXMuc2Vjb25kYXJ5SXNzdWVzID0gcmVzLmRhdGEucmVzdWx0O1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgfSxcclxuICAgICAgZXJyb3IoZXJyKSB7XHJcblxyXG4gICAgICB9LFxyXG4gICAgICBjb21wbGV0ZTogKCkgPT4ge1xyXG4gICAgICB9LFxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHVwZGF0ZVRpY2tldCgpIHtcclxuICAgIHRoaXMuc2hvd2Zvcm0gPSBmYWxzZTtcclxuICAgIHRoaXMucHJlcmVxdWVzdEZhaWxlZCA9IGZhbHNlO1xyXG4gICAgbGV0IGRhdGFcclxuICAgIGlmICh0aGlzLnNlY29uZGFyeUlzc3VlcyAmJiB0aGlzLnNlY29uZGFyeUlzc3Vlcz8ubGVuZ3RoID4gMCkge1xyXG4gICAgICBpZiAodGhpcy5zZWxlY3RlZElzc3VlID09ICdPdGhlcnMnKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRPcHRpb24gPT09ICdBcHBsaWNhdGlvbiBJc3N1ZXMnKSB7XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkSXNzdWUgPSAnQXBwbGljYXRpb24gSXNzdWVzJztcclxuICAgICAgICAgIGRhdGEgPSBbXTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5zZWxlY3RlZElzc3VlID0gJ1N0b3JlIE9wZXJhdGlvbiBJc3N1ZXMnO1xyXG4gICAgICAgICAgZGF0YSA9IFt0aGlzLnNlbGVjdGVkT3B0aW9uXVxyXG4gICAgICAgIH1cclxuICAgICAgICAvLyBkYXRhID0gdGhpcy5vdGhlcnNJc3N1ZS5maWx0ZXIoKGl0ZW06IGFueSkgPT4gaXRlbS5jaGVja2VkKS5tYXAoKGl0ZW06IGFueSkgPT4gaXRlbS5uYW1lKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBkYXRhID0gdGhpcy5zZWNvbmRhcnlJc3N1ZXMuZmlsdGVyKChpdGVtOiBhbnkpID0+IGl0ZW0uY2hlY2tlZCkubWFwKChpdGVtOiBhbnkpID0+IGl0ZW0ubmFtZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGlmICh0aGlzLnNlbGVjdGVkT3B0aW9uICE9ICdBcHBsaWNhdGlvbiBJc3N1ZXMnKSB7XHJcbiAgICBpZih0aGlzLnRpY2tldEluZm8/LnRpY2tldERldGFpbHMuaXNzdWVTdGF0dXMgPT09J25vdGlkZW50aWZpZWQnJiZkYXRhJiZkYXRhLmxlbmd0aD09MHx8dGhpcy50aWNrZXRJbmZvPy50aWNrZXREZXRhaWxzLnRpY2tldFR5cGU9PSdyZWZyZXNodGlja2V0JyYmdGhpcy50aWNrZXRJbmZvPy50aWNrZXREZXRhaWxzPy5yZWZyZXNoVGlja2V0U3RhdHVzPT09J25vdGlkZW50aWZpZWQnJiZkYXRhJiZkYXRhLmxlbmd0aD09MCl7XHJcbiAgICAgIHJldHVybiAgdGhpcy50b2FzdFNlcnZpY2UuZ2V0RXJyb3JUb2FzdChcIlBsZWFzZSBTZWxlY3QgSXNzdWVzXCIpXHJcbiAgICB9ZWxzZSBpZih0aGlzLnRpY2tldEluZm8/LnRpY2tldERldGFpbHMuaXNzdWVTdGF0dXMgPT09J2lkZW50aWZpZWQnJiZ0aGlzLmNvbW1lbnRzID09Jyd8fHRoaXMudGlja2V0SW5mbz8udGlja2V0RGV0YWlscy50aWNrZXRUeXBlPT0ncmVmcmVzaHRpY2tldCcmJnRoaXMudGlja2V0SW5mbz8udGlja2V0RGV0YWlscz8ucmVmcmVzaFRpY2tldFN0YXR1cz09PSdpZGVudGlmaWVkJyYmdGhpcy5jb21tZW50cz09MCl7XHJcbiAgICAgIHJldHVybiAgdGhpcy50b2FzdFNlcnZpY2UuZ2V0RXJyb3JUb2FzdChcIlBsZWFzZSBFbnRlciBDb21tZW50c1wiKVxyXG4gICAgfVxyXG4gIH1cclxuICAgIGxldCB0aWNrZXREZXRhaWxzID0ge1xyXG4gICAgICBcInRpY2tldElkXCI6IHRoaXMudGlja2V0SWQsXHJcbiAgICAgIFwicHJpbWFyeVwiOiB0aGlzLnNlbGVjdGVkSXNzdWUsXHJcbiAgICAgIFwic2Vjb25kYXJ5XCI6IGRhdGEsXHJcbiAgICAgIFwiY29tbWVudFwiOiB0aGlzLmNvbW1lbnRzXHJcbiAgICB9XHJcbiAgICB0aGlzLnNlcnZpY2UudXBkYXRlVGlja2V0KHRpY2tldERldGFpbHMpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgICAgdGhpcy50b2FzdFNlcnZpY2UuZ2V0U3VjY2Vzc1RvYXN0KHJlcy5tZXNzYWdlKVxyXG4gICAgICAgICAgdGhpcy52aWV3VGlja2V0KClcclxuICAgICAgICAgIHRoaXMuY29tbWVudHMgPSAnJ1xyXG4gICAgICAgICAgdGhpcy5zZWxlY3RlZElzc3VlID0gW11cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy50b2FzdFNlcnZpY2UuZ2V0RXJyb3JUb2FzdChyZXMubWVzc2FnZSlcclxuICAgICAgICB9XHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yOiAoZXJyKSA9PiB7XHJcbiAgICAgICAgdGhpcy50b2FzdFNlcnZpY2UuZ2V0RXJyb3JUb2FzdChlcnIuRXJyb3IpXHJcbiAgICAgIH0sXHJcbiAgICAgIGNvbXBsZXRlKCkge1xyXG5cclxuICAgICAgfSxcclxuICAgIH0pXHJcblxyXG4gIH1cclxuXHJcbiAgc3RhdHVzVXBkYXRlKCkge1xyXG4gICAgbGV0IGRhdGEgPSB7XHJcbiAgICAgIFwidGlja2V0SWRcIjogdGhpcy50aWNrZXRJZCxcclxuICAgICAgXCJzdGF0dXNcIjogXCJpbnByb2dyZXNzXCJcclxuICAgIH1cclxuICAgIHRoaXMuc2VydmljZS5zdGF0dXNVcGRhdGUoZGF0YSkucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKHJlcylcclxuICAgICAgfVxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIGFkZENvbW1lbnQoKSB7XHJcbiAgICB0aGlzLmNvbW1lbnRzID0gdGhpcy5jb21tZW50c1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0SXRlbSh2YWx1ZTogYW55KSB7XHJcbiAgICB0aGlzLnNob3dTdWJtaXQgPSB0cnVlXHJcbiAgICB0aGlzLnNlbGVjdGVkSXNzdWUgPSB2YWx1ZTtcclxuICAgIHRoaXMuc2Vjb25kYXJ5UmVhc29uKHRoaXMuc2VsZWN0ZWRJc3N1ZSlcclxuICAgIC8vIGlmICh0aGlzLnNlbGVjdGVkSXNzdWUgPT0gJ0NhbWVyYSBJc3N1ZXMnKSB7XHJcbiAgICAvLyAgIHRoaXMuc2hvd1N1Ym1pdCA9IGZhbHNlXHJcbiAgICAvLyB9XHJcbiAgICB0aGlzLmRyb3BEb3duID0gZmFsc2U7XHJcbiAgfVxyXG4gIGRvd25sb2FkaW1hZ2UodXJsOiBhbnkpIHtcclxuICAgIGNvbnN0IGEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XHJcbiAgICBhLmhyZWYgPSB1cmw7XHJcbiAgICBhLmRvd25sb2FkID0gdXJsO1xyXG4gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKTtcclxuICAgIGEuY2xpY2soKTtcclxuICB9XHJcbiAgb3BlblJlbW90ZSgpIHtcclxuICAgIGNvbnN0IG1vZGFsUmVmID0gdGhpcy5tb2RhbFNlcnZpY2Uub3BlbihUYWtlcmVtb3RlQ29tcG9uZW50LCB7IGNlbnRlcmVkOiB0cnVlLCBzY3JvbGxhYmxlOiB0cnVlLCB9KTtcclxuICAgIG1vZGFsUmVmLmNvbXBvbmVudEluc3RhbmNlLnN0b3JlRGV0YWlscyA9IHtcclxuICAgICAgc3RvcmVOYW1lOiB0aGlzLnN0b3JlQWRkcmVzcz8uc3RvcmVOYW1lLFxyXG4gICAgICBjbGllbnRJZDogdGhpcy5zdG9yZUFkZHJlc3M/LmNsaWVudElkLFxyXG4gICAgICBzdG9yZUlkOiB0aGlzLnN0b3JlQWRkcmVzcz8uc3RvcmVJZFxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2FtZXJhU2VsZWN0ZWQodmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5jYW1lcmFTZWxlY3QgPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHByb2NlZGRJbWFnZSh2YWx1ZTogYW55KSB7XHJcbiAgICB0aGlzLnNob3dTdWJtaXQgPSB0cnVlO1xyXG4gICAgdGhpcy5jYW1lcmFJc3N1ZSA9IHRydWU7XHJcbiAgICB0aGlzLmNhbWVyYVNlbGVjdFdvcmsgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIFNlbGVjdGVkVGFicyh2YWx1ZTogYW55KSB7XHJcbiAgICB0aGlzLlNlbGVjdGVkVGFiID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICB0b2dnbGVDaGVja2JveChpbmRleDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLnNlY29uZGFyeUlzc3Vlc1tpbmRleF0uY2hlY2tlZCA9ICF0aGlzLnNlY29uZGFyeUlzc3Vlc1tpbmRleF0uY2hlY2tlZDtcclxuICB9XHJcbiAgdG9nZ2xlUmFkaW9ib3gob3RoZXJzOiBhbnkpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRPcHRpb24gPSBvdGhlcnMubmFtZTtcclxuICB9XHJcbiAgZGVjcmVzZUNvdW50KCk6IGFueSB7XHJcbiAgICB0aGlzLmNvdW50IC09IDE7XHJcbiAgfVxyXG5cclxuICBpbmNyZWFzZUNvdW50KCk6IGFueSB7XHJcbiAgICB0aGlzLmNvdW50ICs9IDE7XHJcbiAgfVxyXG5cclxuICBvcGVuQ29udGFjdCgpIHtcclxuXHJcbiAgICBjb25zdCBtb2RhbFJlZiA9IHRoaXMubW9kYWxTZXJ2aWNlLm9wZW4oQ29udGFjdERldGFpbHNDb21wb25lbnQsXHJcbiAgICAgIHtcclxuICAgICAgICBjZW50ZXJlZDogdHJ1ZSxcclxuICAgICAgICBzY3JvbGxhYmxlOiB0cnVlLFxyXG4gICAgICB9KTtcclxuICAgIG1vZGFsUmVmLmNvbXBvbmVudEluc3RhbmNlLnZhbHVlID0ge1xyXG4gICAgICBzdG9yZU5hbWU6IHRoaXMuc3RvcmVBZGRyZXNzLnN0b3JlTmFtZSxcclxuICAgICAgc3RvcmVJZDogdGhpcy5zdG9yZUFkZHJlc3Muc3RvcmVJZCxcclxuICAgICAgY2xpZW50SWQ6IHRoaXMuc3RvcmVBZGRyZXNzLmNsaWVudElkXHJcbiAgICB9LFxyXG5cclxuICAgICAgbW9kYWxSZWYucmVzdWx0LnRoZW4oKHJlc3VsdCkgPT4ge1xyXG5cclxuICAgICAgfSlcclxuXHJcblxyXG4gIH1cclxuXHJcbiAgb3BlbkRyb3Bkb3duKGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIHRoaXMuZHJvcERvd24gPSAhdGhpcy5kcm9wRG93bjtcclxuICB9XHJcbiAgc3RvcmVDaGFuZ2UoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgdGhpcy5zdG9yZURyb3BEb3duID0gIXRoaXMuc3RvcmVEcm9wRG93bjtcclxuICB9XHJcbiAgb3BlbkZpbGVJbnB1dCgpIHtcclxuICAgIHRoaXMuZmlsZUlucHV0Lm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcclxuICB9XHJcblxyXG4gIG9uRmlsZVNlbGVjdGVkKGV2ZW50OiBhbnkpIHtcclxuICAgIGlmIChldmVudC50YXJnZXQuZmlsZXMgJiYgZXZlbnQudGFyZ2V0LmZpbGVzLmxlbmd0aCA+IDApIHtcclxuICAgICAgbGV0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7XHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZXZlbnQudGFyZ2V0LmZpbGVzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgbGV0IGZpbGU6IEZpbGUgPSBldmVudC50YXJnZXQuZmlsZXNbaV07XHJcbiAgICAgICAgaWYgKCFmaWxlLnR5cGUuc3RhcnRzV2l0aCgnaW1hZ2UvJykpIHtcclxuICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJ09ubHkgaW1hZ2UgZmlsZXMgYXJlIGFsbG93ZWQhJztcclxuICAgICAgICAgIHJldHVybjsgLy8gU3RvcCBmdXJ0aGVyIHByb2Nlc3NpbmdcclxuICAgICAgICB9XHJcbiAgICAgICAgZm9ybURhdGEuYXBwZW5kKCdpbWcnLCBmaWxlKTtcclxuICAgICAgICBsZXQgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcclxuICAgICAgICByZWFkZXIub25sb2FkID0gKGU6IGFueSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5zZWxlY3RlZEZpbGVzLnB1c2goe1xyXG4gICAgICAgICAgICBuYW1lOiBmaWxlLm5hbWUsXHJcbiAgICAgICAgICAgIHVybDogZS50YXJnZXQucmVzdWx0LFxyXG4gICAgICAgICAgICBsYXN0TW9kaWZpZWREYXRlU3RyaW5nOiBuZXcgRGF0ZShmaWxlLmxhc3RNb2RpZmllZCkudG9Mb2NhbGVTdHJpbmcoKVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB9O1xyXG4gICAgICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGZpbGUpO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuc2VydmljZS51cGxvYWRBdHRhY2htZW50cyh0aGlzLnRpY2tldElkLCBmb3JtRGF0YSkucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgICAgICB0aGlzLnRvYXN0U2VydmljZS5nZXRTdWNjZXNzVG9hc3QocmVzLm1lc3NhZ2UpXHJcbiAgICAgICAgICAgIHRoaXMudmlld1RpY2tldCgpXHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLnRvYXN0U2VydmljZS5nZXRFcnJvclRvYXN0KHJlcy5tZXNzYWdlKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IChlcnIpID0+IHtcclxuICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLmdldEVycm9yVG9hc3QoZXJyLkVycm9yKVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgY29tcGxldGUoKSB7XHJcblxyXG4gICAgICAgIH0sXHJcbiAgICAgIH0pXHJcblxyXG5cclxuXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjbG9zZVRvb2x0aXAoKSB7XHJcbiAgICBpZiAodGhpcy50b29sdGlwQ29udGVudCkge1xyXG4gICAgICB0aGlzLnRvb2x0aXBDb250ZW50LmNsb3NlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzaG93VG9vbHRpcCgpIHtcclxuICAgIGlmICh0aGlzLnRvb2x0aXBDb250ZW50KSB7XHJcbiAgICAgIHRoaXMudG9vbHRpcENvbnRlbnQub3BlbigpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhcnRJbnN0YWxsYXRpb24oKSB7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbXCIvdGlja2V0cy91c2Vycy9pbnN0YWxsYXRpb25pbmZvL2VkZ2UtYXBwL2VkZ2UtZW1haWwtam91cm5leVwiXSwge1xyXG4gICAgICBxdWVyeVBhcmFtczogeyBzdG9yZUlkOiB0aGlzLnN0b3JlSWQsIHRpY2tldElkOiB0aGlzLnRpY2tldElkIH0sXHJcbiAgICB9KTtcclxuICB9XHJcbiAgQ29uZmlndXJpbmcoKSB7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbXCIvdGlja2V0cy91c2Vycy9pbnN0YWxsYXRpb25pbmZvL2VkZ2UtYXBwL2VkZ2UtaW5zdGFsbGF0aW9uXCJdLCB7XHJcbiAgICAgIHF1ZXJ5UGFyYW1zOiB7IHN0b3JlSWQ6IHRoaXMuc3RvcmVJZCwgdGlja2V0SWQ6IHRoaXMudGlja2V0SWQgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIHJlc3VtZUluc3RhbGxhdGlvbigpIHtcclxuXHJcbiAgICB0aGlzLnNlcnZpY2UudXBkYXRlU3RvcmUodGhpcy50aWNrZXRJZCkucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSh7XHJcbiAgICB9KVxyXG5cclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtcIi90aWNrZXRzL3VzZXJzL2luc3RhbGxhdGlvbmluZm8vZWRnZS1hcHAvZWRnZS1pbnN0YWxsYXRpb25cIl0sIHtcclxuICAgICAgcXVlcnlQYXJhbXM6IHsgc3RvcmVJZDogdGhpcy5zdG9yZUlkLCB0aWNrZXRJZDogdGhpcy50aWNrZXRJZCB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJtYi01IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1haW5jYXJkLWNvbnRlbnQgYmctd2hpdGUgcHgtMyBweS0yIG1lLTMgY3Vyc29yLXBvaW50ZXJcIiBzdHlsZT1cIndpZHRoOiBmaXQtY29udGVudDtcIiAoY2xpY2spPVwiUHJldlJvdXRlKClcIj4gPHN2Z1xyXG4gICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTRcIiBoZWlnaHQ9XCIxNFwiIHZpZXdCb3g9XCIwIDAgMTQgMTRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMi44MzI3IDYuOTk5MzVIMS4xNjYwMk0xLjE2NjAyIDYuOTk5MzVMNi45OTkzNSAxMi44MzI3TTEuMTY2MDIgNi45OTkzNUw2Ljk5OTM1IDEuMTY2MDJcIlxyXG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMzNDQwNTRcIiBzdHJva2Utd2lkdGg9XCIxLjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgPC9zdmc+PC9kaXY+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJmdy1zZW1pYm9sZCBzdG9yZS1sYWJlbFwiPiB7e3N0b3JlSWR9fTwvc3Bhbj4gPHNwYW4gKm5nSWY9XCJzdG9yZUFkZHJlc3M/LmFkZHJlc3NcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImZ3LWJvbGQgc3RvcmUtbGFiZWxcIj4gfFxyXG4gICAgICAgICAgICB7e3N0b3JlQWRkcmVzcz8uYWRkcmVzc319IDwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0LXByaW1hcnlcIj4ge3thY3RpdmVUaWNrZXREZXRhaWxzPy5jb3VudH19IHt7c3RvcmVBZGRyZXNzPy5zdGF0dXN9fTwvc3Bhbj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmUgcHMtM1wiPlxyXG4gICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwic3RvcmVDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tZGVmYXVsdCB3LTEwMCBidG4tb3V0bGluZSBidG4tb3V0bGluZS1kZWZhdWx0IHJvdW5kZWQtMyB0ZXh0LW5vd3JhcCBib3JkZXItdmFsIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBiZy13aGl0ZVwiPlxyXG4gICAgICAgICAgICAgICAge3tzdG9yZUlkID8gc3RvcmVJZCA6IHN0b3JlQWRkcmVzcz8uc3RvcmVJZH19XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1zLTNcIj48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk01IDcuNUwxMCAxMi41TDE1IDcuNVwiIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjY2NjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cInN0b3JlRHJvcERvd25cIiBjbGFzcz1cImNhcmQgcHktMSB6LTEgdy0yMDBweCBwb3NpdGlvbi1hYnNvbHV0ZSB0b3AtNTBweCBlbmQtMCBoLTMwMHB4IG92ZXJmbG93LWF1dG9cIj5cclxuICAgICAgICAgICAgICAgIDx1bCAqbmdGb3I9XCJsZXQgZGV0YWlscyBvZiBhY3RpdmVUaWNrZXREZXRhaWxzPy5kYXRhXCIgY2xhc3M9XCJsaXN0LXVuc3R5bGVkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpIFtuZ0NsYXNzXT1cInN0b3JlQWRkcmVzcz8uc3RvcmVJZCA9PT0gZGV0YWlscz8uc3RvcmVJZCA/ICdhY3RpdmUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNhbWVyYSBweC01IGl0ZW1zIGZ3LXNlbWlib2xkIGN1cnNvci1wb2ludGVyIHB5LTJcIiAoY2xpY2spPVwiZ2V0c3RvcmVBZGRyZXNzKGRldGFpbHMpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7ZGV0YWlscz8uc3RvcmVJZH19PC9saT5cclxuICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiBjbGFzcz1cImNhcmRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBib3JkZXItMCBwdC0zXCI+XHJcbiAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNhcmQtbGFiZWwgbWItMiBmdy1zZW1pYm9sZFwiPnt7dGlja2V0SWR9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXN1YiBmdy1ib2xkIG1iLTIgYmFkZ2UgYmFkZ2UtbGlnaHQtZGVmYXVsdFwiPjxzdmcgY2xhc3M9XCJtZS0zXCJcclxuICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zODc3Xzk2NTUyKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04IDFWM000IDFWM00xLjUgNUgxMC41TTIuNSAySDkuNUMxMC4wNTIzIDIgMTAuNSAyLjQ0NzcyIDEwLjUgM1YxMEMxMC41IDEwLjU1MjMgMTAuMDUyMyAxMSA5LjUgMTFIMi41QzEuOTQ3NzIgMTEgMS41IDEwLjU1MjMgMS41IDEwVjNDMS41IDIuNDQ3NzIgMS45NDc3MiAyIDIuNSAyWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS4xXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzM4NzdfOTY1NTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgPC9zdmc+IHt7IHRpY2tldEluZm8/LmNyZWF0ZWRBdHxjdXN0b21EYXRlRm9ybWF0fX08L3NwYW4+XHJcbiAgICAgICAgPC9oMz5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC10b29sYmFyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIHBvc2l0aW9uLXJlbGF0aXZlIG15LTFcIj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImluc3RhbGxhdGlvblN0YXJ0JiYoZ3MudXNlckFjY2VzcyB8IGFzeW5jKT8ubWFuYWdlX3RpY2tldHNfaXNFZGl0XCIgdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IHB4LTIwIG1lLTIgYnRuLXByaW1hcnlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic3RhcnRJbnN0YWxsYXRpb24oKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBTdGFydCBJbnN0YWxsYXRpb24gPHN2ZyBjbGFzcz1cIm1zLTJcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk03LjUgMTVMMTIuNSAxMEw3LjUgNVwiIHN0cm9rZT1cIndoaXRlXCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImNvbmZpZ3VyaW5nJiYoZ3MudXNlckFjY2VzcyB8IGFzeW5jKT8ubWFuYWdlX3RpY2tldHNfaXNFZGl0XCIgdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IHB4LTIwIG1lLTIgYnRuLXByaW1hcnlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiQ29uZmlndXJpbmcoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBDb25maWd1cmluZyA8c3ZnIGNsYXNzPVwibXMtMlwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyMCAyMFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzcxNDhfMTc2MDgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMC4wMDAzIDEuNjY2NzVWNS4wMDAwOE0xMC4wMDAzIDE1LjAwMDFWMTguMzMzNE00LjEwODY2IDQuMTA4NDFMNi40NjY5OSA2LjQ2Njc1TTEzLjUzMzcgMTMuNTMzNEwxNS44OTIgMTUuODkxN00xLjY2Njk5IDEwLjAwMDFINS4wMDAzM00xNS4wMDAzIDEwLjAwMDFIMTguMzMzN000LjEwODY2IDE1Ljg5MTdMNi40NjY5OSAxMy41MzM0TTEzLjUzMzcgNi40NjY3NUwxNS44OTIgNC4xMDg0MVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIndoaXRlXCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF83MTQ4XzE3NjA4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImluc3RhbGxhdGlvblJlc3VtZSYmKGdzLnVzZXJBY2Nlc3MgfCBhc3luYyk/Lm1hbmFnZV90aWNrZXRzX2lzRWRpdFwiIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tZGVmYXVsdCBweC0xNSBtZS0yIGJ0bi1wcmltYXJ5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInJlc3VtZUluc3RhbGxhdGlvbigpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFJlc3VtZSBJbnN0YWxsYXRpb24gPHN2ZyBjbGFzcz1cIm1zLTJcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk03LjUgMTVMMTIuNSAxMEw3LjUgNVwiIHN0cm9rZT1cIndoaXRlXCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cIihncy51c2VyQWNjZXNzIHwgYXN5bmMpPy5tYW5hZ2VfdGlja2V0c19pc1ZpZXdcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cIm9wZW5Db250YWN0KClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tZGVmYXVsdCBteC0yIGJ0bi1vdXRsaW5lIGJ0bi1vdXRsaW5lLWRlZmF1bHQgcm91bmRlZC0zIHRleHQtbm93cmFwIGJvcmRlci12YWxcIj48c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzM4NzdfMTAyMjAzKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTIuNTQxNSA0LjE2NjU5QzEzLjM1NTUgNC4zMjUzOSAxNC4xMDM1IDQuNzIzNDcgMTQuNjg5OSA1LjMwOTg2QzE1LjI3NjMgNS44OTYyNiAxNS42NzQ0IDYuNjQ0MzEgMTUuODMzMiA3LjQ1ODI1TTEyLjU0MTUgMC44MzMyNTJDMTQuMjMyNiAxLjAyMTEyIDE1LjgwOTUgMS43Nzg0IDE3LjAxMzQgMi45ODA3NkMxOC4yMTczIDQuMTgzMTIgMTguOTc2NSA1Ljc1OTA5IDE5LjE2NjUgNy40NDk5Mk0xOC4zMzMyIDE0LjA5OTlWMTYuNTk5OUMxOC4zMzQxIDE2LjgzMiAxOC4yODY2IDE3LjA2MTcgMTguMTkzNiAxNy4yNzQ0QzE4LjEwMDYgMTcuNDg3IDE3Ljk2NDMgMTcuNjc3OSAxNy43OTMzIDE3LjgzNDhDMTcuNjIyMiAxNy45OTE3IDE3LjQyMDMgMTguMTExMiAxNy4yMDA1IDE4LjE4NTVDMTYuOTgwNiAxOC4yNTk5IDE2Ljc0NzcgMTguMjg3NSAxNi41MTY1IDE4LjI2NjZDMTMuOTUyMiAxNy45ODggMTEuNDg5IDE3LjExMTcgOS4zMjQ4NiAxNS43MDgzQzcuMzExMzkgMTQuNDI4OCA1LjYwNDMxIDEyLjcyMTcgNC4zMjQ4NiAxMC43MDgzQzIuOTE2NTEgOC41MzQyNiAyLjA0MDA3IDYuMDU5MDggMS43NjY1MyAzLjQ4MzI1QzEuNzQ1NyAzLjI1MjgxIDEuNzczMDkgMy4wMjA1NSAxLjg0Njk1IDIuODAxMjdDMS45MjA4IDIuNTgxOTkgMi4wMzk1MSAyLjM4MDQ5IDIuMTk1NSAyLjIwOTZDMi4zNTE1IDIuMDM4NzEgMi41NDEzNyAxLjkwMjE4IDIuNzUzMDIgMS44MDg2OUMyLjk2NDY4IDEuNzE1MiAzLjE5MzQ4IDEuNjY2OCAzLjQyNDg2IDEuNjY2NTlINS45MjQ4NkM2LjMyOTI4IDEuNjYyNiA2LjcyMTM2IDEuODA1ODIgNy4wMjggMi4wNjk1M0M3LjMzNDY0IDIuMzMzMjQgNy41MzQ5MyAyLjY5OTQ2IDcuNTkxNTMgMy4wOTk5MkM3LjY5NzA1IDMuODk5OTcgNy44OTI3NCA0LjY4NTUyIDguMTc0ODYgNS40NDE1OUM4LjI4Njk4IDUuNzM5ODYgOC4zMTEyNSA2LjA2NDAxIDguMjQ0NzggNi4zNzU2NUM4LjE3ODMyIDYuNjg3MjkgOC4wMjM5MiA2Ljk3MzM0IDcuNzk5ODYgNy4xOTk5Mkw2Ljc0MTUzIDguMjU4MjVDNy45Mjc4MyAxMC4zNDQ1IDkuNjU1MjQgMTIuMDcyIDExLjc0MTUgMTMuMjU4M0wxMi43OTk5IDEyLjE5OTlDMTMuMDI2NCAxMS45NzU5IDEzLjMxMjUgMTEuODIxNSAxMy42MjQxIDExLjc1NUMxMy45MzU4IDExLjY4ODUgMTQuMjU5OSAxMS43MTI4IDE0LjU1ODIgMTEuODI0OUMxNS4zMTQzIDEyLjEwNyAxNi4wOTk4IDEyLjMwMjcgMTYuODk5OSAxMi40MDgzQzE3LjMwNDcgMTIuNDY1NCAxNy42NzQ0IDEyLjY2OTMgMTcuOTM4NiAxMi45ODEyQzE4LjIwMjkgMTMuMjkzMSAxOC4zNDMzIDEzLjY5MTIgMTguMzMzMiAxNC4wOTk5WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMzNDQwNTRcIiBzdHJva2Utd2lkdGg9XCIxLjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzM4NzdfMTAyMjAzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXMtMlwiPkNvbnRhY3QgRGV0YWlsczwvc3Bhbj4gPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cIihncy51c2VyQWNjZXNzIHwgYXN5bmMpPy5tYW5hZ2VfdGlja2V0c19pc1ZpZXdcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cIm9wZW5SZW1vdGUoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IG14LTIgYnRuLW91dGxpbmUgYnRuLW91dGxpbmUtZGVmYXVsdCByb3VuZGVkLTMgdGV4dC1ub3dyYXAgYm9yZGVyLXZhbFwiPjxzcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCIuL2Fzc2V0cy90YW5nby9JbWFnZXMvZGVza3RvcC5zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbm5lY3QgUmVtb3RlbHk8L3NwYW4+IDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS04XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwicHJlcmVxdWVzdEZhaWxlZCYmKGdzLnVzZXJBY2Nlc3MgfCBhc3luYyk/Lm1hbmFnZV90aWNrZXRzX2lzRWRpdFwiIGNsYXNzPVwiaW5zdGFsLWZhaWxlZCBtYi01IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtc3RhcnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCIuL2Fzc2V0cy90YW5nby9JbWFnZXMvX0ZpbGUgdXBsb2FkIGljb24uc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtcy01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWFpbi10ZXh0XCI+SW50YWxsYXRpb24gRmFpbGVkIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN1Yi10ZXh0XCI+UGxlYXNlIGVudGVyIHRoZSByZWFzb24gYmVoaW5kIHRoZSBpbnN0YWxsYXRpb24gZmFpbGVkPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cInVwZGF0ZUlzc3VlKClcIiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLWRlZmF1bHQgYnRuLWRhbmdlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBVcGRhdGUgSXNzdWVcclxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInNob3dmb3JtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm9wZW5lZGlzc3VlIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwcm9maWxlLWxhYmVsIGZ3LXNlbWlib2xkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMjEgMTJDMjEgNy4wMjkzIDE2Ljk3MDcgMyAxMiAzQzcuMDI5MyAzIDMgNy4wMjkzIDMgMTJDMyAxNi45NzA3IDcuMDI5MyAyMSAxMiAyMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMi45IDMuMDQ1MDRDMTIuOSAzLjA0NTA0IDE1LjYgNi42MDAwNCAxNS42IDEyTDEyLjkgMy4wNDUwNFpNMTEuMSAyMC45NTVDMTEuMSAyMC45NTUgOC40IDE3LjQgOC40IDEyQzguNCA2LjYwMDA0IDExLjEgMy4wNDUwNCAxMS4xIDMuMDQ1MDRNMy41NjcgMTUuMTVIMTJIMy41NjdaTTMuNTY3IDguODUwMDRIMjAuNDMzSDMuNTY3WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0yMC44OTExIDE3LjMyNTJDMjEuMzM1NyAxNy41OTg4IDIxLjMwNzggMTguMjYzOSAyMC44NTA2IDE4LjMxNjFMMTguNTQwMyAxOC41NzhMMTcuNTA0NCAyMC42NTg4QzE3LjI5OTIgMjEuMDcxOSAxNi42NjQ3IDIwLjg2OTQgMTYuNTU5NCAyMC4zNTgyTDE1LjQyOTkgMTQuODUzOEMxNS4zNDA4IDE0LjQyMTggMTUuNzI5NiAxNC4xNSAxNi4xMDQ5IDE0LjM4MTNMMjAuODkxMSAxNy4zMjUyWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0yMC4yNSAxMkMyMC4yNSAxMi40MTQyIDIwLjU4NTggMTIuNzUgMjEgMTIuNzVDMjEuNDE0MiAxMi43NSAyMS43NSAxMi40MTQyIDIxLjc1IDEySDIwLjI1Wk0xMiAyMS43NUMxMi40MTQyIDIxLjc1IDEyLjc1IDIxLjQxNDIgMTIuNzUgMjFDMTIuNzUgMjAuNTg1OCAxMi40MTQyIDIwLjI1IDEyIDIwLjI1VjIxLjc1Wk0xMy40OTczIDIuNTkxNDJDMTMuMjQ2NyAyLjI2MTU2IDEyLjc3NjIgMi4xOTcyNSAxMi40NDY0IDIuNDQ3NzhDMTIuMTE2NSAyLjY5ODMgMTIuMDUyMiAzLjE2ODggMTIuMzAyNyAzLjQ5ODY2TDEzLjQ5NzMgMi41OTE0MlpNMTQuODUgMTJDMTQuODUgMTIuNDE0MyAxNS4xODU4IDEyLjc1IDE1LjYgMTIuNzVDMTYuMDE0MiAxMi43NSAxNi4zNSAxMi40MTQzIDE2LjM1IDEySDE0Ljg1Wk0xMC41MDI3IDIxLjQwODdDMTAuNzUzMyAyMS43Mzg1IDExLjIyMzggMjEuODAyOCAxMS41NTM2IDIxLjU1MjNDMTEuODgzNSAyMS4zMDE4IDExLjk0NzggMjAuODMxMyAxMS42OTczIDIwLjUwMTRMMTAuNTAyNyAyMS40MDg3Wk0xMS42OTczIDMuNDk4NjZDMTEuOTQ3OCAzLjE2ODggMTEuODgzNSAyLjY5ODMgMTEuNTUzNiAyLjQ0Nzc4QzExLjIyMzggMi4xOTcyNSAxMC43NTMzIDIuMjYxNTYgMTAuNTAyNyAyLjU5MTQyTDExLjY5NzMgMy40OTg2NlpNMy41NjcgMTQuNEMzLjE1Mjc5IDE0LjQgMi44MTcgMTQuNzM1OCAyLjgxNyAxNS4xNUMyLjgxNyAxNS41NjQzIDMuMTUyNzkgMTUuOSAzLjU2NyAxNS45VjE0LjRaTTEyIDE1LjlDMTIuNDE0MiAxNS45IDEyLjc1IDE1LjU2NDMgMTIuNzUgMTUuMTVDMTIuNzUgMTQuNzM1OCAxMi40MTQyIDE0LjQgMTIgMTQuNFYxNS45Wk0zLjU2NyA4LjEwMDA0QzMuMTUyNzkgOC4xMDAwNCAyLjgxNyA4LjQzNTgzIDIuODE3IDguODUwMDRDMi44MTcgOS4yNjQyNiAzLjE1Mjc5IDkuNjAwMDQgMy41NjcgOS42MDAwNFY4LjEwMDA0Wk0yMC40MzMgOS42MDAwNEMyMC44NDcyIDkuNjAwMDQgMjEuMTgzIDkuMjY0MjYgMjEuMTgzIDguODUwMDRDMjEuMTgzIDguNDM1ODMgMjAuODQ3MiA4LjEwMDA0IDIwLjQzMyA4LjEwMDA0VjkuNjAwMDRaTTIwLjg5MTEgMTcuMzI1MkwyMS4yODQyIDE2LjY4NjVMMjEuMjg0IDE2LjY4NjRMMjAuODkxMSAxNy4zMjUyWk0yMC44NTA2IDE4LjMxNjFMMjAuOTM1MSAxOS4wNjEzTDIwLjkzNTcgMTkuMDYxM0wyMC44NTA2IDE4LjMxNjFaTTE4LjU0MDMgMTguNTc4TDE4LjQ1NTggMTcuODMyOEwxOC4wNTA2IDE3Ljg3ODdMMTcuODY4OSAxOC4yNDM4TDE4LjU0MDMgMTguNTc4Wk0xNy41MDQ0IDIwLjY1ODhMMTYuODMzIDIwLjMyNDZMMTYuODMyNyAyMC4zMjUyTDE3LjUwNDQgMjAuNjU4OFpNMTYuNTU5NCAyMC4zNTgyTDE1LjgyNDcgMjAuNTA5TDE1LjgyNDggMjAuNTA5NUwxNi41NTk0IDIwLjM1ODJaTTE1LjQyOTkgMTQuODUzOEwxNi4xNjQ2IDE0LjcwM0wxNi4xNjQ0IDE0LjcwMjNMMTUuNDI5OSAxNC44NTM4Wk0xNi4xMDQ5IDE0LjM4MTNMMTUuNzExNCAxNS4wMTk4TDE1LjcxMiAxNS4wMjAxTDE2LjEwNDkgMTQuMzgxM1pNMjEuNzUgMTJDMjEuNzUgNi42MTUwOSAxNy4zODQ5IDIuMjUgMTIgMi4yNVYzLjc1QzE2LjU1NjUgMy43NSAyMC4yNSA3LjQ0MzUxIDIwLjI1IDEySDIxLjc1Wk0xMiAyLjI1QzYuNjE1MDkgMi4yNSAyLjI1IDYuNjE1MDkgMi4yNSAxMkgzLjc1QzMuNzUgNy40NDM1MSA3LjQ0MzUxIDMuNzUgMTIgMy43NVYyLjI1Wk0yLjI1IDEyQzIuMjUgMTcuMzg0OSA2LjYxNTA5IDIxLjc1IDEyIDIxLjc1VjIwLjI1QzcuNDQzNTEgMjAuMjUgMy43NSAxNi41NTY1IDMuNzUgMTJIMi4yNVpNMTIuOSAzLjA0NTA0QzEyLjMwMjcgMy40OTg2NiAxMi4zMDI2IDMuNDk4NDYgMTIuMzAyNCAzLjQ5ODI4QzEyLjMwMjQgMy40OTgyMyAxMi4zMDIzIDMuNDk4MDYgMTIuMzAyMiAzLjQ5Nzk3QzEyLjMwMjEgMy40OTc3OSAxMi4zMDIgMy40OTc2NyAxMi4zMDE5IDMuNDk3NkMxMi4zMDE4IDMuNDk3NDYgMTIuMzAxOSAzLjQ5NzUzIDEyLjMwMjEgMy40OTc4MUMxMi4zMDI1IDMuNDk4MzggMTIuMzAzNiAzLjQ5OTggMTIuMzA1MyAzLjUwMjA2QzEyLjMwODYgMy41MDY1OCAxMi4zMTQ0IDMuNTE0NDcgMTIuMzIyNSAzLjUyNTY3QzEyLjMzODcgMy41NDgwOSAxMi4zNjQxIDMuNTgzNzUgMTIuMzk3MyAzLjYzMjI2QzEyLjQ2MzggMy43MjkyOSAxMi41NjE2IDMuODc3NTIgMTIuNjgwNSA0LjA3MzYxQzEyLjkxODMgNC40NjYwNiAxMy4yMzkzIDUuMDQ4NjMgMTMuNTYxNCA1Ljc5NDc4QzE0LjIwNjEgNy4yODgzNyAxNC44NSA5LjQyNTI2IDE0Ljg1IDEySDE2LjM1QzE2LjM1IDkuMTc0ODMgMTUuNjQzOSA2LjgzNDIyIDE0LjkzODYgNS4yMDAzMUMxNC41ODU3IDQuMzgyNzEgMTQuMjMxNyAzLjczOTAyIDEzLjk2MzMgMy4yOTYxNkMxMy44MjkgMy4wNzQ2IDEzLjcxNTkgMi45MDI5MSAxMy42MzQ3IDIuNzg0NDNDMTMuNTk0MSAyLjcyNTE4IDEzLjU2MTUgMi42NzkyIDEzLjUzODEgMi42NDY5QzEzLjUyNjUgMi42MzA3NSAxMy41MTcxIDIuNjE4MDIgMTMuNTEwMiAyLjYwODc2QzEzLjUwNjggMi42MDQxMyAxMy41MDQgMi42MDAzNiAxMy41MDE4IDIuNTk3NDdDMTMuNTAwNyAyLjU5NjAyIDEzLjQ5OTggMi41OTQ4IDEzLjQ5OTEgMi41OTM3OUMxMy40OTg3IDIuNTkzMjkgMTMuNDk4MyAyLjU5Mjg0IDEzLjQ5OCAyLjU5MjQ0QzEzLjQ5NzkgMi41OTIyNCAxMy40OTc3IDIuNTkxOTkgMTMuNDk3NiAyLjU5MTg5QzEzLjQ5NzQgMi41OTE2NSAxMy40OTczIDIuNTkxNDIgMTIuOSAzLjA0NTA0Wk0xMS4xIDIwLjk1NUMxMS42OTczIDIwLjUwMTQgMTEuNjk3NCAyMC41MDE2IDExLjY5NzYgMjAuNTAxOEMxMS42OTc2IDIwLjUwMTkgMTEuNjk3NyAyMC41MDIgMTEuNjk3OCAyMC41MDIxQzExLjY5NzkgMjAuNTAyMyAxMS42OTggMjAuNTAyNCAxMS42OTgxIDIwLjUwMjVDMTEuNjk4MiAyMC41MDI2IDExLjY5ODEgMjAuNTAyNiAxMS42OTc5IDIwLjUwMjNDMTEuNjk3NSAyMC41MDE3IDExLjY5NjQgMjAuNTAwMyAxMS42OTQ4IDIwLjQ5OEMxMS42OTE0IDIwLjQ5MzUgMTEuNjg1NiAyMC40ODU2IDExLjY3NzUgMjAuNDc0NEMxMS42NjEzIDIwLjQ1MiAxMS42MzU5IDIwLjQxNjMgMTEuNjAyNyAyMC4zNjc4QzExLjUzNjIgMjAuMjcwOCAxMS40Mzg0IDIwLjEyMjYgMTEuMzE5NSAxOS45MjY1QzExLjA4MTcgMTkuNTM0IDEwLjc2MDcgMTguOTUxNSAxMC40Mzg2IDE4LjIwNTNDOS43OTM4OCAxNi43MTE3IDkuMTUgMTQuNTc0OCA5LjE1IDEySDcuNjVDNy42NSAxNC44MjUzIDguMzU2MTMgMTcuMTY1OSA5LjA2MTQyIDE4Ljc5OThDOS40MTQzNCAxOS42MTc0IDkuNzY4MzMgMjAuMjYxMSAxMC4wMzY3IDIwLjcwMzlDMTAuMTcxIDIwLjkyNTUgMTAuMjg0MSAyMS4wOTcyIDEwLjM2NTMgMjEuMjE1N0MxMC40MDU5IDIxLjI3NDkgMTAuNDM4NSAyMS4zMjA5IDEwLjQ2MTkgMjEuMzUzMkMxMC40NzM1IDIxLjM2OTMgMTAuNDgyOSAyMS4zODIxIDEwLjQ4OTggMjEuMzkxM0MxMC40OTMyIDIxLjM5NiAxMC40OTYgMjEuMzk5NyAxMC40OTgyIDIxLjQwMjZDMTAuNDk5MyAyMS40MDQxIDEwLjUwMDIgMjEuNDA1MyAxMC41MDA5IDIxLjQwNjNDMTAuNTAxMyAyMS40MDY4IDEwLjUwMTcgMjEuNDA3MyAxMC41MDIgMjEuNDA3NkMxMC41MDIxIDIxLjQwNzggMTAuNTAyMyAyMS40MDgxIDEwLjUwMjQgMjEuNDA4MkMxMC41MDI2IDIxLjQwODQgMTAuNTAyNyAyMS40MDg3IDExLjEgMjAuOTU1Wk05LjE1IDEyQzkuMTUgOS40MjUyNiA5Ljc5Mzg4IDcuMjg4MzcgMTAuNDM4NiA1Ljc5NDc4QzEwLjc2MDcgNS4wNDg2MyAxMS4wODE3IDQuNDY2MDYgMTEuMzE5NSA0LjA3MzYxQzExLjQzODQgMy44Nzc1MiAxMS41MzYyIDMuNzI5MjkgMTEuNjAyNyAzLjYzMjI2QzExLjYzNTkgMy41ODM3NSAxMS42NjEzIDMuNTQ4MDkgMTEuNjc3NSAzLjUyNTY3QzExLjY4NTYgMy41MTQ0NyAxMS42OTE0IDMuNTA2NTggMTEuNjk0OCAzLjUwMjA2QzExLjY5NjQgMy40OTk4IDExLjY5NzUgMy40OTgzOCAxMS42OTc5IDMuNDk3ODFDMTEuNjk4MSAzLjQ5NzUzIDExLjY5ODIgMy40OTc0NiAxMS42OTgxIDMuNDk3NkMxMS42OTggMy40OTc2NyAxMS42OTc5IDMuNDk3NzkgMTEuNjk3OCAzLjQ5Nzk3QzExLjY5NzcgMy40OTgwNiAxMS42OTc2IDMuNDk4MjMgMTEuNjk3NiAzLjQ5ODI4QzExLjY5NzQgMy40OTg0NiAxMS42OTczIDMuNDk4NjYgMTEuMSAzLjA0NTA0QzEwLjUwMjcgMi41OTE0MiAxMC41MDI2IDIuNTkxNjUgMTAuNTAyNCAyLjU5MTg5QzEwLjUwMjMgMi41OTE5OSAxMC41MDIxIDIuNTkyMjQgMTAuNTAyIDIuNTkyNDRDMTAuNTAxNyAyLjU5Mjg0IDEwLjUwMTMgMi41OTMyOSAxMC41MDA5IDIuNTkzNzlDMTAuNTAwMiAyLjU5NDggMTAuNDk5MyAyLjU5NjAyIDEwLjQ5ODIgMi41OTc0N0MxMC40OTYgMi42MDAzNiAxMC40OTMyIDIuNjA0MTMgMTAuNDg5OCAyLjYwODc2QzEwLjQ4MjkgMi42MTgwMiAxMC40NzM1IDIuNjMwNzUgMTAuNDYxOSAyLjY0NjlDMTAuNDM4NSAyLjY3OTIgMTAuNDA1OSAyLjcyNTE4IDEwLjM2NTMgMi43ODQ0M0MxMC4yODQxIDIuOTAyOTEgMTAuMTcxIDMuMDc0NiAxMC4wMzY3IDMuMjk2MTZDOS43NjgzMyAzLjczOTAyIDkuNDE0MzQgNC4zODI3MSA5LjA2MTQyIDUuMjAwMzFDOC4zNTYxMyA2LjgzNDIyIDcuNjUgOS4xNzQ4MyA3LjY1IDEySDkuMTVaTTMuNTY3IDE1LjlIMTJWMTQuNEgzLjU2N1YxNS45Wk0zLjU2NyA5LjYwMDA0SDIwLjQzM1Y4LjEwMDA0SDMuNTY3VjkuNjAwMDRaTTIwLjQ5OCAxNy45NjM5QzIwLjQ3OTIgMTcuOTUyNCAyMC40NTc1IDE3LjkyNTIgMjAuNDU5NyAxNy44NzI3QzIwLjQ2MDkgMTcuODQzNCAyMC40NzE1IDE3Ljc3NzIgMjAuNTI5NyAxNy43MDU0QzIwLjU5NjEgMTcuNjIzNSAyMC42ODg5IDE3LjU3OTcgMjAuNzY1NSAxNy41NzA5TDIwLjkzNTcgMTkuMDYxM0MyMS42MTY3IDE4Ljk4MzUgMjEuOTM4NCAxOC40MTc5IDIxLjk1ODQgMTcuOTM0NkMyMS45Nzc2IDE3LjQ2ODIgMjEuNzQ3NiAxNi45NzE3IDIxLjI4NDIgMTYuNjg2NUwyMC40OTggMTcuOTYzOVpNMjAuNzY2MSAxNy41NzA5TDE4LjQ1NTggMTcuODMyOEwxOC42MjQ4IDE5LjMyMzJMMjAuOTM1MSAxOS4wNjEzTDIwLjc2NjEgMTcuNTcwOVpNMTcuODY4OSAxOC4yNDM4TDE2LjgzMyAyMC4zMjQ2TDE4LjE3NTggMjAuOTkzMUwxOS4yMTE3IDE4LjkxMjNMMTcuODY4OSAxOC4yNDM4Wk0xNi44MzI3IDIwLjMyNTJDMTYuODY2OCAyMC4yNTY1IDE2LjkzOTUgMjAuMTgzOSAxNy4wMzk4IDIwLjE0OTJDMTcuMTI3NyAyMC4xMTg4IDE3LjE5NCAyMC4xMzE2IDE3LjIyMjEgMjAuMTQwNUMxNy4yNzIgMjAuMTU2NCAxNy4yODk2IDIwLjE4NTcgMTcuMjk0IDIwLjIwNjlMMTUuODI0OCAyMC41MDk1QzE1LjkzNDUgMjEuMDQxOSAxNi4zMjIgMjEuNDI4MSAxNi43NjY4IDIxLjU2OTdDMTcuMjI4NiAyMS43MTY4IDE3Ljg3MDcgMjEuNjA3MyAxOC4xNzYxIDIwLjk5MjVMMTYuODMyNyAyMC4zMjUyWk0xNy4yOTQxIDIwLjIwNzRMMTYuMTY0NiAxNC43MDNMMTQuNjk1MiAxNS4wMDQ2TDE1LjgyNDcgMjAuNTA5TDE3LjI5NDEgMjAuMjA3NFpNMTYuMTY0NCAxNC43MDIzQzE2LjE3MjMgMTQuNzQwNiAxNi4xNjY2IDE0Ljg4MyAxNi4wMjMyIDE0Ljk4MzNDMTUuODggMTUuMDgzNSAxNS43NDQ2IDE1LjA0MDIgMTUuNzExNCAxNS4wMTk4TDE2LjQ5ODQgMTMuNzQyOEMxNi4wODk5IDEzLjQ5MTEgMTUuNTcyNCAxMy40NjggMTUuMTYzMyAxMy43NTQzQzE0Ljc1NCAxNC4wNDA3IDE0LjU5ODQgMTQuNTM1IDE0LjY5NTQgMTUuMDA1M0wxNi4xNjQ0IDE0LjcwMjNaTTE1LjcxMiAxNS4wMjAxTDIwLjQ5ODIgMTcuOTY0TDIxLjI4NCAxNi42ODY0TDE2LjQ5NzggMTMuNzQyNUwxNS43MTIgMTUuMDIwMVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiIzQ3NTQ2N1wiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz4ge3tzZWxlY3RlZElzc3VlfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIChjbGljayk9XCJjaG9vc2Vhbmlzc3VlKCcnKVwiIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKGNsaWNrKT1cIm9wZW5Ecm9wZG93bigkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1haW5jYXJkLWNvbnRlbnQgY3Vyc29yLXBvaW50ZXIgYmctd2hpdGUgcHgtMyBweS0yXCI+IDxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTUgNy41TDEwIDEyLjVMMTUgNy41XCIgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjEuNjdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz4gPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZHJvcERvd25cIiBjbGFzcz1cImNhcmQgcHktMSB3LTIwMHB4IHBvc2l0aW9uLWFic29sdXRlIHRvcC01MHB4IGVuZC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsICpuZ0Zvcj1cImxldCBpdGVtIG9mIGRyb3Bkb3duSXRlbXNcIiBjbGFzcz1cImxpc3QtdW5zdHlsZWRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIFtuZ0NsYXNzXT1cInRoaXMuc2VsZWN0ZWRJc3N1ZSA9PT0gaXRlbSA/ICdhY3RpdmUnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYW1lcmEgcHgtNSBpdGVtcyBmdy1zZW1pYm9sZCBjdXJzb3ItcG9pbnRlciBweS0zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RJdGVtKGl0ZW0pXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2l0ZW19fTwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInNlbGVjdGVkSXNzdWUgPT09ICdJbnRlcm5ldCBJc3N1ZXMnfHxzZWxlY3RlZElzc3VlID09PSAnQ2FtZXJhIElzc3Vlcyd8fHNlbGVjdGVkSXNzdWUgPT09ICdTeXN0ZW0gSXNzdWVzJyBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1haW5jYXJkLWNvbnRlbnQgdy0xMDAgbXQtMiBweC00IHB5LTIgcGItNCBtYi01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWFpbmNhcmQtbGFiZWwgZnctc2VtaWJvbGQgcHktMlwiICpuZ0lmPVwic2Vjb25kYXJ5SXNzdWVzPy5sZW5ndGg+MFwiPiBQbGVhc2VcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3QgdGhlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVsZXZhbnQgcHJvYmxlbSBmYWNpbmcgZnJvbSB0aGUgZm9sbG93aW5nIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgaXNzdWUgb2Ygc2Vjb25kYXJ5SXNzdWVzOyBsZXQgaW5kZXggPSBpbmRleFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtYWluY2FyZC1jb250ZW50IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBhbGlnbi1pdGVtcy1jZW50ZXIgdy0xMDAgbXQtMiBweC00IHB5LTQgY3Vyc29yLXBvaW50ZXIgXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlQ2hlY2tib3goaW5kZXgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+PGltZyBjbGFzcz1cInBlLTNcIiBzcmM9Jy4vYXNzZXRzL3RhbmdvL0ltYWdlcy9GZWF0dXJlZCBpY29uLnBuZyc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhlYWRpbmd0ZXh0XCI+e3tpc3N1ZT8ubmFtZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInctMzAwcHhcIiBbbmdiVG9vbHRpcF09XCJ0b29sdGlwQ29udGVudFwiIHRyaWdnZXJzPVwibW91c2VlbnRlcjptb3VzZWxlYXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cImxlZnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJtcy0zXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8xODI2XzQ0ODcxKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk04LjAwMDY1IDEwLjY2NzNWOC4wMDA2NU04LjAwMDY1IDUuMzMzOThIOC4wMDczMk0xNC42NjczIDguMDAwNjVDMTQuNjY3MyAxMS42ODI2IDExLjY4MjYgMTQuNjY3MyA4LjAwMDY1IDE0LjY2NzNDNC4zMTg3NSAxNC42NjczIDEuMzMzOTggMTEuNjgyNiAxLjMzMzk4IDguMDAwNjVDMS4zMzM5OCA0LjMxODc1IDQuMzE4NzUgMS4zMzM5OCA4LjAwMDY1IDEuMzMzOThDMTEuNjgyNiAxLjMzMzk4IDE0LjY2NzMgNC4zMTg3NSAxNC42NjczIDguMDAwNjVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM5OEEyQjNcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8xODI2XzQ0ODcxXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gRGVmaW5lIHRvb2x0aXAgY29udGVudCAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI3Rvb2x0aXBDb250ZW50PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY3VzdG9tLXRvb2x0aXAtY29udGVudCB0b29sdGlwLWNvbnRlbnQgdy0xMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9XCJ3LTEwMFwiICpuZ0Zvcj1cImxldCB0b29sdGlwSXRlbSBvZiBpc3N1ZT8udG9vbFRpcHNcIj57e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b29sdGlwSXRlbT8ubmFtZSB9fTwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm91bmRlZGNoZWNrIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiIFtjaGVja2VkXT1cImlzc3VlLmNoZWNrZWRcIiBjbGFzcz1cInAtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBwdC02XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImhpYmVybnRpb25cIiBjbGFzcz1cIiBtYWluY2FyZC1sYWJlbCBmdy1zZW1pYm9sZCBtYi0yXCI+SGliZXJuYXRpb24gKGluIGRheXMpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICo8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCIgdy0yNTBweCBwb3NpdGlvbi1yZWxhdGl2ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tYWJzb2x1dGUgdHJhbnNsYXRlLW1pZGRsZS15IHRvcC01MCBtZS01IHBzLTMgdGlja2V0RGF5c1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdmctaWNvbiB0b2dnbGUtb2ZmIHN2Zy1pY29uLTFcIiBbbmdDbGFzc109XCJjb3VudCA9PT0gMCA/ICdwZS1ub25lJyA6ICcnXCIgKGNsaWNrKT1cImRlY3Jlc2VDb3VudCgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMVwiIGhlaWdodD1cIjIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyMSAyMFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNC42NjYwMiAxMEgxNi4zMzI3XCIgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjEuNjdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgaWQ9XCJoaWJlcm50aW9uXCIgWyhuZ01vZGVsKV09XCJIaWJlcm5hdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIiB2YWx1ZT1cInt7Y291bnR9fVwiIHBsYWNlaG9sZGVyPVwiMFwiIHJlYWRPbmx5IC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3NpdGlvbi1hYnNvbHV0ZSB0cmFuc2xhdGUtbWlkZGxlLXkgdG9wLTUwIGVuZC0wIG1lLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ZnLWljb24gdG9nZ2xlLW9uIHN2Zy1pY29uLTEgdGlja2V0RGF5c1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImluY3JlYXNlQ291bnQoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjFcIiBoZWlnaHQ9XCIyMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjEgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEwLjQ5OTMgNC4xNjY1VjE1LjgzMzJNNC42NjYwMiA5Ljk5OTg0SDE2LjMzMjdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjEuNjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInNlbGVjdGVkSXNzdWUgPT09ICdPdGhlcnMnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYWluY2FyZC1jb250ZW50IHctMTAwIG10LTIgcHgtNCBweS0yIHBiLTQgbWItNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1haW5jYXJkLWxhYmVsIGZ3LXNlbWlib2xkIHB5LTJcIj5QbGVhc2Ugc2VsZWN0IHRoZSByZWxldmFudCBwcm9ibGVtIGZhY2luZyBmcm9tXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9sbG93aW5nPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBvdGhlcnMgb2Ygb3RoZXJzSXNzdWU7IGxldCBpID0gaW5kZXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWFpbmNhcmQtY29udGVudCBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyIHctMTAwIG10LTIgcHgtNCBweS00IGN1cnNvci1wb2ludGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlUmFkaW9ib3gob3RoZXJzKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPjxpbWcgY2xhc3M9XCJwZS0zXCIgc3JjPScuL2Fzc2V0cy90YW5nby9JbWFnZXMvRmVhdHVyZWQgaWNvbi5wbmcnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJoZWFkaW5ndGV4dFwiPnt7b3RoZXJzLm5hbWV9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+PHN2ZyBjbGFzcz1cIm1zLTNcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzE4MjZfNDQ4NzEpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTguMDAwNjUgMTAuNjY3M1Y4LjAwMDY1TTguMDAwNjUgNS4zMzM5OEg4LjAwNzMyTTE0LjY2NzMgOC4wMDA2NUMxNC42NjczIDExLjY4MjYgMTEuNjgyNiAxNC42NjczIDguMDAwNjUgMTQuNjY3M0M0LjMxODc1IDE0LjY2NzMgMS4zMzM5OCAxMS42ODI2IDEuMzMzOTggOC4wMDA2NUMxLjMzMzk4IDQuMzE4NzUgNC4zMTg3NSAxLjMzMzk4IDguMDAwNjUgMS4zMzM5OEMxMS42ODI2IDEuMzMzOTggMTQuNjY3MyA0LjMxODc1IDE0LjY2NzMgOC4wMDA2NVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzE4MjZfNDQ4NzFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3VuZGVkY2hlY2sgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInJhZGlvXCIgbmFtZT1cInJhZGlvR3JvdXB7e2l9fVwiIFt2YWx1ZV09XCJvdGhlcnMubmFtZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cInNlbGVjdGVkT3B0aW9uXCIgY2xhc3M9XCJwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgcHQtNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJoaWJlcm50aW9uXCIgY2xhc3M9XCIgbWFpbmNhcmQtbGFiZWwgZnctc2VtaWJvbGQgbWItMlwiPkhpYmVybmF0aW9uIChpbiBkYXlzKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiIHctMjUwcHggcG9zaXRpb24tcmVsYXRpdmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBvc2l0aW9uLWFic29sdXRlIHRyYW5zbGF0ZS1taWRkbGUteSB0b3AtNTAgbWUtNSBwcy0zIHRpY2tldERheXNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ZnLWljb24gdG9nZ2xlLW9mZiBzdmctaWNvbi0xXCIgW25nQ2xhc3NdPVwiY291bnQgPT09IDAgPyAncGUtbm9uZScgOiAnJ1wiIChjbGljayk9XCJkZWNyZXNlQ291bnQoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjFcIiBoZWlnaHQ9XCIyMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjEgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTQuNjY2MDIgMTBIMTYuMzMyN1wiIHN0cm9rZT1cIiMzNDQwNTRcIiBzdHJva2Utd2lkdGg9XCIxLjY3XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGlkPVwiaGliZXJudGlvblwiIFsobmdNb2RlbCldPVwiSGliZXJuYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCIgdmFsdWU9XCJ7e2NvdW50fX1cIiBwbGFjZWhvbGRlcj1cIlwiIHJlYWRPbmx5IC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3NpdGlvbi1hYnNvbHV0ZSB0cmFuc2xhdGUtbWlkZGxlLXkgdG9wLTUwIGVuZC0wIG1lLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ZnLWljb24gdG9nZ2xlLW9uIHN2Zy1pY29uLTEgdGlja2V0RGF5c1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImluY3JlYXNlQ291bnQoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjFcIiBoZWlnaHQ9XCIyMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjEgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEwLjQ5OTMgNC4xNjY1VjE1LjgzMzJNNC42NjYwMiA5Ljk5OTg0SDE2LjMzMjdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjEuNjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgb2JqIG9mIHZpZXdUaWNrZXREYXRhO2xldCBpPWluZGV4XCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEhvcml6b250YWwgbGluZSB3aXRoIGRheSAtLT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWJldHdlZW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZXIgYm9yZGVyLTEgYm9yZGVyLWdyYXkgcC0wIHctMTAwIG1lLTNcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1kYXkgZnctYm9sZC00MDBcIj5Ub2RheTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZXIgYm9yZGVyLTEgYm9yZGVyLWdyYXkgcC0wIHctMTAwIG1zLTNcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IC0tPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBVc2VyIGNvZGUgc3RhcnQgIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwib2JqLmFjdGlvbkJ5ID09PSAnVXNlcidcIiBjbGFzcz1cImQtZmxleCBtcy01IG1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4ganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgcGUtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudHJlIGp1c3RpZnktY29udGVudC1jZW50cmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN5bWJvbCBzeW1ib2wtNDhweCBzeW1ib2wtY2lyY2xlXCIgKm5nSWY9XCJvYmo/LklkZW50aWZpZWRCeSYmb2JqPy5JZGVudGlmaWVkQnkhPT0nJyYmb2JqPy5JZGVudGlmaWVkQnkhPT0nVGFuZ28nXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN5bWJvbC1sYWJlbCBiYWRnZS1saWdodC1wcmltYXJ5IHRleHQtc3ltYm9sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXByaW1hcnkgZnMtNCBiYWRnZSBiYWRnZS1saWdodC1wcmltYXJ5IGZ3LW5vcm1hbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e29iaj8uSWRlbnRpZmllZEJ5Py5zbGljZSgwLDIpIHwgdXBwZXJjYXNlIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyAqbmdJZj1cIiFvYmo/LklkZW50aWZpZWRCeXx8b2JqPy5JZGVudGlmaWVkQnk9PT0nJ3x8b2JqPy5JZGVudGlmaWVkQnk9PT0nVGFuZ28nXCIgY2xhc3M9XCJtc2dwcm9maWxlXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSW1hZ2VzL3RhbmdvcHJvZmlsZS5wbmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInAtMCBoLTEwMCBtdC0zIGJvcmRlciBib3JkZXItMSBib3JkZXItZ3JheSB2ZXJ0aWNhbExpbmVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB5LTMgcHQtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaGVhZGluZ3RleHQgZnctc2VtaWJvbGRcIj57e29iaj8uSWRlbnRpZmllZEJ5P29iaj8uSWRlbnRpZmllZEJ5OlwiVGFuZ29cIn19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ1cGRhdGVkZGF0ZSBweC0zIHB0LTEgZnctYm9sZC00MDBcIj57e29iaj8udGltZVN0YW1wfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIm9iai5hY3Rpb25UeXBlICE9PSdzdGF0dXNDaGFuZ2UnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicHJvZmlsZS1sYWJlbCBmb250LWJvbGQtNDAwXCI+VXNlciBoYXMgcmVwbGllZDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwib2JqLmFjdGlvblR5cGUgPT09ICdzdGF0dXNDaGFuZ2UnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGltaW5ndGV4dCBwZS0zIHB0LTEgZnctYm9sZC00MDBcIj5VcGRhdGVkIHRoZSBzdGF0dXM8L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidGltaW5ndGV4dCBmdy1zZW1pYm9sZCB0ZXh0LXByaW1hcnlcIj5PcGVuIC0+IElucHJvZ3Jlc3M8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm9iai5hY3Rpb25UeXBlID09PSAnc3RhdHVzQ2hlY2tSZXBseSdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHR1cGRhdGVzIGZ3LWJvbGQtNDAwIG10LTNcIj5Jc3N1ZSBoYXMgYmVlbiA8Yj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIm9iai5zdGF0dXNDaGVja1JlcGx5PT09J05vJ1wiPm5vdDwvc3Bhbj4gcmVzb2x2ZWQuPC9iPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0dXBkYXRlcyBmdy1ib2xkLTQwMFwiICpuZ0lmPVwib2JqLnN0YXR1c0NoZWNrUmVwbHk9PT0nTm8nXCI+IEl0IHRha2VzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e29iaj8uaGliZXJuYXRpb25EYXlzfX0gbW9yZSBkYXlzIHRvIHJlc29sdmUuPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm10LTJcIiAqbmdJZj1cIm9iai5hY3Rpb25UeXBlID09PSAnY29tbWVudCdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aW1pbmd0ZXh0IHBlLTMgcHQtMSBmdy1ib2xkLTQwMCB0ZXh0LXdyYXBcIj57e29iaj8uY29tbWVudH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJvYmouYWN0aW9uVHlwZSA9PT0naXNzdWVVcGRhdGUnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHJlcyBvZiBvYmo/LnJlYXNvbnNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0dXBkYXRlcyBmdy1zZW1pYm9sZCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgV2UncmUgY3VycmVudGx5IGVuY291bnRlcmluZyBhbiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZ3LWJvbGQtNzAwXCI+e3tyZXMucHJpbWFyeUlzc3VlfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJyZXMucHJpbWFyeUlzc3VlID09PSdDYW1lcmEgSXNzdWVzJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJub3R3b3JraW5nQ2FtYXJhbGlzdCAmJiBub3R3b3JraW5nQ2FtYXJhbGlzdD8ubGVuZ3RoXCIgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBub3R3b3JraW5nQ2FtYXJhbGlzdFwiIGNsYXNzPVwiY29sLXNtLTMgbXktNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdW5kZWQtMyBvdmVyZmxvdy1oaWRkZW4gbXQtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjYW1lcmEgZnctYm9sZFwiPnt7aXRlbS5jYW1lcmFOYW1lfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBbc3JjXT1cIml0ZW0/LnRodW1ibmFpbEltYWdlXCIgc3R5bGU9XCJoZWlnaHQ6MTgwcHhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHR1cGRhdGVzIGZ3LWJvbGQtNDAwIG10LTMgbWUtMlwiPlRoZSBhYm92ZSBjYW1lcmEgc3RyZWFtaW5nIGFyZSBub3Qgd29ya2luZyBkdWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0dXBkYXRlcyBmdy1ib2xkLTcwMCBtdC0zXCIgKm5nRm9yPVwibGV0IGlzc3VlIG9mIHJlcz8uc2Vjb25kYXJ5SXNzdWU7IGxldCBsYXN0ID0gbGFzdFwiPnt7aXNzdWU/Lm5hbWV9fSA8bmctY29udGFpbmVyICpuZ0lmPVwiIWxhc3RcIj4gLDwvbmctY29udGFpbmVyPjwvc3Bhbj4gdG8gdGhlIENhbWVyYTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInJlcz8uc2Vjb25kYXJ5SXNzdWUgJiYgcmVzPy5zZWNvbmRhcnlJc3N1ZT8ubGVuZ3RoXCIgY2xhc3M9XCJtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImludmVzdGlnYXRpb24gZnctYm9sZC00MDAgbWItM1wiPlRoZSBmb2xsb3dpbmcgYXJlIHRoZSByZWxldmFudFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9ibGVtXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhY2luZzwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cInRpbWluZ3RleHQgZnctYm9sZC00MDAgbWItMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgc2VjSXNzdWVzIG9mIHJlcz8uc2Vjb25kYXJ5SXNzdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT57e3NlY0lzc3Vlcy5uYW1lfX08L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFVzZXIgY29kZSBlbmQgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gVGFuZ28gY29kZSBzdGFydCAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm9iai5hY3Rpb25CeSA9PT0gJ1RhbmdvJ1wiIGNsYXNzPVwiZC1mbGV4IG1iLTUgbXMtNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBwZS0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50cmUganVzdGlmeS1jb250ZW50LWNlbnRyZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3ltYm9sIHN5bWJvbC00OHB4IHN5bWJvbC1jaXJjbGVcIiAqbmdJZj1cIm9iaj8uSWRlbnRpZmllZEJ5JiZvYmo/LklkZW50aWZpZWRCeSE9PScnJiZvYmo/LklkZW50aWZpZWRCeSE9PSdUYW5nbydcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ltYm9sLWxhYmVsIGJhZGdlLWxpZ2h0LXByaW1hcnkgdGV4dC1zeW1ib2xcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtcHJpbWFyeSBmcy00IGJhZGdlIGJhZGdlLWxpZ2h0LXByaW1hcnkgZnctbm9ybWFsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7b2JqPy5JZGVudGlmaWVkQnk/LnNsaWNlKDAsMikgfCB1cHBlcmNhc2UgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nICpuZ0lmPVwiIW9iaj8uSWRlbnRpZmllZEJ5fHxvYmo/LklkZW50aWZpZWRCeT09PScnfHxvYmo/LklkZW50aWZpZWRCeT09PSdUYW5nbydcIiBjbGFzcz1cIm1zZ3Byb2ZpbGVcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JbWFnZXMvdGFuZ29wcm9maWxlLnBuZ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInAtMCBoLTEwMCBtdC0zIGJvcmRlciBib3JkZXItMSBib3JkZXItZ3JheSB2ZXJ0aWNhbExpbmVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB5LTMgcHQtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSB7e29iai5hY3Rpb25UeXBlfX0gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaGVhZGluZ3RleHQgZnctc2VtaWJvbGRcIj57e29iaj8uSWRlbnRpZmllZEJ5P29iaj8uSWRlbnRpZmllZEJ5OlwiVGFuZ29cIn19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInVwZGF0ZWRkYXRlIGZ3LWJvbGQtNDAwIHB4LTMgcHQtMVwiPnt7b2JqPy50aW1lU3RhbXB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxzcGFuICBjbGFzcz1cInByb2ZpbGUtbGFiZWwgZnctYm9sZC00MDBcIj50YW5nbyBoYXMgcmVwbGllZCB0byB0aGUgaXNzdWU8L3NwYW4+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwib2JqLmFjdGlvblR5cGUgPT09ICdzdGF0dXNDaGFuZ2UnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpbWluZ3RleHQgcGUtMyBwdC0xIGZ3LWJvbGQtNDAwXCI+VXBkYXRlZCB0aGUgc3RhdHVzPC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0aW1pbmd0ZXh0IGZ3LXNlbWlib2xkIHRleHQtcHJpbWFyeVwiPk9wZW4gLT4gSW5wcm9ncmVzczwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm10LTJcIiAqbmdJZj1cIm9iai5hY3Rpb25UeXBlID09PSAnY29tbWVudCdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aW1pbmd0ZXh0IHBlLTMgcHQtMSBmdy1ib2xkLTQwMCB0ZXh0LXdyYXBcIj57e29iaj8uY29tbWVudH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJvYmouYWN0aW9uVHlwZSA9PT0gJ3ByZXJlcXVlc3RjaGVja3N0YXJ0J1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpbWluZ3RleHQgcGUtMyBwdC0xIGZ3LWJvbGQtNDAwXCI+U3RhcnRlZCB0aGU8L3NwYW4+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidGltaW5ndGV4dCBmdy1zZW1pYm9sZCB0ZXh0LXByaW1hcnlcIj5QcmUtUmVxdWlzaXRlIENoZWNrPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJvYmouYWN0aW9uVHlwZSA9PT0gJ3ByZXJlcXVlc3RjaGVja2ZhaWxlZCdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aW1pbmd0ZXh0IHBlLTMgcHQtMSBmdy1ib2xkLTQwMFwiPlByb2Nlc3MgZmFpbGVkIG9uPC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRpbWluZ3RleHQgZnctc2VtaWJvbGQgdGV4dC1wcmltYXJ5XCI+UHJlLVJlcXVpc2l0ZSBDaGVjazwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwib2JqLmFjdGlvblR5cGUgPT09ICdmZXRjaGNhbWVyYSdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aW1pbmd0ZXh0IHBlLTMgcHQtMSBmdy1ib2xkLTQwMFwiPlVwZGF0ZWQgdGhlIHN0YXR1czwvc3Bhbj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0aW1pbmd0ZXh0IGZ3LXNlbWlib2xkIHRleHQtcHJpbWFyeVwiPlByZS1SZXF1aXNpdGUgQ2hlY2sgLT4gRmV0Y2hjYW1lcmE8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm9iai5hY3Rpb25UeXBlID09PSAnY29uZmlndXJlJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpbWluZ3RleHQgcGUtMyBwdC0xIGZ3LWJvbGQtNDAwXCI+VXBkYXRlZCB0aGUgc3RhdHVzPC9zcGFuPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRpbWluZ3RleHQgZnctc2VtaWJvbGQgdGV4dC1wcmltYXJ5XCI+IEZldGNoY2FtZXJhIC0+IENvbmZpZ3VyaW5nPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJvYmouYWN0aW9uVHlwZSA9PT0naXNzdWVVcGRhdGUnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHJlcyBvZiBvYmo/LnJlYXNvbnNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0dXBkYXRlcyBmdy1zZW1pYm9sZCBtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgV2UncmUgY3VycmVudGx5IGVuY291bnRlcmluZyBhbiA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZ3LWJvbGQtNzAwXCI+e3tyZXMucHJpbWFyeUlzc3VlfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJyZXMucHJpbWFyeUlzc3VlID09PSdDYW1lcmEgSXNzdWVzJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbXktNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBpdGVtIG9mIG5vdHdvcmtpbmdDYW1hcmFsaXN0XCIgY2xhc3M9XCJjb2wtc20tM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdW5kZWQtMyBvdmVyZmxvdy1oaWRkZW4gbXQtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjYW1lcmEgZnctYm9sZFwiPnt7aXRlbS5jYW1lcmFOYW1lfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBbc3JjXT1cIml0ZW0/LnRodW1ibmFpbEltYWdlXCIgc3R5bGU9XCJoZWlnaHQ6MTgwcHhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHR1cGRhdGVzIGZ3LWJvbGQtNDAwIG10LTMgbWUtMlwiPlRoZSBhYm92ZSBjYW1lcmEgc3RyZWFtaW5nIGFyZSBub3Qgd29ya2luZyBkdWU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0dXBkYXRlcyBmdy1ib2xkLTcwMCBtdC0zXCIgKm5nRm9yPVwibGV0IGlzc3VlIG9mIHJlcz8uc2Vjb25kYXJ5SXNzdWU7IGxldCBsYXN0ID0gbGFzdFwiPnt7aXNzdWU/Lm5hbWV9fSA8bmctY29udGFpbmVyICpuZ0lmPVwiIWxhc3RcIj4gLDwvbmctY29udGFpbmVyPjwvc3Bhbj4gPHNwYW4gY2xhc3M9XCJ0ZXh0dXBkYXRlcyBmdy1ib2xkLTQwMCBtdC0zXCI+dG8gdGhlIENhbWVyYTwvc3Bhbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImludmVzdGlnYXRpb24gZnctYm9sZC00MDAgbWItM1wiPlRoZSBmb2xsb3dpbmcgYXJlIHRoZSByZWxldmFudFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9ibGVtXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhY2luZzwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cInRpbWluZ3RleHQgZnctYm9sZC00MDAgbWItMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgc2VjSXNzdWVzIG9mIHJlcz8uc2Vjb25kYXJ5SXNzdWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT57e3NlY0lzc3Vlcy5uYW1lfX08L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJvYmouYWN0aW9uVHlwZSA9PT0nc3RlcHNUb1Jlc29sdmUnXCIgY2xhc3M9XCJtdC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dHVwZGF0ZXMgZnctYm9sZC00MDBcIj5QbGVhc2UgZm9sbG93IHRoZSBiZWxvdyBzdGVwcyB0byByZXNvbHZlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGUgYWJvdmUgaXNzdWU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHJlcyBvZiBvYmo/LnJlYXNvbnNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtdC01IG1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGluZ3RleHQgZnctc2VtaWJvbGQgbWItMVwiPnt7cmVzLnByaW1hcnlJc3N1ZX19PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwidGltaW5ndGV4dCBmdy1ib2xkLTQwMCBtYi0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IHNlY0lzc3VlcyBvZiByZXM/LnNlY29uZGFyeUlzc3VlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT57e3NlY0lzc3Vlcy5uYW1lfX08L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8IS0tIFRhbmdvIGNvZGUgZW5kIC0tPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibG9hZGluZ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbG9hZGVyICBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJub0RhdGFcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctMTIgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiaW1nLXNyY1wiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ljb25zL05vZGF0YS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInNob3dTdWJtaXQmJihncy51c2VyQWNjZXNzIHwgYXN5bmMpPy5tYW5hZ2VfdGlja2V0c19pc0VkaXRcIiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBhbGlnbi1pdGVtcy1jZW50ZXIgbXQtMTBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cImNvbW1lbnRzXCIgKGNsaWNrKT1cImFkZENvbW1lbnQoKVwiIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJBZGQgeW91ciBjb21tZW50cy4uXCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiZmlsZVwiICNmaWxlSW5wdXQgc3R5bGU9XCJkaXNwbGF5OiBub25lO1wiIGFjY2VwdD1cImltYWdlLypcIiBtdWx0aXBsZSAoY2hhbmdlKT1cIm9uRmlsZVNlbGVjdGVkKCRldmVudClcIj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJvcGVuRmlsZUlucHV0KClcIiBjbGFzcz1cImN1cnNvci1wb2ludGVyIGJ0biBidG4tZGVmYXVsdCBidG4tb3V0bGluZSBtcy0zXCI+PHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTE3Ljg2NjYgOS4yMDgzNUwxMC4yMDgyIDE2Ljg2NjdDOS4yNzAwNSAxNy44MDQ5IDcuOTk3NTcgMTguMzMyIDYuNjcwNzUgMTguMzMyQzUuMzQzOTMgMTguMzMyIDQuMDcxNDUgMTcuODA0OSAzLjEzMzI1IDE2Ljg2NjdDMi4xOTUwNSAxNS45Mjg1IDEuNjY3OTcgMTQuNjU2IDEuNjY3OTcgMTMuMzI5MkMxLjY2Nzk3IDEyLjAwMjQgMi4xOTUwNSAxMC43Mjk5IDMuMTMzMjUgOS43OTE2OEwxMC43OTE2IDIuMTMzMzVDMTEuNDE3MSAxLjUwNzg4IDEyLjI2NTQgMS4xNTY0OSAxMy4xNDk5IDEuMTU2NDlDMTQuMDM0NSAxLjE1NjQ5IDE0Ljg4MjggMS41MDc4OCAxNS41MDgyIDIuMTMzMzVDMTYuMTMzNyAyLjc1ODgyIDE2LjQ4NTEgMy42MDcxMyAxNi40ODUxIDQuNDkxNjhDMTYuNDg1MSA1LjM3NjIzIDE2LjEzMzcgNi4yMjQ1NSAxNS41MDgyIDYuODUwMDJMNy44NDE1OCAxNC41MDgzQzcuNTI4ODUgMTQuODIxMSA3LjEwNDY5IDE0Ljk5NjggNi42NjI0MiAxNC45OTY4QzYuMjIwMTQgMTQuOTk2OCA1Ljc5NTk4IDE0LjgyMTEgNS40ODMyNSAxNC41MDgzQzUuMTcwNTEgMTQuMTk1NiA0Ljk5NDgyIDEzLjc3MTUgNC45OTQ4MiAxMy4zMjkyQzQuOTk0ODIgMTIuODg2OSA1LjE3MDUxIDEyLjQ2MjcgNS40ODMyNSAxMi4xNUwxMi41NTgyIDUuMDgzMzVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMzNDQwNTRcIiBzdHJva2Utd2lkdGg9XCIxLjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9idXR0b24+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgbXMtM1wiIChjbGljayk9XCJ1cGRhdGVUaWNrZXQoKVwiPiBTdWJtaXQgPC9idXR0b24+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLWRlZmF1bHQgYnRuLW91dGxpbmUgbXMtMyB0ZXh0LW5vd3JhcFwiPjxzcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzM5MTdfNTQ2MjEpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTcuNTc0MzUgNy41MDAwOEM3Ljc3MDI3IDYuOTQzMTQgOC4xNTY5OCA2LjQ3MzUgOC42NjU5OCA2LjE3NDM2QzkuMTc0OTggNS44NzUyMSA5Ljc3MzQzIDUuNzY1ODYgMTAuMzU1MyA1Ljg2NTY3QzEwLjkzNzIgNS45NjU0OSAxMS40NjUgNi4yNjgwMiAxMS44NDUyIDYuNzE5NjlDMTIuMjI1NSA3LjE3MTM2IDEyLjQzMzYgNy43NDMwMiAxMi40MzI3IDguMzMzNDJDMTIuNDMyNyAxMC4wMDAxIDkuOTMyNjggMTAuODMzNCA5LjkzMjY4IDEwLjgzMzRNOS45OTkzNSAxNC4xNjY3SDEwLjAwNzdNMTguMzMyNyAxMC4wMDAxQzE4LjMzMjcgMTQuNjAyNSAxNC42MDE3IDE4LjMzMzQgOS45OTkzNSAxOC4zMzM0QzUuMzk2OTggMTguMzMzNCAxLjY2NjAyIDE0LjYwMjUgMS42NjYwMiAxMC4wMDAxQzEuNjY2MDIgNS4zOTc3MSA1LjM5Njk4IDEuNjY2NzUgOS45OTkzNSAxLjY2Njc1QzE0LjYwMTcgMS42NjY3NSAxOC4zMzI3IDUuMzk3NzEgMTguMzMyNyAxMC4wMDAxWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMTAxODI4XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMzkxN181NDYyMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz4gQ2Fu4oCZdCBhYmxlIHRvIHJlYWNoIHRoZSBzdG9yZT9cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1kYW5nZXJcIiAqbmdJZj1cImVycm9yTWVzc2FnZVwiID57eyBlcnJvck1lc3NhZ2UgfX08L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tNFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlciBib3JkZXItMSBib3JkZXItZ3JheSByb3VuZGVkLTMgcC01IGgtMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhbWVyYSBmdy1zZW1pYm9sZFwiPkF0dGFjaG1lbnRzPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInRpY2tldEluZm8/LmF0dGFjaG1lbnRzLmxlbmd0aCA9PT0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ3LTEwMCBtdC0xMCBtYi0xMCBtaC02MHZoIGQtZ3JpZCB0ZXh0LWNlbnRlciBteC1hdXRvXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJteC1hdXRvXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSW1hZ2VzL3Rha2V0aWNrZXQuc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGFrZXRpY2tldCBtdC0yIGZ3LWJvbGRcIj5ObyBBdHRhY2htZW50cyA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInRpY2tldEluZm8/LmF0dGFjaG1lbnRzLmxlbmd0aCA+IDBcIiBjbGFzcz1cInJvdyBtdC0xMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTZcIiAqbmdGb3I9XCJsZXQgZmlsZSBvZiB0aWNrZXRJbmZvPy5hdHRhY2htZW50c1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIkF0dGFjaG1lbnQgYm9yZGVyIGJvcmRlci0xIGJvcmRlci1ncmF5IHctMTAwIHJvdW5kZWQtMiBvdmVyZmxvdy1oaWRkZW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiaC0xNTBweFwiICAoY2xpY2spPVwiZG93bmxvYWRpbWFnZShmaWxlPy5zaWduZWRVcmwpXCIgW3NyY109XCJmaWxlPy5zaWduZWRVcmxcIiBhbHQ9XCJTZWxlY3RlZCBJbWFnZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWdyaWQgYm9yZGVyIGJvcmRlci10b3AtMSBweC01IHB5LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpbWFnZW5hbWUgZnctYm9sZFwiPnt7ZmlsZS5maWxlbmFtZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxzcGFuIGNsYXNzPVwiZnctYm9sZC00MDAgdXBkYXRlZGRhdGVcIj57e2ZpbGUubGFzdE1vZGlmaWVkRGF0ZVN0cmluZ319PC9zcGFuPiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgIDwvZGl2PiJdfQ==
|