valtech-components 4.0.1033 → 4.0.1035

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.
@@ -182,7 +182,7 @@ export class NumberPickerComponent {
182
182
  <p class="number-picker__hint">{{ props.hint }}</p>
183
183
  }
184
184
  </div>
185
- `, isInline: true, styles: [":host{display:block}.number-picker{--number-picker-color: var(--ion-color-primary);--number-picker-radius: 28px;--number-picker-surface: rgba(255, 255, 255, .9);--number-picker-border: rgba(var(--ion-color-primary-rgb), .12);--number-picker-shadow: 0 16px 38px rgba(35, 35, 35, .08);border:1px solid var(--number-picker-border);border-radius:var(--number-picker-radius);background:var(--number-picker-surface);color:var(--ion-color-dark, #232323);box-shadow:var(--number-picker-shadow);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.number-picker--disabled{opacity:.55;pointer-events:none}.number-picker__label{display:block;margin:0 0 10px;color:var(--ion-color-dark, #232323);font-size:1.0625rem;font-weight:800}.number-picker--wheel,.number-picker--field{padding:0;border:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.number-picker__wheel{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:12px}.number-picker__button{width:48px;height:48px;border:1px solid rgba(var(--ion-color-primary-rgb),.16);border-radius:999px;background:#ffffffd6;color:var(--ion-color-dark, #232323);font:inherit;font-size:1.7rem;font-weight:800;line-height:1;box-shadow:0 8px 18px #2323230f}.number-picker__button:disabled{opacity:.38}.number-picker__wheel-values{display:grid;grid-template-columns:1fr 96px 1fr;align-items:center;justify-items:center;gap:8px}.number-picker__wheel-values span{color:var(--ion-color-dark-shade, #1e2023);font-size:1.5rem;font-weight:800;opacity:.32}.number-picker__wheel-values strong{width:96px;height:82px;display:grid;place-items:center;border-radius:22px;background:var(--number-picker-color);color:var(--ion-color-primary-contrast, #fff);font-size:3rem;font-weight:900;line-height:1;font-variant-numeric:tabular-nums;box-shadow:0 14px 26px rgba(var(--ion-color-primary-rgb),.18)}.number-picker__field{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;min-height:76px;border:1.5px solid rgba(35,35,35,.12);border-radius:999px;background:#ffffffc2;overflow:hidden}.number-picker__field:focus-within{border-color:var(--number-picker-color)}.number-picker__field input{width:100%;min-width:0;border:0;outline:0;padding:0 8px 0 24px;background:transparent;color:var(--ion-color-dark, #232323);font:inherit;font-size:2.35rem;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;-moz-appearance:textfield}.number-picker__field input::-webkit-outer-spin-button,.number-picker__field input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.number-picker__unit{padding-right:10px;color:var(--ion-color-dark-shade, #1e2023);font-size:1rem;font-weight:800;opacity:.62}.number-picker__actions{display:flex;align-items:center;gap:6px;padding-right:10px}.number-picker__actions .number-picker__button{width:42px;height:42px;font-size:1.45rem}.number-picker__hint{margin:10px 4px 0;color:var(--ion-color-dark-shade, #1e2023);font-size:.8125rem;font-weight:650;line-height:1.35;opacity:.68}.number-picker--compact{padding:10px 12px;--number-picker-radius: 20px}.number-picker--compact .number-picker__label{font-size:.875rem}.number-picker--compact .number-picker__field{min-height:52px;border-width:1px}.number-picker--compact .number-picker__field input{padding-left:14px;font-size:1.25rem}.number-picker--compact .number-picker__actions .number-picker__button{width:34px;height:34px;font-size:1.25rem}@media (max-width: 420px){.number-picker__wheel{grid-template-columns:44px minmax(0,1fr) 44px}.number-picker__button{width:44px;height:44px}.number-picker__wheel-values{grid-template-columns:1fr 84px 1fr}.number-picker__wheel-values strong{width:84px;height:76px;font-size:2.65rem}.number-picker__wheel-values span{font-size:1.25rem}.number-picker__field{min-height:70px}.number-picker__field input{padding-left:18px;font-size:2rem}.number-picker__actions .number-picker__button{width:38px;height:38px}}:host-context(.ion-palette-dark) .number-picker,:host-context(html.ion-palette-dark) .number-picker,:host-context(body.dark) .number-picker,:host-context([data-theme=dark]) .number-picker{--number-picker-surface: rgba(28, 30, 28, .78);--number-picker-border: rgba(255, 255, 255, .13);--number-picker-shadow: 0 18px 44px rgba(0, 0, 0, .26);color:#fffffff0}:host-context(.ion-palette-dark) .number-picker__label,:host-context(html.ion-palette-dark) .number-picker__label,:host-context(body.dark) .number-picker__label,:host-context([data-theme=dark]) .number-picker__label,:host-context(.ion-palette-dark) .number-picker__button,:host-context(html.ion-palette-dark) .number-picker__button,:host-context(body.dark) .number-picker__button,:host-context([data-theme=dark]) .number-picker__button,:host-context(.ion-palette-dark) .number-picker__field input,:host-context(html.ion-palette-dark) .number-picker__field input,:host-context(body.dark) .number-picker__field input,:host-context([data-theme=dark]) .number-picker__field input{color:#fffffff0}:host-context(.ion-palette-dark) .number-picker__button,:host-context(html.ion-palette-dark) .number-picker__button,:host-context(body.dark) .number-picker__button,:host-context([data-theme=dark]) .number-picker__button,:host-context(.ion-palette-dark) .number-picker__field,:host-context(html.ion-palette-dark) .number-picker__field,:host-context(body.dark) .number-picker__field,:host-context([data-theme=dark]) .number-picker__field{background:#ffffff14;border-color:#ffffff24}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
185
+ `, isInline: true, styles: [":host{display:block}.number-picker{--number-picker-color: var(--ion-color-primary);--number-picker-radius: 28px;--number-picker-surface: rgba(255, 255, 255, .9);--number-picker-border: rgba(var(--ion-color-primary-rgb), .12);--number-picker-shadow: 0 16px 38px rgba(35, 35, 35, .08);border:1px solid var(--number-picker-border);border-radius:var(--number-picker-radius);background:var(--number-picker-surface);color:var(--ion-color-dark, #232323);box-shadow:var(--number-picker-shadow);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.number-picker--disabled{opacity:.55;pointer-events:none}.number-picker__label{display:block;margin:0 0 10px;color:var(--ion-color-dark, #232323);font-size:1.0625rem;font-weight:800}.number-picker--wheel,.number-picker--field{padding:0;border:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.number-picker__wheel{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:12px}.number-picker__button{display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid rgba(var(--ion-color-primary-rgb),.16);border-radius:999px;background:#ffffffd6;color:var(--ion-color-dark, #232323);font:inherit;font-size:1.7rem;font-weight:800;line-height:0;box-shadow:0 8px 18px #2323230f}.number-picker__button:disabled{opacity:.38}.number-picker__wheel-values{display:grid;grid-template-columns:1fr 96px 1fr;align-items:center;justify-items:center;gap:8px}.number-picker__wheel-values span{color:var(--ion-color-dark-shade, #1e2023);font-size:1.5rem;font-weight:800;opacity:.32}.number-picker__wheel-values strong{width:96px;height:82px;display:grid;place-items:center;border-radius:22px;background:var(--number-picker-color);color:var(--ion-color-primary-contrast, #fff);font-size:3rem;font-weight:900;line-height:1;font-variant-numeric:tabular-nums;box-shadow:0 14px 26px rgba(var(--ion-color-primary-rgb),.18)}.number-picker__field{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;min-height:76px;border:1.5px solid rgba(35,35,35,.12);border-radius:999px;background:#ffffffc2;overflow:hidden}.number-picker__field:focus-within{border-color:var(--number-picker-color)}.number-picker__field input{width:100%;min-width:0;border:0;outline:0;padding:0 8px 0 24px;background:transparent;color:var(--ion-color-dark, #232323);font:inherit;font-size:2.35rem;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;-moz-appearance:textfield}.number-picker__field input::-webkit-outer-spin-button,.number-picker__field input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.number-picker__unit{padding-right:10px;color:var(--ion-color-dark-shade, #1e2023);font-size:1rem;font-weight:800;opacity:.62}.number-picker__actions{display:flex;align-items:center;gap:6px;padding-right:10px}.number-picker__actions .number-picker__button{width:42px;height:42px;font-size:1.45rem}.number-picker__hint{margin:10px 4px 0;color:var(--ion-color-dark-shade, #1e2023);font-size:.8125rem;font-weight:650;line-height:1.35;opacity:.68}.number-picker--compact{padding:10px 12px;--number-picker-radius: 20px}.number-picker--compact .number-picker__label{font-size:.875rem}.number-picker--compact .number-picker__field{min-height:52px;border-width:1px}.number-picker--compact .number-picker__field input{padding-left:14px;font-size:1.25rem}.number-picker--compact .number-picker__actions .number-picker__button{width:34px;height:34px;font-size:1.25rem}@media (max-width: 420px){.number-picker__wheel{grid-template-columns:44px minmax(0,1fr) 44px}.number-picker__button{width:44px;height:44px}.number-picker__wheel-values{grid-template-columns:1fr 84px 1fr}.number-picker__wheel-values strong{width:84px;height:76px;font-size:2.65rem}.number-picker__wheel-values span{font-size:1.25rem}.number-picker__field{min-height:70px}.number-picker__field input{padding-left:18px;font-size:2rem}.number-picker__actions .number-picker__button{width:38px;height:38px}}:host-context(.ion-palette-dark) .number-picker,:host-context(html.ion-palette-dark) .number-picker,:host-context(body.dark) .number-picker,:host-context([data-theme=dark]) .number-picker{--number-picker-surface: rgba(28, 30, 28, .78);--number-picker-border: rgba(255, 255, 255, .13);--number-picker-shadow: 0 18px 44px rgba(0, 0, 0, .26);color:#fffffff0}:host-context(.ion-palette-dark) .number-picker__label,:host-context(html.ion-palette-dark) .number-picker__label,:host-context(body.dark) .number-picker__label,:host-context([data-theme=dark]) .number-picker__label,:host-context(.ion-palette-dark) .number-picker__button,:host-context(html.ion-palette-dark) .number-picker__button,:host-context(body.dark) .number-picker__button,:host-context([data-theme=dark]) .number-picker__button,:host-context(.ion-palette-dark) .number-picker__field input,:host-context(html.ion-palette-dark) .number-picker__field input,:host-context(body.dark) .number-picker__field input,:host-context([data-theme=dark]) .number-picker__field input{color:#fffffff0}:host-context(.ion-palette-dark) .number-picker__button,:host-context(html.ion-palette-dark) .number-picker__button,:host-context(body.dark) .number-picker__button,:host-context([data-theme=dark]) .number-picker__button,:host-context(.ion-palette-dark) .number-picker__field,:host-context(html.ion-palette-dark) .number-picker__field,:host-context(body.dark) .number-picker__field,:host-context([data-theme=dark]) .number-picker__field{background:#ffffff14;border-color:#ffffff24}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
186
186
  }
187
187
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NumberPickerComponent, decorators: [{
188
188
  type: Component,
@@ -273,11 +273,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
273
273
  <p class="number-picker__hint">{{ props.hint }}</p>
274
274
  }
275
275
  </div>
276
- `, styles: [":host{display:block}.number-picker{--number-picker-color: var(--ion-color-primary);--number-picker-radius: 28px;--number-picker-surface: rgba(255, 255, 255, .9);--number-picker-border: rgba(var(--ion-color-primary-rgb), .12);--number-picker-shadow: 0 16px 38px rgba(35, 35, 35, .08);border:1px solid var(--number-picker-border);border-radius:var(--number-picker-radius);background:var(--number-picker-surface);color:var(--ion-color-dark, #232323);box-shadow:var(--number-picker-shadow);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.number-picker--disabled{opacity:.55;pointer-events:none}.number-picker__label{display:block;margin:0 0 10px;color:var(--ion-color-dark, #232323);font-size:1.0625rem;font-weight:800}.number-picker--wheel,.number-picker--field{padding:0;border:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.number-picker__wheel{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:12px}.number-picker__button{width:48px;height:48px;border:1px solid rgba(var(--ion-color-primary-rgb),.16);border-radius:999px;background:#ffffffd6;color:var(--ion-color-dark, #232323);font:inherit;font-size:1.7rem;font-weight:800;line-height:1;box-shadow:0 8px 18px #2323230f}.number-picker__button:disabled{opacity:.38}.number-picker__wheel-values{display:grid;grid-template-columns:1fr 96px 1fr;align-items:center;justify-items:center;gap:8px}.number-picker__wheel-values span{color:var(--ion-color-dark-shade, #1e2023);font-size:1.5rem;font-weight:800;opacity:.32}.number-picker__wheel-values strong{width:96px;height:82px;display:grid;place-items:center;border-radius:22px;background:var(--number-picker-color);color:var(--ion-color-primary-contrast, #fff);font-size:3rem;font-weight:900;line-height:1;font-variant-numeric:tabular-nums;box-shadow:0 14px 26px rgba(var(--ion-color-primary-rgb),.18)}.number-picker__field{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;min-height:76px;border:1.5px solid rgba(35,35,35,.12);border-radius:999px;background:#ffffffc2;overflow:hidden}.number-picker__field:focus-within{border-color:var(--number-picker-color)}.number-picker__field input{width:100%;min-width:0;border:0;outline:0;padding:0 8px 0 24px;background:transparent;color:var(--ion-color-dark, #232323);font:inherit;font-size:2.35rem;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;-moz-appearance:textfield}.number-picker__field input::-webkit-outer-spin-button,.number-picker__field input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.number-picker__unit{padding-right:10px;color:var(--ion-color-dark-shade, #1e2023);font-size:1rem;font-weight:800;opacity:.62}.number-picker__actions{display:flex;align-items:center;gap:6px;padding-right:10px}.number-picker__actions .number-picker__button{width:42px;height:42px;font-size:1.45rem}.number-picker__hint{margin:10px 4px 0;color:var(--ion-color-dark-shade, #1e2023);font-size:.8125rem;font-weight:650;line-height:1.35;opacity:.68}.number-picker--compact{padding:10px 12px;--number-picker-radius: 20px}.number-picker--compact .number-picker__label{font-size:.875rem}.number-picker--compact .number-picker__field{min-height:52px;border-width:1px}.number-picker--compact .number-picker__field input{padding-left:14px;font-size:1.25rem}.number-picker--compact .number-picker__actions .number-picker__button{width:34px;height:34px;font-size:1.25rem}@media (max-width: 420px){.number-picker__wheel{grid-template-columns:44px minmax(0,1fr) 44px}.number-picker__button{width:44px;height:44px}.number-picker__wheel-values{grid-template-columns:1fr 84px 1fr}.number-picker__wheel-values strong{width:84px;height:76px;font-size:2.65rem}.number-picker__wheel-values span{font-size:1.25rem}.number-picker__field{min-height:70px}.number-picker__field input{padding-left:18px;font-size:2rem}.number-picker__actions .number-picker__button{width:38px;height:38px}}:host-context(.ion-palette-dark) .number-picker,:host-context(html.ion-palette-dark) .number-picker,:host-context(body.dark) .number-picker,:host-context([data-theme=dark]) .number-picker{--number-picker-surface: rgba(28, 30, 28, .78);--number-picker-border: rgba(255, 255, 255, .13);--number-picker-shadow: 0 18px 44px rgba(0, 0, 0, .26);color:#fffffff0}:host-context(.ion-palette-dark) .number-picker__label,:host-context(html.ion-palette-dark) .number-picker__label,:host-context(body.dark) .number-picker__label,:host-context([data-theme=dark]) .number-picker__label,:host-context(.ion-palette-dark) .number-picker__button,:host-context(html.ion-palette-dark) .number-picker__button,:host-context(body.dark) .number-picker__button,:host-context([data-theme=dark]) .number-picker__button,:host-context(.ion-palette-dark) .number-picker__field input,:host-context(html.ion-palette-dark) .number-picker__field input,:host-context(body.dark) .number-picker__field input,:host-context([data-theme=dark]) .number-picker__field input{color:#fffffff0}:host-context(.ion-palette-dark) .number-picker__button,:host-context(html.ion-palette-dark) .number-picker__button,:host-context(body.dark) .number-picker__button,:host-context([data-theme=dark]) .number-picker__button,:host-context(.ion-palette-dark) .number-picker__field,:host-context(html.ion-palette-dark) .number-picker__field,:host-context(body.dark) .number-picker__field,:host-context([data-theme=dark]) .number-picker__field{background:#ffffff14;border-color:#ffffff24}\n"] }]
276
+ `, styles: [":host{display:block}.number-picker{--number-picker-color: var(--ion-color-primary);--number-picker-radius: 28px;--number-picker-surface: rgba(255, 255, 255, .9);--number-picker-border: rgba(var(--ion-color-primary-rgb), .12);--number-picker-shadow: 0 16px 38px rgba(35, 35, 35, .08);border:1px solid var(--number-picker-border);border-radius:var(--number-picker-radius);background:var(--number-picker-surface);color:var(--ion-color-dark, #232323);box-shadow:var(--number-picker-shadow);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.number-picker--disabled{opacity:.55;pointer-events:none}.number-picker__label{display:block;margin:0 0 10px;color:var(--ion-color-dark, #232323);font-size:1.0625rem;font-weight:800}.number-picker--wheel,.number-picker--field{padding:0;border:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.number-picker__wheel{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:12px}.number-picker__button{display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid rgba(var(--ion-color-primary-rgb),.16);border-radius:999px;background:#ffffffd6;color:var(--ion-color-dark, #232323);font:inherit;font-size:1.7rem;font-weight:800;line-height:0;box-shadow:0 8px 18px #2323230f}.number-picker__button:disabled{opacity:.38}.number-picker__wheel-values{display:grid;grid-template-columns:1fr 96px 1fr;align-items:center;justify-items:center;gap:8px}.number-picker__wheel-values span{color:var(--ion-color-dark-shade, #1e2023);font-size:1.5rem;font-weight:800;opacity:.32}.number-picker__wheel-values strong{width:96px;height:82px;display:grid;place-items:center;border-radius:22px;background:var(--number-picker-color);color:var(--ion-color-primary-contrast, #fff);font-size:3rem;font-weight:900;line-height:1;font-variant-numeric:tabular-nums;box-shadow:0 14px 26px rgba(var(--ion-color-primary-rgb),.18)}.number-picker__field{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;min-height:76px;border:1.5px solid rgba(35,35,35,.12);border-radius:999px;background:#ffffffc2;overflow:hidden}.number-picker__field:focus-within{border-color:var(--number-picker-color)}.number-picker__field input{width:100%;min-width:0;border:0;outline:0;padding:0 8px 0 24px;background:transparent;color:var(--ion-color-dark, #232323);font:inherit;font-size:2.35rem;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;-moz-appearance:textfield}.number-picker__field input::-webkit-outer-spin-button,.number-picker__field input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.number-picker__unit{padding-right:10px;color:var(--ion-color-dark-shade, #1e2023);font-size:1rem;font-weight:800;opacity:.62}.number-picker__actions{display:flex;align-items:center;gap:6px;padding-right:10px}.number-picker__actions .number-picker__button{width:42px;height:42px;font-size:1.45rem}.number-picker__hint{margin:10px 4px 0;color:var(--ion-color-dark-shade, #1e2023);font-size:.8125rem;font-weight:650;line-height:1.35;opacity:.68}.number-picker--compact{padding:10px 12px;--number-picker-radius: 20px}.number-picker--compact .number-picker__label{font-size:.875rem}.number-picker--compact .number-picker__field{min-height:52px;border-width:1px}.number-picker--compact .number-picker__field input{padding-left:14px;font-size:1.25rem}.number-picker--compact .number-picker__actions .number-picker__button{width:34px;height:34px;font-size:1.25rem}@media (max-width: 420px){.number-picker__wheel{grid-template-columns:44px minmax(0,1fr) 44px}.number-picker__button{width:44px;height:44px}.number-picker__wheel-values{grid-template-columns:1fr 84px 1fr}.number-picker__wheel-values strong{width:84px;height:76px;font-size:2.65rem}.number-picker__wheel-values span{font-size:1.25rem}.number-picker__field{min-height:70px}.number-picker__field input{padding-left:18px;font-size:2rem}.number-picker__actions .number-picker__button{width:38px;height:38px}}:host-context(.ion-palette-dark) .number-picker,:host-context(html.ion-palette-dark) .number-picker,:host-context(body.dark) .number-picker,:host-context([data-theme=dark]) .number-picker{--number-picker-surface: rgba(28, 30, 28, .78);--number-picker-border: rgba(255, 255, 255, .13);--number-picker-shadow: 0 18px 44px rgba(0, 0, 0, .26);color:#fffffff0}:host-context(.ion-palette-dark) .number-picker__label,:host-context(html.ion-palette-dark) .number-picker__label,:host-context(body.dark) .number-picker__label,:host-context([data-theme=dark]) .number-picker__label,:host-context(.ion-palette-dark) .number-picker__button,:host-context(html.ion-palette-dark) .number-picker__button,:host-context(body.dark) .number-picker__button,:host-context([data-theme=dark]) .number-picker__button,:host-context(.ion-palette-dark) .number-picker__field input,:host-context(html.ion-palette-dark) .number-picker__field input,:host-context(body.dark) .number-picker__field input,:host-context([data-theme=dark]) .number-picker__field input{color:#fffffff0}:host-context(.ion-palette-dark) .number-picker__button,:host-context(html.ion-palette-dark) .number-picker__button,:host-context(body.dark) .number-picker__button,:host-context([data-theme=dark]) .number-picker__button,:host-context(.ion-palette-dark) .number-picker__field,:host-context(html.ion-palette-dark) .number-picker__field,:host-context(body.dark) .number-picker__field,:host-context([data-theme=dark]) .number-picker__field{background:#ffffff14;border-color:#ffffff24}\n"] }]
277
277
  }], propDecorators: { props: [{
278
278
  type: Input,
279
279
  args: [{ required: true }]
280
280
  }], valueChange: [{
281
281
  type: Output
282
282
  }] } });
