@cqa-lib/cqa-ui 1.0.22 → 1.0.24

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.
Files changed (34) hide show
  1. package/esm2020/lib/badge/badge.component.mjs +20 -9
  2. package/esm2020/lib/dashboards/coverage-module-card/coverage-module-card.component.mjs +15 -3
  3. package/esm2020/lib/dashboards/dashboard-header/dashboard-header.component.mjs +6 -3
  4. package/esm2020/lib/dashboards/failed-test-cases-card/failed-test-cases-card.component.mjs +16 -7
  5. package/esm2020/lib/dashboards/insight-card/insight-card.component.mjs +13 -7
  6. package/esm2020/lib/dynamic-select/dynamic-select-field.component.mjs +9 -2
  7. package/esm2020/lib/filters/dynamic-filter/dynamic-filter.component.mjs +12 -3
  8. package/esm2020/lib/selected-filters/selected-filters.component.mjs +6 -3
  9. package/esm2020/lib/table/dynamic-table/component-render-config.interface.mjs +2 -0
  10. package/esm2020/lib/table/dynamic-table/dynamic-cell-container.directive.mjs +118 -0
  11. package/esm2020/lib/table/dynamic-table/dynamic-table.component.mjs +121 -6
  12. package/esm2020/lib/templates/table-template.component.mjs +19 -4
  13. package/esm2020/lib/ui-kit.module.mjs +6 -1
  14. package/esm2020/public-api.mjs +3 -1
  15. package/fesm2015/cqa-lib-cqa-ui.mjs +348 -36
  16. package/fesm2015/cqa-lib-cqa-ui.mjs.map +1 -1
  17. package/fesm2020/cqa-lib-cqa-ui.mjs +345 -36
  18. package/fesm2020/cqa-lib-cqa-ui.mjs.map +1 -1
  19. package/lib/badge/badge.component.d.ts +3 -1
  20. package/lib/dashboards/coverage-module-card/coverage-module-card.component.d.ts +7 -1
  21. package/lib/dashboards/dashboard-header/dashboard-header.component.d.ts +2 -1
  22. package/lib/dashboards/failed-test-cases-card/failed-test-cases-card.component.d.ts +5 -1
  23. package/lib/dashboards/insight-card/insight-card.component.d.ts +3 -1
  24. package/lib/dynamic-select/dynamic-select-field.component.d.ts +2 -1
  25. package/lib/filters/dynamic-filter/dynamic-filter.component.d.ts +3 -1
  26. package/lib/selected-filters/selected-filters.component.d.ts +2 -1
  27. package/lib/table/dynamic-table/component-render-config.interface.d.ts +10 -0
  28. package/lib/table/dynamic-table/dynamic-cell-container.directive.d.ts +24 -0
  29. package/lib/table/dynamic-table/dynamic-table.component.d.ts +35 -5
  30. package/lib/templates/table-template.component.d.ts +6 -2
  31. package/lib/ui-kit.module.d.ts +40 -39
  32. package/package.json +1 -1
  33. package/public-api.d.ts +2 -0
  34. package/styles.css +1 -1
@@ -23,6 +23,7 @@ export class DashboardHeaderComponent {
23
23
  this.workspaceSearchable = false;
24
24
  this.showWorkspaceSelector = true;
25
25
  this.workspaceValueChange = new EventEmitter();
26
+ this.workspaceSelectClick = new EventEmitter();
26
27
  this.workspaceForm = new FormGroup({
27
28
  workspace: new FormControl(),
28
29
  });
@@ -60,10 +61,10 @@ export class DashboardHeaderComponent {
60
61
  }
61
62
  }
62
63
  DashboardHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: DashboardHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
