simpo-component-library 3.6.808 → 3.6.809
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/sections/header-section/header-section.component.mjs +5 -2
- package/esm2022/lib/sections/video-grid-section/video-grid-section.component.mjs +3 -3
- package/esm2022/lib/services/events.service.mjs +2 -1
- package/fesm2022/simpo-component-library.mjs +7 -3
- package/fesm2022/simpo-component-library.mjs.map +1 -1
- package/lib/ecommerce/sections/authentication-required/authentication-required.component.d.ts +1 -1
- package/lib/ecommerce/sections/schemes/schemes.component.d.ts +1 -1
- package/lib/elements/pricing-s1/pricing-s1.component.d.ts +1 -1
- package/lib/sections/banner-carousel/banner-carousel.component.d.ts +1 -1
- package/lib/sections/carousel-banner/carousel-banner.component.d.ts +1 -1
- package/lib/sections/contact-us/contact-us.component.d.ts +1 -1
- package/lib/sections/faq-columns-cards/faq-columns-cards.component.d.ts +1 -1
- package/lib/sections/faq-section/faq-section.component.d.ts +1 -1
- package/lib/sections/header-section/header-section.component.d.ts +1 -0
- package/lib/sections/new-testimonials/new-testimonials.component.d.ts +1 -1
- package/lib/sections/pricing-section/pricing-section.component.d.ts +2 -2
- package/lib/services/events.service.d.ts +1 -0
- package/package.json +1 -1
- package/simpo-component-library-3.6.809.tgz +0 -0
- package/simpo-component-library-3.6.808.tgz +0 -0
|
@@ -52,6 +52,7 @@ export class HeaderSectionComponent {
|
|
|
52
52
|
this.currentPlaceholder = '';
|
|
53
53
|
this.placeholderIndex = 0;
|
|
54
54
|
this.animatePlaceholder = false;
|
|
55
|
+
this._eventSubscriber = null;
|
|
55
56
|
this.toShowInJewellery = false;
|
|
56
57
|
this.passbookAppStatus = false;
|
|
57
58
|
this.showSearchBarMobile = false;
|
|
@@ -200,7 +201,9 @@ export class HeaderSectionComponent {
|
|
|
200
201
|
this.getParentHeight();
|
|
201
202
|
}, 3000);
|
|
202
203
|
this.checkPassbookApp();
|
|
203
|
-
this.
|
|
204
|
+
this._eventSubscriber = this._eventService.menuList.subscribe((response) => {
|
|
205
|
+
this.getMenuItems();
|
|
206
|
+
});
|
|
204
207
|
}
|
|
205
208
|
ngAfterViewInit() {
|
|
206
209
|
this.resizeObserver = new ResizeObserver(() => {
|
|
@@ -492,4 +495,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
492
495
|
type: HostListener,
|
|
493
496
|
args: ['window:resize', ['$event']]
|
|
494
497
|
}] } });
|
|
495
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLXNlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9zZWN0aW9ucy9oZWFkZXItc2VjdGlvbi9oZWFkZXItc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2hlYWRlci1zZWN0aW9uL2hlYWRlci1zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMxRixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sd0VBQXdFLENBQUM7QUFFdEgsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDM0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBRXBHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNqRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JB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QkFDRSxzQkFBc0IsY0FDcEIsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osb0JBQW9CO3dCQUNwQixVQUFVO3dCQUNWLE9BQU87d0JBQ1AsNEJBQTRCO3dCQUM1QixXQUFXO3dCQUNYLHNCQUFzQjt3QkFDdEIsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLGNBQWM7d0JBQ2QsZ0JBQWdCO3dCQUNoQixvQkFBb0I7d0JBQ3BCLGNBQWM7d0JBQ2Qsb0JBQW9CO3dCQUNwQixlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsMEJBQTBCO3dCQUMxQixtQkFBbUI7d0JBQ25CLG1CQUFtQjtxQkFDcEI7OzBCQW9DRSxNQUFNOzJCQUFDLGFBQWE7eUNBL0JkLElBQUk7c0JBQVosS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDdUIsY0FBYztzQkFBMUMsU0FBUzt1QkFBQyxnQkFBZ0I7Z0JBaUczQixRQUFRO3NCQURQLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQTREekMsYUFBYTtzQkFEWixZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBJbmplY3QsIElucHV0LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBIZWFkZXJDb250ZW50TW9kZWwsIEhlYWRlclNlY3Rpb25Nb2RlbCwgSGVhZGVyU3R5bGVNb2RlbCB9IGZyb20gJy4vaGVhZGVyLXNlY3Rpb24ubW9kZWwnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBTaW1wb0J1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2VsZW1lbnRzL3NpbXBvLWJ1dHRvbi9zaW1wby1idXR0b24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0SWNvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBOYXZiYXJCdXR0b25FbGVtZW50Q29tcG9uZW50IH0gZnJvbSAnLi8uLi8uLi9lbGVtZW50cy9uYXZiYXItYnV0dG9uLWVsZW1lbnQvbmF2YmFyLWJ1dHRvbi1lbGVtZW50LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEV2ZW50c1NlcnZpY2UgfSBmcm9tICcuLy4uLy4uL3NlcnZpY2VzL2V2ZW50cy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQmFja2dyb3VuZERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9iYWNrZ3JvdW5kLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvbnRlbnRGaXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGVudC1maXQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgSG92ZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvaG92ZXItZWxlbWVudC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBPdmVybGF5RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL292ZXJsYXktZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgSG92ZXJFbGVtZW50c0NvbXBvbmVudCB9IGZyb20gJy4vLi4vLi4vY29tcG9uZW50cy9ob3Zlci1lbGVtZW50cy9ob3Zlci1lbGVtZW50cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBY3Rpb25Nb2RlbCwgQmFja2dyb3VuZE1vZGVsLCBMYXlPdXRNb2RlbCB9IGZyb20gJy4uLy4uL3N0eWxlcy9zdHlsZS5tb2RlbCc7XHJcbmltcG9ydCB7IENvbG9yRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2NvbG9yLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNpbXBvU3RpY2t5RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL3N0aWNreS1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFNwYWNpbmdIb3Jpem9udGFsRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL3NwYWNpbmctaG9yaXpvbnRhbC5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBTdG9yYWdlU2VydmljZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zdG9yYWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuLi8uLi9lY29tbWVyY2Uvc3R5bGVzL3VzZXIubW9kYWwnO1xyXG5pbXBvcnQgeyBHZW5kZXJJY29uIH0gZnJvbSAnLi4vLi4vcGlwZXMvZ2VuZGVyLnBpcGUnO1xyXG5pbXBvcnQgeyBNYXRCb3R0b21TaGVldE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2JvdHRvbS1zaGVldCc7XHJcbmltcG9ydCB7IENhcnRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9lY29tbWVyY2Uvc2VjdGlvbnMvY2FydC9jYXJ0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEhlYWRlcl9UeXBlLCBQcm9kdWN0Q2FyZFRoZW1lIH0gZnJvbSAnLi4vLi4vc3R5bGVzL2luZGV4JztcclxuaW1wb3J0IHsgTW92aW5nVGV4dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL3NlY3Rpb25zL21vdmluZy10ZXh0L21vdmluZy10ZXh0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1vdmluZ1RleHRNb2RhbCB9IGZyb20gJy4uL21vdmluZy10ZXh0L21vdmluZy10ZXh0Lm1vZGFsJztcclxuaW1wb3J0IHsgUmVzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9yZXN0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMT0NBTF9TVE9SQUdFIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbG9jYWwtc3RvcmFnZS50b2tlbic7XHJcbmltcG9ydCB7IFN0b3JhZ2VMaWtlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvc3RvcmFnZS1saWtlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2ltcG8taGVhZGVyLXNlY3Rpb24nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgU2ltcG9CdXR0b25Db21wb25lbnQsXHJcbiAgICBHZW5kZXJJY29uLFxyXG4gICAgTWF0SWNvbixcclxuICAgIE5hdmJhckJ1dHRvbkVsZW1lbnRDb21wb25lbnQsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIEhvdmVyRWxlbWVudHNDb21wb25lbnQsXHJcbiAgICBCYWNrZ3JvdW5kRGlyZWN0aXZlLFxyXG4gICAgQ29udGVudEZpdERpcmVjdGl2ZSxcclxuICAgIEhvdmVyRGlyZWN0aXZlLFxyXG4gICAgT3ZlcmxheURpcmVjdGl2ZSxcclxuICAgIFNpbXBvU3RpY2t5RGlyZWN0aXZlLFxyXG4gICAgQ29sb3JEaXJlY3RpdmUsXHJcbiAgICBNYXRCb3R0b21TaGVldE1vZHVsZSxcclxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcclxuICAgIE1hdE1lbnVNb2R1bGUsXHJcbiAgICBTcGFjaW5nSG9yaXpvbnRhbERpcmVjdGl2ZSxcclxuICAgIE1vdmluZ1RleHRDb21wb25lbnQsXHJcbiAgICBDb250ZW50Rml0RGlyZWN0aXZlLFxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2hlYWRlci1zZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vaGVhZGVyLXNlY3Rpb24uY29tcG9uZW50LmNzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIEhlYWRlclNlY3Rpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpIGRhdGE/OiBIZWFkZXJTZWN0aW9uTW9kZWw7XHJcbiAgQElucHV0KCkgbmV4dENvbXBvbmVudDogYW55O1xyXG4gIEBJbnB1dCgpIGluZGV4PzogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIGN1c3RvbUNsYXNzPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGVkaXQ/OiBib29sZWFuID0gdHJ1ZTtcclxuICBAVmlld0NoaWxkKFwiY2hpbGRDb250YWluZXJcIikgY2hpbGRDb250YWluZXI6IGFueTtcclxuICBwcml2YXRlIHJlc2l6ZU9ic2VydmVyITogUmVzaXplT2JzZXJ2ZXI7XHJcbiAgcHVibGljIHNjcm9sbFZhbHVlOiBudW1iZXIgPSAwO1xyXG4gIGNvbnRlbnQ/OiBIZWFkZXJDb250ZW50TW9kZWwgfCBhbnk7XHJcbiAgc3R5bGU/OiBIZWFkZXJTdHlsZU1vZGVsXHJcbiAgYWN0aW9uPzogQWN0aW9uTW9kZWxcclxuICBjb2xvciA9ICcjMDAwMDAwJztcclxuICBzZWFyY2hUZXh0OiBzdHJpbmcgPSBcIlwiO1xyXG4gIHRoZW1lID0gUHJvZHVjdENhcmRUaGVtZTtcclxuICBIZWFkZXJTdHlsaW5nID0gSGVhZGVyX1R5cGVcclxuICBwYXJlbnRIZWlnaHQ6IG51bWJlciA9IDcwOyAvLyBEZWZhdWx0IGhlaWdodFxyXG4gIC8vIG1hdERpYWxvZyA9IGluamVjdChNYXREaWFsb2cpO1xyXG4gIGN1cnJlbnRQbGFjZWhvbGRlcjogc3RyaW5nID0gJyc7XHJcbiAgcGxhY2Vob2xkZXJJbmRleDogbnVtYmVyID0gMDtcclxuICBhbmltYXRlUGxhY2Vob2xkZXI6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcblxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2V2ZW50U2VydmljZTogRXZlbnRzU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgbWF0RGlhbG9nOiBNYXREaWFsb2csXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlc3RTZXJ2aWNlOiBSZXN0U2VydmljZSxcclxuICAgIHByaXZhdGUgZXZlbnRTZXJ2aWNlOiBFdmVudHNTZXJ2aWNlLFxyXG4gICAgQEluamVjdChMT0NBTF9TVE9SQUdFKSBwcml2YXRlIHN0b3JhZ2U6IFN0b3JhZ2VMaWtlXHJcbiAgICAvLyBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge1xyXG4gICAgdGhpcy5nZXRTY3JlZW5TaXplKCk7XHJcbiAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnVwZGF0ZUFsbERhdGEoKTtcclxuICB9XHJcbiAgc2VhcmNoQ2hhbmdlVGltZW91dDogYW55O1xyXG4gIHdhaXRCZWZvcmVTZWFyY2goKSB7XHJcbiAgICBjbGVhclRpbWVvdXQodGhpcy5zZWFyY2hDaGFuZ2VUaW1lb3V0KTtcclxuICAgIHRoaXMuc2VhcmNoQ2hhbmdlVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLnNlYXJjaFByb2R1Y3RzKCk7XHJcbiAgICB9LCA1MDApO1xyXG4gIH1cclxuICBzZWFyY2hQcm9kdWN0cygpIHtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2xpc3QnXSwgeyBxdWVyeVBhcmFtczogeyBzZWFyY2hUeHQ6IHRoaXMuc2VhcmNoVGV4dCB9IH0pO1xyXG4gIH1cclxuICBnb1RvRmF2KCkge1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvd2lzaGxpc3QnXSk7XHJcbiAgfVxyXG4gIGdldCBzdHlsZXNMYXlvdXQoKSB7XHJcbiAgICByZXR1cm4geyAuLi50aGlzLnN0eWxlPy5sYXlvdXQgfSBhcyBMYXlPdXRNb2RlbDtcclxuICB9XHJcbiAgZ29Ub0FjY291bnQocmVkaXJlY3RUbzogYW55KSB7XHJcbiAgICBpZiAodGhpcy5zdG9yYWdlU2VydmljZS5nZXRVc2VyKCkpIHtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvcHJvZmlsZSddKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmIChyZWRpcmVjdFRvID09ICdTSUdOVVAnIHx8IHJlZGlyZWN0VG8gPT0gJ0xPR0lOJylcclxuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9sb2dpbiddLCB7IHF1ZXJ5UGFyYW1zOiB7IHJlZGlyZWN0VG86IHJlZGlyZWN0VG8gfSB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldCBsb2dnZWRJbigpIHtcclxuICAgIGlmICh0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldFVzZXIoKSlcclxuICAgICAgcmV0dXJuIHRydWU7XHJcblxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGdldFVzZXJOYW1lKCkge1xyXG4gICAgY29uc3QgdXNlciA9IHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0VXNlcigpO1xyXG4gICAgcmV0dXJuIHVzZXI/LmNvbnRhY3QubmFtZTtcclxuICB9XHJcbiAgLy8gY2hhbmdlUGxhY2Vob2xkZXIoKSB7XHJcbiAgLy8gICB0aGlzLmFuaW1hdGVQbGFjZWhvbGRlciA9IHRydWU7XHJcblxyXG4gIC8vICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgLy8gICAgIHRoaXMucGxhY2Vob2xkZXJJbmRleCA9XHJcbiAgLy8gICAgICAgKHRoaXMucGxhY2Vob2xkZXJJbmRleCArIDEpICVcclxuICAvLyAgICAgICB0aGlzLnN0eWxlPy5zZWFyY2hCYXJQbGFjZWhvbGRlckxpc3QubGVuZ3RoO1xyXG5cclxuICAvLyAgICAgdGhpcy5jdXJyZW50UGxhY2Vob2xkZXIgPVxyXG4gIC8vICAgICAgIHRoaXMuc3R5bGU/LnNlYXJjaEJhclBsYWNlaG9sZGVyTGlzdFt0aGlzLnBsYWNlaG9sZGVySW5kZXhdLnZhbHVlO1xyXG5cclxuICAvLyAgICAgdGhpcy5hbmltYXRlUGxhY2Vob2xkZXIgPSBmYWxzZTtcclxuICAvLyAgIH0sIDQwMCk7IC8vIGFuaW1hdGlvbiBkdXJhdGlvblxyXG4gIC8vIH1cclxuICBnb1RvV2lzaGxpc3QoKSB7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy93aXNobGlzdCddKTtcclxuICB9XHJcbiAgZ29Ub0NhcnQoKSB7XHJcbiAgICBpZiAoZmFsc2UpIHtcclxuICAgICAgdGhpcy5tYXREaWFsb2cub3BlbihDYXJ0Q29tcG9uZW50LCB7IHdpZHRoOiAnMjh2dycsIHBhbmVsQ2xhc3M6ICdzaWRlcGFuZWwtY2xhc3MnLCBkYXRhOiB7IHdpbmRvdzogdHJ1ZSB9IH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvY2FydCddKTtcclxuICAgIH1cclxuICB9XHJcbiAgYXBwbHlGaWx0ZXIodmFsdWU6IGFueSwgdHlwZTogc3RyaW5nKSB7XHJcbiAgICB2YWx1ZSA9IHZhbHVlWzBdPy5yZXBsYWNlKFwiIFwiLCBcIl9cIik7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9saXN0J10sIHsgcXVlcnlQYXJhbXM6IHsgW3R5cGVdOiB2YWx1ZSB9IH0pO1xyXG4gIH1cclxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6c2Nyb2xsJywgWyckZXZlbnQnXSlcclxuICBvblNjcm9sbChldmVudDogYW55KSB7XHJcbiAgICB0aGlzLnNjcm9sbFZhbHVlID0gd2luZG93LnNjcm9sbFk7XHJcbiAgICB0aGlzLmlzU2Nyb2xsZWQgPSB3aW5kb3cuc2Nyb2xsWSA+IDUwO1xyXG4gIH1cclxuICBtb3ZpbmdUZXh0PzogTW92aW5nVGV4dE1vZGFsXHJcbiAgdG9TaG93SW5KZXdlbGxlcnk6IGJvb2xlYW4gPSBmYWxzZVxyXG4gIGRpZmZlcjogYW55O1xyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jb250ZW50ID0gdGhpcy5kYXRhPy5jb250ZW50O1xyXG4gICAgdGhpcy5zdHlsZSA9IHRoaXMuZGF0YT8uc3R5bGVzO1xyXG4gICAgdGhpcy5hY3Rpb24gPSB0aGlzLmRhdGE/LmFjdGlvbjtcclxuICAgIHRoaXMuYWN0aXZhdGVkUm91dGUucXVlcnlQYXJhbXMuc3Vic2NyaWJlKChxUGFyYW0pID0+IHtcclxuICAgICAgdGhpcy5zZWFyY2hUZXh0ID0gcVBhcmFtW1wic2VhcmNoVHh0XCJdO1xyXG4gICAgfSlcclxuICAgIC8vIHRoaXMuZXZlbnRTZXJ2aWNlLmFjdGl2YXRlU21hcnRTZWFyY2guc3Vic2NyaWJlKChyZXM6IGJvb2xlYW4pID0+IHtcclxuICAgIC8vICAgaWYgKHRoaXMuc3R5bGU/LnNlYXJjaEJhclBsYWNlaG9sZGVyTGlzdD8ubGVuZ3RoID4gMCAmJiByZXMpIHtcclxuICAgIC8vICAgICB0aGlzLmN1cnJlbnRQbGFjZWhvbGRlciA9IHRoaXMuc3R5bGU/LnNlYXJjaEJhclBsYWNlaG9sZGVyTGlzdFswXS52YWx1ZTtcclxuXHJcbiAgICAvLyAgICAgc2V0SW50ZXJ2YWwoKCkgPT4ge1xyXG4gICAgLy8gICAgICAgdGhpcy5jaGFuZ2VQbGFjZWhvbGRlcigpO1xyXG4gICAgLy8gICAgIH0sIDMwMDApO1xyXG4gICAgLy8gICB9XHJcbiAgICAvLyB9KVxyXG4gICAgaWYgKHdpbmRvdz8ubG9jYXRpb24/Lm9yaWdpbj8uaW5jbHVkZXMoJ2NhcmF0bGFuZScpIHx8IHdpbmRvdz8ubG9jYXRpb24/Lm9yaWdpbj8uaW5jbHVkZXMoJ29ycmEnKSkge1xyXG4gICAgICB0aGlzLnRvU2hvd0luSmV3ZWxsZXJ5ID0gdHJ1ZTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmlzRWNvbW1lcmNlV2Vic2l0ZSkge1xyXG4gICAgICB0aGlzLmdldENhdGVnb3JpZXNIZWFkZXIoKTtcclxuICAgIH1cclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLmdldFBhcmVudEhlaWdodCgpXHJcbiAgICB9LCAzMDAwKVxyXG4gICAgdGhpcy5jaGVja1Bhc3Nib29rQXBwKCk7XHJcbiAgICB0aGlzLmdldE1lbnVJdGVtcygpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5yZXNpemVPYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcigoKSA9PiB7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuZ2V0UGFyZW50SGVpZ2h0KClcclxuICAgICAgfSwgMTAwMClcclxuICAgIH0pO1xyXG4gICAgdGhpcy5yZXNpemVPYnNlcnZlci5vYnNlcnZlKHRoaXMuY2hpbGRDb250YWluZXIubmF0aXZlRWxlbWVudCk7XHJcbiAgfVxyXG4gIHBhc3Nib29rQXBwU3RhdHVzOiBib29sZWFuID0gZmFsc2U7XHJcbiAgY2hlY2tQYXNzYm9va0FwcCgpIHtcclxuICAgIGNvbnN0IGRldGFpbHMgPSB0aGlzLnN0b3JhZ2UuZ2V0SXRlbSgnYklkJyk7XHJcbiAgICBjb25zdCBiSWQgPSBkZXRhaWxzID8/ICcnO1xyXG4gICAgdGhpcy5yZXN0U2VydmljZS5QYXNzYm9va0FwcFN0YXR1cyhiSWQpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgaWYgKHJlcz8uZGF0YSkge1xyXG4gICAgICAgIHRoaXMucGFzc2Jvb2tBcHBTdGF0dXMgPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuICBzaG93U2VhcmNoQmFyTW9iaWxlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgc2hvd0Ryb3Bkb3duRGVza3RvcFNlYXJjaDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGlzTmF2YmFyT3BlbjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHNjcmVlbldpZHRoOiBudW1iZXIgPSA0NzU7XHJcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFsnJGV2ZW50J10pXHJcbiAgZ2V0U2NyZWVuU2l6ZShldmVudD86IG51bWJlcikge1xyXG4gICAgdGhpcy5zY3JlZW5XaWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoO1xyXG4gIH1cclxuICBoZWlnaHQ6IGFueVxyXG4gIGdldFBhcmVudEhlaWdodCgpIHtcclxuICAgIHRoaXMuaGVpZ2h0ID0gdGhpcy5jaGlsZENvbnRhaW5lcj8ubmF0aXZlRWxlbWVudD8uc2Nyb2xsSGVpZ2h0O1xyXG4gICAgaWYgKHRoaXMubmV4dENvbXBvbmVudD8uc3R5bGVzPy5tZXJnZSlcclxuICAgICAgdGhpcy5ldmVudFNlcnZpY2UuZWxlbWVudEhlaWdodC5lbWl0KHRoaXMuaGVpZ2h0KVxyXG4gICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KFwiLS1tYXJnaW4tdG9wXCIsIHRoaXMuaGVpZ2h0ICsgXCJweFwiKVxyXG4gIH1cclxuICBnZXQgZ2V0RHJvcGRvd25MaW5rcygpIHtcclxuICAgIGlmICh0aGlzLmNvbnRlbnQ/LmVjb21saW5rcyAmJiB0aGlzLmlzRWNvbW1lcmNlV2Vic2l0ZSlcclxuICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuY29udGVudD8uZWNvbWxpbmtzKTtcclxuICAgIHJldHVybiBbXTtcclxuICB9XHJcbiAgZ2V0IGlzRWNvbW1lcmNlV2Vic2l0ZSgpIHtcclxuICAgIHJldHVybiB0aGlzLmRhdGE/LnR5cGUgPT0gXCJFX0NPTU1FUkNFXCI7XHJcbiAgfVxyXG5cclxuICBjbG9zZSgpIHtcclxuICAgIHRoaXMuaXNOYXZiYXJPcGVuID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBzaG93RWRpdG9yczogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBzaG93RWRpdFRhYnMoaXNTaG93OiBib29sZWFuKSB7XHJcbiAgICB0aGlzLnNob3dFZGl0b3JzID0gaXNTaG93O1xyXG4gIH1cclxuICBnb1RvSG9tZSgpIHtcclxuICAgIGlmICh0aGlzLnN0b3JhZ2UuZ2V0SXRlbSgnUkVRVUVTVF9GUk9NJykgPT09ICdFX0NPTU1FUkNFJylcclxuICAgICAgcmV0dXJuO1xyXG5cclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnJ10pO1xyXG4gIH1cclxuICBnZXQgaXNIZWFkZXJTdGlja3koKSB7XHJcbiAgICByZXR1cm4gdGhpcy5kYXRhPy5zdHlsZXM/LnN0aWNreTtcclxuICB9XHJcbiAgZ2V0IGJhY2tncm91bmRJbmZvKCkge1xyXG4gICAgbGV0IGJhY2tncm91bmQ6IEJhY2tncm91bmRNb2RlbCB8IHt9ID0ge307XHJcbiAgICB0aGlzLmdldFBhcmVudEhlaWdodCgpO1xyXG4gICAgcmV0dXJuIHRoaXMubmV4dENvbXBvbmVudD8uc3R5bGVzPy5tZXJnZSAmJiB0aGlzLnNjcm9sbFZhbHVlID09IDAgJiYgIXRoaXMuaXNNb2JpbGUgPyB7IC4uLnRoaXMubmV4dENvbXBvbmVudC5zdHlsZXMuYmFja2dyb3VuZCB9IDogeyAuLi50aGlzLmRhdGE/LnN0eWxlcy5iYWNrZ3JvdW5kIH07XHJcbiAgfVxyXG4gIGdldCBzaW1wb0NvbG9yKCkge1xyXG4gICAgcmV0dXJuIHRoaXMubmV4dENvbXBvbmVudD8uc3R5bGVzPy5tZXJnZSA/ICh0aGlzLnNjcm9sbFZhbHVlID4gMCA/IHRoaXMuc3R5bGU/LmJhY2tncm91bmQuY29sb3IgOiB0aGlzLm5leHRDb21wb25lbnQuc3R5bGVzPy5iYWNrZ3JvdW5kPy5jb2xvcikgOiB0aGlzLnN0eWxlPy5iYWNrZ3JvdW5kPy5jb2xvcjtcclxuICB9XHJcbiAgZ2V0IGFjY2VudENvbG9yKCkge1xyXG4gICAgcmV0dXJuIHRoaXMubmV4dENvbXBvbmVudD8uc3R5bGVzPy5tZXJnZSA/ICh0aGlzLnNjcm9sbFZhbHVlID4gMCA/IHRoaXMuc3R5bGU/LmJhY2tncm91bmQ/LmFjY2VudENvbG9yIDogdGhpcy5uZXh0Q29tcG9uZW50LnN0eWxlcz8uYmFja2dyb3VuZD8uYWNjZW50Q29sb3IpIDogdGhpcy5zdHlsZT8uYmFja2dyb3VuZD8uYWNjZW50Q29sb3I7XHJcbiAgfVxyXG4gIGdldCBpc1RyYW5zcGFyZW50KCkge1xyXG4gICAgcmV0dXJuIHRoaXMubmV4dENvbXBvbmVudD8uc3R5bGVzPy5tZXJnZSAmJiB0aGlzLnNjcm9sbFZhbHVlID09IDA7XHJcbiAgfVxyXG4gIHJlZGlyZWN0VG8oY29udGVudDogYW55KSB7XHJcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UuYnV0dG9uUmVkaXJlY3Rpb24uZW1pdCh7IGRhdGE6IGNvbnRlbnQgfSk7XHJcbiAgfVxyXG5cclxuICBzaG93U2VhcmNoQmFyOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIGdldCBpc0NvbXBvbmVudE1lcmdlZCgpIHtcclxuICAgIHJldHVybiB0aGlzLm5leHRDb21wb25lbnQ/LnN0eWxlcz8ubWVyZ2U7XHJcbiAgfVxyXG4gIGVkaXRTZWN0aW9uKCkge1xyXG4gICAgdGhpcy5fZXZlbnRTZXJ2aWNlLnRvZ2dsZUVkaXRvckV2ZW50LmVtaXQoZmFsc2UpO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuX2V2ZW50U2VydmljZS5lZGl0U2VjdGlvbi5lbWl0KHsgZGF0YTogdGhpcy5kYXRhIH0pO1xyXG4gICAgfSwgMTAwKTtcclxuICB9XHJcblxyXG4gIGdldCBjYW5TaG93TW9iaWxlRm9vdGVyKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuaXNFY29tbWVyY2VXZWJzaXRlO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHNob3dNb2JpbGVIb21lSWNvbigpIHtcclxuICAgIGNvbnN0IHVybCA9IHdpbmRvdy5sb2NhdGlvbi5ocmVmO1xyXG4gICAgcmV0dXJuICEodXJsLmluY2x1ZGVzKFwiY2FydFwiKSB8fCB1cmwuaW5jbHVkZXMoXCJwcm9maWxlXCIpIHx8IHVybC5pbmNsdWRlcyhcIndpc2hsaXN0XCIpKTtcclxuICB9XHJcbiAgZ2V0IGdldENhcnRJdGVtc0NvdW50KCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yYWdlU2VydmljZS5nZXRUb3RhbENhcnRJdGVtcztcclxuICB9XHJcbiAgZ2V0IGdldENhcnRUb3RhbEFtb3VudCgpIHtcclxuICAgIC8vIGNvbnNvbGUubG9nKHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0Q2FydEFtb3VudCgpKTtcclxuICAgIC8vIHJldHVybiB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldENhcnRBbW91bnQoKTtcclxuICAgIHJldHVybiB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldENhcnRUb3RhbEFtb3VudDtcclxuICB9XHJcbiAgZ2V0IGdldEhlYWRlclN0eWxpbmcoKTogSGVhZGVyX1R5cGUgfCB1bmRlZmluZWQge1xyXG4gICAgcmV0dXJuIHRoaXMuc3R5bGU/LnN0eWxpbmc7XHJcbiAgfVxyXG4gIGdldCBpc01vYmlsZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB3aW5kb3cuaW5uZXJXaWR0aCA8IDQ3NTtcclxuICB9XHJcbiAgZ2V0S2V5cyhvYmplY3Q6IGFueSk6IHN0cmluZ1tdIHtcclxuICAgIHJldHVybiBPYmplY3Qua2V5cyhvYmplY3QpO1xyXG4gIH1cclxuICBnZXRWYWx1ZXMob2JqZWN0OiBhbnkpOiB1bmtub3duW10ge1xyXG4gICAgY29uc3Qga2V5czogdW5rbm93bltdID0gW107XHJcbiAgICBvYmplY3QuZm9yRWFjaCgoa2V5OiBhbnkpID0+IGtleXMucHVzaChPYmplY3QudmFsdWVzKGtleSkpKTtcclxuICAgIHJldHVybiBbLi4ubmV3IFNldChrZXlzKV07XHJcbiAgfVxyXG4gIGdldCB1c2VyR2VuZGVyKCkge1xyXG4gICAgY29uc3QgdXNlciA9ICh0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldFVzZXIoKSBhcyBVc2VyKTtcclxuICAgIGlmICh1c2VyKVxyXG4gICAgICByZXR1cm4gdXNlci5nZW5kZXI7XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIGdldCBnZXROYXZiYXJCdXR0b24oKSB7XHJcbiAgICBsZXQgY291bnQ6IG51bWJlciA9IDA7XHJcbiAgICBsZXQgcGFnZTogYW55W10gPSBbXVxyXG4gICAgZm9yIChsZXQgYnV0dG9uIG9mIHRoaXMuY29udGVudD8ubmF2YmFyQnV0dG9ucyB8fCBbXSkge1xyXG4gICAgICBpZiAoW1xyXG4gICAgICAgICdIb21lJyxcclxuICAgICAgICAnUHJvZHVjdCBEZXNjcmlwdGlvbicsXHJcbiAgICAgICAgJ0NhcnQnLFxyXG4gICAgICAgICdXaXNobGlzdCcsXHJcbiAgICAgICAgJ1VzZXIgcHJvZmlsZScsXHJcbiAgICAgICAgJ1Byb2R1Y3QgTGlzdCcsXHJcbiAgICAgICAgJ0NoZWNrb3V0JyxcclxuICAgICAgICAnQXV0aCcsXHJcbiAgICAgICAgJ1BheW1lbnQgVmVyaWZpY2F0aW9uJyxcclxuICAgICAgICAnTGlzdCBDYXRlZ29yeScsXHJcbiAgICAgICAgJ0F1dGhlbnRpY2F0aW9uIFJlcXVpcmVkJ1xyXG4gICAgICBdLmluY2x1ZGVzKGJ1dHRvbi5sYWJlbCkpIHtcclxuICAgICAgICBjb250aW51ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKGNvdW50IDwgNiAmJiBidXR0b24uc2hvd0hlYWRlcikge1xyXG4gICAgICAgIHBhZ2UucHVzaChidXR0b24pO1xyXG4gICAgICAgIGNvdW50Kys7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gcGFnZTtcclxuICB9XHJcblxyXG5cclxuICBpc1Njcm9sbGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgLy8gQEhvc3RMaXN0ZW5lcignd2luZG93OnNjcm9sbCcsIFtdKVxyXG4gIC8vIG9uV2luZG93U2Nyb2xsKCkge1xyXG4gIC8vICAgdGhpcy5pc1Njcm9sbGVkID0gIHdpbmRvdy5zY3JvbGxZID4gNTA7XHJcbiAgLy8gfVxyXG4gIHNldENvbG9yKCkge1xyXG4gICAgY29uc3QgdGhyZXNob2xkID0gMTMwOyAvLyBBZGp1c3QgdGhpcyB0aHJlc2hvbGQgYXMgbmVlZGVkXHJcbiAgICBjb25zdCByID0gcGFyc2VJbnQodGhpcy5iYWNrZ3JvdW5kSW5mby5hY2NlbnRDb2xvci5zbGljZSgxLCAzKSwgMTYpO1xyXG4gICAgY29uc3QgZyA9IHBhcnNlSW50KHRoaXMuYmFja2dyb3VuZEluZm8uYWNjZW50Q29sb3Iuc2xpY2UoMywgNSksIDE2KTtcclxuICAgIGNvbnN0IGIgPSBwYXJzZUludCh0aGlzLmJhY2tncm91bmRJbmZvLmFjY2VudENvbG9yLnNsaWNlKDUsIDcpLCAxNik7XHJcbiAgICBjb25zdCBicmlnaHRuZXNzID0gKHIgKiAyOTkgKyBnICogNTg3ICsgYiAqIDExNCkgLyAxMDAwO1xyXG5cclxuICAgIHJldHVybiBicmlnaHRuZXNzID4gdGhyZXNob2xkID8gJyMwMDAwMDAnIDogJyNmZmZmZmYnO1xyXG4gIH1cclxuICBzaG93TGlzdDogYm9vbGVhbiA9IGZhbHNlXHJcbiAgc2hvd0NvbGxlY3Rpb25zOiBib29sZWFuID0gZmFsc2U7XHJcbiAgY2F0ZWdvcnlMaXN0OiBhbnk7XHJcbiAgY29sbGVjdGlvbkxpc3Q6IGFueTtcclxuICBzZWxlY3RlZENhdGVnb3J5OiBhbnk7XHJcbiAgc3RvcmVBdmFpYWJsZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGdldENhdGVnb3JpZXNIZWFkZXIoKSB7XHJcbiAgICB0aGlzLnJlc3RTZXJ2aWNlLmdldENhdGVnb3JpZXNIZWFkZXJEYXRhKCkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICB0aGlzLnN0b3JlQXZhaWFibGUgPSByZXM/LmRhdGE/LnN0b3JlQXZhaWxhYmxlO1xyXG4gICAgICB0aGlzLnNjaGVtZUF2YWlsYWJsZSA9IHJlcz8uZGF0YT8uc2NoZW1lc0F2YWlsYWJsZVxyXG4gICAgICB0aGlzLmNhdGVnb3J5TGlzdCA9IHJlcz8uZGF0YT8uY2F0ZWdvcnlEZXRhaWxzO1xyXG4gICAgICB0aGlzLmNvbGxlY3Rpb25MaXN0ID0gcmVzPy5kYXRhPy5pdGVtQ29sbGVjdGlvbnM7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgcmVzdHJpY3RJblBhZ2VzKCkge1xyXG4gICAgbGV0IHBhdGhuYW1lID0gd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lO1xyXG4gICAgaWYgKHBhdGhuYW1lLmluY2x1ZGVzKCcvbG9naW4nKSkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcbiAgcmVzdHJpY3RDYXJ0QmFySW5QYWdlcygpIHtcclxuICAgIGxldCBwYXRobmFtZSA9IHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZTtcclxuICAgIGlmIChwYXRobmFtZS5pbmNsdWRlcygnL2xvZ2luJykgfHwgcGF0aG5hbWUuaW5jbHVkZXMoJy9jYXJ0JykgfHwgcGF0aG5hbWUuaW5jbHVkZXMoJy93aXNobGlzdCcpIHx8IHBhdGhuYW1lLmluY2x1ZGVzKCcvZGV0YWlscycpKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuICBzY2hlbWVBdmFpbGFibGU6IGJvb2xlYW4gPSBmYWxzZVxyXG4gIGdvVG9TdG9yZXMoKSB7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9zdG9yZS1saXN0J10pO1xyXG4gIH1cclxuICBPYmplY3QgPSBPYmplY3RcclxuICBhcHBseUZpbHRlclRvTGlzdChvYmo6IGFueSwgdHlwZTogYW55KSB7XHJcbiAgICBpZiAodHlwZSA9PSAncHJpY2UnKSB7XHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2xpc3QnXSwgeyBxdWVyeVBhcmFtczogeyBjYXRlZ29yeTogdGhpcy5zZWxlY3RlZENhdGVnb3J5Py5jYXRlZ29yeU5hbWUsIG1pblByaWNlOiBvYmo/Lm1pblByaWNlLCBtYXhQcmljZTogb2JqPy5tYXhQcmljZSwgcGFnZU5vOiAxIH0gfSk7XHJcbiAgICB9XHJcbiAgICBpZiAodHlwZSA9PSAnY29sbGVjdGlvbicpIHtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvbGlzdCddLCB7IHF1ZXJ5UGFyYW1zOiB7IGNhdGVnb3J5OiB0aGlzLnNlbGVjdGVkQ2F0ZWdvcnk/LmNhdGVnb3J5TmFtZSwgY29sbGVjdGlvbnM6IG9iaj8ucmVwbGFjZUFsbChcIiBcIiwgJ18nKSwgcGFnZU5vOiAxIH0gfSk7XHJcbiAgICB9XHJcbiAgICBpZiAodHlwZSA9PSAnY29sbGVjdGlvbnMnKSB7XHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2xpc3QnXSwgeyBxdWVyeVBhcmFtczogeyBjb2xsZWN0aW9uczogb2JqPy5yZXBsYWNlQWxsKFwiIFwiLCAnXycpLCBwYWdlTm86IDEgfSB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGZpbHRlckJ5Q2F0ZWdvcnkoKSB7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9saXN0J10sIHsgcXVlcnlQYXJhbXM6IHsgY2F0ZWdvcnk6IHRoaXMuc2VsZWN0ZWRDYXRlZ29yeT8uY2F0ZWdvcnlOYW1lLCBwYWdlTm86IDEgfSB9KTtcclxuICB9XHJcblxyXG4gIHNob3dQaW5jb2RlSW5wdXQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwaW5jb2RlOiBhbnkgPSB0aGlzLnN0b3JhZ2UuZ2V0SXRlbSgncGluY29kZScpID8/IFwiXCI7XHJcbiAgZ2V0UGluY29kZTogc3RyaW5nID0gdGhpcy5zdG9yYWdlLmdldEl0ZW0oJ3BpbmNvZGUnKSB8fCAnJztcclxuICBwaW5FcnJvcjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHNldFBpbmNvZGUoKSB7XHJcbiAgICBpZiAodGhpcy5waW5jb2RlICYmIHRoaXMucGluY29kZT8ubGVuZ3RoID09IDYpIHtcclxuICAgICAgdGhpcy5zdG9yYWdlLnNldEl0ZW0oJ3BpbmNvZGUnLCB0aGlzLnBpbmNvZGUpO1xyXG4gICAgICB0aGlzLmdldFBpbmNvZGUgPSB0aGlzLnN0b3JhZ2UuZ2V0SXRlbSgncGluY29kZScpIHx8ICcnO1xyXG4gICAgICB0aGlzLnBpbkVycm9yID0gZmFsc2U7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnBpbkVycm9yID0gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNob3dMb2dpbjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBnb1RvU2NoZW1lcygpIHtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL3NjaGVtZS1lbnJvbGxtZW50J10pO1xyXG4gIH1cclxuXHJcbiAgZ2V0UkdCQShiZ0NvbG9yOiBhbnksIG9wYWNpdHk6IG51bWJlcik6IGFueSB7XHJcbiAgICBjb25zdCByID0gcGFyc2VJbnQoYmdDb2xvci5zbGljZSgxLCAzKSwgMTYpO1xyXG4gICAgY29uc3QgZyA9IHBhcnNlSW50KGJnQ29sb3Iuc2xpY2UoMywgNSksIDE2KTtcclxuICAgIGNvbnN0IGIgPSBwYXJzZUludChiZ0NvbG9yLnNsaWNlKDUsIDcpLCAxNik7XHJcbiAgICByZXR1cm4gYHJnYmEoJHtyfSwgJHtnfSwgJHtifSwgJHtvcGFjaXR5IC8gMTAwfSlgO1xyXG4gIH1cclxuXHJcbiAgc2hvd0NhdGVnb3J5TW9iaWxlSGVhZGVyKCkge1xyXG4gICAgY29uc3QgcGF0aG5hbWUgPSB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWU7XHJcbiAgICByZXR1cm4gcGF0aG5hbWUuaW5jbHVkZXMoJy9saXN0JykgfHwgcGF0aG5hbWUgPT09ICcvJyB8fCBwYXRobmFtZSA9PT0gJyc7XHJcbiAgfVxyXG5cclxuICBieU1ldGFsQW5kU3RvbmU6IGFueSA9IFtcclxuICAgIHtcclxuICAgICAgbmFtZTogJ0dvbGQnLFxyXG4gICAgICBpbWFnZVVybDogJ2h0dHBzOi8vY2RuLmNhcmF0bGFuZS5jb20vbWVkaWEvc3RhdGljL2ltYWdlcy93ZWIvbWVudS8yMmt0LUdvbGQtMngucG5nJyxcclxuICAgICAgc3RhdHVzOiBmYWxzZVxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgbmFtZTogJ0RpYW1vbmQnLFxyXG4gICAgICBpbWFnZVVybDogJ2h0dHBzOi8vY2RuLmNhcmF0bGFuZS5jb20vbWVkaWEvc3RhdGljL2ltYWdlcy93ZWIvbWVudS9EaWFtb25kLTF4LnBuZycsXHJcbiAgICAgIHN0YXR1czogZmFsc2VcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIG5hbWU6ICdQZWFybCcsXHJcbiAgICAgIGltYWdlVXJsOiAnaHR0cHM6Ly9jZG4uY2FyYXRsYW5lLmNvbS9zdGF0aWMvaW1hZ2VzL2Rpc2NvdmVyeS9yZXNwb25zaXZlLWhhbWJ1cmdlci1tZW51L3Byb2R1Y3RzLWFuZC1zZXJ2aWNlcy9wZWFybC0xeC5wbmcnLFxyXG4gICAgICBzdGF0dXM6IGZhbHNlXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBuYW1lOiAnR2Vtc3RvbmUnLFxyXG4gICAgICBpbWFnZVVybDogJ2h0dHBzOi8vY2RuLmNhcmF0bGFuZS5jb20vbWVkaWEvc3RhdGljL2ltYWdlcy93ZWIvbWVudS9HZW1zdG9uZS0xeC5wbmcnLFxyXG4gICAgICBzdGF0dXM6IGZhbHNlXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBuYW1lOiAnWWVsbG93IEdvbGQnLFxyXG4gICAgICBpbWFnZVVybDogJ2h0dHBzOi8vY2RuLmNhcmF0bGFuZS5jb20vbWVkaWEvc3RhdGljL2ltYWdlcy93ZWIvbWVudS9ZZWxsb3ctR29sZC0xeC5wbmcnLFxyXG4gICAgICBzdGF0dXM6IGZhbHNlXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBuYW1lOiAnUm9zZSBHb2xkJyxcclxuICAgICAgaW1hZ2VVcmw6ICdodHRwczovL2Nkbi5jYXJhdGxhbmUuY29tL21lZGlhL3N0YXRpYy9pbWFnZXMvd2ViL21lbnUvUm9zZS1Hb2xkLTF4LnBuZycsXHJcbiAgICAgIHN0YXR1czogZmFsc2VcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIG5hbWU6ICdXaGl0ZSBHb2xkJyxcclxuICAgICAgaW1hZ2VVcmw6ICdodHRwczovL2Nkbi5jYXJhdGxhbmUuY29tL21lZGlhL3N0YXRpYy9pbWFnZXMvd2ViL21lbnUvd2hpdGUtR29sZC0xeC5wbmcnLFxyXG4gICAgICBzdGF0dXM6IGZhbHNlXHJcbiAgICB9XHJcbiAgXVxyXG4gIG5hdmlnYXRlTG9naW4oKSB7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9sb2dpbiddKVxyXG4gIH1cclxuXHJcbiAgbWVnYU1lbnU6IGFueSA9IFtdXHJcbiAgZ2V0TWVudUl0ZW1zKCkge1xyXG4gICAgdGhpcy5yZXN0U2VydmljZS5nZXRNZW51SXRlbXModGhpcy5jb250ZW50Py5tZW51SWQpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgY29uc29sZS5sb2cocmVzKTtcclxuICAgICAgdGhpcy5tZWdhTWVudSA9IHJlcy5kYXRhLmRhdGEgfHwgW107XHJcbiAgICB9LCBlcnIgPT4ge1xyXG4gICAgICBjb25zb2xlLmxvZyhlcnIpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICByZWRpcmVjdGlvbnNPZk1lbnUoZWxlOiBhbnkpIHtcclxuXHJcbiAgICBpZiAoIWVsZS5yZWRpcmVjdGlvbmFsVXJsICYmIGVsZS5yZWRpcmVjdGlvbmFsVXJsPy5sZW5ndGggPT0gMCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGVsZS50eXBlID09ICdIT01FX1BBR0UnKSB7XHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnJ10pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2Ake2VsZS5yZWRpcmVjdGlvbmFsVXJsfWBdKTtcclxuICAgIH1cclxuXHJcblxyXG4gIH1cclxuXHJcbiAgc2V0Q2hpbGRNZW51KGVsZTogYW55KSB7XHJcbiAgICBpZiAoZWxlLmNoaWxkcmVuICYmIGVsZS5jaGlsZHJlbi5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHRoaXMuc2hvd0xpc3QgPSB0cnVlO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkQ2F0ZWdvcnkgPSBlbGUuY2hpbGRyZW47XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNob3dMaXN0ID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRDYXRlZ29yeSA9IG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8c2VjdGlvbiBbaWRdPVwiZGF0YT8uaWRcIiBjbGFzcz1cInRvdGFsLWNvbnRhaW5lciB3LTEwMFwiIFtjbGFzcy56LWluZGV4LTEwXT1cIiFpc0hlYWRlclN0aWNreSAmJiBpc0NvbXBvbmVudE1lcmdlZFwiPlxyXG4gIDxkaXYgY2xhc3M9XCJ3LTEwMFwiIFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb092ZXJsYXldPVwic3R5bGU/LmJhY2tncm91bmRcIiBbbmdDbGFzc109XCJ7J2JveC1zaGFkb3cnOiBpc0Vjb21tZXJjZVdlYnNpdGV9XCJcclxuICAgIFtjbGFzcy5tYXJnaW4tYm90dG9tXT1cImlzSGVhZGVyU3RpY2t5ICYmIGlzTW9iaWxlICYmIGNhdGVnb3J5TGlzdD8ubGVuZ3RoID09IDBcIj5cclxuICAgIDxkaXYgW3NpbXBvU3RpY2t5XT1cImlzSGVhZGVyU3RpY2t5XCIgW3NpbXBvQmFja2dyb3VuZF09XCJiYWNrZ3JvdW5kSW5mb1wiIGNsYXNzPVwidy0xMDBcIiAjY2hpbGRDb250YWluZXJcclxuICAgICAgW2NhdGVnb3J5SGVhZGVyXT1cImlzRWNvbW1lcmNlV2Vic2l0ZSAmJiBjYXRlZ29yeUxpc3Q/Lmxlbmd0aCA+IDAgJiYgIWlzTW9iaWxlICYmICFzaG93Q2F0ZWdvcnlNb2JpbGVIZWFkZXIoKVwiXHJcbiAgICAgIHNpbXBvSG92ZXIgW2NsYXNzLmJnLXRyYW5zcGFyZW50XT1cImlzQ29tcG9uZW50TWVyZ2VkICYmIHNjcm9sbFZhbHVlID09IDAgJiYgIWlzTW9iaWxlXCJcclxuICAgICAgKGhvdmVyaW5nKT1cInNob3dFZGl0VGFicygkZXZlbnQpXCIgW2lkXT1cImRhdGE/LmlkXCJcclxuICAgICAgW2NsYXNzLmhlYWRlci0tc2Nyb2xsZWRdPVwiZGF0YT8uc3R5bGVzPy5zaHJpbmtPblNjcm9sbCAmJiBpc0hlYWRlclN0aWNreSAmJiBzY3JvbGxWYWx1ZSA+IDAgJiYgIWVkaXRcIj5cclxuICAgICAgPCEtLSBbY2xhc3MuYmFja2dyb3VuZC1wb3NpdGlvbl09XCJpc0NvbXBvbmVudE1lcmdlZCAmJiBiYWNrZ3JvdW5kSW5mbz8uc2hvd0ltYWdlXCIgLS0+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdHlsZT8uaGVhZGxpbmU/LmRpc3BsYXlcIj5cclxuICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgPHNpbXBvLW1vdmluZy10ZXh0IFtlZGl0XT1cImZhbHNlXCIgW2RlbGV0ZV09XCJmYWxzZVwiIFtkYXRhXT1cImRhdGFcIj48L3NpbXBvLW1vdmluZy10ZXh0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgIDxkaXYgKm5nSWY9XCJzdHlsZT8uc3R5bGluZyA9PT0gJ0hlYWRlcjEnICYmICFpc0Vjb21tZXJjZVdlYnNpdGVcIiBbc3BhY2luZ0hvcml6b250YWxdPVwic3R5bGVzTGF5b3V0XCJcclxuICAgICAgICBbc2ltcG9PdmVybGF5XT1cImJhY2tncm91bmRJbmZvXCIgW3NpbXBvTGF5b3V0XT1cInN0eWxlc0xheW91dFwiIFtpc0hlYWRlcl09XCJ0cnVlXCIgW2lkXT1cImRhdGE/LmlkXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImhlYWRlcjFUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiAqbmdJZj1cInN0eWxlPy5zdHlsaW5nID09PSAnSGVhZGVyMicgJiYgIWlzRWNvbW1lcmNlV2Vic2l0ZVwiIFtzcGFjaW5nSG9yaXpvbnRhbF09XCJzdHlsZXNMYXlvdXRcIlxyXG4gICAgICAgIFtzaW1wb092ZXJsYXldPVwiYmFja2dyb3VuZEluZm9cIiBbc2ltcG9MYXlvdXRdPVwic3R5bGVzTGF5b3V0XCIgW2lzSGVhZGVyXT1cInRydWVcIiBbaWRdPVwiZGF0YT8uaWRcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaGVhZGVyMlRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwic3R5bGU/LnN0eWxpbmcgPT09ICdIZWFkZXIzJyAmJiAhaXNFY29tbWVyY2VXZWJzaXRlXCIgW3NwYWNpbmdIb3Jpem9udGFsXT1cInN0eWxlc0xheW91dFwiXHJcbiAgICAgICAgW3NpbXBvT3ZlcmxheV09XCJiYWNrZ3JvdW5kSW5mb1wiIFtzaW1wb0xheW91dF09XCJzdHlsZXNMYXlvdXRcIiBbaXNIZWFkZXJdPVwidHJ1ZVwiIFtpZF09XCJkYXRhPy5pZFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJoZWFkZXIzVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgKm5nSWY9XCJzdHlsZT8uc3R5bGluZyA9PT0gJ0hlYWRlcjQnICYmICFpc0Vjb21tZXJjZVdlYnNpdGVcIiBbc3BhY2luZ0hvcml6b250YWxdPVwic3R5bGVzTGF5b3V0XCJcclxuICAgICAgICBbc2ltcG9PdmVybGF5XT1cImJhY2tncm91bmRJbmZvXCIgW3NpbXBvTGF5b3V0XT1cInN0eWxlc0xheW91dFwiIFtpc0hlYWRlcl09XCJ0cnVlXCIgW2lkXT1cImRhdGE/LmlkXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImhlYWRlcjRUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgW3NwYWNpbmdIb3Jpem9udGFsXT1cInN0eWxlc0xheW91dFwiIFtzaW1wb092ZXJsYXldPVwiYmFja2dyb3VuZEluZm9cIiAqbmdJZj1cImlzRWNvbW1lcmNlV2Vic2l0ZVwiXHJcbiAgICAgICAgW3NpbXBvTGF5b3V0XT1cInNjcmVlbldpZHRoID4gNDc1ID8gc3R5bGVzTGF5b3V0IDogdW5kZWZpbmVkXCIgW2lzSGVhZGVyXT1cInRydWVcIiBbaWRdPVwiZGF0YT8uaWRcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZWNvbW1lcmNlX2hlYWRlclwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwIG14LTIgbWItMiB3LTk2XCIgKm5nSWY9XCJpc01vYmlsZSAmJiBpc0Vjb21tZXJjZVdlYnNpdGUgJiYgIXJlc3RyaWN0Q2FydEJhckluUGFnZXMoKVwiPlxyXG4gICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgcGxhY2Vob2xkZXI9XCJTZWFyY2ggZm9yIGl0ZW1zXCIgYXJpYS1sYWJlbD1cIlNlYXJjaCBQcm9kdWN0XCJcclxuICAgICAgICAgIFsobmdNb2RlbCldPVwic2VhcmNoVGV4dFwiIChuZ01vZGVsQ2hhbmdlKT1cIndhaXRCZWZvcmVTZWFyY2goKVwiXHJcbiAgICAgICAgICBbbmdTdHlsZV09XCJ7J2JvcmRlcicgOiAnMXB4IHNvbGlkICcgKyBhY2NlbnRDb2xvcn1cIj5cclxuICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJoLTEwMFwiXHJcbiAgICAgICAgICBbbmdTdHlsZV09XCJ7J2JhY2tncm91bmQnIDogc3R5bGU/LmJhY2tncm91bmQ/LmFjY2VudEJhY2tncm91bmRUeXBlID09ICdTb2xpZCcgPyAgIGFjY2VudENvbG9yIDogJ2xpbmVhci1ncmFkaWVudCh0byByaWdodCwnICsgc3R5bGU/LmJhY2tncm91bmQ/LmFjY2VudENvbG9yICsgJyAwJScgKyAnLCcgKyBzdHlsZT8uYmFja2dyb3VuZD8uc2Vjb25kYXJ5QWNjZW50Q29sb3IgKycgMTAwJScgKyAnKSd9XCJcclxuICAgICAgICAgIFtzdHlsZS5jb2xvcl09XCJzdHlsZT8uYmFja2dyb3VuZD8uY29sb3JcIj5zZWFyY2g8L21hdC1pY29uPlxyXG4gICAgICA8L2Rpdj4gLS0+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNFY29tbWVyY2VXZWJzaXRlICYmICFpc01vYmlsZSAmJiBkYXRhPy5zdHlsZXM/Lm1lbnVUeXBlID09PSAnTUVHQV9NRU5VJ1wiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjYXRlZ29yaWVzSGVhZGVyXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8ZGl2IFtuZ0NsYXNzXT1cInsnaG92ZXJfZWZmZWN0JzogZWRpdH1cIiAqbmdJZj1cInNob3dFZGl0b3JzXCI+XHJcbiAgICAgICAgPHNpbXBvLWhvdmVyLWVsZW1lbnRzIFtkYXRhXT1cImRhdGFcIiBbaW5kZXhdPVwiaW5kZXhcIiBbZWRpdE9wdGlvbnNdPVwiZWRpdFwiPjwvc2ltcG8taG92ZXItZWxlbWVudHM+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzRWNvbW1lcmNlV2Vic2l0ZSAmJiBpc01vYmlsZSAmJiBzaG93Q2F0ZWdvcnlNb2JpbGVIZWFkZXIoKVwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibW9iaWxlQ2F0ZWdvcnlIZWFkZXJcIj48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gIDwvZGl2PlxyXG5cclxuICA8IS0tIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc0Vjb21tZXJjZVdlYnNpdGUgJiYgaXNNb2JpbGUgJiYgIXJlc3RyaWN0SW5QYWdlcygpXCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibW9iaWxlRm9vdGVyVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICA8L25nLWNvbnRhaW5lcj4gLS0+XHJcbjwvc2VjdGlvbj5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjaGVhZGVyMVRlbXBsYXRlPlxyXG4gIDxkaXYgY2xhc3M9XCJoZWFkZXIxXCI+XHJcbiAgICA8ZGl2IFtjbGFzcy53LTE1XT1cImNvbnRlbnQ/LmxvZ28/LmlzSW1hZ2VcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImxvZ29TZWN0aW9uVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBnYXAtMTUgYWxpZ24tY2VudGVyXCIgKm5nSWY9XCIhaXNNb2JpbGVcIiBbc3R5bGUud2lkdGguJV09XCJpc0Vjb21tZXJjZVdlYnNpdGUgPyA5NCA6ICcnXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNFY29tbWVyY2VXZWJzaXRlXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInBhZ2VMaW5rc1RlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXNFY29tbWVyY2VXZWJzaXRlID8gZWNvbW1lcmNlQnV0dG9uc1RlbXBsYXRlIDogbnVsbFwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiIWlzRWNvbW1lcmNlV2Vic2l0ZSA/IGJ1dHRvbnNUZW1wbGF0ZSA6IG51bGxcIj48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBnYXAtMTUgYWxpZ24tY2VudGVyXCIgKm5nSWY9XCJpc01vYmlsZVwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNFY29tbWVyY2VXZWJzaXRlXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImVjb21Qcm9maWxlVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDxtYXQtaWNvbiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCIgZGF0YS1icy10b2dnbGU9XCJvZmZjYW52YXNcIiBkYXRhLWJzLXRhcmdldD1cIiNvZmZjYW52YXNSaWdodFwiXHJcbiAgICAgICAgYXJpYS1jb250cm9scz1cIm9mZmNhbnZhc1JpZ2h0XCI+bWVudTwvbWF0LWljb24+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjaGVhZGVyMlRlbXBsYXRlPlxyXG4gIDxkaXYgY2xhc3M9XCJoZWFkZXIxXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGdhcC0xNSBhbGlnbi1jZW50ZXJcIiAqbmdJZj1cIiFpc01vYmlsZVwiIFtzdHlsZS53aWR0aC4lXT1cImlzRWNvbW1lcmNlV2Vic2l0ZSA/IDkzIDogJydcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIiFpc0Vjb21tZXJjZVdlYnNpdGUgPyBidXR0b25zVGVtcGxhdGUgOiBudWxsXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpc0Vjb21tZXJjZVdlYnNpdGUgPyBlY29tbWVyY2VCdXR0b25zVGVtcGxhdGUgOiBudWxsXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNFY29tbWVyY2VXZWJzaXRlXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInBhZ2VMaW5rc1RlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGdhcC0xNSBhbGlnbi1jZW50ZXJcIiBkYXRhLWJzLXRvZ2dsZT1cIm9mZmNhbnZhc1wiIGRhdGEtYnMtdGFyZ2V0PVwiI29mZmNhbnZhc1JpZ2h0XCJcclxuICAgICAgYXJpYS1jb250cm9scz1cIm9mZmNhbnZhc1JpZ2h0XCIgKm5nSWY9XCJpc01vYmlsZVwiPlxyXG4gICAgICA8bWF0LWljb24gW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiPm1lbnU8L21hdC1pY29uPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNFY29tbWVyY2VXZWJzaXRlXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImVjb21Qcm9maWxlVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWVuZFwiIFtjbGFzcy53LTE1XT1cImNvbnRlbnQ/LmxvZ28/LmlzSW1hZ2VcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImxvZ29TZWN0aW9uVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICNoZWFkZXIzVGVtcGxhdGU+XHJcbiAgPGRpdiBjbGFzcz1cImhlYWRlcjFcIj5cclxuICAgIDxkaXYgW2NsYXNzLnctMTVdPVwiY29udGVudD8ubG9nbz8uaXNJbWFnZVwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibG9nb1NlY3Rpb25UZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzTW9iaWxlXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNFY29tbWVyY2VXZWJzaXRlXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInBhZ2VMaW5rc1RlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXNFY29tbWVyY2VXZWJzaXRlID8gZWNvbW1lcmNlQnV0dG9uc1RlbXBsYXRlIDogbnVsbFwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiIWlzRWNvbW1lcmNlV2Vic2l0ZSA/IGJ1dHRvbnNUZW1wbGF0ZSA6IG51bGxcIj48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBnYXAtMTUgYWxpZ24tY2VudGVyXCIgZGF0YS1icy10b2dnbGU9XCJvZmZjYW52YXNcIiBkYXRhLWJzLXRhcmdldD1cIiNvZmZjYW52YXNSaWdodFwiXHJcbiAgICAgIGFyaWEtY29udHJvbHM9XCJvZmZjYW52YXNSaWdodFwiICpuZ0lmPVwiaXNNb2JpbGVcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzRWNvbW1lcmNlV2Vic2l0ZVwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJlY29tUHJvZmlsZVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bWF0LWljb24gW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiPm1lbnU8L21hdC1pY29uPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI2hlYWRlcjRUZW1wbGF0ZT5cclxuICA8ZGl2IGNsYXNzPVwiaGVhZGVyMVwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpc01vYmlsZVwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiIWlzRWNvbW1lcmNlV2Vic2l0ZSA/IGJ1dHRvbnNUZW1wbGF0ZSA6IG51bGxcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImlzRWNvbW1lcmNlV2Vic2l0ZSA/IGVjb21tZXJjZUJ1dHRvbnNUZW1wbGF0ZSA6IG51bGxcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpc0Vjb21tZXJjZVdlYnNpdGVcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwicGFnZUxpbmtzVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9uZy1jb250YWluZXI+IDwvbmctY29udGFpbmVyPlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBnYXAtMTUgYWxpZ24tY2VudGVyXCIgZGF0YS1icy10b2dnbGU9XCJvZmZjYW52YXNcIiBkYXRhLWJzLXRhcmdldD1cIiNvZmZjYW52YXNSaWdodFwiXHJcbiAgICAgIGFyaWEtY29udHJvbHM9XCJvZmZjYW52YXNSaWdodFwiICpuZ0lmPVwiaXNNb2JpbGVcIj5cclxuICAgICAgPG1hdC1pY29uIFtzaW1wb0NvbG9yXT1cInNpbXBvQ29sb3JcIj5tZW51PC9tYXQtaWNvbj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzRWNvbW1lcmNlV2Vic2l0ZVwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJlY29tUHJvZmlsZVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwidGV4dC1lbmRcIiBbY2xhc3Mudy0xNV09XCJjb250ZW50Py5sb2dvPy5pc0ltYWdlXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJsb2dvU2VjdGlvblRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI2xvZ29TZWN0aW9uVGVtcGxhdGU+XHJcbiAgPGRpdiBjbGFzcz1cImQtZmxleCBnYXAtMyBhbGlnbi1jZW50ZXIgY3Vyc29yLXBvaW50ZXIgbXgtMVwiXHJcbiAgICAqbmdJZj1cIiFjb250ZW50Py5sb2dvPy5pc0ltYWdlIHx8ICFjb250ZW50Py5sb2dvPy5pbWFnZT8udXJsXCIgKGNsaWNrKT1cIiFlZGl0ID8gZ29Ub0hvbWUoKSA6ICcnXCI+XHJcbiAgICA8ZGl2ICpuZ0lmPVwiY29udGVudD8ubG9nbz8udGV4dD8uaXNJY29uICYmIGNvbnRlbnQ/LmxvZ28/LnRleHQ/LnVybFwiPlxyXG4gICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgW3NyY109XCJjb250ZW50Py5sb2dvPy50ZXh0Py51cmxcIiBhbHQ9XCJsb2dvXCIgW3dpZHRoXT1cImNvbnRlbnQ/LmxvZ28/LnNpemUgKyA4MFwiIGxvYWRpbmc9XCJsYXp5XCI+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJoZWFkaW5nLXNtYWxsXCIgKm5nSWY9XCJjb250ZW50Py5sb2dvPy50ZXh0Py5pc1RleHRcIiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCI+XHJcbiAgICAgIDxiPnt7Y29udGVudD8uc2l0ZU5hbWU/LnZhbHVlfX08L2I+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8IS0tIDxkaXYgY2xhc3M9XCJkLWZsZXggZ2FwLTMgYWxpZ24taXRlbXMtbGctY2VudGVyIGN1cnNvci1wb2ludGVyXCIgKm5nSWY9XCJjb250ZW50Py5sb2dvPy5pc0ltYWdlICYmIGNvbnRlbnQ/LmxvZ28/LmltYWdlPy51cmxcIiAoY2xpY2spPVwiZ29Ub0hvbWUoKVwiPiAtLT5cclxuICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgW3NyY109XCJjb250ZW50Py5sb2dvPy5pbWFnZT8udXJsXCIgYWx0PVwibG9nb1wiIFtzdHlsZS53aWR0aC4lXT1cInNjcmVlbldpZHRoID4gNDc1IHx8IChjb250ZW50Py5sb2dvPy5zaXplIHx8IDEwKSA8IDUwID8gY29udGVudD8ubG9nbz8uc2l6ZSA6IFxyXG4gICAgKChjb250ZW50Py5sb2dvPy5zaXplID49IDYwICAmJiBjb250ZW50Py5sb2dvPy5zaXplIDw9IDEwMCkgPyAoMjApIDogKChjb250ZW50Py5sb2dvPy5zaXplIHx8IDEwKSAtIDEwKSlcIlxyXG4gICAgbG9hZGluZz1cImxhenlcIiAqbmdJZj1cImNvbnRlbnQ/LmxvZ28/LmlzSW1hZ2UgJiYgY29udGVudD8ubG9nbz8uaW1hZ2U/LnVybFwiIChjbGljayk9XCIhZWRpdCA/IGdvVG9Ib21lKCkgOiAnJ1wiPlxyXG4gIDwhLS0gPC9kaXY+IC0tPlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICNwYWdlTGlua3NUZW1wbGF0ZT5cclxuICA8ZGl2IGNsYXNzPVwibmF2YmFyLW5hdiBwYWdlTGlua3NcIiBbbmdDbGFzc109XCJ7J2FsaWduLWl0ZW1zLWNlbnRlcicgOiAhaXNNb2JpbGV9XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGdhcC0zXCJcclxuICAgICAgW25nQ2xhc3NdPVwieydmbGV4LWNvbHVtbic6IGlzTW9iaWxlLCAnYWxpZ24taXRlbXMtY2VudGVyJyA6ICFpc01vYmlsZSwgJ21vYmlsZS1wYWdlLWxpc3QnOiBpc01vYmlsZX1cIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBnZXROYXZiYXJCdXR0b25cIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbS5zaG93SGVhZGVyXCI+XHJcbiAgICAgICAgICA8c2ltcG8tbmF2YmFyLWJ1dHRvbi1lbGVtZW50IFtidXR0b25EYXRhXT1cIml0ZW1cIiBbc2VsZWN0ZWRTdHlsZV09XCJzdHlsZT8ubmF2aWdhdGlvblN0eWxlXCJcclxuICAgICAgICAgICAgW2J1dHRvblN0eWxlXT1cInN0eWxlPy5uYXZiYXJCdXR0b25TdHlsZVwiIFtiZ0NvbG9yXT1cInNpbXBvQ29sb3JcIiBbYWNjZW50Q29sb3JdPVwiYWNjZW50Q29sb3JcIlxyXG4gICAgICAgICAgICBbc2VjdGlvbklkXT1cImRhdGE/LmlkXCI+PC9zaW1wby1uYXZiYXItYnV0dG9uLWVsZW1lbnQ+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgbGluayBvZiBnZXREcm9wZG93bkxpbmtzOyBsZXQgaWR4ID0gaW5kZXhcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbnRlbnQ/LmVjb21saW5rcz8uW2xpbmtdPy5sZW5ndGggXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInBvc2l0aW9uLXJlbGF0aXZlXCI+XHJcbiAgICAgICAgICA8YnV0dG9uIG1hdC1zdHJva2VkLWJ1dHRvbiBjbGFzcz1cIm1hdC1idG4gZHJvcGRvd24tdG9nZ2xlIGNhdGVnb3J5LWJ0blwiIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCIgaWQ9XCJsaW5rXCIgZGF0YS1icy10b2dnbGU9XCJkcm9wZG93blwiIGFyaWEtaGFzcG9wdXA9XCJ0cnVlXCIgYXJpYS1leHBhbmRlZD1cImZhbHNlXCI+XHJcbiAgICAgICAgICAgIHt7bGluayB8IGxvd2VyY2FzZSB8IHRpdGxlY2FzZX19XHJcbiAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1tZW51XCIgYXJpYS1sYWJlbGxlZGJ5PVwibGlua1wiPlxyXG4gICAgICAgICAgICA8YSBjbGFzcz1cImRyb3Bkb3duLWl0ZW1cIiAqbmdGb3I9XCJsZXQgbWVudSBvZiBnZXRWYWx1ZXMoY29udGVudD8uZWNvbWxpbmtzPy5bbGlua10pXCJcclxuICAgICAgICAgICAgICAoY2xpY2spPVwiYXBwbHlGaWx0ZXIobWVudSwgbGluaylcIj57e21lbnV9fTwvYT5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICA8L2Rpdj5cclxuXHJcblxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICNidXR0b25zVGVtcGxhdGU+XHJcbiAgPGRpdiBjbGFzcz1cImQtZmxleFwiPlxyXG4gICAgPGRpdiAqbmdJZj1cImFjdGlvbj8uZGlzcGxheVwiIGNsYXNzPVwiYnV0dG9uLWRpc3BsYXkgbXQtMFwiIFtuZ0NsYXNzXT1cInsndy0xMDAganVzdGlmeS1zcGFjZS1hcm91bmQnOiBpc01vYmlsZX1cIj5cclxuICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgYnV0dG9uIG9mIGFjdGlvbj8uYnV0dG9uc1wiPlxyXG4gICAgICAgIDxhcHAtYnV0dG9uLWVsZW1lbnQgW2J1dHRvbkNvbnRlbnRdPVwiYnV0dG9uLmNvbnRlbnRcIiBbYnV0dG9uU3R5bGVdPVwiYnV0dG9uLnN0eWxlc1wiIFtzZWN0aW9uSWRdPVwiZGF0YT8uaWRcIlxyXG4gICAgICAgICAgW2VkaXRdPVwiZWRpdFwiIFtjb2xvcl09XCJkYXRhPy5zdHlsZXM/LmJhY2tncm91bmQ/LmFjY2VudENvbG9yXCIgW2J1dHRvbklkXT1cImJ1dHRvbi5pZFwiXHJcbiAgICAgICAgICBbYmFja2dyb3VuZEluZm9dPVwiZGF0YT8uc3R5bGVzPy5iYWNrZ3JvdW5kXCI+PC9hcHAtYnV0dG9uLWVsZW1lbnQ+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwic3RhdGljX2xvZ2luX2J0biBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyIGN1cnNvci1wb2ludGVyXCJcclxuICAgICAgICAoY2xpY2spPVwibmF2aWdhdGVMb2dpbigpXCIgKm5nSWY9XCJwYXNzYm9va0FwcFN0YXR1cyAmJiAhbG9nZ2VkSW5cIlxyXG4gICAgICAgIFtzdHlsZS5ib3JkZXJDb2xvcl09XCJiYWNrZ3JvdW5kSW5mbz8uYWNjZW50Q29sb3JcIj5cclxuICAgICAgICA8bWF0LWljb24+cGVyc29uX291dGxpbmU8L21hdC1pY29uPlxyXG4gICAgICAgIExvZ2luXHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiIHN0eWxlPVwiZ2FwOiA4cHg7IGN1cnNvcjogcG9pbnRlcjtcIiAoY2xpY2spPVwiZ29Ub0FjY291bnQoJ1BST0ZJTEUnKVwiXHJcbiAgICAgICAgKm5nSWY9XCJsb2dnZWRJbiAmJiAhaXNNb2JpbGVcIj5cclxuICAgICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgW3NyY109XCJ1c2VyR2VuZGVyIHwgZ2VuZGVySWNvblwiIHN0eWxlPVwiaGVpZ2h0OiAyN3B4O1wiPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDxidXR0b24gY2xhc3M9XCJtb2JpbGVMb2dpbkJ1dHRvblwiICpuZ0lmPVwiaXNFY29tbWVyY2VXZWJzaXRlICYmIGlzTW9iaWxlICYmICFsb2dnZWRJblwiXHJcbiAgICBbc3R5bGUuYm9yZGVyXT1cIicxcHggc29saWQnICsgYWNjZW50Q29sb3JcIiBbc3R5bGUuY29sb3JdPVwiYWNjZW50Q29sb3JcIiAoY2xpY2spPVwiZ29Ub0FjY291bnQoJ0xPR0lOJylcIj5Mb2dpbjwvYnV0dG9uPlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICNtb2JpbGVGb290ZXJUZW1wbGF0ZT5cclxuICA8ZGl2IGNsYXNzPVwiY2FydC1mb290ZXJcIiBbc3R5bGUuYmFja2dyb3VuZF09XCJhY2NlbnRDb2xvclwiIFtzaW1wb0NvbG9yXT1cImFjY2VudENvbG9yXCJcclxuICAgICpuZ0lmPVwiZ2V0Q2FydEl0ZW1zQ291bnQgPiAwICYmICFyZXN0cmljdENhcnRCYXJJblBhZ2VzKClcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gcHgtMyBweS0yIGgtMTAwIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaXRlbS1jb3VudCBmdy1ib2xkXCI+XHJcbiAgICAgICAge3sgZ2V0Q2FydEl0ZW1zQ291bnQgPz8gMyB9fSB7eyBnZXRDYXJ0SXRlbXNDb3VudCA+IDEgPyAnaXRlbXMnIDogJ2l0ZW0nIH19IGluIGNhcnRcclxuICAgICAgICA8IS0tIFRvdGFsIDog4oK5e3sgZ2V0Q2FydFRvdGFsQW1vdW50IH19IC0tPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTIgZnctYm9sZFwiIChjbGljayk9XCJnb1RvQ2FydCgpXCI+XHJcbiAgICAgICAgVmlldyBDYXJ0IDxtYXQtaWNvbiBbc2ltcG9Db2xvcl09XCJhY2NlbnRDb2xvclwiPmFycm93X2ZvcndhcmQ8L21hdC1pY29uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwibW9iaWxlLWZvb3RlclwiIFtzaW1wb0JhY2tncm91bmRdPVwiYmFja2dyb3VuZEluZm9cIj5cclxuICAgIDxkaXYgY2xhc3M9XCJpY29uc1wiIChjbGljayk9XCJnb1RvSG9tZSgpXCI+XHJcbiAgICAgIDxtYXQtaWNvbiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCI+aG9tZTwvbWF0LWljb24+XHJcbiAgICAgIDxzcGFuIFtzaW1wb0NvbG9yXT1cInNpbXBvQ29sb3JcIj5Ib21lPC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaWNvbnNcIiAoY2xpY2spPVwic2VhcmNoUHJvZHVjdHMoKVwiPlxyXG4gICAgICA8bWF0LWljb24gW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiPmdyaWRfb248L21hdC1pY29uPlxyXG4gICAgICA8c3BhbiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCI+U2hvcDwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImljb25zXCIgKGNsaWNrKT1cImdvVG9XaXNobGlzdCgpXCI+XHJcbiAgICAgIDxtYXQtaWNvbiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCI+ZmF2b3JpdGVfYm9yZGVyPC9tYXQtaWNvbj5cclxuICAgICAgPHNwYW4gW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiPldpc2hsaXN0PC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaWNvbnMgcG9zaXRpb24tcmVsYXRpdmVcIiAoY2xpY2spPVwiZ29Ub0NhcnQoKVwiPlxyXG4gICAgICA8bWF0LWljb24gW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiPnNob3BwaW5nX2NhcnQ8L21hdC1pY29uPlxyXG4gICAgICA8c3BhbiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCI+Q2FydDwvc3Bhbj5cclxuICAgICAgPGRpdiBjbGFzcz1cInBvc2l0aW9uLWFic29sdXRlIGNhcnRJdGVtQ291bnRcIiAqbmdJZj1cImdldENhcnRJdGVtc0NvdW50XCI+e3tnZXRDYXJ0SXRlbXNDb3VudH19PC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjZWNvbW1lcmNlQnV0dG9uc1RlbXBsYXRlPlxyXG4gIDxkaXYgY2xhc3M9XCJqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBwci0wIGQtZmxleCBwb3NpdGlvbi1yZWxhdGl2ZSBnYXAtMTAgdy0xMDBcIlxyXG4gICAgW3N0eWxlLmZsZXhEaXJlY3Rpb25dPVwic3R5bGU/LnN0eWxpbmcgPT09ICdIZWFkZXIyJyB8fCBzdHlsZT8uc3R5bGluZyA9PT0gJ0hlYWRlcjQnID8gJ3Jvdy1yZXZlcnNlJyA6ICcnXCI+XHJcbiAgICA8IS0tIDxkaXYgY2xhc3M9XCJzZWFyY2gtaWNvblwiIChjbGljayk9XCJzaG93U2VhcmNoQmFyID0gIXNob3dTZWFyY2hCYXJcIj5cclxuICAgICAgPG1hdC1pY29uIFtzdHlsZS5jb2xvcl09XCJhY2NlbnRDb2xvclwiPnNlYXJjaDwvbWF0LWljb24+XHJcbiAgICA8L2Rpdj4gLS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwidy03NSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCIgW25nQ2xhc3NdPVwieydqdXN0aWZ5LWNvbnRlbnQtY2VudGVyJyA6ICFwYXNzYm9va0FwcFN0YXR1c31cIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwIHctNzUgbWwtMlwiPlxyXG4gICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgcGxhY2Vob2xkZXI9XCJTZWFyY2ggRm9yIEl0ZW1zXCIgYXJpYS1sYWJlbD1cIlNlYXJjaCBQcm9kdWN0XCJcclxuICAgICAgICAgIFsobmdNb2RlbCldPVwic2VhcmNoVGV4dFwiIChuZ01vZGVsQ2hhbmdlKT1cIndhaXRCZWZvcmVTZWFyY2goKVwiXHJcbiAgICAgICAgICBbbmdTdHlsZV09XCJ7J2JvcmRlcicgOiAnMXB4IHNvbGlkICcgKyBiYWNrZ3JvdW5kSW5mbz8uYWNjZW50Q29sb3J9XCJcclxuICAgICAgICAgIFtzdHlsZS5jb2xvcl09XCJiYWNrZ3JvdW5kSW5mbz8uYWNjZW50Q29sb3JcIj5cclxuICAgICAgICA8IS0tIDxzcGFuIGNsYXNzPVwiYW5pbWF0ZWQtcGxhY2Vob2xkZXIgcG9zaXRpb24tYWJzb2x1dGVcIiBcclxuICAgICAgICAgIFtjbGFzcy5hbmltYXRlXT1cImFuaW1hdGVQbGFjZWhvbGRlclwiXHJcbiAgICAgICAgICAqbmdJZj1cInN0eWxlPy5zZWFyY2hCYXJQbGFjZWhvbGRlckxpc3QubGVuZ3RoID4gMSAmJiBzdHlsZT8uc21hcnRTZWFyY2hCYXJcIj5cclxuICAgICAgICAgIHt7IGN1cnJlbnRQbGFjZWhvbGRlciB9fVxyXG4gICAgICAgIDwvc3Bhbj4gLS0+XHJcbiAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiaC0xMDBcIlxyXG4gICAgICAgICAgW25nU3R5bGVdPVwieydiYWNrZ3JvdW5kJyA6IGJhY2tncm91bmRJbmZvPy5hY2NlbnRCYWNrZ3JvdW5kVHlwZSA9PT0gJ1NvbGlkJyA/ICAgYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yIDogJ2xpbmVhci1ncmFkaWVudCh0byByaWdodCwnICsgIGJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvciArICcgMCUnICsgJywnICsgIGJhY2tncm91bmRJbmZvPy5zZWNvbmRhcnlBY2NlbnRDb2xvciArJyAxMDAlJyArICcpJ31cIlxyXG4gICAgICAgICAgW3N0eWxlLmNvbG9yXT1cImJhY2tncm91bmRJbmZvPy5jb2xvclwiPnNlYXJjaDwvbWF0LWljb24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGdhcC0zIGFsaWduLWl0ZW1zLWNlbnRlciBweS0xIHB4LTMgYi0xIHN0b3Jlc1wiXHJcbiAgICAgICAgW3N0eWxlLmJvcmRlckNvbG9yXT1cImJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvclwiIChjbGljayk9XCJnb1RvU2NoZW1lcygpXCJcclxuICAgICAgICBbc3R5bGUuYmFja2dyb3VuZF09XCJnZXRSR0JBKGJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvciAsIDEwKVwiICpuZ0lmPVwicGFzc2Jvb2tBcHBTdGF0dXNcIj5cclxuICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIlxyXG4gICAgICAgICAgeG1sbnM6c3ZnanM9XCJodHRwOi8vc3ZnanMuZGV2L3N2Z2pzXCIgaWQ9XCJMYXllcl8yXCIgdmlld0JveD1cIjAgMCA2MCA2MFwiIGRhdGEtbmFtZT1cIkxheWVyIDJcIiB3aWR0aD1cIjMwXCJcclxuICAgICAgICAgIGhlaWdodD1cIjMwXCIgdmVyc2lvbj1cIjEuMVwiPlxyXG4gICAgICAgICAgPGcgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiMTAwJVwiIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwxLDAsMClcIj5cclxuICAgICAgICAgICAgPHBhdGggZD1cIm0xNC4zNiA0Ni42Ni41MS05Ljg2LTExLjkzLTcuMTYtMS45NCA4LjQzelwiIFthdHRyLmZpbGxdPVwiYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yXCJcclxuICAgICAgICAgICAgICBmaWxsLW9wYWNpdHk9XCIxXCIgZGF0YS1vcmlnaW5hbC1jb2xvcj1cIiMwMDAwMDBmZlwiIHN0cm9rZT1cIm5vbmVcIiBzdHJva2Utb3BhY2l0eT1cIjFcIiAvPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGQ9XCJtMTcuMTcgMzguMXMwLS4wMi4wMi0uMDNjMCAwIDAtLjAyLjAyLS4wMi4wNC0uMDUuMS0uMDguMTUtLjExLjAyLS4wMS4wMy0uMDMuMDUtLjA0bDQuNjYtMS45NGgtLjAycy0xLjg3LTEuMjEtMS44Ny0xLjIxbC0zLjE4IDEuNTctMS4wNy41My0uNDMgOC4zMiAxLjU4LTYuOWMuMDEtLjA2LjA1LS4xMi4wOS0uMTd6XCJcclxuICAgICAgICAgICAgICBbYXR0ci5maWxsXT1cImJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvclwiIGZpbGwtb3BhY2l0eT1cIjFcIiBkYXRhLW9yaWdpbmFsLWNvbG9yPVwiIzAwMDAwMGZmXCIgc3Ryb2tlPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgc3Ryb2tlLW9wYWNpdHk9XCIxXCIgLz5cclxuICAgICAgICAgICAgPHBhdGggZD1cIm0xOS4xNCAzNC4wOC02LjI3LTQuMDRjLS4xOS0uMTItLjI4LS4zNC0uMjMtLjU2bDEuMDgtNC43Mi05Ljk2IDQuMTQgMTEuNjggNy4wMXpcIlxyXG4gICAgICAgICAgICAgIFthdHRyLmZpbGxdPVwiYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yXCIgZmlsbC1vcGFjaXR5PVwiMVwiIGRhdGEtb3JpZ2luYWwtY29sb3I9XCIjMDAwMDAwZmZcIiBzdHJva2U9XCJub25lXCJcclxuICAgICAgICAgICAgICBzdHJva2Utb3BhY2l0eT1cIjFcIiAvPlxyXG4gICAgICAgICAgICA8cGF0aCBkPVwibTMwLjkzIDQ2LjQyLS41IDkuNzkgMzIuNTctMTguNjctMS4yMS02LjQtMjMuMTYgMTEuNDZ6XCIgW2F0dHIuZmlsbF09XCJiYWNrZ3JvdW5kSW5mbz8uYWNjZW50Q29sb3JcIlxyXG4gICAgICAgICAgICAgIGZpbGwtb3BhY2l0eT1cIjFcIiBkYXRhLW9yaWdpbmFsLWNvbG9yPVwiIzAwMDAwMGZmXCIgc3Ryb2tlPVwibm9uZVwiIHN0cm9rZS1vcGFjaXR5PVwiMVwiIC8+XHJcbiAgICAgICAgICAgIDxwYXRoIGQ9XCJtMTYgNDcuNjUgMTMuMzggOC41OC40OS05Ljg2LTExLjkzLTcuMTd6XCIgW2F0dHIuZmlsbF09XCJiYWNrZ3JvdW5kSW5mbz8uYWNjZW50Q29sb3JcIlxyXG4gICAgICAgICAgICAgIGZpbGwtb3BhY2l0eT1cIjFcIiBkYXRhLW9yaWdpbmFsLWNvbG9yPVwiIzAwMDAwMGZmXCIgc3Ryb2tlPVwibm9uZVwiIHN0cm9rZS1vcGFjaXR5PVwiMVwiIC8+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgZD1cIm0yNy44NSAzOS4zNHMwIDAtLjAxIDBjMCAwIDAgMC0uMDEgMC0uMDguMDQtLjE2LjA2LS4yNC4wNi0uMDUgMC0uMS0uMDMtLjE1LS4wNC0uMDQtLjAxLS4wOC0uMDEtLjExLS4wM2wtNC4xNi0yLjY3LTQuMzcgMS44MiAxMS42OCA3LjAxIDMwLjQtMTUuMDUtMTAuNzEtMy44OC0yMi4yOCAxMi43OHpcIlxyXG4gICAgICAgICAgICAgIFthdHRyLmZpbGxdPVwiYWNjZW50Q29sb3JcIiBmaWxsLW9wYWNpdHk9XCIxXCIgZGF0YS1vcmlnaW5hbC1jb2xvcj1cIiMwMDAwMDBmZlwiIHN0cm9rZT1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgIHN0cm9rZS1vcGFjaXR5PVwiMVwiIC8+XHJcbiAgICAgICAgICAgIDxwYXRoIGQ9XCJtMjguMjYgMzYuMDEtLjEgMS45MyAzMi41OC0xOC42OS0xLjIyLTYuMzktMzAuODYgMTUuMjh6XCIgW2F0dHIuZmlsbF09XCJiYWNrZ3JvdW5kSW5mbz8uYWNjZW50Q29sb3JcIlxyXG4gICAgICAgICAgICAgIGZpbGwtb3BhY2l0eT1cIjFcIiBkYXRhLW9yaWdpbmFsLWNvbG9yPVwiIzAwMDAwMGZmXCIgc3Ryb2tlPVwibm9uZVwiIHN0cm9rZS1vcGFjaXR5PVwiMVwiIC8+XHJcbiAgICAgICAgICAgIDxwYXRoIGQ9XCJtMjcuNjEgMjguMDktMTEuOTMtNy4xNi0xLjk0IDguNDMgMTMuMzYgOC41OHpcIiBbYXR0ci5maWxsXT1cImJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvclwiXHJcbiAgICAgICAgICAgICAgZmlsbC1vcGFjaXR5PVwiMVwiIGRhdGEtb3JpZ2luYWwtY29sb3I9XCIjMDAwMDAwZmZcIiBzdHJva2U9XCJub25lXCIgc3Ryb2tlLW9wYWNpdHk9XCIxXCIgLz5cclxuICAgICAgICAgICAgPHBhdGggZD1cIm01OC41NyAxMi4xNS0xMi4xLTQuMzgtMjkuOTcgMTIuNDMgMTEuNjggN3pcIiBbYXR0ci5maWxsXT1cImJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvclwiXHJcbiAgICAgICAgICAgICAgZmlsbC1vcGFjaXR5PVwiMVwiIGRhdGEtb3JpZ2luYWwtY29sb3I9XCIjMDAwMDAwZmZcIiBzdHJva2U9XCJub25lXCIgc3Ryb2tlLW9wYWNpdHk9XCIxXCIgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L3N2Zz5cclxuICAgICAgICA8ZGl2IFtzdHlsZS5jb2xvcl09XCJhY2NlbnRDb2xvclwiPlNjaGVtZXM8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZ2FwLTMgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzdG9yZXMgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtMiBweS0yIHB4LTNcIiAoY2xpY2spPVwiZ29Ub1N0b3JlcygpXCJcclxuICAgICAgICBbc3R5bGUuYm9yZGVyQ29sb3JdPVwiYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yXCIgKm5nSWY9XCJzdG9yZUF2YWlhYmxlXCJcclxuICAgICAgICBbc3R5bGUuYmFja2dyb3VuZF09XCJnZXRSR0JBKGJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvciAsIDEwKVwiPlxyXG4gICAgICAgIDxtYXQtaWNvbiBbc3R5bGUuY29sb3JdPVwiYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yXCI+c3RvcmU8L21hdC1pY29uPlxyXG4gICAgICAgIDxzcGFuIFtzdHlsZS5jb2xvcl09XCJiYWNrZ3JvdW5kSW5mbz8uYWNjZW50Q29sb3JcIj5TdG9yZXM8L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwicGluLXRleHRcIiAobW91c2VlbnRlcik9XCJzaG93UGluY29kZUlucHV0ID0gdHJ1ZTtzaG93TG9naW4gPSBmYWxzZVwiXHJcbiAgICAgICAgW3N0eWxlLmNvbG9yXT1cImJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvclwiICpuZ0lmPVwiIWdldFBpbmNvZGVcIj5FbnRlclxyXG4gICAgICAgIFBpbmNvZGVcclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJwaW4tdGV4dFwiIChtb3VzZWVudGVyKT1cInNob3dQaW5jb2RlSW5wdXQgPSB0cnVlOztzaG93TG9naW4gPSBmYWxzZVwiXHJcbiAgICAgICAgW3N0eWxlLmNvbG9yXT1cImJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvclwiICpuZ0lmPVwiZ2V0UGluY29kZSAmJiBnZXRQaW5jb2RlLmxlbmd0aCA9PSA2XCI+e3tcIkRlbGl2ZXJpbmcgdG86IFwiICtcclxuICAgICAgICBnZXRQaW5jb2RlfX08L2Rpdj5cclxuXHJcbiAgICAgIDwhLS0gKG1vdXNlbGVhdmUpPVwic2hvd1BpbmNvZGVJbnB1dCA9IGZhbHNlXCIgLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJwaW5jb2RlLWNvbnRhaW5lciBwLTNcIiAqbmdJZj1cInNob3dQaW5jb2RlSW5wdXRcIiAobW91c2VsZWF2ZSk9XCJzaG93UGluY29kZUlucHV0ID0gZmFsc2VcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dCB0ZXh0LWNlbnRlciBtYi0yIGYtMTggZnctYm9sZFwiPlxyXG4gICAgICAgICAgWW91ciBQSU4gQ29kZSB1bmxvY2tzXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInN1Yi10ZXh0IHRleHQtY2VudGVyIGYtMTQgcGluY29kZS10ZXh0XCI+XHJcbiAgICAgICAgICBGYXN0ZXN0IGRlbGl2ZXJ5IGRhdGUsIFRyeS1hdC1Ib21lIGF2YWlsYWJpbGl0eSxcclxuICAgICAgICAgIE5lYXJlc3Qgc3RvcmUgYW5kIEluLXN0b3JlIGRlc2lnbiFcclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXAgbXQtMiBici01IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWJldHdlZW4gcHgtM1wiXHJcbiAgICAgICAgICBbY2xhc3MuZXJyb3ItYm9yZGVyXT1cInBpbkVycm9yXCI+XHJcbiAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIHBsYWNlaG9sZGVyPVwiUGluY29kZVwiIGFyaWEtbGFiZWw9XCJQaW5jb2RlXCIgWyhuZ01vZGVsKV09XCJwaW5jb2RlXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJ3LTc1IHAtMFwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LXN1Yi10ZXh0IGYtMTEgdy0yNSB0ZXh0LWVuZCBjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJzZXRQaW5jb2RlKClcIj5TVUJNSVQ8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1zdGFydCBtdC0yIGYtMTFcIiAqbmdJZj1cInBpbkVycm9yXCI+XHJcbiAgICAgICAgICBQbGVhc2UgZW50ZXIgYSB2YWxpZCBwaW5jb2RlXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiIHN0eWxlPVwiZ2FwOiA1cHg7IGN1cnNvcjogcG9pbnRlcjtcIiAoY2xpY2spPVwiZ29Ub0ZhdigpXCI+XHJcbiAgICAgICAgPG1hdC1pY29uIFtzaW1wb0NvbG9yXT1cImJhY2tncm91bmRJbmZvPy5jb2xvclwiPmZhdm9yaXRlPC9tYXQtaWNvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIHBvc2l0aW9uLXJlbGF0aXZlXCIgc3R5bGU9XCJnYXA6IDVweDsgY3Vyc29yOiBwb2ludGVyO1wiIChjbGljayk9XCJnb1RvQ2FydCgpXCI+XHJcbiAgICAgICAgPG1hdC1pY29uIFtzaW1wb0NvbG9yXT1cImJhY2tncm91bmRJbmZvPy5jb2xvclwiPnNob3BwaW5nX2NhcnQ8L21hdC1pY29uPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJwb3NpdGlvbi1hYnNvbHV0ZSBjYXJ0SXRlbUNvdW50XCIgKm5nSWY9XCJnZXRDYXJ0SXRlbXNDb3VudFwiXHJcbiAgICAgICAgICBbbmdTdHlsZV09XCJ7J2JhY2tncm91bmQnIDogYmFja2dyb3VuZEluZm8/LmFjY2VudEJhY2tncm91bmRUeXBlID09ICdTb2xpZCcgPyAgYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yIDogJ2xpbmVhci1ncmFkaWVudCh0byByaWdodCwnICsgYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yICsgJyAwJScgKyAnLCcgKyBiYWNrZ3JvdW5kSW5mbz8uc2Vjb25kYXJ5QWNjZW50Q29sb3IgKycgMTAwJScgKyAnKScgLCAnY29sb3InIDogc2V0Q29sb3IoKX1cIj5cclxuICAgICAgICAgIHt7Z2V0Q2FydEl0ZW1zQ291bnR9fTwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImxvZ2luQnV0dG9uXCIgKm5nSWY9XCIhbG9nZ2VkSW5cIiAobW91c2VlbnRlcik9XCJzaG93TG9naW4gPSB0cnVlO3Nob3dQaW5jb2RlSW5wdXQgPSBmYWxzZVwiPlxyXG4gICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMzVcIiBoZWlnaHQ9XCIyN1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgZD1cIk0xMi4xMiAxMi43OEMxMi4wNSAxMi43NyAxMS45NiAxMi43NyAxMS44OCAxMi43OEMxMC4xMiAxMi43MiA4LjcxOTk3IDExLjI4IDguNzE5OTcgOS41MDk5OEM4LjcxOTk3IDcuNjk5OTggMTAuMTggNi4yMjk5OCAxMiA2LjIyOTk4QzEzLjgxIDYuMjI5OTggMTUuMjggNy42OTk5OCAxNS4yOCA5LjUwOTk4QzE1LjI3IDExLjI4IDEzLjg4IDEyLjcyIDEyLjEyIDEyLjc4WlwiXHJcbiAgICAgICAgICAgIGZpbGw9XCIjMjkyRDMyXCIgc3Ryb2tlPVwiIzI5MkQzMlwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICBkPVwiTTE4Ljc0IDE5LjM4QzE2Ljk2IDIxLjAxIDE0LjYgMjIgMTIgMjJDOS40MDAwMSAyMiA3LjA0MDAxIDIxLjAxIDUuMjYwMDEgMTkuMzhDNS4zNjAwMSAxOC40NCA1Ljk2MDAxIDE3LjUyIDcuMDMwMDEgMTYuOEM5Ljc3MDAxIDE0Ljk4IDE0LjI1IDE0Ljk4IDE2Ljk3IDE2LjhDMTguMDQgMTcuNTIgMTguNjQgMTguNDQgMTguNzQgMTkuMzhaXCJcclxuICAgICAgICAgICAgZmlsbD1cIiMyOTJEMzJcIiBzdHJva2U9XCIjMjkyRDMyXCIgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgIGQ9XCJNMTIgMjJDMTcuNTIyOCAyMiAyMiAxNy41MjI4IDIyIDEyQzIyIDYuNDc3MTUgMTcuNTIyOCAyIDEyIDJDNi40NzcxNSAyIDIgNi40NzcxNSAyIDEyQzIgMTcuNTIyOCA2LjQ3NzE1IDIyIDEyIDIyWlwiXHJcbiAgICAgICAgICAgIHN0cm9rZT1cIiMyOTJEMzJcIiBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgIDwvc3ZnPiA8IS0tIDxzcGFuIGNsYXNzPVwiZnctbm9ybWFsIGZzLTZcIiBbc2ltcG9Db2xvcl09XCJhY2NlbnRDb2xvclwiPkxvZ2luPC9zcGFuPiAtLT5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDwhLS0gKG1vdXNlbGVhdmUpPVwic2hvd0xvZ2luID0gZmFsc2VcIiAtLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImluZm8tY29udGFpbmVyIHAtM1wiICpuZ0lmPVwic2hvd0xvZ2luXCIgKG1vdXNlbGVhdmUpPVwic2hvd0xvZ2luID0gZmFsc2VcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dCB0ZXh0LWNlbnRlciBtYi0yIGYtMTggZnctYm9sZFwiPlxyXG4gICAgICAgICAgWW91ciBBY2NvdW50XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInN1Yi10ZXh0IHRleHQtY2VudGVyIGYtMTRcIj5cclxuICAgICAgICAgIEFjY2VzcyBhY2NvdW50ICYgbWFuYWdlIHlvdXIgb3JkZXJzLlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJidG4tY29udGFpbmVyIHctMTAwIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBtdC0zIGdhcC0zXCI+XHJcbiAgICAgICAgICA8ZGl2IChjbGljayk9XCJnb1RvQWNjb3VudCgnU0lHTlVQJylcIiBjbGFzcz1cInctNTAgdGV4dC1jZW50ZXIgc2lnbi1idG4gYm9yZGVyLTBcIlxyXG4gICAgICAgICAgICBbbmdTdHlsZV09XCJ7J2JhY2tncm91bmQnIDogYmFja2dyb3VuZEluZm8/LmFjY2VudEJhY2tncm91bmRUeXBlID09ICdTb2xpZCcgPyAgIGFjY2VudENvbG9yIDogJ2xpbmVhci1ncmFkaWVudCh0byByaWdodCwnICsgYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yICsgJyAwJScgKyAnLCcgKyBiYWNrZ3JvdW5kSW5mbz8uc2Vjb25kYXJ5QWNjZW50Q29sb3IgKycgMTAwJScgKyAnKSd9XCJcclxuICAgICAgICAgICAgW3N0eWxlLmNvbG9yXT1cInN0eWxlPy5iYWNrZ3JvdW5kPy5jb2xvclwiPlNpZ24gVXA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgKGNsaWNrKT1cImdvVG9BY2NvdW50KCdMT0dJTicpXCIgY2xhc3M9XCJ3LTUwIHRleHQtY2VudGVyIHNpZ24tYnRuXCJcclxuICAgICAgICAgICAgW3N0eWxlLmJvcmRlckNvbG9yXT1cImJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvclwiIFtzdHlsZS5jb2xvcl09XCJiYWNrZ3JvdW5kSW5mbz8uYWNjZW50Q29sb3JcIj5Mb2cgSW48L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCIgc3R5bGU9XCJnYXA6IDhweDsgY3Vyc29yOiBwb2ludGVyO1wiIChjbGljayk9XCJnb1RvQWNjb3VudCgnUFJPRklMRScpXCJcclxuICAgICAgICAqbmdJZj1cImxvZ2dlZEluXCI+XHJcbiAgICAgICAgPGltZyBsb2FkaW5nPVwibGF6eVwiIFtzcmNdPVwidXNlckdlbmRlciB8IGdlbmRlckljb25cIiBzdHlsZT1cImhlaWdodDogMjdweDtcIj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDwhLS0gPGRpdj4gLS0+XHJcbiAgICA8IS0tIDxidXR0b24gY2xhc3M9XCJidXR0b25cIiAoY2xpY2spPVwiZ29Ub0FjY291bnQoKVwiIHNpbXBvQnV0dG9uRGlyZWN0aXZlIFtpZF09XCJzZWN0aW9uSWQrYnV0dG9uSWRcIiBbYnV0dG9uU3R5bGVdPVwiYnV0dG9uU3R5bGVcIiBbY29sb3JdPVwiY29sb3JcIiBbYXBwQnV0dG9uRWRpdG9yXT1cImVkaXQgPz8gZmFsc2VcIiBbYnV0dG9uRGF0YV09XCJidXR0b25Db250ZW50XCI+e3tidXR0b25Db250ZW50Py5sYWJlbH19PC9idXR0b24+IC0tPlxyXG4gICAgPCEtLSA8L2Rpdj4gLS0+XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI25hdmJhckxpbmtzVGVtcGxhdGU+XHJcbiAgPGRpdiBjbGFzcz1cIm5hdmJhci1jb2xsYXBzZSBmcy02IHBvc2l0aW9uLXJlbGF0aXZlIGQtZmxleFwiIHN0eWxlPVwibWFyZ2luLXRvcDogNXB4OyBtYXJnaW4tbGVmdDogMjVweDtcIlxyXG4gICAgW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiICpuZ0lmPVwic2NyZWVuV2lkdGggPiA3NjhcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZ2V0TmF2YmFyQnV0dG9uXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtLnNob3dIZWFkZXJcIj5cclxuICAgICAgICA8c2ltcG8tbmF2YmFyLWJ1dHRvbi1lbGVtZW50IFtidXR0b25EYXRhXT1cIml0ZW1cIiBbc2VsZWN0ZWRTdHlsZV09XCJzdHlsZT8ubmF2aWdhdGlvblN0eWxlXCJcclxuICAgICAgICAgIFtidXR0b25TdHlsZV09XCJzdHlsZT8ubmF2YmFyQnV0dG9uU3R5bGVcIiBbYmdDb2xvcl09XCJzaW1wb0NvbG9yXCJcclxuICAgICAgICAgIFtzZWN0aW9uSWRdPVwiZGF0YT8uaWRcIj48L3NpbXBvLW5hdmJhci1idXR0b24tZWxlbWVudD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBsaW5rIG9mIGdldERyb3Bkb3duTGlua3M7IGxldCBpZHggPSBpbmRleFwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29udGVudD8uZWNvbWxpbmtzPy5bbGlua10/Lmxlbmd0aCBcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmVcIj5cclxuICAgICAgICAgIDxidXR0b24gbWF0LXN0cm9rZWQtYnV0dG9uIGNsYXNzPVwibWF0LWJ0biBkcm9wZG93bi10b2dnbGVcIiB0eXBlPVwiYnV0dG9uXCIgW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiIGlkPVwibGlua1wiXHJcbiAgICAgICAgICAgIGRhdGEtYnMtdG9nZ2xlPVwiZHJvcGRvd25cIiBhcmlhLWhhc3BvcHVwPVwidHJ1ZVwiIGFyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiPlxyXG4gICAgICAgICAgICB7e2xpbmsgfCB1cHBlcmNhc2V9fVxyXG4gICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tbWVudVwiIGFyaWEtbGFiZWxsZWRieT1cImxpbmtcIj5cclxuICAgICAgICAgICAgPGEgY2xhc3M9XCJkcm9wZG93bi1pdGVtXCIgKm5nRm9yPVwibGV0IG1lbnUgb2YgZ2V0VmFsdWVzKGNvbnRlbnQ/LmVjb21saW5rcz8uW2xpbmtdKVwiXHJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImFwcGx5RmlsdGVyKG1lbnUsIGxpbmspXCI+e3ttZW51fX08L2E+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxkaXYgY2xhc3M9XCJvZmZjYW52YXNcIiB0YWJpbmRleD1cIi0xXCIgaWQ9XCJvZmZjYW52YXNSaWdodFwiIGFyaWEtbGFiZWxsZWRieT1cIm9mZmNhbnZhc1JpZ2h0TGFiZWxcIlxyXG4gIFtuZ0NsYXNzXT1cInsnb2ZmY2FudmFzLWVuZCcgOiAoc3R5bGU/LnN0eWxpbmcgPT09ICdIZWFkZXIxJyB8fCBzdHlsZT8uc3R5bGluZyA9PT0gJ0hlYWRlcjMnKSAmJiAhaXNFY29tbWVyY2VXZWJzaXRlLCAnb2ZmY2FudmFzLXN0YXJ0Jzogc3R5bGU/LnN0eWxpbmcgPT09ICdIZWFkZXIyJyB8fCBzdHlsZT8uc3R5bGluZyA9PT0gJ0hlYWRlcjQnIHx8IGlzRWNvbW1lcmNlV2Vic2l0ZX1cIj5cclxuICA8ZGl2IGNsYXNzPVwib2ZmY2FudmFzLWhlYWRlclwiIFtzaW1wb0JhY2tncm91bmRdPVwic3R5bGU/LmJhY2tncm91bmRcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJtb2JpbGVMb2dvU2VjdGlvblRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICA8IS0tIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuLWNsb3NlXCIgIGFyaWEtbGFiZWw9XCJDbG9zZVwiPjwvYnV0dG9uPiAtLT5cclxuICAgIDxtYXQtaWNvbiBkYXRhLWJzLWRpc21pc3M9XCJvZmZjYW52YXNcIj5jbG9zZTwvbWF0LWljb24+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cIm9mZmNhbnZhcy1ib2R5XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicGFnZXNcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInBhZ2VMaW5rc1RlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwib2ZmY2FudmFzLWZvb3RlclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNhbnZhcy1idXR0b25cIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImJ1dHRvbnNUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPG5nLXRlbXBsYXRlICNlY29tUHJvZmlsZVRlbXBsYXRlPlxyXG4gIDwhLS0gPG1hdC1pY29uIGNsYXNzPVwiaC0xMDAgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGJyLTUwIGZzLTIyIHB4LTMgcHktMVwiXHJcbiAgICAoY2xpY2spPVwic2hvd1NlYXJjaEJhck1vYmlsZSA9ICFzaG93U2VhcmNoQmFyTW9iaWxlXCJcclxuICAgIFtuZ1N0eWxlXT1cInsnYmFja2dyb3VuZCcgOiBiYWNrZ3JvdW5kSW5mbz8uYWNjZW50QmFja2dyb3VuZFR5cGUgPT0gJ1NvbGlkJyA/ICAgYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yIDogJ2xpbmVhci1ncmFkaWVudCh0byByaWdodCwnICsgYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yICsgJyAwJScgKyAnLCcgKyBiYWNrZ3JvdW5kSW5mbz8uc2Vjb25kYXJ5QWNjZW50Q29sb3IgKycgMTAwJScgKyAnKSd9XCJcclxuICAgIFtzdHlsZS5jb2xvcl09XCJiYWNrZ3JvdW5kSW5mbz8uY29sb3JcIj5zZWFyY2g8L21hdC1pY29uPiAtLT5cclxuXHJcblxyXG4gIDwhLS0gPGlucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2wgbW9iLWZvcm0tY29udHJvbFwiIHBsYWNlaG9sZGVyPVwiU2VhcmNoIFByb2R1Y3RcIiBhcmlhLWxhYmVsPVwiU2VhcmNoIFByb2R1Y3RcIlxyXG4gICAgKm5nSWY9XCJzaG93U2VhcmNoQmFyTW9iaWxlXCIgWyhuZ01vZGVsKV09XCJzZWFyY2hUZXh0XCIgKG5nTW9kZWxDaGFuZ2UpPVwid2FpdEJlZm9yZVNlYXJjaCgpXCJcclxuICAgIFtuZ1N0eWxlXT1cInsnYm9yZGVyJyA6ICcxcHggc29saWQgJyArIGJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvcn1cIj4gLS0+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCIgc3R5bGU9XCJnYXA6IDhweDsgY3Vyc29yOiBwb2ludGVyO1wiIChjbGljayk9XCJnb1RvQWNjb3VudCgnUFJPRklMRScpXCJcclxuICAgICpuZ0lmPVwibG9nZ2VkSW5cIj5cclxuICAgIDxpbWcgbG9hZGluZz1cImxhenlcIiBbc3JjXT1cInVzZXJHZW5kZXIgfCBnZW5kZXJJY29uXCIgc3R5bGU9XCJoZWlnaHQ6IDI3cHg7XCI+XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI21vYmlsZUxvZ29TZWN0aW9uVGVtcGxhdGU+XHJcbiAgPGRpdiBjbGFzcz1cImQtZmxleCBnYXAtMyBhbGlnbi1jZW50ZXIgY3Vyc29yLXBvaW50ZXIgaC0xMDBcIlxyXG4gICAgKm5nSWY9XCIhY29udGVudD8ubG9nbz8uaXNJbWFnZSB8fCAhY29udGVudD8ubG9nbz8uaW1hZ2U/LnVybFwiIChjbGljayk9XCIhZWRpdCA/IGdvVG9Ib21lKCkgOiAnJ1wiPlxyXG4gICAgPGRpdiAqbmdJZj1cImNvbnRlbnQ/LmxvZ28/LnRleHQ/LmlzSWNvbiAmJiBjb250ZW50Py5sb2dvPy50ZXh0Py51cmxcIiBjbGFzcz1cImgtMTAwXCI+XHJcbiAgICAgIDxpbWcgbG9hZGluZz1cImxhenlcIiBbc3JjXT1cImNvbnRlbnQ/LmxvZ28/LnRleHQ/LnVybFwiIGFsdD1cImxvZ29cIiBjbGFzcz1cImgtMTAwXCI+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJoZWFkaW5nLXNtYWxsXCIgKm5nSWY9XCJjb250ZW50Py5sb2dvPy50ZXh0Py5pc1RleHRcIiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCI+XHJcbiAgICAgIDxiPnt7Y29udGVudD8uc2l0ZU5hbWU/LnZhbHVlfX08L2I+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8IS0tIDxkaXYgY2xhc3M9XCJkLWZsZXggZ2FwLTMgYWxpZ24taXRlbXMtbGctY2VudGVyIGN1cnNvci1wb2ludGVyXCIgKm5nSWY9XCJjb250ZW50Py5sb2dvPy5pc0ltYWdlICYmIGNvbnRlbnQ/LmxvZ28/LmltYWdlPy51cmxcIiAoY2xpY2spPVwiZ29Ub0hvbWUoKVwiPiAtLT5cclxuICA8aW1nIFtzcmNdPVwiY29udGVudD8ubG9nbz8uaW1hZ2U/LnVybFwiIGFsdD1cImxvZ29cIiBjbGFzcz1cImgtMTAwXCIgbG9hZGluZz1cImxhenlcIlxyXG4gICAgKm5nSWY9XCJjb250ZW50Py5sb2dvPy5pc0ltYWdlICYmIGNvbnRlbnQ/LmxvZ28/LmltYWdlPy51cmxcIiAoY2xpY2spPVwiIWVkaXQgPyBnb1RvSG9tZSgpIDogJydcIj5cclxuICA8IS0tIDwvZGl2PiAtLT5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjY2F0ZWdvcmllc0hlYWRlcj5cclxuICA8ZGl2IGNsYXNzPVwiY2F0ZWdvcmllcy13cmFwcGVyXCJcclxuICAgICpuZ0lmPVwiKGNhdGVnb3J5TGlzdD8ubGVuZ3RoID4gMCB8fCBjb2xsZWN0aW9uTGlzdD8uY29sbGVjdGlvbnM/Lmxlbmd0aCA+IDApICYmICFpc01vYmlsZVwiXHJcbiAgICAobW91c2VsZWF2ZSk9XCJzaG93TGlzdCA9IGZhbHNlOyBzaG93Q29sbGVjdGlvbnMgPSBmYWxzZVwiPlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJibHVyLW92ZXJsYXlcIiBbY2xhc3MuYWN0aXZlXT1cInNob3dMaXN0IHx8IHNob3dDb2xsZWN0aW9uc1wiPjwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJjYXRlZ29yaWVzLWhlYWRlciBkLWZsZXggZ2FwLTMgcHktMiBwb3NpdGlvbi1yZWxhdGl2ZVwiIFtzcGFjaW5nSG9yaXpvbnRhbF09XCJzdHlsZXNMYXlvdXRcIlxyXG4gICAgICBbc3R5bGUuYmFja2dyb3VuZF09XCJkYXRhPy5zdHlsZXM/LmhlYWRsaW5lPy5jb2xvclwiPlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cImNhdGVnb3J5IGN1cnNvci1wb2ludGVyXCIgKm5nRm9yPVwibGV0IGVsZSBvZiBtZWdhTWVudTsgbGV0IGkgPSBpbmRleFwiXHJcbiAgICAgICAgW3N0eWxlLi0tYm9yZGVyLWNvbG9yXT1cImRhdGE/LnN0eWxlcz8uYmFja2dyb3VuZD8uYWNjZW50Q29sb3JcIiBbc2ltcG9Db2xvcl09XCJkYXRhPy5zdHlsZXM/LmhlYWRsaW5lPy5jb2xvclwiXHJcbiAgICAgICAgKG1vdXNlZW50ZXIpPVwic2V0Q2hpbGRNZW51KGVsZSlcIiAoY2xpY2spPVwicmVkaXJlY3Rpb25zT2ZNZW51KGVsZSlcIj5cclxuICAgICAgICB7e2VsZT8ubGFiZWwgfCB0aXRsZWNhc2V9fVxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDwhLS0gW2NsYXNzLmhpZGUtZHJvcGRvd25dPVwiIXNob3dMaXN0XCIgLS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwibGlzdC1jYXRlZ29yeVwiIFtjbGFzcy5zaG93LWRyb3Bkb3duXT1cInNob3dMaXN0XCIgW2NsYXNzLmhpZGUtZHJvcGRvd25dPVwiIXNob3dMaXN0XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJyb3cgdy0xMDAgaC0xMDAgbWVnYS1tZW51LXNjcm9sbC1yb3dcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBlbGUgb2Ygc2VsZWN0ZWRDYXRlZ29yeTsgbGV0IGkgPSBpbmRleFwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1lZ2EtbWVudS1zY3JvbGwtY29sXCIgW25nQ2xhc3NdPVwiZWxlPy5jaGlsZHJlbj8ubGVuZ3RoID09IDAgJiYgKGVsZS50eXBlPT0nQ09MTEVDVElPTlMnIHx8IGVsZS50eXBlPT0nQ0FURUdPUlknKSA/ICdjb2wtMycgOiAnY29sLTInXCI+XHJcblxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZWxlPy5jaGlsZHJlbj8ubGVuZ3RoID09IDAgJiYgKGVsZS50eXBlPT0nQ09MTEVDVElPTlMnIHx8IGVsZS50eXBlPT0nQ0FURUdPUlknIClcIj5cclxuICAgICAgICAgICAgICA8aW1nIFtzcmNdPVwiZWxlLmltYWdlVXJsXCIgW2FsdF09XCJlbGU/LmxhYmVsXCIgY2xhc3M9XCJ3LTEwMCBtYi0yIGJyLTEyIGN1cnNvci1wb2ludGVyIGNvbGxlY3Rpb25JbWFnZVwiICpuZ0lmPVwiZWxlLmltYWdlVXJsXCIgKGNsaWNrKT1cInJlZGlyZWN0aW9uc09mTWVudShlbGUpXCIgLz5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGlzdC1oZWFkZXIgbWItMyBjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJyZWRpcmVjdGlvbnNPZk1lbnUoZWxlKVwiPlxyXG4gICAgICAgICAgICAgIHt7ZWxlPy5sYWJlbCB8IHRpdGxlY2FzZX19XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZWxlPy5jaGlsZHJlbiAmJiBlbGU/LmNoaWxkcmVuLmxlbmd0aCA+IDBcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGdhcC0zIGxpc3QtaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY2hpbGQgb2YgZWxlPy5jaGlsZHJlblwiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IChjbGljayk9XCJyZWRpcmVjdGlvbnNPZk1lbnUoY2hpbGQpXCIgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7Y2hpbGQ/LmxhYmVsIHwgdGl0bGVjYXNlfX1cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjbW9iaWxlQ2F0ZWdvcnlIZWFkZXI+XHJcbiAgPGRpdiBjbGFzcz1cImNhdGVnb3JpZXMtaGVhZGVyIGQtZmxleCBnYXAtMyAgcHktMiBvdmVyZmxvdy1hdXRvXCIgKm5nSWY9XCJjYXRlZ29yeUxpc3Q/Lmxlbmd0aCA+IDAgJiYgaXNNb2JpbGVcIlxyXG4gICAgW3NwYWNpbmdIb3Jpem9udGFsXT1cInN0eWxlc0xheW91dFwiIFtjbGFzcy5tYXJnaW4tdG9wLW1vYl09XCJpc0hlYWRlclN0aWNreVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNhdGVnb3J5IGN1cnNvci1wb2ludGVyIGQtZmxleCBmbGV4LWNvbHVtbiBnYXAtM1wiICpuZ0Zvcj1cImxldCBlbGUgb2YgY2F0ZWdvcnlMaXN0O2xldCBpID0gaW5kZXhcIlxyXG4gICAgICBbc3R5bGUuY29sb3JdPVwiZGF0YT8uc3R5bGVzPy5iYWNrZ3JvdW5kPy5hY2NlbnRDb2xvclwiIChjbGljayk9XCJzZWxlY3RlZENhdGVnb3J5ID0gZWxlOyBmaWx0ZXJCeUNhdGVnb3J5KClcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNhdC1pbWcgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIHctMTAwXCI+XHJcbiAgICAgICAgPGltZyBbc3JjXT1cImVsZT8uaW1hZ2VVcmxzWzBdXCIgYWx0PVwiXCIgY2xhc3M9XCJoLTEwIGJyLTEyXCI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXIgZi0xNFwiPnt7ZWxlPy5jYXRlZ29yeU5hbWUgfCB0aXRsZWNhc2V9fTwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI2Vjb21tZXJjZV9oZWFkZXI+XHJcbiAgPGhlYWRlciBjbGFzcz1cInNpdGUtaGVhZGVyXCI+XHJcbiAgICA8IS0tIFRvcCBCYXI6IExvZ28sIFNlYXJjaCwgVXNlciBBY3Rpb25zIC0tPlxyXG4gICAgPGRpdiBjbGFzcz1cInRvcC1iYXJcIj5cclxuXHJcbiAgICAgIDwhLS0gTW9iaWxlIE1lbnUgVG9nZ2xlIChDaGVja2JveCBIYWNrKSAtLT5cclxuICAgICAgPGRpdiBbbmdDbGFzc109XCJ7J21vYmlsZS1oZWFkZXItbGVmdC1zaWRlJzogc2NyZWVuV2lkdGggPD0gNDc1fVwiPlxyXG4gICAgICAgIDxsYWJlbCBmb3I9XCJtb2JpbGUtbWVudS1jaGVja2JveFwiIGNsYXNzPVwibW9iaWxlLW1lbnUtYnRuXCIgZGF0YS1icy10b2dnbGU9XCJvZmZjYW52YXNcIlxyXG4gICAgICAgICAgZGF0YS1icy10YXJnZXQ9XCIjb2ZmY2FudmFzUmlnaHRcIiBhcmlhLWNvbnRyb2xzPVwib2ZmY2FudmFzUmlnaHRcIj5cclxuICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCJcclxuICAgICAgICAgICAgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgZmlsbD1cIm5vbmVcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCI+XHJcbiAgICAgICAgICAgIDxsaW5lIHgxPVwiNFwiIHkxPVwiMTJcIiB4Mj1cIjIwXCIgeTI9XCIxMlwiPjwvbGluZT5cclxuICAgICAgICAgICAgPGxpbmUgeDE9XCI0XCIgeTE9XCI2XCIgeDI9XCIyMFwiIHkyPVwiNlwiPjwvbGluZT5cclxuICAgICAgICAgICAgPGxpbmUgeDE9XCI0XCIgeTE9XCIxOFwiIHgyPVwiMjBcIiB5Mj1cIjE4XCI+PC9saW5lPlxyXG4gICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgPC9sYWJlbD5cclxuXHJcbiAgICAgICAgPCEtLSBMb2dvIFNlY3Rpb24gLS0+XHJcbiAgICAgICAgPGEgY2xhc3M9XCJsb2dvXCIgKGNsaWNrKT1cIiFlZGl0ID8gZ29Ub0hvbWUoKSA6ICcnXCIgKm5nSWY9XCJjb250ZW50Py5sb2dvPy5pc0ltYWdlICYmIGNvbnRlbnQ/LmxvZ28/LmltYWdlPy51cmxcIj5cclxuICAgICAgICAgIDxpbWcgW3NyY109XCJjb250ZW50Py5sb2dvPy5pbWFnZT8udXJsXCIgYWx0PVwiTG9nb1wiIGNsYXNzPVwibG9nby1pbWdcIiBbd2lkdGhdPVwiY29udGVudD8ubG9nbz8uc2l6ZSAgKyAxNVwiXHJcbiAgICAgICAgICAgIFtoZWlnaHRdPVwiY29udGVudD8ubG9nbz8uc2l6ZVwiPlxyXG4gICAgICAgIDwvYT5cclxuXHJcbiAgICAgICAgPGEgY2xhc3M9XCJ0ZXh0UGx1c2xvZ29cIiAoY2xpY2spPVwiIWVkaXQgPyBnb1RvSG9tZSgpIDogJydcIiAqbmdJZj1cIiFjb250ZW50Py5sb2dvPy5pc0ltYWdlIFxyXG4gICAgICAgICAgJiYgY29udGVudD8ubG9nbz8udGV4dD8uaXNUZXh0IFxyXG4gICAgICAgICAgJiYgY29udGVudD8ubG9nbz8udGV4dD8uaXNJY29uIFxyXG4gICAgICAgICAgJiYgY29udGVudD8ubG9nbz8udGV4dD8udXJsXCI+XHJcblxyXG4gICAgICAgICAgPGltZyBsb2FkaW5nPVwibGF6eVwiIFtzcmNdPVwiY29udGVudD8ubG9nbz8udGV4dD8udXJsXCIgYWx0PVwiSWNvblwiIGNsYXNzPVwibG9nby1pY29uXCJcclxuICAgICAgICAgICAgW3dpZHRoXT1cImNvbnRlbnQ/LmxvZ28/LnNpemUgKyAxNVwiIFtoZWlnaHRdPVwiY29udGVudD8ubG9nbz8uc2l6ZVwiPlxyXG5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibG9nby10ZXh0XCIgW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiICpuZ0lmPVwic2NyZWVuV2lkdGggPiA0NzVcIj5cclxuICAgICAgICAgICAge3sgY29udGVudD8uc2l0ZU5hbWU/LnZhbHVlIH19XHJcbiAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgPC9hPlxyXG5cclxuICAgICAgICA8YSBjbGFzcz1cImxvZ29cIiAoY2xpY2spPVwiIWVkaXQgPyBnb1RvSG9tZSgpIDogJydcIiAqbmdJZj1cIiFjb250ZW50Py5sb2dvPy5pc0ltYWdlIFxyXG4gICAgICAgICAgJiYgY29udGVudD8ubG9nbz8udGV4dD8uaXNUZXh0IFxyXG4gICAgICAgICAgJiYgIWNvbnRlbnQ/LmxvZ28/LnRleHQ/LmlzSWNvblwiPlxyXG5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibG9nby1tYWluXCIgW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiPlxyXG4gICAgICAgICAgICB7eyBjb250ZW50Py5zaXRlTmFtZT8udmFsdWUgfX1cclxuICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICA8L2E+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLSBTZWFyY2ggQmFyIC0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwic2VhcmNoLXdyYXBwZXJcIiAqbmdJZj1cInNjcmVlbldpZHRoID4gNDc1ICYmIGNvbnRlbnQ/LnNob3dTZWFyY2hCYXIgJiYgZGF0YT8uc3R5bGVzPy5tZW51VHlwZSAhPT0gJ0RST1BET1dOX01FTlUnXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInNlYXJjaC1iYXJcIj5cclxuICAgICAgICAgIDwhLS0gU2VhcmNoIEljb24gU1ZHIC0tPlxyXG4gICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIGNsYXNzPVwic2VhcmNoLWljb25cIj5cclxuICAgICAgICAgICAgPGNpcmNsZSBjeD1cIjExXCIgY3k9XCIxMVwiIHI9XCI4XCI+PC9jaXJjbGU+XHJcbiAgICAgICAgICAgIDxsaW5lIHgxPVwiMjFcIiB5MT1cIjIxXCIgeDI9XCIxNi42NVwiIHkyPVwiMTYuNjVcIj48L2xpbmU+XHJcbiAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIHBsYWNlaG9sZGVyPVwiU2VhcmNoIGZvciBpdGVtXCIgWyhuZ01vZGVsKV09XCJzZWFyY2hUZXh0XCIgKG5nTW9kZWxDaGFuZ2UpPVwid2FpdEJlZm9yZVNlYXJjaCgpXCJcclxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cIlNlYXJjaFwiPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS0gRHJvcGRvd24gbWVudSBzdHlsZSAtLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImRyb3Bkb3duX21lbnVcIiAqbmdJZj1cInNjcmVlbldpZHRoID4gNDc1ICYmIGRhdGE/LnN0eWxlcz8ubWVudVR5cGUgPT09ICdEUk9QRE9XTl9NRU5VJ1wiXHJcbiAgICAgICAgKG1vdXNlbGVhdmUpPVwic2hvd0xpc3QgPSBmYWxzZTsgc2VsZWN0ZWRDYXRlZ29yeSA9IG51bGxcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGQtbmF2XCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGQtdGFiLXdyYXBcIiAqbmdGb3I9XCJsZXQgZWxlIG9mIG1lZ2FNZW51XCIgKG1vdXNlZW50ZXIpPVwic2V0Q2hpbGRNZW51KGVsZSlcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJkZC10YWJcIiBbY2xhc3MuZGQtdGFiLWFjdGl2ZV09XCJzaG93TGlzdCAmJiBzZWxlY3RlZENhdGVnb3J5ID09PSBlbGU/LmNoaWxkcmVuXCJcclxuICAgICAgICAgICAgICAoY2xpY2spPVwicmVkaXJlY3Rpb25zT2ZNZW51KGVsZSlcIj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtbm93cmFwXCI+e3tlbGU/LmxhYmVsIHwgdGl0bGVjYXNlfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgPGltZyBzdHlsZT1cIndpZHRoOjIwcHg7IGhlaWdodDoyMHB4XCIgY2xhc3M9XCJ0YWItYXJyb3dcIiAqbmdJZj1cImVsZT8uY2hpbGRyZW4/Lmxlbmd0aFwiXHJcbiAgICAgICAgICAgICAgICBzcmM9XCJodHRwczovL2Qyejk0OTd4cDh4YjEyLmNsb3VkZnJvbnQubmV0L3Byb2QtaW1hZ2VzLzMzNDk1MmMxNzc2ODY2NDMxODIxZHJvcGRvd24tYXJyb3ctc3ZncmVwby1jb20uc3ZnXCJcclxuICAgICAgICAgICAgICAgIGFsdD1cImRyb3Bkb3duIGFycm93XCI+XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRkLXBhbmVsXCIgKm5nSWY9XCJzaG93TGlzdCAmJiBzZWxlY3RlZENhdGVnb3J5ID09PSBlbGU/LmNoaWxkcmVuICYmIGVsZT8uY2hpbGRyZW4/Lmxlbmd0aFwiXHJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkZC1pdGVtXCIgKm5nRm9yPVwibGV0IGNoaWxkIG9mIGVsZT8uY2hpbGRyZW5cIlxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIiFjaGlsZD8uY2hpbGRyZW4/Lmxlbmd0aCA/IHJlZGlyZWN0aW9uc09mTWVudShjaGlsZCkgOiAnJ1wiPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LW5vd3JhcFwiPnt7Y2hpbGQ/LmxhYmVsIHwgdGl0bGVjYXNlfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImRkLWl0ZW0tYXJyb3dcIiAqbmdJZj1cImNoaWxkPy5jaGlsZHJlbj8ubGVuZ3RoXCI+JiM4MjUwOzwvc3Bhbj5cclxuXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGQtc3VibWVudVwiICpuZ0lmPVwiY2hpbGQ/LmNoaWxkcmVuPy5sZW5ndGhcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRkLXN1Yi1pdGVtXCIgKm5nRm9yPVwibGV0IHN1YiBvZiBjaGlsZD8uY2hpbGRyZW5cIlxyXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJyZWRpcmVjdGlvbnNPZk1lbnUoc3ViKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LW5vd3JhcFwiPnt7c3ViPy5sYWJlbCB8IHRpdGxlY2FzZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcblxyXG4gICAgICA8IS0tIFJpZ2h0IEFjdGlvbnMgLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ1c2VyLWFjdGlvbnNcIj5cclxuICAgICAgICBcclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGF0YT8uc3R5bGVzPy5tZW51VHlwZSA9PT0gJ0RST1BET1dOX01FTlUnICYmIHNjcmVlbldpZHRoID4gNDc1ICYmIGNvbnRlbnQ/LnNob3dTZWFyY2hCYXJcIj5cclxuICAgICAgICAgIDxhIGNsYXNzPVwiYWN0aW9uLWxpbmsgaWNvbi1vbmx5IGRyb3Bkb3duLXNlYXJjaC10b2dnbGVcIiAoY2xpY2spPVwic2hvd0Ryb3Bkb3duRGVza3RvcFNlYXJjaCA9ICFzaG93RHJvcGRvd25EZXNrdG9wU2VhcmNoXCJcclxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cIlRvZ2dsZSBzZWFyY2hcIj5cclxuICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMlwiIGhlaWdodD1cIjIyXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCI+XHJcbiAgICAgICAgICAgICAgPGNpcmNsZSBjeD1cIjExXCIgY3k9XCIxMVwiIHI9XCI4XCI+PC9jaXJjbGU+XHJcbiAgICAgICAgICAgICAgPGxpbmUgeDE9XCIyMVwiIHkxPVwiMjFcIiB4Mj1cIjE2LjY1XCIgeTI9XCIxNi42NVwiPjwvbGluZT5cclxuICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICA8L2E+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdG9yZUF2YWlhYmxlXCI+XHJcbiAgICAgICAgICA8YSBjbGFzcz1cImFjdGlvbi1saW5rIHN0b3JlLWxpbmtcIiAobW91c2VlbnRlcik9XCJzaG93UGluY29kZUlucHV0ID0gdHJ1ZTtzaG93TG9naW4gPSBmYWxzZVwiXHJcbiAgICAgICAgICAgICpuZ0lmPVwiIWdldFBpbmNvZGVcIj5cclxuICAgICAgICAgICAgPCEtLSA8c3ZnIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMTcgMTdcIiB2ZXJzaW9uPVwiMS4xXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXHJcbiAgICAgICAgICAgICAgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgZmlsbD1cIm5vbmVcIiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCIgeG1sbnM6eGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCI+XHJcbiAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgIGQ9XCJNOC41IDAuNWMtMy4wMzIgMC01LjUgMi40NjctNS41IDUuNSAwIDQuMzczIDQuOTEzIDEwLjA4NiA1LjEyMiAxMC4zMjhsMC4zNzggMC40MzUgMC4zNzgtMC40MzZjMC4yMDktMC4yNDEgNS4xMjItNS45NTQgNS4xMjItMTAuMzI3IDAtMy4wMzMtMi40NjgtNS41LTUuNS01LjV6TTguNSAxNS4yMTVjLTEuMTQ2LTEuNDI0LTQuNS01Ljg3OS00LjUtOS4yMTUgMC0yLjQ4MSAyLjAxOS00LjUgNC41LTQuNXM0LjUgMi4wMTkgNC41IDQuNWMwIDMuMzMzLTMuMzU0IDcuNzkxLTQuNSA5LjIxNXpNOC41IDMuMTM5Yy0xLjY1NCAwLTMgMS4zNDYtMyAzczEuMzQ2IDMgMyAzIDMtMS4zNDYgMy0zLTEuMzQ2LTMtMy0zek04LjUgOC4xMzljLTEuMTAzIDAtMi0wLjg5Ny0yLTJzMC44OTctMiAyLTIgMiAwLjg5NyAyIDItMC44OTcgMi0yIDJ6XCJcclxuICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCIgLz5cclxuICAgICAgICAgICAgPC9zdmc+IC0tPlxyXG5cclxuICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCA1MTIgNTEyXCJcclxuICAgICAgICAgICAgICBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgZmlsbD1cImN1cnJlbnRDb2xvclwiPlxyXG4gICAgICAgICAgICAgIDxnPlxyXG4gICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgZD1cIk0zNDEuNDc2IDMzOC4yODVjNTQuNDgzLTg1LjQ5MyA0Ny42MzQtNzQuODI3IDQ5LjIwNC03Ny4wNTZDNDEwLjUxNiAyMzMuMjUxIDQyMSAyMDAuMzIyIDQyMSAxNjYgNDIxIDc0Ljk4IDM0Ny4xMzkgMCAyNTYgMCAxNjUuMTU4IDAgOTEgNzQuODMyIDkxIDE2NmMwIDM0LjMgMTAuNzA0IDY4LjA5MSAzMS4xOSA5Ni40NDZsNDguMzMyIDc1Ljg0QzExOC44NDcgMzQ2LjIyNyAzMSAzNjkuODkyIDMxIDQyMmMwIDE4Ljk5NSAxMi4zOTggNDYuMDY1IDcxLjQ2MiA2Ny4xNTlDMTQzLjcwNCA1MDMuODg4IDE5OC4yMzEgNTEyIDI1NiA1MTJjMTA4LjAyNSAwIDIyNS0zMC40NzIgMjI1LTkwIDAtNTIuMTE3LTg3Ljc0NC03NS43NTctMTM5LjUyNC04My43MTV6bS0xOTQuMjI3LTkyLjM0YTE1LjU3IDE1LjU3IDAgMCAwLS41MTctLjc1OEMxMjkuNjg1IDIyMS43MzUgMTIxIDE5My45NDEgMTIxIDE2NmMwLTc1LjAxOCA2MC40MDYtMTM2IDEzNS0xMzYgNzQuNDM5IDAgMTM1IDYxLjAwOSAxMzUgMTM2IDAgMjcuOTg2LTguNTIxIDU0LjgzNy0yNC42NDYgNzcuNjcxLTEuNDQ1IDEuOTA2IDYuMDk0LTkuODA2LTExMC4zNTQgMTcyLjkxOEwxNDcuMjQ5IDI0NS45NDV6TTI1NiA0ODJjLTExNy45OTQgMC0xOTUtMzQuNjgzLTE5NS02MCAwLTE3LjAxNiAzOS41NjgtNDQuOTk1IDEyNy4yNDgtNTUuOTAxbDU1LjEwMiA4Ni40NjNhMTQuOTk4IDE0Ljk5OCAwIDAgMCAyNS4yOTggMGw1NS4xMDEtODYuNDYzQzQxMS40MzEgMzc3LjAwNSA0NTEgNDA0Ljk4NCA0NTEgNDIyYzAgMjUuMTAyLTc2LjMxMyA2MC0xOTUgNjB6XCI+XHJcbiAgICAgICAgICAgICAgICA8L3BhdGg+XHJcbiAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICBkPVwiTTI1NiA5MWMtNDEuMzU1IDAtNzUgMzMuNjQ1LTc1IDc1czMzLjY0NSA3NSA3NSA3NSA3NS0zMy42NDUgNzUtNzUtMzMuNjQ1LTc1LTc1LTc1em0wIDEyMGMtMjQuODEzIDAtNDUtMjAuMTg3LTQ1LTQ1czIwLjE4Ny00NSA0NS00NSA0NSAyMC4xODcgNDUgNDUtMjAuMTg3IDQ1LTQ1IDQ1elwiPlxyXG4gICAgICAgICAgICAgICAgPC9wYXRoPlxyXG4gICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgPC9zdmc+XHJcblxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN0b3JlLXRleHRcIiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCI+RW50ZXIgUGluY29kZTwvc3Bhbj5cclxuXHJcbiAgICAgICAgICA8L2E+XHJcblxyXG4gICAgICAgICAgPGEgY2xhc3M9XCJhY3Rpb24tbGluayBzdG9yZS1saW5rXCIgKG1vdXNlZW50ZXIpPVwic2hvd1BpbmNvZGVJbnB1dCA9IHRydWU7O3Nob3dMb2dpbiA9IGZhbHNlXCJcclxuICAgICAgICAgICAgW3N0eWxlLmNvbG9yXT1cImJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvclwiICpuZ0lmPVwiZ2V0UGluY29kZSAmJiBnZXRQaW5jb2RlLmxlbmd0aCA9PSA2XCI+XHJcbiAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCJcclxuICAgICAgICAgICAgICBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBmaWxsPVwibm9uZVwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIj5cclxuICAgICAgICAgICAgICA8cGF0aCBkPVwibTIgNyA0LjQxLTQuNDFBMiAyIDAgMCAxIDcuODMgMmg4LjM0YTIgMiAwIDAgMSAxLjQyLjU5TDIyIDdcIj48L3BhdGg+XHJcbiAgICAgICAgICAgICAgPHBhdGggZD1cIk00IDEydjhhMiAyIDAgMCAwIDIgMmgxMmEyIDIgMCAwIDAgMi0ydi04XCI+PC9wYXRoPlxyXG4gICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTUgMjJ2LTRhMiAyIDAgMCAwLTItMmgtMmEyIDIgMCAwIDAtMiAydjRcIj48L3BhdGg+XHJcbiAgICAgICAgICAgICAgPHBhdGggZD1cIk0yIDdoMjBcIj48L3BhdGg+XHJcbiAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgIGQ9XCJNMjIgN3YzYTIgMiAwIDAgMS0yIDJ2MGEyLjcgMi43IDAgMCAxLTEuNTktLjYzLjcuNyAwIDAgMC0uODIgMEEyLjcgMi43IDAgMCAxIDE2IDEyYTIuNyAyLjcgMCAwIDEtMS41OS0uNjMuNy43IDAgMCAwLS44MiAwQTIuNyAyLjcgMCAwIDEgMTIgMTJhMi43IDIuNyAwIDAgMS0xLjU5LS42My43LjcgMCAwIDAtLjgyIDBBMi43IDIuNyAwIDAgMSA4IDEyYTIuNyAyLjcgMCAwIDEtMS41OS0uNjMuNy43IDAgMCAwLS44MiAwQTIuNyAyLjcgMCAwIDEgNCAxMnYwYTIgMiAwIDAgMS0yLTJWN1wiPlxyXG4gICAgICAgICAgICAgIDwvcGF0aD5cclxuICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3RvcmUtdGV4dFwiIFtzaW1wb0NvbG9yXT1cInNpbXBvQ29sb3JcIj57e1wiRGVsaXZlcmluZyB0bzogXCIgK1xyXG4gICAgICAgICAgICAgIGdldFBpbmNvZGV9fTwvc3Bhbj5cclxuXHJcbiAgICAgICAgICA8L2E+XHJcblxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInBpbmNvZGUtY29udGFpbmVyIHAtM1wiICpuZ0lmPVwic2hvd1BpbmNvZGVJbnB1dFwiIChtb3VzZWxlYXZlKT1cInNob3dQaW5jb2RlSW5wdXQgPSBmYWxzZVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dCB0ZXh0LWNlbnRlciBtYi0yIGYtMTggZnctYm9sZFwiPlxyXG4gICAgICAgICAgICAgIFlvdXIgUElOIENvZGUgdW5sb2Nrc1xyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN1Yi10ZXh0IHRleHQtY2VudGVyIGYtMTQgcGluY29kZS10ZXh0XCI+XHJcbiAgICAgICAgICAgICAgRmFzdGVzdCBkZWxpdmVyeSBkYXRlLCBUcnktYXQtSG9tZSBhdmFpbGFiaWxpdHksXHJcbiAgICAgICAgICAgICAgTmVhcmVzdCBzdG9yZSBhbmQgSW4tc3RvcmUgZGVzaWduIVxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwIG10LTIgYnItNSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIHB4LTNcIlxyXG4gICAgICAgICAgICAgIFtjbGFzcy5lcnJvci1ib3JkZXJdPVwicGluRXJyb3JcIj5cclxuICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIHBsYWNlaG9sZGVyPVwiUGluY29kZVwiIGFyaWEtbGFiZWw9XCJQaW5jb2RlXCIgWyhuZ01vZGVsKV09XCJwaW5jb2RlXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwidy03NSBwLTBcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtc3ViLXRleHQgZi0xMSB3LTI1IHRleHQtZW5kIGN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cInNldFBpbmNvZGUoKVwiPlNVQk1JVDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtc3RhcnQgbXQtMiBmLTExXCIgKm5nSWY9XCJwaW5FcnJvclwiPlxyXG4gICAgICAgICAgICAgIFBsZWFzZSBlbnRlciBhIHZhbGlkIHBpbmNvZGVcclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgPGEgY2xhc3M9XCJhY3Rpb24tbGluayBpY29uLW9ubHkgbG9naW4tYnRuXCIgKm5nSWY9XCIhbG9nZ2VkSW5cIlxyXG4gICAgICAgICAgKG1vdXNlZW50ZXIpPVwic2hvd0xvZ2luID0gdHJ1ZTtzaG93UGluY29kZUlucHV0ID0gZmFsc2VcIiAoY2xpY2spPVwic2hvd0xvZ2luID0gIXNob3dMb2dpblwiPlxyXG4gICAgICAgICAgPCEtLSBVc2VyIEljb24gU1ZHIC0tPlxyXG4gICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMlwiIGhlaWdodD1cIjIyXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIFtzaW1wb0NvbG9yXT1cInNpbXBvQ29sb3JcIlxyXG4gICAgICAgICAgICBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBmaWxsPVwibm9uZVwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIj5cclxuICAgICAgICAgICAgPHBhdGggZD1cIk0xOSAyMXYtMmE0IDQgMCAwIDAtNC00SDlhNCA0IDAgMCAwLTQgNHYyXCI+PC9wYXRoPlxyXG4gICAgICAgICAgICA8Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjdcIiByPVwiNFwiPjwvY2lyY2xlPlxyXG4gICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgPC9hPlxyXG5cclxuICAgICAgICA8YSBjbGFzcz1cImFjdGlvbi1saW5rIGljb24tb25seVwiIChjbGljayk9XCJnb1RvQWNjb3VudCgnUFJPRklMRScpXCIgKm5nSWY9XCJsb2dnZWRJblwiPlxyXG4gICAgICAgICAgPCEtLSBVc2VyIEljb24gU1ZHIC0tPlxyXG4gICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMlwiIGhlaWdodD1cIjIyXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIFtzaW1wb0NvbG9yXT1cInNpbXBvQ29sb3JcIlxyXG4gICAgICAgICAgICBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBmaWxsPVwibm9uZVwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIj5cclxuICAgICAgICAgICAgPHBhdGggZD1cIk0xOSAyMXYtMmE0IDQgMCAwIDAtNC00SDlhNCA0IDAgMCAwLTQgNHYyXCI+PC9wYXRoPlxyXG4gICAgICAgICAgICA8Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjdcIiByPVwiNFwiPjwvY2lyY2xlPlxyXG4gICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgPC9hPlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaW5mby1jb250YWluZXIgcC0zXCIgKm5nSWY9XCJzaG93TG9naW5cIiAobW91c2VsZWF2ZSk9XCJzaG93TG9naW4gPSBmYWxzZVwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQgdGV4dC1jZW50ZXIgbWItMiBmLTE4IGZ3LWJvbGRcIj5cclxuICAgICAgICAgICAgWW91ciBBY2NvdW50XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWItdGV4dCB0ZXh0LWNlbnRlciBmLTE0XCI+XHJcbiAgICAgICAgICAgIEFjY2VzcyBhY2NvdW50ICYgbWFuYWdlIHlvdXIgb3JkZXJzLlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnRuLWNvbnRhaW5lciB3LTEwMCBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gbXQtMyBnYXAtM1wiPlxyXG4gICAgICAgICAgICA8ZGl2IChjbGljayk9XCJnb1RvQWNjb3VudCgnU0lHTlVQJylcIiBjbGFzcz1cInctNTAgdGV4dC1jZW50ZXIgc2lnbi1idG4gYm9yZGVyLTBcIlxyXG4gICAgICAgICAgICAgIFtuZ1N0eWxlXT1cInsnYmFja2dyb3VuZCcgOiBiYWNrZ3JvdW5kSW5mbz8uYWNjZW50QmFja2dyb3VuZFR5cGUgPT0gJ1NvbGlkJyA/ICAgYWNjZW50Q29sb3IgOiAnbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCcgKyBiYWNrZ3JvdW5kSW5mbz8uYWNjZW50Q29sb3IgKyAnIDAlJyArICcsJyArIGJhY2tncm91bmRJbmZvPy5zZWNvbmRhcnlBY2NlbnRDb2xvciArJyAxMDAlJyArICcpJ31cIlxyXG4gICAgICAgICAgICAgIFtzdHlsZS5jb2xvcl09XCJzdHlsZT8uYmFja2dyb3VuZD8uY29sb3JcIj5TaWduIFVwPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgKGNsaWNrKT1cImdvVG9BY2NvdW50KCdMT0dJTicpXCIgY2xhc3M9XCJ3LTUwIHRleHQtY2VudGVyIHNpZ24tYnRuXCJcclxuICAgICAgICAgICAgICBbc3R5bGUuYm9yZGVyQ29sb3JdPVwiYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yXCIgW3N0eWxlLmNvbG9yXT1cImJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvclwiPkxvZyBJbjwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxhIGNsYXNzPVwiYWN0aW9uLWxpbmsgaWNvbi1vbmx5IGljb24tY29udGFpbmVyIHdpc2hsaXN0LWljb25cIiAoY2xpY2spPVwiZ29Ub1dpc2hsaXN0KClcIj5cclxuICAgICAgICAgIDwhLS0gSGVhcnQgSWNvbiBTVkcgLS0+XHJcbiAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIyXCIgaGVpZ2h0PVwiMjJcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiXHJcbiAgICAgICAgICAgIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIGZpbGw9XCJub25lXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGQ9XCJNMTkgMTRjMS40OS0xLjQ2IDMtMy4yMSAzLTUuNUE1LjUgNS41IDAgMCAwIDE2LjUgM2MtMS43NiAwLTMgLjUtNC41IDItMS41LTEuNS0yLjc0LTItNC41LTJBNS41IDUuNSAwIDAgMCAyIDguNWMwIDIuMyAxLjUgNC4wNSAzIDUuNWw3IDdaXCI+XHJcbiAgICAgICAgICAgIDwvcGF0aD5cclxuICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgPCEtLSA8c3BhbiBjbGFzcz1cImNvdW50LWJhZGdlXCIgW3N0eWxlLmJhY2tncm91bmRDb2xvcl09XCJhY2NlbnRDb2xvclwiIFtzaW1wb0NvbG9yXT1cImFjY2VudENvbG9yXCI+Mjwvc3Bhbj4gLS0+XHJcbiAgICAgICAgPC9hPlxyXG5cclxuICAgICAgICA8YSBjbGFzcz1cImFjdGlvbi1saW5rIGljb24tb25seSBpY29uLWNvbnRhaW5lciBjYXJ0LWljb25cIiAoY2xpY2spPVwiZ29Ub0NhcnQoKVwiPlxyXG4gICAgICAgICAgPCEtLSBTaG9wcGluZyBCYWcgSWNvbiBTVkcgLS0+XHJcbiAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIyXCIgaGVpZ2h0PVwiMjJcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiXHJcbiAgICAgICAgICAgIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIGZpbGw9XCJub25lXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiPlxyXG4gICAgICAgICAgICA8cGF0aCBkPVwiTTYgMiAzIDZ2MTRhMiAyIDAgMCAwIDIgMmgxNGEyIDIgMCAwIDAgMi0yVjZsLTMtNFpcIj48L3BhdGg+XHJcbiAgICAgICAgICAgIDxwYXRoIGQ9XCJNMyA2aDE4XCI+PC9wYXRoPlxyXG4gICAgICAgICAgICA8cGF0aCBkPVwiTTE2IDEwYTQgNCAwIDAgMS04IDBcIj48L3BhdGg+XHJcbiAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY291bnQtYmFkZ2VcIiBbc3R5bGUuYmFja2dyb3VuZENvbG9yXT1cImFjY2VudENvbG9yXCIgW3NpbXBvQ29sb3JdPVwiYWNjZW50Q29sb3JcIlxyXG4gICAgICAgICAgICAqbmdJZj1cImdldENhcnRJdGVtc0NvdW50XCI+e3tnZXRDYXJ0SXRlbXNDb3VudH19PC9zcGFuPlxyXG4gICAgICAgIDwvYT5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLXNlYXJjaC1leHBhbmRcIlxyXG4gICAgICAgICAgKm5nSWY9XCJkYXRhPy5zdHlsZXM/Lm1lbnVUeXBlID09PSAnRFJPUERPV05fTUVOVScgJiYgc2NyZWVuV2lkdGggPiA0NzUgJiYgY29udGVudD8uc2hvd1NlYXJjaEJhciAmJiBzaG93RHJvcGRvd25EZXNrdG9wU2VhcmNoXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tc2VhcmNoLWJveFwiPlxyXG4gICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgIGNsYXNzPVwiZHJvcGRvd24tc2VhcmNoLWljb25cIj5cclxuICAgICAgICAgICAgICA8Y2lyY2xlIGN4PVwiMTFcIiBjeT1cIjExXCIgcj1cIjhcIj48L2NpcmNsZT5cclxuICAgICAgICAgICAgICA8bGluZSB4MT1cIjIxXCIgeTE9XCIyMVwiIHgyPVwiMTYuNjVcIiB5Mj1cIjE2LjY1XCI+PC9saW5lPlxyXG4gICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgcGxhY2Vob2xkZXI9XCJTZWFyY2ggZm9yLi4uXCIgWyhuZ01vZGVsKV09XCJzZWFyY2hUZXh0XCIgKG5nTW9kZWxDaGFuZ2UpPVwid2FpdEJlZm9yZVNlYXJjaCgpXCJcclxuICAgICAgICAgICAgICBhcmlhLWxhYmVsPVwiU2VhcmNoXCI+XHJcbiAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJkcm9wZG93bi1zZWFyY2gtY2xvc2VcIiAoY2xpY2spPVwic2hvd0Ryb3Bkb3duRGVza3RvcFNlYXJjaCA9IGZhbHNlXCIgYXJpYS1sYWJlbD1cIkNsb3NlIHNlYXJjaFwiPlxyXG4gICAgICAgICAgICAgIDxsaW5lIHgxPVwiMThcIiB5MT1cIjZcIiB4Mj1cIjZcIiB5Mj1cIjE4XCI+PC9saW5lPlxyXG4gICAgICAgICAgICAgIDxsaW5lIHgxPVwiNlwiIHkxPVwiNlwiIHgyPVwiMThcIiB5Mj1cIjE4XCI+PC9saW5lPlxyXG4gICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJzZWFyY2gtd3JhcHBlclwiICpuZ0lmPVwic2NyZWVuV2lkdGggPD0gNDc1ICYmIGNvbnRlbnQ/LnNob3dTZWFyY2hCYXIgJiYgZGF0YT8uc3R5bGVzPy5tZW51VHlwZSAhPT0gJ0RST1BET1dOX01FTlUnXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzZWFyY2gtYmFyXCI+XHJcbiAgICAgICAgPCEtLSBTZWFyY2ggSWNvbiBTVkcgLS0+XHJcbiAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBjbGFzcz1cInNlYXJjaC1pY29uXCI+XHJcbiAgICAgICAgICA8Y2lyY2xlIGN4PVwiMTFcIiBjeT1cIjExXCIgcj1cIjhcIj48L2NpcmNsZT5cclxuICAgICAgICAgIDxsaW5lIHgxPVwiMjFcIiB5MT1cIjIxXCIgeDI9XCIxNi42NVwiIHkyPVwiMTYuNjVcIj48L2xpbmU+XHJcbiAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgcGxhY2Vob2xkZXI9XCJTZWFyY2ggZm9yIGl0ZW1cIiBbKG5nTW9kZWwpXT1cInNlYXJjaFRleHRcIiAobmdNb2RlbENoYW5nZSk9XCJ3YWl0QmVmb3JlU2VhcmNoKClcIlxyXG4gICAgICAgICAgYXJpYS1sYWJlbD1cIlNlYXJjaFwiPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICA8L2hlYWRlcj5cclxuPC9uZy10ZW1wbGF0ZT4iXX0=
|
|
498
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLXNlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9zZWN0aW9ucy9oZWFkZXItc2VjdGlvbi9oZWFkZXItc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2hlYWRlci1zZWN0aW9uL2hlYWRlci1zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMxRixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sd0VBQXdFLENBQUM7QUFFdEgsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDM0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBRXBHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNqRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFHMUYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUUzRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDckQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUd2RixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7Ozs7Ozs7Ozs7QUErQm5FLE1BQU0sT0FBTyxzQkFBc0I7SUF3QmpDLFlBQ21CLGFBQTRCLEVBQzVCLE1BQWMsRUFDZCxjQUE4QixFQUM5QixTQUFvQixFQUNwQixjQUFxQyxFQUM5QyxXQUF3QixFQUN4QixZQUEyQixFQUNKLE9BQW9CO0lBQ25ELG1DQUFtQzs7UUFSbEIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQ3BCLG1CQUFjLEdBQWQsY0FBYyxDQUF1QjtRQUM5QyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixpQkFBWSxHQUFaLFlBQVksQ0FBZTtRQUNKLFlBQU8sR0FBUCxPQUFPLENBQWE7UUEzQjVDLFNBQUksR0FBYSxJQUFJLENBQUM7UUFHeEIsZ0JBQVcsR0FBVyxDQUFDLENBQUM7UUFJL0IsVUFBSyxHQUFHLFNBQVMsQ0FBQztRQUNsQixlQUFVLEdBQVcsRUFBRSxDQUFDO1FBQ3hCLFVBQUssR0FBRyxnQkFBZ0IsQ0FBQztRQUN6QixrQkFBYSxHQUFHLFdBQVcsQ0FBQTtRQUMzQixpQkFBWSxHQUFXLEVBQUUsQ0FBQyxDQUFDLGlCQUFpQjtRQUM1QyxpQ0FBaUM7UUFDakMsdUJBQWtCLEdBQVcsRUFBRSxDQUFDO1FBQ2hDLHFCQUFnQixHQUFXLENBQUMsQ0FBQztRQUM3Qix1QkFBa0IsR0FBWSxLQUFLLENBQUM7UUFDN0IscUJBQWdCLEdBQXdCLElBQUksQ0FBQztRQXVGcEQsc0JBQWlCLEdBQVksS0FBSyxDQUFBO1FBMkNsQyxzQkFBaUIsR0FBWSxLQUFLLENBQUM7UUFVbkMsd0JBQW1CLEdBQVksS0FBSyxDQUFDO1FBQ3JDLDhCQUF5QixHQUFZLEtBQUssQ0FBQztRQUMzQyxpQkFBWSxHQUFZLEtBQUssQ0FBQztRQUM5QixnQkFBVyxHQUFXLEdBQUcsQ0FBQztRQXlCMUIsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFnQzdCLGtCQUFhLEdBQVksS0FBSyxDQUFDO1FBK0UvQixlQUFVLEdBQVksS0FBSyxDQUFDO1FBYzVCLGFBQVEsR0FBWSxLQUFLLENBQUE7UUFDekIsb0JBQWUsR0FBWSxLQUFLLENBQUM7UUFJakMsa0JBQWEsR0FBWSxLQUFLLENBQUM7UUF3Qi9CLG9CQUFlLEdBQVksS0FBSyxDQUFBO1FBSWhDLFdBQU0sR0FBRyxNQUFNLENBQUE7UUFpQmYscUJBQWdCLEdBQVksS0FBSyxDQUFDO1FBQ2xDLFlBQU8sR0FBUSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDckQsZUFBVSxHQUFXLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMzRCxhQUFRLEdBQVksS0FBSyxDQUFDO1FBVzFCLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFrQjNCLG9CQUFlLEdBQVE7WUFDckI7Z0JBQ0UsSUFBSSxFQUFFLE1BQU07Z0JBQ1osUUFBUSxFQUFFLHlFQUF5RTtnQkFDbkYsTUFBTSxFQUFFLEtBQUs7YUFDZDtZQUNEO2dCQUNFLElBQUksRUFBRSxTQUFTO2dCQUNmLFFBQVEsRUFBRSx1RUFBdUU7Z0JBQ2pGLE1BQU0sRUFBRSxLQUFLO2FBQ2Q7WUFDRDtnQkFDRSxJQUFJLEVBQUUsT0FBTztnQkFDYixRQUFRLEVBQUUsZ0hBQWdIO2dCQUMxSCxNQUFNLEVBQUUsS0FBSzthQUNkO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLFVBQVU7Z0JBQ2hCLFFBQVEsRUFBRSx3RUFBd0U7Z0JBQ2xGLE1BQU0sRUFBRSxLQUFLO2FBQ2Q7WUFDRDtnQkFDRSxJQUFJLEVBQUUsYUFBYTtnQkFDbkIsUUFBUSxFQUFFLDJFQUEyRTtnQkFDckYsTUFBTSxFQUFFLEtBQUs7YUFDZDtZQUNEO2dCQUNFLElBQUksRUFBRSxXQUFXO2dCQUNqQixRQUFRLEVBQUUseUVBQXlFO2dCQUNuRixNQUFNLEVBQUUsS0FBSzthQUNkO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLFlBQVk7Z0JBQ2xCLFFBQVEsRUFBRSwwRUFBMEU7Z0JBQ3BGLE1BQU0sRUFBRSxLQUFLO2FBQ2Q7U0FDRixDQUFBO1FBS0QsYUFBUSxHQUFRLEVBQUUsQ0FBQTtRQWxaaEIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdEMsQ0FBQztJQUVELGdCQUFnQjtRQUNkLFlBQVksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUN2QyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUN6QyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDeEIsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ1YsQ0FBQztJQUNELGNBQWM7UUFDWixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsV0FBVyxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUNELE9BQU87UUFDTCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUNELElBQUksWUFBWTtRQUNkLE9BQU8sRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFpQixDQUFDO0lBQ2xELENBQUM7SUFDRCxXQUFXLENBQUMsVUFBZTtRQUN6QixJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztZQUNsQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFDckMsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLFVBQVUsSUFBSSxRQUFRLElBQUksVUFBVSxJQUFJLE9BQU87Z0JBQ2pELElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2xGLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRTtZQUMvQixPQUFPLElBQUksQ0FBQztRQUVkLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDM0MsT0FBTyxJQUFJLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQztJQUM1QixDQUFDO0lBQ0Qsd0JBQXdCO0lBQ3hCLG9DQUFvQztJQUVwQyx1QkFBdUI7SUFDdkIsOEJBQThCO0lBQzlCLHNDQUFzQztJQUN0QyxxREFBcUQ7SUFFckQsZ0NBQWdDO0lBQ2hDLDJFQUEyRTtJQUUzRSx1Q0FBdUM7SUFDdkMsbUNBQW1DO0lBQ25DLElBQUk7SUFDSixZQUFZO1FBQ1YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFDRCxRQUFRO1FBQ04sSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNWLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixFQUFFLElBQUksRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDL0csQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDbEMsQ0FBQztJQUNILENBQUM7SUFDRCxXQUFXLENBQUMsS0FBVSxFQUFFLElBQVk7UUFDbEMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQVU7UUFDakIsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUlELFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUM7UUFDL0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQztRQUNoQyxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNuRCxJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN4QyxDQUFDLENBQUMsQ0FBQTtRQUNGLHNFQUFzRTtRQUN0RSxtRUFBbUU7UUFDbkUsK0VBQStFO1FBRS9FLDBCQUEwQjtRQUMxQixrQ0FBa0M7UUFDbEMsZ0JBQWdCO1FBQ2hCLE1BQU07UUFDTixLQUFLO1FBQ0wsSUFBSSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDbEcsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztRQUNoQyxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUM1QixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUM3QixDQUFDO1FBQ0QsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQTtRQUN4QixDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUE7UUFDUixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUV4QixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDdkUsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUFBO0lBRUosQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksY0FBYyxDQUFDLEdBQUcsRUFBRTtZQUM1QyxVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQTtZQUN4QixDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUE7UUFDVixDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELGdCQUFnQjtRQUNkLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVDLE1BQU0sR0FBRyxHQUFHLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFRLEVBQUUsRUFBRTtZQUM3RCxJQUFJLEdBQUcsRUFBRSxJQUFJLEVBQUUsQ0FBQztnQkFDZCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO1lBQ2hDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFNRCxhQUFhLENBQUMsS0FBYztRQUMxQixJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUM7SUFDdkMsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsYUFBYSxFQUFFLFlBQVksQ0FBQztRQUMvRCxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLEtBQUs7WUFDbkMsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUNuRCxRQUFRLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLENBQUE7SUFDaEYsQ0FBQztJQUNELElBQUksZ0JBQWdCO1FBQ2xCLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxTQUFTLElBQUksSUFBSSxDQUFDLGtCQUFrQjtZQUNwRCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsQ0FBQztRQUM5QyxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFDRCxJQUFJLGtCQUFrQjtRQUNwQixPQUFPLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxJQUFJLFlBQVksQ0FBQztJQUN6QyxDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO0lBQzVCLENBQUM7SUFJRCxZQUFZLENBQUMsTUFBZTtRQUMxQixJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQztJQUM1QixDQUFDO0lBQ0QsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLEtBQUssWUFBWTtZQUN2RCxPQUFPO1FBRVQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFDRCxJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFDbkMsQ0FBQztJQUNELElBQUksY0FBYztRQUNoQixJQUFJLFVBQVUsR0FBeUIsRUFBRSxDQUFDO1FBQzFDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN2QixPQUFPLElBQUksQ0FBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLEtBQUssSUFBSSxJQUFJLENBQUMsV0FBVyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQzFLLENBQUM7SUFDRCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQztJQUNsTCxDQUFDO0lBQ0QsSUFBSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsYUFBYSxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUUsVUFBVSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxXQUFXLENBQUM7SUFDck0sQ0FBQztJQUNELElBQUksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLGFBQWEsRUFBRSxNQUFNLEVBQUUsS0FBSyxJQUFJLElBQUksQ0FBQyxXQUFXLElBQUksQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFDRCxVQUFVLENBQUMsT0FBWTtRQUNyQixJQUFJLENBQUMsYUFBYSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFJRCxJQUFJLGlCQUFpQjtRQUNuQixPQUFPLElBQUksQ0FBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQztJQUMzQyxDQUFDO0lBQ0QsV0FBVztRQUNULElBQUksQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pELFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFDM0QsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ1YsQ0FBQztJQUVELElBQUksbUJBQW1CO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUFJLGtCQUFrQjtRQUNwQixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztRQUNqQyxPQUFPLENBQUMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQ3hGLENBQUM7SUFDRCxJQUFJLGlCQUFpQjtRQUNuQixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsaUJBQWlCLENBQUM7SUFDL0MsQ0FBQztJQUNELElBQUksa0JBQWtCO1FBQ3BCLG9EQUFvRDtRQUNwRCw4Q0FBOEM7UUFDOUMsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLGtCQUFrQixDQUFDO0lBQ2hELENBQUM7SUFDRCxJQUFJLGdCQUFnQjtRQUNsQixPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDO0lBQzdCLENBQUM7SUFDRCxJQUFJLFFBQVE7UUFDVixPQUFPLE1BQU0sQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDO0lBQ2pDLENBQUM7SUFDRCxPQUFPLENBQUMsTUFBVztRQUNqQixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUNELFNBQVMsQ0FBQyxNQUFXO1FBQ25CLE1BQU0sSUFBSSxHQUFjLEVBQUUsQ0FBQztRQUMzQixNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzVELE9BQU8sQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUNELElBQUksVUFBVTtRQUNaLE1BQU0sSUFBSSxHQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFXLENBQUM7UUFDckQsSUFBSSxJQUFJO1lBQ04sT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQ3JCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELElBQUksZUFBZTtRQUNqQixJQUFJLEtBQUssR0FBVyxDQUFDLENBQUM7UUFDdEIsSUFBSSxJQUFJLEdBQVUsRUFBRSxDQUFBO1FBQ3BCLEtBQUssSUFBSSxNQUFNLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxhQUFhLElBQUksRUFBRSxFQUFFLENBQUM7WUFDckQsSUFBSTtnQkFDRixNQUFNO2dCQUNOLHFCQUFxQjtnQkFDckIsTUFBTTtnQkFDTixVQUFVO2dCQUNWLGNBQWM7Z0JBQ2QsY0FBYztnQkFDZCxVQUFVO2dCQUNWLE1BQU07Z0JBQ04sc0JBQXNCO2dCQUN0QixlQUFlO2dCQUNmLHlCQUF5QjthQUMxQixDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDekIsU0FBUztZQUNYLENBQUM7WUFFRCxJQUFJLEtBQUssR0FBRyxDQUFDLElBQUksTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNuQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUNsQixLQUFLLEVBQUUsQ0FBQztZQUNWLENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBSUQscUNBQXFDO0lBQ3JDLHFCQUFxQjtJQUNyQiw0Q0FBNEM7SUFDNUMsSUFBSTtJQUNKLFFBQVE7UUFDTixNQUFNLFNBQVMsR0FBRyxHQUFHLENBQUMsQ0FBQyxrQ0FBa0M7UUFDekQsTUFBTSxDQUFDLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDcEUsTUFBTSxDQUFDLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDcEUsTUFBTSxDQUFDLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDcEUsTUFBTSxVQUFVLEdBQUcsQ0FBQyxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQztRQUV4RCxPQUFPLFVBQVUsR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ3hELENBQUM7SUFPRCxtQkFBbUI7UUFDakIsSUFBSSxDQUFDLFdBQVcsQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQVEsRUFBRSxFQUFFO1lBQ2hFLElBQUksQ0FBQyxhQUFhLEdBQUcsR0FBRyxFQUFFLElBQUksRUFBRSxjQUFjLENBQUM7WUFDL0MsSUFBSSxDQUFDLGVBQWUsR0FBRyxHQUFHLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixDQUFBO1lBQ2xELElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxFQUFFLElBQUksRUFBRSxlQUFlLENBQUM7WUFDL0MsSUFBSSxDQUFDLGNBQWMsR0FBRyxHQUFHLEVBQUUsSUFBSSxFQUFFLGVBQWUsQ0FBQztRQUNuRCxDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxRQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUM7UUFDeEMsSUFBSSxRQUFRLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDaEMsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBQ0Qsc0JBQXNCO1FBQ3BCLElBQUksUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDO1FBQ3hDLElBQUksUUFBUSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxRQUFRLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLFFBQVEsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksUUFBUSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ2pJLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVELGlCQUFpQixDQUFDLEdBQVEsRUFBRSxJQUFTO1FBQ25DLElBQUksSUFBSSxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ25LLENBQUM7UUFDRCxJQUFJLElBQUksSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsV0FBVyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEdBQUcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDekosQ0FBQztRQUNELElBQUksSUFBSSxJQUFJLGFBQWEsRUFBRSxDQUFDO1lBQzFCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUUsRUFBRSxXQUFXLEVBQUUsR0FBRyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUMxRyxDQUFDO0lBQ0gsQ0FBQztJQUVELGdCQUFnQjtRQUNkLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ2pILENBQUM7SUFNRCxVQUFVO1FBQ1IsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQzlDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDOUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDeEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDeEIsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztRQUN2QixDQUFDO0lBQ0gsQ0FBQztJQUlELFdBQVc7UUFDVCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsT0FBTyxDQUFDLE9BQVksRUFBRSxPQUFlO1FBQ25DLE1BQU0sQ0FBQyxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUM1QyxNQUFNLENBQUMsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDNUMsTUFBTSxDQUFDLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzVDLE9BQU8sUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxPQUFPLEdBQUcsR0FBRyxHQUFHLENBQUM7SUFDcEQsQ0FBQztJQUVELHdCQUF3QjtRQUN0QixNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQztRQUMxQyxPQUFPLFFBQVEsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksUUFBUSxLQUFLLEdBQUcsSUFBSSxRQUFRLEtBQUssRUFBRSxDQUFDO0lBQzNFLENBQUM7SUF1Q0QsYUFBYTtRQUNYLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQTtJQUNsQyxDQUFDO0lBR0QsWUFBWTtRQUNWLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUU7WUFDekUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNqQixJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUN0QyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUU7WUFDUCxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ25CLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGtCQUFrQixDQUFDLEdBQVE7UUFFekIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsSUFBSSxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsTUFBTSxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQy9ELE9BQU87UUFDVCxDQUFDO1FBRUQsSUFBSSxHQUFHLENBQUMsSUFBSSxJQUFJLFdBQVcsRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM3QixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDcEQsQ0FBQztJQUdILENBQUM7SUFFRCxZQUFZLENBQUMsR0FBUTtRQUNuQixJQUFJLEdBQUcsQ0FBQyxRQUFRLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDNUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7WUFDckIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEdBQUcsQ0FBQyxRQUFRLENBQUM7UUFDdkMsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztZQUN0QixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO1FBQy9CLENBQUM7SUFDSCxDQUFDOytHQXRkVSxzQkFBc0IseU5BZ0N2QixhQUFhO21HQWhDWixzQkFBc0IsOFpDN0RuQyxvK2lEQW15QmMsbW9lRDd2QlYsWUFBWSxpeEJBQ1osb0JBQW9CLHNNQUNwQixVQUFVLG1EQUNWLE9BQU8sMklBQ1AsNEJBQTRCLHNLQUM1QixXQUFXLCttQkFDWCxzQkFBc0IseUpBQ3RCLG1CQUFtQiwwR0FDbkIsbUJBQW1CLG1GQUNuQixjQUFjLGdGQUNkLGdCQUFnQixxRkFDaEIsb0JBQW9CLHFHQUNwQixjQUFjLGdGQUNkLG9CQUFvQiw4QkFDcEIsZUFBZSwyTkFDZixhQUFhLCtCQUNiLDBCQUEwQiwyR0FDMUIsbUJBQW1COzs0RkFNVixzQkFBc0I7a0JBM0JsQyxTQUFTOytCQUNFLHNCQUFzQixjQUNwQixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixvQkFBb0I7d0JBQ3BCLFVBQVU7d0JBQ1YsT0FBTzt3QkFDUCw0QkFBNEI7d0JBQzVCLFdBQVc7d0JBQ1gsc0JBQXNCO3dCQUN0QixtQkFBbUI7d0JBQ25CLG1CQUFtQjt3QkFDbkIsY0FBYzt3QkFDZCxnQkFBZ0I7d0JBQ2hCLG9CQUFvQjt3QkFDcEIsY0FBYzt3QkFDZCxvQkFBb0I7d0JBQ3BCLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYiwwQkFBMEI7d0JBQzFCLG1CQUFtQjt3QkFDbkIsbUJBQW1CO3FCQUNwQjs7MEJBb0NFLE1BQU07MkJBQUMsYUFBYTt5Q0EvQmQsSUFBSTtzQkFBWixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUN1QixjQUFjO3NCQUExQyxTQUFTO3VCQUFDLGdCQUFnQjtnQkFpRzNCLFFBQVE7c0JBRFAsWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBZ0V6QyxhQUFhO3NCQURaLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIEluamVjdCwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEhlYWRlckNvbnRlbnRNb2RlbCwgSGVhZGVyU2VjdGlvbk1vZGVsLCBIZWFkZXJTdHlsZU1vZGVsIH0gZnJvbSAnLi9oZWFkZXItc2VjdGlvbi5tb2RlbCc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFNpbXBvQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZWxlbWVudHMvc2ltcG8tYnV0dG9uL3NpbXBvLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE5hdmJhckJ1dHRvbkVsZW1lbnRDb21wb25lbnQgfSBmcm9tICcuLy4uLy4uL2VsZW1lbnRzL25hdmJhci1idXR0b24tZWxlbWVudC9uYXZiYXItYnV0dG9uLWVsZW1lbnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRXZlbnRzU2VydmljZSB9IGZyb20gJy4vLi4vLi4vc2VydmljZXMvZXZlbnRzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBCYWNrZ3JvdW5kRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JhY2tncm91bmQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ29udGVudEZpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250ZW50LWZpdC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBIb3ZlckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9ob3Zlci1lbGVtZW50LWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IE92ZXJsYXlEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvb3ZlcmxheS1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBIb3ZlckVsZW1lbnRzQ29tcG9uZW50IH0gZnJvbSAnLi8uLi8uLi9jb21wb25lbnRzL2hvdmVyLWVsZW1lbnRzL2hvdmVyLWVsZW1lbnRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFjdGlvbk1vZGVsLCBCYWNrZ3JvdW5kTW9kZWwsIExheU91dE1vZGVsIH0gZnJvbSAnLi4vLi4vc3R5bGVzL3N0eWxlLm1vZGVsJztcclxuaW1wb3J0IHsgQ29sb3JEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29sb3IuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgU2ltcG9TdGlja3lEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvc3RpY2t5LWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgU3BhY2luZ0hvcml6b250YWxEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvc3BhY2luZy1ob3Jpem9udGFsLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IFN0b3JhZ2VTZXJ2aWNlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3N0b3JhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcclxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcclxuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4uLy4uL2Vjb21tZXJjZS9zdHlsZXMvdXNlci5tb2RhbCc7XHJcbmltcG9ydCB7IEdlbmRlckljb24gfSBmcm9tICcuLi8uLi9waXBlcy9nZW5kZXIucGlwZSc7XHJcbmltcG9ydCB7IE1hdEJvdHRvbVNoZWV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYm90dG9tLXNoZWV0JztcclxuaW1wb3J0IHsgQ2FydENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Vjb21tZXJjZS9zZWN0aW9ucy9jYXJ0L2NhcnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSGVhZGVyX1R5cGUsIFByb2R1Y3RDYXJkVGhlbWUgfSBmcm9tICcuLi8uLi9zdHlsZXMvaW5kZXgnO1xyXG5pbXBvcnQgeyBNb3ZpbmdUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vc2VjdGlvbnMvbW92aW5nLXRleHQvbW92aW5nLXRleHQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTW92aW5nVGV4dE1vZGFsIH0gZnJvbSAnLi4vbW92aW5nLXRleHQvbW92aW5nLXRleHQubW9kYWwnO1xyXG5pbXBvcnQgeyBSZXN0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3Jlc3Quc2VydmljZSc7XHJcbmltcG9ydCB7IExPQ0FMX1NUT1JBR0UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9sb2NhbC1zdG9yYWdlLnRva2VuJztcclxuaW1wb3J0IHsgU3RvcmFnZUxpa2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zdG9yYWdlLWxpa2UnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2ltcG8taGVhZGVyLXNlY3Rpb24nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgU2ltcG9CdXR0b25Db21wb25lbnQsXHJcbiAgICBHZW5kZXJJY29uLFxyXG4gICAgTWF0SWNvbixcclxuICAgIE5hdmJhckJ1dHRvbkVsZW1lbnRDb21wb25lbnQsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIEhvdmVyRWxlbWVudHNDb21wb25lbnQsXHJcbiAgICBCYWNrZ3JvdW5kRGlyZWN0aXZlLFxyXG4gICAgQ29udGVudEZpdERpcmVjdGl2ZSxcclxuICAgIEhvdmVyRGlyZWN0aXZlLFxyXG4gICAgT3ZlcmxheURpcmVjdGl2ZSxcclxuICAgIFNpbXBvU3RpY2t5RGlyZWN0aXZlLFxyXG4gICAgQ29sb3JEaXJlY3RpdmUsXHJcbiAgICBNYXRCb3R0b21TaGVldE1vZHVsZSxcclxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcclxuICAgIE1hdE1lbnVNb2R1bGUsXHJcbiAgICBTcGFjaW5nSG9yaXpvbnRhbERpcmVjdGl2ZSxcclxuICAgIE1vdmluZ1RleHRDb21wb25lbnQsXHJcbiAgICBDb250ZW50Rml0RGlyZWN0aXZlLFxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2hlYWRlci1zZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vaGVhZGVyLXNlY3Rpb24uY29tcG9uZW50LmNzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIEhlYWRlclNlY3Rpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpIGRhdGE/OiBIZWFkZXJTZWN0aW9uTW9kZWw7XHJcbiAgQElucHV0KCkgbmV4dENvbXBvbmVudDogYW55O1xyXG4gIEBJbnB1dCgpIGluZGV4PzogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIGN1c3RvbUNsYXNzPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGVkaXQ/OiBib29sZWFuID0gdHJ1ZTtcclxuICBAVmlld0NoaWxkKFwiY2hpbGRDb250YWluZXJcIikgY2hpbGRDb250YWluZXI6IGFueTtcclxuICBwcml2YXRlIHJlc2l6ZU9ic2VydmVyITogUmVzaXplT2JzZXJ2ZXI7XHJcbiAgcHVibGljIHNjcm9sbFZhbHVlOiBudW1iZXIgPSAwO1xyXG4gIGNvbnRlbnQ/OiBIZWFkZXJDb250ZW50TW9kZWwgfCBhbnk7XHJcbiAgc3R5bGU/OiBIZWFkZXJTdHlsZU1vZGVsXHJcbiAgYWN0aW9uPzogQWN0aW9uTW9kZWxcclxuICBjb2xvciA9ICcjMDAwMDAwJztcclxuICBzZWFyY2hUZXh0OiBzdHJpbmcgPSBcIlwiO1xyXG4gIHRoZW1lID0gUHJvZHVjdENhcmRUaGVtZTtcclxuICBIZWFkZXJTdHlsaW5nID0gSGVhZGVyX1R5cGVcclxuICBwYXJlbnRIZWlnaHQ6IG51bWJlciA9IDcwOyAvLyBEZWZhdWx0IGhlaWdodFxyXG4gIC8vIG1hdERpYWxvZyA9IGluamVjdChNYXREaWFsb2cpO1xyXG4gIGN1cnJlbnRQbGFjZWhvbGRlcjogc3RyaW5nID0gJyc7XHJcbiAgcGxhY2Vob2xkZXJJbmRleDogbnVtYmVyID0gMDtcclxuICBhbmltYXRlUGxhY2Vob2xkZXI6IGJvb2xlYW4gPSBmYWxzZTtcclxuIHByaXZhdGUgX2V2ZW50U3Vic2NyaWJlcjogU3Vic2NyaXB0aW9uIHwgbnVsbCA9IG51bGw7XHJcblxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2V2ZW50U2VydmljZTogRXZlbnRzU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgbWF0RGlhbG9nOiBNYXREaWFsb2csXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlc3RTZXJ2aWNlOiBSZXN0U2VydmljZSxcclxuICAgIHByaXZhdGUgZXZlbnRTZXJ2aWNlOiBFdmVudHNTZXJ2aWNlLFxyXG4gICAgQEluamVjdChMT0NBTF9TVE9SQUdFKSBwcml2YXRlIHN0b3JhZ2U6IFN0b3JhZ2VMaWtlXHJcbiAgICAvLyBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge1xyXG4gICAgdGhpcy5nZXRTY3JlZW5TaXplKCk7XHJcbiAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnVwZGF0ZUFsbERhdGEoKTtcclxuICB9XHJcbiAgc2VhcmNoQ2hhbmdlVGltZW91dDogYW55O1xyXG4gIHdhaXRCZWZvcmVTZWFyY2goKSB7XHJcbiAgICBjbGVhclRpbWVvdXQodGhpcy5zZWFyY2hDaGFuZ2VUaW1lb3V0KTtcclxuICAgIHRoaXMuc2VhcmNoQ2hhbmdlVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLnNlYXJjaFByb2R1Y3RzKCk7XHJcbiAgICB9LCA1MDApO1xyXG4gIH1cclxuICBzZWFyY2hQcm9kdWN0cygpIHtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2xpc3QnXSwgeyBxdWVyeVBhcmFtczogeyBzZWFyY2hUeHQ6IHRoaXMuc2VhcmNoVGV4dCB9IH0pO1xyXG4gIH1cclxuICBnb1RvRmF2KCkge1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvd2lzaGxpc3QnXSk7XHJcbiAgfVxyXG4gIGdldCBzdHlsZXNMYXlvdXQoKSB7XHJcbiAgICByZXR1cm4geyAuLi50aGlzLnN0eWxlPy5sYXlvdXQgfSBhcyBMYXlPdXRNb2RlbDtcclxuICB9XHJcbiAgZ29Ub0FjY291bnQocmVkaXJlY3RUbzogYW55KSB7XHJcbiAgICBpZiAodGhpcy5zdG9yYWdlU2VydmljZS5nZXRVc2VyKCkpIHtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvcHJvZmlsZSddKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmIChyZWRpcmVjdFRvID09ICdTSUdOVVAnIHx8IHJlZGlyZWN0VG8gPT0gJ0xPR0lOJylcclxuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9sb2dpbiddLCB7IHF1ZXJ5UGFyYW1zOiB7IHJlZGlyZWN0VG86IHJlZGlyZWN0VG8gfSB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldCBsb2dnZWRJbigpIHtcclxuICAgIGlmICh0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldFVzZXIoKSlcclxuICAgICAgcmV0dXJuIHRydWU7XHJcblxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGdldFVzZXJOYW1lKCkge1xyXG4gICAgY29uc3QgdXNlciA9IHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0VXNlcigpO1xyXG4gICAgcmV0dXJuIHVzZXI/LmNvbnRhY3QubmFtZTtcclxuICB9XHJcbiAgLy8gY2hhbmdlUGxhY2Vob2xkZXIoKSB7XHJcbiAgLy8gICB0aGlzLmFuaW1hdGVQbGFjZWhvbGRlciA9IHRydWU7XHJcblxyXG4gIC8vICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgLy8gICAgIHRoaXMucGxhY2Vob2xkZXJJbmRleCA9XHJcbiAgLy8gICAgICAgKHRoaXMucGxhY2Vob2xkZXJJbmRleCArIDEpICVcclxuICAvLyAgICAgICB0aGlzLnN0eWxlPy5zZWFyY2hCYXJQbGFjZWhvbGRlckxpc3QubGVuZ3RoO1xyXG5cclxuICAvLyAgICAgdGhpcy5jdXJyZW50UGxhY2Vob2xkZXIgPVxyXG4gIC8vICAgICAgIHRoaXMuc3R5bGU/LnNlYXJjaEJhclBsYWNlaG9sZGVyTGlzdFt0aGlzLnBsYWNlaG9sZGVySW5kZXhdLnZhbHVlO1xyXG5cclxuICAvLyAgICAgdGhpcy5hbmltYXRlUGxhY2Vob2xkZXIgPSBmYWxzZTtcclxuICAvLyAgIH0sIDQwMCk7IC8vIGFuaW1hdGlvbiBkdXJhdGlvblxyXG4gIC8vIH1cclxuICBnb1RvV2lzaGxpc3QoKSB7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy93aXNobGlzdCddKTtcclxuICB9XHJcbiAgZ29Ub0NhcnQoKSB7XHJcbiAgICBpZiAoZmFsc2UpIHtcclxuICAgICAgdGhpcy5tYXREaWFsb2cub3BlbihDYXJ0Q29tcG9uZW50LCB7IHdpZHRoOiAnMjh2dycsIHBhbmVsQ2xhc3M6ICdzaWRlcGFuZWwtY2xhc3MnLCBkYXRhOiB7IHdpbmRvdzogdHJ1ZSB9IH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvY2FydCddKTtcclxuICAgIH1cclxuICB9XHJcbiAgYXBwbHlGaWx0ZXIodmFsdWU6IGFueSwgdHlwZTogc3RyaW5nKSB7XHJcbiAgICB2YWx1ZSA9IHZhbHVlWzBdPy5yZXBsYWNlKFwiIFwiLCBcIl9cIik7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9saXN0J10sIHsgcXVlcnlQYXJhbXM6IHsgW3R5cGVdOiB2YWx1ZSB9IH0pO1xyXG4gIH1cclxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6c2Nyb2xsJywgWyckZXZlbnQnXSlcclxuICBvblNjcm9sbChldmVudDogYW55KSB7XHJcbiAgICB0aGlzLnNjcm9sbFZhbHVlID0gd2luZG93LnNjcm9sbFk7XHJcbiAgICB0aGlzLmlzU2Nyb2xsZWQgPSB3aW5kb3cuc2Nyb2xsWSA+IDUwO1xyXG4gIH1cclxuICBtb3ZpbmdUZXh0PzogTW92aW5nVGV4dE1vZGFsXHJcbiAgdG9TaG93SW5KZXdlbGxlcnk6IGJvb2xlYW4gPSBmYWxzZVxyXG4gIGRpZmZlcjogYW55O1xyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jb250ZW50ID0gdGhpcy5kYXRhPy5jb250ZW50O1xyXG4gICAgdGhpcy5zdHlsZSA9IHRoaXMuZGF0YT8uc3R5bGVzO1xyXG4gICAgdGhpcy5hY3Rpb24gPSB0aGlzLmRhdGE/LmFjdGlvbjtcclxuICAgIHRoaXMuYWN0aXZhdGVkUm91dGUucXVlcnlQYXJhbXMuc3Vic2NyaWJlKChxUGFyYW0pID0+IHtcclxuICAgICAgdGhpcy5zZWFyY2hUZXh0ID0gcVBhcmFtW1wic2VhcmNoVHh0XCJdO1xyXG4gICAgfSlcclxuICAgIC8vIHRoaXMuZXZlbnRTZXJ2aWNlLmFjdGl2YXRlU21hcnRTZWFyY2guc3Vic2NyaWJlKChyZXM6IGJvb2xlYW4pID0+IHtcclxuICAgIC8vICAgaWYgKHRoaXMuc3R5bGU/LnNlYXJjaEJhclBsYWNlaG9sZGVyTGlzdD8ubGVuZ3RoID4gMCAmJiByZXMpIHtcclxuICAgIC8vICAgICB0aGlzLmN1cnJlbnRQbGFjZWhvbGRlciA9IHRoaXMuc3R5bGU/LnNlYXJjaEJhclBsYWNlaG9sZGVyTGlzdFswXS52YWx1ZTtcclxuXHJcbiAgICAvLyAgICAgc2V0SW50ZXJ2YWwoKCkgPT4ge1xyXG4gICAgLy8gICAgICAgdGhpcy5jaGFuZ2VQbGFjZWhvbGRlcigpO1xyXG4gICAgLy8gICAgIH0sIDMwMDApO1xyXG4gICAgLy8gICB9XHJcbiAgICAvLyB9KVxyXG4gICAgaWYgKHdpbmRvdz8ubG9jYXRpb24/Lm9yaWdpbj8uaW5jbHVkZXMoJ2NhcmF0bGFuZScpIHx8IHdpbmRvdz8ubG9jYXRpb24/Lm9yaWdpbj8uaW5jbHVkZXMoJ29ycmEnKSkge1xyXG4gICAgICB0aGlzLnRvU2hvd0luSmV3ZWxsZXJ5ID0gdHJ1ZTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmlzRWNvbW1lcmNlV2Vic2l0ZSkge1xyXG4gICAgICB0aGlzLmdldENhdGVnb3JpZXNIZWFkZXIoKTtcclxuICAgIH1cclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLmdldFBhcmVudEhlaWdodCgpXHJcbiAgICB9LCAzMDAwKVxyXG4gICAgdGhpcy5jaGVja1Bhc3Nib29rQXBwKCk7XHJcblxyXG4gICAgdGhpcy5fZXZlbnRTdWJzY3JpYmVyID0gdGhpcy5fZXZlbnRTZXJ2aWNlLm1lbnVMaXN0LnN1YnNjcmliZSgocmVzcG9uc2UpID0+IHtcclxuICAgICAgICB0aGlzLmdldE1lbnVJdGVtcygpO1xyXG4gICAgfSlcclxuICAgIFxyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5yZXNpemVPYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcigoKSA9PiB7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuZ2V0UGFyZW50SGVpZ2h0KClcclxuICAgICAgfSwgMTAwMClcclxuICAgIH0pO1xyXG4gICAgdGhpcy5yZXNpemVPYnNlcnZlci5vYnNlcnZlKHRoaXMuY2hpbGRDb250YWluZXIubmF0aXZlRWxlbWVudCk7XHJcbiAgfVxyXG4gIHBhc3Nib29rQXBwU3RhdHVzOiBib29sZWFuID0gZmFsc2U7XHJcbiAgY2hlY2tQYXNzYm9va0FwcCgpIHtcclxuICAgIGNvbnN0IGRldGFpbHMgPSB0aGlzLnN0b3JhZ2UuZ2V0SXRlbSgnYklkJyk7XHJcbiAgICBjb25zdCBiSWQgPSBkZXRhaWxzID8/ICcnO1xyXG4gICAgdGhpcy5yZXN0U2VydmljZS5QYXNzYm9va0FwcFN0YXR1cyhiSWQpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgaWYgKHJlcz8uZGF0YSkge1xyXG4gICAgICAgIHRoaXMucGFzc2Jvb2tBcHBTdGF0dXMgPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuICBzaG93U2VhcmNoQmFyTW9iaWxlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgc2hvd0Ryb3Bkb3duRGVza3RvcFNlYXJjaDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGlzTmF2YmFyT3BlbjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHNjcmVlbldpZHRoOiBudW1iZXIgPSA0NzU7XHJcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFsnJGV2ZW50J10pXHJcbiAgZ2V0U2NyZWVuU2l6ZShldmVudD86IG51bWJlcikge1xyXG4gICAgdGhpcy5zY3JlZW5XaWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoO1xyXG4gIH1cclxuICBoZWlnaHQ6IGFueVxyXG4gIGdldFBhcmVudEhlaWdodCgpIHtcclxuICAgIHRoaXMuaGVpZ2h0ID0gdGhpcy5jaGlsZENvbnRhaW5lcj8ubmF0aXZlRWxlbWVudD8uc2Nyb2xsSGVpZ2h0O1xyXG4gICAgaWYgKHRoaXMubmV4dENvbXBvbmVudD8uc3R5bGVzPy5tZXJnZSlcclxuICAgICAgdGhpcy5ldmVudFNlcnZpY2UuZWxlbWVudEhlaWdodC5lbWl0KHRoaXMuaGVpZ2h0KVxyXG4gICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KFwiLS1tYXJnaW4tdG9wXCIsIHRoaXMuaGVpZ2h0ICsgXCJweFwiKVxyXG4gIH1cclxuICBnZXQgZ2V0RHJvcGRvd25MaW5rcygpIHtcclxuICAgIGlmICh0aGlzLmNvbnRlbnQ/LmVjb21saW5rcyAmJiB0aGlzLmlzRWNvbW1lcmNlV2Vic2l0ZSlcclxuICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuY29udGVudD8uZWNvbWxpbmtzKTtcclxuICAgIHJldHVybiBbXTtcclxuICB9XHJcbiAgZ2V0IGlzRWNvbW1lcmNlV2Vic2l0ZSgpIHtcclxuICAgIHJldHVybiB0aGlzLmRhdGE/LnR5cGUgPT0gXCJFX0NPTU1FUkNFXCI7XHJcbiAgfVxyXG5cclxuICBjbG9zZSgpIHtcclxuICAgIHRoaXMuaXNOYXZiYXJPcGVuID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBzaG93RWRpdG9yczogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBzaG93RWRpdFRhYnMoaXNTaG93OiBib29sZWFuKSB7XHJcbiAgICB0aGlzLnNob3dFZGl0b3JzID0gaXNTaG93O1xyXG4gIH1cclxuICBnb1RvSG9tZSgpIHtcclxuICAgIGlmICh0aGlzLnN0b3JhZ2UuZ2V0SXRlbSgnUkVRVUVTVF9GUk9NJykgPT09ICdFX0NPTU1FUkNFJylcclxuICAgICAgcmV0dXJuO1xyXG5cclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnJ10pO1xyXG4gIH1cclxuICBnZXQgaXNIZWFkZXJTdGlja3koKSB7XHJcbiAgICByZXR1cm4gdGhpcy5kYXRhPy5zdHlsZXM/LnN0aWNreTtcclxuICB9XHJcbiAgZ2V0IGJhY2tncm91bmRJbmZvKCkge1xyXG4gICAgbGV0IGJhY2tncm91bmQ6IEJhY2tncm91bmRNb2RlbCB8IHt9ID0ge307XHJcbiAgICB0aGlzLmdldFBhcmVudEhlaWdodCgpO1xyXG4gICAgcmV0dXJuIHRoaXMubmV4dENvbXBvbmVudD8uc3R5bGVzPy5tZXJnZSAmJiB0aGlzLnNjcm9sbFZhbHVlID09IDAgJiYgIXRoaXMuaXNNb2JpbGUgPyB7IC4uLnRoaXMubmV4dENvbXBvbmVudC5zdHlsZXMuYmFja2dyb3VuZCB9IDogeyAuLi50aGlzLmRhdGE/LnN0eWxlcy5iYWNrZ3JvdW5kIH07XHJcbiAgfVxyXG4gIGdldCBzaW1wb0NvbG9yKCkge1xyXG4gICAgcmV0dXJuIHRoaXMubmV4dENvbXBvbmVudD8uc3R5bGVzPy5tZXJnZSA/ICh0aGlzLnNjcm9sbFZhbHVlID4gMCA/IHRoaXMuc3R5bGU/LmJhY2tncm91bmQuY29sb3IgOiB0aGlzLm5leHRDb21wb25lbnQuc3R5bGVzPy5iYWNrZ3JvdW5kPy5jb2xvcikgOiB0aGlzLnN0eWxlPy5iYWNrZ3JvdW5kPy5jb2xvcjtcclxuICB9XHJcbiAgZ2V0IGFjY2VudENvbG9yKCkge1xyXG4gICAgcmV0dXJuIHRoaXMubmV4dENvbXBvbmVudD8uc3R5bGVzPy5tZXJnZSA/ICh0aGlzLnNjcm9sbFZhbHVlID4gMCA/IHRoaXMuc3R5bGU/LmJhY2tncm91bmQ/LmFjY2VudENvbG9yIDogdGhpcy5uZXh0Q29tcG9uZW50LnN0eWxlcz8uYmFja2dyb3VuZD8uYWNjZW50Q29sb3IpIDogdGhpcy5zdHlsZT8uYmFja2dyb3VuZD8uYWNjZW50Q29sb3I7XHJcbiAgfVxyXG4gIGdldCBpc1RyYW5zcGFyZW50KCkge1xyXG4gICAgcmV0dXJuIHRoaXMubmV4dENvbXBvbmVudD8uc3R5bGVzPy5tZXJnZSAmJiB0aGlzLnNjcm9sbFZhbHVlID09IDA7XHJcbiAgfVxyXG4gIHJlZGlyZWN0VG8oY29udGVudDogYW55KSB7XHJcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UuYnV0dG9uUmVkaXJlY3Rpb24uZW1pdCh7IGRhdGE6IGNvbnRlbnQgfSk7XHJcbiAgfVxyXG5cclxuICBzaG93U2VhcmNoQmFyOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIGdldCBpc0NvbXBvbmVudE1lcmdlZCgpIHtcclxuICAgIHJldHVybiB0aGlzLm5leHRDb21wb25lbnQ/LnN0eWxlcz8ubWVyZ2U7XHJcbiAgfVxyXG4gIGVkaXRTZWN0aW9uKCkge1xyXG4gICAgdGhpcy5fZXZlbnRTZXJ2aWNlLnRvZ2dsZUVkaXRvckV2ZW50LmVtaXQoZmFsc2UpO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuX2V2ZW50U2VydmljZS5lZGl0U2VjdGlvbi5lbWl0KHsgZGF0YTogdGhpcy5kYXRhIH0pO1xyXG4gICAgfSwgMTAwKTtcclxuICB9XHJcblxyXG4gIGdldCBjYW5TaG93TW9iaWxlRm9vdGVyKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuaXNFY29tbWVyY2VXZWJzaXRlO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHNob3dNb2JpbGVIb21lSWNvbigpIHtcclxuICAgIGNvbnN0IHVybCA9IHdpbmRvdy5sb2NhdGlvbi5ocmVmO1xyXG4gICAgcmV0dXJuICEodXJsLmluY2x1ZGVzKFwiY2FydFwiKSB8fCB1cmwuaW5jbHVkZXMoXCJwcm9maWxlXCIpIHx8IHVybC5pbmNsdWRlcyhcIndpc2hsaXN0XCIpKTtcclxuICB9XHJcbiAgZ2V0IGdldENhcnRJdGVtc0NvdW50KCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yYWdlU2VydmljZS5nZXRUb3RhbENhcnRJdGVtcztcclxuICB9XHJcbiAgZ2V0IGdldENhcnRUb3RhbEFtb3VudCgpIHtcclxuICAgIC8vIGNvbnNvbGUubG9nKHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0Q2FydEFtb3VudCgpKTtcclxuICAgIC8vIHJldHVybiB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldENhcnRBbW91bnQoKTtcclxuICAgIHJldHVybiB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldENhcnRUb3RhbEFtb3VudDtcclxuICB9XHJcbiAgZ2V0IGdldEhlYWRlclN0eWxpbmcoKTogSGVhZGVyX1R5cGUgfCB1bmRlZmluZWQge1xyXG4gICAgcmV0dXJuIHRoaXMuc3R5bGU/LnN0eWxpbmc7XHJcbiAgfVxyXG4gIGdldCBpc01vYmlsZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB3aW5kb3cuaW5uZXJXaWR0aCA8IDQ3NTtcclxuICB9XHJcbiAgZ2V0S2V5cyhvYmplY3Q6IGFueSk6IHN0cmluZ1tdIHtcclxuICAgIHJldHVybiBPYmplY3Qua2V5cyhvYmplY3QpO1xyXG4gIH1cclxuICBnZXRWYWx1ZXMob2JqZWN0OiBhbnkpOiB1bmtub3duW10ge1xyXG4gICAgY29uc3Qga2V5czogdW5rbm93bltdID0gW107XHJcbiAgICBvYmplY3QuZm9yRWFjaCgoa2V5OiBhbnkpID0+IGtleXMucHVzaChPYmplY3QudmFsdWVzKGtleSkpKTtcclxuICAgIHJldHVybiBbLi4ubmV3IFNldChrZXlzKV07XHJcbiAgfVxyXG4gIGdldCB1c2VyR2VuZGVyKCkge1xyXG4gICAgY29uc3QgdXNlciA9ICh0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldFVzZXIoKSBhcyBVc2VyKTtcclxuICAgIGlmICh1c2VyKVxyXG4gICAgICByZXR1cm4gdXNlci5nZW5kZXI7XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIGdldCBnZXROYXZiYXJCdXR0b24oKSB7XHJcbiAgICBsZXQgY291bnQ6IG51bWJlciA9IDA7XHJcbiAgICBsZXQgcGFnZTogYW55W10gPSBbXVxyXG4gICAgZm9yIChsZXQgYnV0dG9uIG9mIHRoaXMuY29udGVudD8ubmF2YmFyQnV0dG9ucyB8fCBbXSkge1xyXG4gICAgICBpZiAoW1xyXG4gICAgICAgICdIb21lJyxcclxuICAgICAgICAnUHJvZHVjdCBEZXNjcmlwdGlvbicsXHJcbiAgICAgICAgJ0NhcnQnLFxyXG4gICAgICAgICdXaXNobGlzdCcsXHJcbiAgICAgICAgJ1VzZXIgcHJvZmlsZScsXHJcbiAgICAgICAgJ1Byb2R1Y3QgTGlzdCcsXHJcbiAgICAgICAgJ0NoZWNrb3V0JyxcclxuICAgICAgICAnQXV0aCcsXHJcbiAgICAgICAgJ1BheW1lbnQgVmVyaWZpY2F0aW9uJyxcclxuICAgICAgICAnTGlzdCBDYXRlZ29yeScsXHJcbiAgICAgICAgJ0F1dGhlbnRpY2F0aW9uIFJlcXVpcmVkJ1xyXG4gICAgICBdLmluY2x1ZGVzKGJ1dHRvbi5sYWJlbCkpIHtcclxuICAgICAgICBjb250aW51ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKGNvdW50IDwgNiAmJiBidXR0b24uc2hvd0hlYWRlcikge1xyXG4gICAgICAgIHBhZ2UucHVzaChidXR0b24pO1xyXG4gICAgICAgIGNvdW50Kys7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gcGFnZTtcclxuICB9XHJcblxyXG5cclxuICBpc1Njcm9sbGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgLy8gQEhvc3RMaXN0ZW5lcignd2luZG93OnNjcm9sbCcsIFtdKVxyXG4gIC8vIG9uV2luZG93U2Nyb2xsKCkge1xyXG4gIC8vICAgdGhpcy5pc1Njcm9sbGVkID0gIHdpbmRvdy5zY3JvbGxZID4gNTA7XHJcbiAgLy8gfVxyXG4gIHNldENvbG9yKCkge1xyXG4gICAgY29uc3QgdGhyZXNob2xkID0gMTMwOyAvLyBBZGp1c3QgdGhpcyB0aHJlc2hvbGQgYXMgbmVlZGVkXHJcbiAgICBjb25zdCByID0gcGFyc2VJbnQodGhpcy5iYWNrZ3JvdW5kSW5mby5hY2NlbnRDb2xvci5zbGljZSgxLCAzKSwgMTYpO1xyXG4gICAgY29uc3QgZyA9IHBhcnNlSW50KHRoaXMuYmFja2dyb3VuZEluZm8uYWNjZW50Q29sb3Iuc2xpY2UoMywgNSksIDE2KTtcclxuICAgIGNvbnN0IGIgPSBwYXJzZUludCh0aGlzLmJhY2tncm91bmRJbmZvLmFjY2VudENvbG9yLnNsaWNlKDUsIDcpLCAxNik7XHJcbiAgICBjb25zdCBicmlnaHRuZXNzID0gKHIgKiAyOTkgKyBnICogNTg3ICsgYiAqIDExNCkgLyAxMDAwO1xyXG5cclxuICAgIHJldHVybiBicmlnaHRuZXNzID4gdGhyZXNob2xkID8gJyMwMDAwMDAnIDogJyNmZmZmZmYnO1xyXG4gIH1cclxuICBzaG93TGlzdDogYm9vbGVhbiA9IGZhbHNlXHJcbiAgc2hvd0NvbGxlY3Rpb25zOiBib29sZWFuID0gZmFsc2U7XHJcbiAgY2F0ZWdvcnlMaXN0OiBhbnk7XHJcbiAgY29sbGVjdGlvbkxpc3Q6IGFueTtcclxuICBzZWxlY3RlZENhdGVnb3J5OiBhbnk7XHJcbiAgc3RvcmVBdmFpYWJsZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGdldENhdGVnb3JpZXNIZWFkZXIoKSB7XHJcbiAgICB0aGlzLnJlc3RTZXJ2aWNlLmdldENhdGVnb3JpZXNIZWFkZXJEYXRhKCkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICB0aGlzLnN0b3JlQXZhaWFibGUgPSByZXM/LmRhdGE/LnN0b3JlQXZhaWxhYmxlO1xyXG4gICAgICB0aGlzLnNjaGVtZUF2YWlsYWJsZSA9IHJlcz8uZGF0YT8uc2NoZW1lc0F2YWlsYWJsZVxyXG4gICAgICB0aGlzLmNhdGVnb3J5TGlzdCA9IHJlcz8uZGF0YT8uY2F0ZWdvcnlEZXRhaWxzO1xyXG4gICAgICB0aGlzLmNvbGxlY3Rpb25MaXN0ID0gcmVzPy5kYXRhPy5pdGVtQ29sbGVjdGlvbnM7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgcmVzdHJpY3RJblBhZ2VzKCkge1xyXG4gICAgbGV0IHBhdGhuYW1lID0gd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lO1xyXG4gICAgaWYgKHBhdGhuYW1lLmluY2x1ZGVzKCcvbG9naW4nKSkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcbiAgcmVzdHJpY3RDYXJ0QmFySW5QYWdlcygpIHtcclxuICAgIGxldCBwYXRobmFtZSA9IHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZTtcclxuICAgIGlmIChwYXRobmFtZS5pbmNsdWRlcygnL2xvZ2luJykgfHwgcGF0aG5hbWUuaW5jbHVkZXMoJy9jYXJ0JykgfHwgcGF0aG5hbWUuaW5jbHVkZXMoJy93aXNobGlzdCcpIHx8IHBhdGhuYW1lLmluY2x1ZGVzKCcvZGV0YWlscycpKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuICBzY2hlbWVBdmFpbGFibGU6IGJvb2xlYW4gPSBmYWxzZVxyXG4gIGdvVG9TdG9yZXMoKSB7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9zdG9yZS1saXN0J10pO1xyXG4gIH1cclxuICBPYmplY3QgPSBPYmplY3RcclxuICBhcHBseUZpbHRlclRvTGlzdChvYmo6IGFueSwgdHlwZTogYW55KSB7XHJcbiAgICBpZiAodHlwZSA9PSAncHJpY2UnKSB7XHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2xpc3QnXSwgeyBxdWVyeVBhcmFtczogeyBjYXRlZ29yeTogdGhpcy5zZWxlY3RlZENhdGVnb3J5Py5jYXRlZ29yeU5hbWUsIG1pblByaWNlOiBvYmo/Lm1pblByaWNlLCBtYXhQcmljZTogb2JqPy5tYXhQcmljZSwgcGFnZU5vOiAxIH0gfSk7XHJcbiAgICB9XHJcbiAgICBpZiAodHlwZSA9PSAnY29sbGVjdGlvbicpIHtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvbGlzdCddLCB7IHF1ZXJ5UGFyYW1zOiB7IGNhdGVnb3J5OiB0aGlzLnNlbGVjdGVkQ2F0ZWdvcnk/LmNhdGVnb3J5TmFtZSwgY29sbGVjdGlvbnM6IG9iaj8ucmVwbGFjZUFsbChcIiBcIiwgJ18nKSwgcGFnZU5vOiAxIH0gfSk7XHJcbiAgICB9XHJcbiAgICBpZiAodHlwZSA9PSAnY29sbGVjdGlvbnMnKSB7XHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2xpc3QnXSwgeyBxdWVyeVBhcmFtczogeyBjb2xsZWN0aW9uczogb2JqPy5yZXBsYWNlQWxsKFwiIFwiLCAnXycpLCBwYWdlTm86IDEgfSB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGZpbHRlckJ5Q2F0ZWdvcnkoKSB7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9saXN0J10sIHsgcXVlcnlQYXJhbXM6IHsgY2F0ZWdvcnk6IHRoaXMuc2VsZWN0ZWRDYXRlZ29yeT8uY2F0ZWdvcnlOYW1lLCBwYWdlTm86IDEgfSB9KTtcclxuICB9XHJcblxyXG4gIHNob3dQaW5jb2RlSW5wdXQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwaW5jb2RlOiBhbnkgPSB0aGlzLnN0b3JhZ2UuZ2V0SXRlbSgncGluY29kZScpID8/IFwiXCI7XHJcbiAgZ2V0UGluY29kZTogc3RyaW5nID0gdGhpcy5zdG9yYWdlLmdldEl0ZW0oJ3BpbmNvZGUnKSB8fCAnJztcclxuICBwaW5FcnJvcjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHNldFBpbmNvZGUoKSB7XHJcbiAgICBpZiAodGhpcy5waW5jb2RlICYmIHRoaXMucGluY29kZT8ubGVuZ3RoID09IDYpIHtcclxuICAgICAgdGhpcy5zdG9yYWdlLnNldEl0ZW0oJ3BpbmNvZGUnLCB0aGlzLnBpbmNvZGUpO1xyXG4gICAgICB0aGlzLmdldFBpbmNvZGUgPSB0aGlzLnN0b3JhZ2UuZ2V0SXRlbSgncGluY29kZScpIHx8ICcnO1xyXG4gICAgICB0aGlzLnBpbkVycm9yID0gZmFsc2U7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnBpbkVycm9yID0gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNob3dMb2dpbjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBnb1RvU2NoZW1lcygpIHtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL3NjaGVtZS1lbnJvbGxtZW50J10pO1xyXG4gIH1cclxuXHJcbiAgZ2V0UkdCQShiZ0NvbG9yOiBhbnksIG9wYWNpdHk6IG51bWJlcik6IGFueSB7XHJcbiAgICBjb25zdCByID0gcGFyc2VJbnQoYmdDb2xvci5zbGljZSgxLCAzKSwgMTYpO1xyXG4gICAgY29uc3QgZyA9IHBhcnNlSW50KGJnQ29sb3Iuc2xpY2UoMywgNSksIDE2KTtcclxuICAgIGNvbnN0IGIgPSBwYXJzZUludChiZ0NvbG9yLnNsaWNlKDUsIDcpLCAxNik7XHJcbiAgICByZXR1cm4gYHJnYmEoJHtyfSwgJHtnfSwgJHtifSwgJHtvcGFjaXR5IC8gMTAwfSlgO1xyXG4gIH1cclxuXHJcbiAgc2hvd0NhdGVnb3J5TW9iaWxlSGVhZGVyKCkge1xyXG4gICAgY29uc3QgcGF0aG5hbWUgPSB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWU7XHJcbiAgICByZXR1cm4gcGF0aG5hbWUuaW5jbHVkZXMoJy9saXN0JykgfHwgcGF0aG5hbWUgPT09ICcvJyB8fCBwYXRobmFtZSA9PT0gJyc7XHJcbiAgfVxyXG5cclxuICBieU1ldGFsQW5kU3RvbmU6IGFueSA9IFtcclxuICAgIHtcclxuICAgICAgbmFtZTogJ0dvbGQnLFxyXG4gICAgICBpbWFnZVVybDogJ2h0dHBzOi8vY2RuLmNhcmF0bGFuZS5jb20vbWVkaWEvc3RhdGljL2ltYWdlcy93ZWIvbWVudS8yMmt0LUdvbGQtMngucG5nJyxcclxuICAgICAgc3RhdHVzOiBmYWxzZVxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgbmFtZTogJ0RpYW1vbmQnLFxyXG4gICAgICBpbWFnZVVybDogJ2h0dHBzOi8vY2RuLmNhcmF0bGFuZS5jb20vbWVkaWEvc3RhdGljL2ltYWdlcy93ZWIvbWVudS9EaWFtb25kLTF4LnBuZycsXHJcbiAgICAgIHN0YXR1czogZmFsc2VcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIG5hbWU6ICdQZWFybCcsXHJcbiAgICAgIGltYWdlVXJsOiAnaHR0cHM6Ly9jZG4uY2FyYXRsYW5lLmNvbS9zdGF0aWMvaW1hZ2VzL2Rpc2NvdmVyeS9yZXNwb25zaXZlLWhhbWJ1cmdlci1tZW51L3Byb2R1Y3RzLWFuZC1zZXJ2aWNlcy9wZWFybC0xeC5wbmcnLFxyXG4gICAgICBzdGF0dXM6IGZhbHNlXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBuYW1lOiAnR2Vtc3RvbmUnLFxyXG4gICAgICBpbWFnZVVybDogJ2h0dHBzOi8vY2RuLmNhcmF0bGFuZS5jb20vbWVkaWEvc3RhdGljL2ltYWdlcy93ZWIvbWVudS9HZW1zdG9uZS0xeC5wbmcnLFxyXG4gICAgICBzdGF0dXM6IGZhbHNlXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBuYW1lOiAnWWVsbG93IEdvbGQnLFxyXG4gICAgICBpbWFnZVVybDogJ2h0dHBzOi8vY2RuLmNhcmF0bGFuZS5jb20vbWVkaWEvc3RhdGljL2ltYWdlcy93ZWIvbWVudS9ZZWxsb3ctR29sZC0xeC5wbmcnLFxyXG4gICAgICBzdGF0dXM6IGZhbHNlXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBuYW1lOiAnUm9zZSBHb2xkJyxcclxuICAgICAgaW1hZ2VVcmw6ICdodHRwczovL2Nkbi5jYXJhdGxhbmUuY29tL21lZGlhL3N0YXRpYy9pbWFnZXMvd2ViL21lbnUvUm9zZS1Hb2xkLTF4LnBuZycsXHJcbiAgICAgIHN0YXR1czogZmFsc2VcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIG5hbWU6ICdXaGl0ZSBHb2xkJyxcclxuICAgICAgaW1hZ2VVcmw6ICdodHRwczovL2Nkbi5jYXJhdGxhbmUuY29tL21lZGlhL3N0YXRpYy9pbWFnZXMvd2ViL21lbnUvd2hpdGUtR29sZC0xeC5wbmcnLFxyXG4gICAgICBzdGF0dXM6IGZhbHNlXHJcbiAgICB9XHJcbiAgXVxyXG4gIG5hdmlnYXRlTG9naW4oKSB7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9sb2dpbiddKVxyXG4gIH1cclxuXHJcbiAgbWVnYU1lbnU6IGFueSA9IFtdXHJcbiAgZ2V0TWVudUl0ZW1zKCkge1xyXG4gICAgdGhpcy5yZXN0U2VydmljZS5nZXRNZW51SXRlbXModGhpcy5jb250ZW50Py5tZW51SWQpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgY29uc29sZS5sb2cocmVzKTtcclxuICAgICAgdGhpcy5tZWdhTWVudSA9IHJlcy5kYXRhLmRhdGEgfHwgW107XHJcbiAgICB9LCBlcnIgPT4ge1xyXG4gICAgICBjb25zb2xlLmxvZyhlcnIpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICByZWRpcmVjdGlvbnNPZk1lbnUoZWxlOiBhbnkpIHtcclxuXHJcbiAgICBpZiAoIWVsZS5yZWRpcmVjdGlvbmFsVXJsICYmIGVsZS5yZWRpcmVjdGlvbmFsVXJsPy5sZW5ndGggPT0gMCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGVsZS50eXBlID09ICdIT01FX1BBR0UnKSB7XHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnJ10pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2Ake2VsZS5yZWRpcmVjdGlvbmFsVXJsfWBdKTtcclxuICAgIH1cclxuXHJcblxyXG4gIH1cclxuXHJcbiAgc2V0Q2hpbGRNZW51KGVsZTogYW55KSB7XHJcbiAgICBpZiAoZWxlLmNoaWxkcmVuICYmIGVsZS5jaGlsZHJlbi5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHRoaXMuc2hvd0xpc3QgPSB0cnVlO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkQ2F0ZWdvcnkgPSBlbGUuY2hpbGRyZW47XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNob3dMaXN0ID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRDYXRlZ29yeSA9IG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8c2VjdGlvbiBbaWRdPVwiZGF0YT8uaWRcIiBjbGFzcz1cInRvdGFsLWNvbnRhaW5lciB3LTEwMFwiIFtjbGFzcy56LWluZGV4LTEwXT1cIiFpc0hlYWRlclN0aWNreSAmJiBpc0NvbXBvbmVudE1lcmdlZFwiPlxyXG4gIDxkaXYgY2xhc3M9XCJ3LTEwMFwiIFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb092ZXJsYXldPVwic3R5bGU/LmJhY2tncm91bmRcIiBbbmdDbGFzc109XCJ7J2JveC1zaGFkb3cnOiBpc0Vjb21tZXJjZVdlYnNpdGV9XCJcclxuICAgIFtjbGFzcy5tYXJnaW4tYm90dG9tXT1cImlzSGVhZGVyU3RpY2t5ICYmIGlzTW9iaWxlICYmIGNhdGVnb3J5TGlzdD8ubGVuZ3RoID09IDBcIj5cclxuICAgIDxkaXYgW3NpbXBvU3RpY2t5XT1cImlzSGVhZGVyU3RpY2t5XCIgW3NpbXBvQmFja2dyb3VuZF09XCJiYWNrZ3JvdW5kSW5mb1wiIGNsYXNzPVwidy0xMDBcIiAjY2hpbGRDb250YWluZXJcclxuICAgICAgW2NhdGVnb3J5SGVhZGVyXT1cImlzRWNvbW1lcmNlV2Vic2l0ZSAmJiBjYXRlZ29yeUxpc3Q/Lmxlbmd0aCA+IDAgJiYgIWlzTW9iaWxlICYmICFzaG93Q2F0ZWdvcnlNb2JpbGVIZWFkZXIoKVwiXHJcbiAgICAgIHNpbXBvSG92ZXIgW2NsYXNzLmJnLXRyYW5zcGFyZW50XT1cImlzQ29tcG9uZW50TWVyZ2VkICYmIHNjcm9sbFZhbHVlID09IDAgJiYgIWlzTW9iaWxlXCJcclxuICAgICAgKGhvdmVyaW5nKT1cInNob3dFZGl0VGFicygkZXZlbnQpXCIgW2lkXT1cImRhdGE/LmlkXCJcclxuICAgICAgW2NsYXNzLmhlYWRlci0tc2Nyb2xsZWRdPVwiZGF0YT8uc3R5bGVzPy5zaHJpbmtPblNjcm9sbCAmJiBpc0hlYWRlclN0aWNreSAmJiBzY3JvbGxWYWx1ZSA+IDAgJiYgIWVkaXRcIj5cclxuICAgICAgPCEtLSBbY2xhc3MuYmFja2dyb3VuZC1wb3NpdGlvbl09XCJpc0NvbXBvbmVudE1lcmdlZCAmJiBiYWNrZ3JvdW5kSW5mbz8uc2hvd0ltYWdlXCIgLS0+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdHlsZT8uaGVhZGxpbmU/LmRpc3BsYXlcIj5cclxuICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgPHNpbXBvLW1vdmluZy10ZXh0IFtlZGl0XT1cImZhbHNlXCIgW2RlbGV0ZV09XCJmYWxzZVwiIFtkYXRhXT1cImRhdGFcIj48L3NpbXBvLW1vdmluZy10ZXh0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgIDxkaXYgKm5nSWY9XCJzdHlsZT8uc3R5bGluZyA9PT0gJ0hlYWRlcjEnICYmICFpc0Vjb21tZXJjZVdlYnNpdGVcIiBbc3BhY2luZ0hvcml6b250YWxdPVwic3R5bGVzTGF5b3V0XCJcclxuICAgICAgICBbc2ltcG9PdmVybGF5XT1cImJhY2tncm91bmRJbmZvXCIgW3NpbXBvTGF5b3V0XT1cInN0eWxlc0xheW91dFwiIFtpc0hlYWRlcl09XCJ0cnVlXCIgW2lkXT1cImRhdGE/LmlkXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImhlYWRlcjFUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiAqbmdJZj1cInN0eWxlPy5zdHlsaW5nID09PSAnSGVhZGVyMicgJiYgIWlzRWNvbW1lcmNlV2Vic2l0ZVwiIFtzcGFjaW5nSG9yaXpvbnRhbF09XCJzdHlsZXNMYXlvdXRcIlxyXG4gICAgICAgIFtzaW1wb092ZXJsYXldPVwiYmFja2dyb3VuZEluZm9cIiBbc2ltcG9MYXlvdXRdPVwic3R5bGVzTGF5b3V0XCIgW2lzSGVhZGVyXT1cInRydWVcIiBbaWRdPVwiZGF0YT8uaWRcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaGVhZGVyMlRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwic3R5bGU/LnN0eWxpbmcgPT09ICdIZWFkZXIzJyAmJiAhaXNFY29tbWVyY2VXZWJzaXRlXCIgW3NwYWNpbmdIb3Jpem9udGFsXT1cInN0eWxlc0xheW91dFwiXHJcbiAgICAgICAgW3NpbXBvT3ZlcmxheV09XCJiYWNrZ3JvdW5kSW5mb1wiIFtzaW1wb0xheW91dF09XCJzdHlsZXNMYXlvdXRcIiBbaXNIZWFkZXJdPVwidHJ1ZVwiIFtpZF09XCJkYXRhPy5pZFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJoZWFkZXIzVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgKm5nSWY9XCJzdHlsZT8uc3R5bGluZyA9PT0gJ0hlYWRlcjQnICYmICFpc0Vjb21tZXJjZVdlYnNpdGVcIiBbc3BhY2luZ0hvcml6b250YWxdPVwic3R5bGVzTGF5b3V0XCJcclxuICAgICAgICBbc2ltcG9PdmVybGF5XT1cImJhY2tncm91bmRJbmZvXCIgW3NpbXBvTGF5b3V0XT1cInN0eWxlc0xheW91dFwiIFtpc0hlYWRlcl09XCJ0cnVlXCIgW2lkXT1cImRhdGE/LmlkXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImhlYWRlcjRUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgW3NwYWNpbmdIb3Jpem9udGFsXT1cInN0eWxlc0xheW91dFwiIFtzaW1wb092ZXJsYXldPVwiYmFja2dyb3VuZEluZm9cIiAqbmdJZj1cImlzRWNvbW1lcmNlV2Vic2l0ZVwiXHJcbiAgICAgICAgW3NpbXBvTGF5b3V0XT1cInNjcmVlbldpZHRoID4gNDc1ID8gc3R5bGVzTGF5b3V0IDogdW5kZWZpbmVkXCIgW2lzSGVhZGVyXT1cInRydWVcIiBbaWRdPVwiZGF0YT8uaWRcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZWNvbW1lcmNlX2hlYWRlclwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwIG14LTIgbWItMiB3LTk2XCIgKm5nSWY9XCJpc01vYmlsZSAmJiBpc0Vjb21tZXJjZVdlYnNpdGUgJiYgIXJlc3RyaWN0Q2FydEJhckluUGFnZXMoKVwiPlxyXG4gICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgcGxhY2Vob2xkZXI9XCJTZWFyY2ggZm9yIGl0ZW1zXCIgYXJpYS1sYWJlbD1cIlNlYXJjaCBQcm9kdWN0XCJcclxuICAgICAgICAgIFsobmdNb2RlbCldPVwic2VhcmNoVGV4dFwiIChuZ01vZGVsQ2hhbmdlKT1cIndhaXRCZWZvcmVTZWFyY2goKVwiXHJcbiAgICAgICAgICBbbmdTdHlsZV09XCJ7J2JvcmRlcicgOiAnMXB4IHNvbGlkICcgKyBhY2NlbnRDb2xvcn1cIj5cclxuICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJoLTEwMFwiXHJcbiAgICAgICAgICBbbmdTdHlsZV09XCJ7J2JhY2tncm91bmQnIDogc3R5bGU/LmJhY2tncm91bmQ/LmFjY2VudEJhY2tncm91bmRUeXBlID09ICdTb2xpZCcgPyAgIGFjY2VudENvbG9yIDogJ2xpbmVhci1ncmFkaWVudCh0byByaWdodCwnICsgc3R5bGU/LmJhY2tncm91bmQ/LmFjY2VudENvbG9yICsgJyAwJScgKyAnLCcgKyBzdHlsZT8uYmFja2dyb3VuZD8uc2Vjb25kYXJ5QWNjZW50Q29sb3IgKycgMTAwJScgKyAnKSd9XCJcclxuICAgICAgICAgIFtzdHlsZS5jb2xvcl09XCJzdHlsZT8uYmFja2dyb3VuZD8uY29sb3JcIj5zZWFyY2g8L21hdC1pY29uPlxyXG4gICAgICA8L2Rpdj4gLS0+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNFY29tbWVyY2VXZWJzaXRlICYmICFpc01vYmlsZSAmJiBkYXRhPy5zdHlsZXM/Lm1lbnVUeXBlID09PSAnTUVHQV9NRU5VJ1wiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjYXRlZ29yaWVzSGVhZGVyXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8ZGl2IFtuZ0NsYXNzXT1cInsnaG92ZXJfZWZmZWN0JzogZWRpdH1cIiAqbmdJZj1cInNob3dFZGl0b3JzXCI+XHJcbiAgICAgICAgPHNpbXBvLWhvdmVyLWVsZW1lbnRzIFtkYXRhXT1cImRhdGFcIiBbaW5kZXhdPVwiaW5kZXhcIiBbZWRpdE9wdGlvbnNdPVwiZWRpdFwiPjwvc2ltcG8taG92ZXItZWxlbWVudHM+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzRWNvbW1lcmNlV2Vic2l0ZSAmJiBpc01vYmlsZSAmJiBzaG93Q2F0ZWdvcnlNb2JpbGVIZWFkZXIoKVwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibW9iaWxlQ2F0ZWdvcnlIZWFkZXJcIj48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gIDwvZGl2PlxyXG5cclxuICA8IS0tIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc0Vjb21tZXJjZVdlYnNpdGUgJiYgaXNNb2JpbGUgJiYgIXJlc3RyaWN0SW5QYWdlcygpXCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibW9iaWxlRm9vdGVyVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICA8L25nLWNvbnRhaW5lcj4gLS0+XHJcbjwvc2VjdGlvbj5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjaGVhZGVyMVRlbXBsYXRlPlxyXG4gIDxkaXYgY2xhc3M9XCJoZWFkZXIxXCI+XHJcbiAgICA8ZGl2IFtjbGFzcy53LTE1XT1cImNvbnRlbnQ/LmxvZ28/LmlzSW1hZ2VcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImxvZ29TZWN0aW9uVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBnYXAtMTUgYWxpZ24tY2VudGVyXCIgKm5nSWY9XCIhaXNNb2JpbGVcIiBbc3R5bGUud2lkdGguJV09XCJpc0Vjb21tZXJjZVdlYnNpdGUgPyA5NCA6ICcnXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNFY29tbWVyY2VXZWJzaXRlXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInBhZ2VMaW5rc1RlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXNFY29tbWVyY2VXZWJzaXRlID8gZWNvbW1lcmNlQnV0dG9uc1RlbXBsYXRlIDogbnVsbFwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiIWlzRWNvbW1lcmNlV2Vic2l0ZSA/IGJ1dHRvbnNUZW1wbGF0ZSA6IG51bGxcIj48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBnYXAtMTUgYWxpZ24tY2VudGVyXCIgKm5nSWY9XCJpc01vYmlsZVwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNFY29tbWVyY2VXZWJzaXRlXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImVjb21Qcm9maWxlVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDxtYXQtaWNvbiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCIgZGF0YS1icy10b2dnbGU9XCJvZmZjYW52YXNcIiBkYXRhLWJzLXRhcmdldD1cIiNvZmZjYW52YXNSaWdodFwiXHJcbiAgICAgICAgYXJpYS1jb250cm9scz1cIm9mZmNhbnZhc1JpZ2h0XCI+bWVudTwvbWF0LWljb24+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjaGVhZGVyMlRlbXBsYXRlPlxyXG4gIDxkaXYgY2xhc3M9XCJoZWFkZXIxXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGdhcC0xNSBhbGlnbi1jZW50ZXJcIiAqbmdJZj1cIiFpc01vYmlsZVwiIFtzdHlsZS53aWR0aC4lXT1cImlzRWNvbW1lcmNlV2Vic2l0ZSA/IDkzIDogJydcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIiFpc0Vjb21tZXJjZVdlYnNpdGUgPyBidXR0b25zVGVtcGxhdGUgOiBudWxsXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpc0Vjb21tZXJjZVdlYnNpdGUgPyBlY29tbWVyY2VCdXR0b25zVGVtcGxhdGUgOiBudWxsXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNFY29tbWVyY2VXZWJzaXRlXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInBhZ2VMaW5rc1RlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGdhcC0xNSBhbGlnbi1jZW50ZXJcIiBkYXRhLWJzLXRvZ2dsZT1cIm9mZmNhbnZhc1wiIGRhdGEtYnMtdGFyZ2V0PVwiI29mZmNhbnZhc1JpZ2h0XCJcclxuICAgICAgYXJpYS1jb250cm9scz1cIm9mZmNhbnZhc1JpZ2h0XCIgKm5nSWY9XCJpc01vYmlsZVwiPlxyXG4gICAgICA8bWF0LWljb24gW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiPm1lbnU8L21hdC1pY29uPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNFY29tbWVyY2VXZWJzaXRlXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImVjb21Qcm9maWxlVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWVuZFwiIFtjbGFzcy53LTE1XT1cImNvbnRlbnQ/LmxvZ28/LmlzSW1hZ2VcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImxvZ29TZWN0aW9uVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICNoZWFkZXIzVGVtcGxhdGU+XHJcbiAgPGRpdiBjbGFzcz1cImhlYWRlcjFcIj5cclxuICAgIDxkaXYgW2NsYXNzLnctMTVdPVwiY29udGVudD8ubG9nbz8uaXNJbWFnZVwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibG9nb1NlY3Rpb25UZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzTW9iaWxlXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNFY29tbWVyY2VXZWJzaXRlXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInBhZ2VMaW5rc1RlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXNFY29tbWVyY2VXZWJzaXRlID8gZWNvbW1lcmNlQnV0dG9uc1RlbXBsYXRlIDogbnVsbFwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiIWlzRWNvbW1lcmNlV2Vic2l0ZSA/IGJ1dHRvbnNUZW1wbGF0ZSA6IG51bGxcIj48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBnYXAtMTUgYWxpZ24tY2VudGVyXCIgZGF0YS1icy10b2dnbGU9XCJvZmZjYW52YXNcIiBkYXRhLWJzLXRhcmdldD1cIiNvZmZjYW52YXNSaWdodFwiXHJcbiAgICAgIGFyaWEtY29udHJvbHM9XCJvZmZjYW52YXNSaWdodFwiICpuZ0lmPVwiaXNNb2JpbGVcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzRWNvbW1lcmNlV2Vic2l0ZVwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJlY29tUHJvZmlsZVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bWF0LWljb24gW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiPm1lbnU8L21hdC1pY29uPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI2hlYWRlcjRUZW1wbGF0ZT5cclxuICA8ZGl2IGNsYXNzPVwiaGVhZGVyMVwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpc01vYmlsZVwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiIWlzRWNvbW1lcmNlV2Vic2l0ZSA/IGJ1dHRvbnNUZW1wbGF0ZSA6IG51bGxcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImlzRWNvbW1lcmNlV2Vic2l0ZSA/IGVjb21tZXJjZUJ1dHRvbnNUZW1wbGF0ZSA6IG51bGxcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpc0Vjb21tZXJjZVdlYnNpdGVcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwicGFnZUxpbmtzVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9uZy1jb250YWluZXI+IDwvbmctY29udGFpbmVyPlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBnYXAtMTUgYWxpZ24tY2VudGVyXCIgZGF0YS1icy10b2dnbGU9XCJvZmZjYW52YXNcIiBkYXRhLWJzLXRhcmdldD1cIiNvZmZjYW52YXNSaWdodFwiXHJcbiAgICAgIGFyaWEtY29udHJvbHM9XCJvZmZjYW52YXNSaWdodFwiICpuZ0lmPVwiaXNNb2JpbGVcIj5cclxuICAgICAgPG1hdC1pY29uIFtzaW1wb0NvbG9yXT1cInNpbXBvQ29sb3JcIj5tZW51PC9tYXQtaWNvbj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzRWNvbW1lcmNlV2Vic2l0ZVwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJlY29tUHJvZmlsZVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwidGV4dC1lbmRcIiBbY2xhc3Mudy0xNV09XCJjb250ZW50Py5sb2dvPy5pc0ltYWdlXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJsb2dvU2VjdGlvblRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI2xvZ29TZWN0aW9uVGVtcGxhdGU+XHJcbiAgPGRpdiBjbGFzcz1cImQtZmxleCBnYXAtMyBhbGlnbi1jZW50ZXIgY3Vyc29yLXBvaW50ZXIgbXgtMVwiXHJcbiAgICAqbmdJZj1cIiFjb250ZW50Py5sb2dvPy5pc0ltYWdlIHx8ICFjb250ZW50Py5sb2dvPy5pbWFnZT8udXJsXCIgKGNsaWNrKT1cIiFlZGl0ID8gZ29Ub0hvbWUoKSA6ICcnXCI+XHJcbiAgICA8ZGl2ICpuZ0lmPVwiY29udGVudD8ubG9nbz8udGV4dD8uaXNJY29uICYmIGNvbnRlbnQ/LmxvZ28/LnRleHQ/LnVybFwiPlxyXG4gICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgW3NyY109XCJjb250ZW50Py5sb2dvPy50ZXh0Py51cmxcIiBhbHQ9XCJsb2dvXCIgW3dpZHRoXT1cImNvbnRlbnQ/LmxvZ28/LnNpemUgKyA4MFwiIGxvYWRpbmc9XCJsYXp5XCI+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJoZWFkaW5nLXNtYWxsXCIgKm5nSWY9XCJjb250ZW50Py5sb2dvPy50ZXh0Py5pc1RleHRcIiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCI+XHJcbiAgICAgIDxiPnt7Y29udGVudD8uc2l0ZU5hbWU/LnZhbHVlfX08L2I+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8IS0tIDxkaXYgY2xhc3M9XCJkLWZsZXggZ2FwLTMgYWxpZ24taXRlbXMtbGctY2VudGVyIGN1cnNvci1wb2ludGVyXCIgKm5nSWY9XCJjb250ZW50Py5sb2dvPy5pc0ltYWdlICYmIGNvbnRlbnQ/LmxvZ28/LmltYWdlPy51cmxcIiAoY2xpY2spPVwiZ29Ub0hvbWUoKVwiPiAtLT5cclxuICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgW3NyY109XCJjb250ZW50Py5sb2dvPy5pbWFnZT8udXJsXCIgYWx0PVwibG9nb1wiIFtzdHlsZS53aWR0aC4lXT1cInNjcmVlbldpZHRoID4gNDc1IHx8IChjb250ZW50Py5sb2dvPy5zaXplIHx8IDEwKSA8IDUwID8gY29udGVudD8ubG9nbz8uc2l6ZSA6IFxyXG4gICAgKChjb250ZW50Py5sb2dvPy5zaXplID49IDYwICAmJiBjb250ZW50Py5sb2dvPy5zaXplIDw9IDEwMCkgPyAoMjApIDogKChjb250ZW50Py5sb2dvPy5zaXplIHx8IDEwKSAtIDEwKSlcIlxyXG4gICAgbG9hZGluZz1cImxhenlcIiAqbmdJZj1cImNvbnRlbnQ/LmxvZ28/LmlzSW1hZ2UgJiYgY29udGVudD8ubG9nbz8uaW1hZ2U/LnVybFwiIChjbGljayk9XCIhZWRpdCA/IGdvVG9Ib21lKCkgOiAnJ1wiPlxyXG4gIDwhLS0gPC9kaXY+IC0tPlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICNwYWdlTGlua3NUZW1wbGF0ZT5cclxuICA8ZGl2IGNsYXNzPVwibmF2YmFyLW5hdiBwYWdlTGlua3NcIiBbbmdDbGFzc109XCJ7J2FsaWduLWl0ZW1zLWNlbnRlcicgOiAhaXNNb2JpbGV9XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGdhcC0zXCJcclxuICAgICAgW25nQ2xhc3NdPVwieydmbGV4LWNvbHVtbic6IGlzTW9iaWxlLCAnYWxpZ24taXRlbXMtY2VudGVyJyA6ICFpc01vYmlsZSwgJ21vYmlsZS1wYWdlLWxpc3QnOiBpc01vYmlsZX1cIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBnZXROYXZiYXJCdXR0b25cIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbS5zaG93SGVhZGVyXCI+XHJcbiAgICAgICAgICA8c2ltcG8tbmF2YmFyLWJ1dHRvbi1lbGVtZW50IFtidXR0b25EYXRhXT1cIml0ZW1cIiBbc2VsZWN0ZWRTdHlsZV09XCJzdHlsZT8ubmF2aWdhdGlvblN0eWxlXCJcclxuICAgICAgICAgICAgW2J1dHRvblN0eWxlXT1cInN0eWxlPy5uYXZiYXJCdXR0b25TdHlsZVwiIFtiZ0NvbG9yXT1cInNpbXBvQ29sb3JcIiBbYWNjZW50Q29sb3JdPVwiYWNjZW50Q29sb3JcIlxyXG4gICAgICAgICAgICBbc2VjdGlvbklkXT1cImRhdGE/LmlkXCI+PC9zaW1wby1uYXZiYXItYnV0dG9uLWVsZW1lbnQ+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgbGluayBvZiBnZXREcm9wZG93bkxpbmtzOyBsZXQgaWR4ID0gaW5kZXhcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbnRlbnQ/LmVjb21saW5rcz8uW2xpbmtdPy5sZW5ndGggXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInBvc2l0aW9uLXJlbGF0aXZlXCI+XHJcbiAgICAgICAgICA8YnV0dG9uIG1hdC1zdHJva2VkLWJ1dHRvbiBjbGFzcz1cIm1hdC1idG4gZHJvcGRvd24tdG9nZ2xlIGNhdGVnb3J5LWJ0blwiIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCIgaWQ9XCJsaW5rXCIgZGF0YS1icy10b2dnbGU9XCJkcm9wZG93blwiIGFyaWEtaGFzcG9wdXA9XCJ0cnVlXCIgYXJpYS1leHBhbmRlZD1cImZhbHNlXCI+XHJcbiAgICAgICAgICAgIHt7bGluayB8IGxvd2VyY2FzZSB8IHRpdGxlY2FzZX19XHJcbiAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1tZW51XCIgYXJpYS1sYWJlbGxlZGJ5PVwibGlua1wiPlxyXG4gICAgICAgICAgICA8YSBjbGFzcz1cImRyb3Bkb3duLWl0ZW1cIiAqbmdGb3I9XCJsZXQgbWVudSBvZiBnZXRWYWx1ZXMoY29udGVudD8uZWNvbWxpbmtzPy5bbGlua10pXCJcclxuICAgICAgICAgICAgICAoY2xpY2spPVwiYXBwbHlGaWx0ZXIobWVudSwgbGluaylcIj57e21lbnV9fTwvYT5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICA8L2Rpdj5cclxuXHJcblxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICNidXR0b25zVGVtcGxhdGU+XHJcbiAgPGRpdiBjbGFzcz1cImQtZmxleFwiPlxyXG4gICAgPGRpdiAqbmdJZj1cImFjdGlvbj8uZGlzcGxheVwiIGNsYXNzPVwiYnV0dG9uLWRpc3BsYXkgbXQtMFwiIFtuZ0NsYXNzXT1cInsndy0xMDAganVzdGlmeS1zcGFjZS1hcm91bmQnOiBpc01vYmlsZX1cIj5cclxuICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgYnV0dG9uIG9mIGFjdGlvbj8uYnV0dG9uc1wiPlxyXG4gICAgICAgIDxhcHAtYnV0dG9uLWVsZW1lbnQgW2J1dHRvbkNvbnRlbnRdPVwiYnV0dG9uLmNvbnRlbnRcIiBbYnV0dG9uU3R5bGVdPVwiYnV0dG9uLnN0eWxlc1wiIFtzZWN0aW9uSWRdPVwiZGF0YT8uaWRcIlxyXG4gICAgICAgICAgW2VkaXRdPVwiZWRpdFwiIFtjb2xvcl09XCJkYXRhPy5zdHlsZXM/LmJhY2tncm91bmQ/LmFjY2VudENvbG9yXCIgW2J1dHRvbklkXT1cImJ1dHRvbi5pZFwiXHJcbiAgICAgICAgICBbYmFja2dyb3VuZEluZm9dPVwiZGF0YT8uc3R5bGVzPy5iYWNrZ3JvdW5kXCI+PC9hcHAtYnV0dG9uLWVsZW1lbnQ+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwic3RhdGljX2xvZ2luX2J0biBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyIGN1cnNvci1wb2ludGVyXCJcclxuICAgICAgICAoY2xpY2spPVwibmF2aWdhdGVMb2dpbigpXCIgKm5nSWY9XCJwYXNzYm9va0FwcFN0YXR1cyAmJiAhbG9nZ2VkSW5cIlxyXG4gICAgICAgIFtzdHlsZS5ib3JkZXJDb2xvcl09XCJiYWNrZ3JvdW5kSW5mbz8uYWNjZW50Q29sb3JcIj5cclxuICAgICAgICA8bWF0LWljb24+cGVyc29uX291dGxpbmU8L21hdC1pY29uPlxyXG4gICAgICAgIExvZ2luXHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiIHN0eWxlPVwiZ2FwOiA4cHg7IGN1cnNvcjogcG9pbnRlcjtcIiAoY2xpY2spPVwiZ29Ub0FjY291bnQoJ1BST0ZJTEUnKVwiXHJcbiAgICAgICAgKm5nSWY9XCJsb2dnZWRJbiAmJiAhaXNNb2JpbGVcIj5cclxuICAgICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCIgW3NyY109XCJ1c2VyR2VuZGVyIHwgZ2VuZGVySWNvblwiIHN0eWxlPVwiaGVpZ2h0OiAyN3B4O1wiPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDxidXR0b24gY2xhc3M9XCJtb2JpbGVMb2dpbkJ1dHRvblwiICpuZ0lmPVwiaXNFY29tbWVyY2VXZWJzaXRlICYmIGlzTW9iaWxlICYmICFsb2dnZWRJblwiXHJcbiAgICBbc3R5bGUuYm9yZGVyXT1cIicxcHggc29saWQnICsgYWNjZW50Q29sb3JcIiBbc3R5bGUuY29sb3JdPVwiYWNjZW50Q29sb3JcIiAoY2xpY2spPVwiZ29Ub0FjY291bnQoJ0xPR0lOJylcIj5Mb2dpbjwvYnV0dG9uPlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICNtb2JpbGVGb290ZXJUZW1wbGF0ZT5cclxuICA8ZGl2IGNsYXNzPVwiY2FydC1mb290ZXJcIiBbc3R5bGUuYmFja2dyb3VuZF09XCJhY2NlbnRDb2xvclwiIFtzaW1wb0NvbG9yXT1cImFjY2VudENvbG9yXCJcclxuICAgICpuZ0lmPVwiZ2V0Q2FydEl0ZW1zQ291bnQgPiAwICYmICFyZXN0cmljdENhcnRCYXJJblBhZ2VzKClcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gcHgtMyBweS0yIGgtMTAwIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaXRlbS1jb3VudCBmdy1ib2xkXCI+XHJcbiAgICAgICAge3sgZ2V0Q2FydEl0ZW1zQ291bnQgPz8gMyB9fSB7eyBnZXRDYXJ0SXRlbXNDb3VudCA+IDEgPyAnaXRlbXMnIDogJ2l0ZW0nIH19IGluIGNhcnRcclxuICAgICAgICA8IS0tIFRvdGFsIDog4oK5e3sgZ2V0Q2FydFRvdGFsQW1vdW50IH19IC0tPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTIgZnctYm9sZFwiIChjbGljayk9XCJnb1RvQ2FydCgpXCI+XHJcbiAgICAgICAgVmlldyBDYXJ0IDxtYXQtaWNvbiBbc2ltcG9Db2xvcl09XCJhY2NlbnRDb2xvclwiPmFycm93X2ZvcndhcmQ8L21hdC1pY29uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwibW9iaWxlLWZvb3RlclwiIFtzaW1wb0JhY2tncm91bmRdPVwiYmFja2dyb3VuZEluZm9cIj5cclxuICAgIDxkaXYgY2xhc3M9XCJpY29uc1wiIChjbGljayk9XCJnb1RvSG9tZSgpXCI+XHJcbiAgICAgIDxtYXQtaWNvbiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCI+aG9tZTwvbWF0LWljb24+XHJcbiAgICAgIDxzcGFuIFtzaW1wb0NvbG9yXT1cInNpbXBvQ29sb3JcIj5Ib21lPC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaWNvbnNcIiAoY2xpY2spPVwic2VhcmNoUHJvZHVjdHMoKVwiPlxyXG4gICAgICA8bWF0LWljb24gW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiPmdyaWRfb248L21hdC1pY29uPlxyXG4gICAgICA8c3BhbiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCI+U2hvcDwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImljb25zXCIgKGNsaWNrKT1cImdvVG9XaXNobGlzdCgpXCI+XHJcbiAgICAgIDxtYXQtaWNvbiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCI+ZmF2b3JpdGVfYm9yZGVyPC9tYXQtaWNvbj5cclxuICAgICAgPHNwYW4gW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiPldpc2hsaXN0PC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaWNvbnMgcG9zaXRpb24tcmVsYXRpdmVcIiAoY2xpY2spPVwiZ29Ub0NhcnQoKVwiPlxyXG4gICAgICA8bWF0LWljb24gW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiPnNob3BwaW5nX2NhcnQ8L21hdC1pY29uPlxyXG4gICAgICA8c3BhbiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCI+Q2FydDwvc3Bhbj5cclxuICAgICAgPGRpdiBjbGFzcz1cInBvc2l0aW9uLWFic29sdXRlIGNhcnRJdGVtQ291bnRcIiAqbmdJZj1cImdldENhcnRJdGVtc0NvdW50XCI+e3tnZXRDYXJ0SXRlbXNDb3VudH19PC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjZWNvbW1lcmNlQnV0dG9uc1RlbXBsYXRlPlxyXG4gIDxkaXYgY2xhc3M9XCJqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBwci0wIGQtZmxleCBwb3NpdGlvbi1yZWxhdGl2ZSBnYXAtMTAgdy0xMDBcIlxyXG4gICAgW3N0eWxlLmZsZXhEaXJlY3Rpb25dPVwic3R5bGU/LnN0eWxpbmcgPT09ICdIZWFkZXIyJyB8fCBzdHlsZT8uc3R5bGluZyA9PT0gJ0hlYWRlcjQnID8gJ3Jvdy1yZXZlcnNlJyA6ICcnXCI+XHJcbiAgICA8IS0tIDxkaXYgY2xhc3M9XCJzZWFyY2gtaWNvblwiIChjbGljayk9XCJzaG93U2VhcmNoQmFyID0gIXNob3dTZWFyY2hCYXJcIj5cclxuICAgICAgPG1hdC1pY29uIFtzdHlsZS5jb2xvcl09XCJhY2NlbnRDb2xvclwiPnNlYXJjaDwvbWF0LWljb24+XHJcbiAgICA8L2Rpdj4gLS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwidy03NSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCIgW25nQ2xhc3NdPVwieydqdXN0aWZ5LWNvbnRlbnQtY2VudGVyJyA6ICFwYXNzYm9va0FwcFN0YXR1c31cIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwIHctNzUgbWwtMlwiPlxyXG4gICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgcGxhY2Vob2xkZXI9XCJTZWFyY2ggRm9yIEl0ZW1zXCIgYXJpYS1sYWJlbD1cIlNlYXJjaCBQcm9kdWN0XCJcclxuICAgICAgICAgIFsobmdNb2RlbCldPVwic2VhcmNoVGV4dFwiIChuZ01vZGVsQ2hhbmdlKT1cIndhaXRCZWZvcmVTZWFyY2goKVwiXHJcbiAgICAgICAgICBbbmdTdHlsZV09XCJ7J2JvcmRlcicgOiAnMXB4IHNvbGlkICcgKyBiYWNrZ3JvdW5kSW5mbz8uYWNjZW50Q29sb3J9XCJcclxuICAgICAgICAgIFtzdHlsZS5jb2xvcl09XCJiYWNrZ3JvdW5kSW5mbz8uYWNjZW50Q29sb3JcIj5cclxuICAgICAgICA8IS0tIDxzcGFuIGNsYXNzPVwiYW5pbWF0ZWQtcGxhY2Vob2xkZXIgcG9zaXRpb24tYWJzb2x1dGVcIiBcclxuICAgICAgICAgIFtjbGFzcy5hbmltYXRlXT1cImFuaW1hdGVQbGFjZWhvbGRlclwiXHJcbiAgICAgICAgICAqbmdJZj1cInN0eWxlPy5zZWFyY2hCYXJQbGFjZWhvbGRlckxpc3QubGVuZ3RoID4gMSAmJiBzdHlsZT8uc21hcnRTZWFyY2hCYXJcIj5cclxuICAgICAgICAgIHt7IGN1cnJlbnRQbGFjZWhvbGRlciB9fVxyXG4gICAgICAgIDwvc3Bhbj4gLS0+XHJcbiAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiaC0xMDBcIlxyXG4gICAgICAgICAgW25nU3R5bGVdPVwieydiYWNrZ3JvdW5kJyA6IGJhY2tncm91bmRJbmZvPy5hY2NlbnRCYWNrZ3JvdW5kVHlwZSA9PT0gJ1NvbGlkJyA/ICAgYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yIDogJ2xpbmVhci1ncmFkaWVudCh0byByaWdodCwnICsgIGJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvciArICcgMCUnICsgJywnICsgIGJhY2tncm91bmRJbmZvPy5zZWNvbmRhcnlBY2NlbnRDb2xvciArJyAxMDAlJyArICcpJ31cIlxyXG4gICAgICAgICAgW3N0eWxlLmNvbG9yXT1cImJhY2tncm91bmRJbmZvPy5jb2xvclwiPnNlYXJjaDwvbWF0LWljb24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGdhcC0zIGFsaWduLWl0ZW1zLWNlbnRlciBweS0xIHB4LTMgYi0xIHN0b3Jlc1wiXHJcbiAgICAgICAgW3N0eWxlLmJvcmRlckNvbG9yXT1cImJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvclwiIChjbGljayk9XCJnb1RvU2NoZW1lcygpXCJcclxuICAgICAgICBbc3R5bGUuYmFja2dyb3VuZF09XCJnZXRSR0JBKGJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvciAsIDEwKVwiICpuZ0lmPVwicGFzc2Jvb2tBcHBTdGF0dXNcIj5cclxuICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIlxyXG4gICAgICAgICAgeG1sbnM6c3ZnanM9XCJodHRwOi8vc3ZnanMuZGV2L3N2Z2pzXCIgaWQ9XCJMYXllcl8yXCIgdmlld0JveD1cIjAgMCA2MCA2MFwiIGRhdGEtbmFtZT1cIkxheWVyIDJcIiB3aWR0aD1cIjMwXCJcclxuICAgICAgICAgIGhlaWdodD1cIjMwXCIgdmVyc2lvbj1cIjEuMVwiPlxyXG4gICAgICAgICAgPGcgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiMTAwJVwiIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwxLDAsMClcIj5cclxuICAgICAgICAgICAgPHBhdGggZD1cIm0xNC4zNiA0Ni42Ni41MS05Ljg2LTExLjkzLTcuMTYtMS45NCA4LjQzelwiIFthdHRyLmZpbGxdPVwiYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yXCJcclxuICAgICAgICAgICAgICBmaWxsLW9wYWNpdHk9XCIxXCIgZGF0YS1vcmlnaW5hbC1jb2xvcj1cIiMwMDAwMDBmZlwiIHN0cm9rZT1cIm5vbmVcIiBzdHJva2Utb3BhY2l0eT1cIjFcIiAvPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGQ9XCJtMTcuMTcgMzguMXMwLS4wMi4wMi0uMDNjMCAwIDAtLjAyLjAyLS4wMi4wNC0uMDUuMS0uMDguMTUtLjExLjAyLS4wMS4wMy0uMDMuMDUtLjA0bDQuNjYtMS45NGgtLjAycy0xLjg3LTEuMjEtMS44Ny0xLjIxbC0zLjE4IDEuNTctMS4wNy41My0uNDMgOC4zMiAxLjU4LTYuOWMuMDEtLjA2LjA1LS4xMi4wOS0uMTd6XCJcclxuICAgICAgICAgICAgICBbYXR0ci5maWxsXT1cImJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvclwiIGZpbGwtb3BhY2l0eT1cIjFcIiBkYXRhLW9yaWdpbmFsLWNvbG9yPVwiIzAwMDAwMGZmXCIgc3Ryb2tlPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgc3Ryb2tlLW9wYWNpdHk9XCIxXCIgLz5cclxuICAgICAgICAgICAgPHBhdGggZD1cIm0xOS4xNCAzNC4wOC02LjI3LTQuMDRjLS4xOS0uMTItLjI4LS4zNC0uMjMtLjU2bDEuMDgtNC43Mi05Ljk2IDQuMTQgMTEuNjggNy4wMXpcIlxyXG4gICAgICAgICAgICAgIFthdHRyLmZpbGxdPVwiYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yXCIgZmlsbC1vcGFjaXR5PVwiMVwiIGRhdGEtb3JpZ2luYWwtY29sb3I9XCIjMDAwMDAwZmZcIiBzdHJva2U9XCJub25lXCJcclxuICAgICAgICAgICAgICBzdHJva2Utb3BhY2l0eT1cIjFcIiAvPlxyXG4gICAgICAgICAgICA8cGF0aCBkPVwibTMwLjkzIDQ2LjQyLS41IDkuNzkgMzIuNTctMTguNjctMS4yMS02LjQtMjMuMTYgMTEuNDZ6XCIgW2F0dHIuZmlsbF09XCJiYWNrZ3JvdW5kSW5mbz8uYWNjZW50Q29sb3JcIlxyXG4gICAgICAgICAgICAgIGZpbGwtb3BhY2l0eT1cIjFcIiBkYXRhLW9yaWdpbmFsLWNvbG9yPVwiIzAwMDAwMGZmXCIgc3Ryb2tlPVwibm9uZVwiIHN0cm9rZS1vcGFjaXR5PVwiMVwiIC8+XHJcbiAgICAgICAgICAgIDxwYXRoIGQ9XCJtMTYgNDcuNjUgMTMuMzggOC41OC40OS05Ljg2LTExLjkzLTcuMTd6XCIgW2F0dHIuZmlsbF09XCJiYWNrZ3JvdW5kSW5mbz8uYWNjZW50Q29sb3JcIlxyXG4gICAgICAgICAgICAgIGZpbGwtb3BhY2l0eT1cIjFcIiBkYXRhLW9yaWdpbmFsLWNvbG9yPVwiIzAwMDAwMGZmXCIgc3Ryb2tlPVwibm9uZVwiIHN0cm9rZS1vcGFjaXR5PVwiMVwiIC8+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgZD1cIm0yNy44NSAzOS4zNHMwIDAtLjAxIDBjMCAwIDAgMC0uMDEgMC0uMDguMDQtLjE2LjA2LS4yNC4wNi0uMDUgMC0uMS0uMDMtLjE1LS4wNC0uMDQtLjAxLS4wOC0uMDEtLjExLS4wM2wtNC4xNi0yLjY3LTQuMzcgMS44MiAxMS42OCA3LjAxIDMwLjQtMTUuMDUtMTAuNzEtMy44OC0yMi4yOCAxMi43OHpcIlxyXG4gICAgICAgICAgICAgIFthdHRyLmZpbGxdPVwiYWNjZW50Q29sb3JcIiBmaWxsLW9wYWNpdHk9XCIxXCIgZGF0YS1vcmlnaW5hbC1jb2xvcj1cIiMwMDAwMDBmZlwiIHN0cm9rZT1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgIHN0cm9rZS1vcGFjaXR5PVwiMVwiIC8+XHJcbiAgICAgICAgICAgIDxwYXRoIGQ9XCJtMjguMjYgMzYuMDEtLjEgMS45MyAzMi41OC0xOC42OS0xLjIyLTYuMzktMzAuODYgMTUuMjh6XCIgW2F0dHIuZmlsbF09XCJiYWNrZ3JvdW5kSW5mbz8uYWNjZW50Q29sb3JcIlxyXG4gICAgICAgICAgICAgIGZpbGwtb3BhY2l0eT1cIjFcIiBkYXRhLW9yaWdpbmFsLWNvbG9yPVwiIzAwMDAwMGZmXCIgc3Ryb2tlPVwibm9uZVwiIHN0cm9rZS1vcGFjaXR5PVwiMVwiIC8+XHJcbiAgICAgICAgICAgIDxwYXRoIGQ9XCJtMjcuNjEgMjguMDktMTEuOTMtNy4xNi0xLjk0IDguNDMgMTMuMzYgOC41OHpcIiBbYXR0ci5maWxsXT1cImJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvclwiXHJcbiAgICAgICAgICAgICAgZmlsbC1vcGFjaXR5PVwiMVwiIGRhdGEtb3JpZ2luYWwtY29sb3I9XCIjMDAwMDAwZmZcIiBzdHJva2U9XCJub25lXCIgc3Ryb2tlLW9wYWNpdHk9XCIxXCIgLz5cclxuICAgICAgICAgICAgPHBhdGggZD1cIm01OC41NyAxMi4xNS0xMi4xLTQuMzgtMjkuOTcgMTIuNDMgMTEuNjggN3pcIiBbYXR0ci5maWxsXT1cImJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvclwiXHJcbiAgICAgICAgICAgICAgZmlsbC1vcGFjaXR5PVwiMVwiIGRhdGEtb3JpZ2luYWwtY29sb3I9XCIjMDAwMDAwZmZcIiBzdHJva2U9XCJub25lXCIgc3Ryb2tlLW9wYWNpdHk9XCIxXCIgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L3N2Zz5cclxuICAgICAgICA8ZGl2IFtzdHlsZS5jb2xvcl09XCJhY2NlbnRDb2xvclwiPlNjaGVtZXM8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZ2FwLTMgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzdG9yZXMgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtMiBweS0yIHB4LTNcIiAoY2xpY2spPVwiZ29Ub1N0b3JlcygpXCJcclxuICAgICAgICBbc3R5bGUuYm9yZGVyQ29sb3JdPVwiYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yXCIgKm5nSWY9XCJzdG9yZUF2YWlhYmxlXCJcclxuICAgICAgICBbc3R5bGUuYmFja2dyb3VuZF09XCJnZXRSR0JBKGJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvciAsIDEwKVwiPlxyXG4gICAgICAgIDxtYXQtaWNvbiBbc3R5bGUuY29sb3JdPVwiYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yXCI+c3RvcmU8L21hdC1pY29uPlxyXG4gICAgICAgIDxzcGFuIFtzdHlsZS5jb2xvcl09XCJiYWNrZ3JvdW5kSW5mbz8uYWNjZW50Q29sb3JcIj5TdG9yZXM8L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwicGluLXRleHRcIiAobW91c2VlbnRlcik9XCJzaG93UGluY29kZUlucHV0ID0gdHJ1ZTtzaG93TG9naW4gPSBmYWxzZVwiXHJcbiAgICAgICAgW3N0eWxlLmNvbG9yXT1cImJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvclwiICpuZ0lmPVwiIWdldFBpbmNvZGVcIj5FbnRlclxyXG4gICAgICAgIFBpbmNvZGVcclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJwaW4tdGV4dFwiIChtb3VzZWVudGVyKT1cInNob3dQaW5jb2RlSW5wdXQgPSB0cnVlOztzaG93TG9naW4gPSBmYWxzZVwiXHJcbiAgICAgICAgW3N0eWxlLmNvbG9yXT1cImJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvclwiICpuZ0lmPVwiZ2V0UGluY29kZSAmJiBnZXRQaW5jb2RlLmxlbmd0aCA9PSA2XCI+e3tcIkRlbGl2ZXJpbmcgdG86IFwiICtcclxuICAgICAgICBnZXRQaW5jb2RlfX08L2Rpdj5cclxuXHJcbiAgICAgIDwhLS0gKG1vdXNlbGVhdmUpPVwic2hvd1BpbmNvZGVJbnB1dCA9IGZhbHNlXCIgLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJwaW5jb2RlLWNvbnRhaW5lciBwLTNcIiAqbmdJZj1cInNob3dQaW5jb2RlSW5wdXRcIiAobW91c2VsZWF2ZSk9XCJzaG93UGluY29kZUlucHV0ID0gZmFsc2VcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dCB0ZXh0LWNlbnRlciBtYi0yIGYtMTggZnctYm9sZFwiPlxyXG4gICAgICAgICAgWW91ciBQSU4gQ29kZSB1bmxvY2tzXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInN1Yi10ZXh0IHRleHQtY2VudGVyIGYtMTQgcGluY29kZS10ZXh0XCI+XHJcbiAgICAgICAgICBGYXN0ZXN0IGRlbGl2ZXJ5IGRhdGUsIFRyeS1hdC1Ib21lIGF2YWlsYWJpbGl0eSxcclxuICAgICAgICAgIE5lYXJlc3Qgc3RvcmUgYW5kIEluLXN0b3JlIGRlc2lnbiFcclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXAgbXQtMiBici01IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWJldHdlZW4gcHgtM1wiXHJcbiAgICAgICAgICBbY2xhc3MuZXJyb3ItYm9yZGVyXT1cInBpbkVycm9yXCI+XHJcbiAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIHBsYWNlaG9sZGVyPVwiUGluY29kZVwiIGFyaWEtbGFiZWw9XCJQaW5jb2RlXCIgWyhuZ01vZGVsKV09XCJwaW5jb2RlXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJ3LTc1IHAtMFwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LXN1Yi10ZXh0IGYtMTEgdy0yNSB0ZXh0LWVuZCBjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJzZXRQaW5jb2RlKClcIj5TVUJNSVQ8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1zdGFydCBtdC0yIGYtMTFcIiAqbmdJZj1cInBpbkVycm9yXCI+XHJcbiAgICAgICAgICBQbGVhc2UgZW50ZXIgYSB2YWxpZCBwaW5jb2RlXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiIHN0eWxlPVwiZ2FwOiA1cHg7IGN1cnNvcjogcG9pbnRlcjtcIiAoY2xpY2spPVwiZ29Ub0ZhdigpXCI+XHJcbiAgICAgICAgPG1hdC1pY29uIFtzaW1wb0NvbG9yXT1cImJhY2tncm91bmRJbmZvPy5jb2xvclwiPmZhdm9yaXRlPC9tYXQtaWNvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIHBvc2l0aW9uLXJlbGF0aXZlXCIgc3R5bGU9XCJnYXA6IDVweDsgY3Vyc29yOiBwb2ludGVyO1wiIChjbGljayk9XCJnb1RvQ2FydCgpXCI+XHJcbiAgICAgICAgPG1hdC1pY29uIFtzaW1wb0NvbG9yXT1cImJhY2tncm91bmRJbmZvPy5jb2xvclwiPnNob3BwaW5nX2NhcnQ8L21hdC1pY29uPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJwb3NpdGlvbi1hYnNvbHV0ZSBjYXJ0SXRlbUNvdW50XCIgKm5nSWY9XCJnZXRDYXJ0SXRlbXNDb3VudFwiXHJcbiAgICAgICAgICBbbmdTdHlsZV09XCJ7J2JhY2tncm91bmQnIDogYmFja2dyb3VuZEluZm8/LmFjY2VudEJhY2tncm91bmRUeXBlID09ICdTb2xpZCcgPyAgYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yIDogJ2xpbmVhci1ncmFkaWVudCh0byByaWdodCwnICsgYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yICsgJyAwJScgKyAnLCcgKyBiYWNrZ3JvdW5kSW5mbz8uc2Vjb25kYXJ5QWNjZW50Q29sb3IgKycgMTAwJScgKyAnKScgLCAnY29sb3InIDogc2V0Q29sb3IoKX1cIj5cclxuICAgICAgICAgIHt7Z2V0Q2FydEl0ZW1zQ291bnR9fTwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImxvZ2luQnV0dG9uXCIgKm5nSWY9XCIhbG9nZ2VkSW5cIiAobW91c2VlbnRlcik9XCJzaG93TG9naW4gPSB0cnVlO3Nob3dQaW5jb2RlSW5wdXQgPSBmYWxzZVwiPlxyXG4gICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMzVcIiBoZWlnaHQ9XCIyN1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgZD1cIk0xMi4xMiAxMi43OEMxMi4wNSAxMi43NyAxMS45NiAxMi43NyAxMS44OCAxMi43OEMxMC4xMiAxMi43MiA4LjcxOTk3IDExLjI4IDguNzE5OTcgOS41MDk5OEM4LjcxOTk3IDcuNjk5OTggMTAuMTggNi4yMjk5OCAxMiA2LjIyOTk4QzEzLjgxIDYuMjI5OTggMTUuMjggNy42OTk5OCAxNS4yOCA5LjUwOTk4QzE1LjI3IDExLjI4IDEzLjg4IDEyLjcyIDEyLjEyIDEyLjc4WlwiXHJcbiAgICAgICAgICAgIGZpbGw9XCIjMjkyRDMyXCIgc3Ryb2tlPVwiIzI5MkQzMlwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICBkPVwiTTE4Ljc0IDE5LjM4QzE2Ljk2IDIxLjAxIDE0LjYgMjIgMTIgMjJDOS40MDAwMSAyMiA3LjA0MDAxIDIxLjAxIDUuMjYwMDEgMTkuMzhDNS4zNjAwMSAxOC40NCA1Ljk2MDAxIDE3LjUyIDcuMDMwMDEgMTYuOEM5Ljc3MDAxIDE0Ljk4IDE0LjI1IDE0Ljk4IDE2Ljk3IDE2LjhDMTguMDQgMTcuNTIgMTguNjQgMTguNDQgMTguNzQgMTkuMzhaXCJcclxuICAgICAgICAgICAgZmlsbD1cIiMyOTJEMzJcIiBzdHJva2U9XCIjMjkyRDMyXCIgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgIGQ9XCJNMTIgMjJDMTcuNTIyOCAyMiAyMiAxNy41MjI4IDIyIDEyQzIyIDYuNDc3MTUgMTcuNTIyOCAyIDEyIDJDNi40NzcxNSAyIDIgNi40NzcxNSAyIDEyQzIgMTcuNTIyOCA2LjQ3NzE1IDIyIDEyIDIyWlwiXHJcbiAgICAgICAgICAgIHN0cm9rZT1cIiMyOTJEMzJcIiBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgIDwvc3ZnPiA8IS0tIDxzcGFuIGNsYXNzPVwiZnctbm9ybWFsIGZzLTZcIiBbc2ltcG9Db2xvcl09XCJhY2NlbnRDb2xvclwiPkxvZ2luPC9zcGFuPiAtLT5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDwhLS0gKG1vdXNlbGVhdmUpPVwic2hvd0xvZ2luID0gZmFsc2VcIiAtLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImluZm8tY29udGFpbmVyIHAtM1wiICpuZ0lmPVwic2hvd0xvZ2luXCIgKG1vdXNlbGVhdmUpPVwic2hvd0xvZ2luID0gZmFsc2VcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dCB0ZXh0LWNlbnRlciBtYi0yIGYtMTggZnctYm9sZFwiPlxyXG4gICAgICAgICAgWW91ciBBY2NvdW50XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInN1Yi10ZXh0IHRleHQtY2VudGVyIGYtMTRcIj5cclxuICAgICAgICAgIEFjY2VzcyBhY2NvdW50ICYgbWFuYWdlIHlvdXIgb3JkZXJzLlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJidG4tY29udGFpbmVyIHctMTAwIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBtdC0zIGdhcC0zXCI+XHJcbiAgICAgICAgICA8ZGl2IChjbGljayk9XCJnb1RvQWNjb3VudCgnU0lHTlVQJylcIiBjbGFzcz1cInctNTAgdGV4dC1jZW50ZXIgc2lnbi1idG4gYm9yZGVyLTBcIlxyXG4gICAgICAgICAgICBbbmdTdHlsZV09XCJ7J2JhY2tncm91bmQnIDogYmFja2dyb3VuZEluZm8/LmFjY2VudEJhY2tncm91bmRUeXBlID09ICdTb2xpZCcgPyAgIGFjY2VudENvbG9yIDogJ2xpbmVhci1ncmFkaWVudCh0byByaWdodCwnICsgYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yICsgJyAwJScgKyAnLCcgKyBiYWNrZ3JvdW5kSW5mbz8uc2Vjb25kYXJ5QWNjZW50Q29sb3IgKycgMTAwJScgKyAnKSd9XCJcclxuICAgICAgICAgICAgW3N0eWxlLmNvbG9yXT1cInN0eWxlPy5iYWNrZ3JvdW5kPy5jb2xvclwiPlNpZ24gVXA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgKGNsaWNrKT1cImdvVG9BY2NvdW50KCdMT0dJTicpXCIgY2xhc3M9XCJ3LTUwIHRleHQtY2VudGVyIHNpZ24tYnRuXCJcclxuICAgICAgICAgICAgW3N0eWxlLmJvcmRlckNvbG9yXT1cImJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvclwiIFtzdHlsZS5jb2xvcl09XCJiYWNrZ3JvdW5kSW5mbz8uYWNjZW50Q29sb3JcIj5Mb2cgSW48L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCIgc3R5bGU9XCJnYXA6IDhweDsgY3Vyc29yOiBwb2ludGVyO1wiIChjbGljayk9XCJnb1RvQWNjb3VudCgnUFJPRklMRScpXCJcclxuICAgICAgICAqbmdJZj1cImxvZ2dlZEluXCI+XHJcbiAgICAgICAgPGltZyBsb2FkaW5nPVwibGF6eVwiIFtzcmNdPVwidXNlckdlbmRlciB8IGdlbmRlckljb25cIiBzdHlsZT1cImhlaWdodDogMjdweDtcIj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDwhLS0gPGRpdj4gLS0+XHJcbiAgICA8IS0tIDxidXR0b24gY2xhc3M9XCJidXR0b25cIiAoY2xpY2spPVwiZ29Ub0FjY291bnQoKVwiIHNpbXBvQnV0dG9uRGlyZWN0aXZlIFtpZF09XCJzZWN0aW9uSWQrYnV0dG9uSWRcIiBbYnV0dG9uU3R5bGVdPVwiYnV0dG9uU3R5bGVcIiBbY29sb3JdPVwiY29sb3JcIiBbYXBwQnV0dG9uRWRpdG9yXT1cImVkaXQgPz8gZmFsc2VcIiBbYnV0dG9uRGF0YV09XCJidXR0b25Db250ZW50XCI+e3tidXR0b25Db250ZW50Py5sYWJlbH19PC9idXR0b24+IC0tPlxyXG4gICAgPCEtLSA8L2Rpdj4gLS0+XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI25hdmJhckxpbmtzVGVtcGxhdGU+XHJcbiAgPGRpdiBjbGFzcz1cIm5hdmJhci1jb2xsYXBzZSBmcy02IHBvc2l0aW9uLXJlbGF0aXZlIGQtZmxleFwiIHN0eWxlPVwibWFyZ2luLXRvcDogNXB4OyBtYXJnaW4tbGVmdDogMjVweDtcIlxyXG4gICAgW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiICpuZ0lmPVwic2NyZWVuV2lkdGggPiA3NjhcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZ2V0TmF2YmFyQnV0dG9uXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtLnNob3dIZWFkZXJcIj5cclxuICAgICAgICA8c2ltcG8tbmF2YmFyLWJ1dHRvbi1lbGVtZW50IFtidXR0b25EYXRhXT1cIml0ZW1cIiBbc2VsZWN0ZWRTdHlsZV09XCJzdHlsZT8ubmF2aWdhdGlvblN0eWxlXCJcclxuICAgICAgICAgIFtidXR0b25TdHlsZV09XCJzdHlsZT8ubmF2YmFyQnV0dG9uU3R5bGVcIiBbYmdDb2xvcl09XCJzaW1wb0NvbG9yXCJcclxuICAgICAgICAgIFtzZWN0aW9uSWRdPVwiZGF0YT8uaWRcIj48L3NpbXBvLW5hdmJhci1idXR0b24tZWxlbWVudD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBsaW5rIG9mIGdldERyb3Bkb3duTGlua3M7IGxldCBpZHggPSBpbmRleFwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29udGVudD8uZWNvbWxpbmtzPy5bbGlua10/Lmxlbmd0aCBcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmVcIj5cclxuICAgICAgICAgIDxidXR0b24gbWF0LXN0cm9rZWQtYnV0dG9uIGNsYXNzPVwibWF0LWJ0biBkcm9wZG93bi10b2dnbGVcIiB0eXBlPVwiYnV0dG9uXCIgW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiIGlkPVwibGlua1wiXHJcbiAgICAgICAgICAgIGRhdGEtYnMtdG9nZ2xlPVwiZHJvcGRvd25cIiBhcmlhLWhhc3BvcHVwPVwidHJ1ZVwiIGFyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiPlxyXG4gICAgICAgICAgICB7e2xpbmsgfCB1cHBlcmNhc2V9fVxyXG4gICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tbWVudVwiIGFyaWEtbGFiZWxsZWRieT1cImxpbmtcIj5cclxuICAgICAgICAgICAgPGEgY2xhc3M9XCJkcm9wZG93bi1pdGVtXCIgKm5nRm9yPVwibGV0IG1lbnUgb2YgZ2V0VmFsdWVzKGNvbnRlbnQ/LmVjb21saW5rcz8uW2xpbmtdKVwiXHJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImFwcGx5RmlsdGVyKG1lbnUsIGxpbmspXCI+e3ttZW51fX08L2E+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxkaXYgY2xhc3M9XCJvZmZjYW52YXNcIiB0YWJpbmRleD1cIi0xXCIgaWQ9XCJvZmZjYW52YXNSaWdodFwiIGFyaWEtbGFiZWxsZWRieT1cIm9mZmNhbnZhc1JpZ2h0TGFiZWxcIlxyXG4gIFtuZ0NsYXNzXT1cInsnb2ZmY2FudmFzLWVuZCcgOiAoc3R5bGU/LnN0eWxpbmcgPT09ICdIZWFkZXIxJyB8fCBzdHlsZT8uc3R5bGluZyA9PT0gJ0hlYWRlcjMnKSAmJiAhaXNFY29tbWVyY2VXZWJzaXRlLCAnb2ZmY2FudmFzLXN0YXJ0Jzogc3R5bGU/LnN0eWxpbmcgPT09ICdIZWFkZXIyJyB8fCBzdHlsZT8uc3R5bGluZyA9PT0gJ0hlYWRlcjQnIHx8IGlzRWNvbW1lcmNlV2Vic2l0ZX1cIj5cclxuICA8ZGl2IGNsYXNzPVwib2ZmY2FudmFzLWhlYWRlclwiIFtzaW1wb0JhY2tncm91bmRdPVwic3R5bGU/LmJhY2tncm91bmRcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJtb2JpbGVMb2dvU2VjdGlvblRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICA8IS0tIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuLWNsb3NlXCIgIGFyaWEtbGFiZWw9XCJDbG9zZVwiPjwvYnV0dG9uPiAtLT5cclxuICAgIDxtYXQtaWNvbiBkYXRhLWJzLWRpc21pc3M9XCJvZmZjYW52YXNcIj5jbG9zZTwvbWF0LWljb24+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cIm9mZmNhbnZhcy1ib2R5XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicGFnZXNcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInBhZ2VMaW5rc1RlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwib2ZmY2FudmFzLWZvb3RlclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNhbnZhcy1idXR0b25cIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImJ1dHRvbnNUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPG5nLXRlbXBsYXRlICNlY29tUHJvZmlsZVRlbXBsYXRlPlxyXG4gIDwhLS0gPG1hdC1pY29uIGNsYXNzPVwiaC0xMDAgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGJyLTUwIGZzLTIyIHB4LTMgcHktMVwiXHJcbiAgICAoY2xpY2spPVwic2hvd1NlYXJjaEJhck1vYmlsZSA9ICFzaG93U2VhcmNoQmFyTW9iaWxlXCJcclxuICAgIFtuZ1N0eWxlXT1cInsnYmFja2dyb3VuZCcgOiBiYWNrZ3JvdW5kSW5mbz8uYWNjZW50QmFja2dyb3VuZFR5cGUgPT0gJ1NvbGlkJyA/ICAgYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yIDogJ2xpbmVhci1ncmFkaWVudCh0byByaWdodCwnICsgYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yICsgJyAwJScgKyAnLCcgKyBiYWNrZ3JvdW5kSW5mbz8uc2Vjb25kYXJ5QWNjZW50Q29sb3IgKycgMTAwJScgKyAnKSd9XCJcclxuICAgIFtzdHlsZS5jb2xvcl09XCJiYWNrZ3JvdW5kSW5mbz8uY29sb3JcIj5zZWFyY2g8L21hdC1pY29uPiAtLT5cclxuXHJcblxyXG4gIDwhLS0gPGlucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2wgbW9iLWZvcm0tY29udHJvbFwiIHBsYWNlaG9sZGVyPVwiU2VhcmNoIFByb2R1Y3RcIiBhcmlhLWxhYmVsPVwiU2VhcmNoIFByb2R1Y3RcIlxyXG4gICAgKm5nSWY9XCJzaG93U2VhcmNoQmFyTW9iaWxlXCIgWyhuZ01vZGVsKV09XCJzZWFyY2hUZXh0XCIgKG5nTW9kZWxDaGFuZ2UpPVwid2FpdEJlZm9yZVNlYXJjaCgpXCJcclxuICAgIFtuZ1N0eWxlXT1cInsnYm9yZGVyJyA6ICcxcHggc29saWQgJyArIGJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvcn1cIj4gLS0+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCIgc3R5bGU9XCJnYXA6IDhweDsgY3Vyc29yOiBwb2ludGVyO1wiIChjbGljayk9XCJnb1RvQWNjb3VudCgnUFJPRklMRScpXCJcclxuICAgICpuZ0lmPVwibG9nZ2VkSW5cIj5cclxuICAgIDxpbWcgbG9hZGluZz1cImxhenlcIiBbc3JjXT1cInVzZXJHZW5kZXIgfCBnZW5kZXJJY29uXCIgc3R5bGU9XCJoZWlnaHQ6IDI3cHg7XCI+XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI21vYmlsZUxvZ29TZWN0aW9uVGVtcGxhdGU+XHJcbiAgPGRpdiBjbGFzcz1cImQtZmxleCBnYXAtMyBhbGlnbi1jZW50ZXIgY3Vyc29yLXBvaW50ZXIgaC0xMDBcIlxyXG4gICAgKm5nSWY9XCIhY29udGVudD8ubG9nbz8uaXNJbWFnZSB8fCAhY29udGVudD8ubG9nbz8uaW1hZ2U/LnVybFwiIChjbGljayk9XCIhZWRpdCA/IGdvVG9Ib21lKCkgOiAnJ1wiPlxyXG4gICAgPGRpdiAqbmdJZj1cImNvbnRlbnQ/LmxvZ28/LnRleHQ/LmlzSWNvbiAmJiBjb250ZW50Py5sb2dvPy50ZXh0Py51cmxcIiBjbGFzcz1cImgtMTAwXCI+XHJcbiAgICAgIDxpbWcgbG9hZGluZz1cImxhenlcIiBbc3JjXT1cImNvbnRlbnQ/LmxvZ28/LnRleHQ/LnVybFwiIGFsdD1cImxvZ29cIiBjbGFzcz1cImgtMTAwXCI+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJoZWFkaW5nLXNtYWxsXCIgKm5nSWY9XCJjb250ZW50Py5sb2dvPy50ZXh0Py5pc1RleHRcIiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCI+XHJcbiAgICAgIDxiPnt7Y29udGVudD8uc2l0ZU5hbWU/LnZhbHVlfX08L2I+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8IS0tIDxkaXYgY2xhc3M9XCJkLWZsZXggZ2FwLTMgYWxpZ24taXRlbXMtbGctY2VudGVyIGN1cnNvci1wb2ludGVyXCIgKm5nSWY9XCJjb250ZW50Py5sb2dvPy5pc0ltYWdlICYmIGNvbnRlbnQ/LmxvZ28/LmltYWdlPy51cmxcIiAoY2xpY2spPVwiZ29Ub0hvbWUoKVwiPiAtLT5cclxuICA8aW1nIFtzcmNdPVwiY29udGVudD8ubG9nbz8uaW1hZ2U/LnVybFwiIGFsdD1cImxvZ29cIiBjbGFzcz1cImgtMTAwXCIgbG9hZGluZz1cImxhenlcIlxyXG4gICAgKm5nSWY9XCJjb250ZW50Py5sb2dvPy5pc0ltYWdlICYmIGNvbnRlbnQ/LmxvZ28/LmltYWdlPy51cmxcIiAoY2xpY2spPVwiIWVkaXQgPyBnb1RvSG9tZSgpIDogJydcIj5cclxuICA8IS0tIDwvZGl2PiAtLT5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjY2F0ZWdvcmllc0hlYWRlcj5cclxuICA8ZGl2IGNsYXNzPVwiY2F0ZWdvcmllcy13cmFwcGVyXCJcclxuICAgICpuZ0lmPVwiKGNhdGVnb3J5TGlzdD8ubGVuZ3RoID4gMCB8fCBjb2xsZWN0aW9uTGlzdD8uY29sbGVjdGlvbnM/Lmxlbmd0aCA+IDApICYmICFpc01vYmlsZVwiXHJcbiAgICAobW91c2VsZWF2ZSk9XCJzaG93TGlzdCA9IGZhbHNlOyBzaG93Q29sbGVjdGlvbnMgPSBmYWxzZVwiPlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJibHVyLW92ZXJsYXlcIiBbY2xhc3MuYWN0aXZlXT1cInNob3dMaXN0IHx8IHNob3dDb2xsZWN0aW9uc1wiPjwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJjYXRlZ29yaWVzLWhlYWRlciBkLWZsZXggZ2FwLTMgcHktMiBwb3NpdGlvbi1yZWxhdGl2ZVwiIFtzcGFjaW5nSG9yaXpvbnRhbF09XCJzdHlsZXNMYXlvdXRcIlxyXG4gICAgICBbc3R5bGUuYmFja2dyb3VuZF09XCJkYXRhPy5zdHlsZXM/LmhlYWRsaW5lPy5jb2xvclwiPlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cImNhdGVnb3J5IGN1cnNvci1wb2ludGVyXCIgKm5nRm9yPVwibGV0IGVsZSBvZiBtZWdhTWVudTsgbGV0IGkgPSBpbmRleFwiXHJcbiAgICAgICAgW3N0eWxlLi0tYm9yZGVyLWNvbG9yXT1cImRhdGE/LnN0eWxlcz8uYmFja2dyb3VuZD8uYWNjZW50Q29sb3JcIiBbc2ltcG9Db2xvcl09XCJkYXRhPy5zdHlsZXM/LmhlYWRsaW5lPy5jb2xvclwiXHJcbiAgICAgICAgKG1vdXNlZW50ZXIpPVwic2V0Q2hpbGRNZW51KGVsZSlcIiAoY2xpY2spPVwicmVkaXJlY3Rpb25zT2ZNZW51KGVsZSlcIj5cclxuICAgICAgICB7e2VsZT8ubGFiZWwgfCB0aXRsZWNhc2V9fVxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDwhLS0gW2NsYXNzLmhpZGUtZHJvcGRvd25dPVwiIXNob3dMaXN0XCIgLS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwibGlzdC1jYXRlZ29yeVwiIFtjbGFzcy5zaG93LWRyb3Bkb3duXT1cInNob3dMaXN0XCIgW2NsYXNzLmhpZGUtZHJvcGRvd25dPVwiIXNob3dMaXN0XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJyb3cgdy0xMDAgaC0xMDAgbWVnYS1tZW51LXNjcm9sbC1yb3dcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBlbGUgb2Ygc2VsZWN0ZWRDYXRlZ29yeTsgbGV0IGkgPSBpbmRleFwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1lZ2EtbWVudS1zY3JvbGwtY29sXCIgW25nQ2xhc3NdPVwiZWxlPy5jaGlsZHJlbj8ubGVuZ3RoID09IDAgJiYgKGVsZS50eXBlPT0nQ09MTEVDVElPTlMnIHx8IGVsZS50eXBlPT0nQ0FURUdPUlknKSA/ICdjb2wtMycgOiAnY29sLTInXCI+XHJcblxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZWxlPy5jaGlsZHJlbj8ubGVuZ3RoID09IDAgJiYgKGVsZS50eXBlPT0nQ09MTEVDVElPTlMnIHx8IGVsZS50eXBlPT0nQ0FURUdPUlknIClcIj5cclxuICAgICAgICAgICAgICA8aW1nIFtzcmNdPVwiZWxlLmltYWdlVXJsXCIgW2FsdF09XCJlbGU/LmxhYmVsXCIgY2xhc3M9XCJ3LTEwMCBtYi0yIGJyLTEyIGN1cnNvci1wb2ludGVyIGNvbGxlY3Rpb25JbWFnZVwiICpuZ0lmPVwiZWxlLmltYWdlVXJsXCIgKGNsaWNrKT1cInJlZGlyZWN0aW9uc09mTWVudShlbGUpXCIgLz5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGlzdC1oZWFkZXIgbWItMyBjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJyZWRpcmVjdGlvbnNPZk1lbnUoZWxlKVwiPlxyXG4gICAgICAgICAgICAgIHt7ZWxlPy5sYWJlbCB8IHRpdGxlY2FzZX19XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZWxlPy5jaGlsZHJlbiAmJiBlbGU/LmNoaWxkcmVuLmxlbmd0aCA+IDBcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGdhcC0zIGxpc3QtaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY2hpbGQgb2YgZWxlPy5jaGlsZHJlblwiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IChjbGljayk9XCJyZWRpcmVjdGlvbnNPZk1lbnUoY2hpbGQpXCIgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7Y2hpbGQ/LmxhYmVsIHwgdGl0bGVjYXNlfX1cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjbW9iaWxlQ2F0ZWdvcnlIZWFkZXI+XHJcbiAgPGRpdiBjbGFzcz1cImNhdGVnb3JpZXMtaGVhZGVyIGQtZmxleCBnYXAtMyAgcHktMiBvdmVyZmxvdy1hdXRvXCIgKm5nSWY9XCJjYXRlZ29yeUxpc3Q/Lmxlbmd0aCA+IDAgJiYgaXNNb2JpbGVcIlxyXG4gICAgW3NwYWNpbmdIb3Jpem9udGFsXT1cInN0eWxlc0xheW91dFwiIFtjbGFzcy5tYXJnaW4tdG9wLW1vYl09XCJpc0hlYWRlclN0aWNreVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNhdGVnb3J5IGN1cnNvci1wb2ludGVyIGQtZmxleCBmbGV4LWNvbHVtbiBnYXAtM1wiICpuZ0Zvcj1cImxldCBlbGUgb2YgY2F0ZWdvcnlMaXN0O2xldCBpID0gaW5kZXhcIlxyXG4gICAgICBbc3R5bGUuY29sb3JdPVwiZGF0YT8uc3R5bGVzPy5iYWNrZ3JvdW5kPy5hY2NlbnRDb2xvclwiIChjbGljayk9XCJzZWxlY3RlZENhdGVnb3J5ID0gZWxlOyBmaWx0ZXJCeUNhdGVnb3J5KClcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNhdC1pbWcgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIHctMTAwXCI+XHJcbiAgICAgICAgPGltZyBbc3JjXT1cImVsZT8uaW1hZ2VVcmxzWzBdXCIgYWx0PVwiXCIgY2xhc3M9XCJoLTEwIGJyLTEyXCI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXIgZi0xNFwiPnt7ZWxlPy5jYXRlZ29yeU5hbWUgfCB0aXRsZWNhc2V9fTwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI2Vjb21tZXJjZV9oZWFkZXI+XHJcbiAgPGhlYWRlciBjbGFzcz1cInNpdGUtaGVhZGVyXCI+XHJcbiAgICA8IS0tIFRvcCBCYXI6IExvZ28sIFNlYXJjaCwgVXNlciBBY3Rpb25zIC0tPlxyXG4gICAgPGRpdiBjbGFzcz1cInRvcC1iYXJcIj5cclxuXHJcbiAgICAgIDwhLS0gTW9iaWxlIE1lbnUgVG9nZ2xlIChDaGVja2JveCBIYWNrKSAtLT5cclxuICAgICAgPGRpdiBbbmdDbGFzc109XCJ7J21vYmlsZS1oZWFkZXItbGVmdC1zaWRlJzogc2NyZWVuV2lkdGggPD0gNDc1fVwiPlxyXG4gICAgICAgIDxsYWJlbCBmb3I9XCJtb2JpbGUtbWVudS1jaGVja2JveFwiIGNsYXNzPVwibW9iaWxlLW1lbnUtYnRuXCIgZGF0YS1icy10b2dnbGU9XCJvZmZjYW52YXNcIlxyXG4gICAgICAgICAgZGF0YS1icy10YXJnZXQ9XCIjb2ZmY2FudmFzUmlnaHRcIiBhcmlhLWNvbnRyb2xzPVwib2ZmY2FudmFzUmlnaHRcIj5cclxuICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCJcclxuICAgICAgICAgICAgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgZmlsbD1cIm5vbmVcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCI+XHJcbiAgICAgICAgICAgIDxsaW5lIHgxPVwiNFwiIHkxPVwiMTJcIiB4Mj1cIjIwXCIgeTI9XCIxMlwiPjwvbGluZT5cclxuICAgICAgICAgICAgPGxpbmUgeDE9XCI0XCIgeTE9XCI2XCIgeDI9XCIyMFwiIHkyPVwiNlwiPjwvbGluZT5cclxuICAgICAgICAgICAgPGxpbmUgeDE9XCI0XCIgeTE9XCIxOFwiIHgyPVwiMjBcIiB5Mj1cIjE4XCI+PC9saW5lPlxyXG4gICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgPC9sYWJlbD5cclxuXHJcbiAgICAgICAgPCEtLSBMb2dvIFNlY3Rpb24gLS0+XHJcbiAgICAgICAgPGEgY2xhc3M9XCJsb2dvXCIgKGNsaWNrKT1cIiFlZGl0ID8gZ29Ub0hvbWUoKSA6ICcnXCIgKm5nSWY9XCJjb250ZW50Py5sb2dvPy5pc0ltYWdlICYmIGNvbnRlbnQ/LmxvZ28/LmltYWdlPy51cmxcIj5cclxuICAgICAgICAgIDxpbWcgW3NyY109XCJjb250ZW50Py5sb2dvPy5pbWFnZT8udXJsXCIgYWx0PVwiTG9nb1wiIGNsYXNzPVwibG9nby1pbWdcIiBbd2lkdGhdPVwiY29udGVudD8ubG9nbz8uc2l6ZSAgKyAxNVwiXHJcbiAgICAgICAgICAgIFtoZWlnaHRdPVwiY29udGVudD8ubG9nbz8uc2l6ZVwiPlxyXG4gICAgICAgIDwvYT5cclxuXHJcbiAgICAgICAgPGEgY2xhc3M9XCJ0ZXh0UGx1c2xvZ29cIiAoY2xpY2spPVwiIWVkaXQgPyBnb1RvSG9tZSgpIDogJydcIiAqbmdJZj1cIiFjb250ZW50Py5sb2dvPy5pc0ltYWdlIFxyXG4gICAgICAgICAgJiYgY29udGVudD8ubG9nbz8udGV4dD8uaXNUZXh0IFxyXG4gICAgICAgICAgJiYgY29udGVudD8ubG9nbz8udGV4dD8uaXNJY29uIFxyXG4gICAgICAgICAgJiYgY29udGVudD8ubG9nbz8udGV4dD8udXJsXCI+XHJcblxyXG4gICAgICAgICAgPGltZyBsb2FkaW5nPVwibGF6eVwiIFtzcmNdPVwiY29udGVudD8ubG9nbz8udGV4dD8udXJsXCIgYWx0PVwiSWNvblwiIGNsYXNzPVwibG9nby1pY29uXCJcclxuICAgICAgICAgICAgW3dpZHRoXT1cImNvbnRlbnQ/LmxvZ28/LnNpemUgKyAxNVwiIFtoZWlnaHRdPVwiY29udGVudD8ubG9nbz8uc2l6ZVwiPlxyXG5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibG9nby10ZXh0XCIgW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiICpuZ0lmPVwic2NyZWVuV2lkdGggPiA0NzVcIj5cclxuICAgICAgICAgICAge3sgY29udGVudD8uc2l0ZU5hbWU/LnZhbHVlIH19XHJcbiAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgPC9hPlxyXG5cclxuICAgICAgICA8YSBjbGFzcz1cImxvZ29cIiAoY2xpY2spPVwiIWVkaXQgPyBnb1RvSG9tZSgpIDogJydcIiAqbmdJZj1cIiFjb250ZW50Py5sb2dvPy5pc0ltYWdlIFxyXG4gICAgICAgICAgJiYgY29udGVudD8ubG9nbz8udGV4dD8uaXNUZXh0IFxyXG4gICAgICAgICAgJiYgIWNvbnRlbnQ/LmxvZ28/LnRleHQ/LmlzSWNvblwiPlxyXG5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibG9nby1tYWluXCIgW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiPlxyXG4gICAgICAgICAgICB7eyBjb250ZW50Py5zaXRlTmFtZT8udmFsdWUgfX1cclxuICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICA8L2E+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLSBTZWFyY2ggQmFyIC0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwic2VhcmNoLXdyYXBwZXJcIiAqbmdJZj1cInNjcmVlbldpZHRoID4gNDc1ICYmIGNvbnRlbnQ/LnNob3dTZWFyY2hCYXIgJiYgZGF0YT8uc3R5bGVzPy5tZW51VHlwZSAhPT0gJ0RST1BET1dOX01FTlUnXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInNlYXJjaC1iYXJcIj5cclxuICAgICAgICAgIDwhLS0gU2VhcmNoIEljb24gU1ZHIC0tPlxyXG4gICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIGNsYXNzPVwic2VhcmNoLWljb25cIj5cclxuICAgICAgICAgICAgPGNpcmNsZSBjeD1cIjExXCIgY3k9XCIxMVwiIHI9XCI4XCI+PC9jaXJjbGU+XHJcbiAgICAgICAgICAgIDxsaW5lIHgxPVwiMjFcIiB5MT1cIjIxXCIgeDI9XCIxNi42NVwiIHkyPVwiMTYuNjVcIj48L2xpbmU+XHJcbiAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIHBsYWNlaG9sZGVyPVwiU2VhcmNoIGZvciBpdGVtXCIgWyhuZ01vZGVsKV09XCJzZWFyY2hUZXh0XCIgKG5nTW9kZWxDaGFuZ2UpPVwid2FpdEJlZm9yZVNlYXJjaCgpXCJcclxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cIlNlYXJjaFwiPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS0gRHJvcGRvd24gbWVudSBzdHlsZSAtLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImRyb3Bkb3duX21lbnVcIiAqbmdJZj1cInNjcmVlbldpZHRoID4gNDc1ICYmIGRhdGE/LnN0eWxlcz8ubWVudVR5cGUgPT09ICdEUk9QRE9XTl9NRU5VJ1wiXHJcbiAgICAgICAgKG1vdXNlbGVhdmUpPVwic2hvd0xpc3QgPSBmYWxzZTsgc2VsZWN0ZWRDYXRlZ29yeSA9IG51bGxcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGQtbmF2XCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGQtdGFiLXdyYXBcIiAqbmdGb3I9XCJsZXQgZWxlIG9mIG1lZ2FNZW51XCIgKG1vdXNlZW50ZXIpPVwic2V0Q2hpbGRNZW51KGVsZSlcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJkZC10YWJcIiBbY2xhc3MuZGQtdGFiLWFjdGl2ZV09XCJzaG93TGlzdCAmJiBzZWxlY3RlZENhdGVnb3J5ID09PSBlbGU/LmNoaWxkcmVuXCJcclxuICAgICAgICAgICAgICAoY2xpY2spPVwicmVkaXJlY3Rpb25zT2ZNZW51KGVsZSlcIj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtbm93cmFwXCI+e3tlbGU/LmxhYmVsIHwgdGl0bGVjYXNlfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgPGltZyBzdHlsZT1cIndpZHRoOjIwcHg7IGhlaWdodDoyMHB4XCIgY2xhc3M9XCJ0YWItYXJyb3dcIiAqbmdJZj1cImVsZT8uY2hpbGRyZW4/Lmxlbmd0aFwiXHJcbiAgICAgICAgICAgICAgICBzcmM9XCJodHRwczovL2Qyejk0OTd4cDh4YjEyLmNsb3VkZnJvbnQubmV0L3Byb2QtaW1hZ2VzLzMzNDk1MmMxNzc2ODY2NDMxODIxZHJvcGRvd24tYXJyb3ctc3ZncmVwby1jb20uc3ZnXCJcclxuICAgICAgICAgICAgICAgIGFsdD1cImRyb3Bkb3duIGFycm93XCI+XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRkLXBhbmVsXCIgKm5nSWY9XCJzaG93TGlzdCAmJiBzZWxlY3RlZENhdGVnb3J5ID09PSBlbGU/LmNoaWxkcmVuICYmIGVsZT8uY2hpbGRyZW4/Lmxlbmd0aFwiXHJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkZC1pdGVtXCIgKm5nRm9yPVwibGV0IGNoaWxkIG9mIGVsZT8uY2hpbGRyZW5cIlxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIiFjaGlsZD8uY2hpbGRyZW4/Lmxlbmd0aCA/IHJlZGlyZWN0aW9uc09mTWVudShjaGlsZCkgOiAnJ1wiPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LW5vd3JhcFwiPnt7Y2hpbGQ/LmxhYmVsIHwgdGl0bGVjYXNlfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImRkLWl0ZW0tYXJyb3dcIiAqbmdJZj1cImNoaWxkPy5jaGlsZHJlbj8ubGVuZ3RoXCI+JiM4MjUwOzwvc3Bhbj5cclxuXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGQtc3VibWVudVwiICpuZ0lmPVwiY2hpbGQ/LmNoaWxkcmVuPy5sZW5ndGhcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRkLXN1Yi1pdGVtXCIgKm5nRm9yPVwibGV0IHN1YiBvZiBjaGlsZD8uY2hpbGRyZW5cIlxyXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJyZWRpcmVjdGlvbnNPZk1lbnUoc3ViKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LW5vd3JhcFwiPnt7c3ViPy5sYWJlbCB8IHRpdGxlY2FzZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcblxyXG4gICAgICA8IS0tIFJpZ2h0IEFjdGlvbnMgLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ1c2VyLWFjdGlvbnNcIj5cclxuICAgICAgICBcclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGF0YT8uc3R5bGVzPy5tZW51VHlwZSA9PT0gJ0RST1BET1dOX01FTlUnICYmIHNjcmVlbldpZHRoID4gNDc1ICYmIGNvbnRlbnQ/LnNob3dTZWFyY2hCYXJcIj5cclxuICAgICAgICAgIDxhIGNsYXNzPVwiYWN0aW9uLWxpbmsgaWNvbi1vbmx5IGRyb3Bkb3duLXNlYXJjaC10b2dnbGVcIiAoY2xpY2spPVwic2hvd0Ryb3Bkb3duRGVza3RvcFNlYXJjaCA9ICFzaG93RHJvcGRvd25EZXNrdG9wU2VhcmNoXCJcclxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cIlRvZ2dsZSBzZWFyY2hcIj5cclxuICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMlwiIGhlaWdodD1cIjIyXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCI+XHJcbiAgICAgICAgICAgICAgPGNpcmNsZSBjeD1cIjExXCIgY3k9XCIxMVwiIHI9XCI4XCI+PC9jaXJjbGU+XHJcbiAgICAgICAgICAgICAgPGxpbmUgeDE9XCIyMVwiIHkxPVwiMjFcIiB4Mj1cIjE2LjY1XCIgeTI9XCIxNi42NVwiPjwvbGluZT5cclxuICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICA8L2E+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdG9yZUF2YWlhYmxlXCI+XHJcbiAgICAgICAgICA8YSBjbGFzcz1cImFjdGlvbi1saW5rIHN0b3JlLWxpbmtcIiAobW91c2VlbnRlcik9XCJzaG93UGluY29kZUlucHV0ID0gdHJ1ZTtzaG93TG9naW4gPSBmYWxzZVwiXHJcbiAgICAgICAgICAgICpuZ0lmPVwiIWdldFBpbmNvZGVcIj5cclxuICAgICAgICAgICAgPCEtLSA8c3ZnIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMTcgMTdcIiB2ZXJzaW9uPVwiMS4xXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXHJcbiAgICAgICAgICAgICAgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgZmlsbD1cIm5vbmVcIiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCIgeG1sbnM6eGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCI+XHJcbiAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgIGQ9XCJNOC41IDAuNWMtMy4wMzIgMC01LjUgMi40NjctNS41IDUuNSAwIDQuMzczIDQuOTEzIDEwLjA4NiA1LjEyMiAxMC4zMjhsMC4zNzggMC40MzUgMC4zNzgtMC40MzZjMC4yMDktMC4yNDEgNS4xMjItNS45NTQgNS4xMjItMTAuMzI3IDAtMy4wMzMtMi40NjgtNS41LTUuNS01LjV6TTguNSAxNS4yMTVjLTEuMTQ2LTEuNDI0LTQuNS01Ljg3OS00LjUtOS4yMTUgMC0yLjQ4MSAyLjAxOS00LjUgNC41LTQuNXM0LjUgMi4wMTkgNC41IDQuNWMwIDMuMzMzLTMuMzU0IDcuNzkxLTQuNSA5LjIxNXpNOC41IDMuMTM5Yy0xLjY1NCAwLTMgMS4zNDYtMyAzczEuMzQ2IDMgMyAzIDMtMS4zNDYgMy0zLTEuMzQ2LTMtMy0zek04LjUgOC4xMzljLTEuMTAzIDAtMi0wLjg5Ny0yLTJzMC44OTctMiAyLTIgMiAwLjg5NyAyIDItMC44OTcgMi0yIDJ6XCJcclxuICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCIgLz5cclxuICAgICAgICAgICAgPC9zdmc+IC0tPlxyXG5cclxuICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCA1MTIgNTEyXCJcclxuICAgICAgICAgICAgICBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgZmlsbD1cImN1cnJlbnRDb2xvclwiPlxyXG4gICAgICAgICAgICAgIDxnPlxyXG4gICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgZD1cIk0zNDEuNDc2IDMzOC4yODVjNTQuNDgzLTg1LjQ5MyA0Ny42MzQtNzQuODI3IDQ5LjIwNC03Ny4wNTZDNDEwLjUxNiAyMzMuMjUxIDQyMSAyMDAuMzIyIDQyMSAxNjYgNDIxIDc0Ljk4IDM0Ny4xMzkgMCAyNTYgMCAxNjUuMTU4IDAgOTEgNzQuODMyIDkxIDE2NmMwIDM0LjMgMTAuNzA0IDY4LjA5MSAzMS4xOSA5Ni40NDZsNDguMzMyIDc1Ljg0QzExOC44NDcgMzQ2LjIyNyAzMSAzNjkuODkyIDMxIDQyMmMwIDE4Ljk5NSAxMi4zOTggNDYuMDY1IDcxLjQ2MiA2Ny4xNTlDMTQzLjcwNCA1MDMuODg4IDE5OC4yMzEgNTEyIDI1NiA1MTJjMTA4LjAyNSAwIDIyNS0zMC40NzIgMjI1LTkwIDAtNTIuMTE3LTg3Ljc0NC03NS43NTctMTM5LjUyNC04My43MTV6bS0xOTQuMjI3LTkyLjM0YTE1LjU3IDE1LjU3IDAgMCAwLS41MTctLjc1OEMxMjkuNjg1IDIyMS43MzUgMTIxIDE5My45NDEgMTIxIDE2NmMwLTc1LjAxOCA2MC40MDYtMTM2IDEzNS0xMzYgNzQuNDM5IDAgMTM1IDYxLjAwOSAxMzUgMTM2IDAgMjcuOTg2LTguNTIxIDU0LjgzNy0yNC42NDYgNzcuNjcxLTEuNDQ1IDEuOTA2IDYuMDk0LTkuODA2LTExMC4zNTQgMTcyLjkxOEwxNDcuMjQ5IDI0NS45NDV6TTI1NiA0ODJjLTExNy45OTQgMC0xOTUtMzQuNjgzLTE5NS02MCAwLTE3LjAxNiAzOS41NjgtNDQuOTk1IDEyNy4yNDgtNTUuOTAxbDU1LjEwMiA4Ni40NjNhMTQuOTk4IDE0Ljk5OCAwIDAgMCAyNS4yOTggMGw1NS4xMDEtODYuNDYzQzQxMS40MzEgMzc3LjAwNSA0NTEgNDA0Ljk4NCA0NTEgNDIyYzAgMjUuMTAyLTc2LjMxMyA2MC0xOTUgNjB6XCI+XHJcbiAgICAgICAgICAgICAgICA8L3BhdGg+XHJcbiAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICBkPVwiTTI1NiA5MWMtNDEuMzU1IDAtNzUgMzMuNjQ1LTc1IDc1czMzLjY0NSA3NSA3NSA3NSA3NS0zMy42NDUgNzUtNzUtMzMuNjQ1LTc1LTc1LTc1em0wIDEyMGMtMjQuODEzIDAtNDUtMjAuMTg3LTQ1LTQ1czIwLjE4Ny00NSA0NS00NSA0NSAyMC4xODcgNDUgNDUtMjAuMTg3IDQ1LTQ1IDQ1elwiPlxyXG4gICAgICAgICAgICAgICAgPC9wYXRoPlxyXG4gICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgPC9zdmc+XHJcblxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN0b3JlLXRleHRcIiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCI+RW50ZXIgUGluY29kZTwvc3Bhbj5cclxuXHJcbiAgICAgICAgICA8L2E+XHJcblxyXG4gICAgICAgICAgPGEgY2xhc3M9XCJhY3Rpb24tbGluayBzdG9yZS1saW5rXCIgKG1vdXNlZW50ZXIpPVwic2hvd1BpbmNvZGVJbnB1dCA9IHRydWU7O3Nob3dMb2dpbiA9IGZhbHNlXCJcclxuICAgICAgICAgICAgW3N0eWxlLmNvbG9yXT1cImJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvclwiICpuZ0lmPVwiZ2V0UGluY29kZSAmJiBnZXRQaW5jb2RlLmxlbmd0aCA9PSA2XCI+XHJcbiAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCJcclxuICAgICAgICAgICAgICBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBmaWxsPVwibm9uZVwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIj5cclxuICAgICAgICAgICAgICA8cGF0aCBkPVwibTIgNyA0LjQxLTQuNDFBMiAyIDAgMCAxIDcuODMgMmg4LjM0YTIgMiAwIDAgMSAxLjQyLjU5TDIyIDdcIj48L3BhdGg+XHJcbiAgICAgICAgICAgICAgPHBhdGggZD1cIk00IDEydjhhMiAyIDAgMCAwIDIgMmgxMmEyIDIgMCAwIDAgMi0ydi04XCI+PC9wYXRoPlxyXG4gICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTUgMjJ2LTRhMiAyIDAgMCAwLTItMmgtMmEyIDIgMCAwIDAtMiAydjRcIj48L3BhdGg+XHJcbiAgICAgICAgICAgICAgPHBhdGggZD1cIk0yIDdoMjBcIj48L3BhdGg+XHJcbiAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgIGQ9XCJNMjIgN3YzYTIgMiAwIDAgMS0yIDJ2MGEyLjcgMi43IDAgMCAxLTEuNTktLjYzLjcuNyAwIDAgMC0uODIgMEEyLjcgMi43IDAgMCAxIDE2IDEyYTIuNyAyLjcgMCAwIDEtMS41OS0uNjMuNy43IDAgMCAwLS44MiAwQTIuNyAyLjcgMCAwIDEgMTIgMTJhMi43IDIuNyAwIDAgMS0xLjU5LS42My43LjcgMCAwIDAtLjgyIDBBMi43IDIuNyAwIDAgMSA4IDEyYTIuNyAyLjcgMCAwIDEtMS41OS0uNjMuNy43IDAgMCAwLS44MiAwQTIuNyAyLjcgMCAwIDEgNCAxMnYwYTIgMiAwIDAgMS0yLTJWN1wiPlxyXG4gICAgICAgICAgICAgIDwvcGF0aD5cclxuICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3RvcmUtdGV4dFwiIFtzaW1wb0NvbG9yXT1cInNpbXBvQ29sb3JcIj57e1wiRGVsaXZlcmluZyB0bzogXCIgK1xyXG4gICAgICAgICAgICAgIGdldFBpbmNvZGV9fTwvc3Bhbj5cclxuXHJcbiAgICAgICAgICA8L2E+XHJcblxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInBpbmNvZGUtY29udGFpbmVyIHAtM1wiICpuZ0lmPVwic2hvd1BpbmNvZGVJbnB1dFwiIChtb3VzZWxlYXZlKT1cInNob3dQaW5jb2RlSW5wdXQgPSBmYWxzZVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dCB0ZXh0LWNlbnRlciBtYi0yIGYtMTggZnctYm9sZFwiPlxyXG4gICAgICAgICAgICAgIFlvdXIgUElOIENvZGUgdW5sb2Nrc1xyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN1Yi10ZXh0IHRleHQtY2VudGVyIGYtMTQgcGluY29kZS10ZXh0XCI+XHJcbiAgICAgICAgICAgICAgRmFzdGVzdCBkZWxpdmVyeSBkYXRlLCBUcnktYXQtSG9tZSBhdmFpbGFiaWxpdHksXHJcbiAgICAgICAgICAgICAgTmVhcmVzdCBzdG9yZSBhbmQgSW4tc3RvcmUgZGVzaWduIVxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwIG10LTIgYnItNSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIHB4LTNcIlxyXG4gICAgICAgICAgICAgIFtjbGFzcy5lcnJvci1ib3JkZXJdPVwicGluRXJyb3JcIj5cclxuICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIHBsYWNlaG9sZGVyPVwiUGluY29kZVwiIGFyaWEtbGFiZWw9XCJQaW5jb2RlXCIgWyhuZ01vZGVsKV09XCJwaW5jb2RlXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwidy03NSBwLTBcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtc3ViLXRleHQgZi0xMSB3LTI1IHRleHQtZW5kIGN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cInNldFBpbmNvZGUoKVwiPlNVQk1JVDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtc3RhcnQgbXQtMiBmLTExXCIgKm5nSWY9XCJwaW5FcnJvclwiPlxyXG4gICAgICAgICAgICAgIFBsZWFzZSBlbnRlciBhIHZhbGlkIHBpbmNvZGVcclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgPGEgY2xhc3M9XCJhY3Rpb24tbGluayBpY29uLW9ubHkgbG9naW4tYnRuXCIgKm5nSWY9XCIhbG9nZ2VkSW5cIlxyXG4gICAgICAgICAgKG1vdXNlZW50ZXIpPVwic2hvd0xvZ2luID0gdHJ1ZTtzaG93UGluY29kZUlucHV0ID0gZmFsc2VcIiAoY2xpY2spPVwic2hvd0xvZ2luID0gIXNob3dMb2dpblwiPlxyXG4gICAgICAgICAgPCEtLSBVc2VyIEljb24gU1ZHIC0tPlxyXG4gICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMlwiIGhlaWdodD1cIjIyXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIFtzaW1wb0NvbG9yXT1cInNpbXBvQ29sb3JcIlxyXG4gICAgICAgICAgICBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBmaWxsPVwibm9uZVwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIj5cclxuICAgICAgICAgICAgPHBhdGggZD1cIk0xOSAyMXYtMmE0IDQgMCAwIDAtNC00SDlhNCA0IDAgMCAwLTQgNHYyXCI+PC9wYXRoPlxyXG4gICAgICAgICAgICA8Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjdcIiByPVwiNFwiPjwvY2lyY2xlPlxyXG4gICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgPC9hPlxyXG5cclxuICAgICAgICA8YSBjbGFzcz1cImFjdGlvbi1saW5rIGljb24tb25seVwiIChjbGljayk9XCJnb1RvQWNjb3VudCgnUFJPRklMRScpXCIgKm5nSWY9XCJsb2dnZWRJblwiPlxyXG4gICAgICAgICAgPCEtLSBVc2VyIEljb24gU1ZHIC0tPlxyXG4gICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMlwiIGhlaWdodD1cIjIyXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIFtzaW1wb0NvbG9yXT1cInNpbXBvQ29sb3JcIlxyXG4gICAgICAgICAgICBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBmaWxsPVwibm9uZVwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIj5cclxuICAgICAgICAgICAgPHBhdGggZD1cIk0xOSAyMXYtMmE0IDQgMCAwIDAtNC00SDlhNCA0IDAgMCAwLTQgNHYyXCI+PC9wYXRoPlxyXG4gICAgICAgICAgICA8Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjdcIiByPVwiNFwiPjwvY2lyY2xlPlxyXG4gICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgPC9hPlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaW5mby1jb250YWluZXIgcC0zXCIgKm5nSWY9XCJzaG93TG9naW5cIiAobW91c2VsZWF2ZSk9XCJzaG93TG9naW4gPSBmYWxzZVwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQgdGV4dC1jZW50ZXIgbWItMiBmLTE4IGZ3LWJvbGRcIj5cclxuICAgICAgICAgICAgWW91ciBBY2NvdW50XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWItdGV4dCB0ZXh0LWNlbnRlciBmLTE0XCI+XHJcbiAgICAgICAgICAgIEFjY2VzcyBhY2NvdW50ICYgbWFuYWdlIHlvdXIgb3JkZXJzLlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnRuLWNvbnRhaW5lciB3LTEwMCBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gbXQtMyBnYXAtM1wiPlxyXG4gICAgICAgICAgICA8ZGl2IChjbGljayk9XCJnb1RvQWNjb3VudCgnU0lHTlVQJylcIiBjbGFzcz1cInctNTAgdGV4dC1jZW50ZXIgc2lnbi1idG4gYm9yZGVyLTBcIlxyXG4gICAgICAgICAgICAgIFtuZ1N0eWxlXT1cInsnYmFja2dyb3VuZCcgOiBiYWNrZ3JvdW5kSW5mbz8uYWNjZW50QmFja2dyb3VuZFR5cGUgPT0gJ1NvbGlkJyA/ICAgYWNjZW50Q29sb3IgOiAnbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCcgKyBiYWNrZ3JvdW5kSW5mbz8uYWNjZW50Q29sb3IgKyAnIDAlJyArICcsJyArIGJhY2tncm91bmRJbmZvPy5zZWNvbmRhcnlBY2NlbnRDb2xvciArJyAxMDAlJyArICcpJ31cIlxyXG4gICAgICAgICAgICAgIFtzdHlsZS5jb2xvcl09XCJzdHlsZT8uYmFja2dyb3VuZD8uY29sb3JcIj5TaWduIFVwPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgKGNsaWNrKT1cImdvVG9BY2NvdW50KCdMT0dJTicpXCIgY2xhc3M9XCJ3LTUwIHRleHQtY2VudGVyIHNpZ24tYnRuXCJcclxuICAgICAgICAgICAgICBbc3R5bGUuYm9yZGVyQ29sb3JdPVwiYmFja2dyb3VuZEluZm8/LmFjY2VudENvbG9yXCIgW3N0eWxlLmNvbG9yXT1cImJhY2tncm91bmRJbmZvPy5hY2NlbnRDb2xvclwiPkxvZyBJbjwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxhIGNsYXNzPVwiYWN0aW9uLWxpbmsgaWNvbi1vbmx5IGljb24tY29udGFpbmVyIHdpc2hsaXN0LWljb25cIiAoY2xpY2spPVwiZ29Ub1dpc2hsaXN0KClcIj5cclxuICAgICAgICAgIDwhLS0gSGVhcnQgSWNvbiBTVkcgLS0+XHJcbiAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIyXCIgaGVpZ2h0PVwiMjJcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiXHJcbiAgICAgICAgICAgIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIGZpbGw9XCJub25lXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGQ9XCJNMTkgMTRjMS40OS0xLjQ2IDMtMy4yMSAzLTUuNUE1LjUgNS41IDAgMCAwIDE2LjUgM2MtMS43NiAwLTMgLjUtNC41IDItMS41LTEuNS0yLjc0LTItNC41LTJBNS41IDUuNSAwIDAgMCAyIDguNWMwIDIuMyAxLjUgNC4wNSAzIDUuNWw3IDdaXCI+XHJcbiAgICAgICAgICAgIDwvcGF0aD5cclxuICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgPCEtLSA8c3BhbiBjbGFzcz1cImNvdW50LWJhZGdlXCIgW3N0eWxlLmJhY2tncm91bmRDb2xvcl09XCJhY2NlbnRDb2xvclwiIFtzaW1wb0NvbG9yXT1cImFjY2VudENvbG9yXCI+Mjwvc3Bhbj4gLS0+XHJcbiAgICAgICAgPC9hPlxyXG5cclxuICAgICAgICA8YSBjbGFzcz1cImFjdGlvbi1saW5rIGljb24tb25seSBpY29uLWNvbnRhaW5lciBjYXJ0LWljb25cIiAoY2xpY2spPVwiZ29Ub0NhcnQoKVwiPlxyXG4gICAgICAgICAgPCEtLSBTaG9wcGluZyBCYWcgSWNvbiBTVkcgLS0+XHJcbiAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIyXCIgaGVpZ2h0PVwiMjJcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiXHJcbiAgICAgICAgICAgIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIGZpbGw9XCJub25lXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiPlxyXG4gICAgICAgICAgICA8cGF0aCBkPVwiTTYgMiAzIDZ2MTRhMiAyIDAgMCAwIDIgMmgxNGEyIDIgMCAwIDAgMi0yVjZsLTMtNFpcIj48L3BhdGg+XHJcbiAgICAgICAgICAgIDxwYXRoIGQ9XCJNMyA2aDE4XCI+PC9wYXRoPlxyXG4gICAgICAgICAgICA8cGF0aCBkPVwiTTE2IDEwYTQgNCAwIDAgMS04IDBcIj48L3BhdGg+XHJcbiAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY291bnQtYmFkZ2VcIiBbc3R5bGUuYmFja2dyb3VuZENvbG9yXT1cImFjY2VudENvbG9yXCIgW3NpbXBvQ29sb3JdPVwiYWNjZW50Q29sb3JcIlxyXG4gICAgICAgICAgICAqbmdJZj1cImdldENhcnRJdGVtc0NvdW50XCI+e3tnZXRDYXJ0SXRlbXNDb3VudH19PC9zcGFuPlxyXG4gICAgICAgIDwvYT5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLXNlYXJjaC1leHBhbmRcIlxyXG4gICAgICAgICAgKm5nSWY9XCJkYXRhPy5zdHlsZXM/Lm1lbnVUeXBlID09PSAnRFJPUERPV05fTUVOVScgJiYgc2NyZWVuV2lkdGggPiA0NzUgJiYgY29udGVudD8uc2hvd1NlYXJjaEJhciAmJiBzaG93RHJvcGRvd25EZXNrdG9wU2VhcmNoXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tc2VhcmNoLWJveFwiPlxyXG4gICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgIGNsYXNzPVwiZHJvcGRvd24tc2VhcmNoLWljb25cIj5cclxuICAgICAgICAgICAgICA8Y2lyY2xlIGN4PVwiMTFcIiBjeT1cIjExXCIgcj1cIjhcIj48L2NpcmNsZT5cclxuICAgICAgICAgICAgICA8bGluZSB4MT1cIjIxXCIgeTE9XCIyMVwiIHgyPVwiMTYuNjVcIiB5Mj1cIjE2LjY1XCI+PC9saW5lPlxyXG4gICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgcGxhY2Vob2xkZXI9XCJTZWFyY2ggZm9yLi4uXCIgWyhuZ01vZGVsKV09XCJzZWFyY2hUZXh0XCIgKG5nTW9kZWxDaGFuZ2UpPVwid2FpdEJlZm9yZVNlYXJjaCgpXCJcclxuICAgICAgICAgICAgICBhcmlhLWxhYmVsPVwiU2VhcmNoXCI+XHJcbiAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJkcm9wZG93bi1zZWFyY2gtY2xvc2VcIiAoY2xpY2spPVwic2hvd0Ryb3Bkb3duRGVza3RvcFNlYXJjaCA9IGZhbHNlXCIgYXJpYS1sYWJlbD1cIkNsb3NlIHNlYXJjaFwiPlxyXG4gICAgICAgICAgICAgIDxsaW5lIHgxPVwiMThcIiB5MT1cIjZcIiB4Mj1cIjZcIiB5Mj1cIjE4XCI+PC9saW5lPlxyXG4gICAgICAgICAgICAgIDxsaW5lIHgxPVwiNlwiIHkxPVwiNlwiIHgyPVwiMThcIiB5Mj1cIjE4XCI+PC9saW5lPlxyXG4gICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJzZWFyY2gtd3JhcHBlclwiICpuZ0lmPVwic2NyZWVuV2lkdGggPD0gNDc1ICYmIGNvbnRlbnQ/LnNob3dTZWFyY2hCYXIgJiYgZGF0YT8uc3R5bGVzPy5tZW51VHlwZSAhPT0gJ0RST1BET1dOX01FTlUnXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzZWFyY2gtYmFyXCI+XHJcbiAgICAgICAgPCEtLSBTZWFyY2ggSWNvbiBTVkcgLS0+XHJcbiAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBjbGFzcz1cInNlYXJjaC1pY29uXCI+XHJcbiAgICAgICAgICA8Y2lyY2xlIGN4PVwiMTFcIiBjeT1cIjExXCIgcj1cIjhcIj48L2NpcmNsZT5cclxuICAgICAgICAgIDxsaW5lIHgxPVwiMjFcIiB5MT1cIjIxXCIgeDI9XCIxNi42NVwiIHkyPVwiMTYuNjVcIj48L2xpbmU+XHJcbiAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgcGxhY2Vob2xkZXI9XCJTZWFyY2ggZm9yIGl0ZW1cIiBbKG5nTW9kZWwpXT1cInNlYXJjaFRleHRcIiAobmdNb2RlbENoYW5nZSk9XCJ3YWl0QmVmb3JlU2VhcmNoKClcIlxyXG4gICAgICAgICAgYXJpYS1sYWJlbD1cIlNlYXJjaFwiPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICA8L2hlYWRlcj5cclxuPC9uZy10ZW1wbGF0ZT4iXX0=
|