valtech-components 2.0.622 → 2.0.624

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 (29) hide show
  1. package/esm2022/lib/components/molecules/docs-code-example/docs-code-example.component.mjs +3 -3
  2. package/esm2022/lib/components/molecules/footer-links/footer-links.component.mjs +3 -3
  3. package/esm2022/lib/components/molecules/update-banner/update-banner.component.mjs +112 -0
  4. package/esm2022/lib/components/templates/docs-shell/docs-shell.component.mjs +3 -3
  5. package/esm2022/lib/components/templates/maintenance-page/maintenance-page.component.mjs +153 -0
  6. package/esm2022/lib/components/templates/maintenance-page/types.mjs +2 -0
  7. package/esm2022/lib/components/templates/page-content/page-content.component.mjs +21 -5
  8. package/esm2022/lib/components/templates/page-content/types.mjs +1 -1
  9. package/esm2022/lib/services/app-config/app-config.service.mjs +209 -0
  10. package/esm2022/lib/services/app-config/config.mjs +47 -0
  11. package/esm2022/lib/services/app-config/index.mjs +48 -0
  12. package/esm2022/lib/services/app-config/types.mjs +13 -0
  13. package/esm2022/lib/services/app-config/version.mjs +85 -0
  14. package/esm2022/lib/services/i18n/default-content.mjs +21 -1
  15. package/esm2022/public-api.mjs +8 -1
  16. package/fesm2022/valtech-components.mjs +8280 -7602
  17. package/fesm2022/valtech-components.mjs.map +1 -1
  18. package/lib/components/molecules/update-banner/update-banner.component.d.ts +42 -0
  19. package/lib/components/templates/maintenance-page/maintenance-page.component.d.ts +57 -0
  20. package/lib/components/templates/maintenance-page/types.d.ts +12 -0
  21. package/lib/components/templates/page-content/page-content.component.d.ts +6 -0
  22. package/lib/components/templates/page-content/types.d.ts +6 -0
  23. package/lib/services/app-config/app-config.service.d.ts +115 -0
  24. package/lib/services/app-config/config.d.ts +31 -0
  25. package/lib/services/app-config/index.d.ts +47 -0
  26. package/lib/services/app-config/types.d.ts +54 -0
  27. package/lib/services/app-config/version.d.ts +64 -0
  28. package/package.json +7 -1
  29. package/public-api.d.ts +4 -0
@@ -162,7 +162,7 @@ export class DocsCodeExampleComponent {
162
162
  </div>
163
163
  }
164
164
  </div>
165
- `, isInline: true, styles: [".docs-code-example{margin:1.5rem 0;border:1px solid #f2f6f7;border-radius:12px;overflow:hidden;box-shadow:0 2px 4px #0000000d;background:#fff}.docs-code-example__header{padding:1rem 1.25rem;border-bottom:1px solid #f2f6f7;background:#fff}.docs-code-example__title{font-size:1rem;font-weight:600;margin:0 0 .25rem;color:var(--ion-text-color, #1a1a1a)}.docs-code-example__description{font-size:.875rem;color:var(--ion-color-medium, #666);margin:0}.docs-code-example__external-link{display:inline-flex;align-items:center;gap:.25rem;margin-top:.5rem;font-size:.8125rem;color:#555;text-decoration:none}.docs-code-example__external-link:hover{color:#1a1a1a;text-decoration:underline}.docs-code-example__external-link ion-icon{font-size:.875rem}.docs-code-example__preview{padding:1.5rem;background:#fff;border-bottom:1px solid #f2f6f7}.docs-code-example__tabs{background:#f6f9fa}.docs-code-example__tab-list{display:flex;gap:2px;border-bottom:1px solid #f2f6f7;overflow-x:auto;scrollbar-width:thin;font-size:12px}.docs-code-example__tab{padding:10px 18px 8px;font-family:Roboto Mono,SF Mono,Monaco,monospace;font-size:.95em;font-weight:500;color:#899396;background:transparent;border:1px solid transparent;border-bottom:none;border-radius:8px 8px 0 0;cursor:pointer;transition:background .2s,color .2s;margin-bottom:-1px;white-space:nowrap}.docs-code-example__tab:hover{background:#e8eef2}.docs-code-example__tab--active{background:#fff;color:#19422d;border:1px solid #f2f6f7;border-bottom:1px solid #ffffff;font-weight:600;z-index:2}.docs-code-example__code-panel{position:relative;background:#fff}.docs-code-example__code-header{position:sticky;top:10px;float:right;z-index:10;height:0;margin-right:15px}.docs-code-example__copy-btn{--padding-start: 2px;--padding-end: 2px;min-width:28px;min-height:28px;height:28px;width:28px;--color: var(--ion-color-primary);--background: rgba(255, 255, 255, .7);border-radius:6px;box-shadow:0 1px 4px #0000000d;opacity:0;transition:opacity .2s ease}.docs-code-example__code-panel:hover .docs-code-example__copy-btn{opacity:1}.docs-code-example__copy-btn:hover{--background: rgba(255, 255, 255, .9)}.docs-code-example__pre{margin:0;padding:1rem 1.25rem;overflow-x:auto;overflow-y:auto;max-height:30rem;min-height:3rem;background:#fff;white-space:pre;word-break:normal}.docs-code-example__pre--line-numbers{padding-left:3rem;counter-reset:line}.docs-code-example__code{display:block;font-family:Roboto Mono,SF Mono,Monaco,Courier New,monospace;font-size:.75em;line-height:1.5;color:#24292f;white-space:inherit;word-break:normal;tab-size:2}.docs-code-example__code .token{text-decoration:none!important}.docs-code-example__code .token.comment,.docs-code-example__code .token.prolog,.docs-code-example__code .token.doctype,.docs-code-example__code .token.cdata{color:#6a737d}.docs-code-example__code .token.punctuation{color:#24292f}.docs-code-example__code .token.property,.docs-code-example__code .token.tag,.docs-code-example__code .token.boolean,.docs-code-example__code .token.number,.docs-code-example__code .token.constant,.docs-code-example__code .token.symbol,.docs-code-example__code .token.deleted{color:#005cc5}.docs-code-example__code .token.selector,.docs-code-example__code .token.attr-name,.docs-code-example__code .token.string,.docs-code-example__code .token.char,.docs-code-example__code .token.builtin,.docs-code-example__code .token.inserted{color:#22863a}.docs-code-example__code .token.operator,.docs-code-example__code .token.entity,.docs-code-example__code .token.url{color:#24292f}.docs-code-example__code .token.atrule,.docs-code-example__code .token.attr-value,.docs-code-example__code .token.keyword{color:#d73a49}.docs-code-example__code .token.function,.docs-code-example__code .token.class-name{color:#6f42c1}.docs-code-example__code .token.regex,.docs-code-example__code .token.important,.docs-code-example__code .token.variable{color:#e36209}@media (max-width: 600px){.docs-code-example{border-radius:8px}.docs-code-example__tab-list{font-size:11px}.docs-code-example__pre{max-height:20rem}.docs-code-example__code{font-size:.7em}}@media (prefers-color-scheme: dark){.docs-code-example{background:#21252b;border-color:#3b4048;box-shadow:0 4px 15px #0009}.docs-code-example__header{background:#21252b;border-color:#3b4048}.docs-code-example__title{color:#c9d1d9}.docs-code-example__preview{background:#161b22;border-color:#3b4048}.docs-code-example__tabs{background:#1a1a1a}.docs-code-example__tab-list{border-color:#3b4048}.docs-code-example__tab{color:#8b949e}.docs-code-example__tab:hover{background:#21252b}.docs-code-example__tab--active{background:#282c34;color:#c9d1d9;border-color:#3b4048;border-bottom-color:#282c34}.docs-code-example__code-panel,.docs-code-example__pre{background:#161b22}.docs-code-example__code{color:#c9d1d9}.docs-code-example__copy-btn{--background: rgba(0, 0, 0, .4)}.docs-code-example__copy-btn:hover{--background: rgba(0, 0, 0, .6)}.docs-code-example__code .token.comment,.docs-code-example__code .token.prolog,.docs-code-example__code .token.doctype,.docs-code-example__code .token.cdata{color:#8b949e}.docs-code-example__code .token.punctuation{color:#c9d1d9}.docs-code-example__code .token.property,.docs-code-example__code .token.tag,.docs-code-example__code .token.boolean,.docs-code-example__code .token.number,.docs-code-example__code .token.constant,.docs-code-example__code .token.symbol,.docs-code-example__code .token.deleted{color:#79c0ff}.docs-code-example__code .token.selector,.docs-code-example__code .token.attr-name,.docs-code-example__code .token.string,.docs-code-example__code .token.char,.docs-code-example__code .token.builtin,.docs-code-example__code .token.inserted{color:#7ee787}.docs-code-example__code .token.operator,.docs-code-example__code .token.entity,.docs-code-example__code .token.url{color:#c9d1d9}.docs-code-example__code .token.atrule,.docs-code-example__code .token.attr-value,.docs-code-example__code .token.keyword{color:#ff7b72}.docs-code-example__code .token.function,.docs-code-example__code .token.class-name{color:#d2a8ff}.docs-code-example__code .token.regex,.docs-code-example__code .token.important,.docs-code-example__code .token.variable{color:#ffa657}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }], encapsulation: i0.ViewEncapsulation.None }); }
165
+ `, isInline: true, styles: [".docs-code-example{margin:1.5rem 0;border:1px solid #f2f6f7;border-radius:12px;overflow:hidden;box-shadow:0 2px 4px #0000000d;background:#fff}.docs-code-example__header{padding:1rem 1.25rem;border-bottom:1px solid #f2f6f7;background:#fff}.docs-code-example__title{font-size:1rem;font-weight:600;margin:0 0 .25rem;color:var(--ion-text-color, #1a1a1a)}.docs-code-example__description{font-size:.875rem;color:var(--ion-color-medium, #666);margin:0}.docs-code-example__external-link{display:inline-flex;align-items:center;gap:.25rem;margin-top:.5rem;font-size:.8125rem;color:#555;text-decoration:none}.docs-code-example__external-link:hover{color:#1a1a1a;text-decoration:underline}.docs-code-example__external-link ion-icon{font-size:.875rem}.docs-code-example__preview{padding:1.5rem;background:#fff;border-bottom:1px solid #f2f6f7}.docs-code-example__tabs{background:#f6f9fa}.docs-code-example__tab-list{display:flex;gap:2px;border-bottom:1px solid #f2f6f7;overflow-x:auto;scrollbar-width:thin;font-size:12px}.docs-code-example__tab{padding:10px 18px 8px;font-family:Roboto Mono,SF Mono,Monaco,monospace;font-size:.95em;font-weight:500;color:#899396;background:transparent;border:1px solid transparent;border-bottom:none;border-radius:8px 8px 0 0;cursor:pointer;transition:background .2s,color .2s;margin-bottom:-1px;white-space:nowrap}.docs-code-example__tab:hover{background:#e8eef2}.docs-code-example__tab--active{background:#fff;color:#19422d;border:1px solid #f2f6f7;border-bottom:1px solid #ffffff;font-weight:600;z-index:2}.docs-code-example__code-panel{position:relative;background:#fff}.docs-code-example__code-header{position:sticky;top:10px;float:right;z-index:10;height:0;margin-right:15px}.docs-code-example__copy-btn{--padding-start: 2px;--padding-end: 2px;min-width:28px;min-height:28px;height:28px;width:28px;--color: var(--ion-color-primary);--background: rgba(255, 255, 255, .7);border-radius:6px;box-shadow:0 1px 4px #0000000d;opacity:0;transition:opacity .2s ease}.docs-code-example__code-panel:hover .docs-code-example__copy-btn{opacity:1}.docs-code-example__copy-btn:hover{--background: rgba(255, 255, 255, .9)}.docs-code-example__pre{margin:0;padding:0;overflow-x:auto;overflow-y:auto;max-height:30rem;min-height:3rem;background:#fff;white-space:pre;word-break:normal}.docs-code-example__pre--line-numbers{padding-left:3rem;counter-reset:line}.docs-code-example__code{display:block;font-family:Roboto Mono,SF Mono,Monaco,Courier New,monospace;font-size:.75em;line-height:1.5;color:#24292f;white-space:inherit;word-break:normal;tab-size:2}.docs-code-example__code .token{text-decoration:none!important}.docs-code-example__code .token.comment,.docs-code-example__code .token.prolog,.docs-code-example__code .token.doctype,.docs-code-example__code .token.cdata{color:#6a737d}.docs-code-example__code .token.punctuation{color:#24292f}.docs-code-example__code .token.property,.docs-code-example__code .token.tag,.docs-code-example__code .token.boolean,.docs-code-example__code .token.number,.docs-code-example__code .token.constant,.docs-code-example__code .token.symbol,.docs-code-example__code .token.deleted{color:#005cc5}.docs-code-example__code .token.selector,.docs-code-example__code .token.attr-name,.docs-code-example__code .token.string,.docs-code-example__code .token.char,.docs-code-example__code .token.builtin,.docs-code-example__code .token.inserted{color:#22863a}.docs-code-example__code .token.operator,.docs-code-example__code .token.entity,.docs-code-example__code .token.url{color:#24292f}.docs-code-example__code .token.atrule,.docs-code-example__code .token.attr-value,.docs-code-example__code .token.keyword{color:#d73a49}.docs-code-example__code .token.function,.docs-code-example__code .token.class-name{color:#6f42c1}.docs-code-example__code .token.regex,.docs-code-example__code .token.important,.docs-code-example__code .token.variable{color:#e36209}@media (max-width: 600px){.docs-code-example{border-radius:8px}.docs-code-example__tab-list{font-size:11px}.docs-code-example__pre{max-height:20rem}.docs-code-example__code{font-size:.7em}}@media (prefers-color-scheme: dark){.docs-code-example{background:#21252b;border-color:#3b4048;box-shadow:0 4px 15px #0009}.docs-code-example__header{background:#21252b;border-color:#3b4048}.docs-code-example__title{color:#c9d1d9}.docs-code-example__preview{background:#161b22;border-color:#3b4048}.docs-code-example__tabs{background:#1a1a1a}.docs-code-example__tab-list{border-color:#3b4048}.docs-code-example__tab{color:#8b949e}.docs-code-example__tab:hover{background:#21252b}.docs-code-example__tab--active{background:#282c34;color:#c9d1d9;border-color:#3b4048;border-bottom-color:#282c34}.docs-code-example__code-panel,.docs-code-example__pre{background:#161b22}.docs-code-example__code{color:#c9d1d9}.docs-code-example__copy-btn{--background: rgba(0, 0, 0, .4)}.docs-code-example__copy-btn:hover{--background: rgba(0, 0, 0, .6)}.docs-code-example__code .token.comment,.docs-code-example__code .token.prolog,.docs-code-example__code .token.doctype,.docs-code-example__code .token.cdata{color:#8b949e}.docs-code-example__code .token.punctuation{color:#c9d1d9}.docs-code-example__code .token.property,.docs-code-example__code .token.tag,.docs-code-example__code .token.boolean,.docs-code-example__code .token.number,.docs-code-example__code .token.constant,.docs-code-example__code .token.symbol,.docs-code-example__code .token.deleted{color:#79c0ff}.docs-code-example__code .token.selector,.docs-code-example__code .token.attr-name,.docs-code-example__code .token.string,.docs-code-example__code .token.char,.docs-code-example__code .token.builtin,.docs-code-example__code .token.inserted{color:#7ee787}.docs-code-example__code .token.operator,.docs-code-example__code .token.entity,.docs-code-example__code .token.url{color:#c9d1d9}.docs-code-example__code .token.atrule,.docs-code-example__code .token.attr-value,.docs-code-example__code .token.keyword{color:#ff7b72}.docs-code-example__code .token.function,.docs-code-example__code .token.class-name{color:#d2a8ff}.docs-code-example__code .token.regex,.docs-code-example__code .token.important,.docs-code-example__code .token.variable{color:#ffa657}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }], encapsulation: i0.ViewEncapsulation.None }); }
166
166
  }
167
167
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DocsCodeExampleComponent, decorators: [{
168
168
  type: Component,
@@ -245,11 +245,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
245
245
  </div>
246
246
  }
247
247
  </div>
248
- `, styles: [".docs-code-example{margin:1.5rem 0;border:1px solid #f2f6f7;border-radius:12px;overflow:hidden;box-shadow:0 2px 4px #0000000d;background:#fff}.docs-code-example__header{padding:1rem 1.25rem;border-bottom:1px solid #f2f6f7;background:#fff}.docs-code-example__title{font-size:1rem;font-weight:600;margin:0 0 .25rem;color:var(--ion-text-color, #1a1a1a)}.docs-code-example__description{font-size:.875rem;color:var(--ion-color-medium, #666);margin:0}.docs-code-example__external-link{display:inline-flex;align-items:center;gap:.25rem;margin-top:.5rem;font-size:.8125rem;color:#555;text-decoration:none}.docs-code-example__external-link:hover{color:#1a1a1a;text-decoration:underline}.docs-code-example__external-link ion-icon{font-size:.875rem}.docs-code-example__preview{padding:1.5rem;background:#fff;border-bottom:1px solid #f2f6f7}.docs-code-example__tabs{background:#f6f9fa}.docs-code-example__tab-list{display:flex;gap:2px;border-bottom:1px solid #f2f6f7;overflow-x:auto;scrollbar-width:thin;font-size:12px}.docs-code-example__tab{padding:10px 18px 8px;font-family:Roboto Mono,SF Mono,Monaco,monospace;font-size:.95em;font-weight:500;color:#899396;background:transparent;border:1px solid transparent;border-bottom:none;border-radius:8px 8px 0 0;cursor:pointer;transition:background .2s,color .2s;margin-bottom:-1px;white-space:nowrap}.docs-code-example__tab:hover{background:#e8eef2}.docs-code-example__tab--active{background:#fff;color:#19422d;border:1px solid #f2f6f7;border-bottom:1px solid #ffffff;font-weight:600;z-index:2}.docs-code-example__code-panel{position:relative;background:#fff}.docs-code-example__code-header{position:sticky;top:10px;float:right;z-index:10;height:0;margin-right:15px}.docs-code-example__copy-btn{--padding-start: 2px;--padding-end: 2px;min-width:28px;min-height:28px;height:28px;width:28px;--color: var(--ion-color-primary);--background: rgba(255, 255, 255, .7);border-radius:6px;box-shadow:0 1px 4px #0000000d;opacity:0;transition:opacity .2s ease}.docs-code-example__code-panel:hover .docs-code-example__copy-btn{opacity:1}.docs-code-example__copy-btn:hover{--background: rgba(255, 255, 255, .9)}.docs-code-example__pre{margin:0;padding:1rem 1.25rem;overflow-x:auto;overflow-y:auto;max-height:30rem;min-height:3rem;background:#fff;white-space:pre;word-break:normal}.docs-code-example__pre--line-numbers{padding-left:3rem;counter-reset:line}.docs-code-example__code{display:block;font-family:Roboto Mono,SF Mono,Monaco,Courier New,monospace;font-size:.75em;line-height:1.5;color:#24292f;white-space:inherit;word-break:normal;tab-size:2}.docs-code-example__code .token{text-decoration:none!important}.docs-code-example__code .token.comment,.docs-code-example__code .token.prolog,.docs-code-example__code .token.doctype,.docs-code-example__code .token.cdata{color:#6a737d}.docs-code-example__code .token.punctuation{color:#24292f}.docs-code-example__code .token.property,.docs-code-example__code .token.tag,.docs-code-example__code .token.boolean,.docs-code-example__code .token.number,.docs-code-example__code .token.constant,.docs-code-example__code .token.symbol,.docs-code-example__code .token.deleted{color:#005cc5}.docs-code-example__code .token.selector,.docs-code-example__code .token.attr-name,.docs-code-example__code .token.string,.docs-code-example__code .token.char,.docs-code-example__code .token.builtin,.docs-code-example__code .token.inserted{color:#22863a}.docs-code-example__code .token.operator,.docs-code-example__code .token.entity,.docs-code-example__code .token.url{color:#24292f}.docs-code-example__code .token.atrule,.docs-code-example__code .token.attr-value,.docs-code-example__code .token.keyword{color:#d73a49}.docs-code-example__code .token.function,.docs-code-example__code .token.class-name{color:#6f42c1}.docs-code-example__code .token.regex,.docs-code-example__code .token.important,.docs-code-example__code .token.variable{color:#e36209}@media (max-width: 600px){.docs-code-example{border-radius:8px}.docs-code-example__tab-list{font-size:11px}.docs-code-example__pre{max-height:20rem}.docs-code-example__code{font-size:.7em}}@media (prefers-color-scheme: dark){.docs-code-example{background:#21252b;border-color:#3b4048;box-shadow:0 4px 15px #0009}.docs-code-example__header{background:#21252b;border-color:#3b4048}.docs-code-example__title{color:#c9d1d9}.docs-code-example__preview{background:#161b22;border-color:#3b4048}.docs-code-example__tabs{background:#1a1a1a}.docs-code-example__tab-list{border-color:#3b4048}.docs-code-example__tab{color:#8b949e}.docs-code-example__tab:hover{background:#21252b}.docs-code-example__tab--active{background:#282c34;color:#c9d1d9;border-color:#3b4048;border-bottom-color:#282c34}.docs-code-example__code-panel,.docs-code-example__pre{background:#161b22}.docs-code-example__code{color:#c9d1d9}.docs-code-example__copy-btn{--background: rgba(0, 0, 0, .4)}.docs-code-example__copy-btn:hover{--background: rgba(0, 0, 0, .6)}.docs-code-example__code .token.comment,.docs-code-example__code .token.prolog,.docs-code-example__code .token.doctype,.docs-code-example__code .token.cdata{color:#8b949e}.docs-code-example__code .token.punctuation{color:#c9d1d9}.docs-code-example__code .token.property,.docs-code-example__code .token.tag,.docs-code-example__code .token.boolean,.docs-code-example__code .token.number,.docs-code-example__code .token.constant,.docs-code-example__code .token.symbol,.docs-code-example__code .token.deleted{color:#79c0ff}.docs-code-example__code .token.selector,.docs-code-example__code .token.attr-name,.docs-code-example__code .token.string,.docs-code-example__code .token.char,.docs-code-example__code .token.builtin,.docs-code-example__code .token.inserted{color:#7ee787}.docs-code-example__code .token.operator,.docs-code-example__code .token.entity,.docs-code-example__code .token.url{color:#c9d1d9}.docs-code-example__code .token.atrule,.docs-code-example__code .token.attr-value,.docs-code-example__code .token.keyword{color:#ff7b72}.docs-code-example__code .token.function,.docs-code-example__code .token.class-name{color:#d2a8ff}.docs-code-example__code .token.regex,.docs-code-example__code .token.important,.docs-code-example__code .token.variable{color:#ffa657}}\n"] }]
248
+ `, styles: [".docs-code-example{margin:1.5rem 0;border:1px solid #f2f6f7;border-radius:12px;overflow:hidden;box-shadow:0 2px 4px #0000000d;background:#fff}.docs-code-example__header{padding:1rem 1.25rem;border-bottom:1px solid #f2f6f7;background:#fff}.docs-code-example__title{font-size:1rem;font-weight:600;margin:0 0 .25rem;color:var(--ion-text-color, #1a1a1a)}.docs-code-example__description{font-size:.875rem;color:var(--ion-color-medium, #666);margin:0}.docs-code-example__external-link{display:inline-flex;align-items:center;gap:.25rem;margin-top:.5rem;font-size:.8125rem;color:#555;text-decoration:none}.docs-code-example__external-link:hover{color:#1a1a1a;text-decoration:underline}.docs-code-example__external-link ion-icon{font-size:.875rem}.docs-code-example__preview{padding:1.5rem;background:#fff;border-bottom:1px solid #f2f6f7}.docs-code-example__tabs{background:#f6f9fa}.docs-code-example__tab-list{display:flex;gap:2px;border-bottom:1px solid #f2f6f7;overflow-x:auto;scrollbar-width:thin;font-size:12px}.docs-code-example__tab{padding:10px 18px 8px;font-family:Roboto Mono,SF Mono,Monaco,monospace;font-size:.95em;font-weight:500;color:#899396;background:transparent;border:1px solid transparent;border-bottom:none;border-radius:8px 8px 0 0;cursor:pointer;transition:background .2s,color .2s;margin-bottom:-1px;white-space:nowrap}.docs-code-example__tab:hover{background:#e8eef2}.docs-code-example__tab--active{background:#fff;color:#19422d;border:1px solid #f2f6f7;border-bottom:1px solid #ffffff;font-weight:600;z-index:2}.docs-code-example__code-panel{position:relative;background:#fff}.docs-code-example__code-header{position:sticky;top:10px;float:right;z-index:10;height:0;margin-right:15px}.docs-code-example__copy-btn{--padding-start: 2px;--padding-end: 2px;min-width:28px;min-height:28px;height:28px;width:28px;--color: var(--ion-color-primary);--background: rgba(255, 255, 255, .7);border-radius:6px;box-shadow:0 1px 4px #0000000d;opacity:0;transition:opacity .2s ease}.docs-code-example__code-panel:hover .docs-code-example__copy-btn{opacity:1}.docs-code-example__copy-btn:hover{--background: rgba(255, 255, 255, .9)}.docs-code-example__pre{margin:0;padding:0;overflow-x:auto;overflow-y:auto;max-height:30rem;min-height:3rem;background:#fff;white-space:pre;word-break:normal}.docs-code-example__pre--line-numbers{padding-left:3rem;counter-reset:line}.docs-code-example__code{display:block;font-family:Roboto Mono,SF Mono,Monaco,Courier New,monospace;font-size:.75em;line-height:1.5;color:#24292f;white-space:inherit;word-break:normal;tab-size:2}.docs-code-example__code .token{text-decoration:none!important}.docs-code-example__code .token.comment,.docs-code-example__code .token.prolog,.docs-code-example__code .token.doctype,.docs-code-example__code .token.cdata{color:#6a737d}.docs-code-example__code .token.punctuation{color:#24292f}.docs-code-example__code .token.property,.docs-code-example__code .token.tag,.docs-code-example__code .token.boolean,.docs-code-example__code .token.number,.docs-code-example__code .token.constant,.docs-code-example__code .token.symbol,.docs-code-example__code .token.deleted{color:#005cc5}.docs-code-example__code .token.selector,.docs-code-example__code .token.attr-name,.docs-code-example__code .token.string,.docs-code-example__code .token.char,.docs-code-example__code .token.builtin,.docs-code-example__code .token.inserted{color:#22863a}.docs-code-example__code .token.operator,.docs-code-example__code .token.entity,.docs-code-example__code .token.url{color:#24292f}.docs-code-example__code .token.atrule,.docs-code-example__code .token.attr-value,.docs-code-example__code .token.keyword{color:#d73a49}.docs-code-example__code .token.function,.docs-code-example__code .token.class-name{color:#6f42c1}.docs-code-example__code .token.regex,.docs-code-example__code .token.important,.docs-code-example__code .token.variable{color:#e36209}@media (max-width: 600px){.docs-code-example{border-radius:8px}.docs-code-example__tab-list{font-size:11px}.docs-code-example__pre{max-height:20rem}.docs-code-example__code{font-size:.7em}}@media (prefers-color-scheme: dark){.docs-code-example{background:#21252b;border-color:#3b4048;box-shadow:0 4px 15px #0009}.docs-code-example__header{background:#21252b;border-color:#3b4048}.docs-code-example__title{color:#c9d1d9}.docs-code-example__preview{background:#161b22;border-color:#3b4048}.docs-code-example__tabs{background:#1a1a1a}.docs-code-example__tab-list{border-color:#3b4048}.docs-code-example__tab{color:#8b949e}.docs-code-example__tab:hover{background:#21252b}.docs-code-example__tab--active{background:#282c34;color:#c9d1d9;border-color:#3b4048;border-bottom-color:#282c34}.docs-code-example__code-panel,.docs-code-example__pre{background:#161b22}.docs-code-example__code{color:#c9d1d9}.docs-code-example__copy-btn{--background: rgba(0, 0, 0, .4)}.docs-code-example__copy-btn:hover{--background: rgba(0, 0, 0, .6)}.docs-code-example__code .token.comment,.docs-code-example__code .token.prolog,.docs-code-example__code .token.doctype,.docs-code-example__code .token.cdata{color:#8b949e}.docs-code-example__code .token.punctuation{color:#c9d1d9}.docs-code-example__code .token.property,.docs-code-example__code .token.tag,.docs-code-example__code .token.boolean,.docs-code-example__code .token.number,.docs-code-example__code .token.constant,.docs-code-example__code .token.symbol,.docs-code-example__code .token.deleted{color:#79c0ff}.docs-code-example__code .token.selector,.docs-code-example__code .token.attr-name,.docs-code-example__code .token.string,.docs-code-example__code .token.char,.docs-code-example__code .token.builtin,.docs-code-example__code .token.inserted{color:#7ee787}.docs-code-example__code .token.operator,.docs-code-example__code .token.entity,.docs-code-example__code .token.url{color:#c9d1d9}.docs-code-example__code .token.atrule,.docs-code-example__code .token.attr-value,.docs-code-example__code .token.keyword{color:#ff7b72}.docs-code-example__code .token.function,.docs-code-example__code .token.class-name{color:#d2a8ff}.docs-code-example__code .token.regex,.docs-code-example__code .token.important,.docs-code-example__code .token.variable{color:#ffa657}}\n"] }]
249
249
  }], propDecorators: { props: [{
250
250
  type: Input
251
251
  }], previewTpl: [{
252
252
  type: ContentChild,
253
253
  args: ['preview']
254
254
  }] } });
