ctt-puro 0.31.1 → 0.31.3

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.
@@ -5,11 +5,11 @@ import * as i0 from "@angular/core";
5
5
  import * as i1 from "@angular/common";
6
6
  export class PuroInfoBigComponent {
7
7
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroInfoBigComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroInfoBigComponent, isStandalone: true, selector: "lib-puro-info-big", inputs: { pretitle: "pretitle", title: "title", subtitle: "subtitle", description: "description", ndDescription: "ndDescription", buttons: "buttons", link: "link", img: "img" }, ngImport: i0, template: "<section class=\"moments moments--withBg\" [ngStyle]=\"{ background: 'url(' + img?.src + ') no-repeat center bottom' }\">\n <div class=\"moments__container\">\n <span class=\"moments__title\">{{ pretitle }}</span>\n <h2 class=\"moments__heading\" [innerHTML]=\"title\"></h2>\n <div class=\"moments__paragraph\">\n <p>\n {{ subtitle }}\n <span class=\"more-content\">{{ description }}</span>\n </p>\n <p class=\"more-content\">\n {{ ndDescription }}\n </p>\n </div>\n <div class=\"btn__group\">\n @if (buttons) {\n <button class=\"btn btn__secondary--outline btn__moreLess\" aria-label=\"Buttons more\">\n @for (btn of buttons; track $index) {\n <span\n [ngClass]=\"{\n 'btn__moreLess-.more': $even,\n 'btn__moreLess-less': $odd,\n }\"\n >{{ btn.label }}</span\n >\n }\n </button>\n }\n @if (link) {\n <a\n [href]=\"link.url\"\n class=\"btn btn__secondary--outline\"\n puroLinkType\n [linkType]=\"link.linkType\"\n [attr.aria-label]=\"link.label\"\n >\n <span>{{ link.label }}</span>\n </a>\n }\n </div>\n </div>\n</section>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: PuroLinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href", "modalClick"], outputs: ["bookClick", "anchorClicked"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroInfoBigComponent, isStandalone: true, selector: "lib-puro-info-big", inputs: { pretitle: "pretitle", title: "title", subtitle: "subtitle", description: "description", ndDescription: "ndDescription", buttons: "buttons", link: "link", img: "img" }, ngImport: i0, template: "<section class=\"moments moments--withBg\" [ngStyle]=\"{ background: 'url(' + img?.src + ') no-repeat center bottom', backgroundSize: 'contain' }\">\n <div class=\"moments__container\">\n <span class=\"moments__title\">{{ pretitle }}</span>\n <h2 class=\"moments__heading\" [innerHTML]=\"title\"></h2>\n <div class=\"moments__paragraph\">\n <p>\n {{ subtitle }}\n <span class=\"more-content\">{{ description }}</span>\n </p>\n <p class=\"more-content\">\n {{ ndDescription }}\n </p>\n </div>\n <div class=\"btn__group\">\n @if (buttons) {\n <button class=\"btn btn__secondary--outline btn__moreLess\" aria-label=\"Buttons more\">\n @for (btn of buttons; track $index) {\n <span\n [ngClass]=\"{\n 'btn__moreLess-.more': $even,\n 'btn__moreLess-less': $odd,\n }\"\n >{{ btn.label }}</span\n >\n }\n </button>\n }\n @if (link) {\n <a\n [href]=\"link.url\"\n class=\"btn btn__secondary--outline\"\n puroLinkType\n [linkType]=\"link.linkType\"\n [attr.aria-label]=\"link.label\"\n >\n <span>{{ link.label }}</span>\n </a>\n }\n </div>\n </div>\n</section>\n", styles: ["@media (max-width: 768px){.moments.moments--withBg{background-size:cover!important}}@media screen and (min-width: 1366px) and (max-width: 1680px){.moments__heading{width:98.8rem}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: PuroLinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href", "modalClick"], outputs: ["bookClick", "anchorClicked"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9
9
  }
10
10
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroInfoBigComponent, decorators: [{
11
11
  type: Component,
12
- args: [{ selector: 'lib-puro-info-big', standalone: true, imports: [CommonModule, PuroLinkTypeDirective], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section class=\"moments moments--withBg\" [ngStyle]=\"{ background: 'url(' + img?.src + ') no-repeat center bottom' }\">\n <div class=\"moments__container\">\n <span class=\"moments__title\">{{ pretitle }}</span>\n <h2 class=\"moments__heading\" [innerHTML]=\"title\"></h2>\n <div class=\"moments__paragraph\">\n <p>\n {{ subtitle }}\n <span class=\"more-content\">{{ description }}</span>\n </p>\n <p class=\"more-content\">\n {{ ndDescription }}\n </p>\n </div>\n <div class=\"btn__group\">\n @if (buttons) {\n <button class=\"btn btn__secondary--outline btn__moreLess\" aria-label=\"Buttons more\">\n @for (btn of buttons; track $index) {\n <span\n [ngClass]=\"{\n 'btn__moreLess-.more': $even,\n 'btn__moreLess-less': $odd,\n }\"\n >{{ btn.label }}</span\n >\n }\n </button>\n }\n @if (link) {\n <a\n [href]=\"link.url\"\n class=\"btn btn__secondary--outline\"\n puroLinkType\n [linkType]=\"link.linkType\"\n [attr.aria-label]=\"link.label\"\n >\n <span>{{ link.label }}</span>\n </a>\n }\n </div>\n </div>\n</section>\n" }]
12
+ args: [{ selector: 'lib-puro-info-big', standalone: true, imports: [CommonModule, PuroLinkTypeDirective], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section class=\"moments moments--withBg\" [ngStyle]=\"{ background: 'url(' + img?.src + ') no-repeat center bottom', backgroundSize: 'contain' }\">\n <div class=\"moments__container\">\n <span class=\"moments__title\">{{ pretitle }}</span>\n <h2 class=\"moments__heading\" [innerHTML]=\"title\"></h2>\n <div class=\"moments__paragraph\">\n <p>\n {{ subtitle }}\n <span class=\"more-content\">{{ description }}</span>\n </p>\n <p class=\"more-content\">\n {{ ndDescription }}\n </p>\n </div>\n <div class=\"btn__group\">\n @if (buttons) {\n <button class=\"btn btn__secondary--outline btn__moreLess\" aria-label=\"Buttons more\">\n @for (btn of buttons; track $index) {\n <span\n [ngClass]=\"{\n 'btn__moreLess-.more': $even,\n 'btn__moreLess-less': $odd,\n }\"\n >{{ btn.label }}</span\n >\n }\n </button>\n }\n @if (link) {\n <a\n [href]=\"link.url\"\n class=\"btn btn__secondary--outline\"\n puroLinkType\n [linkType]=\"link.linkType\"\n [attr.aria-label]=\"link.label\"\n >\n <span>{{ link.label }}</span>\n </a>\n }\n </div>\n </div>\n</section>\n", styles: ["@media (max-width: 768px){.moments.moments--withBg{background-size:cover!important}}@media screen and (min-width: 1366px) and (max-width: 1680px){.moments__heading{width:98.8rem}}\n"] }]
13
13
  }], propDecorators: { pretitle: [{
14
14
  type: Input
15
15
  }], title: [{
@@ -27,4 +27,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
27
27
  }], img: [{
28
28
  type: Input
29
29
  }] } });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyby1pbmZvLWJpZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wdXJvL3NyYy9saWIvY29tcG9uZW50cy9wdXJvLWluZm8tYmlnL3B1cm8taW5mby1iaWcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1pbmZvLWJpZy9wdXJvLWluZm8tYmlnLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7O0FBV3pELE1BQU0sT0FBTyxvQkFBb0I7K0dBQXBCLG9CQUFvQjttR0FBcEIsb0JBQW9CLCtQQ2JqQyx3bERBeUNBLHlERGpDYyxZQUFZLGtOQUFFLHFCQUFxQjs7NEZBS3BDLG9CQUFvQjtrQkFSaEMsU0FBUzsrQkFDSSxtQkFBbUIsY0FDakIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLHFCQUFxQixDQUFDLG1CQUc3Qix1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUHVyb0xpbmtUeXBlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBQdXJvQnV0dG9uSSwgUHVyb0ltYWdlSSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xpYi1wdXJvLWluZm8tYmlnJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFB1cm9MaW5rVHlwZURpcmVjdGl2ZV0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3B1cm8taW5mby1iaWcuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi9wdXJvLWluZm8tYmlnLmNvbXBvbmVudC5zY3NzJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUHVyb0luZm9CaWdDb21wb25lbnQge1xuICAgIEBJbnB1dCgpIHByZXRpdGxlPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHRpdGxlPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHN1YnRpdGxlPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIG5kRGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgYnV0dG9ucz86IFB1cm9CdXR0b25JW107XG4gICAgQElucHV0KCkgbGluaz86IFB1cm9CdXR0b25JO1xuICAgIEBJbnB1dCgpIGltZz86IFB1cm9JbWFnZUk7XG59XG4iLCI8c2VjdGlvbiBjbGFzcz1cIm1vbWVudHMgbW9tZW50cy0td2l0aEJnXCIgW25nU3R5bGVdPVwieyBiYWNrZ3JvdW5kOiAndXJsKCcgKyBpbWc/LnNyYyArICcpIG5vLXJlcGVhdCBjZW50ZXIgYm90dG9tJyB9XCI+XG4gICAgPGRpdiBjbGFzcz1cIm1vbWVudHNfX2NvbnRhaW5lclwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cIm1vbWVudHNfX3RpdGxlXCI+e3sgcHJldGl0bGUgfX08L3NwYW4+XG4gICAgICAgIDxoMiBjbGFzcz1cIm1vbWVudHNfX2hlYWRpbmdcIiBbaW5uZXJIVE1MXT1cInRpdGxlXCI+PC9oMj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1vbWVudHNfX3BhcmFncmFwaFwiPlxuICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAge3sgc3VidGl0bGUgfX1cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1vcmUtY29udGVudFwiPnt7IGRlc2NyaXB0aW9uIH19PC9zcGFuPlxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPHAgY2xhc3M9XCJtb3JlLWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICB7eyBuZERlc2NyaXB0aW9uIH19XG4gICAgICAgICAgICA8L3A+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYnRuX19ncm91cFwiPlxuICAgICAgICAgICAgQGlmIChidXR0b25zKSB7XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG5fX3NlY29uZGFyeS0tb3V0bGluZSBidG5fX21vcmVMZXNzXCIgYXJpYS1sYWJlbD1cIkJ1dHRvbnMgbW9yZVwiPlxuICAgICAgICAgICAgICAgICAgICBAZm9yIChidG4gb2YgYnV0dG9uczsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2J0bl9fbW9yZUxlc3MtLm1vcmUnOiAkZXZlbixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2J0bl9fbW9yZUxlc3MtbGVzcyc6ICRvZGQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPnt7IGJ0bi5sYWJlbCB9fTwvc3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaWYgKGxpbmspIHtcbiAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICBbaHJlZl09XCJsaW5rLnVybFwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bl9fc2Vjb25kYXJ5LS1vdXRsaW5lXCJcbiAgICAgICAgICAgICAgICAgICAgcHVyb0xpbmtUeXBlXG4gICAgICAgICAgICAgICAgICAgIFtsaW5rVHlwZV09XCJsaW5rLmxpbmtUeXBlXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJsaW5rLmxhYmVsXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IGxpbmsubGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvc2VjdGlvbj5cbiJdfQ==
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyby1pbmZvLWJpZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wdXJvL3NyYy9saWIvY29tcG9uZW50cy9wdXJvLWluZm8tYmlnL3B1cm8taW5mby1iaWcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1pbmZvLWJpZy9wdXJvLWluZm8tYmlnLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7O0FBV3pELE1BQU0sT0FBTyxvQkFBb0I7K0dBQXBCLG9CQUFvQjttR0FBcEIsb0JBQW9CLCtQQ2JqQyxtbkRBeUNBLDhPRGpDYyxZQUFZLGtOQUFFLHFCQUFxQjs7NEZBS3BDLG9CQUFvQjtrQkFSaEMsU0FBUzsrQkFDSSxtQkFBbUIsY0FDakIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLHFCQUFxQixDQUFDLG1CQUc3Qix1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUHVyb0xpbmtUeXBlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBQdXJvQnV0dG9uSSwgUHVyb0ltYWdlSSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xpYi1wdXJvLWluZm8tYmlnJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFB1cm9MaW5rVHlwZURpcmVjdGl2ZV0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3B1cm8taW5mby1iaWcuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi9wdXJvLWluZm8tYmlnLmNvbXBvbmVudC5zY3NzJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUHVyb0luZm9CaWdDb21wb25lbnQge1xuICAgIEBJbnB1dCgpIHByZXRpdGxlPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHRpdGxlPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHN1YnRpdGxlPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIG5kRGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgYnV0dG9ucz86IFB1cm9CdXR0b25JW107XG4gICAgQElucHV0KCkgbGluaz86IFB1cm9CdXR0b25JO1xuICAgIEBJbnB1dCgpIGltZz86IFB1cm9JbWFnZUk7XG59XG4iLCI8c2VjdGlvbiBjbGFzcz1cIm1vbWVudHMgbW9tZW50cy0td2l0aEJnXCIgW25nU3R5bGVdPVwieyBiYWNrZ3JvdW5kOiAndXJsKCcgKyBpbWc/LnNyYyArICcpIG5vLXJlcGVhdCBjZW50ZXIgYm90dG9tJywgYmFja2dyb3VuZFNpemU6ICdjb250YWluJyB9XCI+XG4gICAgPGRpdiBjbGFzcz1cIm1vbWVudHNfX2NvbnRhaW5lclwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cIm1vbWVudHNfX3RpdGxlXCI+e3sgcHJldGl0bGUgfX08L3NwYW4+XG4gICAgICAgIDxoMiBjbGFzcz1cIm1vbWVudHNfX2hlYWRpbmdcIiBbaW5uZXJIVE1MXT1cInRpdGxlXCI+PC9oMj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1vbWVudHNfX3BhcmFncmFwaFwiPlxuICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAge3sgc3VidGl0bGUgfX1cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1vcmUtY29udGVudFwiPnt7IGRlc2NyaXB0aW9uIH19PC9zcGFuPlxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPHAgY2xhc3M9XCJtb3JlLWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICB7eyBuZERlc2NyaXB0aW9uIH19XG4gICAgICAgICAgICA8L3A+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYnRuX19ncm91cFwiPlxuICAgICAgICAgICAgQGlmIChidXR0b25zKSB7XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG5fX3NlY29uZGFyeS0tb3V0bGluZSBidG5fX21vcmVMZXNzXCIgYXJpYS1sYWJlbD1cIkJ1dHRvbnMgbW9yZVwiPlxuICAgICAgICAgICAgICAgICAgICBAZm9yIChidG4gb2YgYnV0dG9uczsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2J0bl9fbW9yZUxlc3MtLm1vcmUnOiAkZXZlbixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2J0bl9fbW9yZUxlc3MtbGVzcyc6ICRvZGQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPnt7IGJ0bi5sYWJlbCB9fTwvc3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaWYgKGxpbmspIHtcbiAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICBbaHJlZl09XCJsaW5rLnVybFwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bl9fc2Vjb25kYXJ5LS1vdXRsaW5lXCJcbiAgICAgICAgICAgICAgICAgICAgcHVyb0xpbmtUeXBlXG4gICAgICAgICAgICAgICAgICAgIFtsaW5rVHlwZV09XCJsaW5rLmxpbmtUeXBlXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJsaW5rLmxhYmVsXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IGxpbmsubGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvc2VjdGlvbj5cbiJdfQ==