283
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL251bWJlci1waWNrZXIvbnVtYmVyLXBpY2tlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxhQUFhLENBQUM7OztBQWlHOUMsTUFBTSxPQUFPLHFCQUFxQjtJQTlGbEM7UUFnR1ksZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBMkIsQ0FBQztRQUkzRCxZQUFPLEdBQUcscUJBQXFCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7S0E0Ry9FO0lBMUdDLElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksZUFBZSxDQUFDO0lBQy9DLENBQUM7SUFFRCxJQUFJLEdBQUc7UUFDTCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxJQUFJLFNBQVMsQ0FBQztRQUM1QyxPQUFPLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxD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LE1BQU0sT0FBTyxHQUFHLFNBQVMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdkYsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDekYsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQzsrR0FqSFUscUJBQXFCO21HQUFyQixxQkFBcUIsa0pBMUZ0Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBdUZULGc3S0F4RlMsWUFBWTs7NEZBMkZYLHFCQUFxQjtrQkE5RmpDLFNBQVM7K0JBQ0UsbUJBQW1CLGNBQ2pCLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyxZQUNiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F1RlQ7OEJBSTBCLEtBQUs7c0JBQS9CLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNmLFdBQVc7c0JBQXBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvbXBvbmVudFN0YXRlcyB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IE51bWJlclBpY2tlckNoYW5nZUV2ZW50LCBOdW1iZXJQaWNrZXJNZXRhZGF0YSB9IGZyb20gJy4vdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtbnVtYmVyLXBpY2tlcicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwibnVtYmVyLXBpY2tlclwiXG4gICAgICBbbmdDbGFzc109XCJwcm9wcy5jc3NDbGFzc1wiXG4gICAgICBbY2xhc3MubnVtYmVyLXBpY2tlci0td2hlZWxdPVwidmFyaWFudCA9PT0gJ3doZWVsJ1wiXG4gICAgICBbY2xhc3MubnVtYmVyLXBpY2tlci0tZmllbGRdPVwidmFyaWFudCA9PT0gJ2ZpZWxkLXN0ZXBwZXInXCJcbiAgICAgIFtjbGFzcy5udW1iZXItcGlja2VyLS1jb21wYWN0XT1cInZhcmlhbnQgPT09ICdjb21wYWN0LXN0ZXBwZXInXCJcbiAgICAgIFtjbGFzcy5udW1iZXItcGlja2VyLS1kaXNhYmxlZF09XCJpc0Rpc2FibGVkXCJcbiAgICAgIFtzdHlsZS4tLW51bWJlci1waWNrZXItY29sb3JdPVwiY29sb3JcIlxuICAgICAgW2F0dHIuZGF0YS10b2tlbl09XCJwcm9wcy50b2tlbiB8fCBudWxsXCJcbiAgICA+XG4gICAgICBAaWYgKHByb3BzLmxhYmVsKSB7XG4gICAgICAgIDxsYWJlbCBjbGFzcz1cIm51bWJlci1waWNrZXJfX2xhYmVsXCIgW2F0dHIuZm9yXT1cImlucHV0SWRcIj57eyBwcm9wcy5sYWJlbCB9fTwvbGFiZWw+XG4gICAgICB9XG5cbiAgICAgIEBpZiAodmFyaWFudCA9PT0gJ3doZWVsJykge1xuICAgICAgICA8ZGl2IGNsYXNzPVwibnVtYmVyLXBpY2tlcl9fd2hlZWxcIiByb2xlPVwiZ3JvdXBcIiBbYXR0ci5hcmlhLWxhYmVsXT1cInByb3BzLmxhYmVsIHx8IHByb3BzLnRva2VuXCI+XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBjbGFzcz1cIm51bWJlci1waWNrZXJfX2J1dHRvblwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZCB8fCBpc0F0TWluXCJcbiAgICAgICAgICAgIChjbGljayk9XCJkZWNyZW1lbnQoKVwiXG4gICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImRlY3JlbWVudExhYmVsXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICAtXG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm51bWJlci1waWNrZXJfX3doZWVsLXZhbHVlc1wiIGFyaWEtbGl2ZT1cInBvbGl0ZVwiPlxuICAgICAgICAgICAgPHNwYW4+e3sgZm9ybWF0VmFsdWUocHJldmlvdXNWYWx1ZSkgfX08L3NwYW4+XG4gICAgICAgICAgICA8c3Ryb25nPnt7IGZvcm1hdFZhbHVlKGN1cnJlbnRWYWx1ZSkgfX08L3N0cm9uZz5cbiAgICAgICAgICAgIDxzcGFuPnt7IGZvcm1hdFZhbHVlKG5leHRWYWx1ZSkgfX08L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBjbGFzcz1cIm51bWJlci1waWNrZXJfX2J1dHRvblwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZCB8fCBpc0F0TWF4XCJcbiAgICAgICAgICAgIChjbGljayk9XCJpbmNyZW1lbnQoKVwiXG4gICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImluY3JlbWVudExhYmVsXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICArXG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJudW1iZXItcGlja2VyX19maWVsZFwiPlxuICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgW2lkXT1cImlucHV0SWRcIlxuICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiXG4gICAgICAgICAgICBbaW5wdXRNb2RlXT1cInByb3BzLmlucHV0TW9kZSB8fCAnbnVtZXJpYydcIlxuICAgICAgICAgICAgW21pbl09XCJtaW5cIlxuICAgICAgICAgICAgW21heF09XCJwcm9wcy5tYXggPz8gbnVsbFwiXG4gICAgICAgICAgICBbc3RlcF09XCJzdGVwXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJmb3JtYXRWYWx1ZShjdXJyZW50VmFsdWUpXCJcbiAgICAgICAgICAgIFtyZWFkT25seV09XCJwcm9wcy5lZGl0YWJsZSA9PT0gZmFsc2VcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImlzRGlzYWJsZWRcIlxuICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJwcm9wcy5sYWJlbCB8fCBwcm9wcy50b2tlblwiXG4gICAgICAgICAgICAoaW5wdXQpPVwib25JbnB1dCgkZXZlbnQpXCJcbiAgICAgICAgICAgIChibHVyKT1cInN5bmNDdXJyZW50VmFsdWUoKVwiXG4gICAgICAgICAgLz5cbiAgICAgICAgICBAaWYgKHByb3BzLnVuaXRMYWJlbCkge1xuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJudW1iZXItcGlja2VyX191bml0XCI+e3sgcHJvcHMudW5pdExhYmVsIH19PC9zcGFuPlxuICAgICAgICAgIH1cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibnVtYmVyLXBpY2tlcl9fYWN0aW9uc1wiPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJudW1iZXItcGlja2VyX19idXR0b25cIlxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZCB8fCBpc0F0TWluXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImRlY3JlbWVudCgpXCJcbiAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJkZWNyZW1lbnRMYWJlbFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIC1cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJudW1iZXItcGlja2VyX19idXR0b25cIlxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZCB8fCBpc0F0TWF4XCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImluY3JlbWVudCgpXCJcbiAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJpbmNyZW1lbnRMYWJlbFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICtcbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cblxuICAgICAgQGlmIChwcm9wcy5oaW50KSB7XG4gICAgICAgIDxwIGNsYXNzPVwibnVtYmVyLXBpY2tlcl9faGludFwiPnt7IHByb3BzLmhpbnQgfX08L3A+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL251bWJlci1waWNrZXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTnVtYmVyUGlja2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBwcm9wcyE6IE51bWJlclBpY2tlck1ldGFkYXRhO1xuICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPE51bWJlclBpY2tlckNoYW5nZUV2ZW50PigpO1xuXG4gIHByaXZhdGUgc3ViPzogU3Vic2NyaXB0aW9uO1xuXG4gIHJlYWRvbmx5IGlucHV0SWQgPSBgdmFsLW51bWJlci1waWNrZXItJHtNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zbGljZSgyKX1gO1xuXG4gIGdldCB2YXJpYW50KCkge1xuICAgIHJldHVybiB0aGlzLnByb3BzLnZhcmlhbnQgPz8gJ2ZpZWxkLXN0ZXBwZXInO1xuICB9XG5cbiAgZ2V0IG1pbigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnByb3BzLm1pbiA/PyAwO1xuICB9XG5cbiAgZ2V0IHN0ZXAoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5zdGVwID8/IDE7XG4gIH1cblxuICBnZXQgY29sb3IoKTogc3RyaW5nIHtcbiAgICBjb25zdCBjb2xvciA9IHRoaXMucHJvcHMuY29sb3IgPz8gJ3ByaW1hcnknO1xuICAgIHJldHVybiB0eXBlb2YgY29sb3IgPT09ICdzdHJpbmcnICYmICFjb2xvci5zdGFydHNXaXRoKCcjJykgJiYgIWNvbG9yLnN0YXJ0c1dpdGgoJ3ZhcignKVxuICAgICAgPyBgdmFyKC0taW9uLWNvbG9yLSR7Y29sb3J9LCAke2NvbG9yfSlgXG4gICAgICA6IGNvbG9yO1xuICB9XG5cbiAgZ2V0IGN1cnJlbnRWYWx1ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmNsYW1wKE51bWJlcih0aGlzLnByb3BzLmNvbnRyb2wudmFsdWUgPz8gdGhpcy5taW4pKTtcbiAgfVxuXG4gIGdldCBwcmV2aW91c1ZhbHVlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuY2xhbXAodGhpcy5jdXJyZW50VmFsdWUgLSB0aGlzLnN0ZXApO1xuICB9XG5cbiAgZ2V0IG5leHRWYWx1ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmNsYW1wKHRoaXMuY3VycmVudFZhbHVlICsgdGhpcy5zdGVwKTtcbiAgfVxuXG4gIGdldCBpc0Rpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnByb3BzLnN0YXRlID09PSBDb21wb25lbnRTdGF0ZXMuRElTQUJMRUQgfHwgdGhpcy5wcm9wcy5jb250cm9sLmRpc2FibGVkO1xuICB9XG5cbiAgZ2V0IGlzQXRNaW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFZhbHVlIDw9IHRoaXMubWluO1xuICB9XG5cbiAgZ2V0IGlzQXRNYXgoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMubWF4ICE9PSB1bmRlZmluZWQgJiYgdGhpcy5jdXJyZW50VmFsdWUgPj0gdGhpcy5wcm9wcy5tYXg7XG4gIH1cblxuICBnZXQgZGVjcmVtZW50TGFiZWwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5kZWNyZW1lbnRMYWJlbCB8fCAnRGVjcmVhc2UnO1xuICB9XG5cbiAgZ2V0IGluY3JlbWVudExhYmVsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMuaW5jcmVtZW50TGFiZWwgfHwgJ0luY3JlYXNlJztcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3luY0N1cnJlbnRWYWx1ZSgpO1xuICAgIHRoaXMuc3ViID0gdGhpcy5wcm9wcy5jb250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zeW5jQ3VycmVudFZhbHVlKGZhbHNlKSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnN1Yj8udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIGluY3JlbWVudCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldFZhbHVlKHRoaXMuY3VycmVudFZhbHVlICsgdGhpcy5zdGVwKTtcbiAgfVxuXG4gIGRlY3JlbWVudCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldFZhbHVlKHRoaXMuY3VycmVudFZhbHVlIC0gdGhpcy5zdGVwKTtcbiAgfVxuXG4gIG9uSW5wdXQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgaW5wdXQgPSBldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCB8IG51bGw7XG4gICAgdGhpcy5zZXRWYWx1ZShOdW1iZXIoaW5wdXQ/LnZhbHVlID8/IHRoaXMuY3VycmVudFZhbHVlKSk7XG4gIH1cblxuICBzeW5jQ3VycmVudFZhbHVlKGVtaXQgPSB0cnVlKTogdm9pZCB7XG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLmNsYW1wKHRoaXMuY3VycmVudFZhbHVlKTtcbiAgICBpZiAodmFsdWUgIT09IHRoaXMucHJvcHMuY29udHJvbC52YWx1ZSkge1xuICAgICAgdGhpcy5zZXRWYWx1ZSh2YWx1ZSwgZW1pdCk7XG4gICAgfVxuICB9XG5cbiAgZm9ybWF0VmFsdWUodmFsdWU6IG51bWJlcik6IHN0cmluZyB7XG4gICAgY29uc3QgcHJlY2lzaW9uID0gdGhpcy5wcm9wcy5wcmVjaXNpb24gPz8gMDtcbiAgICByZXR1cm4gcHJlY2lzaW9uID4gMCA/IHZhbHVlLnRvRml4ZWQocHJlY2lzaW9uKSA6IFN0cmluZyhNYXRoLnJvdW5kKHZhbHVlKSk7XG4gIH1cblxuICBwcml2YXRlIHNldFZhbHVlKHZhbHVlOiBudW1iZXIsIGVtaXQgPSB0cnVlKTogdm9pZCB7XG4gICAgY29uc3QgcHJldmlvdXNWYWx1ZSA9IHRoaXMuY3VycmVudFZhbHVlO1xuICAgIGNvbnN0IG5leHRWYWx1ZSA9IHRoaXMuY2xhbXAodmFsdWUpO1xuICAgIHRoaXMucHJvcHMuY29udHJvbC5zZXRWYWx1ZShuZXh0VmFsdWUsIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICBpZiAoZW1pdCAmJiBuZXh0VmFsdWUgIT09IHByZXZpb3VzVmFsdWUpIHtcbiAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh7XG4gICAgICAgIHZhbHVlOiBuZXh0VmFsdWUsXG4gICAgICAgIHByZXZpb3VzVmFsdWUsXG4gICAgICAgIGF0TWluOiBuZXh0VmFsdWUgPD0gdGhpcy5taW4sXG4gICAgICAgIGF0TWF4OiB0aGlzLnByb3BzLm1heCAhPT0gdW5kZWZpbmVkICYmIG5leHRWYWx1ZSA+PSB0aGlzLnByb3BzLm1heCxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgY2xhbXAodmFsdWU6IG51bWJlcik6IG51bWJlciB7XG4gICAgY29uc3QgcHJlY2lzaW9uID0gdGhpcy5wcm9wcy5wcmVjaXNpb24gPz8gMDtcbiAgICBjb25zdCBmaW5pdGUgPSBOdW1iZXIuaXNGaW5pdGUodmFsdWUpID8gdmFsdWUgOiB0aGlzLm1pbjtcbiAgICBjb25zdCByb3VuZGVkID0gcHJlY2lzaW9uID4gMCA/IE51bWJlcihmaW5pdGUudG9GaXhlZChwcmVjaXNpb24pKSA6IE1hdGgucm91bmQoZmluaXRlKTtcbiAgICBjb25zdCBtYXhlZCA9IHRoaXMucHJvcHMubWF4ID09PSB1bmRlZmluZWQgPyByb3VuZGVkIDogTWF0aC5taW4odGhpcy5wcm9wcy5tYXgsIHJvdW5kZWQpO1xuICAgIHJldHVybiBNYXRoLm1heCh0aGlzLm1pbiwgbWF4ZWQpO1xuICB9XG59XG4iXX0=
283
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL251bWJlci1waWNrZXIvbnVtYmVyLXBpY2tlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxhQUFhLENBQUM7OztBQWlHOUMsTUFBTSxPQUFPLHFCQUFxQjtJQTlGbEM7UUFnR1ksZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBMkIsQ0FBQztRQUkzRCxZQUFPLEdBQUcscUJBQXFCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7S0E0Ry9FO0lBMUdDLElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksZUFBZSxDQUFDO0lBQy9DLENBQUM7SUFFRCxJQUFJLEdBQUc7UUFDTCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxJQUFJLFNBQVMsQ0FBQztRQUM1QyxPQUFPLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxD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LE1BQU0sT0FBTyxHQUFHLFNBQVMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdkYsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDekYsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQzsrR0FqSFUscUJBQXFCO21HQUFyQixxQkFBcUIsa0pBMUZ0Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBdUZULDA5S0F4RlMsWUFBWTs7NEZBMkZYLHFCQUFxQjtrQkE5RmpDLFNBQVM7K0JBQ0UsbUJBQW1CLGNBQ2pCLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyxZQUNiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F1RlQ7OEJBSTBCLEtBQUs7c0JBQS9CLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNmLFdBQVc7c0JBQXBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvbXBvbmVudFN0YXRlcyB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IE51bWJlclBpY2tlckNoYW5nZUV2ZW50LCBOdW1iZXJQaWNrZXJNZXRhZGF0YSB9IGZyb20gJy4vdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtbnVtYmVyLXBpY2tlcicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwibnVtYmVyLXBpY2tlclwiXG4gICAgICBbbmdDbGFzc109XCJwcm9wcy5jc3NDbGFzc1wiXG4gICAgICBbY2xhc3MubnVtYmVyLXBpY2tlci0td2hlZWxdPVwidmFyaWFudCA9PT0gJ3doZWVsJ1wiXG4gICAgICBbY2xhc3MubnVtYmVyLXBpY2tlci0tZmllbGRdPVwidmFyaWFudCA9PT0gJ2ZpZWxkLXN0ZXBwZXInXCJcbiAgICAgIFtjbGFzcy5udW1iZXItcGlja2VyLS1jb21wYWN0XT1cInZhcmlhbnQgPT09ICdjb21wYWN0LXN0ZXBwZXInXCJcbiAgICAgIFtjbGFzcy5udW1iZXItcGlja2VyLS1kaXNhYmxlZF09XCJpc0Rpc2FibGVkXCJcbiAgICAgIFtzdHlsZS4tLW51bWJlci1waWNrZXItY29sb3JdPVwiY29sb3JcIlxuICAgICAgW2F0dHIuZGF0YS10b2tlbl09XCJwcm9wcy50b2tlbiB8fCBudWxsXCJcbiAgICA+XG4gICAgICBAaWYgKHByb3BzLmxhYmVsKSB7XG4gICAgICAgIDxsYWJlbCBjbGFzcz1cIm51bWJlci1waWNrZXJfX2xhYmVsXCIgW2F0dHIuZm9yXT1cImlucHV0SWRcIj57eyBwcm9wcy5sYWJlbCB9fTwvbGFiZWw+XG4gICAgICB9XG5cbiAgICAgIEBpZiAodmFyaWFudCA9PT0gJ3doZWVsJykge1xuICAgICAgICA8ZGl2IGNsYXNzPVwibnVtYmVyLXBpY2tlcl9fd2hlZWxcIiByb2xlPVwiZ3JvdXBcIiBbYXR0ci5hcmlhLWxhYmVsXT1cInByb3BzLmxhYmVsIHx8IHByb3BzLnRva2VuXCI+XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBjbGFzcz1cIm51bWJlci1waWNrZXJfX2J1dHRvblwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZCB8fCBpc0F0TWluXCJcbiAgICAgICAgICAgIChjbGljayk9XCJkZWNyZW1lbnQoKVwiXG4gICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImRlY3JlbWVudExhYmVsXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICAtXG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm51bWJlci1waWNrZXJfX3doZWVsLXZhbHVlc1wiIGFyaWEtbGl2ZT1cInBvbGl0ZVwiPlxuICAgICAgICAgICAgPHNwYW4+e3sgZm9ybWF0VmFsdWUocHJldmlvdXNWYWx1ZSkgfX08L3NwYW4+XG4gICAgICAgICAgICA8c3Ryb25nPnt7IGZvcm1hdFZhbHVlKGN1cnJlbnRWYWx1ZSkgfX08L3N0cm9uZz5cbiAgICAgICAgICAgIDxzcGFuPnt7IGZvcm1hdFZhbHVlKG5leHRWYWx1ZSkgfX08L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBjbGFzcz1cIm51bWJlci1waWNrZXJfX2J1dHRvblwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZCB8fCBpc0F0TWF4XCJcbiAgICAgICAgICAgIChjbGljayk9XCJpbmNyZW1lbnQoKVwiXG4gICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImluY3JlbWVudExhYmVsXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICArXG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJudW1iZXItcGlja2VyX19maWVsZFwiPlxuICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgW2lkXT1cImlucHV0SWRcIlxuICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiXG4gICAgICAgICAgICBbaW5wdXRNb2RlXT1cInByb3BzLmlucHV0TW9kZSB8fCAnbnVtZXJpYydcIlxuICAgICAgICAgICAgW21pbl09XCJtaW5cIlxuICAgICAgICAgICAgW21heF09XCJwcm9wcy5tYXggPz8gbnVsbFwiXG4gICAgICAgICAgICBbc3RlcF09XCJzdGVwXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJmb3JtYXRWYWx1ZShjdXJyZW50VmFsdWUpXCJcbiAgICAgICAgICAgIFtyZWFkT25seV09XCJwcm9wcy5lZGl0YWJsZSA9PT0gZmFsc2VcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImlzRGlzYWJsZWRcIlxuICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJwcm9wcy5sYWJlbCB8fCBwcm9wcy50b2tlblwiXG4gICAgICAgICAgICAoaW5wdXQpPVwib25JbnB1dCgkZXZlbnQpXCJcbiAgICAgICAgICAgIChibHVyKT1cInN5bmNDdXJyZW50VmFsdWUoKVwiXG4gICAgICAgICAgLz5cbiAgICAgICAgICBAaWYgKHByb3BzLnVuaXRMYWJlbCkge1xuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJudW1iZXItcGlja2VyX191bml0XCI+e3sgcHJvcHMudW5pdExhYmVsIH19PC9zcGFuPlxuICAgICAgICAgIH1cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibnVtYmVyLXBpY2tlcl9fYWN0aW9uc1wiPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJudW1iZXItcGlja2VyX19idXR0b25cIlxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZCB8fCBpc0F0TWluXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImRlY3JlbWVudCgpXCJcbiAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJkZWNyZW1lbnRMYWJlbFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIC1cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJudW1iZXItcGlja2VyX19idXR0b25cIlxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZCB8fCBpc0F0TWF4XCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImluY3JlbWVudCgpXCJcbiAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJpbmNyZW1lbnRMYWJlbFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICtcbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cblxuICAgICAgQGlmIChwcm9wcy5oaW50KSB7XG4gICAgICAgIDxwIGNsYXNzPVwibnVtYmVyLXBpY2tlcl9faGludFwiPnt7IHByb3BzLmhpbnQgfX08L3A+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL251bWJlci1waWNrZXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTnVtYmVyUGlja2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBwcm9wcyE6IE51bWJlclBpY2tlck1ldGFkYXRhO1xuICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPE51bWJlclBpY2tlckNoYW5nZUV2ZW50PigpO1xuXG4gIHByaXZhdGUgc3ViPzogU3Vic2NyaXB0aW9uO1xuXG4gIHJlYWRvbmx5IGlucHV0SWQgPSBgdmFsLW51bWJlci1waWNrZXItJHtNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zbGljZSgyKX1gO1xuXG4gIGdldCB2YXJpYW50KCkge1xuICAgIHJldHVybiB0aGlzLnByb3BzLnZhcmlhbnQgPz8gJ2ZpZWxkLXN0ZXBwZXInO1xuICB9XG5cbiAgZ2V0IG1pbigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnByb3BzLm1pbiA/PyAwO1xuICB9XG5cbiAgZ2V0IHN0ZXAoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5zdGVwID8/IDE7XG4gIH1cblxuICBnZXQgY29sb3IoKTogc3RyaW5nIHtcbiAgICBjb25zdCBjb2xvciA9IHRoaXMucHJvcHMuY29sb3IgPz8gJ3ByaW1hcnknO1xuICAgIHJldHVybiB0eXBlb2YgY29sb3IgPT09ICdzdHJpbmcnICYmICFjb2xvci5zdGFydHNXaXRoKCcjJykgJiYgIWNvbG9yLnN0YXJ0c1dpdGgoJ3ZhcignKVxuICAgICAgPyBgdmFyKC0taW9uLWNvbG9yLSR7Y29sb3J9LCAke2NvbG9yfSlgXG4gICAgICA6IGNvbG9yO1xuICB9XG5cbiAgZ2V0IGN1cnJlbnRWYWx1ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmNsYW1wKE51bWJlcih0aGlzLnByb3BzLmNvbnRyb2wudmFsdWUgPz8gdGhpcy5taW4pKTtcbiAgfVxuXG4gIGdldCBwcmV2aW91c1ZhbHVlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuY2xhbXAodGhpcy5jdXJyZW50VmFsdWUgLSB0aGlzLnN0ZXApO1xuICB9XG5cbiAgZ2V0IG5leHRWYWx1ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmNsYW1wKHRoaXMuY3VycmVudFZhbHVlICsgdGhpcy5zdGVwKTtcbiAgfVxuXG4gIGdldCBpc0Rpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnByb3BzLnN0YXRlID09PSBDb21wb25lbnRTdGF0ZXMuRElTQUJMRUQgfHwgdGhpcy5wcm9wcy5jb250cm9sLmRpc2FibGVkO1xuICB9XG5cbiAgZ2V0IGlzQXRNaW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFZhbHVlIDw9IHRoaXMubWluO1xuICB9XG5cbiAgZ2V0IGlzQXRNYXgoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMubWF4ICE9PSB1bmRlZmluZWQgJiYgdGhpcy5jdXJyZW50VmFsdWUgPj0gdGhpcy5wcm9wcy5tYXg7XG4gIH1cblxuICBnZXQgZGVjcmVtZW50TGFiZWwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5kZWNyZW1lbnRMYWJlbCB8fCAnRGVjcmVhc2UnO1xuICB9XG5cbiAgZ2V0IGluY3JlbWVudExhYmVsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMuaW5jcmVtZW50TGFiZWwgfHwgJ0luY3JlYXNlJztcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3luY0N1cnJlbnRWYWx1ZSgpO1xuICAgIHRoaXMuc3ViID0gdGhpcy5wcm9wcy5jb250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zeW5jQ3VycmVudFZhbHVlKGZhbHNlKSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnN1Yj8udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIGluY3JlbWVudCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldFZhbHVlKHRoaXMuY3VycmVudFZhbHVlICsgdGhpcy5zdGVwKTtcbiAgfVxuXG4gIGRlY3JlbWVudCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldFZhbHVlKHRoaXMuY3VycmVudFZhbHVlIC0gdGhpcy5zdGVwKTtcbiAgfVxuXG4gIG9uSW5wdXQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgaW5wdXQgPSBldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCB8IG51bGw7XG4gICAgdGhpcy5zZXRWYWx1ZShOdW1iZXIoaW5wdXQ/LnZhbHVlID8/IHRoaXMuY3VycmVudFZhbHVlKSk7XG4gIH1cblxuICBzeW5jQ3VycmVudFZhbHVlKGVtaXQgPSB0cnVlKTogdm9pZCB7XG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLmNsYW1wKHRoaXMuY3VycmVudFZhbHVlKTtcbiAgICBpZiAodmFsdWUgIT09IHRoaXMucHJvcHMuY29udHJvbC52YWx1ZSkge1xuICAgICAgdGhpcy5zZXRWYWx1ZSh2YWx1ZSwgZW1pdCk7XG4gICAgfVxuICB9XG5cbiAgZm9ybWF0VmFsdWUodmFsdWU6IG51bWJlcik6IHN0cmluZyB7XG4gICAgY29uc3QgcHJlY2lzaW9uID0gdGhpcy5wcm9wcy5wcmVjaXNpb24gPz8gMDtcbiAgICByZXR1cm4gcHJlY2lzaW9uID4gMCA/IHZhbHVlLnRvRml4ZWQocHJlY2lzaW9uKSA6IFN0cmluZyhNYXRoLnJvdW5kKHZhbHVlKSk7XG4gIH1cblxuICBwcml2YXRlIHNldFZhbHVlKHZhbHVlOiBudW1iZXIsIGVtaXQgPSB0cnVlKTogdm9pZCB7XG4gICAgY29uc3QgcHJldmlvdXNWYWx1ZSA9IHRoaXMuY3VycmVudFZhbHVlO1xuICAgIGNvbnN0IG5leHRWYWx1ZSA9IHRoaXMuY2xhbXAodmFsdWUpO1xuICAgIHRoaXMucHJvcHMuY29udHJvbC5zZXRWYWx1ZShuZXh0VmFsdWUsIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICBpZiAoZW1pdCAmJiBuZXh0VmFsdWUgIT09IHByZXZpb3VzVmFsdWUpIHtcbiAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh7XG4gICAgICAgIHZhbHVlOiBuZXh0VmFsdWUsXG4gICAgICAgIHByZXZpb3VzVmFsdWUsXG4gICAgICAgIGF0TWluOiBuZXh0VmFsdWUgPD0gdGhpcy5taW4sXG4gICAgICAgIGF0TWF4OiB0aGlzLnByb3BzLm1heCAhPT0gdW5kZWZpbmVkICYmIG5leHRWYWx1ZSA+PSB0aGlzLnByb3BzLm1heCxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgY2xhbXAodmFsdWU6IG51bWJlcik6IG51bWJlciB7XG4gICAgY29uc3QgcHJlY2lzaW9uID0gdGhpcy5wcm9wcy5wcmVjaXNpb24gPz8gMDtcbiAgICBjb25zdCBmaW5pdGUgPSBOdW1iZXIuaXNGaW5pdGUodmFsdWUpID8gdmFsdWUgOiB0aGlzLm1pbjtcbiAgICBjb25zdCByb3VuZGVkID0gcHJlY2lzaW9uID4gMCA/IE51bWJlcihmaW5pdGUudG9GaXhlZChwcmVjaXNpb24pKSA6IE1hdGgucm91bmQoZmluaXRlKTtcbiAgICBjb25zdCBtYXhlZCA9IHRoaXMucHJvcHMubWF4ID09PSB1bmRlZmluZWQgPyByb3VuZGVkIDogTWF0aC5taW4odGhpcy5wcm9wcy5tYXgsIHJvdW5kZWQpO1xuICAgIHJldHVybiBNYXRoLm1heCh0aGlzLm1pbiwgbWF4ZWQpO1xuICB9XG59XG4iXX0=
@@ -231,7 +231,7 @@ export class ChatWindowComponent {
231
231
  <div class="closed-banner">{{ t('conversationClosed') }}</div>
232
232
  }
233
233
  </div>
234
- `, isInline: true, styles: [":host{display:block;position:relative;height:100%;min-height:0}.chat{position:absolute;inset:0;display:flex;flex-direction:column}.messages{flex:1;min-height:0;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:0}.state{margin:auto;display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--ion-color-dark, #92949c);font-size:.9375rem;text-align:center;padding:24px}.state.empty ion-icon{font-size:2.5rem;opacity:.5}.date-sep{position:sticky;top:4px;z-index:1;display:flex;justify-content:center;margin:8px 0}.date-sep span{font-size:.75rem;color:var(--ion-color-dark, #92949c);background:var(--ion-color-step-100, rgba(127, 127, 127, .14));padding:3px 12px;border-radius:999px;backdrop-filter:blur(4px)}.scroll-down{position:absolute;right:14px;bottom:84px;width:40px;height:40px;border-radius:50%;border:1px solid var(--ion-border-color, rgba(0, 0, 0, .1));background:var(--ion-card-background, var(--ion-background-color, #fff));color:var(--ion-color-dark, #92949c);box-shadow:0 2px 10px #00000026;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:1.25rem;z-index:3}.scroll-down .dot{position:absolute;top:0;right:0;width:12px;height:12px;border-radius:50%;background:var(--ion-color-primary);border:2px solid var(--ion-card-background, #fff)}.closed-banner{text-align:center;padding:14px;color:var(--ion-color-dark, #92949c);font-size:.875rem;border-top:1px solid var(--ion-border-color, rgba(0, 0, 0, .08))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: MessageBubbleComponent, selector: "val-message-bubble", inputs: ["msg", "showAvatar", "showName", "tail", "locale", "canModerate"], outputs: ["action"] }, { kind: "component", type: ChatComposerComponent, selector: "val-chat-composer", inputs: ["placeholder", "disabled", "maxLength", "replyingTo", "showAttach", "showMic", "showVoiceMessage"], outputs: ["send", "typing", "voice", "cancelReply"] }, { kind: "component", type: TypingIndicatorComponent, selector: "val-typing-indicator", inputs: ["typingUsers"] }] }); }
234
+ `, isInline: true, styles: [":host{display:block;position:relative;height:100%;min-height:0}.chat{position:absolute;inset:0;display:flex;flex-direction:column;background:var(--val-chat-background, var(--ion-background-color, #fff))}.messages{flex:1;min-height:0;overflow-y:auto;padding:var(--val-chat-messages-padding, 18px 16px 12px);display:flex;flex-direction:column;gap:2px}.state{margin:auto;display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--ion-color-dark, #92949c);font-size:.9375rem;text-align:center;padding:24px}.state.empty ion-icon{font-size:2.5rem;opacity:.5}.date-sep{position:sticky;top:4px;z-index:1;display:flex;justify-content:center;margin:8px 0}.date-sep span{font-size:.75rem;color:var(--ion-color-dark, #92949c);background:var(--val-chat-date-background, rgba(127, 127, 127, .08));padding:3px 12px;border-radius:999px;backdrop-filter:blur(4px)}.scroll-down{position:absolute;right:14px;bottom:84px;width:40px;height:40px;border-radius:50%;border:1px solid var(--ion-border-color, rgba(0, 0, 0, .1));background:var(--ion-card-background, var(--ion-background-color, #fff));color:var(--ion-color-dark, #92949c);box-shadow:0 2px 10px #00000026;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:1.25rem;z-index:3}.scroll-down .dot{position:absolute;top:0;right:0;width:12px;height:12px;border-radius:50%;background:var(--ion-color-primary);border:2px solid var(--ion-card-background, #fff)}.closed-banner{text-align:center;padding:14px;color:var(--ion-color-dark, #92949c);font-size:.875rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: MessageBubbleComponent, selector: "val-message-bubble", inputs: ["msg", "showAvatar", "showName", "tail", "locale", "canModerate"], outputs: ["action"] }, { kind: "component", type: ChatComposerComponent, selector: "val-chat-composer", inputs: ["placeholder", "disabled", "maxLength", "replyingTo", "showAttach", "showMic", "showVoiceMessage"], outputs: ["send", "typing", "voice", "cancelReply"] }, { kind: "component", type: TypingIndicatorComponent, selector: "val-typing-indicator", inputs: ["typingUsers"] }] }); }
235
235
  }