255
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jcy1jb2RlLWV4YW1wbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9kb2NzLWNvZGUtZXhhbXBsZS9kb2NzLWNvZGUtZXhhbXBsZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBZSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkcsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHNUUscUVBQXFFO0FBQ3JFLE9BQU8sS0FBSyxLQUFLLE1BQU0sU0FBUyxDQUFDO0FBQ2pDLE9BQU8scUNBQXFDLENBQUM7QUFDN0MsT0FBTyxxQ0FBcUMsQ0FBQztBQUM3QyxPQUFPLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sK0JBQStCLENBQUM7QUFDdkMsT0FBTywrQkFBK0IsQ0FBQztBQUN2QyxPQUFPLCtCQUErQixDQUFDO0FBQ3ZDLE9BQU8saUNBQWlDLENBQUM7OztBQUV6QyxRQUFRLENBQUMsRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztBQUV6RDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUJHO0FBMGJILE1BQU0sT0FBTyx3QkFBd0I7SUF6YnJDO1FBMGJXLFVBQUssR0FBNEIsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUM7UUFJN0MsY0FBUyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN0QixXQUFNLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBOENsQztJQTVDVyxVQUFVO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQ3hGLENBQUM7SUFFUyxlQUFlO1FBQ3ZCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUM5QixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2xELE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFdEMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2IsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxDQUFDO1FBRUQsT0FBTyxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxLQUFLLENBQUMsUUFBUTtRQUNaLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxJQUFJLENBQUM7UUFDcEMsSUFBSSxDQUFDO1lBQ0gsTUFBTSxTQUFTLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUMxQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN0QixVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDakQsQ0FBQztRQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDYixPQUFPLENBQUMsS0FBSyxDQUFDLHNCQUFzQixFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQzdDLENBQUM7SUFDSCxDQUFDO0lBRU8saUJBQWlCLENBQUMsUUFBZ0I7UUFDeEMsTUFBTSxPQUFPLEdBQTJCO1lBQ3RDLEVBQUUsRUFBRSxZQUFZO1lBQ2hCLEVBQUUsRUFBRSxZQUFZO1lBQ2hCLElBQUksRUFBRSxRQUFRO1lBQ2QsR0FBRyxFQUFFLFFBQVE7WUFDYixFQUFFLEVBQUUsTUFBTTtZQUNWLEtBQUssRUFBRSxNQUFNO1NBQ2QsQ0FBQztRQUNGLE9BQU8sT0FBTyxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNuRSxDQUFDO0lBRU8sVUFBVSxDQUFDLElBQVk7UUFDN0IsTUFBTSxHQUFHLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMxQyxHQUFHLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztRQUN2QixPQUFPLEdBQUcsQ0FBQyxTQUFTLENBQUM7SUFDdkIsQ0FBQzsrR0FuRFUsd0JBQXdCO21HQUF4Qix3QkFBd0IsZ05BcGJ6Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQStFVCxvb01BakZTLFlBQVksc01BQUUsT0FBTywySkFBRSxTQUFTOzs0RkFzYi9CLHdCQUF3QjtrQkF6YnBDLFNBQVM7K0JBQ0UsdUJBQXVCLGNBQ3JCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxPQUFPLEVBQUUsU0FBUyxDQUFDLGlCQUM1QixpQkFBaUIsQ0FBQyxJQUFJLFlBQzNCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBK0VUOzhCQXNXUSxLQUFLO3NCQUFiLEtBQUs7Z0JBRW1CLFVBQVU7c0JBQWxDLFlBQVk7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBzaWduYWwsIFRlbXBsYXRlUmVmLCBDb250ZW50Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJb25JY29uLCBJb25CdXR0b24gfSBmcm9tICdAaW9uaWMvYW5ndWxhci9zdGFuZGFsb25lJztcbmltcG9ydCB7IGFkZEljb25zIH0gZnJvbSAnaW9uaWNvbnMnO1xuaW1wb3J0IHsgY29weU91dGxpbmUsIGNoZWNrbWFya091dGxpbmUsIG9wZW5PdXRsaW5lIH0gZnJvbSAnaW9uaWNvbnMvaWNvbnMnO1xuaW1wb3J0IHsgRG9jc0NvZGVFeGFtcGxlTWV0YWRhdGEsIERvY3NDb2RlVGFiIH0gZnJvbSAnLi90eXBlcyc7XG5cbi8vIFByaXNtLmpzIGltcG9ydHMgKHNhbWUgcGF0dGVybiBhcyBjb2RlLWRpc3BsYXkgYW5kIHBsYWluLWNvZGUtYm94KVxuaW1wb3J0ICogYXMgUHJpc20gZnJvbSAncHJpc21qcyc7XG5pbXBvcnQgJ3ByaXNtanMvY29tcG9uZW50cy9wcmlzbS10eXBlc2NyaXB0JztcbmltcG9ydCAncHJpc21qcy9jb21wb25lbnRzL3ByaXNtLWphdmFzY3JpcHQnO1xuaW1wb3J0ICdwcmlzbWpzL2NvbXBvbmVudHMvcHJpc20tY3NzJztcbmltcG9ydCAncHJpc21qcy9jb21wb25lbnRzL3ByaXNtLXNjc3MnO1xuaW1wb3J0ICdwcmlzbWpzL2NvbXBvbmVudHMvcHJpc20tYmFzaCc7XG5pbXBvcnQgJ3ByaXNtanMvY29tcG9uZW50cy9wcmlzbS1qc29uJztcbmltcG9ydCAncHJpc21qcy9jb21wb25lbnRzL3ByaXNtLW1hcmt1cCc7XG5cbmFkZEljb25zKHsgY29weU91dGxpbmUsIGNoZWNrbWFya091dGxpbmUsIG9wZW5PdXRsaW5lIH0pO1xuXG4vKipcbiAqIHZhbC1kb2NzLWNvZGUtZXhhbXBsZVxuICpcbiAqIEEgY29kZSBleGFtcGxlIGNvbXBvbmVudCB3aXRoIHRhYnMsIHByZXZpZXcsIGFuZCBjb3B5IGZ1bmN0aW9uYWxpdHkuXG4gKlxuICogQGV4YW1wbGUgQmFzaWMgdXNhZ2VcbiAqIGBgYGh0bWxcbiAqIDx2YWwtZG9jcy1jb2RlLWV4YW1wbGVcbiAqICAgW3Byb3BzXT1cIntcbiAqICAgICB0aXRsZTogJ0Jhc2ljIEJ1dHRvbicsXG4gKiAgICAgdGFiczogW1xuICogICAgICAgeyBsYWJlbDogJ0hUTUwnLCBsYW5ndWFnZTogJ2h0bWwnLCBjb2RlOiAnPHZhbC1idXR0b24+Q2xpY2sgbWU8L3ZhbC1idXR0b24+JyB9LFxuICogICAgICAgeyBsYWJlbDogJ1R5cGVTY3JpcHQnLCBsYW5ndWFnZTogJ3R5cGVzY3JpcHQnLCBjb2RlOiAnaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAuLi4nIH1cbiAqICAgICBdXG4gKiAgIH1cIlxuICogPlxuICogICA8bmctdGVtcGxhdGUgI3ByZXZpZXc+XG4gKiAgICAgPHZhbC1idXR0b24gW3Byb3BzXT1cInsgbGFiZWw6ICdDbGljayBtZScgfVwiPjwvdmFsLWJ1dHRvbj5cbiAqICAgPC9uZy10ZW1wbGF0ZT5cbiAqIDwvdmFsLWRvY3MtY29kZS1leGFtcGxlPlxuICogYGBgXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1kb2NzLWNvZGUtZXhhbXBsZScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIElvbkljb24sIElvbkJ1dHRvbl0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImRvY3MtY29kZS1leGFtcGxlXCIgW2NsYXNzXT1cInByb3BzLmNzc0NsYXNzXCI+XG4gICAgICA8IS0tIEhlYWRlciAtLT5cbiAgICAgIEBpZiAocHJvcHMudGl0bGUgfHwgcHJvcHMuZGVzY3JpcHRpb24gfHwgcHJvcHMuZXh0ZXJuYWxMaW5rKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkb2NzLWNvZGUtZXhhbXBsZV9faGVhZGVyXCI+XG4gICAgICAgICAgQGlmIChwcm9wcy50aXRsZSkge1xuICAgICAgICAgICAgPGg0IGNsYXNzPVwiZG9jcy1jb2RlLWV4YW1wbGVfX3RpdGxlXCI+e3sgcHJvcHMudGl0bGUgfX08L2g0PlxuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgKHByb3BzLmRlc2NyaXB0aW9uKSB7XG4gICAgICAgICAgICA8cCBjbGFzcz1cImRvY3MtY29kZS1leGFtcGxlX19kZXNjcmlwdGlvblwiPnt7IHByb3BzLmRlc2NyaXB0aW9uIH19PC9wPlxuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgKHByb3BzLmV4dGVybmFsTGluaykge1xuICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgY2xhc3M9XCJkb2NzLWNvZGUtZXhhbXBsZV9fZXh0ZXJuYWwtbGlua1wiXG4gICAgICAgICAgICAgIFtocmVmXT1cInByb3BzLmV4dGVybmFsTGluay51cmxcIlxuICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3sgcHJvcHMuZXh0ZXJuYWxMaW5rLmxhYmVsIHx8ICdPcGVuIGluIFN0YWNrQmxpdHonIH19XG4gICAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwib3Blbi1vdXRsaW5lXCI+PC9pb24taWNvbj5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuXG4gICAgICA8IS0tIFByZXZpZXcgLS0+XG4gICAgICBAaWYgKHByZXZpZXdUcGwpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImRvY3MtY29kZS1leGFtcGxlX19wcmV2aWV3XCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInByZXZpZXdUcGxcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG5cbiAgICAgIDwhLS0gVGFicyAtLT5cbiAgICAgIEBpZiAocHJvcHMudGFicz8ubGVuZ3RoKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkb2NzLWNvZGUtZXhhbXBsZV9fdGFic1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkb2NzLWNvZGUtZXhhbXBsZV9fdGFiLWxpc3RcIiByb2xlPVwidGFibGlzdFwiPlxuICAgICAgICAgICAgQGZvciAodGFiIG9mIHByb3BzLnRhYnM7IHRyYWNrIHRhYi5sYWJlbDsgbGV0IGkgPSAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZG9jcy1jb2RlLWV4YW1wbGVfX3RhYlwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLmRvY3MtY29kZS1leGFtcGxlX190YWItLWFjdGl2ZV09XCJhY3RpdmVUYWIoKSA9PT0gaVwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImFjdGl2ZVRhYi5zZXQoaSlcIlxuICAgICAgICAgICAgICAgIHJvbGU9XCJ0YWJcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtc2VsZWN0ZWRdPVwiYWN0aXZlVGFiKCkgPT09IGlcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgdGFiLmxhYmVsIH19XG4gICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPCEtLSBDb2RlIFBhbmVsIC0tPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkb2NzLWNvZGUtZXhhbXBsZV9fY29kZS1wYW5lbFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRvY3MtY29kZS1leGFtcGxlX19jb2RlLWhlYWRlclwiPlxuICAgICAgICAgICAgICBAaWYgKHByb3BzLnNob3dDb3B5QnV0dG9uICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgIDxpb24tYnV0dG9uXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiY2xlYXJcIlxuICAgICAgICAgICAgICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZG9jcy1jb2RlLWV4YW1wbGVfX2NvcHktYnRuXCJcbiAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiY29waWVkKCkgPyAnQ29kZSBjb3BpZWQnIDogJ0NvcHkgY29kZSdcIlxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNvcHlDb2RlKClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxpb24taWNvblxuICAgICAgICAgICAgICAgICAgICBzbG90PVwiaWNvbi1vbmx5XCJcbiAgICAgICAgICAgICAgICAgICAgW25hbWVdPVwiY29waWVkKCkgPyAnY2hlY2ttYXJrLW91dGxpbmUnIDogJ2NvcHktb3V0bGluZSdcIlxuICAgICAgICAgICAgICAgICAgPjwvaW9uLWljb24+XG4gICAgICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxwcmVcbiAgICAgICAgICAgICAgY2xhc3M9XCJkb2NzLWNvZGUtZXhhbXBsZV9fcHJlXCJcbiAgICAgICAgICAgICAgW2NsYXNzLmRvY3MtY29kZS1leGFtcGxlX19wcmUtLWxpbmUtbnVtYmVyc109XCJwcm9wcy5zaG93TGluZU51bWJlcnNcIlxuICAgICAgICAgICAgPjxjb2RlXG4gICAgICAgICAgICAgIGNsYXNzPVwiZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGVcIlxuICAgICAgICAgICAgICBbY2xhc3NdPVwiJ2xhbmd1YWdlLScgKyBjdXJyZW50VGFiKCkubGFuZ3VhZ2VcIlxuICAgICAgICAgICAgICBbaW5uZXJIVE1MXT1cImhpZ2hsaWdodGVkQ29kZSgpXCJcbiAgICAgICAgICAgID48L2NvZGU+PC9wcmU+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZXM6IFtgXG4gICAgLmRvY3MtY29kZS1leGFtcGxlIHtcbiAgICAgIG1hcmdpbjogMS41cmVtIDA7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZjJmNmY3O1xuICAgICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19oZWFkZXIge1xuICAgICAgcGFkZGluZzogMXJlbSAxLjI1cmVtO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMmY2Zjc7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIG1hcmdpbjogMCAwIDAuMjVyZW0gMDtcbiAgICAgIGNvbG9yOiB2YXIoLS1pb24tdGV4dC1jb2xvciwgIzFhMWExYSk7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19kZXNjcmlwdGlvbiB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1tZWRpdW0sICM2NjYpO1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fZXh0ZXJuYWwtbGluayB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IDAuMjVyZW07XG4gICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICAgIGNvbG9yOiAjNTU1O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fZXh0ZXJuYWwtbGluazpob3ZlciB7XG4gICAgICBjb2xvcjogIzFhMWExYTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fZXh0ZXJuYWwtbGluayBpb24taWNvbiB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fcHJldmlldyB7XG4gICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMmY2Zjc7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX190YWJzIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmNmY5ZmE7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX190YWItbGlzdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZ2FwOiAycHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YyZjZmNztcbiAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICBzY3JvbGxiYXItd2lkdGg6IHRoaW47XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX190YWIge1xuICAgICAgcGFkZGluZzogMTBweCAxOHB4IDhweCAxOHB4O1xuICAgICAgZm9udC1mYW1pbHk6ICdSb2JvdG8gTW9ubycsICdTRiBNb25vJywgTW9uYWNvLCBtb25vc3BhY2U7XG4gICAgICBmb250LXNpemU6IDAuOTVlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBjb2xvcjogIzg5OTM5NjtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogOHB4IDhweCAwIDA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMsIGNvbG9yIDAuMnM7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG5cbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX3RhYjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZThlZWYyO1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fdGFiLS1hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAgIGNvbG9yOiAjMTk0MjJkO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2YyZjZmNztcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmZmZmO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlLXBhbmVsIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlLWhlYWRlciB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgdG9wOiAxMHB4O1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgei1pbmRleDogMTA7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb3B5LWJ0biB7XG4gICAgICAtLXBhZGRpbmctc3RhcnQ6IDJweDtcbiAgICAgIC0tcGFkZGluZy1lbmQ6IDJweDtcbiAgICAgIG1pbi13aWR0aDogMjhweDtcbiAgICAgIG1pbi1oZWlnaHQ6IDI4cHg7XG4gICAgICBoZWlnaHQ6IDI4cHg7XG4gICAgICB3aWR0aDogMjhweDtcbiAgICAgIC0tY29sb3I6IHZhcigtLWlvbi1jb2xvci1wcmltYXJ5KTtcbiAgICAgIC0tYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgYm94LXNoYWRvdzogMCAxcHggNHB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlLXBhbmVsOmhvdmVyIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29weS1idG4ge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvcHktYnRuOmhvdmVyIHtcbiAgICAgIC0tYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fcHJlIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMS4yNXJlbTtcbiAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgbWF4LWhlaWdodDogMzByZW07XG4gICAgICBtaW4taGVpZ2h0OiAzcmVtO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAgIHdoaXRlLXNwYWNlOiBwcmU7XG4gICAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19wcmUtLWxpbmUtbnVtYmVycyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gICAgICBjb3VudGVyLXJlc2V0OiBsaW5lO1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvIE1vbm8nLCAnU0YgTW9ubycsIE1vbmFjbywgJ0NvdXJpZXIgTmV3JywgbW9ub3NwYWNlO1xuICAgICAgZm9udC1zaXplOiAwLjc1ZW07XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgY29sb3I6ICMyNDI5MmY7XG4gICAgICB3aGl0ZS1zcGFjZTogaW5oZXJpdDtcbiAgICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgICAgIHRhYi1zaXplOiAyO1xuICAgIH1cblxuICAgIC8qIFByaXNtLmpzIHN5bnRheCBoaWdobGlnaHRpbmcgLSBMaWdodCB0aGVtZSAoR2l0SHViIHN0eWxlKSAqL1xuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4ge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5jb21tZW50LFxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4ucHJvbG9nLFxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uZG9jdHlwZSxcbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLmNkYXRhIHtcbiAgICAgIGNvbG9yOiAjNmE3MzdkO1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4ucHVuY3R1YXRpb24ge1xuICAgICAgY29sb3I6ICMyNDI5MmY7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5wcm9wZXJ0eSxcbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLnRhZyxcbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLmJvb2xlYW4sXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5udW1iZXIsXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5jb25zdGFudCxcbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLnN5bWJvbCxcbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLmRlbGV0ZWQge1xuICAgICAgY29sb3I6ICMwMDVjYzU7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5zZWxlY3RvcixcbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLmF0dHItbmFtZSxcbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLnN0cmluZyxcbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLmNoYXIsXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5idWlsdGluLFxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uaW5zZXJ0ZWQge1xuICAgICAgY29sb3I6ICMyMjg2M2E7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5vcGVyYXRvcixcbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLmVudGl0eSxcbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLnVybCB7XG4gICAgICBjb2xvcjogIzI0MjkyZjtcbiAgICB9XG5cbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLmF0cnVsZSxcbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLmF0dHItdmFsdWUsXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5rZXl3b3JkIHtcbiAgICAgIGNvbG9yOiAjZDczYTQ5O1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uZnVuY3Rpb24sXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5jbGFzcy1uYW1lIHtcbiAgICAgIGNvbG9yOiAjNmY0MmMxO1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4ucmVnZXgsXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5pbXBvcnRhbnQsXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi52YXJpYWJsZSB7XG4gICAgICBjb2xvcjogI2UzNjIwOTtcbiAgICB9XG5cbiAgICAvKiBSZXNwb25zaXZlICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGUge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICB9XG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX3RhYi1saXN0IHtcbiAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgfVxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19wcmUge1xuICAgICAgICBtYXgtaGVpZ2h0OiAyMHJlbTtcbiAgICAgIH1cbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43ZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyogRGFyayBtb2RlICovXG4gICAgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAgICAgLmRvY3MtY29kZS1leGFtcGxlIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzIxMjUyYjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjM2I0MDQ4O1xuICAgICAgICBib3gtc2hhZG93OiAwIDRweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgICAgIH1cblxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19oZWFkZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMjEyNTJiO1xuICAgICAgICBib3JkZXItY29sb3I6ICMzYjQwNDg7XG4gICAgICB9XG5cbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fdGl0bGUge1xuICAgICAgICBjb2xvcjogI2M5ZDFkOTtcbiAgICAgIH1cblxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19wcmV2aWV3IHtcbiAgICAgICAgYmFja2dyb3VuZDogIzE2MWIyMjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjM2I0MDQ4O1xuICAgICAgfVxuXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX3RhYnMge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMWExYTFhO1xuICAgICAgfVxuXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX3RhYi1saXN0IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjM2I0MDQ4O1xuICAgICAgfVxuXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX3RhYiB7XG4gICAgICAgIGNvbG9yOiAjOGI5NDllO1xuICAgICAgfVxuXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX3RhYjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMyMTI1MmI7XG4gICAgICB9XG5cbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fdGFiLS1hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMjgyYzM0O1xuICAgICAgICBjb2xvcjogI2M5ZDFkOTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjM2I0MDQ4O1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjMjgyYzM0O1xuICAgICAgfVxuXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUtcGFuZWwge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMTYxYjIyO1xuICAgICAgfVxuXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX3ByZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMxNjFiMjI7XG4gICAgICB9XG5cbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSB7XG4gICAgICAgIGNvbG9yOiAjYzlkMWQ5O1xuICAgICAgfVxuXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvcHktYnRuIHtcbiAgICAgICAgLS1iYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gICAgICB9XG5cbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29weS1idG46aG92ZXIge1xuICAgICAgICAtLWJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgICAgIH1cblxuICAgICAgLyogRGFyayBtb2RlIHN5bnRheCBoaWdobGlnaHRpbmcgKi9cbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uY29tbWVudCxcbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4ucHJvbG9nLFxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5kb2N0eXBlLFxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5jZGF0YSB7XG4gICAgICAgIGNvbG9yOiAjOGI5NDllO1xuICAgICAgfVxuXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLnB1bmN0dWF0aW9uIHtcbiAgICAgICAgY29sb3I6ICNjOWQxZDk7XG4gICAgICB9XG5cbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4ucHJvcGVydHksXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLnRhZyxcbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uYm9vbGVhbixcbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4ubnVtYmVyLFxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5jb25zdGFudCxcbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uc3ltYm9sLFxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5kZWxldGVkIHtcbiAgICAgICAgY29sb3I6ICM3OWMwZmY7XG4gICAgICB9XG5cbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uc2VsZWN0b3IsXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLmF0dHItbmFtZSxcbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uc3RyaW5nLFxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5jaGFyLFxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5idWlsdGluLFxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5pbnNlcnRlZCB7XG4gICAgICAgIGNvbG9yOiAjN2VlNzg3O1xuICAgICAgfVxuXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLm9wZXJhdG9yLFxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5lbnRpdHksXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLnVybCB7XG4gICAgICAgIGNvbG9yOiAjYzlkMWQ5O1xuICAgICAgfVxuXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLmF0cnVsZSxcbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uYXR0ci12YWx1ZSxcbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4ua2V5d29yZCB7XG4gICAgICAgIGNvbG9yOiAjZmY3YjcyO1xuICAgICAgfVxuXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLmZ1bmN0aW9uLFxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5jbGFzcy1uYW1lIHtcbiAgICAgICAgY29sb3I6ICNkMmE4ZmY7XG4gICAgICB9XG5cbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4ucmVnZXgsXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLmltcG9ydGFudCxcbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4udmFyaWFibGUge1xuICAgICAgICBjb2xvcjogI2ZmYTY1NztcbiAgICAgIH1cbiAgICB9XG4gIGBdLFxufSlcbmV4cG9ydCBjbGFzcyBEb2NzQ29kZUV4YW1wbGVDb21wb25lbnQge1xuICBASW5wdXQoKSBwcm9wczogRG9jc0NvZGVFeGFtcGxlTWV0YWRhdGEgPSB7IHRhYnM6IFtdIH07XG5cbiAgQENvbnRlbnRDaGlsZCgncHJldmlldycpIHByZXZpZXdUcGw/OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIHByb3RlY3RlZCBhY3RpdmVUYWIgPSBzaWduYWwoMCk7XG4gIHByb3RlY3RlZCBjb3BpZWQgPSBzaWduYWwoZmFsc2UpO1xuXG4gIHByb3RlY3RlZCBjdXJyZW50VGFiKCk6IERvY3NDb2RlVGFiIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy50YWJzW3RoaXMuYWN0aXZlVGFiKCldIHx8IHsgbGFiZWw6ICcnLCBjb2RlOiAnJywgbGFuZ3VhZ2U6ICd0ZXh0JyB9O1xuICB9XG5cbiAgcHJvdGVjdGVkIGhpZ2hsaWdodGVkQ29kZSgpOiBzdHJpbmcge1xuICAgIGNvbnN0IHRhYiA9IHRoaXMuY3VycmVudFRhYigpO1xuICAgIGNvbnN0IGxhbmcgPSB0aGlzLm5vcm1hbGl6ZUxhbmd1YWdlKHRhYi5sYW5ndWFnZSk7XG4gICAgY29uc3QgZ3JhbW1hciA9IFByaXNtLmxhbmd1YWdlc1tsYW5nXTtcblxuICAgIGlmICghZ3JhbW1hcikge1xuICAgICAgcmV0dXJuIHRoaXMuZXNjYXBlSHRtbCh0YWIuY29kZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIFByaXNtLmhpZ2hsaWdodCh0YWIuY29kZSwgZ3JhbW1hciwgbGFuZyk7XG4gIH1cblxuICBhc3luYyBjb3B5Q29kZSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBjb2RlID0gdGhpcy5jdXJyZW50VGFiKCkuY29kZTtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgbmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQoY29kZSk7XG4gICAgICB0aGlzLmNvcGllZC5zZXQodHJ1ZSk7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuY29waWVkLnNldChmYWxzZSksIDIwMDApO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIGNvcHkgY29kZTonLCBlcnIpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgbm9ybWFsaXplTGFuZ3VhZ2UobGFuZ3VhZ2U6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3QgYWxpYXNlczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgICAgIHRzOiAndHlwZXNjcmlwdCcsXG4gICAgICBqczogJ2phdmFzY3JpcHQnLFxuICAgICAgaHRtbDogJ21hcmt1cCcsXG4gICAgICB4bWw6ICdtYXJrdXAnLFxuICAgICAgc2g6ICdiYXNoJyxcbiAgICAgIHNoZWxsOiAnYmFzaCcsXG4gICAgfTtcbiAgICByZXR1cm4gYWxpYXNlc1tsYW5ndWFnZS50b0xvd2VyQ2FzZSgpXSB8fCBsYW5ndWFnZS50b0xvd2VyQ2FzZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBlc2NhcGVIdG1sKHRleHQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3QgZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgZGl2LnRleHRDb250ZW50ID0gdGV4dDtcbiAgICByZXR1cm4gZGl2LmlubmVySFRNTDtcbiAgfVxufVxuIl19
255
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jcy1jb2RlLWV4YW1wbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9kb2NzLWNvZGUtZXhhbXBsZS9kb2NzLWNvZGUtZXhhbXBsZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBZSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkcsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHNUUscUVBQXFFO0FBQ3JFLE9BQU8sS0FBSyxLQUFLLE1BQU0sU0FBUyxDQUFDO0FBQ2pDLE9BQU8scUNBQXFDLENBQUM7QUFDN0MsT0FBTyxxQ0FBcUMsQ0FBQztBQUM3QyxPQUFPLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sK0JBQStCLENBQUM7QUFDdkMsT0FBTywrQkFBK0IsQ0FBQztBQUN2QyxPQUFPLCtCQUErQixDQUFDO0FBQ3ZDLE9BQU8saUNBQWlDLENBQUM7OztBQUV6QyxRQUFRLENBQUMsRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztBQUV6RDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUJHO0FBMGJILE1BQU0sT0FBTyx3QkFBd0I7SUF6YnJDO1FBMGJXLFVBQUssR0FBNEIsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUM7UUFJN0MsY0FBUyxHQUFHLE1BQU0sQ0FBQyxD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c0JBQWxDLFlBQVk7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBzaWduYWwsIFRlbXBsYXRlUmVmLCBDb250ZW50Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJb25JY29uLCBJb25CdXR0b24gfSBmcm9tICdAaW9uaWMvYW5ndWxhci9zdGFuZGFsb25lJztcbmltcG9ydCB7IGFkZEljb25zIH0gZnJvbSAnaW9uaWNvbnMnO1xuaW1wb3J0IHsgY29weU91dGxpbmUsIGNoZWNrbWFya091dGxpbmUsIG9wZW5PdXRsaW5lIH0gZnJvbSAnaW9uaWNvbnMvaWNvbnMnO1xuaW1wb3J0IHsgRG9jc0NvZGVFeGFtcGxlTWV0YWRhdGEsIERvY3NDb2RlVGFiIH0gZnJvbSAnLi90eXBlcyc7XG5cbi8vIFByaXNtLmpzIGltcG9ydHMgKHNhbWUgcGF0dGVybiBhcyBjb2RlLWRpc3BsYXkgYW5kIHBsYWluLWNvZGUtYm94KVxuaW1wb3J0ICogYXMgUHJpc20gZnJvbSAncHJpc21qcyc7XG5pbXBvcnQgJ3ByaXNtanMvY29tcG9uZW50cy9wcmlzbS10eXBlc2NyaXB0JztcbmltcG9ydCAncHJpc21qcy9jb21wb25lbnRzL3ByaXNtLWphdmFzY3JpcHQnO1xuaW1wb3J0ICdwcmlzbWpzL2NvbXBvbmVudHMvcHJpc20tY3NzJztcbmltcG9ydCAncHJpc21qcy9jb21wb25lbnRzL3ByaXNtLXNjc3MnO1xuaW1wb3J0ICdwcmlzbWpzL2NvbXBvbmVudHMvcHJpc20tYmFzaCc7XG5pbXBvcnQgJ3ByaXNtanMvY29tcG9uZW50cy9wcmlzbS1qc29uJztcbmltcG9ydCAncHJpc21qcy9jb21wb25lbnRzL3ByaXNtLW1hcmt1cCc7XG5cbmFkZEljb25zKHsgY29weU91dGxpbmUsIGNoZWNrbWFya091dGxpbmUsIG9wZW5PdXRsaW5lIH0pO1xuXG4vKipcbiAqIHZhbC1kb2NzLWNvZGUtZXhhbXBsZVxuICpcbiAqIEEgY29kZSBleGFtcGxlIGNvbXBvbmVudCB3aXRoIHRhYnMsIHByZXZpZXcsIGFuZCBjb3B5IGZ1bmN0aW9uYWxpdHkuXG4gKlxuICogQGV4YW1wbGUgQmFzaWMgdXNhZ2VcbiAqIGBgYGh0bWxcbiAqIDx2YWwtZG9jcy1jb2RlLWV4YW1wbGVcbiAqICAgW3Byb3BzXT1cIntcbiAqICAgICB0aXRsZTogJ0Jhc2ljIEJ1dHRvbicsXG4gKiAgICAgdGFiczogW1xuICogICAgICAgeyBsYWJlbDogJ0hUTUwnLCBsYW5ndWFnZTogJ2h0bWwnLCBjb2RlOiAnPHZhbC1idXR0b24+Q2xpY2sgbWU8L3ZhbC1idXR0b24+JyB9LFxuICogICAgICAgeyBsYWJlbDogJ1R5cGVTY3JpcHQnLCBsYW5ndWFnZTogJ3R5cGVzY3JpcHQnLCBjb2RlOiAnaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAuLi4nIH1cbiAqICAgICBdXG4gKiAgIH1cIlxuICogPlxuICogICA8bmctdGVtcGxhdGUgI3ByZXZpZXc+XG4gKiAgICAgPHZhbC1idXR0b24gW3Byb3BzXT1cInsgbGFiZWw6ICdDbGljayBtZScgfVwiPjwvdmFsLWJ1dHRvbj5cbiAqICAgPC9uZy10ZW1wbGF0ZT5cbiAqIDwvdmFsLWRvY3MtY29kZS1leGFtcGxlPlxuICogYGBgXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1kb2NzLWNvZGUtZXhhbXBsZScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIElvbkljb24sIElvbkJ1dHRvbl0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImRvY3MtY29kZS1leGFtcGxlXCIgW2NsYXNzXT1cInByb3BzLmNzc0NsYXNzXCI+XG4gICAgICA8IS0tIEhlYWRlciAtLT5cbiAgICAgIEBpZiAocHJvcHMudGl0bGUgfHwgcHJvcHMuZGVzY3JpcHRpb24gfHwgcHJvcHMuZXh0ZXJuYWxMaW5rKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkb2NzLWNvZGUtZXhhbXBsZV9faGVhZGVyXCI+XG4gICAgICAgICAgQGlmIChwcm9wcy50aXRsZSkge1xuICAgICAgICAgICAgPGg0IGNsYXNzPVwiZG9jcy1jb2RlLWV4YW1wbGVfX3RpdGxlXCI+e3sgcHJvcHMudGl0bGUgfX08L2g0PlxuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgKHByb3BzLmRlc2NyaXB0aW9uKSB7XG4gICAgICAgICAgICA8cCBjbGFzcz1cImRvY3MtY29kZS1leGFtcGxlX19kZXNjcmlwdGlvblwiPnt7IHByb3BzLmRlc2NyaXB0aW9uIH19PC9wPlxuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgKHByb3BzLmV4dGVybmFsTGluaykge1xuICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgY2xhc3M9XCJkb2NzLWNvZGUtZXhhbXBsZV9fZXh0ZXJuYWwtbGlua1wiXG4gICAgICAgICAgICAgIFtocmVmXT1cInByb3BzLmV4dGVybmFsTGluay51cmxcIlxuICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3sgcHJvcHMuZXh0ZXJuYWxMaW5rLmxhYmVsIHx8ICdPcGVuIGluIFN0YWNrQmxpdHonIH19XG4gICAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwib3Blbi1vdXRsaW5lXCI+PC9pb24taWNvbj5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuXG4gICAgICA8IS0tIFByZXZpZXcgLS0+XG4gICAgICBAaWYgKHByZXZpZXdUcGwpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImRvY3MtY29kZS1leGFtcGxlX19wcmV2aWV3XCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInByZXZpZXdUcGxcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG5cbiAgICAgIDwhLS0gVGFicyAtLT5cbiAgICAgIEBpZiAocHJvcHMudGFicz8ubGVuZ3RoKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkb2NzLWNvZGUtZXhhbXBsZV9fdGFic1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkb2NzLWNvZGUtZXhhbXBsZV9fdGFiLWxpc3RcIiByb2xlPVwidGFibGlzdFwiPlxuICAgICAgICAgICAgQGZvciAodGFiIG9mIHByb3BzLnRhYnM7IHRyYWNrIHRhYi5sYWJlbDsgbGV0IGkgPSAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZG9jcy1jb2RlLWV4YW1wbGVfX3RhYlwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLmRvY3MtY29kZS1leGFtcGxlX190YWItLWFjdGl2ZV09XCJhY3RpdmVUYWIoKSA9PT0gaVwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImFjdGl2ZVRhYi5zZXQoaSlcIlxuICAgICAgICAgICAgICAgIHJvbGU9XCJ0YWJcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtc2VsZWN0ZWRdPVwiYWN0aXZlVGFiKCkgPT09IGlcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgdGFiLmxhYmVsIH19XG4gICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPCEtLSBDb2RlIFBhbmVsIC0tPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkb2NzLWNvZGUtZXhhbXBsZV9fY29kZS1wYW5lbFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRvY3MtY29kZS1leGFtcGxlX19jb2RlLWhlYWRlclwiPlxuICAgICAgICAgICAgICBAaWYgKHByb3BzLnNob3dDb3B5QnV0dG9uICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgIDxpb24tYnV0dG9uXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiY2xlYXJcIlxuICAgICAgICAgICAgICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZG9jcy1jb2RlLWV4YW1wbGVfX2NvcHktYnRuXCJcbiAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiY29waWVkKCkgPyAnQ29kZSBjb3BpZWQnIDogJ0NvcHkgY29kZSdcIlxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNvcHlDb2RlKClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxpb24taWNvblxuICAgICAgICAgICAgICAgICAgICBzbG90PVwiaWNvbi1vbmx5XCJcbiAgICAgICAgICAgICAgICAgICAgW25hbWVdPVwiY29waWVkKCkgPyAnY2hlY2ttYXJrLW91dGxpbmUnIDogJ2NvcHktb3V0bGluZSdcIlxuICAgICAgICAgICAgICAgICAgPjwvaW9uLWljb24+XG4gICAgICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxwcmVcbiAgICAgICAgICAgICAgY2xhc3M9XCJkb2NzLWNvZGUtZXhhbXBsZV9fcHJlXCJcbiAgICAgICAgICAgICAgW2NsYXNzLmRvY3MtY29kZS1leGFtcGxlX19wcmUtLWxpbmUtbnVtYmVyc109XCJwcm9wcy5zaG93TGluZU51bWJlcnNcIlxuICAgICAgICAgICAgPjxjb2RlXG4gICAgICAgICAgICAgIGNsYXNzPVwiZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGVcIlxuICAgICAgICAgICAgICBbY2xhc3NdPVwiJ2xhbmd1YWdlLScgKyBjdXJyZW50VGFiKCkubGFuZ3VhZ2VcIlxuICAgICAgICAgICAgICBbaW5uZXJIVE1MXT1cImhpZ2hsaWdodGVkQ29kZSgpXCJcbiAgICAgICAgICAgID48L2NvZGU+PC9wcmU+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZXM6IFtgXG4gICAgLmRvY3MtY29kZS1leGFtcGxlIHtcbiAgICAgIG1hcmdpbjogMS41cmVtIDA7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZjJmNmY3O1xuICAgICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19oZWFkZXIge1xuICAgICAgcGFkZGluZzogMXJlbSAxLjI1cmVtO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMmY2Zjc7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIG1hcmdpbjogMCAwIDAuMjVyZW0gMDtcbiAgICAgIGNvbG9yOiB2YXIoLS1pb24tdGV4dC1jb2xvciwgIzFhMWExYSk7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19kZXNjcmlwdGlvbiB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1tZWRpdW0sICM2NjYpO1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fZXh0ZXJuYWwtbGluayB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IDAuMjVyZW07XG4gICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICAgIGNvbG9yOiAjNTU1O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fZXh0ZXJuYWwtbGluazpob3ZlciB7XG4gICAgICBjb2xvcjogIzFhMWExYTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fZXh0ZXJuYWwtbGluayBpb24taWNvbiB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fcHJldmlldyB7XG4gICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMmY2Zjc7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX190YWJzIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmNmY5ZmE7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX190YWItbGlzdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZ2FwOiAycHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YyZjZmNztcbiAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICBzY3JvbGxiYXItd2lkdGg6IHRoaW47XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX190YWIge1xuICAgICAgcGFkZGluZzogMTBweCAxOHB4IDhweCAxOHB4O1xuICAgICAgZm9udC1mYW1pbHk6ICdSb2JvdG8gTW9ubycsICdTRiBNb25vJywgTW9uYWNvLCBtb25vc3BhY2U7XG4gICAgICBmb250LXNpemU6IDAuOTVlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBjb2xvcjogIzg5OTM5NjtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogOHB4IDhweCAwIDA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMsIGNvbG9yIDAuMnM7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG5cbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX3RhYjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZThlZWYyO1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fdGFiLS1hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAgIGNvbG9yOiAjMTk0MjJkO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2YyZjZmNztcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmZmZmO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlLXBhbmVsIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlLWhlYWRlciB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgdG9wOiAxMHB4O1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgei1pbmRleDogMTA7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb3B5LWJ0biB7XG4gICAgICAtLXBhZGRpbmctc3RhcnQ6IDJweDtcbiAgICAgIC0tcGFkZGluZy1lbmQ6IDJweDtcbiAgICAgIG1pbi13aWR0aDogMjhweDtcbiAgICAgIG1pbi1oZWlnaHQ6IDI4cHg7XG4gICAgICBoZWlnaHQ6IDI4cHg7XG4gICAgICB3aWR0aDogMjhweDtcbiAgICAgIC0tY29sb3I6IHZhcigtLWlvbi1jb2xvci1wcmltYXJ5KTtcbiAgICAgIC0tYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgYm94LXNoYWRvdzogMCAxcHggNHB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlLXBhbmVsOmhvdmVyIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29weS1idG4ge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvcHktYnRuOmhvdmVyIHtcbiAgICAgIC0tYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fcHJlIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgIG1heC1oZWlnaHQ6IDMwcmVtO1xuICAgICAgbWluLWhlaWdodDogM3JlbTtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgICB3aGl0ZS1zcGFjZTogcHJlO1xuICAgICAgd29yZC1icmVhazogbm9ybWFsO1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fcHJlLS1saW5lLW51bWJlcnMge1xuICAgICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICAgICAgY291bnRlci1yZXNldDogbGluZTtcbiAgICB9XG5cbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LWZhbWlseTogJ1JvYm90byBNb25vJywgJ1NGIE1vbm8nLCBNb25hY28sICdDb3VyaWVyIE5ldycsIG1vbm9zcGFjZTtcbiAgICAgIGZvbnQtc2l6ZTogMC43NWVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgIGNvbG9yOiAjMjQyOTJmO1xuICAgICAgd2hpdGUtc3BhY2U6IGluaGVyaXQ7XG4gICAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gICAgICB0YWItc2l6ZTogMjtcbiAgICB9XG5cbiAgICAvKiBQcmlzbS5qcyBzeW50YXggaGlnaGxpZ2h0aW5nIC0gTGlnaHQgdGhlbWUgKEdpdEh1YiBzdHlsZSkgKi9cbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uY29tbWVudCxcbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLnByb2xvZyxcbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLmRvY3R5cGUsXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5jZGF0YSB7XG4gICAgICBjb2xvcjogIzZhNzM3ZDtcbiAgICB9XG5cbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLnB1bmN0dWF0aW9uIHtcbiAgICAgIGNvbG9yOiAjMjQyOTJmO1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4ucHJvcGVydHksXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi50YWcsXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5ib29sZWFuLFxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4ubnVtYmVyLFxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uY29uc3RhbnQsXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5zeW1ib2wsXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5kZWxldGVkIHtcbiAgICAgIGNvbG9yOiAjMDA1Y2M1O1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uc2VsZWN0b3IsXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5hdHRyLW5hbWUsXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5zdHJpbmcsXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5jaGFyLFxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uYnVpbHRpbixcbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLmluc2VydGVkIHtcbiAgICAgIGNvbG9yOiAjMjI4NjNhO1xuICAgIH1cblxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4ub3BlcmF0b3IsXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5lbnRpdHksXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi51cmwge1xuICAgICAgY29sb3I6ICMyNDI5MmY7XG4gICAgfVxuXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5hdHJ1bGUsXG4gICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5hdHRyLXZhbHVlLFxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4ua2V5d29yZCB7XG4gICAgICBjb2xvcjogI2Q3M2E0OTtcbiAgICB9XG5cbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLmZ1bmN0aW9uLFxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uY2xhc3MtbmFtZSB7XG4gICAgICBjb2xvcjogIzZmNDJjMTtcbiAgICB9XG5cbiAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLnJlZ2V4LFxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uaW1wb3J0YW50LFxuICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4udmFyaWFibGUge1xuICAgICAgY29sb3I6ICNlMzYyMDk7XG4gICAgfVxuXG4gICAgLyogUmVzcG9uc2l2ZSAqL1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkge1xuICAgICAgLmRvY3MtY29kZS1leGFtcGxlIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgfVxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX190YWItbGlzdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgIH1cbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fcHJlIHtcbiAgICAgICAgbWF4LWhlaWdodDogMjByZW07XG4gICAgICB9XG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUge1xuICAgICAgICBmb250LXNpemU6IDAuN2VtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qIERhcmsgbW9kZSAqL1xuICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMyMTI1MmI7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzNiNDA0ODtcbiAgICAgICAgYm94LXNoYWRvdzogMCA0cHggMTVweCByZ2JhKDAsIDAsIDAsIDAuNik7XG4gICAgICB9XG5cbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9faGVhZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzIxMjUyYjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjM2I0MDQ4O1xuICAgICAgfVxuXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX3RpdGxlIHtcbiAgICAgICAgY29sb3I6ICNjOWQxZDk7XG4gICAgICB9XG5cbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fcHJldmlldyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMxNjFiMjI7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzNiNDA0ODtcbiAgICAgIH1cblxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX190YWJzIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzFhMWExYTtcbiAgICAgIH1cblxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX190YWItbGlzdCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzNiNDA0ODtcbiAgICAgIH1cblxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX190YWIge1xuICAgICAgICBjb2xvcjogIzhiOTQ5ZTtcbiAgICAgIH1cblxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX190YWI6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMjEyNTJiO1xuICAgICAgfVxuXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX3RhYi0tYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzI4MmMzNDtcbiAgICAgICAgY29sb3I6ICNjOWQxZDk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzNiNDA0ODtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzI4MmMzNDtcbiAgICAgIH1cblxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlLXBhbmVsIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzE2MWIyMjtcbiAgICAgIH1cblxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19wcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMTYxYjIyO1xuICAgICAgfVxuXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUge1xuICAgICAgICBjb2xvcjogI2M5ZDFkOTtcbiAgICAgIH1cblxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19jb3B5LWJ0biB7XG4gICAgICAgIC0tYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAgICAgfVxuXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvcHktYnRuOmhvdmVyIHtcbiAgICAgICAgLS1iYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4gICAgICB9XG5cbiAgICAgIC8qIERhcmsgbW9kZSBzeW50YXggaGlnaGxpZ2h0aW5nICovXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLmNvbW1lbnQsXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLnByb2xvZyxcbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uZG9jdHlwZSxcbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uY2RhdGEge1xuICAgICAgICBjb2xvcjogIzhiOTQ5ZTtcbiAgICAgIH1cblxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5wdW5jdHVhdGlvbiB7XG4gICAgICAgIGNvbG9yOiAjYzlkMWQ5O1xuICAgICAgfVxuXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLnByb3BlcnR5LFxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi50YWcsXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLmJvb2xlYW4sXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLm51bWJlcixcbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uY29uc3RhbnQsXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLnN5bWJvbCxcbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uZGVsZXRlZCB7XG4gICAgICAgIGNvbG9yOiAjNzljMGZmO1xuICAgICAgfVxuXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLnNlbGVjdG9yLFxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5hdHRyLW5hbWUsXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLnN0cmluZyxcbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uY2hhcixcbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uYnVpbHRpbixcbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uaW5zZXJ0ZWQge1xuICAgICAgICBjb2xvcjogIzdlZTc4NztcbiAgICAgIH1cblxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5vcGVyYXRvcixcbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uZW50aXR5LFxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi51cmwge1xuICAgICAgICBjb2xvcjogI2M5ZDFkOTtcbiAgICAgIH1cblxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5hdHJ1bGUsXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLmF0dHItdmFsdWUsXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLmtleXdvcmQge1xuICAgICAgICBjb2xvcjogI2ZmN2I3MjtcbiAgICAgIH1cblxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5mdW5jdGlvbixcbiAgICAgIC5kb2NzLWNvZGUtZXhhbXBsZV9fY29kZSAudG9rZW4uY2xhc3MtbmFtZSB7XG4gICAgICAgIGNvbG9yOiAjZDJhOGZmO1xuICAgICAgfVxuXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLnJlZ2V4LFxuICAgICAgLmRvY3MtY29kZS1leGFtcGxlX19jb2RlIC50b2tlbi5pbXBvcnRhbnQsXG4gICAgICAuZG9jcy1jb2RlLWV4YW1wbGVfX2NvZGUgLnRva2VuLnZhcmlhYmxlIHtcbiAgICAgICAgY29sb3I6ICNmZmE2NTc7XG4gICAgICB9XG4gICAgfVxuICBgXSxcbn0pXG5leHBvcnQgY2xhc3MgRG9jc0NvZGVFeGFtcGxlQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcHJvcHM6IERvY3NDb2RlRXhhbXBsZU1ldGFkYXRhID0geyB0YWJzOiBbXSB9O1xuXG4gIEBDb250ZW50Q2hpbGQoJ3ByZXZpZXcnKSBwcmV2aWV3VHBsPzogVGVtcGxhdGVSZWY8YW55PjtcblxuICBwcm90ZWN0ZWQgYWN0aXZlVGFiID0gc2lnbmFsKDApO1xuICBwcm90ZWN0ZWQgY29waWVkID0gc2lnbmFsKGZhbHNlKTtcblxuICBwcm90ZWN0ZWQgY3VycmVudFRhYigpOiBEb2NzQ29kZVRhYiB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMudGFic1t0aGlzLmFjdGl2ZVRhYigpXSB8fCB7IGxhYmVsOiAnJywgY29kZTogJycsIGxhbmd1YWdlOiAndGV4dCcgfTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoaWdobGlnaHRlZENvZGUoKTogc3RyaW5nIHtcbiAgICBjb25zdCB0YWIgPSB0aGlzLmN1cnJlbnRUYWIoKTtcbiAgICBjb25zdCBsYW5nID0gdGhpcy5ub3JtYWxpemVMYW5ndWFnZSh0YWIubGFuZ3VhZ2UpO1xuICAgIGNvbnN0IGdyYW1tYXIgPSBQcmlzbS5sYW5ndWFnZXNbbGFuZ107XG5cbiAgICBpZiAoIWdyYW1tYXIpIHtcbiAgICAgIHJldHVybiB0aGlzLmVzY2FwZUh0bWwodGFiLmNvZGUpO1xuICAgIH1cblxuICAgIHJldHVybiBQcmlzbS5oaWdobGlnaHQodGFiLmNvZGUsIGdyYW1tYXIsIGxhbmcpO1xuICB9XG5cbiAgYXN5bmMgY29weUNvZGUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgY29kZSA9IHRoaXMuY3VycmVudFRhYigpLmNvZGU7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IG5hdmlnYXRvci5jbGlwYm9hcmQud3JpdGVUZXh0KGNvZGUpO1xuICAgICAgdGhpcy5jb3BpZWQuc2V0KHRydWUpO1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmNvcGllZC5zZXQoZmFsc2UpLCAyMDAwKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBjb3B5IGNvZGU6JywgZXJyKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG5vcm1hbGl6ZUxhbmd1YWdlKGxhbmd1YWdlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IGFsaWFzZXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gICAgICB0czogJ3R5cGVzY3JpcHQnLFxuICAgICAganM6ICdqYXZhc2NyaXB0JyxcbiAgICAgIGh0bWw6ICdtYXJrdXAnLFxuICAgICAgeG1sOiAnbWFya3VwJyxcbiAgICAgIHNoOiAnYmFzaCcsXG4gICAgICBzaGVsbDogJ2Jhc2gnLFxuICAgIH07XG4gICAgcmV0dXJuIGFsaWFzZXNbbGFuZ3VhZ2UudG9Mb3dlckNhc2UoKV0gfHwgbGFuZ3VhZ2UudG9Mb3dlckNhc2UoKTtcbiAgfVxuXG4gIHByaXZhdGUgZXNjYXBlSHRtbCh0ZXh0OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgIGRpdi50ZXh0Q29udGVudCA9IHRleHQ7XG4gICAgcmV0dXJuIGRpdi5pbm5lckhUTUw7XG4gIH1cbn1cbiJdfQ==
@@ -162,7 +162,7 @@ export class FooterLinksComponent {
162
162
  role="img"
163
163
  [attr.aria-label]="props.logoAlt || 'Logo'"
164
164
  [style.--logo-var]="'var(' + props.logoCssVariable + ')'"
165
- [style.width]="props.logoWidth || '10rem'"
165
+ [style.width]="props.logoWidth || '12rem'"
166
166
  [style.height]="props.logoHeight || '3rem'"
167
167
  (click)="onLogoClick()"
168
168
  ></span>
@@ -326,7 +326,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
326
326
  role="img"
327
327
  [attr.aria-label]="props.logoAlt || 'Logo'"
328
328
  [style.--logo-var]="'var(' + props.logoCssVariable + ')'"
329
- [style.width]="props.logoWidth || '10rem'"
329
+ [style.width]="props.logoWidth || '12rem'"
330
330
  [style.height]="props.logoHeight || '3rem'"
331
331
  (click)="onLogoClick()"
332
332
  ></span>
@@ -388,4 +388,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
388
388
  }], logoClick: [{
389
389
  type: Output
390
390
  }] } });
