ctt-babylon 0.1.49 → 0.1.50
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/core/babylon-contact-form/babylon-contact-form.component.mjs +34 -6
- package/esm2022/lib/components/core/babylon-header-book-show/babylon-header-book-show.component.mjs +3 -3
- package/esm2022/lib/components/core/babylon-header-clear/babylon-header-clear.component.mjs +3 -3
- package/esm2022/lib/components/core/babylon-header-menu-center/babylon-header-menu-center.component.mjs +3 -3
- package/esm2022/lib/components/core/babylon-header-menu-logo-center/babylon-header-menu-logo-center.component.mjs +3 -3
- package/esm2022/lib/components/core/babylon-header-menu-show/babylon-header-menu-show.component.mjs +3 -3
- package/esm2022/lib/components/core/babylon-header-mobile/babylon-header-mobile.component.mjs +104 -0
- package/esm2022/lib/components/core/babylon-header-mobile/babylon-header-mobile.interface.mjs +2 -0
- package/esm2022/lib/components/core/babylon-header-mobile/index.mjs +3 -0
- package/esm2022/lib/components/core/babylon-hotels-slider/babylon-hotels-slider.component.mjs +3 -3
- package/esm2022/lib/components/core/babylon-info-img/babylon-info-img.component.mjs +3 -3
- package/esm2022/lib/components/core/babylon-offer-slider/babylon-offer-slider.component.mjs +6 -3
- package/esm2022/lib/components/core/babylon-offer-slider/babylon-offer-slider.interface.mjs +1 -1
- package/esm2022/lib/components/core/babylon-room-details/babylon-room-details.component.mjs +3 -3
- package/esm2022/lib/components/core/babylon-static-footer-v2/babylon-static-footer-v2.component.mjs +3 -3
- package/esm2022/lib/components/core/babylon-top-slider-video/babylon-top-slider-video.component.mjs +3 -3
- package/esm2022/lib/components/core/index.mjs +2 -1
- package/esm2022/lib/services/mapper/mapper.service.mjs +12 -1
- package/fesm2022/ctt-babylon.mjs +179 -43
- package/fesm2022/ctt-babylon.mjs.map +1 -1
- package/lib/components/core/babylon-contact-form/babylon-contact-form.component.d.ts +4 -3
- package/lib/components/core/babylon-header-mobile/babylon-header-mobile.component.d.ts +43 -0
- package/lib/components/core/babylon-header-mobile/babylon-header-mobile.interface.d.ts +22 -0
- package/lib/components/core/babylon-header-mobile/index.d.ts +2 -0
- package/lib/components/core/babylon-offer-slider/babylon-offer-slider.component.d.ts +2 -1
- package/lib/components/core/babylon-offer-slider/babylon-offer-slider.interface.d.ts +1 -0
- package/lib/components/core/index.d.ts +1 -0
- package/lib/styles/styles/babylon/common.scss +4 -11
- package/package.json +1 -1
|
@@ -21,11 +21,15 @@ export class BabylonContactFormComponent {
|
|
|
21
21
|
const controls = {};
|
|
22
22
|
this.inputs?.forEach((input) => {
|
|
23
23
|
if (input.id) {
|
|
24
|
-
|
|
24
|
+
const existingValidators = [...(input.validators || [])];
|
|
25
|
+
const validators = input.id === 'phone'
|
|
26
|
+
? [...existingValidators, this.phoneValidator()]
|
|
27
|
+
: existingValidators;
|
|
28
|
+
controls[input.id] = ['', validators];
|
|
25
29
|
}
|
|
26
30
|
});
|
|
27
|
-
if (this.textarea) {
|
|
28
|
-
controls[this.textarea.id] = ['', this.textarea?.validators];
|
|
31
|
+
if (this.textarea && this.textarea.id) {
|
|
32
|
+
controls[this.textarea.id] = ['', this.textarea?.validators || []];
|
|
29
33
|
}
|
|
30
34
|
if (this.conditions) {
|
|
31
35
|
controls['checkbox'] = [false, Validators.requiredTrue];
|
|
@@ -40,8 +44,11 @@ export class BabylonContactFormComponent {
|
|
|
40
44
|
this.formReady.set(true);
|
|
41
45
|
}
|
|
42
46
|
validateInput(input) {
|
|
43
|
-
if (input) {
|
|
44
|
-
|
|
47
|
+
if (input && input.id) {
|
|
48
|
+
const control = this.form.get(input.id);
|
|
49
|
+
if (control) {
|
|
50
|
+
input.valid = control.errors === null;
|
|
51
|
+
}
|
|
45
52
|
}
|
|
46
53
|
}
|
|
47
54
|
inputChange(event, input) {
|
|
@@ -52,6 +59,11 @@ export class BabylonContactFormComponent {
|
|
|
52
59
|
}
|
|
53
60
|
resetForm() {
|
|
54
61
|
this.form?.reset();
|
|
62
|
+
Object.values(this.form.controls).forEach((control) => {
|
|
63
|
+
control.markAsPristine();
|
|
64
|
+
control.markAsUntouched();
|
|
65
|
+
control.updateValueAndValidity();
|
|
66
|
+
});
|
|
55
67
|
if (this.textarea) {
|
|
56
68
|
this.textarea.value = '';
|
|
57
69
|
}
|
|
@@ -64,6 +76,9 @@ export class BabylonContactFormComponent {
|
|
|
64
76
|
this.form.updateValueAndValidity();
|
|
65
77
|
if (this.form.invalid) {
|
|
66
78
|
this.markAllControlsAsTouched();
|
|
79
|
+
this.inputs?.forEach((input) => this.validateInput(input));
|
|
80
|
+
if (this.textarea)
|
|
81
|
+
this.validateInput(this.textarea);
|
|
67
82
|
return;
|
|
68
83
|
}
|
|
69
84
|
this.submit.emit(this.form.value);
|
|
@@ -73,6 +88,19 @@ export class BabylonContactFormComponent {
|
|
|
73
88
|
Object.values(this.form.controls).forEach((control) => {
|
|
74
89
|
control.markAsTouched();
|
|
75
90
|
});
|
|
91
|
+
this.inputs?.forEach((input) => this.validateInput(input));
|
|
92
|
+
if (this.textarea)
|
|
93
|
+
this.validateInput(this.textarea);
|
|
94
|
+
}
|
|
95
|
+
phoneValidator() {
|
|
96
|
+
return (control) => {
|
|
97
|
+
if (!control.value) {
|
|
98
|
+
return null;
|
|
99
|
+
}
|
|
100
|
+
const phoneRegex = /^(?:[+ ]?)[\d -]{7,15}$/;
|
|
101
|
+
const valid = phoneRegex.test(control.value);
|
|
102
|
+
return valid ? null : { invalidPhone: true };
|
|
103
|
+
};
|
|
76
104
|
}
|
|
77
105
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BabylonContactFormComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
78
106
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: BabylonContactFormComponent, isStandalone: true, selector: "lib-babylon-contact-form", inputs: { title: "title", pretitle: "pretitle", description: "description", inputs: "inputs", textarea: "textarea", conditions: "conditions", conditions2: "conditions2", button: "button", image: "image", dropdown: "dropdown" }, outputs: { submit: "submit" }, ngImport: i0, template: "<section class=\"babylon__contact-form margin-main\">\n <div class=\"container\">\n <div class=\"row cs_gap_y_50\">\n <div class=\"col-lg-6\">\n <div class=\"cs_pr_100\">\n <div class=\"intro_info mb--40\">\n @if (pretitle) {\n <h3 class=\"subtitle\">{{ pretitle }}</h3>\n }\n @if (title) {\n <h2\n class=\"title wow fadeInUp\"\n data-wow-duration=\"0.8s\"\n data-wow-delay=\"0.2s\"\n >\n {{ title }}\n </h2>\n }\n @if (description) {\n <p class=\"text mb--0\">{{ description }}</p>\n }\n </div>\n @if (formReady()) {\n <form\n [formGroup]=\"form\"\n id=\"contactform\"\n class=\"cs_form cs_style_2\"\n >\n @if (dropdown) {\n <div>\n @if (dropdown.title) {\n <label class=\"text mb--10\"\n >{{ dropdown.title }}*</label\n >\n }\n <p-dropdown\n class=\"cs_form_field_2 cs--radius form-control\"\n [options]=\"dropdown.options\"\n formControlName=\"dropdown\"\n [placeholder]=\"dropdown.placeholder\"\n optionLabel=\"name\"\n >\n </p-dropdown>\n @if (\n form.controls['dropdown'].invalid &&\n form.controls['dropdown'].touched\n ) {\n <div class=\"form-warning\">\n <small>{{ dropdown.error }}</small>\n </div>\n }\n </div>\n }\n @if (inputs?.length) {\n @for (input of inputs; track $index) {\n <div>\n @if (input.title) {\n <label class=\"text mb--10\"\n >{{ input.title }}*</label\n >\n }\n <input\n class=\"cs_form_field_2 cs--radius\"\n [type]=\"input.type\"\n [id]=\"input.name\"\n [name]=\"input.name\"\n [placeholder]=\"input.title\"\n [formControlName]=\"input.id!\"\n [value]=\"input.value\"\n (blur)=\"validateInput(input)\"\n (change)=\"\n inputChange($event, input)\n \"\n />\n @if (\n form.controls[input.id!].invalid &&\n form.controls[input.id!].touched\n ) {\n <div class=\"form-warning\">\n <small>{{\n input?.error\n }}</small>\n </div>\n }\n </div>\n }\n }\n @if (textarea) {\n <div>\n @if (textarea.title) {\n <label class=\"text mb--10\"\n >{{ textarea.title }}*</label\n >\n }\n <textarea\n cols=\"30\"\n rows=\"6\"\n class=\"cs_form_field_2 cs--radius\"\n [id]=\"textarea.name\"\n [formControlName]=\"textarea.id!\"\n [placeholder]=\"textarea.title\"\n ></textarea>\n @if (\n form.controls[textarea.id!].invalid &&\n form.controls[textarea.id!].touched\n ) {\n <div class=\"form-warning\">\n <small>{{ textarea.error }}</small>\n </div>\n }\n </div>\n }\n @if (conditions) {\n <div class=\" \">\n <mat-checkbox\n class=\"formcontrol\"\n formControlName=\"checkbox\"\n [ngClass]=\"{\n 'error-checkbox':\n form.controls['checkbox']\n .invalid &&\n form.controls['checkbox']\n .touched,\n }\"\n ></mat-checkbox>\n <span\n class=\"conditions\"\n [innerHTML]=\"conditions\"\n >\n </span>\n </div>\n }\n @if (conditions2) {\n <div class=\" \">\n <mat-checkbox\n class=\"formcontrol\"\n formControlName=\"checkbox2\"\n [ngClass]=\"{\n 'error-checkbox':\n form.controls['checkbox2']\n .invalid &&\n form.controls['checkbox2']\n .touched,\n }\"\n ></mat-checkbox>\n <span\n class=\"conditions\"\n [innerHTML]=\"conditions2\"\n >\n </span>\n </div>\n }\n @if (button) {\n <div class=\"btns__box align--center\">\n <button\n class=\"btn btn_primary\"\n type=\"submit\"\n [ngClass]=\"{\n 'pointers-none': form.invalid,\n }\"\n (click)=\"submitForm($event)\"\n >\n <b>{{ button.label }}</b>\n <span\n class=\"babylon-arrow-right-big\"\n ></span>\n </button>\n </div>\n }\n </form>\n }\n </div>\n </div>\n @if (image) {\n <div class=\"col-lg-6\">\n <div class=\"cs_image_layer cs_style_3 position-relative\">\n <img [src]=\"image\" alt=\"Contact\" class=\"cs--radius\" />\n </div>\n </div>\n }\n </div>\n </div>\n</section>\n", styles: [":root{--font-title: \"the-seasons\", Helvetica, sans-serif;--font-pretitle: \"Poppins\", Helvetica, sans-serif;--font-text: \"Poppins\", Helvetica, sans-serif;--font-claim: \"turbinado-pro\", Helvetica, sans-serif;--cl_corp: #24262d;--cl_accent: #aa8453;--cl_icon: #978667;--cl_icon-light: #fff;--cl_border-light: #ededed;--cl_border-dark: #d9e1e6;--cl_shadow: rgba(0, 0, 0, .1);--cl_breadcrumb: #24262d;--cl_breadcrumb-hover: #978667;--cl_preload-bg: #ededed;--cl_preload: #24262d;--cl_background_body: #fdfbf8;--cl_background_white: #fff;--cl_background_dark: #19314b;--cl_background_gray: #eee;--cl_background_dark-opacity: #19314bbf;--cl_background_dark-opacity-v2: #1326398b;--cl_background_body-transparent: rgba(255, 255, 255, var(--cl_base-transparent));--cl_base-transparent: .9;--cl_title: #978667;--cl_subtitle: #19314b;--cl_pretitle: #19314b;--cl_text: #3c3b3b;--cl_title-light: #fff;--cl_subtitle-light: #fff;--cl_pretitle-light: #fff;--cl_text-light: #fff;--cl_text-disable: #888;--w_title: 600;--w_text: 300;--w_subtitle: 300;--w_pretitle: 300;--ls_subtitle: 1px;--padding-bottom-pretitle: 0px;--lh_title: 1.2;--lh_pretitle: 1.2;--cl_header-bg: #eee;--cl_header-text-nosticky: #fff;--cl_header-text-sticky: #19314b;--cl_menu-bg: #19314b;--cl_menu-text: #fff;--cl_submenu-bg: #19314b;--cl_submenu-text: #fff;--cl_submenu-hover: #978667;--hg_menu-img-height: auto;--w_btn: 400;--size_btn: 14px;--size_link: 14px;--font-btn: \"Poppins\", Helvetica, sans-serif;--font-link: \"Poppins\", Helvetica, sans-serif;--cl_btn-box: #19314b;--cl_btn-box-text: #19314b;--cl_btn-box-hover: #978667;--cl_btn-box-text-hover: #fff;--cl_btn-call: #19314bf2;--cl_btn-call-text: white;--cl_btn-call-hover: #978667;--cl_btn-call-text-hover: #fff;--cl_btn-link: #19314b;--cl_btn-link-hover: #978667;--cl_btn-arrow: #19314b;--cl_btn-arrow-icon: #fff;--cl_btn-arrow-hover: #978667;--cl_btn-arrow-icon-hover: #fff;--cl_btn-dots: #24262d;--cl_btn-dots-active: #978667;--cl_btn-dots-hover: #978667;--cl_btn-light: #fff;--cl_btn-light-text: #fff;--cl_btn-light-hover: #978667;--cl_btn-light-text-hover: #978667;--cl_footer-bg: #19314b;--cl_footer-bg-bottom: #0a1d31;--cl_footer-bg-logos: #f8f7f3;--cl_footer-scroll: #978667;--cl_footer-text: #fff;--cl_footer-text-hover: #978667;--btn_radius: 5px;--img_radius: 5px;--img_border: #fff;--img_border-whidth: 1px;--cl_background_dropdown: #fdfbf8;--cl_border-dropdown: #d9e1e6;--cl_engine-bg: #fff;--cl_engine-transparent-bg: rgba(255, 255, 255, var(--cl_base-transparent));--cl_engine-bg-dark: #19314bbf;--cl_engine-input-bg: #a6b9ce;--cl_engine-input-bg-select: #ebebeb;--cl_engine-input-bg-hover: #081523;--cl_engine-text: #19314b;--cl_engine-text-sticky: var(--cl_engine-bg);--cl_engine-bg-sticky: var(--cl_engine-bg);--cl_engine-icons-sticky: var(--cl_title-light);--cl_dropdown: #19314b;--cl_dropdown-text: #5a5a5a;--cl_dropdown-hover: #19314b;--cl_dropdown-radius: 20px;--cl_newsletter-input-background: #d1d1d1;--cl_newsletter-input-text: #5a5a5a;--cl_error: #ff7173;--cl_desde: #bcbbc3;--cl_price: #19314b;--cl_badget: #ff8874;--cl_badget-text: #fff;--cl-font-size-engine-text: 14px;--alg-service-room-detail: flex-start;--cl_alert-text: #19314b;--cl_alert-text-error: #fff;--cl_alert-background: #fff;--cl_alert-background-error: rgb(230, 92, 92);--mdc-checkbox-disabled-selected-icon-color: rgba(0, 0, 0, .38);--mdc-checkbox-disabled-unselected-icon-color: rgba(0, 0, 0, .38);--mdc-checkbox-selected-checkmark-color: white;--mdc-checkbox-selected-focus-icon-color: var( --cl_corp);--mdc-checkbox-selected-hover-icon-color: var( --cl_corp);--mdc-checkbox-selected-icon-color: var( --cl_corp);--mdc-checkbox-selected-pressed-icon-color: var( --cl_corp);--mdc-checkbox-unselected-focus-icon-color: #212121;--mdc-checkbox-unselected-hover-icon-color: #212121;--mdc-checkbox-unselected-icon-color: rgba(0, 0, 0, .54);--mdc-checkbox-unselected-pressed-icon-color: rgba(0, 0, 0, .54);--mdc-checkbox-selected-focus-state-layer-color: var( --cl_corp);--mdc-checkbox-selected-hover-state-layer-color: var( --cl_corp);--mdc-checkbox-selected-pressed-state-layer-color: var( --cl_corp);--mdc-checkbox-unselected-focus-state-layer-color: black;--mdc-checkbox-unselected-hover-state-layer-color: black;--mdc-checkbox-unselected-pressed-state-layer-color: black;--mat-checkbox-disabled-label-color: rgba(0, 0, 0, .38)}@media (min-width: 1280px){.order-custom-xl-xxl-1{order:1}.order-custom-xl-xxl-2{order:2}}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-fill{flex:1 1 auto!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width: 540px){.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width: 768px){.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width: 1024px){.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width: 1280px){.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}@media (min-width: 1366px){.flex-xxl-row{flex-direction:row!important}.flex-xxl-column{flex-direction:column!important}.flex-xxl-row-reverse{flex-direction:row-reverse!important}.flex-xxl-column-reverse{flex-direction:column-reverse!important}.flex-xxl-wrap{flex-wrap:wrap!important}.flex-xxl-nowrap{flex-wrap:nowrap!important}.flex-xxl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xxl-fill{flex:1 1 auto!important}.flex-xxl-grow-0{flex-grow:0!important}.flex-xxl-grow-1{flex-grow:1!important}.flex-xxl-shrink-0{flex-shrink:0!important}.flex-xxl-shrink-1{flex-shrink:1!important}.justify-content-xxl-start{justify-content:flex-start!important}.justify-content-xxl-end{justify-content:flex-end!important}.justify-content-xxl-center{justify-content:center!important}.justify-content-xxl-between{justify-content:space-between!important}.justify-content-xxl-around{justify-content:space-around!important}.align-items-xxl-start{align-items:flex-start!important}.align-items-xxl-end{align-items:flex-end!important}.align-items-xxl-center{align-items:center!important}.align-items-xxl-baseline{align-items:baseline!important}.align-items-xxl-stretch{align-items:stretch!important}.align-content-xxl-start{align-content:flex-start!important}.align-content-xxl-end{align-content:flex-end!important}.align-content-xxl-center{align-content:center!important}.align-content-xxl-between{align-content:space-between!important}.align-content-xxl-around{align-content:space-around!important}.align-content-xxl-stretch{align-content:stretch!important}.align-self-xxl-auto{align-self:auto!important}.align-self-xxl-start{align-self:flex-start!important}.align-self-xxl-end{align-self:flex-end!important}.align-self-xxl-center{align-self:center!important}.align-self-xxl-baseline{align-self:baseline!important}.align-self-xxl-stretch{align-self:stretch!important}.m-xxl-auto{margin:auto!important}.mt-xxl-auto,.my-xxl-auto{margin-top:auto!important}.mr-xxl-auto,.mx-xxl-auto{margin-right:auto!important}.mb-xxl-auto,.my-xxl-auto{margin-bottom:auto!important}.ml-xxl-auto,.mx-xxl-auto{margin-left:auto!important}}@media (min-width: 1680px){.flex-xxxl-row{flex-direction:row!important}.flex-xxxl-column{flex-direction:column!important}.flex-xxxl-row-reverse{flex-direction:row-reverse!important}.flex-xxxl-column-reverse{flex-direction:column-reverse!important}.flex-xxxl-wrap{flex-wrap:wrap!important}.flex-xxxl-nowrap{flex-wrap:nowrap!important}.flex-xxxl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xxxl-fill{flex:1 1 auto!important}.flex-xxxl-grow-0{flex-grow:0!important}.flex-xxxl-grow-1{flex-grow:1!important}.flex-xxxl-shrink-0{flex-shrink:0!important}.flex-xxxl-shrink-1{flex-shrink:1!important}.justify-content-xxxl-start{justify-content:flex-start!important}.justify-content-xxxl-end{justify-content:flex-end!important}.justify-content-xxxl-center{justify-content:center!important}.justify-content-xxxl-between{justify-content:space-between!important}.justify-content-xxxl-around{justify-content:space-around!important}.align-items-xxxl-start{align-items:flex-start!important}.align-items-xxxl-end{align-items:flex-end!important}.align-items-xxxl-center{align-items:center!important}.align-items-xxxl-baseline{align-items:baseline!important}.align-items-xxxl-stretch{align-items:stretch!important}.align-content-xxxl-start{align-content:flex-start!important}.align-content-xxxl-end{align-content:flex-end!important}.align-content-xxxl-center{align-content:center!important}.align-content-xxxl-between{align-content:space-between!important}.align-content-xxxl-around{align-content:space-around!important}.align-content-xxxl-stretch{align-content:stretch!important}.align-self-xxxl-auto{align-self:auto!important}.align-self-xxxl-start{align-self:flex-start!important}.align-self-xxxl-end{align-self:flex-end!important}.align-self-xxxl-center{align-self:center!important}.align-self-xxxl-baseline{align-self:baseline!important}.align-self-xxxl-stretch{align-self:stretch!important}.m-xxxl-auto{margin:auto!important}.mt-xxxl-auto,.my-xxxl-auto{margin-top:auto!important}.mr-xxxl-auto,.mx-xxxl-auto{margin-right:auto!important}.mb-xxxl-auto,.my-xxxl-auto{margin-bottom:auto!important}.ml-xxxl-auto,.mx-xxxl-auto{margin-left:auto!important}}@media (min-width: 1921px){.flex-xxxxl-row{flex-direction:row!important}.flex-xxxxl-column{flex-direction:column!important}.flex-xxxxl-row-reverse{flex-direction:row-reverse!important}.flex-xxxxl-column-reverse{flex-direction:column-reverse!important}.flex-xxxxl-wrap{flex-wrap:wrap!important}.flex-xxxxl-nowrap{flex-wrap:nowrap!important}.flex-xxxxl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xxxxl-fill{flex:1 1 auto!important}.flex-xxxxl-grow-0{flex-grow:0!important}.flex-xxxxl-grow-1{flex-grow:1!important}.flex-xxxxl-shrink-0{flex-shrink:0!important}.flex-xxxxl-shrink-1{flex-shrink:1!important}.justify-content-xxxxl-start{justify-content:flex-start!important}.justify-content-xxxxl-end{justify-content:flex-end!important}.justify-content-xxxxl-center{justify-content:center!important}.justify-content-xxxxl-between{justify-content:space-between!important}.justify-content-xxxxl-around{justify-content:space-around!important}.align-items-xxxxl-start{align-items:flex-start!important}.align-items-xxxxl-end{align-items:flex-end!important}.align-items-xxxxl-center{align-items:center!important}.align-items-xxxxl-baseline{align-items:baseline!important}.align-items-xxxxl-stretch{align-items:stretch!important}.align-content-xxxxl-start{align-content:flex-start!important}.align-content-xxxxl-end{align-content:flex-end!important}.align-content-xxxxl-center{align-content:center!important}.align-content-xxxxl-between{align-content:space-between!important}.align-content-xxxxl-around{align-content:space-around!important}.align-content-xxxxl-stretch{align-content:stretch!important}.align-self-xxxxl-auto{align-self:auto!important}.align-self-xxxxl-start{align-self:flex-start!important}.align-self-xxxxl-end{align-self:flex-end!important}.align-self-xxxxl-center{align-self:center!important}.align-self-xxxxl-baseline{align-self:baseline!important}.align-self-xxxxl-stretch{align-self:stretch!important}.m-xxxxl-auto{margin:auto!important}.mt-xxxxl-auto,.my-xxxxl-auto{margin-top:auto!important}.mr-xxxxl-auto,.mx-xxxxl-auto{margin-right:auto!important}.mb-xxxxl-auto,.my-xxxxl-auto{margin-bottom:auto!important}.ml-xxxxl-auto,.mx-xxxxl-auto{margin-left:auto!important}}.mt--0{margin-top:0!important}.mb--0{margin-bottom:0!important}.pt--0{padding-top:0}.pb--0{padding-bottom:0}.mblock--0{margin-block:0px}.pblock--0{padding-block:0px}.mt--10{margin-top:10px!important}.mb--10{margin-bottom:10px!important}.pt--10{padding-top:10px}.pb--10{padding-bottom:10px}.mblock--10{margin-block:10px}.pblock--10{padding-block:10px}.mt--20{margin-top:20px!important}.mb--20{margin-bottom:20px!important}.pt--20{padding-top:20px}.pb--20{padding-bottom:20px}.mblock--20{margin-block:20px}.pblock--20{padding-block:20px}.mt--25{margin-top:25px!important}.mb--25{margin-bottom:25px!important}.pt--25{padding-top:25px}.pb--25{padding-bottom:25px}.mblock--25{margin-block:25px}.pblock--25{padding-block:25px}.mt--30{margin-top:30px!important}.mb--30{margin-bottom:30px!important}.pt--30{padding-top:30px}.pb--30{padding-bottom:30px}.mblock--30{margin-block:30px}.pblock--30{padding-block:30px}.mt--40{margin-top:40px!important}.mb--40{margin-bottom:40px!important}.pt--40{padding-top:40px}.pb--40{padding-bottom:40px}.mblock--40{margin-block:40px}.pblock--40{padding-block:40px}.mt--50{margin-top:50px!important}.mb--50{margin-bottom:50px!important}.pt--50{padding-top:50px}.pb--50{padding-bottom:50px}.mblock--50{margin-block:50px}.pblock--50{padding-block:50px}.mt--60{margin-top:60px!important}.mb--60{margin-bottom:60px!important}.pt--60{padding-top:60px}.pb--60{padding-bottom:60px}.mblock--60{margin-block:60px}.pblock--60{padding-block:60px}.mt--70{margin-top:70px!important}.mb--70{margin-bottom:70px!important}.pt--70{padding-top:70px}.pb--70{padding-bottom:70px}.mblock--70{margin-block:70px}.pblock--70{padding-block:70px}.mt--80{margin-top:80px!important}.mb--80{margin-bottom:80px!important}.pt--80{padding-top:80px}.pb--80{padding-bottom:80px}.mblock--80{margin-block:80px}.pblock--80{padding-block:80px}.mt--90{margin-top:90px!important}.mb--90{margin-bottom:90px!important}.pt--90{padding-top:90px}.pb--90{padding-bottom:90px}.mblock--90{margin-block:90px}.pblock--90{padding-block:90px}.mt--100{margin-top:100px!important}.mb--100{margin-bottom:100px!important}.pt--100{padding-top:100px}.pb--100{padding-bottom:100px}.mblock--100{margin-block:100px}.pblock--100{padding-block:100px}.mt--150{margin-top:150px!important}.mb--150{margin-bottom:150px!important}.pt--150{padding-top:150px}.pb--150{padding-bottom:150px}.mblock--150{margin-block:150px}.pblock--150{padding-block:150px}.mt--180{margin-top:180px!important}.mb--180{margin-bottom:180px!important}.pt--180{padding-top:180px}.pb--180{padding-bottom:180px}.mblock--180{margin-block:180px}.pblock--180{padding-block:180px}@keyframes move-right{0%{right:30px}50%{right:20px}to{right:30px}}.cs_form_field_2{display:block;width:100%;border:1px solid var(--cl_border-dark);padding:7px 20px;min-height:47px;outline:none;background-color:transparent}.cs_form_field_2:focus{border-color:var(--cl_accent)}.cs_image_layer.cs_style_3.cs_type_1,.cs_image_layer.cs_style_4.cs_type_1{border-radius:250px 0}.cs_image_layer.cs_style_3.cs_type_1 img,.cs_image_layer.cs_style_4.cs_type_1 img{border-radius:inherit}.cs_image_layer.cs_style_3.cs_type_1:before,.cs_image_layer.cs_style_4.cs_type_1:before{border-radius:225px 0}.cs_iconbox.cs_style_4{display:flex;gap:24px;align-items:center}.cs_iconbox.cs_style_4:not(:last-child){margin-bottom:40px}.cs_iconbox.cs_style_4 .cs_iconbox_icon{height:88px;width:88px;border:1px solid var(--cl_icon);flex:none}.cs_iconbox.cs_style_4 .cs_iconbox_icon img{flex:none;height:40px;width:40px}.form-control:has(.p-dropdown-label-empty)~label{opacity:1;transform:none}.form-control::ng-deep .p-dropdown{position:relative;width:100%}.form-control::ng-deep .p-dropdown-trigger{position:absolute;right:0;top:4px}.form-control::ng-deep .p-overlay{background:var(--cl_background_dropdown);border-bottom-left-radius:5px;border-bottom-right-radius:5px;margin-top:6px;left:-21px!important;top:27px!important;width:calc(100% + 42px);border:1px solid var(--cl_border-dropdown);border-top:0}.form-control::ng-deep .p-overlay ul{display:flex;flex-direction:column}.form-control::ng-deep .p-overlay ul p-dropdownitem{width:100%}.form-control::ng-deep .p-overlay ul p-dropdownitem:last-child li{border-bottom-left-radius:8px;border-bottom-right-radius:8px}.form-control::ng-deep .p-overlay ul p-dropdownitem li{padding:15px}.form-control::ng-deep .p-overlay ul p-dropdownitem li:focus-visible{outline:none}.cs_form label{margin-top:20px}.cs_form .form-warning{color:var(--cl_error);font-size:smaller}.cs_form .conditions{display:inline-block;vertical-align:middle;margin:.5rem 0}.cs_form .formcontrol{vertical-align:middle;margin-right:8px}.cs_form ::ng-deep .error-checkbox .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate):not([data-indeterminate=true])~.mdc-checkbox__background{border-color:var(--cl_error)!important;background-color:transparent}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i3.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "ngmodule", type: DropdownModule }, { kind: "component", type: i4.Dropdown, selector: "p-dropdown", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "variant", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "autoShowPanelOnPrintableCharacterKeyDown", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
@@ -109,4 +137,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
109
137
|
}], submit: [{
|
|
110
138
|
type: Output
|
|
111
139
|
}] } });
|
|
112
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFieWxvbi1jb250YWN0LWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFieWxvbi9zcmMvbGliL2NvbXBvbmVudHMvY29yZS9iYWJ5bG9uLWNvbnRhY3QtZm9ybS9iYWJ5bG9uLWNvbnRhY3QtZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYWJ5bG9uL3NyYy9saWIvY29tcG9uZW50cy9jb3JlL2JhYnlsb24tY29udGFjdC1mb3JtL2JhYnlsb24tY29udGFjdC1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixNQUFNLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUdILFdBQVcsRUFDWCxtQkFBbUIsRUFDbkIsVUFBVSxHQUNiLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7QUFvQmxELE1BQU0sT0FBTywyQkFBMkI7SUFrQnBDLFlBQTZCLEVBQWU7UUFBZixPQUFFLEdBQUYsRUFBRSxDQUFhO1FBTmxDLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBSTNDLGNBQVMsR0FBRyxNQUFNLENBQVUsS0FBSyxDQUFDLENBQUM7SUFFWSxDQUFDO0lBRWhELFFBQVE7UUFDSixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELGNBQWM7UUFDVixNQUFNLFFBQVEsR0FBMkIsRUFBRSxDQUFDO1FBRTVDLElBQUks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QU8sQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUM1QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7K0dBM0ZRLDJCQUEyQjttR0FBM0IsMkJBQTJCLHVWQ3RDeEMscytTQXVMQSw2eXlCRDNKUSxZQUFZLDRIQUNaLFdBQVcsMnBCQUNYLG1CQUFtQiwrVUFDbkIsaUJBQWlCLDZXQUNqQixjQUFjOzs0RkFNVCwyQkFBMkI7a0JBZHZDLFNBQVM7K0JBQ0ksMEJBQTBCLGNBQ3hCLElBQUksV0FDUDt3QkFDTCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixpQkFBaUI7d0JBQ2pCLGNBQWM7cUJBQ2pCLG1CQUdnQix1QkFBdUIsQ0FBQyxNQUFNO2dGQUd0QyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUksTUFBTTtzQkFBZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIHNpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEZvcm1CdWlsZGVyLFxuICAgIEZvcm1Hcm91cCxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIFZhbGlkYXRvcnMsXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdENoZWNrYm94TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnO1xuaW1wb3J0IHsgRHJvcGRvd25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL2Ryb3Bkb3duJztcbmltcG9ydCB7IEJhYnlsb25CdXR0b25JIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcy9iYWJ5bG9uLWJ1dHRvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQmFieWxvbkRyb3Bkb3duSSB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMvYmFieWxvbi1kcm9wZG93bi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQmFieWxvbkltYWdlSSB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMvYmFieWxvbi1pbWFnZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQmFieWxvbklucHV0SSB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMvYmFieWxvbi1pbnB1dC5pbnRlcmZhY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xpYi1iYWJ5bG9uLWNvbnRhY3QtZm9ybScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgICAgIE1hdENoZWNrYm94TW9kdWxlLFxuICAgICAgICBEcm9wZG93bk1vZHVsZSxcbiAgICBdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9iYWJ5bG9uLWNvbnRhY3QtZm9ybS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmw6ICcuL2JhYnlsb24tY29udGFjdC1mb3JtLmNvbXBvbmVudC5zY3NzJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQmFieWxvbkNvbnRhY3RGb3JtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBASW5wdXQoKSB0aXRsZT86IHN0cmluZztcbiAgICBASW5wdXQoKSBwcmV0aXRsZT86IHN0cmluZztcbiAgICBASW5wdXQoKSBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgICBASW5wdXQoKSBpbnB1dHM/OiBCYWJ5bG9uSW5wdXRJW107XG4gICAgQElucHV0KCkgdGV4dGFyZWE/OiBCYWJ5bG9uSW5wdXRJO1xuICAgIEBJbnB1dCgpIGNvbmRpdGlvbnM/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgY29uZGl0aW9uczI/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgYnV0dG9uPzogQmFieWxvbkJ1dHRvbkk7XG4gICAgQElucHV0KCkgaW1hZ2U/OiBCYWJ5bG9uSW1hZ2VJO1xuICAgIEBJbnB1dCgpIGRyb3Bkb3duPzogQmFieWxvbkRyb3Bkb3duSTtcblxuICAgIEBPdXRwdXQoKSBzdWJtaXQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIGZvcm0hOiBGb3JtR3JvdXA7XG5cbiAgICBmb3JtUmVhZHkgPSBzaWduYWw8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBmYjogRm9ybUJ1aWxkZXIpIHt9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pbml0aWFsaXplRm9ybSgpO1xuICAgIH1cblxuICAgIGluaXRpYWxpemVGb3JtKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBjb250cm9sczogeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9IHt9O1xuXG4gICAgICAgIHRoaXMuaW5wdXRzPy5mb3JFYWNoKChpbnB1dCkgPT4ge1xuICAgICAgICAgICAgaWYgKGlucHV0LmlkKSB7XG4gICAgICAgICAgICAgICAgY29udHJvbHNbaW5wdXQuaWRdID0gWycnLCBpbnB1dC52YWxpZGF0b3JzXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHRoaXMudGV4dGFyZWEpIHtcbiAgICAgICAgICAgIGNvbnRyb2xzW3RoaXMudGV4dGFyZWEuaWQhXSA9IFsnJywgdGhpcy50ZXh0YXJlYT8udmFsaWRhdG9yc107XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5jb25kaXRpb25zKSB7XG4gICAgICAgICAgICBjb250cm9sc1snY2hlY2tib3gnXSA9IFtmYWxzZSwgVmFsaWRhdG9ycy5yZXF1aXJlZFRydWVdO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmNvbmRpdGlvbnMyKSB7XG4gICAgICAgICAgICBjb250cm9sc1snY2hlY2tib3gyJ10gPSBbZmFsc2UsIFZhbGlkYXRvcnMucmVxdWlyZWRUcnVlXTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5kcm9wZG93bikge1xuICAgICAgICAgICAgY29udHJvbHNbJ2Ryb3Bkb3duJ10gPSBbJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cChjb250cm9scyk7XG4gICAgICAgIHRoaXMuZm9ybVJlYWR5LnNldCh0cnVlKTtcbiAgICB9XG5cbiAgICB2YWxpZGF0ZUlucHV0KGlucHV0OiBCYWJ5bG9uSW5wdXRJKTogdm9pZCB7XG4gICAgICAgIGlmIChpbnB1dCkge1xuICAgICAgICAgICAgaW5wdXQudmFsaWQgPSB0aGlzLmZvcm0uY29udHJvbHNbaW5wdXQuaWQhXS5lcnJvcnMgPT09IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dENoYW5nZShldmVudDogRXZlbnQsIGlucHV0OiBCYWJ5bG9uSW5wdXRJKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGlucHV0RWxlbWVudCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50O1xuXG4gICAgICAgIGlmIChpbnB1dC50eXBlID09PSAndGVsJykge1xuICAgICAgICAgICAgaW5wdXRFbGVtZW50LnZhbHVlID0gaW5wdXRFbGVtZW50LnZhbHVlLnJlcGxhY2UoL1teMC05K10vZywgJycpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmVzZXRGb3JtKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmZvcm0/LnJlc2V0KCk7XG4gICAgICAgIGlmICh0aGlzLnRleHRhcmVhKSB7XG4gICAgICAgICAgICB0aGlzLnRleHRhcmVhLnZhbHVlID0gJyc7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5pbnB1dHM/LmZvckVhY2goKGlucHV0KSA9PiB7XG4gICAgICAgICAgICBpbnB1dC52YWx1ZSA9ICcnO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBzdWJtaXRGb3JtKGU6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy5mb3JtLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcbiAgICAgICAgaWYgKHRoaXMuZm9ybS5pbnZhbGlkKSB7XG4gICAgICAgICAgICB0aGlzLm1hcmtBbGxDb250cm9sc0FzVG91Y2hlZCgpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5zdWJtaXQuZW1pdCh0aGlzLmZvcm0udmFsdWUpO1xuICAgICAgICB0aGlzLnJlc2V0Rm9ybSgpO1xuICAgIH1cblxuICAgIG1hcmtBbGxDb250cm9sc0FzVG91Y2hlZCgpOiB2b2lkIHtcbiAgICAgICAgT2JqZWN0LnZhbHVlcyh0aGlzLmZvcm0uY29udHJvbHMpLmZvckVhY2goKGNvbnRyb2wpID0+IHtcbiAgICAgICAgICAgIGNvbnRyb2wubWFya0FzVG91Y2hlZCgpO1xuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8c2VjdGlvbiBjbGFzcz1cImJhYnlsb25fX2NvbnRhY3QtZm9ybSBtYXJnaW4tbWFpblwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBjc19nYXBfeV81MFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy02XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNzX3ByXzEwMFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW50cm9faW5mbyBtYi0tNDBcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAocHJldGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJzdWJ0aXRsZVwiPnt7IHByZXRpdGxlIH19PC9oMz5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAodGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0aXRsZSB3b3cgZmFkZUluVXBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXdvdy1kdXJhdGlvbj1cIjAuOHNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXdvdy1kZWxheT1cIjAuMnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgdGl0bGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2gyPlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChkZXNjcmlwdGlvbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwidGV4dCBtYi0tMFwiPnt7IGRlc2NyaXB0aW9uIH19PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChmb3JtUmVhZHkoKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGZvcm1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZm9ybUdyb3VwXT1cImZvcm1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiY29udGFjdGZvcm1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY3NfZm9ybSBjc19zdHlsZV8yXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGRyb3Bkb3duKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGRyb3Bkb3duLnRpdGxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidGV4dCBtYi0tMTBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+e3sgZHJvcGRvd24udGl0bGUgfX0qPC9sYWJlbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwLWRyb3Bkb3duXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjc19mb3JtX2ZpZWxkXzIgY3MtLXJhZGl1cyBmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtvcHRpb25zXT1cImRyb3Bkb3duLm9wdGlvbnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImRyb3Bkb3duXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiZHJvcGRvd24ucGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbkxhYmVsPVwibmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3AtZHJvcGRvd24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm0uY29udHJvbHNbJ2Ryb3Bkb3duJ10uaW52YWxpZCAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm0uY29udHJvbHNbJ2Ryb3Bkb3duJ10udG91Y2hlZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0td2FybmluZ1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c21hbGw+e3sgZHJvcGRvd24uZXJyb3IgfX08L3NtYWxsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpbnB1dHM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAZm9yIChpbnB1dCBvZiBpbnB1dHM7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGlucHV0LnRpdGxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInRleHQgbWItLTEwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID57eyBpbnB1dC50aXRsZSB9fSo8L2xhYmVsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY3NfZm9ybV9maWVsZF8yIGNzLS1yYWRpdXNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHlwZV09XCJpbnB1dC50eXBlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lkXT1cImlucHV0Lm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmFtZV09XCJpbnB1dC5uYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cImlucHV0LnRpdGxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJpbnB1dC5pZCFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiaW5wdXQudmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYmx1cik9XCJ2YWxpZGF0ZUlucHV0KGlucHV0KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dENoYW5nZSgkZXZlbnQsIGlucHV0KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybS5jb250cm9sc1tpbnB1dC5pZCFdLmludmFsaWQgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybS5jb250cm9sc1tpbnB1dC5pZCFdLnRvdWNoZWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0td2FybmluZ1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsPnt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXQ/LmVycm9yXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fTwvc21hbGw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAodGV4dGFyZWEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAodGV4dGFyZWEudGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ0ZXh0IG1iLS0xMFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID57eyB0ZXh0YXJlYS50aXRsZSB9fSo8L2xhYmVsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRleHRhcmVhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29scz1cIjMwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3dzPVwiNlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjc19mb3JtX2ZpZWxkXzIgY3MtLXJhZGl1c1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lkXT1cInRleHRhcmVhLm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwidGV4dGFyZWEuaWQhXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwidGV4dGFyZWEudGl0bGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvdGV4dGFyZWE+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm0uY29udHJvbHNbdGV4dGFyZWEuaWQhXS5pbnZhbGlkICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybS5jb250cm9sc1t0ZXh0YXJlYS5pZCFdLnRvdWNoZWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLXdhcm5pbmdcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsPnt7IHRleHRhcmVhLmVycm9yIH19PC9zbWFsbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoY29uZGl0aW9ucykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiIFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1jaGVja2JveFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdlcnJvci1jaGVja2JveCc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtLmNvbnRyb2xzWydjaGVja2JveCddXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmludmFsaWQgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm0uY29udHJvbHNbJ2NoZWNrYm94J11cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudG91Y2hlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L21hdC1jaGVja2JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjb25kaXRpb25zXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaW5uZXJIVE1MXT1cImNvbmRpdGlvbnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChjb25kaXRpb25zMikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiIFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1jaGVja2JveFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImNoZWNrYm94MlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZXJyb3ItY2hlY2tib3gnOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybS5jb250cm9sc1snY2hlY2tib3gyJ11cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuaW52YWxpZCAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybS5jb250cm9sc1snY2hlY2tib3gyJ11cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudG91Y2hlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L21hdC1jaGVja2JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjb25kaXRpb25zXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaW5uZXJIVE1MXT1cImNvbmRpdGlvbnMyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoYnV0dG9uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJidG5zX19ib3ggYWxpZ24tLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bl9wcmltYXJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwic3VibWl0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdwb2ludGVycy1ub25lJzogZm9ybS5pbnZhbGlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzdWJtaXRGb3JtKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiPnt7IGJ1dHRvbi5sYWJlbCB9fTwvYj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJhYnlsb24tYXJyb3ctcmlnaHQtYmlnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZm9ybT5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICBAaWYgKGltYWdlKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy02XCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjc19pbWFnZV9sYXllciBjc19zdHlsZV8zIHBvc2l0aW9uLXJlbGF0aXZlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIFtzcmNdPVwiaW1hZ2VcIiBhbHQ9XCJDb250YWN0XCIgY2xhc3M9XCJjcy0tcmFkaXVzXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9zZWN0aW9uPlxuIl19
|
|
140
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFieWxvbi1jb250YWN0LWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFieWxvbi9zcmMvbGliL2NvbXBvbmVudHMvY29yZS9iYWJ5bG9uLWNvbnRhY3QtZm9ybS9iYWJ5bG9uLWNvbnRhY3QtZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYWJ5bG9uL3NyYy9saWIvY29tcG9uZW50cy9jb3JlL2JhYnlsb24tY29udGFjdC1mb3JtL2JhYnlsb24tY29udGFjdC1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixNQUFNLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUVILFdBQVcsRUFDWCxtQkFBbUIsRUFFbkIsVUFBVSxHQUliLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFHL0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7QUFnQmxELE1BQU0sT0FBTywyQkFBMkI7SUFrQnBDLFlBQTZCLEVBQWU7UUFBZixPQUFFLEdBQUYsRUFBRSxDQUFhO1FBTmxDLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBSTNDLGNBQVMsR0FBRyxNQUFNLENBQVUsS0FBSyxDQUFDLENBQUM7SUFFWSxDQUFDO0lBRWhELFFBQVE7UUFDSixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELGNBQWM7UUFDVixNQUFNLFFBQVEsR0FBMkIsRUFBRSxDQUFDO1FBRTVDLElBQUks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fSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIElucHV0LFxuICAgIE9uSW5pdCxcbiAgICBPdXRwdXQsXG4gICAgc2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhYnlsb25CdXR0b25JIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcy9iYWJ5bG9uLWJ1dHRvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQmFieWxvbklucHV0SSB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMvYmFieWxvbi1pbnB1dC5pbnRlcmZhY2UnO1xuaW1wb3J0IHtcbiAgICBGb3JtQnVpbGRlcixcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIEZvcm1Hcm91cCxcbiAgICBWYWxpZGF0b3JzLFxuICAgIEFic3RyYWN0Q29udHJvbCxcbiAgICBWYWxpZGF0aW9uRXJyb3JzLFxuICAgIFZhbGlkYXRvckZuLFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRDaGVja2JveE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoZWNrYm94JztcbmltcG9ydCB7IEJhYnlsb25JbWFnZUkgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzL2JhYnlsb24taW1hZ2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IEJhYnlsb25Ecm9wZG93bkkgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzL2JhYnlsb24tZHJvcGRvd24uaW50ZXJmYWNlJztcbmltcG9ydCB7IERyb3Bkb3duTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9kcm9wZG93bic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbGliLWJhYnlsb24tY29udGFjdC1mb3JtJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgTWF0Q2hlY2tib3hNb2R1bGUsXG4gICAgICAgIERyb3Bkb3duTW9kdWxlLFxuICAgIF0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2JhYnlsb24tY29udGFjdC1mb3JtLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vYmFieWxvbi1jb250YWN0LWZvcm0uY29tcG9uZW50LnNjc3MnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBCYWJ5bG9uQ29udGFjdEZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBJbnB1dCgpIHRpdGxlPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHByZXRpdGxlPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGlucHV0cz86IEJhYnlsb25JbnB1dElbXTtcbiAgICBASW5wdXQoKSB0ZXh0YXJlYT86IEJhYnlsb25JbnB1dEk7XG4gICAgQElucHV0KCkgY29uZGl0aW9ucz86IHN0cmluZztcbiAgICBASW5wdXQoKSBjb25kaXRpb25zMj86IHN0cmluZztcbiAgICBASW5wdXQoKSBidXR0b24/OiBCYWJ5bG9uQnV0dG9uSTtcbiAgICBASW5wdXQoKSBpbWFnZT86IEJhYnlsb25JbWFnZUk7XG4gICAgQElucHV0KCkgZHJvcGRvd24/OiBCYWJ5bG9uRHJvcGRvd25JO1xuXG4gICAgQE91dHB1dCgpIHN1Ym1pdCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gICAgZm9ybSE6IEZvcm1Hcm91cDtcblxuICAgIGZvcm1SZWFkeSA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGZiOiBGb3JtQnVpbGRlcikge31cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmluaXRpYWxpemVGb3JtKCk7XG4gICAgfVxuXG4gICAgaW5pdGlhbGl6ZUZvcm0oKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNvbnRyb2xzOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0ge307XG5cbiAgICAgICAgdGhpcy5pbnB1dHM/LmZvckVhY2goKGlucHV0KSA9PiB7XG4gICAgICAgICAgICBpZiAoaW5wdXQuaWQpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBleGlzdGluZ1ZhbGlkYXRvcnMgPSBbLi4uKGlucHV0LnZhbGlkYXRvcnMgfHwgW10pXTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IHZhbGlkYXRvcnMgPVxuICAgICAgICAgICAgICAgICAgICBpbnB1dC5pZCA9PT0gJ3Bob25lJ1xuICAgICAgICAgICAgICAgICAgICAgICAgPyBbLi4uZXhpc3RpbmdWYWxpZGF0b3JzLCB0aGlzLnBob25lVmFsaWRhdG9yKCldXG4gICAgICAgICAgICAgICAgICAgICAgICA6IGV4aXN0aW5nVmFsaWRhdG9ycztcbiAgICAgICAgICAgICAgICBjb250cm9sc1tpbnB1dC5pZF0gPSBbJycsIHZhbGlkYXRvcnNdO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICBpZiAodGhpcy50ZXh0YXJlYSAmJiB0aGlzLnRleHRhcmVhLmlkKSB7XG4gICAgICAgICAgICBjb250cm9sc1t0aGlzLnRleHRhcmVhLmlkXSA9IFsnJywgdGhpcy50ZXh0YXJlYT8udmFsaWRhdG9ycyB8fCBbXV07XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5jb25kaXRpb25zKSB7XG4gICAgICAgICAgICBjb250cm9sc1snY2hlY2tib3gnXSA9IFtmYWxzZSwgVmFsaWRhdG9ycy5yZXF1aXJlZFRydWVdO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmNvbmRpdGlvbnMyKSB7XG4gICAgICAgICAgICBjb250cm9sc1snY2hlY2tib3gyJ10gPSBbZmFsc2UsIFZhbGlkYXRvcnMucmVxdWlyZWRUcnVlXTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5kcm9wZG93bikge1xuICAgICAgICAgICAgY29udHJvbHNbJ2Ryb3Bkb3duJ10gPSBbJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cChjb250cm9scyk7XG4gICAgICAgIHRoaXMuZm9ybVJlYWR5LnNldCh0cnVlKTtcbiAgICB9XG5cbiAgICB2YWxpZGF0ZUlucHV0KGlucHV0OiBCYWJ5bG9uSW5wdXRJKTogdm9pZCB7XG4gICAgICAgIGlmIChpbnB1dCAmJiBpbnB1dC5pZCkge1xuICAgICAgICAgICAgY29uc3QgY29udHJvbCA9IHRoaXMuZm9ybS5nZXQoaW5wdXQuaWQpO1xuICAgICAgICAgICAgaWYgKGNvbnRyb2wpIHtcbiAgICAgICAgICAgICAgICBpbnB1dC52YWxpZCA9IGNvbnRyb2wuZXJyb3JzID09PSBudWxsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgaW5wdXRDaGFuZ2UoZXZlbnQ6IEV2ZW50LCBpbnB1dDogQmFieWxvbklucHV0SSk6IHZvaWQge1xuICAgICAgICBjb25zdCBpbnB1dEVsZW1lbnQgPSBldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudDtcblxuICAgICAgICBpZiAoaW5wdXQudHlwZSA9PT0gJ3RlbCcpIHtcbiAgICAgICAgICAgIGlucHV0RWxlbWVudC52YWx1ZSA9IGlucHV0RWxlbWVudC52YWx1ZS5yZXBsYWNlKC9bXjAtOStdL2csICcnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJlc2V0Rm9ybSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mb3JtPy5yZXNldCgpO1xuXG4gICAgICAgIE9iamVjdC52YWx1ZXModGhpcy5mb3JtLmNvbnRyb2xzKS5mb3JFYWNoKChjb250cm9sKSA9PiB7XG4gICAgICAgICAgICBjb250cm9sLm1hcmtBc1ByaXN0aW5lKCk7XG4gICAgICAgICAgICBjb250cm9sLm1hcmtBc1VudG91Y2hlZCgpO1xuICAgICAgICAgICAgY29udHJvbC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmICh0aGlzLnRleHRhcmVhKSB7XG4gICAgICAgICAgICB0aGlzLnRleHRhcmVhLnZhbHVlID0gJyc7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5pbnB1dHM/LmZvckVhY2goKGlucHV0KSA9PiB7XG4gICAgICAgICAgICBpbnB1dC52YWx1ZSA9ICcnO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBzdWJtaXRGb3JtKGU6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy5mb3JtLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcbiAgICAgICAgaWYgKHRoaXMuZm9ybS5pbnZhbGlkKSB7XG4gICAgICAgICAgICB0aGlzLm1hcmtBbGxDb250cm9sc0FzVG91Y2hlZCgpO1xuICAgICAgICAgICAgdGhpcy5pbnB1dHM/LmZvckVhY2goKGlucHV0KSA9PiB0aGlzLnZhbGlkYXRlSW5wdXQoaW5wdXQpKTtcbiAgICAgICAgICAgIGlmICh0aGlzLnRleHRhcmVhKSB0aGlzLnZhbGlkYXRlSW5wdXQodGhpcy50ZXh0YXJlYSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zdWJtaXQuZW1pdCh0aGlzLmZvcm0udmFsdWUpO1xuICAgICAgICB0aGlzLnJlc2V0Rm9ybSgpO1xuICAgIH1cblxuICAgIG1hcmtBbGxDb250cm9sc0FzVG91Y2hlZCgpOiB2b2lkIHtcbiAgICAgICAgT2JqZWN0LnZhbHVlcyh0aGlzLmZvcm0uY29udHJvbHMpLmZvckVhY2goKGNvbnRyb2wpID0+IHtcbiAgICAgICAgICAgIGNvbnRyb2wubWFya0FzVG91Y2hlZCgpO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmlucHV0cz8uZm9yRWFjaCgoaW5wdXQpID0+IHRoaXMudmFsaWRhdGVJbnB1dChpbnB1dCkpO1xuICAgICAgICBpZiAodGhpcy50ZXh0YXJlYSkgdGhpcy52YWxpZGF0ZUlucHV0KHRoaXMudGV4dGFyZWEpO1xuICAgIH1cblxuICAgIHBob25lVmFsaWRhdG9yKCk6IFZhbGlkYXRvckZuIHtcbiAgICAgICAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XG4gICAgICAgICAgICBpZiAoIWNvbnRyb2wudmFsdWUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgcGhvbmVSZWdleCA9IC9eKD86WysgXT8pW1xcZCAtXXs3LDE1fSQvO1xuICAgICAgICAgICAgY29uc3QgdmFsaWQgPSBwaG9uZVJlZ2V4LnRlc3QoY29udHJvbC52YWx1ZSk7XG4gICAgICAgICAgICByZXR1cm4gdmFsaWQgPyBudWxsIDogeyBpbnZhbGlkUGhvbmU6IHRydWUgfTtcbiAgICAgICAgfTtcbiAgICB9XG59XG4iLCI8c2VjdGlvbiBjbGFzcz1cImJhYnlsb25fX2NvbnRhY3QtZm9ybSBtYXJnaW4tbWFpblwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBjc19nYXBfeV81MFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy02XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNzX3ByXzEwMFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW50cm9faW5mbyBtYi0tNDBcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAocHJldGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJzdWJ0aXRsZVwiPnt7IHByZXRpdGxlIH19PC9oMz5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAodGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0aXRsZSB3b3cgZmFkZUluVXBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXdvdy1kdXJhdGlvbj1cIjAuOHNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXdvdy1kZWxheT1cIjAuMnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgdGl0bGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2gyPlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChkZXNjcmlwdGlvbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwidGV4dCBtYi0tMFwiPnt7IGRlc2NyaXB0aW9uIH19PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChmb3JtUmVhZHkoKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGZvcm1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZm9ybUdyb3VwXT1cImZvcm1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiY29udGFjdGZvcm1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY3NfZm9ybSBjc19zdHlsZV8yXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGRyb3Bkb3duKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGRyb3Bkb3duLnRpdGxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwidGV4dCBtYi0tMTBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+e3sgZHJvcGRvd24udGl0bGUgfX0qPC9sYWJlbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwLWRyb3Bkb3duXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjc19mb3JtX2ZpZWxkXzIgY3MtLXJhZGl1cyBmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtvcHRpb25zXT1cImRyb3Bkb3duLm9wdGlvbnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImRyb3Bkb3duXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiZHJvcGRvd24ucGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbkxhYmVsPVwibmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3AtZHJvcGRvd24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm0uY29udHJvbHNbJ2Ryb3Bkb3duJ10uaW52YWxpZCAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm0uY29udHJvbHNbJ2Ryb3Bkb3duJ10udG91Y2hlZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0td2FybmluZ1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c21hbGw+e3sgZHJvcGRvd24uZXJyb3IgfX08L3NtYWxsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpbnB1dHM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAZm9yIChpbnB1dCBvZiBpbnB1dHM7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGlucHV0LnRpdGxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInRleHQgbWItLTEwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID57eyBpbnB1dC50aXRsZSB9fSo8L2xhYmVsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY3NfZm9ybV9maWVsZF8yIGNzLS1yYWRpdXNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHlwZV09XCJpbnB1dC50eXBlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lkXT1cImlucHV0Lm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmFtZV09XCJpbnB1dC5uYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cImlucHV0LnRpdGxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJpbnB1dC5pZCFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiaW5wdXQudmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYmx1cik9XCJ2YWxpZGF0ZUlucHV0KGlucHV0KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dENoYW5nZSgkZXZlbnQsIGlucHV0KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybS5jb250cm9sc1tpbnB1dC5pZCFdLmludmFsaWQgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybS5jb250cm9sc1tpbnB1dC5pZCFdLnRvdWNoZWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0td2FybmluZ1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsPnt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXQ/LmVycm9yXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fTwvc21hbGw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAodGV4dGFyZWEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAodGV4dGFyZWEudGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJ0ZXh0IG1iLS0xMFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID57eyB0ZXh0YXJlYS50aXRsZSB9fSo8L2xhYmVsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRleHRhcmVhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29scz1cIjMwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3dzPVwiNlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjc19mb3JtX2ZpZWxkXzIgY3MtLXJhZGl1c1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lkXT1cInRleHRhcmVhLm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwidGV4dGFyZWEuaWQhXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwidGV4dGFyZWEudGl0bGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvdGV4dGFyZWE+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm0uY29udHJvbHNbdGV4dGFyZWEuaWQhXS5pbnZhbGlkICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybS5jb250cm9sc1t0ZXh0YXJlYS5pZCFdLnRvdWNoZWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLXdhcm5pbmdcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsPnt7IHRleHRhcmVhLmVycm9yIH19PC9zbWFsbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoY29uZGl0aW9ucykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiIFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1jaGVja2JveFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdlcnJvci1jaGVja2JveCc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtLmNvbnRyb2xzWydjaGVja2JveCddXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmludmFsaWQgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm0uY29udHJvbHNbJ2NoZWNrYm94J11cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudG91Y2hlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L21hdC1jaGVja2JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjb25kaXRpb25zXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaW5uZXJIVE1MXT1cImNvbmRpdGlvbnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChjb25kaXRpb25zMikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiIFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1jaGVja2JveFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImNoZWNrYm94MlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZXJyb3ItY2hlY2tib3gnOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybS5jb250cm9sc1snY2hlY2tib3gyJ11cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuaW52YWxpZCAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybS5jb250cm9sc1snY2hlY2tib3gyJ11cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudG91Y2hlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L21hdC1jaGVja2JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjb25kaXRpb25zXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaW5uZXJIVE1MXT1cImNvbmRpdGlvbnMyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoYnV0dG9uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJidG5zX19ib3ggYWxpZ24tLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bl9wcmltYXJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwic3VibWl0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdwb2ludGVycy1ub25lJzogZm9ybS5pbnZhbGlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzdWJtaXRGb3JtKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiPnt7IGJ1dHRvbi5sYWJlbCB9fTwvYj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJhYnlsb24tYXJyb3ctcmlnaHQtYmlnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZm9ybT5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICBAaWYgKGltYWdlKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy02XCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjc19pbWFnZV9sYXllciBjc19zdHlsZV8zIHBvc2l0aW9uLXJlbGF0aXZlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIFtzcmNdPVwiaW1hZ2VcIiBhbHQ9XCJDb250YWN0XCIgY2xhc3M9XCJjcy0tcmFkaXVzXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9zZWN0aW9uPlxuIl19
|