tango-app-ui-analyse-zone 3.7.1-beta.18 → 3.7.1-beta.19
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.
|
@@ -61,6 +61,8 @@ export class ZoneJourneyComponent {
|
|
|
61
61
|
this.zoneChartLoading = false;
|
|
62
62
|
this.zoneCardNoData = true;
|
|
63
63
|
this.zoneCardLoading = false;
|
|
64
|
+
this.getZoneJourney([]);
|
|
65
|
+
this.getBubble([]);
|
|
64
66
|
}
|
|
65
67
|
this.availableZones = zones;
|
|
66
68
|
if (!this.zonesInitialized) {
|
|
@@ -384,4 +386,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
384
386
|
type: HostListener,
|
|
385
387
|
args: ['document:click', ['$event']]
|
|
386
388
|
}] } });
|
|
387
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiem9uZS1qb3VybmV5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLWFuYWx5c2Utem9uZS9zcmMvbGliL2NvbXBvbmVudHMvem9uZS1qb3VybmV5L3pvbmUtam91cm5leS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1hbmFseXNlLXpvbmUvc3JjL2xpYi9jb21wb25lbnRzL3pvbmUtam91cm5leS96b25lLWpvdXJuZXkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBNEIsS0FBSyxFQUFvRCxTQUFTLEVBQWMsWUFBWSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2pLLE9BQU8sS0FBSyxHQUFHLE1BQU0scUJBQXFCLENBQUM7QUFDM0MsT0FBTyxLQUFLLE9BQU8sTUFBTSwwQkFBMEIsQ0FBQztBQUNwRCxPQUFRLGtCQUFrQixNQUFNLHFDQUFxQyxDQUFDO0FBSXRFLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7Ozs7QUFPMUMsTUFBTSxPQUFPLG9CQUFvQjtJQUtSO0lBQTRCO0lBQW9DO0lBQTZCO0lBQXNCO0lBSmpJLElBQUksQ0FBWTtJQUNkLFVBQVUsQ0FBTTtJQUNmLFVBQVUsQ0FBTTtJQUNmLFFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBQ3pDLFlBQW9CLE9BQW1CLEVBQVMsYUFBMkIsRUFBUyxFQUFvQixFQUFTLE1BQWEsRUFBUyxFQUFlO1FBQWxJLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFBUyxrQkFBYSxHQUFiLGFBQWEsQ0FBYztRQUFTLE9BQUUsR0FBRixFQUFFLENBQWtCO1FBQVMsV0FBTSxHQUFOLE1BQU0sQ0FBTztRQUFTLE9BQUUsR0FBRixFQUFFLENBQWE7SUFBSSxDQUFDO0lBQ2hLLFdBQVcsQ0FB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QXFFZ0IsWUFBWTtzQkFBdEMsU0FBUzt1QkFBQyxjQUFjO2dCQWdCekIsZUFBZTtzQkFEZCxZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LENoYW5nZURldGVjdG9yUmVmLCBPbkluaXQgLElucHV0LCBPbkNoYW5nZXMsT25EZXN0cm95LFNpbXBsZUNoYW5nZXMsIEFmdGVyVmlld0luaXQsIFZpZXdDaGlsZCwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0ICogYXMgYW01IGZyb20gJ0BhbWNoYXJ0cy9hbWNoYXJ0czUnO1xyXG5pbXBvcnQgKiBhcyBhbTVmbG93IGZyb20gJ0BhbWNoYXJ0cy9hbWNoYXJ0czUvZmxvdyc7XHJcbmltcG9ydCAgYW01dGhlbWVzX0FuaW1hdGVkIGZyb20gJ0BhbWNoYXJ0cy9hbWNoYXJ0czUvdGhlbWVzL0FuaW1hdGVkJztcclxuaW1wb3J0IHsgWm9uZVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy96b25lLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XHJcbmltcG9ydCB7IFpvbmV2MlNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy96b25ldjIuc2VydmljZSc7XHJcbmltcG9ydCB7IFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBUb2FzdFNlcnZpY2UgfSBmcm9tICd0YW5nby1hcHAtdWktc2hhcmVkJztcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItem9uZS1qb3VybmV5JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vem9uZS1qb3VybmV5LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vem9uZS1qb3VybmV5LmNvbXBvbmVudC5zY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgWm9uZUpvdXJuZXlDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3ksT25DaGFuZ2VzIHtcclxuICAgcHJpdmF0ZSByb290ITogYW01LlJvb3Q7XHJcbiAgICBASW5wdXQoKSBoZWFkZXJEYXRhIDphbnk7XHJcbiAgICAgQElucHV0KCkgY2xpZW50RGF0YSA6YW55O1xyXG4gICAgICAgcHJpdmF0ZSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgICAgY29uc3RydWN0b3IocHJpdmF0ZSBzZXJ2aWNlOlpvbmVTZXJ2aWNlLHByaXZhdGUgem9uZVYyU2VydmljZTpab25ldjJTZXJ2aWNlLHByaXZhdGUgY2Q6Q2hhbmdlRGV0ZWN0b3JSZWYscHJpdmF0ZSByb3V0ZXI6Um91dGVyLHByaXZhdGUgdHM6VG9hc3RTZXJ2aWNlKSB7IH1cclxubmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gIGlmIChjaGFuZ2VzWydoZWFkZXJEYXRhJ10/LmN1cnJlbnRWYWx1ZSkge1xyXG4gICAgIHRoaXMuaGVhZGVyRGF0YSA9IGNoYW5nZXNbJ2hlYWRlckRhdGEnXS5jdXJyZW50VmFsdWU7XHJcbiAgfVxyXG4gIGlmIChjaGFuZ2VzWydjbGllbnREYXRhJ10/LmN1cnJlbnRWYWx1ZSkge1xyXG4gICAgICB0aGlzLmNsaWVudERhdGEgPSBjaGFuZ2VzWydjbGllbnREYXRhJ10uY3VycmVudFZhbHVlO1xyXG4gIH1cclxuICB0aGlzLmdldEF2YWlsYWJsZVpvbmVzKCk7XHJcbiAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbn1cclxuXHJcblxyXG56b25lU2hvcHBlckFuYWx5c2lzOmFueTtcclxuYnViYmxlQ2hhcnREYXRhOmFueTtcclxub2JqZWN0OmFueTtcclxub2JqZWN0MTphbnk7XHJcbnpvbmVTZWFyY2hUZXh0OnN0cmluZz0nJztcclxuXHJcbnNob3dEcm9wZG93biA9IGZhbHNlO1xyXG5zZWFyY2hUZXh0ID0gJyc7XHJcbnpvbmVMaXN0OmFueT1bXTtcclxuZmlsdGVyZWRab25lczphbnk9W107XHJcblxyXG5cclxuem9uZXNJbml0aWFsaXplZCA9IGZhbHNlO1xyXG50ZW1wWm9uZUxpc3Q6IGFueVtdID0gW107XHJcbnRlbXBGaWx0ZXJlZFpvbmVzOiBhbnlbXSA9IFtdO1xyXG5kcm9wZG93blNlYXJjaFRleHQgPSAnJztcclxuYXZhaWxhYmxlWm9uZXM6YW55W10gPSBbXTtcclxuXHJcblxyXG5nZXRBdmFpbGFibGVab25lcygpIHtcclxuICB0aGlzLnpvbmVWMlNlcnZpY2Uuem9uZXMkXHJcbiAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAuc3Vic2NyaWJlKCh6b25lcykgPT4ge1xyXG4gICAgICBpZiAoIXpvbmVzLmxlbmd0aCl7XHJcbnRoaXMuem9uZUNoYXJ0Tm9EYXRhID0gdHJ1ZTtcclxuICAgICAgICAgIHRoaXMuem9uZUNoYXJ0TG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy56b25lQ2FyZE5vRGF0YSA9IHRydWU7XHJcbiAgICAgICAgICB0aGlzLnpvbmVDYXJkTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB9IFxyXG5cclxuICAgICBcclxuICAgICAgdGhpcy5hdmFpbGFibGVab25lcyA9IHpvbmVzO1xyXG5cclxuICAgICAgaWYgKCF0aGlzLnpvbmVzSW5pdGlhbGl6ZWQpIHtcclxuICAgICAgICB0aGlzLnpvbmVMaXN0ID0gem9uZXMubWFwKHogPT4gKHtcclxuICAgICAgICAgIG5hbWU6IHouem9uZU5hbWUsXHJcbiAgICAgICAgICBjaGVja2VkOiB0cnVlXHJcbiAgICAgICAgfSkpO1xyXG5cclxuICAgICAgICB0aGlzLnpvbmVzSW5pdGlhbGl6ZWQgPSB0cnVlO1xyXG4gICAgICAgIGlmKHRoaXMuem9uZUxpc3QubGVuZ3RoID4gMCl7XHJcbiAgICAgICAgICB0aGlzLmdldFpvbmVKb3VybmV5KFtdKTtcclxuICAgICAgICAgIHRoaXMuZ2V0QnViYmxlKFtdKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy56b25lQ2hhcnROb0RhdGEgPSB0cnVlO1xyXG4gICAgICAgICAgdGhpcy56b25lQ2hhcnRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLnpvbmVDYXJkTm9EYXRhID0gdHJ1ZTtcclxuICAgICAgICAgIHRoaXMuem9uZUNhcmRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICB9XHJcbiAgICB9KTtcclxufVxyXG5cclxuQFZpZXdDaGlsZCgnem9uZURyb3Bkb3duJykgem9uZURyb3Bkb3duITogRWxlbWVudFJlZjtcclxuXHJcblxyXG4vKiBPUEVOIC8gVE9HR0xFICovXHJcbnRvZ2dsZURyb3Bkb3duKGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7IFxyXG4gIHRoaXMuc2hvd0Ryb3Bkb3duID0gIXRoaXMuc2hvd0Ryb3Bkb3duO1xyXG5cclxuICBpZiAodGhpcy5zaG93RHJvcGRvd24pIHtcclxuICAgIHRoaXMudGVtcFpvbmVMaXN0ID0gdGhpcy56b25lTGlzdC5tYXAoKHo6YW55KSA9PiAoeyAuLi56IH0pKTtcclxuICAgIHRoaXMudGVtcEZpbHRlcmVkWm9uZXMgPSBbLi4udGhpcy50ZW1wWm9uZUxpc3RdO1xyXG4gIH1cclxufVxyXG5cclxuLyog8J+UpSBPVVRTSURFIENMSUNLIEhBTkRMRVIgKi9cclxuQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6Y2xpY2snLCBbJyRldmVudCddKVxyXG5vbkRvY3VtZW50Q2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpIHtcclxuICBpZiAoIXRoaXMuc2hvd0Ryb3Bkb3duKSByZXR1cm47XHJcblxyXG4gIGNvbnN0IGNsaWNrZWRJbnNpZGUgPVxyXG4gICAgdGhpcy56b25lRHJvcGRvd24/Lm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KTtcclxuXHJcbiAgaWYgKCFjbGlja2VkSW5zaWRlKSB7XHJcbiAgICB0aGlzLnNob3dEcm9wZG93biA9IGZhbHNlO1xyXG4gIH1cclxufVxyXG5cclxuZmlsdGVyWm9uZXMoKSB7XHJcbiAgY29uc3QgdGV4dCA9IHRoaXMuZHJvcGRvd25TZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCk7XHJcbiAgdGhpcy50ZW1wRmlsdGVyZWRab25lcyA9IHRoaXMudGVtcFpvbmVMaXN0LmZpbHRlcih6ID0+XHJcbiAgICB6Lm5hbWUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh0ZXh0KVxyXG4gICk7XHJcbn1cclxuXHJcbmFwcGx5Wm9uZXMoKSB7XHJcbiAgdGhpcy56b25lTGlzdCA9IHRoaXMudGVtcFpvbmVMaXN0Lm1hcCh6ID0+ICh7IC4uLnogfSkpO1xyXG5cclxuICBjb25zdCBoaWRkZW5ab25lcyA9IHRoaXMuem9uZUxpc3RcclxuICAgIC5maWx0ZXIoKHo6IGFueSkgPT4gIXouY2hlY2tlZClcclxuICAgIC5tYXAoKHo6IGFueSkgPT4gei5uYW1lKTtcclxuXHJcbiAgdGhpcy5nZXRab25lSm91cm5leShoaWRkZW5ab25lcyk7XHJcbiAgdGhpcy5nZXRCdWJibGUoaGlkZGVuWm9uZXMpO1xyXG4gIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIHRoaXMuZHJvcGRvd25TZWFyY2hUZXh0ID0gJyc7XHJcbiAgdGhpcy5zaG93RHJvcGRvd24gPSBmYWxzZTtcclxufVxyXG5cclxucmVzZXRab25lcygpIHtcclxuICAvLyBSZXNldCBhcHBsaWVkIHN0YXRlXHJcbiAgdGhpcy56b25lTGlzdCA9IHRoaXMuem9uZUxpc3QubWFwKCh6OmFueSkgPT4gKHtcclxuICAgIC4uLnosXHJcbiAgICBjaGVja2VkOiB0cnVlXHJcbiAgfSkpO1xyXG5cclxuICAvLyBTeW5jIHRlbXAgc3RhdGVcclxuICB0aGlzLnRlbXBab25lTGlzdCA9IHRoaXMuem9uZUxpc3QubWFwKCh6OmFueSkgPT4gKHsgLi4ueiB9KSk7XHJcbiAgdGhpcy50ZW1wRmlsdGVyZWRab25lcyA9IFsuLi50aGlzLnRlbXBab25lTGlzdF07XHJcblxyXG4gIHRoaXMuZHJvcGRvd25TZWFyY2hUZXh0ID0gJyc7XHJcblxyXG4gIC8vIEFwcGx5IGltbWVkaWF0ZWx5XHJcbiAgdGhpcy5nZXRab25lSm91cm5leShbXSk7XHJcbiAgdGhpcy5nZXRCdWJibGUoW10pO1xyXG5cclxuICB0aGlzLnNob3dEcm9wZG93biA9IGZhbHNlO1xyXG59XHJcbmdldFpvbmVKb3VybmV5RXhwb3J0KCkge1xyXG4gIHRoaXMub2JqZWN0MSA9IHtcclxuICAgIGNsaWVudElkOiB0aGlzLmhlYWRlckRhdGE/LmNsaWVudCxcclxuICAgIHN0b3JlSWQ6IHRoaXMuaGVhZGVyRGF0YT8uc3RvcmVzXHJcbiAgICAgIC5maWx0ZXIoKHN0b3JlOiBhbnkpID0+IHN0b3JlLmNoZWNrZWQpXHJcbiAgICAgIC5tYXAoKHN0b3JlOiBhbnkpID0+IHN0b3JlLnN0b3JlSWQpLFxyXG4gICAgZnJvbURhdGU6IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uc3RhcnREYXRlLFxyXG4gICAgdG9EYXRlOiB0aGlzLmhlYWRlckRhdGE/LmRhdGU/LmVuZERhdGUsXHJcbiAgICBub2I6IHRoaXMuY2xpZW50RGF0YT8uaXNOT0IsXHJcbiAgICBoaWRlWm9uZXM6IHRoaXMuem9uZUxpc3QuZmlsdGVyKCh6OiBhbnkpID0+ICF6LmNoZWNrZWQpLm1hcCgoejogYW55KSA9PiB6Lm5hbWUpLFxyXG4gICAgc2VhcmNoOiB0aGlzLnNlYXJjaFRleHQgfHwgJycsXHJcbiAgICBpc0V4cG9ydCA6IHRydWVcclxuICB9O1xyXG5cclxuICB0aGlzLnNlcnZpY2UuZ2V0TmV3Wm9uZVNob3BwZXJBbmFseXNpc0V4cG9ydEFwaSh0aGlzLm9iamVjdDEpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IChyZXMpID0+IHtcclxuICAgICAgICAgIHRoaXMuc2VydmljZS5zYXZlQXNFeGNlbEZpbGUocmVzLCAnWm9uZVNob3BwZXJBbmFseXNpcyAnKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiAoKGU6YW55KSA9PiB7XHJcbiAgICAgICAgICBsZXQgZXJyb3JNc2cgPSAnU29tZXRoaW5nIHdlbnQgV3JvbmcuLic7XHJcbiAgICAgICAgICBpZiAoZSAmJiBlLmVycm9yICYmIGUuZXJyb3IuZXJyb3IpIHtcclxuICAgICAgICAgICAgZXJyb3JNc2cgPSBlLmVycm9yLmVycm9yO1xyXG4gICAgICAgICAgfSBcclxuICAgICAgICAgIHRoaXMudHMuZ2V0RXJyb3JUb2FzdChlcnJvck1zZylcclxuICAgICAgICB9KVxyXG4gIH0pO1xyXG59XHJcbnpvbmVDYXJkTm9EYXRhID0gZmFsc2U7XHJcbiAgICAgICAgem9uZUNhcmRMb2FkaW5nID0gdHJ1ZTtcclxuZ2V0Wm9uZUpvdXJuZXkoaGlkZGVuWm9uZXM6IGFueVtdID0gW10pIHtcclxuICB0aGlzLnpvbmVDYXJkTG9hZGluZyA9IHRydWU7XHJcbiAgdGhpcy56b25lQ2FyZE5vRGF0YSA9IGZhbHNlO1xyXG4gIHRoaXMub2JqZWN0MSA9IHtcclxuICAgIGNsaWVudElkOiB0aGlzLmhlYWRlckRhdGE/LmNsaWVudCxcclxuICAgIHN0b3JlSWQ6IHRoaXMuaGVhZGVyRGF0YT8uc3RvcmVzXHJcbiAgICAgIC5maWx0ZXIoKHN0b3JlOiBhbnkpID0+IHN0b3JlLmNoZWNrZWQpXHJcbiAgICAgIC5tYXAoKHN0b3JlOiBhbnkpID0+IHN0b3JlLnN0b3JlSWQpLFxyXG4gICAgZnJvbURhdGU6IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uc3RhcnREYXRlLFxyXG4gICAgdG9EYXRlOiB0aGlzLmhlYWRlckRhdGE/LmRhdGU/LmVuZERhdGUsXHJcbiAgICBub2I6IHRoaXMuY2xpZW50RGF0YT8uaXNOT0IsXHJcbiAgICBoaWRlWm9uZXM6IGhpZGRlblpvbmVzLCAvLyDinIUgYWx3YXlzIGNvcnJlY3RcclxuICAgIHNlYXJjaDogdGhpcy5zZWFyY2hUZXh0IHx8ICcnLFxyXG4gICAgaXNFeHBvcnQgOiBmYWxzZVxyXG4gIH07XHJcblxyXG4gIHRoaXMuc2VydmljZS5nZXROZXdab25lU2hvcHBlckFuYWx5c2lzQXBpKHRoaXMub2JqZWN0MSkuc3Vic2NyaWJlKHtcclxuICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09PSAyMDApIHtcclxuICAgICAgICB0aGlzLnpvbmVTaG9wcGVyQW5hbHlzaXMgPSByZXMuZGF0YTtcclxuICAgICAgICB0aGlzLnpvbmVzID0gdGhpcy56b25lU2hvcHBlckFuYWx5c2lzPy56b25lU2hvcHBlckFuYWx5c2lzIHx8IFtdO1xyXG4gICAgICAgIHRoaXMuem9uZUNhcmROb0RhdGEgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnpvbmVDYXJkTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuem9uZVNob3BwZXJBbmFseXNpcyA9IG51bGw7XHJcbiAgICAgICAgdGhpcy56b25lQ2FyZE5vRGF0YSA9IHRydWU7XHJcbiAgICAgICAgdGhpcy56b25lQ2FyZExvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfSxcclxuICAgIGVycm9yOiAoKSA9PiB7XHJcbiAgICAgIHRoaXMuem9uZVNob3BwZXJBbmFseXNpcyA9IG51bGw7XHJcbiAgICAgIHRoaXMuem9uZUNhcmROb0RhdGEgPSB0cnVlO1xyXG4gICAgICB0aGlzLnpvbmVDYXJkTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgfVxyXG4gIH0pO1xyXG59XHJcblxyXG56b25lQ2hhcnROb0RhdGEgPSBmYWxzZTtcclxuICAgICAgICB6b25lQ2hhcnRMb2FkaW5nID0gdHJ1ZTtcclxuZ2V0QnViYmxlKGhpZGRlblpvbmVzOiBhbnlbXSA9IFtdKSB7XHJcbiAgIHRoaXMuem9uZUNoYXJ0TG9hZGluZyA9IHRydWU7XHJcbiAgIHRoaXMuem9uZUNoYXJ0Tm9EYXRhID0gZmFsc2U7XHJcbiAgdGhpcy5vYmplY3QgPSB7XHJcbiAgICBjbGllbnRJZDogdGhpcy5oZWFkZXJEYXRhPy5jbGllbnQsXHJcbiAgICBzdG9yZUlkOiB0aGlzLmhlYWRlckRhdGE/LnN0b3Jlcy5maWx0ZXIoKHN0b3JlOiBhbnkpID0+IHN0b3JlLmNoZWNrZWQpLm1hcCgoc3RvcmU6IGFueSkgPT4gc3RvcmUuc3RvcmVJZCksXHJcbiAgICAgZnJvbURhdGU6IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uc3RhcnREYXRlLFxyXG4gICAgICB0b0RhdGU6IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZSxcclxuICAgIG5vYjogdGhpcy5jbGllbnREYXRhPy5pc05PQixcclxuICAgIGhpZGVab25lczogaGlkZGVuWm9uZXMsXHJcblxyXG4gIH07XHJcbnRoaXMuc2VydmljZS5nZXROZXdab25lU2hvcHBlckJ1YmJsZUNoYXJ0QXBpKHRoaXMub2JqZWN0KS5zdWJzY3JpYmUoe1xyXG4gICAgbmV4dDogKHJlczphbnkpPT57XHJcbiAgICAgIGlmKHJlcyAmJiByZXMuY29kZSA9PT0gMjAwKXtcclxuICAgICAgICB0aGlzLmJ1YmJsZUNoYXJ0RGF0YSA9IHJlcy5kYXRhO1xyXG4gICAgICAgIGNvbnNvbGUubG9nKCd6b25lIGpvdXJuZXkgYnViYmxlIGNoYXJ0IGRhdGEnLHRoaXMuYnViYmxlQ2hhcnREYXRhKTtcclxuICAgICAgICB0aGlzLmNyZWF0ZUNoYXJ0KCk7XHJcbiAgICAgICAgdGhpcy56b25lQ2hhcnROb0RhdGEgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnpvbmVDaGFydExvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmJ1YmJsZUNoYXJ0RGF0YSA9IG51bGw7XHJcbiAgICAgICAgIHRoaXMuem9uZUNoYXJ0Tm9EYXRhID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnpvbmVDaGFydExvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfSxcclxuICAgIGVycm9yOiAoZXJyOmFueSk9PntcclxuICAgICAgdGhpcy5idWJibGVDaGFydERhdGEgPSBudWxsO1xyXG4gICAgICB0aGlzLnpvbmVDaGFydE5vRGF0YSA9IHRydWU7XHJcbiAgICAgICAgdGhpcy56b25lQ2hhcnRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgIC8vIGNvbnNvbGUubG9nKCd6b25lIGpvdXJuZXkgYnViYmxlIGNoYXJ0IGVycm9yJyxlcnIpO1xyXG4gICAgfVxyXG4gIH0pO1xyXG4gIFxyXG59XHJcblxyXG5jcmVhdGVDaGFydCgpIHtcclxuICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICBpZiAodGhpcy5yb290KSB7XHJcbiAgICB0aGlzLnJvb3QuZGlzcG9zZSgpO1xyXG4gIH1cclxuICB0aGlzLnJvb3QgPSBhbTUuUm9vdC5uZXcoJ2NoYXJ0ZGl2Jyk7XHJcbiAgdGhpcy5yb290LnNldFRoZW1lcyhbXHJcbiAgICBhbTV0aGVtZXNfQW5pbWF0ZWQubmV3KHRoaXMucm9vdClcclxuICBdKTtcclxuICBjb25zdCBzZXJpZXMgPSB0aGlzLnJvb3QuY29udGFpbmVyLmNoaWxkcmVuLnB1c2goXHJcbiAgICBhbTVmbG93LkFyY0RpYWdyYW0ubmV3KHRoaXMucm9vdCwge1xyXG4gICAgICBzb3VyY2VJZEZpZWxkOiAnZnJvbScsXHJcbiAgICAgIHRhcmdldElkRmllbGQ6ICd0bycsXHJcbiAgICAgIHZhbHVlRmllbGQ6ICd2YWx1ZScsXHJcbiAgICAgIG9yaWVudGF0aW9uOiAnaG9yaXpvbnRhbCdcclxuICAgIH0pXHJcbiAgKTtcclxuXHJcbmNvbnN0IHRvb2x0aXAgPSBhbTUuVG9vbHRpcC5uZXcodGhpcy5yb290LCB7XHJcbiAgZ2V0RmlsbEZyb21TcHJpdGU6IGZhbHNlLFxyXG4gIGdldFN0cm9rZUZyb21TcHJpdGU6IGZhbHNlLFxyXG4gIGF1dG9UZXh0Q29sb3I6IGZhbHNlLFxyXG4gIGxhYmVsVGV4dDpcclxuICAgIFwiW2ZvbnRTaXplOjEzcHhde3NvdXJjZUlkfSDihpIge3RhcmdldElkfVxcblwiICtcclxuICAgIFwiWyMyOTc5RkZd4pePIHt2YWx1ZX0gRm9vdGZhbGxbL11cXG5cIiArXHJcbiAgICBcIlsjMTExODI3XeKXjyB7Tm9CfSBOb0JbL11cIlxyXG59KTtcclxuXHJcbnRvb2x0aXAuZ2V0KCdiYWNrZ3JvdW5kJyk/LnNldEFsbCh7XHJcbiAgZmlsbDogYW01LmNvbG9yKDB4ZmZmZmZmKSxcclxuICBzdHJva2U6IGFtNS5jb2xvcigweGU1ZTdlYiksXHJcbiAgc2hhZG93Q29sb3I6IGFtNS5jb2xvcigweDAwMDAwMCksXHJcbiAgc2hhZG93Qmx1cjogMTAsXHJcbiAgc2hhZG93T2Zmc2V0WDogMCxcclxuICBzaGFkb3dPZmZzZXRZOiA0XHJcbn0pO1xyXG5cclxudG9vbHRpcC5sYWJlbC5zZXRBbGwoe1xyXG4gIHBhZGRpbmdUb3A6IDgsXHJcbiAgcGFkZGluZ0JvdHRvbTogOCxcclxuICBwYWRkaW5nTGVmdDogMTIsXHJcbiAgcGFkZGluZ1JpZ2h0OiAxMlxyXG59KTtcclxuXHJcbiAgdG9vbHRpcC5zZXQoJ3BvaW50ZXJPcmllbnRhdGlvbicsICdob3Jpem9udGFsJyk7XHJcblxyXG4gIHNlcmllcy5saW5rcy50ZW1wbGF0ZS5zZXRBbGwoe1xyXG4gICAgdG9vbHRpcDogdG9vbHRpcCxcclxuICAgIHRvb2x0aXBUZXh0OiAnJyBcclxuICB9KTtcclxuXHJcblxyXG4gIHNlcmllcy5ub2Rlcy5sYWJlbHMudGVtcGxhdGUuc2V0QWxsKHtcclxuICAgIHRleHQ6ICd7aWR9XFxue3RvdGFsfScsXHJcbiAgICBjZW50ZXJYOiBhbTUucGVyY2VudCg1MCksXHJcbiAgICBjZW50ZXJZOiBhbTUucGVyY2VudCg1MCksXHJcbiAgICB0ZXh0QWxpZ246ICdjZW50ZXInLFxyXG4gICAgZm9udFNpemU6IDExLFxyXG4gICAgZmlsbDogYW01LmNvbG9yKDB4MDAwMDAwKSxcclxuICAgIC8vIG92ZXJzaXplZEJlaGF2aW9yOiAnd3JhcCcsXHJcbiAgICBtYXhXaWR0aDogOTBcclxuICB9KTtcclxuXHJcblxyXG4gIHNlcmllcy5idWxsZXRzLnB1c2goKF9yb290LCBfc2VyaWVzLCBkYXRhSXRlbSkgPT4ge1xyXG4gICAgY29uc3QgYnVsbGV0ID0gYW01LkJ1bGxldC5uZXcodGhpcy5yb290LCB7XHJcbiAgICAgIGxvY2F0aW9uWTogTWF0aC5yYW5kb20oKSxcclxuICAgICAgc3ByaXRlOiBhbTUuQ2lyY2xlLm5ldyh0aGlzLnJvb3QsIHtcclxuICAgICAgICByYWRpdXM6IDIsXHJcbiAgICAgICAgZmlsbDogZGF0YUl0ZW0uZ2V0KCdzb3VyY2UnKS5nZXQoJ2ZpbGwnKVxyXG4gICAgICB9KVxyXG4gICAgfSk7XHJcblxyXG4gICAgYnVsbGV0LmFuaW1hdGUoe1xyXG4gICAgICBrZXk6ICdsb2NhdGlvblknLFxyXG4gICAgICBmcm9tOiAwLFxyXG4gICAgICB0bzogMSxcclxuICAgICAgZHVyYXRpb246IE1hdGgucmFuZG9tKCkgKiAxMDAwICsgMjAwMCxcclxuICAgICAgLy8gbG9vcHM6IEluZmluaXR5XHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gYnVsbGV0O1xyXG4gIH0pO1xyXG5cclxuXHJcbmNvbnN0IG5vZGVPcmRlciA9IChuYW1lOiBzdHJpbmcpID0+IHtcclxuICBjb25zb2xlLmxvZygnbmFtZScsbmFtZSk7XHJcbiAgaWYgKG5hbWUgPT09IFwiRW50cnlcIikgcmV0dXJuIDA7XHJcbiAgaWYgKG5hbWUgPT09IFwiRXhpdFwiKSByZXR1cm4gOTk5O1xyXG4gIHJldHVybiAxO1xyXG59O1xyXG5cclxuc2VyaWVzLmRhdGEuc2V0QWxsKHRoaXMuYnViYmxlQ2hhcnREYXRhPy56b25lQnViYmxlQ2hhcnRNZXRyaWNzKTtcclxuXHJcbkFycmF5LmZyb20oc2VyaWVzLm5vZGVzLmNoaWxkcmVuKS5zb3J0KChhOiBhbnksIGI6IGFueSkgPT4ge1xyXG4gIHJldHVybiBub2RlT3JkZXIoYS5kYXRhSXRlbT8uZGF0YUNvbnRleHQ/LmlkKSAtIG5vZGVPcmRlcihiLmRhdGFJdGVtPy5kYXRhQ29udGV4dD8uaWQpO1xyXG59KTtcclxuICBzZXJpZXMuYXBwZWFyKDEwMDAsIDEwMCk7XHJcbn0sIDUwMCk7XHJcbn1cclxuXHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMucm9vdCkge1xyXG4gICAgICB0aGlzLnJvb3QuZGlzcG9zZSgpO1xyXG4gICAgfVxyXG4gICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xyXG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xyXG4gICAgLy8gIHRoaXMuc3RvcEF1dG9TbGlkZSgpO1xyXG4gIH1cclxuIFxyXG4gICB6b25lczphbnkgPSBbXTtcclxuXHJcbmFjdGl2ZUluZGV4OiBudW1iZXIgfCBudWxsID0gMDtcclxuXHJcbnRvZ2dsZShpbmRleDogbnVtYmVyKSB7XHJcbiAgdGhpcy5hY3RpdmVJbmRleCA9IHRoaXMuYWN0aXZlSW5kZXggPT09IGluZGV4ID8gbnVsbCA6IGluZGV4O1xyXG59XHJcblxyXG5zZWFyY2hPcGVuKCl7XHJcblxyXG59XHJcblxyXG5cclxuaXNNaW5pbWl6ZWQgPSBmYWxzZTtcclxuXHJcbi8vIGRyYWcgc3VwcG9ydFxyXG5kcmFnZ2luZyA9IGZhbHNlO1xyXG5vZmZzZXRYID0gMDtcclxub2Zmc2V0WSA9IDA7XHJcblxyXG5mbG9hdGluZ1BvcyA9IHtcclxuICB0b3A6IDEyMCxcclxuICBsZWZ0OiB3aW5kb3cuaW5uZXJXaWR0aCAtIDM4MFxyXG59O1xyXG5cclxuZXhwYW5kQ2xvc2UoKSB7XHJcbiAgdGhpcy5pc01pbmltaXplZCA9ICF0aGlzLmlzTWluaW1pemVkO1xyXG59XHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuc3RhcnREcmFnKGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgaWYgKCF0aGlzLmlzTWluaW1pemVkKSByZXR1cm47XHJcblxyXG4gIHRoaXMuZHJhZ2dpbmcgPSB0cnVlO1xyXG4gIHRoaXMub2Zmc2V0WCA9IGV2ZW50LmNsaWVudFggLSB0aGlzLmZsb2F0aW5nUG9zLmxlZnQ7XHJcbiAgdGhpcy5vZmZzZXRZID0gZXZlbnQuY2xpZW50WSAtIHRoaXMuZmxvYXRpbmdQb3MudG9wO1xyXG5cclxuICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCB0aGlzLm9uRHJhZyk7XHJcbiAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2V1cCcsIHRoaXMuc3RvcERyYWcpO1xyXG59XHJcblxyXG5vbkRyYWcgPSAoZXZlbnQ6IE1vdXNlRXZlbnQpID0+IHtcclxuICBpZiAoIXRoaXMuZHJhZ2dpbmcpIHJldHVybjtcclxuXHJcbiAgdGhpcy5mbG9hdGluZ1Bvcy5sZWZ0ID0gZXZlbnQuY2xpZW50WCAtIHRoaXMub2Zmc2V0WDtcclxuICB0aGlzLmZsb2F0aW5nUG9zLnRvcCA9IGV2ZW50LmNsaWVudFkgLSB0aGlzLm9mZnNldFk7XHJcbn07XHJcblxyXG5zdG9wRHJhZyA9ICgpID0+IHtcclxuICB0aGlzLmRyYWdnaW5nID0gZmFsc2U7XHJcbiAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2Vtb3ZlJywgdGhpcy5vbkRyYWcpO1xyXG4gIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNldXAnLCB0aGlzLnN0b3BEcmFnKTtcclxufTtcclxuXHJcbiAgbm9iVXBsb2FkKCl7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbXCIvbWFuYWdlL3RyYWZmaWMvbm9iXCJdKTsgXHJcbiAgfVxyXG59XHJcbiIsIjwhLS0gem9uZS1qb3VybmV5LmNvbXBvbmVudC5odG1sIC0tPlxyXG48ZGl2IGNsYXNzPVwiY2FyZCBteS1jYXJkIG14LTEgbXktMlwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIHB4LTAgbXgtNSBib3JkZXItMCBwdC0zXCI+XHJcbiAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNhcmQtbGFiZWwgbWItMVwiPlpvbmUtQmFzZWQgU2hvcHBlciBBbmFseXNpcyA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE2XCJcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNNy45OTg3IDEwLjY2NjNWNy45OTk2N003Ljk5ODcgNS4zMzMwMUg4LjAwNTM2TTE0LjY2NTQgNy45OTk2N0MxNC42NjU0IDExLjY4MTYgMTEuNjgwNiAxNC42NjYzIDcuOTk4NyAxNC42NjYzQzQuMzE2OCAxNC42NjYzIDEuMzMyMDMgMTEuNjgxNiAxLjMzMjAzIDcuOTk5NjdDMS4zMzIwMyA0LjMxNzc4IDQuMzE2OCAxLjMzMzAxIDcuOTk4NyAxLjMzMzAxQzExLjY4MDYgMS4zMzMwMSAxNC42NjU0IDQuMzE3NzggMTQuNjY1NCA3Ljk5OTY3WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMzNDQwNTRcIiBzdHJva2Utd2lkdGg9XCIxLjNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtc3ViIG1iLTFcIj5VbmRlcnN0YW5kIHlvdXIgU2hvcHBlcnMgam91cm5leSBmcm9tIG9uZSB6b25lIHRvIGFub3RoZXJcclxuICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgIDwvaDM+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtdG9vbGJhclwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciAgcG9zaXRpb24tcmVsYXRpdmUgbXktMVwiPlxyXG48ZGl2IGNsYXNzPVwiem9uZS1kcm9wZG93biBtZS0yXCIgICN6b25lRHJvcGRvd25cclxuICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XHJcblxyXG4gIDwhLS0gQlVUVE9OIC0tPlxyXG4gIDxidXR0b24gW2Rpc2FibGVkXT1cIiF6b25lU2hvcHBlckFuYWx5c2lzXCJcclxuICAgIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lIHctMTAwIG1lLTIgZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCJcclxuICAgIChjbGljayk9XCJ0b2dnbGVEcm9wZG93bigkZXZlbnQpXCJcclxuICA+XHJcbiAgICBTaG93IC8gSGlkZSBab25lXHJcbiAgICA8c3Bhbj48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiN1wiIHZpZXdCb3g9XCIwIDAgMTIgN1wiIGZpbGw9XCJub25lXCI+XHJcbjxwYXRoIGQ9XCJNMSAxTDYgNkwxMSAxXCIgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XHJcbjwvc3ZnPjwvc3Bhbj5cclxuICA8L2J1dHRvbj5cclxuXHJcbiAgPCEtLSBEUk9QRE9XTiAtLT5cclxuIDxkaXYgKm5nSWY9XCJzaG93RHJvcGRvd25cIiBjbGFzcz1cImRyb3Bkb3duLXBhbmVsIGgtMzAwcHggZC1mbGV4IGZsZXgtY29sdW1uXCI+XHJcblxyXG4gIDwhLS0gSEVBREVSIChmaXhlZCkgLS0+XHJcbiAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLWhlYWRlciBweC0yIHBiLTJcIj5cclxuICAgIDxpbnB1dFxyXG4gICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcclxuICAgICAgcGxhY2Vob2xkZXI9XCJTZWFyY2ggWm9uZVwiXHJcbiAgICAgIFsobmdNb2RlbCldPVwic2VhcmNoVGV4dFwiXHJcbiAgICAgIChpbnB1dCk9XCJmaWx0ZXJab25lcygpXCJcclxuICAgIC8+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDwhLS0gQk9EWSAoc2Nyb2xsYWJsZSBsaXN0KSAtLT5cclxuICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tYm9keSBmbGV4LWdyb3ctMSBvdmVyZmxvdy1hdXRvIHB4LTJcIj5cclxuICAgIDxkaXZcclxuICAgICAgY2xhc3M9XCJ6b25lLWl0ZW1cIlxyXG4gICAgICAqbmdGb3I9XCJsZXQgem9uZSBvZiB0ZW1wRmlsdGVyZWRab25lc1wiXHJcbiAgICA+XHJcbiAgICAgIDxpbnB1dFxyXG4gICAgICAgIHR5cGU9XCJjaGVja2JveFwiXHJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJ6b25lLmNoZWNrZWRcIlxyXG4gICAgICAvPlxyXG4gICAgICA8c3Bhbj57eyB6b25lLm5hbWUgfX08L3NwYW4+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPCEtLSBGT09URVIgKGZpeGVkKSAtLT5cclxuICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tZm9vdGVyIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kIGdhcC0yIHAtMiBib3JkZXItdG9wXCI+XHJcbiAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1zbSBidG4tb3V0bGluZSB3LTUwXCIgKGNsaWNrKT1cInJlc2V0Wm9uZXMoKVwiPlxyXG4gICAgICBSZXNldFxyXG4gICAgPC9idXR0b24+XHJcbiAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1zbSBidG4tcHJpbWFyeSB3LTUwXCIgKGNsaWNrKT1cImFwcGx5Wm9uZXMoKVwiPlxyXG4gICAgICBBcHBseVxyXG4gICAgPC9idXR0b24+XHJcbiAgPC9kaXY+XHJcblxyXG48L2Rpdj5cclxuXHJcbjwvZGl2PlxyXG5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImdldFpvbmVKb3VybmV5RXhwb3J0KClcIiBbZGlzYWJsZWRdPVwiIXpvbmVTaG9wcGVyQW5hbHlzaXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0bi1vdXRsaW5lIGJ0biBhbGlnbi1pdGVtcy1lbmQgdGV4dC1ub3dyYXAgaW52aGVhZGVyIG1lLTRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBFeHBvcnQgSWNvbiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTcuNSAxMi41VjE1LjgzMzNDMTcuNSAxNi4yNzU0IDE3LjMyNDQgMTYuNjk5MyAxNy4wMTE4IDE3LjAxMThDMTYuNjk5MyAxNy4zMjQ0IDE2LjI3NTQgMTcuNSAxNS44MzMzIDE3LjVINC4xNjY2N0MzLjcyNDY0IDE3LjUgMy4zMDA3MiAxNy4zMjQ0IDIuOTg4MTYgMTcuMDExOEMyLjY3NTU5IDE2LjY5OTMgMi41IDE2LjI3NTQgMi41IDE1LjgzMzNWMTIuNU0xNC4xNjY3IDYuNjY2NjdMMTAgMi41TTEwIDIuNUw1LjgzMzMzIDYuNjY2NjdNMTAgMi41VjEyLjVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMzNDQwNTRcIiBzdHJva2Utd2lkdGg9XCIxLjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3BhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1zLTJcIj48L3NwYW4+IEV4cG9ydFxyXG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBtdC0zIG14LTNcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGVyZWQtYm94IHctNTAgbWUtMiBweS0xXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJncm91cCBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gcHQtMSBweC0zXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtdGl0bGUgcHktMlwiPjxzdmcgY2xhc3M9XCJteC0yXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIyMVwiIHZpZXdCb3g9XCIwIDAgMTkgMjFcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0wLjUgMTYuMzI1OEg2VjE3LjU3NThDNiAxOC4zMDUxIDUuNzEwMjcgMTkuMDA0NiA1LjE5NDU0IDE5LjUyMDNDNC42Nzg4MiAyMC4wMzYgMy45NzkzNSAyMC4zMjU4IDMuMjUgMjAuMzI1OEMyLjUyMDY1IDIwLjMyNTggMS44MjExOCAyMC4wMzYgMS4zMDU0NiAxOS41MjAzQzAuNzg5NzMxIDE5LjAwNDYgMC41IDE4LjMwNTEgMC41IDE3LjU3NThWMTYuMzI1OFpNNC41IDQuNDQ1NzZDNi41IDQuNDQ1NzYgNy41IDcuMzI1NzYgNy41IDkuMzI1NzZDNy41IDEwLjMyNTggNyAxMS4zMjU4IDYuNSAxMi44MjU4TDYgMTQuMzI1OEgwLjVDMC41IDEzLjMyNTggMCAxMS44MjU4IDAgOS4zMjU3NkMwIDYuODI1NzYgMS45OTggNC40NDU3NiA0LjUgNC40NDU3NlpNMTYuNTU0IDEyLjQyMzhMMTYuMzM3IDEzLjY1NDhDMTYuMjAyMyAxNC4zNjU0IDE1Ljc5MzEgMTQuOTk0MyAxNS4xOTggMTUuNDA1NEMxNC42MDI5IDE1LjgxNjUgMTMuODY5OCAxNS45NzY1IDEzLjE1NzYgMTUuODUwOUMxMi40NDUzIDE1LjcyNTQgMTEuODExMSAxNS4zMjQyIDExLjM5MjUgMTQuNzM0NEMxMC45NzM5IDE0LjE0NDYgMTAuODA0NSAxMy40MTM2IDEwLjkyMSAxMi42OTk4TDExLjEzNyAxMS40Njk4TDE2LjU1NCAxMi40MjM4Wk0xNC42NzggMC4wMzA3NjI0QzE3LjE0MiAwLjQ2NDc2MiAxOC42OTYgMy4xNTU3NiAxOC4yNjIgNS42MTc3NkMxNy44MjggOC4wNzk3NiAxNy4wNzUgOS40Njk3NiAxNi45MDIgMTAuNDU0OEwxMS40ODUgOS40OTk3NkwxMS4yNTMgNy45MzU3NkMxMS4wMjEgNi4zNzE3NiAxMC43MDMgNS4yOTk3NiAxMC44NzYgNC4zMTU3NkMxMS4yMjMgMi4zNDU3NiAxMi43MDggLTAuMzE2MjM4IDE0LjY3OCAwLjAzMDc2MjRaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMUQyOTM5XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICA8L3N2Zz5PdmVyYWxsIEZvb3RmYWxsIDo8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8c3Bhbj48c3BhbiBjbGFzcz1cInRleHQtdmFsXCI+e3t6b25lU2hvcHBlckFuYWx5c2lzPy5PdmVyYWxsRm9vdGZhbGwgPz8gJy0tJ319PC9zcGFuPiA8c3BhbiBjbGFzcz1cInRleHQtcGVyYyBtcy0xXCI+KHt7em9uZVNob3BwZXJBbmFseXNpcz8uQ29udmVyc2lvblBlcmNlbnQgPz8gJy0tJ319ICUpPC9zcGFuPjwvc3Bhbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlcmVkLWJveCB3LTUwIHB5LTFcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdyb3VwIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBwdC0xIHB4LTNcIj5cclxuICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwidGhpcy5jbGllbnREYXRhPy5pc05PQlwiIGNsYXNzPVwidGV4dC10aXRsZSBweS0yXCI+PHN2ZyBjbGFzcz1cIm14LTJcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTkgMTFIMTVNOSAxNUgxNU05IDdIMTVNNSAzQzUgMi43MzQ3OCA1LjEwNTM2IDIuNDgwNDMgNS4yOTI4OSAyLjI5Mjg5QzUuNDgwNDMgMi4xMDUzNiA1LjczNDc4IDIgNiAySDE4QzE4LjI2NTIgMiAxOC41MTk2IDIuMTA1MzYgMTguNzA3MSAyLjI5Mjg5QzE4Ljg5NDYgMi40ODA0MyAxOSAyLjczNDc4IDE5IDNWMjJMMTUuNSAxOS41TDEyIDIyTDguNSAxOS41TDUgMjJWM1pcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzFEMjkzOVwiIHN0cm9rZS13aWR0aD1cIjEuNjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvc3ZnPiBOb0IgOjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiF0aGlzLmNsaWVudERhdGE/LmlzTk9CXCIgY2xhc3M9XCJ0ZXh0LXRpdGxlIHB5LTJcIj48c3ZnIGNsYXNzPVwibXgtMlwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOSAxMUgxNU05IDE1SDE1TTkgN0gxNU01IDNDNSAyLjczNDc4IDUuMTA1MzYgMi40ODA0MyA1LjI5Mjg5IDIuMjkyODlDNS40ODA0MyAyLjEwNTM2IDUuNzM0NzggMiA2IDJIMThDMTguMjY1MiAyIDE4LjUxOTYgMi4xMDUzNiAxOC43MDcxIDIuMjkyODlDMTguODk0NiAyLjQ4MDQzIDE5IDIuNzM0NzggMTkgM1YyMkwxNS41IDE5LjVMMTIgMjJMOC41IDE5LjVMNSAyMlYzWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMUQyOTM5XCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zdmc+IENvbnZlcnNpb24gOjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC12YWxcIj57e3pvbmVTaG9wcGVyQW5hbHlzaXM/Lk5vYiA/PyAnLS0nfX0gPHNwYW4gKm5nSWY9XCJ0aGlzLmNsaWVudERhdGE/LmlzTk9CXCIgY2xhc3M9XCJweC0wIGN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm5vYlVwbG9hZCgpXCI+PHN2ZyAgcGxhY2VtZW50PVwidG9wXCIgbmdiVG9vbHRpcD1cIlVwbG9hZCBOb0JcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCI0MFwiIGhlaWdodD1cIjQwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgNDAgNDBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgZmlsdGVyPVwidXJsKCNmaWx0ZXIwX2RfMTUxMDZfMTA2MDkwKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHg9XCIyXCIgeT1cIjFcIiB3aWR0aD1cIjM2XCIgaGVpZ2h0PVwiMzZcIiByeD1cIjhcIiBmaWxsPVwiI0VBRjhGRlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3QgeD1cIjIuNVwiIHk9XCIxLjVcIiB3aWR0aD1cIjM1XCIgaGVpZ2h0PVwiMzVcIiByeD1cIjcuNVwiIHN0cm9rZT1cIiNFQUY4RkZcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMjMuMzMyNiAyMi4zMzMyTDE5Ljk5OTIgMTguOTk5OU0xOS45OTkyIDE4Ljk5OTlMMTYuNjY1OSAyMi4zMzMyTTE5Ljk5OTIgMTguOTk5OVYyNi40OTk5TTI2Ljk5MDkgMjQuMzI0OUMyNy44MDM3IDIzLjg4MTggMjguNDQ1OCAyMy4xODA2IDI4LjgxNTggMjIuMzMyMUMyOS4xODU4IDIxLjQ4MzUgMjkuMjYyNyAyMC41MzU5IDI5LjAzNDQgMTkuNjM4OEMyOC44MDYxIDE4Ljc0MTcgMjguMjg1NSAxNy45NDYyIDI3LjU1NDggMTcuMzc3OEMyNi44MjQxIDE2LjgwOTQgMjUuOTI1IDE2LjUwMDUgMjQuOTk5MiAxNi40OTk5SDIzLjk0OTJDMjMuNjk3IDE1LjUyNDMgMjMuMjI2OSAxNC42MTg1IDIyLjU3NDIgMTMuODUwN0MyMS45MjE1IDEzLjA4MjkgMjEuMTAzMyAxMi40NzMxIDIwLjE4MSAxMi4wNjcxQzE5LjI1ODcgMTEuNjYxIDE4LjI1NjQgMTEuNDY5NCAxNy4yNDkzIDExLjUwNjVDMTYuMjQyMyAxMS41NDM2IDE1LjI1NjggMTEuODA4NSAxNC4zNjY5IDEyLjI4MTNDMTMuNDc3IDEyLjc1NDEgMTIuNzA1OCAxMy40MjI1IDEyLjExMTQgMTQuMjM2MkMxMS41MTcgMTUuMDUgMTEuMTE0OCAxNS45ODc5IDEwLjkzNTEgMTYuOTc5NEMxMC43NTUzIDE3Ljk3MDkgMTAuODAyNyAxOC45OTAzIDExLjA3MzYgMTkuOTYxQzExLjM0NDUgMjAuOTMxNiAxMS44MzE5IDIxLjgyODEgMTIuNDk5MiAyMi41ODMyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzAwOUJGM1wiIHN0cm9rZS13aWR0aD1cIjEuNjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpbHRlciBpZD1cImZpbHRlcjBfZF8xNTEwNl8xMDYwOTBcIiB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCI0MFwiIGhlaWdodD1cIjQwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz1cInNSR0JcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlRmxvb2QgZmxvb2Qtb3BhY2l0eT1cIjBcIiByZXN1bHQ9XCJCYWNrZ3JvdW5kSW1hZ2VGaXhcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCBpbj1cIlNvdXJjZUFscGhhXCIgdHlwZT1cIm1hdHJpeFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM9XCIwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAxMjcgMFwiIHJlc3VsdD1cImhhcmRBbHBoYVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZU9mZnNldCBkeT1cIjFcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPVwiMVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUNvbG9yTWF0cml4IHR5cGU9XCJtYXRyaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPVwiMCAwIDAgMCAwLjA2Mjc0NTEgMCAwIDAgMCAwLjA5NDExNzYgMCAwIDAgMCAwLjE1Njg2MyAwIDAgMCAwLjA1IDBcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVCbGVuZCBtb2RlPVwibm9ybWFsXCIgaW4yPVwiQmFja2dyb3VuZEltYWdlRml4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdD1cImVmZmVjdDFfZHJvcFNoYWRvd18xNTEwNl8xMDYwOTBcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVCbGVuZCBtb2RlPVwibm9ybWFsXCIgaW49XCJTb3VyY2VHcmFwaGljXCIgaW4yPVwiZWZmZWN0MV9kcm9wU2hhZG93XzE1MTA2XzEwNjA5MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQ9XCJzaGFwZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9maWx0ZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj48L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwicm93IGd4LTAgcC0zXCI+XHJcbiAgICAgICAgPGRpdiBbbmdDbGFzc109XCJpc01pbmltaXplZCA/ICdjb2wtMTInIDogJ2NvbC04J1wiXHJcbiAgW3N0eWxlLmhlaWdodC5weF09XCJ6b25lQ2hhcnROb0RhdGEgPyAzMDAgOiAoaXNNaW5pbWl6ZWQgPyA2NTAgOiA1NTApXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ6b25lQ2hhcnRMb2FkaW5nXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbG9hZGVyICBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiem9uZUNoYXJ0Tm9EYXRhXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctMTIgbXktNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYXJkLWJvZHkgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpbWctc3JjXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvTm9kYXRhMS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YW1haW50ZXh0IG10LTNcIj5ObyBkYXRhIGZvdW5kPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGFzdWJ0ZXh0XCI+VGhlcmUgaXMgbm8gcmVzdWx0IGZvciBab25lIEJhc2VkIFNob3BwZXIgQW5hbHlzaXMgQ2hhcnQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiF6b25lQ2hhcnROb0RhdGEgJiYgIXpvbmVDaGFydExvYWRpbmdcIiBpZD1cImNoYXJ0ZGl2XCIgc3R5bGU9XCJ3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlO1wiPjwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cImlzTWluaW1pemVkID8gJ3pvbmUtZmxvYXRpbmcnIDogJ2NvbC00J1wiIFtzdHlsZS50b3AucHhdPVwiaXNNaW5pbWl6ZWQgPyBmbG9hdGluZ1Bvcy50b3AgOiBudWxsXCJcclxuICAgICAgICAgICAgW3N0eWxlLmxlZnQucHhdPVwiaXNNaW5pbWl6ZWQgPyBmbG9hdGluZ1Bvcy5sZWZ0IDogbnVsbFwiIChtb3VzZWRvd24pPVwic3RhcnREcmFnKCRldmVudClcIj5cclxuICAgICAgICAgICAgPCEtLSAobW91c2Vkb3duKT1cInN0YXJ0RHJhZygkZXZlbnQpXCIgLS0+XHJcbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInpvbmVDYXJkTG9hZGluZ1wiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGxvYWRlciAgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInpvbmVDYXJkTm9EYXRhXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctMTIgbXktNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjYXJkLWJvZHkgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpbWctc3JjXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvTm9kYXRhMS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YW1haW50ZXh0IG10LTNcIj5ObyBkYXRhIGZvdW5kPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub2RhdGFzdWJ0ZXh0XCI+VGhlcmUgaXMgbm8gcmVzdWx0IGZvciBab25lIEJhc2VkIFNob3BwZXIgQW5hbHlzaXM8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgPG5nLWNvbmF0aW5lciAqbmdJZj1cIiF6b25lQ2FyZE5vRGF0YSAmJiAhem9uZUNhcmRMb2FkaW5nXCIgY2xhc3M9XCJjYXJkIFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGJvcmRlci0wIHB4LTRcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cImlzTWluaW1pemVkID8nYmctc2Vjb25kYXJ5IG1pbi1oLTMwcHgnOiAnYmctbGlnaHQtcHJpbWFyeSBtaW4taC00NXB4IG1iLTInXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtdGl0bGUgYWxpZ24taXRlbXMtc3RhcnRcIj48c3BhbiAqbmdJZj1cImlzTWluaW1pemVkXCIgY2xhc3M9XCJtZS0yIG1iLTJcIj48c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk05IDIwQzguNDUgMjAgNy45NzkxNyAxOS44MDQyIDcuNTg3NSAxOS40MTI1QzcuMTk1ODMgMTkuMDIwOCA3IDE4LjU1IDcgMThDNyAxNy40NSA3LjE5NTgzIDE2Ljk3OTIgNy41ODc1IDE2LjU4NzVDNy45NzkxNyAxNi4xOTU4IDguNDUgMTYgOSAxNkM5LjU1IDE2IDEwLjAyMDggMTYuMTk1OCAxMC40MTI1IDE2LjU4NzVDMTAuODA0MiAxNi45NzkyIDExIDE3LjQ1IDExIDE4QzExIDE4LjU1IDEwLjgwNDIgMTkuMDIwOCAxMC40MTI1IDE5LjQxMjVDMTAuMDIwOCAxOS44MDQyIDkuNTUgMjAgOSAyMFpNMTUgMjBDMTQuNDUgMjAgMTMuOTc5MiAxOS44MDQyIDEzLjU4NzUgMTkuNDEyNUMxMy4xOTU4IDE5LjAyMDggMTMgMTguNTUgMTMgMThDMTMgMTcuNDUgMTMuMTk1OCAxNi45NzkyIDEzLjU4NzUgMTYuNTg3NUMxMy45NzkyIDE2LjE5NTggMTQuNDUgMTYgMTUgMTZDMTUuNTUgMTYgMTYuMDIwOCAxNi4xOTU4IDE2LjQxMjUgMTYuNTg3NUMxNi44MDQyIDE2Ljk3OTIgMTcgMTcuNDUgMTcgMThDMTcgMTguNTUgMTYuODA0MiAxOS4wMjA4IDE2LjQxMjUgMTkuNDEyNUMxNi4wMjA4IDE5LjgwNDIgMTUuNTUgMjAgMTUgMjBaTTkgMTRDOC40NSAxNCA3Ljk3OTE3IDEzLjgwNDIgNy41ODc1IDEzLjQxMjVDNy4xOTU4MyAxMy4wMjA4IDcgMTIuNTUgNyAxMkM3IDExLjQ1IDcuMTk1ODMgMTAuOTc5MiA3LjU4NzUgMTAuNTg3NUM3Ljk3OTE3IDEwLjE5NTggOC40NSAxMCA5IDEwQzkuNTUgMTAgMTAuMDIwOCAxMC4xOTU4IDEwLjQxMjUgMTAuNTg3NUMxMC44MDQyIDEwLjk3OTIgMTEgMTEuNDUgMTEgMTJDMTEgMTIuNTUgMTAuODA0MiAxMy4wMjA4IDEwLjQxMjUgMTMuNDEyNUMxMC4wMjA4IDEzLjgwNDIgOS41NSAxNCA5IDE0Wk0xNSAxNEMxNC40NSAxNCAxMy45NzkyIDEzLjgwNDIgMTMuNTg3NSAxMy40MTI1QzEzLjE5NTggMTMuMDIwOCAxMyAxMi41NSAxMyAxMkMxMyAxMS40NSAxMy4xOTU4IDEwLjk3OTIgMTMuNTg3NSAxMC41ODc1QzEzLjk3OTIgMTAuMTk1OCAxNC40NSAxMCAxNSAxMEMxNS41NSAxMCAxNi4wMjA4IDEwLjE5NTggMTYuNDEyNSAxMC41ODc1QzE2LjgwNDIgMTAuOTc5MiAxNyAxMS40NSAxNyAxMkMxNyAxMi41NSAxNi44MDQyIDEzLjAyMDggMTYuNDEyNSAxMy40MTI1QzE2LjAyMDggMTMuODA0MiAxNS41NSAxNCAxNSAxNFpNOSA4QzguNDUgOCA3Ljk3OTE3IDcuODA0MTcgNy41ODc1IDcuNDEyNUM3LjE5NTgzIDcuMDIwODMgNyA2LjU1IDcgNkM3IDUuNDUgNy4xOTU4MyA0Ljk3OTE3IDcuNTg3NSA0LjU4NzVDNy45NzkxNyA0LjE5NTgzIDguNDUgNCA5IDRDOS41NSA0IDEwLjAyMDggNC4xOTU4MyAxMC40MTI1IDQuNTg3NUMxMC44MDQyIDQuOTc5MTcgMTEgNS40NSAxMSA2QzExIDYuNTUgMTAuODA0MiA3LjAyMDgzIDEwLjQxMjUgNy40MTI1QzEwLjAyMDggNy44MDQxNyA5LjU1IDggOSA4Wk0xNSA4QzE0LjQ1IDggMTMuOTc5MiA3LjgwNDE3IDEzLjU4NzUgNy40MTI1QzEzLjE5NTggNy4wMjA4MyAxMyA2LjU1IDEzIDZDMTMgNS40NSAxMy4xOTU4IDQuOTc5MTcgMTMuNTg3NSA0LjU4NzVDMTMuOTc5MiA0LjE5NTgzIDE0LjQ1IDQgMTUgNEMxNS41NSA0IDE2LjAyMDggNC4xOTU4MyAxNi40MTI1IDQuNTg3NUMxNi44MDQyIDQuOTc5MTcgMTcgNS40NSAxNyA2QzE3IDYuNTUgMTYuODA0MiA3LjAyMDgzIDE2LjQxMjUgNy40MTI1QzE2LjAyMDggNy44MDQxNyAxNS41NSA4IDE1IDhaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiM2NjcwODVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPiBab25lIEpvdXJuZXkgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtdG9vbGJhclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBwb3NpdGlvbi1yZWxhdGl2ZSBteS0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCIhaXNNaW5pbWl6ZWRcIiAoY2xpY2spPVwic2VhcmNoT3BlbigpXCIgY2xhc3M9XCJtZS0zXCI+PHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xOSAxOUwxNC42NSAxNC42NU0xNyA5QzE3IDEzLjQxODMgMTMuNDE4MyAxNyA5IDE3QzQuNTgxNzIgMTcgMSAxMy40MTgzIDEgOUMxIDQuNTgxNzIgNC41ODE3MiAxIDkgMUMxMy40MTgzIDEgMTcgNC41ODE3MiAxNyA5WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKm5nSWY9XCIhaXNNaW5pbWl6ZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZXhwYW5kQ2xvc2UoKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNSAxMkgxOVwiIHN0cm9rZT1cIiM5OEEyQjNcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiICpuZ0lmPVwiaXNNaW5pbWl6ZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZXhwYW5kQ2xvc2UoKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTUgM0gyMU0yMSAzVjlNMjEgM0wxNCAxME05IDIxSDNNMyAyMVYxNU0zIDIxTDEwIDE0XCIgc3Ryb2tlPVwiIzY2NzA4NVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFpc01pbmltaXplZFwiIGNsYXNzPVwiY2FyZC1ib2R5IGgtNTAwcHggb3ZlcmZsb3ctYXV0byBweC0wIHB5LTJcIj5cclxuICAgICAgICAgXHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ6b25lLWNhcmQgbXgtMyBcIiAqbmdGb3I9XCJsZXQgem9uZSBvZiB6b25lcztsZXQgaSA9IGluZGV4XCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEhFQURFUiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBbbmdDbGFzc109XCJhY3RpdmVJbmRleCA9PT0gaSA/ICd6b25lLWhlYWRlcic6J3pvbmUtZGVmYXVsdCdcIiAoY2xpY2spPVwidG9nZ2xlKGkpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cImFjdGl2ZUluZGV4ID09PSBpID8gJ3pvbmUtdGl0bGUnOid6b25lLW5vdGl0bGUnXCI+e3sgem9uZS5mcm9tWm9uZSB8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGVjYXNlfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ6b25lLW1ldHJpY3NcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0LXByaW1hcnkgcHgtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1lLTJcIj48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEwXCIgaGVpZ2h0PVwiMTFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMTAgMTFcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMC4yNSA4LjE2Mjg4SDNWOC43ODc4OEMzIDkuMTUyNTUgMi44NTUxMyA5LjUwMjI5IDIuNTk3MjcgOS43NjAxNUMyLjMzOTQxIDEwLjAxOCAxLjk4OTY3IDEwLjE2MjkgMS42MjUgMTAuMTYyOUMxLjI2MDMzIDEwLjE2MjkgMC45MTA1OTEgMTAuMDE4IDAuNjUyNzI4IDkuNzYwMTVDMC4zOTQ4NjYgOS41MDIyOSAwLjI1IDkuMTUyNTUgMC4yNSA4Ljc4Nzg4VjguMTYyODhaTTIuMjUgMi4yMjI4OEMzLjI1IDIuMjIyODggMy43NSAzLjY2Mjg4IDMuNzUgNC42NjI4OEMzLjc1IDUuMTYyODggMy41IDUuNjYyODggMy4yNSA2LjQxMjg4TDMgNy4xNjI4OEgwLjI1QzAuMjUgNi42NjI4OCAwIDUuOTEyODggMCA0LjY2Mjg4QzAgMy40MTI4OCAwLjk5OSAyLjIyMjg4IDIuMjUgMi4yMjI4OFpNOC4yNzcgNi4yMTE4OEw4LjE2ODUgNi44MjczOEM4LjEwMTE3IDcuMTgyNjkgNy44OTY1NiA3LjQ5NzE3IDcuNTk5MDEgNy43MDI3MUM3LjMwMTQ2IDcuOTA4MjQgNi45MzQ5MiA3Ljk4ODI3IDYuNTc4NzggNy45MjU0N0M2LjIyMjYzIDcuODYyNjggNS45MDU1NyA3LjY2MjEgNS42OTYyNiA3LjM2NzJDNS40ODY5NSA3LjA3MjI5IDUuNDAyMjUgNi43MDY4IDUuNDYwNSA2LjM0OTg4TDUuNTY4NSA1LjczNDg4TDguMjc3IDYuMjExODhaTTcuMzM5IDAuMDE1MzgxMkM4LjU3MSAwLjIzMjM4MSA5LjM0OCAxLjU3Nzg4IDkuMTMxIDIuODA4ODhDOC45MTQgNC4wMzk4OCA4LjUzNzUgNC43MzQ4OCA4LjQ1MSA1LjIyNzM4TDUuNzQyNSA0Ljc0OTg4TDUuNjI2NSAzLjk2Nzg4QzUuNTEwNSAzLjE4NTg4IDUuMzUxNSAyLjY0OTg4IDUuNDM4IDIuMTU3ODhDNS42MTE1IDEuMTcyODggNi4zNTQgLTAuMTU4MTE5IDcuMzM5IDAuMDE1MzgxMlpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwOUJGM1wiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+IHt7IHpvbmUuZnJvbVpvbmVGb290ZmFsbENvdW50IH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtZGVmYXVsdCBweC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWUtMlwiPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk00LjUgNS41SDcuNU00LjUgNy41SDcuNU00LjUgMy41SDcuNU0yLjUgMS41QzIuNSAxLjM2NzM5IDIuNTUyNjggMS4yNDAyMSAyLjY0NjQ1IDEuMTQ2NDVDMi43NDAyMSAxLjA1MjY4IDIuODY3MzkgMSAzIDFIOUM5LjEzMjYxIDEgOS4yNTk3OSAxLjA1MjY4IDkuMzUzNTUgMS4xNDY0NUM5LjQ0NzMyIDEuMjQwMjEgOS41IDEuMzY3MzkgOS41IDEuNVYxMUw3Ljc1IDkuNzVMNiAxMUw0LjI1IDkuNzVMMi41IDExVjEuNVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj4ge3sgem9uZS5mcm9tWm9uZU5vYkNvdW50IH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFycm93IGN1cnNvci1wb2ludGVyXCI+PHN2ZyAqbmdJZj1cImFjdGl2ZUluZGV4ID09PSBpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiN1wiIHZpZXdCb3g9XCIwIDAgMTIgN1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0wLjgzMjAzMSA1LjgzMzAxTDUuODMyMDMgMC44MzMwMDhMMTAuODMyIDUuODMzMDFcIiBzdHJva2U9XCIjMzNCNUZGXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjY2NjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCJhY3RpdmVJbmRleCAhPT0gaVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjdcIiB2aWV3Qm94PVwiMCAwIDEyIDdcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0wLjgzMjAzMSAwLjgzMzAwOEw1LjgzMjAzIDUuODMzMDFMMTAuODMyIDAuODMzMDA4XCIgc3Ryb2tlPVwiIzY2NzA4NVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS42NjY2N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gQk9EWSAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInpvbmUtYm9keSBoLTIwMHB4IG92ZXJmbG93LWF1dG9cIiAqbmdJZj1cImFjdGl2ZUluZGV4ID09PSBpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtcmVzcG9uc2l2ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlIHRleHQtbm93cmFwIGJvdHRvbS1ib3JkZXIgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aGVhZD5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwidy01MFwiPlRvIFpvbmU8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5Gb290ZmFsbCAoRW5nYWdlcnMpPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9XCJtZS0yXCI+PHNwYW4gICpuZ0lmPVwidGhpcy5jbGllbnREYXRhPy5pc05PQlwiPk5vQjwvc3Bhbj4gPHNwYW4gICpuZ0lmPVwiIXRoaXMuY2xpZW50RGF0YT8uaXNOT0JcIj5Db252ZXJzaW9uPC9zcGFuPiA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzE1MzIwXzgyNDg4KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNNy45OTg3IDEwLjY2NjNWNy45OTk2N003Ljk5ODcgNS4zMzMwMUg4LjAwNTM2TTE0LjY2NTQgNy45OTk2N0MxNC42NjU0IDExLjY4MTYgMTEuNjgwNiAxNC42NjYzIDcuOTk4NyAxNC42NjYzQzQuMzE2OCAxNC42NjYzIDEuMzMyMDMgMTEuNjgxNiAxLjMzMjAzIDcuOTk5NjdDMS4zMzIwMyA0LjMxNzc4IDQuMzE2OCAxLjMzMzAxIDcuOTk4NyAxLjMzMzAxQzExLjY4MDYgMS4zMzMwMSAxNC42NjU0IDQuMzE3NzggMTQuNjY1NCA3Ljk5OTY3WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzE1MzIwXzgyNDg4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgcm93IG9mIHpvbmUudG9ab25lRGF0YVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57eyByb3cudG9ab25lIH19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3sgcm93LmZvb3RmYWxsIH19ICh7eyByb3cuZW5nYWdlclBlcmNlbnQgfX0lKTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7IHJvdy5ub2IgfX0gKHt7IHJvdy5ub2JQZXJjZW50IH19JSk8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvbmctY29uYXRpbmVyPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgIDwvZGl2PlxyXG5cclxuXHJcbjwvZGl2PiJdfQ==
|
|
389
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiem9uZS1qb3VybmV5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLWFuYWx5c2Utem9uZS9zcmMvbGliL2NvbXBvbmVudHMvem9uZS1qb3VybmV5L3pvbmUtam91cm5leS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1hbmFseXNlLXpvbmUvc3JjL2xpYi9jb21wb25lbnRzL3pvbmUtam91cm5leS96b25lLWpvdXJuZXkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBNEIsS0FBSyxFQUFvRCxTQUFTLEVBQWMsWUFBWSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2pLLE9BQU8sS0FBSyxHQUFHLE1BQU0scUJBQXFCLENBQUM7QUFDM0MsT0FBTyxLQUFLLE9BQU8sTUFBTSwwQkFBMEIsQ0FBQztBQUNwRCxPQUFRLGtCQUFrQixNQUFNLHFDQUFxQyxDQUFDO0FBSXRFLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7Ozs7QUFPMUMsTUFBTSxPQUFPLG9CQUFvQjtJQUtSO0lBQTRCO0lBQW9DO0lBQTZCO0lBQXNCO0lBSmpJLElBQUksQ0FBWTtJQUNkLFVBQVUsQ0FBTTtJQUNmLFVBQVUsQ0FBTTtJQUNmLFFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBQ3pDLFlBQW9CLE9BQW1CLEVBQVMsYUFBMkIsRUFBUyxFQUFvQixFQUFTLE1BQWEsRUFBUyxFQUFlO1FBQWxJLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFBUyxrQkFBYSxHQUFiLGFBQWEsQ0FBYztRQUFTLE9BQUUsR0FBRixFQUFFLENBQWtCO1FBQVMsV0FBTSxHQUFOLE1BQU0sQ0FBTztRQUFTLE9BQUUsR0FBRixFQUFFLENBQWE7SUFBSSxDQUFDO0lBQ2hLLFdBQVcsQ0FB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TyxvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0Usa0JBQWtCOzRMQU1qQixVQUFVO3NCQUFsQixLQUFLO2dCQUNJLFVBQVU7c0JBQWxCLEtBQUs7Z0JBdUVnQixZQUFZO3NCQUF0QyxTQUFTO3VCQUFDLGNBQWM7Z0JBZ0J6QixlQUFlO3NCQURkLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsQ2hhbmdlRGV0ZWN0b3JSZWYsIE9uSW5pdCAsSW5wdXQsIE9uQ2hhbmdlcyxPbkRlc3Ryb3ksU2ltcGxlQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCwgVmlld0NoaWxkLCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgKiBhcyBhbTUgZnJvbSAnQGFtY2hhcnRzL2FtY2hhcnRzNSc7XHJcbmltcG9ydCAqIGFzIGFtNWZsb3cgZnJvbSAnQGFtY2hhcnRzL2FtY2hhcnRzNS9mbG93JztcclxuaW1wb3J0ICBhbTV0aGVtZXNfQW5pbWF0ZWQgZnJvbSAnQGFtY2hhcnRzL2FtY2hhcnRzNS90aGVtZXMvQW5pbWF0ZWQnO1xyXG5pbXBvcnQgeyBab25lU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3pvbmUuc2VydmljZSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgWm9uZXYyU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3pvbmV2Mi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFRvYXN0U2VydmljZSB9IGZyb20gJ3RhbmdvLWFwcC11aS1zaGFyZWQnO1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi16b25lLWpvdXJuZXknLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi96b25lLWpvdXJuZXkuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi96b25lLWpvdXJuZXkuY29tcG9uZW50LnNjc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBab25lSm91cm5leUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSxPbkNoYW5nZXMge1xyXG4gICBwcml2YXRlIHJvb3QhOiBhbTUuUm9vdDtcclxuICAgIEBJbnB1dCgpIGhlYWRlckRhdGEgOmFueTtcclxuICAgICBASW5wdXQoKSBjbGllbnREYXRhIDphbnk7XHJcbiAgICAgICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHNlcnZpY2U6Wm9uZVNlcnZpY2UscHJpdmF0ZSB6b25lVjJTZXJ2aWNlOlpvbmV2MlNlcnZpY2UscHJpdmF0ZSBjZDpDaGFuZ2VEZXRlY3RvclJlZixwcml2YXRlIHJvdXRlcjpSb3V0ZXIscHJpdmF0ZSB0czpUb2FzdFNlcnZpY2UpIHsgfVxyXG5uZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgaWYgKGNoYW5nZXNbJ2hlYWRlckRhdGEnXT8uY3VycmVudFZhbHVlKSB7XHJcbiAgICAgdGhpcy5oZWFkZXJEYXRhID0gY2hhbmdlc1snaGVhZGVyRGF0YSddLmN1cnJlbnRWYWx1ZTtcclxuICB9XHJcbiAgaWYgKGNoYW5nZXNbJ2NsaWVudERhdGEnXT8uY3VycmVudFZhbHVlKSB7XHJcbiAgICAgIHRoaXMuY2xpZW50RGF0YSA9IGNoYW5nZXNbJ2NsaWVudERhdGEnXS5jdXJyZW50VmFsdWU7XHJcbiAgfVxyXG4gIHRoaXMuZ2V0QXZhaWxhYmxlWm9uZXMoKTtcclxuICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxufVxyXG5cclxuXHJcbnpvbmVTaG9wcGVyQW5hbHlzaXM6YW55O1xyXG5idWJibGVDaGFydERhdGE6YW55O1xyXG5vYmplY3Q6YW55O1xyXG5vYmplY3QxOmFueTtcclxuem9uZVNlYXJjaFRleHQ6c3RyaW5nPScnO1xyXG5cclxuc2hvd0Ryb3Bkb3duID0gZmFsc2U7XHJcbnNlYXJjaFRleHQgPSAnJztcclxuem9uZUxpc3Q6YW55PVtdO1xyXG5maWx0ZXJlZFpvbmVzOmFueT1bXTtcclxuXHJcblxyXG56b25lc0luaXRpYWxpemVkID0gZmFsc2U7XHJcbnRlbXBab25lTGlzdDogYW55W10gPSBbXTtcclxudGVtcEZpbHRlcmVkWm9uZXM6IGFueVtdID0gW107XHJcbmRyb3Bkb3duU2VhcmNoVGV4dCA9ICcnO1xyXG5hdmFpbGFibGVab25lczphbnlbXSA9IFtdO1xyXG5cclxuXHJcbmdldEF2YWlsYWJsZVpvbmVzKCkge1xyXG4gIHRoaXMuem9uZVYyU2VydmljZS56b25lcyRcclxuICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgIC5zdWJzY3JpYmUoKHpvbmVzKSA9PiB7XHJcbiAgICAgIGlmICghem9uZXMubGVuZ3RoKXtcclxuICAgICAgICAgIHRoaXMuem9uZUNoYXJ0Tm9EYXRhID0gdHJ1ZTtcclxuICAgICAgICAgIHRoaXMuem9uZUNoYXJ0TG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy56b25lQ2FyZE5vRGF0YSA9IHRydWU7XHJcbiAgICAgICAgICB0aGlzLnpvbmVDYXJkTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5nZXRab25lSm91cm5leShbXSk7XHJcbiAgICAgICAgICB0aGlzLmdldEJ1YmJsZShbXSk7XHJcbiAgICAgIH0gXHJcblxyXG4gICAgIFxyXG4gICAgICB0aGlzLmF2YWlsYWJsZVpvbmVzID0gem9uZXM7XHJcblxyXG4gICAgICBpZiAoIXRoaXMuem9uZXNJbml0aWFsaXplZCkge1xyXG4gICAgICAgIHRoaXMuem9uZUxpc3QgPSB6b25lcy5tYXAoeiA9PiAoe1xyXG4gICAgICAgICAgbmFtZTogei56b25lTmFtZSxcclxuICAgICAgICAgIGNoZWNrZWQ6IHRydWVcclxuICAgICAgICB9KSk7XHJcblxyXG4gICAgICAgIHRoaXMuem9uZXNJbml0aWFsaXplZCA9IHRydWU7XHJcbiAgICAgICAgaWYodGhpcy56b25lTGlzdC5sZW5ndGggPiAwKXtcclxuICAgICAgICAgIHRoaXMuZ2V0Wm9uZUpvdXJuZXkoW10pO1xyXG4gICAgICAgICAgdGhpcy5nZXRCdWJibGUoW10pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLnpvbmVDaGFydE5vRGF0YSA9IHRydWU7XHJcbiAgICAgICAgICB0aGlzLnpvbmVDaGFydExvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIHRoaXMuem9uZUNhcmROb0RhdGEgPSB0cnVlO1xyXG4gICAgICAgICAgdGhpcy56b25lQ2FyZExvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG59XHJcblxyXG5AVmlld0NoaWxkKCd6b25lRHJvcGRvd24nKSB6b25lRHJvcGRvd24hOiBFbGVtZW50UmVmO1xyXG5cclxuXHJcbi8qIE9QRU4gLyBUT0dHTEUgKi9cclxudG9nZ2xlRHJvcGRvd24oZXZlbnQ6IE1vdXNlRXZlbnQpIHtcclxuICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTsgXHJcbiAgdGhpcy5zaG93RHJvcGRvd24gPSAhdGhpcy5zaG93RHJvcGRvd247XHJcblxyXG4gIGlmICh0aGlzLnNob3dEcm9wZG93bikge1xyXG4gICAgdGhpcy50ZW1wWm9uZUxpc3QgPSB0aGlzLnpvbmVMaXN0Lm1hcCgoejphbnkpID0+ICh7IC4uLnogfSkpO1xyXG4gICAgdGhpcy50ZW1wRmlsdGVyZWRab25lcyA9IFsuLi50aGlzLnRlbXBab25lTGlzdF07XHJcbiAgfVxyXG59XHJcblxyXG4vKiDwn5SlIE9VVFNJREUgQ0xJQ0sgSEFORExFUiAqL1xyXG5ASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50J10pXHJcbm9uRG9jdW1lbnRDbGljayhldmVudDogTW91c2VFdmVudCkge1xyXG4gIGlmICghdGhpcy5zaG93RHJvcGRvd24pIHJldHVybjtcclxuXHJcbiAgY29uc3QgY2xpY2tlZEluc2lkZSA9XHJcbiAgICB0aGlzLnpvbmVEcm9wZG93bj8ubmF0aXZlRWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXQpO1xyXG5cclxuICBpZiAoIWNsaWNrZWRJbnNpZGUpIHtcclxuICAgIHRoaXMuc2hvd0Ryb3Bkb3duID0gZmFsc2U7XHJcbiAgfVxyXG59XHJcblxyXG5maWx0ZXJab25lcygpIHtcclxuICBjb25zdCB0ZXh0ID0gdGhpcy5kcm9wZG93blNlYXJjaFRleHQudG9Mb3dlckNhc2UoKTtcclxuICB0aGlzLnRlbXBGaWx0ZXJlZFpvbmVzID0gdGhpcy50ZW1wWm9uZUxpc3QuZmlsdGVyKHogPT5cclxuICAgIHoubmFtZS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHRleHQpXHJcbiAgKTtcclxufVxyXG5cclxuYXBwbHlab25lcygpIHtcclxuICB0aGlzLnpvbmVMaXN0ID0gdGhpcy50ZW1wWm9uZUxpc3QubWFwKHogPT4gKHsgLi4ueiB9KSk7XHJcblxyXG4gIGNvbnN0IGhpZGRlblpvbmVzID0gdGhpcy56b25lTGlzdFxyXG4gICAgLmZpbHRlcigoejogYW55KSA9PiAhei5jaGVja2VkKVxyXG4gICAgLm1hcCgoejogYW55KSA9PiB6Lm5hbWUpO1xyXG5cclxuICB0aGlzLmdldFpvbmVKb3VybmV5KGhpZGRlblpvbmVzKTtcclxuICB0aGlzLmdldEJ1YmJsZShoaWRkZW5ab25lcyk7XHJcbiAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgdGhpcy5kcm9wZG93blNlYXJjaFRleHQgPSAnJztcclxuICB0aGlzLnNob3dEcm9wZG93biA9IGZhbHNlO1xyXG59XHJcblxyXG5yZXNldFpvbmVzKCkge1xyXG4gIC8vIFJlc2V0IGFwcGxpZWQgc3RhdGVcclxuICB0aGlzLnpvbmVMaXN0ID0gdGhpcy56b25lTGlzdC5tYXAoKHo6YW55KSA9PiAoe1xyXG4gICAgLi4ueixcclxuICAgIGNoZWNrZWQ6IHRydWVcclxuICB9KSk7XHJcblxyXG4gIC8vIFN5bmMgdGVtcCBzdGF0ZVxyXG4gIHRoaXMudGVtcFpvbmVMaXN0ID0gdGhpcy56b25lTGlzdC5tYXAoKHo6YW55KSA9PiAoeyAuLi56IH0pKTtcclxuICB0aGlzLnRlbXBGaWx0ZXJlZFpvbmVzID0gWy4uLnRoaXMudGVtcFpvbmVMaXN0XTtcclxuXHJcbiAgdGhpcy5kcm9wZG93blNlYXJjaFRleHQgPSAnJztcclxuXHJcbiAgLy8gQXBwbHkgaW1tZWRpYXRlbHlcclxuICB0aGlzLmdldFpvbmVKb3VybmV5KFtdKTtcclxuICB0aGlzLmdldEJ1YmJsZShbXSk7XHJcblxyXG4gIHRoaXMuc2hvd0Ryb3Bkb3duID0gZmFsc2U7XHJcbn1cclxuZ2V0Wm9uZUpvdXJuZXlFeHBvcnQoKSB7XHJcbiAgdGhpcy5vYmplY3QxID0ge1xyXG4gICAgY2xpZW50SWQ6IHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50LFxyXG4gICAgc3RvcmVJZDogdGhpcy5oZWFkZXJEYXRhPy5zdG9yZXNcclxuICAgICAgLmZpbHRlcigoc3RvcmU6IGFueSkgPT4gc3RvcmUuY2hlY2tlZClcclxuICAgICAgLm1hcCgoc3RvcmU6IGFueSkgPT4gc3RvcmUuc3RvcmVJZCksXHJcbiAgICBmcm9tRGF0ZTogdGhpcy5oZWFkZXJEYXRhPy5kYXRlPy5zdGFydERhdGUsXHJcbiAgICB0b0RhdGU6IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZSxcclxuICAgIG5vYjogdGhpcy5jbGllbnREYXRhPy5pc05PQixcclxuICAgIGhpZGVab25lczogdGhpcy56b25lTGlzdC5maWx0ZXIoKHo6IGFueSkgPT4gIXouY2hlY2tlZCkubWFwKCh6OiBhbnkpID0+IHoubmFtZSksXHJcbiAgICBzZWFyY2g6IHRoaXMuc2VhcmNoVGV4dCB8fCAnJyxcclxuICAgIGlzRXhwb3J0IDogdHJ1ZVxyXG4gIH07XHJcblxyXG4gIHRoaXMuc2VydmljZS5nZXROZXdab25lU2hvcHBlckFuYWx5c2lzRXhwb3J0QXBpKHRoaXMub2JqZWN0MSkuc3Vic2NyaWJlKHtcclxuICAgICAgbmV4dDogKHJlcykgPT4ge1xyXG4gICAgICAgICAgdGhpcy5zZXJ2aWNlLnNhdmVBc0V4Y2VsRmlsZShyZXMsICdab25lU2hvcHBlckFuYWx5c2lzICcpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6ICgoZTphbnkpID0+IHtcclxuICAgICAgICAgIGxldCBlcnJvck1zZyA9ICdTb21ldGhpbmcgd2VudCBXcm9uZy4uJztcclxuICAgICAgICAgIGlmIChlICYmIGUuZXJyb3IgJiYgZS5lcnJvci5lcnJvcikge1xyXG4gICAgICAgICAgICBlcnJvck1zZyA9IGUuZXJyb3IuZXJyb3I7XHJcbiAgICAgICAgICB9IFxyXG4gICAgICAgICAgdGhpcy50cy5nZXRFcnJvclRvYXN0KGVycm9yTXNnKVxyXG4gICAgICAgIH0pXHJcbiAgfSk7XHJcbn1cclxuem9uZUNhcmROb0RhdGEgPSBmYWxzZTtcclxuICAgICAgICB6b25lQ2FyZExvYWRpbmcgPSB0cnVlO1xyXG5nZXRab25lSm91cm5leShoaWRkZW5ab25lczogYW55W10gPSBbXSkge1xyXG4gIHRoaXMuem9uZUNhcmRMb2FkaW5nID0gdHJ1ZTtcclxuICB0aGlzLnpvbmVDYXJkTm9EYXRhID0gZmFsc2U7XHJcbiAgdGhpcy5vYmplY3QxID0ge1xyXG4gICAgY2xpZW50SWQ6IHRoaXMuaGVhZGVyRGF0YT8uY2xpZW50LFxyXG4gICAgc3RvcmVJZDogdGhpcy5oZWFkZXJEYXRhPy5zdG9yZXNcclxuICAgICAgLmZpbHRlcigoc3RvcmU6IGFueSkgPT4gc3RvcmUuY2hlY2tlZClcclxuICAgICAgLm1hcCgoc3RvcmU6IGFueSkgPT4gc3RvcmUuc3RvcmVJZCksXHJcbiAgICBmcm9tRGF0ZTogdGhpcy5oZWFkZXJEYXRhPy5kYXRlPy5zdGFydERhdGUsXHJcbiAgICB0b0RhdGU6IHRoaXMuaGVhZGVyRGF0YT8uZGF0ZT8uZW5kRGF0ZSxcclxuICAgIG5vYjogdGhpcy5jbGllbnREYXRhPy5pc05PQixcclxuICAgIGhpZGVab25lczogaGlkZGVuWm9uZXMsIC8vIOKchSBhbHdheXMgY29ycmVjdFxyXG4gICAgc2VhcmNoOiB0aGlzLnNlYXJjaFRleHQgfHwgJycsXHJcbiAgICBpc0V4cG9ydCA6IGZhbHNlXHJcbiAgfTtcclxuXHJcbiAgdGhpcy5zZXJ2aWNlLmdldE5ld1pvbmVTaG9wcGVyQW5hbHlzaXNBcGkodGhpcy5vYmplY3QxKS5zdWJzY3JpYmUoe1xyXG4gICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT09IDIwMCkge1xyXG4gICAgICAgIHRoaXMuem9uZVNob3BwZXJBbmFseXNpcyA9IHJlcy5kYXRhO1xyXG4gICAgICAgIHRoaXMuem9uZXMgPSB0aGlzLnpvbmVTaG9wcGVyQW5hbHlzaXM/LnpvbmVTaG9wcGVyQW5hbHlzaXMgfHwgW107XHJcbiAgICAgICAgdGhpcy56b25lQ2FyZE5vRGF0YSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuem9uZUNhcmRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy56b25lU2hvcHBlckFuYWx5c2lzID0gbnVsbDtcclxuICAgICAgICB0aGlzLnpvbmVDYXJkTm9EYXRhID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnpvbmVDYXJkTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICB9LFxyXG4gICAgZXJyb3I6ICgpID0+IHtcclxuICAgICAgdGhpcy56b25lU2hvcHBlckFuYWx5c2lzID0gbnVsbDtcclxuICAgICAgdGhpcy56b25lQ2FyZE5vRGF0YSA9IHRydWU7XHJcbiAgICAgIHRoaXMuem9uZUNhcmRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfSk7XHJcbn1cclxuXHJcbnpvbmVDaGFydE5vRGF0YSA9IGZhbHNlO1xyXG4gICAgICAgIHpvbmVDaGFydExvYWRpbmcgPSB0cnVlO1xyXG5nZXRCdWJibGUoaGlkZGVuWm9uZXM6IGFueVtdID0gW10pIHtcclxuICAgdGhpcy56b25lQ2hhcnRMb2FkaW5nID0gdHJ1ZTtcclxuICAgdGhpcy56b25lQ2hhcnROb0RhdGEgPSBmYWxzZTtcclxuICB0aGlzLm9iamVjdCA9IHtcclxuICAgIGNsaWVudElkOiB0aGlzLmhlYWRlckRhdGE/LmNsaWVudCxcclxuICAgIHN0b3JlSWQ6IHRoaXMuaGVhZGVyRGF0YT8uc3RvcmVzLmZpbHRlcigoc3RvcmU6IGFueSkgPT4gc3RvcmUuY2hlY2tlZCkubWFwKChzdG9yZTogYW55KSA9PiBzdG9yZS5zdG9yZUlkKSxcclxuICAgICBmcm9tRGF0ZTogdGhpcy5oZWFkZXJEYXRhPy5kYXRlPy5zdGFydERhdGUsXHJcbiAgICAgIHRvRGF0ZTogdGhpcy5oZWFkZXJEYXRhPy5kYXRlPy5lbmREYXRlLFxyXG4gICAgbm9iOiB0aGlzLmNsaWVudERhdGE/LmlzTk9CLFxyXG4gICAgaGlkZVpvbmVzOiBoaWRkZW5ab25lcyxcclxuXHJcbiAgfTtcclxudGhpcy5zZXJ2aWNlLmdldE5ld1pvbmVTaG9wcGVyQnViYmxlQ2hhcnRBcGkodGhpcy5vYmplY3QpLnN1YnNjcmliZSh7XHJcbiAgICBuZXh0OiAocmVzOmFueSk9PntcclxuICAgICAgaWYocmVzICYmIHJlcy5jb2RlID09PSAyMDApe1xyXG4gICAgICAgIHRoaXMuYnViYmxlQ2hhcnREYXRhID0gcmVzLmRhdGE7XHJcbiAgICAgICAgY29uc29sZS5sb2coJ3pvbmUgam91cm5leSBidWJibGUgY2hhcnQgZGF0YScsdGhpcy5idWJibGVDaGFydERhdGEpO1xyXG4gICAgICAgIHRoaXMuY3JlYXRlQ2hhcnQoKTtcclxuICAgICAgICB0aGlzLnpvbmVDaGFydE5vRGF0YSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuem9uZUNoYXJ0TG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuYnViYmxlQ2hhcnREYXRhID0gbnVsbDtcclxuICAgICAgICAgdGhpcy56b25lQ2hhcnROb0RhdGEgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuem9uZUNoYXJ0TG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICB9LFxyXG4gICAgZXJyb3I6IChlcnI6YW55KT0+e1xyXG4gICAgICB0aGlzLmJ1YmJsZUNoYXJ0RGF0YSA9IG51bGw7XHJcbiAgICAgIHRoaXMuem9uZUNoYXJ0Tm9EYXRhID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnpvbmVDaGFydExvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgLy8gY29uc29sZS5sb2coJ3pvbmUgam91cm5leSBidWJibGUgY2hhcnQgZXJyb3InLGVycik7XHJcbiAgICB9XHJcbiAgfSk7XHJcbiAgXHJcbn1cclxuXHJcbmNyZWF0ZUNoYXJ0KCkge1xyXG4gIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgIGlmICh0aGlzLnJvb3QpIHtcclxuICAgIHRoaXMucm9vdC5kaXNwb3NlKCk7XHJcbiAgfVxyXG4gIHRoaXMucm9vdCA9IGFtNS5Sb290Lm5ldygnY2hhcnRkaXYnKTtcclxuICB0aGlzLnJvb3Quc2V0VGhlbWVzKFtcclxuICAgIGFtNXRoZW1lc19BbmltYXRlZC5uZXcodGhpcy5yb290KVxyXG4gIF0pO1xyXG4gIGNvbnN0IHNlcmllcyA9IHRoaXMucm9vdC5jb250YWluZXIuY2hpbGRyZW4ucHVzaChcclxuICAgIGFtNWZsb3cuQXJjRGlhZ3JhbS5uZXcodGhpcy5yb290LCB7XHJcbiAgICAgIHNvdXJjZUlkRmllbGQ6ICdmcm9tJyxcclxuICAgICAgdGFyZ2V0SWRGaWVsZDogJ3RvJyxcclxuICAgICAgdmFsdWVGaWVsZDogJ3ZhbHVlJyxcclxuICAgICAgb3JpZW50YXRpb246ICdob3Jpem9udGFsJ1xyXG4gICAgfSlcclxuICApO1xyXG5cclxuY29uc3QgdG9vbHRpcCA9IGFtNS5Ub29sdGlwLm5ldyh0aGlzLnJvb3QsIHtcclxuICBnZXRGaWxsRnJvbVNwcml0ZTogZmFsc2UsXHJcbiAgZ2V0U3Ryb2tlRnJvbVNwcml0ZTogZmFsc2UsXHJcbiAgYXV0b1RleHRDb2xvcjogZmFsc2UsXHJcbiAgbGFiZWxUZXh0OlxyXG4gICAgXCJbZm9udFNpemU6MTNweF17c291cmNlSWR9IOKGkiB7dGFyZ2V0SWR9XFxuXCIgK1xyXG4gICAgXCJbIzI5NzlGRl3il48ge3ZhbHVlfSBGb290ZmFsbFsvXVxcblwiICtcclxuICAgIFwiWyMxMTE4Mjdd4pePIHtOb0J9IE5vQlsvXVwiXHJcbn0pO1xyXG5cclxudG9vbHRpcC5nZXQoJ2JhY2tncm91bmQnKT8uc2V0QWxsKHtcclxuICBmaWxsOiBhbTUuY29sb3IoMHhmZmZmZmYpLFxyXG4gIHN0cm9rZTogYW01LmNvbG9yKDB4ZTVlN2ViKSxcclxuICBzaGFkb3dDb2xvcjogYW01LmNvbG9yKDB4MDAwMDAwKSxcclxuICBzaGFkb3dCbHVyOiAxMCxcclxuICBzaGFkb3dPZmZzZXRYOiAwLFxyXG4gIHNoYWRvd09mZnNldFk6IDRcclxufSk7XHJcblxyXG50b29sdGlwLmxhYmVsLnNldEFsbCh7XHJcbiAgcGFkZGluZ1RvcDogOCxcclxuICBwYWRkaW5nQm90dG9tOiA4LFxyXG4gIHBhZGRpbmdMZWZ0OiAxMixcclxuICBwYWRkaW5nUmlnaHQ6IDEyXHJcbn0pO1xyXG5cclxuICB0b29sdGlwLnNldCgncG9pbnRlck9yaWVudGF0aW9uJywgJ2hvcml6b250YWwnKTtcclxuXHJcbiAgc2VyaWVzLmxpbmtzLnRlbXBsYXRlLnNldEFsbCh7XHJcbiAgICB0b29sdGlwOiB0b29sdGlwLFxyXG4gICAgdG9vbHRpcFRleHQ6ICcnIFxyXG4gIH0pO1xyXG5cclxuXHJcbiAgc2VyaWVzLm5vZGVzLmxhYmVscy50ZW1wbGF0ZS5zZXRBbGwoe1xyXG4gICAgdGV4dDogJ3tpZH1cXG57dG90YWx9JyxcclxuICAgIGNlbnRlclg6IGFtNS5wZXJjZW50KDUwKSxcclxuICAgIGNlbnRlclk6IGFtNS5wZXJjZW50KDUwKSxcclxuICAgIHRleHRBbGlnbjogJ2NlbnRlcicsXHJcbiAgICBmb250U2l6ZTogMTEsXHJcbiAgICBmaWxsOiBhbTUuY29sb3IoMHgwMDAwMDApLFxyXG4gICAgLy8gb3ZlcnNpemVkQmVoYXZpb3I6ICd3cmFwJyxcclxuICAgIG1heFdpZHRoOiA5MFxyXG4gIH0pO1xyXG5cclxuXHJcbiAgc2VyaWVzLmJ1bGxldHMucHVzaCgoX3Jvb3QsIF9zZXJpZXMsIGRhdGFJdGVtKSA9PiB7XHJcbiAgICBjb25zdCBidWxsZXQgPSBhbTUuQnVsbGV0Lm5ldyh0aGlzLnJvb3QsIHtcclxuICAgICAgbG9jYXRpb25ZOiBNYXRoLnJhbmRvbSgpLFxyXG4gICAgICBzcHJpdGU6IGFtNS5DaXJjbGUubmV3KHRoaXMucm9vdCwge1xyXG4gICAgICAgIHJhZGl1czogMixcclxuICAgICAgICBmaWxsOiBkYXRhSXRlbS5nZXQoJ3NvdXJjZScpLmdldCgnZmlsbCcpXHJcbiAgICAgIH0pXHJcbiAgICB9KTtcclxuXHJcbiAgICBidWxsZXQuYW5pbWF0ZSh7XHJcbiAgICAgIGtleTogJ2xvY2F0aW9uWScsXHJcbiAgICAgIGZyb206IDAsXHJcbiAgICAgIHRvOiAxLFxyXG4gICAgICBkdXJhdGlvbjogTWF0aC5yYW5kb20oKSAqIDEwMDAgKyAyMDAwLFxyXG4gICAgICAvLyBsb29wczogSW5maW5pdHlcclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiBidWxsZXQ7XHJcbiAgfSk7XHJcblxyXG5cclxuY29uc3Qgbm9kZU9yZGVyID0gKG5hbWU6IHN0cmluZykgPT4ge1xyXG4gIGNvbnNvbGUubG9nKCduYW1lJyxuYW1lKTtcclxuICBpZiAobmFtZSA9PT0gXCJFbnRyeVwiKSByZXR1cm4gMDtcclxuICBpZiAobmFtZSA9PT0gXCJFeGl0XCIpIHJldHVybiA5OTk7XHJcbiAgcmV0dXJuIDE7XHJcbn07XHJcblxyXG5zZXJpZXMuZGF0YS5zZXRBbGwodGhpcy5idWJibGVDaGFydERhdGE/LnpvbmVCdWJibGVDaGFydE1ldHJpY3MpO1xyXG5cclxuQXJyYXkuZnJvbShzZXJpZXMubm9kZXMuY2hpbGRyZW4pLnNvcnQoKGE6IGFueSwgYjogYW55KSA9PiB7XHJcbiAgcmV0dXJuIG5vZGVPcmRlcihhLmRhdGFJdGVtPy5kYXRhQ29udGV4dD8uaWQpIC0gbm9kZU9yZGVyKGIuZGF0YUl0ZW0/LmRhdGFDb250ZXh0Py5pZCk7XHJcbn0pO1xyXG4gIHNlcmllcy5hcHBlYXIoMTAwMCwgMTAwKTtcclxufSwgNTAwKTtcclxufVxyXG5cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5yb290KSB7XHJcbiAgICAgIHRoaXMucm9vdC5kaXNwb3NlKCk7XHJcbiAgICB9XHJcbiAgICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XHJcbiAgICAvLyAgdGhpcy5zdG9wQXV0b1NsaWRlKCk7XHJcbiAgfVxyXG4gXHJcbiAgIHpvbmVzOmFueSA9IFtdO1xyXG5cclxuYWN0aXZlSW5kZXg6IG51bWJlciB8IG51bGwgPSAwO1xyXG5cclxudG9nZ2xlKGluZGV4OiBudW1iZXIpIHtcclxuICB0aGlzLmFjdGl2ZUluZGV4ID0gdGhpcy5hY3RpdmVJbmRleCA9PT0gaW5kZXggPyBudWxsIDogaW5kZXg7XHJcbn1cclxuXHJcbnNlYXJjaE9wZW4oKXtcclxuXHJcbn1cclxuXHJcblxyXG5pc01pbmltaXplZCA9IGZhbHNlO1xyXG5cclxuLy8gZHJhZyBzdXBwb3J0XHJcbmRyYWdnaW5nID0gZmFsc2U7XHJcbm9mZnNldFggPSAwO1xyXG5vZmZzZXRZID0gMDtcclxuXHJcbmZsb2F0aW5nUG9zID0ge1xyXG4gIHRvcDogMTIwLFxyXG4gIGxlZnQ6IHdpbmRvdy5pbm5lcldpZHRoIC0gMzgwXHJcbn07XHJcblxyXG5leHBhbmRDbG9zZSgpIHtcclxuICB0aGlzLmlzTWluaW1pemVkID0gIXRoaXMuaXNNaW5pbWl6ZWQ7XHJcbn1cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5zdGFydERyYWcoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcclxuICBpZiAoIXRoaXMuaXNNaW5pbWl6ZWQpIHJldHVybjtcclxuXHJcbiAgdGhpcy5kcmFnZ2luZyA9IHRydWU7XHJcbiAgdGhpcy5vZmZzZXRYID0gZXZlbnQuY2xpZW50WCAtIHRoaXMuZmxvYXRpbmdQb3MubGVmdDtcclxuICB0aGlzLm9mZnNldFkgPSBldmVudC5jbGllbnRZIC0gdGhpcy5mbG9hdGluZ1Bvcy50b3A7XHJcblxyXG4gIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIHRoaXMub25EcmFnKTtcclxuICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgdGhpcy5zdG9wRHJhZyk7XHJcbn1cclxuXHJcbm9uRHJhZyA9IChldmVudDogTW91c2VFdmVudCkgPT4ge1xyXG4gIGlmICghdGhpcy5kcmFnZ2luZykgcmV0dXJuO1xyXG5cclxuICB0aGlzLmZsb2F0aW5nUG9zLmxlZnQgPSBldmVudC5jbGllbnRYIC0gdGhpcy5vZmZzZXRYO1xyXG4gIHRoaXMuZmxvYXRpbmdQb3MudG9wID0gZXZlbnQuY2xpZW50WSAtIHRoaXMub2Zmc2V0WTtcclxufTtcclxuXHJcbnN0b3BEcmFnID0gKCkgPT4ge1xyXG4gIHRoaXMuZHJhZ2dpbmcgPSBmYWxzZTtcclxuICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCB0aGlzLm9uRHJhZyk7XHJcbiAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2V1cCcsIHRoaXMuc3RvcERyYWcpO1xyXG59O1xyXG5cclxuICBub2JVcGxvYWQoKXtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtcIi9tYW5hZ2UvdHJhZmZpYy9ub2JcIl0pOyBcclxuICB9XHJcbn1cclxuIiwiPCEtLSB6b25lLWpvdXJuZXkuY29tcG9uZW50Lmh0bWwgLS0+XHJcbjxkaXYgY2xhc3M9XCJjYXJkIG15LWNhcmQgbXgtMSBteS0yXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgcHgtMCBteC01IGJvcmRlci0wIHB0LTNcIj5cclxuICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2FyZC1sYWJlbCBtYi0xXCI+Wm9uZS1CYXNlZCBTaG9wcGVyIEFuYWx5c2lzIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTZcIlxyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk03Ljk5ODcgMTAuNjY2M1Y3Ljk5OTY3TTcuOTk4NyA1LjMzMzAxSDguMDA1MzZNMTQuNjY1NCA3Ljk5OTY3QzE0LjY2NTQgMTEuNjgxNiAxMS42ODA2IDE0LjY2NjMgNy45OTg3IDE0LjY2NjNDNC4zMTY4IDE0LjY2NjMgMS4zMzIwMyAxMS42ODE2IDEuMzMyMDMgNy45OTk2N0MxLjMzMjAzIDQuMzE3NzggNC4zMTY4IDEuMzMzMDEgNy45OTg3IDEuMzMzMDFDMTEuNjgwNiAxLjMzMzAxIDE0LjY2NTQgNC4zMTc3OCAxNC42NjU0IDcuOTk5NjdaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjEuM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1zdWIgbWItMVwiPlVuZGVyc3RhbmQgeW91ciBTaG9wcGVycyBqb3VybmV5IGZyb20gb25lIHpvbmUgdG8gYW5vdGhlclxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgPC9oMz5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC10b29sYmFyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyICBwb3NpdGlvbi1yZWxhdGl2ZSBteS0xXCI+XHJcbjxkaXYgY2xhc3M9XCJ6b25lLWRyb3Bkb3duIG1lLTJcIiAgI3pvbmVEcm9wZG93blxyXG4gIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cclxuXHJcbiAgPCEtLSBCVVRUT04gLS0+XHJcbiAgPGJ1dHRvbiBbZGlzYWJsZWRdPVwiIXpvbmVTaG9wcGVyQW5hbHlzaXNcIlxyXG4gICAgY2xhc3M9XCJidG4gYnRuLW91dGxpbmUgdy0xMDAgbWUtMiBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW5cIlxyXG4gICAgKGNsaWNrKT1cInRvZ2dsZURyb3Bkb3duKCRldmVudClcIlxyXG4gID5cclxuICAgIFNob3cgLyBIaWRlIFpvbmVcclxuICAgIDxzcGFuPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCI3XCIgdmlld0JveD1cIjAgMCAxMiA3XCIgZmlsbD1cIm5vbmVcIj5cclxuPHBhdGggZD1cIk0xIDFMNiA2TDExIDFcIiBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuPC9zdmc+PC9zcGFuPlxyXG4gIDwvYnV0dG9uPlxyXG5cclxuICA8IS0tIERST1BET1dOIC0tPlxyXG4gPGRpdiAqbmdJZj1cInNob3dEcm9wZG93blwiIGNsYXNzPVwiZHJvcGRvd24tcGFuZWwgaC0zMDBweCBkLWZsZXggZmxleC1jb2x1bW5cIj5cclxuXHJcbiAgPCEtLSBIRUFERVIgKGZpeGVkKSAtLT5cclxuICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24taGVhZGVyIHB4LTIgcGItMlwiPlxyXG4gICAgPGlucHV0XHJcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxyXG4gICAgICBwbGFjZWhvbGRlcj1cIlNlYXJjaCBab25lXCJcclxuICAgICAgWyhuZ01vZGVsKV09XCJzZWFyY2hUZXh0XCJcclxuICAgICAgKGlucHV0KT1cImZpbHRlclpvbmVzKClcIlxyXG4gICAgLz5cclxuICA8L2Rpdj5cclxuXHJcbiAgPCEtLSBCT0RZIChzY3JvbGxhYmxlIGxpc3QpIC0tPlxyXG4gIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1ib2R5IGZsZXgtZ3Jvdy0xIG92ZXJmbG93LWF1dG8gcHgtMlwiPlxyXG4gICAgPGRpdlxyXG4gICAgICBjbGFzcz1cInpvbmUtaXRlbVwiXHJcbiAgICAgICpuZ0Zvcj1cImxldCB6b25lIG9mIHRlbXBGaWx0ZXJlZFpvbmVzXCJcclxuICAgID5cclxuICAgICAgPGlucHV0XHJcbiAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICBbKG5nTW9kZWwpXT1cInpvbmUuY2hlY2tlZFwiXHJcbiAgICAgIC8+XHJcbiAgICAgIDxzcGFuPnt7IHpvbmUubmFtZSB9fTwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8IS0tIEZPT1RFUiAoZml4ZWQpIC0tPlxyXG4gIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1mb290ZXIgZC1mbGV4IGp1c3RpZnktY29udGVudC1lbmQgZ2FwLTIgcC0yIGJvcmRlci10b3BcIj5cclxuICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXNtIGJ0bi1vdXRsaW5lIHctNTBcIiAoY2xpY2spPVwicmVzZXRab25lcygpXCI+XHJcbiAgICAgIFJlc2V0XHJcbiAgICA8L2J1dHRvbj5cclxuICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXNtIGJ0bi1wcmltYXJ5IHctNTBcIiAoY2xpY2spPVwiYXBwbHlab25lcygpXCI+XHJcbiAgICAgIEFwcGx5XHJcbiAgICA8L2J1dHRvbj5cclxuICA8L2Rpdj5cclxuXHJcbjwvZGl2PlxyXG5cclxuPC9kaXY+XHJcblxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwiZ2V0Wm9uZUpvdXJuZXlFeHBvcnQoKVwiIFtkaXNhYmxlZF09XCIhem9uZVNob3BwZXJBbmFseXNpc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuLW91dGxpbmUgYnRuIGFsaWduLWl0ZW1zLWVuZCB0ZXh0LW5vd3JhcCBpbnZoZWFkZXIgbWUtNFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEV4cG9ydCBJY29uIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xNy41IDEyLjVWMTUuODMzM0MxNy41IDE2LjI3NTQgMTcuMzI0NCAxNi42OTkzIDE3LjAxMTggMTcuMDExOEMxNi42OTkzIDE3LjMyNDQgMTYuMjc1NCAxNy41IDE1LjgzMzMgMTcuNUg0LjE2NjY3QzMuNzI0NjQgMTcuNSAzLjMwMDcyIDE3LjMyNDQgMi45ODgxNiAxNy4wMTE4QzIuNjc1NTkgMTYuNjk5MyAyLjUgMTYuMjc1NCAyLjUgMTUuODMzM1YxMi41TTE0LjE2NjcgNi42NjY2N0wxMCAyLjVNMTAgMi41TDUuODMzMzMgNi42NjY2N00xMCAyLjVWMTIuNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjEuNjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXMtMlwiPjwvc3Bhbj4gRXhwb3J0XHJcbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XHJcblxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIG10LTMgbXgtM1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZXJlZC1ib3ggdy01MCBtZS0yIHB5LTFcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdyb3VwIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBwdC0xIHB4LTNcIj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC10aXRsZSBweS0yXCI+PHN2ZyBjbGFzcz1cIm14LTJcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxOVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjIxXCIgdmlld0JveD1cIjAgMCAxOSAyMVwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTAuNSAxNi4zMjU4SDZWMTcuNTc1OEM2IDE4LjMwNTEgNS43MTAyNyAxOS4wMDQ2IDUuMTk0NTQgMTkuNTIwM0M0LjY3ODgyIDIwLjAzNiAzLjk3OTM1IDIwLjMyNTggMy4yNSAyMC4zMjU4QzIuNTIwNjUgMjAuMzI1OCAxLjgyMTE4IDIwLjAzNiAxLjMwNTQ2IDE5LjUyMDNDMC43ODk3MzEgMTkuMDA0NiAwLjUgMTguMzA1MSAwLjUgMTcuNTc1OFYxNi4zMjU4Wk00LjUgNC40NDU3NkM2LjUgNC40NDU3NiA3LjUgNy4zMjU3NiA3LjUgOS4zMjU3NkM3LjUgMTAuMzI1OCA3IDExLjMyNTggNi41IDEyLjgyNThMNiAxNC4zMjU4SDAuNUMwLjUgMTMuMzI1OCAwIDExLjgyNTggMCA5LjMyNTc2QzAgNi44MjU3NiAxLjk5OCA0LjQ0NTc2IDQuNSA0LjQ0NTc2Wk0xNi41NTQgMTIuNDIzOEwxNi4zMzcgMTMuNjU0OEMxNi4yMDIzIDE0LjM2NTQgMTUuNzkzMSAxNC45OTQzIDE1LjE5OCAxNS40MDU0QzE0LjYwMjkgMTUuODE2NSAxMy44Njk4IDE1Ljk3NjUgMTMuMTU3NiAxNS44NTA5QzEyLjQ0NTMgMTUuNzI1NCAxMS44MTExIDE1LjMyNDIgMTEuMzkyNSAxNC43MzQ0QzEwLjk3MzkgMTQuMTQ0NiAxMC44MDQ1IDEzLjQxMzYgMTAuOTIxIDEyLjY5OThMMTEuMTM3IDExLjQ2OThMMTYuNTU0IDEyLjQyMzhaTTE0LjY3OCAwLjAzMDc2MjRDMTcuMTQyIDAuNDY0NzYyIDE4LjY5NiAzLjE1NTc2IDE4LjI2MiA1LjYxNzc2QzE3LjgyOCA4LjA3OTc2IDE3LjA3NSA5LjQ2OTc2IDE2LjkwMiAxMC40NTQ4TDExLjQ4NSA5LjQ5OTc2TDExLjI1MyA3LjkzNTc2QzExLjAyMSA2LjM3MTc2IDEwLjcwMyA1LjI5OTc2IDEwLjg3NiA0LjMxNTc2QzExLjIyMyAyLjM0NTc2IDEyLjcwOCAtMC4zMTYyMzggMTQuNjc4IDAuMDMwNzYyNFpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiMxRDI5MzlcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvc3ZnPk92ZXJhbGwgRm9vdGZhbGwgOjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxzcGFuPjxzcGFuIGNsYXNzPVwidGV4dC12YWxcIj57e3pvbmVTaG9wcGVyQW5hbHlzaXM/Lk92ZXJhbGxGb290ZmFsbCA/PyAnLS0nfX08L3NwYW4+IDxzcGFuIGNsYXNzPVwidGV4dC1wZXJjIG1zLTFcIj4oe3t6b25lU2hvcHBlckFuYWx5c2lzPy5Db252ZXJzaW9uUGVyY2VudCA/PyAnLS0nfX0gJSk8L3NwYW4+PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGVyZWQtYm94IHctNTAgcHktMVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3JvdXAgZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIHB0LTEgcHgtM1wiPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJ0aGlzLmNsaWVudERhdGE/LmlzTk9CXCIgY2xhc3M9XCJ0ZXh0LXRpdGxlIHB5LTJcIj48c3ZnIGNsYXNzPVwibXgtMlwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNOSAxMUgxNU05IDE1SDE1TTkgN0gxNU01IDNDNSAyLjczNDc4IDUuMTA1MzYgMi40ODA0MyA1LjI5Mjg5IDIuMjkyODlDNS40ODA0MyAyLjEwNTM2IDUuNzM0NzggMiA2IDJIMThDMTguMjY1MiAyIDE4LjUxOTYgMi4xMDUzNiAxOC43MDcxIDIuMjkyODlDMTguODk0NiAyLjQ4MDQzIDE5IDIuNzM0NzggMTkgM1YyMkwxNS41IDE5LjVMMTIgMjJMOC41IDE5LjVMNSAyMlYzWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMUQyOTM5XCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zdmc+IE5vQiA6PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIXRoaXMuY2xpZW50RGF0YT8uaXNOT0JcIiBjbGFzcz1cInRleHQtdGl0bGUgcHktMlwiPjxzdmcgY2xhc3M9XCJteC0yXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk05IDExSDE1TTkgMTVIMTVNOSA3SDE1TTUgM0M1IDIuNzM0NzggNS4xMDUzNiAyLjQ4MDQzIDUuMjkyODkgMi4yOTI4OUM1LjQ4MDQzIDIuMTA1MzYgNS43MzQ3OCAyIDYgMkgxOEMxOC4yNjUyIDIgMTguNTE5NiAyLjEwNTM2IDE4LjcwNzEgMi4yOTI4OUMxOC44OTQ2IDIuNDgwNDMgMTkgMi43MzQ3OCAxOSAzVjIyTDE1LjUgMTkuNUwxMiAyMkw4LjUgMTkuNUw1IDIyVjNaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMxRDI5MzlcIiBzdHJva2Utd2lkdGg9XCIxLjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICA8L3N2Zz4gQ29udmVyc2lvbiA6PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXZhbFwiPnt7em9uZVNob3BwZXJBbmFseXNpcz8uTm9iID8/ICctLSd9fSA8c3BhbiAqbmdJZj1cInRoaXMuY2xpZW50RGF0YT8uaXNOT0JcIiBjbGFzcz1cInB4LTAgY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwibm9iVXBsb2FkKClcIj48c3ZnICBwbGFjZW1lbnQ9XCJ0b3BcIiBuZ2JUb29sdGlwPVwiVXBsb2FkIE5vQlwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjQwXCIgaGVpZ2h0PVwiNDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCA0MCA0MFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBmaWx0ZXI9XCJ1cmwoI2ZpbHRlcjBfZF8xNTEwNl8xMDYwOTApXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3QgeD1cIjJcIiB5PVwiMVwiIHdpZHRoPVwiMzZcIiBoZWlnaHQ9XCIzNlwiIHJ4PVwiOFwiIGZpbGw9XCIjRUFGOEZGXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB4PVwiMi41XCIgeT1cIjEuNVwiIHdpZHRoPVwiMzVcIiBoZWlnaHQ9XCIzNVwiIHJ4PVwiNy41XCIgc3Ryb2tlPVwiI0VBRjhGRlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0yMy4zMzI2IDIyLjMzMzJMMTkuOTk5MiAxOC45OTk5TTE5Ljk5OTIgMTguOTk5OUwxNi42NjU5IDIyLjMzMzJNMTkuOTk5MiAxOC45OTk5VjI2LjQ5OTlNMjYuOTkwOSAyNC4zMjQ5QzI3LjgwMzcgMjMuODgxOCAyOC40NDU4IDIzLjE4MDYgMjguODE1OCAyMi4zMzIxQzI5LjE4NTggMjEuNDgzNSAyOS4yNjI3IDIwLjUzNTkgMjkuMDM0NCAxOS42Mzg4QzI4LjgwNjEgMTguNzQxNyAyOC4yODU1IDE3Ljk0NjIgMjcuNTU0OCAxNy4zNzc4QzI2LjgyNDEgMTYuODA5NCAyNS45MjUgMTYuNTAwNSAyNC45OTkyIDE2LjQ5OTlIMjMuOTQ5MkMyMy42OTcgMTUuNTI0MyAyMy4yMjY5IDE0LjYxODUgMjIuNTc0MiAxMy44NTA3QzIxLjkyMTUgMTMuMDgyOSAyMS4xMDMzIDEyLjQ3MzEgMjAuMTgxIDEyLjA2NzFDMTkuMjU4NyAxMS42NjEgMTguMjU2NCAxMS40Njk0IDE3LjI0OTMgMTEuNTA2NUMxNi4yNDIzIDExLjU0MzYgMTUuMjU2OCAxMS44MDg1IDE0LjM2NjkgMTIuMjgxM0MxMy40NzcgMTIuNzU0MSAxMi43MDU4IDEzLjQyMjUgMTIuMTExNCAxNC4yMzYyQzExLjUxNyAxNS4wNSAxMS4xMTQ4IDE1Ljk4NzkgMTAuOTM1MSAxNi45Nzk0QzEwLjc1NTMgMTcuOTcwOSAxMC44MDI3IDE4Ljk5MDMgMTEuMDczNiAxOS45NjFDMTEuMzQ0NSAyMC45MzE2IDExLjgzMTkgMjEuODI4MSAxMi40OTkyIDIyLjU4MzJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMDA5QkYzXCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlsdGVyIGlkPVwiZmlsdGVyMF9kXzE1MTA2XzEwNjA5MFwiIHg9XCIwXCIgeT1cIjBcIiB3aWR0aD1cIjQwXCIgaGVpZ2h0PVwiNDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXJVbml0cz1cInVzZXJTcGFjZU9uVXNlXCIgY29sb3ItaW50ZXJwb2xhdGlvbi1maWx0ZXJzPVwic1JHQlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PVwiMFwiIHJlc3VsdD1cIkJhY2tncm91bmRJbWFnZUZpeFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUNvbG9yTWF0cml4IGluPVwiU291cmNlQWxwaGFcIiB0eXBlPVwibWF0cml4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz1cIjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwXCIgcmVzdWx0PVwiaGFyZEFscGhhXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlT2Zmc2V0IGR5PVwiMVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249XCIxXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlQ29sb3JNYXRyaXggdHlwZT1cIm1hdHJpeFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM9XCIwIDAgMCAwIDAuMDYyNzQ1MSAwIDAgMCAwIDAuMDk0MTE3NiAwIDAgMCAwIDAuMTU2ODYzIDAgMCAwIDAuMDUgMFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUJsZW5kIG1vZGU9XCJub3JtYWxcIiBpbjI9XCJCYWNrZ3JvdW5kSW1hZ2VGaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0PVwiZWZmZWN0MV9kcm9wU2hhZG93XzE1MTA2XzEwNjA5MFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUJsZW5kIG1vZGU9XCJub3JtYWxcIiBpbj1cIlNvdXJjZUdyYXBoaWNcIiBpbjI9XCJlZmZlY3QxX2Ryb3BTaGFkb3dfMTUxMDZfMTA2MDkwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdD1cInNoYXBlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZpbHRlcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPjwvc3Bhbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJyb3cgZ3gtMCBwLTNcIj5cclxuICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cImlzTWluaW1pemVkID8gJ2NvbC0xMicgOiAnY29sLTgnXCJcclxuICBbc3R5bGUuaGVpZ2h0LnB4XT1cInpvbmVDaGFydE5vRGF0YSA/IDMwMCA6IChpc01pbmltaXplZCA/IDY1MCA6IDU1MClcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInpvbmVDaGFydExvYWRpbmdcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBsb2FkZXIgIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ6b25lQ2hhcnROb0RhdGFcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0xMiBteS02XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNhcmQtYm9keSBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImltZy1zcmNcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9Ob2RhdGExLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhbWFpbnRleHQgbXQtM1wiPk5vIGRhdGEgZm91bmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YXN1YnRleHRcIj5UaGVyZSBpcyBubyByZXN1bHQgZm9yIFpvbmUgQmFzZWQgU2hvcHBlciBBbmFseXNpcyBDaGFydDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIXpvbmVDaGFydE5vRGF0YSAmJiAhem9uZUNoYXJ0TG9hZGluZ1wiIGlkPVwiY2hhcnRkaXZcIiBzdHlsZT1cIndpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7XCI+PC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgW25nQ2xhc3NdPVwiaXNNaW5pbWl6ZWQgPyAnem9uZS1mbG9hdGluZycgOiAnY29sLTQnXCIgW3N0eWxlLnRvcC5weF09XCJpc01pbmltaXplZCA/IGZsb2F0aW5nUG9zLnRvcCA6IG51bGxcIlxyXG4gICAgICAgICAgICBbc3R5bGUubGVmdC5weF09XCJpc01pbmltaXplZCA/IGZsb2F0aW5nUG9zLmxlZnQgOiBudWxsXCIgKG1vdXNlZG93bik9XCJzdGFydERyYWcoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICA8IS0tIChtb3VzZWRvd24pPVwic3RhcnREcmFnKCRldmVudClcIiAtLT5cclxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiem9uZUNhcmRMb2FkaW5nXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbG9hZGVyICBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiem9uZUNhcmROb0RhdGFcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0xMiBteS02XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNhcmQtYm9keSBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImltZy1zcmNcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9Ob2RhdGExLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9kYXRhbWFpbnRleHQgbXQtM1wiPk5vIGRhdGEgZm91bmQ8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vZGF0YXN1YnRleHRcIj5UaGVyZSBpcyBubyByZXN1bHQgZm9yIFpvbmUgQmFzZWQgU2hvcHBlciBBbmFseXNpczwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8bmctY29uYXRpbmVyICpuZ0lmPVwiIXpvbmVDYXJkTm9EYXRhICYmICF6b25lQ2FyZExvYWRpbmdcIiBjbGFzcz1cImNhcmQgXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgYm9yZGVyLTAgcHgtNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiaXNNaW5pbWl6ZWQgPydiZy1zZWNvbmRhcnkgbWluLWgtMzBweCc6ICdiZy1saWdodC1wcmltYXJ5IG1pbi1oLTQ1cHggbWItMidcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydFwiPjxzcGFuICpuZ0lmPVwiaXNNaW5pbWl6ZWRcIiBjbGFzcz1cIm1lLTIgbWItMlwiPjxzdmdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTkgMjBDOC40NSAyMCA3Ljk3OTE3IDE5LjgwNDIgNy41ODc1IDE5LjQxMjVDNy4xOTU4MyAxOS4wMjA4IDcgMTguNTUgNyAxOEM3IDE3LjQ1IDcuMTk1ODMgMTYuOTc5MiA3LjU4NzUgMTYuNTg3NUM3Ljk3OTE3IDE2LjE5NTggOC40NSAxNiA5IDE2QzkuNTUgMTYgMTAuMDIwOCAxNi4xOTU4IDEwLjQxMjUgMTYuNTg3NUMxMC44MDQyIDE2Ljk3OTIgMTEgMTcuNDUgMTEgMThDMTEgMTguNTUgMTAuODA0MiAxOS4wMjA4IDEwLjQxMjUgMTkuNDEyNUMxMC4wMjA4IDE5LjgwNDIgOS41NSAyMCA5IDIwWk0xNSAyMEMxNC40NSAyMCAxMy45NzkyIDE5LjgwNDIgMTMuNTg3NSAxOS40MTI1QzEzLjE5NTggMTkuMDIwOCAxMyAxOC41NSAxMyAxOEMxMyAxNy40NSAxMy4xOTU4IDE2Ljk3OTIgMTMuNTg3NSAxNi41ODc1QzEzLjk3OTIgMTYuMTk1OCAxNC40NSAxNiAxNSAxNkMxNS41NSAxNiAxNi4wMjA4IDE2LjE5NTggMTYuNDEyNSAxNi41ODc1QzE2LjgwNDIgMTYuOTc5MiAxNyAxNy40NSAxNyAxOEMxNyAxOC41NSAxNi44MDQyIDE5LjAyMDggMTYuNDEyNSAxOS40MTI1QzE2LjAyMDggMTkuODA0MiAxNS41NSAyMCAxNSAyMFpNOSAxNEM4LjQ1IDE0IDcuOTc5MTcgMTMuODA0MiA3LjU4NzUgMTMuNDEyNUM3LjE5NTgzIDEzLjAyMDggNyAxMi41NSA3IDEyQzcgMTEuNDUgNy4xOTU4MyAxMC45NzkyIDcuNTg3NSAxMC41ODc1QzcuOTc5MTcgMTAuMTk1OCA4LjQ1IDEwIDkgMTBDOS41NSAxMCAxMC4wMjA4IDEwLjE5NTggMTAuNDEyNSAxMC41ODc1QzEwLjgwNDIgMTAuOTc5MiAxMSAxMS40NSAxMSAxMkMxMSAxMi41NSAxMC44MDQyIDEzLjAyMDggMTAuNDEyNSAxMy40MTI1QzEwLjAyMDggMTMuODA0MiA5LjU1IDE0IDkgMTRaTTE1IDE0QzE0LjQ1IDE0IDEzLjk3OTIgMTMuODA0MiAxMy41ODc1IDEzLjQxMjVDMTMuMTk1OCAxMy4wMjA4IDEzIDEyLjU1IDEzIDEyQzEzIDExLjQ1IDEzLjE5NTggMTAuOTc5MiAxMy41ODc1IDEwLjU4NzVDMTMuOTc5MiAxMC4xOTU4IDE0LjQ1IDEwIDE1IDEwQzE1LjU1IDEwIDE2LjAyMDggMTAuMTk1OCAxNi40MTI1IDEwLjU4NzVDMTYuODA0MiAxMC45NzkyIDE3IDExLjQ1IDE3IDEyQzE3IDEyLjU1IDE2LjgwNDIgMTMuMDIwOCAxNi40MTI1IDEzLjQxMjVDMTYuMDIwOCAxMy44MDQyIDE1LjU1IDE0IDE1IDE0Wk05IDhDOC40NSA4IDcuOTc5MTcgNy44MDQxNyA3LjU4NzUgNy40MTI1QzcuMTk1ODMgNy4wMjA4MyA3IDYuNTUgNyA2QzcgNS40NSA3LjE5NTgzIDQuOTc5MTcgNy41ODc1IDQuNTg3NUM3Ljk3OTE3IDQuMTk1ODMgOC40NSA0IDkgNEM5LjU1IDQgMTAuMDIwOCA0LjE5NTgzIDEwLjQxMjUgNC41ODc1QzEwLjgwNDIgNC45NzkxNyAxMSA1LjQ1IDExIDZDMTEgNi41NSAxMC44MDQyIDcuMDIwODMgMTAuNDEyNSA3LjQxMjVDMTAuMDIwOCA3LjgwNDE3IDkuNTUgOCA5IDhaTTE1IDhDMTQuNDUgOCAxMy45NzkyIDcuODA0MTcgMTMuNTg3NSA3LjQxMjVDMTMuMTk1OCA3LjAyMDgzIDEzIDYuNTUgMTMgNkMxMyA1LjQ1IDEzLjE5NTggNC45NzkxNyAxMy41ODc1IDQuNTg3NUMxMy45NzkyIDQuMTk1ODMgMTQuNDUgNCAxNSA0QzE1LjU1IDQgMTYuMDIwOCA0LjE5NTgzIDE2LjQxMjUgNC41ODc1QzE2LjgwNDIgNC45NzkxNyAxNyA1LjQ1IDE3IDZDMTcgNi41NSAxNi44MDQyIDcuMDIwODMgMTYuNDEyNSA3LjQxMjVDMTYuMDIwOCA3LjgwNDE3IDE1LjU1IDggMTUgOFpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiIzY2NzA4NVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+IFpvbmUgSm91cm5leSA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC10b29sYmFyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIHBvc2l0aW9uLXJlbGF0aXZlIG15LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFpc01pbmltaXplZFwiIChjbGljayk9XCJzZWFyY2hPcGVuKClcIiBjbGFzcz1cIm1lLTNcIj48c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTE5IDE5TDE0LjY1IDE0LjY1TTE3IDlDMTcgMTMuNDE4MyAxMy40MTgzIDE3IDkgMTdDNC41ODE3MiAxNyAxIDEzLjQxODMgMSA5QzEgNC41ODE3MiA0LjU4MTcyIDEgOSAxQzEzLjQxODMgMSAxNyA0LjU4MTcyIDE3IDlaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjOThBMkIzXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAqbmdJZj1cIiFpc01pbmltaXplZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJleHBhbmRDbG9zZSgpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk01IDEySDE5XCIgc3Ryb2tlPVwiIzk4QTJCM1wiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKm5nSWY9XCJpc01pbmltaXplZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJleHBhbmRDbG9zZSgpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xNSAzSDIxTTIxIDNWOU0yMSAzTDE0IDEwTTkgMjFIM00zIDIxVjE1TTMgMjFMMTAgMTRcIiBzdHJva2U9XCIjNjY3MDg1XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIWlzTWluaW1pemVkXCIgY2xhc3M9XCJjYXJkLWJvZHkgaC01MDBweCBvdmVyZmxvdy1hdXRvIHB4LTAgcHktMlwiPlxyXG4gICAgICAgICBcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInpvbmUtY2FyZCBteC0zIFwiICpuZ0Zvcj1cImxldCB6b25lIG9mIHpvbmVzO2xldCBpID0gaW5kZXhcIj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gSEVBREVSIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cImFjdGl2ZUluZGV4ID09PSBpID8gJ3pvbmUtaGVhZGVyJzonem9uZS1kZWZhdWx0J1wiIChjbGljayk9XCJ0b2dnbGUoaSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgW25nQ2xhc3NdPVwiYWN0aXZlSW5kZXggPT09IGkgPyAnem9uZS10aXRsZSc6J3pvbmUtbm90aXRsZSdcIj57eyB6b25lLmZyb21ab25lIHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZWNhc2V9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInpvbmUtbWV0cmljc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtcHJpbWFyeSBweC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWUtMlwiPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTBcIiBoZWlnaHQ9XCIxMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAxMCAxMVwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0wLjI1IDguMTYyODhIM1Y4Ljc4Nzg4QzMgOS4xNTI1NSAyLjg1NTEzIDkuNTAyMjkgMi41OTcyNyA5Ljc2MDE1QzIuMzM5NDEgMTAuMDE4IDEuOTg5NjcgMTAuMTYyOSAxLjYyNSAxMC4xNjI5QzEuMjYwMzMgMTAuMTYyOSAwLjkxMDU5MSAxMC4wMTggMC42NTI3MjggOS43NjAxNUMwLjM5NDg2NiA5LjUwMjI5IDAuMjUgOS4xNTI1NSAwLjI1IDguNzg3ODhWOC4xNjI4OFpNMi4yNSAyLjIyMjg4QzMuMjUgMi4yMjI4OCAzLjc1IDMuNjYyODggMy43NSA0LjY2Mjg4QzMuNzUgNS4xNjI4OCAzLjUgNS42NjI4OCAzLjI1IDYuNDEyODhMMyA3LjE2Mjg4SDAuMjVDMC4yNSA2LjY2Mjg4IDAgNS45MTI4OCAwIDQuNjYyODhDMCAzLjQxMjg4IDAuOTk5IDIuMjIyODggMi4yNSAyLjIyMjg4Wk04LjI3NyA2LjIxMTg4TDguMTY4NSA2LjgyNzM4QzguMTAxMTcgNy4xODI2OSA3Ljg5NjU2IDcuNDk3MTcgNy41OTkwMSA3LjcwMjcxQzcuMzAxNDYgNy45MDgyNCA2LjkzNDkyIDcuOTg4MjcgNi41Nzg3OCA3LjkyNTQ3QzYuMjIyNjMgNy44NjI2OCA1LjkwNTU3IDcuNjYyMSA1LjY5NjI2IDcuMzY3MkM1LjQ4Njk1IDcuMDcyMjkgNS40MDIyNSA2LjcwNjggNS40NjA1IDYuMzQ5ODhMNS41Njg1IDUuNzM0ODhMOC4yNzcgNi4yMTE4OFpNNy4zMzkgMC4wMTUzODEyQzguNTcxIDAuMjMyMzgxIDkuMzQ4IDEuNTc3ODggOS4xMzEgMi44MDg4OEM4LjkxNCA0LjAzOTg4IDguNTM3NSA0LjczNDg4IDguNDUxIDUuMjI3MzhMNS43NDI1IDQuNzQ5ODhMNS42MjY1IDMuOTY3ODhDNS41MTA1IDMuMTg1ODggNS4zNTE1IDIuNjQ5ODggNS40MzggMi4xNTc4OEM1LjYxMTUgMS4xNzI4OCA2LjM1NCAtMC4xNTgxMTkgNy4zMzkgMC4wMTUzODEyWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDA5QkYzXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj4ge3sgem9uZS5mcm9tWm9uZUZvb3RmYWxsQ291bnQgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC1kZWZhdWx0IHB4LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtZS0yXCI+PHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTQuNSA1LjVINy41TTQuNSA3LjVINy41TTQuNSAzLjVINy41TTIuNSAxLjVDMi41IDEuMzY3MzkgMi41NTI2OCAxLjI0MDIxIDIuNjQ2NDUgMS4xNDY0NUMyLjc0MDIxIDEuMDUyNjggMi44NjczOSAxIDMgMUg5QzkuMTMyNjEgMSA5LjI1OTc5IDEuMDUyNjggOS4zNTM1NSAxLjE0NjQ1QzkuNDQ3MzIgMS4yNDAyMSA5LjUgMS4zNjczOSA5LjUgMS41VjExTDcuNzUgOS43NUw2IDExTDQuMjUgOS43NUwyLjUgMTFWMS41WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMzNDQwNTRcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPiB7eyB6b25lLmZyb21ab25lTm9iQ291bnQgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXJyb3cgY3Vyc29yLXBvaW50ZXJcIj48c3ZnICpuZ0lmPVwiYWN0aXZlSW5kZXggPT09IGlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCI3XCIgdmlld0JveD1cIjAgMCAxMiA3XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTAuODMyMDMxIDUuODMzMDFMNS44MzIwMyAwLjgzMzAwOEwxMC44MzIgNS44MzMwMVwiIHN0cm9rZT1cIiMzM0I1RkZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNjY2NjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cImFjdGl2ZUluZGV4ICE9PSBpXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiN1wiIHZpZXdCb3g9XCIwIDAgMTIgN1wiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTAuODMyMDMxIDAuODMzMDA4TDUuODMyMDMgNS44MzMwMUwxMC44MzIgMC44MzMwMDhcIiBzdHJva2U9XCIjNjY3MDg1XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjY2NjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBCT0RZIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiem9uZS1ib2R5IGgtMjAwcHggb3ZlcmZsb3ctYXV0b1wiICpuZ0lmPVwiYWN0aXZlSW5kZXggPT09IGlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1yZXNwb25zaXZlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPVwidGFibGUgdGV4dC1ub3dyYXAgYm90dG9tLWJvcmRlciBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoZWFkPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9XCJ3LTUwXCI+VG8gWm9uZTwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPkZvb3RmYWxsIChFbmdhZ2Vycyk8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cIm1lLTJcIj48c3BhbiAgKm5nSWY9XCJ0aGlzLmNsaWVudERhdGE/LmlzTk9CXCI+Tm9CPC9zcGFuPiA8c3BhbiAgKm5nSWY9XCIhdGhpcy5jbGllbnREYXRhPy5pc05PQlwiPkNvbnZlcnNpb248L3NwYW4+IDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMTUzMjBfODI0ODgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk03Ljk5ODcgMTAuNjY2M1Y3Ljk5OTY3TTcuOTk4NyA1LjMzMzAxSDguMDA1MzZNMTQuNjY1NCA3Ljk5OTY3QzE0LjY2NTQgMTEuNjgxNiAxMS42ODA2IDE0LjY2NjMgNy45OTg3IDE0LjY2NjNDNC4zMTY4IDE0LjY2NjMgMS4zMzIwMyAxMS42ODE2IDEuMzMyMDMgNy45OTk2N0MxLjMzMjAzIDQuMzE3NzggNC4zMTY4IDEuMzMzMDEgNy45OTg3IDEuMzMzMDFDMTEuNjgwNiAxLjMzMzAxIDE0LjY2NTQgNC4zMTc3OCAxNC42NjU0IDcuOTk5NjdaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMTUzMjBfODI0ODhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aGVhZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyICpuZ0Zvcj1cImxldCByb3cgb2Ygem9uZS50b1pvbmVEYXRhXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7IHJvdy50b1pvbmUgfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57eyByb3cuZm9vdGZhbGwgfX0gKHt7IHJvdy5lbmdhZ2VyUGVyY2VudCB9fSUpPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3sgcm93Lm5vYiB9fSAoe3sgcm93Lm5vYlBlcmNlbnQgfX0lKTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9uZy1jb25hdGluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgPC9kaXY+XHJcblxyXG5cclxuPC9kaXY+Il19
|
|
@@ -1014,6 +1014,8 @@ class ZoneJourneyComponent {
|
|
|
1014
1014
|
this.zoneChartLoading = false;
|
|
1015
1015
|
this.zoneCardNoData = true;
|
|
1016
1016
|
this.zoneCardLoading = false;
|
|
1017
|
+
this.getZoneJourney([]);
|
|
1018
|
+
this.getBubble([]);
|
|
1017
1019
|
}
|
|
1018
1020
|
this.availableZones = zones;
|
|
1019
1021
|
if (!this.zonesInitialized) {
|