ctt-babylon 0.26.0 → 0.26.2

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.
@@ -1,27 +1,42 @@
1
1
  import { DOCUMENT } from '@angular/common';
2
2
  import { Component, EventEmitter, HostListener, Inject, input, Input, Output, output, signal, } from '@angular/core';
3
3
  import { BabylonLinkTypeDirective } from '../../../directives/link-type/link-type.directive';
4
+ import { NavigationEnd } from '@angular/router';
5
+ import { filter } from 'rxjs';
4
6
  import * as i0 from "@angular/core";
7
+ import * as i1 from "@angular/router";
5
8
  export class BabylonBookingBannerComponent {
6
- constructor(renderer, document) {
9
+ constructor(renderer, document, router) {
7
10
  this.renderer = renderer;
8
11
  this.document = document;
12
+ this.router = router;
13
+ this.triggerPoint = 100;
9
14
  this.openEngine = new EventEmitter();
10
15
  this.title = input('Early Booking 2027:');
11
16
  this.description = input('-10% reservando antes del 31 de enero');
12
17
  this.ctaLabel = input('Reservar');
13
18
  this.ctaClick = output();
14
19
  this.isSticky = signal(false);
15
- this.bannerHeight = '0px';
20
+ this.isInitSticky = signal(false);
16
21
  }
17
22
  ngOnInit() {
18
23
  this.renderer.addClass(this.document.body, 'has-promo-banner');
24
+ this.routerSub = this.router.events
25
+ .pipe(filter((event) => event instanceof NavigationEnd))
26
+ .subscribe(() => {
27
+ this.checkStickyState();
28
+ });
29
+ }
30
+ ngAfterViewInit() {
31
+ this.checkStickyState();
19
32
  }
20
33
  ngOnDestroy() {
21
34
  this.renderer.removeClass(this.document.body, 'has-promo-banner');
22
35
  }
23
36
  onWindowScroll() {
24
- if (window.scrollY > 50) {
37
+ if (this.isInitSticky())
38
+ return;
39
+ if (window.scrollY > this.triggerPoint) {
25
40
  this.isSticky.set(true);
26
41
  }
27
42
  else {
@@ -34,25 +49,39 @@ export class BabylonBookingBannerComponent {
34
49
  openEngineModalV2() {
35
50
  this.openEngine.emit();
36
51
  }
37
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BabylonBookingBannerComponent, deps: [{ token: i0.Renderer2 }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component }); }
38
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: BabylonBookingBannerComponent, isStandalone: true, selector: "lib-babylon-booking-banner", inputs: { texts: { classPropertyName: "texts", publicName: "texts", isSignal: false, isRequired: false, transformFunction: null }, buttons: { classPropertyName: "buttons", publicName: "buttons", isSignal: false, isRequired: false, transformFunction: null }, offer: { classPropertyName: "offer", publicName: "offer", isSignal: false, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: true, isRequired: false, transformFunction: null }, ctaLabel: { classPropertyName: "ctaLabel", publicName: "ctaLabel", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { openEngine: "openEngine", ctaClick: "ctaClick" }, host: { listeners: { "window:scroll": "onWindowScroll()" } }, ngImport: i0, template: "<aside\n class=\"promo-banner\"\n [class.promo-banner--sticky]=\"isSticky()\"\n role=\"complementary\"\n aria-label=\"Promoci\u00F3n especial\"\n>\n <div class=\"promo-banner__content\">\n <div class=\"promo-banner__info\">\n <span class=\"promo-banner__icon\" aria-hidden=\"true\">\n <svg\n viewBox=\"0 0 24 24\"\n width=\"28\"\n height=\"28\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"1.8\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n >\n <circle cx=\"12\" cy=\"12\" r=\"9\"></circle>\n <polyline points=\"12 7 12 12 15 14\"></polyline>\n <path d=\"M5 3 L3 5\"></path>\n <path d=\"M19 3 L21 5\"></path>\n </svg>\n </span>\n <div class=\"promo-banner__text\">\n @if (offer?.texts?.title || texts?.title) {\n <strong class=\"promo-banner__title\">{{\n offer?.texts?.title || texts?.title\n }}</strong>\n }\n @if (offer?.texts?.description || texts?.description) {\n <div\n class=\"promo-banner__desc\"\n [innerHTML]=\"\n offer?.texts?.description || texts?.description\n \"\n ></div>\n }\n </div>\n </div>\n\n @if (offer?.buttons?.[0] || offer?.button; as btn) {\n <a\n type=\"button\"\n class=\"promo-banner__cta\"\n [linkType]=\"btn.linkType\"\n [href]=\"btn.url\"\n [attr.aria-label]=\"btn.label\"\n >\n {{ btn.label }}\n </a>\n } @else if (buttons?.[0]) {\n <button\n type=\"button\"\n class=\"promo-banner__cta\"\n [attr.aria-label]=\"buttons?.[0]?.label\"\n (click)=\"openEngineModalV2()\"\n >\n {{ buttons?.[0]?.label }}\n </button>\n }\n </div>\n</aside>\n", styles: [".promo-banner{width:100%;background:#fffffff2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-bottom:1px solid rgba(0,0,0,.08);box-shadow:0 4px 12px #0000000f;padding:8px 16px;position:absolute;top:0;left:0;z-index:10;transition:transform .3s ease}:host-context(.header_sticky) .promo-banner{top:80px;display:block}@media (min-width: 1680px){:host-context(.header_sticky) .promo-banner{top:90px}}@media (max-width: 1024px){:host-context(.header_sticky) .promo-banner{top:85px}}@media (max-width: 768px){:host-context(.header_sticky) .promo-banner{top:75px}}@media (max-width: 540px){:host-context(.header_sticky) .promo-banner{top:60px}}:host-context(body:not(.header_sticky)) .promo-banner{opacity:0;pointer-events:none}.promo-banner--sticky{position:fixed;top:80px;z-index:9;animation:slideDown .3s ease-out forwards}@media (min-width: 1680px){.promo-banner--sticky{top:90px}}@media (max-width: 1024px){.promo-banner--sticky{top:85px}}@media (max-width: 768px){.promo-banner--sticky{top:75px}}@media (max-width: 540px){.promo-banner--sticky{top:60px}}.promo-banner__content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:24px}@media (max-width: 768px){.promo-banner__content{flex-direction:column;justify-content:center;gap:8px;padding:4px 0;width:100%}}.promo-banner__info{display:inline-flex;align-items:center;gap:12px}@media (max-width: 768px){.promo-banner__info{width:100%;align-items:flex-start}}.promo-banner__icon{display:flex;align-items:center;justify-content:center;color:var(--cl_title);flex-shrink:0}.promo-banner__icon svg{display:block}.promo-banner__text{font-size:14px;line-height:1.3;color:var(--cl_text);display:flex;align-items:center;gap:6px;flex-wrap:wrap}@media (max-width: 768px){.promo-banner__text{font-size:12px;flex-direction:column;align-items:flex-start;gap:1px;flex:1;text-align:left}}.promo-banner__title{font-weight:700;color:var(--cl_title);font-size:1.6rem}.promo-banner__desc{font-weight:400;color:var(--cl_text);font-size:1.6rem}@media (max-width: 768px){.promo-banner__desc{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:normal}}.promo-banner__cta{background-color:var(--cl_corp);color:var(--cl_text-light);border:none;border-radius:20px;padding:8px 24px;font-size:1.6rem;font-weight:600;letter-spacing:.3px;cursor:pointer;transition:background-color .2s ease,transform .1s ease;white-space:nowrap;flex-shrink:0}.promo-banner__cta:hover{background-color:#1e3f63}.promo-banner__cta:active{transform:scale(.98)}@media (max-width: 768px){.promo-banner__cta{padding:6px 16px;font-size:12px}}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}\n"], dependencies: [{ kind: "directive", type: BabylonLinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href", "modalClick", "clickPopup", "disablePointerNone"], outputs: ["anchorClicked"] }] }); }
52
+ checkStickyState() {
53
+ setTimeout(() => {
54
+ if (this.document.body.classList.contains('header_sticky')) {
55
+ this.isInitSticky.set(true);
56
+ this.isSticky.set(true);
57
+ }
58
+ else {
59
+ this.isInitSticky.set(false);
60
+ this.isSticky.set(window.scrollY > this.triggerPoint);
61
+ }
62
+ }, 50);
63
+ }
64
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BabylonBookingBannerComponent, deps: [{ token: i0.Renderer2 }, { token: DOCUMENT }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Component }); }
65
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: BabylonBookingBannerComponent, isStandalone: true, selector: "lib-babylon-booking-banner", inputs: { texts: { classPropertyName: "texts", publicName: "texts", isSignal: false, isRequired: false, transformFunction: null }, buttons: { classPropertyName: "buttons", publicName: "buttons", isSignal: false, isRequired: false, transformFunction: null }, offer: { classPropertyName: "offer", publicName: "offer", isSignal: false, isRequired: false, transformFunction: null }, triggerPoint: { classPropertyName: "triggerPoint", publicName: "triggerPoint", isSignal: false, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: true, isRequired: false, transformFunction: null }, ctaLabel: { classPropertyName: "ctaLabel", publicName: "ctaLabel", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { openEngine: "openEngine", ctaClick: "ctaClick" }, host: { listeners: { "window:scroll": "onWindowScroll()" } }, ngImport: i0, template: "<aside\n class=\"promo-banner\"\n [class.promo-banner--sticky]=\"isSticky()\"\n [class.promo-banner--no-anim]=\"isInitSticky()\"\n role=\"complementary\"\n aria-label=\"Promoci\u00F3n especial\"\n>\n <div class=\"promo-banner__content\">\n <div class=\"promo-banner__info\">\n <span class=\"promo-banner__icon\" aria-hidden=\"true\">\n <svg\n viewBox=\"0 0 24 24\"\n width=\"28\"\n height=\"28\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"1.8\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n >\n <circle cx=\"12\" cy=\"12\" r=\"9\"></circle>\n <polyline points=\"12 7 12 12 15 14\"></polyline>\n <path d=\"M5 3 L3 5\"></path>\n <path d=\"M19 3 L21 5\"></path>\n </svg>\n </span>\n <div class=\"promo-banner__text\">\n @if (offer?.texts?.title || texts?.title) {\n <strong class=\"promo-banner__title\">{{\n offer?.texts?.title || texts?.title\n }}</strong>\n }\n @if (offer?.texts?.description || texts?.description) {\n <div\n class=\"promo-banner__desc\"\n [innerHTML]=\"\n offer?.texts?.description || texts?.description\n \"\n ></div>\n }\n </div>\n </div>\n\n @if (offer?.buttons?.[0] || offer?.button; as btn) {\n <a\n type=\"button\"\n class=\"promo-banner__cta\"\n [linkType]=\"btn.linkType\"\n [href]=\"btn.url\"\n [attr.aria-label]=\"btn.label\"\n >\n {{ btn.label }}\n </a>\n } @else if (buttons?.[0]) {\n <button\n type=\"button\"\n class=\"promo-banner__cta\"\n [attr.aria-label]=\"buttons?.[0]?.label\"\n (click)=\"openEngineModalV2()\"\n >\n {{ buttons?.[0]?.label }}\n </button>\n }\n </div>\n</aside>\n", styles: [".promo-banner{width:100%;background:#fffffff2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-bottom:1px solid rgba(0,0,0,.08);box-shadow:0 4px 12px #0000000f;padding:8px 16px;position:absolute;top:0;left:0;z-index:10;transition:transform .3s ease}:host-context(.header_sticky) .promo-banner{top:80px;display:block}@media (min-width: 1680px){:host-context(.header_sticky) .promo-banner{top:90px}}@media (max-width: 1024px){:host-context(.header_sticky) .promo-banner{top:85px}}@media (max-width: 768px){:host-context(.header_sticky) .promo-banner{top:75px}}@media (max-width: 540px){:host-context(.header_sticky) .promo-banner{top:60px}}:host-context(body:not(.header_sticky)) .promo-banner{opacity:0;pointer-events:none}.promo-banner--sticky{position:fixed;top:80px;z-index:9;animation:slideDown .3s ease-out forwards}@media (min-width: 1680px){.promo-banner--sticky{top:90px}}@media (max-width: 1024px){.promo-banner--sticky{top:85px}}@media (max-width: 768px){.promo-banner--sticky{top:75px}}@media (max-width: 540px){.promo-banner--sticky{top:60px}}.promo-banner--no-anim{animation:none!important}.promo-banner__content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:24px}@media (max-width: 768px){.promo-banner__content{flex-direction:column;justify-content:center;gap:8px;padding:4px 0;width:100%}}.promo-banner__info{display:inline-flex;align-items:center;gap:12px}@media (max-width: 768px){.promo-banner__info{width:100%;align-items:flex-start}}.promo-banner__icon{display:flex;align-items:center;justify-content:center;color:var(--cl_title);flex-shrink:0}.promo-banner__icon svg{display:block}.promo-banner__text{font-size:14px;line-height:1.3;color:var(--cl_text);display:flex;align-items:center;gap:6px;flex-wrap:wrap}@media (max-width: 768px){.promo-banner__text{font-size:12px;flex-direction:column;align-items:flex-start;gap:1px;flex:1;text-align:left}}.promo-banner__title{font-weight:700;color:var(--cl_title);font-size:1.6rem}.promo-banner__desc{font-weight:400;color:var(--cl_text);font-size:1.6rem}@media (max-width: 768px){.promo-banner__desc{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:normal}}.promo-banner__cta{background-color:var(--cl_corp);color:var(--cl_text-light);border:none;border-radius:20px;padding:8px 24px;font-size:1.6rem;font-weight:600;letter-spacing:.3px;cursor:pointer;transition:background-color .2s ease,transform .1s ease;white-space:nowrap;flex-shrink:0}.promo-banner__cta:hover{background-color:#1e3f63}.promo-banner__cta:active{transform:scale(.98)}@media (max-width: 768px){.promo-banner__cta{padding:6px 16px;font-size:12px}}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}\n"], dependencies: [{ kind: "directive", type: BabylonLinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href", "modalClick", "clickPopup", "disablePointerNone"], outputs: ["anchorClicked"] }] }); }
39
66
  }
40
67
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BabylonBookingBannerComponent, decorators: [{
41
68
  type: Component,
42
- args: [{ selector: 'lib-babylon-booking-banner', standalone: true, imports: [BabylonLinkTypeDirective], template: "<aside\n class=\"promo-banner\"\n [class.promo-banner--sticky]=\"isSticky()\"\n role=\"complementary\"\n aria-label=\"Promoci\u00F3n especial\"\n>\n <div class=\"promo-banner__content\">\n <div class=\"promo-banner__info\">\n <span class=\"promo-banner__icon\" aria-hidden=\"true\">\n <svg\n viewBox=\"0 0 24 24\"\n width=\"28\"\n height=\"28\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"1.8\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n >\n <circle cx=\"12\" cy=\"12\" r=\"9\"></circle>\n <polyline points=\"12 7 12 12 15 14\"></polyline>\n <path d=\"M5 3 L3 5\"></path>\n <path d=\"M19 3 L21 5\"></path>\n </svg>\n </span>\n <div class=\"promo-banner__text\">\n @if (offer?.texts?.title || texts?.title) {\n <strong class=\"promo-banner__title\">{{\n offer?.texts?.title || texts?.title\n }}</strong>\n }\n @if (offer?.texts?.description || texts?.description) {\n <div\n class=\"promo-banner__desc\"\n [innerHTML]=\"\n offer?.texts?.description || texts?.description\n \"\n ></div>\n }\n </div>\n </div>\n\n @if (offer?.buttons?.[0] || offer?.button; as btn) {\n <a\n type=\"button\"\n class=\"promo-banner__cta\"\n [linkType]=\"btn.linkType\"\n [href]=\"btn.url\"\n [attr.aria-label]=\"btn.label\"\n >\n {{ btn.label }}\n </a>\n } @else if (buttons?.[0]) {\n <button\n type=\"button\"\n class=\"promo-banner__cta\"\n [attr.aria-label]=\"buttons?.[0]?.label\"\n (click)=\"openEngineModalV2()\"\n >\n {{ buttons?.[0]?.label }}\n </button>\n }\n </div>\n</aside>\n", styles: [".promo-banner{width:100%;background:#fffffff2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-bottom:1px solid rgba(0,0,0,.08);box-shadow:0 4px 12px #0000000f;padding:8px 16px;position:absolute;top:0;left:0;z-index:10;transition:transform .3s ease}:host-context(.header_sticky) .promo-banner{top:80px;display:block}@media (min-width: 1680px){:host-context(.header_sticky) .promo-banner{top:90px}}@media (max-width: 1024px){:host-context(.header_sticky) .promo-banner{top:85px}}@media (max-width: 768px){:host-context(.header_sticky) .promo-banner{top:75px}}@media (max-width: 540px){:host-context(.header_sticky) .promo-banner{top:60px}}:host-context(body:not(.header_sticky)) .promo-banner{opacity:0;pointer-events:none}.promo-banner--sticky{position:fixed;top:80px;z-index:9;animation:slideDown .3s ease-out forwards}@media (min-width: 1680px){.promo-banner--sticky{top:90px}}@media (max-width: 1024px){.promo-banner--sticky{top:85px}}@media (max-width: 768px){.promo-banner--sticky{top:75px}}@media (max-width: 540px){.promo-banner--sticky{top:60px}}.promo-banner__content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:24px}@media (max-width: 768px){.promo-banner__content{flex-direction:column;justify-content:center;gap:8px;padding:4px 0;width:100%}}.promo-banner__info{display:inline-flex;align-items:center;gap:12px}@media (max-width: 768px){.promo-banner__info{width:100%;align-items:flex-start}}.promo-banner__icon{display:flex;align-items:center;justify-content:center;color:var(--cl_title);flex-shrink:0}.promo-banner__icon svg{display:block}.promo-banner__text{font-size:14px;line-height:1.3;color:var(--cl_text);display:flex;align-items:center;gap:6px;flex-wrap:wrap}@media (max-width: 768px){.promo-banner__text{font-size:12px;flex-direction:column;align-items:flex-start;gap:1px;flex:1;text-align:left}}.promo-banner__title{font-weight:700;color:var(--cl_title);font-size:1.6rem}.promo-banner__desc{font-weight:400;color:var(--cl_text);font-size:1.6rem}@media (max-width: 768px){.promo-banner__desc{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:normal}}.promo-banner__cta{background-color:var(--cl_corp);color:var(--cl_text-light);border:none;border-radius:20px;padding:8px 24px;font-size:1.6rem;font-weight:600;letter-spacing:.3px;cursor:pointer;transition:background-color .2s ease,transform .1s ease;white-space:nowrap;flex-shrink:0}.promo-banner__cta:hover{background-color:#1e3f63}.promo-banner__cta:active{transform:scale(.98)}@media (max-width: 768px){.promo-banner__cta{padding:6px 16px;font-size:12px}}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}\n"] }]
69
+ args: [{ selector: 'lib-babylon-booking-banner', standalone: true, imports: [BabylonLinkTypeDirective], template: "<aside\n class=\"promo-banner\"\n [class.promo-banner--sticky]=\"isSticky()\"\n [class.promo-banner--no-anim]=\"isInitSticky()\"\n role=\"complementary\"\n aria-label=\"Promoci\u00F3n especial\"\n>\n <div class=\"promo-banner__content\">\n <div class=\"promo-banner__info\">\n <span class=\"promo-banner__icon\" aria-hidden=\"true\">\n <svg\n viewBox=\"0 0 24 24\"\n width=\"28\"\n height=\"28\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"1.8\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n >\n <circle cx=\"12\" cy=\"12\" r=\"9\"></circle>\n <polyline points=\"12 7 12 12 15 14\"></polyline>\n <path d=\"M5 3 L3 5\"></path>\n <path d=\"M19 3 L21 5\"></path>\n </svg>\n </span>\n <div class=\"promo-banner__text\">\n @if (offer?.texts?.title || texts?.title) {\n <strong class=\"promo-banner__title\">{{\n offer?.texts?.title || texts?.title\n }}</strong>\n }\n @if (offer?.texts?.description || texts?.description) {\n <div\n class=\"promo-banner__desc\"\n [innerHTML]=\"\n offer?.texts?.description || texts?.description\n \"\n ></div>\n }\n </div>\n </div>\n\n @if (offer?.buttons?.[0] || offer?.button; as btn) {\n <a\n type=\"button\"\n class=\"promo-banner__cta\"\n [linkType]=\"btn.linkType\"\n [href]=\"btn.url\"\n [attr.aria-label]=\"btn.label\"\n >\n {{ btn.label }}\n </a>\n } @else if (buttons?.[0]) {\n <button\n type=\"button\"\n class=\"promo-banner__cta\"\n [attr.aria-label]=\"buttons?.[0]?.label\"\n (click)=\"openEngineModalV2()\"\n >\n {{ buttons?.[0]?.label }}\n </button>\n }\n </div>\n</aside>\n", styles: [".promo-banner{width:100%;background:#fffffff2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-bottom:1px solid rgba(0,0,0,.08);box-shadow:0 4px 12px #0000000f;padding:8px 16px;position:absolute;top:0;left:0;z-index:10;transition:transform .3s ease}:host-context(.header_sticky) .promo-banner{top:80px;display:block}@media (min-width: 1680px){:host-context(.header_sticky) .promo-banner{top:90px}}@media (max-width: 1024px){:host-context(.header_sticky) .promo-banner{top:85px}}@media (max-width: 768px){:host-context(.header_sticky) .promo-banner{top:75px}}@media (max-width: 540px){:host-context(.header_sticky) .promo-banner{top:60px}}:host-context(body:not(.header_sticky)) .promo-banner{opacity:0;pointer-events:none}.promo-banner--sticky{position:fixed;top:80px;z-index:9;animation:slideDown .3s ease-out forwards}@media (min-width: 1680px){.promo-banner--sticky{top:90px}}@media (max-width: 1024px){.promo-banner--sticky{top:85px}}@media (max-width: 768px){.promo-banner--sticky{top:75px}}@media (max-width: 540px){.promo-banner--sticky{top:60px}}.promo-banner--no-anim{animation:none!important}.promo-banner__content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:24px}@media (max-width: 768px){.promo-banner__content{flex-direction:column;justify-content:center;gap:8px;padding:4px 0;width:100%}}.promo-banner__info{display:inline-flex;align-items:center;gap:12px}@media (max-width: 768px){.promo-banner__info{width:100%;align-items:flex-start}}.promo-banner__icon{display:flex;align-items:center;justify-content:center;color:var(--cl_title);flex-shrink:0}.promo-banner__icon svg{display:block}.promo-banner__text{font-size:14px;line-height:1.3;color:var(--cl_text);display:flex;align-items:center;gap:6px;flex-wrap:wrap}@media (max-width: 768px){.promo-banner__text{font-size:12px;flex-direction:column;align-items:flex-start;gap:1px;flex:1;text-align:left}}.promo-banner__title{font-weight:700;color:var(--cl_title);font-size:1.6rem}.promo-banner__desc{font-weight:400;color:var(--cl_text);font-size:1.6rem}@media (max-width: 768px){.promo-banner__desc{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:normal}}.promo-banner__cta{background-color:var(--cl_corp);color:var(--cl_text-light);border:none;border-radius:20px;padding:8px 24px;font-size:1.6rem;font-weight:600;letter-spacing:.3px;cursor:pointer;transition:background-color .2s ease,transform .1s ease;white-space:nowrap;flex-shrink:0}.promo-banner__cta:hover{background-color:#1e3f63}.promo-banner__cta:active{transform:scale(.98)}@media (max-width: 768px){.promo-banner__cta{padding:6px 16px;font-size:12px}}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}\n"] }]
43
70
  }], ctorParameters: () => [{ type: i0.Renderer2 }, { type: Document, decorators: [{
44
71
  type: Inject,
45
72
  args: [DOCUMENT]
46
- }] }], propDecorators: { texts: [{
73
+ }] }, { type: i1.Router }], propDecorators: { texts: [{
47
74
  type: Input
48
75
  }], buttons: [{
49
76
  type: Input
50
77
  }], offer: [{
51
78
  type: Input
79
+ }], triggerPoint: [{
80
+ type: Input
52
81
  }], openEngine: [{
53
82
  type: Output
54
83
  }], onWindowScroll: [{
55
84
  type: HostListener,
56
85
  args: ['window:scroll', []]
57
86
  }] } });
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFieWxvbi1ib29raW5nLWJhbm5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYWJ5bG9uL3NyYy9saWIvY29tcG9uZW50cy9jb3JlL2JhYnlsb24tYm9va2luZy1iYW5uZXIvYmFieWxvbi1ib29raW5nLWJhbm5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYWJ5bG9uL3NyYy9saWIvY29tcG9uZW50cy9jb3JlL2JhYnlsb24tYm9va2luZy1iYW5uZXIvYmFieWxvbi1ib29raW5nLWJhbm5lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUNILFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsS0FBSyxFQUdMLE1BQU0sRUFDTixNQUFNLEVBRU4sTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG1EQUFtRCxDQUFDOztBQWM3RixNQUFNLE9BQU8sNkJBQTZCO0lBa0J0QyxZQUNZLFFBQW1CLEVBQ0QsUUFBa0I7UUFEcEMsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNELGFBQVEsR0FBUixRQUFRLENBQVU7UUFmdEMsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFakMsVUFBSyxHQUFHLEtBQUssQ0FBUyxxQkFBcUIsQ0FBQyxDQUFDO1FBQzdDLGdCQUFXLEdBQUcsS0FBSyxDQUN4Qix1Q0FBdUMsQ0FDMUMsQ0FBQztRQUNPLGFBQVEsR0FBRyxLQUFLLENBQVMsVUFBVSxDQUFDLENBQUM7UUFDckMsYUFBUSxHQUFHLE1BQU0sRUFBUSxDQUFDO1FBRW5DLGFBQVEsR0FBRyxNQUFNLENBQVUsS0FBSyxDQUFDLENBQUM7UUFFakIsaUJBQVksR0FBRyxLQUFLLENBQUM7SUFLbkMsQ0FBQztJQUVKLFFBQVE7UUFDSixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBR0QsY0FBYztRQUNWLElBQUksTUFBTSxDQUFDLE9BQU8sR0FBRyxFQUFFLEVBQUU7WUFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDM0I7YUFBTTtZQUNILElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzVCO0lBQ0wsQ0FBQztJQUVELFNBQVM7UUFDTCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxpQkFBaUI7UUFDYixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzNCLENBQUM7K0dBOUNRLDZCQUE2QiwyQ0FvQjFCLFFBQVE7bUdBcEJYLDZCQUE2QixpOUJDOUIxQyxnekVBZ0VBLGd2RkR0Q2Msd0JBQXdCOzs0RkFJekIsNkJBQTZCO2tCQVB6QyxTQUFTOytCQUNJLDRCQUE0QixjQUMxQixJQUFJLFdBQ1AsQ0FBQyx3QkFBd0IsQ0FBQzs7MEJBd0I5QixNQUFNOzJCQUFDLFFBQVE7eUNBbkJYLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUVJLFVBQVU7c0JBQW5CLE1BQU07Z0JBMkJQLGNBQWM7c0JBRGIsWUFBWTt1QkFBQyxlQUFlLEVBQUUsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgSW5qZWN0LFxuICAgIGlucHV0LFxuICAgIElucHV0LFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIG91dHB1dCxcbiAgICBSZW5kZXJlcjIsXG4gICAgc2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQmFieWxvbkxpbmtUeXBlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlcy9saW5rLXR5cGUvbGluay10eXBlLmRpcmVjdGl2ZSc7XG5pbXBvcnQge1xuICAgIEJhYnlsb25CdXR0b25JLFxuICAgIEJhYnlsb25PZmZlckl0ZW1JLFxuICAgIEJhYnlsb25UZXh0SW5mb0ksXG59IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xpYi1iYWJ5bG9uLWJvb2tpbmctYmFubmVyJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtCYWJ5bG9uTGlua1R5cGVEaXJlY3RpdmVdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9iYWJ5bG9uLWJvb2tpbmctYmFubmVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vYmFieWxvbi1ib29raW5nLWJhbm5lci5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIEJhYnlsb25Cb29raW5nQmFubmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIEBJbnB1dCgpIHRleHRzPzogQmFieWxvblRleHRJbmZvSTtcbiAgICBASW5wdXQoKSBidXR0b25zPzogQmFieWxvbkJ1dHRvbklbXTtcbiAgICBASW5wdXQoKSBvZmZlcj86IEJhYnlsb25PZmZlckl0ZW1JO1xuXG4gICAgQE91dHB1dCgpIG9wZW5FbmdpbmUgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICByZWFkb25seSB0aXRsZSA9IGlucHV0PHN0cmluZz4oJ0Vhcmx5IEJvb2tpbmcgMjAyNzonKTtcbiAgICByZWFkb25seSBkZXNjcmlwdGlvbiA9IGlucHV0PHN0cmluZz4oXG4gICAgICAgICctMTAlIHJlc2VydmFuZG8gYW50ZXMgZGVsIDMxIGRlIGVuZXJvJ1xuICAgICk7XG4gICAgcmVhZG9ubHkgY3RhTGFiZWwgPSBpbnB1dDxzdHJpbmc+KCdSZXNlcnZhcicpO1xuICAgIHJlYWRvbmx5IGN0YUNsaWNrID0gb3V0cHV0PHZvaWQ+KCk7XG5cbiAgICBpc1N0aWNreSA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGJhbm5lckhlaWdodCA9ICcwcHgnO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICAgICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBkb2N1bWVudDogRG9jdW1lbnRcbiAgICApIHt9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmRvY3VtZW50LmJvZHksICdoYXMtcHJvbW8tYmFubmVyJyk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5kb2N1bWVudC5ib2R5LCAnaGFzLXByb21vLWJhbm5lcicpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpzY3JvbGwnLCBbXSlcbiAgICBvbldpbmRvd1Njcm9sbCgpIHtcbiAgICAgICAgaWYgKHdpbmRvdy5zY3JvbGxZID4gNTApIHtcbiAgICAgICAgICAgIHRoaXMuaXNTdGlja3kuc2V0KHRydWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5pc1N0aWNreS5zZXQoZmFsc2UpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25SZXNlcnZlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmN0YUNsaWNrLmVtaXQoKTtcbiAgICB9XG5cbiAgICBvcGVuRW5naW5lTW9kYWxWMigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vcGVuRW5naW5lLmVtaXQoKTtcbiAgICB9XG59XG4iLCI8YXNpZGVcbiAgICBjbGFzcz1cInByb21vLWJhbm5lclwiXG4gICAgW2NsYXNzLnByb21vLWJhbm5lci0tc3RpY2t5XT1cImlzU3RpY2t5KClcIlxuICAgIHJvbGU9XCJjb21wbGVtZW50YXJ5XCJcbiAgICBhcmlhLWxhYmVsPVwiUHJvbW9jacOzbiBlc3BlY2lhbFwiXG4+XG4gICAgPGRpdiBjbGFzcz1cInByb21vLWJhbm5lcl9fY29udGVudFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicHJvbW8tYmFubmVyX19pbmZvXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInByb21vLWJhbm5lcl9faWNvblwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuICAgICAgICAgICAgICAgIDxzdmdcbiAgICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMjhcIlxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIyOFwiXG4gICAgICAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS44XCJcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxjaXJjbGUgY3g9XCIxMlwiIGN5PVwiMTJcIiByPVwiOVwiPjwvY2lyY2xlPlxuICAgICAgICAgICAgICAgICAgICA8cG9seWxpbmUgcG9pbnRzPVwiMTIgNyAxMiAxMiAxNSAxNFwiPjwvcG9seWxpbmU+XG4gICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNSAzIEwzIDVcIj48L3BhdGg+XG4gICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTkgMyBMMjEgNVwiPjwvcGF0aD5cbiAgICAgICAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwcm9tby1iYW5uZXJfX3RleHRcIj5cbiAgICAgICAgICAgICAgICBAaWYgKG9mZmVyPy50ZXh0cz8udGl0bGUgfHwgdGV4dHM/LnRpdGxlKSB7XG4gICAgICAgICAgICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJwcm9tby1iYW5uZXJfX3RpdGxlXCI+e3tcbiAgICAgICAgICAgICAgICAgICAgICAgIG9mZmVyPy50ZXh0cz8udGl0bGUgfHwgdGV4dHM/LnRpdGxlXG4gICAgICAgICAgICAgICAgICAgIH19PC9zdHJvbmc+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpZiAob2ZmZXI/LnRleHRzPy5kZXNjcmlwdGlvbiB8fCB0ZXh0cz8uZGVzY3JpcHRpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwcm9tby1iYW5uZXJfX2Rlc2NcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2lubmVySFRNTF09XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvZmZlcj8udGV4dHM/LmRlc2NyaXB0aW9uIHx8IHRleHRzPy5kZXNjcmlwdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgPjwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICBAaWYgKG9mZmVyPy5idXR0b25zPy5bMF0gfHwgb2ZmZXI/LmJ1dHRvbjsgYXMgYnRuKSB7XG4gICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwicHJvbW8tYmFubmVyX19jdGFcIlxuICAgICAgICAgICAgICAgIFtsaW5rVHlwZV09XCJidG4ubGlua1R5cGVcIlxuICAgICAgICAgICAgICAgIFtocmVmXT1cImJ0bi51cmxcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYnRuLmxhYmVsXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBidG4ubGFiZWwgfX1cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgfSBAZWxzZSBpZiAoYnV0dG9ucz8uWzBdKSB7XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJwcm9tby1iYW5uZXJfX2N0YVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJidXR0b25zPy5bMF0/LmxhYmVsXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib3BlbkVuZ2luZU1vZGFsVjIoKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgYnV0dG9ucz8uWzBdPy5sYWJlbCB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbjwvYXNpZGU+XG4iXX0=
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFieWxvbi1ib29raW5nLWJhbm5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYWJ5bG9uL3NyYy9saWIvY29tcG9uZW50cy9jb3JlL2JhYnlsb24tYm9va2luZy1iYW5uZXIvYmFieWxvbi1ib29raW5nLWJhbm5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYWJ5bG9uL3NyYy9saWIvY29tcG9uZW50cy9jb3JlL2JhYnlsb24tYm9va2luZy1iYW5uZXIvYmFieWxvbi1ib29raW5nLWJhbm5lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUVILFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsS0FBSyxFQUdMLE1BQU0sRUFDTixNQUFNLEVBRU4sTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBTTdGLE9BQU8sRUFBRSxhQUFhLEVBQVUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsTUFBTSxFQUFnQixNQUFNLE1BQU0sQ0FBQzs7O0FBUzVDLE1BQU0sT0FBTyw2QkFBNkI7SUF1QnRDLFlBQ1ksUUFBbUIsRUFDRCxRQUFrQixFQUNwQyxNQUFjO1FBRmQsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNELGFBQVEsR0FBUixRQUFRLENBQVU7UUFDcEMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQW5CakIsaUJBQVksR0FBVyxHQUFHLENBQUM7UUFFMUIsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFakMsVUFBSyxHQUFHLEtBQUssQ0FBUyxxQkFBcUIsQ0FBQyxDQUFDO1FB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fSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIEluamVjdCxcbiAgICBpbnB1dCxcbiAgICBJbnB1dCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBvdXRwdXQsXG4gICAgUmVuZGVyZXIyLFxuICAgIHNpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEJhYnlsb25MaW5rVHlwZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZXMvbGluay10eXBlL2xpbmstdHlwZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtcbiAgICBCYWJ5bG9uQnV0dG9uSSxcbiAgICBCYWJ5bG9uT2ZmZXJJdGVtSSxcbiAgICBCYWJ5bG9uVGV4dEluZm9JLFxufSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IE5hdmlnYXRpb25FbmQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBmaWx0ZXIsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xpYi1iYWJ5bG9uLWJvb2tpbmctYmFubmVyJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtCYWJ5bG9uTGlua1R5cGVEaXJlY3RpdmVdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9iYWJ5bG9uLWJvb2tpbmctYmFubmVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vYmFieWxvbi1ib29raW5nLWJhbm5lci5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIEJhYnlsb25Cb29raW5nQmFubmVyQ29tcG9uZW50XG4gICAgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdFxue1xuICAgIEBJbnB1dCgpIHRleHRzPzogQmFieWxvblRleHRJbmZvSTtcbiAgICBASW5wdXQoKSBidXR0b25zPzogQmFieWxvbkJ1dHRvbklbXTtcbiAgICBASW5wdXQoKSBvZmZlcj86IEJhYnlsb25PZmZlckl0ZW1JO1xuXG4gICAgQElucHV0KCkgdHJpZ2dlclBvaW50OiBudW1iZXIgPSAxMDA7XG5cbiAgICBAT3V0cHV0KCkgb3BlbkVuZ2luZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIHJlYWRvbmx5IHRpdGxlID0gaW5wdXQ8c3RyaW5nPignRWFybHkgQm9va2luZyAyMDI3OicpO1xuICAgIHJlYWRvbmx5IGRlc2NyaXB0aW9uID0gaW5wdXQ8c3RyaW5nPihcbiAgICAgICAgJy0xMCUgcmVzZXJ2YW5kbyBhbnRlcyBkZWwgMzEgZGUgZW5lcm8nXG4gICAgKTtcbiAgICByZWFkb25seSBjdGFMYWJlbCA9IGlucHV0PHN0cmluZz4oJ1Jlc2VydmFyJyk7XG4gICAgcmVhZG9ubHkgY3RhQ2xpY2sgPSBvdXRwdXQ8dm9pZD4oKTtcblxuICAgIGlzU3RpY2t5ID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKTtcbiAgICBpc0luaXRTdGlja3kgPSBzaWduYWw8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgcHJpdmF0ZSByb3V0ZXJTdWIhOiBTdWJzY3JpcHRpb247XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvY3VtZW50OiBEb2N1bWVudCxcbiAgICAgICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlclxuICAgICkge31cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuZG9jdW1lbnQuYm9keSwgJ2hhcy1wcm9tby1iYW5uZXInKTtcbiAgICAgICAgdGhpcy5yb3V0ZXJTdWIgPSB0aGlzLnJvdXRlci5ldmVudHNcbiAgICAgICAgICAgIC5waXBlKGZpbHRlcigoZXZlbnQpID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNoZWNrU3RpY2t5U3RhdGUoKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jaGVja1N0aWNreVN0YXRlKCk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5kb2N1bWVudC5ib2R5LCAnaGFzLXByb21vLWJhbm5lcicpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpzY3JvbGwnLCBbXSlcbiAgICBvbldpbmRvd1Njcm9sbCgpIHtcbiAgICAgICAgaWYgKHRoaXMuaXNJbml0U3RpY2t5KCkpIHJldHVybjtcbiAgICAgICAgaWYgKHdpbmRvdy5zY3JvbGxZID4gdGhpcy50cmlnZ2VyUG9pbnQpIHtcbiAgICAgICAgICAgIHRoaXMuaXNTdGlja3kuc2V0KHRydWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5pc1N0aWNreS5zZXQoZmFsc2UpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25SZXNlcnZlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmN0YUNsaWNrLmVtaXQoKTtcbiAgICB9XG5cbiAgICBvcGVuRW5naW5lTW9kYWxWMigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vcGVuRW5naW5lLmVtaXQoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNoZWNrU3RpY2t5U3RhdGUoKTogdm9pZCB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuY29udGFpbnMoJ2hlYWRlcl9zdGlja3knKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuaXNJbml0U3RpY2t5LnNldCh0cnVlKTtcbiAgICAgICAgICAgICAgICB0aGlzLmlzU3RpY2t5LnNldCh0cnVlKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5pc0luaXRTdGlja3kuc2V0KGZhbHNlKTtcbiAgICAgICAgICAgICAgICB0aGlzLmlzU3RpY2t5LnNldCh3aW5kb3cuc2Nyb2xsWSA+IHRoaXMudHJpZ2dlclBvaW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSwgNTApO1xuICAgIH1cbn1cbiIsIjxhc2lkZVxuICAgIGNsYXNzPVwicHJvbW8tYmFubmVyXCJcbiAgICBbY2xhc3MucHJvbW8tYmFubmVyLS1zdGlja3ldPVwiaXNTdGlja3koKVwiXG4gICAgW2NsYXNzLnByb21vLWJhbm5lci0tbm8tYW5pbV09XCJpc0luaXRTdGlja3koKVwiXG4gICAgcm9sZT1cImNvbXBsZW1lbnRhcnlcIlxuICAgIGFyaWEtbGFiZWw9XCJQcm9tb2Npw7NuIGVzcGVjaWFsXCJcbj5cbiAgICA8ZGl2IGNsYXNzPVwicHJvbW8tYmFubmVyX19jb250ZW50XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwcm9tby1iYW5uZXJfX2luZm9cIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicHJvbW8tYmFubmVyX19pY29uXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+XG4gICAgICAgICAgICAgICAgPHN2Z1xuICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIyOFwiXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjI4XCJcbiAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCJjdXJyZW50Q29sb3JcIlxuICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjhcIlxuICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGNpcmNsZSBjeD1cIjEyXCIgY3k9XCIxMlwiIHI9XCI5XCI+PC9jaXJjbGU+XG4gICAgICAgICAgICAgICAgICAgIDxwb2x5bGluZSBwb2ludHM9XCIxMiA3IDEyIDEyIDE1IDE0XCI+PC9wb2x5bGluZT5cbiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk01IDMgTDMgNVwiPjwvcGF0aD5cbiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xOSAzIEwyMSA1XCI+PC9wYXRoPlxuICAgICAgICAgICAgICAgIDwvc3ZnPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInByb21vLWJhbm5lcl9fdGV4dFwiPlxuICAgICAgICAgICAgICAgIEBpZiAob2ZmZXI/LnRleHRzPy50aXRsZSB8fCB0ZXh0cz8udGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgPHN0cm9uZyBjbGFzcz1cInByb21vLWJhbm5lcl9fdGl0bGVcIj57e1xuICAgICAgICAgICAgICAgICAgICAgICAgb2ZmZXI/LnRleHRzPy50aXRsZSB8fCB0ZXh0cz8udGl0bGVcbiAgICAgICAgICAgICAgICAgICAgfX08L3N0cm9uZz5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmIChvZmZlcj8udGV4dHM/LmRlc2NyaXB0aW9uIHx8IHRleHRzPy5kZXNjcmlwdGlvbikge1xuICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInByb21vLWJhbm5lcl9fZGVzY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaW5uZXJIVE1MXT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9mZmVyPy50ZXh0cz8uZGVzY3JpcHRpb24gfHwgdGV4dHM/LmRlc2NyaXB0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICA+PC9kaXY+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIEBpZiAob2ZmZXI/LmJ1dHRvbnM/LlswXSB8fCBvZmZlcj8uYnV0dG9uOyBhcyBidG4pIHtcbiAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJwcm9tby1iYW5uZXJfX2N0YVwiXG4gICAgICAgICAgICAgICAgW2xpbmtUeXBlXT1cImJ0bi5saW5rVHlwZVwiXG4gICAgICAgICAgICAgICAgW2hyZWZdPVwiYnRuLnVybFwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJidG4ubGFiZWxcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IGJ0bi5sYWJlbCB9fVxuICAgICAgICAgICAgPC9hPlxuICAgICAgICB9IEBlbHNlIGlmIChidXR0b25zPy5bMF0pIHtcbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInByb21vLWJhbm5lcl9fY3RhXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImJ1dHRvbnM/LlswXT8ubGFiZWxcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvcGVuRW5naW5lTW9kYWxWMigpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBidXR0b25zPy5bMF0/LmxhYmVsIH19XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgfVxuICAgIDwvZGl2PlxuPC9hc2lkZT5cbiJdfQ==
@@ -169,6 +169,7 @@ export class BabylonEngineMewsComponent {
169
169
  api.setLanguageCode(mewsOptions.language);
170
170
  }
171
171
  // Abrir el motor de reservas modal
172
+ api.showRooms(configId);
172
173
  api.open();
173
174
  });
174
175
  }
@@ -251,4 +252,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
251
252
  }], close: [{
252
253
  type: Output
253
254
  }] } });
