ctt-puro 0.48.3 → 0.49.1

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.
@@ -12,6 +12,7 @@ export class PuroHeaderMobileSubmenuComponent {
12
12
  this.router = inject(Router);
13
13
  this.isDynamic = false;
14
14
  this.btnClick = new EventEmitter();
15
+ this.btnClickCheckin = new EventEmitter();
15
16
  this.SITE_GROUP = 1;
16
17
  this.SITE_HOTELS = 2;
17
18
  this.SITE_BEACH = 3;
@@ -88,7 +89,7 @@ export class PuroHeaderMobileSubmenuComponent {
88
89
  }
89
90
  }
90
91
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroHeaderMobileSubmenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
91
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroHeaderMobileSubmenuComponent, isStandalone: true, selector: "lib-puro-header-mobile-submenu", inputs: { titleMenu: "titleMenu", titleLang: "titleLang", btnBook: "btnBook", navLinks: "navLinks", bottomLinks: "bottomLinks", isDynamic: "isDynamic", logoHotel: "logoHotel", logoHotelWhite: "logoHotelWhite", siteId: "siteId" }, outputs: { btnClick: "btnClick" }, providers: [PuroActiveModalDirective], ngImport: i0, template: "<header class=\"header\" navSticky [isDynamic]=\"isDynamic\">\n <div class=\"banner__logo\">\n <a\n [href]=\"navLinks?.[0]?.url\"\n [linkType]=\"navLinks?.[0]?.linkType\"\n [attr.aria-label]=\"navLinks?.[0]?.label\"\n >\n @if (logoHotelWhite && logoHotel) {\n <img\n [ngSrc]=\"hasStickyClasses() ? logoHotel : logoHotelWhite\"\n alt=\"Logo\"\n width=\"177\"\n height=\"68\"\n class=\"header__logo--img\"\n priority\n />\n }\n </a>\n </div>\n <div\n class=\"header__menu js-active-modal\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n [attr.aria-label]=\"titleMenu ?? 'Menu'\"\n >\n <i class=\"icon-83\"></i>\n @if (titleMenu) {\n <span>{{ titleMenu }}</span>\n }\n </div>\n <div class=\"header__reserver\">\n <a href=\"\" class=\"btn btn__secondary btn--lg mobile__checkIn\"\n ><span>CHECKIN ONLINE</span></a\n >\n @if (btnBook) {\n <a\n class=\"btn btn__primary btn--lg mobile__reservar\"\n (click)=\"btnClick.emit()\"\n data-modal_name=\"reserver\"\n [attr.aria-label]=\"btnBook\"\n >\n <span>{{ btnBook }}</span>\n </a>\n }\n </div>\n <div\n class=\"header__language js-active-modal\"\n activeModal\n data-modal_name=\"language\"\n role=\"button\"\n [attr.aria-label]=\"titleLang ?? 'Language Menu'\"\n >\n @if (titleLang) {\n {{ titleLang }}\n }\n </div>\n</header>\n\n<div class=\"modal modal--solidCream modal--navigation\" [style.--bg-url]=\"cssBgUrl\">\n <div class=\"modal__inner\">\n <div class=\"modal__body\">\n <div\n class=\"modal__close js-close\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n aria-label=\"Close Button\"\n >\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"modal__close--icon\"\n >\n <use href=\"#modal-close\"></use>\n </svg>\n </div>\n <div class=\"modal__nav\">\n <ul class=\"modal__nav--items\">\n @if (navLinks) {\n @for (link of navLinks; track $index) {\n <li class=\"modal__nav--link\">\n <a\n [href]=\"link.url\"\n [linkType]=\"link.linkType\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n </ul>\n <ul class=\"modal__nav--itemsSmall\">\n @if (bottomLinks) {\n @for (link of bottomLinks; track $index) {\n <li class=\"modal__nav--link\">\n <a\n [linkType]=\"link.linkType\"\n [href]=\"link.url\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n </ul>\n </div>\n </div>\n </div>\n</div>\n", styles: [".modal.modal--navigation .modal__body:after{background-image:var(--bg-url)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: PuroLinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href", "modalClick"], outputs: ["bookClick", "anchorClicked"] }, { kind: "directive", type: PuroActiveModalDirective, selector: "[activeModal]" }, { kind: "directive", type: PuroNavStickyDirective, selector: "[navSticky]", inputs: ["isDynamic"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
92
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroHeaderMobileSubmenuComponent, isStandalone: true, selector: "lib-puro-header-mobile-submenu", inputs: { titleMenu: "titleMenu", titleLang: "titleLang", btnBook: "btnBook", btnCheckin: "btnCheckin", navLinks: "navLinks", bottomLinks: "bottomLinks", isDynamic: "isDynamic", logoHotel: "logoHotel", logoHotelWhite: "logoHotelWhite", siteId: "siteId" }, outputs: { btnClick: "btnClick", btnClickCheckin: "btnClickCheckin" }, providers: [PuroActiveModalDirective], ngImport: i0, template: "<header class=\"header\" navSticky [isDynamic]=\"isDynamic\">\n <div class=\"banner__logo\">\n <a\n [href]=\"navLinks?.[0]?.url\"\n [linkType]=\"navLinks?.[0]?.linkType\"\n [attr.aria-label]=\"navLinks?.[0]?.label\"\n >\n @if (logoHotelWhite && logoHotel) {\n <img\n [ngSrc]=\"hasStickyClasses() ? logoHotel : logoHotelWhite\"\n alt=\"Logo\"\n width=\"177\"\n height=\"68\"\n class=\"header__logo--img\"\n priority\n />\n }\n </a>\n </div>\n <div\n class=\"header__menu js-active-modal\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n [attr.aria-label]=\"titleMenu ?? 'Menu'\"\n >\n <i class=\"icon-83\"></i>\n @if (titleMenu) {\n <span>{{ titleMenu }}</span>\n }\n </div>\n <div class=\"header__reserver\">\n @if (btnCheckin && siteId == 2) {\n <a \n class=\"btn btn__secondary btn--lg mobile__checkIn\"\n (click)=\"btnClickCheckin.emit()\"\n [attr.aria-label]=\"btnCheckin\"\n >\n <span>{{ btnCheckin }}</span></a\n >\n }\n @if (btnBook) {\n <a\n class=\"btn btn__primary btn--lg mobile__reservar\"\n (click)=\"btnClick.emit()\"\n data-modal_name=\"reserver\"\n [attr.aria-label]=\"btnBook\"\n >\n <span>{{ btnBook }}</span>\n </a>\n }\n </div>\n <div\n class=\"header__language js-active-modal\"\n activeModal\n data-modal_name=\"language\"\n role=\"button\"\n [attr.aria-label]=\"titleLang ?? 'Language Menu'\"\n >\n @if (titleLang) {\n {{ titleLang }}\n }\n </div>\n</header>\n\n<div class=\"modal modal--solidCream modal--navigation\" [style.--bg-url]=\"cssBgUrl\">\n <div class=\"modal__inner\">\n <div class=\"modal__body\">\n <div\n class=\"modal__close js-close\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n aria-label=\"Close Button\"\n >\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"modal__close--icon\"\n >\n <use href=\"#modal-close\"></use>\n </svg>\n </div>\n <div class=\"modal__nav\">\n <ul class=\"modal__nav--items\">\n @if (navLinks) {\n @for (link of navLinks; track $index) {\n <li class=\"modal__nav--link\">\n <a\n [href]=\"link.url\"\n [linkType]=\"link.linkType\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n </ul>\n <ul class=\"modal__nav--itemsSmall\">\n @if (bottomLinks) {\n @for (link of bottomLinks; track $index) {\n <li class=\"modal__nav--link\">\n <a\n [linkType]=\"link.linkType\"\n [href]=\"link.url\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n </ul>\n </div>\n </div>\n </div>\n</div>\n", styles: [".modal.modal--navigation .modal__body:after{background-image:var(--bg-url)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: PuroLinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href", "modalClick"], outputs: ["bookClick", "anchorClicked"] }, { kind: "directive", type: PuroActiveModalDirective, selector: "[activeModal]" }, { kind: "directive", type: PuroNavStickyDirective, selector: "[navSticky]", inputs: ["isDynamic"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
92
93
  }
93
94
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroHeaderMobileSubmenuComponent, decorators: [{
94
95
  type: Component,
@@ -98,13 +99,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
98
99
  PuroActiveModalDirective,
99
100
  PuroNavStickyDirective,
100
101
  NgOptimizedImage
101
- ], changeDetection: ChangeDetectionStrategy.OnPush, providers: [PuroActiveModalDirective], template: "<header class=\"header\" navSticky [isDynamic]=\"isDynamic\">\n <div class=\"banner__logo\">\n <a\n [href]=\"navLinks?.[0]?.url\"\n [linkType]=\"navLinks?.[0]?.linkType\"\n [attr.aria-label]=\"navLinks?.[0]?.label\"\n >\n @if (logoHotelWhite && logoHotel) {\n <img\n [ngSrc]=\"hasStickyClasses() ? logoHotel : logoHotelWhite\"\n alt=\"Logo\"\n width=\"177\"\n height=\"68\"\n class=\"header__logo--img\"\n priority\n />\n }\n </a>\n </div>\n <div\n class=\"header__menu js-active-modal\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n [attr.aria-label]=\"titleMenu ?? 'Menu'\"\n >\n <i class=\"icon-83\"></i>\n @if (titleMenu) {\n <span>{{ titleMenu }}</span>\n }\n </div>\n <div class=\"header__reserver\">\n <a href=\"\" class=\"btn btn__secondary btn--lg mobile__checkIn\"\n ><span>CHECKIN ONLINE</span></a\n >\n @if (btnBook) {\n <a\n class=\"btn btn__primary btn--lg mobile__reservar\"\n (click)=\"btnClick.emit()\"\n data-modal_name=\"reserver\"\n [attr.aria-label]=\"btnBook\"\n >\n <span>{{ btnBook }}</span>\n </a>\n }\n </div>\n <div\n class=\"header__language js-active-modal\"\n activeModal\n data-modal_name=\"language\"\n role=\"button\"\n [attr.aria-label]=\"titleLang ?? 'Language Menu'\"\n >\n @if (titleLang) {\n {{ titleLang }}\n }\n </div>\n</header>\n\n<div class=\"modal modal--solidCream modal--navigation\" [style.--bg-url]=\"cssBgUrl\">\n <div class=\"modal__inner\">\n <div class=\"modal__body\">\n <div\n class=\"modal__close js-close\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n aria-label=\"Close Button\"\n >\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"modal__close--icon\"\n >\n <use href=\"#modal-close\"></use>\n </svg>\n </div>\n <div class=\"modal__nav\">\n <ul class=\"modal__nav--items\">\n @if (navLinks) {\n @for (link of navLinks; track $index) {\n <li class=\"modal__nav--link\">\n <a\n [href]=\"link.url\"\n [linkType]=\"link.linkType\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n </ul>\n <ul class=\"modal__nav--itemsSmall\">\n @if (bottomLinks) {\n @for (link of bottomLinks; track $index) {\n <li class=\"modal__nav--link\">\n <a\n [linkType]=\"link.linkType\"\n [href]=\"link.url\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n </ul>\n </div>\n </div>\n </div>\n</div>\n", styles: [".modal.modal--navigation .modal__body:after{background-image:var(--bg-url)}\n"] }]
102
+ ], changeDetection: ChangeDetectionStrategy.OnPush, providers: [PuroActiveModalDirective], template: "<header class=\"header\" navSticky [isDynamic]=\"isDynamic\">\n <div class=\"banner__logo\">\n <a\n [href]=\"navLinks?.[0]?.url\"\n [linkType]=\"navLinks?.[0]?.linkType\"\n [attr.aria-label]=\"navLinks?.[0]?.label\"\n >\n @if (logoHotelWhite && logoHotel) {\n <img\n [ngSrc]=\"hasStickyClasses() ? logoHotel : logoHotelWhite\"\n alt=\"Logo\"\n width=\"177\"\n height=\"68\"\n class=\"header__logo--img\"\n priority\n />\n }\n </a>\n </div>\n <div\n class=\"header__menu js-active-modal\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n [attr.aria-label]=\"titleMenu ?? 'Menu'\"\n >\n <i class=\"icon-83\"></i>\n @if (titleMenu) {\n <span>{{ titleMenu }}</span>\n }\n </div>\n <div class=\"header__reserver\">\n @if (btnCheckin && siteId == 2) {\n <a \n class=\"btn btn__secondary btn--lg mobile__checkIn\"\n (click)=\"btnClickCheckin.emit()\"\n [attr.aria-label]=\"btnCheckin\"\n >\n <span>{{ btnCheckin }}</span></a\n >\n }\n @if (btnBook) {\n <a\n class=\"btn btn__primary btn--lg mobile__reservar\"\n (click)=\"btnClick.emit()\"\n data-modal_name=\"reserver\"\n [attr.aria-label]=\"btnBook\"\n >\n <span>{{ btnBook }}</span>\n </a>\n }\n </div>\n <div\n class=\"header__language js-active-modal\"\n activeModal\n data-modal_name=\"language\"\n role=\"button\"\n [attr.aria-label]=\"titleLang ?? 'Language Menu'\"\n >\n @if (titleLang) {\n {{ titleLang }}\n }\n </div>\n</header>\n\n<div class=\"modal modal--solidCream modal--navigation\" [style.--bg-url]=\"cssBgUrl\">\n <div class=\"modal__inner\">\n <div class=\"modal__body\">\n <div\n class=\"modal__close js-close\"\n activeModal\n data-modal_name=\"navigation\"\n role=\"button\"\n aria-label=\"Close Button\"\n >\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"modal__close--icon\"\n >\n <use href=\"#modal-close\"></use>\n </svg>\n </div>\n <div class=\"modal__nav\">\n <ul class=\"modal__nav--items\">\n @if (navLinks) {\n @for (link of navLinks; track $index) {\n <li class=\"modal__nav--link\">\n <a\n [href]=\"link.url\"\n [linkType]=\"link.linkType\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n </ul>\n <ul class=\"modal__nav--itemsSmall\">\n @if (bottomLinks) {\n @for (link of bottomLinks; track $index) {\n <li class=\"modal__nav--link\">\n <a\n [linkType]=\"link.linkType\"\n [href]=\"link.url\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n </ul>\n </div>\n </div>\n </div>\n</div>\n", styles: [".modal.modal--navigation .modal__body:after{background-image:var(--bg-url)}\n"] }]
102
103
  }], propDecorators: { titleMenu: [{
103
104
  type: Input
104
105
  }], titleLang: [{
105
106
  type: Input
106
107
  }], btnBook: [{
107
108
  type: Input
109
+ }], btnCheckin: [{
110
+ type: Input
108
111
  }], navLinks: [{
109
112
  type: Input
110
113
  }], bottomLinks: [{
@@ -119,5 +122,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
119
122
  type: Input
120
123
  }], btnClick: [{
121
124
  type: Output
125
+ }], btnClickCheckin: [{
126
+ type: Output
122
127
  }] } });
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyby1oZWFkZXItbW9iaWxlLXN1Ym1lbnUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1oZWFkZXItbW9iaWxlLXN1Ym1lbnUvcHVyby1oZWFkZXItbW9iaWxlLXN1Ym1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1oZWFkZXItbW9iaWxlLXN1Ym1lbnUvcHVyby1oZWFkZXItbW9iaWxlLXN1Ym1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BGLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFdBQVcsRUFDWCxNQUFNLEVBR04sTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCx3QkFBd0IsRUFDeEIscUJBQXFCLEdBQ3hCLE1BQU0sa0JBQWtCLENBQUM7QUFDMUIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNERBQTRELENBQUM7QUFFcEcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQWlCOUIsTUFBTSxPQUFPLGdDQUFnQztJQWY3QztRQWdCWSxlQUFVLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2pDLG1CQUFjLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixDQUFDLENBQUM7UUFDbEQsV0FBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQVF2QixjQUFT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QUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBS0ksUUFBUTtzQkFBakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSwgaXNQbGF0Zm9ybUJyb3dzZXIsIE5nT3B0aW1pemVkSW1hZ2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbiAgICBQTEFURk9STV9JRCxcbiAgICBpbmplY3QsXG4gICAgT25Jbml0LFxuICAgIE9uRGVzdHJveSxcbiAgICBzaWduYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBQdXJvQWN0aXZlTW9kYWxEaXJlY3RpdmUsXG4gICAgUHVyb0xpbmtUeXBlRGlyZWN0aXZlLFxufSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzJztcbmltcG9ydCB7IFB1cm9OYXZTdGlja3lEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL3B1cm8tbmF2LXN0aWNreS9wdXJvLW5hdi1zdGlja3kuZGlyZWN0aXZlJztcbmltcG9ydCB7IFB1cm9CdXR0b25JIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbGliLXB1cm8taGVhZGVyLW1vYmlsZS1zdWJtZW51JyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgUHVyb0xpbmtUeXBlRGlyZWN0aXZlLFxuICAgIFB1cm9BY3RpdmVNb2RhbERpcmVjdGl2ZSxcbiAgICBQdXJvTmF2U3RpY2t5RGlyZWN0aXZlLFxuICAgIE5nT3B0aW1pemVkSW1hZ2Vcbl0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3B1cm8taGVhZGVyLW1vYmlsZS1zdWJtZW51LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vcHVyby1oZWFkZXItbW9iaWxlLXN1Ym1lbnUuY29tcG9uZW50LnNjc3MnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1B1cm9BY3RpdmVNb2RhbERpcmVjdGl2ZV0sXG59KVxuZXhwb3J0IGNsYXNzIFB1cm9IZWFkZXJNb2JpbGVTdWJtZW51Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIHByaXZhdGUgcGxhdGZvcm1JZCA9IGluamVjdChQTEFURk9STV9JRCk7XG4gICAgcHJpdmF0ZSBhY3RpdmVNb2RhbER0diA9IGluamVjdChQdXJvQWN0aXZlTW9kYWxEaXJlY3RpdmUpO1xuICAgIHByaXZhdGUgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gICAgcHJpdmF0ZSByb3V0ZXJTdWI/OiBhbnk7XG5cbiAgICBASW5wdXQoKSB0aXRsZU1lbnU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgdGl0bGVMYW5nPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGJ0bkJvb2s/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgbmF2TGlua3M/OiBQdXJvQnV0dG9uSVtdO1xuICAgIEBJbnB1dCgpIGJvdHRvbUxpbmtzPzogUHVyb0J1dHRvbklbXTtcbiAgICBASW5wdXQoKSBpc0R5bmFtaWMgPSBmYWxzZTtcbiAgICBASW5wdXQoKSBsb2dvSG90ZWw/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgbG9nb0hvdGVsV2hpdGU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgc2l0ZUlkPzpcbiAgICAgICAgfCB0eXBlb2YgdGhpcy5TSVRFX0dST1VQXG4gICAgICAgIHwgdHlwZW9mIHRoaXMuU0lURV9CRUFDSFxuICAgICAgICB8IHR5cGVvZiB0aGlzLlNJVEVfSE9URUxTO1xuXG4gICAgQE91dHB1dCgpIGJ0bkNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBTSVRFX0dST1VQID0gMTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IFNJVEVfSE9URUxTID0gMjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IFNJVEVfQkVBQ0ggPSAzO1xuXG4gICAgLyoqIFJlYWN0aXZlIHNpZ25hbCBxdWUgaW5kaWNhIHNpIGVsIGJvZHkgdGllbmUgYW1iYXMgY2xhc2VzICovXG4gICAgaGFzU3RpY2t5Q2xhc3NlcyA9IHNpZ25hbChmYWxzZSk7XG5cbiAgICBwcml2YXRlIG9ic2VydmVyPzogTXV0YXRpb25PYnNlcnZlcjtcbiAgICBwcml2YXRlIHNjcm9sbExpc3RlbmVyPzogKCkgPT4gdm9pZDtcbiAgICBwcml2YXRlIHJhZklkPzogbnVtYmVyO1xuXG4gICAgY3NzQmdVcmwgPSAnJztcblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5sb2dvSG90ZWwpIHtcbiAgICAgICAgICAgIHRoaXMuY3NzQmdVcmwgPSBgdXJsKFwiJHt0aGlzLmxvZ29Ib3RlbH1cIilgO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQoJ2hvdGVscycpO1xuXG4gICAgICAgICAgICB0aGlzLnJvdXRlclN1YiA9IHRoaXMucm91dGVyLmV2ZW50c1xuICAgICAgICAgICAgICAucGlwZShmaWx0ZXIoKGUpID0+IGUgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSlcbiAgICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQoJ2hvdGVscycpO1xuICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgdGhpcy51cGRhdGVTdGlja3lTdGF0ZSgpO1xuXG4gICAgICAgICAgICAvLyDwn5GB77iPIE9ic2VydmVyIHBhcmEgZGV0ZWN0YXIgY2FtYmlvcyBkZSBjbGFzZSBlbiBib2R5XG4gICAgICAgICAgICB0aGlzLm9ic2VydmVyID0gbmV3IE11dGF0aW9uT2JzZXJ2ZXIoKCkgPT5cbiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVN0aWNreVN0YXRlKClcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICB0aGlzLm9ic2VydmVyLm9ic2VydmUoZG9jdW1lbnQuYm9keSwge1xuICAgICAgICAgICAgICAgIGF0dHJpYnV0ZXM6IHRydWUsXG4gICAgICAgICAgICAgICAgYXR0cmlidXRlRmlsdGVyOiBbJ2NsYXNzJ10sXG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgLy8g8J+OryBMaXN0ZW5lciBkZSBzY3JvbGw6IGFzZWd1cmEgZGV0ZWNjacOzbiBpbmNsdXNvIGVuIHNjcm9sbCByw6FwaWRvXG4gICAgICAgICAgICB0aGlzLnNjcm9sbExpc3RlbmVyID0gKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNhbmNlbEFuaW1hdGlvbkZyYW1lKHRoaXMucmFmSWQhKTtcbiAgICAgICAgICAgICAgICB0aGlzLnJhZklkID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY3VycmVudCA9IHRoaXMuY2hlY2tTdGlja3lDbGFzc2VzKCk7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmhhc1N0aWNreUNsYXNzZXMoKSAhPT0gY3VycmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5oYXNTdGlja3lDbGFzc2VzLnNldChjdXJyZW50KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCB0aGlzLnNjcm9sbExpc3RlbmVyLCB7XG4gICAgICAgICAgICAgICAgcGFzc2l2ZTogdHJ1ZSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMucm91dGVyU3ViPy51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLm9ic2VydmVyPy5kaXNjb25uZWN0KCk7XG4gICAgICAgIGlmICh0aGlzLnNjcm9sbExpc3RlbmVyKVxuICAgICAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIHRoaXMuc2Nyb2xsTGlzdGVuZXIpO1xuICAgICAgICBpZiAodGhpcy5yYWZJZCkgY2FuY2VsQW5pbWF0aW9uRnJhbWUodGhpcy5yYWZJZCk7XG4gICAgICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoJ2hvdGVscycpO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICBwcml2YXRlIHVwZGF0ZVN0aWNreVN0YXRlKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBjdXJyZW50ID0gdGhpcy5jaGVja1N0aWNreUNsYXNzZXMoKTtcbiAgICAgICAgaWYgKHRoaXMuaGFzU3RpY2t5Q2xhc3NlcygpICE9PSBjdXJyZW50KSB7XG4gICAgICAgICAgICB0aGlzLmhhc1N0aWNreUNsYXNzZXMuc2V0KGN1cnJlbnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjaGVja1N0aWNreUNsYXNzZXMoKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IGJvZHkgPSBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdDtcbiAgICAgICAgcmV0dXJuIGJvZHkuY29udGFpbnMoJ25hdi1zdGlja3knKSAmJiBib2R5LmNvbnRhaW5zKCdtb2JpbGUtc3RpY2t5Jyk7XG4gICAgfVxuXG4gICAgY2xpY2tCdG5Cb29rKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmJ0bkNsaWNrLmVtaXQoKTtcbiAgICAgICAgc3dpdGNoICh0aGlzLnNpdGVJZCkge1xuICAgICAgICAgICAgY2FzZSB0aGlzLlNJVEVfR1JPVVA6XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIHRoaXMuU0lURV9IT1RFTFM6XG4gICAgICAgICAgICAgICAgdGhpcy5hY3RpdmVNb2RhbER0di5oYW5kbGVDbGljaygpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSB0aGlzLlNJVEVfQkVBQ0g6XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPGhlYWRlciBjbGFzcz1cImhlYWRlclwiIG5hdlN0aWNreSBbaXNEeW5hbWljXT1cImlzRHluYW1pY1wiPlxuICAgIDxkaXYgY2xhc3M9XCJiYW5uZXJfX2xvZ29cIj5cbiAgICAgICAgPGFcbiAgICAgICAgICAgIFtocmVmXT1cIm5hdkxpbmtzPy5bMF0/LnVybFwiXG4gICAgICAgICAgICBbbGlua1R5cGVdPVwibmF2TGlua3M/LlswXT8ubGlua1R5cGVcIlxuICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJuYXZMaW5rcz8uWzBdPy5sYWJlbFwiXG4gICAgICAgID5cbiAgICAgICAgICAgIEBpZiAobG9nb0hvdGVsV2hpdGUgJiYgbG9nb0hvdGVsKSB7XG4gICAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICAgICBbbmdTcmNdPVwiaGFzU3RpY2t5Q2xhc3NlcygpID8gbG9nb0hvdGVsIDogbG9nb0hvdGVsV2hpdGVcIlxuICAgICAgICAgICAgICAgICAgICBhbHQ9XCJMb2dvXCJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNzdcIlxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCI2OFwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaGVhZGVyX19sb2dvLS1pbWdcIlxuICAgICAgICAgICAgICAgICAgICBwcmlvcml0eVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvYT5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiaGVhZGVyX19tZW51IGpzLWFjdGl2ZS1tb2RhbFwiXG4gICAgICAgIGFjdGl2ZU1vZGFsXG4gICAgICAgIGRhdGEtbW9kYWxfbmFtZT1cIm5hdmlnYXRpb25cIlxuICAgICAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJ0aXRsZU1lbnUgPz8gJ01lbnUnXCJcbiAgICA+XG4gICAgICAgIDxpIGNsYXNzPVwiaWNvbi04M1wiPjwvaT5cbiAgICAgICAgQGlmICh0aXRsZU1lbnUpIHtcbiAgICAgICAgICAgIDxzcGFuPnt7IHRpdGxlTWVudSB9fTwvc3Bhbj5cbiAgICAgICAgfVxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJoZWFkZXJfX3Jlc2VydmVyXCI+XG4gICAgICAgIDxhIGhyZWY9XCJcIiBjbGFzcz1cImJ0biBidG5fX3NlY29uZGFyeSBidG4tLWxnIG1vYmlsZV9fY2hlY2tJblwiXG4gICAgICAgICAgICA+PHNwYW4+Q0hFQ0tJTiBPTkxJTkU8L3NwYW4+PC9hXG4gICAgICAgID5cbiAgICAgICAgQGlmIChidG5Cb29rKSB7XG4gICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bl9fcHJpbWFyeSBidG4tLWxnIG1vYmlsZV9fcmVzZXJ2YXJcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJidG5DbGljay5lbWl0KClcIlxuICAgICAgICAgICAgICAgIGRhdGEtbW9kYWxfbmFtZT1cInJlc2VydmVyXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImJ0bkJvb2tcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxzcGFuPnt7IGJ0bkJvb2sgfX08L3NwYW4+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbiAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiaGVhZGVyX19sYW5ndWFnZSBqcy1hY3RpdmUtbW9kYWxcIlxuICAgICAgICBhY3RpdmVNb2RhbFxuICAgICAgICBkYXRhLW1vZGFsX25hbWU9XCJsYW5ndWFnZVwiXG4gICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInRpdGxlTGFuZyA/PyAnTGFuZ3VhZ2UgTWVudSdcIlxuICAgID5cbiAgICAgICAgQGlmICh0aXRsZUxhbmcpIHtcbiAgICAgICAgICAgIHt7IHRpdGxlTGFuZyB9fVxuICAgICAgICB9XG4gICAgPC9kaXY+XG48L2hlYWRlcj5cblxuPGRpdiBjbGFzcz1cIm1vZGFsIG1vZGFsLS1zb2xpZENyZWFtIG1vZGFsLS1uYXZpZ2F0aW9uXCIgW3N0eWxlLi0tYmctdXJsXT1cImNzc0JnVXJsXCI+XG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsX19pbm5lclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWxfX2JvZHlcIj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cIm1vZGFsX19jbG9zZSBqcy1jbG9zZVwiXG4gICAgICAgICAgICAgICAgYWN0aXZlTW9kYWxcbiAgICAgICAgICAgICAgICBkYXRhLW1vZGFsX25hbWU9XCJuYXZpZ2F0aW9uXCJcbiAgICAgICAgICAgICAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPVwiQ2xvc2UgQnV0dG9uXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8c3ZnXG4gICAgICAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIGZvY3VzYWJsZT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtb2RhbF9fY2xvc2UtLWljb25cIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPHVzZSBocmVmPVwiI21vZGFsLWNsb3NlXCI+PC91c2U+XG4gICAgICAgICAgICAgICAgPC9zdmc+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbF9fbmF2XCI+XG4gICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwibW9kYWxfX25hdi0taXRlbXNcIj5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChuYXZMaW5rcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGZvciAobGluayBvZiBuYXZMaW5rczsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwibW9kYWxfX25hdi0tbGlua1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2hyZWZdPVwibGluay51cmxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xpbmtUeXBlXT1cImxpbmsubGlua1R5cGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJsaW5rLmxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID57eyBsaW5rLmxhYmVsIH19PC9hXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJtb2RhbF9fbmF2LS1pdGVtc1NtYWxsXCI+XG4gICAgICAgICAgICAgICAgICAgIEBpZiAoYm90dG9tTGlua3MpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBmb3IgKGxpbmsgb2YgYm90dG9tTGlua3M7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz1cIm1vZGFsX19uYXYtLWxpbmtcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsaW5rVHlwZV09XCJsaW5rLmxpbmtUeXBlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtocmVmXT1cImxpbmsudXJsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwibGluay5sYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+e3sgbGluay5sYWJlbCB9fTwvYVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
128
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyby1oZWFkZXItbW9iaWxlLXN1Ym1lbnUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1oZWFkZXItbW9iaWxlLXN1Ym1lbnUvcHVyby1oZWFkZXItbW9iaWxlLXN1Ym1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1oZWFkZXItbW9iaWxlLXN1Ym1lbnUvcHVyby1oZWFkZXItbW9iaWxlLXN1Ym1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BGLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFdBQVcsRUFDWCxNQUFNLEVBR04sTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCx3QkFBd0IsRUFDeEIscUJBQXFCLEdBQ3hCLE1BQU0sa0JBQWtCLENBQUM7QUFDMUIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNERBQTRELENBQUM7QUFFcEcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQWlCOUIsTUFBTSxPQUFPLGdDQUFnQztJQWY3QztRQWdCWSxlQUFVLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2pDLG1CQUFjLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixDQUFDLENBQUM7UUFDbEQsV0FBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQVN2QixjQUFT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U0FBUztzQkFBakIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBS0ksUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxlQUFlO3NCQUF4QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBpc1BsYXRmb3JtQnJvd3NlciwgTmdPcHRpbWl6ZWRJbWFnZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxuICAgIFBMQVRGT1JNX0lELFxuICAgIGluamVjdCxcbiAgICBPbkluaXQsXG4gICAgT25EZXN0cm95LFxuICAgIHNpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIFB1cm9BY3RpdmVNb2RhbERpcmVjdGl2ZSxcbiAgICBQdXJvTGlua1R5cGVEaXJlY3RpdmUsXG59IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHsgUHVyb05hdlN0aWNreURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvcHVyby1uYXYtc3RpY2t5L3B1cm8tbmF2LXN0aWNreS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgUHVyb0J1dHRvbkkgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IE5hdmlnYXRpb25FbmQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdsaWItcHVyby1oZWFkZXItbW9iaWxlLXN1Ym1lbnUnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBQdXJvTGlua1R5cGVEaXJlY3RpdmUsXG4gICAgUHVyb0FjdGl2ZU1vZGFsRGlyZWN0aXZlLFxuICAgIFB1cm9OYXZTdGlja3lEaXJlY3RpdmUsXG4gICAgTmdPcHRpbWl6ZWRJbWFnZVxuXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcHVyby1oZWFkZXItbW9iaWxlLXN1Ym1lbnUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi9wdXJvLWhlYWRlci1tb2JpbGUtc3VibWVudS5jb21wb25lbnQuc2NzcycsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbUHVyb0FjdGl2ZU1vZGFsRGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgUHVyb0hlYWRlck1vYmlsZVN1Ym1lbnVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSBwbGF0Zm9ybUlkID0gaW5qZWN0KFBMQVRGT1JNX0lEKTtcbiAgICBwcml2YXRlIGFjdGl2ZU1vZGFsRHR2ID0gaW5qZWN0KFB1cm9BY3RpdmVNb2RhbERpcmVjdGl2ZSk7XG4gICAgcHJpdmF0ZSByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgICBwcml2YXRlIHJvdXRlclN1Yj86IGFueTtcblxuICAgIEBJbnB1dCgpIHRpdGxlTWVudT86IHN0cmluZztcbiAgICBASW5wdXQoKSB0aXRsZUxhbmc/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgYnRuQm9vaz86IHN0cmluZztcbiAgICBASW5wdXQoKSBidG5DaGVja2luPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIG5hdkxpbmtzPzogUHVyb0J1dHRvbklbXTtcbiAgICBASW5wdXQoKSBib3R0b21MaW5rcz86IFB1cm9CdXR0b25JW107XG4gICAgQElucHV0KCkgaXNEeW5hbWljID0gZmFsc2U7XG4gICAgQElucHV0KCkgbG9nb0hvdGVsPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGxvZ29Ib3RlbFdoaXRlPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHNpdGVJZD86XG4gICAgICAgIHwgdHlwZW9mIHRoaXMuU0lURV9HUk9VUFxuICAgICAgICB8IHR5cGVvZiB0aGlzLlNJVEVfQkVBQ0hcbiAgICAgICAgfCB0eXBlb2YgdGhpcy5TSVRFX0hPVEVMUztcblxuICAgIEBPdXRwdXQoKSBidG5DbGljayA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgICBAT3V0cHV0KCkgYnRuQ2xpY2tDaGVja2luID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBTSVRFX0dST1VQID0gMTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IFNJVEVfSE9URUxTID0gMjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IFNJVEVfQkVBQ0ggPSAzO1xuXG4gICAgLyoqIFJlYWN0aXZlIHNpZ25hbCBxdWUgaW5kaWNhIHNpIGVsIGJvZHkgdGllbmUgYW1iYXMgY2xhc2VzICovXG4gICAgaGFzU3RpY2t5Q2xhc3NlcyA9IHNpZ25hbChmYWxzZSk7XG5cbiAgICBwcml2YXRlIG9ic2VydmVyPzogTXV0YXRpb25PYnNlcnZlcjtcbiAgICBwcml2YXRlIHNjcm9sbExpc3RlbmVyPzogKCkgPT4gdm9pZDtcbiAgICBwcml2YXRlIHJhZklkPzogbnVtYmVyO1xuXG4gICAgY3NzQmdVcmwgPSAnJztcblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5sb2dvSG90ZWwpIHtcbiAgICAgICAgICAgIHRoaXMuY3NzQmdVcmwgPSBgdXJsKFwiJHt0aGlzLmxvZ29Ib3RlbH1cIilgO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQoJ2hvdGVscycpO1xuXG4gICAgICAgICAgICB0aGlzLnJvdXRlclN1YiA9IHRoaXMucm91dGVyLmV2ZW50c1xuICAgICAgICAgICAgICAucGlwZShmaWx0ZXIoKGUpID0+IGUgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSlcbiAgICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQoJ2hvdGVscycpO1xuICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgdGhpcy51cGRhdGVTdGlja3lTdGF0ZSgpO1xuXG4gICAgICAgICAgICAvLyDwn5GB77iPIE9ic2VydmVyIHBhcmEgZGV0ZWN0YXIgY2FtYmlvcyBkZSBjbGFzZSBlbiBib2R5XG4gICAgICAgICAgICB0aGlzLm9ic2VydmVyID0gbmV3IE11dGF0aW9uT2JzZXJ2ZXIoKCkgPT5cbiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVN0aWNreVN0YXRlKClcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICB0aGlzLm9ic2VydmVyLm9ic2VydmUoZG9jdW1lbnQuYm9keSwge1xuICAgICAgICAgICAgICAgIGF0dHJpYnV0ZXM6IHRydWUsXG4gICAgICAgICAgICAgICAgYXR0cmlidXRlRmlsdGVyOiBbJ2NsYXNzJ10sXG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgLy8g8J+OryBMaXN0ZW5lciBkZSBzY3JvbGw6IGFzZWd1cmEgZGV0ZWNjacOzbiBpbmNsdXNvIGVuIHNjcm9sbCByw6FwaWRvXG4gICAgICAgICAgICB0aGlzLnNjcm9sbExpc3RlbmVyID0gKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNhbmNlbEFuaW1hdGlvbkZyYW1lKHRoaXMucmFmSWQhKTtcbiAgICAgICAgICAgICAgICB0aGlzLnJhZklkID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY3VycmVudCA9IHRoaXMuY2hlY2tTdGlja3lDbGFzc2VzKCk7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmhhc1N0aWNreUNsYXNzZXMoKSAhPT0gY3VycmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5oYXNTdGlja3lDbGFzc2VzLnNldChjdXJyZW50KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCB0aGlzLnNjcm9sbExpc3RlbmVyLCB7XG4gICAgICAgICAgICAgICAgcGFzc2l2ZTogdHJ1ZSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMucm91dGVyU3ViPy51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLm9ic2VydmVyPy5kaXNjb25uZWN0KCk7XG4gICAgICAgIGlmICh0aGlzLnNjcm9sbExpc3RlbmVyKVxuICAgICAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIHRoaXMuc2Nyb2xsTGlzdGVuZXIpO1xuICAgICAgICBpZiAodGhpcy5yYWZJZCkgY2FuY2VsQW5pbWF0aW9uRnJhbWUodGhpcy5yYWZJZCk7XG4gICAgICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoJ2hvdGVscycpO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICBwcml2YXRlIHVwZGF0ZVN0aWNreVN0YXRlKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBjdXJyZW50ID0gdGhpcy5jaGVja1N0aWNreUNsYXNzZXMoKTtcbiAgICAgICAgaWYgKHRoaXMuaGFzU3RpY2t5Q2xhc3NlcygpICE9PSBjdXJyZW50KSB7XG4gICAgICAgICAgICB0aGlzLmhhc1N0aWNreUNsYXNzZXMuc2V0KGN1cnJlbnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjaGVja1N0aWNreUNsYXNzZXMoKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IGJvZHkgPSBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdDtcbiAgICAgICAgcmV0dXJuIGJvZHkuY29udGFpbnMoJ25hdi1zdGlja3knKSAmJiBib2R5LmNvbnRhaW5zKCdtb2JpbGUtc3RpY2t5Jyk7XG4gICAgfVxuXG4gICAgY2xpY2tCdG5Cb29rKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmJ0bkNsaWNrLmVtaXQoKTtcbiAgICAgICAgc3dpdGNoICh0aGlzLnNpdGVJZCkge1xuICAgICAgICAgICAgY2FzZSB0aGlzLlNJVEVfR1JPVVA6XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIHRoaXMuU0lURV9IT1RFTFM6XG4gICAgICAgICAgICAgICAgdGhpcy5hY3RpdmVNb2RhbER0di5oYW5kbGVDbGljaygpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSB0aGlzLlNJVEVfQkVBQ0g6XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPGhlYWRlciBjbGFzcz1cImhlYWRlclwiIG5hdlN0aWNreSBbaXNEeW5hbWljXT1cImlzRHluYW1pY1wiPlxuICAgIDxkaXYgY2xhc3M9XCJiYW5uZXJfX2xvZ29cIj5cbiAgICAgICAgPGFcbiAgICAgICAgICAgIFtocmVmXT1cIm5hdkxpbmtzPy5bMF0/LnVybFwiXG4gICAgICAgICAgICBbbGlua1R5cGVdPVwibmF2TGlua3M/LlswXT8ubGlua1R5cGVcIlxuICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJuYXZMaW5rcz8uWzBdPy5sYWJlbFwiXG4gICAgICAgID5cbiAgICAgICAgICAgIEBpZiAobG9nb0hvdGVsV2hpdGUgJiYgbG9nb0hvdGVsKSB7XG4gICAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICAgICBbbmdTcmNdPVwiaGFzU3RpY2t5Q2xhc3NlcygpID8gbG9nb0hvdGVsIDogbG9nb0hvdGVsV2hpdGVcIlxuICAgICAgICAgICAgICAgICAgICBhbHQ9XCJMb2dvXCJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxNzdcIlxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCI2OFwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaGVhZGVyX19sb2dvLS1pbWdcIlxuICAgICAgICAgICAgICAgICAgICBwcmlvcml0eVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvYT5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiaGVhZGVyX19tZW51IGpzLWFjdGl2ZS1tb2RhbFwiXG4gICAgICAgIGFjdGl2ZU1vZGFsXG4gICAgICAgIGRhdGEtbW9kYWxfbmFtZT1cIm5hdmlnYXRpb25cIlxuICAgICAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJ0aXRsZU1lbnUgPz8gJ01lbnUnXCJcbiAgICA+XG4gICAgICAgIDxpIGNsYXNzPVwiaWNvbi04M1wiPjwvaT5cbiAgICAgICAgQGlmICh0aXRsZU1lbnUpIHtcbiAgICAgICAgICAgIDxzcGFuPnt7IHRpdGxlTWVudSB9fTwvc3Bhbj5cbiAgICAgICAgfVxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJoZWFkZXJfX3Jlc2VydmVyXCI+XG4gICAgICAgIEBpZiAoYnRuQ2hlY2tpbiAmJiBzaXRlSWQgPT0gMikge1xuICAgICAgICAgICAgPGEgXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuX19zZWNvbmRhcnkgYnRuLS1sZyBtb2JpbGVfX2NoZWNrSW5cIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJidG5DbGlja0NoZWNraW4uZW1pdCgpXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImJ0bkNoZWNraW5cIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxzcGFuPnt7IGJ0bkNoZWNraW4gfX08L3NwYW4+PC9hXG4gICAgICAgICAgICA+XG4gICAgICAgIH1cbiAgICAgICAgQGlmIChidG5Cb29rKSB7XG4gICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bl9fcHJpbWFyeSBidG4tLWxnIG1vYmlsZV9fcmVzZXJ2YXJcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJidG5DbGljay5lbWl0KClcIlxuICAgICAgICAgICAgICAgIGRhdGEtbW9kYWxfbmFtZT1cInJlc2VydmVyXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImJ0bkJvb2tcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxzcGFuPnt7IGJ0bkJvb2sgfX08L3NwYW4+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbiAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiaGVhZGVyX19sYW5ndWFnZSBqcy1hY3RpdmUtbW9kYWxcIlxuICAgICAgICBhY3RpdmVNb2RhbFxuICAgICAgICBkYXRhLW1vZGFsX25hbWU9XCJsYW5ndWFnZVwiXG4gICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInRpdGxlTGFuZyA/PyAnTGFuZ3VhZ2UgTWVudSdcIlxuICAgID5cbiAgICAgICAgQGlmICh0aXRsZUxhbmcpIHtcbiAgICAgICAgICAgIHt7IHRpdGxlTGFuZyB9fVxuICAgICAgICB9XG4gICAgPC9kaXY+XG48L2hlYWRlcj5cblxuPGRpdiBjbGFzcz1cIm1vZGFsIG1vZGFsLS1zb2xpZENyZWFtIG1vZGFsLS1uYXZpZ2F0aW9uXCIgW3N0eWxlLi0tYmctdXJsXT1cImNzc0JnVXJsXCI+XG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsX19pbm5lclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWxfX2JvZHlcIj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cIm1vZGFsX19jbG9zZSBqcy1jbG9zZVwiXG4gICAgICAgICAgICAgICAgYWN0aXZlTW9kYWxcbiAgICAgICAgICAgICAgICBkYXRhLW1vZGFsX25hbWU9XCJuYXZpZ2F0aW9uXCJcbiAgICAgICAgICAgICAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPVwiQ2xvc2UgQnV0dG9uXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8c3ZnXG4gICAgICAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIGZvY3VzYWJsZT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtb2RhbF9fY2xvc2UtLWljb25cIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPHVzZSBocmVmPVwiI21vZGFsLWNsb3NlXCI+PC91c2U+XG4gICAgICAgICAgICAgICAgPC9zdmc+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbF9fbmF2XCI+XG4gICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwibW9kYWxfX25hdi0taXRlbXNcIj5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChuYXZMaW5rcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGZvciAobGluayBvZiBuYXZMaW5rczsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwibW9kYWxfX25hdi0tbGlua1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2hyZWZdPVwibGluay51cmxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xpbmtUeXBlXT1cImxpbmsubGlua1R5cGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJsaW5rLmxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID57eyBsaW5rLmxhYmVsIH19PC9hXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJtb2RhbF9fbmF2LS1pdGVtc1NtYWxsXCI+XG4gICAgICAgICAgICAgICAgICAgIEBpZiAoYm90dG9tTGlua3MpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBmb3IgKGxpbmsgb2YgYm90dG9tTGlua3M7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz1cIm1vZGFsX19uYXYtLWxpbmtcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsaW5rVHlwZV09XCJsaW5rLmxpbmtUeXBlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtocmVmXT1cImxpbmsudXJsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwibGluay5sYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+e3sgbGluay5sYWJlbCB9fTwvYVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -4,8 +4,14 @@ import { AutoImageZoomWrapperDirective, PuroSliderDirective } from '../../direct
4
4
  import { PuroDynamicHeadingComponent } from '../../shared/puro-dynamic-heading';