391
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLWxpbmtzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvZm9vdGVyLWxpbmtzL2Zvb3Rlci1saW5rcy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMvRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbkUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFFN0YsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7OztBQUd4RTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUJHO0FBd0tILE1BQU0sT0FBTyxvQkFBb0I7SUF2S2pDO1FBd0tVLFFBQUcsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQU94Qzs7V0FFRztRQUNPLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0tBZ0NoRDtJQTlCQzs7T0FFRztJQUNILElBQUksc0JBQXNCO1FBQ3hCLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsSUFBSSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDbkYsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDO1FBQ3JDLENBQUM7UUFDRCxPQUFPO1lBQ0wsU0FBUyxFQUFFLEtBQUs7WUFDaEIsV0FBVyxFQUFFO2dCQUNYLFNBQVMsRUFBRSxTQUFTO2dCQUNwQixHQUFHLEVBQUUsVUFBVTtnQkFDZixRQUFRLEVBQUUsUUFBUTthQUNuQjtZQUNELFNBQVMsRUFBRSxJQUFJO1lBQ2YsS0FBSyxFQUFFLFNBQVM7WUFDaEIsSUFBSSxFQUFFLFNBQVM7WUFDZixJQUFJLEVBQUUsU0FBUztTQUNoQixDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0gsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQy9DLENBQUM7UUFDRCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3hCLENBQUM7K0dBMUNVLG9CQUFvQjttR0FBcEIsb0JBQW9CLDZJQXpKckI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNKVCx5eERBaEtDLFlBQVksZ1FBQ1osTUFBTSxrVEFDTixNQUFNLG9EQUNOLFNBQVMsb1BBQ1QsT0FBTywySkFDUCxnQkFBZ0IsMkVBQ2hCLGNBQWMseUVBQ2Qsa0JBQWtCLDhFQUNsQix5QkFBeUI7OzRGQTJKaEIsb0JBQW9CO2tCQXZLaEMsU0FBUzsrQkFDRSxrQkFBa0IsY0FDaEIsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osTUFBTTt3QkFDTixNQUFNO3dCQUNOLFNBQVM7d0JBQ1QsT0FBTzt3QkFDUCxnQkFBZ0I7d0JBQ2hCLGNBQWM7d0JBQ2Qsa0JBQWtCO3dCQUNsQix5QkFBeUI7cUJBQzFCLFlBQ1M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNKVDs4QkFTUSxLQUFLO3NCQUFiLEtBQUs7Z0JBS0ksU0FBUztzQkFBbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgaW5qZWN0LCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJb25CdXR0b24sIElvbkNvbCwgSW9uSWNvbiwgSW9uUm93IH0gZnJvbSAnQGlvbmljL2FuZ3VsYXIvc3RhbmRhbG9uZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL25hdmlnYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBEaXZpZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYXRvbXMvZGl2aWRlci9kaXZpZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJbWFnZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2F0b21zL2ltYWdlL2ltYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMYW5ndWFnZVNlbGVjdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vbGFuZ3VhZ2Utc2VsZWN0b3IvbGFuZ3VhZ2Utc2VsZWN0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IExhbmd1YWdlU2VsZWN0b3JNZXRhZGF0YSB9IGZyb20gJy4uL2xhbmd1YWdlLXNlbGVjdG9yL3R5cGVzJztcbmltcG9ydCB7IExpbmtzQ2FrZUNvbXBvbmVudCB9IGZyb20gJy4uL2xpbmtzLWNha2UvbGlua3MtY2FrZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9vdGVyTGlua3NNZXRhZGF0YSB9IGZyb20gJy4vdHlwZXMnO1xuXG4vKipcbiAqIHZhbC1mb290ZXItbGlua3NcbiAqXG4gKiBBIHJlc3BvbnNpdmUgZm9vdGVyIGNvbXBvbmVudCB3aXRoIHR3byBjb2x1bW5zIG9mIGxpbmtzLCBzb2NpYWwgbWVkaWEgaWNvbnMsXG4gKiBsb2dvLCBhbmQgb3B0aW9uYWwgbGFuZ3VhZ2Ugc2VsZWN0b3IuXG4gKlxuICogQGV4YW1wbGVcbiAqIDx2YWwtZm9vdGVyLWxpbmtzXG4gKiAgIFtwcm9wc109XCJ7XG4gKiAgICAgbGVmdExpbmtzOiB7IHRpdGxlOiAnQ29tcGFueScsIGxpbmtzOiBbLi4uXSB9LFxuICogICAgIHJpZ2h0TGlua3M6IHsgdGl0bGU6ICdSZXNvdXJjZXMnLCBsaW5rczogWy4uLl0gfSxcbiAqICAgICBsb2dvOiAnbG9nby5zdmcnLFxuICogICAgIGxvZ29Sb3V0ZTogJy8nLFxuICogICAgIHNvY2lhbExpbmtzOiBbXG4gKiAgICAgICB7IGljb246ICdsb2dvLWZhY2Vib29rJywgdXJsOiAnaHR0cHM6Ly9mYWNlYm9vay5jb20nLCBuYW1lOiAnRmFjZWJvb2snIH1cbiAqICAgICBdXG4gKiAgIH1cIlxuICogPjwvdmFsLWZvb3Rlci1saW5rcz5cbiAqXG4gKiBAaW5wdXQgcHJvcHMgLSBGb290ZXIgY29uZmlndXJhdGlvblxuICogQG91dHB1dCBsb2dvQ2xpY2sgLSBFbWl0cyB3aGVuIGxvZ28gaXMgY2xpY2tlZFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtZm9vdGVyLWxpbmtzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBJb25Db2wsXG4gICAgSW9uUm93LFxuICAgIElvbkJ1dHRvbixcbiAgICBJb25JY29uLFxuICAgIERpdmlkZXJDb21wb25lbnQsXG4gICAgSW1hZ2VDb21wb25lbnQsXG4gICAgTGlua3NDYWtlQ29tcG9uZW50LFxuICAgIExhbmd1YWdlU2VsZWN0b3JDb21wb25lbnQsXG4gIF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImZvb3Rlci1saW5rc1wiPlxuICAgICAgPGlvbi1yb3c+XG4gICAgICAgIDxpb24tY29sIHNpemU9XCIxMlwiPlxuICAgICAgICAgIDx2YWwtZGl2aWRlciBbcHJvcHNdPVwicHJvcHMuZGl2aWRlciB8fCB7IHNpemU6ICdzbWFsbCcsIGNvbG9yOiAnbWVkaXVtJywgZmlsbDogJ3NvbGlkJyB9XCIgLz5cbiAgICAgICAgPC9pb24tY29sPlxuICAgICAgICA8aW9uLWNvbCBzaXplLXhzPVwiMTJcIiBzaXplLW1kPVwiNlwiPlxuICAgICAgICAgIDx2YWwtbGlua3MtY2FrZSBbcHJvcHNdPVwicHJvcHMubGVmdExpbmtzXCIgLz5cbiAgICAgICAgPC9pb24tY29sPlxuICAgICAgICA8aW9uLWNvbCBzaXplLXhzPVwiMTJcIiBzaXplLW1kPVwiNlwiPlxuICAgICAgICAgIDx2YWwtbGlua3MtY2FrZSBbcHJvcHNdPVwicHJvcHMucmlnaHRMaW5rc1wiIC8+XG4gICAgICAgIDwvaW9uLWNvbD5cbiAgICAgIDwvaW9uLXJvdz5cblxuICAgICAgPGlvbi1yb3cgKm5nSWY9XCJwcm9wcy5sYW5ndWFnZVNlbGVjdG9yICE9PSBmYWxzZVwiIHN0eWxlPVwibWFyZ2luLXRvcDogMXJlbTtcIj5cbiAgICAgICAgPGlvbi1jb2wgc2l6ZT1cIjEyXCI+XG4gICAgICAgICAgPHZhbC1sYW5ndWFnZS1zZWxlY3RvciBbcHJvcHNdPVwibGFuZ3VhZ2VTZWxlY3RvckNvbmZpZ1wiIC8+XG4gICAgICAgIDwvaW9uLWNvbD5cbiAgICAgIDwvaW9uLXJvdz5cblxuICAgICAgPGlvbi1yb3cgc3R5bGU9XCJtYXJnaW4tdG9wOiAxcmVtO1wiPlxuICAgICAgICA8aW9uLWNvbCBzaXplPVwiMTJcIiAqbmdJZj1cInByb3BzLmxvZ29Dc3NWYXJpYWJsZSB8fCBwcm9wcy5sb2dvIHx8IHByb3BzLnNvY2lhbExpbmtzPy5sZW5ndGhcIj5cbiAgICAgICAgICA8IS0tIE1vYmlsZSBsYXlvdXQ6IGNlbnRlcmVkIC0tPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtb2JpbGUtbGF5b3V0XCI+XG4gICAgICAgICAgICA8IS0tIENTUyBWYXJpYWJsZSBsb2dvIChyZWNvbW1lbmRlZCBmb3IgZGFyayBtb2RlKSAtLT5cbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICpuZ0lmPVwicHJvcHMubG9nb0Nzc1ZhcmlhYmxlXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJsb2dvLWNsaWNrYWJsZSBmb290ZXItbG9nbyBmb290ZXItbG9nby0tY3NzLXZhclwiXG4gICAgICAgICAgICAgIHJvbGU9XCJpbWdcIlxuICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInByb3BzLmxvZ29BbHQgfHwgJ0xvZ28nXCJcbiAgICAgICAgICAgICAgW3N0eWxlLi0tbG9nby12YXJdPVwiJ3ZhcignICsgcHJvcHMubG9nb0Nzc1ZhcmlhYmxlICsgJyknXCJcbiAgICAgICAgICAgICAgW3N0eWxlLndpZHRoXT1cInByb3BzLmxvZ29XaWR0aCB8fCAnMTByZW0nXCJcbiAgICAgICAgICAgICAgW3N0eWxlLmhlaWdodF09XCJwcm9wcy5sb2dvSGVpZ2h0IHx8ICczcmVtJ1wiXG4gICAgICAgICAgICAgIChjbGljayk9XCJvbkxvZ29DbGljaygpXCJcbiAgICAgICAgICAgID48L3NwYW4+XG4gICAgICAgICAgICA8IS0tIExpZ2h0IG1vZGUgbG9nbyAoZmFsbGJhY2spIC0tPlxuICAgICAgICAgICAgPHZhbC1pbWFnZVxuICAgICAgICAgICAgICAqbmdJZj1cIiFwcm9wcy5sb2dvQ3NzVmFyaWFibGUgJiYgcHJvcHMubG9nb1wiXG4gICAgICAgICAgICAgIGNsYXNzPVwibG9nby1jbGlja2FibGUgZm9vdGVyLWxvZ28gZm9vdGVyLWxvZ28tLWxpZ2h0XCJcbiAgICAgICAgICAgICAgW3Byb3BzXT1cIntcbiAgICAgICAgICAgICAgICB3aWR0aDogMTQsXG4gICAgICAgICAgICAgICAgbW9kZTogJ2JveCcsXG4gICAgICAgICAgICAgICAgc2hhZGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBib3JkZXJlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgc2l6ZTogJ3NtYWxsJyxcbiAgICAgICAgICAgICAgICBzcmM6IHByb3BzLmxvZ28sXG4gICAgICAgICAgICAgICAgYWx0OiBwcm9wcy5sb2dvQWx0IHx8ICdMb2dvJyxcbiAgICAgICAgICAgICAgICBsaW1pdGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBkYXJrOiB0cnVlXG4gICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAoY2xpY2spPVwib25Mb2dvQ2xpY2soKVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPCEtLSBEYXJrIG1vZGUgbG9nbyAoZmFsbGJhY2spIC0tPlxuICAgICAgICAgICAgPHZhbC1pbWFnZVxuICAgICAgICAgICAgICAqbmdJZj1cIiFwcm9wcy5sb2dvQ3NzVmFyaWFibGUgJiYgcHJvcHMubG9nbyAmJiBwcm9wcy5sb2dvRGFya1wiXG4gICAgICAgICAgICAgIGNsYXNzPVwibG9nby1jbGlja2FibGUgZm9vdGVyLWxvZ28gZm9vdGVyLWxvZ28tLWRhcmtcIlxuICAgICAgICAgICAgICBbcHJvcHNdPVwie1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNCxcbiAgICAgICAgICAgICAgICBtb2RlOiAnYm94JyxcbiAgICAgICAgICAgICAgICBzaGFkZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGJvcmRlcmVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBzaXplOiAnc21hbGwnLFxuICAgICAgICAgICAgICAgIHNyYzogcHJvcHMubG9nb0RhcmssXG4gICAgICAgICAgICAgICAgYWx0OiBwcm9wcy5sb2dvQWx0IHx8ICdMb2dvJyxcbiAgICAgICAgICAgICAgICBsaW1pdGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBkYXJrOiB0cnVlXG4gICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAoY2xpY2spPVwib25Mb2dvQ2xpY2soKVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNvY2lhbC1saW5rcy1jb250YWluZXJcIiAqbmdJZj1cInByb3BzLnNvY2lhbExpbmtzPy5sZW5ndGhcIiBzdHlsZT1cIm1hcmdpbi10b3A6IDFyZW1cIj5cbiAgICAgICAgICAgICAgPGlvbi1idXR0b25cbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgc29jaWFsIG9mIHByb3BzLnNvY2lhbExpbmtzXCJcbiAgICAgICAgICAgICAgICBmaWxsPVwiY2xlYXJcIlxuICAgICAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgICAgICAgW2hyZWZdPVwic29jaWFsLnVybFwiXG4gICAgICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAgICAgICByZWw9XCJub29wZW5lclwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJzb2NpYWwtYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInNvY2lhbC5uYW1lXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxpb24taWNvbiBbbmFtZV09XCJzb2NpYWwuaWNvblwiIHNsb3Q9XCJpY29uLW9ubHlcIiBbY29sb3JdPVwicHJvcHMuc29jaWFsSWNvbkNvbG9yIHx8ICdkYXJrJ1wiPjwvaW9uLWljb24+XG4gICAgICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPCEtLSBEZXNrdG9wIGxheW91dDogc3BhY2UtYmV0d2VlbiAtLT5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGVza3RvcC1sYXlvdXRcIj5cbiAgICAgICAgICAgIDwhLS0gQ1NTIFZhcmlhYmxlIGxvZ28gKHJlY29tbWVuZGVkIGZvciBkYXJrIG1vZGUpIC0tPlxuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgKm5nSWY9XCJwcm9wcy5sb2dvQ3NzVmFyaWFibGVcIlxuICAgICAgICAgICAgICBjbGFzcz1cImxvZ28tY2xpY2thYmxlIGZvb3Rlci1sb2dvIGZvb3Rlci1sb2dvLS1jc3MtdmFyXCJcbiAgICAgICAgICAgICAgcm9sZT1cImltZ1wiXG4gICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwicHJvcHMubG9nb0FsdCB8fCAnTG9nbydcIlxuICAgICAgICAgICAgICBbc3R5bGUuLS1sb2dvLXZhcl09XCIndmFyKCcgKyBwcm9wcy5sb2dvQ3NzVmFyaWFibGUgKyAnKSdcIlxuICAgICAgICAgICAgICBbc3R5bGUud2lkdGhdPVwicHJvcHMubG9nb1dpZHRoIHx8ICcxMHJlbSdcIlxuICAgICAgICAgICAgICBbc3R5bGUuaGVpZ2h0XT1cInByb3BzLmxvZ29IZWlnaHQgfHwgJzNyZW0nXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uTG9nb0NsaWNrKClcIlxuICAgICAgICAgICAgPjwvc3Bhbj5cbiAgICAgICAgICAgIDwhLS0gTGlnaHQgbW9kZSBsb2dvIChmYWxsYmFjaykgLS0+XG4gICAgICAgICAgICA8dmFsLWltYWdlXG4gICAgICAgICAgICAgICpuZ0lmPVwiIXByb3BzLmxvZ29Dc3NWYXJpYWJsZSAmJiBwcm9wcy5sb2dvXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJsb2dvLWNsaWNrYWJsZSBmb290ZXItbG9nbyBmb290ZXItbG9nby0tbGlnaHRcIlxuICAgICAgICAgICAgICBbcHJvcHNdPVwie1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNixcbiAgICAgICAgICAgICAgICBtb2RlOiAnYm94JyxcbiAgICAgICAgICAgICAgICBzaGFkZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGJvcmRlcmVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBzaXplOiAnc21hbGwnLFxuICAgICAgICAgICAgICAgIHNyYzogcHJvcHMubG9nbyxcbiAgICAgICAgICAgICAgICBhbHQ6IHByb3BzLmxvZ29BbHQgfHwgJ0xvZ28nLFxuICAgICAgICAgICAgICAgIGxpbWl0ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGRhcms6IHRydWVcbiAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJvbkxvZ29DbGljaygpXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8IS0tIERhcmsgbW9kZSBsb2dvIChmYWxsYmFjaykgLS0+XG4gICAgICAgICAgICA8dmFsLWltYWdlXG4gICAgICAgICAgICAgICpuZ0lmPVwiIXByb3BzLmxvZ29Dc3NWYXJpYWJsZSAmJiBwcm9wcy5sb2dvICYmIHByb3BzLmxvZ29EYXJrXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJsb2dvLWNsaWNrYWJsZSBmb290ZXItbG9nbyBmb290ZXItbG9nby0tZGFya1wiXG4gICAgICAgICAgICAgIFtwcm9wc109XCJ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE2LFxuICAgICAgICAgICAgICAgIG1vZGU6ICdib3gnLFxuICAgICAgICAgICAgICAgIHNoYWRlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgYm9yZGVyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHNpemU6ICdzbWFsbCcsXG4gICAgICAgICAgICAgICAgc3JjOiBwcm9wcy5sb2dvRGFyayxcbiAgICAgICAgICAgICAgICBhbHQ6IHByb3BzLmxvZ29BbHQgfHwgJ0xvZ28nLFxuICAgICAgICAgICAgICAgIGxpbWl0ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGRhcms6IHRydWVcbiAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJvbkxvZ29DbGljaygpXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic29jaWFsLWxpbmtzLWNvbnRhaW5lclwiICpuZ0lmPVwicHJvcHMuc29jaWFsTGlua3M/Lmxlbmd0aFwiPlxuICAgICAgICAgICAgICA8aW9uLWJ1dHRvblxuICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBzb2NpYWwgb2YgcHJvcHMuc29jaWFsTGlua3NcIlxuICAgICAgICAgICAgICAgIGZpbGw9XCJjbGVhclwiXG4gICAgICAgICAgICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgICAgICAgICAgICBbaHJlZl09XCJzb2NpYWwudXJsXCJcbiAgICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICAgIHJlbD1cIm5vb3BlbmVyXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInNvY2lhbC1idXR0b25cIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwic29jaWFsLm5hbWVcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGlvbi1pY29uIFtuYW1lXT1cInNvY2lhbC5pY29uXCIgc2xvdD1cImljb24tb25seVwiIFtjb2xvcl09XCJwcm9wcy5zb2NpYWxJY29uQ29sb3IgfHwgJ2RhcmsnXCI+PC9pb24taWNvbj5cbiAgICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvaW9uLWNvbD5cbiAgICAgIDwvaW9uLXJvdz5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVVcmxzOiBbJy4vZm9vdGVyLWxpbmtzLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEZvb3RlckxpbmtzQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSBuYXYgPSBpbmplY3QoTmF2aWdhdGlvblNlcnZpY2UpO1xuXG4gIC8qKlxuICAgKiBGb290ZXIgY29uZmlndXJhdGlvbi5cbiAgICovXG4gIEBJbnB1dCgpIHByb3BzITogRm9vdGVyTGlua3NNZXRhZGF0YTtcblxuICAvKipcbiAgICogRW1pdHMgd2hlbiB0aGUgbG9nbyBpcyBjbGlja2VkLlxuICAgKi9cbiAgQE91dHB1dCgpIGxvZ29DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAvKipcbiAgICogRGVmYXVsdCBsYW5ndWFnZSBzZWxlY3RvciBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgZ2V0IGxhbmd1YWdlU2VsZWN0b3JDb25maWcoKTogTGFuZ3VhZ2VTZWxlY3Rvck1ldGFkYXRhIHtcbiAgICBpZiAodGhpcy5wcm9wcy5sYW5ndWFnZVNlbGVjdG9yICYmIHR5cGVvZiB0aGlzLnByb3BzLmxhbmd1YWdlU2VsZWN0b3IgPT09ICdvYmplY3QnKSB7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5sYW5ndWFnZVNlbGVjdG9yO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgc2hvd0xhYmVsOiBmYWxzZSxcbiAgICAgIGxhYmVsQ29uZmlnOiB7XG4gICAgICAgIGNsYXNzTmFtZTogJ19nbG9iYWwnLFxuICAgICAgICBrZXk6ICdsYW5ndWFnZScsXG4gICAgICAgIGZhbGxiYWNrOiAnSWRpb21hJyxcbiAgICAgIH0sXG4gICAgICBzaG93RmxhZ3M6IHRydWUsXG4gICAgICBjb2xvcjogJ3ByaW1hcnknLFxuICAgICAgc2l6ZTogJ2RlZmF1bHQnLFxuICAgICAgZmlsbDogJ291dGxpbmUnLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogSGFuZGxlcyBsb2dvIGNsaWNrIC0gbmF2aWdhdGVzIGlmIHJvdXRlIHByb3ZpZGVkLCBvdGhlcndpc2UgZW1pdHMgZXZlbnQuXG4gICAqL1xuICBvbkxvZ29DbGljaygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5wcm9wcy5sb2dvUm91dGUpIHtcbiAgICAgIHRoaXMubmF2Lm5hdmlnYXRlQnlVcmwodGhpcy5wcm9wcy5sb2dvUm91dGUpO1xuICAgIH1cbiAgICB0aGlzLmxvZ29DbGljay5lbWl0KCk7XG4gIH1cbn1cbiJdfQ==
391
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLWxpbmtzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvZm9vdGVyLWxpbmtzL2Zvb3Rlci1saW5rcy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMvRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbkUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFFN0YsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7OztBQUd4RTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUJHO0FBd0tILE1BQU0sT0FBTyxvQkFBb0I7SUF2S2pDO1FBd0tVLFFBQUcsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQU94Qzs7V0FFRztRQUNPLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0tBZ0NoRDtJQTlCQzs7T0FFRztJQUNILElBQUksc0JBQXNCO1FBQ3hCLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsSUFBSSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDbkYsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDO1FBQ3JDLENBQUM7UUFDRCxPQUFPO1lBQ0wsU0FBUyxFQUFFLEtBQUs7WUFDaEIsV0FBVyxFQUFFO2dCQUNYLFNBQVMsRUFBRSxTQUFTO2dCQUNwQixHQUFHLEVBQUUsVUFBVTtnQkFDZixRQUFRLEVBQUUsUUFBUTthQUNuQjtZQUNELFNBQVMsRUFBRSxJQUFJO1lBQ2YsS0FBSyxFQUFFLFNBQVM7WUFDaEIsSUFBSSxFQUFFLFNBQVM7WUFDZixJQUFJLEVBQUUsU0FBUztTQUNoQixDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0gsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQy9DLENBQUM7UUFDRCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3hCLENBQUM7K0dBMUNVLG9CQUFvQjttR0FBcEIsb0JBQW9CLDZJQXpKckI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNKVCx5eERBaEtDLFlBQVksZ1FBQ1osTUFBTSxrVEFDTixNQUFNLG9EQUNOLFNBQVMsb1BBQ1QsT0FBTywySkFDUCxnQkFBZ0IsMkVBQ2hCLGNBQWMseUVBQ2Qsa0JBQWtCLDhFQUNsQix5QkFBeUI7OzRGQTJKaEIsb0JBQW9CO2tCQXZLaEMsU0FBUzsrQkFDRSxrQkFBa0IsY0FDaEIsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osTUFBTTt3QkFDTixNQUFNO3dCQUNOLFNBQVM7d0JBQ1QsT0FBTzt3QkFDUCxnQkFBZ0I7d0JBQ2hCLGNBQWM7d0JBQ2Qsa0JBQWtCO3dCQUNsQix5QkFBeUI7cUJBQzFCLFlBQ1M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNKVDs4QkFTUSxLQUFLO3NCQUFiLEtBQUs7Z0JBS0ksU0FBUztzQkFBbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgaW5qZWN0LCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJb25CdXR0b24sIElvbkNvbCwgSW9uSWNvbiwgSW9uUm93IH0gZnJvbSAnQGlvbmljL2FuZ3VsYXIvc3RhbmRhbG9uZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL25hdmlnYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBEaXZpZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYXRvbXMvZGl2aWRlci9kaXZpZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJbWFnZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2F0b21zL2ltYWdlL2ltYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMYW5ndWFnZVNlbGVjdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vbGFuZ3VhZ2Utc2VsZWN0b3IvbGFuZ3VhZ2Utc2VsZWN0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IExhbmd1YWdlU2VsZWN0b3JNZXRhZGF0YSB9IGZyb20gJy4uL2xhbmd1YWdlLXNlbGVjdG9yL3R5cGVzJztcbmltcG9ydCB7IExpbmtzQ2FrZUNvbXBvbmVudCB9IGZyb20gJy4uL2xpbmtzLWNha2UvbGlua3MtY2FrZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9vdGVyTGlua3NNZXRhZGF0YSB9IGZyb20gJy4vdHlwZXMnO1xuXG4vKipcbiAqIHZhbC1mb290ZXItbGlua3NcbiAqXG4gKiBBIHJlc3BvbnNpdmUgZm9vdGVyIGNvbXBvbmVudCB3aXRoIHR3byBjb2x1bW5zIG9mIGxpbmtzLCBzb2NpYWwgbWVkaWEgaWNvbnMsXG4gKiBsb2dvLCBhbmQgb3B0aW9uYWwgbGFuZ3VhZ2Ugc2VsZWN0b3IuXG4gKlxuICogQGV4YW1wbGVcbiAqIDx2YWwtZm9vdGVyLWxpbmtzXG4gKiAgIFtwcm9wc109XCJ7XG4gKiAgICAgbGVmdExpbmtzOiB7IHRpdGxlOiAnQ29tcGFueScsIGxpbmtzOiBbLi4uXSB9LFxuICogICAgIHJpZ2h0TGlua3M6IHsgdGl0bGU6ICdSZXNvdXJjZXMnLCBsaW5rczogWy4uLl0gfSxcbiAqICAgICBsb2dvOiAnbG9nby5zdmcnLFxuICogICAgIGxvZ29Sb3V0ZTogJy8nLFxuICogICAgIHNvY2lhbExpbmtzOiBbXG4gKiAgICAgICB7IGljb246ICdsb2dvLWZhY2Vib29rJywgdXJsOiAnaHR0cHM6Ly9mYWNlYm9vay5jb20nLCBuYW1lOiAnRmFjZWJvb2snIH1cbiAqICAgICBdXG4gKiAgIH1cIlxuICogPjwvdmFsLWZvb3Rlci1saW5rcz5cbiAqXG4gKiBAaW5wdXQgcHJvcHMgLSBGb290ZXIgY29uZmlndXJhdGlvblxuICogQG91dHB1dCBsb2dvQ2xpY2sgLSBFbWl0cyB3aGVuIGxvZ28gaXMgY2xpY2tlZFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtZm9vdGVyLWxpbmtzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBJb25Db2wsXG4gICAgSW9uUm93LFxuICAgIElvbkJ1dHRvbixcbiAgICBJb25JY29uLFxuICAgIERpdmlkZXJDb21wb25lbnQsXG4gICAgSW1hZ2VDb21wb25lbnQsXG4gICAgTGlua3NDYWtlQ29tcG9uZW50LFxuICAgIExhbmd1YWdlU2VsZWN0b3JDb21wb25lbnQsXG4gIF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImZvb3Rlci1saW5rc1wiPlxuICAgICAgPGlvbi1yb3c+XG4gICAgICAgIDxpb24tY29sIHNpemU9XCIxMlwiPlxuICAgICAgICAgIDx2YWwtZGl2aWRlciBbcHJvcHNdPVwicHJvcHMuZGl2aWRlciB8fCB7IHNpemU6ICdzbWFsbCcsIGNvbG9yOiAnbWVkaXVtJywgZmlsbDogJ3NvbGlkJyB9XCIgLz5cbiAgICAgICAgPC9pb24tY29sPlxuICAgICAgICA8aW9uLWNvbCBzaXplLXhzPVwiMTJcIiBzaXplLW1kPVwiNlwiPlxuICAgICAgICAgIDx2YWwtbGlua3MtY2FrZSBbcHJvcHNdPVwicHJvcHMubGVmdExpbmtzXCIgLz5cbiAgICAgICAgPC9pb24tY29sPlxuICAgICAgICA8aW9uLWNvbCBzaXplLXhzPVwiMTJcIiBzaXplLW1kPVwiNlwiPlxuICAgICAgICAgIDx2YWwtbGlua3MtY2FrZSBbcHJvcHNdPVwicHJvcHMucmlnaHRMaW5rc1wiIC8+XG4gICAgICAgIDwvaW9uLWNvbD5cbiAgICAgIDwvaW9uLXJvdz5cblxuICAgICAgPGlvbi1yb3cgKm5nSWY9XCJwcm9wcy5sYW5ndWFnZVNlbGVjdG9yICE9PSBmYWxzZVwiIHN0eWxlPVwibWFyZ2luLXRvcDogMXJlbTtcIj5cbiAgICAgICAgPGlvbi1jb2wgc2l6ZT1cIjEyXCI+XG4gICAgICAgICAgPHZhbC1sYW5ndWFnZS1zZWxlY3RvciBbcHJvcHNdPVwibGFuZ3VhZ2VTZWxlY3RvckNvbmZpZ1wiIC8+XG4gICAgICAgIDwvaW9uLWNvbD5cbiAgICAgIDwvaW9uLXJvdz5cblxuICAgICAgPGlvbi1yb3cgc3R5bGU9XCJtYXJnaW4tdG9wOiAxcmVtO1wiPlxuICAgICAgICA8aW9uLWNvbCBzaXplPVwiMTJcIiAqbmdJZj1cInByb3BzLmxvZ29Dc3NWYXJpYWJsZSB8fCBwcm9wcy5sb2dvIHx8IHByb3BzLnNvY2lhbExpbmtzPy5sZW5ndGhcIj5cbiAgICAgICAgICA8IS0tIE1vYmlsZSBsYXlvdXQ6IGNlbnRlcmVkIC0tPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtb2JpbGUtbGF5b3V0XCI+XG4gICAgICAgICAgICA8IS0tIENTUyBWYXJpYWJsZSBsb2dvIChyZWNvbW1lbmRlZCBmb3IgZGFyayBtb2RlKSAtLT5cbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICpuZ0lmPVwicHJvcHMubG9nb0Nzc1ZhcmlhYmxlXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJsb2dvLWNsaWNrYWJsZSBmb290ZXItbG9nbyBmb290ZXItbG9nby0tY3NzLXZhclwiXG4gICAgICAgICAgICAgIHJvbGU9XCJpbWdcIlxuICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInByb3BzLmxvZ29BbHQgfHwgJ0xvZ28nXCJcbiAgICAgICAgICAgICAgW3N0eWxlLi0tbG9nby12YXJdPVwiJ3ZhcignICsgcHJvcHMubG9nb0Nzc1ZhcmlhYmxlICsgJyknXCJcbiAgICAgICAgICAgICAgW3N0eWxlLndpZHRoXT1cInByb3BzLmxvZ29XaWR0aCB8fCAnMTByZW0nXCJcbiAgICAgICAgICAgICAgW3N0eWxlLmhlaWdodF09XCJwcm9wcy5sb2dvSGVpZ2h0IHx8ICczcmVtJ1wiXG4gICAgICAgICAgICAgIChjbGljayk9XCJvbkxvZ29DbGljaygpXCJcbiAgICAgICAgICAgID48L3NwYW4+XG4gICAgICAgICAgICA8IS0tIExpZ2h0IG1vZGUgbG9nbyAoZmFsbGJhY2spIC0tPlxuICAgICAgICAgICAgPHZhbC1pbWFnZVxuICAgICAgICAgICAgICAqbmdJZj1cIiFwcm9wcy5sb2dvQ3NzVmFyaWFibGUgJiYgcHJvcHMubG9nb1wiXG4gICAgICAgICAgICAgIGNsYXNzPVwibG9nby1jbGlja2FibGUgZm9vdGVyLWxvZ28gZm9vdGVyLWxvZ28tLWxpZ2h0XCJcbiAgICAgICAgICAgICAgW3Byb3BzXT1cIntcbiAgICAgICAgICAgICAgICB3aWR0aDogMTQsXG4gICAgICAgICAgICAgICAgbW9kZTogJ2JveCcsXG4gICAgICAgICAgICAgICAgc2hhZGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBib3JkZXJlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgc2l6ZTogJ3NtYWxsJyxcbiAgICAgICAgICAgICAgICBzcmM6IHByb3BzLmxvZ28sXG4gICAgICAgICAgICAgICAgYWx0OiBwcm9wcy5sb2dvQWx0IHx8ICdMb2dvJyxcbiAgICAgICAgICAgICAgICBsaW1pdGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBkYXJrOiB0cnVlXG4gICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAoY2xpY2spPVwib25Mb2dvQ2xpY2soKVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPCEtLSBEYXJrIG1vZGUgbG9nbyAoZmFsbGJhY2spIC0tPlxuICAgICAgICAgICAgPHZhbC1pbWFnZVxuICAgICAgICAgICAgICAqbmdJZj1cIiFwcm9wcy5sb2dvQ3NzVmFyaWFibGUgJiYgcHJvcHMubG9nbyAmJiBwcm9wcy5sb2dvRGFya1wiXG4gICAgICAgICAgICAgIGNsYXNzPVwibG9nby1jbGlja2FibGUgZm9vdGVyLWxvZ28gZm9vdGVyLWxvZ28tLWRhcmtcIlxuICAgICAgICAgICAgICBbcHJvcHNdPVwie1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNCxcbiAgICAgICAgICAgICAgICBtb2RlOiAnYm94JyxcbiAgICAgICAgICAgICAgICBzaGFkZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGJvcmRlcmVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBzaXplOiAnc21hbGwnLFxuICAgICAgICAgICAgICAgIHNyYzogcHJvcHMubG9nb0RhcmssXG4gICAgICAgICAgICAgICAgYWx0OiBwcm9wcy5sb2dvQWx0IHx8ICdMb2dvJyxcbiAgICAgICAgICAgICAgICBsaW1pdGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBkYXJrOiB0cnVlXG4gICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAoY2xpY2spPVwib25Mb2dvQ2xpY2soKVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNvY2lhbC1saW5rcy1jb250YWluZXJcIiAqbmdJZj1cInByb3BzLnNvY2lhbExpbmtzPy5sZW5ndGhcIiBzdHlsZT1cIm1hcmdpbi10b3A6IDFyZW1cIj5cbiAgICAgICAgICAgICAgPGlvbi1idXR0b25cbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgc29jaWFsIG9mIHByb3BzLnNvY2lhbExpbmtzXCJcbiAgICAgICAgICAgICAgICBmaWxsPVwiY2xlYXJcIlxuICAgICAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgICAgICAgW2hyZWZdPVwic29jaWFsLnVybFwiXG4gICAgICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAgICAgICByZWw9XCJub29wZW5lclwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJzb2NpYWwtYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInNvY2lhbC5uYW1lXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxpb24taWNvbiBbbmFtZV09XCJzb2NpYWwuaWNvblwiIHNsb3Q9XCJpY29uLW9ubHlcIiBbY29sb3JdPVwicHJvcHMuc29jaWFsSWNvbkNvbG9yIHx8ICdkYXJrJ1wiPjwvaW9uLWljb24+XG4gICAgICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPCEtLSBEZXNrdG9wIGxheW91dDogc3BhY2UtYmV0d2VlbiAtLT5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGVza3RvcC1sYXlvdXRcIj5cbiAgICAgICAgICAgIDwhLS0gQ1NTIFZhcmlhYmxlIGxvZ28gKHJlY29tbWVuZGVkIGZvciBkYXJrIG1vZGUpIC0tPlxuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgKm5nSWY9XCJwcm9wcy5sb2dvQ3NzVmFyaWFibGVcIlxuICAgICAgICAgICAgICBjbGFzcz1cImxvZ28tY2xpY2thYmxlIGZvb3Rlci1sb2dvIGZvb3Rlci1sb2dvLS1jc3MtdmFyXCJcbiAgICAgICAgICAgICAgcm9sZT1cImltZ1wiXG4gICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwicHJvcHMubG9nb0FsdCB8fCAnTG9nbydcIlxuICAgICAgICAgICAgICBbc3R5bGUuLS1sb2dvLXZhcl09XCIndmFyKCcgKyBwcm9wcy5sb2dvQ3NzVmFyaWFibGUgKyAnKSdcIlxuICAgICAgICAgICAgICBbc3R5bGUud2lkdGhdPVwicHJvcHMubG9nb1dpZHRoIHx8ICcxMnJlbSdcIlxuICAgICAgICAgICAgICBbc3R5bGUuaGVpZ2h0XT1cInByb3BzLmxvZ29IZWlnaHQgfHwgJzNyZW0nXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uTG9nb0NsaWNrKClcIlxuICAgICAgICAgICAgPjwvc3Bhbj5cbiAgICAgICAgICAgIDwhLS0gTGlnaHQgbW9kZSBsb2dvIChmYWxsYmFjaykgLS0+XG4gICAgICAgICAgICA8dmFsLWltYWdlXG4gICAgICAgICAgICAgICpuZ0lmPVwiIXByb3BzLmxvZ29Dc3NWYXJpYWJsZSAmJiBwcm9wcy5sb2dvXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJsb2dvLWNsaWNrYWJsZSBmb290ZXItbG9nbyBmb290ZXItbG9nby0tbGlnaHRcIlxuICAgICAgICAgICAgICBbcHJvcHNdPVwie1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNixcbiAgICAgICAgICAgICAgICBtb2RlOiAnYm94JyxcbiAgICAgICAgICAgICAgICBzaGFkZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGJvcmRlcmVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBzaXplOiAnc21hbGwnLFxuICAgICAgICAgICAgICAgIHNyYzogcHJvcHMubG9nbyxcbiAgICAgICAgICAgICAgICBhbHQ6IHByb3BzLmxvZ29BbHQgfHwgJ0xvZ28nLFxuICAgICAgICAgICAgICAgIGxpbWl0ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGRhcms6IHRydWVcbiAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJvbkxvZ29DbGljaygpXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8IS0tIERhcmsgbW9kZSBsb2dvIChmYWxsYmFjaykgLS0+XG4gICAgICAgICAgICA8dmFsLWltYWdlXG4gICAgICAgICAgICAgICpuZ0lmPVwiIXByb3BzLmxvZ29Dc3NWYXJpYWJsZSAmJiBwcm9wcy5sb2dvICYmIHByb3BzLmxvZ29EYXJrXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJsb2dvLWNsaWNrYWJsZSBmb290ZXItbG9nbyBmb290ZXItbG9nby0tZGFya1wiXG4gICAgICAgICAgICAgIFtwcm9wc109XCJ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE2LFxuICAgICAgICAgICAgICAgIG1vZGU6ICdib3gnLFxuICAgICAgICAgICAgICAgIHNoYWRlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgYm9yZGVyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHNpemU6ICdzbWFsbCcsXG4gICAgICAgICAgICAgICAgc3JjOiBwcm9wcy5sb2dvRGFyayxcbiAgICAgICAgICAgICAgICBhbHQ6IHByb3BzLmxvZ29BbHQgfHwgJ0xvZ28nLFxuICAgICAgICAgICAgICAgIGxpbWl0ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGRhcms6IHRydWVcbiAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJvbkxvZ29DbGljaygpXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic29jaWFsLWxpbmtzLWNvbnRhaW5lclwiICpuZ0lmPVwicHJvcHMuc29jaWFsTGlua3M/Lmxlbmd0aFwiPlxuICAgICAgICAgICAgICA8aW9uLWJ1dHRvblxuICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBzb2NpYWwgb2YgcHJvcHMuc29jaWFsTGlua3NcIlxuICAgICAgICAgICAgICAgIGZpbGw9XCJjbGVhclwiXG4gICAgICAgICAgICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgICAgICAgICAgICBbaHJlZl09XCJzb2NpYWwudXJsXCJcbiAgICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICAgIHJlbD1cIm5vb3BlbmVyXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInNvY2lhbC1idXR0b25cIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwic29jaWFsLm5hbWVcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGlvbi1pY29uIFtuYW1lXT1cInNvY2lhbC5pY29uXCIgc2xvdD1cImljb24tb25seVwiIFtjb2xvcl09XCJwcm9wcy5zb2NpYWxJY29uQ29sb3IgfHwgJ2RhcmsnXCI+PC9pb24taWNvbj5cbiAgICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvaW9uLWNvbD5cbiAgICAgIDwvaW9uLXJvdz5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVVcmxzOiBbJy4vZm9vdGVyLWxpbmtzLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEZvb3RlckxpbmtzQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSBuYXYgPSBpbmplY3QoTmF2aWdhdGlvblNlcnZpY2UpO1xuXG4gIC8qKlxuICAgKiBGb290ZXIgY29uZmlndXJhdGlvbi5cbiAgICovXG4gIEBJbnB1dCgpIHByb3BzITogRm9vdGVyTGlua3NNZXRhZGF0YTtcblxuICAvKipcbiAgICogRW1pdHMgd2hlbiB0aGUgbG9nbyBpcyBjbGlja2VkLlxuICAgKi9cbiAgQE91dHB1dCgpIGxvZ29DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAvKipcbiAgICogRGVmYXVsdCBsYW5ndWFnZSBzZWxlY3RvciBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgZ2V0IGxhbmd1YWdlU2VsZWN0b3JDb25maWcoKTogTGFuZ3VhZ2VTZWxlY3Rvck1ldGFkYXRhIHtcbiAgICBpZiAodGhpcy5wcm9wcy5sYW5ndWFnZVNlbGVjdG9yICYmIHR5cGVvZiB0aGlzLnByb3BzLmxhbmd1YWdlU2VsZWN0b3IgPT09ICdvYmplY3QnKSB7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5sYW5ndWFnZVNlbGVjdG9yO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgc2hvd0xhYmVsOiBmYWxzZSxcbiAgICAgIGxhYmVsQ29uZmlnOiB7XG4gICAgICAgIGNsYXNzTmFtZTogJ19nbG9iYWwnLFxuICAgICAgICBrZXk6ICdsYW5ndWFnZScsXG4gICAgICAgIGZhbGxiYWNrOiAnSWRpb21hJyxcbiAgICAgIH0sXG4gICAgICBzaG93RmxhZ3M6IHRydWUsXG4gICAgICBjb2xvcjogJ3ByaW1hcnknLFxuICAgICAgc2l6ZTogJ2RlZmF1bHQnLFxuICAgICAgZmlsbDogJ291dGxpbmUnLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogSGFuZGxlcyBsb2dvIGNsaWNrIC0gbmF2aWdhdGVzIGlmIHJvdXRlIHByb3ZpZGVkLCBvdGhlcndpc2UgZW1pdHMgZXZlbnQuXG4gICAqL1xuICBvbkxvZ29DbGljaygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5wcm9wcy5sb2dvUm91dGUpIHtcbiAgICAgIHRoaXMubmF2Lm5hdmlnYXRlQnlVcmwodGhpcy5wcm9wcy5sb2dvUm91dGUpO1xuICAgIH1cbiAgICB0aGlzLmxvZ29DbGljay5lbWl0KCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,112 @@
1
+ /**
2
+ * UpdateBannerComponent
3
+ *
4
+ * Componente que muestra un banner cuando hay una nueva versión de la aplicación disponible.
5
+ * Se integra automáticamente con AppConfigService para detectar actualizaciones.
6
+ */
7
+ import { CommonModule } from '@angular/common';
8
+ import { Component, computed, inject, signal } from '@angular/core';
9
+ import { BannerComponent } from '../../organisms/banner/banner.component';
10
+ import { AppConfigService } from '../../../services/app-config/app-config.service';
11
+ import { I18nService } from '../../../services/i18n';
12
+ import * as i0 from "@angular/core";
13
+ /**
14
+ * val-update-banner
15
+ *
16
+ * Banner de actualización que aparece cuando hay una nueva versión disponible.
17
+ * Se cierra automáticamente cuando el usuario hace clic en "Actualizar" o en cerrar.
18
+ *
19
+ * @example
20
+ * ```html
21
+ * <!-- Uso básico -->
22
+ * <val-update-banner />
23
+ *
24
+ * <!-- El banner solo aparece si hay actualización disponible -->
25
+ * ```
26
+ */
27
+ export class UpdateBannerComponent {
28
+ constructor() {
29
+ this.appConfig = inject(AppConfigService);
30
+ this.i18n = inject(I18nService);
31
+ /**
32
+ * Signal para controlar si el banner fue descartado por el usuario.
33
+ */
34
+ this.dismissed = signal(false);
35
+ /**
36
+ * Indica si el banner debe mostrarse.
37
+ */
38
+ this.show = computed(() => this.appConfig.hasUpdate() && !this.dismissed());
39
+ /**
40
+ * Props del banner calculadas reactivamente.
41
+ */
42
+ this.bannerProps = computed(() => ({
43
+ color: 'primary',
44
+ bordered: false,
45
+ closable: true,
46
+ mode: 'center',
47
+ alignment: 'center',
48
+ padding: '0.5rem 1rem',
49
+ content: {
50
+ position: 'center',
51
+ title: {
52
+ content: this.i18n.t('clickToUpdate', 'AppConfig'),
53
+ size: 'small',
54
+ color: 'light',
55
+ bold: false,
56
+ },
57
+ },
58
+ actions: {
59
+ position: 'center',
60
+ columned: false,
61
+ buttons: [
62
+ {
63
+ token: 'update',
64
+ text: this.i18n.t('updateNow', 'AppConfig'),
65
+ color: 'light',
66
+ fill: 'outline',
67
+ size: 'small',
68
+ state: 'ENABLED',
69
+ type: 'button',
70
+ },
71
+ ],
72
+ },
73
+ }));
74
+ }
75
+ /**
76
+ * Maneja el clic en acciones del banner.
77
+ */
78
+ onAction(token) {
79
+ if (token === 'update') {
80
+ window.location.reload();
81
+ }
82
+ }
83
+ /**
84
+ * Descarta el banner temporalmente (hasta que se recargue la página).
85
+ */
86
+ dismiss() {
87
+ this.dismissed.set(true);
88
+ }
89
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UpdateBannerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
90
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: UpdateBannerComponent, isStandalone: true, selector: "val-update-banner", ngImport: i0, template: `
91
+ @if (show()) {
92
+ <val-banner
93
+ [props]="bannerProps()"
94
+ (onClick)="onAction($event)"
95
+ (onClose)="dismiss()"
96
+ />
97
+ }
98
+ `, isInline: true, styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: BannerComponent, selector: "val-banner", inputs: ["props"], outputs: ["onClick", "onClose"] }] }); }
99
+ }
100
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UpdateBannerComponent, decorators: [{
101
+ type: Component,
102
+ args: [{ selector: 'val-update-banner', standalone: true, imports: [CommonModule, BannerComponent], template: `
103
+ @if (show()) {
104
+ <val-banner
105
+ [props]="bannerProps()"
106
+ (onClick)="onAction($event)"
107
+ (onClose)="dismiss()"
108
+ />
109
+ }
110
+ `, styles: [":host{display:block}\n"] }]
111
+ }] });
112
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLWJhbm5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3VwZGF0ZS1iYW5uZXIvdXBkYXRlLWJhbm5lci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUFFSCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDMUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDbkYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQUdyRDs7Ozs7Ozs7Ozs7OztHQWFHO0FBc0JILE1BQU0sT0FBTyxxQkFBcUI7SUFyQmxDO1FBc0JVLGNBQVMsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUNyQyxTQUFJLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRW5DOztXQUVHO1FBQ0ssY0FBUyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVsQzs7V0FFRztRQUNNLFNBQUksR0FBRyxRQUFRLENBQ3RCLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQ3RELENBQUM7UUFFRjs7V0FFRztRQUNNLGdCQUFXLEdBQUcsUUFBUSxDQUFpQixHQUFHLEVBQUUsQ0FBQyxDQUFDO1lBQ3JELEtBQUssRUFBRSxTQUFTO1lBQ2hCLFFBQVEsRUFBRSxLQUFLO1lBQ2YsUUFBUSxFQUFFLElBQUk7WUFDZCxJQUFJLEVBQUUsUUFBUTtZQUNkLFNBQVMsRUFBRSxRQUFRO1lBQ25CLE9BQU8sRUFBRSxhQUFhO1lBQ3RCLE9BQU8sRUFBRTtnQkFDUCxRQUFRLEVBQUUsUUFBUTtnQkFDbEIsS0FBSyxFQUFFO29CQUNMLE9BQU8sRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxlQUFlLEVBQUUsV0FBVyxDQUFDO29CQUNsRCxJQUFJLEVBQUUsT0FBTztvQkFDYixLQUFLLEVBQUUsT0FBTztvQkFDZCxJQUFJLEVBQUUsS0FBSztpQkFDWjthQUNGO1lBQ0QsT0FBTyxFQUFFO2dCQUNQLFFBQVEsRUFBRSxRQUFRO2dCQUNsQixRQUFRLEVBQUUsS0FBSztnQkFDZixPQUFPLEVBQUU7b0JBQ1A7d0JBQ0UsS0FBSyxFQUFFLFFBQVE7d0JBQ2YsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxXQUFXLENBQUM7d0JBQzNDLEtBQUssRUFBRSxPQUFPO3dCQUNkLElBQUksRUFBRSxTQUFTO3dCQUNmLElBQUksRUFBRSxPQUFPO3dCQUNiLEtBQUssRUFBRSxTQUFTO3dCQUNoQixJQUFJLEVBQUUsUUFBUTtxQkFDZjtpQkFDRjthQUNGO1NBQ0YsQ0FBQyxDQUFDLENBQUM7S0FpQkw7SUFmQzs7T0FFRztJQUNILFFBQVEsQ0FBQyxLQUFhO1FBQ3BCLElBQUksS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ3ZCLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDM0IsQ0FBQztJQUNILENBQUM7SUFFRDs7T0FFRztJQUNILE9BQU87UUFDTCxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzQixDQUFDOytHQWxFVSxxQkFBcUI7bUdBQXJCLHFCQUFxQiw2RUFqQnRCOzs7Ozs7OztHQVFULCtGQVRTLFlBQVksK0JBQUUsZUFBZTs7NEZBa0I1QixxQkFBcUI7a0JBckJqQyxTQUFTOytCQUNFLG1CQUFtQixjQUNqQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDLFlBQzlCOzs7Ozs7OztHQVFUIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBVcGRhdGVCYW5uZXJDb21wb25lbnRcbiAqXG4gKiBDb21wb25lbnRlIHF1ZSBtdWVzdHJhIHVuIGJhbm5lciBjdWFuZG8gaGF5IHVuYSBudWV2YSB2ZXJzacOzbiBkZSBsYSBhcGxpY2FjacOzbiBkaXNwb25pYmxlLlxuICogU2UgaW50ZWdyYSBhdXRvbcOhdGljYW1lbnRlIGNvbiBBcHBDb25maWdTZXJ2aWNlIHBhcmEgZGV0ZWN0YXIgYWN0dWFsaXphY2lvbmVzLlxuICovXG5cbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBpbmplY3QsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBCYW5uZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9vcmdhbmlzbXMvYmFubmVyL2Jhbm5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXBwQ29uZmlnU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2FwcC1jb25maWcvYXBwLWNvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IEkxOG5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvaTE4bic7XG5pbXBvcnQgeyBCYW5uZXJNZXRhZGF0YSB9IGZyb20gJy4uLy4uL29yZ2FuaXNtcy9iYW5uZXIvdHlwZXMnO1xuXG4vKipcbiAqIHZhbC11cGRhdGUtYmFubmVyXG4gKlxuICogQmFubmVyIGRlIGFjdHVhbGl6YWNpw7NuIHF1ZSBhcGFyZWNlIGN1YW5kbyBoYXkgdW5hIG51ZXZhIHZlcnNpw7NuIGRpc3BvbmlibGUuXG4gKiBTZSBjaWVycmEgYXV0b23DoXRpY2FtZW50ZSBjdWFuZG8gZWwgdXN1YXJpbyBoYWNlIGNsaWMgZW4gXCJBY3R1YWxpemFyXCIgbyBlbiBjZXJyYXIuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGh0bWxcbiAqIDwhLS0gVXNvIGLDoXNpY28gLS0+XG4gKiA8dmFsLXVwZGF0ZS1iYW5uZXIgLz5cbiAqXG4gKiA8IS0tIEVsIGJhbm5lciBzb2xvIGFwYXJlY2Ugc2kgaGF5IGFjdHVhbGl6YWNpw7NuIGRpc3BvbmlibGUgLS0+XG4gKiBgYGBcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLXVwZGF0ZS1iYW5uZXInLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBCYW5uZXJDb21wb25lbnRdLFxuICB0ZW1wbGF0ZTogYFxuICAgIEBpZiAoc2hvdygpKSB7XG4gICAgICA8dmFsLWJhbm5lclxuICAgICAgICBbcHJvcHNdPVwiYmFubmVyUHJvcHMoKVwiXG4gICAgICAgIChvbkNsaWNrKT1cIm9uQWN0aW9uKCRldmVudClcIlxuICAgICAgICAob25DbG9zZSk9XCJkaXNtaXNzKClcIlxuICAgICAgLz5cbiAgICB9XG4gIGAsXG4gIHN0eWxlczogW1xuICAgIGBcbiAgICAgIDpob3N0IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgYCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVXBkYXRlQmFubmVyQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSBhcHBDb25maWcgPSBpbmplY3QoQXBwQ29uZmlnU2VydmljZSk7XG4gIHByaXZhdGUgaTE4biA9IGluamVjdChJMThuU2VydmljZSk7XG5cbiAgLyoqXG4gICAqIFNpZ25hbCBwYXJhIGNvbnRyb2xhciBzaSBlbCBiYW5uZXIgZnVlIGRlc2NhcnRhZG8gcG9yIGVsIHVzdWFyaW8uXG4gICAqL1xuICBwcml2YXRlIGRpc21pc3NlZCA9IHNpZ25hbChmYWxzZSk7XG5cbiAgLyoqXG4gICAqIEluZGljYSBzaSBlbCBiYW5uZXIgZGViZSBtb3N0cmFyc2UuXG4gICAqL1xuICByZWFkb25seSBzaG93ID0gY29tcHV0ZWQoXG4gICAgKCkgPT4gdGhpcy5hcHBDb25maWcuaGFzVXBkYXRlKCkgJiYgIXRoaXMuZGlzbWlzc2VkKClcbiAgKTtcblxuICAvKipcbiAgICogUHJvcHMgZGVsIGJhbm5lciBjYWxjdWxhZGFzIHJlYWN0aXZhbWVudGUuXG4gICAqL1xuICByZWFkb25seSBiYW5uZXJQcm9wcyA9IGNvbXB1dGVkPEJhbm5lck1ldGFkYXRhPigoKSA9PiAoe1xuICAgIGNvbG9yOiAncHJpbWFyeScsXG4gICAgYm9yZGVyZWQ6IGZhbHNlLFxuICAgIGNsb3NhYmxlOiB0cnVlLFxuICAgIG1vZGU6ICdjZW50ZXInLFxuICAgIGFsaWdubWVudDogJ2NlbnRlcicsXG4gICAgcGFkZGluZzogJzAuNXJlbSAxcmVtJyxcbiAgICBjb250ZW50OiB7XG4gICAgICBwb3NpdGlvbjogJ2NlbnRlcicsXG4gICAgICB0aXRsZToge1xuICAgICAgICBjb250ZW50OiB0aGlzLmkxOG4udCgnY2xpY2tUb1VwZGF0ZScsICdBcHBDb25maWcnKSxcbiAgICAgICAgc2l6ZTogJ3NtYWxsJyxcbiAgICAgICAgY29sb3I6ICdsaWdodCcsXG4gICAgICAgIGJvbGQ6IGZhbHNlLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGFjdGlvbnM6IHtcbiAgICAgIHBvc2l0aW9uOiAnY2VudGVyJyxcbiAgICAgIGNvbHVtbmVkOiBmYWxzZSxcbiAgICAgIGJ1dHRvbnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHRva2VuOiAndXBkYXRlJyxcbiAgICAgICAgICB0ZXh0OiB0aGlzLmkxOG4udCgndXBkYXRlTm93JywgJ0FwcENvbmZpZycpLFxuICAgICAgICAgIGNvbG9yOiAnbGlnaHQnLFxuICAgICAgICAgIGZpbGw6ICdvdXRsaW5lJyxcbiAgICAgICAgICBzaXplOiAnc21hbGwnLFxuICAgICAgICAgIHN0YXRlOiAnRU5BQkxFRCcsXG4gICAgICAgICAgdHlwZTogJ2J1dHRvbicsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gIH0pKTtcblxuICAvKipcbiAgICogTWFuZWphIGVsIGNsaWMgZW4gYWNjaW9uZXMgZGVsIGJhbm5lci5cbiAgICovXG4gIG9uQWN0aW9uKHRva2VuOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAodG9rZW4gPT09ICd1cGRhdGUnKSB7XG4gICAgICB3aW5kb3cubG9jYXRpb24ucmVsb2FkKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIERlc2NhcnRhIGVsIGJhbm5lciB0ZW1wb3JhbG1lbnRlIChoYXN0YSBxdWUgc2UgcmVjYXJndWUgbGEgcMOhZ2luYSkuXG4gICAqL1xuICBkaXNtaXNzKCk6IHZvaWQge1xuICAgIHRoaXMuZGlzbWlzc2VkLnNldCh0cnVlKTtcbiAgfVxufVxuIl19
@@ -197,7 +197,7 @@ export class DocsShellComponent {
197
197
  </main>
198
198
  </div>
199
199
  </ion-split-pane>
200
- `, isInline: true, styles: [":host{display:block;height:100%}ion-split-pane{height:100%;--side-width: var(--docs-sidebar-width, 260px);--side-min-width: var(--docs-sidebar-width, 260px);--side-max-width: var(--docs-sidebar-width, 260px)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem}.logo-link{display:flex;align-items:center;gap:.75rem;text-decoration:none;transition:opacity .2s ease}.logo-link:hover{opacity:.8}.sidebar-logo--css-var{display:block;background-image:var(--logo-var);background-size:contain;background-repeat:no-repeat;background-position:left center}.sidebar-logo--img{display:block;object-fit:contain}.sidebar-close{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:none;background:transparent;border-radius:50%;cursor:pointer;color:var(--ion-text-color, #333);transition:background .2s ease}.sidebar-close:hover{background:#0000000d}.sidebar-close ion-icon{font-size:1.5rem}@media (min-width: 992px){.sidebar-close{display:none}}.search-wrapper{padding:.75rem 1rem;border-bottom:1px solid var(--ion-border-color, #e0e0e0)}.sidebar-nav{padding:.5rem 0}.nav-section__header{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;border:none;background:transparent;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#666;cursor:pointer}.nav-section__header:hover{color:var(--ion-text-color)}.nav-section__header span{flex:1;text-align:left}.nav-chevron{font-size:.875rem}.nav-links{list-style:none;margin:0;padding:0}.nav-links a{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem .5rem 2.5rem;font-size:.875rem;color:#555;text-decoration:none;border-left:2px solid transparent}.nav-links a:hover{color:var(--ion-text-color);background:#00000008}.nav-links a.active{color:var(--ion-text-color);font-weight:500;background:#0000000d;border-left-color:var(--ion-color-primary)}.nav-badge{font-size:.625rem;font-weight:500;text-transform:uppercase;padding:.125rem .375rem;border-radius:4px;background:#0000000a;color:#888}.nav-badge--success{background:#e8f5e9;color:#2e7d32}.docs-main-scroll{flex:1;overflow-y:auto;background:var(--ion-background-color)}ion-menu{--width: 100%;--max-width: 100%;--background: var(--ion-background-color);border-right:1px solid var(--ion-border-color, #e0e0e0)}@media (min-width: 992px){ion-menu{--width: var(--docs-sidebar-width, 260px);--max-width: var(--docs-sidebar-width, 260px)}.mobile-header{display:none}}#docs-content{display:flex;flex-direction:column}:host-context(.dark) .nav-badge,:host-context([color-scheme=\"dark\"]) .nav-badge{background:#ffffff0f;color:#999}:host-context(.dark) .nav-badge--success,:host-context([color-scheme=\"dark\"]) .nav-badge--success{background:#2e7d3233;color:#81c784}:host-context(.dark) .sidebar-close:hover,:host-context([color-scheme=\"dark\"]) .sidebar-close:hover{background:#ffffff1a}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: IonSplitPane, selector: "ion-split-pane", inputs: ["contentId", "disabled", "when"] }, { kind: "component", type: IonMenu, selector: "ion-menu", inputs: ["contentId", "disabled", "maxEdgeStart", "menuId", "side", "swipeGesture", "type"] }, { kind: "component", type: IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { kind: "component", type: IonContent, selector: "ion-content", inputs: ["color", "fixedSlotPlacement", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: IonMenuButton, selector: "ion-menu-button", inputs: ["autoHide", "color", "disabled", "menu", "mode", "type"] }, { kind: "component", type: IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { kind: "component", type: DocsSearchComponent, selector: "val-docs-search", inputs: ["props"], outputs: ["navigate", "search"] }, { kind: "component", type: CompanyFooterComponent, selector: "val-company-footer", inputs: ["props"] }] }); }
200
+ `, isInline: true, styles: [":host{display:block;height:100%}ion-split-pane{height:100%;--side-width: var(--docs-sidebar-width, 260px);--side-min-width: var(--docs-sidebar-width, 260px);--side-max-width: var(--docs-sidebar-width, 260px)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:0rem 1rem}.logo-link{display:flex;align-items:center;gap:.75rem;text-decoration:none;transition:opacity .2s ease}.logo-link:hover{opacity:.8}.sidebar-logo--css-var{display:block;background-image:var(--logo-var);background-size:contain;background-repeat:no-repeat;background-position:left center}.sidebar-logo--img{display:block;object-fit:contain}.sidebar-close{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:none;background:transparent;border-radius:50%;cursor:pointer;color:var(--ion-text-color, #333);transition:background .2s ease}.sidebar-close:hover{background:#0000000d}.sidebar-close ion-icon{font-size:1.5rem}@media (min-width: 992px){.sidebar-close{display:none}}.search-wrapper{padding:.75rem 1rem;border-bottom:1px solid var(--ion-border-color, #e0e0e0)}.sidebar-nav{padding:.5rem 0}.nav-section__header{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;border:none;background:transparent;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#666;cursor:pointer}.nav-section__header:hover{color:var(--ion-text-color)}.nav-section__header span{flex:1;text-align:left}.nav-chevron{font-size:.875rem}.nav-links{list-style:none;margin:0;padding:0}.nav-links a{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem .5rem 2.5rem;font-size:.875rem;color:#555;text-decoration:none;border-left:2px solid transparent}.nav-links a:hover{color:var(--ion-text-color);background:#00000008}.nav-links a.active{color:var(--ion-text-color);font-weight:500;background:#0000000d;border-left-color:var(--ion-color-primary)}.nav-badge{font-size:.625rem;font-weight:500;text-transform:uppercase;padding:.125rem .375rem;border-radius:4px;background:#0000000a;color:#888}.nav-badge--success{background:#e8f5e9;color:#2e7d32}.docs-main-scroll{flex:1;overflow-y:auto;background:var(--ion-background-color)}ion-menu{--width: 100%;--max-width: 100%;--background: var(--ion-background-color);border-right:1px solid var(--ion-border-color, #e0e0e0)}@media (min-width: 992px){ion-menu{--width: var(--docs-sidebar-width, 260px);--max-width: var(--docs-sidebar-width, 260px)}.mobile-header{display:none}}#docs-content{display:flex;flex-direction:column}:host-context(.dark) .nav-badge,:host-context([color-scheme=\"dark\"]) .nav-badge{background:#ffffff0f;color:#999}:host-context(.dark) .nav-badge--success,:host-context([color-scheme=\"dark\"]) .nav-badge--success{background:#2e7d3233;color:#81c784}:host-context(.dark) .sidebar-close:hover,:host-context([color-scheme=\"dark\"]) .sidebar-close:hover{background:#ffffff1a}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: IonSplitPane, selector: "ion-split-pane", inputs: ["contentId", "disabled", "when"] }, { kind: "component", type: IonMenu, selector: "ion-menu", inputs: ["contentId", "disabled", "maxEdgeStart", "menuId", "side", "swipeGesture", "type"] }, { kind: "component", type: IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { kind: "component", type: IonContent, selector: "ion-content", inputs: ["color", "fixedSlotPlacement", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: IonMenuButton, selector: "ion-menu-button", inputs: ["autoHide", "color", "disabled", "menu", "mode", "type"] }, { kind: "component", type: IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { kind: "component", type: DocsSearchComponent, selector: "val-docs-search", inputs: ["props"], outputs: ["navigate", "search"] }, { kind: "component", type: CompanyFooterComponent, selector: "val-company-footer", inputs: ["props"] }] }); }
201
201
  }
202
202
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DocsShellComponent, decorators: [{
203
203
  type: Component,
@@ -325,10 +325,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
325
325
  </main>
326
326
  </div>
327
327
  </ion-split-pane>
328
- `, styles: [":host{display:block;height:100%}ion-split-pane{height:100%;--side-width: var(--docs-sidebar-width, 260px);--side-min-width: var(--docs-sidebar-width, 260px);--side-max-width: var(--docs-sidebar-width, 260px)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem}.logo-link{display:flex;align-items:center;gap:.75rem;text-decoration:none;transition:opacity .2s ease}.logo-link:hover{opacity:.8}.sidebar-logo--css-var{display:block;background-image:var(--logo-var);background-size:contain;background-repeat:no-repeat;background-position:left center}.sidebar-logo--img{display:block;object-fit:contain}.sidebar-close{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:none;background:transparent;border-radius:50%;cursor:pointer;color:var(--ion-text-color, #333);transition:background .2s ease}.sidebar-close:hover{background:#0000000d}.sidebar-close ion-icon{font-size:1.5rem}@media (min-width: 992px){.sidebar-close{display:none}}.search-wrapper{padding:.75rem 1rem;border-bottom:1px solid var(--ion-border-color, #e0e0e0)}.sidebar-nav{padding:.5rem 0}.nav-section__header{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;border:none;background:transparent;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#666;cursor:pointer}.nav-section__header:hover{color:var(--ion-text-color)}.nav-section__header span{flex:1;text-align:left}.nav-chevron{font-size:.875rem}.nav-links{list-style:none;margin:0;padding:0}.nav-links a{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem .5rem 2.5rem;font-size:.875rem;color:#555;text-decoration:none;border-left:2px solid transparent}.nav-links a:hover{color:var(--ion-text-color);background:#00000008}.nav-links a.active{color:var(--ion-text-color);font-weight:500;background:#0000000d;border-left-color:var(--ion-color-primary)}.nav-badge{font-size:.625rem;font-weight:500;text-transform:uppercase;padding:.125rem .375rem;border-radius:4px;background:#0000000a;color:#888}.nav-badge--success{background:#e8f5e9;color:#2e7d32}.docs-main-scroll{flex:1;overflow-y:auto;background:var(--ion-background-color)}ion-menu{--width: 100%;--max-width: 100%;--background: var(--ion-background-color);border-right:1px solid var(--ion-border-color, #e0e0e0)}@media (min-width: 992px){ion-menu{--width: var(--docs-sidebar-width, 260px);--max-width: var(--docs-sidebar-width, 260px)}.mobile-header{display:none}}#docs-content{display:flex;flex-direction:column}:host-context(.dark) .nav-badge,:host-context([color-scheme=\"dark\"]) .nav-badge{background:#ffffff0f;color:#999}:host-context(.dark) .nav-badge--success,:host-context([color-scheme=\"dark\"]) .nav-badge--success{background:#2e7d3233;color:#81c784}:host-context(.dark) .sidebar-close:hover,:host-context([color-scheme=\"dark\"]) .sidebar-close:hover{background:#ffffff1a}\n"] }]
328
+ `, styles: [":host{display:block;height:100%}ion-split-pane{height:100%;--side-width: var(--docs-sidebar-width, 260px);--side-min-width: var(--docs-sidebar-width, 260px);--side-max-width: var(--docs-sidebar-width, 260px)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:0rem 1rem}.logo-link{display:flex;align-items:center;gap:.75rem;text-decoration:none;transition:opacity .2s ease}.logo-link:hover{opacity:.8}.sidebar-logo--css-var{display:block;background-image:var(--logo-var);background-size:contain;background-repeat:no-repeat;background-position:left center}.sidebar-logo--img{display:block;object-fit:contain}.sidebar-close{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:none;background:transparent;border-radius:50%;cursor:pointer;color:var(--ion-text-color, #333);transition:background .2s ease}.sidebar-close:hover{background:#0000000d}.sidebar-close ion-icon{font-size:1.5rem}@media (min-width: 992px){.sidebar-close{display:none}}.search-wrapper{padding:.75rem 1rem;border-bottom:1px solid var(--ion-border-color, #e0e0e0)}.sidebar-nav{padding:.5rem 0}.nav-section__header{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;border:none;background:transparent;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#666;cursor:pointer}.nav-section__header:hover{color:var(--ion-text-color)}.nav-section__header span{flex:1;text-align:left}.nav-chevron{font-size:.875rem}.nav-links{list-style:none;margin:0;padding:0}.nav-links a{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem .5rem 2.5rem;font-size:.875rem;color:#555;text-decoration:none;border-left:2px solid transparent}.nav-links a:hover{color:var(--ion-text-color);background:#00000008}.nav-links a.active{color:var(--ion-text-color);font-weight:500;background:#0000000d;border-left-color:var(--ion-color-primary)}.nav-badge{font-size:.625rem;font-weight:500;text-transform:uppercase;padding:.125rem .375rem;border-radius:4px;background:#0000000a;color:#888}.nav-badge--success{background:#e8f5e9;color:#2e7d32}.docs-main-scroll{flex:1;overflow-y:auto;background:var(--ion-background-color)}ion-menu{--width: 100%;--max-width: 100%;--background: var(--ion-background-color);border-right:1px solid var(--ion-border-color, #e0e0e0)}@media (min-width: 992px){ion-menu{--width: var(--docs-sidebar-width, 260px);--max-width: var(--docs-sidebar-width, 260px)}.mobile-header{display:none}}#docs-content{display:flex;flex-direction:column}:host-context(.dark) .nav-badge,:host-context([color-scheme=\"dark\"]) .nav-badge{background:#ffffff0f;color:#999}:host-context(.dark) .nav-badge--success,:host-context([color-scheme=\"dark\"]) .nav-badge--success{background:#2e7d3233;color:#81c784}:host-context(.dark) .sidebar-close:hover,:host-context([color-scheme=\"dark\"]) .sidebar-close:hover{background:#ffffff1a}\n"] }]
329
329
  }], propDecorators: { props: [{
330
330
  type: Input
331
331
  }], navigate: [{
332
332
  type: Output
333
333
  }] } });
