@ieeesa-npm/presentation 0.20.8 → 0.21.0
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/breadcrumb/breadcrumb.component.mjs +2 -2
- package/esm2022/lib/components/color-picker/color-picker.component.mjs +2 -2
- package/esm2022/lib/components/search/search.component.mjs +2 -2
- package/esm2022/lib/components/tabs/tabs.component.mjs +1 -1
- package/fesm2022/ieeesa-npm-presentation.mjs +4 -4
- package/fesm2022/ieeesa-npm-presentation.mjs.map +1 -1
- package/lib/components/tabs/tabs.component.d.ts +1 -2
- package/package.json +1 -1
|
@@ -115,11 +115,11 @@ export class BreadcrumbComponent {
|
|
|
115
115
|
this.destroy$.unsubscribe();
|
|
116
116
|
}
|
|
117
117
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: BreadcrumbComponent, deps: [{ token: i1.ActivatedRoute }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
118
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: BreadcrumbComponent, isStandalone: true, selector: "ieeesa-breadcrumb", inputs: { breadcrumbInitialRoute: "breadcrumbInitialRoute", breadcrumbInitialRouteLabel: "breadcrumbInitialRouteLabel" }, ngImport: i0, template: "<ul class=\"ieeesa-breadcrumb breadcrumb\">\r\n <li>\r\n <a [routerLink]=\"breadcrumbInitialRoute\" class=\"ieeesa-body-sm-14 text-decoration-none\"\r\n >{{ breadcrumbInitialRouteLabel }}\r\n </a>\r\n </li>\r\n <li *ngFor=\"let breadcrumb of breadcrumbs\">\r\n <a\r\n [routerLink]=\"[breadcrumb?.url, breadcrumb?.params]\"\r\n class=\"ieeesa-body-sm-14 text-decoration-none\"\r\n >{{ breadcrumb.label }}\r\n </a>\r\n </li>\r\n</ul>", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-breadcrumb li:not(:first-of-type):before{content:\"/\";margin:0 .25em;color:#
|
|
118
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: BreadcrumbComponent, isStandalone: true, selector: "ieeesa-breadcrumb", inputs: { breadcrumbInitialRoute: "breadcrumbInitialRoute", breadcrumbInitialRouteLabel: "breadcrumbInitialRouteLabel" }, ngImport: i0, template: "<ul class=\"ieeesa-breadcrumb breadcrumb\">\r\n <li>\r\n <a [routerLink]=\"breadcrumbInitialRoute\" class=\"ieeesa-body-sm-14 text-decoration-none\"\r\n >{{ breadcrumbInitialRouteLabel }}\r\n </a>\r\n </li>\r\n <li *ngFor=\"let breadcrumb of breadcrumbs\">\r\n <a\r\n [routerLink]=\"[breadcrumb?.url, breadcrumb?.params]\"\r\n class=\"ieeesa-body-sm-14 text-decoration-none\"\r\n >{{ breadcrumb.label }}\r\n </a>\r\n </li>\r\n</ul>", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-breadcrumb li:not(:first-of-type):before{content:\"/\";margin:0 .25em;color:#787579;font-weight:400}.ieeesa-breadcrumb li a{color:#787579;cursor:pointer}.ieeesa-breadcrumb li:last-child:before,.ieeesa-breadcrumb li:last-child a{color:#000;font-family:Calibri Bold;font-weight:700}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
119
119
|
}
|
|
120
120
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: BreadcrumbComponent, decorators: [{
|
|
121
121
|
type: Component,
|
|
122
|
-
args: [{ selector: 'ieeesa-breadcrumb', standalone: true, imports: [CommonModule, RouterModule], encapsulation: ViewEncapsulation.None, template: "<ul class=\"ieeesa-breadcrumb breadcrumb\">\r\n <li>\r\n <a [routerLink]=\"breadcrumbInitialRoute\" class=\"ieeesa-body-sm-14 text-decoration-none\"\r\n >{{ breadcrumbInitialRouteLabel }}\r\n </a>\r\n </li>\r\n <li *ngFor=\"let breadcrumb of breadcrumbs\">\r\n <a\r\n [routerLink]=\"[breadcrumb?.url, breadcrumb?.params]\"\r\n class=\"ieeesa-body-sm-14 text-decoration-none\"\r\n >{{ breadcrumb.label }}\r\n </a>\r\n </li>\r\n</ul>", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-breadcrumb li:not(:first-of-type):before{content:\"/\";margin:0 .25em;color:#
|
|
122
|
+
args: [{ selector: 'ieeesa-breadcrumb', standalone: true, imports: [CommonModule, RouterModule], encapsulation: ViewEncapsulation.None, template: "<ul class=\"ieeesa-breadcrumb breadcrumb\">\r\n <li>\r\n <a [routerLink]=\"breadcrumbInitialRoute\" class=\"ieeesa-body-sm-14 text-decoration-none\"\r\n >{{ breadcrumbInitialRouteLabel }}\r\n </a>\r\n </li>\r\n <li *ngFor=\"let breadcrumb of breadcrumbs\">\r\n <a\r\n [routerLink]=\"[breadcrumb?.url, breadcrumb?.params]\"\r\n class=\"ieeesa-body-sm-14 text-decoration-none\"\r\n >{{ breadcrumb.label }}\r\n </a>\r\n </li>\r\n</ul>", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-breadcrumb li:not(:first-of-type):before{content:\"/\";margin:0 .25em;color:#787579;font-weight:400}.ieeesa-breadcrumb li a{color:#787579;cursor:pointer}.ieeesa-breadcrumb li:last-child:before,.ieeesa-breadcrumb li:last-child a{color:#000;font-family:Calibri Bold;font-weight:700}\n"] }]
|
|
123
123
|
}], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i1.Router }]; }, propDecorators: { breadcrumbInitialRoute: [{
|
|
124
124
|
type: Input
|
|
125
125
|
}], breadcrumbInitialRouteLabel: [{
|
|
@@ -264,7 +264,7 @@ export class ColorPickerComponent {
|
|
|
264
264
|
this.colorPickerEventHandlers(false);
|
|
265
265
|
}
|
|
266
266
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColorPickerComponent, deps: [{ token: i0.ElementRef }, { token: i1.FormUtilityService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
267
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ColorPickerComponent, isStandalone: true, selector: "ieeesa-color-picker", inputs: { defaultColor: "defaultColor", palette: "palette", overlayClassName: "overlayClassName", colorFormat: "colorFormat", colorAnimation: "colorAnimation", formControlName: "formControlName", paletteSelectLabel: "paletteSelectLabel", paletteCancelLabel: "paletteCancelLabel", colorPickerLabel: "colorPickerLabel", isColorCodeLabelNeeded: "isColorCodeLabelNeeded", isArrowIconNeeded: "isArrowIconNeeded", canHideTextInput: "canHideTextInput", canHideColorPicker: "canHideColorPicker" }, outputs: { colorPickerChange: "colorPickerChange", colorPickerSliderChange: "colorPickerSliderChange" }, viewQueries: [{ propertyName: "colorPickerDirective", first: true, predicate: NgxColorsTriggerDirective, descendants: true, static: true }], ngImport: i0, template: "<div\r\n [formGroup]=\"group\"\r\n [ngClass]=\"\r\n config?.isLabelAlignedLeft\r\n ? 'ieeesa-color-picker__label-left'\r\n : 'ieeesa-color-picker__label-top'\r\n \"\r\n>\r\n <mat-label\r\n class=\"ieeesa-body-sm-14 ieeesa-color-picker__label\"\r\n *ngIf=\"colorPickerLabel\"\r\n >{{ colorPickerLabel }}</mat-label\r\n >\r\n <div class=\"d-flex\">\r\n <ngx-colors\r\n class=\"ieeesa-color-picker\"\r\n ngx-colors-trigger\r\n [acceptLabel]=\"paletteSelectLabel\"\r\n [cancelLabel]=\"paletteCancelLabel\"\r\n [palette]=\"palette\"\r\n (input)=\"inputChange($event)\"\r\n (open)=\"onOpenPalette()\"\r\n (close)=\"onClosePalette()\"\r\n (slider)=\"onSliderChange($event)\"\r\n [overlayClassName]=\"overlayClassName\"\r\n [formControlName]=\"config.controlName\"\r\n [format]=\"colorFormat\"\r\n [hideTextInput]=\"canHideTextInput\"\r\n [colorsAnimation]=\"colorAnimation\"\r\n [hideColorPicker]=\"canHideColorPicker\"\r\n [ariaLabel]=\"colorPickerTexts?.ariaLabel?.colorPicker\"\r\n [ariaDescription]=\"colorPickerTexts?.ariaDescription\"\r\n >\r\n </ngx-colors>\r\n <button\r\n class=\"ieeesa-color-picker__toggle-icon\"\r\n *ngIf=\"isArrowIconNeeded\"\r\n type=\"button\"\r\n (click)=\"togglePalette()\"\r\n [attr.aria-label]=\"colorPickerTexts?.ariaLabel?.colorPicker\"\r\n [attr.aria-describedby]=\"colorPickerTexts?.ariaDescribedById\"\r\n >\r\n <i\r\n class=\"fa-solid\"\r\n [ngClass]=\"canShowPalette ? 'fa-caret-up' : 'fa-caret-down'\"\r\n ></i>\r\n </button>\r\n <span\r\n class=\"ieeesa-color-picker--selected ieeesa-body-md-14\"\r\n *ngIf=\"isColorCodeLabelNeeded && defaultColor\"\r\n >{{ defaultColor }}</span\r\n >\r\n </div>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n <ieeesa-form-support-text\r\n [formGroup]=\"group\"\r\n [config]=\"config\"\r\n ></ieeesa-form-support-text>\r\n</div>\r\n", styles: [".ieeesa-color-picker .preview{border-radius:0!important;box-shadow:none!important;padding:0!important}.ieeesa-color-picker .preview .preview-background{background-image:none!important}.ieeesa-color-picker .preview .circle{border-radius:0!important;height:30px!important;width:30px!important}.ieeesa-color-picker .preview .circle.colornull{background:linear-gradient(135deg,#ecececb3 0% 45%,#f4f3f3 50%,#ecececb3 55% 100%)!important}.ieeesa-color-picker__label-left{display:flex}.ieeesa-color-picker__label-top{display:block}.ieeesa-color-picker--selected{border:1px solid #000000;padding:6px 8px 6px 12px;border-radius:2px}.ieeesa-color-picker__toggle-icon{border:none;background:#fff}.ieeesa-color-picker__overlay .opened{width:14.687em!important}.ieeesa-color-picker__overlay .opened .colors .circle{border-radius:0!important;height:30px!important;width:30px!important}.ieeesa-color-picker__overlay .opened .colors .circle.wrapper{flex-basis:30px!important}.ieeesa-color-picker__overlay .opened .colors .circle .selected{height:24px!important;width:24px!important;border-radius:0!important}.ieeesa-color-picker__overlay .opened button.select:focus,.ieeesa-color-picker__overlay .opened button.cancel:focus{border:3px solid #000000}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: NgxColorsModule }, { kind: "component", type: i5.NgxColorsComponent, selector: "ngx-colors" }, { kind: "directive", type: i5.NgxColorsTriggerDirective, selector: "[ngx-colors-trigger]", inputs: ["colorsAnimation", "palette", "format", "
|
|
267
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ColorPickerComponent, isStandalone: true, selector: "ieeesa-color-picker", inputs: { defaultColor: "defaultColor", palette: "palette", overlayClassName: "overlayClassName", colorFormat: "colorFormat", colorAnimation: "colorAnimation", formControlName: "formControlName", paletteSelectLabel: "paletteSelectLabel", paletteCancelLabel: "paletteCancelLabel", colorPickerLabel: "colorPickerLabel", isColorCodeLabelNeeded: "isColorCodeLabelNeeded", isArrowIconNeeded: "isArrowIconNeeded", canHideTextInput: "canHideTextInput", canHideColorPicker: "canHideColorPicker" }, outputs: { colorPickerChange: "colorPickerChange", colorPickerSliderChange: "colorPickerSliderChange" }, viewQueries: [{ propertyName: "colorPickerDirective", first: true, predicate: NgxColorsTriggerDirective, descendants: true, static: true }], ngImport: i0, template: "<div\r\n [formGroup]=\"group\"\r\n [ngClass]=\"\r\n config?.isLabelAlignedLeft\r\n ? 'ieeesa-color-picker__label-left'\r\n : 'ieeesa-color-picker__label-top'\r\n \"\r\n>\r\n <mat-label\r\n class=\"ieeesa-body-sm-14 ieeesa-color-picker__label\"\r\n *ngIf=\"colorPickerLabel\"\r\n >{{ colorPickerLabel }}</mat-label\r\n >\r\n <div class=\"d-flex\">\r\n <ngx-colors\r\n class=\"ieeesa-color-picker\"\r\n ngx-colors-trigger\r\n [acceptLabel]=\"paletteSelectLabel\"\r\n [cancelLabel]=\"paletteCancelLabel\"\r\n [palette]=\"palette\"\r\n (input)=\"inputChange($event)\"\r\n (open)=\"onOpenPalette()\"\r\n (close)=\"onClosePalette()\"\r\n (slider)=\"onSliderChange($event)\"\r\n [overlayClassName]=\"overlayClassName\"\r\n [formControlName]=\"config.controlName\"\r\n [format]=\"colorFormat\"\r\n [hideTextInput]=\"canHideTextInput\"\r\n [colorsAnimation]=\"colorAnimation\"\r\n [hideColorPicker]=\"canHideColorPicker\"\r\n [ariaLabel]=\"colorPickerTexts?.ariaLabel?.colorPicker\"\r\n [ariaDescription]=\"colorPickerTexts?.ariaDescription\"\r\n >\r\n </ngx-colors>\r\n <button\r\n class=\"ieeesa-color-picker__toggle-icon\"\r\n *ngIf=\"isArrowIconNeeded\"\r\n type=\"button\"\r\n (click)=\"togglePalette()\"\r\n [attr.aria-label]=\"colorPickerTexts?.ariaLabel?.colorPicker\"\r\n [attr.aria-describedby]=\"colorPickerTexts?.ariaDescribedById\"\r\n >\r\n <i\r\n class=\"fa-solid\"\r\n [ngClass]=\"canShowPalette ? 'fa-caret-up' : 'fa-caret-down'\"\r\n ></i>\r\n </button>\r\n <span\r\n class=\"ieeesa-color-picker--selected ieeesa-body-md-14\"\r\n *ngIf=\"isColorCodeLabelNeeded && defaultColor\"\r\n >{{ defaultColor }}</span\r\n >\r\n </div>\r\n <ieeesa-form-error [formGroup]=\"group\" [config]=\"config\"> </ieeesa-form-error>\r\n <ieeesa-form-support-text\r\n [formGroup]=\"group\"\r\n [config]=\"config\"\r\n ></ieeesa-form-support-text>\r\n</div>\r\n", styles: [".ieeesa-color-picker .preview{border-radius:0!important;box-shadow:none!important;padding:0!important}.ieeesa-color-picker .preview .preview-background{background-image:none!important}.ieeesa-color-picker .preview .circle{border-radius:0!important;height:30px!important;width:30px!important}.ieeesa-color-picker .preview .circle.colornull{background:linear-gradient(135deg,#ecececb3 0% 45%,#f4f3f3 50%,#ecececb3 55% 100%)!important}.ieeesa-color-picker__label-left{display:flex}.ieeesa-color-picker__label-top{display:block}.ieeesa-color-picker--selected{border:1px solid #000000;padding:6px 8px 6px 12px;border-radius:2px}.ieeesa-color-picker__toggle-icon{border:none;background:#fff}.ieeesa-color-picker__overlay .opened{width:14.687em!important}.ieeesa-color-picker__overlay .opened .colors .circle{border-radius:0!important;height:30px!important;width:30px!important}.ieeesa-color-picker__overlay .opened .colors .circle.wrapper{flex-basis:30px!important}.ieeesa-color-picker__overlay .opened .colors .circle .selected{height:24px!important;width:24px!important;border-radius:0!important}.ieeesa-color-picker__overlay .opened button.select:focus,.ieeesa-color-picker__overlay .opened button.cancel:focus{border:3px solid #000000}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: NgxColorsModule }, { kind: "component", type: i5.NgxColorsComponent, selector: "ngx-colors" }, { kind: "directive", type: i5.NgxColorsTriggerDirective, selector: "[ngx-colors-trigger]", inputs: ["colorsAnimation", "palette", "format", "position", "hideTextInput", "hideColorPicker", "attachTo", "overlayClassName", "colorPickerControls", "acceptLabel", "cancelLabel"], outputs: ["change", "input", "slider", "close", "open"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: FormErrorComponent, selector: "ieeesa-form-error", inputs: ["formGroup", "config", "submitResponse"] }, { kind: "component", type: FormSupportTextComponent, selector: "ieeesa-form-support-text", inputs: ["formGroup", "config"], outputs: ["supportTextLinkClick"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
268
268
|
}
|
|
269
269
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColorPickerComponent, decorators: [{
|
|
270
270
|
type: Component,
|
|
@@ -311,4 +311,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
311
311
|
}], canHideColorPicker: [{
|
|
312
312
|
type: Input
|
|
313
313
|
}] } });
|
|
314
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXNlbnRhdGlvbi9zcmMvbGliL2NvbXBvbmVudHMvY29sb3ItcGlja2VyL2NvbG9yLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzZW50YXRpb24vc3JjL2xpYi9jb21wb25lbnRzL2NvbG9yLXBpY2tlci9jb2xvci1waWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFDTixTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLHlCQUF5QixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3hFLE9BQU8sRUFBYSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDeEUsT0FBTyxFQUNMLFdBQVcsRUFDWCxlQUFlLEdBRWhCLE1BQU0saUNBQWlDLENBQUM7QUFDekMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFHNUYsT0FBTyxLQUFLLFNBQVMsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7OztBQWlCekQsTUFBTSxPQUFPLG9CQUFvQjtJQTJCL0I7SUFDRSwwQ0FBMEM7SUFDbEMsVUFBc0I7SUFDOUIsMENBQTBDO0lBQ2xDLGtCQUFz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Z0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE9uRGVzdHJveSxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTmd4Q29sb3JzTW9kdWxlLCBOZ3hDb2xvcnNUcmlnZ2VyRGlyZWN0aXZlIH0gZnJvbSAnbmd4LWNvbG9ycyc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCwgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xyXG5pbXBvcnQgeyBGb3JtRXJyb3JDb21wb25lbnQgfSBmcm9tICcuLi9mb3JtLWVycm9yL2Zvcm0tZXJyb3IuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2xUeXBlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2Zvcm0tY29udHJvbC10eXBlcy5tb2RlbCc7XHJcbmltcG9ydCB7XHJcbiAgQ29sb3JGb3JtYXQsXHJcbiAgQ29sb3JzQW5pbWF0aW9uLFxyXG4gIFBhbGV0dGVDb2xvcixcclxufSBmcm9tICcuLi8uLi9tb2RlbHMvY29sb3ItZm9ybWF0Lm1vZGVsJztcclxuaW1wb3J0IHsgRm9ybVN1cHBvcnRUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi4vZm9ybS1zdXBwb3J0LXRleHQvZm9ybS1zdXBwb3J0LXRleHQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRmllbGRDb25maWcgfSBmcm9tICcuLi8uLi9tb2RlbHMvZmllbGQtY29uZmlnLm1vZGVsJztcclxuaW1wb3J0IHsgRm9ybVV0aWxpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZm9ybS11dGlsaXR5LnNlcnZpY2UnO1xyXG5pbXBvcnQgKiBhcyBjb25zdGFudHMgZnJvbSAnLi4vLi4vYXNzZXRzL2NvbnN0YW50cy5qc29uJztcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpZWVlc2EtY29sb3ItcGlja2VyJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxyXG4gICAgTmd4Q29sb3JzTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIEZvcm1FcnJvckNvbXBvbmVudCxcclxuICAgIEZvcm1TdXBwb3J0VGV4dENvbXBvbmVudCxcclxuICBdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jb2xvci1waWNrZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvbG9yLXBpY2tlci5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb2xvclBpY2tlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBAVmlld0NoaWxkKE5neENvbG9yc1RyaWdnZXJEaXJlY3RpdmUsIHsgc3RhdGljOiB0cnVlIH0pXHJcbiAgY29sb3JQaWNrZXJEaXJlY3RpdmUhOiBOZ3hDb2xvcnNUcmlnZ2VyRGlyZWN0aXZlO1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgY29sb3JQaWNrZXJUZXh0czogYW55ID0gY29uc3RhbnRzPy5jb2xvclBpY2tlcjtcclxuICBwYWxldHRlQ29sb3JzOiBQYWxldHRlQ29sb3JbXSA9IHRoaXMuY29sb3JQaWNrZXJUZXh0cz8ucGFsZXR0ZUNvbG9ycztcclxuICBwYWxldHRlQ29udGFpbmVyITogSFRNTEVsZW1lbnQ7XHJcbiAgZ3JvdXAhOiBGb3JtR3JvdXA7XHJcbiAgY29uZmlnITogRmllbGRDb25maWc7XHJcbiAgQE91dHB1dCgpIGNvbG9yUGlja2VyQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcbiAgQE91dHB1dCgpIGNvbG9yUGlja2VyU2xpZGVyQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcbiAgQElucHV0KCkgZGVmYXVsdENvbG9yITogc3RyaW5nO1xyXG4gIGNhblNob3dQYWxldHRlID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcGFsZXR0ZTogc3RyaW5nW10gPSB0aGlzLnBhbGV0dGVDb2xvcnM/Lm1hcChcclxuICAgIChjb2xvcjogUGFsZXR0ZUNvbG9yKSA9PiBjb2xvci5oZXhDb2RlXHJcbiAgKTtcclxuICBASW5wdXQoKSBvdmVybGF5Q2xhc3NOYW1lID0gJ2llZWVzYS1jb2xvci1waWNrZXJfX292ZXJsYXknO1xyXG4gIEBJbnB1dCgpIGNvbG9yRm9ybWF0ID0gQ29sb3JGb3JtYXQuaGV4O1xyXG4gIEBJbnB1dCgpIGNvbG9yQW5pbWF0aW9uID0gQ29sb3JzQW5pbWF0aW9uLnBvcHVwO1xyXG4gIEBJbnB1dCgpIGZvcm1Db250cm9sTmFtZSA9ICdjb2xvclBpY2tlcic7XHJcbiAgQElucHV0KCkgcGFsZXR0ZVNlbGVjdExhYmVsID0gdGhpcy5jb2xvclBpY2tlclRleHRzPy5sYWJlbD8uc2VsZWN0O1xyXG4gIEBJbnB1dCgpIHBhbGV0dGVDYW5jZWxMYWJlbCA9IHRoaXMuY29sb3JQaWNrZXJUZXh0cz8ubGFiZWw/LmNhbmNlbDtcclxuICBASW5wdXQoKSBjb2xvclBpY2tlckxhYmVsITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGlzQ29sb3JDb2RlTGFiZWxOZWVkZWQgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIGlzQXJyb3dJY29uTmVlZGVkID0gdHJ1ZTtcclxuICBASW5wdXQoKSBjYW5IaWRlVGV4dElucHV0ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgY2FuSGlkZUNvbG9yUGlja2VyID0gZmFsc2U7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLXZhcnNcclxuICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZixcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gICAgcHJpdmF0ZSBmb3JtVXRpbGl0eVNlcnZpY2U6IEZvcm1VdGlsaXR5U2VydmljZSAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZW1wdHktZnVuY3Rpb25cclxuICApIHt9XHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmdyb3VwID1cclxuICAgICAgdGhpcy5ncm91cCA/PyB0aGlzLmZvcm1VdGlsaXR5U2VydmljZS5nZXRGb3JtR3JvdXAodGhpcy5mb3JtQ29udHJvbE5hbWUpO1xyXG4gICAgdGhpcy5jb25maWcgPVxyXG4gICAgICB0aGlzLmNvbmZpZyA/P1xyXG4gICAgICB0aGlzLmZvcm1VdGlsaXR5U2VydmljZS5nZXRGb3JtRmllbGRDb25maWcoXHJcbiAgICAgICAgdGhpcy5mb3JtQ29udHJvbE5hbWUsXHJcbiAgICAgICAgRm9ybUNvbnRyb2xUeXBlLkNPTE9SX1BJQ0tFUlxyXG4gICAgICApO1xyXG4gICAgaWYgKHRoaXMuY29uZmlnKSB7XHJcbiAgICAgIHRoaXMuY29sb3JQaWNrZXJMYWJlbCA9IHRoaXMuY29uZmlnPy5sYWJlbCA/PyB0aGlzLmNvbG9yUGlja2VyTGFiZWw7XHJcbiAgICAgIHRoaXMucGFsZXR0ZSA9IHRoaXMuY29uZmlnPy5wYWxldHRlID8/IHRoaXMucGFsZXR0ZTtcclxuICAgICAgdGhpcy5kZWZhdWx0Q29sb3IgPSB0aGlzLmNvbmZpZz8uZGVmYXVsdENvbG9yID8/IHRoaXMuZGVmYXVsdENvbG9yO1xyXG4gICAgICB0aGlzLmNvbG9yRm9ybWF0ID0gdGhpcy5jb25maWc/LmNvbG9yRm9ybWF0ID8/IHRoaXMuY29sb3JGb3JtYXQ7XHJcbiAgICAgIHRoaXMub3ZlcmxheUNsYXNzTmFtZSA9XHJcbiAgICAgICAgdGhpcy5jb25maWc/Lm92ZXJsYXlDbGFzc05hbWUgPz8gdGhpcy5vdmVybGF5Q2xhc3NOYW1lO1xyXG4gICAgICB0aGlzLmlzQ29sb3JDb2RlTGFiZWxOZWVkZWQgPVxyXG4gICAgICAgIHRoaXMuY29uZmlnPy5pc0NvbG9yQ29kZUxhYmVsTmVlZGVkID8/IHRoaXMuaXNDb2xvckNvZGVMYWJlbE5lZWRlZDtcclxuICAgICAgdGhpcy5pc0Fycm93SWNvbk5lZWRlZCA9XHJcbiAgICAgICAgdGhpcy5jb25maWc/LmlzQXJyb3dJY29uTmVlZGVkID8/IHRoaXMuaXNBcnJvd0ljb25OZWVkZWQ7XHJcbiAgICAgIHRoaXMuY2FuSGlkZVRleHRJbnB1dCA9XHJcbiAgICAgICAgdGhpcy5jb25maWc/LmNhbkhpZGVUZXh0SW5wdXQgPz8gdGhpcy5jYW5IaWRlVGV4dElucHV0O1xyXG4gICAgICB0aGlzLmNhbkhpZGVDb2xvclBpY2tlciA9XHJcbiAgICAgICAgdGhpcy5jb25maWc/LmNhbkhpZGVDb2xvclBpY2tlciA/PyB0aGlzLmNhbkhpZGVDb2xvclBpY2tlcjtcclxuICAgIH1cclxuICAgIHRoaXMuZ3JvdXAuZ2V0KHRoaXMuY29uZmlnLmNvbnRyb2xOYW1lKT8uc2V0VmFsdWUodGhpcy5kZWZhdWx0Q29sb3IpO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBTZXRzIHRoZSBjb2xvciB0byBmb3JtIGdyb3VwIGNvbnRyb2wuXHJcbiAgICogQG1lbWJlcm9mIENvbG9yUGlja2VyQ29tcG9uZW50XHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IGNvbG9yXHJcbiAgICogQHJldHVybnMge3ZvaWR9XHJcbiAgICovXHJcbiAgaW5wdXRDaGFuZ2UoY29sb3I6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5kZWZhdWx0Q29sb3IgPSBjb2xvcjtcclxuICAgIHRoaXMuZ3JvdXA/LmdldCh0aGlzLmNvbmZpZz8uY29udHJvbE5hbWUpPy5zZXRWYWx1ZShjb2xvcik7XHJcbiAgICB0aGlzLmNvbG9yUGlja2VyQ2hhbmdlLmVtaXQoY29sb3IpO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBTZXRzIGNhblNob3dQYWxldHRlIHRvIHRydWUgd2hlbiB0aGUgcGFsZXR0ZSBpcyBvcGVuZWQuXHJcbiAgICogQG1lbWJlcm9mIENvbG9yUGlja2VyQ29tcG9uZW50XHJcbiAgICogQHJldHVybnMge3ZvaWR9XHJcbiAgICovXHJcbiAgb25PcGVuUGFsZXR0ZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuY2FuU2hvd1BhbGV0dGUgPSB0cnVlO1xyXG4gICAgdGhpcy5jb2xvclBpY2tlckV2ZW50SGFuZGxlcnModHJ1ZSk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIFNldHMgY2FuU2hvd1BhbGV0dGUgdG8gZmFsc2Ugd2hlbiB0aGUgcGFsZXR0ZSBpcyBjbG9zZWQuXHJcbiAgICogQG1lbWJlcm9mIENvbG9yUGlja2VyQ29tcG9uZW50XHJcbiAgICogQHJldHVybnMge3ZvaWR9XHJcbiAgICovXHJcbiAgb25DbG9zZVBhbGV0dGUoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNhblNob3dQYWxldHRlID0gZmFsc2U7XHJcbiAgICB0aGlzLmVsZW1lbnRSZWY/Lm5hdGl2ZUVsZW1lbnRcclxuICAgICAgPy5xdWVyeVNlbGVjdG9yKCcuaWVlZXNhLWNvbG9yLXBpY2tlcl9fdG9nZ2xlLWljb24nKVxyXG4gICAgICA/LmZvY3VzKCk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIEdldHMgdHJpZ2dlcmVkIHdoZW4gdGhlIHRoZSBhbHBoYSwgaHVlIG9yIExpZ2h0bmVzcyBzbGlkZXJzIGFyZSBjaGFuZ2VkXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IGNvbG9yXHJcbiAgICovXHJcbiAgb25TbGlkZXJDaGFuZ2UoY29sb3I6IHN0cmluZykge1xyXG4gICAgdGhpcy5jb2xvclBpY2tlclNsaWRlckNoYW5nZS5lbWl0KGNvbG9yKTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogVG9nZ2xlcyB0aGUgcGFsZXR0ZSBwYW5lbC5cclxuICAgKiBAbWVtYmVyb2YgQ29sb3JQaWNrZXJDb21wb25lbnRcclxuICAgKiBAcmV0dXJucyB7dm9pZH1cclxuICAgKi9cclxuICB0b2dnbGVQYWxldHRlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5jYW5TaG93UGFsZXR0ZSA9ICF0aGlzLmNhblNob3dQYWxldHRlO1xyXG4gICAgaWYgKHRoaXMuY2FuU2hvd1BhbGV0dGUpIHRoaXMuY29sb3JQaWNrZXJEaXJlY3RpdmU/Lm9wZW5QYW5lbCgpO1xyXG4gICAgZWxzZSB0aGlzLmNvbG9yUGlja2VyRGlyZWN0aXZlPy5jbG9zZVBhbmVsKCk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIExpc3RlbmluZyB0aGUgY29sb3IgcGlja2VyIGV2ZW50cyB0byBhY2hpZXZlIHRoZSBhY2Nlc3NpYmlsaXR5IGZvciBjb2xvciBwYWxldHRlLlxyXG4gICAqIGNhbkFkZExpc3RlbmVyIGZhbHNlIHJlbW92ZSB0aGUgZXZlbnQgbGlzdGVuZXJzIHdoaWNoIHdlIGNhbGxzIGluIG5nRGVzdHJveSxcclxuICAgKiBjYW5BZGRMaXN0ZW5lciB0cnVlIGFkZGluZyB0aGUgZXZlbnQgbGlzdGVuZXJzIHdoaWxlIG9wZW5pbmcgdGhlIGNvbG9yIHBhbGV0dGUuXHJcbiAgICogQG1lbWJlcm9mIENvbG9yUGlja2VyQ29tcG9uZW50XHJcbiAgICogQHBhcmFtIHtib29sZWFufSBjYW5BZGRMaXN0ZW5lclxyXG4gICAqIEByZXR1cm5zIHt2b2lkfVxyXG4gICAqL1xyXG4gIGNvbG9yUGlja2VyRXZlbnRIYW5kbGVycyhjYW5BZGRMaXN0ZW5lcjogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5wYWxldHRlQ29udGFpbmVyID1cclxuICAgICAgdGhpcy5jb2xvclBpY2tlckRpcmVjdGl2ZT8ucGFuZWxSZWY/LmxvY2F0aW9uPy5uYXRpdmVFbGVtZW50Py5xdWVyeVNlbGVjdG9yKFxyXG4gICAgICAgICduZ3gtY29sb3JzLXBhbmVsIC5vcGVuZWQnXHJcbiAgICAgICkgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgaWYgKHRoaXMucGFsZXR0ZUNvbnRhaW5lcikge1xyXG4gICAgICAgIHRoaXMucGFsZXR0ZUNvbnRhaW5lci5yb2xlID0gJ2FwcGxpY2F0aW9uJztcclxuICAgICAgICB0aGlzLnBhbGV0dGVDb250YWluZXIudGFiSW5kZXggPSAwO1xyXG4gICAgICAgIHRoaXMucGFsZXR0ZUNvbnRhaW5lci5hcmlhTGFiZWwgPSB0aGlzLmNvbG9yUGlja2VyVGV4dHM/LmFyaWFMYWJlbD8ucGFsZXR0ZTtcclxuICAgICAgICBjb25zdCBjb2xvclBhbGxldHRlcyA9IHRoaXMucGFsZXR0ZUNvbnRhaW5lci5xdWVyeVNlbGVjdG9yQWxsKFxyXG4gICAgICAgICAgJy5jb2xvcnMgLmNpcmNsZS53cmFwcGVyLmNvbG9yJ1xyXG4gICAgICAgICk7XHJcbiAgICAgICAgY29uc3QgbW9yZUNvbG9yc0Fycm93QnV0dG9uID0gdGhpcy5wYWxldHRlQ29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoXHJcbiAgICAgICAgICAnLmNvbG9ycyAuY2lyY2xlLmJ1dHRvbidcclxuICAgICAgICApIGFzIEhUTUxFbGVtZW50O1xyXG4gICAgICAgIGNvbnN0IGxhc3RFbGVtZW50ID0gdGhpcy5wYWxldHRlQ29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoXHJcbiAgICAgICAgICAnLmctaW5wdXQgaW5wdXQnXHJcbiAgICAgICAgKSBhcyBIVE1MRWxlbWVudDtcclxuICAgICAgICBpZiAoY29sb3JQYWxsZXR0ZXM/Lmxlbmd0aCkge1xyXG4gICAgICAgICAgY29uc3QgY29sb3JQYWxsZXR0ZXNMaXN0ID0gQXJyYXkuZnJvbShcclxuICAgICAgICAgICAgY29sb3JQYWxsZXR0ZXNcclxuICAgICAgICAgICkgYXMgSFRNTEVsZW1lbnRbXTtcclxuICAgICAgICAgIGNvbG9yUGFsbGV0dGVzTGlzdC5wdXNoKG1vcmVDb2xvcnNBcnJvd0J1dHRvbik7XHJcbiAgICAgICAgICBjb2xvclBhbGxldHRlc0xpc3QucHVzaChsYXN0RWxlbWVudCk7XHJcbiAgICAgICAgICBjb25zdCBrZXlEb3duSGFuZGxlckZvckNvbG9yUGFsZXR0ZXMgPSAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5jb2xvclBpY2tlcktleURvd25IYW5kbGVyKGNvbG9yUGFsbGV0dGVzTGlzdCwgZXZlbnQpO1xyXG4gICAgICAgICAgfTtcclxuICAgICAgICAgIGNvbG9yUGFsbGV0dGVzTGlzdD8uZm9yRWFjaCgoZWxlbWVudDogSFRNTEVsZW1lbnQsIGluZGV4KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChpbmRleCAhPT0gY29sb3JQYWxsZXR0ZXNMaXN0Py5sZW5ndGggLSAxKSB7XHJcbiAgICAgICAgICAgICAgZWxlbWVudC50YWJJbmRleCA9IDA7XHJcbiAgICAgICAgICAgICAgZWxlbWVudC5yb2xlID0gJ2J1dHRvbic7XHJcbiAgICAgICAgICAgICAgZWxlbWVudC5hcmlhTGFiZWwgPSB0aGlzLnBhbGV0dGVDb2xvcnNbaW5kZXhdPy5uYW1lO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIGVsZW1lbnQuYXJpYUxhYmVsID1cclxuICAgICAgICAgICAgICAgIHRoaXMuY29sb3JQaWNrZXJUZXh0cz8uYXJpYUxhYmVsPy5oZXhDb2RlSW5wdXQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYgKGluZGV4ID09PSAwKSBlbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgICAgICAgIGlmIChpbmRleCA9PT0gY29sb3JQYWxsZXR0ZXNMaXN0Py5sZW5ndGggLSAyKSB7XHJcbiAgICAgICAgICAgICAgZWxlbWVudC5hcmlhTGFiZWwgPSB0aGlzLmNvbG9yUGlja2VyVGV4dHM/LmFyaWFMYWJlbD8ubmV4dDtcclxuICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gICAgICAgICAgICAgIGNvbnN0IGNsaWNrSGFuZGxlckZvck1vcmVDb2xvcnNCdXR0b24gPSAoZXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgIGNvbnN0IGxpc3QgPVxyXG4gICAgICAgICAgICAgICAgICB0aGlzLnBhbGV0dGVDb250YWluZXI/LnF1ZXJ5U2VsZWN0b3IoJy5uYXYtd3JhcHBlcicpPy5jaGlsZE5vZGVzO1xyXG4gICAgICAgICAgICAgICAgICBjb25zdCBncmFkaWVudEJ1dHRvbnM6IEhUTUxFbGVtZW50W10gPSBbXTtcclxuICAgICAgICAgICAgICAgICAgbGlzdD8uZm9yRWFjaCgoZWxlbWVudCkgPT5cclxuICAgICAgICAgICAgICAgICAgICBncmFkaWVudEJ1dHRvbnMucHVzaChlbGVtZW50IGFzIEhUTUxFbGVtZW50KVxyXG4gICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICBpZiAoZ3JhZGllbnRCdXR0b25zPy5sZW5ndGgpIHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBsYXN0RWxlbWVudCA9IHRoaXMucGFsZXR0ZUNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKFxyXG4gICAgICAgICAgICAgICAgICAgICAgJy5nLWlucHV0IGlucHV0J1xyXG4gICAgICAgICAgICAgICAgICAgICkgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgZ3JhZGllbnRCdXR0b25zLnB1c2gobGFzdEVsZW1lbnQpO1xyXG4gICAgICAgICAgICAgICAgICAgIGdyYWRpZW50QnV0dG9ucz8uZm9yRWFjaChcclxuICAgICAgICAgICAgICAgICAgICAgIChlbGVtZW50OiBIVE1MRWxlbWVudCwgaW5kZXg6IG51bWJlcikgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaW5kZXggPT09IDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LmFyaWFMYWJlbCA9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbG9yUGlja2VyVGV4dHM/LmFyaWFMYWJlbD8uYmFjaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2xpY2tIYW5kbGVyRm9yR3JhZGllbnRQcmV2aW91c0J1dHRvbiA9IChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudDogYW55XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uT3BlblBhbGV0dGUoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBrZXlEb3duSGFuZGxlckZvckdyYWRpZW50QnV0dG9ucyA9IChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50OiBLZXlib2FyZEV2ZW50XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbG9yUGlja2VyS2V5RG93bkhhbmRsZXIoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyYWRpZW50QnV0dG9ucyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50Py5yZW1vdmVFdmVudExpc3RlbmVyKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2NsaWNrJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWNrSGFuZGxlckZvckdyYWRpZW50UHJldmlvdXNCdXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQ/LnJlbW92ZUV2ZW50TGlzdGVuZXIoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAna2V5ZG93bicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGlja0hhbmRsZXJGb3JHcmFkaWVudFByZXZpb3VzQnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoY2FuQWRkTGlzdGVuZXIpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQ/LmFkZEV2ZW50TGlzdGVuZXIoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdjbGljaycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWNrSGFuZGxlckZvckdyYWRpZW50UHJldmlvdXNCdXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50Py5hZGRFdmVudExpc3RlbmVyKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAna2V5ZG93bicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleURvd25IYW5kbGVyRm9yR3JhZGllbnRCdXR0b25zXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LnJvbGUgPSAnYnV0dG9uJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC50YWJJbmRleCA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50Py5pbm5lclRleHQ/LnRyaW0oKSA9PT1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbG9yUGlja2VyVGV4dHM/LmxhYmVsPy5zZWxlY3RcclxuICAgICAgICAgICAgICAgICAgICAgICAgKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5hcmlhTGFiZWwgPVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb2xvclBpY2tlclRleHRzPy5hcmlhTGFiZWw/LnNlbGVjdDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50Py5jbGFzc0xpc3Q/LmFkZCgnc2VsZWN0Jyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudD8uaW5uZXJUZXh0Py50cmltKCkgPT09XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb2xvclBpY2tlclRleHRzPy5sYWJlbD8uY2FuY2VsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQuYXJpYUxhYmVsID1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29sb3JQaWNrZXJUZXh0cz8uYXJpYUxhYmVsPy5jYW5jZWw7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudD8uY2xhc3NMaXN0Py5hZGQoJ2NhbmNlbCcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpbmRleCA9PT0gZ3JhZGllbnRCdXR0b25zPy5sZW5ndGggLSAxKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5yb2xlID0gJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgICAgICAgICAgICB9LCAyNTApO1xyXG4gICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgZWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKFxyXG4gICAgICAgICAgICAgICAgJ2NsaWNrJyxcclxuICAgICAgICAgICAgICAgIGNsaWNrSGFuZGxlckZvck1vcmVDb2xvcnNCdXR0b25cclxuICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgIGlmIChjYW5BZGRMaXN0ZW5lcikge1xyXG4gICAgICAgICAgICAgICAgZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKFxyXG4gICAgICAgICAgICAgICAgICAnY2xpY2snLFxyXG4gICAgICAgICAgICAgICAgICBjbGlja0hhbmRsZXJGb3JNb3JlQ29sb3JzQnV0dG9uXHJcbiAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoXHJcbiAgICAgICAgICAgICAgJ2tleWRvd24nLFxyXG4gICAgICAgICAgICAgIGtleURvd25IYW5kbGVyRm9yQ29sb3JQYWxldHRlc1xyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICBpZiAoY2FuQWRkTGlzdGVuZXIpIHtcclxuICAgICAgICAgICAgICBlbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoXHJcbiAgICAgICAgICAgICAgICAna2V5ZG93bicsXHJcbiAgICAgICAgICAgICAgICBrZXlEb3duSGFuZGxlckZvckNvbG9yUGFsZXR0ZXNcclxuICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0sIDI1MCk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIExpc3RlbnMga2V5ZG93biBldmVudCBoYW5kbGVzIHRvIG1ha2UgdGhlIHBhbGV0dGUgZm9jdXNhYmxlLlxyXG4gICAqIEBtZW1iZXJvZiBDb2xvclBpY2tlckNvbXBvbmVudFxyXG4gICAqIEBwYXJhbSB7SFRNTEVsZW1lbnRbXX0gY29sb3JQYWxsZXR0ZXNMaXN0XHJcbiAgICogQHBhcmFtIHtLZXlib2FyZEV2ZW50fSBldmVudFxyXG4gICAqIEByZXR1cm5zIHt2b2lkfVxyXG4gICAqL1xyXG4gIGNvbG9yUGlja2VyS2V5RG93bkhhbmRsZXIoXHJcbiAgICBjb2xvclBhbGxldHRlc0xpc3Q6IEhUTUxFbGVtZW50W10sXHJcbiAgICBldmVudDogS2V5Ym9hcmRFdmVudFxyXG4gICk6IHZvaWQge1xyXG4gICAgY29uc3QgZmlyc3RFbGVtZW50ID0gY29sb3JQYWxsZXR0ZXNMaXN0WzBdO1xyXG4gICAgY29uc3QgbGFzdEVsZW1lbnQgPSBjb2xvclBhbGxldHRlc0xpc3RbY29sb3JQYWxsZXR0ZXNMaXN0Lmxlbmd0aCAtIDFdO1xyXG4gICAgaWYgKGV2ZW50LmNvZGUgPT09ICdUYWInKSB7XHJcbiAgICAgIGlmIChldmVudC5zaGlmdEtleSkge1xyXG4gICAgICAgIGlmIChkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBmaXJzdEVsZW1lbnQpIHtcclxuICAgICAgICAgIGxhc3RFbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIGlmIChkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBsYXN0RWxlbWVudCkge1xyXG4gICAgICAgIGlmICh0aGlzLnBhbGV0dGVDb250YWluZXI/LnF1ZXJ5U2VsZWN0b3IoJy5uYXYtd3JhcHBlcicpKSB7XHJcbiAgICAgICAgICAoXHJcbiAgICAgICAgICAgIHRoaXMucGFsZXR0ZUNvbnRhaW5lcj8ucXVlcnlTZWxlY3RvcignLm5hdi13cmFwcGVyJylcclxuICAgICAgICAgICAgICA/LmNoaWxkTm9kZXNbMF0gYXMgSFRNTEVsZW1lbnRcclxuICAgICAgICAgICkuZm9jdXMoKTtcclxuICAgICAgICB9IGVsc2UgZmlyc3RFbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaWYgKGV2ZW50LmNvZGUgPT09ICdTcGFjZScgfHwgZXZlbnQuY29kZSA9PT0gJ0VudGVyJykge1xyXG4gICAgICBjb25zdCB0YXJnZXRFbGVtZW50ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgICBpZiAodGFyZ2V0RWxlbWVudD8uY2xhc3NMaXN0Py5jb250YWlucygnYnV0dG9uJykpXHJcbiAgICAgICAgdGFyZ2V0RWxlbWVudD8uZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2NsaWNrJykpO1xyXG4gICAgICBlbHNlIHRhcmdldEVsZW1lbnQ/LmZpcnN0Q2hpbGQ/LmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdjbGljaycpKTtcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxuICB9XHJcbiAgLyoqXHJcbiAgICogUmVtb3ZpbmcgdGhlIGFjdGl2ZSBsaXN0ZW5lcnMgd2hpbGUgY29tcG9uZW50IGdldCBkZXN0cm95ZWQuXHJcbiAgICovXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLmNvbG9yUGlja2VyRXZlbnRIYW5kbGVycyhmYWxzZSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICBbZm9ybUdyb3VwXT1cImdyb3VwXCJcclxuICBbbmdDbGFzc109XCJcclxuICAgIGNvbmZpZz8uaXNMYWJlbEFsaWduZWRMZWZ0XHJcbiAgICAgID8gJ2llZWVzYS1jb2xvci1waWNrZXJfX2xhYmVsLWxlZnQnXHJcbiAgICAgIDogJ2llZWVzYS1jb2xvci1waWNrZXJfX2xhYmVsLXRvcCdcclxuICBcIlxyXG4+XHJcbiAgPG1hdC1sYWJlbFxyXG4gICAgY2xhc3M9XCJpZWVlc2EtYm9keS1zbS0xNCBpZWVlc2EtY29sb3ItcGlja2VyX19sYWJlbFwiXHJcbiAgICAqbmdJZj1cImNvbG9yUGlja2VyTGFiZWxcIlxyXG4gICAgPnt7IGNvbG9yUGlja2VyTGFiZWwgfX08L21hdC1sYWJlbFxyXG4gID5cclxuICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICA8bmd4LWNvbG9yc1xyXG4gICAgICBjbGFzcz1cImllZWVzYS1jb2xvci1waWNrZXJcIlxyXG4gICAgICBuZ3gtY29sb3JzLXRyaWdnZXJcclxuICAgICAgW2FjY2VwdExhYmVsXT1cInBhbGV0dGVTZWxlY3RMYWJlbFwiXHJcbiAgICAgIFtjYW5jZWxMYWJlbF09XCJwYWxldHRlQ2FuY2VsTGFiZWxcIlxyXG4gICAgICBbcGFsZXR0ZV09XCJwYWxldHRlXCJcclxuICAgICAgKGlucHV0KT1cImlucHV0Q2hhbmdlKCRldmVudClcIlxyXG4gICAgICAob3Blbik9XCJvbk9wZW5QYWxldHRlKClcIlxyXG4gICAgICAoY2xvc2UpPVwib25DbG9zZVBhbGV0dGUoKVwiXHJcbiAgICAgIChzbGlkZXIpPVwib25TbGlkZXJDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgIFtvdmVybGF5Q2xhc3NOYW1lXT1cIm92ZXJsYXlDbGFzc05hbWVcIlxyXG4gICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImNvbmZpZy5jb250cm9sTmFtZVwiXHJcbiAgICAgIFtmb3JtYXRdPVwiY29sb3JGb3JtYXRcIlxyXG4gICAgICBbaGlkZVRleHRJbnB1dF09XCJjYW5IaWRlVGV4dElucHV0XCJcclxuICAgICAgW2NvbG9yc0FuaW1hdGlvbl09XCJjb2xvckFuaW1hdGlvblwiXHJcbiAgICAgIFtoaWRlQ29sb3JQaWNrZXJdPVwiY2FuSGlkZUNvbG9yUGlja2VyXCJcclxuICAgICAgW2FyaWFMYWJlbF09XCJjb2xvclBpY2tlclRleHRzPy5hcmlhTGFiZWw/LmNvbG9yUGlja2VyXCJcclxuICAgICAgW2FyaWFEZXNjcmlwdGlvbl09XCJjb2xvclBpY2tlclRleHRzPy5hcmlhRGVzY3JpcHRpb25cIlxyXG4gICAgPlxyXG4gICAgPC9uZ3gtY29sb3JzPlxyXG4gICAgPGJ1dHRvblxyXG4gICAgICBjbGFzcz1cImllZWVzYS1jb2xvci1waWNrZXJfX3RvZ2dsZS1pY29uXCJcclxuICAgICAgKm5nSWY9XCJpc0Fycm93SWNvbk5lZWRlZFwiXHJcbiAgICAgIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAoY2xpY2spPVwidG9nZ2xlUGFsZXR0ZSgpXCJcclxuICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJjb2xvclBpY2tlclRleHRzPy5hcmlhTGFiZWw/LmNvbG9yUGlja2VyXCJcclxuICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJjb2xvclBpY2tlclRleHRzPy5hcmlhRGVzY3JpYmVkQnlJZFwiXHJcbiAgICA+XHJcbiAgICAgIDxpXHJcbiAgICAgICAgY2xhc3M9XCJmYS1zb2xpZFwiXHJcbiAgICAgICAgW25nQ2xhc3NdPVwiY2FuU2hvd1BhbGV0dGUgPyAnZmEtY2FyZXQtdXAnIDogJ2ZhLWNhcmV0LWRvd24nXCJcclxuICAgICAgPjwvaT5cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPHNwYW5cclxuICAgICAgY2xhc3M9XCJpZWVlc2EtY29sb3ItcGlja2VyLS1zZWxlY3RlZCBpZWVlc2EtYm9keS1tZC0xNFwiXHJcbiAgICAgICpuZ0lmPVwiaXNDb2xvckNvZGVMYWJlbE5lZWRlZCAmJiBkZWZhdWx0Q29sb3JcIlxyXG4gICAgICA+e3sgZGVmYXVsdENvbG9yIH19PC9zcGFuXHJcbiAgICA+XHJcbiAgPC9kaXY+XHJcbiAgPGllZWVzYS1mb3JtLWVycm9yIFtmb3JtR3JvdXBdPVwiZ3JvdXBcIiBbY29uZmlnXT1cImNvbmZpZ1wiPiA8L2llZWVzYS1mb3JtLWVycm9yPlxyXG4gIDxpZWVlc2EtZm9ybS1zdXBwb3J0LXRleHRcclxuICAgIFtmb3JtR3JvdXBdPVwiZ3JvdXBcIlxyXG4gICAgW2NvbmZpZ109XCJjb25maWdcIlxyXG4gID48L2llZWVzYS1mb3JtLXN1cHBvcnQtdGV4dD5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
314
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXNlbnRhdGlvbi9zcmMvbGliL2NvbXBvbmVudHMvY29sb3ItcGlja2VyL2NvbG9yLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzZW50YXRpb24vc3JjL2xpYi9jb21wb25lbnRzL2NvbG9yLXBpY2tlci9jb2xvci1waWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFDTixTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLHlCQUF5QixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3hFLE9BQU8sRUFBYSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDeEUsT0FBTyxFQUNMLFdBQVcsRUFDWCxlQUFlLEdBRWhCLE1BQU0saUNBQWlDLENBQUM7QUFDekMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFHNUYsT0FBTyxLQUFLLFNBQVMsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7OztBQWlCekQsTUFBTSxPQUFPLG9CQUFvQjtJQTJCL0I7SUFDRSwwQ0FBMEM7SUFDbEMsVUFBc0I7SUFDOUIsMENBQTBDO0lBQ2xDLGtCQUFz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Z0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE9uRGVzdHJveSxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTmd4Q29sb3JzTW9kdWxlLCBOZ3hDb2xvcnNUcmlnZ2VyRGlyZWN0aXZlIH0gZnJvbSAnbmd4LWNvbG9ycyc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCwgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xyXG5pbXBvcnQgeyBGb3JtRXJyb3JDb21wb25lbnQgfSBmcm9tICcuLi9mb3JtLWVycm9yL2Zvcm0tZXJyb3IuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2xUeXBlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2Zvcm0tY29udHJvbC10eXBlcy5tb2RlbCc7XHJcbmltcG9ydCB7XHJcbiAgQ29sb3JGb3JtYXQsXHJcbiAgQ29sb3JzQW5pbWF0aW9uLFxyXG4gIFBhbGV0dGVDb2xvcixcclxufSBmcm9tICcuLi8uLi9tb2RlbHMvY29sb3ItZm9ybWF0Lm1vZGVsJztcclxuaW1wb3J0IHsgRm9ybVN1cHBvcnRUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi4vZm9ybS1zdXBwb3J0LXRleHQvZm9ybS1zdXBwb3J0LXRleHQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRmllbGRDb25maWcgfSBmcm9tICcuLi8uLi9tb2RlbHMvZmllbGQtY29uZmlnLm1vZGVsJztcclxuaW1wb3J0IHsgRm9ybVV0aWxpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZm9ybS11dGlsaXR5LnNlcnZpY2UnO1xyXG5pbXBvcnQgKiBhcyBjb25zdGFudHMgZnJvbSAnLi4vLi4vYXNzZXRzL2NvbnN0YW50cy5qc29uJztcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpZWVlc2EtY29sb3ItcGlja2VyJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxyXG4gICAgTmd4Q29sb3JzTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIEZvcm1FcnJvckNvbXBvbmVudCxcclxuICAgIEZvcm1TdXBwb3J0VGV4dENvbXBvbmVudCxcclxuICBdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jb2xvci1waWNrZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvbG9yLXBpY2tlci5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb2xvclBpY2tlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBAVmlld0NoaWxkKE5neENvbG9yc1RyaWdnZXJEaXJlY3RpdmUsIHsgc3RhdGljOiB0cnVlIH0pXHJcbiAgY29sb3JQaWNrZXJEaXJlY3RpdmUhOiBOZ3hDb2xvcnNUcmlnZ2VyRGlyZWN0aXZlO1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgY29sb3JQaWNrZXJUZXh0czogYW55ID0gY29uc3RhbnRzPy5jb2xvclBpY2tlcjtcclxuICBwYWxldHRlQ29sb3JzOiBQYWxldHRlQ29sb3JbXSA9IHRoaXMuY29sb3JQaWNrZXJUZXh0cz8ucGFsZXR0ZUNvbG9ycztcclxuICBwYWxldHRlQ29udGFpbmVyITogSFRNTEVsZW1lbnQ7XHJcbiAgZ3JvdXAhOiBGb3JtR3JvdXA7XHJcbiAgY29uZmlnITogRmllbGRDb25maWc7XHJcbiAgQE91dHB1dCgpIGNvbG9yUGlja2VyQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcbiAgQE91dHB1dCgpIGNvbG9yUGlja2VyU2xpZGVyQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcbiAgQElucHV0KCkgZGVmYXVsdENvbG9yITogc3RyaW5nO1xyXG4gIGNhblNob3dQYWxldHRlID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcGFsZXR0ZTogc3RyaW5nW10gPSB0aGlzLnBhbGV0dGVDb2xvcnM/Lm1hcChcclxuICAgIChjb2xvcjogUGFsZXR0ZUNvbG9yKSA9PiBjb2xvci5oZXhDb2RlXHJcbiAgKTtcclxuICBASW5wdXQoKSBvdmVybGF5Q2xhc3NOYW1lID0gJ2llZWVzYS1jb2xvci1waWNrZXJfX292ZXJsYXknO1xyXG4gIEBJbnB1dCgpIGNvbG9yRm9ybWF0ID0gQ29sb3JGb3JtYXQuaGV4O1xyXG4gIEBJbnB1dCgpIGNvbG9yQW5pbWF0aW9uID0gQ29sb3JzQW5pbWF0aW9uLnBvcHVwO1xyXG4gIEBJbnB1dCgpIGZvcm1Db250cm9sTmFtZSA9ICdjb2xvclBpY2tlcic7XHJcbiAgQElucHV0KCkgcGFsZXR0ZVNlbGVjdExhYmVsID0gdGhpcy5jb2xvclBpY2tlclRleHRzPy5sYWJlbD8uc2VsZWN0O1xyXG4gIEBJbnB1dCgpIHBhbGV0dGVDYW5jZWxMYWJlbCA9IHRoaXMuY29sb3JQaWNrZXJUZXh0cz8ubGFiZWw/LmNhbmNlbDtcclxuICBASW5wdXQoKSBjb2xvclBpY2tlckxhYmVsITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGlzQ29sb3JDb2RlTGFiZWxOZWVkZWQgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIGlzQXJyb3dJY29uTmVlZGVkID0gdHJ1ZTtcclxuICBASW5wdXQoKSBjYW5IaWRlVGV4dElucHV0ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgY2FuSGlkZUNvbG9yUGlja2VyID0gZmFsc2U7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLXZhcnNcclxuICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZixcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gICAgcHJpdmF0ZSBmb3JtVXRpbGl0eVNlcnZpY2U6IEZvcm1VdGlsaXR5U2VydmljZSAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZW1wdHktZnVuY3Rpb25cclxuICApIHt9XHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmdyb3VwID1cclxuICAgICAgdGhpcy5ncm91cCA/PyB0aGlzLmZvcm1VdGlsaXR5U2VydmljZS5nZXRGb3JtR3JvdXAodGhpcy5mb3JtQ29udHJvbE5hbWUpO1xyXG4gICAgdGhpcy5jb25maWcgPVxyXG4gICAgICB0aGlzLmNvbmZpZyA/P1xyXG4gICAgICB0aGlzLmZvcm1VdGlsaXR5U2VydmljZS5nZXRGb3JtRmllbGRDb25maWcoXHJcbiAgICAgICAgdGhpcy5mb3JtQ29udHJvbE5hbWUsXHJcbiAgICAgICAgRm9ybUNvbnRyb2xUeXBlLkNPTE9SX1BJQ0tFUlxyXG4gICAgICApO1xyXG4gICAgaWYgKHRoaXMuY29uZmlnKSB7XHJcbiAgICAgIHRoaXMuY29sb3JQaWNrZXJMYWJlbCA9IHRoaXMuY29uZmlnPy5sYWJlbCA/PyB0aGlzLmNvbG9yUGlja2VyTGFiZWw7XHJcbiAgICAgIHRoaXMucGFsZXR0ZSA9IHRoaXMuY29uZmlnPy5wYWxldHRlID8/IHRoaXMucGFsZXR0ZTtcclxuICAgICAgdGhpcy5kZWZhdWx0Q29sb3IgPSB0aGlzLmNvbmZpZz8uZGVmYXVsdENvbG9yID8/IHRoaXMuZGVmYXVsdENvbG9yO1xyXG4gICAgICB0aGlzLmNvbG9yRm9ybWF0ID0gdGhpcy5jb25maWc/LmNvbG9yRm9ybWF0ID8/IHRoaXMuY29sb3JGb3JtYXQ7XHJcbiAgICAgIHRoaXMub3ZlcmxheUNsYXNzTmFtZSA9XHJcbiAgICAgICAgdGhpcy5jb25maWc/Lm92ZXJsYXlDbGFzc05hbWUgPz8gdGhpcy5vdmVybGF5Q2xhc3NOYW1lO1xyXG4gICAgICB0aGlzLmlzQ29sb3JDb2RlTGFiZWxOZWVkZWQgPVxyXG4gICAgICAgIHRoaXMuY29uZmlnPy5pc0NvbG9yQ29kZUxhYmVsTmVlZGVkID8/IHRoaXMuaXNDb2xvckNvZGVMYWJlbE5lZWRlZDtcclxuICAgICAgdGhpcy5pc0Fycm93SWNvbk5lZWRlZCA9XHJcbiAgICAgICAgdGhpcy5jb25maWc/LmlzQXJyb3dJY29uTmVlZGVkID8/IHRoaXMuaXNBcnJvd0ljb25OZWVkZWQ7XHJcbiAgICAgIHRoaXMuY2FuSGlkZVRleHRJbnB1dCA9XHJcbiAgICAgICAgdGhpcy5jb25maWc/LmNhbkhpZGVUZXh0SW5wdXQgPz8gdGhpcy5jYW5IaWRlVGV4dElucHV0O1xyXG4gICAgICB0aGlzLmNhbkhpZGVDb2xvclBpY2tlciA9XHJcbiAgICAgICAgdGhpcy5jb25maWc/LmNhbkhpZGVDb2xvclBpY2tlciA/PyB0aGlzLmNhbkhpZGVDb2xvclBpY2tlcjtcclxuICAgIH1cclxuICAgIHRoaXMuZ3JvdXAuZ2V0KHRoaXMuY29uZmlnLmNvbnRyb2xOYW1lKT8uc2V0VmFsdWUodGhpcy5kZWZhdWx0Q29sb3IpO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBTZXRzIHRoZSBjb2xvciB0byBmb3JtIGdyb3VwIGNvbnRyb2wuXHJcbiAgICogQG1lbWJlcm9mIENvbG9yUGlja2VyQ29tcG9uZW50XHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IGNvbG9yXHJcbiAgICogQHJldHVybnMge3ZvaWR9XHJcbiAgICovXHJcbiAgaW5wdXRDaGFuZ2UoY29sb3I6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5kZWZhdWx0Q29sb3IgPSBjb2xvcjtcclxuICAgIHRoaXMuZ3JvdXA/LmdldCh0aGlzLmNvbmZpZz8uY29udHJvbE5hbWUpPy5zZXRWYWx1ZShjb2xvcik7XHJcbiAgICB0aGlzLmNvbG9yUGlja2VyQ2hhbmdlLmVtaXQoY29sb3IpO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBTZXRzIGNhblNob3dQYWxldHRlIHRvIHRydWUgd2hlbiB0aGUgcGFsZXR0ZSBpcyBvcGVuZWQuXHJcbiAgICogQG1lbWJlcm9mIENvbG9yUGlja2VyQ29tcG9uZW50XHJcbiAgICogQHJldHVybnMge3ZvaWR9XHJcbiAgICovXHJcbiAgb25PcGVuUGFsZXR0ZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuY2FuU2hvd1BhbGV0dGUgPSB0cnVlO1xyXG4gICAgdGhpcy5jb2xvclBpY2tlckV2ZW50SGFuZGxlcnModHJ1ZSk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIFNldHMgY2FuU2hvd1BhbGV0dGUgdG8gZmFsc2Ugd2hlbiB0aGUgcGFsZXR0ZSBpcyBjbG9zZWQuXHJcbiAgICogQG1lbWJlcm9mIENvbG9yUGlja2VyQ29tcG9uZW50XHJcbiAgICogQHJldHVybnMge3ZvaWR9XHJcbiAgICovXHJcbiAgb25DbG9zZVBhbGV0dGUoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNhblNob3dQYWxldHRlID0gZmFsc2U7XHJcbiAgICB0aGlzLmVsZW1lbnRSZWY/Lm5hdGl2ZUVsZW1lbnRcclxuICAgICAgPy5xdWVyeVNlbGVjdG9yKCcuaWVlZXNhLWNvbG9yLXBpY2tlcl9fdG9nZ2xlLWljb24nKVxyXG4gICAgICA/LmZvY3VzKCk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIEdldHMgdHJpZ2dlcmVkIHdoZW4gdGhlIHRoZSBhbHBoYSwgaHVlIG9yIExpZ2h0bmVzcyBzbGlkZXJzIGFyZSBjaGFuZ2VkXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IGNvbG9yXHJcbiAgICovXHJcbiAgb25TbGlkZXJDaGFuZ2UoY29sb3I6IHN0cmluZykge1xyXG4gICAgdGhpcy5jb2xvclBpY2tlclNsaWRlckNoYW5nZS5lbWl0KGNvbG9yKTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogVG9nZ2xlcyB0aGUgcGFsZXR0ZSBwYW5lbC5cclxuICAgKiBAbWVtYmVyb2YgQ29sb3JQaWNrZXJDb21wb25lbnRcclxuICAgKiBAcmV0dXJucyB7dm9pZH1cclxuICAgKi9cclxuICB0b2dnbGVQYWxldHRlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5jYW5TaG93UGFsZXR0ZSA9ICF0aGlzLmNhblNob3dQYWxldHRlO1xyXG4gICAgaWYgKHRoaXMuY2FuU2hvd1BhbGV0dGUpIHRoaXMuY29sb3JQaWNrZXJEaXJlY3RpdmU/Lm9wZW5QYW5lbCgpO1xyXG4gICAgZWxzZSB0aGlzLmNvbG9yUGlja2VyRGlyZWN0aXZlPy5jbG9zZVBhbmVsKCk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIExpc3RlbmluZyB0aGUgY29sb3IgcGlja2VyIGV2ZW50cyB0byBhY2hpZXZlIHRoZSBhY2Nlc3NpYmlsaXR5IGZvciBjb2xvciBwYWxldHRlLlxyXG4gICAqIGNhbkFkZExpc3RlbmVyIGZhbHNlIHJlbW92ZSB0aGUgZXZlbnQgbGlzdGVuZXJzIHdoaWNoIHdlIGNhbGxzIGluIG5nRGVzdHJveSxcclxuICAgKiBjYW5BZGRMaXN0ZW5lciB0cnVlIGFkZGluZyB0aGUgZXZlbnQgbGlzdGVuZXJzIHdoaWxlIG9wZW5pbmcgdGhlIGNvbG9yIHBhbGV0dGUuXHJcbiAgICogQG1lbWJlcm9mIENvbG9yUGlja2VyQ29tcG9uZW50XHJcbiAgICogQHBhcmFtIHtib29sZWFufSBjYW5BZGRMaXN0ZW5lclxyXG4gICAqIEByZXR1cm5zIHt2b2lkfVxyXG4gICAqL1xyXG4gIGNvbG9yUGlja2VyRXZlbnRIYW5kbGVycyhjYW5BZGRMaXN0ZW5lcjogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5wYWxldHRlQ29udGFpbmVyID1cclxuICAgICAgdGhpcy5jb2xvclBpY2tlckRpcmVjdGl2ZT8ucGFuZWxSZWY/LmxvY2F0aW9uPy5uYXRpdmVFbGVtZW50Py5xdWVyeVNlbGVjdG9yKFxyXG4gICAgICAgICduZ3gtY29sb3JzLXBhbmVsIC5vcGVuZWQnXHJcbiAgICAgICkgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgaWYgKHRoaXMucGFsZXR0ZUNvbnRhaW5lcikge1xyXG4gICAgICAgIHRoaXMucGFsZXR0ZUNvbnRhaW5lci5yb2xlID0gJ2FwcGxpY2F0aW9uJztcclxuICAgICAgICB0aGlzLnBhbGV0dGVDb250YWluZXIudGFiSW5kZXggPSAwO1xyXG4gICAgICAgIHRoaXMucGFsZXR0ZUNvbnRhaW5lci5hcmlhTGFiZWwgPSB0aGlzLmNvbG9yUGlja2VyVGV4dHM/LmFyaWFMYWJlbD8ucGFsZXR0ZTtcclxuICAgICAgICBjb25zdCBjb2xvclBhbGxldHRlcyA9IHRoaXMucGFsZXR0ZUNvbnRhaW5lci5xdWVyeVNlbGVjdG9yQWxsKFxyXG4gICAgICAgICAgJy5jb2xvcnMgLmNpcmNsZS53cmFwcGVyLmNvbG9yJ1xyXG4gICAgICAgICk7XHJcbiAgICAgICAgY29uc3QgbW9yZUNvbG9yc0Fycm93QnV0dG9uID0gdGhpcy5wYWxldHRlQ29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoXHJcbiAgICAgICAgICAnLmNvbG9ycyAuY2lyY2xlLmJ1dHRvbidcclxuICAgICAgICApIGFzIEhUTUxFbGVtZW50O1xyXG4gICAgICAgIGNvbnN0IGxhc3RFbGVtZW50ID0gdGhpcy5wYWxldHRlQ29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoXHJcbiAgICAgICAgICAnLmctaW5wdXQgaW5wdXQnXHJcbiAgICAgICAgKSBhcyBIVE1MRWxlbWVudDtcclxuICAgICAgICBpZiAoY29sb3JQYWxsZXR0ZXM/Lmxlbmd0aCkge1xyXG4gICAgICAgICAgY29uc3QgY29sb3JQYWxsZXR0ZXNMaXN0ID0gQXJyYXkuZnJvbShcclxuICAgICAgICAgICAgY29sb3JQYWxsZXR0ZXNcclxuICAgICAgICAgICkgYXMgSFRNTEVsZW1lbnRbXTtcclxuICAgICAgICAgIGNvbG9yUGFsbGV0dGVzTGlzdC5wdXNoKG1vcmVDb2xvcnNBcnJvd0J1dHRvbik7XHJcbiAgICAgICAgICBjb2xvclBhbGxldHRlc0xpc3QucHVzaChsYXN0RWxlbWVudCk7XHJcbiAgICAgICAgICBjb25zdCBrZXlEb3duSGFuZGxlckZvckNvbG9yUGFsZXR0ZXMgPSAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5jb2xvclBpY2tlcktleURvd25IYW5kbGVyKGNvbG9yUGFsbGV0dGVzTGlzdCwgZXZlbnQpO1xyXG4gICAgICAgICAgfTtcclxuICAgICAgICAgIGNvbG9yUGFsbGV0dGVzTGlzdD8uZm9yRWFjaCgoZWxlbWVudDogSFRNTEVsZW1lbnQsIGluZGV4KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChpbmRleCAhPT0gY29sb3JQYWxsZXR0ZXNMaXN0Py5sZW5ndGggLSAxKSB7XHJcbiAgICAgICAgICAgICAgZWxlbWVudC50YWJJbmRleCA9IDA7XHJcbiAgICAgICAgICAgICAgZWxlbWVudC5yb2xlID0gJ2J1dHRvbic7XHJcbiAgICAgICAgICAgICAgZWxlbWVudC5hcmlhTGFiZWwgPSB0aGlzLnBhbGV0dGVDb2xvcnNbaW5kZXhdPy5uYW1lO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIGVsZW1lbnQuYXJpYUxhYmVsID1cclxuICAgICAgICAgICAgICAgIHRoaXMuY29sb3JQaWNrZXJUZXh0cz8uYXJpYUxhYmVsPy5oZXhDb2RlSW5wdXQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYgKGluZGV4ID09PSAwKSBlbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgICAgICAgIGlmIChpbmRleCA9PT0gY29sb3JQYWxsZXR0ZXNMaXN0Py5sZW5ndGggLSAyKSB7XHJcbiAgICAgICAgICAgICAgZWxlbWVudC5hcmlhTGFiZWwgPSB0aGlzLmNvbG9yUGlja2VyVGV4dHM/LmFyaWFMYWJlbD8ubmV4dDtcclxuICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gICAgICAgICAgICAgIGNvbnN0IGNsaWNrSGFuZGxlckZvck1vcmVDb2xvcnNCdXR0b24gPSAoZXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgIGNvbnN0IGxpc3QgPVxyXG4gICAgICAgICAgICAgICAgICB0aGlzLnBhbGV0dGVDb250YWluZXI/LnF1ZXJ5U2VsZWN0b3IoJy5uYXYtd3JhcHBlcicpPy5jaGlsZE5vZGVzO1xyXG4gICAgICAgICAgICAgICAgICBjb25zdCBncmFkaWVudEJ1dHRvbnM6IEhUTUxFbGVtZW50W10gPSBbXTtcclxuICAgICAgICAgICAgICAgICAgbGlzdD8uZm9yRWFjaCgoZWxlbWVudCkgPT5cclxuICAgICAgICAgICAgICAgICAgICBncmFkaWVudEJ1dHRvbnMucHVzaChlbGVtZW50IGFzIEhUTUxFbGVtZW50KVxyXG4gICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICBpZiAoZ3JhZGllbnRCdXR0b25zPy5sZW5ndGgpIHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBsYXN0RWxlbWVudCA9IHRoaXMucGFsZXR0ZUNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKFxyXG4gICAgICAgICAgICAgICAgICAgICAgJy5nLWlucHV0IGlucHV0J1xyXG4gICAgICAgICAgICAgICAgICAgICkgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgZ3JhZGllbnRCdXR0b25zLnB1c2gobGFzdEVsZW1lbnQpO1xyXG4gICAgICAgICAgICAgICAgICAgIGdyYWRpZW50QnV0dG9ucz8uZm9yRWFjaChcclxuICAgICAgICAgICAgICAgICAgICAgIChlbGVtZW50OiBIVE1MRWxlbWVudCwgaW5kZXg6IG51bWJlcikgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaW5kZXggPT09IDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LmFyaWFMYWJlbCA9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbG9yUGlja2VyVGV4dHM/LmFyaWFMYWJlbD8uYmFjaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2xpY2tIYW5kbGVyRm9yR3JhZGllbnRQcmV2aW91c0J1dHRvbiA9IChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudDogYW55XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uT3BlblBhbGV0dGUoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBrZXlEb3duSGFuZGxlckZvckdyYWRpZW50QnV0dG9ucyA9IChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50OiBLZXlib2FyZEV2ZW50XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbG9yUGlja2VyS2V5RG93bkhhbmRsZXIoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyYWRpZW50QnV0dG9ucyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50Py5yZW1vdmVFdmVudExpc3RlbmVyKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2NsaWNrJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWNrSGFuZGxlckZvckdyYWRpZW50UHJldmlvdXNCdXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQ/LnJlbW92ZUV2ZW50TGlzdGVuZXIoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAna2V5ZG93bicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGlja0hhbmRsZXJGb3JHcmFkaWVudFByZXZpb3VzQnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoY2FuQWRkTGlzdGVuZXIpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQ/LmFkZEV2ZW50TGlzdGVuZXIoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdjbGljaycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWNrSGFuZGxlckZvckdyYWRpZW50UHJldmlvdXNCdXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50Py5hZGRFdmVudExpc3RlbmVyKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAna2V5ZG93bicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleURvd25IYW5kbGVyRm9yR3JhZGllbnRCdXR0b25zXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LnJvbGUgPSAnYnV0dG9uJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC50YWJJbmRleCA9IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50Py5pbm5lclRleHQ/LnRyaW0oKSA9PT1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbG9yUGlja2VyVGV4dHM/LmxhYmVsPy5zZWxlY3RcclxuICAgICAgICAgICAgICAgICAgICAgICAgKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5hcmlhTGFiZWwgPVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb2xvclBpY2tlclRleHRzPy5hcmlhTGFiZWw/LnNlbGVjdDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50Py5jbGFzc0xpc3Q/LmFkZCgnc2VsZWN0Jyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudD8uaW5uZXJUZXh0Py50cmltKCkgPT09XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb2xvclBpY2tlclRleHRzPy5sYWJlbD8uY2FuY2VsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQuYXJpYUxhYmVsID1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29sb3JQaWNrZXJUZXh0cz8uYXJpYUxhYmVsPy5jYW5jZWw7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudD8uY2xhc3NMaXN0Py5hZGQoJ2NhbmNlbCcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpbmRleCA9PT0gZ3JhZGllbnRCdXR0b25zPy5sZW5ndGggLSAxKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5yb2xlID0gJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgICAgICAgICAgICB9LCAyNTApO1xyXG4gICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgZWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKFxyXG4gICAgICAgICAgICAgICAgJ2NsaWNrJyxcclxuICAgICAgICAgICAgICAgIGNsaWNrSGFuZGxlckZvck1vcmVDb2xvcnNCdXR0b25cclxuICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgIGlmIChjYW5BZGRMaXN0ZW5lcikge1xyXG4gICAgICAgICAgICAgICAgZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKFxyXG4gICAgICAgICAgICAgICAgICAnY2xpY2snLFxyXG4gICAgICAgICAgICAgICAgICBjbGlja0hhbmRsZXJGb3JNb3JlQ29sb3JzQnV0dG9uXHJcbiAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoXHJcbiAgICAgICAgICAgICAgJ2tleWRvd24nLFxyXG4gICAgICAgICAgICAgIGtleURvd25IYW5kbGVyRm9yQ29sb3JQYWxldHRlc1xyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICBpZiAoY2FuQWRkTGlzdGVuZXIpIHtcclxuICAgICAgICAgICAgICBlbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoXHJcbiAgICAgICAgICAgICAgICAna2V5ZG93bicsXHJcbiAgICAgICAgICAgICAgICBrZXlEb3duSGFuZGxlckZvckNvbG9yUGFsZXR0ZXNcclxuICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0sIDI1MCk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIExpc3RlbnMga2V5ZG93biBldmVudCBoYW5kbGVzIHRvIG1ha2UgdGhlIHBhbGV0dGUgZm9jdXNhYmxlLlxyXG4gICAqIEBtZW1iZXJvZiBDb2xvclBpY2tlckNvbXBvbmVudFxyXG4gICAqIEBwYXJhbSB7SFRNTEVsZW1lbnRbXX0gY29sb3JQYWxsZXR0ZXNMaXN0XHJcbiAgICogQHBhcmFtIHtLZXlib2FyZEV2ZW50fSBldmVudFxyXG4gICAqIEByZXR1cm5zIHt2b2lkfVxyXG4gICAqL1xyXG4gIGNvbG9yUGlja2VyS2V5RG93bkhhbmRsZXIoXHJcbiAgICBjb2xvclBhbGxldHRlc0xpc3Q6IEhUTUxFbGVtZW50W10sXHJcbiAgICBldmVudDogS2V5Ym9hcmRFdmVudFxyXG4gICk6IHZvaWQge1xyXG4gICAgY29uc3QgZmlyc3RFbGVtZW50ID0gY29sb3JQYWxsZXR0ZXNMaXN0WzBdO1xyXG4gICAgY29uc3QgbGFzdEVsZW1lbnQgPSBjb2xvclBhbGxldHRlc0xpc3RbY29sb3JQYWxsZXR0ZXNMaXN0Lmxlbmd0aCAtIDFdO1xyXG4gICAgaWYgKGV2ZW50LmNvZGUgPT09ICdUYWInKSB7XHJcbiAgICAgIGlmIChldmVudC5zaGlmdEtleSkge1xyXG4gICAgICAgIGlmIChkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBmaXJzdEVsZW1lbnQpIHtcclxuICAgICAgICAgIGxhc3RFbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIGlmIChkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBsYXN0RWxlbWVudCkge1xyXG4gICAgICAgIGlmICh0aGlzLnBhbGV0dGVDb250YWluZXI/LnF1ZXJ5U2VsZWN0b3IoJy5uYXYtd3JhcHBlcicpKSB7XHJcbiAgICAgICAgICAoXHJcbiAgICAgICAgICAgIHRoaXMucGFsZXR0ZUNvbnRhaW5lcj8ucXVlcnlTZWxlY3RvcignLm5hdi13cmFwcGVyJylcclxuICAgICAgICAgICAgICA/LmNoaWxkTm9kZXNbMF0gYXMgSFRNTEVsZW1lbnRcclxuICAgICAgICAgICkuZm9jdXMoKTtcclxuICAgICAgICB9IGVsc2UgZmlyc3RFbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaWYgKGV2ZW50LmNvZGUgPT09ICdTcGFjZScgfHwgZXZlbnQuY29kZSA9PT0gJ0VudGVyJykge1xyXG4gICAgICBjb25zdCB0YXJnZXRFbGVtZW50ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgICBpZiAodGFyZ2V0RWxlbWVudD8uY2xhc3NMaXN0Py5jb250YWlucygnYnV0dG9uJykpXHJcbiAgICAgICAgdGFyZ2V0RWxlbWVudD8uZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2NsaWNrJykpO1xyXG4gICAgICBlbHNlIHRhcmdldEVsZW1lbnQ/LmZpcnN0Q2hpbGQ/LmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdjbGljaycpKTtcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxuICB9XHJcbiAgLyoqXHJcbiAgICogUmVtb3ZpbmcgdGhlIGFjdGl2ZSBsaXN0ZW5lcnMgd2hpbGUgY29tcG9uZW50IGdldCBkZXN0cm95ZWQuXHJcbiAgICovXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLmNvbG9yUGlja2VyRXZlbnRIYW5kbGVycyhmYWxzZSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICBbZm9ybUdyb3VwXT1cImdyb3VwXCJcclxuICBbbmdDbGFzc109XCJcclxuICAgIGNvbmZpZz8uaXNMYWJlbEFsaWduZWRMZWZ0XHJcbiAgICAgID8gJ2llZWVzYS1jb2xvci1waWNrZXJfX2xhYmVsLWxlZnQnXHJcbiAgICAgIDogJ2llZWVzYS1jb2xvci1waWNrZXJfX2xhYmVsLXRvcCdcclxuICBcIlxyXG4+XHJcbiAgPG1hdC1sYWJlbFxyXG4gICAgY2xhc3M9XCJpZWVlc2EtYm9keS1zbS0xNCBpZWVlc2EtY29sb3ItcGlja2VyX19sYWJlbFwiXHJcbiAgICAqbmdJZj1cImNvbG9yUGlja2VyTGFiZWxcIlxyXG4gICAgPnt7IGNvbG9yUGlja2VyTGFiZWwgfX08L21hdC1sYWJlbFxyXG4gID5cclxuICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICA8bmd4LWNvbG9yc1xyXG4gICAgICBjbGFzcz1cImllZWVzYS1jb2xvci1waWNrZXJcIlxyXG4gICAgICBuZ3gtY29sb3JzLXRyaWdnZXJcclxuICAgICAgW2FjY2VwdExhYmVsXT1cInBhbGV0dGVTZWxlY3RMYWJlbFwiXHJcbiAgICAgIFtjYW5jZWxMYWJlbF09XCJwYWxldHRlQ2FuY2VsTGFiZWxcIlxyXG4gICAgICBbcGFsZXR0ZV09XCJwYWxldHRlXCJcclxuICAgICAgKGlucHV0KT1cImlucHV0Q2hhbmdlKCRldmVudClcIlxyXG4gICAgICAob3Blbik9XCJvbk9wZW5QYWxldHRlKClcIlxyXG4gICAgICAoY2xvc2UpPVwib25DbG9zZVBhbGV0dGUoKVwiXHJcbiAgICAgIChzbGlkZXIpPVwib25TbGlkZXJDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgIFtvdmVybGF5Q2xhc3NOYW1lXT1cIm92ZXJsYXlDbGFzc05hbWVcIlxyXG4gICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImNvbmZpZy5jb250cm9sTmFtZVwiXHJcbiAgICAgIFtmb3JtYXRdPVwiY29sb3JGb3JtYXRcIlxyXG4gICAgICBbaGlkZVRleHRJbnB1dF09XCJjYW5IaWRlVGV4dElucHV0XCJcclxuICAgICAgW2NvbG9yc0FuaW1hdGlvbl09XCJjb2xvckFuaW1hdGlvblwiXHJcbiAgICAgIFtoaWRlQ29sb3JQaWNrZXJdPVwiY2FuSGlkZUNvbG9yUGlja2VyXCJcclxuICAgICAgW2FyaWFMYWJlbF09XCJjb2xvclBpY2tlclRleHRzPy5hcmlhTGFiZWw/LmNvbG9yUGlja2VyXCJcclxuICAgICAgW2FyaWFEZXNjcmlwdGlvbl09XCJjb2xvclBpY2tlclRleHRzPy5hcmlhRGVzY3JpcHRpb25cIlxyXG4gICAgPlxyXG4gICAgPC9uZ3gtY29sb3JzPlxyXG4gICAgPGJ1dHRvblxyXG4gICAgICBjbGFzcz1cImllZWVzYS1jb2xvci1waWNrZXJfX3RvZ2dsZS1pY29uXCJcclxuICAgICAgKm5nSWY9XCJpc0Fycm93SWNvbk5lZWRlZFwiXHJcbiAgICAgIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAoY2xpY2spPVwidG9nZ2xlUGFsZXR0ZSgpXCJcclxuICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJjb2xvclBpY2tlclRleHRzPy5hcmlhTGFiZWw/LmNvbG9yUGlja2VyXCJcclxuICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJjb2xvclBpY2tlclRleHRzPy5hcmlhRGVzY3JpYmVkQnlJZFwiXHJcbiAgICA+XHJcbiAgICAgIDxpXHJcbiAgICAgICAgY2xhc3M9XCJmYS1zb2xpZFwiXHJcbiAgICAgICAgW25nQ2xhc3NdPVwiY2FuU2hvd1BhbGV0dGUgPyAnZmEtY2FyZXQtdXAnIDogJ2ZhLWNhcmV0LWRvd24nXCJcclxuICAgICAgPjwvaT5cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPHNwYW5cclxuICAgICAgY2xhc3M9XCJpZWVlc2EtY29sb3ItcGlja2VyLS1zZWxlY3RlZCBpZWVlc2EtYm9keS1tZC0xNFwiXHJcbiAgICAgICpuZ0lmPVwiaXNDb2xvckNvZGVMYWJlbE5lZWRlZCAmJiBkZWZhdWx0Q29sb3JcIlxyXG4gICAgICA+e3sgZGVmYXVsdENvbG9yIH19PC9zcGFuXHJcbiAgICA+XHJcbiAgPC9kaXY+XHJcbiAgPGllZWVzYS1mb3JtLWVycm9yIFtmb3JtR3JvdXBdPVwiZ3JvdXBcIiBbY29uZmlnXT1cImNvbmZpZ1wiPiA8L2llZWVzYS1mb3JtLWVycm9yPlxyXG4gIDxpZWVlc2EtZm9ybS1zdXBwb3J0LXRleHRcclxuICAgIFtmb3JtR3JvdXBdPVwiZ3JvdXBcIlxyXG4gICAgW2NvbmZpZ109XCJjb25maWdcIlxyXG4gID48L2llZWVzYS1mb3JtLXN1cHBvcnQtdGV4dD5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -67,7 +67,7 @@ export class SearchComponent {
|
|
|
67
67
|
* @memberof SearchComponent
|
|
68
68
|
*/
|
|
69
69
|
ngAfterViewInit() {
|
|
70
|
-
this.group?.get(this.config?.controlName)?.setValue(this.config?.value);
|
|
70
|
+
this.group?.get(this.config?.controlName)?.setValue(this.config?.value ?? this.searchTerm);
|
|
71
71
|
if (this.searchType === SearchType.AUTO && this.searchControl) {
|
|
72
72
|
fromEvent(this.searchControl?.nativeElement, 'keyup')
|
|
73
73
|
.pipe(
|
|
@@ -184,4 +184,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
184
184
|
}], minCharacterToSearch: [{
|
|
185
185
|
type: Input
|
|
186
186
|
}] } });
|
|
187
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXNlbnRhdGlvbi9zcmMvbGliL2NvbXBvbmVudHMvc2VhcmNoL3NlYXJjaC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzZW50YXRpb24vc3JjL2xpYi9jb21wb25lbnRzL3NlYXJjaC9zZWFyY2guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFDTixTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxPQUFPLEVBQ1AsWUFBWSxFQUNaLG9CQUFvQixFQUNwQixNQUFNLEVBQ04sU0FBUyxFQUNULEdBQUcsRUFDSCxTQUFTLEdBQ1YsTUFBTSxNQUFNLENBQUM7QUFDZCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQWEsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdoRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDdEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBRXhFLE9BQU8sS0FBSyxVQUFVLE1BQU0sNkJBQTZCLENBQUM7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QzlENUIsMGtEQWlEQSw4dVREQ0ksWUFBWSxnT0FDWixtQkFBbUIsbzJCQUNuQixrQkFBa0IsZ0hBQ2xCLGtCQUFrQiwwU0FDbEIsY0FBYywwV0FDZCxhQUFhLCtCQUNiLHdCQUF3Qjs7NEZBTWYsZUFBZTtrQkFoQjNCLFNBQVM7K0JBQ0UsZUFBZSxjQUNiLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixrQkFBa0I7d0JBQ2xCLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYix3QkFBd0I7cUJBQ3pCLGlCQUdjLGlCQUFpQixDQUFDLElBQUk7eUlBTzVCLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNJLFdBQVc7c0JBQXBCLE1BQU07Z0JBQ3FCLGFBQWE7c0JBQXhDLFNBQVM7dUJBQUMsZUFBZTtnQkFDakIsb0JBQW9CO3NCQUE1QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBFbGVtZW50UmVmLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBWaWV3Q2hpbGQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgU3ViamVjdCxcclxuICBkZWJvdW5jZVRpbWUsXHJcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXHJcbiAgZmlsdGVyLFxyXG4gIGZyb21FdmVudCxcclxuICBtYXAsXHJcbiAgdGFrZVVudGlsLFxyXG59IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybUdyb3VwLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBGaWVsZENvbmZpZyB9IGZyb20gJy4uLy4uL21vZGVscy9maWVsZC1jb25maWcubW9kZWwnO1xyXG5pbXBvcnQgeyBGb3JtRmllbGQgfSBmcm9tICcuLi8uLi9tb2RlbHMvZm9ybS1maWVsZC5tb2RlbCc7XHJcbmltcG9ydCB7IFZhbGlkYXRpb25QYXR0ZXJucyB9IGZyb20gJy4uLy4uL3ZhbGlkYXRpb24tcGF0dGVybnMnO1xyXG5pbXBvcnQgeyBTZWFyY2hUeXBlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3NlYXJjaC5tb2RlbCc7XHJcbmltcG9ydCB7IEZvcm1FcnJvckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvZm9ybS1lcnJvci9mb3JtLWVycm9yLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sVHlwZSB9IGZyb20gJy4uLy4uL21vZGVscy9mb3JtLWNvbnRyb2wtdHlwZXMubW9kZWwnO1xyXG5pbXBvcnQgeyBGb3JtVXRpbGl0eVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9mb3JtLXV0aWxpdHkuc2VydmljZSc7XHJcbmltcG9ydCAqIGFzIHNlYXJjaEluZm8gZnJvbSAnLi4vLi4vYXNzZXRzL2NvbnN0YW50cy5qc29uJztcclxuaW1wb3J0IHsgRm9ybVN1cHBvcnRUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi4vZm9ybS1zdXBwb3J0LXRleHQvZm9ybS1zdXBwb3J0LXRleHQuY29tcG9uZW50JztcclxuY29uc3QgTUlOX0NIQVIgPSAzO1xyXG4vKipcclxuICogQ29tcG9uZW50IHN1cHBvcnQgc2VhcmNoIGNhcGFiaWxpdHkgYW5kIHVzZWQgYXMgYSBmb3JtIGZpbGVkIHdpdGggdHlwZSBzZWFyY2ggYW5kIGluZGVwZW5kZW50bHkgYXMgc2VhcmNoIGNvbXBvbmVudC5cclxuICogQGV4cG9ydFxyXG4gKiBAY2xhc3MgU2VhcmNoQ29tcG9uZW50XHJcbiAqIEBpbXBsZW1lbnRzIHtPbkluaXR9XHJcbiAqIEBpbXBsZW1lbnRzIHtBZnRlclZpZXdJbml0fVxyXG4gKiBAaW1wbGVtZW50cyB7T25EZXN0cm95fVxyXG4gKiBAaW1wbGVtZW50cyB7Rm9ybUZpZWxkfVxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpZWVlc2Etc2VhcmNoJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBGb3JtRXJyb3JDb21wb25lbnQsXHJcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXHJcbiAgICBNYXRJbnB1dE1vZHVsZSxcclxuICAgIE1hdEljb25Nb2R1bGUsXHJcbiAgICBGb3JtU3VwcG9ydFRleHRDb21wb25lbnQsXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9zZWFyY2guY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VhcmNoQ29tcG9uZW50XHJcbiAgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSwgRm9ybUZpZWxkXHJcbntcclxuICBjb25maWchOiBGaWVsZENvbmZpZztcclxuICBncm91cCE6IEZvcm1Hcm91cDtcclxuICBASW5wdXQoKSBmb3JtQ29udHJvbE5hbWUgPSAnc2VhcmNoJztcclxuICBASW5wdXQoKSBwbGFjZWhvbGRlckxhYmVsID0gJyc7XHJcbiAgQElucHV0KCkgc2VhcmNoVGVybSA9ICcnO1xyXG4gIEBJbnB1dCgpIHN1cHBvcnRNZXNzYWdlITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHNlYXJjaFR5cGU6IFNlYXJjaFR5cGUgPSBTZWFyY2hUeXBlLkFVVE87XHJcbiAgQE91dHB1dCgpIHNlYXJjaFZhbHVlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBWaWV3Q2hpbGQoJ3NlYXJjaENvbnRyb2wnKSBzZWFyY2hDb250cm9sITogRWxlbWVudFJlZjtcclxuICBASW5wdXQoKSBtaW5DaGFyYWN0ZXJUb1NlYXJjaCA9IE1JTl9DSEFSO1xyXG4gIHNlYXJjaFJlc3BvbnNlITogc3RyaW5nO1xyXG4gIGRlc3Ryb3kkOiBTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gIHNlYXJjaEluZm86IGFueSA9IHNlYXJjaEluZm87XHJcbiAgaXNTZWFyY2hWYWx1ZUVtaXR0ZWQgPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLXZhcnNcclxuICAgIHByaXZhdGUgY2Q6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXHJcbiAgICBwcml2YXRlIGZvcm1VdGlsaXR5U2VydmljZTogRm9ybVV0aWxpdHlTZXJ2aWNlIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1lbXB0eS1mdW5jdGlvblxyXG4gICkge31cclxuXHJcbiAgLyoqXHJcbiAgICogSW1wbGVtZW50YXRpb24gb2YgbmdPbkluaXQgbGlmZWN5Y2xlIGhvb2sgbWV0aG9kIHRvIGluaXRpYWxpemUgY29uZmlnIGFuZCBmb3JtIGdyb3VwIGlmIGl0cyB1bmRlZmluZWRcclxuICAgKiBAbWVtYmVyb2YgU2VhcmNoQ29tcG9uZW50XHJcbiAgICovXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5jb25maWc/LnNlYXJjaFR5cGUpIHRoaXMuc2VhcmNoVHlwZSA9IHRoaXMuY29uZmlnPy5zZWFyY2hUeXBlO1xyXG4gICAgdGhpcy5jb25maWcgPVxyXG4gICAgICB0aGlzLmNvbmZpZyA/P1xyXG4gICAgICB0aGlzLmZvcm1VdGlsaXR5U2VydmljZS5nZXRGb3JtRmllbGRDb25maWcoXHJcbiAgICAgICAgdGhpcy5mb3JtQ29udHJvbE5hbWUsXHJcbiAgICAgICAgRm9ybUNvbnRyb2xUeXBlLlNFQVJDSFxyXG4gICAgICApO1xyXG4gICAgdGhpcy5ncm91cCA9XHJcbiAgICAgIHRoaXMuZ3JvdXAgPz8gdGhpcy5mb3JtVXRpbGl0eVNlcnZpY2UuZ2V0Rm9ybUdyb3VwKHRoaXMuZm9ybUNvbnRyb2xOYW1lKTtcclxuICAgIHRoaXMuY29uZmlnLnN1cHBvcnRNZXNzYWdlID1cclxuICAgICAgdGhpcy5jb25maWc/LnN1cHBvcnRNZXNzYWdlID8/IHRoaXMuc3VwcG9ydE1lc3NhZ2U7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBIYW5kbGVzIGZvcm0gY29udHJvbCBzZWFyY2gga2V5dXAgZXZlbnQgYW5kIGVtaXRzIHNlYXJjaGVkIHZhbHVlXHJcbiAgICogQG1lbWJlcm9mIFNlYXJjaENvbXBvbmVudFxyXG4gICAqL1xyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMuZ3JvdXA/LmdldCh0aGlzLmNvbmZpZz8uY29udHJvbE5hbWUpPy5zZXRWYWx1ZSh0aGlzLmNvbmZpZz8udmFsdWUpO1xyXG4gICAgaWYgKHRoaXMuc2VhcmNoVHlwZSA9PT0gU2VhcmNoVHlwZS5BVVRPICYmIHRoaXMuc2VhcmNoQ29udHJvbCkge1xyXG4gICAgICBmcm9tRXZlbnQodGhpcy5zZWFyY2hDb250cm9sPy5uYXRpdmVFbGVtZW50LCAna2V5dXAnKVxyXG4gICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICAgICAgICAgIG1hcCgoZXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gZXZlbnQudGFyZ2V0LnZhbHVlO1xyXG4gICAgICAgICAgfSksXHJcbiAgICAgICAgICBmaWx0ZXIoXHJcbiAgICAgICAgICAgIChyZXMpID0+IHJlcy5sZW5ndGggPj0gdGhpcy5taW5DaGFyYWN0ZXJUb1NlYXJjaCB8fCByZXMubGVuZ3RoID09PSAwXHJcbiAgICAgICAgICApLFxyXG4gICAgICAgICAgZGVib3VuY2VUaW1lKHRoaXMuc2VhcmNoSW5mby5hdXRvY29tcGxldGUuZGVib3VuY2VUaW1lKSxcclxuICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcclxuICAgICAgICApXHJcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKHRleHQ6IHN0cmluZykgPT4ge1xyXG4gICAgICAgICAgdGhpcy5zZWFyY2hWYWx1ZS5lbWl0KHRleHQpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLnNlYXJjaFR5cGUgPT09IFNlYXJjaFR5cGUuT05fQ0xJQ0spIHtcclxuICAgICAgZnJvbUV2ZW50PEtleWJvYXJkRXZlbnQ+KHRoaXMuc2VhcmNoQ29udHJvbD8ubmF0aXZlRWxlbWVudCwgJ2tleXVwJylcclxuICAgICAgICAucGlwZShcclxuICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgICAgICAgICBmaWx0ZXIoXHJcbiAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgICAgICAgICAgIChlOiBhbnkpID0+XHJcbiAgICAgICAgICAgICAgZS5rZXkgPT09ICdFbnRlcicgJiZcclxuICAgICAgICAgICAgICAoZT8udGFyZ2V0Py52YWx1ZT8ubGVuZ3RoID49IHRoaXMubWluQ2hhcmFjdGVyVG9TZWFyY2ggfHxcclxuICAgICAgICAgICAgICAgIGU/LnRhcmdldD8udmFsdWU/Lmxlbmd0aCA9PT0gMClcclxuICAgICAgICAgICksXHJcbiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gICAgICAgICAgbWFwKChldmVudDogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiBldmVudD8udGFyZ2V0Py52YWx1ZTtcclxuICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgZGVib3VuY2VUaW1lKHRoaXMuc2VhcmNoSW5mby5hdXRvY29tcGxldGUuZGVib3VuY2VUaW1lKVxyXG4gICAgICAgIClcclxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgICAgLnN1YnNjcmliZSgodGV4dDogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgICBpZiAoIXRoaXMuaXNTZWFyY2hWYWx1ZUVtaXR0ZWQpIHRoaXMuc2VhcmNoVmFsdWUuZW1pdCh0ZXh0KTtcclxuICAgICAgICAgIHRoaXMuaXNTZWFyY2hWYWx1ZUVtaXR0ZWQgPSBmYWxzZTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVmFsaWRhdGVzIGVtYWlsIGJhc2VkIG9uIGRlZmluZWQgdmFsaWRhdGlvbiBwYXR0ZXJuc1xyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBlbWFpbFxyXG4gICAqIEByZXR1cm4ge2Jvb2xlYW59XHJcbiAgICogQG1lbWJlcm9mIFNlYXJjaENvbXBvbmVudFxyXG4gICAqL1xyXG4gIGlzVmFsaWRhdGVFbWFpbChlbWFpbDogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCByZWd1bGFyRXhwcmVzc2lvbiA9IFZhbGlkYXRpb25QYXR0ZXJucy5lbWFpbDtcclxuICAgIHJldHVybiByZWd1bGFyRXhwcmVzc2lvbi50ZXN0KFN0cmluZyhlbWFpbCkudG9Mb3dlckNhc2UoKSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDbGVhcnMgc2VhcmNoIHJlc3BvbnNlIG9uIGNoYW5nZSBvZiBmb3JtIHNlYXJjaCBjb250cm9sIHZhbHVlXHJcbiAgICogQG1lbWJlcm9mIFNlYXJjaENvbXBvbmVudFxyXG4gICAqL1xyXG4gIG9uQ2hhbmdlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWFyY2hSZXNwb25zZSA9ICcnO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2xlYXJzIHNlYXJjaCByZXNwb25zZSBhbmQgZW1pdHMgc2VhcmNoZWQgdmFsdWUgb24gc2VhcmNoIGlucHV0IGNoYW5nZVxyXG4gICAqIEBtZW1iZXJvZiBTZWFyY2hDb21wb25lbnRcclxuICAgKi9cclxuICBvblNlYXJjaElucHV0Q2hhbmdlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5pc1NlYXJjaFZhbHVlRW1pdHRlZCA9IGZhbHNlO1xyXG4gICAgaWYgKHRoaXMuZ3JvdXAuZ2V0KHRoaXMuY29uZmlnLmNvbnRyb2xOYW1lKT8udmFsdWUgPT09ICcnKSB7XHJcbiAgICAgIHRoaXMuc2VhcmNoVmFsdWUuZW1pdCh0aGlzLmdyb3VwLmdldCh0aGlzLmNvbmZpZy5jb250cm9sTmFtZSk/LnZhbHVlKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnNlYXJjaFRlcm0ubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgIHRoaXMuc2VhcmNoUmVzcG9uc2UgPSAnJztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEVtaXRzIHRoZSBzZWFyY2hWYWx1ZSBldmVudCBhbG9uZyB3aXRoIHRoZSBzZWFyY2hlZCB0ZXJtIHdoaWxlIGNsaWNraW5nIG9uIHRoZSBzZWFyY2ggaWNvblxyXG4gICAqIEBtZW1iZXJvZiBTZWFyY2hDb21wb25lbnRcclxuICAgKi9cclxuICBvblNlYXJjaENsaWNrKCk6IHZvaWQge1xyXG4gICAgY29uc3Qgc2VhcmNoVGV4dFZhbHVlID0gdGhpcy5ncm91cC5nZXQodGhpcy5jb25maWcuY29udHJvbE5hbWUpPy52YWx1ZTtcclxuICAgIGlmIChcclxuICAgICAgc2VhcmNoVGV4dFZhbHVlPy5sZW5ndGggPj0gdGhpcy5taW5DaGFyYWN0ZXJUb1NlYXJjaCB8fFxyXG4gICAgICBzZWFyY2hUZXh0VmFsdWU/Lmxlbmd0aCA9PT0gMFxyXG4gICAgKSB7XHJcbiAgICAgIHRoaXMuaXNTZWFyY2hWYWx1ZUVtaXR0ZWQgPSB0cnVlO1xyXG4gICAgICB0aGlzLnNlYXJjaFZhbHVlLmVtaXQoc2VhcmNoVGV4dFZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEltcGxlbWVudGF0aW9uIG9mIG5nT25EZXN0cm95IGxpZmVjeWNsZSBob29rIG1ldGhvZCB0byB1bnN1YnNjcmliZSB0aGUgb3BlbiBvYnNlcnZhYmxlIHN1YnNjcmlwdGlvbnMuXHJcbiAgICogQG1lbWJlcm9mIFNlYXJjaENvbXBvbmVudFxyXG4gICAqL1xyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5kZXN0cm95JC51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgW2Zvcm1Hcm91cF09XCJncm91cFwiXHJcbiAgY2xhc3M9XCJpZWVlc2Etc2VhcmNoLWZpZWxkXCJcclxuICAqbmdJZj1cImdyb3VwXCJcclxuICBbbmdDbGFzc109XCJcclxuICAgIGNvbmZpZy5pc0xhYmVsQWxpZ25lZExlZnRcclxuICAgICAgPyAnaWVlZXNhLXNlYXJjaC1maWVsZF9fbGFiZWwtbGVmdCdcclxuICAgICAgOiAnaWVlZXNhLXNlYXJjaC1maWVsZF9fbGFiZWwtdG9wJ1xyXG4gIFwiXHJcbj5cclxuICA8bWF0LWxhYmVsIGNsYXNzPVwiaWVlZXNhLWJvZHktc20tMTQgaWVlZXNhLXNlYXJjaC1maWVsZF9fbGFiZWxcIlxyXG4gICAgPnt7IGNvbmZpZy5sYWJlbCB9fTwvbWF0LWxhYmVsXHJcbiAgPlxyXG4gIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiPlxyXG4gICAgPHNwYW4gY2xhc3M9XCJpZWVlc2Etc2VhcmNoLWZpZWxkX19jb250ZW50IGllZWVzYS1ib2R5LW1kLTE2XCI+XHJcbiAgICAgIDxpbnB1dFxyXG4gICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcclxuICAgICAgICBbdHlwZV09XCJzZWFyY2hUeXBlXCJcclxuICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImNvbmZpZy5jb250cm9sTmFtZVwiXHJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyTGFiZWxcIlxyXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiY29uZmlnLmFyaWFMYWJlbFwiXHJcbiAgICAgICAgW2FyaWEtZGVzY3JpYmVkYnldPVwiY29uZmlnLmFyaWFEZXNjcmliZWRCeUlkID8/ICcnXCJcclxuICAgICAgICAoY2hhbmdlKT1cIm9uQ2hhbmdlKClcIlxyXG4gICAgICAgIChpbnB1dCk9XCJvblNlYXJjaElucHV0Q2hhbmdlKClcIlxyXG4gICAgICAgIGJpbmRvbi1uZ01vZGVsPVwic2VhcmNoVGVybVwiXHJcbiAgICAgICAgI3NlYXJjaENvbnRyb2xcclxuICAgICAgLz5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgIG1hdC1idXR0b25cclxuICAgICAgICAoY2xpY2spPVwib25TZWFyY2hDbGljaygpXCJcclxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInNlYXJjaEluZm8/LmFyaWFMYWJlbD8uc2VhcmNoXCJcclxuICAgICAgICBjbGFzcz1cImllZWVzYS1zZWFyY2gtZmllbGRfX2J1dHRvblwiXHJcbiAgICAgID5cclxuICAgICAgPHN2Z1xyXG4gICAgY2xhc3M9XCJpZWVlc2Etc2VhcmNoLWZpZWxkX19zZWFyY2gtaWNvblwiXHJcbiAgPlxyXG4gICAgPHVzZSBbYXR0ci54bGluazpocmVmXT1cInNlYXJjaEluZm8/LnNlYXJjaD8uc2VhcmNoSWNvblwiPjwvdXNlPlxyXG4gIDwvc3ZnPlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvc3Bhbj5cclxuICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gIDxpZWVlc2EtZm9ybS1lcnJvciBbZm9ybUdyb3VwXT1cImdyb3VwXCIgW2NvbmZpZ109XCJjb25maWdcIj4gPC9pZWVlc2EtZm9ybS1lcnJvcj5cclxuICA8aWVlZXNhLWZvcm0tc3VwcG9ydC10ZXh0XHJcbiAgICBbZm9ybUdyb3VwXT1cImdyb3VwXCJcclxuICAgIFtjb25maWddPVwiY29uZmlnXCJcclxuICA+PC9pZWVlc2EtZm9ybS1zdXBwb3J0LXRleHQ+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
187
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXNlbnRhdGlvbi9zcmMvbGliL2NvbXBvbmVudHMvc2VhcmNoL3NlYXJjaC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzZW50YXRpb24vc3JjL2xpYi9jb21wb25lbnRzL3NlYXJjaC9zZWFyY2guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFDTixTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxPQUFPLEVBQ1AsWUFBWSxFQUNaLG9CQUFvQixFQUNwQixNQUFNLEVBQ04sU0FBUyxFQUNULEdBQUcsRUFDSCxTQUFTLEdBQ1YsTUFBTSxNQUFNLENBQUM7QUFDZCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQWEsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdoRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDdEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBRXhFLE9BQU8sS0FBSyxVQUFVLE1BQU0sNkJBQTZCLENBQUM7QUFDMUQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sa0RBQWtELENBQUM7Ozs7Ozs7QUFDNUYsTUFBTSxRQUFRLEdBQUcsQ0FBQyxDQUFDO0FBQ25COzs7Ozs7OztHQVFHO0FBaUJILE1BQU0sT0FBTyxlQUFlO0lBbUIxQjtJQUNFLDBDQUEwQztJQUNsQyxFQUFxQjtJQUM3QiwwQ0FBMEM7SUFDbEMsa0JBQXNDLENBQUMsNkNBQTZDOztRQUZwRixPQUFFLEdBQUYsRUFBRSxDQUFtQjtRQUVyQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBbEJ2QyxvQkFBZSxHQUFHLFFBQVEsQ0FBQztRQUMzQixxQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFDdEIsZUFBVSxHQUFHLEVBQUUsQ0FBQztRQUVoQixlQUFVLEdBQWUsVUFBVSxDQUFDLElBQUksQ0FBQztRQUN4QyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFbEMseUJBQW9CLEdBQUcsUUFBUSxDQUFDO1FBRXpDLGFBQVEsR0FBcUIsSUFBSSxPQUFPLEVBQVcsQ0FBQztRQUNwRCw4REFBOEQ7UUFDOUQsZUFBVSxHQUFRLFVBQVUsQ0FBQztRQUM3Qix5QkFBb0IsR0FBRyxLQUFLLENBQUM7SUFPMUIsQ0FBQztJQUVKOzs7T0FHRztJQUNILFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsVUFBVTtZQUFFLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUM7UUFDdkUsSUFBSSxDQUFDLE1BQU07WUFDVCxJQUFJLENBQUMsTUFBTTtnQkFDWCxJQUFJLENBQUMsa0JBQWtCLENBQUMsa0JBQWtCLENBQ3hDLElBQUksQ0FBQyxlQUFlLEVBQ3BCLGVBQWUsQ0FBQyxNQUFNLENBQ3ZCLENBQUM7UUFDSixJQUFJLENBQUMsS0FBSztZQUNSLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDM0UsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjO1lBQ3hCLElBQUksQ0FBQyxNQUFNLEVBQUUsY0FBYyxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDdkQsQ0FBQztJQUVEOzs7T0FHRztJQUNILGVBQWU7UUFDYixJQUFJLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEtBQUssSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDM0YsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLFVBQVUsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUM3RCxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxhQUFhLEVBQUUsT0FBTyxDQUFDO2lCQUNsRCxJQUFJO1lBQ0gsOERBQThEO1lBQzlELEdBQUcsQ0FBQyxDQUFDLEtBQVUsRUFBRSxFQUFFO2dCQUNqQixPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1lBQzVCLENBQUMsQ0FBQyxFQUNGLE1BQU0sQ0FDSixDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsb0JBQW9CLElBQUksR0FBRyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQ3JFLEVBQ0QsWUFBWSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxFQUN2RCxvQkFBb0IsRUFBRSxDQUN2QjtpQkFDQSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztpQkFDOUIsU0FBUyxDQUFDLENBQUMsSUFBWSxFQUFFLEVBQUU7Z0JBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzlCLENBQUMsQ0FBQyxDQUFDO1NBQ047YUFBTSxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssVUFBVSxDQUFDLFFBQVEsRUFBRTtZQUNsRCxTQUFTLENBQWdCLElBQUksQ0FBQyxhQUFhLEVBQUUsYUFBYSxFQUFFLE9BQU8sQ0FBQztpQkFDakUsSUFBSTtZQUNILDhEQUE4RDtZQUM5RCxNQUFNO1lBQ0osOERBQThEO1lBQzlELENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FDVCxDQUFDLENBQUMsR0FBRyxLQUFLLE9BQU87Z0JBQ2pCLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxJQUFJLElBQUksQ0FBQyxvQkFBb0I7b0JBQ3BELENBQUMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FDcEM7WUFDRCw4REFBOEQ7WUFDOUQsR0FBRyxDQUFDLENBQUMsS0FBVSxFQUFFLEVBQUU7Z0JBQ2pCLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUM7WUFDOUIsQ0FBQyxDQUFDLEVBQ0YsWUFBWSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxDQUN4RDtpQkFDQSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztpQkFDOUIsU0FBUyxDQUFDLENBQUMsSUFBWSxFQUFFLEVBQUU7Z0JBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CO29CQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUM1RCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsS0FBSyxDQUFDO1lBQ3BDLENBQUMsQ0FBQyxDQUFDO1NBQ047UUFDRCxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGVBQWUsQ0FBQyxLQUFhO1FBQzNCLE1BQU0saUJBQWlCLEdBQUcsa0JBQWtCLENBQUMsS0FBSyxDQUFDO1FBQ25ELE9BQU8saUJBQWlCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRDs7O09BR0c7SUFDSCxRQUFRO1FBQ04sSUFBSSxDQUFDLGNBQWMsR0FBRyxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVEOzs7T0FHRztJQUNILG1CQUFtQjtRQUNqQixJQUFJLENBQUMsb0JBQW9CLEdBQUcsS0FBSyxDQUFDO1FBQ2xDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsRUFBRSxLQUFLLEtBQUssRUFBRSxFQUFFO1lBQ3pELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDdkU7UUFDRCxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUNoQyxJQUFJLENBQUMsY0FBYyxHQUFHLEVBQUUsQ0FBQztTQUMxQjtJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSCxhQUFhO1FBQ1gsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsRUFBRSxLQUFLLENBQUM7UUFDdkUsSUFDRSxlQUFlLEVBQUUsTUFBTSxJQUFJLElBQUksQ0FBQyxvQkFBb0I7WUFDcEQsZUFBZSxFQUFFLE1BQU0sS0FBSyxDQUFDLEVBQzdCO1lBQ0EsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQztZQUNqQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztTQUN4QztJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUM5QixDQUFDOytHQXBKVSxlQUFlO21HQUFmLGVBQWUsNGJDOUQ1Qiwwa0RBaURBLDh1VERDSSxZQUFZLGdPQUNaLG1CQUFtQixvMkJBQ25CLGtCQUFrQixnSEFDbEIsa0JBQWtCLDBTQUNsQixjQUFjLDBXQUNkLGFBQWEsK0JBQ2Isd0JBQXdCOzs0RkFNZixlQUFlO2tCQWhCM0IsU0FBUzsrQkFDRSxlQUFlLGNBQ2IsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixrQkFBa0I7d0JBQ2xCLGtCQUFrQjt3QkFDbEIsY0FBYzt3QkFDZCxhQUFhO3dCQUNiLHdCQUF3QjtxQkFDekIsaUJBR2MsaUJBQWlCLENBQUMsSUFBSTt5SUFPNUIsZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksV0FBVztzQkFBcEIsTUFBTTtnQkFDcUIsYUFBYTtzQkFBeEMsU0FBUzt1QkFBQyxlQUFlO2dCQUNqQixvQkFBb0I7c0JBQTVCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ29tcG9uZW50LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE9uRGVzdHJveSxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICBTdWJqZWN0LFxyXG4gIGRlYm91bmNlVGltZSxcclxuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcclxuICBmaWx0ZXIsXHJcbiAgZnJvbUV2ZW50LFxyXG4gIG1hcCxcclxuICB0YWtlVW50aWwsXHJcbn0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXAsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEZpZWxkQ29uZmlnIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2ZpZWxkLWNvbmZpZy5tb2RlbCc7XHJcbmltcG9ydCB7IEZvcm1GaWVsZCB9IGZyb20gJy4uLy4uL21vZGVscy9mb3JtLWZpZWxkLm1vZGVsJztcclxuaW1wb3J0IHsgVmFsaWRhdGlvblBhdHRlcm5zIH0gZnJvbSAnLi4vLi4vdmFsaWRhdGlvbi1wYXR0ZXJucyc7XHJcbmltcG9ydCB7IFNlYXJjaFR5cGUgfSBmcm9tICcuLi8uLi9tb2RlbHMvc2VhcmNoLm1vZGVsJztcclxuaW1wb3J0IHsgRm9ybUVycm9yQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9mb3JtLWVycm9yL2Zvcm0tZXJyb3IuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2xUeXBlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2Zvcm0tY29udHJvbC10eXBlcy5tb2RlbCc7XHJcbmltcG9ydCB7IEZvcm1VdGlsaXR5U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2Zvcm0tdXRpbGl0eS5zZXJ2aWNlJztcclxuaW1wb3J0ICogYXMgc2VhcmNoSW5mbyBmcm9tICcuLi8uLi9hc3NldHMvY29uc3RhbnRzLmpzb24nO1xyXG5pbXBvcnQgeyBGb3JtU3VwcG9ydFRleHRDb21wb25lbnQgfSBmcm9tICcuLi9mb3JtLXN1cHBvcnQtdGV4dC9mb3JtLXN1cHBvcnQtdGV4dC5jb21wb25lbnQnO1xyXG5jb25zdCBNSU5fQ0hBUiA9IDM7XHJcbi8qKlxyXG4gKiBDb21wb25lbnQgc3VwcG9ydCBzZWFyY2ggY2FwYWJpbGl0eSBhbmQgdXNlZCBhcyBhIGZvcm0gZmlsZWQgd2l0aCB0eXBlIHNlYXJjaCBhbmQgaW5kZXBlbmRlbnRseSBhcyBzZWFyY2ggY29tcG9uZW50LlxyXG4gKiBAZXhwb3J0XHJcbiAqIEBjbGFzcyBTZWFyY2hDb21wb25lbnRcclxuICogQGltcGxlbWVudHMge09uSW5pdH1cclxuICogQGltcGxlbWVudHMge0FmdGVyVmlld0luaXR9XHJcbiAqIEBpbXBsZW1lbnRzIHtPbkRlc3Ryb3l9XHJcbiAqIEBpbXBsZW1lbnRzIHtGb3JtRmllbGR9XHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2llZWVzYS1zZWFyY2gnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIEZvcm1FcnJvckNvbXBvbmVudCxcclxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcclxuICAgIE1hdElucHV0TW9kdWxlLFxyXG4gICAgTWF0SWNvbk1vZHVsZSxcclxuICAgIEZvcm1TdXBwb3J0VGV4dENvbXBvbmVudCxcclxuICBdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWFyY2guY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3NlYXJjaC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZWFyY2hDb21wb25lbnRcclxuICBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBGb3JtRmllbGRcclxue1xyXG4gIGNvbmZpZyE6IEZpZWxkQ29uZmlnO1xyXG4gIGdyb3VwITogRm9ybUdyb3VwO1xyXG4gIEBJbnB1dCgpIGZvcm1Db250cm9sTmFtZSA9ICdzZWFyY2gnO1xyXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyTGFiZWwgPSAnJztcclxuICBASW5wdXQoKSBzZWFyY2hUZXJtID0gJyc7XHJcbiAgQElucHV0KCkgc3VwcG9ydE1lc3NhZ2UhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgc2VhcmNoVHlwZTogU2VhcmNoVHlwZSA9IFNlYXJjaFR5cGUuQVVUTztcclxuICBAT3V0cHV0KCkgc2VhcmNoVmFsdWUgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQFZpZXdDaGlsZCgnc2VhcmNoQ29udHJvbCcpIHNlYXJjaENvbnRyb2whOiBFbGVtZW50UmVmO1xyXG4gIEBJbnB1dCgpIG1pbkNoYXJhY3RlclRvU2VhcmNoID0gTUlOX0NIQVI7XHJcbiAgc2VhcmNoUmVzcG9uc2UhOiBzdHJpbmc7XHJcbiAgZGVzdHJveSQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgc2VhcmNoSW5mbzogYW55ID0gc2VhcmNoSW5mbztcclxuICBpc1NlYXJjaFZhbHVlRW1pdHRlZCA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gICAgcHJpdmF0ZSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLXZhcnNcclxuICAgIHByaXZhdGUgZm9ybVV0aWxpdHlTZXJ2aWNlOiBGb3JtVXRpbGl0eVNlcnZpY2UgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWVtcHR5LWZ1bmN0aW9uXHJcbiAgKSB7fVxyXG5cclxuICAvKipcclxuICAgKiBJbXBsZW1lbnRhdGlvbiBvZiBuZ09uSW5pdCBsaWZlY3ljbGUgaG9vayBtZXRob2QgdG8gaW5pdGlhbGl6ZSBjb25maWcgYW5kIGZvcm0gZ3JvdXAgaWYgaXRzIHVuZGVmaW5lZFxyXG4gICAqIEBtZW1iZXJvZiBTZWFyY2hDb21wb25lbnRcclxuICAgKi9cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmNvbmZpZz8uc2VhcmNoVHlwZSkgdGhpcy5zZWFyY2hUeXBlID0gdGhpcy5jb25maWc/LnNlYXJjaFR5cGU7XHJcbiAgICB0aGlzLmNvbmZpZyA9XHJcbiAgICAgIHRoaXMuY29uZmlnID8/XHJcbiAgICAgIHRoaXMuZm9ybVV0aWxpdHlTZXJ2aWNlLmdldEZvcm1GaWVsZENvbmZpZyhcclxuICAgICAgICB0aGlzLmZvcm1Db250cm9sTmFtZSxcclxuICAgICAgICBGb3JtQ29udHJvbFR5cGUuU0VBUkNIXHJcbiAgICAgICk7XHJcbiAgICB0aGlzLmdyb3VwID1cclxuICAgICAgdGhpcy5ncm91cCA/PyB0aGlzLmZvcm1VdGlsaXR5U2VydmljZS5nZXRGb3JtR3JvdXAodGhpcy5mb3JtQ29udHJvbE5hbWUpO1xyXG4gICAgdGhpcy5jb25maWcuc3VwcG9ydE1lc3NhZ2UgPVxyXG4gICAgICB0aGlzLmNvbmZpZz8uc3VwcG9ydE1lc3NhZ2UgPz8gdGhpcy5zdXBwb3J0TWVzc2FnZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEhhbmRsZXMgZm9ybSBjb250cm9sIHNlYXJjaCBrZXl1cCBldmVudCBhbmQgZW1pdHMgc2VhcmNoZWQgdmFsdWVcclxuICAgKiBAbWVtYmVyb2YgU2VhcmNoQ29tcG9uZW50XHJcbiAgICovXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5ncm91cD8uZ2V0KHRoaXMuY29uZmlnPy5jb250cm9sTmFtZSk/LnNldFZhbHVlKHRoaXMuY29uZmlnPy52YWx1ZSA/PyB0aGlzLnNlYXJjaFRlcm0pO1xyXG4gICAgaWYgKHRoaXMuc2VhcmNoVHlwZSA9PT0gU2VhcmNoVHlwZS5BVVRPICYmIHRoaXMuc2VhcmNoQ29udHJvbCkge1xyXG4gICAgICBmcm9tRXZlbnQodGhpcy5zZWFyY2hDb250cm9sPy5uYXRpdmVFbGVtZW50LCAna2V5dXAnKVxyXG4gICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICAgICAgICAgIG1hcCgoZXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gZXZlbnQudGFyZ2V0LnZhbHVlO1xyXG4gICAgICAgICAgfSksXHJcbiAgICAgICAgICBmaWx0ZXIoXHJcbiAgICAgICAgICAgIChyZXMpID0+IHJlcy5sZW5ndGggPj0gdGhpcy5taW5DaGFyYWN0ZXJUb1NlYXJjaCB8fCByZXMubGVuZ3RoID09PSAwXHJcbiAgICAgICAgICApLFxyXG4gICAgICAgICAgZGVib3VuY2VUaW1lKHRoaXMuc2VhcmNoSW5mby5hdXRvY29tcGxldGUuZGVib3VuY2VUaW1lKSxcclxuICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcclxuICAgICAgICApXHJcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKHRleHQ6IHN0cmluZykgPT4ge1xyXG4gICAgICAgICAgdGhpcy5zZWFyY2hWYWx1ZS5lbWl0KHRleHQpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLnNlYXJjaFR5cGUgPT09IFNlYXJjaFR5cGUuT05fQ0xJQ0spIHtcclxuICAgICAgZnJvbUV2ZW50PEtleWJvYXJkRXZlbnQ+KHRoaXMuc2VhcmNoQ29udHJvbD8ubmF0aXZlRWxlbWVudCwgJ2tleXVwJylcclxuICAgICAgICAucGlwZShcclxuICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgICAgICAgICBmaWx0ZXIoXHJcbiAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgICAgICAgICAgIChlOiBhbnkpID0+XHJcbiAgICAgICAgICAgICAgZS5rZXkgPT09ICdFbnRlcicgJiZcclxuICAgICAgICAgICAgICAoZT8udGFyZ2V0Py52YWx1ZT8ubGVuZ3RoID49IHRoaXMubWluQ2hhcmFjdGVyVG9TZWFyY2ggfHxcclxuICAgICAgICAgICAgICAgIGU/LnRhcmdldD8udmFsdWU/Lmxlbmd0aCA9PT0gMClcclxuICAgICAgICAgICksXHJcbiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gICAgICAgICAgbWFwKChldmVudDogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiBldmVudD8udGFyZ2V0Py52YWx1ZTtcclxuICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgZGVib3VuY2VUaW1lKHRoaXMuc2VhcmNoSW5mby5hdXRvY29tcGxldGUuZGVib3VuY2VUaW1lKVxyXG4gICAgICAgIClcclxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgICAgLnN1YnNjcmliZSgodGV4dDogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgICBpZiAoIXRoaXMuaXNTZWFyY2hWYWx1ZUVtaXR0ZWQpIHRoaXMuc2VhcmNoVmFsdWUuZW1pdCh0ZXh0KTtcclxuICAgICAgICAgIHRoaXMuaXNTZWFyY2hWYWx1ZUVtaXR0ZWQgPSBmYWxzZTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVmFsaWRhdGVzIGVtYWlsIGJhc2VkIG9uIGRlZmluZWQgdmFsaWRhdGlvbiBwYXR0ZXJuc1xyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBlbWFpbFxyXG4gICAqIEByZXR1cm4ge2Jvb2xlYW59XHJcbiAgICogQG1lbWJlcm9mIFNlYXJjaENvbXBvbmVudFxyXG4gICAqL1xyXG4gIGlzVmFsaWRhdGVFbWFpbChlbWFpbDogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCByZWd1bGFyRXhwcmVzc2lvbiA9IFZhbGlkYXRpb25QYXR0ZXJucy5lbWFpbDtcclxuICAgIHJldHVybiByZWd1bGFyRXhwcmVzc2lvbi50ZXN0KFN0cmluZyhlbWFpbCkudG9Mb3dlckNhc2UoKSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDbGVhcnMgc2VhcmNoIHJlc3BvbnNlIG9uIGNoYW5nZSBvZiBmb3JtIHNlYXJjaCBjb250cm9sIHZhbHVlXHJcbiAgICogQG1lbWJlcm9mIFNlYXJjaENvbXBvbmVudFxyXG4gICAqL1xyXG4gIG9uQ2hhbmdlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWFyY2hSZXNwb25zZSA9ICcnO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2xlYXJzIHNlYXJjaCByZXNwb25zZSBhbmQgZW1pdHMgc2VhcmNoZWQgdmFsdWUgb24gc2VhcmNoIGlucHV0IGNoYW5nZVxyXG4gICAqIEBtZW1iZXJvZiBTZWFyY2hDb21wb25lbnRcclxuICAgKi9cclxuICBvblNlYXJjaElucHV0Q2hhbmdlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5pc1NlYXJjaFZhbHVlRW1pdHRlZCA9IGZhbHNlO1xyXG4gICAgaWYgKHRoaXMuZ3JvdXAuZ2V0KHRoaXMuY29uZmlnLmNvbnRyb2xOYW1lKT8udmFsdWUgPT09ICcnKSB7XHJcbiAgICAgIHRoaXMuc2VhcmNoVmFsdWUuZW1pdCh0aGlzLmdyb3VwLmdldCh0aGlzLmNvbmZpZy5jb250cm9sTmFtZSk/LnZhbHVlKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnNlYXJjaFRlcm0ubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgIHRoaXMuc2VhcmNoUmVzcG9uc2UgPSAnJztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEVtaXRzIHRoZSBzZWFyY2hWYWx1ZSBldmVudCBhbG9uZyB3aXRoIHRoZSBzZWFyY2hlZCB0ZXJtIHdoaWxlIGNsaWNraW5nIG9uIHRoZSBzZWFyY2ggaWNvblxyXG4gICAqIEBtZW1iZXJvZiBTZWFyY2hDb21wb25lbnRcclxuICAgKi9cclxuICBvblNlYXJjaENsaWNrKCk6IHZvaWQge1xyXG4gICAgY29uc3Qgc2VhcmNoVGV4dFZhbHVlID0gdGhpcy5ncm91cC5nZXQodGhpcy5jb25maWcuY29udHJvbE5hbWUpPy52YWx1ZTtcclxuICAgIGlmIChcclxuICAgICAgc2VhcmNoVGV4dFZhbHVlPy5sZW5ndGggPj0gdGhpcy5taW5DaGFyYWN0ZXJUb1NlYXJjaCB8fFxyXG4gICAgICBzZWFyY2hUZXh0VmFsdWU/Lmxlbmd0aCA9PT0gMFxyXG4gICAgKSB7XHJcbiAgICAgIHRoaXMuaXNTZWFyY2hWYWx1ZUVtaXR0ZWQgPSB0cnVlO1xyXG4gICAgICB0aGlzLnNlYXJjaFZhbHVlLmVtaXQoc2VhcmNoVGV4dFZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEltcGxlbWVudGF0aW9uIG9mIG5nT25EZXN0cm95IGxpZmVjeWNsZSBob29rIG1ldGhvZCB0byB1bnN1YnNjcmliZSB0aGUgb3BlbiBvYnNlcnZhYmxlIHN1YnNjcmlwdGlvbnMuXHJcbiAgICogQG1lbWJlcm9mIFNlYXJjaENvbXBvbmVudFxyXG4gICAqL1xyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5kZXN0cm95JC51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgW2Zvcm1Hcm91cF09XCJncm91cFwiXHJcbiAgY2xhc3M9XCJpZWVlc2Etc2VhcmNoLWZpZWxkXCJcclxuICAqbmdJZj1cImdyb3VwXCJcclxuICBbbmdDbGFzc109XCJcclxuICAgIGNvbmZpZy5pc0xhYmVsQWxpZ25lZExlZnRcclxuICAgICAgPyAnaWVlZXNhLXNlYXJjaC1maWVsZF9fbGFiZWwtbGVmdCdcclxuICAgICAgOiAnaWVlZXNhLXNlYXJjaC1maWVsZF9fbGFiZWwtdG9wJ1xyXG4gIFwiXHJcbj5cclxuICA8bWF0LWxhYmVsIGNsYXNzPVwiaWVlZXNhLWJvZHktc20tMTQgaWVlZXNhLXNlYXJjaC1maWVsZF9fbGFiZWxcIlxyXG4gICAgPnt7IGNvbmZpZy5sYWJlbCB9fTwvbWF0LWxhYmVsXHJcbiAgPlxyXG4gIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiPlxyXG4gICAgPHNwYW4gY2xhc3M9XCJpZWVlc2Etc2VhcmNoLWZpZWxkX19jb250ZW50IGllZWVzYS1ib2R5LW1kLTE2XCI+XHJcbiAgICAgIDxpbnB1dFxyXG4gICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcclxuICAgICAgICBbdHlwZV09XCJzZWFyY2hUeXBlXCJcclxuICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImNvbmZpZy5jb250cm9sTmFtZVwiXHJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyTGFiZWxcIlxyXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiY29uZmlnLmFyaWFMYWJlbFwiXHJcbiAgICAgICAgW2FyaWEtZGVzY3JpYmVkYnldPVwiY29uZmlnLmFyaWFEZXNjcmliZWRCeUlkID8/ICcnXCJcclxuICAgICAgICAoY2hhbmdlKT1cIm9uQ2hhbmdlKClcIlxyXG4gICAgICAgIChpbnB1dCk9XCJvblNlYXJjaElucHV0Q2hhbmdlKClcIlxyXG4gICAgICAgIGJpbmRvbi1uZ01vZGVsPVwic2VhcmNoVGVybVwiXHJcbiAgICAgICAgI3NlYXJjaENvbnRyb2xcclxuICAgICAgLz5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgIG1hdC1idXR0b25cclxuICAgICAgICAoY2xpY2spPVwib25TZWFyY2hDbGljaygpXCJcclxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInNlYXJjaEluZm8/LmFyaWFMYWJlbD8uc2VhcmNoXCJcclxuICAgICAgICBjbGFzcz1cImllZWVzYS1zZWFyY2gtZmllbGRfX2J1dHRvblwiXHJcbiAgICAgID5cclxuICAgICAgPHN2Z1xyXG4gICAgY2xhc3M9XCJpZWVlc2Etc2VhcmNoLWZpZWxkX19zZWFyY2gtaWNvblwiXHJcbiAgPlxyXG4gICAgPHVzZSBbYXR0ci54bGluazpocmVmXT1cInNlYXJjaEluZm8/LnNlYXJjaD8uc2VhcmNoSWNvblwiPjwvdXNlPlxyXG4gIDwvc3ZnPlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvc3Bhbj5cclxuICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gIDxpZWVlc2EtZm9ybS1lcnJvciBbZm9ybUdyb3VwXT1cImdyb3VwXCIgW2NvbmZpZ109XCJjb25maWdcIj4gPC9pZWVlc2EtZm9ybS1lcnJvcj5cclxuICA8aWVlZXNhLWZvcm0tc3VwcG9ydC10ZXh0XHJcbiAgICBbZm9ybUdyb3VwXT1cImdyb3VwXCJcclxuICAgIFtjb25maWddPVwiY29uZmlnXCJcclxuICA+PC9pZWVlc2EtZm9ybS1zdXBwb3J0LXRleHQ+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -184,4 +184,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
184
184
|
}], userPermissions: [{
|
|
185
185
|
type: Input
|
|
186
186
|
}] } });
|
|
187
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzZW50YXRpb24vc3JjL2xpYi9jb21wb25lbnRzL3RhYnMvdGFicy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzZW50YXRpb24vc3JjL2xpYi9jb21wb25lbnRzL3RhYnMvdGFicy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxzQ0FBc0M7QUFDdEMsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFDTixTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2hCLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUdMLGFBQWEsR0FDZCxNQUFNLHdCQUF3QixDQUFDO0FBR2hDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBRWhHLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFDLE9BQU8sS0FBSyxTQUFTLE1BQU0sNkJBQTZCLENBQUM7Ozs7O0FBYXpELE1BQU0sT0FBTyxhQUFhO0lBVXhCLElBQ0ksSUFBSSxDQUFDLEdBQVU7UUFDakIsSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUM7SUFDbkIsQ0FBQztJQUNELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBQ0QsSUFDSSxhQUFhLENBQUMsTUFBZTtRQUMvQixJQUFJLENBQUMsbUJBQW1CLEdBQUcsTUFBTSxDQUFDO0lBQ3BDLENBQUM7SUFDRCxJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQztJQUNsQyxDQUFDO0lBa0JELDBDQUEwQztJ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QyxvQkFBb0IsRUFBRSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQU9oRSxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBR0YsSUFBSTtzQkFEUCxLQUFLO2dCQVFGLGFBQWE7c0JBRGhCLEtBQUs7Z0JBT0csdUJBQXVCO3NCQUEvQixLQUFLO2dCQUNJLG1CQUFtQjtzQkFBNUIsTUFBTTtnQkFRRSxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1lbXB0eS1mdW5jdGlvbiAqL1xyXG5pbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBDb21wb25lbnRSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE9uRGVzdHJveSxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3Q29udGFpbmVyUmVmLFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQge1xyXG4gIE1hdFRhYkNoYW5nZUV2ZW50LFxyXG4gIE1hdFRhYkdyb3VwLFxyXG4gIE1hdFRhYnNNb2R1bGUsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFicyc7XHJcbmltcG9ydCB7IFRhYiB9IGZyb20gJy4uLy4uL21vZGVscy90YWIubW9kZWwnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBNb2RhbENvbmZpcm1hdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uL21vZGFsLWNvbmZpcm1hdGlvbi9tb2RhbC1jb25maXJtYXRpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29uZmlybWF0aW9uTW9kYWxEYXRhIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2NvbmZpcm1hdGlvbi1tb2RhbC1kYXRhLm1vZGVsJztcclxuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCAqIGFzIGNvbnN0YW50cyBmcm9tICcuLi8uLi9hc3NldHMvY29uc3RhbnRzLmpzb24nO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEV2ZW50c0FuZE1lZXRpbmdSb3V0ZUNvbmZpZyB9IGZyb20gJ0BpZWVlc2EtbnBtL3NoYXJlZCc7XHJcbmltcG9ydCB7IFVzZXJQZXJtaXNzaW9uIH0gZnJvbSAnQGllZWVzYS1ucG0vZXZlbnRzLWFuZC1tZWV0aW5ncyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2llZWVzYS10YWJzJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1hdFRhYnNNb2R1bGVdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90YWJzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90YWJzLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRhYnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgQFZpZXdDaGlsZCgnY29tcG9uZW50Q29udGFpbmVyJywgeyByZWFkOiBWaWV3Q29udGFpbmVyUmVmLCBzdGF0aWM6IHRydWUgfSlcclxuICBjb21wb25lbnRDb250YWluZXIhOiBWaWV3Q29udGFpbmVyUmVmO1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgY29tcG9uZW50UmVmITogQ29tcG9uZW50UmVmPGFueT47XHJcbiAgaXNDb21wb25lbnRMb2FkZWQgPSBmYWxzZTtcclxuICBwcmV2aW91c1RhYkluZGV4ID0gMDtcclxuICBwcml2YXRlIGlzRm9ybVZhbHVlc0NoYW5nZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBzZWxlY3RlZFRhYkluZGV4ID0gMDtcclxuICBwcml2YXRlIF90YWJzOiBUYWJbXSA9IFtdO1xyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IHRhYnModGFiOiBUYWJbXSkge1xyXG4gICAgdGhpcy5fdGFicyA9IHRhYjtcclxuICB9XHJcbiAgZ2V0IHRhYnMoKTogVGFiW10ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3RhYnM7XHJcbiAgfVxyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IGlzRm9ybUNoYW5nZWQoc3RhdHVzOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLmlzRm9ybVZhbHVlc0NoYW5nZWQgPSBzdGF0dXM7XHJcbiAgfVxyXG4gIGdldCBpc0Zvcm1DaGFuZ2VkKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaXNGb3JtVmFsdWVzQ2hhbmdlZDtcclxuICB9XHJcbiAgQElucHV0KCkgY29uZmlybWF0aW9uTW9kYWxDb25maWchOiBDb25maXJtYXRpb25Nb2RhbERhdGE7XHJcbiAgQE91dHB1dCgpIHNlbGVjdGVkSW5kZXhDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPE1hdFRhYkNoYW5nZUV2ZW50PigpO1xyXG4gIGRlc3Ryb3kkOiBTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gIGZvcm1DYW5jZWwgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBmb3JtU3VibWl0ID0gbmV3IEV2ZW50RW1pdHRlcjxGb3JtR3JvdXBbXT4oKTtcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gIGNvbnN0YW50czogYW55ID0gY29uc3RhbnRzO1xyXG4gIG1vZGFsQ29uZmlnVGV4dHMgPSB0aGlzLmNvbnN0YW50cz8ubW9kYWxDb25maWc7XHJcbiAgQElucHV0KCkgaXNWaWV3T25seSE6IHN0cmluZyB8IGJvb2xlYW47XHJcbiAgQElucHV0KCkgZXZlbnRJZCE6IHN0cmluZztcclxuICBASW5wdXQoKSBtZWV0aW5nSWQhOiBzdHJpbmc7XHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICBASW5wdXQoKSBhY3Rpb25UeXBlITogYW55O1xyXG4gIEBJbnB1dCgpIHJvdXRlUGF0aHMhOiBFdmVudHNBbmRNZWV0aW5nUm91dGVDb25maWc7XHJcbiAgQElucHV0KCkgYXBpQmFzZVVSTCE6IHN0cmluZztcclxuICBASW5wdXQoKSB1c2VyUGVybWlzc2lvbnMhOiBVc2VyUGVybWlzc2lvbltdO1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBkaWFsb2c6IE1hdERpYWxvZykge31cclxuICAvKipcclxuICAgKiBWZXJpZmllcyB0YWJzIGNvdW50IGFuZCBjYWxscyBjcmVhdGVDb21wb25lbnQoKSB0byBsb2FkIHNlbGVjdGVkIGNvbXBvbmVudC5cclxuICAgKiBAbWVtYmVyb2YgVGFic0NvbXBvbmVudFxyXG4gICAqL1xyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5wcmV2aW91c1RhYkluZGV4ID0gdGhpcy5zZWxlY3RlZFRhYkluZGV4ID8/IDA7XHJcbiAgICBpZiAoXHJcbiAgICAgIHRoaXMudGFicz8ubGVuZ3RoID4gMCAmJlxyXG4gICAgICB0aGlzLnRhYnM/Llt0aGlzLnNlbGVjdGVkVGFiSW5kZXhdPy5jb21wb25lbnRSZWZcclxuICAgICkge1xyXG4gICAgICB0aGlzLmNyZWF0ZUNvbXBvbmVudCh0aGlzLnRhYnM/Llt0aGlzLnNlbGVjdGVkVGFiSW5kZXhdKTtcclxuICAgIH1cclxuICB9XHJcbiAgLyoqXHJcbiAgICogT3BlbnMgY29uZmlybWF0aW9uIG1vZGFsIG9uIHRhYiBjaGFuZ2UgZXZlbnQgd2hlbiBsZWF2aW5nIHdpdGggdW5zYXZlZCBjaGFuZ2VzLlxyXG4gICAqIEBwYXJhbSB7TWF0VGFiR3JvdXB9IHRhYlxyXG4gICAqIEBwYXJhbSBldmVudFxyXG4gICAqIEBtZW1iZXJvZiBUYWJzQ29tcG9uZW50XHJcbiAgICovXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICBvblRhYkNoYW5nZSh0YWI6IE1hdFRhYkdyb3VwLCBldmVudDogTWF0VGFiQ2hhbmdlRXZlbnQpOiB2b2lkIHtcclxuICAgIGlmICh0YWI/LnNlbGVjdGVkSW5kZXggIT09IHRoaXMucHJldmlvdXNUYWJJbmRleCAmJiB0aGlzLmlzRm9ybUNoYW5nZWQpIHtcclxuICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2c/Lm9wZW4oTW9kYWxDb25maXJtYXRpb25Db21wb25lbnQsIHtcclxuICAgICAgICBkYXRhOiB0aGlzLmNvbmZpcm1hdGlvbk1vZGFsQ29uZmlnLFxyXG4gICAgICAgIHdpZHRoOiB0aGlzLm1vZGFsQ29uZmlnVGV4dHM/LndpZHRoLFxyXG4gICAgICAgIGF1dG9Gb2N1czogdGhpcy5tb2RhbENvbmZpZ1RleHRzPy5hdXRvRm9jdXMsXHJcbiAgICAgICAgYXJpYUxhYmVsOiB0aGlzLm1vZGFsQ29uZmlnVGV4dHM/LmFyaWFMYWJlbCxcclxuICAgICAgICBwYW5lbENsYXNzOiBbXHJcbiAgICAgICAgICAnaWVlZXNhLW1vZGFsLWNvbmZpcm0tZGlhbG9nJyxcclxuICAgICAgICAgICdpZWVlc2EtY2FuY2VsLW1vZGFsLWNvbmZpcm0tZGlhbG9nJyxcclxuICAgICAgICBdLFxyXG4gICAgICB9KTtcclxuICAgICAgZGlhbG9nUmVmXHJcbiAgICAgICAgPy5hZnRlckNsb3NlZCgpXHJcbiAgICAgICAgPy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgICA/LnN1YnNjcmliZSgocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgICAgIHRoaXMucHJldmlvdXNUYWJJbmRleCA9IGV2ZW50LmluZGV4O1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRTZWxlY3RlZFRhYkNvbnRlbnQoZXZlbnQpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGFiLnNlbGVjdGVkSW5kZXggPSB0aGlzLnByZXZpb3VzVGFiSW5kZXg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9IGVsc2UgaWYgKHRhYj8uc2VsZWN0ZWRJbmRleCAhPT0gdGhpcy5wcmV2aW91c1RhYkluZGV4KSB7XHJcbiAgICAgIHRoaXMucHJldmlvdXNUYWJJbmRleCA9IGV2ZW50LmluZGV4O1xyXG4gICAgICB0aGlzLmxvYWRTZWxlY3RlZFRhYkNvbnRlbnQoZXZlbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuICAvKipcclxuICAgKiBMb2FkcyB0aGUgcmVzcGVjdGl2ZSBjb21wb25lbnQgb24gdGFiIGNoYW5nZSBldmVudCB3aGVuIGNvbXBvbmVudFJlZiBpcyBhdmFpbGFibGUuXHJcbiAgICogQHBhcmFtIHtNYXRUYWJDaGFuZ2VFdmVudH0gZXZlbnRcclxuICAgKiBAbWVtYmVyb2YgVGFic0NvbXBvbmVudFxyXG4gICAqL1xyXG4gIGxvYWRTZWxlY3RlZFRhYkNvbnRlbnQoZXZlbnQ6IE1hdFRhYkNoYW5nZUV2ZW50KTogdm9pZCB7XHJcbiAgICB0aGlzLmlzRm9ybUNoYW5nZWQgPSBmYWxzZTtcclxuICAgIHRoaXMuc2VsZWN0ZWRJbmRleENoYW5nZS5lbWl0KGV2ZW50KTtcclxuICAgIGlmICh0aGlzLnRhYnM/LltldmVudC5pbmRleF0/LmNvbXBvbmVudFJlZilcclxuICAgICAgdGhpcy5jcmVhdGVDb21wb25lbnQodGhpcy50YWJzPy5bZXZlbnQuaW5kZXhdKTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogRHluYW1pY2FsbHkgbG9hZHMgdGhlIGNvbXBvbmVudCBpbiB0aGUgRE9NIGNvbnRhaW5lciBiYXNlZCBvbiB0aGUgcGFzc2VkIHRhYiBhbmQgY2xlYXJzIHRoZSBwcmV2aW91c2x5IGxvYWRlZCBjb21wb25lbnQgYmVmb3JlIGxvYWRpbmcgdGhlIG5ldyBvbmUuXHJcbiAgICogQHBhcmFtIHtUYWJ9IHRhYlxyXG4gICAqIEBtZW1iZXJvZiBUYWJzQ29tcG9uZW50XHJcbiAgICovXHJcbiAgY3JlYXRlQ29tcG9uZW50KHRhYjogVGFiKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5pc0NvbXBvbmVudExvYWRlZCkge1xyXG4gICAgICB0aGlzLmNvbXBvbmVudFJlZi5kZXN0cm95KCk7XHJcbiAgICAgIHRoaXMuY29tcG9uZW50Q29udGFpbmVyLmNsZWFyKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmNvbXBvbmVudFJlZiA9IHRoaXMuY29tcG9uZW50Q29udGFpbmVyPy5jcmVhdGVDb21wb25lbnQoXHJcbiAgICAgIHRhYi5jb21wb25lbnRSZWZcclxuICAgICk7XHJcbiAgICB0aGlzLmNvbXBvbmVudFJlZj8uc2V0SW5wdXQoJ2V2ZW50SWQnLCB0aGlzLmV2ZW50SWQpO1xyXG4gICAgdGhpcy5jb21wb25lbnRSZWY/LnNldElucHV0KCdtZWV0aW5nSWQnLCB0aGlzLm1lZXRpbmdJZCk7XHJcbiAgICB0aGlzLmNvbXBvbmVudFJlZj8uc2V0SW5wdXQoJ3JvdXRlUGF0aHMnLCB0aGlzLnJvdXRlUGF0aHMpO1xyXG4gICAgdGhpcy5jb21wb25lbnRSZWY/LnNldElucHV0KCdhcGlCYXNlVVJMJywgdGhpcy5hcGlCYXNlVVJMKTtcclxuICAgIHRoaXMuY29tcG9uZW50UmVmPy5zZXRJbnB1dCgndXNlclBlcm1pc3Npb25zJywgdGhpcy51c2VyUGVybWlzc2lvbnMpO1xyXG4gICAgdGhpcy5jb21wb25lbnRSZWY/LnNldElucHV0KCdhY3Rpb25UeXBlJywgdGhpcy5hY3Rpb25UeXBlKTtcclxuICAgIHRoaXMuY29tcG9uZW50UmVmPy5zZXRJbnB1dCgnaXNWaWV3T25seScsIHRoaXMuaXNWaWV3T25seSk7XHJcbiAgICB0aGlzLmNvbXBvbmVudFJlZj8uaW5zdGFuY2U/LmZvcm1DYW5jZWxcclxuICAgICAgPy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBhbnkpID0+IHtcclxuICAgICAgICB0aGlzLmZvcm1DYW5jZWwuZW1pdChyZXN1bHQpO1xyXG4gICAgICB9KTtcclxuICAgIHRoaXMuY29tcG9uZW50UmVmPy5pbnN0YW5jZT8uZm9ybVN1Ym1pdFxyXG4gICAgICA/LnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IEZvcm1Hcm91cFtdKSA9PiB7XHJcbiAgICAgICAgdGhpcy5mb3JtU3VibWl0LmVtaXQocmVzdWx0KTtcclxuICAgICAgfSk7XHJcbiAgICB0aGlzLmlzQ29tcG9uZW50TG9hZGVkID0gdHJ1ZTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogUmV0dXJucyB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIHRhYi5cclxuICAgKiBAcGFyYW0ge251bWJlcn0gaW5kZXhcclxuICAgKiBAcGFyYW0ge1RhYn0gb3B0aW9uXHJcbiAgICogQHJldHVybiB7Kn0gIHsobnVtYmVyIHwgc3RyaW5nKX1cclxuICAgKiBAbWVtYmVyb2YgVGFic0NvbXBvbmVudFxyXG4gICAqL1xyXG4gIHRyYWNrQnlGbihpbmRleDogbnVtYmVyLCBvcHRpb246IFRhYik6IG51bWJlciB8IHN0cmluZyB7XHJcbiAgICByZXR1cm4gb3B0aW9uLmlkO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBDbGVhbnMgdXAgcmVzb3VyY2VzIHdoZW4gdGhlIGNvbXBvbmVudCBpcyBkZXN0cm95ZWRcclxuICAgKiBAbWVtYmVyb2YgVGFic0NvbXBvbmVudFxyXG4gICAqL1xyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgaWYgKHRoaXMuY29tcG9uZW50UmVmKSB7XHJcbiAgICAgIHRoaXMuY29tcG9uZW50UmVmLmRlc3Ryb3koKTtcclxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICAgICAgdGhpcy5jb21wb25lbnRSZWYgPSBudWxsIGFzIGFueTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPG1hdC10YWItZ3JvdXBcclxuICAjdGFiR3JvdXBcclxuICBjbGFzcz1cImllZWVzYS10YWItZ3JvdXBcIlxyXG4gIChzZWxlY3RlZFRhYkNoYW5nZSk9XCJvblRhYkNoYW5nZSh0YWJHcm91cCwgJGV2ZW50KVwiXHJcbiAgW3NlbGVjdGVkSW5kZXhdPVwic2VsZWN0ZWRUYWJJbmRleFwiXHJcbj5cclxuICA8bWF0LXRhYlxyXG4gICAgKm5nRm9yPVwibGV0IHRhYiBvZiB0YWJzOyB0cmFja0J5OiB0cmFja0J5Rm5cIlxyXG4gICAgW2xhYmVsXT1cInRhYj8ubGFiZWwgPz8gJydcIlxyXG4gID5cclxuICA8L21hdC10YWI+XHJcbjwvbWF0LXRhYi1ncm91cD5cclxuPG5nLWNvbnRhaW5lciAjY29tcG9uZW50Q29udGFpbmVyPjwvbmctY29udGFpbmVyPlxyXG4iXX0=
|
|
187
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzZW50YXRpb24vc3JjL2xpYi9jb21wb25lbnRzL3RhYnMvdGFicy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzZW50YXRpb24vc3JjL2xpYi9jb21wb25lbnRzL3RhYnMvdGFicy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxzQ0FBc0M7QUFDdEMsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFDTixTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2hCLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUdMLGFBQWEsR0FDZCxNQUFNLHdCQUF3QixDQUFDO0FBR2hDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBRWhHLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFDLE9BQU8sS0FBSyxTQUFTLE1BQU0sNkJBQTZCLENBQUM7Ozs7O0FBZXpELE1BQU0sT0FBTyxhQUFhO0lBVXhCLElBQ0ksSUFBSSxDQUFDLEdBQVU7UUFDakIsSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUM7SUFDbkIsQ0FBQztJQUNELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBQ0QsSUFDSSxhQUFhLENBQUMsTUFBZTtRQUMvQixJQUFJLENBQUMsbUJBQW1CLEdBQUcsTUFBTSxDQUFDO0lBQ3BDLENBQUM7SUFDRCxJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQztJQUNsQyxDQUFDO0lBa0JELDBDQUEwQztJ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QyxvQkFBb0IsRUFBRSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQU9oRSxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBR0YsSUFBSTtzQkFEUCxLQUFLO2dCQVFGLGFBQWE7c0JBRGhCLEtBQUs7Z0JBT0csdUJBQXVCO3NCQUEvQixLQUFLO2dCQUNJLG1CQUFtQjtzQkFBNUIsTUFBTTtnQkFRRSxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1lbXB0eS1mdW5jdGlvbiAqL1xyXG5pbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBDb21wb25lbnRSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE9uRGVzdHJveSxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3Q29udGFpbmVyUmVmLFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQge1xyXG4gIE1hdFRhYkNoYW5nZUV2ZW50LFxyXG4gIE1hdFRhYkdyb3VwLFxyXG4gIE1hdFRhYnNNb2R1bGUsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFicyc7XHJcbmltcG9ydCB7IFRhYiB9IGZyb20gJy4uLy4uL21vZGVscy90YWIubW9kZWwnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBNb2RhbENvbmZpcm1hdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uL21vZGFsLWNvbmZpcm1hdGlvbi9tb2RhbC1jb25maXJtYXRpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29uZmlybWF0aW9uTW9kYWxEYXRhIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2NvbmZpcm1hdGlvbi1tb2RhbC1kYXRhLm1vZGVsJztcclxuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCAqIGFzIGNvbnN0YW50cyBmcm9tICcuLi8uLi9hc3NldHMvY29uc3RhbnRzLmpzb24nO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7XHJcbiAgRXZlbnRzQW5kTWVldGluZ1JvdXRlQ29uZmlnLFxyXG4gIFVzZXJQZXJtaXNzaW9uLFxyXG59IGZyb20gJ0BpZWVlc2EtbnBtL3NoYXJlZCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2llZWVzYS10YWJzJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1hdFRhYnNNb2R1bGVdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90YWJzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90YWJzLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRhYnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgQFZpZXdDaGlsZCgnY29tcG9uZW50Q29udGFpbmVyJywgeyByZWFkOiBWaWV3Q29udGFpbmVyUmVmLCBzdGF0aWM6IHRydWUgfSlcclxuICBjb21wb25lbnRDb250YWluZXIhOiBWaWV3Q29udGFpbmVyUmVmO1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgY29tcG9uZW50UmVmITogQ29tcG9uZW50UmVmPGFueT47XHJcbiAgaXNDb21wb25lbnRMb2FkZWQgPSBmYWxzZTtcclxuICBwcmV2aW91c1RhYkluZGV4ID0gMDtcclxuICBwcml2YXRlIGlzRm9ybVZhbHVlc0NoYW5nZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBzZWxlY3RlZFRhYkluZGV4ID0gMDtcclxuICBwcml2YXRlIF90YWJzOiBUYWJbXSA9IFtdO1xyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IHRhYnModGFiOiBUYWJbXSkge1xyXG4gICAgdGhpcy5fdGFicyA9IHRhYjtcclxuICB9XHJcbiAgZ2V0IHRhYnMoKTogVGFiW10ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3RhYnM7XHJcbiAgfVxyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IGlzRm9ybUNoYW5nZWQoc3RhdHVzOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLmlzRm9ybVZhbHVlc0NoYW5nZWQgPSBzdGF0dXM7XHJcbiAgfVxyXG4gIGdldCBpc0Zvcm1DaGFuZ2VkKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaXNGb3JtVmFsdWVzQ2hhbmdlZDtcclxuICB9XHJcbiAgQElucHV0KCkgY29uZmlybWF0aW9uTW9kYWxDb25maWchOiBDb25maXJtYXRpb25Nb2RhbERhdGE7XHJcbiAgQE91dHB1dCgpIHNlbGVjdGVkSW5kZXhDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPE1hdFRhYkNoYW5nZUV2ZW50PigpO1xyXG4gIGRlc3Ryb3kkOiBTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gIGZvcm1DYW5jZWwgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBmb3JtU3VibWl0ID0gbmV3IEV2ZW50RW1pdHRlcjxGb3JtR3JvdXBbXT4oKTtcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gIGNvbnN0YW50czogYW55ID0gY29uc3RhbnRzO1xyXG4gIG1vZGFsQ29uZmlnVGV4dHMgPSB0aGlzLmNvbnN0YW50cz8ubW9kYWxDb25maWc7XHJcbiAgQElucHV0KCkgaXNWaWV3T25seSE6IHN0cmluZyB8IGJvb2xlYW47XHJcbiAgQElucHV0KCkgZXZlbnRJZCE6IHN0cmluZztcclxuICBASW5wdXQoKSBtZWV0aW5nSWQhOiBzdHJpbmc7XHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICBASW5wdXQoKSBhY3Rpb25UeXBlITogYW55O1xyXG4gIEBJbnB1dCgpIHJvdXRlUGF0aHMhOiBFdmVudHNBbmRNZWV0aW5nUm91dGVDb25maWc7XHJcbiAgQElucHV0KCkgYXBpQmFzZVVSTCE6IHN0cmluZztcclxuICBASW5wdXQoKSB1c2VyUGVybWlzc2lvbnMhOiBVc2VyUGVybWlzc2lvbltdO1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBkaWFsb2c6IE1hdERpYWxvZykge31cclxuICAvKipcclxuICAgKiBWZXJpZmllcyB0YWJzIGNvdW50IGFuZCBjYWxscyBjcmVhdGVDb21wb25lbnQoKSB0byBsb2FkIHNlbGVjdGVkIGNvbXBvbmVudC5cclxuICAgKiBAbWVtYmVyb2YgVGFic0NvbXBvbmVudFxyXG4gICAqL1xyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5wcmV2aW91c1RhYkluZGV4ID0gdGhpcy5zZWxlY3RlZFRhYkluZGV4ID8/IDA7XHJcbiAgICBpZiAoXHJcbiAgICAgIHRoaXMudGFicz8ubGVuZ3RoID4gMCAmJlxyXG4gICAgICB0aGlzLnRhYnM/Llt0aGlzLnNlbGVjdGVkVGFiSW5kZXhdPy5jb21wb25lbnRSZWZcclxuICAgICkge1xyXG4gICAgICB0aGlzLmNyZWF0ZUNvbXBvbmVudCh0aGlzLnRhYnM/Llt0aGlzLnNlbGVjdGVkVGFiSW5kZXhdKTtcclxuICAgIH1cclxuICB9XHJcbiAgLyoqXHJcbiAgICogT3BlbnMgY29uZmlybWF0aW9uIG1vZGFsIG9uIHRhYiBjaGFuZ2UgZXZlbnQgd2hlbiBsZWF2aW5nIHdpdGggdW5zYXZlZCBjaGFuZ2VzLlxyXG4gICAqIEBwYXJhbSB7TWF0VGFiR3JvdXB9IHRhYlxyXG4gICAqIEBwYXJhbSBldmVudFxyXG4gICAqIEBtZW1iZXJvZiBUYWJzQ29tcG9uZW50XHJcbiAgICovXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICBvblRhYkNoYW5nZSh0YWI6IE1hdFRhYkdyb3VwLCBldmVudDogTWF0VGFiQ2hhbmdlRXZlbnQpOiB2b2lkIHtcclxuICAgIGlmICh0YWI/LnNlbGVjdGVkSW5kZXggIT09IHRoaXMucHJldmlvdXNUYWJJbmRleCAmJiB0aGlzLmlzRm9ybUNoYW5nZWQpIHtcclxuICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2c/Lm9wZW4oTW9kYWxDb25maXJtYXRpb25Db21wb25lbnQsIHtcclxuICAgICAgICBkYXRhOiB0aGlzLmNvbmZpcm1hdGlvbk1vZGFsQ29uZmlnLFxyXG4gICAgICAgIHdpZHRoOiB0aGlzLm1vZGFsQ29uZmlnVGV4dHM/LndpZHRoLFxyXG4gICAgICAgIGF1dG9Gb2N1czogdGhpcy5tb2RhbENvbmZpZ1RleHRzPy5hdXRvRm9jdXMsXHJcbiAgICAgICAgYXJpYUxhYmVsOiB0aGlzLm1vZGFsQ29uZmlnVGV4dHM/LmFyaWFMYWJlbCxcclxuICAgICAgICBwYW5lbENsYXNzOiBbXHJcbiAgICAgICAgICAnaWVlZXNhLW1vZGFsLWNvbmZpcm0tZGlhbG9nJyxcclxuICAgICAgICAgICdpZWVlc2EtY2FuY2VsLW1vZGFsLWNvbmZpcm0tZGlhbG9nJyxcclxuICAgICAgICBdLFxyXG4gICAgICB9KTtcclxuICAgICAgZGlhbG9nUmVmXHJcbiAgICAgICAgPy5hZnRlckNsb3NlZCgpXHJcbiAgICAgICAgPy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgICA/LnN1YnNjcmliZSgocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgICAgIHRoaXMucHJldmlvdXNUYWJJbmRleCA9IGV2ZW50LmluZGV4O1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRTZWxlY3RlZFRhYkNvbnRlbnQoZXZlbnQpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGFiLnNlbGVjdGVkSW5kZXggPSB0aGlzLnByZXZpb3VzVGFiSW5kZXg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9IGVsc2UgaWYgKHRhYj8uc2VsZWN0ZWRJbmRleCAhPT0gdGhpcy5wcmV2aW91c1RhYkluZGV4KSB7XHJcbiAgICAgIHRoaXMucHJldmlvdXNUYWJJbmRleCA9IGV2ZW50LmluZGV4O1xyXG4gICAgICB0aGlzLmxvYWRTZWxlY3RlZFRhYkNvbnRlbnQoZXZlbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuICAvKipcclxuICAgKiBMb2FkcyB0aGUgcmVzcGVjdGl2ZSBjb21wb25lbnQgb24gdGFiIGNoYW5nZSBldmVudCB3aGVuIGNvbXBvbmVudFJlZiBpcyBhdmFpbGFibGUuXHJcbiAgICogQHBhcmFtIHtNYXRUYWJDaGFuZ2VFdmVudH0gZXZlbnRcclxuICAgKiBAbWVtYmVyb2YgVGFic0NvbXBvbmVudFxyXG4gICAqL1xyXG4gIGxvYWRTZWxlY3RlZFRhYkNvbnRlbnQoZXZlbnQ6IE1hdFRhYkNoYW5nZUV2ZW50KTogdm9pZCB7XHJcbiAgICB0aGlzLmlzRm9ybUNoYW5nZWQgPSBmYWxzZTtcclxuICAgIHRoaXMuc2VsZWN0ZWRJbmRleENoYW5nZS5lbWl0KGV2ZW50KTtcclxuICAgIGlmICh0aGlzLnRhYnM/LltldmVudC5pbmRleF0/LmNvbXBvbmVudFJlZilcclxuICAgICAgdGhpcy5jcmVhdGVDb21wb25lbnQodGhpcy50YWJzPy5bZXZlbnQuaW5kZXhdKTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogRHluYW1pY2FsbHkgbG9hZHMgdGhlIGNvbXBvbmVudCBpbiB0aGUgRE9NIGNvbnRhaW5lciBiYXNlZCBvbiB0aGUgcGFzc2VkIHRhYiBhbmQgY2xlYXJzIHRoZSBwcmV2aW91c2x5IGxvYWRlZCBjb21wb25lbnQgYmVmb3JlIGxvYWRpbmcgdGhlIG5ldyBvbmUuXHJcbiAgICogQHBhcmFtIHtUYWJ9IHRhYlxyXG4gICAqIEBtZW1iZXJvZiBUYWJzQ29tcG9uZW50XHJcbiAgICovXHJcbiAgY3JlYXRlQ29tcG9uZW50KHRhYjogVGFiKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5pc0NvbXBvbmVudExvYWRlZCkge1xyXG4gICAgICB0aGlzLmNvbXBvbmVudFJlZi5kZXN0cm95KCk7XHJcbiAgICAgIHRoaXMuY29tcG9uZW50Q29udGFpbmVyLmNsZWFyKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmNvbXBvbmVudFJlZiA9IHRoaXMuY29tcG9uZW50Q29udGFpbmVyPy5jcmVhdGVDb21wb25lbnQoXHJcbiAgICAgIHRhYi5jb21wb25lbnRSZWZcclxuICAgICk7XHJcbiAgICB0aGlzLmNvbXBvbmVudFJlZj8uc2V0SW5wdXQoJ2V2ZW50SWQnLCB0aGlzLmV2ZW50SWQpO1xyXG4gICAgdGhpcy5jb21wb25lbnRSZWY/LnNldElucHV0KCdtZWV0aW5nSWQnLCB0aGlzLm1lZXRpbmdJZCk7XHJcbiAgICB0aGlzLmNvbXBvbmVudFJlZj8uc2V0SW5wdXQoJ3JvdXRlUGF0aHMnLCB0aGlzLnJvdXRlUGF0aHMpO1xyXG4gICAgdGhpcy5jb21wb25lbnRSZWY/LnNldElucHV0KCdhcGlCYXNlVVJMJywgdGhpcy5hcGlCYXNlVVJMKTtcclxuICAgIHRoaXMuY29tcG9uZW50UmVmPy5zZXRJbnB1dCgndXNlclBlcm1pc3Npb25zJywgdGhpcy51c2VyUGVybWlzc2lvbnMpO1xyXG4gICAgdGhpcy5jb21wb25lbnRSZWY/LnNldElucHV0KCdhY3Rpb25UeXBlJywgdGhpcy5hY3Rpb25UeXBlKTtcclxuICAgIHRoaXMuY29tcG9uZW50UmVmPy5zZXRJbnB1dCgnaXNWaWV3T25seScsIHRoaXMuaXNWaWV3T25seSk7XHJcbiAgICB0aGlzLmNvbXBvbmVudFJlZj8uaW5zdGFuY2U/LmZvcm1DYW5jZWxcclxuICAgICAgPy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBhbnkpID0+IHtcclxuICAgICAgICB0aGlzLmZvcm1DYW5jZWwuZW1pdChyZXN1bHQpO1xyXG4gICAgICB9KTtcclxuICAgIHRoaXMuY29tcG9uZW50UmVmPy5pbnN0YW5jZT8uZm9ybVN1Ym1pdFxyXG4gICAgICA/LnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IEZvcm1Hcm91cFtdKSA9PiB7XHJcbiAgICAgICAgdGhpcy5mb3JtU3VibWl0LmVtaXQocmVzdWx0KTtcclxuICAgICAgfSk7XHJcbiAgICB0aGlzLmlzQ29tcG9uZW50TG9hZGVkID0gdHJ1ZTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogUmV0dXJucyB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIHRhYi5cclxuICAgKiBAcGFyYW0ge251bWJlcn0gaW5kZXhcclxuICAgKiBAcGFyYW0ge1RhYn0gb3B0aW9uXHJcbiAgICogQHJldHVybiB7Kn0gIHsobnVtYmVyIHwgc3RyaW5nKX1cclxuICAgKiBAbWVtYmVyb2YgVGFic0NvbXBvbmVudFxyXG4gICAqL1xyXG4gIHRyYWNrQnlGbihpbmRleDogbnVtYmVyLCBvcHRpb246IFRhYik6IG51bWJlciB8IHN0cmluZyB7XHJcbiAgICByZXR1cm4gb3B0aW9uLmlkO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBDbGVhbnMgdXAgcmVzb3VyY2VzIHdoZW4gdGhlIGNvbXBvbmVudCBpcyBkZXN0cm95ZWRcclxuICAgKiBAbWVtYmVyb2YgVGFic0NvbXBvbmVudFxyXG4gICAqL1xyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgaWYgKHRoaXMuY29tcG9uZW50UmVmKSB7XHJcbiAgICAgIHRoaXMuY29tcG9uZW50UmVmLmRlc3Ryb3koKTtcclxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICAgICAgdGhpcy5jb21wb25lbnRSZWYgPSBudWxsIGFzIGFueTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPG1hdC10YWItZ3JvdXBcclxuICAjdGFiR3JvdXBcclxuICBjbGFzcz1cImllZWVzYS10YWItZ3JvdXBcIlxyXG4gIChzZWxlY3RlZFRhYkNoYW5nZSk9XCJvblRhYkNoYW5nZSh0YWJHcm91cCwgJGV2ZW50KVwiXHJcbiAgW3NlbGVjdGVkSW5kZXhdPVwic2VsZWN0ZWRUYWJJbmRleFwiXHJcbj5cclxuICA8bWF0LXRhYlxyXG4gICAgKm5nRm9yPVwibGV0IHRhYiBvZiB0YWJzOyB0cmFja0J5OiB0cmFja0J5Rm5cIlxyXG4gICAgW2xhYmVsXT1cInRhYj8ubGFiZWwgPz8gJydcIlxyXG4gID5cclxuICA8L21hdC10YWI+XHJcbjwvbWF0LXRhYi1ncm91cD5cclxuPG5nLWNvbnRhaW5lciAjY29tcG9uZW50Q29udGFpbmVyPjwvbmctY29udGFpbmVyPlxyXG4iXX0=
|