5
5
  import * as i0 from "@angular/core";
6
6
  export class PuroTimelineComponent {
7
+ constructor() {
8
+ this.activeIndex = null;
9
+ }
10
+ selectYear(index) {
11
+ this.activeIndex = this.activeIndex === index ? null : index;
12
+ }
7
13
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroTimelineComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroTimelineComponent, isStandalone: true, selector: "lib-puro-timeline", inputs: { title: "title", pretitle: "pretitle", description: "description", items: "items", tags: "tags", textColors: "textColors" }, ngImport: i0, template: "<section\n class=\"timeline js-active-slider generalMargin\"\n [puroSlider]=\"items\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-timeline-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"true\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"1\"\n>\n <div class=\"timeline__inner moments--withTopGraphic\">\n <div class=\"timeline__contentText\">\n @if (pretitle) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.pretitle || 'span'\"\n cssClass=\"timeline__title\"\n [color]=\"textColors?.pretitle\"\n [content]=\"pretitle\"\n ></lib-puro-dynamic-heading>\n }\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'h2'\"\n cssClass=\"timeline__heading\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n @if (description) {\n <div class=\"timeline__paragraph\">\n <p>\n {{ description }}\n </p>\n </div>\n }\n </div>\n @if (items && items.length) {\n <div class=\"timeline__years\">\n @for (item of items; track $index) {\n <div class=\"timeline__yearItem\">\n @if (item.year) {\n <span class=\"timeline__yearItem--year\">{{\n item.year\n }}</span>\n }\n <div class=\"timeline__card\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"timeline__card--img\"\n [alt]=\"item.img.alt\"\n width=\"300\"\n height=\"225\"\n decoding=\"async\"\n />\n }\n <div class=\"timeline__card--body\">\n @if (item.year) {\n <span\n class=\"timeline__card--year __subHeading\"\n >{{ item.year }}</span\n >\n }\n @if (item.description) {\n <p class=\"timeline__card--text __paragraph\">\n {{ item.description }}\n </p>\n }\n </div>\n </div>\n </div>\n }\n </div>\n <div class=\"timeline__cardSlider\">\n <div class=\"timeline__cardSlider--inner relative\">\n <div class=\"js-timeline-slider\">\n @for (item of items; track $index) {\n <div class=\"timeline__card\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"timeline__card--img\"\n [alt]=\"item.img.alt\"\n width=\"300\"\n height=\"225\"\n decoding=\"async\"\n />\n }\n <div class=\"timeline__card--body\">\n @if (item.year) {\n <span\n class=\"timeline__card--year __subHeading\"\n >{{ item.year }}</span\n >\n }\n @if (item.description) {\n <p\n class=\"timeline__card--text __paragraph\"\n >\n {{ item.description }}\n </p>\n }\n </div>\n </div>\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n </div>\n </div>\n }\n </div>\n</section>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: PuroSliderDirective, selector: "[puroSlider]", inputs: ["puroSlider"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "directive", type: AutoImageZoomWrapperDirective, selector: "img[ngSrc], img[src]" }, { kind: "component", type: PuroDynamicHeadingComponent, selector: "lib-puro-dynamic-heading", inputs: ["tag", "wrapper", "cssClass", "content", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroTimelineComponent, isStandalone: true, selector: "lib-puro-timeline", inputs: { title: "title", pretitle: "pretitle", description: "description", items: "items", tags: "tags", textColors: "textColors" }, ngImport: i0, template: "<section\n class=\"timeline js-active-slider generalMargin\"\n [puroSlider]=\"items\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-timeline-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"true\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"1\"\n>\n <div class=\"timeline__inner moments--withTopGraphic\">\n <div class=\"timeline__contentText\">\n @if (pretitle) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.pretitle || 'span'\"\n cssClass=\"timeline__title\"\n [color]=\"textColors?.pretitle\"\n [content]=\"pretitle\"\n ></lib-puro-dynamic-heading>\n }\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'h2'\"\n cssClass=\"timeline__heading\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n @if (description) {\n <div class=\"timeline__paragraph\">\n <p>\n {{ description }}\n </p>\n </div>\n }\n </div>\n @if (items && items.length) {\n <div class=\"timeline__years\">\n @for (item of items; track $index) {\n <div class=\"timeline__yearItem\">\n @if (item.year) {\n <span \n class=\"timeline__yearItem--year\"\n (click)=\"selectYear($index)\"\n [class.is-active]=\"activeIndex === $index\"\n >{{\n item.year\n }}</span>\n }\n @if (item.year && item.subtitle) {\n <div class=\"timeline__tooltip\">\n <strong>{{ item.year }}</strong> \u2013 {{ item.subtitle }}\n </div>\n }\n <div \n class=\"timeline__card\"\n [class.is-active]=\"activeIndex === $index\"\n >\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"timeline__card--img\"\n [alt]=\"item.img.alt\"\n width=\"300\"\n height=\"225\"\n decoding=\"async\"\n />\n }\n <div class=\"timeline__card--body\">\n @if (item.year) {\n <span\n class=\"timeline__card--year __subHeading\"\n >{{ item.year }}</span\n >\n }\n @if (item.description) {\n <p class=\"timeline__card--text __paragraph\">\n {{ item.description }}\n </p>\n }\n </div>\n </div>\n </div>\n }\n </div>\n <div class=\"timeline__cardSlider\">\n <div class=\"timeline__cardSlider--inner relative\">\n <div class=\"js-timeline-slider\">\n @for (item of items; track $index) {\n <div class=\"timeline__card\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"timeline__card--img\"\n [alt]=\"item.img.alt\"\n width=\"300\"\n height=\"225\"\n decoding=\"async\"\n />\n }\n <div class=\"timeline__card--body\">\n @if (item.year) {\n <span\n class=\"timeline__card--year __subHeading\"\n >{{ item.year }}</span\n >\n }\n @if (item.description) {\n <p\n class=\"timeline__card--text __paragraph\"\n >\n {{ item.description }}\n </p>\n }\n </div>\n </div>\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n </div>\n </div>\n }\n </div>\n</section>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: PuroSliderDirective, selector: "[puroSlider]", inputs: ["puroSlider"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "directive", type: AutoImageZoomWrapperDirective, selector: "img[ngSrc], img[src]" }, { kind: "component", type: PuroDynamicHeadingComponent, selector: "lib-puro-dynamic-heading", inputs: ["tag", "wrapper", "cssClass", "content", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9
15
  }