236
236
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChatWindowComponent, decorators: [{
237
237
  type: Component,
@@ -293,6 +293,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
293
293
  <div class="closed-banner">{{ t('conversationClosed') }}</div>
294
294
  }
295
295
  </div>
296
- `, styles: [":host{display:block;position:relative;height:100%;min-height:0}.chat{position:absolute;inset:0;display:flex;flex-direction:column}.messages{flex:1;min-height:0;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:0}.state{margin:auto;display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--ion-color-dark, #92949c);font-size:.9375rem;text-align:center;padding:24px}.state.empty ion-icon{font-size:2.5rem;opacity:.5}.date-sep{position:sticky;top:4px;z-index:1;display:flex;justify-content:center;margin:8px 0}.date-sep span{font-size:.75rem;color:var(--ion-color-dark, #92949c);background:var(--ion-color-step-100, rgba(127, 127, 127, .14));padding:3px 12px;border-radius:999px;backdrop-filter:blur(4px)}.scroll-down{position:absolute;right:14px;bottom:84px;width:40px;height:40px;border-radius:50%;border:1px solid var(--ion-border-color, rgba(0, 0, 0, .1));background:var(--ion-card-background, var(--ion-background-color, #fff));color:var(--ion-color-dark, #92949c);box-shadow:0 2px 10px #00000026;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:1.25rem;z-index:3}.scroll-down .dot{position:absolute;top:0;right:0;width:12px;height:12px;border-radius:50%;background:var(--ion-color-primary);border:2px solid var(--ion-card-background, #fff)}.closed-banner{text-align:center;padding:14px;color:var(--ion-color-dark, #92949c);font-size:.875rem;border-top:1px solid var(--ion-border-color, rgba(0, 0, 0, .08))}\n"] }]
296
+ `, styles: [":host{display:block;position:relative;height:100%;min-height:0}.chat{position:absolute;inset:0;display:flex;flex-direction:column;background:var(--val-chat-background, var(--ion-background-color, #fff))}.messages{flex:1;min-height:0;overflow-y:auto;padding:var(--val-chat-messages-padding, 18px 16px 12px);display:flex;flex-direction:column;gap:2px}.state{margin:auto;display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--ion-color-dark, #92949c);font-size:.9375rem;text-align:center;padding:24px}.state.empty ion-icon{font-size:2.5rem;opacity:.5}.date-sep{position:sticky;top:4px;z-index:1;display:flex;justify-content:center;margin:8px 0}.date-sep span{font-size:.75rem;color:var(--ion-color-dark, #92949c);background:var(--val-chat-date-background, rgba(127, 127, 127, .08));padding:3px 12px;border-radius:999px;backdrop-filter:blur(4px)}.scroll-down{position:absolute;right:14px;bottom:84px;width:40px;height:40px;border-radius:50%;border:1px solid var(--ion-border-color, rgba(0, 0, 0, .1));background:var(--ion-card-background, var(--ion-background-color, #fff));color:var(--ion-color-dark, #92949c);box-shadow:0 2px 10px #00000026;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:1.25rem;z-index:3}.scroll-down .dot{position:absolute;top:0;right:0;width:12px;height:12px;border-radius:50%;background:var(--ion-color-primary);border:2px solid var(--ion-card-background, #fff)}.closed-banner{text-align:center;padding:14px;color:var(--ion-color-dark, #92949c);font-size:.875rem}\n"] }]
297
297
  }], ctorParameters: () => [] });