334
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jcy1zaGVsbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvdGVtcGxhdGVzL2RvY3Mtc2hlbGwvZG9jcy1zaGVsbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCxZQUFZLEVBQ1osT0FBTyxFQUNQLFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLE9BQU8sRUFDUCxhQUFhLEVBQ2IsVUFBVSxFQUNWLGNBQWMsR0FDZixNQUFNLDJCQUEyQixDQUFDO0FBQ25DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDcEMsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixxQkFBcUIsRUFDckIsWUFBWSxHQUNiLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFFeEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDakcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7OztBQUd2RixRQUFRLENBQUM7SUFDUCxrQkFBa0I7SUFDbEIscUJBQXFCO0lBQ3JCLFlBQVk7Q0FDYixDQUFDLENBQUM7QUFFSDs7Ozs7Ozs7Ozs7O0dBWUc7QUE2VUgsTUFBTSxPQUFPLGtCQUFrQjtJQTVVL0I7UUE2VVUsYUFBUSxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztR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Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQStHVDs4QkFnTlEsS0FBSztzQkFBYixLQUFLO2dCQUtJLFFBQVE7c0JBQWpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgaW5qZWN0LCBzaWduYWwsIGNvbXB1dGVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7XG4gIElvblNwbGl0UGFuZSxcbiAgSW9uTWVudSxcbiAgSW9uSGVhZGVyLFxuICBJb25Ub29sYmFyLFxuICBJb25Db250ZW50LFxuICBJb25JY29uLFxuICBJb25NZW51QnV0dG9uLFxuICBJb25CdXR0b25zLFxuICBNZW51Q29udHJvbGxlcixcbn0gZnJvbSAnQGlvbmljL2FuZ3VsYXIvc3RhbmRhbG9uZSc7XG5pbXBvcnQgeyBhZGRJY29ucyB9IGZyb20gJ2lvbmljb25zJztcbmltcG9ydCB7XG4gIGNoZXZyb25Eb3duT3V0bGluZSxcbiAgY2hldnJvbkZvcndhcmRPdXRsaW5lLFxuICBjbG9zZU91dGxpbmUsXG59IGZyb20gJ2lvbmljb25zL2ljb25zJztcbmltcG9ydCB7IERvY3NTZWFyY2hDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvZG9jcy1zZWFyY2gvZG9jcy1zZWFyY2guY29tcG9uZW50JztcbmltcG9ydCB7IERvY3NTZWFyY2hNZXRhZGF0YSwgRG9jc1NlYXJjaFNlY3Rpb24gfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvZG9jcy1zZWFyY2gvdHlwZXMnO1xuaW1wb3J0IHsgQ29tcGFueUZvb3RlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL29yZ2FuaXNtcy9jb21wYW55LWZvb3Rlci9jb21wYW55LWZvb3Rlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRG9jc05hdmlnYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvZG9jcy9kb2NzLW5hdmlnYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBEb2NzU2hlbGxNZXRhZGF0YSwgRG9jc1NoZWxsU2VjdGlvbiB9IGZyb20gJy4vdHlwZXMnO1xuXG5hZGRJY29ucyh7XG4gIGNoZXZyb25Eb3duT3V0bGluZSxcbiAgY2hldnJvbkZvcndhcmRPdXRsaW5lLFxuICBjbG9zZU91dGxpbmUsXG59KTtcblxuLyoqXG4gKiB2YWwtZG9jcy1zaGVsbFxuICpcbiAqIEEgY29tcGxldGUgZG9jdW1lbnRhdGlvbiBzaGVsbCB3aXRoIHNpZGViYXIgbmF2aWdhdGlvbiwgc2VhcmNoLCBhbmQgY29udGVudCBhcmVhLlxuICogVXNlIHRoaXMgY29tcG9uZW50IGFzIHRoZSByb290IGxheW91dCBmb3IgZG9jdW1lbnRhdGlvbiBwYWdlcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgaHRtbFxuICogPHZhbC1kb2NzLXNoZWxsIFtwcm9wc109XCJzaGVsbENvbmZpZ1wiPlxuICogICA8cm91dGVyLW91dGxldD48L3JvdXRlci1vdXRsZXQ+XG4gKiA8L3ZhbC1kb2NzLXNoZWxsPlxuICogYGBgXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1kb2NzLXNoZWxsJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSb3V0ZXJNb2R1bGUsXG4gICAgSW9uU3BsaXRQYW5lLFxuICAgIElvbk1lbnUsXG4gICAgSW9uSGVhZGVyLFxuICAgIElvblRvb2xiYXIsXG4gICAgSW9uQ29udGVudCxcbiAgICBJb25JY29uLFxuICAgIElvbk1lbnVCdXR0b24sXG4gICAgSW9uQnV0dG9ucyxcbiAgICBEb2NzU2VhcmNoQ29tcG9uZW50LFxuICAgIENvbXBhbnlGb290ZXJDb21wb25lbnQsXG4gIF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGlvbi1zcGxpdC1wYW5lIGNvbnRlbnRJZD1cImRvY3MtY29udGVudFwiIHdoZW49XCJsZ1wiPlxuICAgICAgPGlvbi1tZW51IGNvbnRlbnRJZD1cImRvY3MtY29udGVudFwiIHR5cGU9XCJvdmVybGF5XCIgbWVudUlkPVwiZG9jcy1tZW51XCI+XG4gICAgICAgIDxpb24taGVhZGVyIGNsYXNzPVwiaW9uLW5vLWJvcmRlclwiPlxuICAgICAgICAgIDxpb24tdG9vbGJhcj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaWRlYmFyLWhlYWRlclwiPlxuICAgICAgICAgICAgICA8YSBbcm91dGVyTGlua109XCJwcm9wcy5sb2dvLnJvdXRlIHx8IFsnLyddXCIgY2xhc3M9XCJsb2dvLWxpbmtcIiBbYXR0ci5hcmlhLWxhYmVsXT1cInByb3BzLmxvZ28uYWx0XCI+XG4gICAgICAgICAgICAgICAgQGlmIChwcm9wcy5sb2dvLmNzc1ZhcmlhYmxlKSB7XG4gICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInNpZGViYXItbG9nbyBzaWRlYmFyLWxvZ28tLWNzcy12YXJcIlxuICAgICAgICAgICAgICAgICAgICByb2xlPVwiaW1nXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJwcm9wcy5sb2dvLmFsdFwiXG4gICAgICAgICAgICAgICAgICAgIFtzdHlsZS4tLWxvZ28tdmFyXT1cIid2YXIoJyArIHByb3BzLmxvZ28uY3NzVmFyaWFibGUgKyAnKSdcIlxuICAgICAgICAgICAgICAgICAgICBbc3R5bGUud2lkdGhdPVwicHJvcHMubG9nby53aWR0aCB8fCAnMTByZW0nXCJcbiAgICAgICAgICAgICAgICAgICAgW3N0eWxlLmhlaWdodF09XCJwcm9wcy5sb2dvLmhlaWdodCB8fCAnM3JlbSdcIlxuICAgICAgICAgICAgICAgICAgPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICB9IEBlbHNlIGlmIChwcm9wcy5sb2dvLnNyYykge1xuICAgICAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICAgICBbc3JjXT1cInByb3BzLmxvZ28uc3JjXCJcbiAgICAgICAgICAgICAgICAgICAgW2FsdF09XCJwcm9wcy5sb2dvLmFsdFwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2lkZWJhci1sb2dvIHNpZGViYXItbG9nby0taW1nXCJcbiAgICAgICAgICAgICAgICAgICAgW3N0eWxlLndpZHRoXT1cInByb3BzLmxvZ28ud2lkdGggfHwgJzEwcmVtJ1wiXG4gICAgICAgICAgICAgICAgICAgIFtzdHlsZS5oZWlnaHRdPVwicHJvcHMubG9nby5oZWlnaHQgfHwgJzNyZW0nXCJcbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInNpZGViYXItY2xvc2VcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJjbG9zZU1lbnUoKVwiXG4gICAgICAgICAgICAgICAgYXJpYS1sYWJlbD1cIkNsb3NlIG1lbnVcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJjbG9zZS1vdXRsaW5lXCI+PC9pb24taWNvbj5cbiAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2lvbi10b29sYmFyPlxuICAgICAgICA8L2lvbi1oZWFkZXI+XG5cbiAgICAgICAgPGlvbi1jb250ZW50PlxuICAgICAgICAgIDwhLS0gU2VhcmNoIC0tPlxuICAgICAgICAgIEBpZiAocHJvcHMuc2VhcmNoKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VhcmNoLXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgPHZhbC1kb2NzLXNlYXJjaFxuICAgICAgICAgICAgICAgIFtwcm9wc109XCJzZWFyY2hQcm9wcygpXCJcbiAgICAgICAgICAgICAgICAobmF2aWdhdGUpPVwib25OYXZpZ2F0ZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgPjwvdmFsLWRvY3Mtc2VhcmNoPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgPG5hdiBjbGFzcz1cInNpZGViYXItbmF2XCI+XG4gICAgICAgICAgICBAZm9yIChzZWN0aW9uIG9mIHNlY3Rpb25zU3RhdGUoKTsgdHJhY2sgc2VjdGlvbi5rZXkpIHtcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5hdi1zZWN0aW9uXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cIm5hdi1zZWN0aW9uX19oZWFkZXJcIlxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZVNlY3Rpb24oc2VjdGlvbilcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIEBpZiAoc2VjdGlvbi5pY29uKSB7XG4gICAgICAgICAgICAgICAgICAgIDxpb24taWNvbiBbbmFtZV09XCJzZWN0aW9uLmljb25cIj48L2lvbi1pY29uPlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgc2VjdGlvbi50aXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDxpb24taWNvblxuICAgICAgICAgICAgICAgICAgICBbbmFtZV09XCJzZWN0aW9uLmV4cGFuZGVkID8gJ2NoZXZyb24tZG93bi1vdXRsaW5lJyA6ICdjaGV2cm9uLWZvcndhcmQtb3V0bGluZSdcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm5hdi1jaGV2cm9uXCJcbiAgICAgICAgICAgICAgICAgID48L2lvbi1pY29uPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgICAgICAgICAgQGlmIChzZWN0aW9uLmV4cGFuZGVkKSB7XG4gICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJuYXYtbGlua3NcIj5cbiAgICAgICAgICAgICAgICAgICAgQGZvciAobGluayBvZiBzZWN0aW9uLmNoaWxkcmVuOyB0cmFjayBsaW5rLmxhYmVsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgPGxpPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwibGluay5yb3V0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJvdXRlckxpbmtBY3RpdmU9XCJhY3RpdmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2xvc2VNZW51KClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBsaW5rLmxhYmVsIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAobGluay5iYWRnZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm5hdi1iYWRnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MubmF2LWJhZGdlLS1zdWNjZXNzXT1cImxpbmsuYmFkZ2VDb2xvciA9PT0gJ3N1Y2Nlc3MnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+e3sgbGluay5iYWRnZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L25hdj5cbiAgICAgICAgPC9pb24tY29udGVudD5cbiAgICAgIDwvaW9uLW1lbnU+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJpb24tcGFnZVwiIGlkPVwiZG9jcy1jb250ZW50XCI+XG4gICAgICAgIDxpb24taGVhZGVyIGNsYXNzPVwiaW9uLW5vLWJvcmRlciBtb2JpbGUtaGVhZGVyXCI+XG4gICAgICAgICAgPGlvbi10b29sYmFyPlxuICAgICAgICAgICAgPGlvbi1idXR0b25zIHNsb3Q9XCJzdGFydFwiPlxuICAgICAgICAgICAgICA8aW9uLW1lbnUtYnV0dG9uIG1lbnU9XCJkb2NzLW1lbnVcIiBjb2xvcj1cImRhcmtcIj48L2lvbi1tZW51LWJ1dHRvbj5cbiAgICAgICAgICAgIDwvaW9uLWJ1dHRvbnM+XG4gICAgICAgICAgPC9pb24tdG9vbGJhcj5cbiAgICAgICAgPC9pb24taGVhZGVyPlxuXG4gICAgICAgIDxtYWluIGNsYXNzPVwiZG9jcy1tYWluLXNjcm9sbFwiPlxuICAgICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgICAgICBAaWYgKHByb3BzLmZvb3Rlcikge1xuICAgICAgICAgICAgPHZhbC1jb21wYW55LWZvb3RlciBbcHJvcHNdPVwicHJvcHMuZm9vdGVyXCI+PC92YWwtY29tcGFueS1mb290ZXI+XG4gICAgICAgICAgfVxuICAgICAgICA8L21haW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L2lvbi1zcGxpdC1wYW5lPlxuICBgLFxuICBzdHlsZXM6IFtgXG4gICAgOmhvc3Qge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgaW9uLXNwbGl0LXBhbmUge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgLS1zaWRlLXdpZHRoOiB2YXIoLS1kb2NzLXNpZGViYXItd2lkdGgsIDI2MHB4KTtcbiAgICAgIC0tc2lkZS1taW4td2lkdGg6IHZhcigtLWRvY3Mtc2lkZWJhci13aWR0aCwgMjYwcHgpO1xuICAgICAgLS1zaWRlLW1heC13aWR0aDogdmFyKC0tZG9jcy1zaWRlYmFyLXdpZHRoLCAyNjBweCk7XG4gICAgfVxuXG4gICAgLnNpZGViYXItaGVhZGVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgIH1cblxuICAgIC5sb2dvLWxpbmsge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IDAuNzVyZW07XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcbiAgICB9XG5cbiAgICAubG9nby1saW5rOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDAuODtcbiAgICB9XG5cbiAgICAuc2lkZWJhci1sb2dvLS1jc3MtdmFyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tbG9nby12YXIpO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgIH1cblxuICAgIC5zaWRlYmFyLWxvZ28tLWltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgfVxuXG4gICAgLnNpZGViYXItY2xvc2Uge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAyLjVyZW07XG4gICAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgY29sb3I6IHZhcigtLWlvbi10ZXh0LWNvbG9yLCAjMzMzKTtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlO1xuICAgIH1cblxuICAgIC5zaWRlYmFyLWNsb3NlOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gICAgfVxuXG4gICAgLnNpZGViYXItY2xvc2UgaW9uLWljb24ge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAuc2lkZWJhci1jbG9zZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNlYXJjaC13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1pb24tYm9yZGVyLWNvbG9yLCAjZTBlMGUwKTtcbiAgICB9XG5cbiAgICAuc2lkZWJhci1uYXYge1xuICAgICAgcGFkZGluZzogMC41cmVtIDA7XG4gICAgfVxuXG4gICAgLm5hdi1zZWN0aW9uX19oZWFkZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IDAuNXJlbTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIC5uYXYtc2VjdGlvbl9faGVhZGVyOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1pb24tdGV4dC1jb2xvcik7XG4gICAgfVxuXG4gICAgLm5hdi1zZWN0aW9uX19oZWFkZXIgc3BhbiB7XG4gICAgICBmbGV4OiAxO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICAubmF2LWNoZXZyb24ge1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICB9XG5cbiAgICAubmF2LWxpbmtzIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5uYXYtbGlua3MgYSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAyLjVyZW07XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgY29sb3I6ICM1NTU7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC5uYXYtbGlua3MgYTpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0taW9uLXRleHQtY29sb3IpO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjAzKTtcbiAgICB9XG5cbiAgICAubmF2LWxpbmtzIGEuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1pb24tdGV4dC1jb2xvcik7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1pb24tY29sb3ItcHJpbWFyeSk7XG4gICAgfVxuXG4gICAgLm5hdi1iYWRnZSB7XG4gICAgICBmb250LXNpemU6IDAuNjI1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBwYWRkaW5nOiAwLjEyNXJlbSAwLjM3NXJlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNCk7XG4gICAgICBjb2xvcjogIzg4ODtcbiAgICB9XG5cbiAgICAubmF2LWJhZGdlLS1zdWNjZXNzIHtcbiAgICAgIGJhY2tncm91bmQ6ICNlOGY1ZTk7XG4gICAgICBjb2xvcjogIzJlN2QzMjtcbiAgICB9XG5cbiAgICAuZG9jcy1tYWluLXNjcm9sbCB7XG4gICAgICBmbGV4OiAxO1xuICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWlvbi1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICB9XG5cbiAgICBpb24tbWVudSB7XG4gICAgICAtLXdpZHRoOiAxMDAlO1xuICAgICAgLS1tYXgtd2lkdGg6IDEwMCU7XG4gICAgICAtLWJhY2tncm91bmQ6IHZhcigtLWlvbi1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWlvbi1ib3JkZXItY29sb3IsICNlMGUwZTApO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgaW9uLW1lbnUge1xuICAgICAgICAtLXdpZHRoOiB2YXIoLS1kb2NzLXNpZGViYXItd2lkdGgsIDI2MHB4KTtcbiAgICAgICAgLS1tYXgtd2lkdGg6IHZhcigtLWRvY3Mtc2lkZWJhci13aWR0aCwgMjYwcHgpO1xuICAgICAgfVxuXG4gICAgICAubW9iaWxlLWhlYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgI2RvY3MtY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG5cbiAgICAvKiBEYXJrIG1vZGUgKi9cbiAgICA6aG9zdC1jb250ZXh0KC5kYXJrKSAubmF2LWJhZGdlLFxuICAgIDpob3N0LWNvbnRleHQoW2NvbG9yLXNjaGVtZT1cImRhcmtcIl0pIC5uYXYtYmFkZ2Uge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA2KTtcbiAgICAgIGNvbG9yOiAjOTk5O1xuICAgIH1cblxuICAgIDpob3N0LWNvbnRleHQoLmRhcmspIC5uYXYtYmFkZ2UtLXN1Y2Nlc3MsXG4gICAgOmhvc3QtY29udGV4dChbY29sb3Itc2NoZW1lPVwiZGFya1wiXSkgLm5hdi1iYWRnZS0tc3VjY2VzcyB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDQ2LCAxMjUsIDUwLCAwLjIpO1xuICAgICAgY29sb3I6ICM4MWM3ODQ7XG4gICAgfVxuXG4gICAgOmhvc3QtY29udGV4dCguZGFyaykgLnNpZGViYXItY2xvc2U6aG92ZXIsXG4gICAgOmhvc3QtY29udGV4dChbY29sb3Itc2NoZW1lPVwiZGFya1wiXSkgLnNpZGViYXItY2xvc2U6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgIH1cbiAgYF0sXG59KVxuZXhwb3J0IGNsYXNzIERvY3NTaGVsbENvbXBvbmVudCB7XG4gIHByaXZhdGUgbWVudUN0cmwgPSBpbmplY3QoTWVudUNvbnRyb2xsZXIpO1xuICBwcml2YXRlIGRvY3NOYXYgPSBpbmplY3QoRG9jc05hdmlnYXRpb25TZXJ2aWNlKTtcblxuICBASW5wdXQoKSBwcm9wczogRG9jc1NoZWxsTWV0YWRhdGEgPSB7XG4gICAgbG9nbzogeyBhbHQ6ICdMb2dvJyB9LFxuICAgIHNlY3Rpb25zOiBbXSxcbiAgfTtcblxuICBAT3V0cHV0KCkgbmF2aWdhdGUgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZ1tdPigpO1xuXG4gIC8vIEludGVybmFsIHN0YXRlIGZvciBleHBhbmRlZCBzZWN0aW9uc1xuICBwcml2YXRlIF9zZWN0aW9uc1N0YXRlID0gc2lnbmFsPERvY3NTaGVsbFNlY3Rpb25bXT4oW10pO1xuXG4gIHNlY3Rpb25zU3RhdGUgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgLy8gSW5pdGlhbGl6ZSBmcm9tIHByb3BzIGlmIGVtcHR5XG4gICAgaWYgKHRoaXMuX3NlY3Rpb25zU3RhdGUoKS5sZW5ndGggPT09IDAgJiYgdGhpcy5wcm9wcy5zZWN0aW9ucy5sZW5ndGggPiAwKSB7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5zZWN0aW9ucy5tYXAocyA9PiAoe1xuICAgICAgICAuLi5zLFxuICAgICAgICBleHBhbmRlZDogcy5leHBhbmRlZCA/PyB0cnVlLFxuICAgICAgfSkpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5fc2VjdGlvbnNTdGF0ZSgpLmxlbmd0aCA+IDAgPyB0aGlzLl9zZWN0aW9uc1N0YXRlKCkgOiB0aGlzLnByb3BzLnNlY3Rpb25zO1xuICB9KTtcblxuICBzZWFyY2hQcm9wcyA9IGNvbXB1dGVkPERvY3NTZWFyY2hNZXRhZGF0YT4oKCkgPT4gKHtcbiAgICBwbGFjZWhvbGRlcjogdGhpcy5wcm9wcy5zZWFyY2g/LnBsYWNlaG9sZGVyIHx8ICdTZWFyY2guLi4nLFxuICAgIHNob3dTaG9ydGN1dDogdGhpcy5wcm9wcy5zZWFyY2g/LnNob3dTaG9ydGN1dCA/PyB0cnVlLFxuICAgIHNlY3Rpb25zOiB0aGlzLmJ1aWxkU2VhcmNoU2VjdGlvbnMoKSxcbiAgfSkpO1xuXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIC8vIFVwZGF0ZSBzZWN0aW9ucyBzdGF0ZSB3aGVuIHByb3BzIGNoYW5nZVxuICAgIGlmICh0aGlzLnByb3BzLnNlY3Rpb25zLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuX3NlY3Rpb25zU3RhdGUuc2V0KFxuICAgICAgICB0aGlzLnByb3BzLnNlY3Rpb25zLm1hcChzID0+ICh7XG4gICAgICAgICAgLi4ucyxcbiAgICAgICAgICBleHBhbmRlZDogcy5leHBhbmRlZCA/PyB0cnVlLFxuICAgICAgICB9KSlcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgdG9nZ2xlU2VjdGlvbihzZWN0aW9uOiBEb2NzU2hlbGxTZWN0aW9uKTogdm9pZCB7XG4gICAgdGhpcy5fc2VjdGlvbnNTdGF0ZS51cGRhdGUoc2VjdGlvbnMgPT5cbiAgICAgIHNlY3Rpb25zLm1hcChzID0+XG4gICAgICAgIHMua2V5ID09PSBzZWN0aW9uLmtleSA/IHsgLi4ucywgZXhwYW5kZWQ6ICFzLmV4cGFuZGVkIH0gOiBzXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jIGNsb3NlTWVudSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLm1lbnVDdHJsLmNsb3NlKCdkb2NzLW1lbnUnKTtcbiAgICB0aGlzLmRvY3NOYXYuc2Nyb2xsVG9Ub3AoKTtcbiAgfVxuXG4gIG9uTmF2aWdhdGUocm91dGU6IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgdGhpcy5uYXZpZ2F0ZS5lbWl0KHJvdXRlKTtcbiAgICB0aGlzLmRvY3NOYXYubmF2aWdhdGVBbmRTY3JvbGwocm91dGUpO1xuICAgIHRoaXMubWVudUN0cmwuY2xvc2UoJ2RvY3MtbWVudScpO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZFNlYXJjaFNlY3Rpb25zKCk6IERvY3NTZWFyY2hTZWN0aW9uW10ge1xuICAgIHJldHVybiB0aGlzLnByb3BzLnNlY3Rpb25zLm1hcChzZWN0aW9uID0+ICh7XG4gICAgICB0aXRsZTogc2VjdGlvbi50aXRsZSxcbiAgICAgIGl0ZW1zOiBzZWN0aW9uLmNoaWxkcmVuLm1hcChjaGlsZCA9PiAoe1xuICAgICAgICBsYWJlbDogY2hpbGQubGFiZWwsXG4gICAgICAgIHJvdXRlOiBjaGlsZC5yb3V0ZSxcbiAgICAgICAgZGVzY3JpcHRpb246IGAke3NlY3Rpb24udGl0bGV9ID4gJHtjaGlsZC5sYWJlbH1gLFxuICAgICAgfSkpLFxuICAgIH0pKTtcbiAgfVxufVxuIl19
334
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jcy1zaGVsbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvdGVtcGxhdGVzL2RvY3Mtc2hlbGwvZG9jcy1zaGVsbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCxZQUFZLEVBQ1osT0FBTyxFQUNQLFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLE9BQU8sRUFDUCxhQUFhLEVBQ2IsVUFBVSxFQUNWLGNBQWMsR0FDZixNQUFNLDJCQUEyQixDQUFDO0FBQ25DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDcEMsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixxQkFBcUIsRUFDckIsWUFBWSxHQUNiLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFFeEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDakcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7OztBQUd2RixRQUFRLENBQUM7SUFDUCxrQkFBa0I7SUFDbEIscUJBQXFCO0lBQ3JCLFlBQVk7Q0FDYixDQUFDLENBQUM7QUFFSDs7Ozs7Ozs7Ozs7O0dBWUc7QUE2VUgsTUFBTSxPQUFPLGtCQUFrQjtJQTVVL0I7UUE2VVUsYUFBUSxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztR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Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQStHVDs4QkFnTlEsS0FBSztzQkFBYixLQUFLO2dCQUtJLFFBQVE7c0JBQWpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgaW5qZWN0LCBzaWduYWwsIGNvbXB1dGVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7XG4gIElvblNwbGl0UGFuZSxcbiAgSW9uTWVudSxcbiAgSW9uSGVhZGVyLFxuICBJb25Ub29sYmFyLFxuICBJb25Db250ZW50LFxuICBJb25JY29uLFxuICBJb25NZW51QnV0dG9uLFxuICBJb25CdXR0b25zLFxuICBNZW51Q29udHJvbGxlcixcbn0gZnJvbSAnQGlvbmljL2FuZ3VsYXIvc3RhbmRhbG9uZSc7XG5pbXBvcnQgeyBhZGRJY29ucyB9IGZyb20gJ2lvbmljb25zJztcbmltcG9ydCB7XG4gIGNoZXZyb25Eb3duT3V0bGluZSxcbiAgY2hldnJvbkZvcndhcmRPdXRsaW5lLFxuICBjbG9zZU91dGxpbmUsXG59IGZyb20gJ2lvbmljb25zL2ljb25zJztcbmltcG9ydCB7IERvY3NTZWFyY2hDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvZG9jcy1zZWFyY2gvZG9jcy1zZWFyY2guY29tcG9uZW50JztcbmltcG9ydCB7IERvY3NTZWFyY2hNZXRhZGF0YSwgRG9jc1NlYXJjaFNlY3Rpb24gfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvZG9jcy1zZWFyY2gvdHlwZXMnO1xuaW1wb3J0IHsgQ29tcGFueUZvb3RlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL29yZ2FuaXNtcy9jb21wYW55LWZvb3Rlci9jb21wYW55LWZvb3Rlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRG9jc05hdmlnYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvZG9jcy9kb2NzLW5hdmlnYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBEb2NzU2hlbGxNZXRhZGF0YSwgRG9jc1NoZWxsU2VjdGlvbiB9IGZyb20gJy4vdHlwZXMnO1xuXG5hZGRJY29ucyh7XG4gIGNoZXZyb25Eb3duT3V0bGluZSxcbiAgY2hldnJvbkZvcndhcmRPdXRsaW5lLFxuICBjbG9zZU91dGxpbmUsXG59KTtcblxuLyoqXG4gKiB2YWwtZG9jcy1zaGVsbFxuICpcbiAqIEEgY29tcGxldGUgZG9jdW1lbnRhdGlvbiBzaGVsbCB3aXRoIHNpZGViYXIgbmF2aWdhdGlvbiwgc2VhcmNoLCBhbmQgY29udGVudCBhcmVhLlxuICogVXNlIHRoaXMgY29tcG9uZW50IGFzIHRoZSByb290IGxheW91dCBmb3IgZG9jdW1lbnRhdGlvbiBwYWdlcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgaHRtbFxuICogPHZhbC1kb2NzLXNoZWxsIFtwcm9wc109XCJzaGVsbENvbmZpZ1wiPlxuICogICA8cm91dGVyLW91dGxldD48L3JvdXRlci1vdXRsZXQ+XG4gKiA8L3ZhbC1kb2NzLXNoZWxsPlxuICogYGBgXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1kb2NzLXNoZWxsJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSb3V0ZXJNb2R1bGUsXG4gICAgSW9uU3BsaXRQYW5lLFxuICAgIElvbk1lbnUsXG4gICAgSW9uSGVhZGVyLFxuICAgIElvblRvb2xiYXIsXG4gICAgSW9uQ29udGVudCxcbiAgICBJb25JY29uLFxuICAgIElvbk1lbnVCdXR0b24sXG4gICAgSW9uQnV0dG9ucyxcbiAgICBEb2NzU2VhcmNoQ29tcG9uZW50LFxuICAgIENvbXBhbnlGb290ZXJDb21wb25lbnQsXG4gIF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGlvbi1zcGxpdC1wYW5lIGNvbnRlbnRJZD1cImRvY3MtY29udGVudFwiIHdoZW49XCJsZ1wiPlxuICAgICAgPGlvbi1tZW51IGNvbnRlbnRJZD1cImRvY3MtY29udGVudFwiIHR5cGU9XCJvdmVybGF5XCIgbWVudUlkPVwiZG9jcy1tZW51XCI+XG4gICAgICAgIDxpb24taGVhZGVyIGNsYXNzPVwiaW9uLW5vLWJvcmRlclwiPlxuICAgICAgICAgIDxpb24tdG9vbGJhcj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaWRlYmFyLWhlYWRlclwiPlxuICAgICAgICAgICAgICA8YSBbcm91dGVyTGlua109XCJwcm9wcy5sb2dvLnJvdXRlIHx8IFsnLyddXCIgY2xhc3M9XCJsb2dvLWxpbmtcIiBbYXR0ci5hcmlhLWxhYmVsXT1cInByb3BzLmxvZ28uYWx0XCI+XG4gICAgICAgICAgICAgICAgQGlmIChwcm9wcy5sb2dvLmNzc1ZhcmlhYmxlKSB7XG4gICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInNpZGViYXItbG9nbyBzaWRlYmFyLWxvZ28tLWNzcy12YXJcIlxuICAgICAgICAgICAgICAgICAgICByb2xlPVwiaW1nXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJwcm9wcy5sb2dvLmFsdFwiXG4gICAgICAgICAgICAgICAgICAgIFtzdHlsZS4tLWxvZ28tdmFyXT1cIid2YXIoJyArIHByb3BzLmxvZ28uY3NzVmFyaWFibGUgKyAnKSdcIlxuICAgICAgICAgICAgICAgICAgICBbc3R5bGUud2lkdGhdPVwicHJvcHMubG9nby53aWR0aCB8fCAnMTByZW0nXCJcbiAgICAgICAgICAgICAgICAgICAgW3N0eWxlLmhlaWdodF09XCJwcm9wcy5sb2dvLmhlaWdodCB8fCAnM3JlbSdcIlxuICAgICAgICAgICAgICAgICAgPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICB9IEBlbHNlIGlmIChwcm9wcy5sb2dvLnNyYykge1xuICAgICAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICAgICBbc3JjXT1cInByb3BzLmxvZ28uc3JjXCJcbiAgICAgICAgICAgICAgICAgICAgW2FsdF09XCJwcm9wcy5sb2dvLmFsdFwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2lkZWJhci1sb2dvIHNpZGViYXItbG9nby0taW1nXCJcbiAgICAgICAgICAgICAgICAgICAgW3N0eWxlLndpZHRoXT1cInByb3BzLmxvZ28ud2lkdGggfHwgJzEwcmVtJ1wiXG4gICAgICAgICAgICAgICAgICAgIFtzdHlsZS5oZWlnaHRdPVwicHJvcHMubG9nby5oZWlnaHQgfHwgJzNyZW0nXCJcbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInNpZGViYXItY2xvc2VcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJjbG9zZU1lbnUoKVwiXG4gICAgICAgICAgICAgICAgYXJpYS1sYWJlbD1cIkNsb3NlIG1lbnVcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJjbG9zZS1vdXRsaW5lXCI+PC9pb24taWNvbj5cbiAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2lvbi10b29sYmFyPlxuICAgICAgICA8L2lvbi1oZWFkZXI+XG5cbiAgICAgICAgPGlvbi1jb250ZW50PlxuICAgICAgICAgIDwhLS0gU2VhcmNoIC0tPlxuICAgICAgICAgIEBpZiAocHJvcHMuc2VhcmNoKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VhcmNoLXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgPHZhbC1kb2NzLXNlYXJjaFxuICAgICAgICAgICAgICAgIFtwcm9wc109XCJzZWFyY2hQcm9wcygpXCJcbiAgICAgICAgICAgICAgICAobmF2aWdhdGUpPVwib25OYXZpZ2F0ZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgPjwvdmFsLWRvY3Mtc2VhcmNoPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgPG5hdiBjbGFzcz1cInNpZGViYXItbmF2XCI+XG4gICAgICAgICAgICBAZm9yIChzZWN0aW9uIG9mIHNlY3Rpb25zU3RhdGUoKTsgdHJhY2sgc2VjdGlvbi5rZXkpIHtcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5hdi1zZWN0aW9uXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cIm5hdi1zZWN0aW9uX19oZWFkZXJcIlxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZVNlY3Rpb24oc2VjdGlvbilcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIEBpZiAoc2VjdGlvbi5pY29uKSB7XG4gICAgICAgICAgICAgICAgICAgIDxpb24taWNvbiBbbmFtZV09XCJzZWN0aW9uLmljb25cIj48L2lvbi1pY29uPlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgc2VjdGlvbi50aXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDxpb24taWNvblxuICAgICAgICAgICAgICAgICAgICBbbmFtZV09XCJzZWN0aW9uLmV4cGFuZGVkID8gJ2NoZXZyb24tZG93bi1vdXRsaW5lJyA6ICdjaGV2cm9uLWZvcndhcmQtb3V0bGluZSdcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm5hdi1jaGV2cm9uXCJcbiAgICAgICAgICAgICAgICAgID48L2lvbi1pY29uPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgICAgICAgICAgQGlmIChzZWN0aW9uLmV4cGFuZGVkKSB7XG4gICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJuYXYtbGlua3NcIj5cbiAgICAgICAgICAgICAgICAgICAgQGZvciAobGluayBvZiBzZWN0aW9uLmNoaWxkcmVuOyB0cmFjayBsaW5rLmxhYmVsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgPGxpPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwibGluay5yb3V0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJvdXRlckxpbmtBY3RpdmU9XCJhY3RpdmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2xvc2VNZW51KClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBsaW5rLmxhYmVsIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAobGluay5iYWRnZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm5hdi1iYWRnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MubmF2LWJhZGdlLS1zdWNjZXNzXT1cImxpbmsuYmFkZ2VDb2xvciA9PT0gJ3N1Y2Nlc3MnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+e3sgbGluay5iYWRnZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L25hdj5cbiAgICAgICAgPC9pb24tY29udGVudD5cbiAgICAgIDwvaW9uLW1lbnU+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJpb24tcGFnZVwiIGlkPVwiZG9jcy1jb250ZW50XCI+XG4gICAgICAgIDxpb24taGVhZGVyIGNsYXNzPVwiaW9uLW5vLWJvcmRlciBtb2JpbGUtaGVhZGVyXCI+XG4gICAgICAgICAgPGlvbi10b29sYmFyPlxuICAgICAgICAgICAgPGlvbi1idXR0b25zIHNsb3Q9XCJzdGFydFwiPlxuICAgICAgICAgICAgICA8aW9uLW1lbnUtYnV0dG9uIG1lbnU9XCJkb2NzLW1lbnVcIiBjb2xvcj1cImRhcmtcIj48L2lvbi1tZW51LWJ1dHRvbj5cbiAgICAgICAgICAgIDwvaW9uLWJ1dHRvbnM+XG4gICAgICAgICAgPC9pb24tdG9vbGJhcj5cbiAgICAgICAgPC9pb24taGVhZGVyPlxuXG4gICAgICAgIDxtYWluIGNsYXNzPVwiZG9jcy1tYWluLXNjcm9sbFwiPlxuICAgICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgICAgICBAaWYgKHByb3BzLmZvb3Rlcikge1xuICAgICAgICAgICAgPHZhbC1jb21wYW55LWZvb3RlciBbcHJvcHNdPVwicHJvcHMuZm9vdGVyXCI+PC92YWwtY29tcGFueS1mb290ZXI+XG4gICAgICAgICAgfVxuICAgICAgICA8L21haW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L2lvbi1zcGxpdC1wYW5lPlxuICBgLFxuICBzdHlsZXM6IFtgXG4gICAgOmhvc3Qge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgaW9uLXNwbGl0LXBhbmUge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgLS1zaWRlLXdpZHRoOiB2YXIoLS1kb2NzLXNpZGViYXItd2lkdGgsIDI2MHB4KTtcbiAgICAgIC0tc2lkZS1taW4td2lkdGg6IHZhcigtLWRvY3Mtc2lkZWJhci13aWR0aCwgMjYwcHgpO1xuICAgICAgLS1zaWRlLW1heC13aWR0aDogdmFyKC0tZG9jcy1zaWRlYmFyLXdpZHRoLCAyNjBweCk7XG4gICAgfVxuXG4gICAgLnNpZGViYXItaGVhZGVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgcGFkZGluZzogMHJlbSAxcmVtO1xuICAgIH1cblxuICAgIC5sb2dvLWxpbmsge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IDAuNzVyZW07XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcbiAgICB9XG5cbiAgICAubG9nby1saW5rOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDAuODtcbiAgICB9XG5cbiAgICAuc2lkZWJhci1sb2dvLS1jc3MtdmFyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tbG9nby12YXIpO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgIH1cblxuICAgIC5zaWRlYmFyLWxvZ28tLWltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgfVxuXG4gICAgLnNpZGViYXItY2xvc2Uge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAyLjVyZW07XG4gICAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgY29sb3I6IHZhcigtLWlvbi10ZXh0LWNvbG9yLCAjMzMzKTtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlO1xuICAgIH1cblxuICAgIC5zaWRlYmFyLWNsb3NlOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gICAgfVxuXG4gICAgLnNpZGViYXItY2xvc2UgaW9uLWljb24ge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAuc2lkZWJhci1jbG9zZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNlYXJjaC13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1pb24tYm9yZGVyLWNvbG9yLCAjZTBlMGUwKTtcbiAgICB9XG5cbiAgICAuc2lkZWJhci1uYXYge1xuICAgICAgcGFkZGluZzogMC41cmVtIDA7XG4gICAgfVxuXG4gICAgLm5hdi1zZWN0aW9uX19oZWFkZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IDAuNXJlbTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIC5uYXYtc2VjdGlvbl9faGVhZGVyOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1pb24tdGV4dC1jb2xvcik7XG4gICAgfVxuXG4gICAgLm5hdi1zZWN0aW9uX19oZWFkZXIgc3BhbiB7XG4gICAgICBmbGV4OiAxO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICAubmF2LWNoZXZyb24ge1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICB9XG5cbiAgICAubmF2LWxpbmtzIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5uYXYtbGlua3MgYSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAyLjVyZW07XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgY29sb3I6ICM1NTU7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC5uYXYtbGlua3MgYTpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0taW9uLXRleHQtY29sb3IpO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjAzKTtcbiAgICB9XG5cbiAgICAubmF2LWxpbmtzIGEuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1pb24tdGV4dC1jb2xvcik7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1pb24tY29sb3ItcHJpbWFyeSk7XG4gICAgfVxuXG4gICAgLm5hdi1iYWRnZSB7XG4gICAgICBmb250LXNpemU6IDAuNjI1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBwYWRkaW5nOiAwLjEyNXJlbSAwLjM3NXJlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNCk7XG4gICAgICBjb2xvcjogIzg4ODtcbiAgICB9XG5cbiAgICAubmF2LWJhZGdlLS1zdWNjZXNzIHtcbiAgICAgIGJhY2tncm91bmQ6ICNlOGY1ZTk7XG4gICAgICBjb2xvcjogIzJlN2QzMjtcbiAgICB9XG5cbiAgICAuZG9jcy1tYWluLXNjcm9sbCB7XG4gICAgICBmbGV4OiAxO1xuICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWlvbi1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICB9XG5cbiAgICBpb24tbWVudSB7XG4gICAgICAtLXdpZHRoOiAxMDAlO1xuICAgICAgLS1tYXgtd2lkdGg6IDEwMCU7XG4gICAgICAtLWJhY2tncm91bmQ6IHZhcigtLWlvbi1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWlvbi1ib3JkZXItY29sb3IsICNlMGUwZTApO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgaW9uLW1lbnUge1xuICAgICAgICAtLXdpZHRoOiB2YXIoLS1kb2NzLXNpZGViYXItd2lkdGgsIDI2MHB4KTtcbiAgICAgICAgLS1tYXgtd2lkdGg6IHZhcigtLWRvY3Mtc2lkZWJhci13aWR0aCwgMjYwcHgpO1xuICAgICAgfVxuXG4gICAgICAubW9iaWxlLWhlYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgI2RvY3MtY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG5cbiAgICAvKiBEYXJrIG1vZGUgKi9cbiAgICA6aG9zdC1jb250ZXh0KC5kYXJrKSAubmF2LWJhZGdlLFxuICAgIDpob3N0LWNvbnRleHQoW2NvbG9yLXNjaGVtZT1cImRhcmtcIl0pIC5uYXYtYmFkZ2Uge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA2KTtcbiAgICAgIGNvbG9yOiAjOTk5O1xuICAgIH1cblxuICAgIDpob3N0LWNvbnRleHQoLmRhcmspIC5uYXYtYmFkZ2UtLXN1Y2Nlc3MsXG4gICAgOmhvc3QtY29udGV4dChbY29sb3Itc2NoZW1lPVwiZGFya1wiXSkgLm5hdi1iYWRnZS0tc3VjY2VzcyB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDQ2LCAxMjUsIDUwLCAwLjIpO1xuICAgICAgY29sb3I6ICM4MWM3ODQ7XG4gICAgfVxuXG4gICAgOmhvc3QtY29udGV4dCguZGFyaykgLnNpZGViYXItY2xvc2U6aG92ZXIsXG4gICAgOmhvc3QtY29udGV4dChbY29sb3Itc2NoZW1lPVwiZGFya1wiXSkgLnNpZGViYXItY2xvc2U6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgIH1cbiAgYF0sXG59KVxuZXhwb3J0IGNsYXNzIERvY3NTaGVsbENvbXBvbmVudCB7XG4gIHByaXZhdGUgbWVudUN0cmwgPSBpbmplY3QoTWVudUNvbnRyb2xsZXIpO1xuICBwcml2YXRlIGRvY3NOYXYgPSBpbmplY3QoRG9jc05hdmlnYXRpb25TZXJ2aWNlKTtcblxuICBASW5wdXQoKSBwcm9wczogRG9jc1NoZWxsTWV0YWRhdGEgPSB7XG4gICAgbG9nbzogeyBhbHQ6ICdMb2dvJyB9LFxuICAgIHNlY3Rpb25zOiBbXSxcbiAgfTtcblxuICBAT3V0cHV0KCkgbmF2aWdhdGUgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZ1tdPigpO1xuXG4gIC8vIEludGVybmFsIHN0YXRlIGZvciBleHBhbmRlZCBzZWN0aW9uc1xuICBwcml2YXRlIF9zZWN0aW9uc1N0YXRlID0gc2lnbmFsPERvY3NTaGVsbFNlY3Rpb25bXT4oW10pO1xuXG4gIHNlY3Rpb25zU3RhdGUgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgLy8gSW5pdGlhbGl6ZSBmcm9tIHByb3BzIGlmIGVtcHR5XG4gICAgaWYgKHRoaXMuX3NlY3Rpb25zU3RhdGUoKS5sZW5ndGggPT09IDAgJiYgdGhpcy5wcm9wcy5zZWN0aW9ucy5sZW5ndGggPiAwKSB7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5zZWN0aW9ucy5tYXAocyA9PiAoe1xuICAgICAgICAuLi5zLFxuICAgICAgICBleHBhbmRlZDogcy5leHBhbmRlZCA/PyB0cnVlLFxuICAgICAgfSkpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5fc2VjdGlvbnNTdGF0ZSgpLmxlbmd0aCA+IDAgPyB0aGlzLl9zZWN0aW9uc1N0YXRlKCkgOiB0aGlzLnByb3BzLnNlY3Rpb25zO1xuICB9KTtcblxuICBzZWFyY2hQcm9wcyA9IGNvbXB1dGVkPERvY3NTZWFyY2hNZXRhZGF0YT4oKCkgPT4gKHtcbiAgICBwbGFjZWhvbGRlcjogdGhpcy5wcm9wcy5zZWFyY2g/LnBsYWNlaG9sZGVyIHx8ICdTZWFyY2guLi4nLFxuICAgIHNob3dTaG9ydGN1dDogdGhpcy5wcm9wcy5zZWFyY2g/LnNob3dTaG9ydGN1dCA/PyB0cnVlLFxuICAgIHNlY3Rpb25zOiB0aGlzLmJ1aWxkU2VhcmNoU2VjdGlvbnMoKSxcbiAgfSkpO1xuXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIC8vIFVwZGF0ZSBzZWN0aW9ucyBzdGF0ZSB3aGVuIHByb3BzIGNoYW5nZVxuICAgIGlmICh0aGlzLnByb3BzLnNlY3Rpb25zLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuX3NlY3Rpb25zU3RhdGUuc2V0KFxuICAgICAgICB0aGlzLnByb3BzLnNlY3Rpb25zLm1hcChzID0+ICh7XG4gICAgICAgICAgLi4ucyxcbiAgICAgICAgICBleHBhbmRlZDogcy5leHBhbmRlZCA/PyB0cnVlLFxuICAgICAgICB9KSlcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgdG9nZ2xlU2VjdGlvbihzZWN0aW9uOiBEb2NzU2hlbGxTZWN0aW9uKTogdm9pZCB7XG4gICAgdGhpcy5fc2VjdGlvbnNTdGF0ZS51cGRhdGUoc2VjdGlvbnMgPT5cbiAgICAgIHNlY3Rpb25zLm1hcChzID0+XG4gICAgICAgIHMua2V5ID09PSBzZWN0aW9uLmtleSA/IHsgLi4ucywgZXhwYW5kZWQ6ICFzLmV4cGFuZGVkIH0gOiBzXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jIGNsb3NlTWVudSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLm1lbnVDdHJsLmNsb3NlKCdkb2NzLW1lbnUnKTtcbiAgICB0aGlzLmRvY3NOYXYuc2Nyb2xsVG9Ub3AoKTtcbiAgfVxuXG4gIG9uTmF2aWdhdGUocm91dGU6IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgdGhpcy5uYXZpZ2F0ZS5lbWl0KHJvdXRlKTtcbiAgICB0aGlzLmRvY3NOYXYubmF2aWdhdGVBbmRTY3JvbGwocm91dGUpO1xuICAgIHRoaXMubWVudUN0cmwuY2xvc2UoJ2RvY3MtbWVudScpO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZFNlYXJjaFNlY3Rpb25zKCk6IERvY3NTZWFyY2hTZWN0aW9uW10ge1xuICAgIHJldHVybiB0aGlzLnByb3BzLnNlY3Rpb25zLm1hcChzZWN0aW9uID0+ICh7XG4gICAgICB0aXRsZTogc2VjdGlvbi50aXRsZSxcbiAgICAgIGl0ZW1zOiBzZWN0aW9uLmNoaWxkcmVuLm1hcChjaGlsZCA9PiAoe1xuICAgICAgICBsYWJlbDogY2hpbGQubGFiZWwsXG4gICAgICAgIHJvdXRlOiBjaGlsZC5yb3V0ZSxcbiAgICAgICAgZGVzY3JpcHRpb246IGAke3NlY3Rpb24udGl0bGV9ID4gJHtjaGlsZC5sYWJlbH1gLFxuICAgICAgfSkpLFxuICAgIH0pKTtcbiAgfVxufVxuIl19