63
- DashboardHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: DashboardHeaderComponent, selector: "cqa-dashboard-header", inputs: { title: "title", badgeText: "badgeText", badgeClass: "badgeClass", headerClass: "headerClass", showHeader: "showHeader", showLogo: "showLogo", logoUrl: "logoUrl", showHelpIcon: "showHelpIcon", workspaceOptions: "workspaceOptions", workspacePlaceholder: "workspacePlaceholder", workspaceDisabled: "workspaceDisabled", workspaceValue: "workspaceValue", workspaceMultiple: "workspaceMultiple", workspaceSearchable: "workspaceSearchable", showWorkspaceSelector: "showWorkspaceSelector" }, outputs: { helpIconClick: "helpIconClick", workspaceValueChange: "workspaceValueChange" }, usesOnChanges: true, ngImport: i0, template: "<div id=\"cqa-ui-root\" *ngIf=\"showHeader\">\n <div\n class=\"cqa-w-full cqa-flex cqa-items-center cqa-justify-between cqa-bg-white cqa-pr-6 cqa-pl-2 lg:cqa-px-6 lg:cqa-py-[6px] cqa-py-2 cqa-border-b cqa-border-default cqa-shadow-header\"\n [ngClass]=\"headerClass\">\n <!-- Left branding block -->\n <div class=\"cqa-flex cqa-items-center cqa-gap-2 cqa-min-w-0\">\n <div class=\"cqa-pr-4 lg:cqa-hidden cqa-gap-2 md:cqa-flex cqa-hidden\">\n <!-- <cqa-button variant=\"filled\" icon=\"\" [customClass]=\"'!cqa-rounded-[10px] !cqa-p-[7px] !cqa-min-w-[47px]'\">\n <svg width=\"31\" height=\"22\" viewBox=\"0 0 31 22\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M5.16675 11H25.8334\" stroke=\"white\" stroke-width=\"1.83333\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n <path d=\"M5.16675 16.5H25.8334\" stroke=\"white\" stroke-width=\"1.83333\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n <path d=\"M5.16675 5.5H25.8334\" stroke=\"white\" stroke-width=\"1.83333\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n </svg>\n </cqa-button> -->\n <!-- <span class=\"cqa-border-l cqa-border-primary-surface cqa-hidden md:cqa-flex\"></span> -->\n <cqa-button variant=\"filled\" icon=\"\" class=\"cqa-hidden md:cqa-flex\" [customClass]=\"'!cqa-rounded-[10px] !cqa-p-[7px] !cqa-min-w-[47px]'\">\n <svg width=\"22\" height=\"22\" viewBox=\"0 0 22 22\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M4.58337 11H17.4167\" stroke=\"white\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n <path d=\"M11 4.58301V17.4163\" stroke=\"white\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n </svg>\n </cqa-button>\n </div>\n <!-- Optional projected logo -->\n <img *ngIf=\"showLogo && logoUrl\" [src]=\"logoUrl\" alt=\"Logo\" class=\"cqa-w-8 cqa-h-8 cqa-object-contain\" />\n <svg *ngIf=\"showLogo && !logoUrl\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <rect x=\"0.5\" y=\"0.5\" width=\"31\" height=\"31\" rx=\"15.5\" fill=\"url(#pattern0_6303_22035)\" />\n <rect x=\"0.5\" y=\"0.5\" width=\"31\" height=\"31\" rx=\"15.5\" stroke=\"#D8D9FC\" />\n <defs>\n <pattern id=\"pattern0_6303_22035\" patternContentUnits=\"objectBoundingBox\" width=\"1\" height=\"1\">\n <use xlink:href=\"#image0_6303_22035\" transform=\"scale(0.005)\" />\n </pattern>\n <image id=\"image0_6303_22035\" width=\"200\" height=\"200\" preserveAspectRatio=\"none\"\n xlink:href=\"data:image/jpeg;base64,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\" />\n </defs>\n </svg>\n\n <!-- Title + optional badge -->\n <div class=\"cqa-items-end cqa-gap-3 cqa-min-w-0 cqa-hidden md:cqa-flex\">\n <div\n class=\"cqa-truncate cqa-text-[#22223B] cqa-font-extrabold cqa-text-[32px] cqa-font-nunito-sans cqa-leading-[1]\">\n {{ title }}</div>\n <span *ngIf=\"badgeText\"\n class=\"cqa-px-2 cqa-py-[2px] cqa-rounded-lg cqa-text-[12px] cqa-font-medium cqa-leading-4 cqa-whitespace-nowrap cqa-text-[#007A55] cqa-bg-[#D0FAE5] cqa-border cqa-border-[#A4F4CF]\"\n [ngClass]=\"badgeClass\">{{ badgeText }}</span>\n </div>\n </div>\n\n <!-- Right controls/actions -->\n <div class=\"cqa-flex cqa-items-center cqa-gap-3 cqa-flex-1 cqa-justify-end\">\n <!-- Optional workspace select -->\n <div *ngIf=\"showWorkspaceSelector && workspaceOptions?.length\" class=\"header-dropdown\">\n <cqa-dynamic-select [form]=\"workspaceForm\" [config]=\"workspaceConfig\">\n </cqa-dynamic-select>\n </div>\n\n <!-- Help icon button -->\n <button *ngIf=\"showHelpIcon\" mat-icon-button aria-label=\"Help\" (click)=\"helpIconClick.emit()\" class=\"cqa-flex cqa-items-center\">\n <mat-icon style=\"height: 36px; width: 36px;\">\n <svg width=\"36\" height=\"36\" viewBox=\"0 0 36 36\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M0 18C0 8.05888 8.05888 0 18 0C27.9411 0 36 8.05888 36 18C36 27.9411 27.9411 36 18 36C8.05888 36 0 27.9411 0 18Z\" fill=\"#D8D9FC\" fill-opacity=\"0.3\"/>\n <path d=\"M18.0001 28.4163C23.9832 28.4163 28.8334 23.7526 28.8334 17.9997C28.8334 12.2467 23.9832 7.58301 18.0001 7.58301C12.017 7.58301 7.16675 12.2467 7.16675 17.9997C7.16675 23.7526 12.017 28.4163 18.0001 28.4163Z\" stroke=\"#3F43EE\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M14.8474 14.8751C15.1021 14.1789 15.6048 13.5919 16.2665 13.218C16.9282 12.844 17.7062 12.7073 18.4627 12.8321C19.2192 12.9569 19.9053 13.335 20.3996 13.8996C20.8939 14.4642 21.1644 15.1788 21.1632 15.9168C21.1632 18.0001 17.9132 19.0418 17.9132 19.0418\" stroke=\"#3F43EE\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M18 23.208H18.01\" stroke=\"#3F43EE\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </mat-icon>\n </button>\n\n <ng-content></ng-content>\n </div>\n </div>\n</div>", components: [{ type: i1.ButtonComponent, selector: "cqa-button", inputs: ["variant", "disabled", "icon", "iconPosition", "fullWidth", "iconColor", "type", "text", "customClass"], outputs: ["clicked"] }, { type: i2.DynamicSelectFieldComponent, selector: "cqa-dynamic-select", inputs: ["form", "config"], outputs: ["selectionChange"] }, { type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
64
+ DashboardHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: DashboardHeaderComponent, selector: "cqa-dashboard-header", inputs: { title: "title", badgeText: "badgeText", badgeClass: "badgeClass", headerClass: "headerClass", showHeader: "showHeader", showLogo: "showLogo", logoUrl: "logoUrl", showHelpIcon: "showHelpIcon", workspaceOptions: "workspaceOptions", workspacePlaceholder: "workspacePlaceholder", workspaceDisabled: "workspaceDisabled", workspaceValue: "workspaceValue", workspaceMultiple: "workspaceMultiple", workspaceSearchable: "workspaceSearchable", showWorkspaceSelector: "showWorkspaceSelector" }, outputs: { helpIconClick: "helpIconClick", workspaceValueChange: "workspaceValueChange", workspaceSelectClick: "workspaceSelectClick" }, usesOnChanges: true, ngImport: i0, template: "<div id=\"cqa-ui-root\" *ngIf=\"showHeader\">\n <div\n class=\"cqa-w-full cqa-flex cqa-items-center cqa-justify-between cqa-bg-white cqa-pr-6 cqa-pl-2 lg:cqa-px-6 lg:cqa-py-[6px] cqa-py-2 cqa-border-b cqa-border-default cqa-shadow-header\"\n [ngClass]=\"headerClass\">\n <!-- Left branding block -->\n <div class=\"cqa-flex cqa-items-center cqa-gap-2 cqa-min-w-0\">\n <div class=\"cqa-pr-4 lg:cqa-hidden cqa-gap-2 md:cqa-flex cqa-hidden\">\n <!-- <cqa-button variant=\"filled\" icon=\"\" [customClass]=\"'!cqa-rounded-[10px] !cqa-p-[7px] !cqa-min-w-[47px]'\">\n <svg width=\"31\" height=\"22\" viewBox=\"0 0 31 22\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M5.16675 11H25.8334\" stroke=\"white\" stroke-width=\"1.83333\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n <path d=\"M5.16675 16.5H25.8334\" stroke=\"white\" stroke-width=\"1.83333\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n <path d=\"M5.16675 5.5H25.8334\" stroke=\"white\" stroke-width=\"1.83333\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n </svg>\n </cqa-button> -->\n <!-- <span class=\"cqa-border-l cqa-border-primary-surface cqa-hidden md:cqa-flex\"></span> -->\n <cqa-button variant=\"filled\" icon=\"\" class=\"cqa-hidden md:cqa-flex\" [customClass]=\"'!cqa-rounded-[10px] !cqa-p-[7px] !cqa-min-w-[47px]'\">\n <svg width=\"22\" height=\"22\" viewBox=\"0 0 22 22\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M4.58337 11H17.4167\" stroke=\"white\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n <path d=\"M11 4.58301V17.4163\" stroke=\"white\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n </svg>\n </cqa-button>\n </div>\n <!-- Optional projected logo -->\n <img *ngIf=\"showLogo && logoUrl\" [src]=\"logoUrl\" alt=\"Logo\" class=\"cqa-w-8 cqa-h-8 cqa-object-contain\" />\n <svg *ngIf=\"showLogo && !logoUrl\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <rect x=\"0.5\" y=\"0.5\" width=\"31\" height=\"31\" rx=\"15.5\" fill=\"url(#pattern0_6303_22035)\" />\n <rect x=\"0.5\" y=\"0.5\" width=\"31\" height=\"31\" rx=\"15.5\" stroke=\"#D8D9FC\" />\n <defs>\n <pattern id=\"pattern0_6303_22035\" patternContentUnits=\"objectBoundingBox\" width=\"1\" height=\"1\">\n <use xlink:href=\"#image0_6303_22035\" transform=\"scale(0.005)\" />\n </pattern>\n <image id=\"image0_6303_22035\" width=\"200\" height=\"200\" preserveAspectRatio=\"none\"\n xlink:href=\"data:image/jpeg;base64,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\" />\n </defs>\n </svg>\n\n <!-- Title + optional badge -->\n <div class=\"cqa-items-end cqa-gap-3 cqa-min-w-0 cqa-hidden md:cqa-flex\">\n <div\n class=\"cqa-truncate cqa-text-[#22223B] cqa-font-extrabold cqa-text-[32px] cqa-font-nunito-sans cqa-leading-[1]\">\n {{ title }}</div>\n <span *ngIf=\"badgeText\"\n class=\"cqa-px-2 cqa-py-[2px] cqa-rounded-lg cqa-text-[12px] cqa-font-medium cqa-leading-4 cqa-whitespace-nowrap cqa-text-[#007A55] cqa-bg-[#D0FAE5] cqa-border cqa-border-[#A4F4CF]\"\n [ngClass]=\"badgeClass\">{{ badgeText }}</span>\n </div>\n </div>\n\n <!-- Right controls/actions -->\n <div class=\"cqa-flex cqa-items-center cqa-gap-3 cqa-flex-1 cqa-justify-end\">\n <!-- Optional workspace select -->\n <div *ngIf=\"showWorkspaceSelector && workspaceOptions?.length\" class=\"header-dropdown\">\n <cqa-dynamic-select [form]=\"workspaceForm\" [config]=\"workspaceConfig\" (selectClick)=\"workspaceSelectClick.emit()\">\n </cqa-dynamic-select>\n </div>\n\n <!-- Help icon button -->\n <button *ngIf=\"showHelpIcon\" mat-icon-button aria-label=\"Help\" (click)=\"helpIconClick.emit()\" class=\"cqa-flex cqa-items-center\">\n <mat-icon style=\"height: 36px; width: 36px;\">\n <svg width=\"36\" height=\"36\" viewBox=\"0 0 36 36\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M0 18C0 8.05888 8.05888 0 18 0C27.9411 0 36 8.05888 36 18C36 27.9411 27.9411 36 18 36C8.05888 36 0 27.9411 0 18Z\" fill=\"#D8D9FC\" fill-opacity=\"0.3\"/>\n <path d=\"M18.0001 28.4163C23.9832 28.4163 28.8334 23.7526 28.8334 17.9997C28.8334 12.2467 23.9832 7.58301 18.0001 7.58301C12.017 7.58301 7.16675 12.2467 7.16675 17.9997C7.16675 23.7526 12.017 28.4163 18.0001 28.4163Z\" stroke=\"#3F43EE\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M14.8474 14.8751C15.1021 14.1789 15.6048 13.5919 16.2665 13.218C16.9282 12.844 17.7062 12.7073 18.4627 12.8321C19.2192 12.9569 19.9053 13.335 20.3996 13.8996C20.8939 14.4642 21.1644 15.1788 21.1632 15.9168C21.1632 18.0001 17.9132 19.0418 17.9132 19.0418\" stroke=\"#3F43EE\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M18 23.208H18.01\" stroke=\"#3F43EE\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </mat-icon>\n </button>\n\n <ng-content></ng-content>\n </div>\n </div>\n</div>", components: [{ type: i1.ButtonComponent, selector: "cqa-button", inputs: ["variant", "disabled", "icon", "iconPosition", "fullWidth", "iconColor", "type", "text", "customClass"], outputs: ["clicked"] }, { type: i2.DynamicSelectFieldComponent, selector: "cqa-dynamic-select", inputs: ["form", "config"], outputs: ["selectionChange", "selectClick"] }, { type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
64
65
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: DashboardHeaderComponent, decorators: [{
65
66
  type: Component,
66
- args: [{ selector: 'cqa-dashboard-header', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div id=\"cqa-ui-root\" *ngIf=\"showHeader\">\n <div\n class=\"cqa-w-full cqa-flex cqa-items-center cqa-justify-between cqa-bg-white cqa-pr-6 cqa-pl-2 lg:cqa-px-6 lg:cqa-py-[6px] cqa-py-2 cqa-border-b cqa-border-default cqa-shadow-header\"\n [ngClass]=\"headerClass\">\n <!-- Left branding block -->\n <div class=\"cqa-flex cqa-items-center cqa-gap-2 cqa-min-w-0\">\n <div class=\"cqa-pr-4 lg:cqa-hidden cqa-gap-2 md:cqa-flex cqa-hidden\">\n <!-- <cqa-button variant=\"filled\" icon=\"\" [customClass]=\"'!cqa-rounded-[10px] !cqa-p-[7px] !cqa-min-w-[47px]'\">\n <svg width=\"31\" height=\"22\" viewBox=\"0 0 31 22\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M5.16675 11H25.8334\" stroke=\"white\" stroke-width=\"1.83333\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n <path d=\"M5.16675 16.5H25.8334\" stroke=\"white\" stroke-width=\"1.83333\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n <path d=\"M5.16675 5.5H25.8334\" stroke=\"white\" stroke-width=\"1.83333\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n </svg>\n </cqa-button> -->\n <!-- <span class=\"cqa-border-l cqa-border-primary-surface cqa-hidden md:cqa-flex\"></span> -->\n <cqa-button variant=\"filled\" icon=\"\" class=\"cqa-hidden md:cqa-flex\" [customClass]=\"'!cqa-rounded-[10px] !cqa-p-[7px] !cqa-min-w-[47px]'\">\n <svg width=\"22\" height=\"22\" viewBox=\"0 0 22 22\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M4.58337 11H17.4167\" stroke=\"white\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n <path d=\"M11 4.58301V17.4163\" stroke=\"white\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n </svg>\n </cqa-button>\n </div>\n <!-- Optional projected logo -->\n <img *ngIf=\"showLogo && logoUrl\" [src]=\"logoUrl\" alt=\"Logo\" class=\"cqa-w-8 cqa-h-8 cqa-object-contain\" />\n <svg *ngIf=\"showLogo && !logoUrl\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <rect x=\"0.5\" y=\"0.5\" width=\"31\" height=\"31\" rx=\"15.5\" fill=\"url(#pattern0_6303_22035)\" />\n <rect x=\"0.5\" y=\"0.5\" width=\"31\" height=\"31\" rx=\"15.5\" stroke=\"#D8D9FC\" />\n <defs>\n <pattern id=\"pattern0_6303_22035\" patternContentUnits=\"objectBoundingBox\" width=\"1\" height=\"1\">\n <use xlink:href=\"#image0_6303_22035\" transform=\"scale(0.005)\" />\n </pattern>\n <image id=\"image0_6303_22035\" width=\"200\" height=\"200\" preserveAspectRatio=\"none\"\n xlink:href=\"data:image/jpeg;base64,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\" />\n </defs>\n </svg>\n\n <!-- Title + optional badge -->\n <div class=\"cqa-items-end cqa-gap-3 cqa-min-w-0 cqa-hidden md:cqa-flex\">\n <div\n class=\"cqa-truncate cqa-text-[#22223B] cqa-font-extrabold cqa-text-[32px] cqa-font-nunito-sans cqa-leading-[1]\">\n {{ title }}</div>\n <span *ngIf=\"badgeText\"\n class=\"cqa-px-2 cqa-py-[2px] cqa-rounded-lg cqa-text-[12px] cqa-font-medium cqa-leading-4 cqa-whitespace-nowrap cqa-text-[#007A55] cqa-bg-[#D0FAE5] cqa-border cqa-border-[#A4F4CF]\"\n [ngClass]=\"badgeClass\">{{ badgeText }}</span>\n </div>\n </div>\n\n <!-- Right controls/actions -->\n <div class=\"cqa-flex cqa-items-center cqa-gap-3 cqa-flex-1 cqa-justify-end\">\n <!-- Optional workspace select -->\n <div *ngIf=\"showWorkspaceSelector && workspaceOptions?.length\" class=\"header-dropdown\">\n <cqa-dynamic-select [form]=\"workspaceForm\" [config]=\"workspaceConfig\">\n </cqa-dynamic-select>\n </div>\n\n <!-- Help icon button -->\n <button *ngIf=\"showHelpIcon\" mat-icon-button aria-label=\"Help\" (click)=\"helpIconClick.emit()\" class=\"cqa-flex cqa-items-center\">\n <mat-icon style=\"height: 36px; width: 36px;\">\n <svg width=\"36\" height=\"36\" viewBox=\"0 0 36 36\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M0 18C0 8.05888 8.05888 0 18 0C27.9411 0 36 8.05888 36 18C36 27.9411 27.9411 36 18 36C8.05888 36 0 27.9411 0 18Z\" fill=\"#D8D9FC\" fill-opacity=\"0.3\"/>\n <path d=\"M18.0001 28.4163C23.9832 28.4163 28.8334 23.7526 28.8334 17.9997C28.8334 12.2467 23.9832 7.58301 18.0001 7.58301C12.017 7.58301 7.16675 12.2467 7.16675 17.9997C7.16675 23.7526 12.017 28.4163 18.0001 28.4163Z\" stroke=\"#3F43EE\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M14.8474 14.8751C15.1021 14.1789 15.6048 13.5919 16.2665 13.218C16.9282 12.844 17.7062 12.7073 18.4627 12.8321C19.2192 12.9569 19.9053 13.335 20.3996 13.8996C20.8939 14.4642 21.1644 15.1788 21.1632 15.9168C21.1632 18.0001 17.9132 19.0418 17.9132 19.0418\" stroke=\"#3F43EE\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M18 23.208H18.01\" stroke=\"#3F43EE\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </mat-icon>\n </button>\n\n <ng-content></ng-content>\n </div>\n </div>\n</div>", styles: [] }]
67
+ args: [{ selector: 'cqa-dashboard-header', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div id=\"cqa-ui-root\" *ngIf=\"showHeader\">\n <div\n class=\"cqa-w-full cqa-flex cqa-items-center cqa-justify-between cqa-bg-white cqa-pr-6 cqa-pl-2 lg:cqa-px-6 lg:cqa-py-[6px] cqa-py-2 cqa-border-b cqa-border-default cqa-shadow-header\"\n [ngClass]=\"headerClass\">\n <!-- Left branding block -->\n <div class=\"cqa-flex cqa-items-center cqa-gap-2 cqa-min-w-0\">\n <div class=\"cqa-pr-4 lg:cqa-hidden cqa-gap-2 md:cqa-flex cqa-hidden\">\n <!-- <cqa-button variant=\"filled\" icon=\"\" [customClass]=\"'!cqa-rounded-[10px] !cqa-p-[7px] !cqa-min-w-[47px]'\">\n <svg width=\"31\" height=\"22\" viewBox=\"0 0 31 22\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M5.16675 11H25.8334\" stroke=\"white\" stroke-width=\"1.83333\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n <path d=\"M5.16675 16.5H25.8334\" stroke=\"white\" stroke-width=\"1.83333\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n <path d=\"M5.16675 5.5H25.8334\" stroke=\"white\" stroke-width=\"1.83333\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n </svg>\n </cqa-button> -->\n <!-- <span class=\"cqa-border-l cqa-border-primary-surface cqa-hidden md:cqa-flex\"></span> -->\n <cqa-button variant=\"filled\" icon=\"\" class=\"cqa-hidden md:cqa-flex\" [customClass]=\"'!cqa-rounded-[10px] !cqa-p-[7px] !cqa-min-w-[47px]'\">\n <svg width=\"22\" height=\"22\" viewBox=\"0 0 22 22\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M4.58337 11H17.4167\" stroke=\"white\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n <path d=\"M11 4.58301V17.4163\" stroke=\"white\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n </svg>\n </cqa-button>\n </div>\n <!-- Optional projected logo -->\n <img *ngIf=\"showLogo && logoUrl\" [src]=\"logoUrl\" alt=\"Logo\" class=\"cqa-w-8 cqa-h-8 cqa-object-contain\" />\n <svg *ngIf=\"showLogo && !logoUrl\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <rect x=\"0.5\" y=\"0.5\" width=\"31\" height=\"31\" rx=\"15.5\" fill=\"url(#pattern0_6303_22035)\" />\n <rect x=\"0.5\" y=\"0.5\" width=\"31\" height=\"31\" rx=\"15.5\" stroke=\"#D8D9FC\" />\n <defs>\n <pattern id=\"pattern0_6303_22035\" patternContentUnits=\"objectBoundingBox\" width=\"1\" height=\"1\">\n <use xlink:href=\"#image0_6303_22035\" transform=\"scale(0.005)\" />\n </pattern>\n <image id=\"image0_6303_22035\" width=\"200\" height=\"200\" preserveAspectRatio=\"none\"\n xlink:href=\"data:image/jpeg;base64,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\" />\n </defs>\n </svg>\n\n <!-- Title + optional badge -->\n <div class=\"cqa-items-end cqa-gap-3 cqa-min-w-0 cqa-hidden md:cqa-flex\">\n <div\n class=\"cqa-truncate cqa-text-[#22223B] cqa-font-extrabold cqa-text-[32px] cqa-font-nunito-sans cqa-leading-[1]\">\n {{ title }}</div>\n <span *ngIf=\"badgeText\"\n class=\"cqa-px-2 cqa-py-[2px] cqa-rounded-lg cqa-text-[12px] cqa-font-medium cqa-leading-4 cqa-whitespace-nowrap cqa-text-[#007A55] cqa-bg-[#D0FAE5] cqa-border cqa-border-[#A4F4CF]\"\n [ngClass]=\"badgeClass\">{{ badgeText }}</span>\n </div>\n </div>\n\n <!-- Right controls/actions -->\n <div class=\"cqa-flex cqa-items-center cqa-gap-3 cqa-flex-1 cqa-justify-end\">\n <!-- Optional workspace select -->\n <div *ngIf=\"showWorkspaceSelector && workspaceOptions?.length\" class=\"header-dropdown\">\n <cqa-dynamic-select [form]=\"workspaceForm\" [config]=\"workspaceConfig\" (selectClick)=\"workspaceSelectClick.emit()\">\n </cqa-dynamic-select>\n </div>\n\n <!-- Help icon button -->\n <button *ngIf=\"showHelpIcon\" mat-icon-button aria-label=\"Help\" (click)=\"helpIconClick.emit()\" class=\"cqa-flex cqa-items-center\">\n <mat-icon style=\"height: 36px; width: 36px;\">\n <svg width=\"36\" height=\"36\" viewBox=\"0 0 36 36\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M0 18C0 8.05888 8.05888 0 18 0C27.9411 0 36 8.05888 36 18C36 27.9411 27.9411 36 18 36C8.05888 36 0 27.9411 0 18Z\" fill=\"#D8D9FC\" fill-opacity=\"0.3\"/>\n <path d=\"M18.0001 28.4163C23.9832 28.4163 28.8334 23.7526 28.8334 17.9997C28.8334 12.2467 23.9832 7.58301 18.0001 7.58301C12.017 7.58301 7.16675 12.2467 7.16675 17.9997C7.16675 23.7526 12.017 28.4163 18.0001 28.4163Z\" stroke=\"#3F43EE\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M14.8474 14.8751C15.1021 14.1789 15.6048 13.5919 16.2665 13.218C16.9282 12.844 17.7062 12.7073 18.4627 12.8321C19.2192 12.9569 19.9053 13.335 20.3996 13.8996C20.8939 14.4642 21.1644 15.1788 21.1632 15.9168C21.1632 18.0001 17.9132 19.0418 17.9132 19.0418\" stroke=\"#3F43EE\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M18 23.208H18.01\" stroke=\"#3F43EE\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </mat-icon>\n </button>\n\n <ng-content></ng-content>\n </div>\n </div>\n</div>", styles: [] }]
67
68
  }], propDecorators: { title: [{
68
69
  type: Input
69
70
  }], badgeText: [{
@@ -98,5 +99,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
98
99
  type: Input
99
100
  }], workspaceValueChange: [{
100
101
  type: Output
102
+ }], workspaceSelectClick: [{
103
+ type: Output
101
104
  }] } });
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2Rhc2hib2FyZHMvZGFzaGJvYXJkLWhlYWRlci9kYXNoYm9hcmQtaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZGFzaGJvYXJkcy9kYXNoYm9hcmQtaGVhZGVyL2Rhc2hib2FyZC1oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ2xJLE9BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7QUFnQnhELE1BQU0sT0FBTyx3QkFBd0I7SUFOckM7UUFPVyxVQUFLLEdBQVcsRUFBRSxDQUFDO1FBRW5CLGVBQVUsR0FBVyw2QkFBNkIsQ0FBQztRQUNuRCxnQkFBVyxHQUFXLEVBQUUsQ0FBQztRQUN6QixlQUFVLEdBQVksSUFBSSxDQUFDO1FBQzNCLGFBQVEsR0FBWSxJQUFJLENBQUM7UUFFekIsaUJBQVksR0FBWSxJQUFJLENBQUM7UUFDNUIsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBRW5ELHlDQUF5QztRQUNoQyxxQkFBZ0IsR0FBeUIsRUFBRSxDQUFDO1FBQzVDLHlCQUFvQixHQUFXLFdBQVcsQ0FBQztRQUMzQyxzQkFBaUIsR0FBWSxLQUFLLENBQUM7UUFFbkMsc0JBQWlCLEdBQVksS0FBSyxDQUFDO1FBQ25DLHdCQUFtQixHQUFZLEtBQUssQ0FBQztRQUNyQywwQkFBcUIsR0FBWSxJQUFJLENBQUM7UUFDckMseUJBQW9CLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUV6RCxrQkFBYSxHQUFjLElBQUksU0FBUyxDQUFDO1lBQ3ZDLFNBQVMsRUFBRSxJQUFJLFdBQVcsRUFBRTtTQUM3QixDQUFDLENBQUM7S0FtQ0o7SUFqQ0MsUUFBUTtRQUNOLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFFLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNoRSxJQUFJLENBQUMsY0FBYyxHQUFHLENBQUMsQ0FBQztZQUN4QixJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3BDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVcsQ0FBQyxRQUF1QjtRQUNqQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2pCLE9BQU87WUFDTCxHQUFHLEVBQUUsV0FBVztZQUNoQixXQUFXLEVBQUUsSUFBSSxDQUFDLG9CQUFvQjtZQUN0QyxRQUFRLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjtZQUNoQyxRQUFRLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjtZQUNoQyxVQUFVLEVBQUUsSUFBSSxDQUFDLG1CQUFtQjtZQUNwQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGNBQWM7WUFDbEMsT0FBTyxFQUFFLElBQUksQ0FBQyxnQkFBZ0I7U0FDL0IsQ0FBQztJQUNKLENBQUM7SUFFTyxpQkFBaUI7UUFDdkIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLElBQUk7WUFBRSxPQUFPO1FBQ2xCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUM7UUFDaEMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGlCQUFpQjtZQUN2QyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUN2RCxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ25FLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDbEQsQ0FBQzs7cUhBekRVLHdCQUF3Qjt5R0FBeEIsd0JBQXdCLDBwQkNqQnJDLG9xVUE0RU07MkZEM0RPLHdCQUF3QjtrQkFOcEMsU0FBUzsrQkFDRSxzQkFBc0IsbUJBR2YsdUJBQXVCLENBQUMsTUFBTTs4QkFHdEMsS0FBSztzQkFBYixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDSSxhQUFhO3NCQUF0QixNQUFNO2dCQUdFLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFDRyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBQ0ksb0JBQW9CO3NCQUE3QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IER5bmFtaWNTZWxlY3RGaWVsZENvbmZpZyB9IGZyb20gJy4uLy4uL2R5bmFtaWMtc2VsZWN0L2R5bmFtaWMtc2VsZWN0LWZpZWxkLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSGVhZGVyU2VsZWN0T3B0aW9uIHtcbiAgaWQ/OiBhbnk7XG4gIHZhbHVlPzogYW55O1xuICBuYW1lPzogc3RyaW5nO1xuICBsYWJlbD86IHN0cmluZztcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3FhLWRhc2hib2FyZC1oZWFkZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vZGFzaGJvYXJkLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogW10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBEYXNoYm9hcmRIZWFkZXJDb21wb25lbnQge1xuICBASW5wdXQoKSB0aXRsZTogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIGJhZGdlVGV4dD86IHN0cmluZztcbiAgQElucHV0KCkgYmFkZ2VDbGFzczogc3RyaW5nID0gJ2JnLVsjRDFGQUU1XSB0ZXh0LVsjMDY1RjQ2XSc7XG4gIEBJbnB1dCgpIGhlYWRlckNsYXNzOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgc2hvd0hlYWRlcjogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIHNob3dMb2dvOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgbG9nb1VybD86IHN0cmluZztcbiAgQElucHV0KCkgc2hvd0hlbHBJY29uOiBib29sZWFuID0gdHJ1ZTtcbiAgQE91dHB1dCgpIGhlbHBJY29uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgLy8gT3B0aW9uYWwgd29ya3NwYWNlIHNlbGVjdCBvbiB0aGUgcmlnaHRcbiAgQElucHV0KCkgd29ya3NwYWNlT3B0aW9uczogSGVhZGVyU2VsZWN0T3B0aW9uW10gPSBbXTtcbiAgQElucHV0KCkgd29ya3NwYWNlUGxhY2Vob2xkZXI6IHN0cmluZyA9ICdXb3Jrc3BhY2UnO1xuICBASW5wdXQoKSB3b3Jrc3BhY2VEaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSB3b3Jrc3BhY2VWYWx1ZT86IGFueTtcbiAgQElucHV0KCkgd29ya3NwYWNlTXVsdGlwbGU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgd29ya3NwYWNlU2VhcmNoYWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBzaG93V29ya3NwYWNlU2VsZWN0b3I6IGJvb2xlYW4gPSB0cnVlO1xuICBAT3V0cHV0KCkgd29ya3NwYWNlVmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICB3b3Jrc3BhY2VGb3JtOiBGb3JtR3JvdXAgPSBuZXcgRm9ybUdyb3VwKHtcbiAgICB3b3Jrc3BhY2U6IG5ldyBGb3JtQ29udHJvbCgpLFxuICB9KTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN5bmNGb3JtRnJvbUlucHV0KCk7XG4gICAgdGhpcy53b3Jrc3BhY2VGb3JtLmdldCgnd29ya3NwYWNlJyk/LnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHYpID0+IHtcbiAgICAgIHRoaXMud29ya3NwYWNlVmFsdWUgPSB2O1xuICAgICAgdGhpcy53b3Jrc3BhY2VWYWx1ZUNoYW5nZS5lbWl0KHYpO1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoX2NoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICB0aGlzLnN5bmNGb3JtRnJvbUlucHV0KCk7XG4gIH1cblxuICBnZXQgd29ya3NwYWNlQ29uZmlnKCk6IER5bmFtaWNTZWxlY3RGaWVsZENvbmZpZyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGtleTogJ3dvcmtzcGFjZScsXG4gICAgICBwbGFjZWhvbGRlcjogdGhpcy53b3Jrc3BhY2VQbGFjZWhvbGRlcixcbiAgICAgIGRpc2FibGVkOiB0aGlzLndvcmtzcGFjZURpc2FibGVkLFxuICAgICAgbXVsdGlwbGU6IHRoaXMud29ya3NwYWNlTXVsdGlwbGUsXG4gICAgICBzZWFyY2hhYmxlOiB0aGlzLndvcmtzcGFjZVNlYXJjaGFibGUsXG4gICAgICBzZWxlY3RlZFZhbHVlOiB0aGlzLndvcmtzcGFjZVZhbHVlLFxuICAgICAgb3B0aW9uczogdGhpcy53b3Jrc3BhY2VPcHRpb25zLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIHN5bmNGb3JtRnJvbUlucHV0KCk6IHZvaWQge1xuICAgIGNvbnN0IGN0cmwgPSB0aGlzLndvcmtzcGFjZUZvcm0uZ2V0KCd3b3Jrc3BhY2UnKTtcbiAgICBpZiAoIWN0cmwpIHJldHVybjtcbiAgICBjb25zdCB2YWwgPSB0aGlzLndvcmtzcGFjZVZhbHVlO1xuICAgIGNvbnN0IG5vcm1hbGl6ZWQgPSB0aGlzLndvcmtzcGFjZU11bHRpcGxlXG4gICAgICA/IEFycmF5LmlzQXJyYXkodmFsKSA/IHZhbCA6ICh2YWwgIT0gbnVsbCA/IFt2YWxdIDogW10pXG4gICAgICA6IChBcnJheS5pc0FycmF5KHZhbCkgPyAodmFsLmxlbmd0aCA/IHZhbFswXSA6IHVuZGVmaW5lZCkgOiB2YWwpO1xuICAgIGN0cmwuc2V0VmFsdWUobm9ybWFsaXplZCwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuICB9XG59XG5cblxuIiwiPGRpdiBpZD1cImNxYS11aS1yb290XCIgKm5nSWY9XCJzaG93SGVhZGVyXCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImNxYS13LWZ1bGwgY3FhLWZsZXggY3FhLWl0ZW1zLWNlbnRlciBjcWEtanVzdGlmeS1iZXR3ZWVuIGNxYS1iZy13aGl0ZSBjcWEtcHItNiBjcWEtcGwtMiBsZzpjcWEtcHgtNiBsZzpjcWEtcHktWzZweF0gY3FhLXB5LTIgY3FhLWJvcmRlci1iIGNxYS1ib3JkZXItZGVmYXVsdCBjcWEtc2hhZG93LWhlYWRlclwiXG4gICAgW25nQ2xhc3NdPVwiaGVhZGVyQ2xhc3NcIj5cbiAgICA8IS0tIExlZnQgYnJhbmRpbmcgYmxvY2sgLS0+XG4gICAgPGRpdiBjbGFzcz1cImNxYS1mbGV4IGNxYS1pdGVtcy1jZW50ZXIgY3FhLWdhcC0yIGNxYS1taW4tdy0wXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiY3FhLXByLTQgbGc6Y3FhLWhpZGRlbiBjcWEtZ2FwLTIgbWQ6Y3FhLWZsZXggY3FhLWhpZGRlblwiPlxuICAgICAgICA8IS0tIDxjcWEtYnV0dG9uIHZhcmlhbnQ9XCJmaWxsZWRcIiBpY29uPVwiXCIgW2N1c3RvbUNsYXNzXT1cIichY3FhLXJvdW5kZWQtWzEwcHhdICFjcWEtcC1bN3B4XSAhY3FhLW1pbi13LVs0N3B4XSdcIj5cbiAgICAgICAgICA8c3ZnIHdpZHRoPVwiMzFcIiBoZWlnaHQ9XCIyMlwiIHZpZXdCb3g9XCIwIDAgMzEgMjJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cbiAgICAgICAgICAgIDxwYXRoIGQ9XCJNNS4xNjY3NSAxMUgyNS44MzM0XCIgc3Ryb2tlPVwid2hpdGVcIiBzdHJva2Utd2lkdGg9XCIxLjgzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cbiAgICAgICAgICAgIDxwYXRoIGQ9XCJNNS4xNjY3NSAxNi41SDI1LjgzMzRcIiBzdHJva2U9XCJ3aGl0ZVwiIHN0cm9rZS13aWR0aD1cIjEuODMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxuICAgICAgICAgICAgPHBhdGggZD1cIk01LjE2Njc1IDUuNUgyNS44MzM0XCIgc3Ryb2tlPVwid2hpdGVcIiBzdHJva2Utd2lkdGg9XCIxLjgzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cbiAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgPC9jcWEtYnV0dG9uPiAtLT5cbiAgICAgICAgPCEtLSA8c3BhbiBjbGFzcz1cImNxYS1ib3JkZXItbCBjcWEtYm9yZGVyLXByaW1hcnktc3VyZmFjZSBjcWEtaGlkZGVuIG1kOmNxYS1mbGV4XCI+PC9zcGFuPiAtLT5cbiAgICAgICAgPGNxYS1idXR0b24gdmFyaWFudD1cImZpbGxlZFwiIGljb249XCJcIiBjbGFzcz1cImNxYS1oaWRkZW4gbWQ6Y3FhLWZsZXhcIiBbY3VzdG9tQ2xhc3NdPVwiJyFjcWEtcm91bmRlZC1bMTBweF0gIWNxYS1wLVs3cHhdICFjcWEtbWluLXctWzQ3cHhdJ1wiPlxuICAgICAgICAgIDxzdmcgd2lkdGg9XCIyMlwiIGhlaWdodD1cIjIyXCIgdmlld0JveD1cIjAgMCAyMiAyMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgICAgICAgICAgPHBhdGggZD1cIk00LjU4MzM3IDExSDE3LjQxNjdcIiBzdHJva2U9XCJ3aGl0ZVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxuICAgICAgICAgICAgPHBhdGggZD1cIk0xMSA0LjU4MzAxVjE3LjQxNjNcIiBzdHJva2U9XCJ3aGl0ZVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxuICAgICAgICAgIDwvc3ZnPlxuICAgICAgICA8L2NxYS1idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICAgIDwhLS0gT3B0aW9uYWwgcHJvamVjdGVkIGxvZ28gLS0+XG4gICAgICA8aW1nICpuZ0lmPVwic2hvd0xvZ28gJiYgbG9nb1VybFwiIFtzcmNdPVwibG9nb1VybFwiIGFsdD1cIkxvZ29cIiBjbGFzcz1cImNxYS13LTggY3FhLWgtOCBjcWEtb2JqZWN0LWNvbnRhaW5cIiAvPlxuICAgICAgPHN2ZyAqbmdJZj1cInNob3dMb2dvICYmICFsb2dvVXJsXCIgd2lkdGg9XCIzMlwiIGhlaWdodD1cIjMyXCIgdmlld0JveD1cIjAgMCAzMiAzMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICAgIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiPlxuICAgICAgICA8cmVjdCB4PVwiMC41XCIgeT1cIjAuNVwiIHdpZHRoPVwiMzFcIiBoZWlnaHQ9XCIzMVwiIHJ4PVwiMTUuNVwiIGZpbGw9XCJ1cmwoI3BhdHRlcm4wXzYzMDNfMjIwMzUpXCIgLz5cbiAgICAgICAgPHJlY3QgeD1cIjAuNVwiIHk9XCIwLjVcIiB3aWR0aD1cIjMxXCIgaGVpZ2h0PVwiMzFcIiByeD1cIjE1LjVcIiBzdHJva2U9XCIjRDhEOUZDXCIgLz5cbiAgICAgICAgPGRlZnM+XG4gICAgICAgICAgPHBhdHRlcm4gaWQ9XCJwYXR0ZXJuMF82MzAzXzIyMDM1XCIgcGF0dGVybkNvbnRlbnRVbml0cz1cIm9iamVjdEJvdW5kaW5nQm94XCIgd2lkdGg9XCIxXCIgaGVpZ2h0PVwiMVwiPlxuICAgICAgICAgICAgPHVzZSB4bGluazpocmVmPVwiI2ltYWdlMF82MzAzXzIyMDM1XCIgdHJhbnNmb3JtPVwic2NhbGUoMC4wMDUpXCIgLz5cbiAgICAgICAgICA8L3BhdHRlcm4+XG4gICAgICAgICAgPGltYWdlIGlkPVwiaW1hZ2UwXzYzMDNfMjIwMzVcIiB3aWR0aD1cIjIwMFwiIGhlaWdodD1cIjIwMFwiIHByZXNlcnZlQXNwZWN0UmF0aW89XCJub25lXCJcbiAgICAgICAgICAgIHhsaW5rOmhyZWY9XCJkYXRhOmltYWdlL2pwZWc7YmFzZTY0LC85ai80QUFRU2taSlJnQUJBUUFBQVFBQkFBRC8yd0NFQUFrR0J3OFNFQk1RRUJBU0VCQVFFQllSRlJVWEZSQVJFUkFTR1JrV0d4WVhHQlVZSGlnc0dCb21HeFVZSVRFaEpTa3JMam91R1NBek9ETXNOeWd0TGpjQkNnb0tEZzBPR3hBUUd5NGRJQ1VyTnkwckt5c3JNRGN0TGlzdkxTMHRLeTB0TFRjdUxTMHRNRGN0TmkwdExTc3RMUzByTFMwckxURXRMUzB0TFMwdExmL0FBQkVJQU1nQXlBTUJJZ0FDRVFFREVRSC94QUFjQUFFQUFnSURBUUFBQUFBQUFBQUFBQUFBQlFZQ0J3RURCQWoveEFCQkVBQUJBd0lDQXdzS0JRVUFBd0VBQUFBQkFBSURCQkVGSVFZU1FRY2lNVkZTWVhHQmthSFJFeFFXSXpKVWtxS3h3UmRDWW5LeVU0TEM0ZkFrTlBFVi84UUFHd0VCQUFJREFRRUFBQUFBQUFBQUFBQUFBQUlEQVFRRkJnZi94QUF1RVFBQ0FRSUVBd1lHQXdBQUFBQUFBQUFBQVFJREVRUVNJVkVUTVVFRlVtR0JrYkVVSWpKQ2NjRVZvZEgvMmdBTUF3RUFBaEVERVFBL0FONG9pSUFpSWdDSWlBSWlJQWlJZ0NJaUFJaUlBaUlnQ0lpQUlpSUFpSWdDSWlBSWlJQWlJZ0NJaUFJaUlBaUlnQ0lpQUlpSUFpSWdDSWlBSWlJQWlJZ0NJaUFJaUlBaUlnQ0lpQUlpSUFpSWdDSWlBSWlJQWlJZ0NJaUFJaUlBaUlnQ0lpQUlpSUFpSWdDSWlBODFYSzVqZGNEV0RjM0RhVzhZNXh3cmt5RnpOZUlnM0YybjhydVpkNnIvQUpielNvMURsVHptN2VLTiszcXo3MUtLdVJic1MxSlZpVmhMYnRJSmE0SDJtT0hDQ0YxVU5mclBkQyt6Wm83YXd6czVwNEh0dnNQZHdLTXh3dXBwUlZ4aTdIRU1tYnloK1YzU3VOSTRUSkV5dHBUNjZBYTdDUHp4bjJtbmp5MkthZ3ZKKzVqTXlTOC8xSnhCTGw1UzVoZHNmYk56RHhPSGVPdGNZamlCZ2MxOG4vcnZJYTUzOUYvNVNmMGs1WDJHM0dvOXpvc1NvcnNPby9oQnoxb1ptOEdmL1pGZE9qT0xDc2hrcGFwdnI0d1k1bUcyL0dZMWdtVHErbk1aaUQwOGJpZE5lb3BxcVYxT1R2bTcwbUhydG0xVWYwMHhQM3VUNVBCYkkwYnIzUXp2d21yT3ZxajFEbldQbFlpQ2RVOVgzQ29XbnVpNW9wdGFNRTA4cEpadzd3N1dIN0xjb09OOGtrdkI3bE03ODBlVDAweFAzdVQ1UEJQVFRFL2U1UGs4RkFJdHZoUTJSVm5lNVA4QXBwaWZ2Y255ZUNlbW1KKzl5Zko0S0FST0ZEWkRPOXl6MEdubUl4eU5lNll5dEJ6WTROMVhEYUxnWkhuVzRjQXhxR3JoRTBKeU9UbS9tWTdhQ3ZuZFRlaWVrTWxGT0pHM01ic3BHY3R2SHpFY0sxNitHVWxlSzFKMDZqVDFQb0JWVFRLbXJtdE05Sk84Qm91Nk1XT1hHMjQ3bFk2S3FaTEcyV04yc3g3UTVwNHd1OWNxVWJxeDBLRlhoVFU3SitETkxlbGVJZTh2K1h3VDByeEQzbC95K0NtOVA5R3ZKT05UQzMxVHp2d09CanVQb0pWS1hPbTV3ZG16MnVGamhjUlRVNHdYb2lhOUs4UTk1ZjhBTDRKNlY0aDd5LzVmQlFxS0dlVzVzZkNVTzR2UkUxNlY0aDd5L3dDWHdXVWVsMWVDRDV3NDJQQVEwZzlPU2cwV2M4dHc4SFE3aTlFYm8wWDBoanE0OVliMlZ2dHM0dWNjWVU0dEQ0VmlNbFBLMmFJMmMwOVRodEJXNk1FeFNPcGhiTEh3RVpqYTEyMEZidEdyblZuelBKOXFkblBEU3pSK2wvMTRFaWlJcnprbkNqc2VvZkxRT2FQYUcrYjBqL3JLU1hDeW5aM01OWFZpdVlCVk5xYWQxUExtV3QxZWN0MkhwQzhPaVZhNktWOUZLZUJ4MVAzYlIwRVpycG1kNXJYRWpKaGRmK3gzRDMvUllhYlFtS29qcUdaRjR2ZjliYmZheTIxRk41ZWoxOHltN3RmWTgwVTMvd0NiaVRvemxUVGtIbUFQQWY3WFhIUXNkTm8zMFZiRmlFSXlrTm5qWVNBTGcvdWIvRmVyVHlKczlIRFZ0SHMydnpOZFlFZFRnRWE3ejdCM3RPY3NEZXZXWm1PMXVYV1ZKZEp2OE14dXZOR0c2RFRDZWxoeEduTytoczRPSERxRWp2YTc3cVVvcElzV3c0dGZZT2NOVjNISEszZ2NPNDlhaE56ZXNFMVBOUXk1dDFTV2o5RHJodzZqbi9jb3ZjN3JYVXRlK2trT1VyakdlTHlqTDJQV0xqckN3NE5SY2VzZFYrREtscW51VVN1cEh3eVBpa0ZueHVMWERuSDFDNkZzVGRld2dObGpxMmpLVWFqL0FON1J2VDF0L2l0ZHJlcFR6d1VpaWNiT3dSRVZoRUlpSURZdTVQcENXeUdpa085a3U2TDlMOHk1dlFSbjFjNjJzdm1tbW5kRzlzakRaN0hCd1BFUXZvWEI4V2luZ2puRG1qeWpBNjF4a2RvN2JybVl1bGFXWmRUWm95dXJNOWRYVE1rWTZONHUxNExTT01MU1dQWVc2bXFId3V6MVRkcDVUVHdGYnY4QU9HY3R2YUZTZDB1aFpKQzJvWVdsMFIxWFdJdVdPc080MjdWek1SVGNvMzJPOTJOaStGWHlONlM5K2hyVkVSYzg5bUVSRUFWbjBFeHcwOVFHUE5vWmlHdTRtdS9LNzdLc0xsU2hKeGQwVTRpaEd0VGNKZFQ2RHVpZ3REY1VOUlNNYzQzZTBhanVrYmVzV1BXdVYxSXU2dWo1L1ZwdW5Od2x6Uk9vaUxKV1ZEVGVIZlJ2NHdXOWxyZlZZWTU2M0RZNWRzWkYrMHNQZlplN1RadnFtSGlrK29LOEVHK3d1WWNrbjZ0SzI0UDVZdlpsRXZxYU9uQmZYWWJVd0hQVURpUDVOK1lLTzNNcXEwMHNKNEpJOWEzTzMvVHU1U0dnSnVaMmJITWIzYXcrNnJtZ2o5WEVJaHg2N2ZrZDRLNXJTb3ZNaGZXTE9qUm1UelhGV3N2Wm9tZkNlY0c0SGZaWWFkdE5QaXJwV1pHOGM3ZW13djN0S3gwa1BrOFZrSS9MVU5kL0VyMzdyYkxWY1I0NFA4bkthMW5GN29qOXI4R1hMVHVtYlVZWks1dWRtTm5iMVdQOGI5cTBXdCtZUjZ6Q21BNTY5SnEvSlphRFdNSnBtanN5VmJvd2lJdHdwQ0lpQUlpSUFzbzNXSVBFVmlpaktLYXN5ZE9iakpTWFJrdWk0ak9RNkF1VjQyU3MyajZwVGxtZ251Z2lJb2t3aUlnTDV1VjFscEpvU2NuTkR4MGpJL1VkaUtLM09wQ0s5ZzVUSGp1djlseXVqaDNlQjR2dHVDaGltOTFmOUczVVJGY2Nrcldtei9WUmpqZVQyQStLOEVPOXd1WThvLzVOQ3owMm12Skd6a3RKN2Y4QTRzZElmVTRmRkR0ZVJjZHJqM2tMYmd2bGl0MlVTK3BzNk5Bc2pPODhEV0QvQUNQMlZjMERZWFloRWVJUGNmZ2Q5eXJKaGZxTUxxSmprWkFRUDREdkpVZnVaMDNySnAzWk5qWUczNmJrOXpWYzVhVkg1RUV0WW9yMmtJOHBpc2dHZXRVdFozdEgyWHYzVzVMMWNiZVRBTzl6bDU5RW9qVTRvMlFqTHlqNTNjd0Z5UG1JWFZwbVRWWXM2Sm1lL1pBM3NBUHpYVmkwbWxzakgydnhac2pDL1ZZVXduTFVvOWI1THJRYTNsdWdWYmFmRFpHdHlMMnRnWU9td1B5Z3JScWpoTlZLVzdNMXVpQ0lpM0NrSWlJQWlLVW90SGEyWmdraXA1SkkzWHM0REkySkgxQ3c1SmN4YS9JaTBVMzZJNGo3cEw4S3duMFpybzJsOGxOSXlOdnRPSXNBRkNWV0NUZHl5blRsS1NpbHpaakdNaDBMbEVYanBPOG16NnBUamxpbHNnaUlzRWdpSWdMUnVjeDNyMm5rc2VlNjMzUlMrNVhSNzZhY2pJQVJ0N3k3N0l1amhsYUI0dnRxYW5pbjRLMzdOakxoRkZhU1Yza29UYjI1TjQzN25zVjhWZDJPUTNaWEs5R3p6dXVKNFdCMXp4YWpiZlg3cnEwdmtkUFZzcDJabGxtLzNPelBkWlRlRzA3YU9sZExKN1pHczcvRnYvY2E4ZWlWQWJ2clp2YWZjdHZzR2VzNWJTa2s4MjJpS2JQbHVSMjZETzJHbmhvMmJjeisxdkIyazl5eXJHZVlZT1duS2FjV1BIclA0UjFNK2k2OElwamlGZStyZVA4QXg0WEFNQjRIVzlrRCtSNlF1clNWcnNSeEJsSEdmVTArY2pod0FtMnQxNUJ2U3BxMmtIMDFaamQrU010QUtWdExSelY4bzlwcExmMk52OVQ5RkY3bWVIT25xNUsyUVhFWkpCNDVYMytnSjdRcGpkQnFDV3dZWFN0MzhwYmRvMk1iYlZIUmNYL3RVbldUdzRSaHdhTE9lQlpvMnl6SGhQUmZQb0N3NXRwdGM1ZXhsSmFiSXB1NjFqSWtuWlNzTzlwODM4OGpnUG8zNmxVRmRsUk01N25QZVM1ejNGeE8wa3JyVzlTaGtpb2xFbmQzQ0lpc0loRVJBZWlncEh6U3NoakYzeU9EUU9jL1pmUk9GMExZSVk0V2V6R3dOSFBiYjJxZ2JsT2paYVBQcFc1dUJiQ09KdkE1L1h3ZHEyU3VYaTZ1YVdWZERhb3hzcmhVUGRQeFd6R1VyVG04NjcrWm85a2R2MFZ4eFN2WkJFNmFRMmF3WDV6eEFjOTFwSEZhOTlSTStaL3RQZGUzRU5nN0Z6TVJVeXh0dWVnN0Z3YnExZUkrVWZjOGlJaTBEMkFSRVFCY2dYeUdaNEZ3cmp1ZVlDWlpmT0pCNnFJNzNpZkovcjZxVUl1VHNhK0t4RWFGSjFKRjcwVXd2emFsampQdDIxbmZ1T1o3T0RxUlRDTHFKV1ZrZUFxVGRTYm0rYk9IRUFYUEFGQzBsT1o1dk9YajFiTW9XbmIrc3FWcUlkY2FwOW44dzVYTjBMS1ZoTGJOT3JzdnhkQ21uYmtWdFhJVEVJVFZ6Q0xncDRYWGtQOEFVZnlSMExIU0l2bDFhR24zcnBCNnh3NElZZkU4QUhTcHVHRnJHYWpBQUFNaG4zckdrcEdzdWVGN3pyUGNlRjUrdzJXVWxPM2x5STVTSnIzQ2pwbXdVekx6UDlYQzNLN243WEcrd2NKSzY4TG9ZY09wSHlTSFdmN2NyL3pTU0hJQWNlWnNPbFRFVklQS0dWMitrSTFRZGpHY2x2MUovd0JMaWFqRDVHUGZtMk0zWTNacjhvOFpHeE0vVDFNNVN1WVBSQ25FMkoxNURaNVJyRytma0djRFdEak5yRHVXcnRMZElwSzJjeU91Mk51OWpaeUc3VHprbGJBMHkwY3hPdWtzSHhNcDJIZU0xblpubE9Oc3o5Rlcvd0FMNi9sdy9FN3dXNVFsVFh6U2V2c1VUVW5vbG9VZEZlUHd2citYRDhUdkJQd3ZyK1hEOFR2QmJQeEZQdkZmRGxzVWRGZVB3dnIrWEQ4VHZCUHd2citYRDhUdkJQaUtmZUhEbHNVZFd2UVRSTjFaTHJ5QWltak8rUDhBVVBJQitxbHNPM0xxa3lOOHZKRzJLKysxQ1M0amlGeDNyYU5CUnh3eHRpaWFHUnNGZ0JzVkZmRkpLMEdXUXBPOTJkMGNZYUExb0FhQllBWkFBSkxJR2d1Y1FBQmNrOEFDektxdWwyRjExVjZxRnpHUWJidU90SWVldzRPWmN1VGFWMXFiMUNuR2MxR1R5cmRsTDAwMGtOVkpxUm0wRVozdjZ6eWo5bFdWYi93OXJlVkY4VHZCUHc5cmVWRjhUdkJhRXFkU1R1MGV4b1l6QlVLYWhDYXNpb0lyZitIdGJ5b3ZpZDRKK0h0YnlvdmlkNEtQQm5zWGZ5ZUY3NktnaXQvNGUxdktpK0ozZ3NvdHp5ckpHcytNTnZtUVhFZ2RGbG5nejJNUHRQQzk5RUpvNWdjbFhLR055WU0zdTJOYjRyY3RCUnh3eHRpamJxc1lMQUxwd2JDb3FhSVJSQ3dIQ2RyanhrcjNyY3BVc2k4VHkzYU9QbGlwNmFSWEwvVGxFUlhITkNJaUFJaUlBaUlnQ0lpQUlpSUFpSWdDSWlBSWlJQWlJZ0NJaUFJaUlBaUlnQ0lpQUlpSUFpSWdDSWlBSWlJQWlJZ0NJaUFJaUlBaUlnQ0lpQUlpSUFpSWdDSWlBSWlJQWlJZ0NJaUFJaUlBaUlnQ0lpQUlpSUFpSWdDSWlBSWlJQWlJZ0NJaUFJaUlBaUlnQ0lpQUlpSUFpSWdDSWlBSWlJQWlJZ0NJaUFJaUlBaUlnQ0lpQUlpSUFpSWdDSWlBLzlrPVwiIC8+XG4gICAgICAgIDwvZGVmcz5cbiAgICAgIDwvc3ZnPlxuXG4gICAgICA8IS0tIFRpdGxlICsgb3B0aW9uYWwgYmFkZ2UgLS0+XG4gICAgICA8ZGl2IGNsYXNzPVwiY3FhLWl0ZW1zLWVuZCBjcWEtZ2FwLTMgY3FhLW1pbi13LTAgY3FhLWhpZGRlbiBtZDpjcWEtZmxleFwiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJjcWEtdHJ1bmNhdGUgY3FhLXRleHQtWyMyMjIyM0JdIGNxYS1mb250LWV4dHJhYm9sZCBjcWEtdGV4dC1bMzJweF0gY3FhLWZvbnQtbnVuaXRvLXNhbnMgY3FhLWxlYWRpbmctWzFdXCI+XG4gICAgICAgICAge3sgdGl0bGUgfX08L2Rpdj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCJiYWRnZVRleHRcIlxuICAgICAgICAgIGNsYXNzPVwiY3FhLXB4LTIgY3FhLXB5LVsycHhdIGNxYS1yb3VuZGVkLWxnIGNxYS10ZXh0LVsxMnB4XSBjcWEtZm9udC1tZWRpdW0gY3FhLWxlYWRpbmctNCBjcWEtd2hpdGVzcGFjZS1ub3dyYXAgY3FhLXRleHQtWyMwMDdBNTVdIGNxYS1iZy1bI0QwRkFFNV0gY3FhLWJvcmRlciBjcWEtYm9yZGVyLVsjQTRGNENGXVwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwiYmFkZ2VDbGFzc1wiPnt7IGJhZGdlVGV4dCB9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPCEtLSBSaWdodCBjb250cm9scy9hY3Rpb25zIC0tPlxuICAgIDxkaXYgY2xhc3M9XCJjcWEtZmxleCBjcWEtaXRlbXMtY2VudGVyIGNxYS1nYXAtMyBjcWEtZmxleC0xIGNxYS1qdXN0aWZ5LWVuZFwiPlxuICAgICAgPCEtLSBPcHRpb25hbCB3b3Jrc3BhY2Ugc2VsZWN0IC0tPlxuICAgICAgPGRpdiAqbmdJZj1cInNob3dXb3Jrc3BhY2VTZWxlY3RvciAmJiB3b3Jrc3BhY2VPcHRpb25zPy5sZW5ndGhcIiBjbGFzcz1cImhlYWRlci1kcm9wZG93blwiPlxuICAgICAgICA8Y3FhLWR5bmFtaWMtc2VsZWN0IFtmb3JtXT1cIndvcmtzcGFjZUZvcm1cIiBbY29uZmlnXT1cIndvcmtzcGFjZUNvbmZpZ1wiPlxuICAgICAgICA8L2NxYS1keW5hbWljLXNlbGVjdD5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8IS0tIEhlbHAgaWNvbiBidXR0b24gLS0+XG4gICAgICA8YnV0dG9uICpuZ0lmPVwic2hvd0hlbHBJY29uXCIgbWF0LWljb24tYnV0dG9uIGFyaWEtbGFiZWw9XCJIZWxwXCIgKGNsaWNrKT1cImhlbHBJY29uQ2xpY2suZW1pdCgpXCIgY2xhc3M9XCJjcWEtZmxleCBjcWEtaXRlbXMtY2VudGVyXCI+XG4gICAgICAgIDxtYXQtaWNvbiBzdHlsZT1cImhlaWdodDogMzZweDsgd2lkdGg6IDM2cHg7XCI+XG4gICAgICAgICAgPHN2ZyB3aWR0aD1cIjM2XCIgaGVpZ2h0PVwiMzZcIiB2aWV3Qm94PVwiMCAwIDM2IDM2XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gICAgICAgICAgICA8cGF0aCBkPVwiTTAgMThDMCA4LjA1ODg4IDguMDU4ODggMCAxOCAwQzI3Ljk0MTEgMCAzNiA4LjA1ODg4IDM2IDE4QzM2IDI3Ljk0MTEgMjcuOTQxMSAzNiAxOCAzNkM4LjA1ODg4IDM2IDAgMjcuOTQxMSAwIDE4WlwiIGZpbGw9XCIjRDhEOUZDXCIgZmlsbC1vcGFjaXR5PVwiMC4zXCIvPlxuICAgICAgICAgICAgPHBhdGggZD1cIk0xOC4wMDAxIDI4LjQxNjNDMjMuOTgzMiAyOC40MTYzIDI4LjgzMzQgMjMuNzUyNiAyOC44MzM0IDE3Ljk5OTdDMjguODMzNCAxMi4yNDY3IDIzLjk4MzIgNy41ODMwMSAxOC4wMDAxIDcuNTgzMDFDMTIuMDE3IDcuNTgzMDEgNy4xNjY3NSAxMi4yNDY3IDcuMTY2NzUgMTcuOTk5N0M3LjE2Njc1IDIzLjc1MjYgMTIuMDE3IDI4LjQxNjMgMTguMDAwMSAyOC40MTYzWlwiIHN0cm9rZT1cIiMzRjQzRUVcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxuICAgICAgICAgICAgPHBhdGggZD1cIk0xNC44NDc0IDE0Ljg3NTFDMTUuMTAyMSAxNC4xNzg5IDE1LjYwNDggMTMuNTkxOSAxNi4yNjY1IDEzLjIxOEMxNi45MjgyIDEyLjg0NCAxNy43MDYyIDEyLjcwNzMgMTguNDYyNyAxMi44MzIxQzE5LjIxOTIgMTIuOTU2OSAxOS45MDUzIDEzLjMzNSAyMC4zOTk2IDEzLjg5OTZDMjAuODkzOSAxNC40NjQyIDIxLjE2NDQgMTUuMTc4OCAyMS4xNjMyIDE1LjkxNjhDMjEuMTYzMiAxOC4wMDAxIDE3LjkxMzIgMTkuMDQxOCAxNy45MTMyIDE5LjA0MThcIiBzdHJva2U9XCIjM0Y0M0VFXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cbiAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTggMjMuMjA4SDE4LjAxXCIgc3Ryb2tlPVwiIzNGNDNFRVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XG4gICAgICAgICAgPC9zdmc+XG4gICAgICAgIDwvbWF0LWljb24+XG4gICAgICA8L2J1dHRvbj5cblxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PiJdfQ==
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2Rhc2hib2FyZHMvZGFzaGJvYXJkLWhlYWRlci9kYXNoYm9hcmQtaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZGFzaGJvYXJkcy9kYXNoYm9hcmQtaGVhZGVyL2Rhc2hib2FyZC1oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ2xJLE9BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7QUFnQnhELE1BQU0sT0FBTyx3QkFBd0I7SUFOckM7UUFPVyxVQUFLLEdBQVcsRUFBRSxDQUFDO1FBRW5CLGVBQVUsR0FBVyw2QkFBNkIsQ0FBQztRQUNuRCxnQkFBVyxHQUFXLEVBQUUsQ0FBQztRQUN6QixlQUFVLEdBQVksSUFBSSxDQUFDO1FBQzNCLGFBQVEsR0FBWSxJQUFJLENBQUM7UUFFekIsaUJBQVksR0FBWSxJQUFJLENBQUM7UUFDNUIsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBRW5ELHlDQUF5QztRQUNoQyxxQkFBZ0IsR0FBeUIsRUFBRSxDQUFDO1FBQzVDLHlCQUFvQixHQUFXLFdBQVcsQ0FBQztRQUMzQyxzQkFBaUIsR0FBWSxLQUFLLENBQUM7UUFFbkMsc0JBQWlCLEdBQVksS0FBSyxDQUFDO1FBQ25DLHdCQUFtQixHQUFZLEtBQUssQ0FBQztRQUNyQywwQkFBcUIsR0FBWSxJQUFJLENBQUM7UUFDckMseUJBQW9CLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUMvQyx5QkFBb0IsR0FBRyxJQUFJLFlBQVksRUFBUSxD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QUE3QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IER5bmFtaWNTZWxlY3RGaWVsZENvbmZpZyB9IGZyb20gJy4uLy4uL2R5bmFtaWMtc2VsZWN0L2R5bmFtaWMtc2VsZWN0LWZpZWxkLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSGVhZGVyU2VsZWN0T3B0aW9uIHtcbiAgaWQ/OiBhbnk7XG4gIHZhbHVlPzogYW55O1xuICBuYW1lPzogc3RyaW5nO1xuICBsYWJlbD86IHN0cmluZztcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3FhLWRhc2hib2FyZC1oZWFkZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vZGFzaGJvYXJkLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogW10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBEYXNoYm9hcmRIZWFkZXJDb21wb25lbnQge1xuICBASW5wdXQoKSB0aXRsZTogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIGJhZGdlVGV4dD86IHN0cmluZztcbiAgQElucHV0KCkgYmFkZ2VDbGFzczogc3RyaW5nID0gJ2JnLVsjRDFGQUU1XSB0ZXh0LVsjMDY1RjQ2XSc7XG4gIEBJbnB1dCgpIGhlYWRlckNsYXNzOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgc2hvd0hlYWRlcjogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIHNob3dMb2dvOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgbG9nb1VybD86IHN0cmluZztcbiAgQElucHV0KCkgc2hvd0hlbHBJY29uOiBib29sZWFuID0gdHJ1ZTtcbiAgQE91dHB1dCgpIGhlbHBJY29uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgLy8gT3B0aW9uYWwgd29ya3NwYWNlIHNlbGVjdCBvbiB0aGUgcmlnaHRcbiAgQElucHV0KCkgd29ya3NwYWNlT3B0aW9uczogSGVhZGVyU2VsZWN0T3B0aW9uW10gPSBbXTtcbiAgQElucHV0KCkgd29ya3NwYWNlUGxhY2Vob2xkZXI6IHN0cmluZyA9ICdXb3Jrc3BhY2UnO1xuICBASW5wdXQoKSB3b3Jrc3BhY2VEaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSB3b3Jrc3BhY2VWYWx1ZT86IGFueTtcbiAgQElucHV0KCkgd29ya3NwYWNlTXVsdGlwbGU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgd29ya3NwYWNlU2VhcmNoYWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBzaG93V29ya3NwYWNlU2VsZWN0b3I6IGJvb2xlYW4gPSB0cnVlO1xuICBAT3V0cHV0KCkgd29ya3NwYWNlVmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgQE91dHB1dCgpIHdvcmtzcGFjZVNlbGVjdENsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIHdvcmtzcGFjZUZvcm06IEZvcm1Hcm91cCA9IG5ldyBGb3JtR3JvdXAoe1xuICAgIHdvcmtzcGFjZTogbmV3IEZvcm1Db250cm9sKCksXG4gIH0pO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3luY0Zvcm1Gcm9tSW5wdXQoKTtcbiAgICB0aGlzLndvcmtzcGFjZUZvcm0uZ2V0KCd3b3Jrc3BhY2UnKT8udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgodikgPT4ge1xuICAgICAgdGhpcy53b3Jrc3BhY2VWYWx1ZSA9IHY7XG4gICAgICB0aGlzLndvcmtzcGFjZVZhbHVlQ2hhbmdlLmVtaXQodik7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhfY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIHRoaXMuc3luY0Zvcm1Gcm9tSW5wdXQoKTtcbiAgfVxuXG4gIGdldCB3b3Jrc3BhY2VDb25maWcoKTogRHluYW1pY1NlbGVjdEZpZWxkQ29uZmlnIHtcbiAgICByZXR1cm4ge1xuICAgICAga2V5OiAnd29ya3NwYWNlJyxcbiAgICAgIHBsYWNlaG9sZGVyOiB0aGlzLndvcmtzcGFjZVBsYWNlaG9sZGVyLFxuICAgICAgZGlzYWJsZWQ6IHRoaXMud29ya3NwYWNlRGlzYWJsZWQsXG4gICAgICBtdWx0aXBsZTogdGhpcy53b3Jrc3BhY2VNdWx0aXBsZSxcbiAgICAgIHNlYXJjaGFibGU6IHRoaXMud29ya3NwYWNlU2VhcmNoYWJsZSxcbiAgICAgIHNlbGVjdGVkVmFsdWU6IHRoaXMud29ya3NwYWNlVmFsdWUsXG4gICAgICBvcHRpb25zOiB0aGlzLndvcmtzcGFjZU9wdGlvbnMsXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgc3luY0Zvcm1Gcm9tSW5wdXQoKTogdm9pZCB7XG4gICAgY29uc3QgY3RybCA9IHRoaXMud29ya3NwYWNlRm9ybS5nZXQoJ3dvcmtzcGFjZScpO1xuICAgIGlmICghY3RybCkgcmV0dXJuO1xuICAgIGNvbnN0IHZhbCA9IHRoaXMud29ya3NwYWNlVmFsdWU7XG4gICAgY29uc3Qgbm9ybWFsaXplZCA9IHRoaXMud29ya3NwYWNlTXVsdGlwbGVcbiAgICAgID8gQXJyYXkuaXNBcnJheSh2YWwpID8gdmFsIDogKHZhbCAhPSBudWxsID8gW3ZhbF0gOiBbXSlcbiAgICAgIDogKEFycmF5LmlzQXJyYXkodmFsKSA/ICh2YWwubGVuZ3RoID8gdmFsWzBdIDogdW5kZWZpbmVkKSA6IHZhbCk7XG4gICAgY3RybC5zZXRWYWx1ZShub3JtYWxpemVkLCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gIH1cbn1cblxuXG4iLCI8ZGl2IGlkPVwiY3FhLXVpLXJvb3RcIiAqbmdJZj1cInNob3dIZWFkZXJcIj5cbiAgPGRpdlxuICAgIGNsYXNzPVwiY3FhLXctZnVsbCBjcWEtZmxleCBjcWEtaXRlbXMtY2VudGVyIGNxYS1qdXN0aWZ5LWJldHdlZW4gY3FhLWJnLXdoaXRlIGNxYS1wci02IGNxYS1wbC0yIGxnOmNxYS1weC02IGxnOmNxYS1weS1bNnB4XSBjcWEtcHktMiBjcWEtYm9yZGVyLWIgY3FhLWJvcmRlci1kZWZhdWx0IGNxYS1zaGFkb3ctaGVhZGVyXCJcbiAgICBbbmdDbGFzc109XCJoZWFkZXJDbGFzc1wiPlxuICAgIDwhLS0gTGVmdCBicmFuZGluZyBibG9jayAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiY3FhLWZsZXggY3FhLWl0ZW1zLWNlbnRlciBjcWEtZ2FwLTIgY3FhLW1pbi13LTBcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjcWEtcHItNCBsZzpjcWEtaGlkZGVuIGNxYS1nYXAtMiBtZDpjcWEtZmxleCBjcWEtaGlkZGVuXCI+XG4gICAgICAgIDwhLS0gPGNxYS1idXR0b24gdmFyaWFudD1cImZpbGxlZFwiIGljb249XCJcIiBbY3VzdG9tQ2xhc3NdPVwiJyFjcWEtcm91bmRlZC1bMTBweF0gIWNxYS1wLVs3cHhdICFjcWEtbWluLXctWzQ3cHhdJ1wiPlxuICAgICAgICAgIDxzdmcgd2lkdGg9XCIzMVwiIGhlaWdodD1cIjIyXCIgdmlld0JveD1cIjAgMCAzMSAyMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgICAgICAgICAgPHBhdGggZD1cIk01LjE2Njc1IDExSDI1LjgzMzRcIiBzdHJva2U9XCJ3aGl0ZVwiIHN0cm9rZS13aWR0aD1cIjEuODMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxuICAgICAgICAgICAgPHBhdGggZD1cIk01LjE2Njc1IDE2LjVIMjUuODMzNFwiIHN0cm9rZT1cIndoaXRlXCIgc3Ryb2tlLXdpZHRoPVwiMS44MzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XG4gICAgICAgICAgICA8cGF0aCBkPVwiTTUuMTY2NzUgNS41SDI1LjgzMzRcIiBzdHJva2U9XCJ3aGl0ZVwiIHN0cm9rZS13aWR0aD1cIjEuODMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxuICAgICAgICAgIDwvc3ZnPlxuICAgICAgICA8L2NxYS1idXR0b24+IC0tPlxuICAgICAgICA8IS0tIDxzcGFuIGNsYXNzPVwiY3FhLWJvcmRlci1sIGNxYS1ib3JkZXItcHJpbWFyeS1zdXJmYWNlIGNxYS1oaWRkZW4gbWQ6Y3FhLWZsZXhcIj48L3NwYW4+IC0tPlxuICAgICAgICA8Y3FhLWJ1dHRvbiB2YXJpYW50PVwiZmlsbGVkXCIgaWNvbj1cIlwiIGNsYXNzPVwiY3FhLWhpZGRlbiBtZDpjcWEtZmxleFwiIFtjdXN0b21DbGFzc109XCInIWNxYS1yb3VuZGVkLVsxMHB4XSAhY3FhLXAtWzdweF0gIWNxYS1taW4tdy1bNDdweF0nXCI+XG4gICAgICAgICAgPHN2ZyB3aWR0aD1cIjIyXCIgaGVpZ2h0PVwiMjJcIiB2aWV3Qm94PVwiMCAwIDIyIDIyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gICAgICAgICAgICA8cGF0aCBkPVwiTTQuNTgzMzcgMTFIMTcuNDE2N1wiIHN0cm9rZT1cIndoaXRlXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XG4gICAgICAgICAgICA8cGF0aCBkPVwiTTExIDQuNTgzMDFWMTcuNDE2M1wiIHN0cm9rZT1cIndoaXRlXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XG4gICAgICAgICAgPC9zdmc+XG4gICAgICAgIDwvY3FhLWJ1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPCEtLSBPcHRpb25hbCBwcm9qZWN0ZWQgbG9nbyAtLT5cbiAgICAgIDxpbWcgKm5nSWY9XCJzaG93TG9nbyAmJiBsb2dvVXJsXCIgW3NyY109XCJsb2dvVXJsXCIgYWx0PVwiTG9nb1wiIGNsYXNzPVwiY3FhLXctOCBjcWEtaC04IGNxYS1vYmplY3QtY29udGFpblwiIC8+XG4gICAgICA8c3ZnICpuZ0lmPVwic2hvd0xvZ28gJiYgIWxvZ29VcmxcIiB3aWR0aD1cIjMyXCIgaGVpZ2h0PVwiMzJcIiB2aWV3Qm94PVwiMCAwIDMyIDMyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgeG1sbnM6eGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCI+XG4gICAgICAgIDxyZWN0IHg9XCIwLjVcIiB5PVwiMC41XCIgd2lkdGg9XCIzMVwiIGhlaWdodD1cIjMxXCIgcng9XCIxNS41XCIgZmlsbD1cInVybCgjcGF0dGVybjBfNjMwM18yMjAzNSlcIiAvPlxuICAgICAgICA8cmVjdCB4PVwiMC41XCIgeT1cIjAuNVwiIHdpZHRoPVwiMzFcIiBoZWlnaHQ9XCIzMVwiIHJ4PVwiMTUuNVwiIHN0cm9rZT1cIiNEOEQ5RkNcIiAvPlxuICAgICAgICA8ZGVmcz5cbiAgICAgICAgICA8cGF0dGVybiBpZD1cInBhdHRlcm4wXzYzMDNfMjIwMzVcIiBwYXR0ZXJuQ29udGVudFVuaXRzPVwib2JqZWN0Qm91bmRpbmdCb3hcIiB3aWR0aD1cIjFcIiBoZWlnaHQ9XCIxXCI+XG4gICAgICAgICAgICA8dXNlIHhsaW5rOmhyZWY9XCIjaW1hZ2UwXzYzMDNfMjIwMzVcIiB0cmFuc2Zvcm09XCJzY2FsZSgwLjAwNSlcIiAvPlxuICAgICAgICAgIDwvcGF0dGVybj5cbiAgICAgICAgICA8aW1hZ2UgaWQ9XCJpbWFnZTBfNjMwM18yMjAzNVwiIHdpZHRoPVwiMjAwXCIgaGVpZ2h0PVwiMjAwXCIgcHJlc2VydmVBc3BlY3RSYXRpbz1cIm5vbmVcIlxuICAgICAgICAgICAgeGxpbms6aHJlZj1cImRhdGE6aW1hZ2UvanBlZztiYXNlNjQsLzlqLzRBQVFTa1pKUmdBQkFRQUFBUUFCQUFELzJ3Q0VBQWtHQnc4U0VCTVFFQkFTRUJBUUVCWVJGUlVYRlJBUkVSQVNHUmtXR3hZWEdCVVlIaWdzR0JvbUd4VVlJVEVoSlNrckxqb3VHU0F6T0RNc055Z3RMamNCQ2dvS0RnME9HeEFRR3k0ZElDVXJOeTByS3lzck1EY3RMaXN2TFMwdEt5MHRMVGN1TFMwdE1EY3ROaTB0TFNzdExTMHJMUzByTFRFdExTMHRMUzB0TGYvQUFCRUlBTWdBeUFNQklnQUNFUUVERVFIL3hBQWNBQUVBQWdJREFRQUFBQUFBQUFBQUFBQUFCUVlDQndFREJBai94QUJCRUFBQkF3SUNBd3NLQlFVQUF3RUFBQUFCQUFJREJCRUZJUVlTUVFjaU1WRlNZWEdCa2FIUkV4UVdJekpVa3FLeHdSZENZbkt5VTRMQzRmQWtOUEVWLzhRQUd3RUJBQUlEQVFFQUFBQUFBQUFBQUFBQUFBSURBUVFGQmdmL3hBQXVFUUFDQVFJRUF3WUdBd0FBQUFBQUFBQUFBUUlERVFRU0lWRVRNVUVGVW1HQmtiRVVJakpDY2NFVm9kSC8yZ0FNQXdFQUFoRURFUUEvQU40b2lJQWlJZ0NJaUFJaUlBaUlnQ0lpQUlpSUFpSWdDSWlBSWlJQWlJZ0NJaUFJaUlBaUlnQ0lpQUlpSUFpSWdDSWlBSWlJQWlJZ0NJaUFJaUlBaUlnQ0lpQUlpSUFpSWdDSWlBSWlJQWlJZ0NJaUFJaUlBaUlnQ0lpQUlpSUFpSWdDSWlBSWlJQWlJZ0NJaUE4MVhLNWpkY0RXRGMzRGFXOFk1eHdya3lGek5lSWczRjJuOHJ1WmQ2ci9BSmJ6U28xRGxUem03ZUtOKzNxejcxS0t1UmJzUzFKVmlWaExidElKYTRIMm1PSENDRjFVTmZyUGRDK3pabzdhd3pzNXA0SHR2c1Bkd0tNeHd1cHBSVnhpN0hFTW1ieWgrVjNTdU5JNFRKRXl0cFQ2NkFhN0NQenhuMm1uankyS2FndkorNWpNeVM4LzFKeEJMbDVTNWhkc2ZiTnpEeE9IZU90Y1lqaUJnYzE4bi9ydklhNTM5Ri81U2YwazVYMkczR285em9zU29yc09vL2hCejFvWm04R2YvWkZkT2pPTENzaGtwYXB2cjR3WTVtRzIvR1kxZ21UcStuTVppRDA4YmlkTmVvcHFxVjFPVHZtNzBtSHJ0bTFVZjAweFAzdVQ1UEJiSTBicjNRenZ3bXJPdnFqMURuV1BsWWlDZFU5WDNDb1dudWk1b3B0YU1FMDhwSlp3N3c3V0g3TGNvT044a2t2QjdsTTc4MGVUMDB4UDN1VDVQQlBUVEUvZTVQazhGQUl0dmhRMlJWbmU1UDhBcHBpZnZjbnllQ2VtbUorOXlmSjRLQVJPRkRaRE85eXowR25tSXh5TmU2WXl0QnpZNE4xWERhTGdaSG5XNGNBeHFHcmhFMEp5T1RtL21ZN2FDdm5kVGVpZWtNbEZPSkczTWJzcEdjdHZIekVjSzE2K0dVbGVLMUowNmpUMVBvQlZUVEttcm10TTlKTzhCb3U2TVdPWEcyNDdsWTZLcVpMRzJXTjJzeDdRNXA0d3U5Y3FVYnF4MEtGWGhUVTdKK0ROTGVsZUllOHYrWHdUMHJ4RDNsL3krQ205UDlHdkpPTlRDMzFUenZ3T0JqdVBvSlZLWE9tNXdkbXoydUZqaGNSVFU0d1hvaWE5SzhROTVmOEFMNEo2VjRoN3kvNWZCUXFLR2VXNXNmQ1VPNHZSRTE2VjRoN3kvd0NYd1dVZWwxZUNENXc0MlBBUTBnOU9TZzBXYzh0dzhIUTdpOUVibzBYMGhqcTQ5WWIyVnZ0czR1Y2NZVTR0RDRWaU1sUEsyYUkyYzA5VGh0Qlc2TUV4U09waGJMSHdFWmphMTIwRmJ0R3JuVm56UEo5cWRuUERTelIrbC8xNEVpaUlyemtuQ2pzZW9mTFFPYVBhRytiMGovcktTWEN5blozTU5YVml1WUJWTnFhZDFQTG1XdDFlY3QySHBDOE9pVmE2S1Y5RktlQngxUDNiUjBFWnJwbWQ1clhFakpoZGYreDNEMy9SWWFiUW1Lb2pxR1pGNHZmOWJiZmF5MjFGTjVlajE4eW03dGZZODBVMy93Q2JpVG96bFRUa0htQVBBZjdYWEhRc2RObzMwVmJGaUVJeWtObmpZU0FMZy91Yi9GZXJUeUpzOUhEVnRIczJ2ek5kWUVkVGdFYTd6N0IzdE9jc0RldldabU8xdVhXVkpkSnY4TXh1dk5HRzZEVENlbGh4R25PK2hzNE9IRHFFanZhNzdxVW9wSXNXdzR0ZllPY05WM0hISzNnY080OWFoTnplc0UxUE5ReTV0MVNXajlEcmh3NmpuL2NvdmM3clhVdGUra2tPVXJqR2VMeWpMMlBXTGpyQ3c0TlJjZXNkVitES2xxbnVVU3VwSHd5UGlrRm54dUxYRG5IMUM2RnNUZGV3Z05sanEyaktVYWovQU43UnZUMXQvaXRkcmVwVHp3VWlpY2JPd1JFVmhFSWlJRFl1NVBwQ1d5R2lrTzlrdTZMOUw4eTV2UVJuMWM2MnN2bW1tbmRHOXNqRFo3SEJ3UEVRdm9YQjhXaW5nam5EbWp5akE2MXhrZG83YnJtWXVsYVdaZFRab3l1ck05ZFhUTWtZNk40dTE0TFNPTUxTV1BZVzZtcUh3dXoxVGRwNVRUd0ZidjhBT0djdHZhRlNkMHVoWkpDMm9ZV2wwUjFYV0l1V09zTzQyN1Z6TVJUY28zMk85Mk5pK0ZYeU42UzkraHJWRVJjODltRVJFQVZuMEV4dzA5UUdQTm9aaUd1NG11L0s3N0tzTGxTaEp4ZDBVNGloR3RUY0pkVDZEdWlndERjVU5SU01jNDNlMGFqdWtiZXNXUFd1VjFJdTZ1ajUvVnB1bk53bHpST29pTEpXVkRUZUhmUnY0d1c5bHJmVllZNTYzRFk1ZHNaRiswc1BmWmU3VFp2cW1IaWsrb0s4RUcrd3VZY2tuNnRLMjRQNVl2WmxFdnFhT25CZlhZYlV3SFBVRGlQNU4rWUtPM01xcTAwc0o0Skk5YTNPMy9UdTVTR2dKdVoyYkhNYjNhdys2cm1najlYRUloeDY3ZmtkNEs1clNvdk1oZldMT2pSbVR6WEZXc3Zab21mQ2VjRzRIZlpZYWR0TlBpcnBXWkc4YzdlbXd2M3RLeDBrUGs4VmtJL0xVTmQvRXIzN3JiTFZjUjQ0UDhuS2ExbkY3b2o5cjhHWExUdW1iVVlaSzV1ZG1ObmIxV1A4YjlxMFd0K1lSNnpDbUE1NjlKcS9KWmFEV01KcG1qc3lWYm93aUl0d3BDSWlBSWlJQXNvM1dJUEVWaWlqS0thc3lkT2JqSlNYUmt1aTRqT1E2QXVWNDJTczJqNnBUbG1nbnVnaUlva3dpSWdMNXVWMWxwSm9TY25ORHgwakkvVWRpS0szT3BDSzlnNVRIanV2OWx5dWpoM2VCNHZ0dUNoaW05MWY5RzNVUkZjY2tyV216L1ZSamplVDJBK0s4RU85d3VZOG8vNU5DejAybXZKR3prdEo3ZjhBNHNkSWZVNGZGRHRlUmNkcmoza0xiZ3ZsaXQyVVMrcHM2TkFzak84OERXRC9BQ1AyVmMwRFlYWWhFZUlQY2ZnZDl5ckpoZnFNTHFKamtaQVFQNER2SlVmdVowM3JKcDNaTmpZRzM2Yms5elZjNWFWSDVFRXRZb3Iya0k4cGlzZ0dldFV0WjN0SDJYdjNXNUwxY2JlVEFPOXpsNTlFb2pVNG8yUWpMeWo1M2N3RnlQbUlYVnBtVFZZczZKbWUvWkEzc0FQelhWaTBtbHNqSDJ2eFpzakMvVllVd25MVW85YjVMclFhM2x1Z1ZiYWZEWkd0eUwydGdZT213UHlnclJxamhOVktXN00xdWlDSWkzQ2tJaUlBaUtVb3RIYTJaZ2tpcDVKSTNYczRESTJKSDFDdzVKY3hhL0lpMFUzNkk0ajdwTDhLd24wWnJvMmw4bE5JeU52dE9Jc0FGQ1ZXQ1RkeXluVGxLU2lselpqR01oMExsRVhqcE84bXo2cFRqbGlsc2dpSXNFZ2lJZ0xSdWN4M3IybmtzZWU2MzNSUys1WFI3NmFjaklBUnQ3eTc3SXVqaGxhQjR2dHFhbmluNEszN05qTGhGRmFTVjNrb1RiMjVONDM3bnNWOFZkMk9RM1pYSzlHenp1dUo0V0IxenhhamJmWDdycTB2a2RQVnNwMlpsbG0vM096UGRaVGVHMDdhT2xkTEo3WkdzNy9Gdi9jYThlaVZBYnZyWnZhZmN0dnNHZXM1YlNrazgyMmlLYlBsdVIyNkRPMkduaG8yYmN6KzF2QjJrOXl5ckdlWVlPV25LYWNXUEhyUDRSMU0raTY4SXBqaUZlK3JlUDhBeDRYQU1CNEhXOWtEK1I2UXVyU1Zyc1J4QmxIR2ZVMCtjamh3QW0ydDE1QnZTcHEya0gwMVpqZCtTTXRBS1Z0TFJ6VjhvOXBwTGYyTnY5VDlGRjdtZUhPbnE1SzJRWEVaSkI0NVgzK2dKN1FwamRCcUNXd1lYU3QzOHBiZG8yTWJiVkhSY1gvdFVuV1R3NFJod2FMT2VCWm8yeXpIaFBSZlBvQ3c1dHB0YzVleGxKYWJJcHU2MWpJa25aU3NPOXA4Mzg4amdQbzM2bFVGZGxSTTU3blBlUzV6M0Z4TzBrcnJXOVNoa2lvbEVuZDNDSWlzSWhFUkFlaWdwSHpTc2hqRjN5T0RRT2MvWmZST0YwTFlJWTRXZXpHd05IUGJiMnFnYmxPalphUFBwVzV1QmJDT0p2QTUvWHdkcTJTdVhpNnVhV1ZkRGFveHNyaFVQZFB4V3pHVXJUbTg2NytabzlrZHYwVnh4U3ZaQkU2YVEyYXdYNXp4QWM5MXBIRmE5OVJNK1ovdFBkZTNFTmc3RnpNUlV5eHR1ZWc3RndicTFlSStVZmM4aUlpMEQyQVJFUUJjZ1h5R1o0RndyanVlWUNaWmZPSkI2cUk3M2lmSi9yNnFVSXVUc2ErS3hFYUZKMUpGNzBVd3Z6YWxqalB0MjFuZnVPWjdPRHFSVENMcUpXVmtlQXFUZFNibStiT0hFQVhQQUZDMGxPWjV2T1hqMWJNb1duYitzcVZxSWRjYXA5bjh3NVhOMExLVmhMYk5PcnN2eGRDbW5ia1Z0WElURUlUVnpDTGdwNFhYa1A4QVVmeVIwTEhTSXZsMWFHbjNycEI2eHc0SVlmRThBSFNwdUdGckdhakFBQU1objNyR2twR3N1ZUY3enJQY2VGNSt3MldVbE8zbHlJNVNKcjNDanBtd1V6THpQOVhDM0s3bjdYRyt3Y0pLNjhMb1ljT3BIeVNIV2Y3Y3IvelNTSElBY2Vac09sVEVWSVBLR1YyK2tJMVFkakdjbHYxSi93QkxpYWpENUdQZm0yTTNZM1pyOG84Wkd4TS9UMU01U3VZUFJDbkUySjE1RFo1UnJHK2ZrR2NEV0RqTnJEdVdydExkSXBLMmN5T3UyTnU5alp5RzdUemtsYkEweTBjeE91a3NIeE1wMkhlTTFuWm5sT05zejlGVy93QUw2L2x3L0U3d1c1UWxUWHpTZXZzVVRVbm9sb1VkRmVQd3ZyK1hEOFR2QlB3dnIrWEQ4VHZCYlB4RlB2RmZEbHNVZEZlUHd2citYRDhUdkJQd3ZyK1hEOFR2QlBpS2ZlSERsc1VkV3ZRVFJOMVpMcnlBaW1qTytQOEFVUElCK3Fsc08zTHFreU44dkpHMksrKzFDUzRqaUZ4M3JhTkJSeHd4dGlpYUdSc0ZnQnNWRmZGSkswR1dRcE85MmQwY1lhQTFvQWFCWUFaQUFKTElHZ3VjUUFCY2s4QUN6S3F1bDJGMTFWNnFGekdRYmJ1T3RJZWV3NE9aY3VUYVYxcWIxQ25HYzFHVHlyZGxMMDAwa05WSnFSbTBFWjN2Nnp5ajlsV1ZiL3c5cmVWRjhUdkJQdzlyZVZGOFR2QmFFcWRTVHUwZXhvWXpCVUthaENhc2lvSXJmK0h0YnlvdmlkNEorSHRieW92aWQ0S1BCbnNYZnllRjc2S2dpdC80ZTF2S2krSjNnc290enlySkdzK01Odm1RWEVnZEZsbmd6Mk1QdFBDOTlFSm81Z2NsWEtHTnlZTTN1Mk5iNHJjdEJSeHd4dGlqYnFzWUxBTHB3YkNvcWFJUlJDd0hDZHJqeGtyM3JjcFVzaThUeTNhT1BsaXA2YVJYTC9UbEVSWEhOQ0lpQUlpSUFpSWdDSWlBSWlJQWlJZ0NJaUFJaUlBaUlnQ0lpQUlpSUFpSWdDSWlBSWlJQWlJZ0NJaUFJaUlBaUlnQ0lpQUlpSUFpSWdDSWlBSWlJQWlJZ0NJaUFJaUlBaUlnQ0lpQUlpSUFpSWdDSWlBSWlJQWlJZ0NJaUFJaUlBaUlnQ0lpQUlpSUFpSWdDSWlBSWlJQWlJZ0NJaUFJaUlBaUlnQ0lpQUlpSUFpSWdDSWlBSWlJQWlJZ0NJaUEvOWs9XCIgLz5cbiAgICAgICAgPC9kZWZzPlxuICAgICAgPC9zdmc+XG5cbiAgICAgIDwhLS0gVGl0bGUgKyBvcHRpb25hbCBiYWRnZSAtLT5cbiAgICAgIDxkaXYgY2xhc3M9XCJjcWEtaXRlbXMtZW5kIGNxYS1nYXAtMyBjcWEtbWluLXctMCBjcWEtaGlkZGVuIG1kOmNxYS1mbGV4XCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cImNxYS10cnVuY2F0ZSBjcWEtdGV4dC1bIzIyMjIzQl0gY3FhLWZvbnQtZXh0cmFib2xkIGNxYS10ZXh0LVszMnB4XSBjcWEtZm9udC1udW5pdG8tc2FucyBjcWEtbGVhZGluZy1bMV1cIj5cbiAgICAgICAgICB7eyB0aXRsZSB9fTwvZGl2PlxuICAgICAgICA8c3BhbiAqbmdJZj1cImJhZGdlVGV4dFwiXG4gICAgICAgICAgY2xhc3M9XCJjcWEtcHgtMiBjcWEtcHktWzJweF0gY3FhLXJvdW5kZWQtbGcgY3FhLXRleHQtWzEycHhdIGNxYS1mb250LW1lZGl1bSBjcWEtbGVhZGluZy00IGNxYS13aGl0ZXNwYWNlLW5vd3JhcCBjcWEtdGV4dC1bIzAwN0E1NV0gY3FhLWJnLVsjRDBGQUU1XSBjcWEtYm9yZGVyIGNxYS1ib3JkZXItWyNBNEY0Q0ZdXCJcbiAgICAgICAgICBbbmdDbGFzc109XCJiYWRnZUNsYXNzXCI+e3sgYmFkZ2VUZXh0IH19PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8IS0tIFJpZ2h0IGNvbnRyb2xzL2FjdGlvbnMgLS0+XG4gICAgPGRpdiBjbGFzcz1cImNxYS1mbGV4IGNxYS1pdGVtcy1jZW50ZXIgY3FhLWdhcC0zIGNxYS1mbGV4LTEgY3FhLWp1c3RpZnktZW5kXCI+XG4gICAgICA8IS0tIE9wdGlvbmFsIHdvcmtzcGFjZSBzZWxlY3QgLS0+XG4gICAgICA8ZGl2ICpuZ0lmPVwic2hvd1dvcmtzcGFjZVNlbGVjdG9yICYmIHdvcmtzcGFjZU9wdGlvbnM/Lmxlbmd0aFwiIGNsYXNzPVwiaGVhZGVyLWRyb3Bkb3duXCI+XG4gICAgICAgIDxjcWEtZHluYW1pYy1zZWxlY3QgW2Zvcm1dPVwid29ya3NwYWNlRm9ybVwiIFtjb25maWddPVwid29ya3NwYWNlQ29uZmlnXCIgKHNlbGVjdENsaWNrKT1cIndvcmtzcGFjZVNlbGVjdENsaWNrLmVtaXQoKVwiPlxuICAgICAgICA8L2NxYS1keW5hbWljLXNlbGVjdD5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8IS0tIEhlbHAgaWNvbiBidXR0b24gLS0+XG4gICAgICA8YnV0dG9uICpuZ0lmPVwic2hvd0hlbHBJY29uXCIgbWF0LWljb24tYnV0dG9uIGFyaWEtbGFiZWw9XCJIZWxwXCIgKGNsaWNrKT1cImhlbHBJY29uQ2xpY2suZW1pdCgpXCIgY2xhc3M9XCJjcWEtZmxleCBjcWEtaXRlbXMtY2VudGVyXCI+XG4gICAgICAgIDxtYXQtaWNvbiBzdHlsZT1cImhlaWdodDogMzZweDsgd2lkdGg6IDM2cHg7XCI+XG4gICAgICAgICAgPHN2ZyB3aWR0aD1cIjM2XCIgaGVpZ2h0PVwiMzZcIiB2aWV3Qm94PVwiMCAwIDM2IDM2XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gICAgICAgICAgICA8cGF0aCBkPVwiTTAgMThDMCA4LjA1ODg4IDguMDU4ODggMCAxOCAwQzI3Ljk0MTEgMCAzNiA4LjA1ODg4IDM2IDE4QzM2IDI3Ljk0MTEgMjcuOTQxMSAzNiAxOCAzNkM4LjA1ODg4IDM2IDAgMjcuOTQxMSAwIDE4WlwiIGZpbGw9XCIjRDhEOUZDXCIgZmlsbC1vcGFjaXR5PVwiMC4zXCIvPlxuICAgICAgICAgICAgPHBhdGggZD1cIk0xOC4wMDAxIDI4LjQxNjNDMjMuOTgzMiAyOC40MTYzIDI4LjgzMzQgMjMuNzUyNiAyOC44MzM0IDE3Ljk5OTdDMjguODMzNCAxMi4yNDY3IDIzLjk4MzIgNy41ODMwMSAxOC4wMDAxIDcuNTgzMDFDMTIuMDE3IDcuNTgzMDEgNy4xNjY3NSAxMi4yNDY3IDcuMTY2NzUgMTcuOTk5N0M3LjE2Njc1IDIzLjc1MjYgMTIuMDE3IDI4LjQxNjMgMTguMDAwMSAyOC40MTYzWlwiIHN0cm9rZT1cIiMzRjQzRUVcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxuICAgICAgICAgICAgPHBhdGggZD1cIk0xNC44NDc0IDE0Ljg3NTFDMTUuMTAyMSAxNC4xNzg5IDE1LjYwNDggMTMuNTkxOSAxNi4yNjY1IDEzLjIxOEMxNi45MjgyIDEyLjg0NCAxNy43MDYyIDEyLjcwNzMgMTguNDYyNyAxMi44MzIxQzE5LjIxOTIgMTIuOTU2OSAxOS45MDUzIDEzLjMzNSAyMC4zOTk2IDEzLjg5OTZDMjAuODkzOSAxNC40NjQyIDIxLjE2NDQgMTUuMTc4OCAyMS4xNjMyIDE1LjkxNjhDMjEuMTYzMiAxOC4wMDAxIDE3LjkxMzIgMTkuMDQxOCAxNy45MTMyIDE5LjA0MThcIiBzdHJva2U9XCIjM0Y0M0VFXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cbiAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTggMjMuMjA4SDE4LjAxXCIgc3Ryb2tlPVwiIzNGNDNFRVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XG4gICAgICAgICAgPC9zdmc+XG4gICAgICAgIDwvbWF0LWljb24+XG4gICAgICA8L2J1dHRvbj5cblxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PiJdfQ==
@@ -1,4 +1,4 @@
1
- import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, Input, Output, EventEmitter } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  import * as i1 from "@angular/common";
4
4
  export class FailedTestCasesCardComponent {
@@ -23,18 +23,25 @@ export class FailedTestCasesCardComponent {
23
23
  this.leftAccentClass = 'cqa-border-l-[4px]';
24
24
  /** Optional tags to render under the title */
25
25
  this.tags = [];
26
+ /** Emitted when the card is clicked */
27
+ this.cardClick = new EventEmitter();
26
28
  }
27
29
  get rootCauseDisplay() {
28
- return this.rootCause && this.rootCause.trim().length
29
- ? this.rootCause
30
- : 'No root cause available';
30
+ if (!this.rootCause || !this.rootCause.trim().length) {
31
+ return 'No root cause available';
32
+ }
33
+ // Trim and return the root cause text
34
+ return this.rootCause.trim();
35
+ }
36
+ onCardClick() {
37
+ this.cardClick.emit();
31
38
  }
32
39
  }
33
40
  FailedTestCasesCardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FailedTestCasesCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
34
- FailedTestCasesCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: FailedTestCasesCardComponent, selector: "cqa-failed-test-cases-card", inputs: { title: "title", failures: "failures", failuresLabel: "failuresLabel", pillClass: "pillClass", rootCause: "rootCause", rootCauseLabel: "rootCauseLabel", showRootCause: "showRootCause", lastFailed: "lastFailed", lastFailedLabel: "lastFailedLabel", cardClass: "cardClass", leftAccentClass: "leftAccentClass", tags: "tags" }, ngImport: i0, template: "<div id=\"cqa-ui-root\">\n <div class=\"cqa-w-full cqa-bg-[#FEF2F240] cqa-border cqa-border-solid cqa-border-[#E5E7EB] cqa-border-l-[#EF4444] cqa-rounded-[10px] cqa-p-[10px] cqa-pl-[20px]\"\n [ngClass]=\"[leftAccentClass, cardClass]\">\n <div class=\"cqa-flex cqa-flex-col cqa-gap-2\">\n <div class=\"cqa-flex cqa-items-start cqa-justify-between cqa-gap-2 cqa-flex-wrap\">\n <!-- Title -->\n <h3 class=\"cqa-text-[14px] cqa-leading-[17px] cqa-font-semibold cqa-text-[#1A1A1A]\">{{ title }}</h3>\n\n <!-- Failures pill -->\n <span class=\"cqa-px-[11px] cqa-py-[3px] cqa-rounded-full cqa-text-[12px] cqa-leading-[16px] cqa-font-medium cqa-tracking-[0.3px]\"\n [ngClass]=\"pillClass\">\n {{ failures | number }} {{ failuresLabel }}\n </span>\n </div>\n\n <!-- Tags -->\n <div *ngIf=\"tags?.length\" class=\"cqa-flex cqa-flex-wrap cqa-gap-2\">\n <span\n *ngFor=\"let tag of tags\"\n class=\"cqa-inline-flex cqa-items-center cqa-gap-1 cqa-border-solid cqa-rounded-full cqa-bg-white cqa-border cqa-border-[#E5E7EB] cqa-text-[#1F1F24] cqa-text-[11px] cqa-leading-[14px] cqa-font-semibold cqa-px-[10px] cqa-py-[4px]\">\n {{ tag }}\n </span>\n </div>\n </div>\n\n <div class=\"cqa-flex cqa-items-center cqa-justify-between cqa-flex-wrap cqa-mt-2\">\n <!-- Root cause -->\n <div *ngIf=\"showRootCause\" class=\"cqa-text-[12px] cqa-leading-[15px] cqa-text-[#F15F5F]\">\n <span class=\"cqa-font-semibold\">{{ rootCauseLabel }}: </span>{{ rootCauseDisplay }}\n </div>\n\n <!-- Timestamp -->\n <div *ngIf=\"lastFailed\"\n class=\"cqa-py-[3px] cqa-flex cqa-items-center cqa-gap-1 cqa-text-[10px] cqa-leading-[15px] cqa-font-medium cqa-text-dialog-muted\">\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M6 11C8.76142 11 11 8.76142 11 6C11 3.23858 8.76142 1 6 1C3.23858 1 1 3.23858 1 6C1 8.76142 3.23858 11 6 11Z\" stroke=\"#6B7280\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M6 3V6L8 7\" stroke=\"#6B7280\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>\n <span>{{ lastFailedLabel }}: {{ lastFailed }}</span>\n </div>\n </div>\n </div>\n</div>", directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "number": i1.DecimalPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
41
+ FailedTestCasesCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: FailedTestCasesCardComponent, selector: "cqa-failed-test-cases-card", inputs: { title: "title", failures: "failures", failuresLabel: "failuresLabel", pillClass: "pillClass", rootCause: "rootCause", rootCauseLabel: "rootCauseLabel", showRootCause: "showRootCause", lastFailed: "lastFailed", lastFailedLabel: "lastFailedLabel", cardClass: "cardClass", leftAccentClass: "leftAccentClass", tags: "tags" }, outputs: { cardClick: "cardClick" }, ngImport: i0, template: "<div id=\"cqa-ui-root\">\n <div class=\"cqa-w-full cqa-bg-[#FEF2F240] cqa-border cqa-border-solid cqa-border-[#E5E7EB] cqa-border-l-[#EF4444] cqa-rounded-[10px] cqa-p-[10px] cqa-pl-[20px] cqa-cursor-pointer cqa-transition-shadow cqa-duration-200 hover:cqa-shadow-md\"\n [ngClass]=\"[leftAccentClass, cardClass]\"\n (click)=\"onCardClick()\">\n <div class=\"cqa-flex cqa-flex-col cqa-gap-2\">\n <div class=\"cqa-flex cqa-items-start cqa-justify-between cqa-gap-2 cqa-flex-wrap\">\n <!-- Title -->\n <h3 class=\"cqa-text-[14px] cqa-leading-[17px] cqa-font-semibold cqa-text-[#1A1A1A]\">{{ title }}</h3>\n\n <!-- Failures pill -->\n <span class=\"cqa-px-[11px] cqa-py-[3px] cqa-rounded-full cqa-text-[12px] cqa-leading-[16px] cqa-font-medium cqa-tracking-[0.3px]\"\n [ngClass]=\"pillClass\">\n {{ failures | number }} {{ failuresLabel }}\n </span>\n </div>\n\n <!-- Tags -->\n <div *ngIf=\"tags?.length\" class=\"cqa-flex cqa-flex-wrap cqa-gap-2\">\n <span\n *ngFor=\"let tag of tags\"\n class=\"cqa-inline-flex cqa-items-center cqa-gap-1 cqa-border-solid cqa-rounded-full cqa-bg-white cqa-border cqa-border-[#E5E7EB] cqa-text-[#1F1F24] cqa-text-[11px] cqa-leading-[14px] cqa-font-semibold cqa-px-[10px] cqa-py-[4px]\">\n {{ tag }}\n </span>\n </div>\n </div>\n\n <div class=\"cqa-flex cqa-items-center cqa-justify-between cqa-flex-wrap cqa-mt-2\">\n <!-- Root cause -->\n <div *ngIf=\"showRootCause\" class=\"cqa-text-[12px] cqa-leading-[15px] cqa-text-[#F15F5F] cqa-flex-1 cqa-min-w-0 cqa-mr-2 cqa-truncate\">\n <span class=\"cqa-font-semibold\">{{ rootCauseLabel }}: </span>{{ rootCauseDisplay }}\n </div>\n\n <!-- Timestamp -->\n <div *ngIf=\"lastFailed\"\n class=\"cqa-py-[3px] cqa-flex cqa-items-center cqa-gap-1 cqa-text-[10px] cqa-leading-[15px] cqa-font-medium cqa-text-dialog-muted\">\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M6 11C8.76142 11 11 8.76142 11 6C11 3.23858 8.76142 1 6 1C3.23858 1 1 3.23858 1 6C1 8.76142 3.23858 11 6 11Z\" stroke=\"#6B7280\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M6 3V6L8 7\" stroke=\"#6B7280\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>\n <span>{{ lastFailedLabel }}: {{ lastFailed }}</span>\n </div>\n </div>\n </div>\n</div>", directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "number": i1.DecimalPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
35
42
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FailedTestCasesCardComponent, decorators: [{
36
43
  type: Component,
37
- args: [{ selector: 'cqa-failed-test-cases-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div id=\"cqa-ui-root\">\n <div class=\"cqa-w-full cqa-bg-[#FEF2F240] cqa-border cqa-border-solid cqa-border-[#E5E7EB] cqa-border-l-[#EF4444] cqa-rounded-[10px] cqa-p-[10px] cqa-pl-[20px]\"\n [ngClass]=\"[leftAccentClass, cardClass]\">\n <div class=\"cqa-flex cqa-flex-col cqa-gap-2\">\n <div class=\"cqa-flex cqa-items-start cqa-justify-between cqa-gap-2 cqa-flex-wrap\">\n <!-- Title -->\n <h3 class=\"cqa-text-[14px] cqa-leading-[17px] cqa-font-semibold cqa-text-[#1A1A1A]\">{{ title }}</h3>\n\n <!-- Failures pill -->\n <span class=\"cqa-px-[11px] cqa-py-[3px] cqa-rounded-full cqa-text-[12px] cqa-leading-[16px] cqa-font-medium cqa-tracking-[0.3px]\"\n [ngClass]=\"pillClass\">\n {{ failures | number }} {{ failuresLabel }}\n </span>\n </div>\n\n <!-- Tags -->\n <div *ngIf=\"tags?.length\" class=\"cqa-flex cqa-flex-wrap cqa-gap-2\">\n <span\n *ngFor=\"let tag of tags\"\n class=\"cqa-inline-flex cqa-items-center cqa-gap-1 cqa-border-solid cqa-rounded-full cqa-bg-white cqa-border cqa-border-[#E5E7EB] cqa-text-[#1F1F24] cqa-text-[11px] cqa-leading-[14px] cqa-font-semibold cqa-px-[10px] cqa-py-[4px]\">\n {{ tag }}\n </span>\n </div>\n </div>\n\n <div class=\"cqa-flex cqa-items-center cqa-justify-between cqa-flex-wrap cqa-mt-2\">\n <!-- Root cause -->\n <div *ngIf=\"showRootCause\" class=\"cqa-text-[12px] cqa-leading-[15px] cqa-text-[#F15F5F]\">\n <span class=\"cqa-font-semibold\">{{ rootCauseLabel }}: </span>{{ rootCauseDisplay }}\n </div>\n\n <!-- Timestamp -->\n <div *ngIf=\"lastFailed\"\n class=\"cqa-py-[3px] cqa-flex cqa-items-center cqa-gap-1 cqa-text-[10px] cqa-leading-[15px] cqa-font-medium cqa-text-dialog-muted\">\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M6 11C8.76142 11 11 8.76142 11 6C11 3.23858 8.76142 1 6 1C3.23858 1 1 3.23858 1 6C1 8.76142 3.23858 11 6 11Z\" stroke=\"#6B7280\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M6 3V6L8 7\" stroke=\"#6B7280\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>\n <span>{{ lastFailedLabel }}: {{ lastFailed }}</span>\n </div>\n </div>\n </div>\n</div>", styles: [] }]
44
+ args: [{ selector: 'cqa-failed-test-cases-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div id=\"cqa-ui-root\">\n <div class=\"cqa-w-full cqa-bg-[#FEF2F240] cqa-border cqa-border-solid cqa-border-[#E5E7EB] cqa-border-l-[#EF4444] cqa-rounded-[10px] cqa-p-[10px] cqa-pl-[20px] cqa-cursor-pointer cqa-transition-shadow cqa-duration-200 hover:cqa-shadow-md\"\n [ngClass]=\"[leftAccentClass, cardClass]\"\n (click)=\"onCardClick()\">\n <div class=\"cqa-flex cqa-flex-col cqa-gap-2\">\n <div class=\"cqa-flex cqa-items-start cqa-justify-between cqa-gap-2 cqa-flex-wrap\">\n <!-- Title -->\n <h3 class=\"cqa-text-[14px] cqa-leading-[17px] cqa-font-semibold cqa-text-[#1A1A1A]\">{{ title }}</h3>\n\n <!-- Failures pill -->\n <span class=\"cqa-px-[11px] cqa-py-[3px] cqa-rounded-full cqa-text-[12px] cqa-leading-[16px] cqa-font-medium cqa-tracking-[0.3px]\"\n [ngClass]=\"pillClass\">\n {{ failures | number }} {{ failuresLabel }}\n </span>\n </div>\n\n <!-- Tags -->\n <div *ngIf=\"tags?.length\" class=\"cqa-flex cqa-flex-wrap cqa-gap-2\">\n <span\n *ngFor=\"let tag of tags\"\n class=\"cqa-inline-flex cqa-items-center cqa-gap-1 cqa-border-solid cqa-rounded-full cqa-bg-white cqa-border cqa-border-[#E5E7EB] cqa-text-[#1F1F24] cqa-text-[11px] cqa-leading-[14px] cqa-font-semibold cqa-px-[10px] cqa-py-[4px]\">\n {{ tag }}\n </span>\n </div>\n </div>\n\n <div class=\"cqa-flex cqa-items-center cqa-justify-between cqa-flex-wrap cqa-mt-2\">\n <!-- Root cause -->\n <div *ngIf=\"showRootCause\" class=\"cqa-text-[12px] cqa-leading-[15px] cqa-text-[#F15F5F] cqa-flex-1 cqa-min-w-0 cqa-mr-2 cqa-truncate\">\n <span class=\"cqa-font-semibold\">{{ rootCauseLabel }}: </span>{{ rootCauseDisplay }}\n </div>\n\n <!-- Timestamp -->\n <div *ngIf=\"lastFailed\"\n class=\"cqa-py-[3px] cqa-flex cqa-items-center cqa-gap-1 cqa-text-[10px] cqa-leading-[15px] cqa-font-medium cqa-text-dialog-muted\">\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M6 11C8.76142 11 11 8.76142 11 6C11 3.23858 8.76142 1 6 1C3.23858 1 1 3.23858 1 6C1 8.76142 3.23858 11 6 11Z\" stroke=\"#6B7280\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M6 3V6L8 7\" stroke=\"#6B7280\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>\n <span>{{ lastFailedLabel }}: {{ lastFailed }}</span>\n </div>\n </div>\n </div>\n</div>", styles: [] }]
38
45
  }], propDecorators: { title: [{
39
46
  type: Input
40
47
  }], failures: [{
@@ -59,5 +66,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
59
66
  type: Input
60
67
  }], tags: [{
61
68
  type: Input
69
+ }], cardClick: [{
70
+ type: Output
62
71
  }] } });
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFpbGVkLXRlc3QtY2FzZXMtY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2Rhc2hib2FyZHMvZmFpbGVkLXRlc3QtY2FzZXMtY2FyZC9mYWlsZWQtdGVzdC1jYXNlcy1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZGFzaGJvYXJkcy9mYWlsZWQtdGVzdC1jYXNlcy1jYXJkL2ZhaWxlZC10ZXN0LWNhc2VzLWNhcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQVExRSxNQUFNLE9BQU8sNEJBQTRCO0lBTnpDO1FBT0UsbUNBQW1DO1FBQzFCLFVBQUssR0FBVyxrQkFBa0IsQ0FBQztRQUM1QyxnREFBZ0Q7UUFDdkMsYUFBUSxHQUFXLENBQUMsQ0FBQztRQUM5QixvQ0FBb0M7UUFDM0Isa0JBQWEsR0FBVyxVQUFVLENBQUM7UUFDNUMsb0RBQW9EO1FBQzNDLGNBQVMsR0FBVyxxQ0FBcUMsQ0FBQztRQUduRSwrQ0FBK0M7UUFDdEMsbUJBQWMsR0FBVyxZQUFZLENBQUM7UUFDL0Msd0NBQXdDO1FBQy9CLGtCQUFhLEdBQVksSUFBSSxDQUFDO1FBR3ZDLDBCQUEwQjtRQUNqQixvQkFBZSxHQUFXLGFBQWEsQ0FBQztRQUNqRCw4Q0FBOEM7UUFDckMsY0FBUyxHQUFXLEVBQUUsQ0FBQztRQUNoQywrQkFBK0I7UUFDdEIsb0JBQWUsR0FBVyxvQkFBb0IsQ0FBQztRQUN4RCw4Q0FBOEM7UUFDckMsU0FBSSxHQUFhLEVBQUUsQ0FBQztLQU85QjtJQUxDLElBQUksZ0JBQWdCO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDLE1BQU07WUFDbkQsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTO1lBQ2hCLENBQUMsQ0FBQyx5QkFBeUIsQ0FBQztJQUNoQyxDQUFDOzt5SEE5QlUsNEJBQTRCOzZHQUE1Qiw0QkFBNEIsOFlDUnpDLHN4RUF1Q007MkZEL0JPLDRCQUE0QjtrQkFOeEMsU0FBUzsrQkFDRSw0QkFBNEIsbUJBR3JCLHVCQUF1QixDQUFDLE1BQU07OEJBSXRDLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRUcsU0FBUztzQkFBakIsS0FBSztnQkFFRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBRUcsYUFBYTtzQkFBckIsS0FBSztnQkFFRyxVQUFVO3NCQUFsQixLQUFLO2dCQUVHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBRUcsU0FBUztzQkFBakIsS0FBSztnQkFFRyxlQUFlO3NCQUF2QixLQUFLO2dCQUVHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NxYS1mYWlsZWQtdGVzdC1jYXNlcy1jYXJkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZhaWxlZC10ZXN0LWNhc2VzLWNhcmQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFtdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRmFpbGVkVGVzdENhc2VzQ2FyZENvbXBvbmVudCB7XG4gIC8qKiBFLmcuLCBcIkMtNjI6IFVwbG9hZCBDb250ZW50XCIgKi9cbiAgQElucHV0KCkgdGl0bGU6IHN0cmluZyA9ICdGYWlsZWQgVGVzdCBDYXNlJztcbiAgLyoqIE51bWJlciBvZiBmYWlsdXJlcyB0byBkaXNwbGF5IGluIHRoZSBwaWxsICovXG4gIEBJbnB1dCgpIGZhaWx1cmVzOiBudW1iZXIgPSAwO1xuICAvKiogUGlsbCBsYWJlbCAoZS5nLiwgXCJmYWlsdXJlc1wiKSAqL1xuICBASW5wdXQoKSBmYWlsdXJlc0xhYmVsOiBzdHJpbmcgPSAnZmFpbHVyZXMnO1xuICAvKiogT3B0aW9uYWwgY3VzdG9tIGNsYXNzIGZvciB0aGUgcGlsbCBiYWNrZ3JvdW5kICovXG4gIEBJbnB1dCgpIHBpbGxDbGFzczogc3RyaW5nID0gJ2NxYS1iZy1bI0YxNUY1Rl0gY3FhLXRleHQtWyNGQUZBRkFdJztcbiAgLyoqIFJvb3QgY2F1c2UgdGV4dDsgd2hlbiBlbXB0eSwgc2hvdyBhIGRlZmF1bHQgbWVzc2FnZSAqL1xuICBASW5wdXQoKSByb290Q2F1c2U/OiBzdHJpbmc7XG4gIC8qKiBSb290IGNhdXNlIGxhYmVsIChsZWZ0IHBhcnQsIGVtcGhhc2l6ZWQpICovXG4gIEBJbnB1dCgpIHJvb3RDYXVzZUxhYmVsOiBzdHJpbmcgPSAnUm9vdCBjYXVzZSc7XG4gIC8qKiBJZiBmYWxzZSwgaGlkZSB0aGUgcm9vdCBjYXVzZSByb3cgKi9cbiAgQElucHV0KCkgc2hvd1Jvb3RDYXVzZTogYm9vbGVhbiA9IHRydWU7XG4gIC8qKiBMYXN0IGZhaWxlZCB0ZXh0IChlLmcuLCBcIjIgaG91cnMgYWdvXCIpICovXG4gIEBJbnB1dCgpIGxhc3RGYWlsZWQ/OiBzdHJpbmc7XG4gIC8qKiBMYWJlbCBmb3IgdGltZXN0YW1wICovXG4gIEBJbnB1dCgpIGxhc3RGYWlsZWRMYWJlbDogc3RyaW5nID0gJ0xhc3QgZmFpbGVkJztcbiAgLyoqIE9wdGlvbmFsIGV4dHJhIGNsYXNzIGZvciB0aGUgb3V0ZXIgY2FyZCAqL1xuICBASW5wdXQoKSBjYXJkQ2xhc3M6IHN0cmluZyA9ICcnO1xuICAvKiogTGVmdCBib3JkZXIgYWNjZW50IGNsYXNzICovXG4gIEBJbnB1dCgpIGxlZnRBY2NlbnRDbGFzczogc3RyaW5nID0gJ2NxYS1ib3JkZXItbC1bNHB4XSc7XG4gIC8qKiBPcHRpb25hbCB0YWdzIHRvIHJlbmRlciB1bmRlciB0aGUgdGl0bGUgKi9cbiAgQElucHV0KCkgdGFnczogc3RyaW5nW10gPSBbXTtcblxuICBnZXQgcm9vdENhdXNlRGlzcGxheSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnJvb3RDYXVzZSAmJiB0aGlzLnJvb3RDYXVzZS50cmltKCkubGVuZ3RoXG4gICAgICA/IHRoaXMucm9vdENhdXNlXG4gICAgICA6ICdObyByb290IGNhdXNlIGF2YWlsYWJsZSc7XG4gIH1cbn1cblxuXG4iLCI8ZGl2IGlkPVwiY3FhLXVpLXJvb3RcIj5cbiAgPGRpdiBjbGFzcz1cImNxYS13LWZ1bGwgY3FhLWJnLVsjRkVGMkYyNDBdIGNxYS1ib3JkZXIgY3FhLWJvcmRlci1zb2xpZCBjcWEtYm9yZGVyLVsjRTVFN0VCXSBjcWEtYm9yZGVyLWwtWyNFRjQ0NDRdIGNxYS1yb3VuZGVkLVsxMHB4XSBjcWEtcC1bMTBweF0gY3FhLXBsLVsyMHB4XVwiXG4gICAgW25nQ2xhc3NdPVwiW2xlZnRBY2NlbnRDbGFzcywgY2FyZENsYXNzXVwiPlxuICAgIDxkaXYgY2xhc3M9XCJjcWEtZmxleCBjcWEtZmxleC1jb2wgY3FhLWdhcC0yXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiY3FhLWZsZXggY3FhLWl0ZW1zLXN0YXJ0IGNxYS1qdXN0aWZ5LWJldHdlZW4gY3FhLWdhcC0yIGNxYS1mbGV4LXdyYXBcIj5cbiAgICAgICAgPCEtLSBUaXRsZSAtLT5cbiAgICAgICAgPGgzIGNsYXNzPVwiY3FhLXRleHQtWzE0cHhdIGNxYS1sZWFkaW5nLVsxN3B4XSBjcWEtZm9udC1zZW1pYm9sZCBjcWEtdGV4dC1bIzFBMUExQV1cIj57eyB0aXRsZSB9fTwvaDM+XG5cbiAgICAgICAgPCEtLSBGYWlsdXJlcyBwaWxsIC0tPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImNxYS1weC1bMTFweF0gY3FhLXB5LVszcHhdIGNxYS1yb3VuZGVkLWZ1bGwgY3FhLXRleHQtWzEycHhdIGNxYS1sZWFkaW5nLVsxNnB4XSBjcWEtZm9udC1tZWRpdW0gY3FhLXRyYWNraW5nLVswLjNweF1cIlxuICAgICAgICAgIFtuZ0NsYXNzXT1cInBpbGxDbGFzc1wiPlxuICAgICAgICAgIHt7IGZhaWx1cmVzIHwgbnVtYmVyIH19IHt7IGZhaWx1cmVzTGFiZWwgfX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDwhLS0gVGFncyAtLT5cbiAgICAgIDxkaXYgKm5nSWY9XCJ0YWdzPy5sZW5ndGhcIiBjbGFzcz1cImNxYS1mbGV4IGNxYS1mbGV4LXdyYXAgY3FhLWdhcC0yXCI+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgKm5nRm9yPVwibGV0IHRhZyBvZiB0YWdzXCJcbiAgICAgICAgICBjbGFzcz1cImNxYS1pbmxpbmUtZmxleCBjcWEtaXRlbXMtY2VudGVyIGNxYS1nYXAtMSBjcWEtYm9yZGVyLXNvbGlkIGNxYS1yb3VuZGVkLWZ1bGwgY3FhLWJnLXdoaXRlIGNxYS1ib3JkZXIgY3FhLWJvcmRlci1bI0U1RTdFQl0gY3FhLXRleHQtWyMxRjFGMjRdIGNxYS10ZXh0LVsxMXB4XSBjcWEtbGVhZGluZy1bMTRweF0gY3FhLWZvbnQtc2VtaWJvbGQgY3FhLXB4LVsxMHB4XSBjcWEtcHktWzRweF1cIj5cbiAgICAgICAgICB7eyB0YWcgfX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiY3FhLWZsZXggY3FhLWl0ZW1zLWNlbnRlciBjcWEtanVzdGlmeS1iZXR3ZWVuIGNxYS1mbGV4LXdyYXAgY3FhLW10LTJcIj5cbiAgICAgIDwhLS0gUm9vdCBjYXVzZSAtLT5cbiAgICAgIDxkaXYgKm5nSWY9XCJzaG93Um9vdENhdXNlXCIgY2xhc3M9XCJjcWEtdGV4dC1bMTJweF0gY3FhLWxlYWRpbmctWzE1cHhdIGNxYS10ZXh0LVsjRjE1RjVGXVwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImNxYS1mb250LXNlbWlib2xkXCI+e3sgcm9vdENhdXNlTGFiZWwgfX06IDwvc3Bhbj57eyByb290Q2F1c2VEaXNwbGF5IH19XG4gICAgICA8L2Rpdj5cblxuICAgICAgPCEtLSBUaW1lc3RhbXAgLS0+XG4gICAgICA8ZGl2ICpuZ0lmPVwibGFzdEZhaWxlZFwiXG4gICAgICAgIGNsYXNzPVwiY3FhLXB5LVszcHhdIGNxYS1mbGV4IGNxYS1pdGVtcy1jZW50ZXIgY3FhLWdhcC0xIGNxYS10ZXh0LVsxMHB4XSBjcWEtbGVhZGluZy1bMTVweF0gY3FhLWZvbnQtbWVkaXVtIGNxYS10ZXh0LWRpYWxvZy1tdXRlZFwiPlxuICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj48cGF0aCBkPVwiTTYgMTFDOC43NjE0MiAxMSAxMSA4Ljc2MTQyIDExIDZDMTEgMy4yMzg1OCA4Ljc2MTQyIDEgNiAxQzMuMjM4NTggMSAxIDMuMjM4NTggMSA2QzEgOC43NjE0MiAzLjIzODU4IDExIDYgMTFaXCIgc3Ryb2tlPVwiIzZCNzI4MFwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz48cGF0aCBkPVwiTTYgM1Y2TDggN1wiIHN0cm9rZT1cIiM2QjcyODBcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+PC9zdmc+XG4gICAgICAgIDxzcGFuPnt7IGxhc3RGYWlsZWRMYWJlbCB9fToge3sgbGFzdEZhaWxlZCB9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PiJdfQ==
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFpbGVkLXRlc3QtY2FzZXMtY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2Rhc2hib2FyZHMvZmFpbGVkLXRlc3QtY2FzZXMtY2FyZC9mYWlsZWQtdGVzdC1jYXNlcy1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZGFzaGJvYXJkcy9mYWlsZWQtdGVzdC1jYXNlcy1jYXJkL2ZhaWxlZC10ZXN0LWNhc2VzLWNhcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBUWhHLE1BQU0sT0FBTyw0QkFBNEI7SUFOekM7UUFPRSxtQ0FBbUM7UUFDMUIsVUFBSyxHQUFXLGtCQUFrQixDQUFDO1FBQzVDLGdEQUFnRDtRQUN2QyxhQUFRLEdBQVcsQ0FBQyxDQUFDO1FBQzlCLG9DQUFvQztRQUMzQixrQkFBYSxHQUFXLFVBQVUsQ0FBQztRQUM1QyxvREFBb0Q7UUFDM0MsY0FBUyxHQUFXLHFDQUFxQyxDQUFDO1FBR25FLCtDQUErQztRQUN0QyxtQkFBYyxHQUFXLFlBQVksQ0FBQztRQUMvQyx3Q0FBd0M7UUFDL0Isa0JBQWEsR0FBWSxJQUFJLENBQUM7UUFHdkMsMEJBQTBCO1FBQ2pCLG9CQUFlLEdBQVcsYUFBYSxDQUFDO1FBQ2pELDhDQUE4QztRQUNyQyxjQUFTLEdBQVcsRUFBRSxDQUFDO1FBQ2hDLCtCQUErQjtRQUN0QixvQkFBZSxHQUFXLG9CQUFvQixDQUFDO1FBQ3hELDhDQUE4QztRQUNyQyxTQUFJLEdBQWEsRUFBRSxDQUFDO1FBQzdCLHVDQUF1QztRQUM3QixjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztLQWFoRDtJQVhDLElBQUksZ0JBQWdCO1FBQ2xCLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLEVBQUU7WUFDcEQsT0FBTyx5QkFBeUIsQ0FBQztTQUNsQztRQUNELHNDQUFzQztRQUN0QyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3hCLENBQUM7O3lIQXRDVSw0QkFBNEI7NkdBQTVCLDRCQUE0QixtYkNSekMsZzdFQXdDTTsyRkRoQ08sNEJBQTRCO2tCQU54QyxTQUFTOytCQUNFLDRCQUE0QixtQkFHckIsdUJBQXVCLENBQUMsTUFBTTs4QkFJdEMsS0FBSztzQkFBYixLQUFLO2dCQUVHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUcsYUFBYTtzQkFBckIsS0FBSztnQkFFRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUcsY0FBYztzQkFBdEIsS0FBSztnQkFFRyxhQUFhO3NCQUFyQixLQUFLO2dCQUVHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBRUcsZUFBZTtzQkFBdkIsS0FBSztnQkFFRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBRUcsSUFBSTtzQkFBWixLQUFLO2dCQUVJLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3FhLWZhaWxlZC10ZXN0LWNhc2VzLWNhcmQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmFpbGVkLXRlc3QtY2FzZXMtY2FyZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogW10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBGYWlsZWRUZXN0Q2FzZXNDYXJkQ29tcG9uZW50IHtcbiAgLyoqIEUuZy4sIFwiQy02MjogVXBsb2FkIENvbnRlbnRcIiAqL1xuICBASW5wdXQoKSB0aXRsZTogc3RyaW5nID0gJ0ZhaWxlZCBUZXN0IENhc2UnO1xuICAvKiogTnVtYmVyIG9mIGZhaWx1cmVzIHRvIGRpc3BsYXkgaW4gdGhlIHBpbGwgKi9cbiAgQElucHV0KCkgZmFpbHVyZXM6IG51bWJlciA9IDA7XG4gIC8qKiBQaWxsIGxhYmVsIChlLmcuLCBcImZhaWx1cmVzXCIpICovXG4gIEBJbnB1dCgpIGZhaWx1cmVzTGFiZWw6IHN0cmluZyA9ICdmYWlsdXJlcyc7XG4gIC8qKiBPcHRpb25hbCBjdXN0b20gY2xhc3MgZm9yIHRoZSBwaWxsIGJhY2tncm91bmQgKi9cbiAgQElucHV0KCkgcGlsbENsYXNzOiBzdHJpbmcgPSAnY3FhLWJnLVsjRjE1RjVGXSBjcWEtdGV4dC1bI0ZBRkFGQV0nO1xuICAvKiogUm9vdCBjYXVzZSB0ZXh0OyB3aGVuIGVtcHR5LCBzaG93IGEgZGVmYXVsdCBtZXNzYWdlICovXG4gIEBJbnB1dCgpIHJvb3RDYXVzZT86IHN0cmluZztcbiAgLyoqIFJvb3QgY2F1c2UgbGFiZWwgKGxlZnQgcGFydCwgZW1waGFzaXplZCkgKi9cbiAgQElucHV0KCkgcm9vdENhdXNlTGFiZWw6IHN0cmluZyA9ICdSb290IGNhdXNlJztcbiAgLyoqIElmIGZhbHNlLCBoaWRlIHRoZSByb290IGNhdXNlIHJvdyAqL1xuICBASW5wdXQoKSBzaG93Um9vdENhdXNlOiBib29sZWFuID0gdHJ1ZTtcbiAgLyoqIExhc3QgZmFpbGVkIHRleHQgKGUuZy4sIFwiMiBob3VycyBhZ29cIikgKi9cbiAgQElucHV0KCkgbGFzdEZhaWxlZD86IHN0cmluZztcbiAgLyoqIExhYmVsIGZvciB0aW1lc3RhbXAgKi9cbiAgQElucHV0KCkgbGFzdEZhaWxlZExhYmVsOiBzdHJpbmcgPSAnTGFzdCBmYWlsZWQnO1xuICAvKiogT3B0aW9uYWwgZXh0cmEgY2xhc3MgZm9yIHRoZSBvdXRlciBjYXJkICovXG4gIEBJbnB1dCgpIGNhcmRDbGFzczogc3RyaW5nID0gJyc7XG4gIC8qKiBMZWZ0IGJvcmRlciBhY2NlbnQgY2xhc3MgKi9cbiAgQElucHV0KCkgbGVmdEFjY2VudENsYXNzOiBzdHJpbmcgPSAnY3FhLWJvcmRlci1sLVs0cHhdJztcbiAgLyoqIE9wdGlvbmFsIHRhZ3MgdG8gcmVuZGVyIHVuZGVyIHRoZSB0aXRsZSAqL1xuICBASW5wdXQoKSB0YWdzOiBzdHJpbmdbXSA9IFtdO1xuICAvKiogRW1pdHRlZCB3aGVuIHRoZSBjYXJkIGlzIGNsaWNrZWQgKi9cbiAgQE91dHB1dCgpIGNhcmRDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBnZXQgcm9vdENhdXNlRGlzcGxheSgpOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5yb290Q2F1c2UgfHwgIXRoaXMucm9vdENhdXNlLnRyaW0oKS5sZW5ndGgpIHtcbiAgICAgIHJldHVybiAnTm8gcm9vdCBjYXVzZSBhdmFpbGFibGUnO1xuICAgIH1cbiAgICAvLyBUcmltIGFuZCByZXR1cm4gdGhlIHJvb3QgY2F1c2UgdGV4dFxuICAgIHJldHVybiB0aGlzLnJvb3RDYXVzZS50cmltKCk7XG4gIH1cblxuICBvbkNhcmRDbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLmNhcmRDbGljay5lbWl0KCk7XG4gIH1cbn1cblxuXG4iLCI8ZGl2IGlkPVwiY3FhLXVpLXJvb3RcIj5cbiAgPGRpdiBjbGFzcz1cImNxYS13LWZ1bGwgY3FhLWJnLVsjRkVGMkYyNDBdIGNxYS1ib3JkZXIgY3FhLWJvcmRlci1zb2xpZCBjcWEtYm9yZGVyLVsjRTVFN0VCXSBjcWEtYm9yZGVyLWwtWyNFRjQ0NDRdIGNxYS1yb3VuZGVkLVsxMHB4XSBjcWEtcC1bMTBweF0gY3FhLXBsLVsyMHB4XSBjcWEtY3Vyc29yLXBvaW50ZXIgY3FhLXRyYW5zaXRpb24tc2hhZG93IGNxYS1kdXJhdGlvbi0yMDAgaG92ZXI6Y3FhLXNoYWRvdy1tZFwiXG4gICAgW25nQ2xhc3NdPVwiW2xlZnRBY2NlbnRDbGFzcywgY2FyZENsYXNzXVwiXG4gICAgKGNsaWNrKT1cIm9uQ2FyZENsaWNrKClcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY3FhLWZsZXggY3FhLWZsZXgtY29sIGNxYS1nYXAtMlwiPlxuICAgICAgPGRpdiBjbGFzcz1cImNxYS1mbGV4IGNxYS1pdGVtcy1zdGFydCBjcWEtanVzdGlmeS1iZXR3ZWVuIGNxYS1nYXAtMiBjcWEtZmxleC13cmFwXCI+XG4gICAgICAgIDwhLS0gVGl0bGUgLS0+XG4gICAgICAgIDxoMyBjbGFzcz1cImNxYS10ZXh0LVsxNHB4XSBjcWEtbGVhZGluZy1bMTdweF0gY3FhLWZvbnQtc2VtaWJvbGQgY3FhLXRleHQtWyMxQTFBMUFdXCI+e3sgdGl0bGUgfX08L2gzPlxuXG4gICAgICAgIDwhLS0gRmFpbHVyZXMgcGlsbCAtLT5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJjcWEtcHgtWzExcHhdIGNxYS1weS1bM3B4XSBjcWEtcm91bmRlZC1mdWxsIGNxYS10ZXh0LVsxMnB4XSBjcWEtbGVhZGluZy1bMTZweF0gY3FhLWZvbnQtbWVkaXVtIGNxYS10cmFja2luZy1bMC4zcHhdXCJcbiAgICAgICAgICBbbmdDbGFzc109XCJwaWxsQ2xhc3NcIj5cbiAgICAgICAgICB7eyBmYWlsdXJlcyB8IG51bWJlciB9fSB7eyBmYWlsdXJlc0xhYmVsIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8IS0tIFRhZ3MgLS0+XG4gICAgICA8ZGl2ICpuZ0lmPVwidGFncz8ubGVuZ3RoXCIgY2xhc3M9XCJjcWEtZmxleCBjcWEtZmxleC13cmFwIGNxYS1nYXAtMlwiPlxuICAgICAgICA8c3BhblxuICAgICAgICAgICpuZ0Zvcj1cImxldCB0YWcgb2YgdGFnc1wiXG4gICAgICAgICAgY2xhc3M9XCJjcWEtaW5saW5lLWZsZXggY3FhLWl0ZW1zLWNlbnRlciBjcWEtZ2FwLTEgY3FhLWJvcmRlci1zb2xpZCBjcWEtcm91bmRlZC1mdWxsIGNxYS1iZy13aGl0ZSBjcWEtYm9yZGVyIGNxYS1ib3JkZXItWyNFNUU3RUJdIGNxYS10ZXh0LVsjMUYxRjI0XSBjcWEtdGV4dC1bMTFweF0gY3FhLWxlYWRpbmctWzE0cHhdIGNxYS1mb250LXNlbWlib2xkIGNxYS1weC1bMTBweF0gY3FhLXB5LVs0cHhdXCI+XG4gICAgICAgICAge3sgdGFnIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cImNxYS1mbGV4IGNxYS1pdGVtcy1jZW50ZXIgY3FhLWp1c3RpZnktYmV0d2VlbiBjcWEtZmxleC13cmFwIGNxYS1tdC0yXCI+XG4gICAgICA8IS0tIFJvb3QgY2F1c2UgLS0+XG4gICAgICA8ZGl2ICpuZ0lmPVwic2hvd1Jvb3RDYXVzZVwiIGNsYXNzPVwiY3FhLXRleHQtWzEycHhdIGNxYS1sZWFkaW5nLVsxNXB4XSBjcWEtdGV4dC1bI0YxNUY1Rl0gY3FhLWZsZXgtMSBjcWEtbWluLXctMCBjcWEtbXItMiBjcWEtdHJ1bmNhdGVcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJjcWEtZm9udC1zZW1pYm9sZFwiPnt7IHJvb3RDYXVzZUxhYmVsIH19OiA8L3NwYW4+e3sgcm9vdENhdXNlRGlzcGxheSB9fVxuICAgICAgPC9kaXY+XG5cbiAgICAgIDwhLS0gVGltZXN0YW1wIC0tPlxuICAgICAgPGRpdiAqbmdJZj1cImxhc3RGYWlsZWRcIlxuICAgICAgICBjbGFzcz1cImNxYS1weS1bM3B4XSBjcWEtZmxleCBjcWEtaXRlbXMtY2VudGVyIGNxYS1nYXAtMSBjcWEtdGV4dC1bMTBweF0gY3FhLWxlYWRpbmctWzE1cHhdIGNxYS1mb250LW1lZGl1bSBjcWEtdGV4dC1kaWFsb2ctbXV0ZWRcIj5cbiAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+PHBhdGggZD1cIk02IDExQzguNzYxNDIgMTEgMTEgOC43NjE0MiAxMSA2QzExIDMuMjM4NTggOC43NjE0MiAxIDYgMUMzLjIzODU4IDEgMSAzLjIzODU4IDEgNkMxIDguNzYxNDIgMy4yMzg1OCAxMSA2IDExWlwiIHN0cm9rZT1cIiM2QjcyODBcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+PHBhdGggZD1cIk02IDNWNkw4IDdcIiBzdHJva2U9XCIjNkI3MjgwXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPjwvc3ZnPlxuICAgICAgICA8c3Bhbj57eyBsYXN0RmFpbGVkTGFiZWwgfX06IHt7IGxhc3RGYWlsZWQgfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj4iXX0=