10
16
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroTimelineComponent, decorators: [{
11
17
  type: Component,
@@ -15,7 +21,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
15
21
  NgOptimizedImage,
16
22
  AutoImageZoomWrapperDirective,
17
23
  PuroDynamicHeadingComponent,
18
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section\n class=\"timeline js-active-slider generalMargin\"\n [puroSlider]=\"items\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-timeline-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"true\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"1\"\n>\n <div class=\"timeline__inner moments--withTopGraphic\">\n <div class=\"timeline__contentText\">\n @if (pretitle) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.pretitle || 'span'\"\n cssClass=\"timeline__title\"\n [color]=\"textColors?.pretitle\"\n [content]=\"pretitle\"\n ></lib-puro-dynamic-heading>\n }\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'h2'\"\n cssClass=\"timeline__heading\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n @if (description) {\n <div class=\"timeline__paragraph\">\n <p>\n {{ description }}\n </p>\n </div>\n }\n </div>\n @if (items && items.length) {\n <div class=\"timeline__years\">\n @for (item of items; track $index) {\n <div class=\"timeline__yearItem\">\n @if (item.year) {\n <span class=\"timeline__yearItem--year\">{{\n item.year\n }}</span>\n }\n <div class=\"timeline__card\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"timeline__card--img\"\n [alt]=\"item.img.alt\"\n width=\"300\"\n height=\"225\"\n decoding=\"async\"\n />\n }\n <div class=\"timeline__card--body\">\n @if (item.year) {\n <span\n class=\"timeline__card--year __subHeading\"\n >{{ item.year }}</span\n >\n }\n @if (item.description) {\n <p class=\"timeline__card--text __paragraph\">\n {{ item.description }}\n </p>\n }\n </div>\n </div>\n </div>\n }\n </div>\n <div class=\"timeline__cardSlider\">\n <div class=\"timeline__cardSlider--inner relative\">\n <div class=\"js-timeline-slider\">\n @for (item of items; track $index) {\n <div class=\"timeline__card\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"timeline__card--img\"\n [alt]=\"item.img.alt\"\n width=\"300\"\n height=\"225\"\n decoding=\"async\"\n />\n }\n <div class=\"timeline__card--body\">\n @if (item.year) {\n <span\n class=\"timeline__card--year __subHeading\"\n >{{ item.year }}</span\n >\n }\n @if (item.description) {\n <p\n class=\"timeline__card--text __paragraph\"\n >\n {{ item.description }}\n </p>\n }\n </div>\n </div>\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n </div>\n </div>\n }\n </div>\n</section>\n" }]
24
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section\n class=\"timeline js-active-slider generalMargin\"\n [puroSlider]=\"items\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-timeline-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"true\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"1\"\n>\n <div class=\"timeline__inner moments--withTopGraphic\">\n <div class=\"timeline__contentText\">\n @if (pretitle) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.pretitle || 'span'\"\n cssClass=\"timeline__title\"\n [color]=\"textColors?.pretitle\"\n [content]=\"pretitle\"\n ></lib-puro-dynamic-heading>\n }\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'h2'\"\n cssClass=\"timeline__heading\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n @if (description) {\n <div class=\"timeline__paragraph\">\n <p>\n {{ description }}\n </p>\n </div>\n }\n </div>\n @if (items && items.length) {\n <div class=\"timeline__years\">\n @for (item of items; track $index) {\n <div class=\"timeline__yearItem\">\n @if (item.year) {\n <span \n class=\"timeline__yearItem--year\"\n (click)=\"selectYear($index)\"\n [class.is-active]=\"activeIndex === $index\"\n >{{\n item.year\n }}</span>\n }\n @if (item.year && item.subtitle) {\n <div class=\"timeline__tooltip\">\n <strong>{{ item.year }}</strong> \u2013 {{ item.subtitle }}\n </div>\n }\n <div \n class=\"timeline__card\"\n [class.is-active]=\"activeIndex === $index\"\n >\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"timeline__card--img\"\n [alt]=\"item.img.alt\"\n width=\"300\"\n height=\"225\"\n decoding=\"async\"\n />\n }\n <div class=\"timeline__card--body\">\n @if (item.year) {\n <span\n class=\"timeline__card--year __subHeading\"\n >{{ item.year }}</span\n >\n }\n @if (item.description) {\n <p class=\"timeline__card--text __paragraph\">\n {{ item.description }}\n </p>\n }\n </div>\n </div>\n </div>\n }\n </div>\n <div class=\"timeline__cardSlider\">\n <div class=\"timeline__cardSlider--inner relative\">\n <div class=\"js-timeline-slider\">\n @for (item of items; track $index) {\n <div class=\"timeline__card\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"timeline__card--img\"\n [alt]=\"item.img.alt\"\n width=\"300\"\n height=\"225\"\n decoding=\"async\"\n />\n }\n <div class=\"timeline__card--body\">\n @if (item.year) {\n <span\n class=\"timeline__card--year __subHeading\"\n >{{ item.year }}</span\n >\n }\n @if (item.description) {\n <p\n class=\"timeline__card--text __paragraph\"\n >\n {{ item.description }}\n </p>\n }\n </div>\n </div>\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n </div>\n </div>\n }\n </div>\n</section>\n" }]
19
25
  }], propDecorators: { title: [{
20
26
  type: Input
21
27
  }], pretitle: [{
@@ -29,4 +35,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
29
35
  }], textColors: [{
30
36
  type: Input
31
37
  }] } });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyby10aW1lbGluZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wdXJvL3NyYy9saWIvY29tcG9uZW50cy9wdXJvLXRpbWVsaW5lL3B1cm8tdGltZWxpbmUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby10aW1lbGluZS9wdXJvLXRpbWVsaW5lLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxZQUFZLEVBQ1osZ0JBQWdCLEdBQ25CLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLDZCQUE2QixFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDdEYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7O0FBa0JoRixNQUFNLE9BQU8scUJBQXFCOytHQUFyQixxQkFBcUI7bUdBQXJCLHFCQUFxQixtTkN4QmxDLHU2SkFpSEEseUREbkdRLFlBQVksK0JBQ1osbUJBQW1CLGlGQUNuQixnQkFBZ0IsZ1BBQ2hCLDZCQUE2QixpRUFDN0IsMkJBQTJCOzs0RkFNdEIscUJBQXFCO2tCQWRqQyxTQUFTOytCQUNJLG1CQUFtQixjQUNqQixJQUFJLFdBQ1A7d0JBQ0wsWUFBWTt3QkFDWixtQkFBbUI7d0JBQ25CLGdCQUFnQjt3QkFDaEIsNkJBQTZCO3dCQUM3QiwyQkFBMkI7cUJBQzlCLG1CQUdnQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE5nT3B0aW1pemVkSW1hZ2UsXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXV0b0ltYWdlWm9vbVdyYXBwZXJEaXJlY3RpdmUsIFB1cm9TbGlkZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzJztcbmltcG9ydCB7IFB1cm9EeW5hbWljSGVhZGluZ0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL3NoYXJlZC9wdXJvLWR5bmFtaWMtaGVhZGluZyc7XG5cbmltcG9ydCB7IFB1cm9JbWFnZUksIFB1cm9UYWdzSSwgUHVyb1RleHRzQ29sb3JzSSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xpYi1wdXJvLXRpbWVsaW5lJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBQdXJvU2xpZGVyRGlyZWN0aXZlLFxuICAgICAgICBOZ09wdGltaXplZEltYWdlLFxuICAgICAgICBBdXRvSW1hZ2Vab29tV3JhcHBlckRpcmVjdGl2ZSxcbiAgICAgICAgUHVyb0R5bmFtaWNIZWFkaW5nQ29tcG9uZW50LFxuICAgIF0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3B1cm8tdGltZWxpbmUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi9wdXJvLXRpbWVsaW5lLmNvbXBvbmVudC5zY3NzJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUHVyb1RpbWVsaW5lQ29tcG9uZW50IHtcbiAgICBASW5wdXQoKSB0aXRsZT86IHN0cmluZztcbiAgICBASW5wdXQoKSBwcmV0aXRsZT86IHN0cmluZztcbiAgICBASW5wdXQoKSBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgICBASW5wdXQoKSBpdGVtcz86IFB1cm9UaW1lbGluZVllYXJJdGVtW107XG4gICAgQElucHV0KCkgdGFncz86IFB1cm9UYWdzSTtcbiAgICBASW5wdXQoKSB0ZXh0Q29sb3JzPzogUHVyb1RleHRzQ29sb3JzSTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQdXJvVGltZWxpbmVZZWFySXRlbSB7XG4gICAgeWVhcj86IHN0cmluZztcbiAgICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgICBpbWc/OiBQdXJvSW1hZ2VJO1xufVxuIiwiPHNlY3Rpb25cbiAgICBjbGFzcz1cInRpbWVsaW5lIGpzLWFjdGl2ZS1zbGlkZXIgZ2VuZXJhbE1hcmdpblwiXG4gICAgW3B1cm9TbGlkZXJdPVwiaXRlbXNcIlxuICAgIGRhdGEtc2xpZGVzX2luZmluaXRlPVwidHJ1ZVwiXG4gICAgZGF0YS1zbGlkZXJfbmFtZT1cImpzLXRpbWVsaW5lLXNsaWRlclwiXG4gICAgZGF0YS1zbGlkZXJfc2hvd2J0bnM9XCJ0cnVlXCJcbiAgICBkYXRhLXNsaWRlcl9zaG93ZG90cz1cImZhbHNlXCJcbiAgICBkYXRhLXNsaWRlcl9mYWRlPVwidHJ1ZVwiXG4gICAgZGF0YS1zbGlkZXJfYXV0b3BsYXk9XCJ0cnVlXCJcbiAgICBkYXRhLXNsaWRlc19wYz1cIjFcIlxuPlxuICAgIDxkaXYgY2xhc3M9XCJ0aW1lbGluZV9faW5uZXIgbW9tZW50cy0td2l0aFRvcEdyYXBoaWNcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRpbWVsaW5lX19jb250ZW50VGV4dFwiPlxuICAgICAgICAgICAgQGlmIChwcmV0aXRsZSkge1xuICAgICAgICAgICAgICAgIDxsaWItcHVyby1keW5hbWljLWhlYWRpbmdcbiAgICAgICAgICAgICAgICAgICAgW3RhZ109XCJ0YWdzPy5wcmV0aXRsZSB8fCAnc3BhbidcIlxuICAgICAgICAgICAgICAgICAgICBjc3NDbGFzcz1cInRpbWVsaW5lX190aXRsZVwiXG4gICAgICAgICAgICAgICAgICAgIFtjb2xvcl09XCJ0ZXh0Q29sb3JzPy5wcmV0aXRsZVwiXG4gICAgICAgICAgICAgICAgICAgIFtjb250ZW50XT1cInByZXRpdGxlXCJcbiAgICAgICAgICAgICAgICA+PC9saWItcHVyby1keW5hbWljLWhlYWRpbmc+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaWYgKHRpdGxlKSB7XG4gICAgICAgICAgICAgICAgPGxpYi1wdXJvLWR5bmFtaWMtaGVhZGluZ1xuICAgICAgICAgICAgICAgICAgICBbdGFnXT1cInRhZ3M/LnRpdGxlIHx8ICdoMidcIlxuICAgICAgICAgICAgICAgICAgICBjc3NDbGFzcz1cInRpbWVsaW5lX19oZWFkaW5nXCJcbiAgICAgICAgICAgICAgICAgICAgW2NvbG9yXT1cInRleHRDb2xvcnM/LnRpdGxlXCJcbiAgICAgICAgICAgICAgICAgICAgW2NvbnRlbnRdPVwidGl0bGVcIlxuICAgICAgICAgICAgICAgID48L2xpYi1wdXJvLWR5bmFtaWMtaGVhZGluZz5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpZiAoZGVzY3JpcHRpb24pIHtcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGltZWxpbmVfX3BhcmFncmFwaFwiPlxuICAgICAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IGRlc2NyaXB0aW9uIH19XG4gICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIEBpZiAoaXRlbXMgJiYgaXRlbXMubGVuZ3RoKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGltZWxpbmVfX3llYXJzXCI+XG4gICAgICAgICAgICAgICAgQGZvciAoaXRlbSBvZiBpdGVtczsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0aW1lbGluZV9feWVhckl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS55ZWFyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aW1lbGluZV9feWVhckl0ZW0tLXllYXJcIj57e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLnllYXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0aW1lbGluZV9fY2FyZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5pbWcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nU3JjXT1cIml0ZW0uaW1nLnNyY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRpbWVsaW5lX19jYXJkLS1pbWdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2FsdF09XCJpdGVtLmltZy5hbHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIzMDBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiMjI1XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlY29kaW5nPVwiYXN5bmNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGltZWxpbmVfX2NhcmQtLWJvZHlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLnllYXIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0aW1lbGluZV9fY2FyZC0teWVhciBfX3N1YkhlYWRpbmdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID57eyBpdGVtLnllYXIgfX08L3NwYW5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0uZGVzY3JpcHRpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwidGltZWxpbmVfX2NhcmQtLXRleHQgX19wYXJhZ3JhcGhcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBpdGVtLmRlc2NyaXB0aW9uIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0aW1lbGluZV9fY2FyZFNsaWRlclwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0aW1lbGluZV9fY2FyZFNsaWRlci0taW5uZXIgcmVsYXRpdmVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImpzLXRpbWVsaW5lLXNsaWRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgQGZvciAoaXRlbSBvZiBpdGVtczsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRpbWVsaW5lX19jYXJkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5pbWcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdTcmNdPVwiaXRlbS5pbWcuc3JjXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRpbWVsaW5lX19jYXJkLS1pbWdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthbHRdPVwiaXRlbS5pbWcuYWx0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjMwMFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiMjI1XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWNvZGluZz1cImFzeW5jXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRpbWVsaW5lX19jYXJkLS1ib2R5XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0ueWVhcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidGltZWxpbmVfX2NhcmQtLXllYXIgX19zdWJIZWFkaW5nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPnt7IGl0ZW0ueWVhciB9fTwvc3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5kZXNjcmlwdGlvbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidGltZWxpbmVfX2NhcmQtLXRleHQgX19wYXJhZ3JhcGhcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgaXRlbS5kZXNjcmlwdGlvbiB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwianMtc2xpZGVyLWFycm93c1wiPjwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbjwvc2VjdGlvbj5cbiJdfQ==
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyby10aW1lbGluZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wdXJvL3NyYy9saWIvY29tcG9uZW50cy9wdXJvLXRpbWVsaW5lL3B1cm8tdGltZWxpbmUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby10aW1lbGluZS9wdXJvLXRpbWVsaW5lLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxZQUFZLEVBQ1osZ0JBQWdCLEdBQ25CLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLDZCQUE2QixFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDdEYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7O0FBa0JoRixNQUFNLE9BQU8scUJBQXFCO0lBZGxDO1FBc0JJLGdCQUFXLEdBQWtCLElBQUksQ0FBQztLQU1yQztJQUpHLFVBQVUsQ0FBQyxLQUFhO1FBQ3BCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ2pFLENBQUM7K0dBWlEscUJBQXFCO21HQUFyQixxQkFBcUIsbU5DeEJsQyw4Z0xBNkhBLHlERC9HUSxZQUFZLCtCQUNaLG1CQUFtQixpRkFDbkIsZ0JBQWdCLGdQQUNoQiw2QkFBNkIsaUVBQzdCLDJCQUEyQjs7NEZBTXRCLHFCQUFxQjtrQkFkakMsU0FBUzsrQkFDSSxtQkFBbUIsY0FDakIsSUFBSSxXQUNQO3dCQUNMLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixnQkFBZ0I7d0JBQ2hCLDZCQUE2Qjt3QkFDN0IsMkJBQTJCO3FCQUM5QixtQkFHZ0IsdUJBQXVCLENBQUMsTUFBTTs4QkFHdEMsS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBOZ09wdGltaXplZEltYWdlLFxufSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEF1dG9JbWFnZVpvb21XcmFwcGVyRGlyZWN0aXZlLCBQdXJvU2xpZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBQdXJvRHluYW1pY0hlYWRpbmdDb21wb25lbnQgfSBmcm9tICcuLi8uLi9zaGFyZWQvcHVyby1keW5hbWljLWhlYWRpbmcnO1xuXG5pbXBvcnQgeyBQdXJvSW1hZ2VJLCBQdXJvVGFnc0ksIFB1cm9UZXh0c0NvbG9yc0kgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdsaWItcHVyby10aW1lbGluZScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgUHVyb1NsaWRlckRpcmVjdGl2ZSxcbiAgICAgICAgTmdPcHRpbWl6ZWRJbWFnZSxcbiAgICAgICAgQXV0b0ltYWdlWm9vbVdyYXBwZXJEaXJlY3RpdmUsXG4gICAgICAgIFB1cm9EeW5hbWljSGVhZGluZ0NvbXBvbmVudCxcbiAgICBdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9wdXJvLXRpbWVsaW5lLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vcHVyby10aW1lbGluZS5jb21wb25lbnQuc2NzcycsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFB1cm9UaW1lbGluZUNvbXBvbmVudCB7XG4gICAgQElucHV0KCkgdGl0bGU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgcHJldGl0bGU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgaXRlbXM/OiBQdXJvVGltZWxpbmVZZWFySXRlbVtdO1xuICAgIEBJbnB1dCgpIHRhZ3M/OiBQdXJvVGFnc0k7XG4gICAgQElucHV0KCkgdGV4dENvbG9ycz86IFB1cm9UZXh0c0NvbG9yc0k7XG5cbiAgICBhY3RpdmVJbmRleDogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG5cbiAgICBzZWxlY3RZZWFyKGluZGV4OiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy5hY3RpdmVJbmRleCA9IHRoaXMuYWN0aXZlSW5kZXggPT09IGluZGV4ID8gbnVsbCA6IGluZGV4O1xuICAgIH1cblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFB1cm9UaW1lbGluZVllYXJJdGVtIHtcbiAgICB5ZWFyPzogc3RyaW5nO1xuICAgIHN1YnRpdGxlPzogc3RyaW5nO1xuICAgIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICAgIGltZz86IFB1cm9JbWFnZUk7XG59XG4iLCI8c2VjdGlvblxuICAgIGNsYXNzPVwidGltZWxpbmUganMtYWN0aXZlLXNsaWRlciBnZW5lcmFsTWFyZ2luXCJcbiAgICBbcHVyb1NsaWRlcl09XCJpdGVtc1wiXG4gICAgZGF0YS1zbGlkZXNfaW5maW5pdGU9XCJ0cnVlXCJcbiAgICBkYXRhLXNsaWRlcl9uYW1lPVwianMtdGltZWxpbmUtc2xpZGVyXCJcbiAgICBkYXRhLXNsaWRlcl9zaG93YnRucz1cInRydWVcIlxuICAgIGRhdGEtc2xpZGVyX3Nob3dkb3RzPVwiZmFsc2VcIlxuICAgIGRhdGEtc2xpZGVyX2ZhZGU9XCJ0cnVlXCJcbiAgICBkYXRhLXNsaWRlcl9hdXRvcGxheT1cInRydWVcIlxuICAgIGRhdGEtc2xpZGVzX3BjPVwiMVwiXG4+XG4gICAgPGRpdiBjbGFzcz1cInRpbWVsaW5lX19pbm5lciBtb21lbnRzLS13aXRoVG9wR3JhcGhpY1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidGltZWxpbmVfX2NvbnRlbnRUZXh0XCI+XG4gICAgICAgICAgICBAaWYgKHByZXRpdGxlKSB7XG4gICAgICAgICAgICAgICAgPGxpYi1wdXJvLWR5bmFtaWMtaGVhZGluZ1xuICAgICAgICAgICAgICAgICAgICBbdGFnXT1cInRhZ3M/LnByZXRpdGxlIHx8ICdzcGFuJ1wiXG4gICAgICAgICAgICAgICAgICAgIGNzc0NsYXNzPVwidGltZWxpbmVfX3RpdGxlXCJcbiAgICAgICAgICAgICAgICAgICAgW2NvbG9yXT1cInRleHRDb2xvcnM/LnByZXRpdGxlXCJcbiAgICAgICAgICAgICAgICAgICAgW2NvbnRlbnRdPVwicHJldGl0bGVcIlxuICAgICAgICAgICAgICAgID48L2xpYi1wdXJvLWR5bmFtaWMtaGVhZGluZz5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpZiAodGl0bGUpIHtcbiAgICAgICAgICAgICAgICA8bGliLXB1cm8tZHluYW1pYy1oZWFkaW5nXG4gICAgICAgICAgICAgICAgICAgIFt0YWddPVwidGFncz8udGl0bGUgfHwgJ2gyJ1wiXG4gICAgICAgICAgICAgICAgICAgIGNzc0NsYXNzPVwidGltZWxpbmVfX2hlYWRpbmdcIlxuICAgICAgICAgICAgICAgICAgICBbY29sb3JdPVwidGV4dENvbG9ycz8udGl0bGVcIlxuICAgICAgICAgICAgICAgICAgICBbY29udGVudF09XCJ0aXRsZVwiXG4gICAgICAgICAgICAgICAgPjwvbGliLXB1cm8tZHluYW1pYy1oZWFkaW5nPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGlmIChkZXNjcmlwdGlvbikge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0aW1lbGluZV9fcGFyYWdyYXBoXCI+XG4gICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgZGVzY3JpcHRpb24gfX1cbiAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgQGlmIChpdGVtcyAmJiBpdGVtcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0aW1lbGluZV9feWVhcnNcIj5cbiAgICAgICAgICAgICAgICBAZm9yIChpdGVtIG9mIGl0ZW1zOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRpbWVsaW5lX195ZWFySXRlbVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLnllYXIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0aW1lbGluZV9feWVhckl0ZW0tLXllYXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0WWVhcigkaW5kZXgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmlzLWFjdGl2ZV09XCJhY3RpdmVJbmRleCA9PT0gJGluZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS55ZWFyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0ueWVhciAmJiBpdGVtLnN1YnRpdGxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRpbWVsaW5lX190b29sdGlwXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+e3sgaXRlbS55ZWFyIH19PC9zdHJvbmc+IOKAkyB7eyBpdGVtLnN1YnRpdGxlIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidGltZWxpbmVfX2NhcmRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5pcy1hY3RpdmVdPVwiYWN0aXZlSW5kZXggPT09ICRpbmRleFwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLmltZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdTcmNdPVwiaXRlbS5pbWcuc3JjXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidGltZWxpbmVfX2NhcmQtLWltZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWx0XT1cIml0ZW0uaW1nLmFsdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjMwMFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIyMjVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVjb2Rpbmc9XCJhc3luY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0aW1lbGluZV9fY2FyZC0tYm9keVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0ueWVhcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRpbWVsaW5lX19jYXJkLS15ZWFyIF9fc3ViSGVhZGluZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPnt7IGl0ZW0ueWVhciB9fTwvc3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5kZXNjcmlwdGlvbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJ0aW1lbGluZV9fY2FyZC0tdGV4dCBfX3BhcmFncmFwaFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGl0ZW0uZGVzY3JpcHRpb24gfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRpbWVsaW5lX19jYXJkU2xpZGVyXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRpbWVsaW5lX19jYXJkU2xpZGVyLS1pbm5lciByZWxhdGl2ZVwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwianMtdGltZWxpbmUtc2xpZGVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICBAZm9yIChpdGVtIG9mIGl0ZW1zOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGltZWxpbmVfX2NhcmRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLmltZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1NyY109XCJpdGVtLmltZy5zcmNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidGltZWxpbmVfX2NhcmQtLWltZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2FsdF09XCJpdGVtLmltZy5hbHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMzAwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIyMjVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlY29kaW5nPVwiYXN5bmNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGltZWxpbmVfX2NhcmQtLWJvZHlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS55ZWFyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0aW1lbGluZV9fY2FyZC0teWVhciBfX3N1YkhlYWRpbmdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+e3sgaXRlbS55ZWFyIH19PC9zcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLmRlc2NyaXB0aW9uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0aW1lbGluZV9fY2FyZC0tdGV4dCBfX3BhcmFncmFwaFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBpdGVtLmRlc2NyaXB0aW9uIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJqcy1zbGlkZXItYXJyb3dzXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgIDwvZGl2PlxuPC9zZWN0aW9uPlxuIl19