254
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFieWxvbi1lbmdpbmUtbWV3cy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYWJ5bG9uL3NyYy9saWIvY29tcG9uZW50cy9jb3JlL2JhYnlsb24tZW5naW5lLW1ld3MvYmFieWxvbi1lbmdpbmUtbWV3cy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYWJ5bG9uL3NyYy9saWIvY29tcG9uZW50cy9jb3JlL2JhYnlsb24tZW5naW5lLW1ld3MvYmFieWxvbi1lbmdpbmUtbWV3cy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEUsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUVMLE1BQU0sRUFDTixXQUFXLEVBQ1gsU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxXQUFXLEVBQ1gsU0FBUyxFQUNULFdBQVcsRUFDWCxtQkFBbUIsRUFDbkIsVUFBVSxHQUNiLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFZLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQVksY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFJNUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTNDLE9BQU8sRUFDSCwyQkFBMkIsR0FFOUIsTUFBTSx3REFBd0QsQ0FBQzs7Ozs7Ozs7QUFvQmhFLE1BQU0sT0FBTywwQkFBMEI7SUFoQnZDO1FBOEJhLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFPaEIsVUFB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Q0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUVJLEtBQUs7c0JBQWQsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSwgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFBMQVRGT1JNX0lELFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEZvcm1Db250cm9sLFxuICAgIEZvcm1Hcm91cCxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIFZhbGlkYXRvcnMsXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENhbGVuZGFyLCBDYWxlbmRhck1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvY2FsZW5kYXInO1xuaW1wb3J0IHsgRGlhbG9nTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9kaWFsb2cnO1xuaW1wb3J0IHsgRHJvcGRvd24sIERyb3Bkb3duTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9kcm9wZG93bic7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBCYWJ5bG9uQnV0dG9uSSB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMvYmFieWxvbi1idXR0b24uaW50ZXJmYWNlJztcbmltcG9ydCB7IEJhYnlsb25JbnB1dEkgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzL2JhYnlsb24taW5wdXQuaW50ZXJmYWNlJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHtcbiAgICBCYWJ5bG9uR3Vlc3RzUG9wdXBDb21wb25lbnQsXG4gICAgZ3Vlc3RzVmFsdWUsXG59IGZyb20gJy4uL2JhYnlsb24tZ3Vlc3RzLXBvcHVwL2JhYnlsb24tZ3Vlc3RzLXBvcHVwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYWJ5bG9uR3Vlc3RzUG9wdXBJIH0gZnJvbSAnLi4vYmFieWxvbi1ndWVzdHMtcG9wdXAvYmFieWxvbi1ndWVzdHMtcG9wdXAuaW50ZXJmYWNlJztcblxuZGVjbGFyZSBjb25zdCBNZXdzOiBhbnk7XG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xpYi1iYWJ5bG9uLWVuZ2luZS1tZXdzJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgICAgIENhbGVuZGFyTW9kdWxlLFxuICAgICAgICBCYWJ5bG9uR3Vlc3RzUG9wdXBDb21wb25lbnQsXG4gICAgICAgIERpYWxvZ01vZHVsZSxcbiAgICAgICAgRHJvcGRvd25Nb2R1bGUsXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICBdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9iYWJ5bG9uLWVuZ2luZS1tZXdzLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vYmFieWxvbi1lbmdpbmUtbWV3cy5jb21wb25lbnQuc2NzcycsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEJhYnlsb25FbmdpbmVNZXdzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBAVmlld0NoaWxkKCdkYXRlcGlja2VyJykgZGF0ZXBpY2tlciE6IENhbGVuZGFyO1xuICAgIEBWaWV3Q2hpbGQoJ2hvdGVsc0Ryb3Bkb3duJywgeyBzdGF0aWM6IGZhbHNlIH0pIGhvdGVsc0Ryb3Bkb3duITogRHJvcGRvd247XG5cbiAgICBASW5wdXQoKSBtb2RhbD86IGJvb2xlYW47XG4gICAgQElucHV0KCkgZGF0ZXBpY2tlckRhdGE/OiBCYWJ5bG9uSW5wdXRJO1xuICAgIEBJbnB1dCgpIGd1ZXN0c0lucHV0PzogQmFieWxvbklucHV0STtcbiAgICBASW5wdXQoKSBwcm9tb0lucHV0PzogQmFieWxvbklucHV0STtcbiAgICBASW5wdXQoKSBndWVzdHM/OiBCYWJ5bG9uR3Vlc3RzUG9wdXBJO1xuICAgIEBJbnB1dCgpIGJ1dHRvbj86IEJhYnlsb25CdXR0b25JO1xuICAgIEBJbnB1dCgpIHRpdGxlPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHN1YnRpdGxlPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGRlZmF1bHRDb25maWd1cmF0aW9uSWQ/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgb25seUFkdWx0cz86IGJvb2xlYW47XG4gICAgQElucHV0KCkgc2hvd0FnZXMgPSBmYWxzZTtcbiAgICBASW5wdXQoKSBkZWZhdWx0QnV0dG9uPzogQmFieWxvbkJ1dHRvbkk7XG4gICAgQElucHV0KCkgaG90ZWxzSW5wdXQ/OiBCYWJ5bG9uSW5wdXRJO1xuICAgIEBJbnB1dCgpIGhvdGVscz86IE1ld3NIb3RlbHNEcm9wZG93bkk7XG4gICAgQElucHV0KCkgaG90ZWxzUGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgZGVmYXVsdFByb21vQ29kZT86IHN0cmluZztcblxuICAgIEBPdXRwdXQoKSBjbG9zZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gICAgaG90ZWxzVmFsdWU6IE1ld3NIb3RlbE9wdGlvbiB8IG51bGwgPSBudWxsO1xuICAgIGRhdGVwaWNrZXJWYWx1ZSA9ICcnO1xuICAgIG1pbkRhdGU6IERhdGUgPSBuZXcgRGF0ZSgpO1xuICAgIGhvdGVsRXJyb3I6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBwcml2YXRlIGRvY3VtZW50ID0gaW5qZWN0KERPQ1VNRU5UKTtcblxuICAgIGZvcm0gPSBuZXcgRm9ybUdyb3VwKHtcbiAgICAgICAgaG90ZWxzOiBuZXcgRm9ybUNvbnRyb2w8TWV3c0hvdGVsT3B0aW9uIHwgdW5kZWZpbmVkPih1bmRlZmluZWQsIFtcbiAgICAgICAgICAgIFZhbGlkYXRvcnMucmVxdWlyZWQsXG4gICAgICAgIF0pLFxuICAgICAgICBkYXRlczogbmV3IEZvcm1Db250cm9sKHRoaXMuZGF0ZXBpY2tlclZhbHVlKSxcbiAgICAgICAgZ3Vlc3RzOiBuZXcgRm9ybUNvbnRyb2woJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXSksXG4gICAgICAgIHByb21vOiBuZXcgRm9ybUNvbnRyb2woJycpLFxuICAgIH0pO1xuXG4gICAgZ3Vlc3RzVmFsdWUgPSAnMDInO1xuICAgIGd1ZXN0c1ZhbHVlU2VwYXJhdGVzID0ge1xuICAgICAgICBhZHVsdHM6IDIsXG4gICAgICAgIGp1bmlvcnM6IDAsXG4gICAgICAgIGtpZHM6IDAsXG4gICAgICAgIGluZmFudHM6IDAsXG4gICAgfTtcbiAgICBzaG93aW5nR3Vlc3RzID0gZmFsc2U7XG5cbiAgICBwcml2YXRlIHBsYXRmb3JtSWQgPSBpbmplY3QoUExBVEZPUk1fSUQpO1xuICAgIHByaXZhdGUgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcblxuICAgIHByaXZhdGUgZ2V0TGFuZ3VhZ2VGcm9tVXJsKCk6IHN0cmluZyB7XG4gICAgICAgIGlmICghaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkgcmV0dXJuICdlcy1FUyc7XG5cbiAgICAgICAgY29uc3QgcGF0aG5hbWUgPSB0aGlzLmRvY3VtZW50LmxvY2F0aW9uLnBhdGhuYW1lO1xuICAgICAgICBjb25zdCBsYW5nQ29kZSA9IHBhdGhuYW1lLnNwbGl0KCcvJylbMV0/LnRvTG93ZXJDYXNlKCk7XG5cbiAgICAgICAgY29uc3QgbGFuZ3VhZ2VNYXA6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7XG4gICAgICAgICAgICBlbjogJ2VuLVVTJyxcbiAgICAgICAgICAgIGVzOiAnZXMtRVMnLFxuICAgICAgICAgICAgcHQ6ICdwdC1QVCcsXG4gICAgICAgICAgICBkZTogJ2RlLURFJyxcbiAgICAgICAgICAgIGZyOiAnZnItRlInLFxuICAgICAgICAgICAgaXQ6ICdpdC1JVCcsXG4gICAgICAgIH07XG5cbiAgICAgICAgcmV0dXJuIGxhbmd1YWdlTWFwW2xhbmdDb2RlXSB8fCAnZXMtRVMnO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1pbkRhdGUuc2V0SG91cnMoMCwgMCwgMCwgMCk7XG4gICAgICAgIHRoaXMuZ3Vlc3RzVmFsdWUgPSAnMDInO1xuICAgICAgICB0aGlzLmZvcm0uZ2V0KCdndWVzdHMnKT8uc2V0VmFsdWUodGhpcy5ndWVzdHNWYWx1ZSk7XG5cbiAgICAgICAgaWYgKHRoaXMuZGVmYXVsdFByb21vQ29kZSkge1xuICAgICAgICAgICAgdGhpcy5mb3JtLmdldCgncHJvbW8nKT8uc2V0VmFsdWUodGhpcy5kZWZhdWx0UHJvbW9Db2RlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMubG9hZEVuZ2luZURhdGEoKTtcbiAgICB9XG4gICAgdG9nZ2xlSG90ZWxzRHJvcGRvd24oKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmhvdGVsc0Ryb3Bkb3duKSB7XG4gICAgICAgICAgICB0aGlzLmhvdGVsc0Ryb3Bkb3duLnNob3coKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGhhbmRsZURyb3Bkb3duQ2hhbmdlKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ob3RlbHNWYWx1ZSA9IGV2ZW50LnZhbHVlO1xuICAgIH1cblxuICAgIGhhbmRsZURpc2FibGVkQ2xpY2soZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGlmICh0aGlzLmZvcm0uZ2V0KCdob3RlbHMnKT8uaW52YWxpZCkge1xuICAgICAgICAgICAgdGhpcy5ob3RlbEVycm9yID0gdHJ1ZTtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gKHRoaXMuaG90ZWxFcnJvciA9IGZhbHNlKSwgNTAwKTtcbiAgICAgICAgICAgIHRoaXMuaG90ZWxzRHJvcGRvd24uc2hvdygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdG9nZ2xlU2hvd2luZ0d1ZXN0cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zaG93aW5nR3Vlc3RzID0gIXRoaXMuc2hvd2luZ0d1ZXN0cztcbiAgICB9XG5cbiAgICBndWVzdHNDaGFuZ2UoZGF0YTogZ3Vlc3RzVmFsdWUpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ndWVzdHNWYWx1ZVNlcGFyYXRlcy5hZHVsdHMgPSBOdW1iZXIoZGF0YS5hZHVsdHNWYWx1ZT8uY29kZSkgfHwgMTtcbiAgICAgICAgdGhpcy5ndWVzdHNWYWx1ZVNlcGFyYXRlcy5qdW5pb3JzID1cbiAgICAgICAgICAgIE51bWJlcihkYXRhLmp1bmlvcnNWYWx1ZT8uY29kZSkgfHwgMDtcbiAgICAgICAgdGhpcy5ndWVzdHNWYWx1ZVNlcGFyYXRlcy5raWRzID0gTnVtYmVyKGRhdGEua2lkc1ZhbHVlPy5jb2RlKSB8fCAwO1xuICAgICAgICB0aGlzLmd1ZXN0c1ZhbHVlU2VwYXJhdGVzLmluZmFudHMgPVxuICAgICAgICAgICAgTnVtYmVyKGRhdGEuaW5mYW50c1ZhbHVlPy5jb2RlKSB8fCAwO1xuXG4gICAgICAgIGNvbnN0IHRvdGFsR3Vlc3RzID1cbiAgICAgICAgICAgIHRoaXMuZ3Vlc3RzVmFsdWVTZXBhcmF0ZXMuYWR1bHRzICtcbiAgICAgICAgICAgIHRoaXMuZ3Vlc3RzVmFsdWVTZXBhcmF0ZXMuanVuaW9ycyArXG4gICAgICAgICAgICB0aGlzLmd1ZXN0c1ZhbHVlU2VwYXJhdGVzLmtpZHMgK1xuICAgICAgICAgICAgdGhpcy5ndWVzdHNWYWx1ZVNlcGFyYXRlcy5pbmZhbnRzO1xuXG4gICAgICAgIHRoaXMuZ3Vlc3RzVmFsdWUgPVxuICAgICAgICAgICAgdG90YWxHdWVzdHMgPCAxMCA/ICcwJyArIHRvdGFsR3Vlc3RzIDogdG90YWxHdWVzdHMudG9TdHJpbmcoKTtcbiAgICAgICAgdGhpcy5mb3JtLmdldCgnZ3Vlc3RzJyk/LnNldFZhbHVlKHRoaXMuZ3Vlc3RzVmFsdWUpO1xuICAgICAgICB0aGlzLnRvZ2dsZVNob3dpbmdHdWVzdHMoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBJbnZvY2FjacOzbiBhIGxhIEFQSSBkZSBNZXdzIERpc3RyaWJ1dG9yIGFsIGhhY2VyIGNsaWMgZW4gQnVzY2FyXG4gICAgICovXG4gICAgb3Blbk1ld3NFbmdpbmUoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgICAgaWYgKHRoaXMuZm9ybS5pbnZhbGlkKSB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZURpc2FibGVkQ2xpY2soZXZlbnQpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgIWlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkgfHxcbiAgICAgICAgICAgIHR5cGVvZiBNZXdzID09PSAndW5kZWZpbmVkJ1xuICAgICAgICApIHtcbiAgICAgICAgICAgIGNvbnNvbGUud2FybignRWwgc2NyaXB0IGRlIE1ld3Mgbm8gZXN0w6EgZGlzcG9uaWJsZS4nKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGZvcm1WYWx1ZXMgPSB0aGlzLmZvcm0udmFsdWU7XG4gICAgICAgIGNvbnN0IGNvbmZpZ0lkID1cbiAgICAgICAgICAgIGZvcm1WYWx1ZXMuaG90ZWxzPy5jb25maWd1cmF0aW9uSWQgfHxcbiAgICAgICAgICAgIHRoaXMuZGVmYXVsdENvbmZpZ3VyYXRpb25JZCB8fFxuICAgICAgICAgICAgJyc7XG5cbiAgICAgICAgY29uc3QgaXNVcmwgPSAoc3RyaW5nOiBzdHJpbmcpOiBib29sZWFuID0+IHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgc3RyaW5nLnN0YXJ0c1dpdGgoJ2h0dHA6Ly8nKSB8fFxuICAgICAgICAgICAgICAgICAgICBzdHJpbmcuc3RhcnRzV2l0aCgnaHR0cHM6Ly8nKVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG5cbiAgICAgICAgaWYgKGlzVXJsKGNvbmZpZ0lkKSkge1xuICAgICAgICAgICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgICAgICAgICAgICB3aW5kb3cub3Blbihjb25maWdJZCwgJ19ibGFuaycpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgIWlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkgfHxcbiAgICAgICAgICAgIHR5cGVvZiBNZXdzID09PSAndW5kZWZpbmVkJ1xuICAgICAgICApIHtcbiAgICAgICAgICAgIGNvbnNvbGUud2FybignRWwgc2NyaXB0IGRlIE1ld3Mgbm8gZXN0w6EgZGlzcG9uaWJsZS4nKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG1ld3NPcHRpb25zOiBhbnkgPSB7XG4gICAgICAgICAgICBjb25maWd1cmF0aW9uSWRzOiBbY29uZmlnSWRdLFxuICAgICAgICAgICAgbGFuZ3VhZ2U6IHRoaXMuZ2V0TGFuZ3VhZ2VGcm9tVXJsKCksXG4gICAgICAgIH07XG5cbiAgICAgICAgaWYgKGZvcm1WYWx1ZXMucHJvbW8pIHtcbiAgICAgICAgICAgIG1ld3NPcHRpb25zLm1ld3NWb3VjaGVyQ29kZSA9IGZvcm1WYWx1ZXMucHJvbW87XG4gICAgICAgIH1cblxuICAgICAgICBNZXdzLkRpc3RyaWJ1dG9yKG1ld3NPcHRpb25zLCAoYXBpOiBhbnkpID0+IHtcbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICBBcnJheS5pc0FycmF5KGZvcm1WYWx1ZXMuZGF0ZXMpICYmXG4gICAgICAgICAgICAgICAgZm9ybVZhbHVlcy5kYXRlcy5sZW5ndGggPT09IDJcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIGNvbnN0IFtzdGFydERhdGUsIGVuZERhdGVdID0gZm9ybVZhbHVlcy5kYXRlcztcbiAgICAgICAgICAgICAgICBpZiAoc3RhcnREYXRlKSBhcGkuc2V0U3RhcnREYXRlKG5ldyBEYXRlKHN0YXJ0RGF0ZSkpO1xuICAgICAgICAgICAgICAgIGlmIChlbmREYXRlKSBhcGkuc2V0RW5kRGF0ZShuZXcgRGF0ZShlbmREYXRlKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICh0aGlzLmd1ZXN0c1ZhbHVlU2VwYXJhdGVzKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZ3Vlc3RzVmFsdWVTZXBhcmF0ZXMuYWR1bHRzKSB7XG4gICAgICAgICAgICAgICAgICAgIGFwaS5zZXRBZHVsdENvdW50KHRoaXMuZ3Vlc3RzVmFsdWVTZXBhcmF0ZXMuYWR1bHRzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZ3Vlc3RzVmFsdWVTZXBhcmF0ZXMua2lkcykge1xuICAgICAgICAgICAgICAgICAgICBhcGkuc2V0Q2hpbGRDb3VudCh0aGlzLmd1ZXN0c1ZhbHVlU2VwYXJhdGVzLmtpZHMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG1ld3NPcHRpb25zLm1ld3NWb3VjaGVyQ29kZSkge1xuICAgICAgICAgICAgICAgIGFwaS5zZXRWb3VjaGVyQ29kZShtZXdzT3B0aW9ucy5tZXdzVm91Y2hlckNvZGUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAobWV3c09wdGlvbnMubGFuZ3VhZ2UpIHtcbiAgICAgICAgICAgICAgICBhcGkuc2V0TGFuZ3VhZ2VDb2RlKG1ld3NPcHRpb25zLmxhbmd1YWdlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQWJyaXIgZWwgbW90b3IgZGUgcmVzZXJ2YXMgbW9kYWxcbiAgICAgICAgICAgIGFwaS5vcGVuKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldCBkZWZhdWx0R3Vlc3RzVmFsdWUoKTogZ3Vlc3RzVmFsdWUge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgYWR1bHRzVmFsdWU6IHtcbiAgICAgICAgICAgICAgICBjb2RlOiB0aGlzLmd1ZXN0c1ZhbHVlU2VwYXJhdGVzLmFkdWx0cyxcbiAgICAgICAgICAgICAgICBuYW1lOiBTdHJpbmcodGhpcy5ndWVzdHNWYWx1ZVNlcGFyYXRlcy5hZHVsdHMpLnBhZFN0YXJ0KDIsICcwJyksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAga2lkc1ZhbHVlOiB7XG4gICAgICAgICAgICAgICAgY29kZTogdGhpcy5ndWVzdHNWYWx1ZVNlcGFyYXRlcy5raWRzLFxuICAgICAgICAgICAgICAgIG5hbWU6IFN0cmluZyh0aGlzLmd1ZXN0c1ZhbHVlU2VwYXJhdGVzLmtpZHMpLnBhZFN0YXJ0KDIsICcwJyksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAganVuaW9yc1ZhbHVlOiB7XG4gICAgICAgICAgICAgICAgY29kZTogdGhpcy5ndWVzdHNWYWx1ZVNlcGFyYXRlcy5qdW5pb3JzLFxuICAgICAgICAgICAgICAgIG5hbWU6IFN0cmluZyh0aGlzLmd1ZXN0c1ZhbHVlU2VwYXJhdGVzLmp1bmlvcnMpLnBhZFN0YXJ0KFxuICAgICAgICAgICAgICAgICAgICAyLFxuICAgICAgICAgICAgICAgICAgICAnMCdcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGluZmFudHNWYWx1ZToge1xuICAgICAgICAgICAgICAgIGNvZGU6IHRoaXMuZ3Vlc3RzVmFsdWVTZXBhcmF0ZXMuaW5mYW50cyxcbiAgICAgICAgICAgICAgICBuYW1lOiBTdHJpbmcodGhpcy5ndWVzdHNWYWx1ZVNlcGFyYXRlcy5pbmZhbnRzKS5wYWRTdGFydChcbiAgICAgICAgICAgICAgICAgICAgMixcbiAgICAgICAgICAgICAgICAgICAgJzAnXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBsb2FkRW5naW5lRGF0YSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCFpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSByZXR1cm47XG4gICAgfVxufVxuZXhwb3J0IGludGVyZmFjZSBNZXdzSG90ZWxPcHRpb24ge1xuICAgIG5hbWU/OiBzdHJpbmc7XG4gICAgY29uZmlndXJhdGlvbklkPzogc3RyaW5nO1xuICAgIGlkPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1ld3NIb3RlbHNEcm9wZG93bkkge1xuICAgIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICAgIG9wdGlvbnM/OiBNZXdzSG90ZWxPcHRpb25bXTtcbiAgICB0aXRsZT86IHN0cmluZztcbiAgICBzbWFsbFRpdGxlPzogc3RyaW5nO1xuICAgIGVycm9yPzogc3RyaW5nO1xufVxuIiwiPCEtLURlc2t0b3AgRW5naW5lIE1ld3MtLT5cbjxkaXYgY2xhc3M9XCJiYWJ5bG9uX19lbmdpbmUgYmdfd2hpdGVcIiBbbmdDbGFzc109XCJ7IGVuZ2luZV9fY2FkZW5hOiBob3RlbHMgfVwiPlxuICAgIEBpZiAoZGVmYXVsdEJ1dHRvbikge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiYnRuLWRlZmF1bHQtY29udGFpbmVyXCI+XG4gICAgICAgICAgICA8YnV0dG9uIFtuYW1lXT1cImRlZmF1bHRCdXR0b24ubGFiZWwgfHwgJydcIiBjbGFzcz1cImJ0bi1jYWxsXCI+XG4gICAgICAgICAgICAgICAge3sgZGVmYXVsdEJ1dHRvbi5sYWJlbCB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgIH1cbiAgICA8Zm9ybVxuICAgICAgICBjbGFzcz1cImJhYnlsb25fX2VuZ2luZV9fZm9ybSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCJcbiAgICAgICAgW2Zvcm1Hcm91cF09XCJmb3JtXCJcbiAgICA+XG4gICAgICAgIEBpZiAoXG4gICAgICAgICAgICBob3RlbHNJbnB1dCAmJiBob3RlbHMgJiYgaG90ZWxzLm9wdGlvbnMgJiYgaG90ZWxzLm9wdGlvbnMubGVuZ3RoID4gMVxuICAgICAgICApIHtcbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cImJhYnlsb25fX2VuZ2luZV9faW5wdXQtLXdyYXBwZXIgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBob3RlbHNcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxwLWRyb3Bkb3duXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYmFieWxvbl9fZW5naW5lX19pbnB1dFwiXG4gICAgICAgICAgICAgICAgICAgIFtvcHRpb25zXT1cImhvdGVscy5vcHRpb25zXCJcbiAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiaG90ZWxzXCJcbiAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cImhvdGVsc1BsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgb3B0aW9uTGFiZWw9XCJuYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgKG9uQ2hhbmdlKT1cImhhbmRsZURyb3Bkb3duQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAjaG90ZWxzRHJvcGRvd25cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPC9wLWRyb3Bkb3duPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYmFieWxvbi1hcnJvdy1ib3R0b21cIj48L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImJhYnlsb25fX2VuZ2luZV9fZGF0ZXBpY2tlci0td3JhcHBlciBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPHAtY2FsZW5kYXJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImJhYnlsb25fX2VuZ2luZV9fZGF0ZXBpY2tlclwiXG4gICAgICAgICAgICAgICAgW3Nob3dPdGhlck1vbnRoc109XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgZGF0ZUZvcm1hdD1cImRkLW1tLXl5XCJcbiAgICAgICAgICAgICAgICBzZWxlY3Rpb25Nb2RlPVwicmFuZ2VcIlxuICAgICAgICAgICAgICAgIFtudW1iZXJPZk1vbnRoc109XCIyXCJcbiAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiZGF0ZXBpY2tlckRhdGE/LnBsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJkYXRlc1wiXG4gICAgICAgICAgICAgICAgW21pbkRhdGVdPVwibWluRGF0ZVwiXG4gICAgICAgICAgICAgICAgI2RhdGVwaWNrZXJcbiAgICAgICAgICAgICAgICBbcmVhZG9ubHlJbnB1dF09XCJ0cnVlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaGVhZGVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYWxlbmRhci1oZWFkZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG5fcHJpbWFyeSBidG4tLWxpZ2h0IGJhYnlsb24tcGx1c1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJjbG9zZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImRhdGVwaWNrZXIub3ZlcmxheVZpc2libGUgPSBmYWxzZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+PC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICA8L3AtY2FsZW5kYXI+XG5cbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJiYWJ5bG9uX19lbmdpbmVfX2RhdGVwaWNrZXItLWljb24gYmFieWxvbi1hcnJvdy1ib3R0b21cIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJkYXRlcGlja2VyLnRvZ2dsZSgpXCJcbiAgICAgICAgICAgID48L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwiYmFieWxvbl9fZW5naW5lX19pbnB1dC0td3JhcHBlciBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCJcbiAgICAgICAgICAgIChjbGljayk9XCJ0b2dnbGVTaG93aW5nR3Vlc3RzKClcIlxuICAgICAgICA+XG4gICAgICAgICAgICBAaWYgKGd1ZXN0c0lucHV0Py5wbGFjZWhvbGRlcikge1xuICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZ3Vlc3QtaW5mb1wiXG4gICAgICAgICAgICAgICAgICAgIFtpbm5lckhUTUxdPVwiZ3Vlc3RzSW5wdXQ/LnBsYWNlaG9sZGVyICsgJzogICdcIlxuICAgICAgICAgICAgICAgID48L3NwYW4+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICBjbGFzcz1cImJhYnlsb25fX2VuZ2luZV9faW5wdXQgbm8tY2FyZXRcIlxuICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiZ3Vlc3RzSW5wdXQ/LnBsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJndWVzdHNcIlxuICAgICAgICAgICAgICAgIHJlYWRvbmx5XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJiYWJ5bG9uLWFycm93LWJvdHRvbVwiPjwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPHAtZGlhbG9nIGNsYXNzPVwiYmFieWxvbl9fZW5naW5lX19kaWFsb2dcIiBbKHZpc2libGUpXT1cInNob3dpbmdHdWVzdHNcIj5cbiAgICAgICAgICAgIDxsaWItYmFieWxvbi1ndWVzdHMtcG9wdXBcbiAgICAgICAgICAgICAgICBbb25seUFkdWx0c109XCJvbmx5QWR1bHRzXCJcbiAgICAgICAgICAgICAgICBbc2hvd0FnZXNdPVwic2hvd0FnZXNcIlxuICAgICAgICAgICAgICAgIFtkZWZhdWx0VmFsdWVdPVwiZGVmYXVsdEd1ZXN0c1ZhbHVlXCJcbiAgICAgICAgICAgICAgICBbYWR1bHRzRHJvcGRvd25dPVwiZ3Vlc3RzPy5hZHVsdHNEcm9wZG93blwiXG4gICAgICAgICAgICAgICAgW2FnZXNEcm9wZG93bl09XCJndWVzdHM/LmFnZXNEcm9wZG93blwiXG4gICAgICAgICAgICAgICAgW2FnZXNMYWJlbF09XCJndWVzdHM/LmFnZXNMYWJlbFwiXG4gICAgICAgICAgICAgICAgW2JhYmllc0Ryb3Bkb3duXT1cImd1ZXN0cz8uYmFiaWVzRHJvcGRvd25cIlxuICAgICAgICAgICAgICAgIFtraWRzRHJvcGRvd25dPVwiZ3Vlc3RzPy5raWRzRHJvcGRvd25cIlxuICAgICAgICAgICAgICAgIFtqdW5pb3JzRHJvcGRvd25dPVwiZ3Vlc3RzPy5qdW5pb3JzRHJvcGRvd25cIlxuICAgICAgICAgICAgICAgIFtidG5dPVwiZ3Vlc3RzPy5idG5cIlxuICAgICAgICAgICAgICAgICNndWVzdHBpY2tlclxuICAgICAgICAgICAgICAgIChhcHBseSk9XCJndWVzdHNDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8L2xpYi1iYWJ5bG9uLWd1ZXN0cy1wb3B1cD5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3Vlc3RzLWhlYWRlclwiPlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG5fcHJpbWFyeSBidG4tLWxpZ2h0IGJhYnlsb24tcGx1c1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBpZD1cImNsb3NlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZVNob3dpbmdHdWVzdHMoKVwiXG4gICAgICAgICAgICAgICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvcC1kaWFsb2c+XG5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJiYWJ5bG9uX19lbmdpbmVfX2lucHV0LS13cmFwcGVyIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgcHJvbW8tY29kZVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYmFieWxvbl9fZW5naW5lX19pbnB1dFwiXG4gICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJwcm9tb0lucHV0Py5wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwicHJvbW9cIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYmFieWxvbi10YWdcIj48L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICBAaWYgKGJ1dHRvbikge1xuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYnV0dG9uLmxhYmVsXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG5fY2FsbFwiXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICAgICAnYnRuLWRpc2FibGVkJzogZm9ybS5pbnZhbGlkLFxuICAgICAgICAgICAgICAgICAgICAnc2hha2UtYW5pbWF0aW9uJzogaG90ZWxFcnJvcixcbiAgICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgICBpZD1cImJ0bi1zdWJtaXRcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvcGVuTWV3c0VuZ2luZSgkZXZlbnQpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBidXR0b24ubGFiZWwgfX1cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICB9XG4gICAgPC9mb3JtPlxuPC9kaXY+XG4iXX0=
255
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFieWxvbi1lbmdpbmUtbWV3cy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYWJ5bG9uL3NyYy9saWIvY29tcG9uZW50cy9jb3JlL2JhYnlsb24tZW5naW5lLW1ld3MvYmFieWxvbi1lbmdpbmUtbWV3cy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYWJ5bG9uL3NyYy9saWIvY29tcG9uZW50cy9jb3JlL2JhYnlsb24tZW5naW5lLW1ld3MvYmFieWxvbi1lbmdpbmUtbWV3cy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEUsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUVMLE1BQU0sRUFDTixXQUFXLEVBQ1gsU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxXQUFXLEVBQ1gsU0FBUyxFQUNULFdBQVcsRUFDWCxtQkFBbUIsRUFDbkIsVUFBVSxHQUNiLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFZLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQVksY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFJNUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTNDLE9BQU8sRUFDSCwyQkFBMkIsR0FFOUIsTUFBTSx3REFBd0QsQ0FBQzs7Ozs7Ozs7QUFvQmhFLE1BQU0sT0FBTywwQkFBMEI7SUFoQnZDO1FBOEJhLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFPaEIsVUFB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QVU7c0JBQWxCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBRUksS0FBSztzQkFBZCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9uSW5pdCxcbiAgICBPdXRwdXQsXG4gICAgUExBVEZPUk1fSUQsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgRm9ybUNvbnRyb2wsXG4gICAgRm9ybUdyb3VwLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgVmFsaWRhdG9ycyxcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ2FsZW5kYXIsIENhbGVuZGFyTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9jYWxlbmRhcic7XG5pbXBvcnQgeyBEaWFsb2dNb2R1bGUgfSBmcm9tICdwcmltZW5nL2RpYWxvZyc7XG5pbXBvcnQgeyBEcm9wZG93biwgRHJvcGRvd25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL2Ryb3Bkb3duJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEJhYnlsb25CdXR0b25JIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcy9iYWJ5bG9uLWJ1dHRvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQmFieWxvbklucHV0SSB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMvYmFieWxvbi1pbnB1dC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQge1xuICAgIEJhYnlsb25HdWVzdHNQb3B1cENvbXBvbmVudCxcbiAgICBndWVzdHNWYWx1ZSxcbn0gZnJvbSAnLi4vYmFieWxvbi1ndWVzdHMtcG9wdXAvYmFieWxvbi1ndWVzdHMtcG9wdXAuY29tcG9uZW50JztcbmltcG9ydCB7IEJhYnlsb25HdWVzdHNQb3B1cEkgfSBmcm9tICcuLi9iYWJ5bG9uLWd1ZXN0cy1wb3B1cC9iYWJ5bG9uLWd1ZXN0cy1wb3B1cC5pbnRlcmZhY2UnO1xuXG5kZWNsYXJlIGNvbnN0IE1ld3M6IGFueTtcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbGliLWJhYnlsb24tZW5naW5lLW1ld3MnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgQ2FsZW5kYXJNb2R1bGUsXG4gICAgICAgIEJhYnlsb25HdWVzdHNQb3B1cENvbXBvbmVudCxcbiAgICAgICAgRGlhbG9nTW9kdWxlLFxuICAgICAgICBEcm9wZG93bk1vZHVsZSxcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgIF0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2JhYnlsb24tZW5naW5lLW1ld3MuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi9iYWJ5bG9uLWVuZ2luZS1tZXdzLmNvbXBvbmVudC5zY3NzJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQmFieWxvbkVuZ2luZU1ld3NDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBWaWV3Q2hpbGQoJ2RhdGVwaWNrZXInKSBkYXRlcGlja2VyITogQ2FsZW5kYXI7XG4gICAgQFZpZXdDaGlsZCgnaG90ZWxzRHJvcGRvd24nLCB7IHN0YXRpYzogZmFsc2UgfSkgaG90ZWxzRHJvcGRvd24hOiBEcm9wZG93bjtcblxuICAgIEBJbnB1dCgpIG1vZGFsPzogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBkYXRlcGlja2VyRGF0YT86IEJhYnlsb25JbnB1dEk7XG4gICAgQElucHV0KCkgZ3Vlc3RzSW5wdXQ/OiBCYWJ5bG9uSW5wdXRJO1xuICAgIEBJbnB1dCgpIHByb21vSW5wdXQ/OiBCYWJ5bG9uSW5wdXRJO1xuICAgIEBJbnB1dCgpIGd1ZXN0cz86IEJhYnlsb25HdWVzdHNQb3B1cEk7XG4gICAgQElucHV0KCkgYnV0dG9uPzogQmFieWxvbkJ1dHRvbkk7XG4gICAgQElucHV0KCkgdGl0bGU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgc3VidGl0bGU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgZGVmYXVsdENvbmZpZ3VyYXRpb25JZD86IHN0cmluZztcbiAgICBASW5wdXQoKSBvbmx5QWR1bHRzPzogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBzaG93QWdlcyA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIGRlZmF1bHRCdXR0b24/OiBCYWJ5bG9uQnV0dG9uSTtcbiAgICBASW5wdXQoKSBob3RlbHNJbnB1dD86IEJhYnlsb25JbnB1dEk7XG4gICAgQElucHV0KCkgaG90ZWxzPzogTWV3c0hvdGVsc0Ryb3Bkb3duSTtcbiAgICBASW5wdXQoKSBob3RlbHNQbGFjZWhvbGRlcj86IHN0cmluZztcbiAgICBASW5wdXQoKSBkZWZhdWx0UHJvbW9Db2RlPzogc3RyaW5nO1xuXG4gICAgQE91dHB1dCgpIGNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICBob3RlbHNWYWx1ZTogTWV3c0hvdGVsT3B0aW9uIHwgbnVsbCA9IG51bGw7XG4gICAgZGF0ZXBpY2tlclZhbHVlID0gJyc7XG4gICAgbWluRGF0ZTogRGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgaG90ZWxFcnJvcjogYm9vbGVhbiA9IGZhbHNlO1xuICAgIHByaXZhdGUgZG9jdW1lbnQgPSBpbmplY3QoRE9DVU1FTlQpO1xuXG4gICAgZm9ybSA9IG5ldyBGb3JtR3JvdXAoe1xuICAgICAgICBob3RlbHM6IG5ldyBGb3JtQ29udHJvbDxNZXdzSG90ZWxPcHRpb24gfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCwgW1xuICAgICAgICAgICAgVmFsaWRhdG9ycy5yZXF1aXJlZCxcbiAgICAgICAgXSksXG4gICAgICAgIGRhdGVzOiBuZXcgRm9ybUNvbnRyb2wodGhpcy5kYXRlcGlja2VyVmFsdWUpLFxuICAgICAgICBndWVzdHM6IG5ldyBGb3JtQ29udHJvbCgnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdKSxcbiAgICAgICAgcHJvbW86IG5ldyBGb3JtQ29udHJvbCgnJyksXG4gICAgfSk7XG5cbiAgICBndWVzdHNWYWx1ZSA9ICcwMic7XG4gICAgZ3Vlc3RzVmFsdWVTZXBhcmF0ZXMgPSB7XG4gICAgICAgIGFkdWx0czogMixcbiAgICAgICAganVuaW9yczogMCxcbiAgICAgICAga2lkczogMCxcbiAgICAgICAgaW5mYW50czogMCxcbiAgICB9O1xuICAgIHNob3dpbmdHdWVzdHMgPSBmYWxzZTtcblxuICAgIHByaXZhdGUgcGxhdGZvcm1JZCA9IGluamVjdChQTEFURk9STV9JRCk7XG4gICAgcHJpdmF0ZSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuXG4gICAgcHJpdmF0ZSBnZXRMYW5ndWFnZUZyb21VcmwoKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKCFpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSByZXR1cm4gJ2VzLUVTJztcblxuICAgICAgICBjb25zdCBwYXRobmFtZSA9IHRoaXMuZG9jdW1lbnQubG9jYXRpb24ucGF0aG5hbWU7XG4gICAgICAgIGNvbnN0IGxhbmdDb2RlID0gcGF0aG5hbWUuc3BsaXQoJy8nKVsxXT8udG9Mb3dlckNhc2UoKTtcblxuICAgICAgICBjb25zdCBsYW5ndWFnZU1hcDogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHtcbiAgICAgICAgICAgIGVuOiAnZW4tVVMnLFxuICAgICAgICAgICAgZXM6ICdlcy1FUycsXG4gICAgICAgICAgICBwdDogJ3B0LVBUJyxcbiAgICAgICAgICAgIGRlOiAnZGUtREUnLFxuICAgICAgICAgICAgZnI6ICdmci1GUicsXG4gICAgICAgICAgICBpdDogJ2l0LUlUJyxcbiAgICAgICAgfTtcblxuICAgICAgICByZXR1cm4gbGFuZ3VhZ2VNYXBbbGFuZ0NvZGVdIHx8ICdlcy1FUyc7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubWluRGF0ZS5zZXRIb3VycygwLCAwLCAwLCAwKTtcbiAgICAgICAgdGhpcy5ndWVzdHNWYWx1ZSA9ICcwMic7XG4gICAgICAgIHRoaXMuZm9ybS5nZXQoJ2d1ZXN0cycpPy5zZXRWYWx1ZSh0aGlzLmd1ZXN0c1ZhbHVlKTtcblxuICAgICAgICBpZiAodGhpcy5kZWZhdWx0UHJvbW9Db2RlKSB7XG4gICAgICAgICAgICB0aGlzLmZvcm0uZ2V0KCdwcm9tbycpPy5zZXRWYWx1ZSh0aGlzLmRlZmF1bHRQcm9tb0NvZGUpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5sb2FkRW5naW5lRGF0YSgpO1xuICAgIH1cbiAgICB0b2dnbGVIb3RlbHNEcm9wZG93bigpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaG90ZWxzRHJvcGRvd24pIHtcbiAgICAgICAgICAgIHRoaXMuaG90ZWxzRHJvcGRvd24uc2hvdygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaGFuZGxlRHJvcGRvd25DaGFuZ2UoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLmhvdGVsc1ZhbHVlID0gZXZlbnQudmFsdWU7XG4gICAgfVxuXG4gICAgaGFuZGxlRGlzYWJsZWRDbGljayhldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgaWYgKHRoaXMuZm9ybS5nZXQoJ2hvdGVscycpPy5pbnZhbGlkKSB7XG4gICAgICAgICAgICB0aGlzLmhvdGVsRXJyb3IgPSB0cnVlO1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiAodGhpcy5ob3RlbEVycm9yID0gZmFsc2UpLCA1MDApO1xuICAgICAgICAgICAgdGhpcy5ob3RlbHNEcm9wZG93bi5zaG93KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0b2dnbGVTaG93aW5nR3Vlc3RzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNob3dpbmdHdWVzdHMgPSAhdGhpcy5zaG93aW5nR3Vlc3RzO1xuICAgIH1cblxuICAgIGd1ZXN0c0NoYW5nZShkYXRhOiBndWVzdHNWYWx1ZSk6IHZvaWQge1xuICAgICAgICB0aGlzLmd1ZXN0c1ZhbHVlU2VwYXJhdGVzLmFkdWx0cyA9IE51bWJlcihkYXRhLmFkdWx0c1ZhbHVlPy5jb2RlKSB8fCAxO1xuICAgICAgICB0aGlzLmd1ZXN0c1ZhbHVlU2VwYXJhdGVzLmp1bmlvcnMgPVxuICAgICAgICAgICAgTnVtYmVyKGRhdGEuanVuaW9yc1ZhbHVlPy5jb2RlKSB8fCAwO1xuICAgICAgICB0aGlzLmd1ZXN0c1ZhbHVlU2VwYXJhdGVzLmtpZHMgPSBOdW1iZXIoZGF0YS5raWRzVmFsdWU/LmNvZGUpIHx8IDA7XG4gICAgICAgIHRoaXMuZ3Vlc3RzVmFsdWVTZXBhcmF0ZXMuaW5mYW50cyA9XG4gICAgICAgICAgICBOdW1iZXIoZGF0YS5pbmZhbnRzVmFsdWU/LmNvZGUpIHx8IDA7XG5cbiAgICAgICAgY29uc3QgdG90YWxHdWVzdHMgPVxuICAgICAgICAgICAgdGhpcy5ndWVzdHNWYWx1ZVNlcGFyYXRlcy5hZHVsdHMgK1xuICAgICAgICAgICAgdGhpcy5ndWVzdHNWYWx1ZVNlcGFyYXRlcy5qdW5pb3JzICtcbiAgICAgICAgICAgIHRoaXMuZ3Vlc3RzVmFsdWVTZXBhcmF0ZXMua2lkcyArXG4gICAgICAgICAgICB0aGlzLmd1ZXN0c1ZhbHVlU2VwYXJhdGVzLmluZmFudHM7XG5cbiAgICAgICAgdGhpcy5ndWVzdHNWYWx1ZSA9XG4gICAgICAgICAgICB0b3RhbEd1ZXN0cyA8IDEwID8gJzAnICsgdG90YWxHdWVzdHMgOiB0b3RhbEd1ZXN0cy50b1N0cmluZygpO1xuICAgICAgICB0aGlzLmZvcm0uZ2V0KCdndWVzdHMnKT8uc2V0VmFsdWUodGhpcy5ndWVzdHNWYWx1ZSk7XG4gICAgICAgIHRoaXMudG9nZ2xlU2hvd2luZ0d1ZXN0cygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEludm9jYWNpw7NuIGEgbGEgQVBJIGRlIE1ld3MgRGlzdHJpYnV0b3IgYWwgaGFjZXIgY2xpYyBlbiBCdXNjYXJcbiAgICAgKi9cbiAgICBvcGVuTWV3c0VuZ2luZShldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgICBpZiAodGhpcy5mb3JtLmludmFsaWQpIHtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlRGlzYWJsZWRDbGljayhldmVudCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICAhaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSB8fFxuICAgICAgICAgICAgdHlwZW9mIE1ld3MgPT09ICd1bmRlZmluZWQnXG4gICAgICAgICkge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKCdFbCBzY3JpcHQgZGUgTWV3cyBubyBlc3TDoSBkaXNwb25pYmxlLicpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZm9ybVZhbHVlcyA9IHRoaXMuZm9ybS52YWx1ZTtcbiAgICAgICAgY29uc3QgY29uZmlnSWQgPVxuICAgICAgICAgICAgZm9ybVZhbHVlcy5ob3RlbHM/LmNvbmZpZ3VyYXRpb25JZCB8fFxuICAgICAgICAgICAgdGhpcy5kZWZhdWx0Q29uZmlndXJhdGlvbklkIHx8XG4gICAgICAgICAgICAnJztcblxuICAgICAgICBjb25zdCBpc1VybCA9IChzdHJpbmc6IHN0cmluZyk6IGJvb2xlYW4gPT4ge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICBzdHJpbmcuc3RhcnRzV2l0aCgnaHR0cDovLycpIHx8XG4gICAgICAgICAgICAgICAgICAgIHN0cmluZy5zdGFydHNXaXRoKCdodHRwczovLycpXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcblxuICAgICAgICBpZiAoaXNVcmwoY29uZmlnSWQpKSB7XG4gICAgICAgICAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgICAgICAgICAgIHdpbmRvdy5vcGVuKGNvbmZpZ0lkLCAnX2JsYW5rJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICAhaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSB8fFxuICAgICAgICAgICAgdHlwZW9mIE1ld3MgPT09ICd1bmRlZmluZWQnXG4gICAgICAgICkge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKCdFbCBzY3JpcHQgZGUgTWV3cyBubyBlc3TDoSBkaXNwb25pYmxlLicpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbWV3c09wdGlvbnM6IGFueSA9IHtcbiAgICAgICAgICAgIGNvbmZpZ3VyYXRpb25JZHM6IFtjb25maWdJZF0sXG4gICAgICAgICAgICBsYW5ndWFnZTogdGhpcy5nZXRMYW5ndWFnZUZyb21VcmwoKSxcbiAgICAgICAgfTtcblxuICAgICAgICBpZiAoZm9ybVZhbHVlcy5wcm9tbykge1xuICAgICAgICAgICAgbWV3c09wdGlvbnMubWV3c1ZvdWNoZXJDb2RlID0gZm9ybVZhbHVlcy5wcm9tbztcbiAgICAgICAgfVxuXG4gICAgICAgIE1ld3MuRGlzdHJpYnV0b3IobWV3c09wdGlvbnMsIChhcGk6IGFueSkgPT4ge1xuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgIEFycmF5LmlzQXJyYXkoZm9ybVZhbHVlcy5kYXRlcykgJiZcbiAgICAgICAgICAgICAgICBmb3JtVmFsdWVzLmRhdGVzLmxlbmd0aCA9PT0gMlxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgW3N0YXJ0RGF0ZSwgZW5kRGF0ZV0gPSBmb3JtVmFsdWVzLmRhdGVzO1xuICAgICAgICAgICAgICAgIGlmIChzdGFydERhdGUpIGFwaS5zZXRTdGFydERhdGUobmV3IERhdGUoc3RhcnREYXRlKSk7XG4gICAgICAgICAgICAgICAgaWYgKGVuZERhdGUpIGFwaS5zZXRFbmREYXRlKG5ldyBEYXRlKGVuZERhdGUpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHRoaXMuZ3Vlc3RzVmFsdWVTZXBhcmF0ZXMpIHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5ndWVzdHNWYWx1ZVNlcGFyYXRlcy5hZHVsdHMpIHtcbiAgICAgICAgICAgICAgICAgICAgYXBpLnNldEFkdWx0Q291bnQodGhpcy5ndWVzdHNWYWx1ZVNlcGFyYXRlcy5hZHVsdHMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAodGhpcy5ndWVzdHNWYWx1ZVNlcGFyYXRlcy5raWRzKSB7XG4gICAgICAgICAgICAgICAgICAgIGFwaS5zZXRDaGlsZENvdW50KHRoaXMuZ3Vlc3RzVmFsdWVTZXBhcmF0ZXMua2lkcyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAobWV3c09wdGlvbnMubWV3c1ZvdWNoZXJDb2RlKSB7XG4gICAgICAgICAgICAgICAgYXBpLnNldFZvdWNoZXJDb2RlKG1ld3NPcHRpb25zLm1ld3NWb3VjaGVyQ29kZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChtZXdzT3B0aW9ucy5sYW5ndWFnZSkge1xuICAgICAgICAgICAgICAgIGFwaS5zZXRMYW5ndWFnZUNvZGUobWV3c09wdGlvbnMubGFuZ3VhZ2UpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBBYnJpciBlbCBtb3RvciBkZSByZXNlcnZhcyBtb2RhbFxuICAgICAgICAgICAgYXBpLnNob3dSb29tcyhjb25maWdJZCk7XG4gICAgICAgICAgICBhcGkub3BlbigpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBnZXQgZGVmYXVsdEd1ZXN0c1ZhbHVlKCk6IGd1ZXN0c1ZhbHVlIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGFkdWx0c1ZhbHVlOiB7XG4gICAgICAgICAgICAgICAgY29kZTogdGhpcy5ndWVzdHNWYWx1ZVNlcGFyYXRlcy5hZHVsdHMsXG4gICAgICAgICAgICAgICAgbmFtZTogU3RyaW5nKHRoaXMuZ3Vlc3RzVmFsdWVTZXBhcmF0ZXMuYWR1bHRzKS5wYWRTdGFydCgyLCAnMCcpLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGtpZHNWYWx1ZToge1xuICAgICAgICAgICAgICAgIGNvZGU6IHRoaXMuZ3Vlc3RzVmFsdWVTZXBhcmF0ZXMua2lkcyxcbiAgICAgICAgICAgICAgICBuYW1lOiBTdHJpbmcodGhpcy5ndWVzdHNWYWx1ZVNlcGFyYXRlcy5raWRzKS5wYWRTdGFydCgyLCAnMCcpLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGp1bmlvcnNWYWx1ZToge1xuICAgICAgICAgICAgICAgIGNvZGU6IHRoaXMuZ3Vlc3RzVmFsdWVTZXBhcmF0ZXMuanVuaW9ycyxcbiAgICAgICAgICAgICAgICBuYW1lOiBTdHJpbmcodGhpcy5ndWVzdHNWYWx1ZVNlcGFyYXRlcy5qdW5pb3JzKS5wYWRTdGFydChcbiAgICAgICAgICAgICAgICAgICAgMixcbiAgICAgICAgICAgICAgICAgICAgJzAnXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBpbmZhbnRzVmFsdWU6IHtcbiAgICAgICAgICAgICAgICBjb2RlOiB0aGlzLmd1ZXN0c1ZhbHVlU2VwYXJhdGVzLmluZmFudHMsXG4gICAgICAgICAgICAgICAgbmFtZTogU3RyaW5nKHRoaXMuZ3Vlc3RzVmFsdWVTZXBhcmF0ZXMuaW5mYW50cykucGFkU3RhcnQoXG4gICAgICAgICAgICAgICAgICAgIDIsXG4gICAgICAgICAgICAgICAgICAgICcwJ1xuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICB9LFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIHByaXZhdGUgbG9hZEVuZ2luZURhdGEoKTogdm9pZCB7XG4gICAgICAgIGlmICghaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkgcmV0dXJuO1xuICAgIH1cbn1cbmV4cG9ydCBpbnRlcmZhY2UgTWV3c0hvdGVsT3B0aW9uIHtcbiAgICBuYW1lPzogc3RyaW5nO1xuICAgIGNvbmZpZ3VyYXRpb25JZD86IHN0cmluZztcbiAgICBpZD86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNZXdzSG90ZWxzRHJvcGRvd25JIHtcbiAgICBwbGFjZWhvbGRlcj86IHN0cmluZztcbiAgICBvcHRpb25zPzogTWV3c0hvdGVsT3B0aW9uW107XG4gICAgdGl0bGU/OiBzdHJpbmc7XG4gICAgc21hbGxUaXRsZT86IHN0cmluZztcbiAgICBlcnJvcj86IHN0cmluZztcbn1cbiIsIjwhLS1EZXNrdG9wIEVuZ2luZSBNZXdzLS0+XG48ZGl2IGNsYXNzPVwiYmFieWxvbl9fZW5naW5lIGJnX3doaXRlXCIgW25nQ2xhc3NdPVwieyBlbmdpbmVfX2NhZGVuYTogaG90ZWxzIH1cIj5cbiAgICBAaWYgKGRlZmF1bHRCdXR0b24pIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImJ0bi1kZWZhdWx0LWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgPGJ1dHRvbiBbbmFtZV09XCJkZWZhdWx0QnV0dG9uLmxhYmVsIHx8ICcnXCIgY2xhc3M9XCJidG4tY2FsbFwiPlxuICAgICAgICAgICAgICAgIHt7IGRlZmF1bHRCdXR0b24ubGFiZWwgfX1cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICB9XG4gICAgPGZvcm1cbiAgICAgICAgY2xhc3M9XCJiYWJ5bG9uX19lbmdpbmVfX2Zvcm0gZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiXG4gICAgICAgIFtmb3JtR3JvdXBdPVwiZm9ybVwiXG4gICAgPlxuICAgICAgICBAaWYgKFxuICAgICAgICAgICAgaG90ZWxzSW5wdXQgJiYgaG90ZWxzICYmIGhvdGVscy5vcHRpb25zICYmIGhvdGVscy5vcHRpb25zLmxlbmd0aCA+IDFcbiAgICAgICAgKSB7XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJiYWJ5bG9uX19lbmdpbmVfX2lucHV0LS13cmFwcGVyIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgaG90ZWxzXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8cC1kcm9wZG93blxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJhYnlsb25fX2VuZ2luZV9faW5wdXRcIlxuICAgICAgICAgICAgICAgICAgICBbb3B0aW9uc109XCJob3RlbHMub3B0aW9uc1wiXG4gICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImhvdGVsc1wiXG4gICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJob3RlbHNQbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbkxhYmVsPVwibmFtZVwiXG4gICAgICAgICAgICAgICAgICAgIChvbkNoYW5nZSk9XCJoYW5kbGVEcm9wZG93bkNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgI2hvdGVsc0Ryb3Bkb3duXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDwvcC1kcm9wZG93bj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImJhYnlsb24tYXJyb3ctYm90dG9tXCI+PC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJiYWJ5bG9uX19lbmdpbmVfX2RhdGVwaWNrZXItLXdyYXBwZXIgZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGFsaWduLWl0ZW1zLWNlbnRlclwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxwLWNhbGVuZGFyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJiYWJ5bG9uX19lbmdpbmVfX2RhdGVwaWNrZXJcIlxuICAgICAgICAgICAgICAgIFtzaG93T3RoZXJNb250aHNdPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgIGRhdGVGb3JtYXQ9XCJkZC1tbS15eVwiXG4gICAgICAgICAgICAgICAgc2VsZWN0aW9uTW9kZT1cInJhbmdlXCJcbiAgICAgICAgICAgICAgICBbbnVtYmVyT2ZNb250aHNdPVwiMlwiXG4gICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cImRhdGVwaWNrZXJEYXRhPy5wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiZGF0ZXNcIlxuICAgICAgICAgICAgICAgIFttaW5EYXRlXT1cIm1pbkRhdGVcIlxuICAgICAgICAgICAgICAgICNkYXRlcGlja2VyXG4gICAgICAgICAgICAgICAgW3JlYWRvbmx5SW5wdXRdPVwidHJ1ZVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FsZW5kYXItaGVhZGVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuX3ByaW1hcnkgYnRuLS1saWdodCBiYWJ5bG9uLXBsdXNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiY2xvc2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJkYXRlcGlja2VyLm92ZXJsYXlWaXNpYmxlID0gZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgPC9wLWNhbGVuZGFyPlxuXG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYmFieWxvbl9fZW5naW5lX19kYXRlcGlja2VyLS1pY29uIGJhYnlsb24tYXJyb3ctYm90dG9tXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiZGF0ZXBpY2tlci50b2dnbGUoKVwiXG4gICAgICAgICAgICA+PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImJhYnlsb25fX2VuZ2luZV9faW5wdXQtLXdyYXBwZXIgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiXG4gICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlU2hvd2luZ0d1ZXN0cygpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgQGlmIChndWVzdHNJbnB1dD8ucGxhY2Vob2xkZXIpIHtcbiAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImd1ZXN0LWluZm9cIlxuICAgICAgICAgICAgICAgICAgICBbaW5uZXJIVE1MXT1cImd1ZXN0c0lucHV0Py5wbGFjZWhvbGRlciArICc6ICAnXCJcbiAgICAgICAgICAgICAgICA+PC9zcGFuPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJiYWJ5bG9uX19lbmdpbmVfX2lucHV0IG5vLWNhcmV0XCJcbiAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cImd1ZXN0c0lucHV0Py5wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiZ3Vlc3RzXCJcbiAgICAgICAgICAgICAgICByZWFkb25seVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYmFieWxvbi1hcnJvdy1ib3R0b21cIj48L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxwLWRpYWxvZyBjbGFzcz1cImJhYnlsb25fX2VuZ2luZV9fZGlhbG9nXCIgWyh2aXNpYmxlKV09XCJzaG93aW5nR3Vlc3RzXCI+XG4gICAgICAgICAgICA8bGliLWJhYnlsb24tZ3Vlc3RzLXBvcHVwXG4gICAgICAgICAgICAgICAgW29ubHlBZHVsdHNdPVwib25seUFkdWx0c1wiXG4gICAgICAgICAgICAgICAgW3Nob3dBZ2VzXT1cInNob3dBZ2VzXCJcbiAgICAgICAgICAgICAgICBbZGVmYXVsdFZhbHVlXT1cImRlZmF1bHRHdWVzdHNWYWx1ZVwiXG4gICAgICAgICAgICAgICAgW2FkdWx0c0Ryb3Bkb3duXT1cImd1ZXN0cz8uYWR1bHRzRHJvcGRvd25cIlxuICAgICAgICAgICAgICAgIFthZ2VzRHJvcGRvd25dPVwiZ3Vlc3RzPy5hZ2VzRHJvcGRvd25cIlxuICAgICAgICAgICAgICAgIFthZ2VzTGFiZWxdPVwiZ3Vlc3RzPy5hZ2VzTGFiZWxcIlxuICAgICAgICAgICAgICAgIFtiYWJpZXNEcm9wZG93bl09XCJndWVzdHM/LmJhYmllc0Ryb3Bkb3duXCJcbiAgICAgICAgICAgICAgICBba2lkc0Ryb3Bkb3duXT1cImd1ZXN0cz8ua2lkc0Ryb3Bkb3duXCJcbiAgICAgICAgICAgICAgICBbanVuaW9yc0Ryb3Bkb3duXT1cImd1ZXN0cz8uanVuaW9yc0Ryb3Bkb3duXCJcbiAgICAgICAgICAgICAgICBbYnRuXT1cImd1ZXN0cz8uYnRuXCJcbiAgICAgICAgICAgICAgICAjZ3Vlc3RwaWNrZXJcbiAgICAgICAgICAgICAgICAoYXBwbHkpPVwiZ3Vlc3RzQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgPC9saWItYmFieWxvbi1ndWVzdHMtcG9wdXA+XG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaGVhZGVyXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImd1ZXN0cy1oZWFkZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuX3ByaW1hcnkgYnRuLS1saWdodCBiYWJ5bG9uLXBsdXNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJjbG9zZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJ0b2dnbGVTaG93aW5nR3Vlc3RzKClcIlxuICAgICAgICAgICAgICAgICAgICA+PC9idXR0b24+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3AtZGlhbG9nPlxuXG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwiYmFieWxvbl9fZW5naW5lX19pbnB1dC0td3JhcHBlciBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIHByb21vLWNvZGVcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICBjbGFzcz1cImJhYnlsb25fX2VuZ2luZV9faW5wdXRcIlxuICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicHJvbW9JbnB1dD8ucGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInByb21vXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImJhYnlsb24tdGFnXCI+PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgQGlmIChidXR0b24pIHtcbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImJ1dHRvbi5sYWJlbFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuX2NhbGxcIlxuICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgICAgICAgJ2J0bi1kaXNhYmxlZCc6IGZvcm0uaW52YWxpZCxcbiAgICAgICAgICAgICAgICAgICAgJ3NoYWtlLWFuaW1hdGlvbic6IGhvdGVsRXJyb3IsXG4gICAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAgICAgaWQ9XCJidG4tc3VibWl0XCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib3Blbk1ld3NFbmdpbmUoJGV2ZW50KVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgYnV0dG9uLmxhYmVsIH19XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgfVxuICAgIDwvZm9ybT5cbjwvZGl2PlxuIl19
@@ -1,4 +1,4 @@
1
1
  [diffend] Oversized file quarantined before diffing.
2
2
  name: package/fesm2022/ctt-babylon.mjs
3
- size: 57827766 bytes
4
- sha256: ecdfadd17bb727a18f0bf10987875814bf94111b8f1c9bead98f4230d1246a0e
3
+ size: 57829054 bytes
4
+ sha256: ed3bafa053538c8f21e217901d429cdc5fa86f8e23c184ae5e155e9bd148caa0