298
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC13aW5kb3cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9jaGF0LXdpbmRvdy9jaGF0LXdpbmRvdy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEgsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXRFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVyRSxPQUFPLEVBQUUsc0JBQXNCLEVBQXVCLE1BQU0seURBQXlELENBQUM7QUFFdEgsT0FBTyxFQUFFLHFCQUFxQixFQUF5QixNQUFNLHVEQUF1RCxDQUFDO0FBQ3JILE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDZEQUE2RCxDQUFDOztBQUV2RyxRQUFRLENBQUMsRUFBRSxnQkFBZ0IsRUFBRSxrQkFBa0IsRUFBRSxDQUFDLENBQUM7QUFFbkQsTUFBTSxnQkFBZ0IsR0FBRztJQUN2QixFQUFFLEVBQUU7UUFDRixrQkFBa0IsRUFBRSxnQ0FBZ0M7UUFDcEQsT0FBTyxFQUFFLHNCQUFzQjtRQUMvQixVQUFVLEVBQUUsMENBQTBDO1FBQ3RELFdBQVcsRUFBRSxpQkFBaUI7S0FDL0I7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QUksQ0FBQyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7Z0JBQzVFLE1BQU07UUFDVixDQUFDO0lBQ0gsQ0FBQztJQUVELENBQUMsQ0FBQyxHQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDeEMsQ0FBQzsrR0E3SVUsbUJBQW1CO21HQUFuQixtQkFBbUIsdXVEQTFKcEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EwRFQsb2hEQTNEUyxZQUFZLCtCQUFFLE9BQU8sMkpBQUUsc0JBQXNCLGdLQUFFLHFCQUFxQixnT0FBRSx3QkFBd0I7OzRGQTJKN0YsbUJBQW1CO2tCQTlKL0IsU0FBUzsrQkFDRSxpQkFBaUIsY0FDZixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLHFCQUFxQixFQUFFLHdCQUF3QixDQUFDLFlBQy9GOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMERUIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBjb21wdXRlZCwgZWZmZWN0LCBpbmplY3QsIGlucHV0LCBvdXRwdXQsIHNpZ25hbCwgdmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSW9uSWNvbiB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyL3N0YW5kYWxvbmUnO1xuaW1wb3J0IHsgYWRkSWNvbnMgfSBmcm9tICdpb25pY29ucyc7XG5pbXBvcnQgeyBhcnJvd0Rvd25PdXRsaW5lLCBjaGF0YnViYmxlc091dGxpbmUgfSBmcm9tICdpb25pY29ucy9pY29ucyc7XG5cbmltcG9ydCB7IEkxOG5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvaTE4bic7XG5pbXBvcnQgeyBmb3JtYXREYXRlU2VwYXJhdG9yIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3V0aWxzL2RhdGV0aW1lJztcbmltcG9ydCB7IE1lc3NhZ2VSZXBseVRvIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvY2hhdC90eXBlcyc7XG5pbXBvcnQgeyBNZXNzYWdlQnViYmxlQ29tcG9uZW50LCBNZXNzYWdlQnViYmxlQWN0aW9uIH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL21lc3NhZ2UtYnViYmxlL21lc3NhZ2UtYnViYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNZXNzYWdlQnViYmxlTWV0YWRhdGEgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvbWVzc2FnZS1idWJibGUvdHlwZXMnO1xuaW1wb3J0IHsgQ2hhdENvbXBvc2VyQ29tcG9uZW50LCBDaGF0Q29tcG9zZXJTZW5kRXZlbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvY2hhdC1jb21wb3Nlci9jaGF0LWNvbXBvc2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUeXBpbmdJbmRpY2F0b3JDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvdHlwaW5nLWluZGljYXRvci90eXBpbmctaW5kaWNhdG9yLmNvbXBvbmVudCc7XG5cbmFkZEljb25zKHsgYXJyb3dEb3duT3V0bGluZSwgY2hhdGJ1YmJsZXNPdXRsaW5lIH0pO1xuXG5jb25zdCBDSEFUX1dJTkRPV19JMThOID0ge1xuICBlczoge1xuICAgIGNvbnZlcnNhdGlvbkNsb3NlZDogJ0VzdGEgY29udmVyc2FjaW9uIGVzdGEgY2VycmFkYScsXG4gICAgbG9hZGluZzogJ0NhcmdhbmRvIG1lbnNhamVzLi4uJyxcbiAgICBub01lc3NhZ2VzOiAnQXVuIG5vIGhheSBtZW5zYWplcy4gRXNjcmliZSBlbCBwcmltZXJvLicsXG4gICAgbmV3TWVzc2FnZXM6ICdNZW5zYWplcyBudWV2b3MnLFxuICB9LFxuICBlbjoge1xuICAgIGNvbnZlcnNhdGlvbkNsb3NlZDogJ1RoaXMgY29udmVyc2F0aW9uIGlzIGNsb3NlZCcsXG4gICAgbG9hZGluZzogJ0xvYWRpbmcgbWVzc2FnZXMuLi4nLFxuICAgIG5vTWVzc2FnZXM6ICdObyBtZXNzYWdlcyB5ZXQuIFNlbmQgdGhlIGZpcnN0IG9uZS4nLFxuICAgIG5ld01lc3NhZ2VzOiAnTmV3IG1lc3NhZ2VzJyxcbiAgfSxcbn07XG5cbnR5cGUgQ2hhdFJvdyA9XG4gIHwgeyBraW5kOiAnZGF0ZSc7IGlkOiBzdHJpbmc7IGxhYmVsOiBzdHJpbmcgfVxuICB8IHtcbiAgICAgIGtpbmQ6ICdtc2cnO1xuICAgICAgaWQ6IHN0cmluZztcbiAgICAgIG1zZzogTWVzc2FnZUJ1YmJsZU1ldGFkYXRhO1xuICAgICAgc2hvd05hbWU6IGJvb2xlYW47XG4gICAgICBzaG93QXZhdGFyOiBib29sZWFuO1xuICAgICAgdGFpbDogYm9vbGVhbjtcbiAgICB9O1xuXG4vKipcbiAqIHZhbC1jaGF0LXdpbmRvdyDigJQgdmVudGFuYSBkZSBjaGF0IGNvbXBsZXRhIChzaWduYWwgaW5wdXRzKS5cbiAqXG4gKiBBZ3J1cGEgbWVuc2FqZXMgY29uc2VjdXRpdm9zIGRlbCBtaXNtbyBlbWlzb3IgeSBwb3IgZMOtYSAoc2VwYXJhZG9yZXMgc3RpY2t5KSxcbiAqIG11ZXN0cmEgYXZhdGFyL25vbWJyZSBzb2xvIGVuIGxvcyBib3JkZXMgZGVsIGdydXBvLCBzY3JvbGwtdG8tYm90dG9tIGludGVsaWdlbnRlXG4gKiAoYXV0by1zY3JvbGwgc2kgZXN0w6FzIGFiYWpvLCBwaWxsIFwibWVuc2FqZXMgbnVldm9zXCIgc2kgZXN0w6FzIGxleWVuZG8gYXJyaWJhKSxcbiAqIGNvbXBvc2VyIG1vZGVybm8gY29uIGNvbnRleHRvIGRlIHJlc3B1ZXN0YSwgeSB0eXBpbmcgaW5kaWNhdG9yLlxuICpcbiAqIEFQSSBww7pibGljYSBlc3RhYmxlIChjb25zdW1pZGEgcG9yIHRocmVhZC1wYW5lbCB5IHNob3djYXNlKTogaW5wdXRzIGNvbnZJZCxcbiAqIG1lc3NhZ2VzLCBjdXJyZW50VXNlcklkLCBpc09wZW4sIHR5cGluZ1VzZXJzLCBpc0xvYWRpbmc7IG91dHB1dHMgc2VuZE1lc3NhZ2UsXG4gKiBsb2FkTW9yZSwgcmVhY3Rpb25DbGljaywgZGVsZXRlTWVzc2FnZSwgcmVwbHlUbyAoKyBlZGl0TWVzc2FnZS9hdHRhY2gvdm9pY2UgbnVldm9zKS5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLWNoYXQtd2luZG93JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgSW9uSWNvbiwgTWVzc2FnZUJ1YmJsZUNvbXBvbmVudCwgQ2hhdENvbXBvc2VyQ29tcG9uZW50LCBUeXBpbmdJbmRpY2F0b3JDb21wb25lbnRdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJjaGF0XCI+XG4gICAgICA8ZGl2ICNtc2dzIGNsYXNzPVwibWVzc2FnZXNcIiAoc2Nyb2xsKT1cIm9uU2Nyb2xsKClcIj5cbiAgICAgICAgQGlmIChpc0xvYWRpbmcoKSkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdGF0ZVwiPlxuICAgICAgICAgICAgPHNwYW4+e3sgdCgnbG9hZGluZycpIH19PC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9IEBlbHNlIGlmIChyb3dzKCkubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInN0YXRlIGVtcHR5XCI+XG4gICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cImNoYXRidWJibGVzLW91dGxpbmVcIiBhcmlhLWhpZGRlbj1cInRydWVcIiAvPlxuICAgICAgICAgICAgPHNwYW4+e3sgdCgnbm9NZXNzYWdlcycpIH19PC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICBAZm9yIChyb3cgb2Ygcm93cygpOyB0cmFjayByb3cuaWQpIHtcbiAgICAgICAgICAgIEBpZiAocm93LmtpbmQgPT09ICdkYXRlJykge1xuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF0ZS1zZXBcIj5cbiAgICAgICAgICAgICAgICA8c3Bhbj57eyByb3cubGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgIDx2YWwtbWVzc2FnZS1idWJibGVcbiAgICAgICAgICAgICAgICBbbXNnXT1cInJvdy5tc2dcIlxuICAgICAgICAgICAgICAgIFtzaG93TmFtZV09XCJyb3cuc2hvd05hbWVcIlxuICAgICAgICAgICAgICAgIFtzaG93QXZhdGFyXT1cInJvdy5zaG93QXZhdGFyXCJcbiAgICAgICAgICAgICAgICBbdGFpbF09XCJyb3cudGFpbFwiXG4gICAgICAgICAgICAgICAgW2xvY2FsZV09XCJsb2NhbGUoKVwiXG4gICAgICAgICAgICAgICAgW2Nhbk1vZGVyYXRlXT1cImNhbk1vZGVyYXRlKClcIlxuICAgICAgICAgICAgICAgIChhY3Rpb24pPVwib25BY3Rpb24oJGV2ZW50KVwiXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIDx2YWwtdHlwaW5nLWluZGljYXRvciBbdHlwaW5nVXNlcnNdPVwidHlwaW5nVXNlcnMoKVwiIC8+XG4gICAgICA8L2Rpdj5cblxuICAgICAgQGlmICghYXRCb3R0b20oKSkge1xuICAgICAgICA8YnV0dG9uIGNsYXNzPVwic2Nyb2xsLWRvd25cIiAoY2xpY2spPVwic2Nyb2xsVG9Cb3R0b20odHJ1ZSlcIiBhcmlhLWxhYmVsPVwic2Nyb2xsXCI+XG4gICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJhcnJvdy1kb3duLW91dGxpbmVcIiBhcmlhLWhpZGRlbj1cInRydWVcIiAvPlxuICAgICAgICAgIEBpZiAoaGFzTmV3KCkpIHtcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZG90XCI+PC9zcGFuPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICB9XG5cbiAgICAgIEBpZiAoaXNPcGVuKCkpIHtcbiAgICAgICAgPHZhbC1jaGF0LWNvbXBvc2VyXG4gICAgICAgICAgW3JlcGx5aW5nVG9dPVwicmVwbHlpbmdUbygpXCJcbiAgICAgICAgICBbc2hvd0F0dGFjaF09XCJzaG93QXR0YWNoKClcIlxuICAgICAgICAgIFtzaG93TWljXT1cInNob3dEaWN0YXRpb24oKVwiXG4gICAgICAgICAgW3Nob3dWb2ljZU1lc3NhZ2VdPVwic2hvd1ZvaWNlTWVzc2FnZSgpXCJcbiAgICAgICAgICAoc2VuZCk9XCJvblNlbmQoJGV2ZW50KVwiXG4gICAgICAgICAgKHR5cGluZyk9XCJ0eXBpbmcuZW1pdCgpXCJcbiAgICAgICAgICAodm9pY2UpPVwidm9pY2UuZW1pdCgpXCJcbiAgICAgICAgICAoY2FuY2VsUmVwbHkpPVwicmVwbHlpbmdUby5zZXQobnVsbClcIlxuICAgICAgICAvPlxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjbG9zZWQtYmFubmVyXCI+e3sgdCgnY29udmVyc2F0aW9uQ2xvc2VkJykgfX08L2Rpdj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVzOiBbXG4gICAgYFxuICAgICAgOmhvc3Qge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICB9XG4gICAgICAvKiBwb3NpdGlvbjphYnNvbHV0ZSArIGluc2V0OjAgZGEgYWwgY29udGVuZWRvciB1bmEgYWx0dXJhIERFRklOSURBICg9IGxhIGRlbFxuICAgICAgICAgaG9zdCksIHNpbiBkZXBlbmRlciBkZSBoZWlnaHQ6MTAwJSBxdWUgbm8gcmVzdWVsdmUgZW4gY2FkZW5hcyBmbGV4L3NoYWRvdy5cbiAgICAgICAgIE1lbnNhamVzIHNjcm9sbGVhbjsgZWwgY29tcG9zZXIgKGZsZXg6bm9uZSkgcXVlZGEgYW5jbGFkbyBhYmFqbyBzaWVtcHJlLiAqL1xuICAgICAgLmNoYXQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgfVxuICAgICAgLm1lc3NhZ2VzIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgcGFkZGluZzogMTJweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiAwO1xuICAgICAgfVxuICAgICAgLnN0YXRlIHtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDhweDtcbiAgICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1kYXJrLCAjOTI5NDljKTtcbiAgICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMjRweDtcbiAgICAgIH1cbiAgICAgIC5zdGF0ZS5lbXB0eSBpb24taWNvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICB9XG4gICAgICAuZGF0ZS1zZXAge1xuICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICB0b3A6IDRweDtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogOHB4IDA7XG4gICAgICB9XG4gICAgICAuZGF0ZS1zZXAgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1kYXJrLCAjOTI5NDljKTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLXN0ZXAtMTAwLCByZ2JhKDEyNywgMTI3LCAxMjcsIDAuMTQpKTtcbiAgICAgICAgcGFkZGluZzogM3B4IDEycHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNHB4KTtcbiAgICAgIH1cbiAgICAgIC5zY3JvbGwtZG93biB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDE0cHg7XG4gICAgICAgIGJvdHRvbTogODRweDtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pb24tYm9yZGVyLWNvbG9yLCByZ2JhKDAsIDAsIDAsIDAuMSkpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pb24tY2FyZC1iYWNrZ3JvdW5kLCB2YXIoLS1pb24tYmFja2dyb3VuZC1jb2xvciwgI2ZmZikpO1xuICAgICAgICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLWRhcmssICM5Mjk0OWMpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDJweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgIHotaW5kZXg6IDM7XG4gICAgICB9XG4gICAgICAuc2Nyb2xsLWRvd24gLmRvdCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgIGhlaWdodDogMTJweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pb24tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWlvbi1jYXJkLWJhY2tncm91bmQsICNmZmYpO1xuICAgICAgfVxuICAgICAgLmNsb3NlZC1iYW5uZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDE0cHg7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItZGFyaywgIzkyOTQ5Yyk7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1pb24tYm9yZGVyLWNvbG9yLCByZ2JhKDAsIDAsIDAsIDAuMDgpKTtcbiAgICAgIH1cbiAgICBgLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBDaGF0V2luZG93Q29tcG9uZW50IHtcbiAgcHJpdmF0ZSBpMThuID0gaW5qZWN0KEkxOG5TZXJ2aWNlKTtcblxuICByZWFkb25seSBjb252SWQgPSBpbnB1dDxzdHJpbmc+KCcnKTtcbiAgcmVhZG9ubHkgbWVzc2FnZXMgPSBpbnB1dDxNZXNzYWdlQnViYmxlTWV0YWRhdGFbXT4oW10pO1xuICByZWFkb25seSBjdXJyZW50VXNlcklkID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIHJlYWRvbmx5IGlzT3BlbiA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xuICByZWFkb25seSB0eXBpbmdVc2VycyA9IGlucHV0PHN0cmluZ1tdPihbXSk7XG4gIHJlYWRvbmx5IGlzTG9hZGluZyA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgLyoqIE93bmVyL21vZGVyYXRvciBkZWwgY2hhdDogaGFiaWxpdGEgYm9ycmFyIG1lbnNhamVzIGFqZW5vcyAobW9kZXJhY2lvbikuICovXG4gIHJlYWRvbmx5IGNhbk1vZGVyYXRlID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICAvLyBGZWF0dXJlLWZsYWdzIGRlbCBjb21wb3NlciDigJQgY2FkYSBhcHAvY29uc3VtaWRvciBkZWNpZGUgcXXDqSBoYWJpbGl0YXIuXG4gIC8qKiBCb3TDs24gZGUgYWRqdW50YXIgYXJjaGl2b3MvaW3DoWdlbmVzLiAqL1xuICByZWFkb25seSBzaG93QXR0YWNoID0gaW5wdXQ8Ym9vbGVhbj4odHJ1ZSk7XG4gIC8qKiBCb3TDs24gZGUgZGljdGFkbyB2b3rihpJ0ZXh0byAoU3BlZWNoUmVjb2duaXRpb24pLiAqL1xuICByZWFkb25seSBzaG93RGljdGF0aW9uID0gaW5wdXQ8Ym9vbGVhbj4odHJ1ZSk7XG4gIC8qKiBCb3TDs24gZGUgbWVuc2FqZSBkZSB2b3ogKGdyYWJhciBjbGlwIGRlIGF1ZGlvKS4gKi9cbiAgcmVhZG9ubHkgc2hvd1ZvaWNlTWVzc2FnZSA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcblxuICByZWFkb25seSBzZW5kTWVzc2FnZSA9IG91dHB1dDxDaGF0Q29tcG9zZXJTZW5kRXZlbnQ+KCk7XG4gIHJlYWRvbmx5IGxvYWRNb3JlID0gb3V0cHV0PHZvaWQ+KCk7XG4gIHJlYWRvbmx5IHJlYWN0aW9uQ2xpY2sgPSBvdXRwdXQ8eyBtc2dJZDogc3RyaW5nOyB0b2tlbjogc3RyaW5nIH0+KCk7XG4gIHJlYWRvbmx5IGRlbGV0ZU1lc3NhZ2UgPSBvdXRwdXQ8c3RyaW5nPigpO1xuICByZWFkb25seSByZXBseVRvID0gb3V0cHV0PHN0cmluZz4oKTtcbiAgcmVhZG9ubHkgZWRpdE1lc3NhZ2UgPSBvdXRwdXQ8c3RyaW5nPigpO1xuICByZWFkb25seSB0eXBpbmcgPSBvdXRwdXQ8dm9pZD4oKTtcbiAgcmVhZG9ubHkgdm9pY2UgPSBvdXRwdXQ8dm9pZD4oKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IG1zZ3NFbCA9IHZpZXdDaGlsZDxFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50Pj4oJ21zZ3MnKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcmVwbHlpbmdUbyA9IHNpZ25hbDxNZXNzYWdlUmVwbHlUbyB8IG51bGw+KG51bGwpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYXRCb3R0b20gPSBzaWduYWwodHJ1ZSk7XG4gIHByb3RlY3RlZCByZWFkb25seSBoYXNOZXcgPSBzaWduYWwoZmFsc2UpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBsb2NhbGUgPSBjb21wdXRlZCgoKSA9PiAodGhpcy5pMThuLmxhbmcoKSA9PT0gJ2VuJyA/ICdlbi1VUycgOiAnZXMtQ0wnKSk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5pMThuLnJlZ2lzdGVyRGVmYXVsdHMoJ0NoYXRXaW5kb3cnLCBDSEFUX1dJTkRPV19JMThOKTtcblxuICAgIC8vIEF1dG8tc2Nyb2xsIGFsIGZvbmRvIGN1YW5kbyBsbGVnYW4gbWVuc2FqZXMgeSBlbCB1c3VhcmlvIHlhIGVzdGFiYSBhYmFqb1xuICAgIC8vIChvIGVsIMO6bHRpbW8gbWVuc2FqZSBlcyBwcm9waW8pLiBTaSBlc3TDoSBsZXllbmRvIGFycmliYSwgbWFyY2EgXCJudWV2b3NcIi5cbiAgICBsZXQgcHJldkNvdW50ID0gMDtcbiAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgY29uc3Qgcm93cyA9IHRoaXMucm93cygpO1xuICAgICAgY29uc3QgY291bnQgPSByb3dzLmxlbmd0aDtcbiAgICAgIGlmIChjb3VudCA9PT0gcHJldkNvdW50KSByZXR1cm47XG4gICAgICBjb25zdCBncmV3ID0gY291bnQgPiBwcmV2Q291bnQ7XG4gICAgICBwcmV2Q291bnQgPSBjb3VudDtcbiAgICAgIGNvbnN0IGxhc3QgPSB0aGlzLm1lc3NhZ2VzKClbdGhpcy5tZXNzYWdlcygpLmxlbmd0aCAtIDFdO1xuICAgICAgY29uc3QgbWluZSA9IGxhc3Q/LmlzTWluZSA/PyBmYWxzZTtcbiAgICAgIGlmICh0aGlzLmF0Qm90dG9tKCkgfHwgbWluZSkge1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuc2Nyb2xsVG9Cb3R0b20oZmFsc2UpLCAwKTtcbiAgICAgIH0gZWxzZSBpZiAoZ3Jldykge1xuICAgICAgICB0aGlzLmhhc05ldy5zZXQodHJ1ZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcm93cyA9IGNvbXB1dGVkPENoYXRSb3dbXT4oKCkgPT4ge1xuICAgIGNvbnN0IG1zZ3MgPSB0aGlzLm1lc3NhZ2VzKCk7XG4gICAgaWYgKG1zZ3MubGVuZ3RoID09PSAwKSByZXR1cm4gW107XG4gICAgY29uc3QgbGFiZWxzID0ge1xuICAgICAgdG9kYXk6IHRoaXMuaTE4bi50KCd0b2RheScsICdfZ2xvYmFsJyksXG4gICAgICB5ZXN0ZXJkYXk6IHRoaXMuaTE4bi50KCd5ZXN0ZXJkYXknLCAnX2dsb2JhbCcpLFxuICAgIH07XG4gICAgY29uc3Qgb3V0OiBDaGF0Um93W10gPSBbXTtcbiAgICBsZXQgcHJldkRheSA9ICcnO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbXNncy5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgbSA9IG1zZ3NbaV07XG4gICAgICBjb25zdCBkID0gbS5jcmVhdGVkQXQgaW5zdGFuY2VvZiBEYXRlID8gbS5jcmVhdGVkQXQgOiBuZXcgRGF0ZShtLmNyZWF0ZWRBdCk7XG4gICAgICBjb25zdCBkYXkgPSBgJHtkLmdldEZ1bGxZZWFyKCl9LSR7ZC5nZXRNb250aCgpfS0ke2QuZ2V0RGF0ZSgpfWA7XG4gICAgICBjb25zdCBuZXdEYXkgPSBkYXkgIT09IHByZXZEYXk7XG4gICAgICBpZiAobmV3RGF5KSB7XG4gICAgICAgIG91dC5wdXNoKHsga2luZDogJ2RhdGUnLCBpZDogJ2RhdGUtJyArIGRheSwgbGFiZWw6IGZvcm1hdERhdGVTZXBhcmF0b3IoZCwgdGhpcy5sb2NhbGUoKSwgbGFiZWxzKSB9KTtcbiAgICAgICAgcHJldkRheSA9IGRheTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHByZXYgPSBtc2dzW2kgLSAxXTtcbiAgICAgIGNvbnN0IG5leHQgPSBtc2dzW2kgKyAxXTtcbiAgICAgIGNvbnN0IGZpcnN0SW5Hcm91cCA9IG5ld0RheSB8fCAhcHJldiB8fCBwcmV2LnNlbmRlcklkICE9PSBtLnNlbmRlcklkO1xuICAgICAgY29uc3QgbmV4dERheSA9IG5leHRcbiAgICAgICAgPyBgJHtuZXcgRGF0ZShuZXh0LmNyZWF0ZWRBdCkuZ2V0RnVsbFllYXIoKX0tJHtuZXcgRGF0ZShuZXh0LmNyZWF0ZWRBdCkuZ2V0TW9udGgoKX0tJHtuZXcgRGF0ZShuZXh0LmNyZWF0ZWRBdCkuZ2V0RGF0ZSgpfWBcbiAgICAgICAgOiAnJztcbiAgICAgIGNvbnN0IGxhc3RJbkdyb3VwID0gIW5leHQgfHwgbmV4dC5zZW5kZXJJZCAhPT0gbS5zZW5kZXJJZCB8fCBuZXh0RGF5ICE9PSBkYXk7XG4gICAgICBvdXQucHVzaCh7XG4gICAgICAgIGtpbmQ6ICdtc2cnLFxuICAgICAgICBpZDogbS5tc2dJZCxcbiAgICAgICAgbXNnOiBtLFxuICAgICAgICBzaG93TmFtZTogZmlyc3RJbkdyb3VwICYmICFtLmlzTWluZSxcbiAgICAgICAgc2hvd0F2YXRhcjogbGFzdEluR3JvdXAgJiYgIW0uaXNNaW5lLFxuICAgICAgICB0YWlsOiBsYXN0SW5Hcm91cCxcbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gb3V0O1xuICB9KTtcblxuICBwcm90ZWN0ZWQgb25TY3JvbGwoKTogdm9pZCB7XG4gICAgY29uc3QgZWwgPSB0aGlzLm1zZ3NFbCgpPy5uYXRpdmVFbGVtZW50O1xuICAgIGlmICghZWwpIHJldHVybjtcbiAgICBjb25zdCBuZWFyQm90dG9tID0gZWwuc2Nyb2xsSGVpZ2h0IC0gZWwuc2Nyb2xsVG9wIC0gZWwuY2xpZW50SGVpZ2h0IDwgODA7XG4gICAgdGhpcy5hdEJvdHRvbS5zZXQobmVhckJvdHRvbSk7XG4gICAgaWYgKG5lYXJCb3R0b20pIHRoaXMuaGFzTmV3LnNldChmYWxzZSk7XG4gICAgaWYgKGVsLnNjcm9sbFRvcCA8IDQwKSB0aGlzLmxvYWRNb3JlLmVtaXQoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzY3JvbGxUb0JvdHRvbShzbW9vdGg6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBjb25zdCBlbCA9IHRoaXMubXNnc0VsKCk/Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgaWYgKCFlbCkgcmV0dXJuO1xuICAgIGVsLnNjcm9sbFRvKHsgdG9wOiBlbC5zY3JvbGxIZWlnaHQsIGJlaGF2aW9yOiBzbW9vdGggPyAnc21vb3RoJyA6ICdhdXRvJyB9KTtcbiAgICB0aGlzLmF0Qm90dG9tLnNldCh0cnVlKTtcbiAgICB0aGlzLmhhc05ldy5zZXQoZmFsc2UpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uU2VuZChldmVudDogQ2hhdENvbXBvc2VyU2VuZEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5zZW5kTWVzc2FnZS5lbWl0KGV2ZW50KTtcbiAgICB0aGlzLnJlcGx5aW5nVG8uc2V0KG51bGwpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uQWN0aW9uKGV2ZW50OiBNZXNzYWdlQnViYmxlQWN0aW9uKTogdm9pZCB7XG4gICAgc3dpdGNoIChldmVudC50eXBlKSB7XG4gICAgICBjYXNlICdyZXBseSc6IHtcbiAgICAgICAgY29uc3QgbSA9IHRoaXMubWVzc2FnZXMoKS5maW5kKHggPT4geC5tc2dJZCA9PT0gZXZlbnQubXNnSWQpO1xuICAgICAgICBpZiAobSkge1xuICAgICAgICAgIHRoaXMucmVwbHlpbmdUby5zZXQoeyBtc2dJZDogbS5tc2dJZCwgc2VuZGVyTmFtZTogbS5zZW5kZXJOYW1lLCBib2R5OiBtLmJvZHkgfSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5yZXBseVRvLmVtaXQoZXZlbnQubXNnSWQpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgJ2VkaXQnOlxuICAgICAgICB0aGlzLmVkaXRNZXNzYWdlLmVtaXQoZXZlbnQubXNnSWQpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2RlbGV0ZSc6XG4gICAgICAgIHRoaXMuZGVsZXRlTWVzc2FnZS5lbWl0KGV2ZW50Lm1zZ0lkKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdyZWFjdCc6XG4gICAgICAgIHRoaXMucmVhY3Rpb25DbGljay5lbWl0KHsgbXNnSWQ6IGV2ZW50Lm1zZ0lkLCB0b2tlbjogZXZlbnQudG9rZW4gPz8gJ/CfkY0nIH0pO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICB0KGtleTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pMThuLnQoa2V5LCAnQ2hhdFdpbmRvdycpO1xuICB9XG59XG4iXX0=
298
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC13aW5kb3cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9jaGF0LXdpbmRvdy9jaGF0LXdpbmRvdy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEgsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXRFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVyRSxPQUFPLEVBQUUsc0JBQXNCLEVBQXVCLE1BQU0seURBQXlELENBQUM7QUFFdEgsT0FBTyxFQUFFLHFCQUFxQixFQUF5QixNQUFNLHVEQUF1RCxDQUFDO0FBQ3JILE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDZEQUE2RCxDQUFDOztBQUV2RyxRQUFRLENBQUMsRUFBRSxnQkFBZ0IsRUFBRSxrQkFBa0IsRUFBRSxDQUFDLENBQUM7QUFFbkQsTUFBTSxnQkFBZ0IsR0FBRztJQUN2QixFQUFFLEVBQUU7UUFDRixrQkFBa0IsRUFBRSxnQ0FBZ0M7UUFDcEQsT0FBTyxFQUFFLHNCQUFzQjtRQUMvQixVQUFVLEVBQUUsMENBQTBDO1FBQ3RELFdBQVcsRUFBRSxpQkFBaUI7S0FDL0I7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QUksQ0FBQyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7Z0JBQzVFLE1BQU07UUFDVixDQUFDO0lBQ0gsQ0FBQztJQUVELENBQUMsQ0FBQyxHQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDeEMsQ0FBQzsrR0E3SVUsbUJBQW1CO21HQUFuQixtQkFBbUIsdXVEQTFKcEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EwRFQsZ2xEQTNEUyxZQUFZLCtCQUFFLE9BQU8sMkpBQUUsc0JBQXNCLGdLQUFFLHFCQUFxQixnT0FBRSx3QkFBd0I7OzRGQTJKN0YsbUJBQW1CO2tCQTlKL0IsU0FBUzsrQkFDRSxpQkFBaUIsY0FDZixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLHFCQUFxQixFQUFFLHdCQUF3QixDQUFDLFlBQy9GOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMERUIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBjb21wdXRlZCwgZWZmZWN0LCBpbmplY3QsIGlucHV0LCBvdXRwdXQsIHNpZ25hbCwgdmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSW9uSWNvbiB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyL3N0YW5kYWxvbmUnO1xuaW1wb3J0IHsgYWRkSWNvbnMgfSBmcm9tICdpb25pY29ucyc7XG5pbXBvcnQgeyBhcnJvd0Rvd25PdXRsaW5lLCBjaGF0YnViYmxlc091dGxpbmUgfSBmcm9tICdpb25pY29ucy9pY29ucyc7XG5cbmltcG9ydCB7IEkxOG5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvaTE4bic7XG5pbXBvcnQgeyBmb3JtYXREYXRlU2VwYXJhdG9yIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3V0aWxzL2RhdGV0aW1lJztcbmltcG9ydCB7IE1lc3NhZ2VSZXBseVRvIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvY2hhdC90eXBlcyc7XG5pbXBvcnQgeyBNZXNzYWdlQnViYmxlQ29tcG9uZW50LCBNZXNzYWdlQnViYmxlQWN0aW9uIH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL21lc3NhZ2UtYnViYmxlL21lc3NhZ2UtYnViYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNZXNzYWdlQnViYmxlTWV0YWRhdGEgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvbWVzc2FnZS1idWJibGUvdHlwZXMnO1xuaW1wb3J0IHsgQ2hhdENvbXBvc2VyQ29tcG9uZW50LCBDaGF0Q29tcG9zZXJTZW5kRXZlbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvY2hhdC1jb21wb3Nlci9jaGF0LWNvbXBvc2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUeXBpbmdJbmRpY2F0b3JDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvdHlwaW5nLWluZGljYXRvci90eXBpbmctaW5kaWNhdG9yLmNvbXBvbmVudCc7XG5cbmFkZEljb25zKHsgYXJyb3dEb3duT3V0bGluZSwgY2hhdGJ1YmJsZXNPdXRsaW5lIH0pO1xuXG5jb25zdCBDSEFUX1dJTkRPV19JMThOID0ge1xuICBlczoge1xuICAgIGNvbnZlcnNhdGlvbkNsb3NlZDogJ0VzdGEgY29udmVyc2FjaW9uIGVzdGEgY2VycmFkYScsXG4gICAgbG9hZGluZzogJ0NhcmdhbmRvIG1lbnNhamVzLi4uJyxcbiAgICBub01lc3NhZ2VzOiAnQXVuIG5vIGhheSBtZW5zYWplcy4gRXNjcmliZSBlbCBwcmltZXJvLicsXG4gICAgbmV3TWVzc2FnZXM6ICdNZW5zYWplcyBudWV2b3MnLFxuICB9LFxuICBlbjoge1xuICAgIGNvbnZlcnNhdGlvbkNsb3NlZDogJ1RoaXMgY29udmVyc2F0aW9uIGlzIGNsb3NlZCcsXG4gICAgbG9hZGluZzogJ0xvYWRpbmcgbWVzc2FnZXMuLi4nLFxuICAgIG5vTWVzc2FnZXM6ICdObyBtZXNzYWdlcyB5ZXQuIFNlbmQgdGhlIGZpcnN0IG9uZS4nLFxuICAgIG5ld01lc3NhZ2VzOiAnTmV3IG1lc3NhZ2VzJyxcbiAgfSxcbn07XG5cbnR5cGUgQ2hhdFJvdyA9XG4gIHwgeyBraW5kOiAnZGF0ZSc7IGlkOiBzdHJpbmc7IGxhYmVsOiBzdHJpbmcgfVxuICB8IHtcbiAgICAgIGtpbmQ6ICdtc2cnO1xuICAgICAgaWQ6IHN0cmluZztcbiAgICAgIG1zZzogTWVzc2FnZUJ1YmJsZU1ldGFkYXRhO1xuICAgICAgc2hvd05hbWU6IGJvb2xlYW47XG4gICAgICBzaG93QXZhdGFyOiBib29sZWFuO1xuICAgICAgdGFpbDogYm9vbGVhbjtcbiAgICB9O1xuXG4vKipcbiAqIHZhbC1jaGF0LXdpbmRvdyDigJQgdmVudGFuYSBkZSBjaGF0IGNvbXBsZXRhIChzaWduYWwgaW5wdXRzKS5cbiAqXG4gKiBBZ3J1cGEgbWVuc2FqZXMgY29uc2VjdXRpdm9zIGRlbCBtaXNtbyBlbWlzb3IgeSBwb3IgZMOtYSAoc2VwYXJhZG9yZXMgc3RpY2t5KSxcbiAqIG11ZXN0cmEgYXZhdGFyL25vbWJyZSBzb2xvIGVuIGxvcyBib3JkZXMgZGVsIGdydXBvLCBzY3JvbGwtdG8tYm90dG9tIGludGVsaWdlbnRlXG4gKiAoYXV0by1zY3JvbGwgc2kgZXN0w6FzIGFiYWpvLCBwaWxsIFwibWVuc2FqZXMgbnVldm9zXCIgc2kgZXN0w6FzIGxleWVuZG8gYXJyaWJhKSxcbiAqIGNvbXBvc2VyIG1vZGVybm8gY29uIGNvbnRleHRvIGRlIHJlc3B1ZXN0YSwgeSB0eXBpbmcgaW5kaWNhdG9yLlxuICpcbiAqIEFQSSBww7pibGljYSBlc3RhYmxlIChjb25zdW1pZGEgcG9yIHRocmVhZC1wYW5lbCB5IHNob3djYXNlKTogaW5wdXRzIGNvbnZJZCxcbiAqIG1lc3NhZ2VzLCBjdXJyZW50VXNlcklkLCBpc09wZW4sIHR5cGluZ1VzZXJzLCBpc0xvYWRpbmc7IG91dHB1dHMgc2VuZE1lc3NhZ2UsXG4gKiBsb2FkTW9yZSwgcmVhY3Rpb25DbGljaywgZGVsZXRlTWVzc2FnZSwgcmVwbHlUbyAoKyBlZGl0TWVzc2FnZS9hdHRhY2gvdm9pY2UgbnVldm9zKS5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLWNoYXQtd2luZG93JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgSW9uSWNvbiwgTWVzc2FnZUJ1YmJsZUNvbXBvbmVudCwgQ2hhdENvbXBvc2VyQ29tcG9uZW50LCBUeXBpbmdJbmRpY2F0b3JDb21wb25lbnRdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJjaGF0XCI+XG4gICAgICA8ZGl2ICNtc2dzIGNsYXNzPVwibWVzc2FnZXNcIiAoc2Nyb2xsKT1cIm9uU2Nyb2xsKClcIj5cbiAgICAgICAgQGlmIChpc0xvYWRpbmcoKSkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdGF0ZVwiPlxuICAgICAgICAgICAgPHNwYW4+e3sgdCgnbG9hZGluZycpIH19PC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9IEBlbHNlIGlmIChyb3dzKCkubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInN0YXRlIGVtcHR5XCI+XG4gICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cImNoYXRidWJibGVzLW91dGxpbmVcIiBhcmlhLWhpZGRlbj1cInRydWVcIiAvPlxuICAgICAgICAgICAgPHNwYW4+e3sgdCgnbm9NZXNzYWdlcycpIH19PC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICBAZm9yIChyb3cgb2Ygcm93cygpOyB0cmFjayByb3cuaWQpIHtcbiAgICAgICAgICAgIEBpZiAocm93LmtpbmQgPT09ICdkYXRlJykge1xuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF0ZS1zZXBcIj5cbiAgICAgICAgICAgICAgICA8c3Bhbj57eyByb3cubGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgIDx2YWwtbWVzc2FnZS1idWJibGVcbiAgICAgICAgICAgICAgICBbbXNnXT1cInJvdy5tc2dcIlxuICAgICAgICAgICAgICAgIFtzaG93TmFtZV09XCJyb3cuc2hvd05hbWVcIlxuICAgICAgICAgICAgICAgIFtzaG93QXZhdGFyXT1cInJvdy5zaG93QXZhdGFyXCJcbiAgICAgICAgICAgICAgICBbdGFpbF09XCJyb3cudGFpbFwiXG4gICAgICAgICAgICAgICAgW2xvY2FsZV09XCJsb2NhbGUoKVwiXG4gICAgICAgICAgICAgICAgW2Nhbk1vZGVyYXRlXT1cImNhbk1vZGVyYXRlKClcIlxuICAgICAgICAgICAgICAgIChhY3Rpb24pPVwib25BY3Rpb24oJGV2ZW50KVwiXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIDx2YWwtdHlwaW5nLWluZGljYXRvciBbdHlwaW5nVXNlcnNdPVwidHlwaW5nVXNlcnMoKVwiIC8+XG4gICAgICA8L2Rpdj5cblxuICAgICAgQGlmICghYXRCb3R0b20oKSkge1xuICAgICAgICA8YnV0dG9uIGNsYXNzPVwic2Nyb2xsLWRvd25cIiAoY2xpY2spPVwic2Nyb2xsVG9Cb3R0b20odHJ1ZSlcIiBhcmlhLWxhYmVsPVwic2Nyb2xsXCI+XG4gICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJhcnJvdy1kb3duLW91dGxpbmVcIiBhcmlhLWhpZGRlbj1cInRydWVcIiAvPlxuICAgICAgICAgIEBpZiAoaGFzTmV3KCkpIHtcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZG90XCI+PC9zcGFuPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICB9XG5cbiAgICAgIEBpZiAoaXNPcGVuKCkpIHtcbiAgICAgICAgPHZhbC1jaGF0LWNvbXBvc2VyXG4gICAgICAgICAgW3JlcGx5aW5nVG9dPVwicmVwbHlpbmdUbygpXCJcbiAgICAgICAgICBbc2hvd0F0dGFjaF09XCJzaG93QXR0YWNoKClcIlxuICAgICAgICAgIFtzaG93TWljXT1cInNob3dEaWN0YXRpb24oKVwiXG4gICAgICAgICAgW3Nob3dWb2ljZU1lc3NhZ2VdPVwic2hvd1ZvaWNlTWVzc2FnZSgpXCJcbiAgICAgICAgICAoc2VuZCk9XCJvblNlbmQoJGV2ZW50KVwiXG4gICAgICAgICAgKHR5cGluZyk9XCJ0eXBpbmcuZW1pdCgpXCJcbiAgICAgICAgICAodm9pY2UpPVwidm9pY2UuZW1pdCgpXCJcbiAgICAgICAgICAoY2FuY2VsUmVwbHkpPVwicmVwbHlpbmdUby5zZXQobnVsbClcIlxuICAgICAgICAvPlxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjbG9zZWQtYmFubmVyXCI+e3sgdCgnY29udmVyc2F0aW9uQ2xvc2VkJykgfX08L2Rpdj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVzOiBbXG4gICAgYFxuICAgICAgOmhvc3Qge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICB9XG4gICAgICAvKiBwb3NpdGlvbjphYnNvbHV0ZSArIGluc2V0OjAgZGEgYWwgY29udGVuZWRvciB1bmEgYWx0dXJhIERFRklOSURBICg9IGxhIGRlbFxuICAgICAgICAgaG9zdCksIHNpbiBkZXBlbmRlciBkZSBoZWlnaHQ6MTAwJSBxdWUgbm8gcmVzdWVsdmUgZW4gY2FkZW5hcyBmbGV4L3NoYWRvdy5cbiAgICAgICAgIE1lbnNhamVzIHNjcm9sbGVhbjsgZWwgY29tcG9zZXIgKGZsZXg6bm9uZSkgcXVlZGEgYW5jbGFkbyBhYmFqbyBzaWVtcHJlLiAqL1xuICAgICAgLmNoYXQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS12YWwtY2hhdC1iYWNrZ3JvdW5kLCB2YXIoLS1pb24tYmFja2dyb3VuZC1jb2xvciwgI2ZmZikpO1xuICAgICAgfVxuICAgICAgLm1lc3NhZ2VzIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgcGFkZGluZzogdmFyKC0tdmFsLWNoYXQtbWVzc2FnZXMtcGFkZGluZywgMThweCAxNnB4IDEycHgpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDJweDtcbiAgICAgIH1cbiAgICAgIC5zdGF0ZSB7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiA4cHg7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItZGFyaywgIzkyOTQ5Yyk7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDI0cHg7XG4gICAgICB9XG4gICAgICAuc3RhdGUuZW1wdHkgaW9uLWljb24ge1xuICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgfVxuICAgICAgLmRhdGUtc2VwIHtcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgdG9wOiA0cHg7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDhweCAwO1xuICAgICAgfVxuICAgICAgLmRhdGUtc2VwIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItZGFyaywgIzkyOTQ5Yyk7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXZhbC1jaGF0LWRhdGUtYmFja2dyb3VuZCwgcmdiYSgxMjcsIDEyNywgMTI3LCAwLjA4KSk7XG4gICAgICAgIHBhZGRpbmc6IDNweCAxMnB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDRweCk7XG4gICAgICB9XG4gICAgICAuc2Nyb2xsLWRvd24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAxNHB4O1xuICAgICAgICBib3R0b206IDg0cHg7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taW9uLWJvcmRlci1jb2xvciwgcmdiYSgwLCAwLCAwLCAwLjEpKTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taW9uLWNhcmQtYmFja2dyb3VuZCwgdmFyKC0taW9uLWJhY2tncm91bmQtY29sb3IsICNmZmYpKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1kYXJrLCAjOTI5NDljKTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgfVxuICAgICAgLnNjcm9sbC1kb3duIC5kb3Qge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1pb24tY2FyZC1iYWNrZ3JvdW5kLCAjZmZmKTtcbiAgICAgIH1cbiAgICAgIC5jbG9zZWQtYmFubmVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAxNHB4O1xuICAgICAgICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLWRhcmssICM5Mjk0OWMpO1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgfVxuICAgIGAsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIENoYXRXaW5kb3dDb21wb25lbnQge1xuICBwcml2YXRlIGkxOG4gPSBpbmplY3QoSTE4blNlcnZpY2UpO1xuXG4gIHJlYWRvbmx5IGNvbnZJZCA9IGlucHV0PHN0cmluZz4oJycpO1xuICByZWFkb25seSBtZXNzYWdlcyA9IGlucHV0PE1lc3NhZ2VCdWJibGVNZXRhZGF0YVtdPihbXSk7XG4gIHJlYWRvbmx5IGN1cnJlbnRVc2VySWQgPSBpbnB1dDxzdHJpbmc+KCcnKTtcbiAgcmVhZG9ubHkgaXNPcGVuID0gaW5wdXQ8Ym9vbGVhbj4odHJ1ZSk7XG4gIHJlYWRvbmx5IHR5cGluZ1VzZXJzID0gaW5wdXQ8c3RyaW5nW10+KFtdKTtcbiAgcmVhZG9ubHkgaXNMb2FkaW5nID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICAvKiogT3duZXIvbW9kZXJhdG9yIGRlbCBjaGF0OiBoYWJpbGl0YSBib3JyYXIgbWVuc2FqZXMgYWplbm9zIChtb2RlcmFjaW9uKS4gKi9cbiAgcmVhZG9ubHkgY2FuTW9kZXJhdGUgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG4gIC8vIEZlYXR1cmUtZmxhZ3MgZGVsIGNvbXBvc2VyIOKAlCBjYWRhIGFwcC9jb25zdW1pZG9yIGRlY2lkZSBxdcOpIGhhYmlsaXRhci5cbiAgLyoqIEJvdMOzbiBkZSBhZGp1bnRhciBhcmNoaXZvcy9pbcOhZ2VuZXMuICovXG4gIHJlYWRvbmx5IHNob3dBdHRhY2ggPSBpbnB1dDxib29sZWFuPih0cnVlKTtcbiAgLyoqIEJvdMOzbiBkZSBkaWN0YWRvIHZveuKGknRleHRvIChTcGVlY2hSZWNvZ25pdGlvbikuICovXG4gIHJlYWRvbmx5IHNob3dEaWN0YXRpb24gPSBpbnB1dDxib29sZWFuPih0cnVlKTtcbiAgLyoqIEJvdMOzbiBkZSBtZW5zYWplIGRlIHZveiAoZ3JhYmFyIGNsaXAgZGUgYXVkaW8pLiAqL1xuICByZWFkb25seSBzaG93Vm9pY2VNZXNzYWdlID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIHJlYWRvbmx5IHNlbmRNZXNzYWdlID0gb3V0cHV0PENoYXRDb21wb3NlclNlbmRFdmVudD4oKTtcbiAgcmVhZG9ubHkgbG9hZE1vcmUgPSBvdXRwdXQ8dm9pZD4oKTtcbiAgcmVhZG9ubHkgcmVhY3Rpb25DbGljayA9IG91dHB1dDx7IG1zZ0lkOiBzdHJpbmc7IHRva2VuOiBzdHJpbmcgfT4oKTtcbiAgcmVhZG9ubHkgZGVsZXRlTWVzc2FnZSA9IG91dHB1dDxzdHJpbmc+KCk7XG4gIHJlYWRvbmx5IHJlcGx5VG8gPSBvdXRwdXQ8c3RyaW5nPigpO1xuICByZWFkb25seSBlZGl0TWVzc2FnZSA9IG91dHB1dDxzdHJpbmc+KCk7XG4gIHJlYWRvbmx5IHR5cGluZyA9IG91dHB1dDx2b2lkPigpO1xuICByZWFkb25seSB2b2ljZSA9IG91dHB1dDx2b2lkPigpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbXNnc0VsID0gdmlld0NoaWxkPEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+PignbXNncycpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSByZXBseWluZ1RvID0gc2lnbmFsPE1lc3NhZ2VSZXBseVRvIHwgbnVsbD4obnVsbCk7XG4gIHByb3RlY3RlZCByZWFkb25seSBhdEJvdHRvbSA9IHNpZ25hbCh0cnVlKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGhhc05ldyA9IHNpZ25hbChmYWxzZSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGxvY2FsZSA9IGNvbXB1dGVkKCgpID0+ICh0aGlzLmkxOG4ubGFuZygpID09PSAnZW4nID8gJ2VuLVVTJyA6ICdlcy1DTCcpKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmkxOG4ucmVnaXN0ZXJEZWZhdWx0cygnQ2hhdFdpbmRvdycsIENIQVRfV0lORE9XX0kxOE4pO1xuXG4gICAgLy8gQXV0by1zY3JvbGwgYWwgZm9uZG8gY3VhbmRvIGxsZWdhbiBtZW5zYWplcyB5IGVsIHVzdWFyaW8geWEgZXN0YWJhIGFiYWpvXG4gICAgLy8gKG8gZWwgw7psdGltbyBtZW5zYWplIGVzIHByb3BpbykuIFNpIGVzdMOhIGxleWVuZG8gYXJyaWJhLCBtYXJjYSBcIm51ZXZvc1wiLlxuICAgIGxldCBwcmV2Q291bnQgPSAwO1xuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICBjb25zdCByb3dzID0gdGhpcy5yb3dzKCk7XG4gICAgICBjb25zdCBjb3VudCA9IHJvd3MubGVuZ3RoO1xuICAgICAgaWYgKGNvdW50ID09PSBwcmV2Q291bnQpIHJldHVybjtcbiAgICAgIGNvbnN0IGdyZXcgPSBjb3VudCA+IHByZXZDb3VudDtcbiAgICAgIHByZXZDb3VudCA9IGNvdW50O1xuICAgICAgY29uc3QgbGFzdCA9IHRoaXMubWVzc2FnZXMoKVt0aGlzLm1lc3NhZ2VzKCkubGVuZ3RoIC0gMV07XG4gICAgICBjb25zdCBtaW5lID0gbGFzdD8uaXNNaW5lID8/IGZhbHNlO1xuICAgICAgaWYgKHRoaXMuYXRCb3R0b20oKSB8fCBtaW5lKSB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5zY3JvbGxUb0JvdHRvbShmYWxzZSksIDApO1xuICAgICAgfSBlbHNlIGlmIChncmV3KSB7XG4gICAgICAgIHRoaXMuaGFzTmV3LnNldCh0cnVlKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCByZWFkb25seSByb3dzID0gY29tcHV0ZWQ8Q2hhdFJvd1tdPigoKSA9PiB7XG4gICAgY29uc3QgbXNncyA9IHRoaXMubWVzc2FnZXMoKTtcbiAgICBpZiAobXNncy5sZW5ndGggPT09IDApIHJldHVybiBbXTtcbiAgICBjb25zdCBsYWJlbHMgPSB7XG4gICAgICB0b2RheTogdGhpcy5pMThuLnQoJ3RvZGF5JywgJ19nbG9iYWwnKSxcbiAgICAgIHllc3RlcmRheTogdGhpcy5pMThuLnQoJ3llc3RlcmRheScsICdfZ2xvYmFsJyksXG4gICAgfTtcbiAgICBjb25zdCBvdXQ6IENoYXRSb3dbXSA9IFtdO1xuICAgIGxldCBwcmV2RGF5ID0gJyc7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBtc2dzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCBtID0gbXNnc1tpXTtcbiAgICAgIGNvbnN0IGQgPSBtLmNyZWF0ZWRBdCBpbnN0YW5jZW9mIERhdGUgPyBtLmNyZWF0ZWRBdCA6IG5ldyBEYXRlKG0uY3JlYXRlZEF0KTtcbiAgICAgIGNvbnN0IGRheSA9IGAke2QuZ2V0RnVsbFllYXIoKX0tJHtkLmdldE1vbnRoKCl9LSR7ZC5nZXREYXRlKCl9YDtcbiAgICAgIGNvbnN0IG5ld0RheSA9IGRheSAhPT0gcHJldkRheTtcbiAgICAgIGlmIChuZXdEYXkpIHtcbiAgICAgICAgb3V0LnB1c2goeyBraW5kOiAnZGF0ZScsIGlkOiAnZGF0ZS0nICsgZGF5LCBsYWJlbDogZm9ybWF0RGF0ZVNlcGFyYXRvcihkLCB0aGlzLmxvY2FsZSgpLCBsYWJlbHMpIH0pO1xuICAgICAgICBwcmV2RGF5ID0gZGF5O1xuICAgICAgfVxuICAgICAgY29uc3QgcHJldiA9IG1zZ3NbaSAtIDFdO1xuICAgICAgY29uc3QgbmV4dCA9IG1zZ3NbaSArIDFdO1xuICAgICAgY29uc3QgZmlyc3RJbkdyb3VwID0gbmV3RGF5IHx8ICFwcmV2IHx8IHByZXYuc2VuZGVySWQgIT09IG0uc2VuZGVySWQ7XG4gICAgICBjb25zdCBuZXh0RGF5ID0gbmV4dFxuICAgICAgICA/IGAke25ldyBEYXRlKG5leHQuY3JlYXRlZEF0KS5nZXRGdWxsWWVhcigpfS0ke25ldyBEYXRlKG5leHQuY3JlYXRlZEF0KS5nZXRNb250aCgpfS0ke25ldyBEYXRlKG5leHQuY3JlYXRlZEF0KS5nZXREYXRlKCl9YFxuICAgICAgICA6ICcnO1xuICAgICAgY29uc3QgbGFzdEluR3JvdXAgPSAhbmV4dCB8fCBuZXh0LnNlbmRlcklkICE9PSBtLnNlbmRlcklkIHx8IG5leHREYXkgIT09IGRheTtcbiAgICAgIG91dC5wdXNoKHtcbiAgICAgICAga2luZDogJ21zZycsXG4gICAgICAgIGlkOiBtLm1zZ0lkLFxuICAgICAgICBtc2c6IG0sXG4gICAgICAgIHNob3dOYW1lOiBmaXJzdEluR3JvdXAgJiYgIW0uaXNNaW5lLFxuICAgICAgICBzaG93QXZhdGFyOiBsYXN0SW5Hcm91cCAmJiAhbS5pc01pbmUsXG4gICAgICAgIHRhaWw6IGxhc3RJbkdyb3VwLFxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBvdXQ7XG4gIH0pO1xuXG4gIHByb3RlY3RlZCBvblNjcm9sbCgpOiB2b2lkIHtcbiAgICBjb25zdCBlbCA9IHRoaXMubXNnc0VsKCk/Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgaWYgKCFlbCkgcmV0dXJuO1xuICAgIGNvbnN0IG5lYXJCb3R0b20gPSBlbC5zY3JvbGxIZWlnaHQgLSBlbC5zY3JvbGxUb3AgLSBlbC5jbGllbnRIZWlnaHQgPCA4MDtcbiAgICB0aGlzLmF0Qm90dG9tLnNldChuZWFyQm90dG9tKTtcbiAgICBpZiAobmVhckJvdHRvbSkgdGhpcy5oYXNOZXcuc2V0KGZhbHNlKTtcbiAgICBpZiAoZWwuc2Nyb2xsVG9wIDwgNDApIHRoaXMubG9hZE1vcmUuZW1pdCgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHNjcm9sbFRvQm90dG9tKHNtb290aDogYm9vbGVhbik6IHZvaWQge1xuICAgIGNvbnN0IGVsID0gdGhpcy5tc2dzRWwoKT8ubmF0aXZlRWxlbWVudDtcbiAgICBpZiAoIWVsKSByZXR1cm47XG4gICAgZWwuc2Nyb2xsVG8oeyB0b3A6IGVsLnNjcm9sbEhlaWdodCwgYmVoYXZpb3I6IHNtb290aCA/ICdzbW9vdGgnIDogJ2F1dG8nIH0pO1xuICAgIHRoaXMuYXRCb3R0b20uc2V0KHRydWUpO1xuICAgIHRoaXMuaGFzTmV3LnNldChmYWxzZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb25TZW5kKGV2ZW50OiBDaGF0Q29tcG9zZXJTZW5kRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLnNlbmRNZXNzYWdlLmVtaXQoZXZlbnQpO1xuICAgIHRoaXMucmVwbHlpbmdUby5zZXQobnVsbCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb25BY3Rpb24oZXZlbnQ6IE1lc3NhZ2VCdWJibGVBY3Rpb24pOiB2b2lkIHtcbiAgICBzd2l0Y2ggKGV2ZW50LnR5cGUpIHtcbiAgICAgIGNhc2UgJ3JlcGx5Jzoge1xuICAgICAgICBjb25zdCBtID0gdGhpcy5tZXNzYWdlcygpLmZpbmQoeCA9PiB4Lm1zZ0lkID09PSBldmVudC5tc2dJZCk7XG4gICAgICAgIGlmIChtKSB7XG4gICAgICAgICAgdGhpcy5yZXBseWluZ1RvLnNldCh7IG1zZ0lkOiBtLm1zZ0lkLCBzZW5kZXJOYW1lOiBtLnNlbmRlck5hbWUsIGJvZHk6IG0uYm9keSB9KTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnJlcGx5VG8uZW1pdChldmVudC5tc2dJZCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSAnZWRpdCc6XG4gICAgICAgIHRoaXMuZWRpdE1lc3NhZ2UuZW1pdChldmVudC5tc2dJZCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnZGVsZXRlJzpcbiAgICAgICAgdGhpcy5kZWxldGVNZXNzYWdlLmVtaXQoZXZlbnQubXNnSWQpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3JlYWN0JzpcbiAgICAgICAgdGhpcy5yZWFjdGlvbkNsaWNrLmVtaXQoeyBtc2dJZDogZXZlbnQubXNnSWQsIHRva2VuOiBldmVudC50b2tlbiA/PyAn8J+RjScgfSk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHQoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmkxOG4udChrZXksICdDaGF0V2luZG93Jyk7XG4gIH1cbn1cbiJdfQ==
@@ -340,7 +340,7 @@ export class MenuComponent {
340
340
  }
