tango-app-ui-manage-stores 3.0.11-dev → 3.0.12-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/add-stores/add-stores.component.mjs +5 -2
- package/esm2022/lib/components/add-stores-form/add-stores-form.component.mjs +5 -2
- package/fesm2022/tango-app-ui-manage-stores.mjs +8 -2
- package/fesm2022/tango-app-ui-manage-stores.mjs.map +1 -1
- package/lib/components/add-stores/add-stores.component.d.ts +1 -0
- package/lib/components/add-stores-form/add-stores-form.component.d.ts +1 -0
- package/package.json +1 -1
|
@@ -18,6 +18,7 @@ export class AddStoresFormComponent {
|
|
|
18
18
|
storeForm;
|
|
19
19
|
storeId;
|
|
20
20
|
timezones;
|
|
21
|
+
$headerFilters;
|
|
21
22
|
handleAddressChange(place) {
|
|
22
23
|
if (place.geometry) {
|
|
23
24
|
const country = place.address_components.find((component) => component.types.includes("country"))?.long_name;
|
|
@@ -35,6 +36,8 @@ export class AddStoresFormComponent {
|
|
|
35
36
|
this.storesService = storesService;
|
|
36
37
|
this.changeDetector = changeDetector;
|
|
37
38
|
this.router = router;
|
|
39
|
+
let data = JSON.parse(localStorage.getItem('header-filters') || '');
|
|
40
|
+
this.$headerFilters = data;
|
|
38
41
|
this.getAllTimezones();
|
|
39
42
|
this.createForm();
|
|
40
43
|
}
|
|
@@ -59,7 +62,7 @@ export class AddStoresFormComponent {
|
|
|
59
62
|
createForm() {
|
|
60
63
|
this.storeForm = this.fb.group({
|
|
61
64
|
storeName: ["", Validators.required],
|
|
62
|
-
clientId: [
|
|
65
|
+
clientId: [this.$headerFilters?.client, Validators.required],
|
|
63
66
|
businessType: ["COCO", Validators.required],
|
|
64
67
|
storeType_type: ["High Street", Validators.required],
|
|
65
68
|
storeType_name: [""],
|
|
@@ -248,4 +251,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
|
|
|
248
251
|
type: ViewChild,
|
|
249
252
|
args: ["ngxPlaces"]
|
|
250
253
|
}] } });
|
|
251
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXN0b3Jlcy1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLW1hbmFnZS1zdG9yZXMvc3JjL2xpYi9jb21wb25lbnRzL2FkZC1zdG9yZXMtZm9ybS9hZGQtc3RvcmVzLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGFuZ28tbWFuYWdlLXN0b3Jlcy9zcmMvbGliL2NvbXBvbmVudHMvYWRkLXN0b3Jlcy1mb3JtL2FkZC1zdG9yZXMtZm9ybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUVULFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQTBCLFVBQVUsRUFBZ0QsTUFBTSxnQkFBZ0IsQ0FBQztBQUlsSCxPQUFPLElBQUksTUFBTSxhQUFhLENBQUM7QUFFL0IsT0FBTyxLQUFLLE1BQU0sTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7OztBQVUxQyxNQUFNLE9BQU8sc0JBQXNCO0lBa0N2QjtJQUNBO0lBQ0E7SUFDQTtJQXBDYyxTQUFTLENBQTZCO0lBRTlELE1BQU0sR0FBRyxZQUFZLENBQUM7SUFDdEIsU0FBUyxDQUFZO0lBQ3JCLE9BQU8sQ0FBUztJQUNoQixTQUFTLENBQVE7SUFFVixtQkFBbUIsQ0FBQyxLQUEyQztRQUNwRSxJQUFJLEtBQUssQ0FBQyxRQUFRLEVBQUU7WUFDbEIsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FDM0MsQ0FBQyxTQUF1QyxFQUFFLEVBQUUsQ0FDMUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQ3RDLEVBQUUsU0FBUyxDQUFDO1lBQ2IsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FDeEMsQ0FBQyxTQUF1QyxFQUFF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SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLFNBQVMsR0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ25DLENBQUM7dUdBM1FVLHNCQUFzQjsyRkFBdEIsc0JBQXNCLG1LQ3RCbkMsMnRxREFtakJNOzsyRkQ3aEJPLHNCQUFzQjtrQkFMbEMsU0FBUzsrQkFDRSxxQkFBcUI7aUtBS1AsU0FBUztzQkFBaEMsU0FBUzt1QkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgT25Jbml0LFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUFycmF5LCBWYWxpZGF0b3JzLCBGb3JtR3JvdXAsIEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycyB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBTdG9yZXNTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3N0b3Jlcy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcbmltcG9ydCB7IFN0b3JlUmVzcG9uc2UgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy9zdG9yZS5pbnRlcmZhY2VcIjtcclxuaW1wb3J0IFN3YWwgZnJvbSBcInN3ZWV0YWxlcnQyXCI7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0ICogYXMgbW9tZW50IGZyb20gJ21vbWVudC10aW1lem9uZSc7XHJcbmltcG9ydCB7IE5neEdwQXV0b2NvbXBsZXRlRGlyZWN0aXZlIH0gZnJvbSBcIkBhbmd1bGFyLW1hZ2ljL25neC1ncC1hdXRvY29tcGxldGUvbGliL25neC1ncC1hdXRvY29tcGxldGUuZGlyZWN0aXZlXCI7XHJcblxyXG5kZWNsYXJlIHZhciAkOiBhbnk7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJsaWItYWRkLXN0b3Jlcy1mb3JtXCIsXHJcbiAgdGVtcGxhdGVVcmw6IFwiLi9hZGQtc3RvcmVzLWZvcm0uY29tcG9uZW50Lmh0bWxcIixcclxuICBzdHlsZVVybDogXCIuL2FkZC1zdG9yZXMtZm9ybS5jb21wb25lbnQuc2Nzc1wiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRkU3RvcmVzRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQFZpZXdDaGlsZChcIm5neFBsYWNlc1wiKSBwbGFjZXNSZWY6IE5neEdwQXV0b2NvbXBsZXRlRGlyZWN0aXZlO1xyXG5cclxuICBzZWxlY3QgPSBcInN0b3JlX2luZm9cIjtcclxuICBzdG9yZUZvcm06IEZvcm1Hcm91cDtcclxuICBzdG9yZUlkOiBzdHJpbmc7XHJcbiAgdGltZXpvbmVzOiBhbnlbXTtcclxuXHJcbiAgcHVibGljIGhhbmRsZUFkZHJlc3NDaGFuZ2UocGxhY2U6IGdvb2dsZS5tYXBzLnBsYWNlcy5QbGFjZVJlc3VsdCB8IGFueSkge1xyXG4gICAgaWYgKHBsYWNlLmdlb21ldHJ5KSB7XHJcbiAgICAgIGNvbnN0IGNvdW50cnkgPSBwbGFjZS5hZGRyZXNzX2NvbXBvbmVudHMuZmluZChcclxuICAgICAgICAoY29tcG9uZW50OiB7IHR5cGVzOiBzdHJpbmcgfCBzdHJpbmdbXSB9KSA9PlxyXG4gICAgICAgICAgY29tcG9uZW50LnR5cGVzLmluY2x1ZGVzKFwiY291bnRyeVwiKVxyXG4gICAgICApPy5sb25nX25hbWU7XHJcbiAgICAgIGNvbnN0IGNpdHkgPSBwbGFjZS5hZGRyZXNzX2NvbXBvbmVudHMuZmluZChcclxuICAgICAgICAoY29tcG9uZW50OiB7IHR5cGVzOiBzdHJpbmcgfCBzdHJpbmdbXSB9KSA9PlxyXG4gICAgICAgICAgY29tcG9uZW50LnR5cGVzLmluY2x1ZGVzKFwibG9jYWxpdHlcIilcclxuICAgICAgKT8ubG9uZ19uYW1lO1xyXG4gICAgICBjb25zdCBzdGF0ZSA9IHBsYWNlLmFkZHJlc3NfY29tcG9uZW50cy5maW5kKFxyXG4gICAgICAgIChjb21wb25lbnQ6IHsgdHlwZXM6IHN0cmluZyB8IHN0cmluZ1tdIH0pID0+XHJcbiAgICAgICAgICBjb21wb25lbnQudHlwZXMuaW5jbHVkZXMoXCJhZG1pbmlzdHJhdGl2ZV9hcmVhX2xldmVsXzFcIilcclxuICAgICAgKT8ubG9uZ19uYW1lO1xyXG4gICAgICBjb25zdCBwaW5jb2RlID0gcGxhY2UuYWRkcmVzc19jb21wb25lbnRzLmZpbmQoXHJcbiAgICAgICAgKGNvbXBvbmVudDogeyB0eXBlczogc3RyaW5nIHwgc3RyaW5nW10gfSkgPT5cclxuICAgICAgICAgIGNvbXBvbmVudC50eXBlcy5pbmNsdWRlcyhcInBvc3RhbF9jb2RlXCIpXHJcbiAgICAgICk/LmxvbmdfbmFtZTtcclxuICAgICAgdGhpcy5zdG9yZUZvcm0uZ2V0KFwiY291bnRyeVwiKT8uc2V0VmFsdWUoY291bnRyeSk7XHJcbiAgICAgIHRoaXMuc3RvcmVGb3JtLmdldChcImNpdHlcIik/LnNldFZhbHVlKGNpdHkpO1xyXG4gICAgICB0aGlzLnN0b3JlRm9ybS5nZXQoXCJzdGF0ZVwiKT8uc2V0VmFsdWUoc3RhdGUpO1xyXG4gICAgICB0aGlzLnN0b3JlRm9ybS5nZXQoXCJwaW5jb2RlXCIpPy5zZXRWYWx1ZShwaW5jb2RlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsXHJcbiAgICBwcml2YXRlIHN0b3Jlc1NlcnZpY2U6IFN0b3Jlc1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXJcclxuICApIHtcclxuICAgIHRoaXMuZ2V0QWxsVGltZXpvbmVzKCk7XHJcbiAgICB0aGlzLmNyZWF0ZUZvcm0oKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge31cclxuXHJcbiAgc2V0dGluZ3ZhbHVlKGxhYmVsOiBhbnkpIHtcclxuICAgIGlmIChsYWJlbCA9PSBcInN0b3JlX2luZm9cIikge1xyXG4gICAgICB0aGlzLnNlbGVjdCA9IFwic3RvcmVfaW5mb1wiO1xyXG4gICAgfSBlbHNlIGlmIChsYWJlbCA9PSBcImNvbmZpZ1wiKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ID0gXCJjb25maWdcIjtcclxuICAgIH0gZWxzZSBpZiAobGFiZWwgPT0gXCJzdG9yZV9sb2NcIikge1xyXG4gICAgICB0aGlzLnNlbGVjdCA9IFwic3RvcmVfbG9jXCI7XHJcbiAgICB9IGVsc2UgaWYgKGxhYmVsID09IFwiY29udGFjdFwiKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ID0gXCJjb250YWN0XCI7XHJcbiAgICB9IGVsc2UgaWYgKGxhYmVsID09IFwicmV2aWV3XCIpIHtcclxuICAgICAgdGhpcy5zZWxlY3QgPSBcInJldmlld1wiO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY3JlYXRlRm9ybSgpIHtcclxuICAgIHRoaXMuc3RvcmVGb3JtID0gdGhpcy5mYi5ncm91cChcclxuICAgICAge1xyXG4gICAgICAgIHN0b3JlTmFtZTogW1wiXCIsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICAgIGNsaWVudElkOiBbXCIxMVwiLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgICBidXNpbmVzc1R5cGU6IFtcIkNPQ09cIiwgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgc3RvcmVUeXBlX3R5cGU6IFtcIkhpZ2ggU3RyZWV0XCIsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICAgIHN0b3JlVHlwZV9uYW1lOiBbXCJcIl0sXHJcbiAgICAgICAgc3RvcmVDb2RlOiBbXCJcIl0sXHJcbiAgICAgICAgYWRkcmVzczogW1wiXCIsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICAgIGNvdW50cnk6IFtcIlwiLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgICBzdGF0ZTogW1wiXCIsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICAgIGNpdHk6IFtcIlwiLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgICBwaW5jb2RlOiBbXCJcIiwgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgdGltZVpvbmU6IFtcIkFzaWEvS29sa2F0YVwiLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgICBvcGVuOiBbXCIxMDowMFwiLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgICBjbG9zZTogW1wiMjA6MDBcIiwgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgLy8gY2FtZXJhczogWzAsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICAgIHNwb2NEZXRhaWxzOiB0aGlzLmZiLmFycmF5KFt0aGlzLmNyZWF0ZVNwb2NEZXRhaWwoKV0pLFxyXG4gICAgICAgIHN0b3JlQ29ubmVjdGlvbklkOiBbXCJcIl0sXHJcbiAgICAgIH0sXHJcbiAgICAgIHsgdmFsaWRhdG9yczogdGhpcy50aW1lUmFuZ2VWYWxpZGF0b3IgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHRpbWVSYW5nZVZhbGlkYXRvcihjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB7XHJcbiAgICBjb25zdCBvcGVuVGltZSA9IGNvbnRyb2wuZ2V0KFwib3BlblwiKT8udmFsdWU7XHJcbiAgICBjb25zdCBjbG9zZVRpbWUgPSBjb250cm9sLmdldChcImNsb3NlXCIpPy52YWx1ZTtcclxuICAgIGlmIChvcGVuVGltZSAmJiBjbG9zZVRpbWUgJiYgb3BlblRpbWUgPj0gY2xvc2VUaW1lKSB7XHJcbiAgICAgIHJldHVybiB7IGludmFsaWRUaW1lUmFuZ2U6IHRydWUgfTtcclxuICAgIH0gICAgXHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIGNyZWF0ZVNwb2NEZXRhaWwoKTogRm9ybUdyb3VwIHtcclxuICAgIHJldHVybiB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgbmFtZTogW1wiXCIsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICBlbWFpbDogW1xyXG4gICAgICAgIFwiXCIsXHJcbiAgICAgICAgW1xyXG4gICAgICAgICAgVmFsaWRhdG9ycy5yZXF1aXJlZCxcclxuICAgICAgICAgIFZhbGlkYXRvcnMuZW1haWwsXHJcbiAgICAgICAgICBWYWxpZGF0b3JzLm1heExlbmd0aCgxMDApLFxyXG4gICAgICAgICAgVmFsaWRhdG9ycy5taW5MZW5ndGgoMyksXHJcbiAgICAgICAgXSxcclxuICAgICAgXSxcclxuICAgICAgY29udGFjdDogW1xyXG4gICAgICAgIFwiXCIsXHJcbiAgICAgICAgW1xyXG4gICAgICAgICAgVmFsaWRhdG9ycy5yZXF1aXJlZCxcclxuICAgICAgICAgIFZhbGlkYXRvcnMubWF4TGVuZ3RoKDEzKSxcclxuICAgICAgICAgIFZhbGlkYXRvcnMubWluTGVuZ3RoKDEwKSxcclxuICAgICAgICBdLFxyXG4gICAgICBdLFxyXG4gICAgICBkZXNpZ25hdGlvbjogW1wiXCJdLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBnZXRzcG9jRGV0YWlsc0NvbnRyb2xzKCkge1xyXG4gICAgcmV0dXJuICh0aGlzLnN0b3JlRm9ybS5nZXQoXCJzcG9jRGV0YWlsc1wiKSBhcyBGb3JtQXJyYXkpLmNvbnRyb2xzO1xyXG4gIH1cclxuXHJcbiAgZ2V0c3BvY0RldGFpbHNWYWx1ZXMoaTogbnVtYmVyKSB7XHJcbiAgICByZXR1cm4gKHRoaXMuc3RvcmVGb3JtLmdldChcInNwb2NEZXRhaWxzXCIpIGFzIEZvcm1BcnJheSkuYXQoaSkudmFsdWU7XHJcbiAgfVxyXG5cclxuICBnZXRTdG9yZVByb2ZpbGUoKTogRm9ybUdyb3VwIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlRm9ybS5nZXQoXCJzdG9yZVByb2ZpbGVcIikgYXMgRm9ybUdyb3VwO1xyXG4gIH1cclxuXHJcbiAgZ29Ub1N0b3JlSW5mbygpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0ID0gXCJzdG9yZV9pbmZvXCI7XHJcbiAgfVxyXG5cclxuICBnb1RvQ29uZmlndXJhdGlvbigpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0ID0gXCJjb25maWdcIjtcclxuICB9XHJcblxyXG4gIGdvVG9Db250YWN0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3QgPSBcImNvbnRhY3RcIjtcclxuICB9XHJcblxyXG4gIGdvVG9SZXZpZXcoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbGVjdCA9IFwicmV2aWV3XCI7XHJcbiAgfVxyXG5cclxuICBhZGRTcG9jRGV0YWlsKCkge1xyXG4gICAgKHRoaXMuc3RvcmVGb3JtLmdldChcInNwb2NEZXRhaWxzXCIpIGFzIEZvcm1BcnJheSkucHVzaChcclxuICAgICAgdGhpcy5jcmVhdGVTcG9jRGV0YWlsKClcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBhZGRBbHRTcG9jKCkge1xyXG4gICAgKHRoaXMuc3RvcmVGb3JtLmdldChcInNwb2NEZXRhaWxzXCIpIGFzIEZvcm1BcnJheSkucHVzaChcclxuICAgICAgdGhpcy5jcmVhdGVTcG9jRGV0YWlsKClcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBkZWxBbHRTcG9jKCkge1xyXG4gICAgKHRoaXMuc3RvcmVGb3JtLmdldChcInNwb2NEZXRhaWxzXCIpIGFzIEZvcm1BcnJheSkucmVtb3ZlQXQoMSk7XHJcbiAgfVxyXG5cclxuICByZW1vdmVTcG9jRGV0YWlsKGluZGV4OiBudW1iZXIpIHtcclxuICAgICh0aGlzLnN0b3JlRm9ybS5nZXQoXCJzcG9jRGV0YWlsc1wiKSBhcyBGb3JtQXJyYXkpLnJlbW92ZUF0KGluZGV4KTtcclxuICB9XHJcblxyXG4gIG9uU3VibWl0KCkge1xyXG4gICAgaWYgKHRoaXMuc3RvcmVGb3JtLnZhbGlkKSB7XHJcbiAgICAgIGxldCBzdG9yZTogU3RvcmVSZXNwb25zZSA9IHtcclxuICAgICAgICBzdG9yZU5hbWU6IHRoaXMuc3RvcmVGb3JtLnZhbHVlLnN0b3JlTmFtZSxcclxuICAgICAgICBjbGllbnRJZDogdGhpcy5zdG9yZUZvcm0udmFsdWUuY2xpZW50SWQsXHJcbiAgICAgICAgYnJhbmROYW1lOiBcIkxlbnNrYXJ0XCIsXHJcbiAgICAgICAgYnVzaW5lc3NUeXBlOiB0aGlzLnN0b3JlRm9ybS52YWx1ZS5idXNpbmVzc1R5cGUsXHJcbiAgICAgICAgc3RvcmVUeXBlOiB7XHJcbiAgICAgICAgICB0eXBlOiB0aGlzLnN0b3JlRm9ybS52YWx1ZS5zdG9yZVR5cGVfdHlwZSxcclxuICAgICAgICAgIG5hbWU6IHRoaXMuc3RvcmVGb3JtLnZhbHVlPy5zdG9yZVR5cGVfbmFtZSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHN0b3JlUHJvZmlsZToge1xyXG4gICAgICAgICAgc3RvcmVDb2RlOiB0aGlzLnN0b3JlRm9ybS52YWx1ZT8uc3RvcmVDb2RlLFxyXG4gICAgICAgICAgYWRkcmVzczogdGhpcy5zdG9yZUZvcm0udmFsdWU/LmFkZHJlc3MsXHJcbiAgICAgICAgICBjb3VudHJ5OiB0aGlzLnN0b3JlRm9ybS52YWx1ZT8uY291bnRyeSxcclxuICAgICAgICAgIHN0YXRlOiB0aGlzLnN0b3JlRm9ybS52YWx1ZT8uc3RhdGUsXHJcbiAgICAgICAgICBjaXR5OiB0aGlzLnN0b3JlRm9ybS52YWx1ZT8uY2l0eSxcclxuICAgICAgICAgIHBpbmNvZGU6IHRoaXMuc3RvcmVGb3JtLnZhbHVlPy5waW5jb2RlLFxyXG4gICAgICAgICAgdGltZVpvbmU6IHRoaXMuc3RvcmVGb3JtLnZhbHVlPy50aW1lWm9uZSxcclxuICAgICAgICAgIG9wZW46IHRoaXMuc3RvcmVGb3JtLnZhbHVlPy5vcGVuLFxyXG4gICAgICAgICAgY2xvc2U6IHRoaXMuc3RvcmVGb3JtLnZhbHVlPy5jbG9zZSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIC8vIGVkZ2U6IHtcclxuICAgICAgICAvLyAgIGNhbURldGFpbHM6IHtcclxuICAgICAgICAvLyAgICAgY2FtZXJhczogdGhpcy5zdG9yZUZvcm0udmFsdWU/LmNhbWVyYXMsXHJcbiAgICAgICAgLy8gICB9LFxyXG4gICAgICAgIC8vIH0sXHJcbiAgICAgICAgc3BvY0RldGFpbHM6IFtcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgbmFtZTogdGhpcy5zdG9yZUZvcm0udmFsdWU/LnNwb2NEZXRhaWxzWzBdLm5hbWUsXHJcbiAgICAgICAgICAgIGVtYWlsOiB0aGlzLnN0b3JlRm9ybS52YWx1ZT8uc3BvY0RldGFpbHNbMF0uZW1haWwsXHJcbiAgICAgICAgICAgIGNvbnRhY3Q6IHRoaXMuc3RvcmVGb3JtLnZhbHVlPy5zcG9jRGV0YWlsc1swXS5jb250YWN0LFxyXG4gICAgICAgICAgICBkZXNpZ25hdGlvbjogdGhpcy5zdG9yZUZvcm0udmFsdWU/LnNwb2NEZXRhaWxzWzBdLmRlc2lnbmF0aW9uLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICBdLFxyXG4gICAgICAgIHN0b3JlQ29ubmVjdGlvbklkOiB0aGlzLnN0b3JlRm9ybS52YWx1ZT8uc3RvcmVDb25uZWN0aW9uSWQsXHJcbiAgICAgIH07XHJcbiAgICAgIGlmICh0aGlzLnN0b3JlRm9ybS52YWx1ZS5zcG9jRGV0YWlscy5sZW5ndGggPiAxKSB7XHJcbiAgICAgICAgZm9yKGxldCBpPTE7aTx0aGlzLnN0b3JlRm9ybS52YWx1ZS5zcG9jRGV0YWlscy5sZW5ndGg7aSsrKSB7XHJcbiAgICAgICAgICBzdG9yZS5zcG9jRGV0YWlscy5wdXNoKHtcclxuICAgICAgICAgICAgbmFtZTogdGhpcy5zdG9yZUZvcm0udmFsdWU/LnNwb2NEZXRhaWxzW2ldLm5hbWUsXHJcbiAgICAgICAgICAgIGVtYWlsOiB0aGlzLnN0b3JlRm9ybS52YWx1ZT8uc3BvY0RldGFpbHNbaV0uZW1haWwsXHJcbiAgICAgICAgICAgIGNvbnRhY3Q6IHRoaXMuc3RvcmVGb3JtLnZhbHVlPy5zcG9jRGV0YWlsc1tpXS5jb250YWN0LFxyXG4gICAgICAgICAgICBkZXNpZ25hdGlvbjogdGhpcy5zdG9yZUZvcm0udmFsdWU/LnNwb2NEZXRhaWxzW2ldLmRlc2lnbmF0aW9uLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLnN0b3Jlc1NlcnZpY2UuY3JlYXRlU3RvcmUoc3RvcmUpLnN1YnNjcmliZShcclxuICAgICAgICAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT09IDIwMCAmJiByZXMuc3RhdHVzID09PSBcInN1Y2Nlc3NcIikge1xyXG4gICAgICAgICAgICB0aGlzLnN3YWxUb2FzdChcIlN0b3JlIENyZWF0ZWQgU3VjY2Vzc2Z1bGx5IVwiKTtcclxuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wiL21hbmFnZS9zdG9yZXNcIl0pO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5zd2FsVG9hc3QoXCJVbmFibGUgdG8gY3JlYXRlIHN0b3JlIVwiKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgIHRoaXMuc3dhbFRvYXN0KFwiVW5hYmxlIHRvIGNyZWF0ZSBzdG9yZSFcIik7XHJcbiAgICAgICAgfVxyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHN3YWxUb2FzdChtc2c6IHN0cmluZywgaWNvbj86IHN0cmluZykge1xyXG4gICAgU3dhbC5maXJlKHtcclxuICAgICAgdG9hc3Q6IHRydWUsXHJcbiAgICAgIC4uLihpY29uID8geyBpY29uSHRtbDogaWNvbiB9IDoge30pLFxyXG4gICAgICAvLyB0aXRsZVRleHQ6IGBDaGVja2xpc3QgRm9ybSBFcnJvcmAsXHJcbiAgICAgIGh0bWw6IGA8ZGl2IGNsYXNzPVwicm93IHB4LTBcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBtdC0yIHRleHQtbm93cmFwXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ0b2FzdHRpdGlsZSB0ZXh0LW5vd3JhcFwiPiR7bXNnfTwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICBcclxuICAgICAgPC9kaXY+YCxcclxuICAgICAgcG9zaXRpb246IFwiYm90dG9tXCIsXHJcbiAgICAgIHNob3dDb25maXJtQnV0dG9uOiBmYWxzZSxcclxuICAgICAgc2hvd0Nsb3NlQnV0dG9uOiB0cnVlLFxyXG4gICAgICB0aW1lcjogNjAwMCxcclxuICAgICAgdGltZXJQcm9ncmVzc0JhcjogdHJ1ZSxcclxuICAgICAgZGlkT3BlbjogKHRvYXN0KSA9PiB7XHJcbiAgICAgICAgdG9hc3QuYWRkRXZlbnRMaXN0ZW5lcihcIm1vdXNlZW50ZXJcIiwgU3dhbC5zdG9wVGltZXIpO1xyXG4gICAgICAgIHRvYXN0LmFkZEV2ZW50TGlzdGVuZXIoXCJtb3VzZWxlYXZlXCIsIFN3YWwucmVzdW1lVGltZXIpO1xyXG4gICAgICAgICQoXCIja3RfY3JlYXRlX2FjY291bnRfZm9ybV9hY2NvdW50X3R5cGVfcGVyc29uYWxcIik/LnZhbChcIlwiKTtcclxuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmF2aWdhdGVUb0FkZFN0b3JlKCkge1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wiL21hbmFnZS9zdG9yZXMvYWRkaXRpb24tbWV0aG9kXCJdKTtcclxuICB9XHJcblxyXG4gIG9taXRfc3BlY2lhbF9jaGFyKGV2ZW50OiBhbnkpIHtcclxuICAgIHZhciBrO1xyXG4gICAgayA9IGV2ZW50LmNoYXJDb2RlOyAvLyAgICAgICAgIGsgPSBldmVudC5rZXlDb2RlOyAgKEJvdGggY2FuIGJlIHVzZWQpXHJcbiAgICByZXR1cm4gayA9PSA4IHx8IGsgPT0gMzIgfHwgKGsgPj0gNDggJiYgayA8PSA1Nyk7XHJcbiAgfVxyXG5cclxuICBnZXRBbGxUaW1lem9uZXMoKSB7XHJcbiAgICB0aGlzLnRpbWV6b25lcz1tb21lbnQudHoubmFtZXMoKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInJvdyBtdC0zIG1iLTZcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMyBjb2wtbGctMyBjb2wteGwtMyBjb2wteHhsLTNcIiBpZD1cImxlZnQtY29udGFpbmVyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQgY2FyZC1mbHVzaCBoLTEwMCBtYi0wXCI+XHJcbiAgICAgICAgICAgIDwhLS1iZWdpbjo6QXNpZGUgY29udGVudC0tPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtZW51IG1lbnUtY29sdW1uIG1lbnUtcm91bmRlZCBtZW51LXN0YXRlLWJnIG1lbnUtc3RhdGUtdGl0bGUtcHJpbWFyeSBtZW51LXN0YXRlLWljb24tcHJpbWFyeSBtZW51LXN0YXRlLWJ1bGxldC1wcmltYXJ5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLWJlZ2luOjpNZW51IGl0ZW0tLT5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWVudS1pdGVtIG15LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLWJlZ2luOjpJbmJveC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1lbnUtbGlua1wiIFtuZ0NsYXNzXT1cInsgJ2FjdGl2ZSc6IHNlbGVjdCA9PT0gJ3N0b3JlX2luZm8nIH1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNldHRpbmd2YWx1ZSgnc3RvcmVfaW5mbycpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1lbnUtaWNvblwiPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBzdHJva2U9XCJjdXJyZW50Q29sb3JcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0zLjA4OTk1IDYuODgzNjlMMy4wMjQwMSA2Ljk4NjY5QzIuMzAzNTggOC4yNTU1NyAzLjA2MTAxIDkuODc5NDUgNC40NjQ2NCAxMC4wNjYyQzQuNTg2MjcgMTAuMDgxMSA0LjcwMTEyIDEwLjA4OTIgNC44MTQ1IDEwLjA4OTJDNS41NTI1NSAxMC4wODkyIDYuMjA1MjMgOS43NzIyOSA2LjY1OTUzIDkuMjc5MTdMNy4yMTI4NiA4LjY3ODU0TDcuNzY0MzIgOS4yODA4OUM4LjIxMzY3IDkuNzcxNzEgOC44NjUyIDEwLjA4OTIgOS42MDc3NiAxMC4wODkyQzEwLjM0NzEgMTAuMDg5MiAxMS4wMDIyIDkuNzcxMzcgMTEuNDUxMiA5LjI4MDg5TDEyLjAwNDQgOC42NzY2NUwxMi41NTc2IDkuMjgwODlDMTMuMDA2NiA5Ljc3MTM3IDEzLjY2MTcgMTAuMDg5MiAxNC40MDEgMTAuMDg5MkMxNS4xNDA0IDEwLjA4OTIgMTUuNzk1NCA5Ljc3MTM3IDE2LjI0NDUgOS4yODA4OUwxNi43OTc3IDguNjc2NjVMMTcuMzUwOCA5LjI4MDg5QzE3Ljc5OTkgOS43NzEzNyAxOC40NTQ5IDEwLjA4OTIgMTkuMTk0MyAxMC4wODkyQzE5LjMwNDEgMTAuMDg5MiAxOS40MjIzIDEwLjA4MTEgMTkuNTQzMyAxMC4wNjYzQzIwLjk3NzIgOS44NzE2OCAyMS43MzU1IDguMTYzODcgMjAuOTE1NSA2Ljg4NDE5QzIwLjkxNTQgNi44ODQxMyAyMC45MTU0IDYuODg0MDcgMjAuOTE1NCA2Ljg4NDAyTDE4LjgwNTYgMy41OTQyOUwxOC44MDU2IDMuNTk0MjlMMTguODA0NiAzLjU5MjgyQzE4Ljc1ODIgMy41MjAwMiAxOC42NjQ5IDMuNDY0MjMgMTguNTU4NCAzLjQ2NDIzSDUuNDQzMDdDNS4zMzY1IDMuNDY0MjMgNS4yNDMyNiAzLjUyMDAyIDUuMTk2ODEgMy41OTI4Mkw1LjE5NjE5IDMuNTkzNzlMMy4wODk5NSA2Ljg4MzY5Wk00LjgxODE4IDEyLjc0OTlDNC43MTY0NCAxMi43NDk5IDQuNjE2IDEyLjc0NjggNC41MTY5IDEyLjc0MVYxNi42NDI4VjE4Ljk2NDJDNC41MTY5IDE5LjgyMTEgNS4yMjY2MyAyMC41MzU3IDYuMTE5NDIgMjAuNTM1N0gxNy44ODJDMTguNzc0OCAyMC41MzU3IDE5LjQ4NDUgMTkuODIxMSAxOS40ODQ1IDE4Ljk2NDJWMTYuNjQyOFYxMi43NDE1QzE5LjM4NzQgMTIuNzQ3IDE5LjI4OTMgMTIuNzQ5OSAxOS4xOTA2IDEyLjc0OTlDMTkuMDAyMiAxMi43NDk5IDE4LjgxNTcgMTIuNzM5OCAxOC42MzIgMTIuNzIwMlYxNi42NDI4VjE3LjM5MjhIMTcuODgySDYuMTE5NDJINS4zNjk0MlYxNi42NDI4VjEyLjcyMUM1LjE4ODY2IDEyLjc0IDUuMDA0NzIgMTIuNzQ5OSA0LjgxODE4IDEyLjc0OTlaXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1lbnUtdGl0bGUgZnctYm9sZCBcIj5TdG9yZSBJbmZvPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS1lbmQ6OkluYm94LS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1lbnUtaXRlbSBteS0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS1iZWdpbjo6SW5ib3gtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtZW51LWxpbmtcIiBbbmdDbGFzc109XCJ7ICdhY3RpdmUnOiBzZWxlY3QgPT09ICdjb25maWcnIH1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNldHRpbmd2YWx1ZSgnY29uZmlnJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWVudS1pY29uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMTAxN18yMjI3MClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMiAxNUMxMy42NTY5IDE1IDE1IDEzLjY1NjkgMTUgMTJDMTUgMTAuMzQzMSAxMy42NTY5IDkgMTIgOUMxMC4zNDMxIDkgOSAxMC4zNDMxIDkgMTJDOSAxMy42NTY5IDEwLjM0MzEgMTUgMTIgMTVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTE5LjQgMTVDMTkuMjY2OSAxNS4zMDE2IDE5LjIyNzIgMTUuNjM2MiAxOS4yODYgMTUuOTYwNkMxOS4zNDQ4IDE2LjI4NSAxOS40OTk1IDE2LjU4NDMgMTkuNzMgMTYuODJMMTkuNzkgMTYuODhDMTkuOTc2IDE3LjA2NTcgMjAuMTIzNSAxNy4yODYzIDIwLjIyNDEgMTcuNTI5MUMyMC4zMjQ4IDE3Ljc3MTkgMjAuMzc2NiAxOC4wMzIyIDIwLjM3NjYgMTguMjk1QzIwLjM3NjYgMTguNTU3OCAyMC4zMjQ4IDE4LjgxODEgMjAuMjI0MSAxOS4wNjA5QzIwLjEyMzUgMTkuMzAzNyAxOS45NzYgMTkuNTI0MyAxOS43OSAxOS43MUMxOS42MDQzIDE5Ljg5NiAxOS4zODM3IDIwLjA0MzUgMTkuMTQwOSAyMC4xNDQxQzE4Ljg5ODEgMjAuMjQ0OCAxOC42Mzc4IDIwLjI5NjYgMTguMzc1IDIwLjI5NjZDMTguMTEyMiAyMC4yOTY2IDE3Ljg1MTkgMjAuMjQ0OCAxNy42MDkxIDIwLjE0NDFDMTcuMzY2MyAyMC4wNDM1IDE3LjE0NTcgMTkuODk2IDE2Ljk2IDE5LjcxTDE2LjkgMTkuNjVDMTYuNjY0MyAxOS40MTk1IDE2LjM2NSAxOS4yNjQ4IDE2LjA0MDYgMTkuMjA2QzE1LjcxNjIgMTkuMTQ3MiAxNS4zODE2IDE5LjE4NjkgMTUuMDggMTkuMzJDMTQuNzg0MiAxOS40NDY4IDE0LjUzMiAxOS42NTcyIDE0LjM1NDMgMTkuOTI1NUMxNC4xNzY2IDIwLjE5MzggMTQuMDgxMyAyMC41MDgyIDE0LjA4IDIwLjgzVjIxQzE0LjA4IDIxLjUzMDQgMTMuODY5MyAyMi4wMzkxIDEzLjQ5NDIgMjIuNDE0MkMxMy4xMTkxIDIyLjc4OTMgMTIuNjEwNCAyMyAxMi4wOCAyM0MxMS41NDk2IDIzIDExLjA0MDkgMjIuNzg5MyAxMC42NjU4IDIyLjQxNDJDMTAuMjkwNyAyMi4wMzkxIDEwLjA4IDIxLjUzMDQgMTAuMDggMjFWMjAuOTFDMTAuMDcyMyAyMC41NzkgOS45NjUxMiAyMC4yNTggOS43NzI1MSAxOS45ODg3QzkuNTc5OSAxOS43MTk0IDkuMzEwNzQgMTkuNTE0MyA5IDE5LjRDOC42OTgzOCAxOS4yNjY5IDguMzYzODEgMTkuMjI3MiA4LjAzOTQxIDE5LjI4NkM3LjcxNTAyIDE5LjM0NDggNy40MTU2OCAxOS40OTk1IDcuMTggMTkuNzNMNy4xMiAxOS43OUM2LjkzNDI1IDE5Ljk3NiA2LjcxMzY4IDIwLjEyMzUgNi40NzA4OCAyMC4yMjQxQzYuMjI4MDggMjAuMzI0OCA1Ljk2NzgzIDIwLjM3NjYgNS43MDUgMjAuMzc2NkM1LjQ0MjE3IDIwLjM3NjYgNS4xODE5MiAyMC4zMjQ4IDQuOTM5MTIgMjAuMjI0MUM0LjY5NjMyIDIwLjEyMzUgNC40NzU3NSAxOS45NzYgNC4yOSAxOS43OUM0LjEwNDA1IDE5LjYwNDMgMy45NTY1MyAxOS4zODM3IDMuODU1ODggMTkuMTQwOUMzLjc1NTIzIDE4Ljg5ODEgMy43MDM0MyAxOC42Mzc4IDMuNzAzNDMgMTguMzc1QzMuNzAzNDMgMTguMTEyMiAzLjc1NTIzIDE3Ljg1MTkgMy44NTU4OCAxNy42MDkxQzMuOTU2NTMgMTcuMzY2MyA0LjEwNDA1IDE3LjE0NTcgNC4yOSAxNi45Nkw0LjM1IDE2LjlDNC41ODA1NCAxNi42NjQzIDQuNzM1MTkgMTYuMzY1IDQuNzk0IDE2LjA0MDZDNC44NTI4MiAxNS43MTYyIDQuODEzMTIgMTUuMzgxNiA0LjY4IDE1LjA4QzQuNTUzMjQgMTQuNzg0MiA0LjM0Mjc2IDE0LjUzMiA0LjA3NDQ3IDE0LjM1NDNDMy44MDYxOCAxNC4xNzY2IDMuNDkxNzkgMTQuMDgxMyAzLjE3IDE0LjA4SDNDMi40Njk1NyAxNC4wOCAxLjk2MDg2IDEzLjg2OTMgMS41ODU3OSAxMy40OTQyQzEuMjEwNzEgMTMuMTE5MSAxIDEyLjYxMDQgMSAxMi4wOEMxIDExLjU0OTYgMS4yMTA3MSAxMS4wNDA5IDEuNTg1NzkgMTAuNjY1OEMxLjk2MDg2IDEwLjI5MDcgMi40Njk1NyAxMC4wOCAzIDEwLjA4SDMuMDlDMy40MjA5OSAxMC4wNzIzIDMuNzQyIDkuOTY1MTIgNC4wMTEzIDkuNzcyNTFDNC4yODA1OSA5LjU3OTkgNC40ODU3MiA5LjMxMDc0IDQuNiA5QzQuNzMzMTIgOC42OTgzOCA0Ljc3MjgyIDguMzYzODEgNC43MTQgOC4wMzk0MUM0LjY1NTE5IDcuNzE1MDIgNC41MDA1NCA3LjQxNTY4IDQuMjcgNy4xOEw0LjIxIDcuMTJDNC4wMjQwNSA2LjkzNDI1IDMuODc2NTMgNi43MTM2OCAzLjc3NTg4IDYuNDcwODhDMy42NzUyMyA2LjIyODA4IDMuNjIzNDMgNS45Njc4MyAzLjYyMzQzIDUuNzA1QzMuNjIzNDMgNS40NDIxNyAzLjY3NTIzIDUuMTgxOTIgMy43NzU4OCA0LjkzOTEyQzMuODc2NTMgNC42OTYzMiA0LjAyNDA1IDQuNDc1NzUgNC4yMSA0LjI5QzQuMzk1NzUgNC4xMDQwNSA0LjYxNjMyIDMuOTU2NTMgNC44NTkxMiAzLjg1NTg4QzUuMTAxOTIgMy43NTUyMyA1LjM2MjE3IDMuNzAzNDMgNS42MjUgMy43MDM0M0M1Ljg4NzgzIDMuNzAzNDMgNi4xNDgwOCAzLjc1NTIzIDYuMzkwODggMy44NTU4OEM2LjYzMzY4IDMuOTU2NTMgNi44NTQyNSA0LjEwNDA1IDcuMDQgNC4yOUw3LjEgNC4zNUM3LjMzNTY4IDQuNTgwNTQgNy42MzUwMiA0LjczNTE5IDcuOTU5NDEgNC43OTRDOC4yODM4MSA0Ljg1MjgyIDguNjE4MzggNC44MTMxMiA4LjkyIDQuNjhIOUM5LjI5NTc3IDQuNTUzMjQgOS41NDgwMiA0LjM0Mjc2IDkuNzI1NjkgNC4wNzQ0N0M5LjkwMzM3IDMuODA2MTggOS45OTg3MiAzLjQ5MTc5IDEwIDMuMTdWM0MxMCAyLjQ2OTU3IDEwLjIxMDcgMS45NjA4NiAxMC41ODU4IDEuNTg1NzlDMTAuOTYwOSAxLjIxMDcxIDExLjQ2OTYgMSAxMiAxQzEyLjUzMDQgMSAxMy4wMzkxIDEuMjEwNzEgMTMuNDE0MiAxLjU4NTc5QzEzLjc4OTMgMS45NjA4NiAxNCAyLjQ2OTU3IDE0IDNWMy4wOUMxNC4wMDEzIDMuNDExNzkgMTQuMDk2NiAzLjcyNjE4IDE0LjI3NDMgMy45OTQ0N0MxNC40NTIgNC4yNjI3NiAxNC43MDQyIDQuNDczMjQgMTUgNC42QzE1LjMwMTYgNC43MzMxMiAxNS42MzYyIDQuNzcyODIgMTUuOTYwNiA0LjcxNEMxNi4yODUgNC42NTUxOSAxNi41ODQzIDQuNTAwNTQgMTYuODIgNC4yN0wxNi44OCA0LjIxQzE3LjA2NTcgNC4wMjQwNSAxNy4yODYzIDMuODc2NTMgMTcuNTI5MSAzLjc3NTg4QzE3Ljc3MTkgMy42NzUyMyAxOC4wMzIyIDMuNjIzNDMgMTguMjk1IDMuNjIzNDNDMTguNTU3OCAzLjYyMzQzIDE4LjgxODEgMy42NzUyMyAxOS4wNjA5IDMuNzc1ODhDMTkuMzAzNyAzLjg3NjUzIDE5LjUyNDMgNC4wMjQwNSAxOS43MSA0LjIxQzE5Ljg5NiA0LjM5NTc1IDIwLjA0MzUgNC42MTYzMiAyMC4xNDQxIDQuODU5MTJDMjAuMjQ0OCA1LjEwMTkyIDIwLjI5NjYgNS4zNjIxNyAyMC4yOTY2IDUuNjI1QzIwLjI5NjYgNS44ODc4MyAyMC4yNDQ4IDYuMTQ4MDggMjAuMTQ0MSA2LjM5MDg4QzIwLjA0MzUgNi42MzM2OCAxOS44OTYgNi44NTQyNSAxOS43MSA3LjA0TDE5LjY1IDcuMUMxOS40MTk1IDcuMzM1NjggMTkuMjY0OCA3LjYzNTAyIDE5LjIwNiA3Ljk1OTQxQzE5LjE0NzIgOC4yODM4MSAxOS4xODY5IDguNjE4MzggMTkuMzIgOC45MlY5QzE5LjQ0NjggOS4yOTU3NyAxOS42NTcyIDkuNTQ4MDIgMTkuOTI1NSA5LjcyNTY5QzIwLjE5MzggOS45MDMzNyAyMC41MDgyIDkuOTk4NzIgMjAuODMgMTBIMjFDMjEuNTMwNCAxMCAyMi4wMzkxIDEwLjIxMDcgMjIuNDE0MiAxMC41ODU4QzIyLjc4OTMgMTAuOTYwOSAyMyAxMS40Njk2IDIzIDEyQzIzIDEyLjUzMDQgMjIuNzg5MyAxMy4wMzkxIDIyLjQxNDIgMTMuNDE0MkMyMi4wMzkxIDEzLjc4OTMgMjEuNTMwNCAxNCAyMSAxNEgyMC45MUMyMC41ODgyIDE0LjAwMTMgMjAuMjczOCAxNC4wOTY2IDIwLjAwNTUgMTQuMjc0M0MxOS43MzcyIDE0LjQ1MiAxOS41MjY4IDE0LjcwNDIgMTkuNCAxNVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8xMDE3XzIyMjcwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgZmlsbD1cImN1cnJlbnRDb2xvclwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtZW51LXRpdGxlIGZ3LWJvbGQgXCI+U3RvcmUgQ29uZmlndXJhdGlvbjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tZW5kOjpJbmJveC0tPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8IS0tZW5kOjpNZW51IGl0ZW0tLT5cclxuXHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS1iZWdpbjo6TWVudSBpdGVtLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1lbnUtaXRlbSBteS0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS1iZWdpbjo6RHJhZnQtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtZW51LWxpbmtcIiBbbmdDbGFzc109XCJ7ICdhY3RpdmUnOiBzZWxlY3QgPT09ICdjb250YWN0JyB9XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZXR0aW5ndmFsdWUoJ2NvbnRhY3QnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtZW51LWljb25cIj48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTcgMjFWMTlDMTcgMTcuOTM5MSAxNi41Nzg2IDE2LjkyMTcgMTUuODI4NCAxNi4xNzE2QzE1LjA3ODMgMTUuNDIxNCAxNC4wNjA5IDE1IDEzIDE1SDVDMy45MzkxMyAxNSAyLjkyMTcyIDE1LjQyMTQgMi4xNzE1NyAxNi4xNzE2QzEuNDIxNDMgMTYuOTIxNyAxIDE3LjkzOTEgMSAxOVYyMU0yMyAyMVYxOUMyMi45OTkzIDE4LjExMzcgMjIuNzA0NCAxNy4yNTI4IDIyLjE2MTQgMTYuNTUyM0MyMS42MTg0IDE1Ljg1MTkgMjAuODU4MSAxNS4zNTE2IDIwIDE1LjEzTTE2IDMuMTNDMTYuODYwNCAzLjM1MDMgMTcuNjIzIDMuODUwNyAxOC4xNjc2IDQuNTUyMzFDMTguNzEyMiA1LjI1MzkyIDE5LjAwNzggNi4xMTY4MyAxOS4wMDc4IDcuMDA1QzE5LjAwNzggNy44OTMxNyAxOC43MTIyIDguNzU2MDggMTguMTY3NiA5LjQ1NzY5QzE3LjYyMyAxMC4xNTkzIDE2Ljg2MDQgMTAuNjU5NyAxNiAxMC44OE0xMyA3QzEzIDkuMjA5MTQgMTEuMjA5MSAxMSA5IDExQzYuNzkwODYgMTEgNSA5LjIwOTE0IDUgN0M1IDQuNzkwODYgNi43OTA4NiAzIDkgM0MxMS4yMDkxIDMgMTMgNC43OTA4NiAxMyA3WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtZW51LXRpdGxlIGZ3LWJvbGQgXCI+Q29udGFjdCBEZXRhaWxzPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS1lbmQ6OkRyYWZ0LS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLWVuZDo6TWVudSBpdGVtLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLWJlZ2luOjpNZW51IGl0ZW0tLT5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWVudS1pdGVtIG15LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLWJlZ2luOjpUcmFzaC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1lbnUtbGlua1wiIFtuZ0NsYXNzXT1cInsgJ2FjdGl2ZSc6IHNlbGVjdCA9PT0gJ3Jldmlldyd9XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZXR0aW5ndmFsdWUoJ3JldmlldycpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1lbnUtaWNvblwiPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTYgMUM1LjIwNDM1IDEgNC40NDEyOSAxLjMxNjA3IDMuODc4NjggMS44Nzg2OEMzLjMxNjA3IDIuNDQxMjkgMyAzLjIwNDM1IDMgNFYyMEMzIDIwLjc5NTcgMy4zMTYwNyAyMS41NTg3IDMuODc4NjggMjIuMTIxM0M0LjQ0MTI5IDIyLjY4MzkgNS4yMDQzNSAyMyA2IDIzSDEySDE4QzE4Ljc5NTcgMjMgMTkuNTU4NyAyMi42ODM5IDIwLjEyMTMgMjIuMTIxM0MyMC42ODM5IDIxLjU1ODcgMjEgMjAuNzk1NyAyMSAyMFYxNi40MjA4TDE5IDE4LjQyMDhWMjBDMTkgMjAuMjY1MiAxOC44OTQ2IDIwLjUxOTYgMTguNzA3MSAyMC43MDcxQzE4LjUxOTYgMjAuODk0NiAxOC4yNjUyIDIxIDE4IDIxSDE2LjQyMDhMMTUuMzI4NiAyMi4wOTIyTDEyIDIzTDEyLjU0NTUgMjFINkM1LjczNDc4IDIxIDUuNDgwNDMgMjAuODk0NiA1LjI5Mjg5IDIwLjcwNzFDNS4xMDUzNiAyMC41MTk2IDUgMjAuMjY1MiA1IDIwVjRDNSAzLjczNDc4IDUuMTA1MzYgMy40ODA0MyA1LjI5Mjg5IDMuMjkyODlDNS40ODA0MyAzLjEwNTM2IDUuNzM0NzggMyA2IDNIMTJWOUMxMiA5LjU1MjI4IDEyLjQ0NzcgMTAgMTMgMTBIMTlWMTMuNTc5MkwyMSAxMS41NzkyVjlDMjEgOC43MzQ3OCAyMC44OTQ2IDguNDgwNDMgMjAuNzA3MSA4LjI5Mjg5TDEzLjcwNzEgMS4yOTI4OUMxMy41MTk2IDEuMTA1MzYgMTMuMjY1MiAxIDEzIDFINlpNMTcuNTg1OCA4TDE0IDQuNDE0MjFWOEgxNy41ODU4WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMjAuMDc3OSAxMS41MDE0QzIwLjIzNjkgMTEuMzQyNCAyMC40MjU2IDExLjIxNjMgMjAuNjMzMyAxMS4xMzAzQzIwLjg0MDkgMTEuMDQ0MyAyMS4wNjM1IDExIDIxLjI4ODMgMTFDMjEuNTEzMSAxMSAyMS43MzU3IDExLjA0NDMgMjEuOTQzNCAxMS4xMzAzQzIyLjE1MSAxMS4yMTYzIDIyLjMzOTcgMTEuMzQyNCAyMi40OTg3IDExLjUwMTRDMjIuNjU3NiAxMS42NjAzIDIyLjc4MzcgMTEuODQ5IDIyLjg2OTggMTIuMDU2N0MyMi45NTU4IDEyLjI2NDQgMjMuMDAwMSAxMi40ODcgMjMuMDAwMSAxMi43MTE3QzIzLjAwMDEgMTIuOTM2NSAyMi45NTU4IDEzLjE1OTEgMjIuODY5OCAxMy4zNjY4QzIyLjc4MzcgMTMuNTc0NSAyMi42NTc2IDEzLjc2MzIgMjIuNDk4NyAxMy45MjIxTDE1LjMyODYgMjIuMDkyM0wxMiAyMy4wMDAxTDEyLjkwNzggMTkuNjcxNUwyMC4wNzc5IDExLjUwMTRaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjEuNlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWVudS10aXRsZSBmdy1ib2xkIFwiPlJldmlldyAmIFN1Ym1pdDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tZW5kOjpUcmFzaC0tPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS1lbmQ6Ok1lbnUgaXRlbS0tPlxyXG5cclxuXHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwhLS1lbmQ6Ok1lbnUtLT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbC1tZC05IGNvbC1sZy05IGNvbC14bC05IGNvbC14eGwtOVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBib3JkZXItYm90dG9tLTBcIj5cclxuICAgICAgICAgICAgICAgIDxoMVxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGFnZS1oZWFkaW5nIGQtZmxleCB0ZXh0LWRhcmsgZnctYm9sZCBmcy0yIGZsZXgtY29sdW1uICBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIG15LTAgc3ViLWhlYWRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiAgKm5nSWY9XCJzZWxlY3QgPT09ICdzdG9yZV9pbmZvJ1wiPkVudGVyIFlvdXIgU3RvcmUgRGV0YWlsczwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNlbGVjdCA9PT0gJ2NvbmZpZydcIj5FbnRlciBZb3VyIFN0b3JlIENvbmZpZ3VyYXRpb248L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzZWxlY3QgPT09ICdjb250YWN0J1wiPkVudGVyIFByaW1hcnkgU1BPQyBkZXRhaWxzPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic2VsZWN0ID09PSAncmV2aWV3J1wiPlJldmlldyAmIHN1Ym1pdDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvaDE+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IFtoaWRkZW5dPVwic2VsZWN0ICE9PSAnY29udGFjdCdcIiBjbGFzcz1cImNhcmQtdG9vbGJhclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cImFkZEFsdFNwb2MoKVwiIGNsYXNzPVwiYnRuIGJ0bi1saWdodC1wcmltYXJ5MSBidG4tc21cIj48c3ZnIGNsYXNzPVwibWUtMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE0XCIgdmlld0JveD1cIjAgMCAxOCAxNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMi43IDMuNUMyLjcgMi41NzE3NCAzLjA3OTI4IDEuNjgxNSAzLjc1NDQyIDEuMDI1MTNDNC40Mjk1NSAwLjM2ODc0OSA1LjM0NTIyIDAgNi4zIDBDNy4yNTQ3OCAwIDguMTcwNDUgMC4zNjg3NDkgOC44NDU1OCAxLjAyNTEzQzkuNTIwNzIgMS42ODE1IDkuOSAyLjU3MTc0IDkuOSAzLjVDOS45IDQuNDI4MjYgOS41MjA3MiA1LjMxODUgOC44NDU1OCA1Ljk3NDg3QzguMTcwNDUgNi42MzEyNSA3LjI1NDc4IDcgNi4zIDdDNS4zNDUyMiA3IDQuNDI5NTUgNi42MzEyNSAzLjc1NDQyIDUuOTc0ODdDMy4wNzkyOCA1LjMxODUgMi43IDQuNDI4MjYgMi43IDMuNVpNMCAxMy4xODc5QzAgMTAuNDk0NSAyLjI0NDM3IDguMzEyNSA1LjAxNDY5IDguMzEyNUg3LjU4NTMxQzEwLjM1NTYgOC4zMTI1IDEyLjYgMTAuNDk0NSAxMi42IDEzLjE4NzlDMTIuNiAxMy42MzYzIDEyLjIyNTkgMTQgMTEuNzY0NyAxNEgwLjgzNTMxMkMwLjM3NDA2MyAxNCAwIDEzLjYzNjMgMCAxMy4xODc5Wk0xNC4xNzUgOC41MzEyNVY2Ljc4MTI1SDEyLjM3NUMxMi4wMDA5IDYuNzgxMjUgMTEuNyA2LjQ4ODY3IDExLjcgNi4xMjVDMTEuNyA1Ljc2MTMzIDEyLjAwMDkgNS40Njg3NSAxMi4zNzUgNS40Njg3NUgxNC4xNzVWMy43MTg3NUMxNC4xNzUgMy4zNTUwOCAxNC40NzU5IDMuMDYyNSAxNC44NSAzLjA2MjVDMTUuMjI0MSAzLjA2MjUgMTUuNTI1IDMuMzU1MDggMTUuNTI1IDMuNzE4NzVWNS40Njg3NUgxNy4zMjVDMTcuNjk5MSA1LjQ2ODc1IDE4IDUuNzYxMzMgMTggNi4xMjVDMTggNi40ODg2NyAxNy42OTkxIDYuNzgxMjUgMTcuMzI1IDYuNzgxMjVIMTUuNTI1VjguNTMxMjVDMTUuNTI1IDguODk0OTIgMTUuMjI0MSA5LjE4NzUgMTQuODUgOS4xODc1QzE0LjQ3NTkgOS4xODc1IDE0LjE3NSA4Ljg5NDkyIDE0LjE3NSA4LjUzMTI1WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMEEzRkZcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5BZGQgQWx0ZXJuYXRlIFNQT0M8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBwdC0xXCI+XHJcbiAgICAgICAgICAgICAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cInN0b3JlRm9ybVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gU3RvcmUgSW5mbyBTdGFydCAtLT5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IFtoaWRkZW5dPVwic2VsZWN0ICE9PSAnc3RvcmVfaW5mbydcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBjb2wtbGctNiBtYi01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInN0b3JlTmFtZVwiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPlN0b3JlIE5hbWU8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBhdXRvY29tcGxldGU9XCJvZmZcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgaWQ9XCJzdG9yZU5hbWVcIiBmb3JtQ29udHJvbE5hbWU9XCJzdG9yZU5hbWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdpcy1pbnZhbGlkJzpzdG9yZUZvcm0uZ2V0KCdzdG9yZU5hbWUnKT8uaW52YWxpZCAmJiBzdG9yZUZvcm0uZ2V0KCdzdG9yZU5hbWUnKT8udG91Y2hlZH1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c21hbGwgY2xhc3M9XCJpbnZhbGlkLWZlZWRiYWNrXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJzdG9yZUZvcm0uZ2V0KCdzdG9yZU5hbWUnKT8udG91Y2hlZCAmJiBzdG9yZUZvcm0uZ2V0KCdzdG9yZU5hbWUnKT8uaGFzRXJyb3IoJ3JlcXVpcmVkJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgTmFtZSBpcyByZXF1aXJlZC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NtYWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIGNvbC1sZy02IG1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwic3RvcmVDb2RlXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+U3RvcmUgQ29kZSAvIFJlZiBDb2RlIChvcHRpb25hbCk8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBhdXRvY29tcGxldGU9XCJvZmZcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgaWQ9XCJzdG9yZUNvZGVcIiBmb3JtQ29udHJvbE5hbWU9XCJzdG9yZUNvZGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBjb2wtbGctNiBtYi01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImJ1c2luZXNzVHlwZVwiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPkJ1c2luZXNzIFR5cGU8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWxlY3QgY2xhc3M9XCJmb3JtLXNlbGVjdFwiIGlkPVwiYnVzaW5lc3NUeXBlXCIgZm9ybUNvbnRyb2xOYW1lPVwiYnVzaW5lc3NUeXBlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJDT0NPXCI+Q09DTzwvb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiQ09GT1wiPkNPRk88L29wdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIkZPRk9cIj5GT0ZPPC9vcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJGT0NPXCI+Rk9DTzwvb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIGNvbC1sZy02IG1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwic3RvcmVUeXBlXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+U3RvcmUgVHlwZTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlbGVjdCBjbGFzcz1cImZvcm0tc2VsZWN0XCIgaWQ9XCJzdG9yZVR5cGVcIiBmb3JtQ29udHJvbE5hbWU9XCJzdG9yZVR5cGVfdHlwZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiSGlnaCBTdHJlZXRcIj5IaWdoIFN0cmVldDwvb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiTWFsbCBTdG9yZVwiPk1hbGwgU3RvcmU8L29wdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIktpb3NrXCI+S2lvc2s8L29wdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlbGVjdD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBtYi01XCIgKm5nSWY9XCJzdG9yZUZvcm0uZ2V0KCdzdG9yZVR5cGVfdHlwZScpPy52YWx1ZSA9PT0gJ01hbGwgU3RvcmUnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cIm1hbGxOYW1lXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+RW50ZXIgTWFsbCBOYW1lPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGlkPVwibWFsbE5hbWVcIiBmb3JtQ29udHJvbE5hbWU9XCJzdG9yZVR5cGVfbmFtZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLWludmFsaWQnOnN0b3JlRm9ybS5nZXQoJ3N0b3JlVHlwZV9uYW1lJyk/LmludmFsaWQgJiYgc3RvcmVGb3JtLmdldCgnc3RvcmVUeXBlX25hbWUnKT8udG91Y2hlZH1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c21hbGwgY2xhc3M9XCJpbnZhbGlkLWZlZWRiYWNrXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJzdG9yZUZvcm0uZ2V0KCdzdG9yZVR5cGVfbmFtZScpPy50b3VjaGVkICYmIHN0b3JlRm9ybS5nZXQoJ3N0b3JlVHlwZV9uYW1lJyk/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1hbGwgTmFtZSBpcyByZXF1aXJlZC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NtYWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIG1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiYWRkcmVzc1wiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPkFkZHJlc3MgTGluZTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBpZD1cImFkZHJlc3NcIiBmb3JtQ29udHJvbE5hbWU9XCJhZGRyZXNzXCIgI3BsYWNlc1JlZj1cIm5neC1wbGFjZXNcIiBuZ3gtZ3AtYXV0b2NvbXBsZXRlIChvbkFkZHJlc3NDaGFuZ2UpPVwiaGFuZGxlQWRkcmVzc0NoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnaXMtaW52YWxpZCc6c3RvcmVGb3JtLmdldCgnYWRkcmVzcycpPy5pbnZhbGlkICYmIHN0b3JlRm9ybS5nZXQoJ2FkZHJlc3MnKT8udG91Y2hlZH1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c21hbGwgY2xhc3M9XCJpbnZhbGlkLWZlZWRiYWNrXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJzdG9yZUZvcm0uZ2V0KCdhZGRyZXNzJyk/LnRvdWNoZWQgJiYgc3RvcmVGb3JtLmdldCgnYWRkcmVzcycpPy5oYXNFcnJvcigncmVxdWlyZWQnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIGlzIHJlcXVpcmVkLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc21hbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNiBtYi01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImNvdW50cnlcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj5Db3VudHJ5PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGlkPVwiY291bnRyeVwiIGZvcm1Db250cm9sTmFtZT1cImNvdW50cnlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdpcy1pbnZhbGlkJzpzdG9yZUZvcm0uZ2V0KCdjb3VudHJ5Jyk/LmludmFsaWQgJiYgc3RvcmVGb3JtLmdldCgnY291bnRyeScpPy50b3VjaGVkfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzbWFsbCBjbGFzcz1cImludmFsaWQtZmVlZGJhY2tcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInN0b3JlRm9ybS5nZXQoJ2NvdW50cnknKT8udG91Y2hlZCAmJiBzdG9yZUZvcm0uZ2V0KCdjb3VudHJ5Jyk/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvdW50cnkgaXMgcmVxdWlyZWQuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zbWFsbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02IG1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwic3RhdGVcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj5TdGF0ZTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGF1dG9jb21wbGV0ZT1cIm9mZlwiIHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBpZD1cInN0YXRlXCIgZm9ybUNvbnRyb2xOYW1lPVwic3RhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdpcy1pbnZhbGlkJzpzdG9yZUZvcm0uZ2V0KCdzdGF0ZScpPy5pbnZhbGlkICYmIHN0b3JlRm9ybS5nZXQoJ3N0YXRlJyk/LnRvdWNoZWR9XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsIGNsYXNzPVwiaW52YWxpZC1mZWVkYmFja1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwic3RvcmVGb3JtLmdldCgnc3RhdGUnKT8udG91Y2hlZCAmJiBzdG9yZUZvcm0uZ2V0KCdzdGF0ZScpPy5oYXNFcnJvcigncmVxdWlyZWQnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdGF0ZSBpcyByZXF1aXJlZC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NtYWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgbWItNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJjaXR5XCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+Q2l0eSAvIFRvd248L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBhdXRvY29tcGxldGU9XCJvZmZcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgaWQ9XCJjaXR5XCIgZm9ybUNvbnRyb2xOYW1lPVwiY2l0eVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLWludmFsaWQnOnN0b3JlRm9ybS5nZXQoJ2NpdHknKT8uaW52YWxpZCAmJiBzdG9yZUZvcm0uZ2V0KCdjaXR5Jyk/LnRvdWNoZWR9XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsIGNsYXNzPVwiaW52YWxpZC1mZWVkYmFja1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwic3RvcmVGb3JtLmdldCgnY2l0eScpPy50b3VjaGVkICYmIHN0b3JlRm9ybS5nZXQoJ2NpdHknKT8uaGFzRXJyb3IoJ3JlcXVpcmVkJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2l0eSBpcyByZXF1aXJlZC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NtYWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgbWItNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwaW5jb2RlXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+UGluIC8gWmlwIENvZGU8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBhdXRvY29tcGxldGU9XCJvZmZcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgaWQ9XCJwaW5jb2RlXCIgZm9ybUNvbnRyb2xOYW1lPVwicGluY29kZVwiIG1heGxlbmd0aD1cIjZcIiBtaW5sZW5ndGg9XCI2XCIgKGtleXByZXNzKT1cIm9taXRfc3BlY2lhbF9jaGFyKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdpcy1pbnZhbGlkJzpzdG9yZUZvcm0uZ2V0KCdwaW5jb2RlJyk/LmludmFsaWQgJiYgc3RvcmVGb3JtLmdldCgncGluY29kZScpPy50b3VjaGVkfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzbWFsbCBjbGFzcz1cImludmFsaWQtZmVlZGJhY2tcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInN0b3JlRm9ybS5nZXQoJ3BpbmNvZGUnKT8udG91Y2hlZCAmJiBzdG9yZUZvcm0uZ2V0KCdwaW5jb2RlJyk/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBpbmNvZGUgaXMgcmVxdWlyZWQuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zbWFsbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiB0ZXh0LWVuZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IG14LTMgYnRuLW91dGxpbmUgYnRuLW91dGxpbmUtZGVmYXVsdCByb3VuZGVkLTNcIiAoY2xpY2spPVwibmF2aWdhdGVUb0FkZFN0b3JlKClcIj5DYW5jZWw8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJnb1RvQ29uZmlndXJhdGlvbigpXCI+TmV4dDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gU3RvcmUgSW5mbyBFbmQgLS0+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gU3RvcmUgQ29uZmlndXJhdGlvbiBTdGFydCAtLT5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IFtoaWRkZW5dPVwic2VsZWN0ICE9PSAnY29uZmlnJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgbWItNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJ0aW1lWm9uZVwiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPlRpbWUgWm9uZTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGlkPVwidGltZVpvbmVcIiBmb3JtQ29udHJvbE5hbWU9XCJ0aW1lWm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLWludmFsaWQnOnN0b3JlRm9ybS5nZXQoJ3RpbWVab25lJyk/LmludmFsaWQgJiYgc3RvcmVGb3JtLmdldCgndGltZVpvbmUnKT8udG91Y2hlZH1cIj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWxlY3QgY2xhc3M9XCJmb3JtLXNlbGVjdFwiIGlkPVwidGltZVpvbmVcIiBmb3JtQ29udHJvbE5hbWU9XCJ0aW1lWm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiAqbmdGb3I9XCJsZXQgdGltZXpvbmUgb2YgdGltZXpvbmVzXCIgW3ZhbHVlXT1cInRpbWV6b25lXCI+e3sgdGltZXpvbmUgfX08L29wdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWxlY3Q+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsIGNsYXNzPVwiaW52YWxpZC1mZWVkYmFja1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwic3RvcmVGb3JtLmdldCgndGltZVpvbmUnKT8udG91Y2hlZCAmJiBzdG9yZUZvcm0uZ2V0KCd0aW1lWm9uZScpPy5oYXNFcnJvcigncmVxdWlyZWQnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUaW1lIFpvbmUgaXMgcmVxdWlyZWQuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zbWFsbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgbWItNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJub09mQ2FtZXJhc1wiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPk5vIG9mIENhbWVyYXM8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBhdXRvY29tcGxldGU9XCJvZmZcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgaWQ9XCJub09mQ2FtZXJhc1wiIGZvcm1Db250cm9sTmFtZT1cImNhbWVyYXNcIiAoa2V5cHJlc3MpPVwib21pdF9zcGVjaWFsX2NoYXIoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLWludmFsaWQnOnN0b3JlRm9ybS5nZXQoJ2NhbWVyYXMnKT8uaW52YWxpZCAmJiBzdG9yZUZvcm0uZ2V0KCdjYW1lcmFzJyk/LnRvdWNoZWR9XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsIGNsYXNzPVwiaW52YWxpZC1mZWVkYmFja1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwic3RvcmVGb3JtLmdldCgnY2FtZXJhcycpPy50b3VjaGVkICYmIHN0b3JlRm9ybS5nZXQoJ2NhbWVyYXMnKT8uaGFzRXJyb3IoJ3JlcXVpcmVkJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTm8gb2YgQ2FtZXJhcyBpcyByZXF1aXJlZC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NtYWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02IG1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwic3RvcmVPcGVuVGltZVwiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPlN0b3JlIE9wZW4gVGltZTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGF1dG9jb21wbGV0ZT1cIm9mZlwiIHR5cGU9XCJ0aW1lXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBpZD1cInN0b3JlT3BlblRpbWVcIiBmb3JtQ29udHJvbE5hbWU9XCJvcGVuXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnaXMtaW52YWxpZCc6c3RvcmVGb3JtLmdldCgnb3BlbicpPy5pbnZhbGlkICYmIHN0b3JlRm9ybS5nZXQoJ29wZW4nKT8udG91Y2hlZH1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c21hbGwgY2xhc3M9XCJpbnZhbGlkLWZlZWRiYWNrXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJzdG9yZUZvcm0uZ2V0KCdvcGVuJyk/LnRvdWNoZWQgJiYgc3RvcmVGb3JtLmdldCgnb3BlbicpPy5oYXNFcnJvcigncmVxdWlyZWQnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSBPcGVuIFRpbWUgaXMgcmVxdWlyZWQuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zbWFsbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02IG1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwic3RvcmVDbG9zZVRpbWVcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj5TdG9yZSBDbG9zZSBUaW1lPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgdHlwZT1cInRpbWVcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGlkPVwic3RvcmVDbG9zZVRpbWVcIiBmb3JtQ29udHJvbE5hbWU9XCJjbG9zZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLWludmFsaWQnOnN0b3JlRm9ybS5nZXQoJ2Nsb3NlJyk/LmludmFsaWQgJiYgc3RvcmVGb3JtLmdldCgnY2xvc2UnKT8udG91Y2hlZCB8fCBzdG9yZUZvcm0uaGFzRXJyb3IoJ2ludmFsaWRUaW1lUmFuZ2UnKX1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c21hbGwgY2xhc3M9XCJpbnZhbGlkLWZlZWRiYWNrXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJzdG9yZUZvcm0uZ2V0KCdjbG9zZScpPy50b3VjaGVkICYmIHN0b3JlRm9ybS5nZXQoJ2Nsb3NlJyk/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIENsb3NlIFRpbWUgaXMgcmVxdWlyZWQuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zbWFsbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c21hbGwgY2xhc3M9XCJteS0yXCIgKm5nSWY9XCJzdG9yZUZvcm0uaGFzRXJyb3IoJ2ludmFsaWRUaW1lUmFuZ2UnKSAmJiAoc3RvcmVGb3JtLmdldCgnb3BlbicpPy50b3VjaGVkIHx8IHN0b3JlRm9ybS5nZXQoJ2Nsb3NlJyk/LnRvdWNoZWQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9wZW5pbmcgdGltZSBtdXN0IGJlIGJlZm9yZSBjbG9zaW5nIHRpbWUuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zbWFsbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBtdC0yMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiB0ZXh0LWVuZCBtdC0xNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IG14LTMgYnRuLW91dGxpbmUgYnRuLW91dGxpbmUtZGVmYXVsdCByb3VuZGVkLTNcIiAoY2xpY2spPVwibmF2aWdhdGVUb0FkZFN0b3JlKClcIj5DYW5jZWw8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiIChjbGljayk9XCJnb1RvQ29udGFjdCgpXCI+TmV4dDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gU3RvcmUgQ29uZmlndXJhdGlvbiBFbmQgLS0+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gU3RvcmUgQ29udGFjdCBTdGFydCAtLT5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IFtoaWRkZW5dPVwic2VsZWN0ICE9PSAnY29udGFjdCdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBmb3JtQXJyYXlOYW1lPVwic3BvY0RldGFpbHNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBzcG9jRGV0YWlsIG9mIGdldHNwb2NEZXRhaWxzQ29udHJvbHMoKTsgbGV0IGkgPSBpbmRleFwiIFtmb3JtR3JvdXBOYW1lXT1cImlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImkhPT0wXCIgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyIG15LTZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZnctYm9sZCBmcy00XCI+QWx0ZXJuYXRlIFNQT0Mge3tpfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKGNsaWNrKT1cImRlbEFsdFNwb2MoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiNDBcIiBoZWlnaHQ9XCI0MFwiIHZpZXdCb3g9XCIwIDAgNDAgNDBcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGZpbHRlcj1cInVybCgjZmlsdGVyMF9kXzIyNTBfMzA2NTApXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3QgeD1cIjJcIiB5PVwiMVwiIHdpZHRoPVwiMzZcIiBoZWlnaHQ9XCIzNlwiIHJ4PVwiOFwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3QgeD1cIjIuNVwiIHk9XCIxLjVcIiB3aWR0aD1cIjM1XCIgaGVpZ2h0PVwiMzVcIiByeD1cIjcuNVwiIHN0cm9rZT1cIiNEMEQ1RERcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTIuNSAxMy45OTk4SDE0LjE2NjdNMTQuMTY2NyAxMy45OTk4SDI3LjVNMTQuMTY2NyAxMy45OTk4VjI1LjY2NjVDMTQuMTY2NyAyNi4xMDg1IDE0LjM0MjMgMjYuNTMyNSAxNC42NTQ4IDI2Ljg0NUMxNC45Njc0IDI3LjE1NzYgMTUuMzkxMyAyNy4zMzMyIDE1LjgzMzMgMjcuMzMzMkgyNC4xNjY3QzI0LjYwODcgMjcuMzMzMiAyNS4wMzI2IDI3LjE1NzYgMjUuMzQ1MiAyNi44NDVDMjUuNjU3NyAyNi41MzI1IDI1LjgzMzMgMjYuMTA4NSAyNS44MzMzIDI1LjY2NjVWMTMuOTk5OEgxNC4xNjY3Wk0xNi42NjY3IDEzLjk5OThWMTIuMzMzMkMxNi42NjY3IDExLjg5MTEgMTYuODQyMyAxMS40NjcyIDE3LjE1NDggMTEuMTU0N0MxNy40Njc0IDEwLjg0MjEgMTcuODkxMyAxMC42NjY1IDE4LjMzMzMgMTAuNjY2NUgyMS42NjY3QzIyLjEwODcgMTAuNjY2NSAyMi41MzI2IDEwLjg0MjEgMjIuODQ1MiAxMS4xNTQ3QzIzLjE1NzcgMTEuNDY3MiAyMy4zMzMzIDExLjg5MTEgMjMuMzMzMyAxMi4zMzMyVjEzLjk5OThNMTguMzMzMyAxOC4xNjY1VjIzLjE2NjVNMjEuNjY2NyAxOC4xNjY1VjIzLjE2NjVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlsdGVyIGlkPVwiZmlsdGVyMF9kXzIyNTBfMzA2NTBcIiB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCI0MFwiIGhlaWdodD1cIjQwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz1cInNSR0JcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlRmxvb2QgZmxvb2Qtb3BhY2l0eT1cIjBcIiByZXN1bHQ9XCJCYWNrZ3JvdW5kSW1hZ2VGaXhcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCBpbj1cIlNvdXJjZUFscGhhXCIgdHlwZT1cIm1hdHJpeFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM9XCIwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAxMjcgMFwiIHJlc3VsdD1cImhhcmRBbHBoYVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZU9mZnNldCBkeT1cIjFcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPVwiMVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUNvbG9yTWF0cml4IHR5cGU9XCJtYXRyaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPVwiMCAwIDAgMCAwLjA2Mjc0NTEgMCAwIDAgMCAwLjA5NDExNzYgMCAwIDAgMCAwLjE1Njg2MyAwIDAgMCAwLjA1IDBcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVCbGVuZCBtb2RlPVwibm9ybWFsXCIgaW4yPVwiQmFja2dyb3VuZEltYWdlRml4XCIgcmVzdWx0PVwiZWZmZWN0MV9kcm9wU2hhZG93XzIyNTBfMzA2NTBcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVCbGVuZCBtb2RlPVwibm9ybWFsXCIgaW49XCJTb3VyY2VHcmFwaGljXCIgaW4yPVwiZWZmZWN0MV9kcm9wU2hhZG93XzIyNTBfMzA2NTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0PVwic2hhcGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlsdGVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNiBtYi01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiY29udGFjdE5hbWVcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj5OYW1lPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBhdXRvY29tcGxldGU9XCJvZmZcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgaWQ9XCJjb250YWN0TmFtZVwiIGZvcm1Db250cm9sTmFtZT1cIm5hbWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLWludmFsaWQnOnNwb2NEZXRhaWwuZ2V0KCduYW1lJyk/LmludmFsaWQgJiYgc3BvY0RldGFpbC5nZXQoJ25hbWUnKT8udG91Y2hlZH1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzbWFsbCBjbGFzcz1cImludmFsaWQtZmVlZGJhY2tcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwic3BvY0RldGFpbC5nZXQoJ25hbWUnKT8udG91Y2hlZCAmJiBzcG9jRGV0YWlsLmdldCgnbmFtZScpPy5oYXNFcnJvcigncmVxdWlyZWQnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgaXMgcmVxdWlyZWQuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NtYWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02IG1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJjb250YWN0RW1haWxcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj5FbWFpbDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgdHlwZT1cImVtYWlsXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBpZD1cImNvbnRhY3RFbWFpbFwiIGZvcm1Db250cm9sTmFtZT1cImVtYWlsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXR0ZXJuPVwiXihbYS16QS1aMC05X1xcLVxcLl0rKUBbYS16MC05LV0rKFxcLlthLXowLTktXSspKihcXC5bYS16QS1aXXsyLDN9KSRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLWludmFsaWQnOnNwb2NEZXRhaWwuZ2V0KCdlbWFpbCcpPy5pbnZhbGlkICYmIHNwb2NEZXRhaWwuZ2V0KCdlbWFpbCcpPy50b3VjaGVkfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNwb2NEZXRhaWwuZ2V0KCdlbWFpbCcpPy50b3VjaGVkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsIGNsYXNzPVwiaW52YWxpZC1mZWVkYmFja1wiICpuZ0lmPVwic3BvY0RldGFpbC5nZXQoJ2VtYWlsJyk/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVtYWlsIGlzIHJlcXVpcmVkLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc21hbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsIGNsYXNzPVwiaW52YWxpZC1mZWVkYmFja1wiICpuZ0lmPVwic3BvY0RldGFpbC5nZXQoJ2VtYWlsJyk/Lmhhc0Vycm9yKCdtaW5sZW5ndGgnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbWFpbCBtdXN0IGJlIGF0IGxlYXN0IDMgY2hhcmFjdGVycyBsb25nLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc21hbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsIGNsYXNzPVwiaW52YWxpZC1mZWVkYmFja1wiICpuZ0lmPVwic3BvY0RldGFpbC5nZXQoJ2VtYWlsJyk/Lmhhc0Vycm9yKCdtYXhsZW5ndGgnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbWFpbCBtdXN0IGJlIG5vdCBtb3JlIHRoYW4gMTAwIGNoYXJhY3RlcnMgbG9uZy5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NtYWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgbWItNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImNvbnRhY3ROdW1iZXJcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj5Db250YWN0IE51bWJlcjwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGlkPVwiY29udGFjdE51bWJlclwiIG1pbmxlbmd0aD1cIjEwXCIgbWF4bGVuZ3RoPVwiMTNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChrZXlwcmVzcyk9XCJvbWl0X3NwZWNpYWxfY2hhcigkZXZlbnQpXCIgZm9ybUNvbnRyb2xOYW1lPVwiY29udGFjdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnaXMtaW52YWxpZCc6c3BvY0RldGFpbC5nZXQoJ2NvbnRhY3QnKT8uaW52YWxpZCAmJiBzcG9jRGV0YWlsLmdldCgnY29udGFjdCcpPy50b3VjaGVkfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNwb2NEZXRhaWwuZ2V0KCdjb250YWN0Jyk/LnRvdWNoZWRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c21hbGwgY2xhc3M9XCJpbnZhbGlkLWZlZWRiYWNrXCIgKm5nSWY9XCJzcG9jRGV0YWlsLmdldCgnY29udGFjdCcpPy5oYXNFcnJvcigncmVxdWlyZWQnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb250YWN0IGlzIHJlcXVpcmVkLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc21hbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsIGNsYXNzPVwiaW52YWxpZC1mZWVkYmFja1wiICpuZ0lmPVwic3BvY0RldGFpbC5nZXQoJ2NvbnRhY3QnKT8uaGFzRXJyb3IoJ21pbmxlbmd0aCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbnRhY3QgbXVzdCBiZSBhdCBsZWFzdCAxMCBkaWdpdHMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zbWFsbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c21hbGwgY2xhc3M9XCJpbnZhbGlkLWZlZWRiYWNrXCIgKm5nSWY9XCJzcG9jRGV0YWlsLmdldCgnY29udGFjdCcpPy5oYXNFcnJvcignbWF4bGVuZ3RoJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29udGFjdCBtdXN0IGJlIG5vdCBtb3JlIHRoYW4gMTMgZGlnaXRzLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc21hbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNiBtYi01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiZGVzaWduYXRpb25cIiBjbGFzcz1cImZvcm0tbGFiZWxcIj5EZXNpZ25hdGlvbiAob3B0aW9uYWwpPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBhdXRvY29tcGxldGU9XCJvZmZcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgaWQ9XCJkZXNpZ25hdGlvblwiIGZvcm1Db250cm9sTmFtZT1cImRlc2lnbmF0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIG1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDEgY2xhc3M9XCJzdWItaGVhZFwiPkVudGVyIFN0b3JlIENvbm5lY3Rpb24gRGV0YWlsczwvaDE+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgbWItNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJhbnlEZXNrSURcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj5BbnlEZXNrIElEIC8gVGVhbVZpZXdlciBJRCAob3B0aW9uYWwpPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGlkPVwiYW55RGVza0lEXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwic3RvcmVDb25uZWN0aW9uSWRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiB0ZXh0LWVuZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IG14LTMgYnRuLW91dGxpbmUgYnRuLW91dGxpbmUtZGVmYXVsdCByb3VuZGVkLTNcIiAoY2xpY2spPVwibmF2aWdhdGVUb0FkZFN0b3JlKClcIj5DYW5jZWw8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiIChjbGljayk9XCJnb1RvUmV2aWV3KClcIj5OZXh0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSBTdG9yZSBDb250YWN0IEVuZCAtLT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSBSZXZpZXcgJiBTdWJtaXQgU3RhcnQgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBbaGlkZGVuXT1cInNlbGVjdCAhPT0gJ3JldmlldydcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZzLTQgZnctYm9sZCB0ZXh0LWhvdmVyLXByaW1hcnkgc3ViLXRpdGxlIHRleHQtZ3JheS02MDAgbS0wIGN1cnNvci1wb2ludGVyXCI+U3RvcmVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEluZm9cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgcC05XCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBtYi03XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiY29sLWxnLTMgZnctYm9sZCB0ZXh0LW11dGVkLXJldmlld1wiPlN0b3JlIE5hbWU8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctOVwiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZ3LWJvbGRlciBmcy02IHRleHQtcmV2aWV3LXZhbFwiPnt7c3RvcmVGb3JtLmdldCgnc3RvcmVOYW1lJyk/LnZhbHVlID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JlRm9ybS5nZXQoJ3N0b3JlTmFtZScpPy52YWx1ZSA6ICdOQSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBtYi03XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiY29sLWxnLTMgZnctYm9sZCB0ZXh0LW11dGVkLXJldmlld1wiPlN0b3JlIENvZGU8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctOSBmdi1yb3dcIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmdy1ib2xkIGZzLTYgdGV4dC1yZXZpZXctdmFsXCI+e3tzdG9yZUZvcm0uZ2V0KCdzdG9yZUNvZGUnKT8udmFsdWUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmVGb3JtLmdldCgnc3RvcmVDb2RlJyk/LnZhbHVlOiAnTkEnfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbWItN1wiPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IG1iLTdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJjb2wtbGctMyBmdy1ib2xkIHRleHQtbXV0ZWQtcmV2aWV3XCI+QnVzaW5lc3MgVHlwZTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy05XCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZnctYm9sZCBmcy02IHRleHQtcmV2aWV3LXZhbCB0ZXh0LWhvdmVyLXByaW1hcnlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7c3RvcmVGb3JtLmdldCgnYnVzaW5lc3NUeXBlJyk/LnZhbHVlID8gc3RvcmVGb3JtLmdldCgnYnVzaW5lc3NUeXBlJyk/LnZhbHVlIDpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdOQSd9fSA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJjb2wtbGctMyBmdy1ib2xkIHRleHQtbXV0ZWQtcmV2aWV3XCI+U3RvcmUgVHlwZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxpIGRhdGEtYnMtdG9nZ2xlPVwidG9vbHRpcFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT1cIlBob25lIG51bWJlciBtdXN0IGJlIGFjdGl2ZVwiIGNsYXNzPVwiZmFzIGZhLWV4Y2xhbWF0aW9uLWNpcmNsZSBtcy0xIGZzLTdcIj48L2k+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy05IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZnctYm9sZGVyIGZzLTYgbWUtMiB0ZXh0LXJldmlldy12YWxcIj57e3N0b3JlRm9ybS5nZXQoJ3N0b3JlVHlwZV90eXBlJyk/LnZhbHVlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IHN0b3JlRm9ybS5nZXQoJ3N0b3JlVHlwZV90eXBlJyk/LnZhbHVlIDogJ05BJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxzcGFuIGNsYXNzPVwiYmFkZ2UgYmFkZ2Utc3VjY2Vzc1wiPlZlcmlmaWVkPC9zcGFuPiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBtYi03XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInN0b3JlRm9ybS5nZXQoJ3N0b3JlVHlwZV90eXBlJyk/LnZhbHVlICYmIHN0b3JlRm9ybS5nZXQoJ3N0b3JlVHlwZV90eXBlJyk/LnZhbHVlID09PSAnTWFsbCBTdG9yZSdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJjb2wtbGctMyBmdy1ib2xkIHRleHQtbXV0ZWQtcmV2aWV3XCI+IE1hbGwgTmFtZTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy05XCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZnctYm9sZGVyIGZzLTYgdGV4dC1yZXZpZXctdmFsXCI+e3tzdG9yZUZvcm0uZ2V0KCdzdG9yZVR5cGVfbmFtZScpPy52YWx1ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBzdG9yZUZvcm0uZ2V0KCdzdG9yZVR5cGVfbmFtZScpPy52YWx1ZSA6ICdOQSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBtYi03XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiY29sLWxnLTMgZnctYm9sZCB0ZXh0LW11dGVkLXJldmlld1wiPkFkZHJlc3M8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctOVwiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZ3LWJvbGRlciBmcy02IHRleHQtcmV2aWV3LXZhbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0b3JlRm9ybS5nZXQoJ2FkZHJlc3MnKT8udmFsdWUgJiZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yZUZvcm0uZ2V0KCdjaXR5Jyk/LnZhbHVlICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmVGb3JtLmdldCgnc3RhdGUnKT8udmFsdWUgJiZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yZUZvcm0uZ2V0KCdjb3VudHJ5Jyk/LnZhbHVlICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmVGb3JtLmdldCgncGluY29kZScpPy52YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7c3RvcmVGb3JtLmdldCgnYWRkcmVzcycpPy52YWx1ZSA/IHN0b3JlRm9ybS5nZXQoJ2FkZHJlc3MnKT8udmFsdWUgOiAnJ319LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7c3RvcmVGb3JtLmdldCgnY2l0eScpPy52YWx1ZSA/IHN0b3JlRm9ybS5nZXQoJ2NpdHknKT8udmFsdWUgOiAnJ319LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7c3RvcmVGb3JtLmdldCgnc3RhdGUnKT8udmFsdWUgPyBzdG9yZUZvcm0uZ2V0KCdzdGF0ZScpPy52YWx1ZSA6ICcnfX0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tzdG9yZUZvcm0uZ2V0KCdjb3VudHJ5Jyk/LnZhbHVlID8gc3RvcmVGb3JtLmdldCgnY291bnRyeScpPy52YWx1ZSA6ICcnfX0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tzdG9yZUZvcm0uZ2V0KCdwaW5jb2RlJyk/LnZhbHVlID8gc3RvcmVGb3JtLmdldCgncGluY29kZScpPy52YWx1ZSA6ICcnfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFzdG9yZUZvcm0uZ2V0KCdhZGRyZXNzJyk/LnZhbHVlIHx8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIXN0b3JlRm9ybS5nZXQoJ2NpdHknKT8udmFsdWUgfHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhc3RvcmVGb3JtLmdldCgnc3RhdGUnKT8udmFsdWUgfHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhc3RvcmVGb3JtLmdldCgnY291bnRyeScpPy52YWx1ZSB8fFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICFzdG9yZUZvcm0uZ2V0KCdwaW5jb2RlJyk/LnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTkFcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cInJvdyBtYi0xMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImNvbC1sZy0zIGZ3LWJvbGQgdGV4dC1tdXRlZC1yZXZpZXdcIj5BbGxvdyBDaGFuZ2VzPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTlcIj48c3BhbiBjbGFzcz1cImZ3LWJvbGQgZnMtNlwiPlllczwvc3Bhbj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAtLT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZnMtNCBmdy1ib2xkIHRleHQtaG92ZXItcHJpbWFyeSBzdWItdGl0bGUgdGV4dC1ncmF5LTYwMCBtLTAgY3Vyc29yLXBvaW50ZXJcIj5TdG9yZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJhdGlvbjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHAtOVwiPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbWItN1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImNvbC1sZy0zIGZ3LWJvbGQgdGV4dC1tdXRlZC1yZXZpZXdcIj5UaW1lIFpvbmU8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctOVwiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZ3LWJvbGRlciBmcy02IHRleHQtcmV2aWV3LXZhbFwiPnt7c3RvcmVGb3JtLmdldCgndGltZVpvbmUnKT8udmFsdWUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmVGb3JtLmdldCgndGltZVpvbmUnKT8udmFsdWUgOiAnTkEnfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbWItN1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImNvbC1sZy0zIGZ3LWJvbGQgdGV4dC1tdXRlZC1yZXZpZXdcIj5ObyBvZiBDYW1lcmFzPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTkgZnYtcm93XCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZnctYm9sZCBmcy02IHRleHQtcmV2aWV3LXZhbFwiPnt7c3RvcmVGb3JtLmdldCgnY2FtZXJhcycpPy52YWx1ZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yZUZvcm0uZ2V0KCdjYW1lcmFzJyk/LnZhbHVlIDogJ05BJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IG1iLTdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJjb2wtbGctMyBmdy1ib2xkIHRleHQtbXV0ZWQtcmV2aWV3XCI+U3RvcmUgT3BlbiBUaW1lPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTlcIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmdy1ib2xkIGZzLTYgdGV4dC1yZXZpZXctdmFsIHRleHQtaG92ZXItcHJpbWFyeVwiPnt7c3RvcmVGb3JtLmdldCgnb3BlbicpPy52YWx1ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBzdG9yZUZvcm0uZ2V0KCdvcGVuJyk/LnZhbHVlIDogJ05BJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBtYi03XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiY29sLWxnLTMgZnctYm9sZCB0ZXh0LW11dGVkLXJldmlld1wiPlN0b3JlIENsb3NlIFRpbWU8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctOVwiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZ3LWJvbGRlciBmcy02IHRleHQtcmV2aWV3LXZhbFwiPnt7c3RvcmVGb3JtLmdldCgnY2xvc2UnKT8udmFsdWUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmVGb3JtLmdldCgnY2xvc2UnKT8udmFsdWUgOiAnTkEnfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZnMtNCBmdy1ib2xkIHRleHQtaG92ZXItcHJpbWFyeSBzdWItdGl0bGUgdGV4dC1ncmF5LTYwMCBtLTAgY3Vyc29yLXBvaW50ZXJcIj5Db250YWN0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZXRhaWxzPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgcm93IHB4LTkgcHQtMyBwYi00XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtcmVzcG9uc2l2ZSBjb2wtbWQtMTIgY29sLWxnLTEyIGNvbC14bC05IGNvbC14eGwtOFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlIGFsaWduLW1pZGRsZSBneS02XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0Ym9keSBjbGFzcz1cImZzLTYgZnctYm9sZFwiPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgZm9ybUFycmF5TmFtZT1cInNwb2NEZXRhaWxzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgc3BvYyBvZiBnZXRzcG9jRGV0YWlsc0NvbnRyb2xzKCk7bGV0IGk9aW5kZXg7XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5TcG9jIHt7aSsxfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMThcIiBoZWlnaHQ9XCIxOFwiIHZpZXdCb3g9XCIwIDAgMTggMThcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xNSAxNS43NVYxNC4yNUMxNSAxMy40NTQ0IDE0LjY4MzkgMTIuNjkxMyAxNC4xMjEzIDEyLjEyODdDMTMuNTU4NyAxMS41NjYxIDEyLjc5NTYgMTEuMjUgMTIgMTEuMjVINkM1LjIwNDM1IDExLjI1IDQuNDQxMjkgMTEuNTY2MSAzLjg3ODY4IDEyLjEyODdDMy4zMTYwNyAxMi42OTEzIDMgMTMuNDU0NCAzIDE0LjI1VjE1Ljc1TTEyIDUuMjVDMTIgNi45MDY4NSAxMC42NTY5IDguMjUgOSA4LjI1QzcuMzQzMTUgOC4yNSA2IDYuOTA2ODUgNiA1LjI1QzYgMy41OTMxNSA3LjM0MzE1IDIuMjUgOSAyLjI1QzEwLjY1NjkgMi4yNSAxMiAzLjU5MzE1IDEyIDUuMjVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48c3BhbiBjbGFzcz1cIm1zLTJcIj57e2dldHNwb2NEZXRhaWxzVmFsdWVzKGkpPy5uYW1lID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0c3BvY0RldGFpbHNWYWx1ZXMoaSk/Lm5hbWUgOiAnTkEnIH19PC9zcGFuPjwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgdmlld0JveD1cIjAgMCAxOCAxOFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMV84MDM3MylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMiA2LjAwMDAyVjkuNzUwMDJDMTIgMTAuMzQ2OCAxMi4yMzcxIDEwLjkxOTEgMTIuNjU5IDExLjM0MUMxMy4wODEgMTEuNzYzIDEzLjY1MzMgMTIgMTQuMjUgMTJDMTQuODQ2NyAxMiAxNS40MTkgMTEuNzYzIDE1Ljg0MSAxMS4zNDFDMTYuMjYzIDEwLjkxOTEgMTYuNSAxMC4zNDY4IDE2LjUgOS43NTAwMlY5LjAwMDAyQzE2LjQ5OTkgNy4zMDcyOSAxNS45MjcyIDUuNjY0MzggMTQuODc1IDQuMzM4NDJDMTMuODIyNyAzLjAxMjQ2IDEyLjM1MjkgMi4wODE0NCAxMC43MDQ1IDEuNjk2NzVDOS4wNTYwNSAxLjMxMjA1IDcuMzI1OTYgMS40OTYzIDUuNzk1NTIgMi4yMTk1NUM0LjI2NTA4IDIuOTQyNzkgMy4wMjQzMSA0LjE2MjQ5IDIuMjc0OTUgNS42ODAzMkMxLjUyNTYgNy4xOTgxNCAxLjMxMTczIDguOTI0ODMgMS42NjgxMyAxMC41Nzk2QzIuMDI0NTMgMTIuMjM0NCAyLjkzMDI0IDEzLjcxOTkgNC4yMzc5OCAxNC43OTQ3QzUuNTQ1NzIgMTUuODY5NSA3LjE3ODU4IDE2LjQ3MDMgOC44NzEwNiAxNi40OTk0QzEwLjU2MzUgMTYuNTI4NSAxMi4yMTYxIDE1Ljk4NDIgMTMuNTYgMTQuOTU1TTEyIDkuMDAwMDJDMTIgMTAuNjU2OSAxMC42NTY5IDEyIDkuMDAwMDEgMTJDNy4zNDMxNSAxMiA2LjAwMDAxIDEwLjY1NjkgNi4wMDAwMSA5LjAwMDAyQzYuMDAwMDEgNy4zNDMxNyA3LjM0MzE1IDYuMDAwMDIgOS4wMDAwMSA2LjAwMDAyQzEwLjY1NjkgNi4wMDAwMiAxMiA3LjM0MzE3IDEyIDkuMDAwMDJaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8xXzgwMzczXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48c3BhbiBjbGFzcz1cIm1zLTJcIj57e2dldHNwb2NEZXRhaWxzVmFsdWVzKGkpPy5lbWFpbCA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldHNwb2NEZXRhaWxzVmFsdWVzKGkpPy5lbWFpbCA6ICdOQScgfX08L3NwYW4+PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE4XCIgaGVpZ2h0PVwiMThcIiB2aWV3Qm94PVwiMCAwIDE4IDE4XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8xXzgwMzc2KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTE2LjUwMDEgMTIuNjkwMVYxNC45NDAxQzE2LjUwMDkgMTUuMTQ4OSAxNi40NTgxIDE1LjM1NTcgMTYuMzc0NSAxNS41NDcxQzE2LjI5MDggMTUuNzM4NSAxNi4xNjggMTUuOTEwMyAxNi4wMTQxIDE2LjA1MTVDMTUuODYwMiAxNi4xOTI3IDE1LjY3ODUgMTYuMzAwMiAxNS40ODA2IDE2LjM2NzFDMTUuMjgyOCAxNi40MzQgMTUuMDczMSAxNi40NTg5IDE0Ljg2NTEgMTYuNDQwMUMxMi41NTcyIDE2LjE4OTMgMTAuMzQwMyAxNS40MDA3IDguMzkyNTcgMTQuMTM3NkM2LjU4MDQ0IDEyLjk4NjEgNS4wNDQwNyAxMS40NDk3IDMuODkyNTcgOS42Mzc1N0MyLjYyNTA2IDcuNjgwOTggMS44MzYyNSA1LjQ1MzMyIDEuNTkwMDcgMy4xMzUwN0MxLjU3MTMzIDIuOTI3NjcgMS41OTU5OCAyLjcxODY0IDEuNjYyNDUgMi41MjEyOUMxLjcyODkyIDIuMzIzOTQgMS44MzU3NSAyLjE0MjU5IDEuOTc2MTUgMS45ODg3OUMyLjExNjU0IDEuODM0OTkgMi4yODc0MyAxLjcxMjEgMi40Nzc5MiAxLjYyNzk2QzIuNjY4NCAxLjU0MzgyIDIuODc0MzMgMS41MDAyNyAzLjA4MjU3IDEuNTAwMDdINS4zMzI1N0M1LjY5NjU1IDEuNDk2NDkgNi4wNDk0MiAxLjYyNTM4IDYuMzI1MzkgMS44NjI3MkM2LjYwMTM3IDIuMTAwMDYgNi43ODE2MyAyLjQyOTY2IDYuODMyNTcgMi43OTAwN0M2LjkyNzU0IDMuNTEwMTIgNy4xMDM2NiA0LjIxNzEyIDcuMzU3NTcgNC44OTc1N0M3LjQ1ODQ4IDUuMTY2MDIgNy40ODAzMiA1LjQ1Nzc2IDcuNDIwNSA1LjczODIzQzcuMzYwNjkgNi4wMTg3MSA3LjIyMTcyIDYuMjc2MTYgNy4wMjAwNyA2LjQ4MDA3TDYuMDY3NTcgNy40MzI1N0M3LjEzNTI0IDkuMzEwMjMgOC42ODk5MSAxMC44NjQ5IDEwLjU2NzYgMTEuOTMyNkwxMS41MjAxIDEwLjk4MDFDMTEuNzI0IDEwLjc3ODQgMTEuOTgxNCAxMC42Mzk1IDEyLjI2MTkgMTAuNTc5NkMxMi41NDI0IDEwLjUxOTggMTIuODM0MSAxMC41NDE3IDEzLjEwMjYgMTAuNjQyNkMxMy43ODMgMTAuODk2NSAxNC40OSAxMS4wNzI2IDE1LjIxMDEgMTEuMTY3NkMxNS41NzQ0IDExLjIxOSAxNS45MDcxIDExLjQwMjUgMTYuMTQ1IDExLjY4MzJDMTYuMzgyOCAxMS45NjM5IDE2LjUwOTIgMTIuMzIyMyAxNi41MDAxIDEyLjY5MDFaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8xXzgwMzc2XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48c3BhbiBjbGFzcz1cIm1zLTJcIj57e2dldHNwb2NEZXRhaWxzVmFsdWVzKGkpPy5jb250YWN0ID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0c3BvY0RldGFpbHNWYWx1ZXMoaSk/LmNvbnRhY3QgOiAnTkEnIH19PC9zcGFuPjwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+QW55RGVzayBJRFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcy0yXCI+e3tzdG9yZUZvcm0uZ2V0KCdzdG9yZUNvbm5lY3Rpb25JZCcpPy52YWx1ZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yZUZvcm0uZ2V0KCdzdG9yZUNvbm5lY3Rpb25JZCcpPy52YWx1ZSA6ICdOQScgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtZW5kXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImdvVG9TdG9yZUluZm8oKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IG14LTMgYnRuLW91dGxpbmUgYnRuLW91dGxpbmUtZGVmYXVsdCByb3VuZGVkLTNcIj5FZGl0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgW2Rpc2FibGVkXT1cInN0b3JlRm9ybS5pbnZhbGlkXCIgKGNsaWNrKT1cIm9uU3VibWl0KClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiPlN1Ym1pdDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gUmV2aWV3ICYgU3VibWl0IEVuZCAtLT5cclxuICAgICAgICAgICAgICAgIDwvZm9ybT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
|
|
254
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXN0b3Jlcy1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLW1hbmFnZS1zdG9yZXMvc3JjL2xpYi9jb21wb25lbnRzL2FkZC1zdG9yZXMtZm9ybS9hZGQtc3RvcmVzLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGFuZ28tbWFuYWdlLXN0b3Jlcy9zcmMvbGliL2NvbXBvbmVudHMvYWRkLXN0b3Jlcy1mb3JtL2FkZC1zdG9yZXMtZm9ybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUVULFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQTBCLFVBQVUsRUFBZ0QsTUFBTSxnQkFBZ0IsQ0FBQztBQUlsSCxPQUFPLElBQUksTUFBTSxhQUFhLENBQUM7QUFFL0IsT0FBTyxLQUFLLE1BQU0sTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7OztBQVUxQyxNQUFNLE9BQU8sc0JBQXNCO0lBbUN2QjtJQUNBO0lBQ0E7SUFDQTtJQXJDYyxTQUFTLENBQTZCO0lBRTlELE1BQU0sR0FBRyxZQUFZLENBQUM7SUFDdEIsU0FBUyxDQUFZO0lBQ3JCLE9BQU8sQ0FBUztJQUNoQixTQUFTLENBQVE7SUFDakIsY0FBYyxDQUFNO0lBRWIsbUJBQW1CLENBQUMsS0FBMkM7UUFDcEUsSUFBSSxLQUFLLENBQUMsUUFBUSxFQUFFO1lBQ2xCLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQzNDLENBQUMsU0FBdUMsRUFBRSxFQUFFLENBQzFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUN0QyxFQUFFLFNBQVMsQ0FBQztZQUNiLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQ3hD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LENBQUM7UUFDTixDQUFDLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLGlEQUFpRDtRQUNyRSxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLFNBQVMsR0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ25DLENBQUM7dUdBOVFVLHNCQUFzQjsyRkFBdEIsc0JBQXNCLG1LQ3RCbkMsMnRxREFtakJNOzsyRkQ3aEJPLHNCQUFzQjtrQkFMbEMsU0FBUzsrQkFDRSxxQkFBcUI7aUtBS1AsU0FBUztzQkFBaEMsU0FBUzt1QkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgT25Jbml0LFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUFycmF5LCBWYWxpZGF0b3JzLCBGb3JtR3JvdXAsIEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycyB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBTdG9yZXNTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3N0b3Jlcy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcbmltcG9ydCB7IFN0b3JlUmVzcG9uc2UgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy9zdG9yZS5pbnRlcmZhY2VcIjtcclxuaW1wb3J0IFN3YWwgZnJvbSBcInN3ZWV0YWxlcnQyXCI7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0ICogYXMgbW9tZW50IGZyb20gJ21vbWVudC10aW1lem9uZSc7XHJcbmltcG9ydCB7IE5neEdwQXV0b2NvbXBsZXRlRGlyZWN0aXZlIH0gZnJvbSBcIkBhbmd1bGFyLW1hZ2ljL25neC1ncC1hdXRvY29tcGxldGUvbGliL25neC1ncC1hdXRvY29tcGxldGUuZGlyZWN0aXZlXCI7XHJcblxyXG5kZWNsYXJlIHZhciAkOiBhbnk7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJsaWItYWRkLXN0b3Jlcy1mb3JtXCIsXHJcbiAgdGVtcGxhdGVVcmw6IFwiLi9hZGQtc3RvcmVzLWZvcm0uY29tcG9uZW50Lmh0bWxcIixcclxuICBzdHlsZVVybDogXCIuL2FkZC1zdG9yZXMtZm9ybS5jb21wb25lbnQuc2Nzc1wiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRkU3RvcmVzRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQFZpZXdDaGlsZChcIm5neFBsYWNlc1wiKSBwbGFjZXNSZWY6IE5neEdwQXV0b2NvbXBsZXRlRGlyZWN0aXZlO1xyXG5cclxuICBzZWxlY3QgPSBcInN0b3JlX2luZm9cIjtcclxuICBzdG9yZUZvcm06IEZvcm1Hcm91cDtcclxuICBzdG9yZUlkOiBzdHJpbmc7XHJcbiAgdGltZXpvbmVzOiBhbnlbXTtcclxuICAkaGVhZGVyRmlsdGVyczogYW55O1xyXG5cclxuICBwdWJsaWMgaGFuZGxlQWRkcmVzc0NoYW5nZShwbGFjZTogZ29vZ2xlLm1hcHMucGxhY2VzLlBsYWNlUmVzdWx0IHwgYW55KSB7XHJcbiAgICBpZiAocGxhY2UuZ2VvbWV0cnkpIHtcclxuICAgICAgY29uc3QgY291bnRyeSA9IHBsYWNlLmFkZHJlc3NfY29tcG9uZW50cy5maW5kKFxyXG4gICAgICAgIChjb21wb25lbnQ6IHsgdHlwZXM6IHN0cmluZyB8IHN0cmluZ1tdIH0pID0+XHJcbiAgICAgICAgICBjb21wb25lbnQudHlwZXMuaW5jbHVkZXMoXCJjb3VudHJ5XCIpXHJcbiAgICAgICk/LmxvbmdfbmFtZTtcclxuICAgICAgY29uc3QgY2l0eSA9IHBsYWNlLmFkZHJlc3NfY29tcG9uZW50cy5maW5kKFxyXG4gICAgICAgIChjb21wb25lbnQ6IHsgdHlwZXM6IHN0cmluZyB8IHN0cmluZ1tdIH0pID0+XHJcbiAgICAgICAgICBjb21wb25lbnQudHlwZXMuaW5jbHVkZXMoXCJsb2NhbGl0eVwiKVxyXG4gICAgICApPy5sb25nX25hbWU7XHJcbiAgICAgIGNvbnN0IHN0YXRlID0gcGxhY2UuYWRkcmVzc19jb21wb25lbnRzLmZpbmQoXHJcbiAgICAgICAgKGNvbXBvbmVudDogeyB0eXBlczogc3RyaW5nIHwgc3RyaW5nW10gfSkgPT5cclxuICAgICAgICAgIGNvbXBvbmVudC50eXBlcy5pbmNsdWRlcyhcImFkbWluaXN0cmF0aXZlX2FyZWFfbGV2ZWxfMVwiKVxyXG4gICAgICApPy5sb25nX25hbWU7XHJcbiAgICAgIGNvbnN0IHBpbmNvZGUgPSBwbGFjZS5hZGRyZXNzX2NvbXBvbmVudHMuZmluZChcclxuICAgICAgICAoY29tcG9uZW50OiB7IHR5cGVzOiBzdHJpbmcgfCBzdHJpbmdbXSB9KSA9PlxyXG4gICAgICAgICAgY29tcG9uZW50LnR5cGVzLmluY2x1ZGVzKFwicG9zdGFsX2NvZGVcIilcclxuICAgICAgKT8ubG9uZ19uYW1lO1xyXG4gICAgICB0aGlzLnN0b3JlRm9ybS5nZXQoXCJjb3VudHJ5XCIpPy5zZXRWYWx1ZShjb3VudHJ5KTtcclxuICAgICAgdGhpcy5zdG9yZUZvcm0uZ2V0KFwiY2l0eVwiKT8uc2V0VmFsdWUoY2l0eSk7XHJcbiAgICAgIHRoaXMuc3RvcmVGb3JtLmdldChcInN0YXRlXCIpPy5zZXRWYWx1ZShzdGF0ZSk7XHJcbiAgICAgIHRoaXMuc3RvcmVGb3JtLmdldChcInBpbmNvZGVcIik/LnNldFZhbHVlKHBpbmNvZGUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGZiOiBGb3JtQnVpbGRlcixcclxuICAgIHByaXZhdGUgc3RvcmVzU2VydmljZTogU3RvcmVzU2VydmljZSxcclxuICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlclxyXG4gICkge1xyXG4gICAgbGV0IGRhdGE6YW55ID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnaGVhZGVyLWZpbHRlcnMnKSB8fCAnJyk7XHJcbiAgICB0aGlzLiRoZWFkZXJGaWx0ZXJzID0gZGF0YTtcclxuICAgIHRoaXMuZ2V0QWxsVGltZXpvbmVzKCk7XHJcbiAgICB0aGlzLmNyZWF0ZUZvcm0oKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge31cclxuXHJcbiAgc2V0dGluZ3ZhbHVlKGxhYmVsOiBhbnkpIHtcclxuICAgIGlmIChsYWJlbCA9PSBcInN0b3JlX2luZm9cIikge1xyXG4gICAgICB0aGlzLnNlbGVjdCA9IFwic3RvcmVfaW5mb1wiO1xyXG4gICAgfSBlbHNlIGlmIChsYWJlbCA9PSBcImNvbmZpZ1wiKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ID0gXCJjb25maWdcIjtcclxuICAgIH0gZWxzZSBpZiAobGFiZWwgPT0gXCJzdG9yZV9sb2NcIikge1xyXG4gICAgICB0aGlzLnNlbGVjdCA9IFwic3RvcmVfbG9jXCI7XHJcbiAgICB9IGVsc2UgaWYgKGxhYmVsID09IFwiY29udGFjdFwiKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ID0gXCJjb250YWN0XCI7XHJcbiAgICB9IGVsc2UgaWYgKGxhYmVsID09IFwicmV2aWV3XCIpIHtcclxuICAgICAgdGhpcy5zZWxlY3QgPSBcInJldmlld1wiO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY3JlYXRlRm9ybSgpIHtcclxuICAgIHRoaXMuc3RvcmVGb3JtID0gdGhpcy5mYi5ncm91cChcclxuICAgICAge1xyXG4gICAgICAgIHN0b3JlTmFtZTogW1wiXCIsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICAgIGNsaWVudElkOiBbdGhpcy4kaGVhZGVyRmlsdGVycz8uY2xpZW50LCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgICBidXNpbmVzc1R5cGU6IFtcIkNPQ09cIiwgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgc3RvcmVUeXBlX3R5cGU6IFtcIkhpZ2ggU3RyZWV0XCIsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICAgIHN0b3JlVHlwZV9uYW1lOiBbXCJcIl0sXHJcbiAgICAgICAgc3RvcmVDb2RlOiBbXCJcIl0sXHJcbiAgICAgICAgYWRkcmVzczogW1wiXCIsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICAgIGNvdW50cnk6IFtcIlwiLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgICBzdGF0ZTogW1wiXCIsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICAgIGNpdHk6IFtcIlwiLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgICBwaW5jb2RlOiBbXCJcIiwgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgdGltZVpvbmU6IFtcIkFzaWEvS29sa2F0YVwiLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgICBvcGVuOiBbXCIxMDowMFwiLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgICBjbG9zZTogW1wiMjA6MDBcIiwgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgLy8gY2FtZXJhczogWzAsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICAgIHNwb2NEZXRhaWxzOiB0aGlzLmZiLmFycmF5KFt0aGlzLmNyZWF0ZVNwb2NEZXRhaWwoKV0pLFxyXG4gICAgICAgIHN0b3JlQ29ubmVjdGlvbklkOiBbXCJcIl0sXHJcbiAgICAgIH0sXHJcbiAgICAgIHsgdmFsaWRhdG9yczogdGhpcy50aW1lUmFuZ2VWYWxpZGF0b3IgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHRpbWVSYW5nZVZhbGlkYXRvcihjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB7XHJcbiAgICBjb25zdCBvcGVuVGltZSA9IGNvbnRyb2wuZ2V0KFwib3BlblwiKT8udmFsdWU7XHJcbiAgICBjb25zdCBjbG9zZVRpbWUgPSBjb250cm9sLmdldChcImNsb3NlXCIpPy52YWx1ZTtcclxuICAgIGlmIChvcGVuVGltZSAmJiBjbG9zZVRpbWUgJiYgb3BlblRpbWUgPj0gY2xvc2VUaW1lKSB7XHJcbiAgICAgIHJldHVybiB7IGludmFsaWRUaW1lUmFuZ2U6IHRydWUgfTtcclxuICAgIH0gICAgXHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIGNyZWF0ZVNwb2NEZXRhaWwoKTogRm9ybUdyb3VwIHtcclxuICAgIHJldHVybiB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgbmFtZTogW1wiXCIsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICBlbWFpbDogW1xyXG4gICAgICAgIFwiXCIsXHJcbiAgICAgICAgW1xyXG4gICAgICAgICAgVmFsaWRhdG9ycy5yZXF1aXJlZCxcclxuICAgICAgICAgIFZhbGlkYXRvcnMuZW1haWwsXHJcbiAgICAgICAgICBWYWxpZGF0b3JzLm1heExlbmd0aCgxMDApLFxyXG4gICAgICAgICAgVmFsaWRhdG9ycy5taW5MZW5ndGgoMyksXHJcbiAgICAgICAgXSxcclxuICAgICAgXSxcclxuICAgICAgY29udGFjdDogW1xyXG4gICAgICAgIFwiXCIsXHJcbiAgICAgICAgW1xyXG4gICAgICAgICAgVmFsaWRhdG9ycy5yZXF1aXJlZCxcclxuICAgICAgICAgIFZhbGlkYXRvcnMubWF4TGVuZ3RoKDEzKSxcclxuICAgICAgICAgIFZhbGlkYXRvcnMubWluTGVuZ3RoKDEwKSxcclxuICAgICAgICBdLFxyXG4gICAgICBdLFxyXG4gICAgICBkZXNpZ25hdGlvbjogW1wiXCJdLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBnZXRzcG9jRGV0YWlsc0NvbnRyb2xzKCkge1xyXG4gICAgcmV0dXJuICh0aGlzLnN0b3JlRm9ybS5nZXQoXCJzcG9jRGV0YWlsc1wiKSBhcyBGb3JtQXJyYXkpLmNvbnRyb2xzO1xyXG4gIH1cclxuXHJcbiAgZ2V0c3BvY0RldGFpbHNWYWx1ZXMoaTogbnVtYmVyKSB7XHJcbiAgICByZXR1cm4gKHRoaXMuc3RvcmVGb3JtLmdldChcInNwb2NEZXRhaWxzXCIpIGFzIEZvcm1BcnJheSkuYXQoaSkudmFsdWU7XHJcbiAgfVxyXG5cclxuICBnZXRTdG9yZVByb2ZpbGUoKTogRm9ybUdyb3VwIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlRm9ybS5nZXQoXCJzdG9yZVByb2ZpbGVcIikgYXMgRm9ybUdyb3VwO1xyXG4gIH1cclxuXHJcbiAgZ29Ub1N0b3JlSW5mbygpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0ID0gXCJzdG9yZV9pbmZvXCI7XHJcbiAgfVxyXG5cclxuICBnb1RvQ29uZmlndXJhdGlvbigpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0ID0gXCJjb25maWdcIjtcclxuICB9XHJcblxyXG4gIGdvVG9Db250YWN0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3QgPSBcImNvbnRhY3RcIjtcclxuICB9XHJcblxyXG4gIGdvVG9SZXZpZXcoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbGVjdCA9IFwicmV2aWV3XCI7XHJcbiAgfVxyXG5cclxuICBhZGRTcG9jRGV0YWlsKCkge1xyXG4gICAgKHRoaXMuc3RvcmVGb3JtLmdldChcInNwb2NEZXRhaWxzXCIpIGFzIEZvcm1BcnJheSkucHVzaChcclxuICAgICAgdGhpcy5jcmVhdGVTcG9jRGV0YWlsKClcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBhZGRBbHRTcG9jKCkge1xyXG4gICAgKHRoaXMuc3RvcmVGb3JtLmdldChcInNwb2NEZXRhaWxzXCIpIGFzIEZvcm1BcnJheSkucHVzaChcclxuICAgICAgdGhpcy5jcmVhdGVTcG9jRGV0YWlsKClcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBkZWxBbHRTcG9jKCkge1xyXG4gICAgKHRoaXMuc3RvcmVGb3JtLmdldChcInNwb2NEZXRhaWxzXCIpIGFzIEZvcm1BcnJheSkucmVtb3ZlQXQoMSk7XHJcbiAgfVxyXG5cclxuICByZW1vdmVTcG9jRGV0YWlsKGluZGV4OiBudW1iZXIpIHtcclxuICAgICh0aGlzLnN0b3JlRm9ybS5nZXQoXCJzcG9jRGV0YWlsc1wiKSBhcyBGb3JtQXJyYXkpLnJlbW92ZUF0KGluZGV4KTtcclxuICB9XHJcblxyXG4gIG9uU3VibWl0KCkge1xyXG4gICAgaWYgKHRoaXMuc3RvcmVGb3JtLnZhbGlkKSB7XHJcbiAgICAgIGxldCBzdG9yZTogU3RvcmVSZXNwb25zZSA9IHtcclxuICAgICAgICBzdG9yZU5hbWU6IHRoaXMuc3RvcmVGb3JtLnZhbHVlLnN0b3JlTmFtZSxcclxuICAgICAgICBjbGllbnRJZDogdGhpcy5zdG9yZUZvcm0udmFsdWUuY2xpZW50SWQsXHJcbiAgICAgICAgYnJhbmROYW1lOiBcIkxlbnNrYXJ0XCIsXHJcbiAgICAgICAgYnVzaW5lc3NUeXBlOiB0aGlzLnN0b3JlRm9ybS52YWx1ZS5idXNpbmVzc1R5cGUsXHJcbiAgICAgICAgc3RvcmVUeXBlOiB7XHJcbiAgICAgICAgICB0eXBlOiB0aGlzLnN0b3JlRm9ybS52YWx1ZS5zdG9yZVR5cGVfdHlwZSxcclxuICAgICAgICAgIG5hbWU6IHRoaXMuc3RvcmVGb3JtLnZhbHVlPy5zdG9yZVR5cGVfbmFtZSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHN0b3JlUHJvZmlsZToge1xyXG4gICAgICAgICAgc3RvcmVDb2RlOiB0aGlzLnN0b3JlRm9ybS52YWx1ZT8uc3RvcmVDb2RlLFxyXG4gICAgICAgICAgYWRkcmVzczogdGhpcy5zdG9yZUZvcm0udmFsdWU/LmFkZHJlc3MsXHJcbiAgICAgICAgICBjb3VudHJ5OiB0aGlzLnN0b3JlRm9ybS52YWx1ZT8uY291bnRyeSxcclxuICAgICAgICAgIHN0YXRlOiB0aGlzLnN0b3JlRm9ybS52YWx1ZT8uc3RhdGUsXHJcbiAgICAgICAgICBjaXR5OiB0aGlzLnN0b3JlRm9ybS52YWx1ZT8uY2l0eSxcclxuICAgICAgICAgIHBpbmNvZGU6IHRoaXMuc3RvcmVGb3JtLnZhbHVlPy5waW5jb2RlLFxyXG4gICAgICAgICAgdGltZVpvbmU6IHRoaXMuc3RvcmVGb3JtLnZhbHVlPy50aW1lWm9uZSxcclxuICAgICAgICAgIG9wZW46IHRoaXMuc3RvcmVGb3JtLnZhbHVlPy5vcGVuLFxyXG4gICAgICAgICAgY2xvc2U6IHRoaXMuc3RvcmVGb3JtLnZhbHVlPy5jbG9zZSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIC8vIGVkZ2U6IHtcclxuICAgICAgICAvLyAgIGNhbURldGFpbHM6IHtcclxuICAgICAgICAvLyAgICAgY2FtZXJhczogdGhpcy5zdG9yZUZvcm0udmFsdWU/LmNhbWVyYXMsXHJcbiAgICAgICAgLy8gICB9LFxyXG4gICAgICAgIC8vIH0sXHJcbiAgICAgICAgc3BvY0RldGFpbHM6IFtcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgbmFtZTogdGhpcy5zdG9yZUZvcm0udmFsdWU/LnNwb2NEZXRhaWxzWzBdLm5hbWUsXHJcbiAgICAgICAgICAgIGVtYWlsOiB0aGlzLnN0b3JlRm9ybS52YWx1ZT8uc3BvY0RldGFpbHNbMF0uZW1haWwsXHJcbiAgICAgICAgICAgIGNvbnRhY3Q6IHRoaXMuc3RvcmVGb3JtLnZhbHVlPy5zcG9jRGV0YWlsc1swXS5jb250YWN0LFxyXG4gICAgICAgICAgICBkZXNpZ25hdGlvbjogdGhpcy5zdG9yZUZvcm0udmFsdWU/LnNwb2NEZXRhaWxzWzBdLmRlc2lnbmF0aW9uLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICBdLFxyXG4gICAgICAgIHN0b3JlQ29ubmVjdGlvbklkOiB0aGlzLnN0b3JlRm9ybS52YWx1ZT8uc3RvcmVDb25uZWN0aW9uSWQsXHJcbiAgICAgIH07XHJcbiAgICAgIGlmICh0aGlzLnN0b3JlRm9ybS52YWx1ZS5zcG9jRGV0YWlscy5sZW5ndGggPiAxKSB7XHJcbiAgICAgICAgZm9yKGxldCBpPTE7aTx0aGlzLnN0b3JlRm9ybS52YWx1ZS5zcG9jRGV0YWlscy5sZW5ndGg7aSsrKSB7XHJcbiAgICAgICAgICBzdG9yZS5zcG9jRGV0YWlscy5wdXNoKHtcclxuICAgICAgICAgICAgbmFtZTogdGhpcy5zdG9yZUZvcm0udmFsdWU/LnNwb2NEZXRhaWxzW2ldLm5hbWUsXHJcbiAgICAgICAgICAgIGVtYWlsOiB0aGlzLnN0b3JlRm9ybS52YWx1ZT8uc3BvY0RldGFpbHNbaV0uZW1haWwsXHJcbiAgICAgICAgICAgIGNvbnRhY3Q6IHRoaXMuc3RvcmVGb3JtLnZhbHVlPy5zcG9jRGV0YWlsc1tpXS5jb250YWN0LFxyXG4gICAgICAgICAgICBkZXNpZ25hdGlvbjogdGhpcy5zdG9yZUZvcm0udmFsdWU/LnNwb2NEZXRhaWxzW2ldLmRlc2lnbmF0aW9uLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLnN0b3Jlc1NlcnZpY2UuY3JlYXRlU3RvcmUoc3RvcmUpLnN1YnNjcmliZShcclxuICAgICAgICAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT09IDIwMCAmJiByZXMuc3RhdHVzID09PSBcInN1Y2Nlc3NcIikge1xyXG4gICAgICAgICAgICB0aGlzLnN3YWxUb2FzdChcIlN0b3JlIENyZWF0ZWQgU3VjY2Vzc2Z1bGx5IVwiKTtcclxuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wiL21hbmFnZS9zdG9yZXNcIl0pO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5zd2FsVG9hc3QoXCJVbmFibGUgdG8gY3JlYXRlIHN0b3JlIVwiKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgIHRoaXMuc3dhbFRvYXN0KFwiVW5hYmxlIHRvIGNyZWF0ZSBzdG9yZSFcIik7XHJcbiAgICAgICAgfVxyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHN3YWxUb2FzdChtc2c6IHN0cmluZywgaWNvbj86IHN0cmluZykge1xyXG4gICAgU3dhbC5maXJlKHtcclxuICAgICAgdG9hc3Q6IHRydWUsXHJcbiAgICAgIC4uLihpY29uID8geyBpY29uSHRtbDogaWNvbiB9IDoge30pLFxyXG4gICAgICAvLyB0aXRsZVRleHQ6IGBDaGVja2xpc3QgRm9ybSBFcnJvcmAsXHJcbiAgICAgIGh0bWw6IGA8ZGl2IGNsYXNzPVwicm93IHB4LTBcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBtdC0yIHRleHQtbm93cmFwXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ0b2FzdHRpdGlsZSB0ZXh0LW5vd3JhcFwiPiR7bXNnfTwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICBcclxuICAgICAgPC9kaXY+YCxcclxuICAgICAgcG9zaXRpb246IFwiYm90dG9tXCIsXHJcbiAgICAgIHNob3dDb25maXJtQnV0dG9uOiBmYWxzZSxcclxuICAgICAgc2hvd0Nsb3NlQnV0dG9uOiB0cnVlLFxyXG4gICAgICB0aW1lcjogNjAwMCxcclxuICAgICAgdGltZXJQcm9ncmVzc0JhcjogdHJ1ZSxcclxuICAgICAgZGlkT3BlbjogKHRvYXN0KSA9PiB7XHJcbiAgICAgICAgdG9hc3QuYWRkRXZlbnRMaXN0ZW5lcihcIm1vdXNlZW50ZXJcIiwgU3dhbC5zdG9wVGltZXIpO1xyXG4gICAgICAgIHRvYXN0LmFkZEV2ZW50TGlzdGVuZXIoXCJtb3VzZWxlYXZlXCIsIFN3YWwucmVzdW1lVGltZXIpO1xyXG4gICAgICAgICQoXCIja3RfY3JlYXRlX2FjY291bnRfZm9ybV9hY2NvdW50X3R5cGVfcGVyc29uYWxcIik/LnZhbChcIlwiKTtcclxuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmF2aWdhdGVUb0FkZFN0b3JlKCkge1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wiL21hbmFnZS9zdG9yZXMvYWRkaXRpb24tbWV0aG9kXCJdKTtcclxuICB9XHJcblxyXG4gIG9taXRfc3BlY2lhbF9jaGFyKGV2ZW50OiBhbnkpIHtcclxuICAgIHZhciBrO1xyXG4gICAgayA9IGV2ZW50LmNoYXJDb2RlOyAvLyAgICAgICAgIGsgPSBldmVudC5rZXlDb2RlOyAgKEJvdGggY2FuIGJlIHVzZWQpXHJcbiAgICByZXR1cm4gayA9PSA4IHx8IGsgPT0gMzIgfHwgKGsgPj0gNDggJiYgayA8PSA1Nyk7XHJcbiAgfVxyXG5cclxuICBnZXRBbGxUaW1lem9uZXMoKSB7XHJcbiAgICB0aGlzLnRpbWV6b25lcz1tb21lbnQudHoubmFtZXMoKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInJvdyBtdC0zIG1iLTZcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMyBjb2wtbGctMyBjb2wteGwtMyBjb2wteHhsLTNcIiBpZD1cImxlZnQtY29udGFpbmVyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQgY2FyZC1mbHVzaCBoLTEwMCBtYi0wXCI+XHJcbiAgICAgICAgICAgIDwhLS1iZWdpbjo6QXNpZGUgY29udGVudC0tPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtZW51IG1lbnUtY29sdW1uIG1lbnUtcm91bmRlZCBtZW51LXN0YXRlLWJnIG1lbnUtc3RhdGUtdGl0bGUtcHJpbWFyeSBtZW51LXN0YXRlLWljb24tcHJpbWFyeSBtZW51LXN0YXRlLWJ1bGxldC1wcmltYXJ5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLWJlZ2luOjpNZW51IGl0ZW0tLT5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWVudS1pdGVtIG15LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLWJlZ2luOjpJbmJveC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1lbnUtbGlua1wiIFtuZ0NsYXNzXT1cInsgJ2FjdGl2ZSc6IHNlbGVjdCA9PT0gJ3N0b3JlX2luZm8nIH1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNldHRpbmd2YWx1ZSgnc3RvcmVfaW5mbycpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1lbnUtaWNvblwiPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBzdHJva2U9XCJjdXJyZW50Q29sb3JcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0zLjA4OTk1IDYuODgzNjlMMy4wMjQwMSA2Ljk4NjY5QzIuMzAzNTggOC4yNTU1NyAzLjA2MTAxIDkuODc5NDUgNC40NjQ2NCAxMC4wNjYyQzQuNTg2MjcgMTAuMDgxMSA0LjcwMTEyIDEwLjA4OTIgNC44MTQ1IDEwLjA4OTJDNS41NTI1NSAxMC4wODkyIDYuMjA1MjMgOS43NzIyOSA2LjY1OTUzIDkuMjc5MTdMNy4yMTI4NiA4LjY3ODU0TDcuNzY0MzIgOS4yODA4OUM4LjIxMzY3IDkuNzcxNzEgOC44NjUyIDEwLjA4OTIgOS42MDc3NiAxMC4wODkyQzEwLjM0NzEgMTAuMDg5MiAxMS4wMDIyIDkuNzcxMzcgMTEuNDUxMiA5LjI4MDg5TDEyLjAwNDQgOC42NzY2NUwxMi41NTc2IDkuMjgwODlDMTMuMDA2NiA5Ljc3MTM3IDEzLjY2MTcgMTAuMDg5MiAxNC40MDEgMTAuMDg5MkMxNS4xNDA0IDEwLjA4OTIgMTUuNzk1NCA5Ljc3MTM3IDE2LjI0NDUgOS4yODA4OUwxNi43OTc3IDguNjc2NjVMMTcuMzUwOCA5LjI4MDg5QzE3Ljc5OTkgOS43NzEzNyAxOC40NTQ5IDEwLjA4OTIgMTkuMTk0MyAxMC4wODkyQzE5LjMwNDEgMTAuMDg5MiAxOS40MjIzIDEwLjA4MTEgMTkuNTQzMyAxMC4wNjYzQzIwLjk3NzIgOS44NzE2OCAyMS43MzU1IDguMTYzODcgMjAuOTE1NSA2Ljg4NDE5QzIwLjkxNTQgNi44ODQxMyAyMC45MTU0IDYuODg0MDcgMjAuOTE1NCA2Ljg4NDAyTDE4LjgwNTYgMy41OTQyOUwxOC44MDU2IDMuNTk0MjlMMTguODA0NiAzLjU5MjgyQzE4Ljc1ODIgMy41MjAwMiAxOC42NjQ5IDMuNDY0MjMgMTguNTU4NCAzLjQ2NDIzSDUuNDQzMDdDNS4zMzY1IDMuNDY0MjMgNS4yNDMyNiAzLjUyMDAyIDUuMTk2ODEgMy41OTI4Mkw1LjE5NjE5IDMuNTkzNzlMMy4wODk5NSA2Ljg4MzY5Wk00LjgxODE4IDEyLjc0OTlDNC43MTY0NCAxMi43NDk5IDQuNjE2IDEyLjc0NjggNC41MTY5IDEyLjc0MVYxNi42NDI4VjE4Ljk2NDJDNC41MTY5IDE5LjgyMTEgNS4yMjY2MyAyMC41MzU3IDYuMTE5NDIgMjAuNTM1N0gxNy44ODJDMTguNzc0OCAyMC41MzU3IDE5LjQ4NDUgMTkuODIxMSAxOS40ODQ1IDE4Ljk2NDJWMTYuNjQyOFYxMi43NDE1QzE5LjM4NzQgMTIuNzQ3IDE5LjI4OTMgMTIuNzQ5OSAxOS4xOTA2IDEyLjc0OTlDMTkuMDAyMiAxMi43NDk5IDE4LjgxNTcgMTIuNzM5OCAxOC42MzIgMTIuNzIwMlYxNi42NDI4VjE3LjM5MjhIMTcuODgySDYuMTE5NDJINS4zNjk0MlYxNi42NDI4VjEyLjcyMUM1LjE4ODY2IDEyLjc0IDUuMDA0NzIgMTIuNzQ5OSA0LjgxODE4IDEyLjc0OTlaXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1lbnUtdGl0bGUgZnctYm9sZCBcIj5TdG9yZSBJbmZvPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS1lbmQ6OkluYm94LS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1lbnUtaXRlbSBteS0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS1iZWdpbjo6SW5ib3gtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtZW51LWxpbmtcIiBbbmdDbGFzc109XCJ7ICdhY3RpdmUnOiBzZWxlY3QgPT09ICdjb25maWcnIH1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNldHRpbmd2YWx1ZSgnY29uZmlnJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWVudS1pY29uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMTAxN18yMjI3MClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMiAxNUMxMy42NTY5IDE1IDE1IDEzLjY1NjkgMTUgMTJDMTUgMTAuMzQzMSAxMy42NTY5IDkgMTIgOUMxMC4zNDMxIDkgOSAxMC4zNDMxIDkgMTJDOSAxMy42NTY5IDEwLjM0MzEgMTUgMTIgMTVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTE5LjQgMTVDMTkuMjY2OSAxNS4zMDE2IDE5LjIyNzIgMTUuNjM2MiAxOS4yODYgMTUuOTYwNkMxOS4zNDQ4IDE2LjI4NSAxOS40OTk1IDE2LjU4NDMgMTkuNzMgMTYuODJMMTkuNzkgMTYuODhDMTkuOTc2IDE3LjA2NTcgMjAuMTIzNSAxNy4yODYzIDIwLjIyNDEgMTcuNTI5MUMyMC4zMjQ4IDE3Ljc3MTkgMjAuMzc2NiAxOC4wMzIyIDIwLjM3NjYgMTguMjk1QzIwLjM3NjYgMTguNTU3OCAyMC4zMjQ4IDE4LjgxODEgMjAuMjI0MSAxOS4wNjA5QzIwLjEyMzUgMTkuMzAzNyAxOS45NzYgMTkuNTI0MyAxOS43OSAxOS43MUMxOS42MDQzIDE5Ljg5NiAxOS4zODM3IDIwLjA0MzUgMTkuMTQwOSAyMC4xNDQxQzE4Ljg5ODEgMjAuMjQ0OCAxOC42Mzc4IDIwLjI5NjYgMTguMzc1IDIwLjI5NjZDMTguMTEyMiAyMC4yOTY2IDE3Ljg1MTkgMjAuMjQ0OCAxNy42MDkxIDIwLjE0NDFDMTcuMzY2MyAyMC4wNDM1IDE3LjE0NTcgMTkuODk2IDE2Ljk2IDE5LjcxTDE2LjkgMTkuNjVDMTYuNjY0MyAxOS40MTk1IDE2LjM2NSAxOS4yNjQ4IDE2LjA0MDYgMTkuMjA2QzE1LjcxNjIgMTkuMTQ3MiAxNS4zODE2IDE5LjE4NjkgMTUuMDggMTkuMzJDMTQuNzg0MiAxOS40NDY4IDE0LjUzMiAxOS42NTcyIDE0LjM1NDMgMTkuOTI1NUMxNC4xNzY2IDIwLjE5MzggMTQuMDgxMyAyMC41MDgyIDE0LjA4IDIwLjgzVjIxQzE0LjA4IDIxLjUzMDQgMTMuODY5MyAyMi4wMzkxIDEzLjQ5NDIgMjIuNDE0MkMxMy4xMTkxIDIyLjc4OTMgMTIuNjEwNCAyMyAxMi4wOCAyM0MxMS41NDk2IDIzIDExLjA0MDkgMjIuNzg5MyAxMC42NjU4IDIyLjQxNDJDMTAuMjkwNyAyMi4wMzkxIDEwLjA4IDIxLjUzMDQgMTAuMDggMjFWMjAuOTFDMTAuMDcyMyAyMC41NzkgOS45NjUxMiAyMC4yNTggOS43NzI1MSAxOS45ODg3QzkuNTc5OSAxOS43MTk0IDkuMzEwNzQgMTkuNTE0MyA5IDE5LjRDOC42OTgzOCAxOS4yNjY5IDguMzYzODEgMTkuMjI3MiA4LjAzOTQxIDE5LjI4NkM3LjcxNTAyIDE5LjM0NDggNy40MTU2OCAxOS40OTk1IDcuMTggMTkuNzNMNy4xMiAxOS43OUM2LjkzNDI1IDE5Ljk3NiA2LjcxMzY4IDIwLjEyMzUgNi40NzA4OCAyMC4yMjQxQzYuMjI4MDggMjAuMzI0OCA1Ljk2NzgzIDIwLjM3NjYgNS43MDUgMjAuMzc2NkM1LjQ0MjE3IDIwLjM3NjYgNS4xODE5MiAyMC4zMjQ4IDQuOTM5MTIgMjAuMjI0MUM0LjY5NjMyIDIwLjEyMzUgNC40NzU3NSAxOS45NzYgNC4yOSAxOS43OUM0LjEwNDA1IDE5LjYwNDMgMy45NTY1MyAxOS4zODM3IDMuODU1ODggMTkuMTQwOUMzLjc1NTIzIDE4Ljg5ODEgMy43MDM0MyAxOC42Mzc4IDMuNzAzNDMgMTguMzc1QzMuNzAzNDMgMTguMTEyMiAzLjc1NTIzIDE3Ljg1MTkgMy44NTU4OCAxNy42MDkxQzMuOTU2NTMgMTcuMzY2MyA0LjEwNDA1IDE3LjE0NTcgNC4yOSAxNi45Nkw0LjM1IDE2LjlDNC41ODA1NCAxNi42NjQzIDQuNzM1MTkgMTYuMzY1IDQuNzk0IDE2LjA0MDZDNC44NTI4MiAxNS43MTYyIDQuODEzMTIgMTUuMzgxNiA0LjY4IDE1LjA4QzQuNTUzMjQgMTQuNzg0MiA0LjM0Mjc2IDE0LjUzMiA0LjA3NDQ3IDE0LjM1NDNDMy44MDYxOCAxNC4xNzY2IDMuNDkxNzkgMTQuMDgxMyAzLjE3IDE0LjA4SDNDMi40Njk1NyAxNC4wOCAxLjk2MDg2IDEzLjg2OTMgMS41ODU3OSAxMy40OTQyQzEuMjEwNzEgMTMuMTE5MSAxIDEyLjYxMDQgMSAxMi4wOEMxIDExLjU0OTYgMS4yMTA3MSAxMS4wNDA5IDEuNTg1NzkgMTAuNjY1OEMxLjk2MDg2IDEwLjI5MDcgMi40Njk1NyAxMC4wOCAzIDEwLjA4SDMuMDlDMy40MjA5OSAxMC4wNzIzIDMuNzQyIDkuOTY1MTIgNC4wMTEzIDkuNzcyNTFDNC4yODA1OSA5LjU3OTkgNC40ODU3MiA5LjMxMDc0IDQuNiA5QzQuNzMzMTIgOC42OTgzOCA0Ljc3MjgyIDguMzYzODEgNC43MTQgOC4wMzk0MUM0LjY1NTE5IDcuNzE1MDIgNC41MDA1NCA3LjQxNTY4IDQuMjcgNy4xOEw0LjIxIDcuMTJDNC4wMjQwNSA2LjkzNDI1IDMuODc2NTMgNi43MTM2OCAzLjc3NTg4IDYuNDcwODhDMy42NzUyMyA2LjIyODA4IDMuNjIzNDMgNS45Njc4MyAzLjYyMzQzIDUuNzA1QzMuNjIzNDMgNS40NDIxNyAzLjY3NTIzIDUuMTgxOTIgMy43NzU4OCA0LjkzOTEyQzMuODc2NTMgNC42OTYzMiA0LjAyNDA1IDQuNDc1NzUgNC4yMSA0LjI5QzQuMzk1NzUgNC4xMDQwNSA0LjYxNjMyIDMuOTU2NTMgNC44NTkxMiAzLjg1NTg4QzUuMTAxOTIgMy43NTUyMyA1LjM2MjE3IDMuNzAzNDMgNS42MjUgMy43MDM0M0M1Ljg4NzgzIDMuNzAzNDMgNi4xNDgwOCAzLjc1NTIzIDYuMzkwODggMy44NTU4OEM2LjYzMzY4IDMuOTU2NTMgNi44NTQyNSA0LjEwNDA1IDcuMDQgNC4yOUw3LjEgNC4zNUM3LjMzNTY4IDQuNTgwNTQgNy42MzUwMiA0LjczNTE5IDcuOTU5NDEgNC43OTRDOC4yODM4MSA0Ljg1MjgyIDguNjE4MzggNC44MTMxMiA4LjkyIDQuNjhIOUM5LjI5NTc3IDQuNTUzMjQgOS41NDgwMiA0LjM0Mjc2IDkuNzI1NjkgNC4wNzQ0N0M5LjkwMzM3IDMuODA2MTggOS45OTg3MiAzLjQ5MTc5IDEwIDMuMTdWM0MxMCAyLjQ2OTU3IDEwLjIxMDcgMS45NjA4NiAxMC41ODU4IDEuNTg1NzlDMTAuOTYwOSAxLjIxMDcxIDExLjQ2OTYgMSAxMiAxQzEyLjUzMDQgMSAxMy4wMzkxIDEuMjEwNzEgMTMuNDE0MiAxLjU4NTc5QzEzLjc4OTMgMS45NjA4NiAxNCAyLjQ2OTU3IDE0IDNWMy4wOUMxNC4wMDEzIDMuNDExNzkgMTQuMDk2NiAzLjcyNjE4IDE0LjI3NDMgMy45OTQ0N0MxNC40NTIgNC4yNjI3NiAxNC43MDQyIDQuNDczMjQgMTUgNC42QzE1LjMwMTYgNC43MzMxMiAxNS42MzYyIDQuNzcyODIgMTUuOTYwNiA0LjcxNEMxNi4yODUgNC42NTUxOSAxNi41ODQzIDQuNTAwNTQgMTYuODIgNC4yN0wxNi44OCA0LjIxQzE3LjA2NTcgNC4wMjQwNSAxNy4yODYzIDMuODc2NTMgMTcuNTI5MSAzLjc3NTg4QzE3Ljc3MTkgMy42NzUyMyAxOC4wMzIyIDMuNjIzNDMgMTguMjk1IDMuNjIzNDNDMTguNTU3OCAzLjYyMzQzIDE4LjgxODEgMy42NzUyMyAxOS4wNjA5IDMuNzc1ODhDMTkuMzAzNyAzLjg3NjUzIDE5LjUyNDMgNC4wMjQwNSAxOS43MSA0LjIxQzE5Ljg5NiA0LjM5NTc1IDIwLjA0MzUgNC42MTYzMiAyMC4xNDQxIDQuODU5MTJDMjAuMjQ0OCA1LjEwMTkyIDIwLjI5NjYgNS4zNjIxNyAyMC4yOTY2IDUuNjI1QzIwLjI5NjYgNS44ODc4MyAyMC4yNDQ4IDYuMTQ4MDggMjAuMTQ0MSA2LjM5MDg4QzIwLjA0MzUgNi42MzM2OCAxOS44OTYgNi44NTQyNSAxOS43MSA3LjA0TDE5LjY1IDcuMUMxOS40MTk1IDcuMzM1NjggMTkuMjY0OCA3LjYzNTAyIDE5LjIwNiA3Ljk1OTQxQzE5LjE0NzIgOC4yODM4MSAxOS4xODY5IDguNjE4MzggMTkuMzIgOC45MlY5QzE5LjQ0NjggOS4yOTU3NyAxOS42NTcyIDkuNTQ4MDIgMTkuOTI1NSA5LjcyNTY5QzIwLjE5MzggOS45MDMzNyAyMC41MDgyIDkuOTk4NzIgMjAuODMgMTBIMjFDMjEuNTMwNCAxMCAyMi4wMzkxIDEwLjIxMDcgMjIuNDE0MiAxMC41ODU4QzIyLjc4OTMgMTAuOTYwOSAyMyAxMS40Njk2IDIzIDEyQzIzIDEyLjUzMDQgMjIuNzg5MyAxMy4wMzkxIDIyLjQxNDIgMTMuNDE0MkMyMi4wMzkxIDEzLjc4OTMgMjEuNTMwNCAxNCAyMSAxNEgyMC45MUMyMC41ODgyIDE0LjAwMTMgMjAuMjczOCAxNC4wOTY2IDIwLjAwNTUgMTQuMjc0M0MxOS43MzcyIDE0LjQ1MiAxOS41MjY4IDE0LjcwNDIgMTkuNCAxNVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8xMDE3XzIyMjcwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgZmlsbD1cImN1cnJlbnRDb2xvclwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtZW51LXRpdGxlIGZ3LWJvbGQgXCI+U3RvcmUgQ29uZmlndXJhdGlvbjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tZW5kOjpJbmJveC0tPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8IS0tZW5kOjpNZW51IGl0ZW0tLT5cclxuXHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS1iZWdpbjo6TWVudSBpdGVtLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1lbnUtaXRlbSBteS0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS1iZWdpbjo6RHJhZnQtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtZW51LWxpbmtcIiBbbmdDbGFzc109XCJ7ICdhY3RpdmUnOiBzZWxlY3QgPT09ICdjb250YWN0JyB9XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZXR0aW5ndmFsdWUoJ2NvbnRhY3QnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtZW51LWljb25cIj48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTcgMjFWMTlDMTcgMTcuOTM5MSAxNi41Nzg2IDE2LjkyMTcgMTUuODI4NCAxNi4xNzE2QzE1LjA3ODMgMTUuNDIxNCAxNC4wNjA5IDE1IDEzIDE1SDVDMy45MzkxMyAxNSAyLjkyMTcyIDE1LjQyMTQgMi4xNzE1NyAxNi4xNzE2QzEuNDIxNDMgMTYuOTIxNyAxIDE3LjkzOTEgMSAxOVYyMU0yMyAyMVYxOUMyMi45OTkzIDE4LjExMzcgMjIuNzA0NCAxNy4yNTI4IDIyLjE2MTQgMTYuNTUyM0MyMS42MTg0IDE1Ljg1MTkgMjAuODU4MSAxNS4zNTE2IDIwIDE1LjEzTTE2IDMuMTNDMTYuODYwNCAzLjM1MDMgMTcuNjIzIDMuODUwNyAxOC4xNjc2IDQuNTUyMzFDMTguNzEyMiA1LjI1MzkyIDE5LjAwNzggNi4xMTY4MyAxOS4wMDc4IDcuMDA1QzE5LjAwNzggNy44OTMxNyAxOC43MTIyIDguNzU2MDggMTguMTY3NiA5LjQ1NzY5QzE3LjYyMyAxMC4xNTkzIDE2Ljg2MDQgMTAuNjU5NyAxNiAxMC44OE0xMyA3QzEzIDkuMjA5MTQgMTEuMjA5MSAxMSA5IDExQzYuNzkwODYgMTEgNSA5LjIwOTE0IDUgN0M1IDQuNzkwODYgNi43OTA4NiAzIDkgM0MxMS4yMDkxIDMgMTMgNC43OTA4NiAxMyA3WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtZW51LXRpdGxlIGZ3LWJvbGQgXCI+Q29udGFjdCBEZXRhaWxzPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS1lbmQ6OkRyYWZ0LS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLWVuZDo6TWVudSBpdGVtLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLWJlZ2luOjpNZW51IGl0ZW0tLT5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWVudS1pdGVtIG15LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLWJlZ2luOjpUcmFzaC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1lbnUtbGlua1wiIFtuZ0NsYXNzXT1cInsgJ2FjdGl2ZSc6IHNlbGVjdCA9PT0gJ3Jldmlldyd9XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZXR0aW5ndmFsdWUoJ3JldmlldycpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1lbnUtaWNvblwiPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTYgMUM1LjIwNDM1IDEgNC40NDEyOSAxLjMxNjA3IDMuODc4NjggMS44Nzg2OEMzLjMxNjA3IDIuNDQxMjkgMyAzLjIwNDM1IDMgNFYyMEMzIDIwLjc5NTcgMy4zMTYwNyAyMS41NTg3IDMuODc4NjggMjIuMTIxM0M0LjQ0MTI5IDIyLjY4MzkgNS4yMDQzNSAyMyA2IDIzSDEySDE4QzE4Ljc5NTcgMjMgMTkuNTU4NyAyMi42ODM5IDIwLjEyMTMgMjIuMTIxM0MyMC42ODM5IDIxLjU1ODcgMjEgMjAuNzk1NyAyMSAyMFYxNi40MjA4TDE5IDE4LjQyMDhWMjBDMTkgMjAuMjY1MiAxOC44OTQ2IDIwLjUxOTYgMTguNzA3MSAyMC43MDcxQzE4LjUxOTYgMjAuODk0NiAxOC4yNjUyIDIxIDE4IDIxSDE2LjQyMDhMMTUuMzI4NiAyMi4wOTIyTDEyIDIzTDEyLjU0NTUgMjFINkM1LjczNDc4IDIxIDUuNDgwNDMgMjAuODk0NiA1LjI5Mjg5IDIwLjcwNzFDNS4xMDUzNiAyMC41MTk2IDUgMjAuMjY1MiA1IDIwVjRDNSAzLjczNDc4IDUuMTA1MzYgMy40ODA0MyA1LjI5Mjg5IDMuMjkyODlDNS40ODA0MyAzLjEwNTM2IDUuNzM0NzggMyA2IDNIMTJWOUMxMiA5LjU1MjI4IDEyLjQ0NzcgMTAgMTMgMTBIMTlWMTMuNTc5MkwyMSAxMS41NzkyVjlDMjEgOC43MzQ3OCAyMC44OTQ2IDguNDgwNDMgMjAuNzA3MSA4LjI5Mjg5TDEzLjcwNzEgMS4yOTI4OUMxMy41MTk2IDEuMTA1MzYgMTMuMjY1MiAxIDEzIDFINlpNMTcuNTg1OCA4TDE0IDQuNDE0MjFWOEgxNy41ODU4WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMjAuMDc3OSAxMS41MDE0QzIwLjIzNjkgMTEuMzQyNCAyMC40MjU2IDExLjIxNjMgMjAuNjMzMyAxMS4xMzAzQzIwLjg0MDkgMTEuMDQ0MyAyMS4wNjM1IDExIDIxLjI4ODMgMTFDMjEuNTEzMSAxMSAyMS43MzU3IDExLjA0NDMgMjEuOTQzNCAxMS4xMzAzQzIyLjE1MSAxMS4yMTYzIDIyLjMzOTcgMTEuMzQyNCAyMi40OTg3IDExLjUwMTRDMjIuNjU3NiAxMS42NjAzIDIyLjc4MzcgMTEuODQ5IDIyLjg2OTggMTIuMDU2N0MyMi45NTU4IDEyLjI2NDQgMjMuMDAwMSAxMi40ODcgMjMuMDAwMSAxMi43MTE3QzIzLjAwMDEgMTIuOTM2NSAyMi45NTU4IDEzLjE1OTEgMjIuODY5OCAxMy4zNjY4QzIyLjc4MzcgMTMuNTc0NSAyMi42NTc2IDEzLjc2MzIgMjIuNDk4NyAxMy45MjIxTDE1LjMyODYgMjIuMDkyM0wxMiAyMy4wMDAxTDEyLjkwNzggMTkuNjcxNUwyMC4wNzc5IDExLjUwMTRaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjEuNlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWVudS10aXRsZSBmdy1ib2xkIFwiPlJldmlldyAmIFN1Ym1pdDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tZW5kOjpUcmFzaC0tPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS1lbmQ6Ok1lbnUgaXRlbS0tPlxyXG5cclxuXHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwhLS1lbmQ6Ok1lbnUtLT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbC1tZC05IGNvbC1sZy05IGNvbC14bC05IGNvbC14eGwtOVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBib3JkZXItYm90dG9tLTBcIj5cclxuICAgICAgICAgICAgICAgIDxoMVxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGFnZS1oZWFkaW5nIGQtZmxleCB0ZXh0LWRhcmsgZnctYm9sZCBmcy0yIGZsZXgtY29sdW1uICBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIG15LTAgc3ViLWhlYWRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiAgKm5nSWY9XCJzZWxlY3QgPT09ICdzdG9yZV9pbmZvJ1wiPkVudGVyIFlvdXIgU3RvcmUgRGV0YWlsczwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNlbGVjdCA9PT0gJ2NvbmZpZydcIj5FbnRlciBZb3VyIFN0b3JlIENvbmZpZ3VyYXRpb248L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzZWxlY3QgPT09ICdjb250YWN0J1wiPkVudGVyIFByaW1hcnkgU1BPQyBkZXRhaWxzPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic2VsZWN0ID09PSAncmV2aWV3J1wiPlJldmlldyAmIHN1Ym1pdDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvaDE+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IFtoaWRkZW5dPVwic2VsZWN0ICE9PSAnY29udGFjdCdcIiBjbGFzcz1cImNhcmQtdG9vbGJhclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cImFkZEFsdFNwb2MoKVwiIGNsYXNzPVwiYnRuIGJ0bi1saWdodC1wcmltYXJ5MSBidG4tc21cIj48c3ZnIGNsYXNzPVwibWUtMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE0XCIgdmlld0JveD1cIjAgMCAxOCAxNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMi43IDMuNUMyLjcgMi41NzE3NCAzLjA3OTI4IDEuNjgxNSAzLjc1NDQyIDEuMDI1MTNDNC40Mjk1NSAwLjM2ODc0OSA1LjM0NTIyIDAgNi4zIDBDNy4yNTQ3OCAwIDguMTcwNDUgMC4zNjg3NDkgOC44NDU1OCAxLjAyNTEzQzkuNTIwNzIgMS42ODE1IDkuOSAyLjU3MTc0IDkuOSAzLjVDOS45IDQuNDI4MjYgOS41MjA3MiA1LjMxODUgOC44NDU1OCA1Ljk3NDg3QzguMTcwNDUgNi42MzEyNSA3LjI1NDc4IDcgNi4zIDdDNS4zNDUyMiA3IDQuNDI5NTUgNi42MzEyNSAzLjc1NDQyIDUuOTc0ODdDMy4wNzkyOCA1LjMxODUgMi43IDQuNDI4MjYgMi43IDMuNVpNMCAxMy4xODc5QzAgMTAuNDk0NSAyLjI0NDM3IDguMzEyNSA1LjAxNDY5IDguMzEyNUg3LjU4NTMxQzEwLjM1NTYgOC4zMTI1IDEyLjYgMTAuNDk0NSAxMi42IDEzLjE4NzlDMTIuNiAxMy42MzYzIDEyLjIyNTkgMTQgMTEuNzY0NyAxNEgwLjgzNTMxMkMwLjM3NDA2MyAxNCAwIDEzLjYzNjMgMCAxMy4xODc5Wk0xNC4xNzUgOC41MzEyNVY2Ljc4MTI1SDEyLjM3NUMxMi4wMDA5IDYuNzgxMjUgMTEuNyA2LjQ4ODY3IDExLjcgNi4xMjVDMTEuNyA1Ljc2MTMzIDEyLjAwMDkgNS40Njg3NSAxMi4zNzUgNS40Njg3NUgxNC4xNzVWMy43MTg3NUMxNC4xNzUgMy4zNTUwOCAxNC40NzU5IDMuMDYyNSAxNC44NSAzLjA2MjVDMTUuMjI0MSAzLjA2MjUgMTUuNTI1IDMuMzU1MDggMTUuNTI1IDMuNzE4NzVWNS40Njg3NUgxNy4zMjVDMTcuNjk5MSA1LjQ2ODc1IDE4IDUuNzYxMzMgMTggNi4xMjVDMTggNi40ODg2NyAxNy42OTkxIDYuNzgxMjUgMTcuMzI1IDYuNzgxMjVIMTUuNTI1VjguNTMxMjVDMTUuNTI1IDguODk0OTIgMTUuMjI0MSA5LjE4NzUgMTQuODUgOS4xODc1QzE0LjQ3NTkgOS4xODc1IDE0LjE3NSA4Ljg5NDkyIDE0LjE3NSA4LjUzMTI1WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMEEzRkZcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5BZGQgQWx0ZXJuYXRlIFNQT0M8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBwdC0xXCI+XHJcbiAgICAgICAgICAgICAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cInN0b3JlRm9ybVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gU3RvcmUgSW5mbyBTdGFydCAtLT5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IFtoaWRkZW5dPVwic2VsZWN0ICE9PSAnc3RvcmVfaW5mbydcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBjb2wtbGctNiBtYi01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInN0b3JlTmFtZVwiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPlN0b3JlIE5hbWU8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBhdXRvY29tcGxldGU9XCJvZmZcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgaWQ9XCJzdG9yZU5hbWVcIiBmb3JtQ29udHJvbE5hbWU9XCJzdG9yZU5hbWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdpcy1pbnZhbGlkJzpzdG9yZUZvcm0uZ2V0KCdzdG9yZU5hbWUnKT8uaW52YWxpZCAmJiBzdG9yZUZvcm0uZ2V0KCdzdG9yZU5hbWUnKT8udG91Y2hlZH1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c21hbGwgY2xhc3M9XCJpbnZhbGlkLWZlZWRiYWNrXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJzdG9yZUZvcm0uZ2V0KCdzdG9yZU5hbWUnKT8udG91Y2hlZCAmJiBzdG9yZUZvcm0uZ2V0KCdzdG9yZU5hbWUnKT8uaGFzRXJyb3IoJ3JlcXVpcmVkJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgTmFtZSBpcyByZXF1aXJlZC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NtYWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIGNvbC1sZy02IG1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwic3RvcmVDb2RlXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+U3RvcmUgQ29kZSAvIFJlZiBDb2RlIChvcHRpb25hbCk8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBhdXRvY29tcGxldGU9XCJvZmZcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgaWQ9XCJzdG9yZUNvZGVcIiBmb3JtQ29udHJvbE5hbWU9XCJzdG9yZUNvZGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBjb2wtbGctNiBtYi01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImJ1c2luZXNzVHlwZVwiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPkJ1c2luZXNzIFR5cGU8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWxlY3QgY2xhc3M9XCJmb3JtLXNlbGVjdFwiIGlkPVwiYnVzaW5lc3NUeXBlXCIgZm9ybUNvbnRyb2xOYW1lPVwiYnVzaW5lc3NUeXBlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJDT0NPXCI+Q09DTzwvb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiQ09GT1wiPkNPRk88L29wdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIkZPRk9cIj5GT0ZPPC9vcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJGT0NPXCI+Rk9DTzwvb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIGNvbC1sZy02IG1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwic3RvcmVUeXBlXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+U3RvcmUgVHlwZTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlbGVjdCBjbGFzcz1cImZvcm0tc2VsZWN0XCIgaWQ9XCJzdG9yZVR5cGVcIiBmb3JtQ29udHJvbE5hbWU9XCJzdG9yZVR5cGVfdHlwZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiSGlnaCBTdHJlZXRcIj5IaWdoIFN0cmVldDwvb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiTWFsbCBTdG9yZVwiPk1hbGwgU3RvcmU8L29wdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIktpb3NrXCI+S2lvc2s8L29wdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlbGVjdD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBtYi01XCIgKm5nSWY9XCJzdG9yZUZvcm0uZ2V0KCdzdG9yZVR5cGVfdHlwZScpPy52YWx1ZSA9PT0gJ01hbGwgU3RvcmUnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cIm1hbGxOYW1lXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+RW50ZXIgTWFsbCBOYW1lPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGlkPVwibWFsbE5hbWVcIiBmb3JtQ29udHJvbE5hbWU9XCJzdG9yZVR5cGVfbmFtZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLWludmFsaWQnOnN0b3JlRm9ybS5nZXQoJ3N0b3JlVHlwZV9uYW1lJyk/LmludmFsaWQgJiYgc3RvcmVGb3JtLmdldCgnc3RvcmVUeXBlX25hbWUnKT8udG91Y2hlZH1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c21hbGwgY2xhc3M9XCJpbnZhbGlkLWZlZWRiYWNrXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJzdG9yZUZvcm0uZ2V0KCdzdG9yZVR5cGVfbmFtZScpPy50b3VjaGVkICYmIHN0b3JlRm9ybS5nZXQoJ3N0b3JlVHlwZV9uYW1lJyk/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1hbGwgTmFtZSBpcyByZXF1aXJlZC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NtYWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIG1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiYWRkcmVzc1wiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPkFkZHJlc3MgTGluZTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBpZD1cImFkZHJlc3NcIiBmb3JtQ29udHJvbE5hbWU9XCJhZGRyZXNzXCIgI3BsYWNlc1JlZj1cIm5neC1wbGFjZXNcIiBuZ3gtZ3AtYXV0b2NvbXBsZXRlIChvbkFkZHJlc3NDaGFuZ2UpPVwiaGFuZGxlQWRkcmVzc0NoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnaXMtaW52YWxpZCc6c3RvcmVGb3JtLmdldCgnYWRkcmVzcycpPy5pbnZhbGlkICYmIHN0b3JlRm9ybS5nZXQoJ2FkZHJlc3MnKT8udG91Y2hlZH1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c21hbGwgY2xhc3M9XCJpbnZhbGlkLWZlZWRiYWNrXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJzdG9yZUZvcm0uZ2V0KCdhZGRyZXNzJyk/LnRvdWNoZWQgJiYgc3RvcmVGb3JtLmdldCgnYWRkcmVzcycpPy5oYXNFcnJvcigncmVxdWlyZWQnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRyZXNzIGlzIHJlcXVpcmVkLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc21hbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNiBtYi01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImNvdW50cnlcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj5Db3VudHJ5PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGlkPVwiY291bnRyeVwiIGZvcm1Db250cm9sTmFtZT1cImNvdW50cnlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdpcy1pbnZhbGlkJzpzdG9yZUZvcm0uZ2V0KCdjb3VudHJ5Jyk/LmludmFsaWQgJiYgc3RvcmVGb3JtLmdldCgnY291bnRyeScpPy50b3VjaGVkfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzbWFsbCBjbGFzcz1cImludmFsaWQtZmVlZGJhY2tcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInN0b3JlRm9ybS5nZXQoJ2NvdW50cnknKT8udG91Y2hlZCAmJiBzdG9yZUZvcm0uZ2V0KCdjb3VudHJ5Jyk/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvdW50cnkgaXMgcmVxdWlyZWQuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zbWFsbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02IG1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwic3RhdGVcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj5TdGF0ZTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGF1dG9jb21wbGV0ZT1cIm9mZlwiIHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBpZD1cInN0YXRlXCIgZm9ybUNvbnRyb2xOYW1lPVwic3RhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdpcy1pbnZhbGlkJzpzdG9yZUZvcm0uZ2V0KCdzdGF0ZScpPy5pbnZhbGlkICYmIHN0b3JlRm9ybS5nZXQoJ3N0YXRlJyk/LnRvdWNoZWR9XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsIGNsYXNzPVwiaW52YWxpZC1mZWVkYmFja1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwic3RvcmVGb3JtLmdldCgnc3RhdGUnKT8udG91Y2hlZCAmJiBzdG9yZUZvcm0uZ2V0KCdzdGF0ZScpPy5oYXNFcnJvcigncmVxdWlyZWQnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdGF0ZSBpcyByZXF1aXJlZC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NtYWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgbWItNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJjaXR5XCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+Q2l0eSAvIFRvd248L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBhdXRvY29tcGxldGU9XCJvZmZcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgaWQ9XCJjaXR5XCIgZm9ybUNvbnRyb2xOYW1lPVwiY2l0eVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLWludmFsaWQnOnN0b3JlRm9ybS5nZXQoJ2NpdHknKT8uaW52YWxpZCAmJiBzdG9yZUZvcm0uZ2V0KCdjaXR5Jyk/LnRvdWNoZWR9XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsIGNsYXNzPVwiaW52YWxpZC1mZWVkYmFja1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwic3RvcmVGb3JtLmdldCgnY2l0eScpPy50b3VjaGVkICYmIHN0b3JlRm9ybS5nZXQoJ2NpdHknKT8uaGFzRXJyb3IoJ3JlcXVpcmVkJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2l0eSBpcyByZXF1aXJlZC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NtYWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgbWItNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwaW5jb2RlXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+UGluIC8gWmlwIENvZGU8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBhdXRvY29tcGxldGU9XCJvZmZcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgaWQ9XCJwaW5jb2RlXCIgZm9ybUNvbnRyb2xOYW1lPVwicGluY29kZVwiIG1heGxlbmd0aD1cIjZcIiBtaW5sZW5ndGg9XCI2XCIgKGtleXByZXNzKT1cIm9taXRfc3BlY2lhbF9jaGFyKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdpcy1pbnZhbGlkJzpzdG9yZUZvcm0uZ2V0KCdwaW5jb2RlJyk/LmludmFsaWQgJiYgc3RvcmVGb3JtLmdldCgncGluY29kZScpPy50b3VjaGVkfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzbWFsbCBjbGFzcz1cImludmFsaWQtZmVlZGJhY2tcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInN0b3JlRm9ybS5nZXQoJ3BpbmNvZGUnKT8udG91Y2hlZCAmJiBzdG9yZUZvcm0uZ2V0KCdwaW5jb2RlJyk/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBpbmNvZGUgaXMgcmVxdWlyZWQuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zbWFsbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiB0ZXh0LWVuZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IG14LTMgYnRuLW91dGxpbmUgYnRuLW91dGxpbmUtZGVmYXVsdCByb3VuZGVkLTNcIiAoY2xpY2spPVwibmF2aWdhdGVUb0FkZFN0b3JlKClcIj5DYW5jZWw8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJnb1RvQ29uZmlndXJhdGlvbigpXCI+TmV4dDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gU3RvcmUgSW5mbyBFbmQgLS0+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gU3RvcmUgQ29uZmlndXJhdGlvbiBTdGFydCAtLT5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IFtoaWRkZW5dPVwic2VsZWN0ICE9PSAnY29uZmlnJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgbWItNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJ0aW1lWm9uZVwiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPlRpbWUgWm9uZTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGlkPVwidGltZVpvbmVcIiBmb3JtQ29udHJvbE5hbWU9XCJ0aW1lWm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLWludmFsaWQnOnN0b3JlRm9ybS5nZXQoJ3RpbWVab25lJyk/LmludmFsaWQgJiYgc3RvcmVGb3JtLmdldCgndGltZVpvbmUnKT8udG91Y2hlZH1cIj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWxlY3QgY2xhc3M9XCJmb3JtLXNlbGVjdFwiIGlkPVwidGltZVpvbmVcIiBmb3JtQ29udHJvbE5hbWU9XCJ0aW1lWm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiAqbmdGb3I9XCJsZXQgdGltZXpvbmUgb2YgdGltZXpvbmVzXCIgW3ZhbHVlXT1cInRpbWV6b25lXCI+e3sgdGltZXpvbmUgfX08L29wdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWxlY3Q+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsIGNsYXNzPVwiaW52YWxpZC1mZWVkYmFja1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwic3RvcmVGb3JtLmdldCgndGltZVpvbmUnKT8udG91Y2hlZCAmJiBzdG9yZUZvcm0uZ2V0KCd0aW1lWm9uZScpPy5oYXNFcnJvcigncmVxdWlyZWQnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUaW1lIFpvbmUgaXMgcmVxdWlyZWQuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zbWFsbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgbWItNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJub09mQ2FtZXJhc1wiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPk5vIG9mIENhbWVyYXM8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBhdXRvY29tcGxldGU9XCJvZmZcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgaWQ9XCJub09mQ2FtZXJhc1wiIGZvcm1Db250cm9sTmFtZT1cImNhbWVyYXNcIiAoa2V5cHJlc3MpPVwib21pdF9zcGVjaWFsX2NoYXIoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLWludmFsaWQnOnN0b3JlRm9ybS5nZXQoJ2NhbWVyYXMnKT8uaW52YWxpZCAmJiBzdG9yZUZvcm0uZ2V0KCdjYW1lcmFzJyk/LnRvdWNoZWR9XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsIGNsYXNzPVwiaW52YWxpZC1mZWVkYmFja1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwic3RvcmVGb3JtLmdldCgnY2FtZXJhcycpPy50b3VjaGVkICYmIHN0b3JlRm9ybS5nZXQoJ2NhbWVyYXMnKT8uaGFzRXJyb3IoJ3JlcXVpcmVkJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTm8gb2YgQ2FtZXJhcyBpcyByZXF1aXJlZC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NtYWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02IG1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwic3RvcmVPcGVuVGltZVwiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPlN0b3JlIE9wZW4gVGltZTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGF1dG9jb21wbGV0ZT1cIm9mZlwiIHR5cGU9XCJ0aW1lXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBpZD1cInN0b3JlT3BlblRpbWVcIiBmb3JtQ29udHJvbE5hbWU9XCJvcGVuXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnaXMtaW52YWxpZCc6c3RvcmVGb3JtLmdldCgnb3BlbicpPy5pbnZhbGlkICYmIHN0b3JlRm9ybS5nZXQoJ29wZW4nKT8udG91Y2hlZH1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c21hbGwgY2xhc3M9XCJpbnZhbGlkLWZlZWRiYWNrXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJzdG9yZUZvcm0uZ2V0KCdvcGVuJyk/LnRvdWNoZWQgJiYgc3RvcmVGb3JtLmdldCgnb3BlbicpPy5oYXNFcnJvcigncmVxdWlyZWQnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSBPcGVuIFRpbWUgaXMgcmVxdWlyZWQuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zbWFsbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02IG1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwic3RvcmVDbG9zZVRpbWVcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj5TdG9yZSBDbG9zZSBUaW1lPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgdHlwZT1cInRpbWVcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGlkPVwic3RvcmVDbG9zZVRpbWVcIiBmb3JtQ29udHJvbE5hbWU9XCJjbG9zZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLWludmFsaWQnOnN0b3JlRm9ybS5nZXQoJ2Nsb3NlJyk/LmludmFsaWQgJiYgc3RvcmVGb3JtLmdldCgnY2xvc2UnKT8udG91Y2hlZCB8fCBzdG9yZUZvcm0uaGFzRXJyb3IoJ2ludmFsaWRUaW1lUmFuZ2UnKX1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c21hbGwgY2xhc3M9XCJpbnZhbGlkLWZlZWRiYWNrXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJzdG9yZUZvcm0uZ2V0KCdjbG9zZScpPy50b3VjaGVkICYmIHN0b3JlRm9ybS5nZXQoJ2Nsb3NlJyk/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIENsb3NlIFRpbWUgaXMgcmVxdWlyZWQuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zbWFsbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c21hbGwgY2xhc3M9XCJteS0yXCIgKm5nSWY9XCJzdG9yZUZvcm0uaGFzRXJyb3IoJ2ludmFsaWRUaW1lUmFuZ2UnKSAmJiAoc3RvcmVGb3JtLmdldCgnb3BlbicpPy50b3VjaGVkIHx8IHN0b3JlRm9ybS5nZXQoJ2Nsb3NlJyk/LnRvdWNoZWQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9wZW5pbmcgdGltZSBtdXN0IGJlIGJlZm9yZSBjbG9zaW5nIHRpbWUuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zbWFsbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBtdC0yMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiB0ZXh0LWVuZCBtdC0xNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IG14LTMgYnRuLW91dGxpbmUgYnRuLW91dGxpbmUtZGVmYXVsdCByb3VuZGVkLTNcIiAoY2xpY2spPVwibmF2aWdhdGVUb0FkZFN0b3JlKClcIj5DYW5jZWw8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiIChjbGljayk9XCJnb1RvQ29udGFjdCgpXCI+TmV4dDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gU3RvcmUgQ29uZmlndXJhdGlvbiBFbmQgLS0+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gU3RvcmUgQ29udGFjdCBTdGFydCAtLT5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IFtoaWRkZW5dPVwic2VsZWN0ICE9PSAnY29udGFjdCdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBmb3JtQXJyYXlOYW1lPVwic3BvY0RldGFpbHNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBzcG9jRGV0YWlsIG9mIGdldHNwb2NEZXRhaWxzQ29udHJvbHMoKTsgbGV0IGkgPSBpbmRleFwiIFtmb3JtR3JvdXBOYW1lXT1cImlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImkhPT0wXCIgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyIG15LTZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZnctYm9sZCBmcy00XCI+QWx0ZXJuYXRlIFNQT0Mge3tpfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKGNsaWNrKT1cImRlbEFsdFNwb2MoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiNDBcIiBoZWlnaHQ9XCI0MFwiIHZpZXdCb3g9XCIwIDAgNDAgNDBcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGZpbHRlcj1cInVybCgjZmlsdGVyMF9kXzIyNTBfMzA2NTApXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3QgeD1cIjJcIiB5PVwiMVwiIHdpZHRoPVwiMzZcIiBoZWlnaHQ9XCIzNlwiIHJ4PVwiOFwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3QgeD1cIjIuNVwiIHk9XCIxLjVcIiB3aWR0aD1cIjM1XCIgaGVpZ2h0PVwiMzVcIiByeD1cIjcuNVwiIHN0cm9rZT1cIiNEMEQ1RERcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTIuNSAxMy45OTk4SDE0LjE2NjdNMTQuMTY2NyAxMy45OTk4SDI3LjVNMTQuMTY2NyAxMy45OTk4VjI1LjY2NjVDMTQuMTY2NyAyNi4xMDg1IDE0LjM0MjMgMjYuNTMyNSAxNC42NTQ4IDI2Ljg0NUMxNC45Njc0IDI3LjE1NzYgMTUuMzkxMyAyNy4zMzMyIDE1LjgzMzMgMjcuMzMzMkgyNC4xNjY3QzI0LjYwODcgMjcuMzMzMiAyNS4wMzI2IDI3LjE1NzYgMjUuMzQ1MiAyNi44NDVDMjUuNjU3NyAyNi41MzI1IDI1LjgzMzMgMjYuMTA4NSAyNS44MzMzIDI1LjY2NjVWMTMuOTk5OEgxNC4xNjY3Wk0xNi42NjY3IDEzLjk5OThWMTIuMzMzMkMxNi42NjY3IDExLjg5MTEgMTYuODQyMyAxMS40NjcyIDE3LjE1NDggMTEuMTU0N0MxNy40Njc0IDEwLjg0MjEgMTcuODkxMyAxMC42NjY1IDE4LjMzMzMgMTAuNjY2NUgyMS42NjY3QzIyLjEwODcgMTAuNjY2NSAyMi41MzI2IDEwLjg0MjEgMjIuODQ1MiAxMS4xNTQ3QzIzLjE1NzcgMTEuNDY3MiAyMy4zMzMzIDExLjg5MTEgMjMuMzMzMyAxMi4zMzMyVjEzLjk5OThNMTguMzMzMyAxOC4xNjY1VjIzLjE2NjVNMjEuNjY2NyAxOC4xNjY1VjIzLjE2NjVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlsdGVyIGlkPVwiZmlsdGVyMF9kXzIyNTBfMzA2NTBcIiB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCI0MFwiIGhlaWdodD1cIjQwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz1cInNSR0JcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlRmxvb2QgZmxvb2Qtb3BhY2l0eT1cIjBcIiByZXN1bHQ9XCJCYWNrZ3JvdW5kSW1hZ2VGaXhcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCBpbj1cIlNvdXJjZUFscGhhXCIgdHlwZT1cIm1hdHJpeFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM9XCIwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAxMjcgMFwiIHJlc3VsdD1cImhhcmRBbHBoYVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZU9mZnNldCBkeT1cIjFcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPVwiMVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUNvbG9yTWF0cml4IHR5cGU9XCJtYXRyaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPVwiMCAwIDAgMCAwLjA2Mjc0NTEgMCAwIDAgMCAwLjA5NDExNzYgMCAwIDAgMCAwLjE1Njg2MyAwIDAgMCAwLjA1IDBcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVCbGVuZCBtb2RlPVwibm9ybWFsXCIgaW4yPVwiQmFja2dyb3VuZEltYWdlRml4XCIgcmVzdWx0PVwiZWZmZWN0MV9kcm9wU2hhZG93XzIyNTBfMzA2NTBcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVCbGVuZCBtb2RlPVwibm9ybWFsXCIgaW49XCJTb3VyY2VHcmFwaGljXCIgaW4yPVwiZWZmZWN0MV9kcm9wU2hhZG93XzIyNTBfMzA2NTBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0PVwic2hhcGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlsdGVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNiBtYi01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiY29udGFjdE5hbWVcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj5OYW1lPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBhdXRvY29tcGxldGU9XCJvZmZcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgaWQ9XCJjb250YWN0TmFtZVwiIGZvcm1Db250cm9sTmFtZT1cIm5hbWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLWludmFsaWQnOnNwb2NEZXRhaWwuZ2V0KCduYW1lJyk/LmludmFsaWQgJiYgc3BvY0RldGFpbC5nZXQoJ25hbWUnKT8udG91Y2hlZH1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzbWFsbCBjbGFzcz1cImludmFsaWQtZmVlZGJhY2tcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwic3BvY0RldGFpbC5nZXQoJ25hbWUnKT8udG91Y2hlZCAmJiBzcG9jRGV0YWlsLmdldCgnbmFtZScpPy5oYXNFcnJvcigncmVxdWlyZWQnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgaXMgcmVxdWlyZWQuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NtYWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC02IG1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJjb250YWN0RW1haWxcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj5FbWFpbDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgdHlwZT1cImVtYWlsXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBpZD1cImNvbnRhY3RFbWFpbFwiIGZvcm1Db250cm9sTmFtZT1cImVtYWlsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXR0ZXJuPVwiXihbYS16QS1aMC05X1xcLVxcLl0rKUBbYS16MC05LV0rKFxcLlthLXowLTktXSspKihcXC5bYS16QS1aXXsyLDN9KSRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lzLWludmFsaWQnOnNwb2NEZXRhaWwuZ2V0KCdlbWFpbCcpPy5pbnZhbGlkICYmIHNwb2NEZXRhaWwuZ2V0KCdlbWFpbCcpPy50b3VjaGVkfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNwb2NEZXRhaWwuZ2V0KCdlbWFpbCcpPy50b3VjaGVkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsIGNsYXNzPVwiaW52YWxpZC1mZWVkYmFja1wiICpuZ0lmPVwic3BvY0RldGFpbC5nZXQoJ2VtYWlsJyk/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVtYWlsIGlzIHJlcXVpcmVkLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc21hbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsIGNsYXNzPVwiaW52YWxpZC1mZWVkYmFja1wiICpuZ0lmPVwic3BvY0RldGFpbC5nZXQoJ2VtYWlsJyk/Lmhhc0Vycm9yKCdtaW5sZW5ndGgnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbWFpbCBtdXN0IGJlIGF0IGxlYXN0IDMgY2hhcmFjdGVycyBsb25nLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc21hbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsIGNsYXNzPVwiaW52YWxpZC1mZWVkYmFja1wiICpuZ0lmPVwic3BvY0RldGFpbC5nZXQoJ2VtYWlsJyk/Lmhhc0Vycm9yKCdtYXhsZW5ndGgnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbWFpbCBtdXN0IGJlIG5vdCBtb3JlIHRoYW4gMTAwIGNoYXJhY3RlcnMgbG9uZy5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NtYWxsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgbWItNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImNvbnRhY3ROdW1iZXJcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj5Db250YWN0IE51bWJlcjwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGlkPVwiY29udGFjdE51bWJlclwiIG1pbmxlbmd0aD1cIjEwXCIgbWF4bGVuZ3RoPVwiMTNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChrZXlwcmVzcyk9XCJvbWl0X3NwZWNpYWxfY2hhcigkZXZlbnQpXCIgZm9ybUNvbnRyb2xOYW1lPVwiY29udGFjdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnaXMtaW52YWxpZCc6c3BvY0RldGFpbC5nZXQoJ2NvbnRhY3QnKT8uaW52YWxpZCAmJiBzcG9jRGV0YWlsLmdldCgnY29udGFjdCcpPy50b3VjaGVkfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNwb2NEZXRhaWwuZ2V0KCdjb250YWN0Jyk/LnRvdWNoZWRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c21hbGwgY2xhc3M9XCJpbnZhbGlkLWZlZWRiYWNrXCIgKm5nSWY9XCJzcG9jRGV0YWlsLmdldCgnY29udGFjdCcpPy5oYXNFcnJvcigncmVxdWlyZWQnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb250YWN0IGlzIHJlcXVpcmVkLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc21hbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsIGNsYXNzPVwiaW52YWxpZC1mZWVkYmFja1wiICpuZ0lmPVwic3BvY0RldGFpbC5nZXQoJ2NvbnRhY3QnKT8uaGFzRXJyb3IoJ21pbmxlbmd0aCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbnRhY3QgbXVzdCBiZSBhdCBsZWFzdCAxMCBkaWdpdHMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zbWFsbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c21hbGwgY2xhc3M9XCJpbnZhbGlkLWZlZWRiYWNrXCIgKm5nSWY9XCJzcG9jRGV0YWlsLmdldCgnY29udGFjdCcpPy5oYXNFcnJvcignbWF4bGVuZ3RoJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29udGFjdCBtdXN0IGJlIG5vdCBtb3JlIHRoYW4gMTMgZGlnaXRzLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc21hbGw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNiBtYi01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiZGVzaWduYXRpb25cIiBjbGFzcz1cImZvcm0tbGFiZWxcIj5EZXNpZ25hdGlvbiAob3B0aW9uYWwpPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBhdXRvY29tcGxldGU9XCJvZmZcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgaWQ9XCJkZXNpZ25hdGlvblwiIGZvcm1Db250cm9sTmFtZT1cImRlc2lnbmF0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIG1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDEgY2xhc3M9XCJzdWItaGVhZFwiPkVudGVyIFN0b3JlIENvbm5lY3Rpb24gRGV0YWlsczwvaDE+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgbWItNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJhbnlEZXNrSURcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj5BbnlEZXNrIElEIC8gVGVhbVZpZXdlciBJRCAob3B0aW9uYWwpPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGlkPVwiYW55RGVza0lEXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwic3RvcmVDb25uZWN0aW9uSWRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiB0ZXh0LWVuZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IG14LTMgYnRuLW91dGxpbmUgYnRuLW91dGxpbmUtZGVmYXVsdCByb3VuZGVkLTNcIiAoY2xpY2spPVwibmF2aWdhdGVUb0FkZFN0b3JlKClcIj5DYW5jZWw8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiIChjbGljayk9XCJnb1RvUmV2aWV3KClcIj5OZXh0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSBTdG9yZSBDb250YWN0IEVuZCAtLT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSBSZXZpZXcgJiBTdWJtaXQgU3RhcnQgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBbaGlkZGVuXT1cInNlbGVjdCAhPT0gJ3JldmlldydcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZzLTQgZnctYm9sZCB0ZXh0LWhvdmVyLXByaW1hcnkgc3ViLXRpdGxlIHRleHQtZ3JheS02MDAgbS0wIGN1cnNvci1wb2ludGVyXCI+U3RvcmVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEluZm9cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgcC05XCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBtYi03XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiY29sLWxnLTMgZnctYm9sZCB0ZXh0LW11dGVkLXJldmlld1wiPlN0b3JlIE5hbWU8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctOVwiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZ3LWJvbGRlciBmcy02IHRleHQtcmV2aWV3LXZhbFwiPnt7c3RvcmVGb3JtLmdldCgnc3RvcmVOYW1lJyk/LnZhbHVlID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JlRm9ybS5nZXQoJ3N0b3JlTmFtZScpPy52YWx1ZSA6ICdOQSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBtYi03XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiY29sLWxnLTMgZnctYm9sZCB0ZXh0LW11dGVkLXJldmlld1wiPlN0b3JlIENvZGU8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctOSBmdi1yb3dcIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmdy1ib2xkIGZzLTYgdGV4dC1yZXZpZXctdmFsXCI+e3tzdG9yZUZvcm0uZ2V0KCdzdG9yZUNvZGUnKT8udmFsdWUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmVGb3JtLmdldCgnc3RvcmVDb2RlJyk/LnZhbHVlOiAnTkEnfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbWItN1wiPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IG1iLTdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJjb2wtbGctMyBmdy1ib2xkIHRleHQtbXV0ZWQtcmV2aWV3XCI+QnVzaW5lc3MgVHlwZTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy05XCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZnctYm9sZCBmcy02IHRleHQtcmV2aWV3LXZhbCB0ZXh0LWhvdmVyLXByaW1hcnlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7c3RvcmVGb3JtLmdldCgnYnVzaW5lc3NUeXBlJyk/LnZhbHVlID8gc3RvcmVGb3JtLmdldCgnYnVzaW5lc3NUeXBlJyk/LnZhbHVlIDpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdOQSd9fSA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJjb2wtbGctMyBmdy1ib2xkIHRleHQtbXV0ZWQtcmV2aWV3XCI+U3RvcmUgVHlwZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxpIGRhdGEtYnMtdG9nZ2xlPVwidG9vbHRpcFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZT1cIlBob25lIG51bWJlciBtdXN0IGJlIGFjdGl2ZVwiIGNsYXNzPVwiZmFzIGZhLWV4Y2xhbWF0aW9uLWNpcmNsZSBtcy0xIGZzLTdcIj48L2k+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy05IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZnctYm9sZGVyIGZzLTYgbWUtMiB0ZXh0LXJldmlldy12YWxcIj57e3N0b3JlRm9ybS5nZXQoJ3N0b3JlVHlwZV90eXBlJyk/LnZhbHVlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IHN0b3JlRm9ybS5nZXQoJ3N0b3JlVHlwZV90eXBlJyk/LnZhbHVlIDogJ05BJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxzcGFuIGNsYXNzPVwiYmFkZ2UgYmFkZ2Utc3VjY2Vzc1wiPlZlcmlmaWVkPC9zcGFuPiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBtYi03XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInN0b3JlRm9ybS5nZXQoJ3N0b3JlVHlwZV90eXBlJyk/LnZhbHVlICYmIHN0b3JlRm9ybS5nZXQoJ3N0b3JlVHlwZV90eXBlJyk/LnZhbHVlID09PSAnTWFsbCBTdG9yZSdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJjb2wtbGctMyBmdy1ib2xkIHRleHQtbXV0ZWQtcmV2aWV3XCI+IE1hbGwgTmFtZTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy05XCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZnctYm9sZGVyIGZzLTYgdGV4dC1yZXZpZXctdmFsXCI+e3tzdG9yZUZvcm0uZ2V0KCdzdG9yZVR5cGVfbmFtZScpPy52YWx1ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBzdG9yZUZvcm0uZ2V0KCdzdG9yZVR5cGVfbmFtZScpPy52YWx1ZSA6ICdOQSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBtYi03XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiY29sLWxnLTMgZnctYm9sZCB0ZXh0LW11dGVkLXJldmlld1wiPkFkZHJlc3M8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctOVwiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZ3LWJvbGRlciBmcy02IHRleHQtcmV2aWV3LXZhbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0b3JlRm9ybS5nZXQoJ2FkZHJlc3MnKT8udmFsdWUgJiZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yZUZvcm0uZ2V0KCdjaXR5Jyk/LnZhbHVlICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmVGb3JtLmdldCgnc3RhdGUnKT8udmFsdWUgJiZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yZUZvcm0uZ2V0KCdjb3VudHJ5Jyk/LnZhbHVlICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmVGb3JtLmdldCgncGluY29kZScpPy52YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7c3RvcmVGb3JtLmdldCgnYWRkcmVzcycpPy52YWx1ZSA/IHN0b3JlRm9ybS5nZXQoJ2FkZHJlc3MnKT8udmFsdWUgOiAnJ319LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7c3RvcmVGb3JtLmdldCgnY2l0eScpPy52YWx1ZSA/IHN0b3JlRm9ybS5nZXQoJ2NpdHknKT8udmFsdWUgOiAnJ319LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7c3RvcmVGb3JtLmdldCgnc3RhdGUnKT8udmFsdWUgPyBzdG9yZUZvcm0uZ2V0KCdzdGF0ZScpPy52YWx1ZSA6ICcnfX0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tzdG9yZUZvcm0uZ2V0KCdjb3VudHJ5Jyk/LnZhbHVlID8gc3RvcmVGb3JtLmdldCgnY291bnRyeScpPy52YWx1ZSA6ICcnfX0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tzdG9yZUZvcm0uZ2V0KCdwaW5jb2RlJyk/LnZhbHVlID8gc3RvcmVGb3JtLmdldCgncGluY29kZScpPy52YWx1ZSA6ICcnfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFzdG9yZUZvcm0uZ2V0KCdhZGRyZXNzJyk/LnZhbHVlIHx8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIXN0b3JlRm9ybS5nZXQoJ2NpdHknKT8udmFsdWUgfHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhc3RvcmVGb3JtLmdldCgnc3RhdGUnKT8udmFsdWUgfHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhc3RvcmVGb3JtLmdldCgnY291bnRyeScpPy52YWx1ZSB8fFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICFzdG9yZUZvcm0uZ2V0KCdwaW5jb2RlJyk/LnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTkFcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cInJvdyBtYi0xMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImNvbC1sZy0zIGZ3LWJvbGQgdGV4dC1tdXRlZC1yZXZpZXdcIj5BbGxvdyBDaGFuZ2VzPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTlcIj48c3BhbiBjbGFzcz1cImZ3LWJvbGQgZnMtNlwiPlllczwvc3Bhbj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAtLT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZnMtNCBmdy1ib2xkIHRleHQtaG92ZXItcHJpbWFyeSBzdWItdGl0bGUgdGV4dC1ncmF5LTYwMCBtLTAgY3Vyc29yLXBvaW50ZXJcIj5TdG9yZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJhdGlvbjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHAtOVwiPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbWItN1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImNvbC1sZy0zIGZ3LWJvbGQgdGV4dC1tdXRlZC1yZXZpZXdcIj5UaW1lIFpvbmU8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctOVwiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZ3LWJvbGRlciBmcy02IHRleHQtcmV2aWV3LXZhbFwiPnt7c3RvcmVGb3JtLmdldCgndGltZVpvbmUnKT8udmFsdWUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmVGb3JtLmdldCgndGltZVpvbmUnKT8udmFsdWUgOiAnTkEnfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbWItN1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImNvbC1sZy0zIGZ3LWJvbGQgdGV4dC1tdXRlZC1yZXZpZXdcIj5ObyBvZiBDYW1lcmFzPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTkgZnYtcm93XCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZnctYm9sZCBmcy02IHRleHQtcmV2aWV3LXZhbFwiPnt7c3RvcmVGb3JtLmdldCgnY2FtZXJhcycpPy52YWx1ZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yZUZvcm0uZ2V0KCdjYW1lcmFzJyk/LnZhbHVlIDogJ05BJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IG1iLTdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJjb2wtbGctMyBmdy1ib2xkIHRleHQtbXV0ZWQtcmV2aWV3XCI+U3RvcmUgT3BlbiBUaW1lPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTlcIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmdy1ib2xkIGZzLTYgdGV4dC1yZXZpZXctdmFsIHRleHQtaG92ZXItcHJpbWFyeVwiPnt7c3RvcmVGb3JtLmdldCgnb3BlbicpPy52YWx1ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBzdG9yZUZvcm0uZ2V0KCdvcGVuJyk/LnZhbHVlIDogJ05BJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBtYi03XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiY29sLWxnLTMgZnctYm9sZCB0ZXh0LW11dGVkLXJldmlld1wiPlN0b3JlIENsb3NlIFRpbWU8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctOVwiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZ3LWJvbGRlciBmcy02IHRleHQtcmV2aWV3LXZhbFwiPnt7c3RvcmVGb3JtLmdldCgnY2xvc2UnKT8udmFsdWUgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmVGb3JtLmdldCgnY2xvc2UnKT8udmFsdWUgOiAnTkEnfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZnMtNCBmdy1ib2xkIHRleHQtaG92ZXItcHJpbWFyeSBzdWItdGl0bGUgdGV4dC1ncmF5LTYwMCBtLTAgY3Vyc29yLXBvaW50ZXJcIj5Db250YWN0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZXRhaWxzPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgcm93IHB4LTkgcHQtMyBwYi00XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtcmVzcG9uc2l2ZSBjb2wtbWQtMTIgY29sLWxnLTEyIGNvbC14bC05IGNvbC14eGwtOFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlIGFsaWduLW1pZGRsZSBneS02XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0Ym9keSBjbGFzcz1cImZzLTYgZnctYm9sZFwiPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgZm9ybUFycmF5TmFtZT1cInNwb2NEZXRhaWxzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgc3BvYyBvZiBnZXRzcG9jRGV0YWlsc0NvbnRyb2xzKCk7bGV0IGk9aW5kZXg7XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5TcG9jIHt7aSsxfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMThcIiBoZWlnaHQ9XCIxOFwiIHZpZXdCb3g9XCIwIDAgMTggMThcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xNSAxNS43NVYxNC4yNUMxNSAxMy40NTQ0IDE0LjY4MzkgMTIuNjkxMyAxNC4xMjEzIDEyLjEyODdDMTMuNTU4NyAxMS41NjYxIDEyLjc5NTYgMTEuMjUgMTIgMTEuMjVINkM1LjIwNDM1IDExLjI1IDQuNDQxMjkgMTEuNTY2MSAzLjg3ODY4IDEyLjEyODdDMy4zMTYwNyAxMi42OTEzIDMgMTMuNDU0NCAzIDE0LjI1VjE1Ljc1TTEyIDUuMjVDMTIgNi45MDY4NSAxMC42NTY5IDguMjUgOSA4LjI1QzcuMzQzMTUgOC4yNSA2IDYuOTA2ODUgNiA1LjI1QzYgMy41OTMxNSA3LjM0MzE1IDIuMjUgOSAyLjI1QzEwLjY1NjkgMi4yNSAxMiAzLjU5MzE1IDEyIDUuMjVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48c3BhbiBjbGFzcz1cIm1zLTJcIj57e2dldHNwb2NEZXRhaWxzVmFsdWVzKGkpPy5uYW1lID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0c3BvY0RldGFpbHNWYWx1ZXMoaSk/Lm5hbWUgOiAnTkEnIH19PC9zcGFuPjwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgdmlld0JveD1cIjAgMCAxOCAxOFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMV84MDM3MylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMiA2LjAwMDAyVjkuNzUwMDJDMTIgMTAuMzQ2OCAxMi4yMzcxIDEwLjkxOTEgMTIuNjU5IDExLjM0MUMxMy4wODEgMTEuNzYzIDEzLjY1MzMgMTIgMTQuMjUgMTJDMTQuODQ2NyAxMiAxNS40MTkgMTEuNzYzIDE1Ljg0MSAxMS4zNDFDMTYuMjYzIDEwLjkxOTEgMTYuNSAxMC4zNDY4IDE2LjUgOS43NTAwMlY5LjAwMDAyQzE2LjQ5OTkgNy4zMDcyOSAxNS45MjcyIDUuNjY0MzggMTQuODc1IDQuMzM4NDJDMTMuODIyNyAzLjAxMjQ2IDEyLjM1MjkgMi4wODE0NCAxMC43MDQ1IDEuNjk2NzVDOS4wNTYwNSAxLjMxMjA1IDcuMzI1OTYgMS40OTYzIDUuNzk1NTIgMi4yMTk1NUM0LjI2NTA4IDIuOTQyNzkgMy4wMjQzMSA0LjE2MjQ5IDIuMjc0OTUgNS42ODAzMkMxLjUyNTYgNy4xOTgxNCAxLjMxMTczIDguOTI0ODMgMS42NjgxMyAxMC41Nzk2QzIuMDI0NTMgMTIuMjM0NCAyLjkzMDI0IDEzLjcxOTkgNC4yMzc5OCAxNC43OTQ3QzUuNTQ1NzIgMTUuODY5NSA3LjE3ODU4IDE2LjQ3MDMgOC44NzEwNiAxNi40OTk0QzEwLjU2MzUgMTYuNTI4NSAxMi4yMTYxIDE1Ljk4NDIgMTMuNTYgMTQuOTU1TTEyIDkuMDAwMDJDMTIgMTAuNjU2OSAxMC42NTY5IDEyIDkuMDAwMDEgMTJDNy4zNDMxNSAxMiA2LjAwMDAxIDEwLjY1NjkgNi4wMDAwMSA5LjAwMDAyQzYuMDAwMDEgNy4zNDMxNyA3LjM0MzE1IDYuMDAwMDIgOS4wMDAwMSA2LjAwMDAyQzEwLjY1NjkgNi4wMDAwMiAxMiA3LjM0MzE3IDEyIDkuMDAwMDJaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8xXzgwMzczXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48c3BhbiBjbGFzcz1cIm1zLTJcIj57e2dldHNwb2NEZXRhaWxzVmFsdWVzKGkpPy5lbWFpbCA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldHNwb2NEZXRhaWxzVmFsdWVzKGkpPy5lbWFpbCA6ICdOQScgfX08L3NwYW4+PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE4XCIgaGVpZ2h0PVwiMThcIiB2aWV3Qm94PVwiMCAwIDE4IDE4XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8xXzgwMzc2KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTE2LjUwMDEgMTIuNjkwMVYxNC45NDAxQzE2LjUwMDkgMTUuMTQ4OSAxNi40NTgxIDE1LjM1NTcgMTYuMzc0NSAxNS41NDcxQzE2LjI5MDggMTUuNzM4NSAxNi4xNjggMTUuOTEwMyAxNi4wMTQxIDE2LjA1MTVDMTUuODYwMiAxNi4xOTI3IDE1LjY3ODUgMTYuMzAwMiAxNS40ODA2IDE2LjM2NzFDMTUuMjgyOCAxNi40MzQgMTUuMDczMSAxNi40NTg5IDE0Ljg2NTEgMTYuNDQwMUMxMi41NTcyIDE2LjE4OTMgMTAuMzQwMyAxNS40MDA3IDguMzkyNTcgMTQuMTM3NkM2LjU4MDQ0IDEyLjk4NjEgNS4wNDQwNyAxMS40NDk3IDMuODkyNTcgOS42Mzc1N0MyLjYyNTA2IDcuNjgwOTggMS44MzYyNSA1LjQ1MzMyIDEuNTkwMDcgMy4xMzUwN0MxLjU3MTMzIDIuOTI3NjcgMS41OTU5OCAyLjcxODY0IDEuNjYyNDUgMi41MjEyOUMxLjcyODkyIDIuMzIzOTQgMS44MzU3NSAyLjE0MjU5IDEuOTc2MTUgMS45ODg3OUMyLjExNjU0IDEuODM0OTkgMi4yODc0MyAxLjcxMjEgMi40Nzc5MiAxLjYyNzk2QzIuNjY4NCAxLjU0MzgyIDIuODc0MzMgMS41MDAyNyAzLjA4MjU3IDEuNTAwMDdINS4zMzI1N0M1LjY5NjU1IDEuNDk2NDkgNi4wNDk0MiAxLjYyNTM4IDYuMzI1MzkgMS44NjI3MkM2LjYwMTM3IDIuMTAwMDYgNi43ODE2MyAyLjQyOTY2IDYuODMyNTcgMi43OTAwN0M2LjkyNzU0IDMuNTEwMTIgNy4xMDM2NiA0LjIxNzEyIDcuMzU3NTcgNC44OTc1N0M3LjQ1ODQ4IDUuMTY2MDIgNy40ODAzMiA1LjQ1Nzc2IDcuNDIwNSA1LjczODIzQzcuMzYwNjkgNi4wMTg3MSA3LjIyMTcyIDYuMjc2MTYgNy4wMjAwNyA2LjQ4MDA3TDYuMDY3NTcgNy40MzI1N0M3LjEzNTI0IDkuMzEwMjMgOC42ODk5MSAxMC44NjQ5IDEwLjU2NzYgMTEuOTMyNkwxMS41MjAxIDEwLjk4MDFDMTEuNzI0IDEwLjc3ODQgMTEuOTgxNCAxMC42Mzk1IDEyLjI2MTkgMTAuNTc5NkMxMi41NDI0IDEwLjUxOTggMTIuODM0MSAxMC41NDE3IDEzLjEwMjYgMTAuNjQyNkMxMy43ODMgMTAuODk2NSAxNC40OSAxMS4wNzI2IDE1LjIxMDEgMTEuMTY3NkMxNS41NzQ0IDExLjIxOSAxNS45MDcxIDExLjQwMjUgMTYuMTQ1IDExLjY4MzJDMTYuMzgyOCAxMS45NjM5IDE2LjUwOTIgMTIuMzIyMyAxNi41MDAxIDEyLjY5MDFaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8xXzgwMzc2XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48c3BhbiBjbGFzcz1cIm1zLTJcIj57e2dldHNwb2NEZXRhaWxzVmFsdWVzKGkpPy5jb250YWN0ID9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0c3BvY0RldGFpbHNWYWx1ZXMoaSk/LmNvbnRhY3QgOiAnTkEnIH19PC9zcGFuPjwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+QW55RGVzayBJRFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcy0yXCI+e3tzdG9yZUZvcm0uZ2V0KCdzdG9yZUNvbm5lY3Rpb25JZCcpPy52YWx1ZSA/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yZUZvcm0uZ2V0KCdzdG9yZUNvbm5lY3Rpb25JZCcpPy52YWx1ZSA6ICdOQScgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtZW5kXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImdvVG9TdG9yZUluZm8oKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IG14LTMgYnRuLW91dGxpbmUgYnRuLW91dGxpbmUtZGVmYXVsdCByb3VuZGVkLTNcIj5FZGl0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgW2Rpc2FibGVkXT1cInN0b3JlRm9ybS5pbnZhbGlkXCIgKGNsaWNrKT1cIm9uU3VibWl0KClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiPlN1Ym1pdDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gUmV2aWV3ICYgU3VibWl0IEVuZCAtLT5cclxuICAgICAgICAgICAgICAgIDwvZm9ybT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
|
|
@@ -1395,8 +1395,11 @@ class AddStoresComponent {
|
|
|
1395
1395
|
inputFile;
|
|
1396
1396
|
phoneRegex = /^(\d{3})?\d{10}$/;
|
|
1397
1397
|
emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
|
|
1398
|
+
$headerFilters;
|
|
1398
1399
|
constructor(storeService) {
|
|
1399
1400
|
this.storeService = storeService;
|
|
1401
|
+
let data = JSON.parse(localStorage.getItem('header-filters') || '');
|
|
1402
|
+
this.$headerFilters = data;
|
|
1400
1403
|
}
|
|
1401
1404
|
onUpload(e) {
|
|
1402
1405
|
let data;
|
|
@@ -1526,7 +1529,7 @@ class AddStoresComponent {
|
|
|
1526
1529
|
Promise.all(promises)
|
|
1527
1530
|
.then(() => {
|
|
1528
1531
|
this.storeService
|
|
1529
|
-
.storeBulkUpload({ stores: processedArray, clientId:
|
|
1532
|
+
.storeBulkUpload({ stores: processedArray, clientId: this.$headerFilters?.client })
|
|
1530
1533
|
.subscribe((res) => {
|
|
1531
1534
|
if (res.code == 200) {
|
|
1532
1535
|
Swal.fire({
|
|
@@ -1610,6 +1613,7 @@ class AddStoresFormComponent {
|
|
|
1610
1613
|
storeForm;
|
|
1611
1614
|
storeId;
|
|
1612
1615
|
timezones;
|
|
1616
|
+
$headerFilters;
|
|
1613
1617
|
handleAddressChange(place) {
|
|
1614
1618
|
if (place.geometry) {
|
|
1615
1619
|
const country = place.address_components.find((component) => component.types.includes("country"))?.long_name;
|
|
@@ -1627,6 +1631,8 @@ class AddStoresFormComponent {
|
|
|
1627
1631
|
this.storesService = storesService;
|
|
1628
1632
|
this.changeDetector = changeDetector;
|
|
1629
1633
|
this.router = router;
|
|
1634
|
+
let data = JSON.parse(localStorage.getItem('header-filters') || '');
|
|
1635
|
+
this.$headerFilters = data;
|
|
1630
1636
|
this.getAllTimezones();
|
|
1631
1637
|
this.createForm();
|
|
1632
1638
|
}
|
|
@@ -1651,7 +1657,7 @@ class AddStoresFormComponent {
|
|
|
1651
1657
|
createForm() {
|
|
1652
1658
|
this.storeForm = this.fb.group({
|
|
1653
1659
|
storeName: ["", Validators.required],
|
|
1654
|
-
clientId: [
|
|
1660
|
+
clientId: [this.$headerFilters?.client, Validators.required],
|
|
1655
1661
|
businessType: ["COCO", Validators.required],
|
|
1656
1662
|
storeType_type: ["High Street", Validators.required],
|
|
1657
1663
|
storeType_name: [""],
|