341
341
  <ion-header [class.ion-no-border]="true">
342
342
  <ion-toolbar>
343
- <ion-buttons slot="start" style="padding-left: .5rem;">
343
+ <ion-buttons slot="start" class="menu-logo-slot">
344
344
  <val-image
345
345
  [props]="{
346
346
  src: '--main-logo-mini',
@@ -406,7 +406,7 @@ export class MenuComponent {
406
406
  />
407
407
  }
408
408
  </ion-menu>
409
- `, isInline: true, styles: [":host{display:contents}ion-menu{--val-menu-expanded-width: 75%;--val-menu-collapsed-width: 3.5rem;--width: var(--val-menu-expanded-width);--min-width: var(--val-menu-expanded-width);--background: var(--ion-color-light);transition:--width .18s ease,--min-width .18s ease}@media (min-width: 768px){ion-menu{--val-menu-expanded-width: min(40vw, 22rem)}}ion-menu ion-header{background:var(--ion-color-light)}ion-menu ion-content{--background: var(--ion-color-light)}@media (min-width: 1200px){ion-menu.is-desktop-collapsible{--width: var(--val-menu-expanded-width);--min-width: var(--val-menu-expanded-width);--max-width: var(--val-menu-expanded-width)}ion-menu.is-desktop-collapsible .menu-mobile-close{display:none}}@media (min-width: 1200px){ion-menu.is-desktop-collapsed{--width: var(--val-menu-collapsed-width);--min-width: var(--val-menu-collapsed-width);--max-width: var(--val-menu-collapsed-width)}ion-menu.is-desktop-collapsed ion-toolbar{--padding-start: 0;--padding-end: 0}ion-menu.is-desktop-collapsed .menu-close-button{visibility:hidden;opacity:0;pointer-events:none}}.menu-collapse-toggle{display:none}@media (min-width: 1200px){.menu-collapse-toggle{display:inline-flex;--min-width: 44px;--min-height: 44px;width:44px;height:44px;margin:0}.menu-collapse-toggle ion-icon{font-size:1.75rem}}.menu-projected-content{transition:opacity .16s ease,visibility .16s ease}.menu-close-button{display:block;text-align:center;padding:1rem .5rem;background:var(--ion-color-light)}@media (min-width: 1200px){.menu-close-button{display:none}}:host-context(.val-menu-dragging) ion-menu{transition:none}.menu-collapse-footer{display:none}@media (min-width: 1200px){.menu-collapse-footer{display:flex;justify-content:center;padding:.5rem 0;border-top:1px solid var(--ion-color-step-150, rgba(0, 0, 0, .08));background:var(--ion-color-light)}}.menu-edge-swipe-indicator{display:none}@media (min-width: 1200px){.menu-edge-swipe-indicator{display:block;position:absolute;top:0;right:0;width:4px;height:100%;background:transparent;cursor:col-resize;transition:all .15s ease;z-index:100;opacity:0}.menu-edge-swipe-indicator:hover{background:var(--ion-color-primary, #7026df);width:6px;opacity:1}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: IonMenu, selector: "ion-menu", inputs: ["contentId", "disabled", "maxEdgeStart", "menuId", "side", "swipeGesture", "type"] }, { kind: "component", type: IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { kind: "component", type: IonMenuToggle, selector: "ion-menu-toggle", inputs: ["autoHide", "menu"] }, { 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"] }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { 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: ImageComponent, selector: "val-image", inputs: ["props"] }, { kind: "component", type: ButtonComponent, selector: "val-button", inputs: ["preset", "props"], outputs: ["onClick"] }] }); }
409
+ `, isInline: true, styles: [":host{display:contents}ion-menu{--val-menu-expanded-width: 75%;--val-menu-collapsed-width: 3.5rem;--width: var(--val-menu-expanded-width);--min-width: var(--val-menu-expanded-width);--background: var(--ion-color-light);transition:--width .18s ease,--min-width .18s ease}@media (min-width: 768px){ion-menu{--val-menu-expanded-width: min(40vw, 22rem)}}ion-menu ion-header{background:var(--ion-color-light)}ion-menu ion-content{--background: var(--ion-color-light)}ion-menu .menu-logo-slot{padding-left:.5rem}@media (min-width: 1200px){ion-menu.is-desktop-collapsible{--width: var(--val-menu-expanded-width);--min-width: var(--val-menu-expanded-width);--max-width: var(--val-menu-expanded-width)}ion-menu.is-desktop-collapsible .menu-mobile-close{display:none}}@media (min-width: 1200px){ion-menu.is-desktop-collapsed{--width: var(--val-menu-collapsed-width);--min-width: var(--val-menu-collapsed-width);--max-width: var(--val-menu-collapsed-width)}ion-menu.is-desktop-collapsed ion-toolbar{--padding-start: 0;--padding-end: 0}ion-menu.is-desktop-collapsed .menu-logo-slot{width:100%;justify-content:center;padding-left:0;margin:0}ion-menu.is-desktop-collapsed .menu-close-button{visibility:hidden;opacity:0;pointer-events:none}}.menu-collapse-toggle{display:none}@media (min-width: 1200px){.menu-collapse-toggle{display:inline-flex;--min-width: 44px;--min-height: 44px;width:44px;height:44px;margin:0}.menu-collapse-toggle ion-icon{font-size:1.75rem}}.menu-projected-content{transition:opacity .16s ease,visibility .16s ease}.menu-close-button{display:block;text-align:center;padding:1rem .5rem;background:var(--ion-color-light)}@media (min-width: 1200px){.menu-close-button{display:none}}:host-context(.val-menu-dragging) ion-menu{transition:none}.menu-collapse-footer{display:none}@media (min-width: 1200px){.menu-collapse-footer{display:flex;justify-content:center;padding:.5rem 0;border-top:1px solid var(--ion-color-step-150, rgba(0, 0, 0, .08));background:var(--ion-color-light)}}.menu-edge-swipe-indicator{display:none}@media (min-width: 1200px){.menu-edge-swipe-indicator{display:block;position:absolute;top:0;right:0;width:4px;height:100%;background:transparent;cursor:col-resize;transition:all .15s ease;z-index:100;opacity:0}.menu-edge-swipe-indicator:hover{background:var(--ion-color-primary, #7026df);width:6px;opacity:1}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: IonMenu, selector: "ion-menu", inputs: ["contentId", "disabled", "maxEdgeStart", "menuId", "side", "swipeGesture", "type"] }, { kind: "component", type: IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { kind: "component", type: IonMenuToggle, selector: "ion-menu-toggle", inputs: ["autoHide", "menu"] }, { 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"] }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { 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: ImageComponent, selector: "val-image", inputs: ["props"] }, { kind: "component", type: ButtonComponent, selector: "val-button", inputs: ["preset", "props"], outputs: ["onClick"] }] }); }
410
410
  }
411
411
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MenuComponent, decorators: [{
412
412
  type: Component,
@@ -448,7 +448,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
448
448
  }
449
449
  <ion-header [class.ion-no-border]="true">
450
450
  <ion-toolbar>
451
- <ion-buttons slot="start" style="padding-left: .5rem;">
451
+ <ion-buttons slot="start" class="menu-logo-slot">
452
452
  <val-image
453
453
  [props]="{
454
454
  src: '--main-logo-mini',
@@ -514,7 +514,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
514
514
  />
515
515
  }
516
516
  </ion-menu>
517
- `, styles: [":host{display:contents}ion-menu{--val-menu-expanded-width: 75%;--val-menu-collapsed-width: 3.5rem;--width: var(--val-menu-expanded-width);--min-width: var(--val-menu-expanded-width);--background: var(--ion-color-light);transition:--width .18s ease,--min-width .18s ease}@media (min-width: 768px){ion-menu{--val-menu-expanded-width: min(40vw, 22rem)}}ion-menu ion-header{background:var(--ion-color-light)}ion-menu ion-content{--background: var(--ion-color-light)}@media (min-width: 1200px){ion-menu.is-desktop-collapsible{--width: var(--val-menu-expanded-width);--min-width: var(--val-menu-expanded-width);--max-width: var(--val-menu-expanded-width)}ion-menu.is-desktop-collapsible .menu-mobile-close{display:none}}@media (min-width: 1200px){ion-menu.is-desktop-collapsed{--width: var(--val-menu-collapsed-width);--min-width: var(--val-menu-collapsed-width);--max-width: var(--val-menu-collapsed-width)}ion-menu.is-desktop-collapsed ion-toolbar{--padding-start: 0;--padding-end: 0}ion-menu.is-desktop-collapsed .menu-close-button{visibility:hidden;opacity:0;pointer-events:none}}.menu-collapse-toggle{display:none}@media (min-width: 1200px){.menu-collapse-toggle{display:inline-flex;--min-width: 44px;--min-height: 44px;width:44px;height:44px;margin:0}.menu-collapse-toggle ion-icon{font-size:1.75rem}}.menu-projected-content{transition:opacity .16s ease,visibility .16s ease}.menu-close-button{display:block;text-align:center;padding:1rem .5rem;background:var(--ion-color-light)}@media (min-width: 1200px){.menu-close-button{display:none}}:host-context(.val-menu-dragging) ion-menu{transition:none}.menu-collapse-footer{display:none}@media (min-width: 1200px){.menu-collapse-footer{display:flex;justify-content:center;padding:.5rem 0;border-top:1px solid var(--ion-color-step-150, rgba(0, 0, 0, .08));background:var(--ion-color-light)}}.menu-edge-swipe-indicator{display:none}@media (min-width: 1200px){.menu-edge-swipe-indicator{display:block;position:absolute;top:0;right:0;width:4px;height:100%;background:transparent;cursor:col-resize;transition:all .15s ease;z-index:100;opacity:0}.menu-edge-swipe-indicator:hover{background:var(--ion-color-primary, #7026df);width:6px;opacity:1}}\n"] }]
517
+ `, styles: [":host{display:contents}ion-menu{--val-menu-expanded-width: 75%;--val-menu-collapsed-width: 3.5rem;--width: var(--val-menu-expanded-width);--min-width: var(--val-menu-expanded-width);--background: var(--ion-color-light);transition:--width .18s ease,--min-width .18s ease}@media (min-width: 768px){ion-menu{--val-menu-expanded-width: min(40vw, 22rem)}}ion-menu ion-header{background:var(--ion-color-light)}ion-menu ion-content{--background: var(--ion-color-light)}ion-menu .menu-logo-slot{padding-left:.5rem}@media (min-width: 1200px){ion-menu.is-desktop-collapsible{--width: var(--val-menu-expanded-width);--min-width: var(--val-menu-expanded-width);--max-width: var(--val-menu-expanded-width)}ion-menu.is-desktop-collapsible .menu-mobile-close{display:none}}@media (min-width: 1200px){ion-menu.is-desktop-collapsed{--width: var(--val-menu-collapsed-width);--min-width: var(--val-menu-collapsed-width);--max-width: var(--val-menu-collapsed-width)}ion-menu.is-desktop-collapsed ion-toolbar{--padding-start: 0;--padding-end: 0}ion-menu.is-desktop-collapsed .menu-logo-slot{width:100%;justify-content:center;padding-left:0;margin:0}ion-menu.is-desktop-collapsed .menu-close-button{visibility:hidden;opacity:0;pointer-events:none}}.menu-collapse-toggle{display:none}@media (min-width: 1200px){.menu-collapse-toggle{display:inline-flex;--min-width: 44px;--min-height: 44px;width:44px;height:44px;margin:0}.menu-collapse-toggle ion-icon{font-size:1.75rem}}.menu-projected-content{transition:opacity .16s ease,visibility .16s ease}.menu-close-button{display:block;text-align:center;padding:1rem .5rem;background:var(--ion-color-light)}@media (min-width: 1200px){.menu-close-button{display:none}}:host-context(.val-menu-dragging) ion-menu{transition:none}.menu-collapse-footer{display:none}@media (min-width: 1200px){.menu-collapse-footer{display:flex;justify-content:center;padding:.5rem 0;border-top:1px solid var(--ion-color-step-150, rgba(0, 0, 0, .08));background:var(--ion-color-light)}}.menu-edge-swipe-indicator{display:none}@media (min-width: 1200px){.menu-edge-swipe-indicator{display:block;position:absolute;top:0;right:0;width:4px;height:100%;background:transparent;cursor:col-resize;transition:all .15s ease;z-index:100;opacity:0}.menu-edge-swipe-indicator:hover{background:var(--ion-color-primary, #7026df);width:6px;opacity:1}}\n"] }]
518
518
  }], propDecorators: { props: [{
519
519
  type: Input
520
520
  }], onTouchStart: [{
@@ -530,4 +530,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
530
530
  type: HostListener,
531
531
  args: ['document:pointerup', ['$event']]
532
532
  }] } });
533
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL21lbnUvbWVudS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFFTCxTQUFTLEVBQ1QsUUFBUSxFQUNSLFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFHTCxNQUFNLEdBRVAsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFNBQVMsRUFDVCxPQUFPLEVBQ1AsT0FBTyxFQUNQLGFBQWEsRUFDYixVQUFVLEVBQ1YsY0FBYyxHQUNmLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUV0RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBRXJEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXVCRztBQWlISCxNQUFNLE9BQU8sYUFBYTtJQS9HMUI7UUFnSFUsYUFBUSxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNsQyxTQUFJLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzNCLGVBQVUsR0FBRyxNQUFNLENBQTBCLFVBQVUsQ0FBQyxDQUFDO1FBRXpELDRCQUF1QixHQUFHLElBQUksR0FBRyxFQUFrQixDQUFDO1FBQ3pDLHVCQUFrQixHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV0RCxzQkFBc0I7UUFDZCxnQkFBVyxHQUFHLENBQUMsQ0FBQztRQUNoQixtQkFBYyxHQUFHLENBQUMsQ0FBQztRQUNWLHlCQUFvQixHQUFHLEVBQUUsQ0FBQyxDQUFDLG9CQUFvQjtRQUMvQyx1QkFBa0IsR0FBRyxFQUFFLENBQUMsQ0FBQyxnQkFBZ0I7UUFDekMsdUJBQWtCLEdBQUcsR0FBRyxDQUFDLENBQUMsS0FBSztRQUVoRDs7V0FFRztRQUNNLFVBQUssR0FBaUI7WUFDN0IsSUFBSSxFQUFFLE9BQU87WUFDYixJQUFJLEVBQUUsU0FBUztZQUNmLEtBQUssRUFBRSxJQUFJO1NBQ1osQ0FBQztRQXdERjs7V0FFRztRQUNILG9CQUFlLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUM5QixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMseUJBQXlCO1lBQzNDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUQsQ0FBQyxDQUFDLENBQUM7UUE0Q0gsOEVBQThFO1FBQzlFLHFCQUFxQjtRQUNyQixFQUFFO1FBQ0YsOEVBQThFO1FBQzlFLDhFQUE4RTtRQUM5RSw4RUFBOEU7UUFDOUUsMkVBQTJFO1FBQzNFLHVFQUF1RTtRQUN2RSw4RUFBOEU7UUFFdEUsZUFBVSxHQUFHLENBQUMsQ0FBQztRQUNmLG1CQUFjLEdBQUcsQ0FBQyxDQUFDO1FBQ25CLGVBQVUsR0FBbUQsSUFBSSxDQUFDO1FBQ2xFLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDekIsd0VBQXdFO1FBQ3ZELG9CQUFlLEdBQUcsQ0FBQyxDQUFDO0tBZ0x0QztJQXZTQyxXQUFXLENBQUMsT0FBc0I7UUFDaEMsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxXQUFXO1lBQUUsT0FBTztRQUV6QixNQUFNLFFBQVEsR0FBRyxXQUFXLENBQUMsYUFBeUMsQ0FBQztRQUN2RSxJQUFJLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLEVBQUUsQ0FBQztZQUNuQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JDLENBQUM7YUFBTSxJQUNMLFdBQVcsQ0FBQyxXQUFXO1lBQ3ZCLFFBQVEsRUFBRSxnQkFBZ0IsS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQjtZQUMxRCxRQUFRLEVBQUUsZUFBZSxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxFQUN4RCxDQUFDO1lBQ0QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzdELENBQUM7UUFDRCxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUdELFlBQVksQ0FBQyxLQUFpQjtRQUM1QixJQUFJLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQztZQUFFLE9BQU87UUFDekUsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMvQixzQ0FBc0M7UUFDdEMsSUFBSSxLQUFLLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1lBQy9DLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztZQUNqQyxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNuQyxDQUFDO0lBQ0gsQ0FBQztJQUdELFVBQVUsQ0FBQyxLQUFpQjtRQUMxQixJQUFJLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLElBQUksSUFBSSxDQUFDLFdBQVcsS0FBSyxDQUFDO1lBQUUsT0FBTztRQUVyRSxNQUFNLFlBQVksR0FBRyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzdDLE1BQU0sU0FBUyxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUM7UUFDdkMsTUFBTSxRQUFRLEdBQUcsU0FBUyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDOUMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUM7UUFFbEQscUVBQXFFO1FBQ3JFLElBQUksUUFBUSxJQUFJLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxRQUFRLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7WUFDL0UsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQy9CLENBQUM7UUFFRCxJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBVUQ7O09BRUc7SUFDSCxLQUFLLENBQUMsU0FBUztRQUNiLE1BQU0sSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGlCQUFpQjtRQUNmLElBQUksQ0FBQyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUFFLE9BQU87UUFDekUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQscUJBQXFCO1FBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsc0JBQXNCLEVBQUU7WUFBRSxPQUFPO1FBQzNDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3hELElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxzQkFBc0I7UUFDcEIsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVELDBCQUEwQjtRQUN4QixPQUFPLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUM5QixDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsSUFBSSxlQUFlO1lBQ2xELENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLG9CQUFvQixJQUFJLGVBQWUsQ0FBQztJQUN6RCxDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLEtBQUssQ0FBQztRQUN4QyxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxFQUFFLENBQUM7WUFDOUIsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLDZCQUE2QixDQUFDLENBQUMsQ0FBQyxnQ0FBZ0MsQ0FBQztRQUNsRixDQUFDO1FBQ0QsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLGdDQUFnQyxDQUFDLENBQUMsQ0FBQyw2QkFBNkIsQ0FBQztJQUNsRixDQUFDO0lBbUJELGlCQUFpQixDQUFDLEtBQW1CO1FBQ25DLElBQUksQ0FBQyxJQUFJLENBQUMsc0JBQXNCLEVBQUU7WUFBRSxPQUFPO1FBQzNDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNoQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDdkMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLFNBQVM7WUFBRSxPQUFPO1FBRWhDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FBQztRQUNsRSxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUM7UUFDaEUsNEVBQTRFO1FBQzVFLDJFQUEyRTtRQUMzRSxtQ0FBbUM7UUFDbkMsSUFBSSxDQUFDLENBQUMsUUFBUSxHQUFHLFNBQVMsQ0FBQztZQUFFLE9BQU87UUFFcEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDckIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQ2hDLHdFQUF3RTtRQUN4RSx3RUFBd0U7UUFDeEUsMEVBQTBFO1FBQzFFLHVDQUF1QztRQUN2QyxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztRQUN2RSxJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxDQUFDO1FBQzFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDN0Msd0VBQXdFO1FBQ3hFLDZFQUE2RTtRQUM3RSxvRUFBb0U7UUFDcEUsSUFBSSxDQUFDO1lBQ0YsS0FBSyxDQUFDLE1BQXNCLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDckUsQ0FBQztRQUFDLE1BQU0sQ0FBQztZQUNQLDBFQUEwRTtRQUM1RSxDQUFDO1FBQ0QsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFHRCxpQkFBaUIsQ0FBQyxLQUFtQjtRQUNuQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPO1FBQzNCLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN2QyxJQUFJLENBQUMsU0FBUztZQUFFLE9BQU87UUFDdkIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFNBQVMsRUFBRSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ25GLENBQUM7SUFHRCxlQUFlLENBQUMsS0FBbUI7UUFDakMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVTtZQUFFLE9BQU87UUFFL0MsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQ2hELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbkQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUU1RCxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztRQUN0QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsYUFBYSxFQUFFLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBRTVELElBQUksU0FBUyxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUNyQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztZQUM3QixPQUFPO1FBQ1QsQ0FBQztRQUNELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsS0FBSyxHQUFHLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ2hFLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxvRUFBb0U7SUFDNUQsZ0JBQWdCLENBQUMsT0FBZTtRQUN0QyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVU7WUFBRSxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7UUFDakQsTUFBTSxLQUFLLEdBQUcsT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDeEMsTUFBTSxHQUFHLEdBQ1AsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssS0FBSztZQUN2QixDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLO1lBQzdCLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQztRQUNsQyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3RGLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ssY0FBYyxDQUFDLEtBQWE7UUFDbEMsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM1QyxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxpRUFBaUUsS0FBSyxHQUFHLENBQUM7UUFDaEcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pELE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLEtBQUssQ0FBQztRQUMvQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDZixPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFTyxXQUFXO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFTyxtQkFBbUI7UUFDekIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLHFCQUFxQixJQUFJLFFBQVEsQ0FBQztJQUN0RCxDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsSUFBSSxrQkFBa0IsQ0FBQztJQUMvRCxDQUFDO0lBRU8sbUJBQW1CLENBQUMsU0FBc0IsRUFBRSxLQUFhO1FBQy9ELFNBQVMsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNuRCxTQUFTLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN2RCxTQUFTLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsRUFBRSxDQUFDO1lBQ25DLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1lBQzdCLE9BQU87UUFDVCxDQUFDO1FBRUQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxTQUFTO1lBQUUsT0FBTztRQUV2QixJQUFJLENBQUMsOEJBQThCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDL0MsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQ3JDLENBQUMsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUU7WUFDNUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBRTlCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFM0MsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRDs7Ozs7Ozs7Ozs7Ozs7T0FjRztJQUNLLGtCQUFrQixDQUFDLFNBQXNCO1FBQy9DLFNBQVMsQ0FBQyxZQUFZLENBQ3BCLFdBQVcsRUFDWCxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQ3JELENBQUM7SUFDSixDQUFDO0lBRU8sYUFBYTtRQUNuQixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsV0FBVztZQUFFLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUN2RCxJQUFJLENBQUMsU0FBUyxHQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBd0IsSUFBSSxTQUFTLENBQUM7UUFDOUcsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFTyw4QkFBOEIsQ0FBQyxTQUFzQjtRQUMzRCxLQUFLLE1BQU0sUUFBUSxJQUFJLENBQUMsY0FBYyxFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixDQUFDLEVBQUUsQ0FBQztZQUNoRixJQUFJLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO2dCQUNoRCxJQUFJLENBQUMsdUJBQXVCLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDekYsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRU8scUJBQXFCO1FBQzNCLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN2QywyRUFBMkU7UUFDM0UsOERBQThEO1FBQzlELFNBQVMsRUFBRSxlQUFlLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDeEMsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJO1lBQUUsT0FBTztRQUU3RCxLQUFLLE1BQU0sQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7WUFDN0QsSUFBSSxLQUFLLEVBQUUsQ0FBQztnQkFDVixTQUFTLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDL0MsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLFNBQVMsQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzNDLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQzsrR0E5VFUsYUFBYTttR0FBYixhQUFhLDhVQS9GZDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E0RlQsb3RFQXhHQyxZQUFZLCtCQUNaLE9BQU8sa0pBQ1AsVUFBVSw4RUFDVixhQUFhLDBGQUNiLFNBQVMsb1BBQ1QsT0FBTywySkFDUCxTQUFTLG9HQUNULFVBQVUsbUZBQ1YsVUFBVSx3S0FDVixjQUFjLHlFQUNkLGVBQWU7OzRGQWlHTixhQUFhO2tCQS9HekIsU0FBUzsrQkFDRSxVQUFVLGNBQ1IsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osT0FBTzt3QkFDUCxVQUFVO3dCQUNWLGFBQWE7d0JBQ2IsU0FBUzt3QkFDVCxPQUFPO3dCQUNQLFNBQVM7d0JBQ1QsVUFBVTt3QkFDVixVQUFVO3dCQUNWLGNBQWM7d0JBQ2QsZUFBZTtxQkFDaEIsWUFDUzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E0RlQ7OEJBcUJRLEtBQUs7c0JBQWIsS0FBSztnQkFnQ04sWUFBWTtzQkFEWCxZQUFZO3VCQUFDLHFCQUFxQixFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVkvQyxVQUFVO3NCQURULFlBQVk7dUJBQUMsbUJBQW1CLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBdUg3QyxpQkFBaUI7c0JBRGhCLFlBQVk7dUJBQUMsc0JBQXNCLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBU2hELGVBQWU7c0JBRGQsWUFBWTt1QkFBQyxvQkFBb0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIGNvbXB1dGVkLFxuICBFbGVtZW50UmVmLFxuICBIb3N0TGlzdGVuZXIsXG4gIGluamVjdCxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBzaWduYWwsXG4gIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgSW9uQnV0dG9uLFxuICBJb25CdXR0b25zLFxuICBJb25Db250ZW50LFxuICBJb25IZWFkZXIsXG4gIElvbkljb24sXG4gIElvbk1lbnUsXG4gIElvbk1lbnVUb2dnbGUsXG4gIElvblRvb2xiYXIsXG4gIE1lbnVDb250cm9sbGVyLFxufSBmcm9tICdAaW9uaWMvYW5ndWxhci9zdGFuZGFsb25lJztcbmltcG9ydCB7IEltYWdlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYXRvbXMvaW1hZ2UvaW1hZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2F0b21zL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IE1lbnVNZXRhZGF0YSB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgSTE4blNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9pMThuJztcblxuLyoqXG4gKiB2YWwtbWVudVxuICpcbiAqIEEgc2lkZSBtZW51IGNvbXBvbmVudCB1c2luZyBJb25pYyBJb25NZW51IHdpdGggY3VzdG9taXphYmxlIGxvZ28sXG4gKiBjbG9zZSBidXR0b24sIGFuZCBjb250ZW50IHByb2plY3Rpb24gZm9yIG1lbnUgaXRlbXMuXG4gKlxuICogQGV4YW1wbGVcbiAqIDx2YWwtbWVudVxuICogICBbcHJvcHNdPVwie1xuICogICAgIGlkOiAnbWFpbi1tZW51JyxcbiAqICAgICBjb250ZW50SWQ6ICdtYWluLWNvbnRlbnQnLFxuICogICAgIHNpZGU6ICdzdGFydCcsXG4gKiAgICAgdHlwZTogJ292ZXJsYXknLFxuICogICAgIHN3aXBlOiB0cnVlLFxuICogICAgIHNob3dDbG9zZUJ1dHRvbjogdHJ1ZVxuICogICB9XCJcbiAqID5cbiAqICAgPHZhbC1saW5rcy1hY2NvcmRpb24gW3Byb3BzXT1cIm1lbnVMaW5rc1wiPjwvdmFsLWxpbmtzLWFjY29yZGlvbj5cbiAqIDwvdmFsLW1lbnU+XG4gKlxuICogPGlvbi1yb3V0ZXItb3V0bGV0IGlkPVwibWFpbi1jb250ZW50XCI+PC9pb24tcm91dGVyLW91dGxldD5cbiAqXG4gKiBAaW5wdXQgcHJvcHMgLSBNZW51IGNvbmZpZ3VyYXRpb25cbiAqL1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtbWVudScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgSW9uTWVudSxcbiAgICBJb25CdXR0b25zLFxuICAgIElvbk1lbnVUb2dnbGUsXG4gICAgSW9uQnV0dG9uLFxuICAgIElvbkljb24sXG4gICAgSW9uSGVhZGVyLFxuICAgIElvblRvb2xiYXIsXG4gICAgSW9uQ29udGVudCxcbiAgICBJbWFnZUNvbXBvbmVudCxcbiAgICBCdXR0b25Db21wb25lbnQsXG4gIF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGlvbi1tZW51XG4gICAgICBbbWVudUlkXT1cInByb3BzLmlkXCJcbiAgICAgIFtjb250ZW50SWRdPVwicHJvcHMuY29udGVudElkXCJcbiAgICAgIFt0eXBlXT1cInByb3BzLnR5cGUgfHwgJ292ZXJsYXknXCJcbiAgICAgIFtzaWRlXT1cInByb3BzLnNpZGUgfHwgJ3N0YXJ0J1wiXG4gICAgICBbc3dpcGVHZXN0dXJlXT1cInByb3BzLnN3aXBlICE9PSBmYWxzZVwiXG4gICAgICBbY2xhc3MuaXMtZGVza3RvcC1jb2xsYXBzaWJsZV09XCJyZXRyYWN0YWJsZU1lbnVFbmFibGVkKClcIlxuICAgICAgW2NsYXNzLmlzLWRlc2t0b3AtY29sbGFwc2VkXT1cImlzRGVza3RvcENvbGxhcHNlZCgpXCJcbiAgICAgIFtzdHlsZS4tLXZhbC1tZW51LWV4cGFuZGVkLXdpZHRoXT1cInByb3BzLmRlc2t0b3BFeHBhbmRlZFdpZHRoIHx8IG51bGxcIlxuICAgICAgW3N0eWxlLi0tdmFsLW1lbnUtY29sbGFwc2VkLXdpZHRoXT1cInByb3BzLmRlc2t0b3BDb2xsYXBzZWRXaWR0aCB8fCBudWxsXCJcbiAgICA+XG4gICAgICA8IS0tIEVkZ2UgaW5kaWNhdG9yOiB0aGluIGxpbmUgb24gcmlnaHQgZWRnZSwgY2xpY2sgb3Igc3dpcGUgdG8gY29sbGFwc2UvZXhwYW5kIC0tPlxuICAgICAgQGlmIChyZXRyYWN0YWJsZU1lbnVFbmFibGVkKCkpIHtcbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwibWVudS1lZGdlLXN3aXBlLWluZGljYXRvclwiXG4gICAgICAgICAgcm9sZT1cImJ1dHRvblwiXG4gICAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImRlc2t0b3BDb2xsYXBzZUJ1dHRvbkxhYmVsKClcIlxuICAgICAgICAgIChwb2ludGVyZG93bik9XCJvbkVkZ2VQb2ludGVyRG93bigkZXZlbnQpXCJcbiAgICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJ0b2dnbGVEZXNrdG9wQ29sbGFwc2UoKVwiXG4gICAgICAgICAgKGtleWRvd24uc3BhY2UpPVwidG9nZ2xlRGVza3RvcENvbGxhcHNlKClcIlxuICAgICAgICA+PC9kaXY+XG4gICAgICB9XG4gICAgICA8aW9uLWhlYWRlciBbY2xhc3MuaW9uLW5vLWJvcmRlcl09XCJ0cnVlXCI+XG4gICAgICAgIDxpb24tdG9vbGJhcj5cbiAgICAgICAgICA8aW9uLWJ1dHRvbnMgc2xvdD1cInN0YXJ0XCIgc3R5bGU9XCJwYWRkaW5nLWxlZnQ6IC41cmVtO1wiPlxuICAgICAgICAgICAgPHZhbC1pbWFnZVxuICAgICAgICAgICAgICBbcHJvcHNdPVwie1xuICAgICAgICAgICAgICAgIHNyYzogJy0tbWFpbi1sb2dvLW1pbmknLFxuICAgICAgICAgICAgICAgIGFsdDogJ21lbnUgbG9nbycsXG4gICAgICAgICAgICAgICAgbW9kZTogJ2JveCcsXG4gICAgICAgICAgICAgICAgc2hhZGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBib3JkZXJlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgc2l6ZTogJ3NtYWxsJyxcbiAgICAgICAgICAgICAgICBsaW1pdGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICB3aWR0aDogMixcbiAgICAgICAgICAgICAgICBmbGV4OiB0cnVlLFxuICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9pb24tYnV0dG9ucz5cblxuICAgICAgICAgIDxpb24tYnV0dG9ucyBzbG90PVwiZW5kXCI+XG4gICAgICAgICAgICA8aW9uLW1lbnUtdG9nZ2xlIGNsYXNzPVwibWVudS1tb2JpbGUtY2xvc2VcIj5cbiAgICAgICAgICAgICAgPGlvbi1idXR0b24+XG4gICAgICAgICAgICAgICAgPGlvbi1pY29uIGNvbG9yPVwiZGFya1wiIHNsb3Q9XCJpY29uLW9ubHlcIiBuYW1lPVwiY2xvc2Utb3V0bGluZVwiPjwvaW9uLWljb24+XG4gICAgICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cbiAgICAgICAgICAgIDwvaW9uLW1lbnUtdG9nZ2xlPlxuICAgICAgICAgIDwvaW9uLWJ1dHRvbnM+XG4gICAgICAgIDwvaW9uLXRvb2xiYXI+XG4gICAgICA8L2lvbi1oZWFkZXI+XG4gICAgICA8aW9uLWNvbnRlbnQ+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cIm1lbnUtcHJvamVjdGVkLWNvbnRlbnRcIlxuICAgICAgICAgICh2YWxNZW51RXhwYW5kUmVxdWVzdCk9XCJleHBhbmREZXNrdG9wUmFpbCgpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2lvbi1jb250ZW50PlxuICAgICAgQGlmIChyZXRyYWN0YWJsZU1lbnVFbmFibGVkKCkpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1lbnUtY29sbGFwc2UtZm9vdGVyXCI+XG4gICAgICAgICAgPGlvbi1idXR0b25cbiAgICAgICAgICAgIGNsYXNzPVwibWVudS1jb2xsYXBzZS10b2dnbGVcIlxuICAgICAgICAgICAgZmlsbD1cImNsZWFyXCJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiZGVza3RvcENvbGxhcHNlQnV0dG9uTGFiZWwoKVwiXG4gICAgICAgICAgICBbYXR0ci5hcmlhLXByZXNzZWRdPVwiaXNEZXNrdG9wQ29sbGFwc2VkKClcIlxuICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZURlc2t0b3BDb2xsYXBzZSgpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8aW9uLWljb24gY29sb3I9XCJtZWRpdW1cIiBzbG90PVwiaWNvbi1vbmx5XCIgW25hbWVdPVwiZGVza3RvcENvbGxhcHNlSWNvbigpXCI+PC9pb24taWNvbj5cbiAgICAgICAgICA8L2lvbi1idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgICAgQGlmIChwcm9wcy5zaG93Q2xvc2VCdXR0b24pIHtcbiAgICAgICAgPHZhbC1idXR0b25cbiAgICAgICAgICBjbGFzcz1cIm1lbnUtY2xvc2UtYnV0dG9uXCJcbiAgICAgICAgICBbcHJvcHNdPVwie1xuICAgICAgICAgICAgdGV4dDogY2xvc2VCdXR0b25UZXh0KCksXG4gICAgICAgICAgICBjb2xvcjogJ2RhcmsnLFxuICAgICAgICAgICAgc2l6ZTogJ2RlZmF1bHQnLFxuICAgICAgICAgICAgdHlwZTogJ2J1dHRvbicsXG4gICAgICAgICAgICBzdGF0ZTogJ0VOQUJMRUQnLFxuICAgICAgICAgICAgZmlsbDogJ291dGxpbmUnLFxuICAgICAgICAgICAgc2hhcGU6ICdyb3VuZCcsXG4gICAgICAgICAgICBpY29uOiB7XG4gICAgICAgICAgICAgIG5hbWU6ICdjbG9zZS1vdXRsaW5lJyxcbiAgICAgICAgICAgICAgc2xvdDogJ3N0YXJ0JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfVwiXG4gICAgICAgICAgKG9uQ2xpY2spPVwiY2xvc2VNZW51KClcIlxuICAgICAgICAvPlxuICAgICAgfVxuICAgIDwvaW9uLW1lbnU+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL21lbnUuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTWVudUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBtZW51Q3RybCA9IGluamVjdChNZW51Q29udHJvbGxlcik7XG4gIHByaXZhdGUgaTE4biA9IGluamVjdChJMThuU2VydmljZSk7XG4gIHByaXZhdGUgZWxlbWVudFJlZiA9IGluamVjdDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oRWxlbWVudFJlZik7XG4gIHByaXZhdGUgc3BsaXRQYW5lPzogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgc3BsaXRQYW5lT3JpZ2luYWxTdHlsZXMgPSBuZXcgTWFwPHN0cmluZywgc3RyaW5nPigpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNEZXNrdG9wQ29sbGFwc2VkID0gc2lnbmFsKGZhbHNlKTtcblxuICAvLyBFZGdlLXN3aXBlIHRyYWNraW5nXG4gIHByaXZhdGUgdG91Y2hTdGFydFggPSAwO1xuICBwcml2YXRlIHRvdWNoU3RhcnRUaW1lID0gMDtcbiAgcHJpdmF0ZSByZWFkb25seSBFREdFX1NXSVBFX1RIUkVTSE9MRCA9IDIwOyAvLyBweCBmcm9tIGxlZnQgZWRnZVxuICBwcml2YXRlIHJlYWRvbmx5IE1JTl9TV0lQRV9ESVNUQU5DRSA9IDgwOyAvLyBweCB0byB0cmlnZ2VyXG4gIHByaXZhdGUgcmVhZG9ubHkgTUFYX1NXSVBFX0RVUkFUSU9OID0gNTAwOyAvLyBtc1xuXG4gIC8qKlxuICAgKiBNZW51IGNvbmZpZ3VyYXRpb24uXG4gICAqL1xuICBASW5wdXQoKSBwcm9wczogTWVudU1ldGFkYXRhID0ge1xuICAgIHNpZGU6ICdzdGFydCcsXG4gICAgdHlwZTogJ292ZXJsYXknLFxuICAgIHN3aXBlOiB0cnVlLFxuICB9O1xuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBjb25zdCBwcm9wc0NoYW5nZSA9IGNoYW5nZXNbJ3Byb3BzJ107XG4gICAgaWYgKCFwcm9wc0NoYW5nZSkgcmV0dXJuO1xuXG4gICAgY29uc3QgcHJldmlvdXMgPSBwcm9wc0NoYW5nZS5wcmV2aW91c1ZhbHVlIGFzIE1lbnVNZXRhZGF0YSB8IHVuZGVmaW5lZDtcbiAgICBpZiAoIXRoaXMucmV0cmFjdGFibGVNZW51RW5hYmxlZCgpKSB7XG4gICAgICB0aGlzLmlzRGVza3RvcENvbGxhcHNlZC5zZXQoZmFsc2UpO1xuICAgIH0gZWxzZSBpZiAoXG4gICAgICBwcm9wc0NoYW5nZS5maXJzdENoYW5nZSB8fFxuICAgICAgcHJldmlvdXM/LmRlc2t0b3BDb2xsYXBzZWQgIT09IHRoaXMucHJvcHMuZGVza3RvcENvbGxhcHNlZCB8fFxuICAgICAgcHJldmlvdXM/LnJldHJhY3RhYmxlTWVudSAhPT0gdGhpcy5wcm9wcy5yZXRyYWN0YWJsZU1lbnVcbiAgICApIHtcbiAgICAgIHRoaXMuaXNEZXNrdG9wQ29sbGFwc2VkLnNldCghIXRoaXMucHJvcHMuZGVza3RvcENvbGxhcHNlZCk7XG4gICAgfVxuICAgIHRoaXMuc3luY1NwbGl0UGFuZVdpZHRoKCk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zeW5jU3BsaXRQYW5lV2lkdGgoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMucmVzdG9yZVNwbGl0UGFuZVdpZHRoKCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDp0b3VjaHN0YXJ0JywgWyckZXZlbnQnXSlcbiAgb25Ub3VjaFN0YXJ0KGV2ZW50OiBUb3VjaEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnJldHJhY3RhYmxlTWVudUVuYWJsZWQoKSB8fCBldmVudC50b3VjaGVzLmxlbmd0aCA9PT0gMCkgcmV0dXJuO1xuICAgIGNvbnN0IHRvdWNoID0gZXZlbnQudG91Y2hlc1swXTtcbiAgICAvLyBTb2xvIGRldGVjdGFyIGRlc2RlIGJvcmRlIGl6cXVpZXJkb1xuICAgIGlmICh0b3VjaC5jbGllbnRYIDw9IHRoaXMuRURHRV9TV0lQRV9USFJFU0hPTEQpIHtcbiAgICAgIHRoaXMudG91Y2hTdGFydFggPSB0b3VjaC5jbGllbnRYO1xuICAgICAgdGhpcy50b3VjaFN0YXJ0VGltZSA9IERhdGUubm93KCk7XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6dG91Y2hlbmQnLCBbJyRldmVudCddKVxuICBvblRvdWNoRW5kKGV2ZW50OiBUb3VjaEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnJldHJhY3RhYmxlTWVudUVuYWJsZWQoKSB8fCB0aGlzLnRvdWNoU3RhcnRYID09PSAwKSByZXR1cm47XG5cbiAgICBjb25zdCBjaGFuZ2VkVG91Y2ggPSBldmVudC5jaGFuZ2VkVG91Y2hlc1swXTtcbiAgICBjb25zdCB0b3VjaEVuZFggPSBjaGFuZ2VkVG91Y2guY2xpZW50WDtcbiAgICBjb25zdCBkaXN0YW5jZSA9IHRvdWNoRW5kWCAtIHRoaXMudG91Y2hTdGFydFg7XG4gICAgY29uc3QgZHVyYXRpb24gPSBEYXRlLm5vdygpIC0gdGhpcy50b3VjaFN0YXJ0VGltZTtcblxuICAgIC8vIFZhbGlkYXI6IHN3aXBlIGhhY2lhIGxhIGRlcmVjaGEsIGRpc3RhbmNpYSBtw61uaW1hLCBkdXJhY2nDs24gbcOheGltYVxuICAgIGlmIChkaXN0YW5jZSA+PSB0aGlzLk1JTl9TV0lQRV9ESVNUQU5DRSAmJiBkdXJhdGlvbiA8PSB0aGlzLk1BWF9TV0lQRV9EVVJBVElPTikge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMudG9nZ2xlRGVza3RvcENvbGxhcHNlKCk7XG4gICAgfVxuXG4gICAgdGhpcy50b3VjaFN0YXJ0WCA9IDA7XG4gIH1cblxuICAvKipcbiAgICogQ2xvc2UgYnV0dG9uIHRleHQgLSByZWFjdGl2ZSB0byBsYW5ndWFnZSBjaGFuZ2VzLlxuICAgKi9cbiAgY2xvc2VCdXR0b25UZXh0ID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIHRoaXMuaTE4bi5sYW5nKCk7IC8vIFRyYWNrIGxhbmd1YWdlIGNoYW5nZXNcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5jbG9zZUJ1dHRvblRleHQgfHwgdGhpcy5pMThuLnQoJ2Nsb3NlJyk7XG4gIH0pO1xuXG4gIC8qKlxuICAgKiBDbG9zZXMgdGhlIG1lbnUuXG4gICAqL1xuICBhc3luYyBjbG9zZU1lbnUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5tZW51Q3RybC5jbG9zZSh0aGlzLnByb3BzLmlkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeHBhbmRlIGVsIHJhaWwgYSBwZWRpZG8gZGUgbG8gcXVlIGVzdMOhIHByb3llY3RhZG8gYWRlbnRyby4gVW5hIHNlY2Npw7NuIHF1ZVxuICAgKiBzb2xvIGFncnVwYSBoaWpvcyBubyBwdWVkZSBkZXNwbGVnYXJzZSBlbiA1NnB4LCBhc8OtIHF1ZSBwaWRlIGx1Z2FyIGVuIHZlelxuICAgKiBkZSBubyBoYWNlciBuYWRhLlxuICAgKi9cbiAgZXhwYW5kRGVza3RvcFJhaWwoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnJldHJhY3RhYmxlTWVudUVuYWJsZWQoKSB8fCAhdGhpcy5pc0Rlc2t0b3BDb2xsYXBzZWQoKSkgcmV0dXJuO1xuICAgIHRoaXMuaXNEZXNrdG9wQ29sbGFwc2VkLnNldChmYWxzZSk7XG4gICAgdGhpcy5zeW5jU3BsaXRQYW5lV2lkdGgoKTtcbiAgfVxuXG4gIHRvZ2dsZURlc2t0b3BDb2xsYXBzZSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMucmV0cmFjdGFibGVNZW51RW5hYmxlZCgpKSByZXR1cm47XG4gICAgdGhpcy5pc0Rlc2t0b3BDb2xsYXBzZWQudXBkYXRlKGNvbGxhcHNlZCA9PiAhY29sbGFwc2VkKTtcbiAgICB0aGlzLnN5bmNTcGxpdFBhbmVXaWR0aCgpO1xuICB9XG5cbiAgcmV0cmFjdGFibGVNZW51RW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISEodGhpcy5wcm9wcy5yZXRyYWN0YWJsZU1lbnUgPz8gdGhpcy5wcm9wcy5kZXNrdG9wQ29sbGFwc2libGUpO1xuICB9XG5cbiAgZGVza3RvcENvbGxhcHNlQnV0dG9uTGFiZWwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pc0Rlc2t0b3BDb2xsYXBzZWQoKVxuICAgICAgPyB0aGlzLnByb3BzLmRlc2t0b3BFeHBhbmRMYWJlbCB8fCAnRXhwYW5kaXIgbWVuw7onXG4gICAgICA6IHRoaXMucHJvcHMuZGVza3RvcENvbGxhcHNlTGFiZWwgfHwgJ0NvbnRyYWVyIG1lbsO6JztcbiAgfVxuXG4gIGRlc2t0b3BDb2xsYXBzZUljb24oKTogc3RyaW5nIHtcbiAgICBjb25zdCBpc0VuZCA9IHRoaXMucHJvcHMuc2lkZSA9PT0gJ2VuZCc7XG4gICAgaWYgKHRoaXMuaXNEZXNrdG9wQ29sbGFwc2VkKCkpIHtcbiAgICAgIHJldHVybiBpc0VuZCA/ICdjaGV2cm9uLWJhY2stY2lyY2xlLW91dGxpbmUnIDogJ2NoZXZyb24tZm9yd2FyZC1jaXJjbGUtb3V0bGluZSc7XG4gICAgfVxuICAgIHJldHVybiBpc0VuZCA/ICdjaGV2cm9uLWZvcndhcmQtY2lyY2xlLW91dGxpbmUnIDogJ2NoZXZyb24tYmFjay1jaXJjbGUtb3V0bGluZSc7XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gQXJyYXN0cmUgZGVsIGJvcmRlXG4gIC8vXG4gIC8vIEFycmFzdHJhciBlbmdhbmNoYSBhIGFiaWVydG8vY2VycmFkbzsgTk8gZXMgYWp1c3RlIGxpYnJlIGRlIGFuY2hvLiBFbCBhbmNob1xuICAvLyBkZSBjb250ZW5pZG8gdGllbmUgZXN0YWRvcyBkZWZpbmlkb3MgKHZhbC1jb250YWluZXIgbG9zIGxlZSB2w61hIGRhdGEtbWVudSksXG4gIC8vIGFzw60gcXVlIHVuIGFuY2hvIGFyYml0cmFyaW8gZGVqYXLDrWEgZWwgY29udGVuaWRvIGEgbWVyY2VkIGRlIGTDs25kZSBzb2x0w7MgZWxcbiAgLy8gbW91c2UgY2FkYSB1c3VhcmlvLiBEdXJhbnRlIGVsIGFycmFzdHJlIGVsIHJhaWwgc8OtIHNpZ3VlIGFsIHB1bnRlcm8g4oCUIGVsXG4gIC8vIGVuZ2FuY2hlIG9jdXJyZSBhbCBzb2x0YXIsIGNvbnRyYSBlbCBwdW50byBtZWRpbyBlbnRyZSBhbWJvcyBhbmNob3MuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIHByaXZhdGUgZHJhZ1N0YXJ0WCA9IDA7XG4gIHByaXZhdGUgZHJhZ1N0YXJ0V2lkdGggPSAwO1xuICBwcml2YXRlIGRyYWdCb3VuZHM6IHsgY29sbGFwc2VkOiBudW1iZXI7IGV4cGFuZGVkOiBudW1iZXIgfSB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIGRyYWdnaW5nID0gZmFsc2U7XG4gIC8qKiBQb3IgZGViYWpvIGRlIGVzdG8gbm8gaHVibyBhcnJhc3RyZTogZnVlIHVuIGNsaWNrIHNvYnJlIGVsIGJvcmRlLiAqL1xuICBwcml2YXRlIHJlYWRvbmx5IERSQUdfQ0xJQ0tfU0xPUCA9IDU7XG5cbiAgb25FZGdlUG9pbnRlckRvd24oZXZlbnQ6IFBvaW50ZXJFdmVudCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5yZXRyYWN0YWJsZU1lbnVFbmFibGVkKCkpIHJldHVybjtcbiAgICBjb25zdCBtZW51ID0gdGhpcy5tZW51RWxlbWVudCgpO1xuICAgIGNvbnN0IHNwbGl0UGFuZSA9IHRoaXMuZmluZFNwbGl0UGFuZSgpO1xuICAgIGlmICghbWVudSB8fCAhc3BsaXRQYW5lKSByZXR1cm47XG5cbiAgICBjb25zdCBjb2xsYXBzZWQgPSB0aGlzLnJlc29sdmVXaWR0aFB4KHRoaXMuY29sbGFwc2VkV2lkdGhWYWx1ZSgpKTtcbiAgICBjb25zdCBleHBhbmRlZCA9IHRoaXMucmVzb2x2ZVdpZHRoUHgodGhpcy5leHBhbmRlZFdpZHRoVmFsdWUoKSk7XG4gICAgLy8gU2kgZWwgc29uZGVvIG5vIHB1ZG8gcmVzb2x2ZXIgbG9zIGFuY2hvcywgZWwgYXJyYXN0cmUgbm8gdGllbmUgY29udHJhIHF1w6lcbiAgICAvLyBlbmdhbmNoYXI6IHNlIGRlZ3JhZGEgYSBjbGljayBwdXJvIChlbCBwb2ludGVydXAgc2luIGJvdW5kcyBubyBoYWNlIG5hZGFcbiAgICAvLyB5IGVsIHNsb3AgbG8gdHJhdGEgY29tbyB0b2dnbGUpLlxuICAgIGlmICghKGV4cGFuZGVkID4gY29sbGFwc2VkKSkgcmV0dXJuO1xuXG4gICAgdGhpcy5kcmFnZ2luZyA9IHRydWU7XG4gICAgdGhpcy5kcmFnU3RhcnRYID0gZXZlbnQuY2xpZW50WDtcbiAgICAvLyBBbmNsYSBlbiBlbCBhbmNobyBERUNMQVJBRE8gZGVsIGVzdGFkbyBhY3R1YWwsIG5vIGVuIGVsIG1lZGlkby4gU2kgZWxcbiAgICAvLyBtZW7DuiBlc3TDoSByZW5kZXJpemFkbyBhIHVuIGFuY2hvIHF1ZSBubyBlcyBuaW5ndW5vIGRlIGxvcyBkb3MgKGxheW91dFxuICAgIC8vIGVuIHRyYW5zaWNpw7NuLCBlc3RpbG9zIGRlIGxhIGFwcCksIG1lZGlyIGNvcnJlIGVsIG9yaWdlbiBkZWwgYXJyYXN0cmUgeVxuICAgIC8vIGVsIGVuZ2FuY2hlIGNhZSBkZWwgbGFkbyBlcXVpdm9jYWRvLlxuICAgIHRoaXMuZHJhZ1N0YXJ0V2lkdGggPSB0aGlzLmlzRGVza3RvcENvbGxhcHNlZCgpID8gY29sbGFwc2VkIDogZXhwYW5kZWQ7XG4gICAgdGhpcy5kcmFnQm91bmRzID0geyBjb2xsYXBzZWQsIGV4cGFuZGVkIH07XG4gICAgc3BsaXRQYW5lLmNsYXNzTGlzdC5hZGQoJ3ZhbC1tZW51LWRyYWdnaW5nJyk7XG4gICAgLy8gTGEgY2FwdHVyYSBtYW50aWVuZSBlbCBhcnJhc3RyZSB2aXZvIHNpIGVsIHB1bnRlcm8gc2Ugc2FsZSBkZWwgYm9yZGUuXG4gICAgLy8gRXMgdW5hIG1lam9yYSwgbm8gdW4gcmVxdWlzaXRvOiBsYW56YSBjdWFuZG8gZWwgcG9pbnRlcklkIG5vIGNvcnJlc3BvbmRlIGFcbiAgICAvLyB1biBwdW50ZXJvIGFjdGl2bywgeSBlc2UgdGhyb3cgbm8gcHVlZGUgbGxldmFyc2UgcHVlc3RvIGVsIGdlc3RvLlxuICAgIHRyeSB7XG4gICAgICAoZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5zZXRQb2ludGVyQ2FwdHVyZT8uKGV2ZW50LnBvaW50ZXJJZCk7XG4gICAgfSBjYXRjaCB7XG4gICAgICAvKiBzaW4gY2FwdHVyYTogZWwgYXJyYXN0cmUgc2lndWUgZnVuY2lvbmFuZG8gdsOtYSBsaXN0ZW5lcnMgZGUgZG9jdW1lbnQgKi9cbiAgICB9XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OnBvaW50ZXJtb3ZlJywgWyckZXZlbnQnXSlcbiAgb25FZGdlUG9pbnRlck1vdmUoZXZlbnQ6IFBvaW50ZXJFdmVudCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5kcmFnZ2luZykgcmV0dXJuO1xuICAgIGNvbnN0IHNwbGl0UGFuZSA9IHRoaXMuZmluZFNwbGl0UGFuZSgpO1xuICAgIGlmICghc3BsaXRQYW5lKSByZXR1cm47XG4gICAgdGhpcy5hcHBseVNwbGl0UGFuZVdpZHRoKHNwbGl0UGFuZSwgYCR7dGhpcy53aWR0aEZyb21Qb2ludGVyKGV2ZW50LmNsaWVudFgpfXB4YCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpwb2ludGVydXAnLCBbJyRldmVudCddKVxuICBvbkVkZ2VQb2ludGVyVXAoZXZlbnQ6IFBvaW50ZXJFdmVudCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5kcmFnZ2luZyB8fCAhdGhpcy5kcmFnQm91bmRzKSByZXR1cm47XG5cbiAgICBjb25zdCB7IGNvbGxhcHNlZCwgZXhwYW5kZWQgfSA9IHRoaXMuZHJhZ0JvdW5kcztcbiAgICBjb25zdCB3aWR0aCA9IHRoaXMud2lkdGhGcm9tUG9pbnRlcihldmVudC5jbGllbnRYKTtcbiAgICBjb25zdCB0cmF2ZWxsZWQgPSBNYXRoLmFicyhldmVudC5jbGllbnRYIC0gdGhpcy5kcmFnU3RhcnRYKTtcblxuICAgIHRoaXMuZHJhZ2dpbmcgPSBmYWxzZTtcbiAgICB0aGlzLmRyYWdCb3VuZHMgPSBudWxsO1xuICAgIHRoaXMuZmluZFNwbGl0UGFuZSgpPy5jbGFzc0xpc3QucmVtb3ZlKCd2YWwtbWVudS1kcmFnZ2luZycpO1xuXG4gICAgaWYgKHRyYXZlbGxlZCA8IHRoaXMuRFJBR19DTElDS19TTE9QKSB7XG4gICAgICB0aGlzLnRvZ2dsZURlc2t0b3BDb2xsYXBzZSgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmlzRGVza3RvcENvbGxhcHNlZC5zZXQod2lkdGggPCAoY29sbGFwc2VkICsgZXhwYW5kZWQpIC8gMik7XG4gICAgdGhpcy5zeW5jU3BsaXRQYW5lV2lkdGgoKTtcbiAgfVxuXG4gIC8qKiBBbmNobyBxdWUgY29ycmVzcG9uZGUgYWwgcHVudGVybywgYWNvdGFkbyBhIGxvcyBkb3MgZXh0cmVtb3MuICovXG4gIHByaXZhdGUgd2lkdGhGcm9tUG9pbnRlcihjbGllbnRYOiBudW1iZXIpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5kcmFnQm91bmRzKSByZXR1cm4gdGhpcy5kcmFnU3RhcnRXaWR0aDtcbiAgICBjb25zdCBkZWx0YSA9IGNsaWVudFggLSB0aGlzLmRyYWdTdGFydFg7XG4gICAgY29uc3QgcmF3ID1cbiAgICAgIHRoaXMucHJvcHMuc2lkZSA9PT0gJ2VuZCdcbiAgICAgICAgPyB0aGlzLmRyYWdTdGFydFdpZHRoIC0gZGVsdGFcbiAgICAgICAgOiB0aGlzLmRyYWdTdGFydFdpZHRoICsgZGVsdGE7XG4gICAgcmV0dXJuIE1hdGgubWluKHRoaXMuZHJhZ0JvdW5kcy5leHBhbmRlZCwgTWF0aC5tYXgodGhpcy5kcmFnQm91bmRzLmNvbGxhcHNlZCwgcmF3KSk7XG4gIH1cblxuICAvKipcbiAgICogUmVzdWVsdmUgdW4gYW5jaG8gQ1NTIGEgcMOteGVsZXMgbWlkaWVuZG8gdW4gZWxlbWVudG8gZGUgc29uZGVvLiBIYWNlIGZhbHRhXG4gICAqIHBvcnF1ZSBsb3MgdmFsb3JlcyBzb24gZXhwcmVzaW9uZXMgKGBtaW4oNDB2dywgMjJyZW0pYCkgcXVlIGdldENvbXB1dGVkU3R5bGVcbiAgICogZGV2dWVsdmUgc2luIHJlc29sdmVyIGN1YW5kbyB2aXZlbiBlbiB1bmEgY3VzdG9tIHByb3BlcnR5LlxuICAgKi9cbiAgcHJpdmF0ZSByZXNvbHZlV2lkdGhQeCh2YWx1ZTogc3RyaW5nKTogbnVtYmVyIHtcbiAgICBjb25zdCBwcm9iZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgIHByb2JlLnN0eWxlLmNzc1RleHQgPSBgcG9zaXRpb246YWJzb2x1dGU7dmlzaWJpbGl0eTpoaWRkZW47cG9pbnRlci1ldmVudHM6bm9uZTt3aWR0aDoke3ZhbHVlfTtgO1xuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKHByb2JlKTtcbiAgICBjb25zdCBweCA9IHByb2JlLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoO1xuICAgIHByb2JlLnJlbW92ZSgpO1xuICAgIHJldHVybiBweDtcbiAgfVxuXG4gIHByaXZhdGUgbWVudUVsZW1lbnQoKTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignaW9uLW1lbnUnKTtcbiAgfVxuXG4gIHByaXZhdGUgY29sbGFwc2VkV2lkdGhWYWx1ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnByb3BzLmRlc2t0b3BDb2xsYXBzZWRXaWR0aCB8fCAnMy41cmVtJztcbiAgfVxuXG4gIHByaXZhdGUgZXhwYW5kZWRXaWR0aFZhbHVlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMuZGVza3RvcEV4cGFuZGVkV2lkdGggfHwgJ21pbig0MHZ3LCAyMnJlbSknO1xuICB9XG5cbiAgcHJpdmF0ZSBhcHBseVNwbGl0UGFuZVdpZHRoKHNwbGl0UGFuZTogSFRNTEVsZW1lbnQsIHdpZHRoOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBzcGxpdFBhbmUuc3R5bGUuc2V0UHJvcGVydHkoJy0tc2lkZS13aWR0aCcsIHdpZHRoKTtcbiAgICBzcGxpdFBhbmUuc3R5bGUuc2V0UHJvcGVydHkoJy0tc2lkZS1taW4td2lkdGgnLCB3aWR0aCk7XG4gICAgc3BsaXRQYW5lLnN0eWxlLnNldFByb3BlcnR5KCctLXNpZGUtbWF4LXdpZHRoJywgd2lkdGgpO1xuICB9XG5cbiAgcHJpdmF0ZSBzeW5jU3BsaXRQYW5lV2lkdGgoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnJldHJhY3RhYmxlTWVudUVuYWJsZWQoKSkge1xuICAgICAgdGhpcy5yZXN0b3JlU3BsaXRQYW5lV2lkdGgoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBzcGxpdFBhbmUgPSB0aGlzLmZpbmRTcGxpdFBhbmUoKTtcbiAgICBpZiAoIXNwbGl0UGFuZSkgcmV0dXJuO1xuXG4gICAgdGhpcy5jYXB0dXJlT3JpZ2luYWxTcGxpdFBhbmVTdHlsZXMoc3BsaXRQYW5lKTtcbiAgICBjb25zdCB3aWR0aCA9IHRoaXMuaXNEZXNrdG9wQ29sbGFwc2VkKClcbiAgICAgID8gdGhpcy5jb2xsYXBzZWRXaWR0aFZhbHVlKClcbiAgICAgIDogdGhpcy5leHBhbmRlZFdpZHRoVmFsdWUoKTtcblxuICAgIHRoaXMuYXBwbHlTcGxpdFBhbmVXaWR0aChzcGxpdFBhbmUsIHdpZHRoKTtcblxuICAgIHRoaXMubWFya1NoZWxsTWVudVN0YXRlKHNwbGl0UGFuZSk7XG4gIH1cblxuICAvKipcbiAgICogUHVibGljYSBlbCBlc3RhZG8gZGVsIG1lbsO6IGVuIGVsIHNoZWxsLCBwYXJhIHF1ZSBlbCBDT05URU5JRE8gcHVlZGFcbiAgICogYWRhcHRhcnNlLlxuICAgKlxuICAgKiBFbCBtZW7DuiB5YSBzYWLDrWEgc2kgZXN0YWJhIGFiaWVydG8gbyBjZXJyYWRvLCBwZXJvIHNvbG8gc2UgbG8gZGVjw61hIGEgc8OtXG4gICAqIG1pc21vIHkgYWwgYW5jaG8gZGVsIHBhbmU6IGVsIGNvbnRlbmlkbyBzZWd1w61hIGNvbiBlbCBtaXNtbyB0b3BlLCBhc8OtIHF1ZVxuICAgKiBlbCBlc3BhY2lvIHF1ZSBkZWphYmEgbGEgbmF2ZWdhY2nDs24gc2Ugdm9sdsOtYSBhaXJlIGxhdGVyYWwgZW4gdmV6IGRlXG4gICAqIGNvbnRlbmlkby5cbiAgICpcbiAgICogU2UgbWFyY2EgZWwgYGlvbi1zcGxpdC1wYW5lYCBwb3JxdWUgZXMgZWwgYW5jZXN0cm8gY29tw7puIGRlbCBtZW7DuiB5IGRlbFxuICAgKiBjb250ZW5pZG87IGRlc2RlIGFow60gYHZhbC1jb250YWluZXJgIGxvIGxlZSBjb24gYDpob3N0LWNvbnRleHRgIHkgbmluZ3VuYVxuICAgKiBhcHAgbmVjZXNpdGEgY2FibGVhciBuYWRhLiBFbCBhdHJpYnV0byBzZSBsaW1waWEgYWwgcmVzdGF1cmFyICh2ZXJcbiAgICogcmVzdG9yZVNwbGl0UGFuZVdpZHRoKSBwYXJhIG5vIGRlamFyIHVuIHNoZWxsIFwiY29sYXBzYWRvXCIgY3VhbmRvIGVsIHJhaWxcbiAgICogZGVqYSBkZSBlc3RhciBhY3Rpdm8uXG4gICAqL1xuICBwcml2YXRlIG1hcmtTaGVsbE1lbnVTdGF0ZShzcGxpdFBhbmU6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgc3BsaXRQYW5lLnNldEF0dHJpYnV0ZShcbiAgICAgICdkYXRhLW1lbnUnLFxuICAgICAgdGhpcy5pc0Rlc2t0b3BDb2xsYXBzZWQoKSA/ICdjb2xsYXBzZWQnIDogJ2V4cGFuZGVkJyxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBmaW5kU3BsaXRQYW5lKCk6IEhUTUxFbGVtZW50IHwgdW5kZWZpbmVkIHtcbiAgICBpZiAodGhpcy5zcGxpdFBhbmU/LmlzQ29ubmVjdGVkKSByZXR1cm4gdGhpcy5zcGxpdFBhbmU7XG4gICAgdGhpcy5zcGxpdFBhbmUgPSAodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2xvc2VzdCgnaW9uLXNwbGl0LXBhbmUnKSBhcyBIVE1MRWxlbWVudCB8IG51bGwpIHx8IHVuZGVmaW5lZDtcbiAgICByZXR1cm4gdGhpcy5zcGxpdFBhbmU7XG4gIH1cblxuICBwcml2YXRlIGNhcHR1cmVPcmlnaW5hbFNwbGl0UGFuZVN0eWxlcyhzcGxpdFBhbmU6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBwcm9wZXJ0eSBvZiBbJy0tc2lkZS13aWR0aCcsICctLXNpZGUtbWluLXdpZHRoJywgJy0tc2lkZS1tYXgtd2lkdGgnXSkge1xuICAgICAgaWYgKCF0aGlzLnNwbGl0UGFuZU9yaWdpbmFsU3R5bGVzLmhhcyhwcm9wZXJ0eSkpIHtcbiAgICAgICAgdGhpcy5zcGxpdFBhbmVPcmlnaW5hbFN0eWxlcy5zZXQocHJvcGVydHksIHNwbGl0UGFuZS5zdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKHByb3BlcnR5KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByZXN0b3JlU3BsaXRQYW5lV2lkdGgoKTogdm9pZCB7XG4gICAgY29uc3Qgc3BsaXRQYW5lID0gdGhpcy5maW5kU3BsaXRQYW5lKCk7XG4gICAgLy8gRWwgYXRyaWJ1dG8gc2UgcXVpdGEgYXVucXVlIG5vIGhheWEgZXN0aWxvcyBxdWUgcmVzdGF1cmFyOiBzaSBlbCByYWlsIHNlXG4gICAgLy8gZGVzYWN0aXZhLCBlbCBzaGVsbCBubyBwdWVkZSBxdWVkYXIgZGVjbGFyw6FuZG9zZSBjb2xhcHNhZG8uXG4gICAgc3BsaXRQYW5lPy5yZW1vdmVBdHRyaWJ1dGUoJ2RhdGEtbWVudScpO1xuICAgIGlmICghc3BsaXRQYW5lIHx8ICF0aGlzLnNwbGl0UGFuZU9yaWdpbmFsU3R5bGVzLnNpemUpIHJldHVybjtcblxuICAgIGZvciAoY29uc3QgW3Byb3BlcnR5LCB2YWx1ZV0gb2YgdGhpcy5zcGxpdFBhbmVPcmlnaW5hbFN0eWxlcykge1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHNwbGl0UGFuZS5zdHlsZS5zZXRQcm9wZXJ0eShwcm9wZXJ0eSwgdmFsdWUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc3BsaXRQYW5lLnN0eWxlLnJlbW92ZVByb3BlcnR5KHByb3BlcnR5KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==
533
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL21lbnUvbWVudS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFFTCxTQUFTLEVBQ1QsUUFBUSxFQUNSLFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFHTCxNQUFNLEdBRVAsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFNBQVMsRUFDVCxPQUFPLEVBQ1AsT0FBTyxFQUNQLGFBQWEsRUFDYixVQUFVLEVBQ1YsY0FBYyxHQUNmLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUV0RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBRXJEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXVCRztBQWlISCxNQUFNLE9BQU8sYUFBYTtJQS9HMUI7UUFnSFUsYUFBUSxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNsQyxTQUFJLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzNCLGVBQVUsR0FBRyxNQUFNLENBQTBCLFVBQVUsQ0FBQyxDQUFDO1FBRXpELDRCQUF1QixHQUFHLElBQUksR0FBRyxFQUFrQixDQUFDO1FBQ3pDLHVCQUFrQixHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV0RCxzQkFBc0I7UUFDZCxnQkFBVyxHQUFHLENBQUMsQ0FBQztRQUNoQixtQkFBYyxHQUFHLENBQUMsQ0FBQztRQUNW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Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E0RlQsdzJFQXhHQyxZQUFZLCtCQUNaLE9BQU8sa0pBQ1AsVUFBVSw4RUFDVixhQUFhLDBGQUNiLFNBQVMsb1BBQ1QsT0FBTywySkFDUCxTQUFTLG9HQUNULFVBQVUsbUZBQ1YsVUFBVSx3S0FDVixjQUFjLHlFQUNkLGVBQWU7OzRGQWlHTixhQUFhO2tCQS9HekIsU0FBUzsrQkFDRSxVQUFVLGNBQ1IsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osT0FBTzt3QkFDUCxVQUFVO3dCQUNWLGFBQWE7d0JBQ2IsU0FBUzt3QkFDVCxPQUFPO3dCQUNQLFNBQVM7d0JBQ1QsVUFBVTt3QkFDVixVQUFVO3dCQUNWLGNBQWM7d0JBQ2QsZUFBZTtxQkFDaEIsWUFDUzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E0RlQ7OEJBcUJRLEtBQUs7c0JBQWIsS0FBSztnQkFnQ04sWUFBWTtzQkFEWCxZQUFZO3VCQUFDLHFCQUFxQixFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVkvQyxVQUFVO3NCQURULFlBQVk7dUJBQUMsbUJBQW1CLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBdUg3QyxpQkFBaUI7c0JBRGhCLFlBQVk7dUJBQUMsc0JBQXNCLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBU2hELGVBQWU7c0JBRGQsWUFBWTt1QkFBQyxvQkFBb0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIGNvbXB1dGVkLFxuICBFbGVtZW50UmVmLFxuICBIb3N0TGlzdGVuZXIsXG4gIGluamVjdCxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBzaWduYWwsXG4gIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgSW9uQnV0dG9uLFxuICBJb25CdXR0b25zLFxuICBJb25Db250ZW50LFxuICBJb25IZWFkZXIsXG4gIElvbkljb24sXG4gIElvbk1lbnUsXG4gIElvbk1lbnVUb2dnbGUsXG4gIElvblRvb2xiYXIsXG4gIE1lbnVDb250cm9sbGVyLFxufSBmcm9tICdAaW9uaWMvYW5ndWxhci9zdGFuZGFsb25lJztcbmltcG9ydCB7IEltYWdlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYXRvbXMvaW1hZ2UvaW1hZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2F0b21zL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IE1lbnVNZXRhZGF0YSB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgSTE4blNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9pMThuJztcblxuLyoqXG4gKiB2YWwtbWVudVxuICpcbiAqIEEgc2lkZSBtZW51IGNvbXBvbmVudCB1c2luZyBJb25pYyBJb25NZW51IHdpdGggY3VzdG9taXphYmxlIGxvZ28sXG4gKiBjbG9zZSBidXR0b24sIGFuZCBjb250ZW50IHByb2plY3Rpb24gZm9yIG1lbnUgaXRlbXMuXG4gKlxuICogQGV4YW1wbGVcbiAqIDx2YWwtbWVudVxuICogICBbcHJvcHNdPVwie1xuICogICAgIGlkOiAnbWFpbi1tZW51JyxcbiAqICAgICBjb250ZW50SWQ6ICdtYWluLWNvbnRlbnQnLFxuICogICAgIHNpZGU6ICdzdGFydCcsXG4gKiAgICAgdHlwZTogJ292ZXJsYXknLFxuICogICAgIHN3aXBlOiB0cnVlLFxuICogICAgIHNob3dDbG9zZUJ1dHRvbjogdHJ1ZVxuICogICB9XCJcbiAqID5cbiAqICAgPHZhbC1saW5rcy1hY2NvcmRpb24gW3Byb3BzXT1cIm1lbnVMaW5rc1wiPjwvdmFsLWxpbmtzLWFjY29yZGlvbj5cbiAqIDwvdmFsLW1lbnU+XG4gKlxuICogPGlvbi1yb3V0ZXItb3V0bGV0IGlkPVwibWFpbi1jb250ZW50XCI+PC9pb24tcm91dGVyLW91dGxldD5cbiAqXG4gKiBAaW5wdXQgcHJvcHMgLSBNZW51IGNvbmZpZ3VyYXRpb25cbiAqL1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtbWVudScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgSW9uTWVudSxcbiAgICBJb25CdXR0b25zLFxuICAgIElvbk1lbnVUb2dnbGUsXG4gICAgSW9uQnV0dG9uLFxuICAgIElvbkljb24sXG4gICAgSW9uSGVhZGVyLFxuICAgIElvblRvb2xiYXIsXG4gICAgSW9uQ29udGVudCxcbiAgICBJbWFnZUNvbXBvbmVudCxcbiAgICBCdXR0b25Db21wb25lbnQsXG4gIF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGlvbi1tZW51XG4gICAgICBbbWVudUlkXT1cInByb3BzLmlkXCJcbiAgICAgIFtjb250ZW50SWRdPVwicHJvcHMuY29udGVudElkXCJcbiAgICAgIFt0eXBlXT1cInByb3BzLnR5cGUgfHwgJ292ZXJsYXknXCJcbiAgICAgIFtzaWRlXT1cInByb3BzLnNpZGUgfHwgJ3N0YXJ0J1wiXG4gICAgICBbc3dpcGVHZXN0dXJlXT1cInByb3BzLnN3aXBlICE9PSBmYWxzZVwiXG4gICAgICBbY2xhc3MuaXMtZGVza3RvcC1jb2xsYXBzaWJsZV09XCJyZXRyYWN0YWJsZU1lbnVFbmFibGVkKClcIlxuICAgICAgW2NsYXNzLmlzLWRlc2t0b3AtY29sbGFwc2VkXT1cImlzRGVza3RvcENvbGxhcHNlZCgpXCJcbiAgICAgIFtzdHlsZS4tLXZhbC1tZW51LWV4cGFuZGVkLXdpZHRoXT1cInByb3BzLmRlc2t0b3BFeHBhbmRlZFdpZHRoIHx8IG51bGxcIlxuICAgICAgW3N0eWxlLi0tdmFsLW1lbnUtY29sbGFwc2VkLXdpZHRoXT1cInByb3BzLmRlc2t0b3BDb2xsYXBzZWRXaWR0aCB8fCBudWxsXCJcbiAgICA+XG4gICAgICA8IS0tIEVkZ2UgaW5kaWNhdG9yOiB0aGluIGxpbmUgb24gcmlnaHQgZWRnZSwgY2xpY2sgb3Igc3dpcGUgdG8gY29sbGFwc2UvZXhwYW5kIC0tPlxuICAgICAgQGlmIChyZXRyYWN0YWJsZU1lbnVFbmFibGVkKCkpIHtcbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwibWVudS1lZGdlLXN3aXBlLWluZGljYXRvclwiXG4gICAgICAgICAgcm9sZT1cImJ1dHRvblwiXG4gICAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImRlc2t0b3BDb2xsYXBzZUJ1dHRvbkxhYmVsKClcIlxuICAgICAgICAgIChwb2ludGVyZG93bik9XCJvbkVkZ2VQb2ludGVyRG93bigkZXZlbnQpXCJcbiAgICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJ0b2dnbGVEZXNrdG9wQ29sbGFwc2UoKVwiXG4gICAgICAgICAgKGtleWRvd24uc3BhY2UpPVwidG9nZ2xlRGVza3RvcENvbGxhcHNlKClcIlxuICAgICAgICA+PC9kaXY+XG4gICAgICB9XG4gICAgICA8aW9uLWhlYWRlciBbY2xhc3MuaW9uLW5vLWJvcmRlcl09XCJ0cnVlXCI+XG4gICAgICAgIDxpb24tdG9vbGJhcj5cbiAgICAgICAgICA8aW9uLWJ1dHRvbnMgc2xvdD1cInN0YXJ0XCIgY2xhc3M9XCJtZW51LWxvZ28tc2xvdFwiPlxuICAgICAgICAgICAgPHZhbC1pbWFnZVxuICAgICAgICAgICAgICBbcHJvcHNdPVwie1xuICAgICAgICAgICAgICAgIHNyYzogJy0tbWFpbi1sb2dvLW1pbmknLFxuICAgICAgICAgICAgICAgIGFsdDogJ21lbnUgbG9nbycsXG4gICAgICAgICAgICAgICAgbW9kZTogJ2JveCcsXG4gICAgICAgICAgICAgICAgc2hhZGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBib3JkZXJlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgc2l6ZTogJ3NtYWxsJyxcbiAgICAgICAgICAgICAgICBsaW1pdGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICB3aWR0aDogMixcbiAgICAgICAgICAgICAgICBmbGV4OiB0cnVlLFxuICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9pb24tYnV0dG9ucz5cblxuICAgICAgICAgIDxpb24tYnV0dG9ucyBzbG90PVwiZW5kXCI+XG4gICAgICAgICAgICA8aW9uLW1lbnUtdG9nZ2xlIGNsYXNzPVwibWVudS1tb2JpbGUtY2xvc2VcIj5cbiAgICAgICAgICAgICAgPGlvbi1idXR0b24+XG4gICAgICAgICAgICAgICAgPGlvbi1pY29uIGNvbG9yPVwiZGFya1wiIHNsb3Q9XCJpY29uLW9ubHlcIiBuYW1lPVwiY2xvc2Utb3V0bGluZVwiPjwvaW9uLWljb24+XG4gICAgICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cbiAgICAgICAgICAgIDwvaW9uLW1lbnUtdG9nZ2xlPlxuICAgICAgICAgIDwvaW9uLWJ1dHRvbnM+XG4gICAgICAgIDwvaW9uLXRvb2xiYXI+XG4gICAgICA8L2lvbi1oZWFkZXI+XG4gICAgICA8aW9uLWNvbnRlbnQ+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cIm1lbnUtcHJvamVjdGVkLWNvbnRlbnRcIlxuICAgICAgICAgICh2YWxNZW51RXhwYW5kUmVxdWVzdCk9XCJleHBhbmREZXNrdG9wUmFpbCgpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2lvbi1jb250ZW50PlxuICAgICAgQGlmIChyZXRyYWN0YWJsZU1lbnVFbmFibGVkKCkpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1lbnUtY29sbGFwc2UtZm9vdGVyXCI+XG4gICAgICAgICAgPGlvbi1idXR0b25cbiAgICAgICAgICAgIGNsYXNzPVwibWVudS1jb2xsYXBzZS10b2dnbGVcIlxuICAgICAgICAgICAgZmlsbD1cImNsZWFyXCJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiZGVza3RvcENvbGxhcHNlQnV0dG9uTGFiZWwoKVwiXG4gICAgICAgICAgICBbYXR0ci5hcmlhLXByZXNzZWRdPVwiaXNEZXNrdG9wQ29sbGFwc2VkKClcIlxuICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZURlc2t0b3BDb2xsYXBzZSgpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8aW9uLWljb24gY29sb3I9XCJtZWRpdW1cIiBzbG90PVwiaWNvbi1vbmx5XCIgW25hbWVdPVwiZGVza3RvcENvbGxhcHNlSWNvbigpXCI+PC9pb24taWNvbj5cbiAgICAgICAgICA8L2lvbi1idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgICAgQGlmIChwcm9wcy5zaG93Q2xvc2VCdXR0b24pIHtcbiAgICAgICAgPHZhbC1idXR0b25cbiAgICAgICAgICBjbGFzcz1cIm1lbnUtY2xvc2UtYnV0dG9uXCJcbiAgICAgICAgICBbcHJvcHNdPVwie1xuICAgICAgICAgICAgdGV4dDogY2xvc2VCdXR0b25UZXh0KCksXG4gICAgICAgICAgICBjb2xvcjogJ2RhcmsnLFxuICAgICAgICAgICAgc2l6ZTogJ2RlZmF1bHQnLFxuICAgICAgICAgICAgdHlwZTogJ2J1dHRvbicsXG4gICAgICAgICAgICBzdGF0ZTogJ0VOQUJMRUQnLFxuICAgICAgICAgICAgZmlsbDogJ291dGxpbmUnLFxuICAgICAgICAgICAgc2hhcGU6ICdyb3VuZCcsXG4gICAgICAgICAgICBpY29uOiB7XG4gICAgICAgICAgICAgIG5hbWU6ICdjbG9zZS1vdXRsaW5lJyxcbiAgICAgICAgICAgICAgc2xvdDogJ3N0YXJ0JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfVwiXG4gICAgICAgICAgKG9uQ2xpY2spPVwiY2xvc2VNZW51KClcIlxuICAgICAgICAvPlxuICAgICAgfVxuICAgIDwvaW9uLW1lbnU+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL21lbnUuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTWVudUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBtZW51Q3RybCA9IGluamVjdChNZW51Q29udHJvbGxlcik7XG4gIHByaXZhdGUgaTE4biA9IGluamVjdChJMThuU2VydmljZSk7XG4gIHByaXZhdGUgZWxlbWVudFJlZiA9IGluamVjdDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oRWxlbWVudFJlZik7XG4gIHByaXZhdGUgc3BsaXRQYW5lPzogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgc3BsaXRQYW5lT3JpZ2luYWxTdHlsZXMgPSBuZXcgTWFwPHN0cmluZywgc3RyaW5nPigpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNEZXNrdG9wQ29sbGFwc2VkID0gc2lnbmFsKGZhbHNlKTtcblxuICAvLyBFZGdlLXN3aXBlIHRyYWNraW5nXG4gIHByaXZhdGUgdG91Y2hTdGFydFggPSAwO1xuICBwcml2YXRlIHRvdWNoU3RhcnRUaW1lID0gMDtcbiAgcHJpdmF0ZSByZWFkb25seSBFREdFX1NXSVBFX1RIUkVTSE9MRCA9IDIwOyAvLyBweCBmcm9tIGxlZnQgZWRnZVxuICBwcml2YXRlIHJlYWRvbmx5IE1JTl9TV0lQRV9ESVNUQU5DRSA9IDgwOyAvLyBweCB0byB0cmlnZ2VyXG4gIHByaXZhdGUgcmVhZG9ubHkgTUFYX1NXSVBFX0RVUkFUSU9OID0gNTAwOyAvLyBtc1xuXG4gIC8qKlxuICAgKiBNZW51IGNvbmZpZ3VyYXRpb24uXG4gICAqL1xuICBASW5wdXQoKSBwcm9wczogTWVudU1ldGFkYXRhID0ge1xuICAgIHNpZGU6ICdzdGFydCcsXG4gICAgdHlwZTogJ292ZXJsYXknLFxuICAgIHN3aXBlOiB0cnVlLFxuICB9O1xuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBjb25zdCBwcm9wc0NoYW5nZSA9IGNoYW5nZXNbJ3Byb3BzJ107XG4gICAgaWYgKCFwcm9wc0NoYW5nZSkgcmV0dXJuO1xuXG4gICAgY29uc3QgcHJldmlvdXMgPSBwcm9wc0NoYW5nZS5wcmV2aW91c1ZhbHVlIGFzIE1lbnVNZXRhZGF0YSB8IHVuZGVmaW5lZDtcbiAgICBpZiAoIXRoaXMucmV0cmFjdGFibGVNZW51RW5hYmxlZCgpKSB7XG4gICAgICB0aGlzLmlzRGVza3RvcENvbGxhcHNlZC5zZXQoZmFsc2UpO1xuICAgIH0gZWxzZSBpZiAoXG4gICAgICBwcm9wc0NoYW5nZS5maXJzdENoYW5nZSB8fFxuICAgICAgcHJldmlvdXM/LmRlc2t0b3BDb2xsYXBzZWQgIT09IHRoaXMucHJvcHMuZGVza3RvcENvbGxhcHNlZCB8fFxuICAgICAgcHJldmlvdXM/LnJldHJhY3RhYmxlTWVudSAhPT0gdGhpcy5wcm9wcy5yZXRyYWN0YWJsZU1lbnVcbiAgICApIHtcbiAgICAgIHRoaXMuaXNEZXNrdG9wQ29sbGFwc2VkLnNldCghIXRoaXMucHJvcHMuZGVza3RvcENvbGxhcHNlZCk7XG4gICAgfVxuICAgIHRoaXMuc3luY1NwbGl0UGFuZVdpZHRoKCk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zeW5jU3BsaXRQYW5lV2lkdGgoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMucmVzdG9yZVNwbGl0UGFuZVdpZHRoKCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDp0b3VjaHN0YXJ0JywgWyckZXZlbnQnXSlcbiAgb25Ub3VjaFN0YXJ0KGV2ZW50OiBUb3VjaEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnJldHJhY3RhYmxlTWVudUVuYWJsZWQoKSB8fCBldmVudC50b3VjaGVzLmxlbmd0aCA9PT0gMCkgcmV0dXJuO1xuICAgIGNvbnN0IHRvdWNoID0gZXZlbnQudG91Y2hlc1swXTtcbiAgICAvLyBTb2xvIGRldGVjdGFyIGRlc2RlIGJvcmRlIGl6cXVpZXJkb1xuICAgIGlmICh0b3VjaC5jbGllbnRYIDw9IHRoaXMuRURHRV9TV0lQRV9USFJFU0hPTEQpIHtcbiAgICAgIHRoaXMudG91Y2hTdGFydFggPSB0b3VjaC5jbGllbnRYO1xuICAgICAgdGhpcy50b3VjaFN0YXJ0VGltZSA9IERhdGUubm93KCk7XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6dG91Y2hlbmQnLCBbJyRldmVudCddKVxuICBvblRvdWNoRW5kKGV2ZW50OiBUb3VjaEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnJldHJhY3RhYmxlTWVudUVuYWJsZWQoKSB8fCB0aGlzLnRvdWNoU3RhcnRYID09PSAwKSByZXR1cm47XG5cbiAgICBjb25zdCBjaGFuZ2VkVG91Y2ggPSBldmVudC5jaGFuZ2VkVG91Y2hlc1swXTtcbiAgICBjb25zdCB0b3VjaEVuZFggPSBjaGFuZ2VkVG91Y2guY2xpZW50WDtcbiAgICBjb25zdCBkaXN0YW5jZSA9IHRvdWNoRW5kWCAtIHRoaXMudG91Y2hTdGFydFg7XG4gICAgY29uc3QgZHVyYXRpb24gPSBEYXRlLm5vdygpIC0gdGhpcy50b3VjaFN0YXJ0VGltZTtcblxuICAgIC8vIFZhbGlkYXI6IHN3aXBlIGhhY2lhIGxhIGRlcmVjaGEsIGRpc3RhbmNpYSBtw61uaW1hLCBkdXJhY2nDs24gbcOheGltYVxuICAgIGlmIChkaXN0YW5jZSA+PSB0aGlzLk1JTl9TV0lQRV9ESVNUQU5DRSAmJiBkdXJhdGlvbiA8PSB0aGlzLk1BWF9TV0lQRV9EVVJBVElPTikge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMudG9nZ2xlRGVza3RvcENvbGxhcHNlKCk7XG4gICAgfVxuXG4gICAgdGhpcy50b3VjaFN0YXJ0WCA9IDA7XG4gIH1cblxuICAvKipcbiAgICogQ2xvc2UgYnV0dG9uIHRleHQgLSByZWFjdGl2ZSB0byBsYW5ndWFnZSBjaGFuZ2VzLlxuICAgKi9cbiAgY2xvc2VCdXR0b25UZXh0ID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIHRoaXMuaTE4bi5sYW5nKCk7IC8vIFRyYWNrIGxhbmd1YWdlIGNoYW5nZXNcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5jbG9zZUJ1dHRvblRleHQgfHwgdGhpcy5pMThuLnQoJ2Nsb3NlJyk7XG4gIH0pO1xuXG4gIC8qKlxuICAgKiBDbG9zZXMgdGhlIG1lbnUuXG4gICAqL1xuICBhc3luYyBjbG9zZU1lbnUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5tZW51Q3RybC5jbG9zZSh0aGlzLnByb3BzLmlkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeHBhbmRlIGVsIHJhaWwgYSBwZWRpZG8gZGUgbG8gcXVlIGVzdMOhIHByb3llY3RhZG8gYWRlbnRyby4gVW5hIHNlY2Npw7NuIHF1ZVxuICAgKiBzb2xvIGFncnVwYSBoaWpvcyBubyBwdWVkZSBkZXNwbGVnYXJzZSBlbiA1NnB4LCBhc8OtIHF1ZSBwaWRlIGx1Z2FyIGVuIHZlelxuICAgKiBkZSBubyBoYWNlciBuYWRhLlxuICAgKi9cbiAgZXhwYW5kRGVza3RvcFJhaWwoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnJldHJhY3RhYmxlTWVudUVuYWJsZWQoKSB8fCAhdGhpcy5pc0Rlc2t0b3BDb2xsYXBzZWQoKSkgcmV0dXJuO1xuICAgIHRoaXMuaXNEZXNrdG9wQ29sbGFwc2VkLnNldChmYWxzZSk7XG4gICAgdGhpcy5zeW5jU3BsaXRQYW5lV2lkdGgoKTtcbiAgfVxuXG4gIHRvZ2dsZURlc2t0b3BDb2xsYXBzZSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMucmV0cmFjdGFibGVNZW51RW5hYmxlZCgpKSByZXR1cm47XG4gICAgdGhpcy5pc0Rlc2t0b3BDb2xsYXBzZWQudXBkYXRlKGNvbGxhcHNlZCA9PiAhY29sbGFwc2VkKTtcbiAgICB0aGlzLnN5bmNTcGxpdFBhbmVXaWR0aCgpO1xuICB9XG5cbiAgcmV0cmFjdGFibGVNZW51RW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISEodGhpcy5wcm9wcy5yZXRyYWN0YWJsZU1lbnUgPz8gdGhpcy5wcm9wcy5kZXNrdG9wQ29sbGFwc2libGUpO1xuICB9XG5cbiAgZGVza3RvcENvbGxhcHNlQnV0dG9uTGFiZWwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pc0Rlc2t0b3BDb2xsYXBzZWQoKVxuICAgICAgPyB0aGlzLnByb3BzLmRlc2t0b3BFeHBhbmRMYWJlbCB8fCAnRXhwYW5kaXIgbWVuw7onXG4gICAgICA6IHRoaXMucHJvcHMuZGVza3RvcENvbGxhcHNlTGFiZWwgfHwgJ0NvbnRyYWVyIG1lbsO6JztcbiAgfVxuXG4gIGRlc2t0b3BDb2xsYXBzZUljb24oKTogc3RyaW5nIHtcbiAgICBjb25zdCBpc0VuZCA9IHRoaXMucHJvcHMuc2lkZSA9PT0gJ2VuZCc7XG4gICAgaWYgKHRoaXMuaXNEZXNrdG9wQ29sbGFwc2VkKCkpIHtcbiAgICAgIHJldHVybiBpc0VuZCA/ICdjaGV2cm9uLWJhY2stY2lyY2xlLW91dGxpbmUnIDogJ2NoZXZyb24tZm9yd2FyZC1jaXJjbGUtb3V0bGluZSc7XG4gICAgfVxuICAgIHJldHVybiBpc0VuZCA/ICdjaGV2cm9uLWZvcndhcmQtY2lyY2xlLW91dGxpbmUnIDogJ2NoZXZyb24tYmFjay1jaXJjbGUtb3V0bGluZSc7XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gQXJyYXN0cmUgZGVsIGJvcmRlXG4gIC8vXG4gIC8vIEFycmFzdHJhciBlbmdhbmNoYSBhIGFiaWVydG8vY2VycmFkbzsgTk8gZXMgYWp1c3RlIGxpYnJlIGRlIGFuY2hvLiBFbCBhbmNob1xuICAvLyBkZSBjb250ZW5pZG8gdGllbmUgZXN0YWRvcyBkZWZpbmlkb3MgKHZhbC1jb250YWluZXIgbG9zIGxlZSB2w61hIGRhdGEtbWVudSksXG4gIC8vIGFzw60gcXVlIHVuIGFuY2hvIGFyYml0cmFyaW8gZGVqYXLDrWEgZWwgY29udGVuaWRvIGEgbWVyY2VkIGRlIGTDs25kZSBzb2x0w7MgZWxcbiAgLy8gbW91c2UgY2FkYSB1c3VhcmlvLiBEdXJhbnRlIGVsIGFycmFzdHJlIGVsIHJhaWwgc8OtIHNpZ3VlIGFsIHB1bnRlcm8g4oCUIGVsXG4gIC8vIGVuZ2FuY2hlIG9jdXJyZSBhbCBzb2x0YXIsIGNvbnRyYSBlbCBwdW50byBtZWRpbyBlbnRyZSBhbWJvcyBhbmNob3MuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIHByaXZhdGUgZHJhZ1N0YXJ0WCA9IDA7XG4gIHByaXZhdGUgZHJhZ1N0YXJ0V2lkdGggPSAwO1xuICBwcml2YXRlIGRyYWdCb3VuZHM6IHsgY29sbGFwc2VkOiBudW1iZXI7IGV4cGFuZGVkOiBudW1iZXIgfSB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIGRyYWdnaW5nID0gZmFsc2U7XG4gIC8qKiBQb3IgZGViYWpvIGRlIGVzdG8gbm8gaHVibyBhcnJhc3RyZTogZnVlIHVuIGNsaWNrIHNvYnJlIGVsIGJvcmRlLiAqL1xuICBwcml2YXRlIHJlYWRvbmx5IERSQUdfQ0xJQ0tfU0xPUCA9IDU7XG5cbiAgb25FZGdlUG9pbnRlckRvd24oZXZlbnQ6IFBvaW50ZXJFdmVudCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5yZXRyYWN0YWJsZU1lbnVFbmFibGVkKCkpIHJldHVybjtcbiAgICBjb25zdCBtZW51ID0gdGhpcy5tZW51RWxlbWVudCgpO1xuICAgIGNvbnN0IHNwbGl0UGFuZSA9IHRoaXMuZmluZFNwbGl0UGFuZSgpO1xuICAgIGlmICghbWVudSB8fCAhc3BsaXRQYW5lKSByZXR1cm47XG5cbiAgICBjb25zdCBjb2xsYXBzZWQgPSB0aGlzLnJlc29sdmVXaWR0aFB4KHRoaXMuY29sbGFwc2VkV2lkdGhWYWx1ZSgpKTtcbiAgICBjb25zdCBleHBhbmRlZCA9IHRoaXMucmVzb2x2ZVdpZHRoUHgodGhpcy5leHBhbmRlZFdpZHRoVmFsdWUoKSk7XG4gICAgLy8gU2kgZWwgc29uZGVvIG5vIHB1ZG8gcmVzb2x2ZXIgbG9zIGFuY2hvcywgZWwgYXJyYXN0cmUgbm8gdGllbmUgY29udHJhIHF1w6lcbiAgICAvLyBlbmdhbmNoYXI6IHNlIGRlZ3JhZGEgYSBjbGljayBwdXJvIChlbCBwb2ludGVydXAgc2luIGJvdW5kcyBubyBoYWNlIG5hZGFcbiAgICAvLyB5IGVsIHNsb3AgbG8gdHJhdGEgY29tbyB0b2dnbGUpLlxuICAgIGlmICghKGV4cGFuZGVkID4gY29sbGFwc2VkKSkgcmV0dXJuO1xuXG4gICAgdGhpcy5kcmFnZ2luZyA9IHRydWU7XG4gICAgdGhpcy5kcmFnU3RhcnRYID0gZXZlbnQuY2xpZW50WDtcbiAgICAvLyBBbmNsYSBlbiBlbCBhbmNobyBERUNMQVJBRE8gZGVsIGVzdGFkbyBhY3R1YWwsIG5vIGVuIGVsIG1lZGlkby4gU2kgZWxcbiAgICAvLyBtZW7DuiBlc3TDoSByZW5kZXJpemFkbyBhIHVuIGFuY2hvIHF1ZSBubyBlcyBuaW5ndW5vIGRlIGxvcyBkb3MgKGxheW91dFxuICAgIC8vIGVuIHRyYW5zaWNpw7NuLCBlc3RpbG9zIGRlIGxhIGFwcCksIG1lZGlyIGNvcnJlIGVsIG9yaWdlbiBkZWwgYXJyYXN0cmUgeVxuICAgIC8vIGVsIGVuZ2FuY2hlIGNhZSBkZWwgbGFkbyBlcXVpdm9jYWRvLlxuICAgIHRoaXMuZHJhZ1N0YXJ0V2lkdGggPSB0aGlzLmlzRGVza3RvcENvbGxhcHNlZCgpID8gY29sbGFwc2VkIDogZXhwYW5kZWQ7XG4gICAgdGhpcy5kcmFnQm91bmRzID0geyBjb2xsYXBzZWQsIGV4cGFuZGVkIH07XG4gICAgc3BsaXRQYW5lLmNsYXNzTGlzdC5hZGQoJ3ZhbC1tZW51LWRyYWdnaW5nJyk7XG4gICAgLy8gTGEgY2FwdHVyYSBtYW50aWVuZSBlbCBhcnJhc3RyZSB2aXZvIHNpIGVsIHB1bnRlcm8gc2Ugc2FsZSBkZWwgYm9yZGUuXG4gICAgLy8gRXMgdW5hIG1lam9yYSwgbm8gdW4gcmVxdWlzaXRvOiBsYW56YSBjdWFuZG8gZWwgcG9pbnRlcklkIG5vIGNvcnJlc3BvbmRlIGFcbiAgICAvLyB1biBwdW50ZXJvIGFjdGl2bywgeSBlc2UgdGhyb3cgbm8gcHVlZGUgbGxldmFyc2UgcHVlc3RvIGVsIGdlc3RvLlxuICAgIHRyeSB7XG4gICAgICAoZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5zZXRQb2ludGVyQ2FwdHVyZT8uKGV2ZW50LnBvaW50ZXJJZCk7XG4gICAgfSBjYXRjaCB7XG4gICAgICAvKiBzaW4gY2FwdHVyYTogZWwgYXJyYXN0cmUgc2lndWUgZnVuY2lvbmFuZG8gdsOtYSBsaXN0ZW5lcnMgZGUgZG9jdW1lbnQgKi9cbiAgICB9XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OnBvaW50ZXJtb3ZlJywgWyckZXZlbnQnXSlcbiAgb25FZGdlUG9pbnRlck1vdmUoZXZlbnQ6IFBvaW50ZXJFdmVudCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5kcmFnZ2luZykgcmV0dXJuO1xuICAgIGNvbnN0IHNwbGl0UGFuZSA9IHRoaXMuZmluZFNwbGl0UGFuZSgpO1xuICAgIGlmICghc3BsaXRQYW5lKSByZXR1cm47XG4gICAgdGhpcy5hcHBseVNwbGl0UGFuZVdpZHRoKHNwbGl0UGFuZSwgYCR7dGhpcy53aWR0aEZyb21Qb2ludGVyKGV2ZW50LmNsaWVudFgpfXB4YCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpwb2ludGVydXAnLCBbJyRldmVudCddKVxuICBvbkVkZ2VQb2ludGVyVXAoZXZlbnQ6IFBvaW50ZXJFdmVudCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5kcmFnZ2luZyB8fCAhdGhpcy5kcmFnQm91bmRzKSByZXR1cm47XG5cbiAgICBjb25zdCB7IGNvbGxhcHNlZCwgZXhwYW5kZWQgfSA9IHRoaXMuZHJhZ0JvdW5kcztcbiAgICBjb25zdCB3aWR0aCA9IHRoaXMud2lkdGhGcm9tUG9pbnRlcihldmVudC5jbGllbnRYKTtcbiAgICBjb25zdCB0cmF2ZWxsZWQgPSBNYXRoLmFicyhldmVudC5jbGllbnRYIC0gdGhpcy5kcmFnU3RhcnRYKTtcblxuICAgIHRoaXMuZHJhZ2dpbmcgPSBmYWxzZTtcbiAgICB0aGlzLmRyYWdCb3VuZHMgPSBudWxsO1xuICAgIHRoaXMuZmluZFNwbGl0UGFuZSgpPy5jbGFzc0xpc3QucmVtb3ZlKCd2YWwtbWVudS1kcmFnZ2luZycpO1xuXG4gICAgaWYgKHRyYXZlbGxlZCA8IHRoaXMuRFJBR19DTElDS19TTE9QKSB7XG4gICAgICB0aGlzLnRvZ2dsZURlc2t0b3BDb2xsYXBzZSgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmlzRGVza3RvcENvbGxhcHNlZC5zZXQod2lkdGggPCAoY29sbGFwc2VkICsgZXhwYW5kZWQpIC8gMik7XG4gICAgdGhpcy5zeW5jU3BsaXRQYW5lV2lkdGgoKTtcbiAgfVxuXG4gIC8qKiBBbmNobyBxdWUgY29ycmVzcG9uZGUgYWwgcHVudGVybywgYWNvdGFkbyBhIGxvcyBkb3MgZXh0cmVtb3MuICovXG4gIHByaXZhdGUgd2lkdGhGcm9tUG9pbnRlcihjbGllbnRYOiBudW1iZXIpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5kcmFnQm91bmRzKSByZXR1cm4gdGhpcy5kcmFnU3RhcnRXaWR0aDtcbiAgICBjb25zdCBkZWx0YSA9IGNsaWVudFggLSB0aGlzLmRyYWdTdGFydFg7XG4gICAgY29uc3QgcmF3ID1cbiAgICAgIHRoaXMucHJvcHMuc2lkZSA9PT0gJ2VuZCdcbiAgICAgICAgPyB0aGlzLmRyYWdTdGFydFdpZHRoIC0gZGVsdGFcbiAgICAgICAgOiB0aGlzLmRyYWdTdGFydFdpZHRoICsgZGVsdGE7XG4gICAgcmV0dXJuIE1hdGgubWluKHRoaXMuZHJhZ0JvdW5kcy5leHBhbmRlZCwgTWF0aC5tYXgodGhpcy5kcmFnQm91bmRzLmNvbGxhcHNlZCwgcmF3KSk7XG4gIH1cblxuICAvKipcbiAgICogUmVzdWVsdmUgdW4gYW5jaG8gQ1NTIGEgcMOteGVsZXMgbWlkaWVuZG8gdW4gZWxlbWVudG8gZGUgc29uZGVvLiBIYWNlIGZhbHRhXG4gICAqIHBvcnF1ZSBsb3MgdmFsb3JlcyBzb24gZXhwcmVzaW9uZXMgKGBtaW4oNDB2dywgMjJyZW0pYCkgcXVlIGdldENvbXB1dGVkU3R5bGVcbiAgICogZGV2dWVsdmUgc2luIHJlc29sdmVyIGN1YW5kbyB2aXZlbiBlbiB1bmEgY3VzdG9tIHByb3BlcnR5LlxuICAgKi9cbiAgcHJpdmF0ZSByZXNvbHZlV2lkdGhQeCh2YWx1ZTogc3RyaW5nKTogbnVtYmVyIHtcbiAgICBjb25zdCBwcm9iZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgIHByb2JlLnN0eWxlLmNzc1RleHQgPSBgcG9zaXRpb246YWJzb2x1dGU7dmlzaWJpbGl0eTpoaWRkZW47cG9pbnRlci1ldmVudHM6bm9uZTt3aWR0aDoke3ZhbHVlfTtgO1xuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKHByb2JlKTtcbiAgICBjb25zdCBweCA9IHByb2JlLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoO1xuICAgIHByb2JlLnJlbW92ZSgpO1xuICAgIHJldHVybiBweDtcbiAgfVxuXG4gIHByaXZhdGUgbWVudUVsZW1lbnQoKTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignaW9uLW1lbnUnKTtcbiAgfVxuXG4gIHByaXZhdGUgY29sbGFwc2VkV2lkdGhWYWx1ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnByb3BzLmRlc2t0b3BDb2xsYXBzZWRXaWR0aCB8fCAnMy41cmVtJztcbiAgfVxuXG4gIHByaXZhdGUgZXhwYW5kZWRXaWR0aFZhbHVlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMuZGVza3RvcEV4cGFuZGVkV2lkdGggfHwgJ21pbig0MHZ3LCAyMnJlbSknO1xuICB9XG5cbiAgcHJpdmF0ZSBhcHBseVNwbGl0UGFuZVdpZHRoKHNwbGl0UGFuZTogSFRNTEVsZW1lbnQsIHdpZHRoOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBzcGxpdFBhbmUuc3R5bGUuc2V0UHJvcGVydHkoJy0tc2lkZS13aWR0aCcsIHdpZHRoKTtcbiAgICBzcGxpdFBhbmUuc3R5bGUuc2V0UHJvcGVydHkoJy0tc2lkZS1taW4td2lkdGgnLCB3aWR0aCk7XG4gICAgc3BsaXRQYW5lLnN0eWxlLnNldFByb3BlcnR5KCctLXNpZGUtbWF4LXdpZHRoJywgd2lkdGgpO1xuICB9XG5cbiAgcHJpdmF0ZSBzeW5jU3BsaXRQYW5lV2lkdGgoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnJldHJhY3RhYmxlTWVudUVuYWJsZWQoKSkge1xuICAgICAgdGhpcy5yZXN0b3JlU3BsaXRQYW5lV2lkdGgoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBzcGxpdFBhbmUgPSB0aGlzLmZpbmRTcGxpdFBhbmUoKTtcbiAgICBpZiAoIXNwbGl0UGFuZSkgcmV0dXJuO1xuXG4gICAgdGhpcy5jYXB0dXJlT3JpZ2luYWxTcGxpdFBhbmVTdHlsZXMoc3BsaXRQYW5lKTtcbiAgICBjb25zdCB3aWR0aCA9IHRoaXMuaXNEZXNrdG9wQ29sbGFwc2VkKClcbiAgICAgID8gdGhpcy5jb2xsYXBzZWRXaWR0aFZhbHVlKClcbiAgICAgIDogdGhpcy5leHBhbmRlZFdpZHRoVmFsdWUoKTtcblxuICAgIHRoaXMuYXBwbHlTcGxpdFBhbmVXaWR0aChzcGxpdFBhbmUsIHdpZHRoKTtcblxuICAgIHRoaXMubWFya1NoZWxsTWVudVN0YXRlKHNwbGl0UGFuZSk7XG4gIH1cblxuICAvKipcbiAgICogUHVibGljYSBlbCBlc3RhZG8gZGVsIG1lbsO6IGVuIGVsIHNoZWxsLCBwYXJhIHF1ZSBlbCBDT05URU5JRE8gcHVlZGFcbiAgICogYWRhcHRhcnNlLlxuICAgKlxuICAgKiBFbCBtZW7DuiB5YSBzYWLDrWEgc2kgZXN0YWJhIGFiaWVydG8gbyBjZXJyYWRvLCBwZXJvIHNvbG8gc2UgbG8gZGVjw61hIGEgc8OtXG4gICAqIG1pc21vIHkgYWwgYW5jaG8gZGVsIHBhbmU6IGVsIGNvbnRlbmlkbyBzZWd1w61hIGNvbiBlbCBtaXNtbyB0b3BlLCBhc8OtIHF1ZVxuICAgKiBlbCBlc3BhY2lvIHF1ZSBkZWphYmEgbGEgbmF2ZWdhY2nDs24gc2Ugdm9sdsOtYSBhaXJlIGxhdGVyYWwgZW4gdmV6IGRlXG4gICAqIGNvbnRlbmlkby5cbiAgICpcbiAgICogU2UgbWFyY2EgZWwgYGlvbi1zcGxpdC1wYW5lYCBwb3JxdWUgZXMgZWwgYW5jZXN0cm8gY29tw7puIGRlbCBtZW7DuiB5IGRlbFxuICAgKiBjb250ZW5pZG87IGRlc2RlIGFow60gYHZhbC1jb250YWluZXJgIGxvIGxlZSBjb24gYDpob3N0LWNvbnRleHRgIHkgbmluZ3VuYVxuICAgKiBhcHAgbmVjZXNpdGEgY2FibGVhciBuYWRhLiBFbCBhdHJpYnV0byBzZSBsaW1waWEgYWwgcmVzdGF1cmFyICh2ZXJcbiAgICogcmVzdG9yZVNwbGl0UGFuZVdpZHRoKSBwYXJhIG5vIGRlamFyIHVuIHNoZWxsIFwiY29sYXBzYWRvXCIgY3VhbmRvIGVsIHJhaWxcbiAgICogZGVqYSBkZSBlc3RhciBhY3Rpdm8uXG4gICAqL1xuICBwcml2YXRlIG1hcmtTaGVsbE1lbnVTdGF0ZShzcGxpdFBhbmU6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgc3BsaXRQYW5lLnNldEF0dHJpYnV0ZShcbiAgICAgICdkYXRhLW1lbnUnLFxuICAgICAgdGhpcy5pc0Rlc2t0b3BDb2xsYXBzZWQoKSA/ICdjb2xsYXBzZWQnIDogJ2V4cGFuZGVkJyxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBmaW5kU3BsaXRQYW5lKCk6IEhUTUxFbGVtZW50IHwgdW5kZWZpbmVkIHtcbiAgICBpZiAodGhpcy5zcGxpdFBhbmU/LmlzQ29ubmVjdGVkKSByZXR1cm4gdGhpcy5zcGxpdFBhbmU7XG4gICAgdGhpcy5zcGxpdFBhbmUgPSAodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2xvc2VzdCgnaW9uLXNwbGl0LXBhbmUnKSBhcyBIVE1MRWxlbWVudCB8IG51bGwpIHx8IHVuZGVmaW5lZDtcbiAgICByZXR1cm4gdGhpcy5zcGxpdFBhbmU7XG4gIH1cblxuICBwcml2YXRlIGNhcHR1cmVPcmlnaW5hbFNwbGl0UGFuZVN0eWxlcyhzcGxpdFBhbmU6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBwcm9wZXJ0eSBvZiBbJy0tc2lkZS13aWR0aCcsICctLXNpZGUtbWluLXdpZHRoJywgJy0tc2lkZS1tYXgtd2lkdGgnXSkge1xuICAgICAgaWYgKCF0aGlzLnNwbGl0UGFuZU9yaWdpbmFsU3R5bGVzLmhhcyhwcm9wZXJ0eSkpIHtcbiAgICAgICAgdGhpcy5zcGxpdFBhbmVPcmlnaW5hbFN0eWxlcy5zZXQocHJvcGVydHksIHNwbGl0UGFuZS5zdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKHByb3BlcnR5KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByZXN0b3JlU3BsaXRQYW5lV2lkdGgoKTogdm9pZCB7XG4gICAgY29uc3Qgc3BsaXRQYW5lID0gdGhpcy5maW5kU3BsaXRQYW5lKCk7XG4gICAgLy8gRWwgYXRyaWJ1dG8gc2UgcXVpdGEgYXVucXVlIG5vIGhheWEgZXN0aWxvcyBxdWUgcmVzdGF1cmFyOiBzaSBlbCByYWlsIHNlXG4gICAgLy8gZGVzYWN0aXZhLCBlbCBzaGVsbCBubyBwdWVkZSBxdWVkYXIgZGVjbGFyw6FuZG9zZSBjb2xhcHNhZG8uXG4gICAgc3BsaXRQYW5lPy5yZW1vdmVBdHRyaWJ1dGUoJ2RhdGEtbWVudScpO1xuICAgIGlmICghc3BsaXRQYW5lIHx8ICF0aGlzLnNwbGl0UGFuZU9yaWdpbmFsU3R5bGVzLnNpemUpIHJldHVybjtcblxuICAgIGZvciAoY29uc3QgW3Byb3BlcnR5LCB2YWx1ZV0gb2YgdGhpcy5zcGxpdFBhbmVPcmlnaW5hbFN0eWxlcykge1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHNwbGl0UGFuZS5zdHlsZS5zZXRQcm9wZXJ0eShwcm9wZXJ0eSwgdmFsdWUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc3BsaXRQYW5lLnN0eWxlLnJlbW92ZVByb3BlcnR5KHByb3BlcnR5KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -2,5 +2,5 @@
2
2
  * Current version of valtech-components.
3
3
  * This is automatically updated during the publish process.
4
4
  */
5
- export const VERSION = '4.0.1033';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDdXJyZW50IHZlcnNpb24gb2YgdmFsdGVjaC1jb21wb25lbnRzLlxuICogVGhpcyBpcyBhdXRvbWF0aWNhbGx5IHVwZGF0ZWQgZHVyaW5nIHRoZSBwdWJsaXNoIHByb2Nlc3MuXG4gKi9cbmV4cG9ydCBjb25zdCBWRVJTSU9OID0gJzQuMC4xMDMzJztcbiJdfQ==
5
+ export const VERSION = '4.0.1035';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDdXJyZW50IHZlcnNpb24gb2YgdmFsdGVjaC1jb21wb25lbnRzLlxuICogVGhpcyBpcyBhdXRvbWF0aWNhbGx5IHVwZGF0ZWQgZHVyaW5nIHRoZSBwdWJsaXNoIHByb2Nlc3MuXG4gKi9cbmV4cG9ydCBjb25zdCBWRVJTSU9OID0gJzQuMC4xMDM1JztcbiJdfQ==