valtech-components 4.0.152 → 4.0.154

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.
@@ -1,8 +1,8 @@
1
1
  import { CommonModule } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
2
+ import { ChangeDetectionStrategy, Component, computed, input, signal } from '@angular/core';
3
3
  import { IonIcon } from '@ionic/angular/standalone';
4
4
  import { addIcons } from 'ionicons';
5
- import { alertCircleOutline, cloudOfflineOutline, documentOutline } from 'ionicons/icons';
5
+ import { alertCircleOutline, checkmarkOutline, cloudOfflineOutline, copyOutline, documentOutline, } from 'ionicons/icons';
6
6
  import { ButtonComponent } from '../../atoms/button/button.component';
7
7
  import { TextComponent } from '../../atoms/text/text.component';
8
8
  import { TitleComponent } from '../../atoms/title/title.component';
@@ -15,6 +15,8 @@ addIcons({
15
15
  alertCircleOutline,
16
16
  cloudOfflineOutline,
17
17
  documentOutline,
18
+ copyOutline,
19
+ checkmarkOutline,
18
20
  });
19
21
  const DEFAULT_ICON_BY_VARIANT = {
20
22
  empty: 'document-outline',
@@ -47,6 +49,7 @@ const DEFAULT_ICON_BY_VARIANT = {
47
49
  export class EmptyStateComponent {
48
50
  constructor() {
49
51
  this.props = input.required();
52
+ this.copied = signal(false);
50
53
  /** Variante resuelta (default `'empty'`). */
51
54
  this.variantClass = computed(() => this.props().variant ?? 'empty');
52
55
  /** Icono final — custom si se pasó, default de la variante si no. */
@@ -73,6 +76,12 @@ export class EmptyStateComponent {
73
76
  };
74
77
  });
75
78
  }
79
+ copyOpId(opId) {
80
+ void navigator.clipboard.writeText(opId).then(() => {
81
+ this.copied.set(true);
82
+ setTimeout(() => this.copied.set(false), 1500);
83
+ });
84
+ }
76
85
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: EmptyStateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
77
86
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: EmptyStateComponent, isStandalone: true, selector: "val-empty-state", inputs: { props: { classPropertyName: "props", publicName: "props", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
78
87
  <section
@@ -113,8 +122,15 @@ export class EmptyStateComponent {
113
122
  @if (props().action; as a) {
114
123
  <val-button class="empty-state__cta" [props]="ctaProps()" (click)="a.handler()" />
115
124
  }
125
+
126
+ @if (props().operationId; as opId) {
127
+ <button class="empty-state__op-id" (click)="copyOpId(opId)" [attr.aria-label]="'Copiar ID de operación'">
128
+ <ion-icon [name]="copied() ? 'checkmark-outline' : 'copy-outline'" />
129
+ <span>{{ copied() ? 'ID copiado' : 'ID: ' + opId }}</span>
130
+ </button>
131
+ }
116
132
  </section>
117
- `, isInline: true, styles: [".empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;padding:32px 16px;min-height:240px}.empty-state__icon{color:var(--ion-color-medium)}.empty-state__emoji{line-height:1}.empty-state--error .empty-state__icon{color:var(--ion-color-warning, #ffb800)}.empty-state--offline .empty-state__icon{color:var(--ion-color-medium);opacity:.7}.empty-state__cta{margin-top:8px}\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: ButtonComponent, selector: "val-button", inputs: ["preset", "props"], outputs: ["onClick"] }, { kind: "component", type: TextComponent, selector: "val-text", inputs: ["props"] }, { kind: "component", type: TitleComponent, selector: "val-title", inputs: ["props"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
133
+ `, isInline: true, styles: [".empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;padding:32px 16px;min-height:240px}.empty-state__icon{color:var(--ion-color-medium)}.empty-state__emoji{line-height:1}.empty-state--error .empty-state__icon{color:var(--ion-color-warning, #ffb800)}.empty-state--offline .empty-state__icon{color:var(--ion-color-medium);opacity:.7}.empty-state__cta{margin-top:8px}.empty-state__op-id{display:inline-flex;align-items:center;gap:6px;margin-top:4px;padding:5px 10px;background:none;border:1px solid var(--ion-border-color, rgba(0, 0, 0, .1));border-radius:999px;cursor:pointer;color:var(--ion-color-medium);font-size:.75rem;font-family:monospace;line-height:1;transition:color .15s,border-color .15s}.empty-state__op-id:hover{color:var(--ion-color-dark);border-color:var(--ion-color-medium)}.empty-state__op-id ion-icon{font-size:.875rem;flex-shrink:0}\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: ButtonComponent, selector: "val-button", inputs: ["preset", "props"], outputs: ["onClick"] }, { kind: "component", type: TextComponent, selector: "val-text", inputs: ["props"] }, { kind: "component", type: TitleComponent, selector: "val-title", inputs: ["props"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
118
134
  }
119
135
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: EmptyStateComponent, decorators: [{
120
136
  type: Component,
@@ -157,7 +173,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
157
173
  @if (props().action; as a) {
158
174
  <val-button class="empty-state__cta" [props]="ctaProps()" (click)="a.handler()" />
159
175
  }
176
+
177
+ @if (props().operationId; as opId) {
178
+ <button class="empty-state__op-id" (click)="copyOpId(opId)" [attr.aria-label]="'Copiar ID de operación'">
179
+ <ion-icon [name]="copied() ? 'checkmark-outline' : 'copy-outline'" />
180
+ <span>{{ copied() ? 'ID copiado' : 'ID: ' + opId }}</span>
181
+ </button>
182
+ }
160
183
  </section>
161
- `, styles: [".empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;padding:32px 16px;min-height:240px}.empty-state__icon{color:var(--ion-color-medium)}.empty-state__emoji{line-height:1}.empty-state--error .empty-state__icon{color:var(--ion-color-warning, #ffb800)}.empty-state--offline .empty-state__icon{color:var(--ion-color-medium);opacity:.7}.empty-state__cta{margin-top:8px}\n"] }]
184
+ `, styles: [".empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;padding:32px 16px;min-height:240px}.empty-state__icon{color:var(--ion-color-medium)}.empty-state__emoji{line-height:1}.empty-state--error .empty-state__icon{color:var(--ion-color-warning, #ffb800)}.empty-state--offline .empty-state__icon{color:var(--ion-color-medium);opacity:.7}.empty-state__cta{margin-top:8px}.empty-state__op-id{display:inline-flex;align-items:center;gap:6px;margin-top:4px;padding:5px 10px;background:none;border:1px solid var(--ion-border-color, rgba(0, 0, 0, .1));border-radius:999px;cursor:pointer;color:var(--ion-color-medium);font-size:.75rem;font-family:monospace;line-height:1;transition:color .15s,border-color .15s}.empty-state__op-id:hover{color:var(--ion-color-dark);border-color:var(--ion-color-medium)}.empty-state__op-id ion-icon{font-size:.875rem;flex-shrink:0}\n"] }]
162
185
  }] });
163
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wdHktc3RhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9lbXB0eS1zdGF0ZS9lbXB0eS1zdGF0ZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDcEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNwQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsbUJBQW1CLEVBQUUsZUFBZSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFMUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNoRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbkUsT0FBTyxFQUFrQixlQUFlLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBRzlELCtFQUErRTtBQUMvRSxzRUFBc0U7QUFDdEUsc0VBQXNFO0FBQ3RFLFFBQVEsQ0FBQztJQUNQLGtCQUFrQjtJQUNsQixtQkFBbUI7SUFDbkIsZUFBZTtDQUNoQixDQUFDLENBQUM7QUFFSCxNQUFNLHVCQUF1QixHQUFzQztJQUNqRSxLQUFLLEVBQUUsa0JBQWtCO0lBQ3pCLEtBQUssRUFBRSxzQkFBc0I7SUFDN0IsT0FBTyxFQUFFLHVCQUF1QjtDQUNqQyxDQUFDO0FBRUY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FzQkc7QUE4RUgsTUFBTSxPQUFPLG1CQUFtQjtJQTdFaEM7UUE4RUUsVUFBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXNCLENBQUM7UUFFN0MsNkNBQTZDO1FBQ25DLGlCQUFZLEdBQUcsUUFBUSxDQUFvQixHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDO1FBRTVGLHFFQUFxRTtRQUMzRCxhQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxJQUFJLElBQUksdUJBQXVCLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUV2RywwRUFBMEU7UUFDaEUsVUFBSyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFckQsZ0NBQWdDO1FBQ3RCLGFBQVEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUVqRTs7OztXQUlHO1FBQ08sYUFBUSxHQUFHLFFBQVEsQ0FBaUIsR0FBRyxFQUFFO1lBQ2pELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxNQUFNLENBQUM7WUFDbkMsT0FBTztnQkFDTCxJQUFJLEVBQUUsTUFBTSxFQUFFLEtBQUssSUFBSSxFQUFFO2dCQUN6QixLQUFLLEVBQUUsTUFBTTtnQkFDYixJQUFJLEVBQUUsUUFBUTtnQkFDZCxJQUFJLEVBQUUsT0FBTztnQkFDYixJQUFJLEVBQUUsU0FBUztnQkFDZixLQUFLLEVBQUUsT0FBTztnQkFDZCxLQUFLLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLE9BQU87YUFDekQsQ0FBQztRQUN0QixDQUFDLENBQUMsQ0FBQztLQUNKOytHQWhDWSxtQkFBbUI7bUdBQW5CLG1CQUFtQiw4TUF4RXBCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0NULHdmQTFDUyxZQUFZLCtCQUFFLE9BQU8sMkpBQUUsZUFBZSwwR0FBRSxhQUFhLHdFQUFFLGNBQWM7OzRGQTBFcEUsbUJBQW1CO2tCQTdFL0IsU0FBUzsrQkFDRSxpQkFBaUIsY0FDZixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsY0FBYyxDQUFDLG1CQUMvRCx1QkFBdUIsQ0FBQyxNQUFNLFlBQ3JDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0NUIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW9uSWNvbiB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyL3N0YW5kYWxvbmUnO1xuaW1wb3J0IHsgYWRkSWNvbnMgfSBmcm9tICdpb25pY29ucyc7XG5pbXBvcnQgeyBhbGVydENpcmNsZU91dGxpbmUsIGNsb3VkT2ZmbGluZU91dGxpbmUsIGRvY3VtZW50T3V0bGluZSB9IGZyb20gJ2lvbmljb25zL2ljb25zJztcblxuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYXRvbXMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGV4dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2F0b21zL3RleHQvdGV4dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGl0bGVDb21wb25lbnQgfSBmcm9tICcuLi8uLi9hdG9tcy90aXRsZS90aXRsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnV0dG9uTWV0YWRhdGEsIENvbXBvbmVudFN0YXRlcyB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IEVtcHR5U3RhdGVNZXRhZGF0YSwgRW1wdHlTdGF0ZVZhcmlhbnQgfSBmcm9tICcuL3R5cGVzJztcblxuLy8gUmVnaXN0cmEgbG9zIDMgaWNvbm9zIGRlZmF1bHQgKHZhcmlhbnRlcykuIFNpIGxhIHDDoWdpbmEgcGFzYSB1biBpY29ubyBjdXN0b21cbi8vIGVuIGBwcm9wcy5pY29uYCwgZGViZSByZWdpc3RyYXJsbyBlbGxhIG1pc21hIGNvbiBhZGRJY29ucygpIOKAlCBJb25pY1xuLy8gc3RhbmRhbG9uZSBubyByZXN1ZWx2ZSBub21icmVzIGdsb2JhbCwgc29sbyBsb3MgZGVsIHJlZ2lzdHJ5IGxvY2FsLlxuYWRkSWNvbnMoe1xuICBhbGVydENpcmNsZU91dGxpbmUsXG4gIGNsb3VkT2ZmbGluZU91dGxpbmUsXG4gIGRvY3VtZW50T3V0bGluZSxcbn0pO1xuXG5jb25zdCBERUZBVUxUX0lDT05fQllfVkFSSUFOVDogUmVjb3JkPEVtcHR5U3RhdGVWYXJpYW50LCBzdHJpbmc+ID0ge1xuICBlbXB0eTogJ2RvY3VtZW50LW91dGxpbmUnLFxuICBlcnJvcjogJ2FsZXJ0LWNpcmNsZS1vdXRsaW5lJyxcbiAgb2ZmbGluZTogJ2Nsb3VkLW9mZmxpbmUtb3V0bGluZScsXG59O1xuXG4vKipcbiAqIGA8dmFsLWVtcHR5LXN0YXRlPmAg4oCUIG1vbGVjdWxlIGRlY2xhcmF0aXZvIHBhcmEgZXN0YWRvcyBkZSBcIm5vIGhheSBkYXRvcyAvXG4gKiBodWJvIGVycm9yIC8gc2luIHJlZFwiLiBSZWVtcGxhemEgZWwgcGF0csOzbiBhZC1ob2MgKGlvbi1pY29uICsgdmFsLXRpdGxlICtcbiAqIHZhbC10ZXh0ICsgdmFsLWJ1dHRvbikgcXVlIGNhZGEgcMOhZ2luYSB2ZW7DrWEgaW1wcm92aXNhbmRvLlxuICpcbiAqIFVzbyB0w61waWNvOlxuICpcbiAqIGBgYGh0bWxcbiAqIEBpZiAobG9hZGluZygpKSB7XG4gKiAgIDx2YWwtc2tlbGV0b24tbGF5b3V0IFtwcm9wc109XCIuLi5cIiAvPlxuICogfSBAZWxzZSBpZiAoZXJyb3JTdGF0ZSgpOyBhcyBlKSB7XG4gKiAgIDx2YWwtZW1wdHktc3RhdGUgW3Byb3BzXT1cImVcIiAvPlxuICogfSBAZWxzZSBpZiAoaXRlbXMoKS5sZW5ndGggPT09IDApIHtcbiAqICAgPHZhbC1lbXB0eS1zdGF0ZSBbcHJvcHNdPVwiZW1wdHlQcm9wc1wiIC8+XG4gKiB9IEBlbHNlIHtcbiAqICAgPCEtLSBjb250ZW5pZG8gbm9ybWFsIC0tPlxuICogfVxuICogYGBgXG4gKlxuICogSTE4bjogbGFzIGNhZGVuYXMgdmllbmVuIHlhIHRyYWR1Y2lkYXMgZW4gbGFzIHByb3BzIChsYSBsaWIgZXMgYWduw7NzdGljYSBkZVxuICogbmFtZXNwYWNlcykuIFBhcmEgd2lyaW5nIGF1dG9tw6F0aWNvIGRlc2RlIHVuIGVycm9yIGNhcHR1cmFkbywgdXNhciBlbFxuICogaGVscGVyIGBjcmVhdGVFcnJvclN0YXRlUHJvcHMoZXJyLCAuLi4pYCAoYHZhbHRlY2gtY29tcG9uZW50c2ApLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtZW1wdHktc3RhdGUnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBJb25JY29uLCBCdXR0b25Db21wb25lbnQsIFRleHRDb21wb25lbnQsIFRpdGxlQ29tcG9uZW50XSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiBgXG4gICAgPHNlY3Rpb25cbiAgICAgIGNsYXNzPVwiZW1wdHktc3RhdGVcIlxuICAgICAgW2NsYXNzLmVtcHR5LXN0YXRlLS1lcnJvcl09XCJ2YXJpYW50Q2xhc3MoKSA9PT0gJ2Vycm9yJ1wiXG4gICAgICBbY2xhc3MuZW1wdHktc3RhdGUtLW9mZmxpbmVdPVwidmFyaWFudENsYXNzKCkgPT09ICdvZmZsaW5lJ1wiXG4gICAgICByb2xlPVwic3RhdHVzXCJcbiAgICAgIGFyaWEtbGl2ZT1cInBvbGl0ZVwiXG4gICAgPlxuICAgICAgQGlmIChlbW9qaSgpOyBhcyBlKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJlbXB0eS1zdGF0ZV9fZW1vamlcIiBbc3R5bGUuZm9udC1zaXplLnB4XT1cImljb25TaXplKClcIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cbiAgICAgICAgICB7eyBlIH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIDxpb24taWNvbiBjbGFzcz1cImVtcHR5LXN0YXRlX19pY29uXCIgW25hbWVdPVwiaWNvbk5hbWUoKVwiIFtzdHlsZS5mb250LXNpemUucHhdPVwiaWNvblNpemUoKVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIC8+XG4gICAgICB9XG5cbiAgICAgIDx2YWwtdGl0bGVcbiAgICAgICAgW3Byb3BzXT1cIntcbiAgICAgICAgICBzaXplOiAnbGFyZ2UnLFxuICAgICAgICAgIGNvbG9yOiAnZGFyaycsXG4gICAgICAgICAgYm9sZDogdHJ1ZSxcbiAgICAgICAgICBjb250ZW50OiBwcm9wcygpLnRpdGxlLFxuICAgICAgICB9XCJcbiAgICAgIC8+XG5cbiAgICAgIEBpZiAocHJvcHMoKS5kZXNjcmlwdGlvbjsgYXMgZGVzYykge1xuICAgICAgICA8dmFsLXRleHRcbiAgICAgICAgICBbcHJvcHNdPVwie1xuICAgICAgICAgICAgc2l6ZTogJ2xhcmdlJyxcbiAgICAgICAgICAgIGNvbG9yOiAnbWVkaXVtJyxcbiAgICAgICAgICAgIGJvbGQ6IGZhbHNlLFxuICAgICAgICAgICAgY29udGVudDogZGVzYyxcbiAgICAgICAgICB9XCJcbiAgICAgICAgLz5cbiAgICAgIH1cblxuICAgICAgQGlmIChwcm9wcygpLmFjdGlvbjsgYXMgYSkge1xuICAgICAgICA8dmFsLWJ1dHRvbiBjbGFzcz1cImVtcHR5LXN0YXRlX19jdGFcIiBbcHJvcHNdPVwiY3RhUHJvcHMoKVwiIChjbGljayk9XCJhLmhhbmRsZXIoKVwiIC8+XG4gICAgICB9XG4gICAgPC9zZWN0aW9uPlxuICBgLFxuICBzdHlsZXM6IFtcbiAgICBgXG4gICAgICAuZW1wdHktc3RhdGUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBnYXA6IDEycHg7XG4gICAgICAgIHBhZGRpbmc6IDMycHggMTZweDtcbiAgICAgICAgbWluLWhlaWdodDogMjQwcHg7XG4gICAgICB9XG4gICAgICAuZW1wdHktc3RhdGVfX2ljb24ge1xuICAgICAgICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLW1lZGl1bSk7XG4gICAgICB9XG4gICAgICAuZW1wdHktc3RhdGVfX2Vtb2ppIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB9XG4gICAgICAuZW1wdHktc3RhdGUtLWVycm9yIC5lbXB0eS1zdGF0ZV9faWNvbiB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3Itd2FybmluZywgI2ZmYjgwMCk7XG4gICAgICB9XG4gICAgICAuZW1wdHktc3RhdGUtLW9mZmxpbmUgLmVtcHR5LXN0YXRlX19pY29uIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1tZWRpdW0pO1xuICAgICAgICBvcGFjaXR5OiAwLjc7XG4gICAgICB9XG4gICAgICAuZW1wdHktc3RhdGVfX2N0YSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgIH1cbiAgICBgLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBFbXB0eVN0YXRlQ29tcG9uZW50IHtcbiAgcHJvcHMgPSBpbnB1dC5yZXF1aXJlZDxFbXB0eVN0YXRlTWV0YWRhdGE+KCk7XG5cbiAgLyoqIFZhcmlhbnRlIHJlc3VlbHRhIChkZWZhdWx0IGAnZW1wdHknYCkuICovXG4gIHByb3RlY3RlZCB2YXJpYW50Q2xhc3MgPSBjb21wdXRlZDxFbXB0eVN0YXRlVmFyaWFudD4oKCkgPT4gdGhpcy5wcm9wcygpLnZhcmlhbnQgPz8gJ2VtcHR5Jyk7XG5cbiAgLyoqIEljb25vIGZpbmFsIOKAlCBjdXN0b20gc2kgc2UgcGFzw7MsIGRlZmF1bHQgZGUgbGEgdmFyaWFudGUgc2kgbm8uICovXG4gIHByb3RlY3RlZCBpY29uTmFtZSA9IGNvbXB1dGVkKCgpID0+IHRoaXMucHJvcHMoKS5pY29uID8/IERFRkFVTFRfSUNPTl9CWV9WQVJJQU5UW3RoaXMudmFyaWFudENsYXNzKCldKTtcblxuICAvKiogRW1vamkgb3BjaW9uYWwg4oCUIHNpIGVzdMOhLCBzZSByZW5kZXJpemEgZW4gbHVnYXIgZGVsIGljb25vIElvbmljb25zLiAqL1xuICBwcm90ZWN0ZWQgZW1vamkgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnByb3BzKCkuZW1vamkpO1xuXG4gIC8qKiBUYW1hw7FvIGVuIHB4LiBEZWZhdWx0IDY0LiAqL1xuICBwcm90ZWN0ZWQgaWNvblNpemUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnByb3BzKCkuaWNvblNpemUgPz8gNjQpO1xuXG4gIC8qKlxuICAgKiBQcm9wcyBkZWwgYm90w7NuIENUQS4gQ29uc3RydWlkYXMgYSBwYXJ0aXIgZGUgYHByb3BzKCkuYWN0aW9uYC4gRWwgZXN0YWRvXG4gICAqIGBXT1JLSU5HYCBzZSBhcGxpY2EgY3VhbmRvIGBhY3Rpb24ubG9hZGluZyA9PT0gdHJ1ZWAgKHNwaW5uZXIgbWllbnRyYXNcbiAgICogZWwgaGFuZGxlciBjb3JyZSkuXG4gICAqL1xuICBwcm90ZWN0ZWQgY3RhUHJvcHMgPSBjb21wdXRlZDxCdXR0b25NZXRhZGF0YT4oKCkgPT4ge1xuICAgIGNvbnN0IGFjdGlvbiA9IHRoaXMucHJvcHMoKS5hY3Rpb247XG4gICAgcmV0dXJuIHtcbiAgICAgIHRleHQ6IGFjdGlvbj8ubGFiZWwgPz8gJycsXG4gICAgICBjb2xvcjogJ2RhcmsnLFxuICAgICAgdHlwZTogJ2J1dHRvbicsXG4gICAgICBmaWxsOiAnc29saWQnLFxuICAgICAgc2l6ZTogJ2RlZmF1bHQnLFxuICAgICAgc2hhcGU6ICdyb3VuZCcsXG4gICAgICBzdGF0ZTogYWN0aW9uPy5sb2FkaW5nID8gQ29tcG9uZW50U3RhdGVzLldPUktJTkcgOiBDb21wb25lbnRTdGF0ZXMuRU5BQkxFRCxcbiAgICB9IGFzIEJ1dHRvbk1ldGFkYXRhO1xuICB9KTtcbn1cbiJdfQ==
186
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wdHktc3RhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9lbXB0eS1zdGF0ZS9lbXB0eS1zdGF0ZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDcEMsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixnQkFBZ0IsRUFDaEIsbUJBQW1CLEVBQ25CLFdBQVcsRUFDWCxlQUFlLEdBQ2hCLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNoRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbkUsT0FBTyxFQUFrQixlQUFlLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBRzlELCtFQUErRTtBQUMvRSxzRUFBc0U7QUFDdEUsc0VBQXNFO0FBQ3RFLFFBQVEsQ0FBQztJQUNQLGtCQUFrQjtJQUNsQixtQkFBbUI7SUFDbkIsZUFBZTtJQUNmLFdBQVc7SUFDWCxnQkFBZ0I7Q0FDakIsQ0FBQyxDQUFDO0FBRUgsTUFBTSx1QkFBdUIsR0FBc0M7SUFDakUsS0FBSyxFQUFFLGtCQUFrQjtJQUN6QixLQUFLLEVBQUUsc0JBQXNCO0lBQzdCLE9BQU8sRUFBRSx1QkFBdUI7Q0FDakMsQ0FBQztBQUVGOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBK0dILE1BQU0sT0FBTyxtQkFBbUI7SUE5R2hDO1FBK0dFLFVBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFzQixDQUFDO1FBRW5DLFdBQU0sR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFakMsNkNBQTZDO1FBQ25DLGlCQUFZLEdBQUcsUUFBUSxDQUFvQixHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDO1FBRTVGLHFFQUFxRTtRQUMzRCxhQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxJQUFJLElBQUksdUJBQXVCLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUV2RywwRUFBMEU7UUFDaEUsVUFBSyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFckQsZ0NBQWdDO1FBQ3RCLGFBQVEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUVqRTs7OztXQUlHO1FBQ08sYUFBUSxHQUFHLFFBQVEsQ0FBaUIsR0FBRyxFQUFFO1lBQ2pELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxNQUFNLENBQUM7WUFDbkMsT0FBTztnQkFDTCxJQUFJLEVBQUUsTUFBTSxFQUFFLEtBQUssSUFBSSxFQUFFO2dCQUN6QixLQUFLLEVBQUUsTUFBTTtnQkFDYixJQUFJLEVBQUUsUUFBUTtnQkFDZCxJQUFJLEVBQUUsT0FBTztnQkFDYixJQUFJLEVBQUUsU0FBUztnQkFDZixLQUFLLEVBQUUsT0FBTztnQkFDZCxLQUFLLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLE9BQU87YUFDekQsQ0FBQztRQUN0QixDQUFDLENBQUMsQ0FBQztLQVFKO0lBTlcsUUFBUSxDQUFDLElBQVk7UUFDN0IsS0FBSyxTQUFTLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ2pELElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3RCLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNqRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7K0dBeENVLG1CQUFtQjttR0FBbkIsbUJBQW1CLDhNQXpHcEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBK0NULDY5QkFqRFMsWUFBWSwrQkFBRSxPQUFPLDJKQUFFLGVBQWUsMEdBQUUsYUFBYSx3RUFBRSxjQUFjOzs0RkEyR3BFLG1CQUFtQjtrQkE5Ry9CLFNBQVM7K0JBQ0UsaUJBQWlCLGNBQ2YsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLGNBQWMsQ0FBQyxtQkFDL0QsdUJBQXVCLENBQUMsTUFBTSxZQUNyQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0ErQ1QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElvbkljb24gfSBmcm9tICdAaW9uaWMvYW5ndWxhci9zdGFuZGFsb25lJztcbmltcG9ydCB7IGFkZEljb25zIH0gZnJvbSAnaW9uaWNvbnMnO1xuaW1wb3J0IHtcbiAgYWxlcnRDaXJjbGVPdXRsaW5lLFxuICBjaGVja21hcmtPdXRsaW5lLFxuICBjbG91ZE9mZmxpbmVPdXRsaW5lLFxuICBjb3B5T3V0bGluZSxcbiAgZG9jdW1lbnRPdXRsaW5lLFxufSBmcm9tICdpb25pY29ucy9pY29ucyc7XG5cbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2F0b21zL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IFRleHRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9hdG9tcy90ZXh0L3RleHQuY29tcG9uZW50JztcbmltcG9ydCB7IFRpdGxlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYXRvbXMvdGl0bGUvdGl0bGUuY29tcG9uZW50JztcbmltcG9ydCB7IEJ1dHRvbk1ldGFkYXRhLCBDb21wb25lbnRTdGF0ZXMgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBFbXB0eVN0YXRlTWV0YWRhdGEsIEVtcHR5U3RhdGVWYXJpYW50IH0gZnJvbSAnLi90eXBlcyc7XG5cbi8vIFJlZ2lzdHJhIGxvcyAzIGljb25vcyBkZWZhdWx0ICh2YXJpYW50ZXMpLiBTaSBsYSBww6FnaW5hIHBhc2EgdW4gaWNvbm8gY3VzdG9tXG4vLyBlbiBgcHJvcHMuaWNvbmAsIGRlYmUgcmVnaXN0cmFybG8gZWxsYSBtaXNtYSBjb24gYWRkSWNvbnMoKSDigJQgSW9uaWNcbi8vIHN0YW5kYWxvbmUgbm8gcmVzdWVsdmUgbm9tYnJlcyBnbG9iYWwsIHNvbG8gbG9zIGRlbCByZWdpc3RyeSBsb2NhbC5cbmFkZEljb25zKHtcbiAgYWxlcnRDaXJjbGVPdXRsaW5lLFxuICBjbG91ZE9mZmxpbmVPdXRsaW5lLFxuICBkb2N1bWVudE91dGxpbmUsXG4gIGNvcHlPdXRsaW5lLFxuICBjaGVja21hcmtPdXRsaW5lLFxufSk7XG5cbmNvbnN0IERFRkFVTFRfSUNPTl9CWV9WQVJJQU5UOiBSZWNvcmQ8RW1wdHlTdGF0ZVZhcmlhbnQsIHN0cmluZz4gPSB7XG4gIGVtcHR5OiAnZG9jdW1lbnQtb3V0bGluZScsXG4gIGVycm9yOiAnYWxlcnQtY2lyY2xlLW91dGxpbmUnLFxuICBvZmZsaW5lOiAnY2xvdWQtb2ZmbGluZS1vdXRsaW5lJyxcbn07XG5cbi8qKlxuICogYDx2YWwtZW1wdHktc3RhdGU+YCDigJQgbW9sZWN1bGUgZGVjbGFyYXRpdm8gcGFyYSBlc3RhZG9zIGRlIFwibm8gaGF5IGRhdG9zIC9cbiAqIGh1Ym8gZXJyb3IgLyBzaW4gcmVkXCIuIFJlZW1wbGF6YSBlbCBwYXRyw7NuIGFkLWhvYyAoaW9uLWljb24gKyB2YWwtdGl0bGUgK1xuICogdmFsLXRleHQgKyB2YWwtYnV0dG9uKSBxdWUgY2FkYSBww6FnaW5hIHZlbsOtYSBpbXByb3Zpc2FuZG8uXG4gKlxuICogVXNvIHTDrXBpY286XG4gKlxuICogYGBgaHRtbFxuICogQGlmIChsb2FkaW5nKCkpIHtcbiAqICAgPHZhbC1za2VsZXRvbi1sYXlvdXQgW3Byb3BzXT1cIi4uLlwiIC8+XG4gKiB9IEBlbHNlIGlmIChlcnJvclN0YXRlKCk7IGFzIGUpIHtcbiAqICAgPHZhbC1lbXB0eS1zdGF0ZSBbcHJvcHNdPVwiZVwiIC8+XG4gKiB9IEBlbHNlIGlmIChpdGVtcygpLmxlbmd0aCA9PT0gMCkge1xuICogICA8dmFsLWVtcHR5LXN0YXRlIFtwcm9wc109XCJlbXB0eVByb3BzXCIgLz5cbiAqIH0gQGVsc2Uge1xuICogICA8IS0tIGNvbnRlbmlkbyBub3JtYWwgLS0+XG4gKiB9XG4gKiBgYGBcbiAqXG4gKiBJMThuOiBsYXMgY2FkZW5hcyB2aWVuZW4geWEgdHJhZHVjaWRhcyBlbiBsYXMgcHJvcHMgKGxhIGxpYiBlcyBhZ27Ds3N0aWNhIGRlXG4gKiBuYW1lc3BhY2VzKS4gUGFyYSB3aXJpbmcgYXV0b23DoXRpY28gZGVzZGUgdW4gZXJyb3IgY2FwdHVyYWRvLCB1c2FyIGVsXG4gKiBoZWxwZXIgYGNyZWF0ZUVycm9yU3RhdGVQcm9wcyhlcnIsIC4uLilgIChgdmFsdGVjaC1jb21wb25lbnRzYCkuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1lbXB0eS1zdGF0ZScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIElvbkljb24sIEJ1dHRvbkNvbXBvbmVudCwgVGV4dENvbXBvbmVudCwgVGl0bGVDb21wb25lbnRdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6IGBcbiAgICA8c2VjdGlvblxuICAgICAgY2xhc3M9XCJlbXB0eS1zdGF0ZVwiXG4gICAgICBbY2xhc3MuZW1wdHktc3RhdGUtLWVycm9yXT1cInZhcmlhbnRDbGFzcygpID09PSAnZXJyb3InXCJcbiAgICAgIFtjbGFzcy5lbXB0eS1zdGF0ZS0tb2ZmbGluZV09XCJ2YXJpYW50Q2xhc3MoKSA9PT0gJ29mZmxpbmUnXCJcbiAgICAgIHJvbGU9XCJzdGF0dXNcIlxuICAgICAgYXJpYS1saXZlPVwicG9saXRlXCJcbiAgICA+XG4gICAgICBAaWYgKGVtb2ppKCk7IGFzIGUpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImVtcHR5LXN0YXRlX19lbW9qaVwiIFtzdHlsZS5mb250LXNpemUucHhdPVwiaWNvblNpemUoKVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuICAgICAgICAgIHt7IGUgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgPGlvbi1pY29uIGNsYXNzPVwiZW1wdHktc3RhdGVfX2ljb25cIiBbbmFtZV09XCJpY29uTmFtZSgpXCIgW3N0eWxlLmZvbnQtc2l6ZS5weF09XCJpY29uU2l6ZSgpXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgLz5cbiAgICAgIH1cblxuICAgICAgPHZhbC10aXRsZVxuICAgICAgICBbcHJvcHNdPVwie1xuICAgICAgICAgIHNpemU6ICdsYXJnZScsXG4gICAgICAgICAgY29sb3I6ICdkYXJrJyxcbiAgICAgICAgICBib2xkOiB0cnVlLFxuICAgICAgICAgIGNvbnRlbnQ6IHByb3BzKCkudGl0bGUsXG4gICAgICAgIH1cIlxuICAgICAgLz5cblxuICAgICAgQGlmIChwcm9wcygpLmRlc2NyaXB0aW9uOyBhcyBkZXNjKSB7XG4gICAgICAgIDx2YWwtdGV4dFxuICAgICAgICAgIFtwcm9wc109XCJ7XG4gICAgICAgICAgICBzaXplOiAnbGFyZ2UnLFxuICAgICAgICAgICAgY29sb3I6ICdtZWRpdW0nLFxuICAgICAgICAgICAgYm9sZDogZmFsc2UsXG4gICAgICAgICAgICBjb250ZW50OiBkZXNjLFxuICAgICAgICAgIH1cIlxuICAgICAgICAvPlxuICAgICAgfVxuXG4gICAgICBAaWYgKHByb3BzKCkuYWN0aW9uOyBhcyBhKSB7XG4gICAgICAgIDx2YWwtYnV0dG9uIGNsYXNzPVwiZW1wdHktc3RhdGVfX2N0YVwiIFtwcm9wc109XCJjdGFQcm9wcygpXCIgKGNsaWNrKT1cImEuaGFuZGxlcigpXCIgLz5cbiAgICAgIH1cblxuICAgICAgQGlmIChwcm9wcygpLm9wZXJhdGlvbklkOyBhcyBvcElkKSB7XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJlbXB0eS1zdGF0ZV9fb3AtaWRcIiAoY2xpY2spPVwiY29weU9wSWQob3BJZClcIiBbYXR0ci5hcmlhLWxhYmVsXT1cIidDb3BpYXIgSUQgZGUgb3BlcmFjacOzbidcIj5cbiAgICAgICAgICA8aW9uLWljb24gW25hbWVdPVwiY29waWVkKCkgPyAnY2hlY2ttYXJrLW91dGxpbmUnIDogJ2NvcHktb3V0bGluZSdcIiAvPlxuICAgICAgICAgIDxzcGFuPnt7IGNvcGllZCgpID8gJ0lEIGNvcGlhZG8nIDogJ0lEOiAnICsgb3BJZCB9fTwvc3Bhbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICB9XG4gICAgPC9zZWN0aW9uPlxuICBgLFxuICBzdHlsZXM6IFtcbiAgICBgXG4gICAgICAuZW1wdHktc3RhdGUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBnYXA6IDEycHg7XG4gICAgICAgIHBhZGRpbmc6IDMycHggMTZweDtcbiAgICAgICAgbWluLWhlaWdodDogMjQwcHg7XG4gICAgICB9XG4gICAgICAuZW1wdHktc3RhdGVfX2ljb24ge1xuICAgICAgICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLW1lZGl1bSk7XG4gICAgICB9XG4gICAgICAuZW1wdHktc3RhdGVfX2Vtb2ppIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB9XG4gICAgICAuZW1wdHktc3RhdGUtLWVycm9yIC5lbXB0eS1zdGF0ZV9faWNvbiB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3Itd2FybmluZywgI2ZmYjgwMCk7XG4gICAgICB9XG4gICAgICAuZW1wdHktc3RhdGUtLW9mZmxpbmUgLmVtcHR5LXN0YXRlX19pY29uIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1tZWRpdW0pO1xuICAgICAgICBvcGFjaXR5OiAwLjc7XG4gICAgICB9XG4gICAgICAuZW1wdHktc3RhdGVfX2N0YSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgIH1cbiAgICAgIC5lbXB0eS1zdGF0ZV9fb3AtaWQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiA2cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWlvbi1ib3JkZXItY29sb3IsIHJnYmEoMCwgMCwgMCwgMC4xKSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItbWVkaXVtKTtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICBjb2xvciAwLjE1cyxcbiAgICAgICAgICBib3JkZXItY29sb3IgMC4xNXM7XG4gICAgICB9XG4gICAgICAuZW1wdHktc3RhdGVfX29wLWlkOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1kYXJrKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pb24tY29sb3ItbWVkaXVtKTtcbiAgICAgIH1cbiAgICAgIC5lbXB0eS1zdGF0ZV9fb3AtaWQgaW9uLWljb24ge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIH1cbiAgICBgLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBFbXB0eVN0YXRlQ29tcG9uZW50IHtcbiAgcHJvcHMgPSBpbnB1dC5yZXF1aXJlZDxFbXB0eVN0YXRlTWV0YWRhdGE+KCk7XG5cbiAgcHJvdGVjdGVkIGNvcGllZCA9IHNpZ25hbChmYWxzZSk7XG5cbiAgLyoqIFZhcmlhbnRlIHJlc3VlbHRhIChkZWZhdWx0IGAnZW1wdHknYCkuICovXG4gIHByb3RlY3RlZCB2YXJpYW50Q2xhc3MgPSBjb21wdXRlZDxFbXB0eVN0YXRlVmFyaWFudD4oKCkgPT4gdGhpcy5wcm9wcygpLnZhcmlhbnQgPz8gJ2VtcHR5Jyk7XG5cbiAgLyoqIEljb25vIGZpbmFsIOKAlCBjdXN0b20gc2kgc2UgcGFzw7MsIGRlZmF1bHQgZGUgbGEgdmFyaWFudGUgc2kgbm8uICovXG4gIHByb3RlY3RlZCBpY29uTmFtZSA9IGNvbXB1dGVkKCgpID0+IHRoaXMucHJvcHMoKS5pY29uID8/IERFRkFVTFRfSUNPTl9CWV9WQVJJQU5UW3RoaXMudmFyaWFudENsYXNzKCldKTtcblxuICAvKiogRW1vamkgb3BjaW9uYWwg4oCUIHNpIGVzdMOhLCBzZSByZW5kZXJpemEgZW4gbHVnYXIgZGVsIGljb25vIElvbmljb25zLiAqL1xuICBwcm90ZWN0ZWQgZW1vamkgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnByb3BzKCkuZW1vamkpO1xuXG4gIC8qKiBUYW1hw7FvIGVuIHB4LiBEZWZhdWx0IDY0LiAqL1xuICBwcm90ZWN0ZWQgaWNvblNpemUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnByb3BzKCkuaWNvblNpemUgPz8gNjQpO1xuXG4gIC8qKlxuICAgKiBQcm9wcyBkZWwgYm90w7NuIENUQS4gQ29uc3RydWlkYXMgYSBwYXJ0aXIgZGUgYHByb3BzKCkuYWN0aW9uYC4gRWwgZXN0YWRvXG4gICAqIGBXT1JLSU5HYCBzZSBhcGxpY2EgY3VhbmRvIGBhY3Rpb24ubG9hZGluZyA9PT0gdHJ1ZWAgKHNwaW5uZXIgbWllbnRyYXNcbiAgICogZWwgaGFuZGxlciBjb3JyZSkuXG4gICAqL1xuICBwcm90ZWN0ZWQgY3RhUHJvcHMgPSBjb21wdXRlZDxCdXR0b25NZXRhZGF0YT4oKCkgPT4ge1xuICAgIGNvbnN0IGFjdGlvbiA9IHRoaXMucHJvcHMoKS5hY3Rpb247XG4gICAgcmV0dXJuIHtcbiAgICAgIHRleHQ6IGFjdGlvbj8ubGFiZWwgPz8gJycsXG4gICAgICBjb2xvcjogJ2RhcmsnLFxuICAgICAgdHlwZTogJ2J1dHRvbicsXG4gICAgICBmaWxsOiAnc29saWQnLFxuICAgICAgc2l6ZTogJ2RlZmF1bHQnLFxuICAgICAgc2hhcGU6ICdyb3VuZCcsXG4gICAgICBzdGF0ZTogYWN0aW9uPy5sb2FkaW5nID8gQ29tcG9uZW50U3RhdGVzLldPUktJTkcgOiBDb21wb25lbnRTdGF0ZXMuRU5BQkxFRCxcbiAgICB9IGFzIEJ1dHRvbk1ldGFkYXRhO1xuICB9KTtcblxuICBwcm90ZWN0ZWQgY29weU9wSWQob3BJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgdm9pZCBuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dChvcElkKS50aGVuKCgpID0+IHtcbiAgICAgIHRoaXMuY29waWVkLnNldCh0cnVlKTtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5jb3BpZWQuc2V0KGZhbHNlKSwgMTUwMCk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -50,6 +50,7 @@ export function createErrorStateProps(err, opts) {
50
50
  description: opts.description ? pick(opts.description) : undefined,
51
51
  action,
52
52
  emoji: opts.emoji ? pick(opts.emoji) : undefined,
53
+ operationId: interpreted.operationId,
53
54
  };
54
55
  }
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvZW1wdHktc3RhdGUvZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFpQzFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBK0JHO0FBQ0gsTUFBTSxVQUFVLHFCQUFxQixDQUNuQyxHQUFZLEVBQ1osSUFBMEI7SUFFMUIsTUFBTSxXQUFXLEdBQUcsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3hDLE1BQU0sT0FBTyxHQUFHLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO0lBRTVELE1BQU0sSUFBSSxHQUFHLENBQUksQ0FBK0IsRUFBSyxFQUFFLENBQ3JELE9BQU8sQ0FBQyxLQUFLLFFBQVEsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLFNBQVMsSUFBSSxDQUFDO1FBQ25ELENBQUMsQ0FBRSxDQUE4QixDQUFDLE9BQU8sQ0FBQztRQUMxQyxDQUFDLENBQUUsQ0FBTyxDQUFDO0lBRWYsTUFBTSxNQUFNLEdBQ1YsSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsT0FBTztRQUM3QixDQUFDLENBQUM7WUFDRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDdEIsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3JCLE9BQU8sRUFBRSxJQUFJLENBQUMsUUFBUSxJQUFJLEtBQUs7U0FDaEM7UUFDSCxDQUFDLENBQUMsU0FBUyxDQUFDO0lBRWhCLE9BQU87UUFDTCxPQUFPO1FBQ1AsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3ZCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTO1FBQ2xFLE1BQU07UUFDTixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUztLQUNqRCxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGludGVycHJldEVycm9yIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvZXJyb3JzL2ludGVycHJldC1lcnJvcic7XG5pbXBvcnQgeyBFbXB0eVN0YXRlTWV0YWRhdGEgfSBmcm9tICcuL3R5cGVzJztcblxuLyoqXG4gKiBPcGNpb25lcyBkZWwgaGVscGVyLiBMb3Mgc3RyaW5ncyBzb24gcmVxdWVyaWRvcyBwYXJhIG1hbnRlbmVyIGVsXG4gKiBjb21wb25lbnRlIGkxOG4tYWduw7NzdGljbyDigJQgbGEgcMOhZ2luYSBsb3MgcmVzdWVsdmUgKGNvbiBzdSBuYW1lc3BhY2UpIHkgbG9zXG4gKiBwYXNhIHlhIHRyYWR1Y2lkb3MuIEVsIGhlbHBlciBzb2xvIGRlY2lkZSBsYSBWQVJJQU5URSB5IGNvbXBvbmUgbG9zIHByb3BzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZUVycm9yU3RhdGVPcHRzIHtcbiAgLyoqXG4gICAqIFTDrXR1bG8gYSBtb3N0cmFyLiBDb252ZW5jacOzbjogbGEgcMOhZ2luYSBsbyByZXN1ZWx2ZSBwb3IgZXNjZW5hcmlvOlxuICAgKiAgLSByZWQgY2HDrWRhICAgICDihpIgYHQoJ29mZmxpbmVUaXRsZScpYFxuICAgKiAgLSBlcnJvciBiYWNrZW5kIOKGkiBgdCgnZXJyb3JUaXRsZScpYFxuICAgKlxuICAgKiBTaSBwYXPDoXMgdW4gc29sbyBzdHJpbmcsIHNlIHVzYSBlbiBhbWJhcyB2YXJpYW50ZXMuIFNpIHBhc8OhcyBlbCBvYmpldG8sXG4gICAqIGVsIGhlbHBlciBlbGlnZSBzZWfDum4gYGlzTmV0d29ya2AgZGVsIGVycm9yIGludGVycHJldGFkby5cbiAgICovXG4gIHRpdGxlOiBzdHJpbmcgfCB7IG9mZmxpbmU6IHN0cmluZzsgZXJyb3I6IHN0cmluZyB9O1xuICAvKiogRGVzY3JpcGNpw7NuIGEgbW9zdHJhciAodMOtcGljYW1lbnRlIGVsIGBtZXNzYWdlYCBkZWwgYmFja2VuZCBlbiBlc3Bhw7FvbCkuICovXG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nIHwgeyBvZmZsaW5lOiBzdHJpbmc7IGVycm9yOiBzdHJpbmcgfTtcbiAgLyoqIExhYmVsIGRlbCBib3TDs24gQ1RBICh0w61waWNhbWVudGUgYHQoJ3JldHJ5JylgKS4gU2kgc2Ugb21pdGUsIG5vIHNlIG11ZXN0cmEgYm90w7NuLiAqL1xuICByZXRyeUxhYmVsPzogc3RyaW5nO1xuICAvKiogSGFuZGxlciBpbnZvY2FkbyBhbCBjbGljayBkZSByZXRyeS4gUmVxdWVyaWRvIHNpIGByZXRyeUxhYmVsYCBlc3TDoS4gKi9cbiAgb25SZXRyeT86ICgpID0+IHZvaWQgfCBQcm9taXNlPHZvaWQ+O1xuICAvKiogYHRydWVgIG1pZW50cmFzIGVsIHJldHJ5IGVzdMOhIGNvcnJpZW5kbyDigJQgZWwgYm90w7NuIHBhc2EgYSBXT1JLSU5HLiAqL1xuICByZXRyeWluZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBFbW9qaSBhIG1vc3RyYXIgZW4gbHVnYXIgZGVsIGljb25vIChlai4gYCfwn6W5J2ApLiBVbiBzb2xvIHN0cmluZyBhcGxpY2EgYVxuICAgKiBhbWJhcyB2YXJpYW50ZXM7IGVsIG9iamV0byBlbGlnZSBzZWfDum4gYGlzTmV0d29ya2AgKG9mZmxpbmUgdnMgZXJyb3IpLlxuICAgKi9cbiAgZW1vamk/OiBzdHJpbmcgfCB7IG9mZmxpbmU6IHN0cmluZzsgZXJyb3I6IHN0cmluZyB9O1xufVxuXG4vKipcbiAqIENvbnZpZXJ0ZSB1biBlcnJvciBjYXB0dXJhZG8gZW4gYEVtcHR5U3RhdGVNZXRhZGF0YWAgbGlzdG8gcGFyYVxuICogYDx2YWwtZW1wdHktc3RhdGU+YC4gRGVjaWRlIGxhIHZhcmlhbnRlIChgb2ZmbGluZWAgdnMgYGVycm9yYCkgc2Vnw7puXG4gKiBgaW50ZXJwcmV0RXJyb3IoZXJyKS5pc05ldHdvcmtgLlxuICpcbiAqIFVzbyB0w61waWNvIGVuIHVuYSBwYWdlOlxuICpcbiAqIGBgYHRzXG4gKiByZWFkb25seSBlcnJvclN0YXRlID0gY29tcHV0ZWQoKCkgPT4ge1xuICogICBjb25zdCBlcnIgPSB0aGlzLmxvYWRFcnJvcigpO1xuICogICBpZiAoIWVycikgcmV0dXJuIG51bGw7XG4gKiAgIHJldHVybiBjcmVhdGVFcnJvclN0YXRlUHJvcHMoZXJyLCB7XG4gKiAgICAgdGl0bGU6IHsgb2ZmbGluZTogdGhpcy50KCdvZmZsaW5lVGl0bGUnKSwgZXJyb3I6IHRoaXMudCgnZXJyb3JUaXRsZScpIH0sXG4gKiAgICAgZGVzY3JpcHRpb246IHsgb2ZmbGluZTogdGhpcy50KCdvZmZsaW5lSGludCcpLCBlcnJvcjogaW50ZXJwcmV0RXJyb3IoZXJyKS5tZXNzYWdlIH0sXG4gKiAgICAgcmV0cnlMYWJlbDogdGhpcy50KCdyZXRyeScpLFxuICogICAgIG9uUmV0cnk6ICgpID0+IHRoaXMucmVsb2FkKCksXG4gKiAgICAgcmV0cnlpbmc6IHRoaXMucmVsb2FkaW5nKCksXG4gKiAgIH0pO1xuICogfSk7XG4gKiBgYGBcbiAqXG4gKiBFbiBlbCB0ZW1wbGF0ZTpcbiAqXG4gKiBgYGBodG1sXG4gKiBAaWYgKGVycm9yU3RhdGUoKTsgYXMgZSkge1xuICogICA8dmFsLWVtcHR5LXN0YXRlIFtwcm9wc109XCJlXCIgLz5cbiAqIH1cbiAqIGBgYFxuICpcbiAqIFBhcmEgZXNjZW5hcmlvcyBTSU4gZXJyb3IgKGxpc3RhIHZhY8OtYSksIGNvbnN0cnVpciBgRW1wdHlTdGF0ZU1ldGFkYXRhYFxuICogbWFudWFsbWVudGUgY29uIGB2YXJpYW50OiAnZW1wdHknYCDigJQgbm8gZXMgbG8gcXVlIGVzdGUgaGVscGVyIHJlc3VlbHZlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRXJyb3JTdGF0ZVByb3BzKFxuICBlcnI6IHVua25vd24sXG4gIG9wdHM6IENyZWF0ZUVycm9yU3RhdGVPcHRzXG4pOiBFbXB0eVN0YXRlTWV0YWRhdGEge1xuICBjb25zdCBpbnRlcnByZXRlZCA9IGludGVycHJldEVycm9yKGVycik7XG4gIGNvbnN0IHZhcmlhbnQgPSBpbnRlcnByZXRlZC5pc05ldHdvcmsgPyAnb2ZmbGluZScgOiAnZXJyb3InO1xuXG4gIGNvbnN0IHBpY2sgPSA8VD4odjogVCB8IHsgb2ZmbGluZTogVDsgZXJyb3I6IFQgfSk6IFQgPT5cbiAgICB0eXBlb2YgdiA9PT0gJ29iamVjdCcgJiYgdiAhPT0gbnVsbCAmJiAnb2ZmbGluZScgaW4gdlxuICAgICAgPyAodiBhcyB7IG9mZmxpbmU6IFQ7IGVycm9yOiBUIH0pW3ZhcmlhbnRdXG4gICAgICA6ICh2IGFzIFQpO1xuXG4gIGNvbnN0IGFjdGlvbiA9XG4gICAgb3B0cy5yZXRyeUxhYmVsICYmIG9wdHMub25SZXRyeVxuICAgICAgPyB7XG4gICAgICAgICAgbGFiZWw6IG9wdHMucmV0cnlMYWJlbCxcbiAgICAgICAgICBoYW5kbGVyOiBvcHRzLm9uUmV0cnksXG4gICAgICAgICAgbG9hZGluZzogb3B0cy5yZXRyeWluZyA/PyBmYWxzZSxcbiAgICAgICAgfVxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgcmV0dXJuIHtcbiAgICB2YXJpYW50LFxuICAgIHRpdGxlOiBwaWNrKG9wdHMudGl0bGUpLFxuICAgIGRlc2NyaXB0aW9uOiBvcHRzLmRlc2NyaXB0aW9uID8gcGljayhvcHRzLmRlc2NyaXB0aW9uKSA6IHVuZGVmaW5lZCxcbiAgICBhY3Rpb24sXG4gICAgZW1vamk6IG9wdHMuZW1vamkgPyBwaWNrKG9wdHMuZW1vamkpIDogdW5kZWZpbmVkLFxuICB9O1xufVxuIl19
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvZW1wdHktc3RhdGUvZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFpQzFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBK0JHO0FBQ0gsTUFBTSxVQUFVLHFCQUFxQixDQUNuQyxHQUFZLEVBQ1osSUFBMEI7SUFFMUIsTUFBTSxXQUFXLEdBQUcsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3hDLE1BQU0sT0FBTyxHQUFHLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO0lBRTVELE1BQU0sSUFBSSxHQUFHLENBQUksQ0FBK0IsRUFBSyxFQUFFLENBQ3JELE9BQU8sQ0FBQyxLQUFLLFFBQVEsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLFNBQVMsSUFBSSxDQUFDO1FBQ25ELENBQUMsQ0FBRSxDQUE4QixDQUFDLE9BQU8sQ0FBQztRQUMxQyxDQUFDLENBQUUsQ0FBTyxDQUFDO0lBRWYsTUFBTSxNQUFNLEdBQ1YsSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsT0FBTztRQUM3QixDQUFDLENBQUM7WUFDRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDdEIsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3JCLE9BQU8sRUFBRSxJQUFJLENBQUMsUUFBUSxJQUFJLEtBQUs7U0FDaEM7UUFDSCxDQUFDLENBQUMsU0FBUyxDQUFDO0lBRWhCLE9BQU87UUFDTCxPQUFPO1FBQ1AsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3ZCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTO1FBQ2xFLE1BQU07UUFDTixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUztRQUNoRCxXQUFXLEVBQUUsV0FBVyxDQUFDLFdBQVc7S0FDckMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbnRlcnByZXRFcnJvciB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2Vycm9ycy9pbnRlcnByZXQtZXJyb3InO1xuaW1wb3J0IHsgRW1wdHlTdGF0ZU1ldGFkYXRhIH0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogT3BjaW9uZXMgZGVsIGhlbHBlci4gTG9zIHN0cmluZ3Mgc29uIHJlcXVlcmlkb3MgcGFyYSBtYW50ZW5lciBlbFxuICogY29tcG9uZW50ZSBpMThuLWFnbsOzc3RpY28g4oCUIGxhIHDDoWdpbmEgbG9zIHJlc3VlbHZlIChjb24gc3UgbmFtZXNwYWNlKSB5IGxvc1xuICogcGFzYSB5YSB0cmFkdWNpZG9zLiBFbCBoZWxwZXIgc29sbyBkZWNpZGUgbGEgVkFSSUFOVEUgeSBjb21wb25lIGxvcyBwcm9wcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVFcnJvclN0YXRlT3B0cyB7XG4gIC8qKlxuICAgKiBUw610dWxvIGEgbW9zdHJhci4gQ29udmVuY2nDs246IGxhIHDDoWdpbmEgbG8gcmVzdWVsdmUgcG9yIGVzY2VuYXJpbzpcbiAgICogIC0gcmVkIGNhw61kYSAgICAg4oaSIGB0KCdvZmZsaW5lVGl0bGUnKWBcbiAgICogIC0gZXJyb3IgYmFja2VuZCDihpIgYHQoJ2Vycm9yVGl0bGUnKWBcbiAgICpcbiAgICogU2kgcGFzw6FzIHVuIHNvbG8gc3RyaW5nLCBzZSB1c2EgZW4gYW1iYXMgdmFyaWFudGVzLiBTaSBwYXPDoXMgZWwgb2JqZXRvLFxuICAgKiBlbCBoZWxwZXIgZWxpZ2Ugc2Vnw7puIGBpc05ldHdvcmtgIGRlbCBlcnJvciBpbnRlcnByZXRhZG8uXG4gICAqL1xuICB0aXRsZTogc3RyaW5nIHwgeyBvZmZsaW5lOiBzdHJpbmc7IGVycm9yOiBzdHJpbmcgfTtcbiAgLyoqIERlc2NyaXBjacOzbiBhIG1vc3RyYXIgKHTDrXBpY2FtZW50ZSBlbCBgbWVzc2FnZWAgZGVsIGJhY2tlbmQgZW4gZXNwYcOxb2wpLiAqL1xuICBkZXNjcmlwdGlvbj86IHN0cmluZyB8IHsgb2ZmbGluZTogc3RyaW5nOyBlcnJvcjogc3RyaW5nIH07XG4gIC8qKiBMYWJlbCBkZWwgYm90w7NuIENUQSAodMOtcGljYW1lbnRlIGB0KCdyZXRyeScpYCkuIFNpIHNlIG9taXRlLCBubyBzZSBtdWVzdHJhIGJvdMOzbi4gKi9cbiAgcmV0cnlMYWJlbD86IHN0cmluZztcbiAgLyoqIEhhbmRsZXIgaW52b2NhZG8gYWwgY2xpY2sgZGUgcmV0cnkuIFJlcXVlcmlkbyBzaSBgcmV0cnlMYWJlbGAgZXN0w6EuICovXG4gIG9uUmV0cnk/OiAoKSA9PiB2b2lkIHwgUHJvbWlzZTx2b2lkPjtcbiAgLyoqIGB0cnVlYCBtaWVudHJhcyBlbCByZXRyeSBlc3TDoSBjb3JyaWVuZG8g4oCUIGVsIGJvdMOzbiBwYXNhIGEgV09SS0lORy4gKi9cbiAgcmV0cnlpbmc/OiBib29sZWFuO1xuICAvKipcbiAgICogRW1vamkgYSBtb3N0cmFyIGVuIGx1Z2FyIGRlbCBpY29ubyAoZWouIGAn8J+luSdgKS4gVW4gc29sbyBzdHJpbmcgYXBsaWNhIGFcbiAgICogYW1iYXMgdmFyaWFudGVzOyBlbCBvYmpldG8gZWxpZ2Ugc2Vnw7puIGBpc05ldHdvcmtgIChvZmZsaW5lIHZzIGVycm9yKS5cbiAgICovXG4gIGVtb2ppPzogc3RyaW5nIHwgeyBvZmZsaW5lOiBzdHJpbmc7IGVycm9yOiBzdHJpbmcgfTtcbn1cblxuLyoqXG4gKiBDb252aWVydGUgdW4gZXJyb3IgY2FwdHVyYWRvIGVuIGBFbXB0eVN0YXRlTWV0YWRhdGFgIGxpc3RvIHBhcmFcbiAqIGA8dmFsLWVtcHR5LXN0YXRlPmAuIERlY2lkZSBsYSB2YXJpYW50ZSAoYG9mZmxpbmVgIHZzIGBlcnJvcmApIHNlZ8O6blxuICogYGludGVycHJldEVycm9yKGVycikuaXNOZXR3b3JrYC5cbiAqXG4gKiBVc28gdMOtcGljbyBlbiB1bmEgcGFnZTpcbiAqXG4gKiBgYGB0c1xuICogcmVhZG9ubHkgZXJyb3JTdGF0ZSA9IGNvbXB1dGVkKCgpID0+IHtcbiAqICAgY29uc3QgZXJyID0gdGhpcy5sb2FkRXJyb3IoKTtcbiAqICAgaWYgKCFlcnIpIHJldHVybiBudWxsO1xuICogICByZXR1cm4gY3JlYXRlRXJyb3JTdGF0ZVByb3BzKGVyciwge1xuICogICAgIHRpdGxlOiB7IG9mZmxpbmU6IHRoaXMudCgnb2ZmbGluZVRpdGxlJyksIGVycm9yOiB0aGlzLnQoJ2Vycm9yVGl0bGUnKSB9LFxuICogICAgIGRlc2NyaXB0aW9uOiB7IG9mZmxpbmU6IHRoaXMudCgnb2ZmbGluZUhpbnQnKSwgZXJyb3I6IGludGVycHJldEVycm9yKGVycikubWVzc2FnZSB9LFxuICogICAgIHJldHJ5TGFiZWw6IHRoaXMudCgncmV0cnknKSxcbiAqICAgICBvblJldHJ5OiAoKSA9PiB0aGlzLnJlbG9hZCgpLFxuICogICAgIHJldHJ5aW5nOiB0aGlzLnJlbG9hZGluZygpLFxuICogICB9KTtcbiAqIH0pO1xuICogYGBgXG4gKlxuICogRW4gZWwgdGVtcGxhdGU6XG4gKlxuICogYGBgaHRtbFxuICogQGlmIChlcnJvclN0YXRlKCk7IGFzIGUpIHtcbiAqICAgPHZhbC1lbXB0eS1zdGF0ZSBbcHJvcHNdPVwiZVwiIC8+XG4gKiB9XG4gKiBgYGBcbiAqXG4gKiBQYXJhIGVzY2VuYXJpb3MgU0lOIGVycm9yIChsaXN0YSB2YWPDrWEpLCBjb25zdHJ1aXIgYEVtcHR5U3RhdGVNZXRhZGF0YWBcbiAqIG1hbnVhbG1lbnRlIGNvbiBgdmFyaWFudDogJ2VtcHR5J2Ag4oCUIG5vIGVzIGxvIHF1ZSBlc3RlIGhlbHBlciByZXN1ZWx2ZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUVycm9yU3RhdGVQcm9wcyhcbiAgZXJyOiB1bmtub3duLFxuICBvcHRzOiBDcmVhdGVFcnJvclN0YXRlT3B0c1xuKTogRW1wdHlTdGF0ZU1ldGFkYXRhIHtcbiAgY29uc3QgaW50ZXJwcmV0ZWQgPSBpbnRlcnByZXRFcnJvcihlcnIpO1xuICBjb25zdCB2YXJpYW50ID0gaW50ZXJwcmV0ZWQuaXNOZXR3b3JrID8gJ29mZmxpbmUnIDogJ2Vycm9yJztcblxuICBjb25zdCBwaWNrID0gPFQ+KHY6IFQgfCB7IG9mZmxpbmU6IFQ7IGVycm9yOiBUIH0pOiBUID0+XG4gICAgdHlwZW9mIHYgPT09ICdvYmplY3QnICYmIHYgIT09IG51bGwgJiYgJ29mZmxpbmUnIGluIHZcbiAgICAgID8gKHYgYXMgeyBvZmZsaW5lOiBUOyBlcnJvcjogVCB9KVt2YXJpYW50XVxuICAgICAgOiAodiBhcyBUKTtcblxuICBjb25zdCBhY3Rpb24gPVxuICAgIG9wdHMucmV0cnlMYWJlbCAmJiBvcHRzLm9uUmV0cnlcbiAgICAgID8ge1xuICAgICAgICAgIGxhYmVsOiBvcHRzLnJldHJ5TGFiZWwsXG4gICAgICAgICAgaGFuZGxlcjogb3B0cy5vblJldHJ5LFxuICAgICAgICAgIGxvYWRpbmc6IG9wdHMucmV0cnlpbmcgPz8gZmFsc2UsXG4gICAgICAgIH1cbiAgICAgIDogdW5kZWZpbmVkO1xuXG4gIHJldHVybiB7XG4gICAgdmFyaWFudCxcbiAgICB0aXRsZTogcGljayhvcHRzLnRpdGxlKSxcbiAgICBkZXNjcmlwdGlvbjogb3B0cy5kZXNjcmlwdGlvbiA/IHBpY2sob3B0cy5kZXNjcmlwdGlvbikgOiB1bmRlZmluZWQsXG4gICAgYWN0aW9uLFxuICAgIGVtb2ppOiBvcHRzLmVtb2ppID8gcGljayhvcHRzLmVtb2ppKSA6IHVuZGVmaW5lZCxcbiAgICBvcGVyYXRpb25JZDogaW50ZXJwcmV0ZWQub3BlcmF0aW9uSWQsXG4gIH07XG59XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2VtcHR5LXN0YXRlL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFZhcmlhbnRlIHNlbcOhbnRpY2EgZGVsIGVtcHR5L2Vycm9yIHN0YXRlLlxuICpcbiAqIC0gYGVtcHR5YCAgICDigJQgbGEgZnVlbnRlIGRldm9sdmnDsyBjZXJvIHJlc3VsdGFkb3MgKGxpc3RhIHZhY8OtYSwgc2luIG5vdGlmcykuXG4gKiAgICAgICAgICAgICAgICBJY29ubyBuZXV0cm8sIHNpbiBhbGFybWEuXG4gKiAtIGBlcnJvcmAgICAg4oCUIGxhIGZ1ZW50ZSBmYWxsw7MgcG9yIHVuIGVycm9yIGRlIGxhIGFwcC9zZXJ2aWRvciAoNTAwLCBwYXJzZSkuXG4gKiAgICAgICAgICAgICAgICBJY29ubyBkZSBhbGVydGEuXG4gKiAtIGBvZmZsaW5lYCAg4oCUIGxhIGZ1ZW50ZSBmYWxsw7MgcG9yIHJlZCBjYcOtZGEgLyBGaXJlc3RvcmUgdW5yZWFjaGFibGUuXG4gKiAgICAgICAgICAgICAgICBJY29ubyBjbG91ZC1vZmZsaW5lLlxuICpcbiAqIENhZGEgdmFyaWFudGUgbWFwZWEgYSB1biBpY29ubyBkZWZhdWx0IHNpIGBpY29uYCBubyBzZSBlc3BlY2lmaWNhLlxuICovXG5leHBvcnQgdHlwZSBFbXB0eVN0YXRlVmFyaWFudCA9ICdlbXB0eScgfCAnZXJyb3InIHwgJ29mZmxpbmUnO1xuXG4vKipcbiAqIEFjY2nDs24gQ1RBIG9wY2lvbmFsIGRlbCBzdGF0ZSAodMOtcGljYW1lbnRlIFwiUmVpbnRlbnRhclwiIC8gXCJSZWNhcmdhclwiKS5cbiAqXG4gKiBTaSBzZSBvbWl0ZSwgZWwgY29tcG9uZW50ZSBubyByZW5kZXJpemEgYm90w7NuLiBFbCBgaGFuZGxlcmAgeWEgdmllbmVcbiAqIHRyYWR1Y2lkbyDigJQgZWwgY29tcG9uZW50ZSBOTyByZXN1ZWx2ZSBpMThuIGludGVybmFtZW50ZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFbXB0eVN0YXRlQWN0aW9uIHtcbiAgbGFiZWw6IHN0cmluZztcbiAgaGFuZGxlcjogKCkgPT4gdm9pZCB8IFByb21pc2U8dm9pZD47XG4gIC8qKiBTaSBgdHJ1ZWAsIGVsIGJvdMOzbiBwYXNhIGEgZXN0YWRvIFdPUktJTkcgKHNwaW5uZXIpLiDDmnRpbCBtaWVudHJhcyByZS1mZXRjaGEuICovXG4gIGxvYWRpbmc/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIE1ldGFkYXRhIHBhcmEgYDx2YWwtZW1wdHktc3RhdGU+YCDigJQgbW9sZWN1bGUgcXVlIHJlbmRlcml6YSB1biBlc3RhZG9cbiAqIGRlY2xhcmF0aXZvIGRlIFwibm8gaGF5IGRhdG9zIC8gaHVibyBlcnJvciAvIHNpbiByZWRcIiBjb24gdMOtdHVsbywgZGVzY3JpcGNpw7NuXG4gKiBvcGNpb25hbCB5IENUQSBvcGNpb25hbC4gUmVlbXBsYXphIGVsIHBhdHLDs24gYWQtaG9jIChpb24taWNvbiArIHZhbC10aXRsZSArXG4gKiB2YWwtdGV4dCArIHZhbC1idXR0b24pIHF1ZSBjYWRhIHDDoWdpbmEgdmVuw61hIGltcHJvdmlzYW5kby5cbiAqXG4gKiBJMThuOiBsb3Mgc3RyaW5ncyAoYHRpdGxlYCwgYGRlc2NyaXB0aW9uYCwgYGFjdGlvbi5sYWJlbGApIGxvcyByZXN1ZWx2ZSBsYVxuICogcMOhZ2luYSBhbnRlcyBkZSBjb25zdHJ1aXIgbGFzIHByb3BzLiBFc3RvIG1hbnRpZW5lIGVsIGNvbXBvbmVudGUgYWduw7NzdGljb1xuICogYSBuYW1lc3BhY2VzIHkgY29uc2lzdGVudGUgY29uIGVsIHJlc3RvIGRlIGxhIGxpYiAoRm9ybU1ldGFkYXRhLCBldGMuKS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFbXB0eVN0YXRlTWV0YWRhdGEge1xuICAvKiogVMOtdHVsbyBwcmluY2lwYWwuIFJlcXVlcmlkby4gKi9cbiAgdGl0bGU6IHN0cmluZztcbiAgLyoqIERlc2NyaXBjacOzbiBvcGNpb25hbCAoMS0yIGzDrW5lYXMpIGRlYmFqbyBkZWwgdMOtdHVsby4gKi9cbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIC8qKiBWYXJpYW50ZSBzZW3DoW50aWNhLiBEZWZhdWx0IGAnZW1wdHknYC4gKi9cbiAgdmFyaWFudD86IEVtcHR5U3RhdGVWYXJpYW50O1xuICAvKipcbiAgICogTm9tYnJlIGRlbCBpY29ubyBJb25pY29ucyAoa2ViYWItY2FzZSkuIFNpIHNlIG9taXRlLCBlbCBjb21wb25lbnRlIHVzYVxuICAgKiBlbCBkZWZhdWx0IGRlIGxhIHZhcmlhbnRlOlxuICAgKiAgLSBlbXB0eSAgIOKGkiBgZG9jdW1lbnQtb3V0bGluZWBcbiAgICogIC0gZXJyb3IgICDihpIgYGFsZXJ0LWNpcmNsZS1vdXRsaW5lYFxuICAgKiAgLSBvZmZsaW5lIOKGkiBgY2xvdWQtb2ZmbGluZS1vdXRsaW5lYFxuICAgKlxuICAgKiBTaSBwYXPDoXMgdW4gaWNvbm8gY3VzdG9tLCBpbXBvcnRhbG8gKyByZWdpc3RyYWxvIGNvbiBgYWRkSWNvbnMoeyAuLi4gfSlgXG4gICAqIGVuIGVsIGNvbXBvbmVudGUgY29uc3VtaWRvciAoSW9uaWMgc3RhbmRhbG9uZSBubyBhdXRvLXJlZ2lzdHJhKS5cbiAgICovXG4gIGljb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBFbW9qaSBhIG1vc3RyYXIgZW4gbHVnYXIgZGVsIGljb25vIElvbmljb25zIChlai4gYCfwn6W5J2ApLiBTaSBzZSBlc3BlY2lmaWNhLFxuICAgKiB0aWVuZSBwcmlvcmlkYWQgc29icmUgYGljb25gL2VsIGRlZmF1bHQgZGUgbGEgdmFyaWFudGUg4oCUIHNlIHJlbmRlcml6YSBjb21vXG4gICAqIHRleHRvIChubyByZXF1aWVyZSByZWdpc3RyYXIgbmFkYSBlbiBJb25pYykuIMOadGlsIHBhcmEgZGFyIHVuIHRvbm8gbcOhc1xuICAgKiBodW1hbm8gYSB1biBlc3RhZG8gZGUgZXJyb3IvdmFjw61vLlxuICAgKi9cbiAgZW1vamk/OiBzdHJpbmc7XG4gIC8qKiBUYW1hw7FvIGRlbCBpY29ubyBlbiBww614ZWxlcy4gRGVmYXVsdCBgNjRgLiAqL1xuICBpY29uU2l6ZT86IG51bWJlcjtcbiAgLyoqIEFjY2nDs24gQ1RBIG9wY2lvbmFsLiBTaSBzZSBvbWl0ZSwgbm8gc2UgbXVlc3RyYSBib3TDs24uICovXG4gIGFjdGlvbj86IEVtcHR5U3RhdGVBY3Rpb247XG59XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2VtcHR5LXN0YXRlL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFZhcmlhbnRlIHNlbcOhbnRpY2EgZGVsIGVtcHR5L2Vycm9yIHN0YXRlLlxuICpcbiAqIC0gYGVtcHR5YCAgICDigJQgbGEgZnVlbnRlIGRldm9sdmnDsyBjZXJvIHJlc3VsdGFkb3MgKGxpc3RhIHZhY8OtYSwgc2luIG5vdGlmcykuXG4gKiAgICAgICAgICAgICAgICBJY29ubyBuZXV0cm8sIHNpbiBhbGFybWEuXG4gKiAtIGBlcnJvcmAgICAg4oCUIGxhIGZ1ZW50ZSBmYWxsw7MgcG9yIHVuIGVycm9yIGRlIGxhIGFwcC9zZXJ2aWRvciAoNTAwLCBwYXJzZSkuXG4gKiAgICAgICAgICAgICAgICBJY29ubyBkZSBhbGVydGEuXG4gKiAtIGBvZmZsaW5lYCAg4oCUIGxhIGZ1ZW50ZSBmYWxsw7MgcG9yIHJlZCBjYcOtZGEgLyBGaXJlc3RvcmUgdW5yZWFjaGFibGUuXG4gKiAgICAgICAgICAgICAgICBJY29ubyBjbG91ZC1vZmZsaW5lLlxuICpcbiAqIENhZGEgdmFyaWFudGUgbWFwZWEgYSB1biBpY29ubyBkZWZhdWx0IHNpIGBpY29uYCBubyBzZSBlc3BlY2lmaWNhLlxuICovXG5leHBvcnQgdHlwZSBFbXB0eVN0YXRlVmFyaWFudCA9ICdlbXB0eScgfCAnZXJyb3InIHwgJ29mZmxpbmUnO1xuXG4vKipcbiAqIEFjY2nDs24gQ1RBIG9wY2lvbmFsIGRlbCBzdGF0ZSAodMOtcGljYW1lbnRlIFwiUmVpbnRlbnRhclwiIC8gXCJSZWNhcmdhclwiKS5cbiAqXG4gKiBTaSBzZSBvbWl0ZSwgZWwgY29tcG9uZW50ZSBubyByZW5kZXJpemEgYm90w7NuLiBFbCBgaGFuZGxlcmAgeWEgdmllbmVcbiAqIHRyYWR1Y2lkbyDigJQgZWwgY29tcG9uZW50ZSBOTyByZXN1ZWx2ZSBpMThuIGludGVybmFtZW50ZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFbXB0eVN0YXRlQWN0aW9uIHtcbiAgbGFiZWw6IHN0cmluZztcbiAgaGFuZGxlcjogKCkgPT4gdm9pZCB8IFByb21pc2U8dm9pZD47XG4gIC8qKiBTaSBgdHJ1ZWAsIGVsIGJvdMOzbiBwYXNhIGEgZXN0YWRvIFdPUktJTkcgKHNwaW5uZXIpLiDDmnRpbCBtaWVudHJhcyByZS1mZXRjaGEuICovXG4gIGxvYWRpbmc/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIE1ldGFkYXRhIHBhcmEgYDx2YWwtZW1wdHktc3RhdGU+YCDigJQgbW9sZWN1bGUgcXVlIHJlbmRlcml6YSB1biBlc3RhZG9cbiAqIGRlY2xhcmF0aXZvIGRlIFwibm8gaGF5IGRhdG9zIC8gaHVibyBlcnJvciAvIHNpbiByZWRcIiBjb24gdMOtdHVsbywgZGVzY3JpcGNpw7NuXG4gKiBvcGNpb25hbCB5IENUQSBvcGNpb25hbC4gUmVlbXBsYXphIGVsIHBhdHLDs24gYWQtaG9jIChpb24taWNvbiArIHZhbC10aXRsZSArXG4gKiB2YWwtdGV4dCArIHZhbC1idXR0b24pIHF1ZSBjYWRhIHDDoWdpbmEgdmVuw61hIGltcHJvdmlzYW5kby5cbiAqXG4gKiBJMThuOiBsb3Mgc3RyaW5ncyAoYHRpdGxlYCwgYGRlc2NyaXB0aW9uYCwgYGFjdGlvbi5sYWJlbGApIGxvcyByZXN1ZWx2ZSBsYVxuICogcMOhZ2luYSBhbnRlcyBkZSBjb25zdHJ1aXIgbGFzIHByb3BzLiBFc3RvIG1hbnRpZW5lIGVsIGNvbXBvbmVudGUgYWduw7NzdGljb1xuICogYSBuYW1lc3BhY2VzIHkgY29uc2lzdGVudGUgY29uIGVsIHJlc3RvIGRlIGxhIGxpYiAoRm9ybU1ldGFkYXRhLCBldGMuKS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFbXB0eVN0YXRlTWV0YWRhdGEge1xuICAvKiogVMOtdHVsbyBwcmluY2lwYWwuIFJlcXVlcmlkby4gKi9cbiAgdGl0bGU6IHN0cmluZztcbiAgLyoqIERlc2NyaXBjacOzbiBvcGNpb25hbCAoMS0yIGzDrW5lYXMpIGRlYmFqbyBkZWwgdMOtdHVsby4gKi9cbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIC8qKiBWYXJpYW50ZSBzZW3DoW50aWNhLiBEZWZhdWx0IGAnZW1wdHknYC4gKi9cbiAgdmFyaWFudD86IEVtcHR5U3RhdGVWYXJpYW50O1xuICAvKipcbiAgICogTm9tYnJlIGRlbCBpY29ubyBJb25pY29ucyAoa2ViYWItY2FzZSkuIFNpIHNlIG9taXRlLCBlbCBjb21wb25lbnRlIHVzYVxuICAgKiBlbCBkZWZhdWx0IGRlIGxhIHZhcmlhbnRlOlxuICAgKiAgLSBlbXB0eSAgIOKGkiBgZG9jdW1lbnQtb3V0bGluZWBcbiAgICogIC0gZXJyb3IgICDihpIgYGFsZXJ0LWNpcmNsZS1vdXRsaW5lYFxuICAgKiAgLSBvZmZsaW5lIOKGkiBgY2xvdWQtb2ZmbGluZS1vdXRsaW5lYFxuICAgKlxuICAgKiBTaSBwYXPDoXMgdW4gaWNvbm8gY3VzdG9tLCBpbXBvcnRhbG8gKyByZWdpc3RyYWxvIGNvbiBgYWRkSWNvbnMoeyAuLi4gfSlgXG4gICAqIGVuIGVsIGNvbXBvbmVudGUgY29uc3VtaWRvciAoSW9uaWMgc3RhbmRhbG9uZSBubyBhdXRvLXJlZ2lzdHJhKS5cbiAgICovXG4gIGljb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBFbW9qaSBhIG1vc3RyYXIgZW4gbHVnYXIgZGVsIGljb25vIElvbmljb25zIChlai4gYCfwn6W5J2ApLiBTaSBzZSBlc3BlY2lmaWNhLFxuICAgKiB0aWVuZSBwcmlvcmlkYWQgc29icmUgYGljb25gL2VsIGRlZmF1bHQgZGUgbGEgdmFyaWFudGUg4oCUIHNlIHJlbmRlcml6YSBjb21vXG4gICAqIHRleHRvIChubyByZXF1aWVyZSByZWdpc3RyYXIgbmFkYSBlbiBJb25pYykuIMOadGlsIHBhcmEgZGFyIHVuIHRvbm8gbcOhc1xuICAgKiBodW1hbm8gYSB1biBlc3RhZG8gZGUgZXJyb3IvdmFjw61vLlxuICAgKi9cbiAgZW1vamk/OiBzdHJpbmc7XG4gIC8qKiBUYW1hw7FvIGRlbCBpY29ubyBlbiBww614ZWxlcy4gRGVmYXVsdCBgNjRgLiAqL1xuICBpY29uU2l6ZT86IG51bWJlcjtcbiAgLyoqIEFjY2nDs24gQ1RBIG9wY2lvbmFsLiBTaSBzZSBvbWl0ZSwgbm8gc2UgbXVlc3RyYSBib3TDs24uICovXG4gIGFjdGlvbj86IEVtcHR5U3RhdGVBY3Rpb247XG4gIC8qKlxuICAgKiBgb3BlcmF0aW9uSWRgIGRldnVlbHRvIHBvciBlbCBiYWNrZW5kLiBDdWFuZG8gZXN0w6EgcHJlc2VudGUgc2UgbXVlc3RyYSB1blxuICAgKiBjaGlwIGRpc2NyZXRvIGNvbiBlbCBJRCB5IHVuIGJvdMOzbiBkZSBjb3BpYS4gRWwgdXN1YXJpbyBsbyBjb21wYXJ0ZSBjb25cbiAgICogc29wb3J0ZSBwYXJhIHRyYWNpbmcgZW4gQ2xvdWRXYXRjaC5cbiAgICovXG4gIG9wZXJhdGlvbklkPzogc3RyaW5nO1xufVxuIl19
@@ -8,6 +8,7 @@ import { TitleComponent } from '../../atoms/title/title.component';
8
8
  import { CodeDisplayComponent } from '../../molecules/code-display/code-display.component';
9
9
  import { NotesBoxComponent } from '../../molecules/notes-box/notes-box.component';
10
10
  import { PlainCodeBoxComponent } from '../../molecules/plain-code-box/plain-code-box.component';
11
+ import { ProcessLinksPipe } from '../../../shared/pipes/process-links.pipe';
11
12
  import { ARTICLE_SPACING, } from './types';
12
13
  import * as i0 from "@angular/core";
13
14
  import * as i1 from "@angular/common";
@@ -315,7 +316,7 @@ export class ArticleComponent {
315
316
  <span *ngIf="getListElement(element).props.listType === 'checklist'" class="val-article__list-check"
316
317
  >✓</span
317
318
  >
318
- <span [innerHTML]="item.text"></span>
319
+ <span [innerHTML]="item.text | processLinks"></span>
319
320
  </li>
320
321
  </ul>
321
322
  <ol
@@ -323,7 +324,7 @@ export class ArticleComponent {
323
324
  class="val-article__list val-article__list--ordered"
324
325
  >
325
326
  <li *ngFor="let item of getListElement(element).props.items" class="val-article__list-item">
326
- <span [innerHTML]="item.text"></span>
327
+ <span [innerHTML]="item.text | processLinks"></span>
327
328
  </li>
328
329
  </ol>
329
330
  </ng-container>
@@ -394,7 +395,7 @@ export class ArticleComponent {
394
395
  </ng-container>
395
396
  </div>
396
397
  </article>
397
- `, isInline: true, styles: ["@charset \"UTF-8\";:root{--val-container-sm: 540px;--val-container-md: 720px;--val-container-lg: 880px;--val-container-xl: 1100px;--val-container-padding: 16px;--ion-color-primary: #7026df;--ion-color-primary-rgb: 112, 38, 223;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #6321c4;--ion-color-primary-tint: #7e3ce2;--ion-color-secondary: #e2ccff;--ion-color-secondary-rgb: 226, 204, 255;--ion-color-secondary-contrast: #000000;--ion-color-secondary-contrast-rgb: 0, 0, 0;--ion-color-secondary-shade: #c7b4e0;--ion-color-secondary-tint: #e5d1ff;--ion-color-texti: #354c69;--ion-color-texti-rgb: 53, 76, 105;--ion-color-texti-contrast: #ffffff;--ion-color-texti-contrast-rgb: 255, 255, 255;--ion-color-texti-shade: #2f435c;--ion-color-texti-tint: #495e78;--ion-color-darki: #090f1b;--ion-color-darki-rgb: 9, 15, 27;--ion-color-darki-contrast: #ffffff;--ion-color-darki-contrast-rgb: 255, 255, 255;--ion-color-darki-shade: #080d18;--ion-color-darki-tint: #222732;--ion-color-medium: #9e9e9e;--ion-color-medium-rgb: 158, 158, 158;--ion-color-medium-contrast: #000000;--ion-color-medium-contrast-rgb: 0, 0, 0;--ion-color-medium-shade: #8b8b8b;--ion-color-medium-tint: #a8a8a8;--swiper-pagination-color: var(--ion-color-primary);--swiper-navigation-color: var(--ion-color-primary);--swiper-pagination-bullet-inactive-color: var(--ion-color-medium)}body.dark,html.ion-palette-dark,body[data-theme=dark]{--ion-color-texti: #8fc1ff;--ion-color-texti-rgb: 143, 193, 255;--ion-color-texti-contrast: #000000;--ion-color-texti-contrast-rgb: 0, 0, 0;--ion-color-texti-shade: #7eaae0;--ion-color-texti-tint: #9ac7ff;--ion-color-darki: #ffffff;--ion-color-darki-rgb: 255, 255, 255;--ion-color-darki-contrast: #000000;--ion-color-darki-contrast-rgb: 0, 0, 0;--ion-color-darki-shade: #e0e0e0;--ion-color-darki-tint: #ffffff;--ion-color-primary: #8f49f8;--ion-color-primary-rgb: 143, 73, 248;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #7e40da;--ion-color-primary-tint: #9a5bf9}.ion-color-texti{--ion-color-base: var(--ion-color-texti);--ion-color-base-rgb: var(--ion-color-texti-rgb);--ion-color-contrast: var(--ion-color-texti-contrast);--ion-color-contrast-rgb: var(--ion-color-texti-contrast-rgb);--ion-color-shade: var(--ion-color-texti-shade);--ion-color-tint: var(--ion-color-texti-tint)}.ion-color-darki{--ion-color-base: var(--ion-color-darki);--ion-color-base-rgb: var(--ion-color-darki-rgb);--ion-color-contrast: var(--ion-color-darki-contrast);--ion-color-contrast-rgb: var(--ion-color-darki-contrast-rgb);--ion-color-shade: var(--ion-color-darki-shade);--ion-color-tint: var(--ion-color-darki-tint)}.val-article{width:100%;margin:0 auto;line-height:1.6;color:var(--ion-color-dark, #1f2937);display:block;position:static}.val-article--centered{margin:0 auto}.val-article--light{background-color:var(--ion-color-light, #ffffff);color:var(--ion-color-dark, #1f2937)}.val-article--dark{background-color:var(--ion-color-dark, #1f2937);color:var(--ion-color-light, #ffffff)}.val-article__element{position:relative}.val-article__element:last-child{margin-bottom:0!important}.val-article__spacing-top--none{margin-top:0!important}.val-article__spacing-top--small{margin-top:.5rem!important}.val-article__spacing-top--medium{margin-top:1rem!important}.val-article__spacing-top--large{margin-top:1.5rem!important}.val-article__spacing-top--xlarge{margin-top:2.5rem!important}.val-article__spacing-bottom--none{margin-bottom:0!important}.val-article__spacing-bottom--small{margin-bottom:.5rem!important}.val-article__spacing-bottom--medium{margin-bottom:1rem!important}.val-article__spacing-bottom--large{margin-bottom:1.5rem!important}.val-article__spacing-bottom--xlarge{margin-bottom:2.5rem!important}.val-article__spacing-horizontal--none{margin-left:0!important;margin-right:0!important}.val-article__spacing-horizontal--small{margin-left:.5rem!important;margin-right:.5rem!important}.val-article__spacing-horizontal--medium{margin-left:1rem!important;margin-right:1rem!important}.val-article__spacing-horizontal--large{margin-left:1.5rem!important;margin-right:1.5rem!important}.val-article__spacing-horizontal--xlarge{margin-left:2.5rem!important;margin-right:2.5rem!important}.val-article__quote{border-left:4px solid #0969da;padding:1rem;background-color:var(--ion-color-light-shade, #f8f9fa);border-radius:0 8px 8px 0;font-style:italic}.val-article__quote-content{margin-bottom:.5rem;font-size:1.1em}.val-article__quote-author{font-size:.9em;color:var(--ion-color-medium, #6c757d);font-style:normal;font-weight:500;text-align:right}.val-article__quote-source{font-weight:400;opacity:.8}.val-article__highlight{padding:1rem;background-color:var(--ion-color-warning-tint, #fff3cd);border:1px solid var(--ion-color-warning, #ffc107);border-radius:4px}.val-article__highlight--rounded{border-radius:12px}.val-article__code{border-radius:8px;overflow:hidden;border:1px solid #e1e5e9}.val-article__code-language{background-color:var(--ion-color-medium-tint, #f8f9fa);padding:.5rem 1rem;font-size:.875em;font-weight:500;color:var(--ion-color-dark, #495057);border-bottom:1px solid #e1e5e9;text-transform:uppercase;letter-spacing:.5px}.val-article__code-content{background-color:#f6f8fa;color:#24292e;padding:1rem;margin:0;overflow-x:auto;font-family:SFMono-Regular,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.875em;line-height:1.5}.val-article__code-content code{background:none;padding:0;font-size:inherit;color:inherit}.val-article__code-content--dark{background-color:#161b22;color:#f0f6fc}.val-article__list{padding-left:1.5rem}.val-article__list--ordered{list-style-type:decimal}.val-article__list-item{margin-bottom:.5rem;line-height:1.6;position:relative}.val-article__list-item:last-child{margin-bottom:0}.val-article__list-check{color:var(--ion-color-success, #28a745);font-weight:700;margin-right:.5rem;position:absolute;left:-1.5rem}.val-article .val-article__list:has(.val-article__list-check){list-style:none;padding-left:1rem}.val-article__button-container--left{text-align:left}.val-article__button-container--center{text-align:center}.val-article__button-container--right{text-align:right}.val-article__separator{text-align:center}.val-article__separator-line{border:none;height:1px;background-color:#d0d7de;margin:0}.val-article__separator-line--thin{height:1px}.val-article__separator-line--thick{height:3px}.val-article__separator-dots{color:#d0d7de;font-size:1.5em;letter-spacing:.5em;-webkit-user-select:none;user-select:none}.val-article__separator-space{height:0}.val-article__image{text-align:center}.val-article__image--left{text-align:left}.val-article__image--center{text-align:center}.val-article__image--right{text-align:right}.val-article__image-content{max-width:100%;height:auto;border-radius:4px;box-shadow:0 2px 8px #0000001a;transition:transform .2s ease}.val-article__image-content:hover{transform:scale(1.02)}.val-article__image-content--rounded{border-radius:12px}.val-article__image-caption{margin-top:.5rem;font-size:.875em;color:var(--ion-color-medium, #6c757d);font-style:italic;text-align:center}.val-article__video{text-align:center}.val-article__video-content{max-width:100%;height:auto;border-radius:8px;box-shadow:0 4px 12px #00000026}.val-article__video-title{margin-top:.5rem;font-size:.9em;color:var(--ion-color-medium, #6c757d);font-weight:500}.val-article__custom *{max-width:100%}@media (max-width: 768px){.val-article__code-content{font-size:.8em;padding:.5rem}.val-article__image-content:hover{transform:none}.val-article__quote,.val-article__highlight{padding:.5rem}}:host-context(body.dark) .val-article--auto,:host-context(.dark) .val-article--auto,:host-context(.ion-palette-dark) .val-article--auto,:host-context(html.ion-palette-dark) .val-article--auto,:host-context([data-theme=dark]) .val-article--auto{background-color:var(--ion-color-dark, #1f2937);color:var(--ion-color-light, #ffffff)}:host-context(body.dark) .val-article--auto .val-article__quote,:host-context(.dark) .val-article--auto .val-article__quote,:host-context(.ion-palette-dark) .val-article--auto .val-article__quote,:host-context(html.ion-palette-dark) .val-article--auto .val-article__quote,:host-context([data-theme=dark]) .val-article--auto .val-article__quote{background-color:#ffffff14;border-left-color:var(--ion-color-primary)}:host-context(body.dark) .val-article--auto .val-article__highlight,:host-context(.dark) .val-article--auto .val-article__highlight,:host-context(.ion-palette-dark) .val-article--auto .val-article__highlight,:host-context(html.ion-palette-dark) .val-article--auto .val-article__highlight,:host-context([data-theme=dark]) .val-article--auto .val-article__highlight{background-color:#ffc1071a;border-color:var(--ion-color-warning-shade, #e0a800)}:host-context(body.dark) .val-article--auto .val-article__code-content,:host-context(.dark) .val-article--auto .val-article__code-content,:host-context(.ion-palette-dark) .val-article--auto .val-article__code-content,:host-context(html.ion-palette-dark) .val-article--auto .val-article__code-content,:host-context([data-theme=dark]) .val-article--auto .val-article__code-content{background-color:#161b22;color:#f0f6fc}.val-article__element{animation:fadeInUp .3s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-contrast: high){.val-article__separator-line{background-color:currentColor;opacity:.5}.val-article__quote{border-left-width:6px}}@media (prefers-reduced-motion: reduce){.val-article .val-article__element{animation:none}.val-article__image-content{transition:none}.val-article__image-content:hover{transform:none}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: DisplayComponent, selector: "val-display", inputs: ["props"] }, { kind: "component", type: TitleComponent, selector: "val-title", inputs: ["props"] }, { kind: "component", type: TextComponent, selector: "val-text", inputs: ["props"] }, { kind: "component", type: ButtonComponent, selector: "val-button", inputs: ["preset", "props"], outputs: ["onClick"] }, { kind: "component", type: ImageComponent, selector: "val-image", inputs: ["props"] }, { kind: "component", type: CodeDisplayComponent, selector: "val-code-display", inputs: ["props"] }, { kind: "component", type: NotesBoxComponent, selector: "val-notes-box", inputs: ["props"] }, { kind: "component", type: PlainCodeBoxComponent, selector: "val-plain-code-box", inputs: ["props"] }] }); }
398
+ `, isInline: true, styles: ["@charset \"UTF-8\";:root{--val-container-sm: 540px;--val-container-md: 720px;--val-container-lg: 880px;--val-container-xl: 1100px;--val-container-padding: 16px;--ion-color-primary: #7026df;--ion-color-primary-rgb: 112, 38, 223;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #6321c4;--ion-color-primary-tint: #7e3ce2;--ion-color-secondary: #e2ccff;--ion-color-secondary-rgb: 226, 204, 255;--ion-color-secondary-contrast: #000000;--ion-color-secondary-contrast-rgb: 0, 0, 0;--ion-color-secondary-shade: #c7b4e0;--ion-color-secondary-tint: #e5d1ff;--ion-color-texti: #354c69;--ion-color-texti-rgb: 53, 76, 105;--ion-color-texti-contrast: #ffffff;--ion-color-texti-contrast-rgb: 255, 255, 255;--ion-color-texti-shade: #2f435c;--ion-color-texti-tint: #495e78;--ion-color-darki: #090f1b;--ion-color-darki-rgb: 9, 15, 27;--ion-color-darki-contrast: #ffffff;--ion-color-darki-contrast-rgb: 255, 255, 255;--ion-color-darki-shade: #080d18;--ion-color-darki-tint: #222732;--ion-color-medium: #9e9e9e;--ion-color-medium-rgb: 158, 158, 158;--ion-color-medium-contrast: #000000;--ion-color-medium-contrast-rgb: 0, 0, 0;--ion-color-medium-shade: #8b8b8b;--ion-color-medium-tint: #a8a8a8;--swiper-pagination-color: var(--ion-color-primary);--swiper-navigation-color: var(--ion-color-primary);--swiper-pagination-bullet-inactive-color: var(--ion-color-medium)}body.dark,html.ion-palette-dark,body[data-theme=dark]{--ion-color-texti: #8fc1ff;--ion-color-texti-rgb: 143, 193, 255;--ion-color-texti-contrast: #000000;--ion-color-texti-contrast-rgb: 0, 0, 0;--ion-color-texti-shade: #7eaae0;--ion-color-texti-tint: #9ac7ff;--ion-color-darki: #ffffff;--ion-color-darki-rgb: 255, 255, 255;--ion-color-darki-contrast: #000000;--ion-color-darki-contrast-rgb: 0, 0, 0;--ion-color-darki-shade: #e0e0e0;--ion-color-darki-tint: #ffffff;--ion-color-primary: #8f49f8;--ion-color-primary-rgb: 143, 73, 248;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #7e40da;--ion-color-primary-tint: #9a5bf9}.ion-color-texti{--ion-color-base: var(--ion-color-texti);--ion-color-base-rgb: var(--ion-color-texti-rgb);--ion-color-contrast: var(--ion-color-texti-contrast);--ion-color-contrast-rgb: var(--ion-color-texti-contrast-rgb);--ion-color-shade: var(--ion-color-texti-shade);--ion-color-tint: var(--ion-color-texti-tint)}.ion-color-darki{--ion-color-base: var(--ion-color-darki);--ion-color-base-rgb: var(--ion-color-darki-rgb);--ion-color-contrast: var(--ion-color-darki-contrast);--ion-color-contrast-rgb: var(--ion-color-darki-contrast-rgb);--ion-color-shade: var(--ion-color-darki-shade);--ion-color-tint: var(--ion-color-darki-tint)}.val-article{width:100%;margin:0 auto;line-height:1.6;color:var(--ion-color-dark, #1f2937);display:block;position:static}.val-article--centered{margin:0 auto}.val-article--light{background-color:var(--ion-color-light, #ffffff);color:var(--ion-color-dark, #1f2937)}.val-article--dark{background-color:var(--ion-color-dark, #1f2937);color:var(--ion-color-light, #ffffff)}.val-article__element{position:relative}.val-article__element:last-child{margin-bottom:0!important}.val-article__spacing-top--none{margin-top:0!important}.val-article__spacing-top--small{margin-top:.5rem!important}.val-article__spacing-top--medium{margin-top:1rem!important}.val-article__spacing-top--large{margin-top:1.5rem!important}.val-article__spacing-top--xlarge{margin-top:2.5rem!important}.val-article__spacing-bottom--none{margin-bottom:0!important}.val-article__spacing-bottom--small{margin-bottom:.5rem!important}.val-article__spacing-bottom--medium{margin-bottom:1rem!important}.val-article__spacing-bottom--large{margin-bottom:1.5rem!important}.val-article__spacing-bottom--xlarge{margin-bottom:2.5rem!important}.val-article__spacing-horizontal--none{margin-left:0!important;margin-right:0!important}.val-article__spacing-horizontal--small{margin-left:.5rem!important;margin-right:.5rem!important}.val-article__spacing-horizontal--medium{margin-left:1rem!important;margin-right:1rem!important}.val-article__spacing-horizontal--large{margin-left:1.5rem!important;margin-right:1.5rem!important}.val-article__spacing-horizontal--xlarge{margin-left:2.5rem!important;margin-right:2.5rem!important}.val-article__quote{border-left:4px solid #0969da;padding:1rem;background-color:var(--ion-color-light-shade, #f8f9fa);border-radius:0 8px 8px 0;font-style:italic}.val-article__quote-content{margin-bottom:.5rem;font-size:1.1em}.val-article__quote-author{font-size:.9em;color:var(--ion-color-medium, #6c757d);font-style:normal;font-weight:500;text-align:right}.val-article__quote-source{font-weight:400;opacity:.8}.val-article__highlight{padding:1rem;background-color:var(--ion-color-warning-tint, #fff3cd);border:1px solid var(--ion-color-warning, #ffc107);border-radius:4px}.val-article__highlight--rounded{border-radius:12px}.val-article__code{border-radius:8px;overflow:hidden;border:1px solid #e1e5e9}.val-article__code-language{background-color:var(--ion-color-medium-tint, #f8f9fa);padding:.5rem 1rem;font-size:.875em;font-weight:500;color:var(--ion-color-dark, #495057);border-bottom:1px solid #e1e5e9;text-transform:uppercase;letter-spacing:.5px}.val-article__code-content{background-color:#f6f8fa;color:#24292e;padding:1rem;margin:0;overflow-x:auto;font-family:SFMono-Regular,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.875em;line-height:1.5}.val-article__code-content code{background:none;padding:0;font-size:inherit;color:inherit}.val-article__code-content--dark{background-color:#161b22;color:#f0f6fc}.val-article__list{padding-left:1.5rem}.val-article__list--ordered{list-style-type:decimal}.val-article__list-item{margin-bottom:.5rem;line-height:1.6;position:relative}.val-article__list-item:last-child{margin-bottom:0}.val-article__list-check{color:var(--ion-color-success, #28a745);font-weight:700;margin-right:.5rem;position:absolute;left:-1.5rem}.val-article .val-article__list:has(.val-article__list-check){list-style:none;padding-left:1rem}.val-article__button-container--left{text-align:left}.val-article__button-container--center{text-align:center}.val-article__button-container--right{text-align:right}.val-article__separator{text-align:center}.val-article__separator-line{border:none;height:1px;background-color:#d0d7de;margin:0}.val-article__separator-line--thin{height:1px}.val-article__separator-line--thick{height:3px}.val-article__separator-dots{color:#d0d7de;font-size:1.5em;letter-spacing:.5em;-webkit-user-select:none;user-select:none}.val-article__separator-space{height:0}.val-article__image{text-align:center}.val-article__image--left{text-align:left}.val-article__image--center{text-align:center}.val-article__image--right{text-align:right}.val-article__image-content{max-width:100%;height:auto;border-radius:4px;box-shadow:0 2px 8px #0000001a;transition:transform .2s ease}.val-article__image-content:hover{transform:scale(1.02)}.val-article__image-content--rounded{border-radius:12px}.val-article__image-caption{margin-top:.5rem;font-size:.875em;color:var(--ion-color-medium, #6c757d);font-style:italic;text-align:center}.val-article__video{text-align:center}.val-article__video-content{max-width:100%;height:auto;border-radius:8px;box-shadow:0 4px 12px #00000026}.val-article__video-title{margin-top:.5rem;font-size:.9em;color:var(--ion-color-medium, #6c757d);font-weight:500}.val-article__custom *{max-width:100%}@media (max-width: 768px){.val-article__code-content{font-size:.8em;padding:.5rem}.val-article__image-content:hover{transform:none}.val-article__quote,.val-article__highlight{padding:.5rem}}:host-context(body.dark) .val-article--auto,:host-context(.dark) .val-article--auto,:host-context(.ion-palette-dark) .val-article--auto,:host-context(html.ion-palette-dark) .val-article--auto,:host-context([data-theme=dark]) .val-article--auto{background-color:var(--ion-color-dark, #1f2937);color:var(--ion-color-light, #ffffff)}:host-context(body.dark) .val-article--auto .val-article__quote,:host-context(.dark) .val-article--auto .val-article__quote,:host-context(.ion-palette-dark) .val-article--auto .val-article__quote,:host-context(html.ion-palette-dark) .val-article--auto .val-article__quote,:host-context([data-theme=dark]) .val-article--auto .val-article__quote{background-color:#ffffff14;border-left-color:var(--ion-color-primary)}:host-context(body.dark) .val-article--auto .val-article__highlight,:host-context(.dark) .val-article--auto .val-article__highlight,:host-context(.ion-palette-dark) .val-article--auto .val-article__highlight,:host-context(html.ion-palette-dark) .val-article--auto .val-article__highlight,:host-context([data-theme=dark]) .val-article--auto .val-article__highlight{background-color:#ffc1071a;border-color:var(--ion-color-warning-shade, #e0a800)}:host-context(body.dark) .val-article--auto .val-article__code-content,:host-context(.dark) .val-article--auto .val-article__code-content,:host-context(.ion-palette-dark) .val-article--auto .val-article__code-content,:host-context(html.ion-palette-dark) .val-article--auto .val-article__code-content,:host-context([data-theme=dark]) .val-article--auto .val-article__code-content{background-color:#161b22;color:#f0f6fc}.val-article__element{animation:fadeInUp .3s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-contrast: high){.val-article__separator-line{background-color:currentColor;opacity:.5}.val-article__quote{border-left-width:6px}}@media (prefers-reduced-motion: reduce){.val-article .val-article__element{animation:none}.val-article__image-content{transition:none}.val-article__image-content:hover{transform:none}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: DisplayComponent, selector: "val-display", inputs: ["props"] }, { kind: "component", type: TitleComponent, selector: "val-title", inputs: ["props"] }, { kind: "component", type: TextComponent, selector: "val-text", inputs: ["props"] }, { kind: "component", type: ButtonComponent, selector: "val-button", inputs: ["preset", "props"], outputs: ["onClick"] }, { kind: "component", type: ImageComponent, selector: "val-image", inputs: ["props"] }, { kind: "component", type: CodeDisplayComponent, selector: "val-code-display", inputs: ["props"] }, { kind: "component", type: NotesBoxComponent, selector: "val-notes-box", inputs: ["props"] }, { kind: "component", type: PlainCodeBoxComponent, selector: "val-plain-code-box", inputs: ["props"] }, { kind: "pipe", type: ProcessLinksPipe, name: "processLinks" }] }); }
398
399
  }
399
400
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ArticleComponent, decorators: [{
400
401
  type: Component,
@@ -408,6 +409,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
408
409
  CodeDisplayComponent,
409
410
  NotesBoxComponent,
410
411
  PlainCodeBoxComponent,
412
+ ProcessLinksPipe,
411
413
  ], template: `
412
414
  <article
413
415
  class="val-article"
@@ -492,7 +494,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
492
494
  <span *ngIf="getListElement(element).props.listType === 'checklist'" class="val-article__list-check"
493
495
  >✓</span
494
496
  >
495
- <span [innerHTML]="item.text"></span>
497
+ <span [innerHTML]="item.text | processLinks"></span>
496
498
  </li>
497
499
  </ul>
498
500
  <ol
@@ -500,7 +502,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
500
502
  class="val-article__list val-article__list--ordered"
501
503
  >
502
504
  <li *ngFor="let item of getListElement(element).props.items" class="val-article__list-item">
503
- <span [innerHTML]="item.text"></span>
505
+ <span [innerHTML]="item.text | processLinks"></span>
504
506
  </li>
505
507
  </ol>
506
508
  </ng-container>
@@ -575,4 +577,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
575
577
  }], ctorParameters: () => [], propDecorators: { props: [{
576
578
  type: Input
577
579
  }] } });
578
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJ0aWNsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2FydGljbGUvYXJ0aWNsZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFbkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNuRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUUzRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUVsRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUVoRyxPQUFPLEVBQ0wsZUFBZSxHQW1CaEIsTUFBTSxTQUFTLENBQUM7OztBQXVMakI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FzQkc7QUFDSCxNQUFNLE9BQU8sZ0JBQWdCO0lBUTNCLGdCQUFlLENBQUM7SUFFaEIsUUFBUTtRQUNOLG9CQUFvQjtRQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDeEMsT0FBTyxDQUFDLElBQUksQ0FBQyx5Q0FBeUMsQ0FBQyxDQUFDO1FBQzFELENBQUM7SUFDSCxDQUFD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QztJQUNKLENBQUM7K0dBeE9VLGdCQUFnQjttR0FBaEIsZ0JBQWdCLG1HQTlMakI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtS1Qsb21UQTdLQyxZQUFZLG1iQUNaLGdCQUFnQiwyRUFDaEIsY0FBYyx5RUFDZCxhQUFhLHdFQUNiLGVBQWUsMEdBQ2YsY0FBYyx5RUFDZCxvQkFBb0IsZ0ZBQ3BCLGlCQUFpQiw2RUFDakIscUJBQXFCOzs0RkFnTVosZ0JBQWdCO2tCQTVNNUIsU0FBUzsrQkFDRSxhQUFhLGNBQ1gsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixjQUFjO3dCQUNkLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixjQUFjO3dCQUNkLG9CQUFvQjt3QkFDcEIsaUJBQWlCO3dCQUNqQixxQkFBcUI7cUJBQ3RCLFlBQ1M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtS1Q7d0RBaUNELEtBQUs7c0JBREosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2F0b21zL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IERpc3BsYXlDb21wb25lbnQgfSBmcm9tICcuLi8uLi9hdG9tcy9kaXNwbGF5L2Rpc3BsYXkuY29tcG9uZW50JztcbmltcG9ydCB7IEltYWdlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYXRvbXMvaW1hZ2UvaW1hZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IEltYWdlTWV0YWRhdGEgfSBmcm9tICcuLi8uLi9hdG9tcy9pbWFnZS90eXBlcyc7XG5pbXBvcnQgeyBUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYXRvbXMvdGV4dC90ZXh0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUaXRsZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2F0b21zL3RpdGxlL3RpdGxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb2RlRGlzcGxheUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9jb2RlLWRpc3BsYXkvY29kZS1kaXNwbGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb2RlRGlzcGxheU1ldGFkYXRhIH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL2NvZGUtZGlzcGxheS90eXBlcyc7XG5pbXBvcnQgeyBOb3Rlc0JveENvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9ub3Rlcy1ib3gvbm90ZXMtYm94LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOb3Rlc0JveE1ldGFkYXRhIH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL25vdGVzLWJveC90eXBlcyc7XG5pbXBvcnQgeyBQbGFpbkNvZGVCb3hDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvcGxhaW4tY29kZS1ib3gvcGxhaW4tY29kZS1ib3guY29tcG9uZW50JztcbmltcG9ydCB7IFBsYWluQ29kZUJveE1ldGFkYXRhIH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL3BsYWluLWNvZGUtYm94L3R5cGVzJztcbmltcG9ydCB7XG4gIEFSVElDTEVfU1BBQ0lORyxcbiAgQXJ0aWNsZUJ1dHRvbkVsZW1lbnQsXG4gIEFydGljbGVDb2RlRWxlbWVudCxcbiAgQXJ0aWNsZUNvbW1hbmRFbGVtZW50LFxuICBBcnRpY2xlQ29udGVudFR5cGUsXG4gIEFydGljbGVDdXN0b21FbGVtZW50LFxuICBBcnRpY2xlRWxlbWVudCxcbiAgQXJ0aWNsZUhpZ2hsaWdodEVsZW1lbnQsXG4gIEFydGljbGVJbWFnZUVsZW1lbnQsXG4gIEFydGljbGVMaXN0RWxlbWVudCxcbiAgQXJ0aWNsZU1ldGFkYXRhLFxuICBBcnRpY2xlTm90ZUVsZW1lbnQsXG4gIEFydGljbGVRdW90ZUVsZW1lbnQsXG4gIEFydGljbGVTZXBhcmF0b3JFbGVtZW50LFxuICBBcnRpY2xlU3BhY2luZyxcbiAgQXJ0aWNsZVN1YnRpdGxlRWxlbWVudCxcbiAgQXJ0aWNsZVRleHRFbGVtZW50LFxuICBBcnRpY2xlVGl0bGVFbGVtZW50LFxuICBBcnRpY2xlVmlkZW9FbGVtZW50LFxufSBmcm9tICcuL3R5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLWFydGljbGUnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIERpc3BsYXlDb21wb25lbnQsXG4gICAgVGl0bGVDb21wb25lbnQsXG4gICAgVGV4dENvbXBvbmVudCxcbiAgICBCdXR0b25Db21wb25lbnQsXG4gICAgSW1hZ2VDb21wb25lbnQsXG4gICAgQ29kZURpc3BsYXlDb21wb25lbnQsXG4gICAgTm90ZXNCb3hDb21wb25lbnQsXG4gICAgUGxhaW5Db2RlQm94Q29tcG9uZW50LFxuICBdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxhcnRpY2xlXG4gICAgICBjbGFzcz1cInZhbC1hcnRpY2xlXCJcbiAgICAgIFtjbGFzc109XCJwcm9wcy5jc3NDbGFzc1wiXG4gICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICd2YWwtYXJ0aWNsZS0tY2VudGVyZWQnOiBwcm9wcy5jZW50ZXJlZCxcbiAgICAgICAgJ3ZhbC1hcnRpY2xlLS1saWdodCc6IHByb3BzLnRoZW1lID09PSAnbGlnaHQnLFxuICAgICAgICAndmFsLWFydGljbGUtLWRhcmsnOiBwcm9wcy50aGVtZSA9PT0gJ2RhcmsnLFxuICAgICAgfVwiXG4gICAgICBbc3R5bGUubWF4LXdpZHRoXT1cInByb3BzLm1heFdpZHRoXCJcbiAgICAgIFtuZ1N0eWxlXT1cImdldENvbnRhaW5lclN0eWxlcygpXCJcbiAgICA+XG4gICAgICA8ZGl2XG4gICAgICAgICpuZ0Zvcj1cImxldCBlbGVtZW50IG9mIHByb3BzLmVsZW1lbnRzOyB0cmFja0J5OiB0cmFja0J5Rm5cIlxuICAgICAgICBjbGFzcz1cInZhbC1hcnRpY2xlX19lbGVtZW50XCJcbiAgICAgICAgW2NsYXNzXT1cImVsZW1lbnQuY3NzQ2xhc3NcIlxuICAgICAgICBbbmdDbGFzc109XCJnZXRFbGVtZW50U3BhY2luZ0NsYXNzKGVsZW1lbnQpXCJcbiAgICAgICAgW3N0eWxlLmRpc3BsYXldPVwiZWxlbWVudC52aXNpYmxlID09PSBmYWxzZSA/ICdub25lJyA6ICdibG9jaydcIlxuICAgICAgPlxuICAgICAgICA8IS0tIFTDrXR1bG8gLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJlbGVtZW50LnR5cGUgPT09ICd0aXRsZSdcIj5cbiAgICAgICAgICA8dmFsLWRpc3BsYXkgW3Byb3BzXT1cImdldFRpdGxlRWxlbWVudChlbGVtZW50KS5wcm9wc1wiPjwvdmFsLWRpc3BsYXk+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwhLS0gU3VidMOtdHVsbyAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVsZW1lbnQudHlwZSA9PT0gJ3N1YnRpdGxlJ1wiPlxuICAgICAgICAgIDx2YWwtdGl0bGUgW3Byb3BzXT1cImdldFN1YnRpdGxlRWxlbWVudChlbGVtZW50KS5wcm9wc1wiPjwvdmFsLXRpdGxlPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8IS0tIFRleHRvL1DDoXJyYWZvIC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZWxlbWVudC50eXBlID09PSAndGV4dCcgfHwgZWxlbWVudC50eXBlID09PSAncGFyYWdyYXBoJ1wiPlxuICAgICAgICAgIDx2YWwtdGV4dCBbcHJvcHNdPVwiZ2V0VGV4dEVsZW1lbnQoZWxlbWVudCkucHJvcHNcIj48L3ZhbC10ZXh0PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8IS0tIENpdGEgLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJlbGVtZW50LnR5cGUgPT09ICdxdW90ZSdcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidmFsLWFydGljbGVfX3F1b3RlXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidmFsLWFydGljbGVfX3F1b3RlLWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgPHZhbC10ZXh0IFtwcm9wc109XCJnZXRRdW90ZVRleHRQcm9wcyhlbGVtZW50KVwiPjwvdmFsLXRleHQ+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJnZXRRdW90ZUVsZW1lbnQoZWxlbWVudCkucHJvcHMuYXV0aG9yXCIgY2xhc3M9XCJ2YWwtYXJ0aWNsZV9fcXVvdGUtYXV0aG9yXCI+XG4gICAgICAgICAgICAgIOKAlCB7eyBnZXRRdW90ZUVsZW1lbnQoZWxlbWVudCkucHJvcHMuYXV0aG9yIH19XG4gICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZ2V0UXVvdGVFbGVtZW50KGVsZW1lbnQpLnByb3BzLnNvdXJjZVwiIGNsYXNzPVwidmFsLWFydGljbGVfX3F1b3RlLXNvdXJjZVwiPlxuICAgICAgICAgICAgICAgICwge3sgZ2V0UXVvdGVFbGVtZW50KGVsZW1lbnQpLnByb3BzLnNvdXJjZSB9fVxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPCEtLSBUZXh0byBkZXN0YWNhZG8gLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJlbGVtZW50LnR5cGUgPT09ICdoaWdobGlnaHQnXCI+XG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJ2YWwtYXJ0aWNsZV9faGlnaGxpZ2h0XCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgJ3ZhbC1hcnRpY2xlX19oaWdobGlnaHQtLXJvdW5kZWQnOiBnZXRIaWdobGlnaHRFbGVtZW50KGVsZW1lbnQpLnByb3BzLnJvdW5kZWQsXG4gICAgICAgICAgICB9XCJcbiAgICAgICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kLWNvbG9yXT1cImdldEhpZ2hsaWdodENvbG9yKGVsZW1lbnQpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8dmFsLXRleHQgW3Byb3BzXT1cImdldEhpZ2hsaWdodFRleHRQcm9wcyhlbGVtZW50KVwiPjwvdmFsLXRleHQ+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwhLS0gQ8OzZGlnbyAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVsZW1lbnQudHlwZSA9PT0gJ2NvZGUnXCI+XG4gICAgICAgICAgPHZhbC1jb2RlLWRpc3BsYXkgW3Byb3BzXT1cImdldENvZGVEaXNwbGF5UHJvcHMoZWxlbWVudClcIj48L3ZhbC1jb2RlLWRpc3BsYXk+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwhLS0gTm90YSBkZXN0YWNhZGEgLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJlbGVtZW50LnR5cGUgPT09ICdub3RlJ1wiPlxuICAgICAgICAgIDx2YWwtbm90ZXMtYm94IFtwcm9wc109XCJnZXROb3RlQm94UHJvcHMoZWxlbWVudClcIj48L3ZhbC1ub3Rlcy1ib3g+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwhLS0gQ29tYW5kbyBkZSB0ZXJtaW5hbCAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVsZW1lbnQudHlwZSA9PT0gJ2NvbW1hbmQnXCI+XG4gICAgICAgICAgPHZhbC1wbGFpbi1jb2RlLWJveCBbcHJvcHNdPVwiZ2V0Q29tbWFuZFByb3BzKGVsZW1lbnQpXCI+PC92YWwtcGxhaW4tY29kZS1ib3g+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwhLS0gTGlzdGEgLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJlbGVtZW50LnR5cGUgPT09ICdsaXN0J1wiPlxuICAgICAgICAgIDx1bCAqbmdJZj1cImdldExpc3RFbGVtZW50KGVsZW1lbnQpLnByb3BzLmxpc3RUeXBlICE9PSAnb3JkZXJlZCdcIiBjbGFzcz1cInZhbC1hcnRpY2xlX19saXN0XCI+XG4gICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZ2V0TGlzdEVsZW1lbnQoZWxlbWVudCkucHJvcHMuaXRlbXNcIiBjbGFzcz1cInZhbC1hcnRpY2xlX19saXN0LWl0ZW1cIj5cbiAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJnZXRMaXN0RWxlbWVudChlbGVtZW50KS5wcm9wcy5saXN0VHlwZSA9PT0gJ2NoZWNrbGlzdCdcIiBjbGFzcz1cInZhbC1hcnRpY2xlX19saXN0LWNoZWNrXCJcbiAgICAgICAgICAgICAgICA+4pyTPC9zcGFuXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHNwYW4gW2lubmVySFRNTF09XCJpdGVtLnRleHRcIj48L3NwYW4+XG4gICAgICAgICAgICA8L2xpPlxuICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgPG9sXG4gICAgICAgICAgICAqbmdJZj1cImdldExpc3RFbGVtZW50KGVsZW1lbnQpLnByb3BzLmxpc3RUeXBlID09PSAnb3JkZXJlZCdcIlxuICAgICAgICAgICAgY2xhc3M9XCJ2YWwtYXJ0aWNsZV9fbGlzdCB2YWwtYXJ0aWNsZV9fbGlzdC0tb3JkZXJlZFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBpdGVtIG9mIGdldExpc3RFbGVtZW50KGVsZW1lbnQpLnByb3BzLml0ZW1zXCIgY2xhc3M9XCJ2YWwtYXJ0aWNsZV9fbGlzdC1pdGVtXCI+XG4gICAgICAgICAgICAgIDxzcGFuIFtpbm5lckhUTUxdPVwiaXRlbS50ZXh0XCI+PC9zcGFuPlxuICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICA8L29sPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8IS0tIEJvdMOzbiAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVsZW1lbnQudHlwZSA9PT0gJ2J1dHRvbidcIj5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cInZhbC1hcnRpY2xlX19idXR0b24tY29udGFpbmVyXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgJ3ZhbC1hcnRpY2xlX19idXR0b24tY29udGFpbmVyLS1sZWZ0JzogZ2V0QnV0dG9uRWxlbWVudChlbGVtZW50KS5wcm9wcy5hbGlnbm1lbnQgPT09ICdsZWZ0JyxcbiAgICAgICAgICAgICAgJ3ZhbC1hcnRpY2xlX19idXR0b24tY29udGFpbmVyLS1jZW50ZXInOiBnZXRCdXR0b25FbGVtZW50KGVsZW1lbnQpLnByb3BzLmFsaWdubWVudCA9PT0gJ2NlbnRlcicsXG4gICAgICAgICAgICAgICd2YWwtYXJ0aWNsZV9fYnV0dG9uLWNvbnRhaW5lci0tcmlnaHQnOiBnZXRCdXR0b25FbGVtZW50KGVsZW1lbnQpLnByb3BzLmFsaWdubWVudCA9PT0gJ3JpZ2h0JyxcbiAgICAgICAgICAgIH1cIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDx2YWwtYnV0dG9uIFtwcm9wc109XCJnZXRCdXR0b25Qcm9wcyhlbGVtZW50KVwiPjwvdmFsLWJ1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPCEtLSBTZXBhcmFkb3IgLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJlbGVtZW50LnR5cGUgPT09ICdzZXBhcmF0b3InXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInZhbC1hcnRpY2xlX19zZXBhcmF0b3JcIj5cbiAgICAgICAgICAgIDxoclxuICAgICAgICAgICAgICAqbmdJZj1cImdldFNlcGFyYXRvckVsZW1lbnQoZWxlbWVudCkucHJvcHMuc3R5bGUgPT09ICdsaW5lJ1wiXG4gICAgICAgICAgICAgIGNsYXNzPVwidmFsLWFydGljbGVfX3NlcGFyYXRvci1saW5lXCJcbiAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICd2YWwtYXJ0aWNsZV9fc2VwYXJhdG9yLWxpbmUtLXRoaW4nOiBnZXRTZXBhcmF0b3JFbGVtZW50KGVsZW1lbnQpLnByb3BzLnRoaWNrbmVzcyA9PT0gJ3RoaW4nLFxuICAgICAgICAgICAgICAgICd2YWwtYXJ0aWNsZV9fc2VwYXJhdG9yLWxpbmUtLXRoaWNrJzogZ2V0U2VwYXJhdG9yRWxlbWVudChlbGVtZW50KS5wcm9wcy50aGlja25lc3MgPT09ICd0aGljaycsXG4gICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJnZXRTZXBhcmF0b3JFbGVtZW50KGVsZW1lbnQpLnByb3BzLnN0eWxlID09PSAnZG90cydcIiBjbGFzcz1cInZhbC1hcnRpY2xlX19zZXBhcmF0b3ItZG90c1wiPlxuICAgICAgICAgICAgICDigKIg4oCiIOKAolxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICpuZ0lmPVwiZ2V0U2VwYXJhdG9yRWxlbWVudChlbGVtZW50KS5wcm9wcy5zdHlsZSA9PT0gJ3NwYWNlJ1wiXG4gICAgICAgICAgICAgIGNsYXNzPVwidmFsLWFydGljbGVfX3NlcGFyYXRvci1zcGFjZVwiXG4gICAgICAgICAgICA+PC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwhLS0gSW1hZ2VuIC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZWxlbWVudC50eXBlID09PSAnaW1hZ2UnXCI+XG4gICAgICAgICAgPHZhbC1pbWFnZSBbcHJvcHNdPVwiZ2V0SW1hZ2VNZXRhZGF0YShlbGVtZW50KVwiPjwvdmFsLWltYWdlPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8IS0tIFZpZGVvIC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZWxlbWVudC50eXBlID09PSAndmlkZW8nXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInZhbC1hcnRpY2xlX192aWRlb1wiPlxuICAgICAgICAgICAgPHZpZGVvXG4gICAgICAgICAgICAgIFtzcmNdPVwiZ2V0VmlkZW9FbGVtZW50KGVsZW1lbnQpLnByb3BzLnNyY1wiXG4gICAgICAgICAgICAgIFtwb3N0ZXJdPVwiZ2V0VmlkZW9FbGVtZW50KGVsZW1lbnQpLnByb3BzLnBvc3RlclwiXG4gICAgICAgICAgICAgIFtjb250cm9sc109XCJnZXRWaWRlb0VsZW1lbnQoZWxlbWVudCkucHJvcHMuY29udHJvbHMgIT09IGZhbHNlXCJcbiAgICAgICAgICAgICAgW2F1dG9wbGF5XT1cImdldFZpZGVvRWxlbWVudChlbGVtZW50KS5wcm9wcy5hdXRvcGxheVwiXG4gICAgICAgICAgICAgIFttdXRlZF09XCJnZXRWaWRlb0VsZW1lbnQoZWxlbWVudCkucHJvcHMubXV0ZWRcIlxuICAgICAgICAgICAgICBbc3R5bGUubWF4LXdpZHRoXT1cImdldFZpZGVvRWxlbWVudChlbGVtZW50KS5wcm9wcy5tYXhXaWR0aFwiXG4gICAgICAgICAgICAgIGNsYXNzPVwidmFsLWFydGljbGVfX3ZpZGVvLWNvbnRlbnRcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICBUdSBuYXZlZ2Fkb3Igbm8gc29wb3J0YSBlbCBlbGVtZW50byB2aWRlby5cbiAgICAgICAgICAgIDwvdmlkZW8+XG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZ2V0VmlkZW9FbGVtZW50KGVsZW1lbnQpLnByb3BzLnRpdGxlXCIgY2xhc3M9XCJ2YWwtYXJ0aWNsZV9fdmlkZW8tdGl0bGVcIj5cbiAgICAgICAgICAgICAge3sgZ2V0VmlkZW9FbGVtZW50KGVsZW1lbnQpLnByb3BzLnRpdGxlIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPCEtLSBDb250ZW5pZG8gcGVyc29uYWxpemFkbyAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVsZW1lbnQudHlwZSA9PT0gJ2N1c3RvbSdcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidmFsLWFydGljbGVfX2N1c3RvbVwiIFtpbm5lckhUTUxdPVwiZ2V0Q3VzdG9tRWxlbWVudChlbGVtZW50KS5wcm9wcy5odG1sQ29udGVudFwiPjwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvYXJ0aWNsZT5cbiAgYCxcbiAgc3R5bGVVcmxzOiBbJy4vYXJ0aWNsZS5jb21wb25lbnQuc2NzcyddLFxuICAvLyBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCwgLy8gQ29tZW50YWRvIHRlbXBvcmFsbWVudGUgcGFyYSBkZWJ1Z1xufSlcbi8qKlxuICogdmFsLWFydGljbGVcbiAqXG4gKiBDb21wb25lbnRlIHBhcmEgY3JlYXIgYXJ0w61jdWxvcywgYmxvZ3MgeSBkb2N1bWVudGFjacOzbiBkZSBmb3JtYSBkZWNsYXJhdGl2YS5cbiAqIFBlcm1pdGUgY29tYmluYXIgbcO6bHRpcGxlcyBlbGVtZW50b3MgKHTDrXR1bG9zLCB0ZXh0bywgaW3DoWdlbmVzLCBjw7NkaWdvLCBldGMuKVxuICogY29uIGVzcGFjaWFkbyBhdXRvbcOhdGljbyB5IHNvcG9ydGUgbXVsdGktaWRpb21hLlxuICpcbiAqIEBleGFtcGxlIFVzbyBiw6FzaWNvOlxuICogYGBgaHRtbFxuICogPHZhbC1hcnRpY2xlIFtwcm9wc109XCJhcnRpY2xlQ29uZmlnXCI+PC92YWwtYXJ0aWNsZT5cbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlIENvbiBBcnRpY2xlQnVpbGRlcjpcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGFydGljbGVDb25maWcgPSBuZXcgQXJ0aWNsZUJ1aWxkZXIoKVxuICogICAudGl0bGUodGl0bGVQcm9wcylcbiAqICAgLnBhcmFncmFwaCh0ZXh0UHJvcHMpXG4gKiAgIC5jb2RlKCdjb25zb2xlLmxvZyhcIkhlbGxvIFdvcmxkXCIpJywgJ2phdmFzY3JpcHQnKVxuICogICAuYnVpbGQoKTtcbiAqIGBgYFxuICpcbiAqIEBpbnB1dCBwcm9wczogQXJ0aWNsZU1ldGFkYXRhIC0gQ29uZmlndXJhY2nDs24gY29tcGxldGEgZGVsIGFydMOtY3Vsb1xuICovXG5leHBvcnQgY2xhc3MgQXJ0aWNsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8qKlxuICAgKiBDb25maWd1cmFjacOzbiBkZWwgYXJ0w61jdWxvXG4gICAqIEB0eXBlIHtBcnRpY2xlTWV0YWRhdGF9XG4gICAqL1xuICBASW5wdXQoKVxuICBwcm9wcyE6IEFydGljbGVNZXRhZGF0YTtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgLy8gVmFsaWRhY2nDs24gYsOhc2ljYVxuICAgIGlmICghdGhpcy5wcm9wcyB8fCAhdGhpcy5wcm9wcy5lbGVtZW50cykge1xuICAgICAgY29uc29sZS53YXJuKCd2YWwtYXJ0aWNsZTogcHJvcHMuZWxlbWVudHMgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogT2J0aWVuZSBsb3MgZXN0aWxvcyBkZSBwYWRkaW5nIHBhcmEgZWwgY29udGVuZWRvciBhcnRpY2xlXG4gICAqL1xuICBnZXRDb250YWluZXJTdHlsZXMoKTogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSB7XG4gICAgY29uc3Qgc3BhY2luZyA9IHRoaXMucHJvcHMuY29udGFpbmVyU3BhY2luZztcbiAgICBpZiAoIXNwYWNpbmcpIHJldHVybiB7fTtcblxuICAgIGNvbnN0IHN0eWxlczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHt9O1xuICAgIGNvbnN0IHNwYWNpbmdWYWx1ZXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gICAgICBub25lOiAnMCcsXG4gICAgICBzbWFsbDogJzAuNXJlbScsXG4gICAgICBtZWRpdW06ICcxcmVtJyxcbiAgICAgIGxhcmdlOiAnMS41cmVtJyxcbiAgICAgIHhsYXJnZTogJzIuNXJlbScsXG4gICAgfTtcblxuICAgIGlmIChzcGFjaW5nLnRvcCkgc3R5bGVzWydwYWRkaW5nLXRvcCddID0gc3BhY2luZ1ZhbHVlc1tzcGFjaW5nLnRvcF07XG4gICAgaWYgKHNwYWNpbmcuYm90dG9tKSBzdHlsZXNbJ3BhZGRpbmctYm90dG9tJ10gPSBzcGFjaW5nVmFsdWVzW3NwYWNpbmcuYm90dG9tXTtcbiAgICBpZiAoc3BhY2luZy5ob3Jpem9udGFsKSB7XG4gICAgICBzdHlsZXNbJ3BhZGRpbmctbGVmdCddID0gc3BhY2luZ1ZhbHVlc1tzcGFjaW5nLmhvcml6b250YWxdO1xuICAgICAgc3R5bGVzWydwYWRkaW5nLXJpZ2h0J10gPSBzcGFjaW5nVmFsdWVzW3NwYWNpbmcuaG9yaXpvbnRhbF07XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0eWxlcztcbiAgfVxuXG4gIC8qKlxuICAgKiBGdW5jacOzbiBkZSB0cmFja0J5IHBhcmEgb3B0aW1pemFyIGVsIHJlbmRlcmluZyBkZSBlbGVtZW50b3NcbiAgICovXG4gIHRyYWNrQnlGbihpbmRleDogbnVtYmVyLCBlbGVtZW50OiBBcnRpY2xlRWxlbWVudCk6IGFueSB7XG4gICAgcmV0dXJuIGVsZW1lbnQuaWQgfHwgaW5kZXg7XG4gIH1cblxuICAvKipcbiAgICogT2J0aWVuZSBlbCBlc3BhY2lhZG8gcG9yIGRlZmVjdG8gc2Vnw7puIGVsIHRpcG8gZGUgZWxlbWVudG9cbiAgICovXG4gIHByaXZhdGUgZ2V0RGVmYXVsdFNwYWNpbmdGb3JUeXBlKHR5cGU6IEFydGljbGVDb250ZW50VHlwZSk6IEFydGljbGVTcGFjaW5nIHtcbiAgICBjb25zdCBzcGFjaW5nTWFwOiBSZWNvcmQ8QXJ0aWNsZUNvbnRlbnRUeXBlLCBBcnRpY2xlU3BhY2luZz4gPSB7XG4gICAgICB0aXRsZTogQVJUSUNMRV9TUEFDSU5HLlRJVExFLFxuICAgICAgc3VidGl0bGU6IEFSVElDTEVfU1BBQ0lORy5TVUJUSVRMRSxcbiAgICAgIHRleHQ6IEFSVElDTEVfU1BBQ0lORy5QQVJBR1JBUEgsXG4gICAgICBwYXJhZ3JhcGg6IEFSVElDTEVfU1BBQ0lORy5QQVJBR1JBUEgsXG4gICAgICBxdW90ZTogQVJUSUNMRV9TUEFDSU5HLlFVT1RFLFxuICAgICAgaGlnaGxpZ2h0OiBBUlRJQ0xFX1NQQUNJTkcuTUVESVVNLFxuICAgICAgY29kZTogQVJUSUNMRV9TUEFDSU5HLkNPREUsXG4gICAgICBub3RlOiBBUlRJQ0xFX1NQQUNJTkcuTk9URSxcbiAgICAgIGNvbW1hbmQ6IEFSVElDTEVfU1BBQ0lORy5DT01NQU5ELFxuICAgICAgbGlzdDogQVJUSUNMRV9TUEFDSU5HLkxJU1QsXG4gICAgICBidXR0b246IEFSVElDTEVfU1BBQ0lORy5CVVRUT04sXG4gICAgICBzZXBhcmF0b3I6IEFSVElDTEVfU1BBQ0lORy5TRVBBUkFUT1IsXG4gICAgICBpbWFnZTogQVJUSUNMRV9TUEFDSU5HLklNQUdFLFxuICAgICAgdmlkZW86IEFSVElDTEVfU1BBQ0lORy5JTUFHRSxcbiAgICAgIGN1c3RvbTogQVJUSUNMRV9TUEFDSU5HLk1FRElVTSxcbiAgICB9O1xuICAgIHJldHVybiBzcGFjaW5nTWFwW3R5cGVdIHx8IEFSVElDTEVfU1BBQ0lORy5NRURJVU07XG4gIH1cblxuICAvKipcbiAgICogT2J0aWVuZSBsYXMgY2xhc2VzIENTUyBwYXJhIGVsIGVzcGFjaWFkbyBkZWwgZWxlbWVudG8uXG4gICAqIFByaW9yaWRhZDogZWxlbWVudC5zcGFjaW5nID4gZWxlbWVudFNwYWNpbmcgPiBlc3BhY2lhZG8gbmF0aXZvIHBvciB0aXBvXG4gICAqL1xuICBnZXRFbGVtZW50U3BhY2luZ0NsYXNzKGVsZW1lbnQ6IEFydGljbGVFbGVtZW50KTogc3RyaW5nIHtcbiAgICBjb25zdCBkZWZhdWx0Rm9yVHlwZSA9IHRoaXMuZ2V0RGVmYXVsdFNwYWNpbmdGb3JUeXBlKGVsZW1lbnQudHlwZSk7XG4gICAgY29uc3QgZ2xvYmFsT3ZlcnJpZGUgPSB0aGlzLnByb3BzLmVsZW1lbnRTcGFjaW5nIHx8IHRoaXMucHJvcHMuZGVmYXVsdFNwYWNpbmc7IC8vIGJhY2t3YXJkIGNvbXBhdFxuXG4gICAgY29uc3Qgc3BhY2luZzogQXJ0aWNsZVNwYWNpbmcgPSB7XG4gICAgICB0b3A6IGVsZW1lbnQuc3BhY2luZz8udG9wID8/IGdsb2JhbE92ZXJyaWRlPy50b3AgPz8gZGVmYXVsdEZvclR5cGUudG9wLFxuICAgICAgYm90dG9tOiBlbGVtZW50LnNwYWNpbmc/LmJvdHRvbSA/PyBnbG9iYWxPdmVycmlkZT8uYm90dG9tID8/IGRlZmF1bHRGb3JUeXBlLmJvdHRvbSxcbiAgICAgIGhvcml6b250YWw6IGVsZW1lbnQuc3BhY2luZz8uaG9yaXpvbnRhbCA/PyBnbG9iYWxPdmVycmlkZT8uaG9yaXpvbnRhbCA/PyBkZWZhdWx0Rm9yVHlwZS5ob3Jpem9udGFsLFxuICAgIH07XG5cbiAgICBjb25zdCBjbGFzc2VzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGlmIChzcGFjaW5nLnRvcCkgY2xhc3Nlcy5wdXNoKGB2YWwtYXJ0aWNsZV9fc3BhY2luZy10b3AtLSR7c3BhY2luZy50b3B9YCk7XG4gICAgaWYgKHNwYWNpbmcuYm90dG9tKSBjbGFzc2VzLnB1c2goYHZhbC1hcnRpY2xlX19zcGFjaW5nLWJvdHRvbS0tJHtzcGFjaW5nLmJvdHRvbX1gKTtcbiAgICBpZiAoc3BhY2luZy5ob3Jpem9udGFsKSBjbGFzc2VzLnB1c2goYHZhbC1hcnRpY2xlX19zcGFjaW5nLWhvcml6b250YWwtLSR7c3BhY2luZy5ob3Jpem9udGFsfWApO1xuXG4gICAgcmV0dXJuIGNsYXNzZXMuam9pbignICcpO1xuICB9XG5cbiAgLy8gPT09IEZVTkNJT05FUyBERSBUSVBPIFBBUkEgVFlQRVNDUklQVCA9PT1cblxuICBnZXRUaXRsZUVsZW1lbnQoZWxlbWVudDogQXJ0aWNsZUVsZW1lbnQpOiBBcnRpY2xlVGl0bGVFbGVtZW50IHtcbiAgICByZXR1cm4gZWxlbWVudCBhcyBBcnRpY2xlVGl0bGVFbGVtZW50O1xuICB9XG5cbiAgZ2V0U3VidGl0bGVFbGVtZW50KGVsZW1lbnQ6IEFydGljbGVFbGVtZW50KTogQXJ0aWNsZVN1YnRpdGxlRWxlbWVudCB7XG4gICAgcmV0dXJuIGVsZW1lbnQgYXMgQXJ0aWNsZVN1YnRpdGxlRWxlbWVudDtcbiAgfVxuXG4gIGdldFRleHRFbGVtZW50KGVsZW1lbnQ6IEFydGljbGVFbGVtZW50KTogQXJ0aWNsZVRleHRFbGVtZW50IHtcbiAgICByZXR1cm4gZWxlbWVudCBhcyBBcnRpY2xlVGV4dEVsZW1lbnQ7XG4gIH1cblxuICBnZXRRdW90ZUVsZW1lbnQoZWxlbWVudDogQXJ0aWNsZUVsZW1lbnQpOiBBcnRpY2xlUXVvdGVFbGVtZW50IHtcbiAgICByZXR1cm4gZWxlbWVudCBhcyBBcnRpY2xlUXVvdGVFbGVtZW50O1xuICB9XG5cbiAgZ2V0SGlnaGxpZ2h0RWxlbWVudChlbGVtZW50OiBBcnRpY2xlRWxlbWVudCk6IEFydGljbGVIaWdobGlnaHRFbGVtZW50IHtcbiAgICByZXR1cm4gZWxlbWVudCBhcyBBcnRpY2xlSGlnaGxpZ2h0RWxlbWVudDtcbiAgfVxuXG4gIGdldENvZGVFbGVtZW50KGVsZW1lbnQ6IEFydGljbGVFbGVtZW50KTogQXJ0aWNsZUNvZGVFbGVtZW50IHtcbiAgICByZXR1cm4gZWxlbWVudCBhcyBBcnRpY2xlQ29kZUVsZW1lbnQ7XG4gIH1cblxuICBnZXRMaXN0RWxlbWVudChlbGVtZW50OiBBcnRpY2xlRWxlbWVudCk6IEFydGljbGVMaXN0RWxlbWVudCB7XG4gICAgcmV0dXJuIGVsZW1lbnQgYXMgQXJ0aWNsZUxpc3RFbGVtZW50O1xuICB9XG5cbiAgZ2V0QnV0dG9uRWxlbWVudChlbGVtZW50OiBBcnRpY2xlRWxlbWVudCk6IEFydGljbGVCdXR0b25FbGVtZW50IHtcbiAgICByZXR1cm4gZWxlbWVudCBhcyBBcnRpY2xlQnV0dG9uRWxlbWVudDtcbiAgfVxuXG4gIGdldFNlcGFyYXRvckVsZW1lbnQoZWxlbWVudDogQXJ0aWNsZUVsZW1lbnQpOiBBcnRpY2xlU2VwYXJhdG9yRWxlbWVudCB7XG4gICAgcmV0dXJuIGVsZW1lbnQgYXMgQXJ0aWNsZVNlcGFyYXRvckVsZW1lbnQ7XG4gIH1cblxuICBnZXRJbWFnZUVsZW1lbnQoZWxlbWVudDogQXJ0aWNsZUVsZW1lbnQpOiBBcnRpY2xlSW1hZ2VFbGVtZW50IHtcbiAgICByZXR1cm4gZWxlbWVudCBhcyBBcnRpY2xlSW1hZ2VFbGVtZW50O1xuICB9XG5cbiAgZ2V0VmlkZW9FbGVtZW50KGVsZW1lbnQ6IEFydGljbGVFbGVtZW50KTogQXJ0aWNsZVZpZGVvRWxlbWVudCB7XG4gICAgcmV0dXJuIGVsZW1lbnQgYXMgQXJ0aWNsZVZpZGVvRWxlbWVudDtcbiAgfVxuXG4gIGdldEN1c3RvbUVsZW1lbnQoZWxlbWVudDogQXJ0aWNsZUVsZW1lbnQpOiBBcnRpY2xlQ3VzdG9tRWxlbWVudCB7XG4gICAgcmV0dXJuIGVsZW1lbnQgYXMgQXJ0aWNsZUN1c3RvbUVsZW1lbnQ7XG4gIH1cblxuICAvLyA9PT0gRlVOQ0lPTkVTIEFVWElMSUFSRVMgUEFSQSBQUk9QUyA9PT1cblxuICBnZXRRdW90ZVRleHRQcm9wcyhlbGVtZW50OiBBcnRpY2xlRWxlbWVudCkge1xuICAgIGNvbnN0IHF1b3RlRWxlbWVudCA9IHRoaXMuZ2V0UXVvdGVFbGVtZW50KGVsZW1lbnQpO1xuICAgIGNvbnN0IHsgYXV0aG9yLCBzb3VyY2UsIC4uLnRleHRQcm9wcyB9ID0gcXVvdGVFbGVtZW50LnByb3BzO1xuICAgIHJldHVybiB0ZXh0UHJvcHM7XG4gIH1cblxuICBnZXRIaWdobGlnaHRUZXh0UHJvcHMoZWxlbWVudDogQXJ0aWNsZUVsZW1lbnQpIHtcbiAgICBjb25zdCBoaWdobGlnaHRFbGVtZW50ID0gdGhpcy5nZXRIaWdobGlnaHRFbGVtZW50KGVsZW1lbnQpO1xuICAgIGNvbnN0IHsgYmFja2dyb3VuZENvbG9yLCByb3VuZGVkLCAuLi50ZXh0UHJvcHMgfSA9IGhpZ2hsaWdodEVsZW1lbnQucHJvcHM7XG4gICAgcmV0dXJuIHRleHRQcm9wcztcbiAgfVxuXG4gIGdldEhpZ2hsaWdodENvbG9yKGVsZW1lbnQ6IEFydGljbGVFbGVtZW50KTogc3RyaW5nIHtcbiAgICBjb25zdCBoaWdobGlnaHRFbGVtZW50ID0gdGhpcy5nZXRIaWdobGlnaHRFbGVtZW50KGVsZW1lbnQpO1xuICAgIHJldHVybiBoaWdobGlnaHRFbGVtZW50LnByb3BzLmJhY2tncm91bmRDb2xvciB8fCAndmFyKC0taW9uLWNvbG9yLWxpZ2h0KSc7XG4gIH1cblxuICBnZXRCdXR0b25Qcm9wcyhlbGVtZW50OiBBcnRpY2xlRWxlbWVudCkge1xuICAgIGNvbnN0IGJ1dHRvbkVsZW1lbnQgPSB0aGlzLmdldEJ1dHRvbkVsZW1lbnQoZWxlbWVudCk7XG4gICAgY29uc3QgeyBhbGlnbm1lbnQsIC4uLmJ1dHRvblByb3BzIH0gPSBidXR0b25FbGVtZW50LnByb3BzO1xuICAgIHJldHVybiBidXR0b25Qcm9wcztcbiAgfVxuXG4gIGdldENvZGVEaXNwbGF5UHJvcHMoZWxlbWVudDogQXJ0aWNsZUVsZW1lbnQpOiBDb2RlRGlzcGxheU1ldGFkYXRhIHtcbiAgICBjb25zdCBjb2RlRWxlbWVudCA9IHRoaXMuZ2V0Q29kZUVsZW1lbnQoZWxlbWVudCk7XG4gICAgcmV0dXJuIHtcbiAgICAgIGNvZGU6IGNvZGVFbGVtZW50LnByb3BzLmNvZGUsXG4gICAgICBsYW5ndWFnZTogY29kZUVsZW1lbnQucHJvcHMubGFuZ3VhZ2UgfHwgJ3R5cGVzY3JpcHQnLFxuICAgICAgdGFiczogW10sXG4gICAgfTtcbiAgfVxuXG4gIGdldE5vdGVFbGVtZW50KGVsZW1lbnQ6IEFydGljbGVFbGVtZW50KTogQXJ0aWNsZU5vdGVFbGVtZW50IHtcbiAgICByZXR1cm4gZWxlbWVudCBhcyBBcnRpY2xlTm90ZUVsZW1lbnQ7XG4gIH1cblxuICBnZXRDb21tYW5kRWxlbWVudChlbGVtZW50OiBBcnRpY2xlRWxlbWVudCk6IEFydGljbGVDb21tYW5kRWxlbWVudCB7XG4gICAgcmV0dXJuIGVsZW1lbnQgYXMgQXJ0aWNsZUNvbW1hbmRFbGVtZW50O1xuICB9XG5cbiAgZ2V0Tm90ZUJveFByb3BzKGVsZW1lbnQ6IEFydGljbGVFbGVtZW50KTogTm90ZXNCb3hNZXRhZGF0YSB7XG4gICAgY29uc3Qgbm90ZUVsZW1lbnQgPSB0aGlzLmdldE5vdGVFbGVtZW50KGVsZW1lbnQpO1xuICAgIHJldHVybiB7XG4gICAgICB0ZXh0OiBub3RlRWxlbWVudC5wcm9wcy50ZXh0LFxuICAgICAgLy8gYD8/YCAobm90IGB8fGApIHNvIGV4cGxpY2l0IGVtcHR5IHN0cmluZyBzdXBwcmVzc2VzIHRoZSBwcmVmaXguXG4gICAgICBwcmVmaXg6IG5vdGVFbGVtZW50LnByb3BzLnByZWZpeCA/PyAnTm90YTonLFxuICAgICAgY29sb3I6IG5vdGVFbGVtZW50LnByb3BzLmNvbG9yIHx8ICd3YXJuaW5nJyxcbiAgICAgIHRleHRDb2xvcjogbm90ZUVsZW1lbnQucHJvcHMudGV4dENvbG9yIHx8ICdkYXJrJyxcbiAgICAgIHNpemU6IG5vdGVFbGVtZW50LnByb3BzLnNpemUgfHwgJ21lZGl1bScsXG4gICAgICByb3VuZGVkOiBub3RlRWxlbWVudC5wcm9wcy5yb3VuZGVkID8/IHRydWUsXG4gICAgICBwYWRkaW5nOiBub3RlRWxlbWVudC5wcm9wcy5wYWRkaW5nLFxuICAgICAgYWxsb3dQYXJ0aWFsQm9sZDogbm90ZUVsZW1lbnQucHJvcHMuYWxsb3dQYXJ0aWFsQm9sZCxcbiAgICAgIHByb2Nlc3NMaW5rczogbm90ZUVsZW1lbnQucHJvcHMucHJvY2Vzc0xpbmtzLFxuICAgICAgY29tcGFjdDogbm90ZUVsZW1lbnQucHJvcHMuY29tcGFjdCxcbiAgICAgIGFsaWduOiBub3RlRWxlbWVudC5wcm9wcy5hbGlnbixcbiAgICB9O1xuICB9XG5cbiAgZ2V0Q29tbWFuZFByb3BzKGVsZW1lbnQ6IEFydGljbGVFbGVtZW50KTogUGxhaW5Db2RlQm94TWV0YWRhdGEge1xuICAgIGNvbnN0IGNvbW1hbmRFbGVtZW50ID0gdGhpcy5nZXRDb21tYW5kRWxlbWVudChlbGVtZW50KTtcbiAgICByZXR1cm4ge1xuICAgICAgbGluZXM6IGNvbW1hbmRFbGVtZW50LnByb3BzLmxpbmVzLFxuICAgICAgc2hvd0NvcHlCdXR0b246IGNvbW1hbmRFbGVtZW50LnByb3BzLnNob3dDb3B5QnV0dG9uID8/IHRydWUsXG4gICAgICBsYW5ndWFnZTogY29tbWFuZEVsZW1lbnQucHJvcHMubGFuZ3VhZ2UsXG4gICAgfTtcbiAgfVxuXG4gIGdldEltYWdlTWV0YWRhdGEoZWxlbWVudDogQXJ0aWNsZUVsZW1lbnQpOiBJbWFnZU1ldGFkYXRhIHtcbiAgICBjb25zdCBpbWFnZUVsZW1lbnQgPSB0aGlzLmdldEltYWdlRWxlbWVudChlbGVtZW50KTtcbiAgICBjb25zdCBwcm9wcyA9IGltYWdlRWxlbWVudC5wcm9wcztcblxuICAgIHJldHVybiB7XG4gICAgICBzcmM6IHByb3BzLnNyYyxcbiAgICAgIGFsdDogcHJvcHMuYWx0LFxuICAgICAgbW9kZTogcHJvcHMucm91bmRlZCA/ICdyb3VuZGVkJyA6ICdib3gnLFxuICAgICAgc2l6ZTogcHJvcHMuc2l6ZSB8fCAnbWVkaXVtJyxcbiAgICAgIHNoYWRlZDogZmFsc2UsXG4gICAgICBib3JkZXJlZDogZmFsc2UsXG4gICAgICBhbGlnbm1lbnQ6IHByb3BzLmFsaWdubWVudCB8fCAnY2VudGVyJyxcbiAgICAgIGNhcHRpb246IHByb3BzLmNhcHRpb24sXG4gICAgICBjYXB0aW9uU2l6ZTogJ21lZGl1bScgYXMgY29uc3QsXG4gICAgICB3aWR0aDogcHJvcHMubWF4V2lkdGggPyBwYXJzZUludChwcm9wcy5tYXhXaWR0aC5yZXBsYWNlKCdweCcsICcnKSkgOiB1bmRlZmluZWQsXG4gICAgICBwcmV2aWV3TW9kZTogcHJvcHMucHJldmlldyB8fCBmYWxzZSxcbiAgICB9O1xuICB9XG59XG4iXX0=
580
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJ0aWNsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2FydGljbGUvYXJ0aWNsZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFbkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNuRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUUzRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUVsRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUVoRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM1RSxPQUFPLEVBQ0wsZUFBZSxHQW1CaEIsTUFBTSxTQUFTLENBQUM7OztBQXdMakI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FzQkc7QUFDSCxNQUFNLE9BQU8sZ0JBQWdCO0lBUTNCLGdCQUFlLENBQUM7SUFFaEIsUUFBUTtRQUNOLG9CQUFvQjtRQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDeEMsT0FBTyxDQUFDLElB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LFdBQVcsRUFBRSxLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUs7U0FDcEMsQ0FBQztJQUNKLENBQUM7K0dBeE9VLGdCQUFnQjttR0FBaEIsZ0JBQWdCLG1HQTlMakI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtS1Qsb21UQTlLQyxZQUFZLG1iQUNaLGdCQUFnQiwyRUFDaEIsY0FBYyx5RUFDZCxhQUFhLHdFQUNiLGVBQWUsMEdBQ2YsY0FBYyx5RUFDZCxvQkFBb0IsZ0ZBQ3BCLGlCQUFpQiw2RUFDakIscUJBQXFCLDZFQUNyQixnQkFBZ0I7OzRGQWdNUCxnQkFBZ0I7a0JBN001QixTQUFTOytCQUNFLGFBQWEsY0FDWCxJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixnQkFBZ0I7d0JBQ2hCLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYixlQUFlO3dCQUNmLGNBQWM7d0JBQ2Qsb0JBQW9CO3dCQUNwQixpQkFBaUI7d0JBQ2pCLHFCQUFxQjt3QkFDckIsZ0JBQWdCO3FCQUNqQixZQUNTOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUtUO3dEQWlDRCxLQUFLO3NCQURKLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9hdG9tcy9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEaXNwbGF5Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYXRvbXMvZGlzcGxheS9kaXNwbGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJbWFnZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2F0b21zL2ltYWdlL2ltYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJbWFnZU1ldGFkYXRhIH0gZnJvbSAnLi4vLi4vYXRvbXMvaW1hZ2UvdHlwZXMnO1xuaW1wb3J0IHsgVGV4dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2F0b21zL3RleHQvdGV4dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGl0bGVDb21wb25lbnQgfSBmcm9tICcuLi8uLi9hdG9tcy90aXRsZS90aXRsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29kZURpc3BsYXlDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvY29kZS1kaXNwbGF5L2NvZGUtZGlzcGxheS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29kZURpc3BsYXlNZXRhZGF0YSB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9jb2RlLWRpc3BsYXkvdHlwZXMnO1xuaW1wb3J0IHsgTm90ZXNCb3hDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvbm90ZXMtYm94L25vdGVzLWJveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTm90ZXNCb3hNZXRhZGF0YSB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9ub3Rlcy1ib3gvdHlwZXMnO1xuaW1wb3J0IHsgUGxhaW5Db2RlQm94Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL3BsYWluLWNvZGUtYm94L3BsYWluLWNvZGUtYm94LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQbGFpbkNvZGVCb3hNZXRhZGF0YSB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9wbGFpbi1jb2RlLWJveC90eXBlcyc7XG5pbXBvcnQgeyBQcm9jZXNzTGlua3NQaXBlIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3BpcGVzL3Byb2Nlc3MtbGlua3MucGlwZSc7XG5pbXBvcnQge1xuICBBUlRJQ0xFX1NQQUNJTkcsXG4gIEFydGljbGVCdXR0b25FbGVtZW50LFxuICBBcnRpY2xlQ29kZUVsZW1lbnQsXG4gIEFydGljbGVDb21tYW5kRWxlbWVudCxcbiAgQXJ0aWNsZUNvbnRlbnRUeXBlLFxuICBBcnRpY2xlQ3VzdG9tRWxlbWVudCxcbiAgQXJ0aWNsZUVsZW1lbnQsXG4gIEFydGljbGVIaWdobGlnaHRFbGVtZW50LFxuICBBcnRpY2xlSW1hZ2VFbGVtZW50LFxuICBBcnRpY2xlTGlzdEVsZW1lbnQsXG4gIEFydGljbGVNZXRhZGF0YSxcbiAgQXJ0aWNsZU5vdGVFbGVtZW50LFxuICBBcnRpY2xlUXVvdGVFbGVtZW50LFxuICBBcnRpY2xlU2VwYXJhdG9yRWxlbWVudCxcbiAgQXJ0aWNsZVNwYWNpbmcsXG4gIEFydGljbGVTdWJ0aXRsZUVsZW1lbnQsXG4gIEFydGljbGVUZXh0RWxlbWVudCxcbiAgQXJ0aWNsZVRpdGxlRWxlbWVudCxcbiAgQXJ0aWNsZVZpZGVvRWxlbWVudCxcbn0gZnJvbSAnLi90eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1hcnRpY2xlJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBEaXNwbGF5Q29tcG9uZW50LFxuICAgIFRpdGxlQ29tcG9uZW50LFxuICAgIFRleHRDb21wb25lbnQsXG4gICAgQnV0dG9uQ29tcG9uZW50LFxuICAgIEltYWdlQ29tcG9uZW50LFxuICAgIENvZGVEaXNwbGF5Q29tcG9uZW50LFxuICAgIE5vdGVzQm94Q29tcG9uZW50LFxuICAgIFBsYWluQ29kZUJveENvbXBvbmVudCxcbiAgICBQcm9jZXNzTGlua3NQaXBlLFxuICBdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxhcnRpY2xlXG4gICAgICBjbGFzcz1cInZhbC1hcnRpY2xlXCJcbiAgICAgIFtjbGFzc109XCJwcm9wcy5jc3NDbGFzc1wiXG4gICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICd2YWwtYXJ0aWNsZS0tY2VudGVyZWQnOiBwcm9wcy5jZW50ZXJlZCxcbiAgICAgICAgJ3ZhbC1hcnRpY2xlLS1saWdodCc6IHByb3BzLnRoZW1lID09PSAnbGlnaHQnLFxuICAgICAgICAndmFsLWFydGljbGUtLWRhcmsnOiBwcm9wcy50aGVtZSA9PT0gJ2RhcmsnLFxuICAgICAgfVwiXG4gICAgICBbc3R5bGUubWF4LXdpZHRoXT1cInByb3BzLm1heFdpZHRoXCJcbiAgICAgIFtuZ1N0eWxlXT1cImdldENvbnRhaW5lclN0eWxlcygpXCJcbiAgICA+XG4gICAgICA8ZGl2XG4gICAgICAgICpuZ0Zvcj1cImxldCBlbGVtZW50IG9mIHByb3BzLmVsZW1lbnRzOyB0cmFja0J5OiB0cmFja0J5Rm5cIlxuICAgICAgICBjbGFzcz1cInZhbC1hcnRpY2xlX19lbGVtZW50XCJcbiAgICAgICAgW2NsYXNzXT1cImVsZW1lbnQuY3NzQ2xhc3NcIlxuICAgICAgICBbbmdDbGFzc109XCJnZXRFbGVtZW50U3BhY2luZ0NsYXNzKGVsZW1lbnQpXCJcbiAgICAgICAgW3N0eWxlLmRpc3BsYXldPVwiZWxlbWVudC52aXNpYmxlID09PSBmYWxzZSA/ICdub25lJyA6ICdibG9jaydcIlxuICAgICAgPlxuICAgICAgICA8IS0tIFTDrXR1bG8gLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJlbGVtZW50LnR5cGUgPT09ICd0aXRsZSdcIj5cbiAgICAgICAgICA8dmFsLWRpc3BsYXkgW3Byb3BzXT1cImdldFRpdGxlRWxlbWVudChlbGVtZW50KS5wcm9wc1wiPjwvdmFsLWRpc3BsYXk+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwhLS0gU3VidMOtdHVsbyAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVsZW1lbnQudHlwZSA9PT0gJ3N1YnRpdGxlJ1wiPlxuICAgICAgICAgIDx2YWwtdGl0bGUgW3Byb3BzXT1cImdldFN1YnRpdGxlRWxlbWVudChlbGVtZW50KS5wcm9wc1wiPjwvdmFsLXRpdGxlPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8IS0tIFRleHRvL1DDoXJyYWZvIC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZWxlbWVudC50eXBlID09PSAndGV4dCcgfHwgZWxlbWVudC50eXBlID09PSAncGFyYWdyYXBoJ1wiPlxuICAgICAgICAgIDx2YWwtdGV4dCBbcHJvcHNdPVwiZ2V0VGV4dEVsZW1lbnQoZWxlbWVudCkucHJvcHNcIj48L3ZhbC10ZXh0PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8IS0tIENpdGEgLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJlbGVtZW50LnR5cGUgPT09ICdxdW90ZSdcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidmFsLWFydGljbGVfX3F1b3RlXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidmFsLWFydGljbGVfX3F1b3RlLWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgPHZhbC10ZXh0IFtwcm9wc109XCJnZXRRdW90ZVRleHRQcm9wcyhlbGVtZW50KVwiPjwvdmFsLXRleHQ+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJnZXRRdW90ZUVsZW1lbnQoZWxlbWVudCkucHJvcHMuYXV0aG9yXCIgY2xhc3M9XCJ2YWwtYXJ0aWNsZV9fcXVvdGUtYXV0aG9yXCI+XG4gICAgICAgICAgICAgIOKAlCB7eyBnZXRRdW90ZUVsZW1lbnQoZWxlbWVudCkucHJvcHMuYXV0aG9yIH19XG4gICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZ2V0UXVvdGVFbGVtZW50KGVsZW1lbnQpLnByb3BzLnNvdXJjZVwiIGNsYXNzPVwidmFsLWFydGljbGVfX3F1b3RlLXNvdXJjZVwiPlxuICAgICAgICAgICAgICAgICwge3sgZ2V0UXVvdGVFbGVtZW50KGVsZW1lbnQpLnByb3BzLnNvdXJjZSB9fVxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPCEtLSBUZXh0byBkZXN0YWNhZG8gLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJlbGVtZW50LnR5cGUgPT09ICdoaWdobGlnaHQnXCI+XG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJ2YWwtYXJ0aWNsZV9faGlnaGxpZ2h0XCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgJ3ZhbC1hcnRpY2xlX19oaWdobGlnaHQtLXJvdW5kZWQnOiBnZXRIaWdobGlnaHRFbGVtZW50KGVsZW1lbnQpLnByb3BzLnJvdW5kZWQsXG4gICAgICAgICAgICB9XCJcbiAgICAgICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kLWNvbG9yXT1cImdldEhpZ2hsaWdodENvbG9yKGVsZW1lbnQpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8dmFsLXRleHQgW3Byb3BzXT1cImdldEhpZ2hsaWdodFRleHRQcm9wcyhlbGVtZW50KVwiPjwvdmFsLXRleHQ+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwhLS0gQ8OzZGlnbyAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVsZW1lbnQudHlwZSA9PT0gJ2NvZGUnXCI+XG4gICAgICAgICAgPHZhbC1jb2RlLWRpc3BsYXkgW3Byb3BzXT1cImdldENvZGVEaXNwbGF5UHJvcHMoZWxlbWVudClcIj48L3ZhbC1jb2RlLWRpc3BsYXk+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwhLS0gTm90YSBkZXN0YWNhZGEgLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJlbGVtZW50LnR5cGUgPT09ICdub3RlJ1wiPlxuICAgICAgICAgIDx2YWwtbm90ZXMtYm94IFtwcm9wc109XCJnZXROb3RlQm94UHJvcHMoZWxlbWVudClcIj48L3ZhbC1ub3Rlcy1ib3g+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwhLS0gQ29tYW5kbyBkZSB0ZXJtaW5hbCAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVsZW1lbnQudHlwZSA9PT0gJ2NvbW1hbmQnXCI+XG4gICAgICAgICAgPHZhbC1wbGFpbi1jb2RlLWJveCBbcHJvcHNdPVwiZ2V0Q29tbWFuZFByb3BzKGVsZW1lbnQpXCI+PC92YWwtcGxhaW4tY29kZS1ib3g+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwhLS0gTGlzdGEgLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJlbGVtZW50LnR5cGUgPT09ICdsaXN0J1wiPlxuICAgICAgICAgIDx1bCAqbmdJZj1cImdldExpc3RFbGVtZW50KGVsZW1lbnQpLnByb3BzLmxpc3RUeXBlICE9PSAnb3JkZXJlZCdcIiBjbGFzcz1cInZhbC1hcnRpY2xlX19saXN0XCI+XG4gICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZ2V0TGlzdEVsZW1lbnQoZWxlbWVudCkucHJvcHMuaXRlbXNcIiBjbGFzcz1cInZhbC1hcnRpY2xlX19saXN0LWl0ZW1cIj5cbiAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJnZXRMaXN0RWxlbWVudChlbGVtZW50KS5wcm9wcy5saXN0VHlwZSA9PT0gJ2NoZWNrbGlzdCdcIiBjbGFzcz1cInZhbC1hcnRpY2xlX19saXN0LWNoZWNrXCJcbiAgICAgICAgICAgICAgICA+4pyTPC9zcGFuXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHNwYW4gW2lubmVySFRNTF09XCJpdGVtLnRleHQgfCBwcm9jZXNzTGlua3NcIj48L3NwYW4+XG4gICAgICAgICAgICA8L2xpPlxuICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgPG9sXG4gICAgICAgICAgICAqbmdJZj1cImdldExpc3RFbGVtZW50KGVsZW1lbnQpLnByb3BzLmxpc3RUeXBlID09PSAnb3JkZXJlZCdcIlxuICAgICAgICAgICAgY2xhc3M9XCJ2YWwtYXJ0aWNsZV9fbGlzdCB2YWwtYXJ0aWNsZV9fbGlzdC0tb3JkZXJlZFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBpdGVtIG9mIGdldExpc3RFbGVtZW50KGVsZW1lbnQpLnByb3BzLml0ZW1zXCIgY2xhc3M9XCJ2YWwtYXJ0aWNsZV9fbGlzdC1pdGVtXCI+XG4gICAgICAgICAgICAgIDxzcGFuIFtpbm5lckhUTUxdPVwiaXRlbS50ZXh0IHwgcHJvY2Vzc0xpbmtzXCI+PC9zcGFuPlxuICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICA8L29sPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8IS0tIEJvdMOzbiAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVsZW1lbnQudHlwZSA9PT0gJ2J1dHRvbidcIj5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cInZhbC1hcnRpY2xlX19idXR0b24tY29udGFpbmVyXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgJ3ZhbC1hcnRpY2xlX19idXR0b24tY29udGFpbmVyLS1sZWZ0JzogZ2V0QnV0dG9uRWxlbWVudChlbGVtZW50KS5wcm9wcy5hbGlnbm1lbnQgPT09ICdsZWZ0JyxcbiAgICAgICAgICAgICAgJ3ZhbC1hcnRpY2xlX19idXR0b24tY29udGFpbmVyLS1jZW50ZXInOiBnZXRCdXR0b25FbGVtZW50KGVsZW1lbnQpLnByb3BzLmFsaWdubWVudCA9PT0gJ2NlbnRlcicsXG4gICAgICAgICAgICAgICd2YWwtYXJ0aWNsZV9fYnV0dG9uLWNvbnRhaW5lci0tcmlnaHQnOiBnZXRCdXR0b25FbGVtZW50KGVsZW1lbnQpLnByb3BzLmFsaWdubWVudCA9PT0gJ3JpZ2h0JyxcbiAgICAgICAgICAgIH1cIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDx2YWwtYnV0dG9uIFtwcm9wc109XCJnZXRCdXR0b25Qcm9wcyhlbGVtZW50KVwiPjwvdmFsLWJ1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPCEtLSBTZXBhcmFkb3IgLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJlbGVtZW50LnR5cGUgPT09ICdzZXBhcmF0b3InXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInZhbC1hcnRpY2xlX19zZXBhcmF0b3JcIj5cbiAgICAgICAgICAgIDxoclxuICAgICAgICAgICAgICAqbmdJZj1cImdldFNlcGFyYXRvckVsZW1lbnQoZWxlbWVudCkucHJvcHMuc3R5bGUgPT09ICdsaW5lJ1wiXG4gICAgICAgICAgICAgIGNsYXNzPVwidmFsLWFydGljbGVfX3NlcGFyYXRvci1saW5lXCJcbiAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICd2YWwtYXJ0aWNsZV9fc2VwYXJhdG9yLWxpbmUtLXRoaW4nOiBnZXRTZXBhcmF0b3JFbGVtZW50KGVsZW1lbnQpLnByb3BzLnRoaWNrbmVzcyA9PT0gJ3RoaW4nLFxuICAgICAgICAgICAgICAgICd2YWwtYXJ0aWNsZV9fc2VwYXJhdG9yLWxpbmUtLXRoaWNrJzogZ2V0U2VwYXJhdG9yRWxlbWVudChlbGVtZW50KS5wcm9wcy50aGlja25lc3MgPT09ICd0aGljaycsXG4gICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJnZXRTZXBhcmF0b3JFbGVtZW50KGVsZW1lbnQpLnByb3BzLnN0eWxlID09PSAnZG90cydcIiBjbGFzcz1cInZhbC1hcnRpY2xlX19zZXBhcmF0b3ItZG90c1wiPlxuICAgICAgICAgICAgICDigKIg4oCiIOKAolxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICpuZ0lmPVwiZ2V0U2VwYXJhdG9yRWxlbWVudChlbGVtZW50KS5wcm9wcy5zdHlsZSA9PT0gJ3NwYWNlJ1wiXG4gICAgICAgICAgICAgIGNsYXNzPVwidmFsLWFydGljbGVfX3NlcGFyYXRvci1zcGFjZVwiXG4gICAgICAgICAgICA+PC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDwhLS0gSW1hZ2VuIC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZWxlbWVudC50eXBlID09PSAnaW1hZ2UnXCI+XG4gICAgICAgICAgPHZhbC1pbWFnZSBbcHJvcHNdPVwiZ2V0SW1hZ2VNZXRhZGF0YShlbGVtZW50KVwiPjwvdmFsLWltYWdlPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8IS0tIFZpZGVvIC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZWxlbWVudC50eXBlID09PSAndmlkZW8nXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInZhbC1hcnRpY2xlX192aWRlb1wiPlxuICAgICAgICAgICAgPHZpZGVvXG4gICAgICAgICAgICAgIFtzcmNdPVwiZ2V0VmlkZW9FbGVtZW50KGVsZW1lbnQpLnByb3BzLnNyY1wiXG4gICAgICAgICAgICAgIFtwb3N0ZXJdPVwiZ2V0VmlkZW9FbGVtZW50KGVsZW1lbnQpLnByb3BzLnBvc3RlclwiXG4gICAgICAgICAgICAgIFtjb250cm9sc109XCJnZXRWaWRlb0VsZW1lbnQoZWxlbWVudCkucHJvcHMuY29udHJvbHMgIT09IGZhbHNlXCJcbiAgICAgICAgICAgICAgW2F1dG9wbGF5XT1cImdldFZpZGVvRWxlbWVudChlbGVtZW50KS5wcm9wcy5hdXRvcGxheVwiXG4gICAgICAgICAgICAgIFttdXRlZF09XCJnZXRWaWRlb0VsZW1lbnQoZWxlbWVudCkucHJvcHMubXV0ZWRcIlxuICAgICAgICAgICAgICBbc3R5bGUubWF4LXdpZHRoXT1cImdldFZpZGVvRWxlbWVudChlbGVtZW50KS5wcm9wcy5tYXhXaWR0aFwiXG4gICAgICAgICAgICAgIGNsYXNzPVwidmFsLWFydGljbGVfX3ZpZGVvLWNvbnRlbnRcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICBUdSBuYXZlZ2Fkb3Igbm8gc29wb3J0YSBlbCBlbGVtZW50byB2aWRlby5cbiAgICAgICAgICAgIDwvdmlkZW8+XG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZ2V0VmlkZW9FbGVtZW50KGVsZW1lbnQpLnByb3BzLnRpdGxlXCIgY2xhc3M9XCJ2YWwtYXJ0aWNsZV9fdmlkZW8tdGl0bGVcIj5cbiAgICAgICAgICAgICAge3sgZ2V0VmlkZW9FbGVtZW50KGVsZW1lbnQpLnByb3BzLnRpdGxlIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPCEtLSBDb250ZW5pZG8gcGVyc29uYWxpemFkbyAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVsZW1lbnQudHlwZSA9PT0gJ2N1c3RvbSdcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidmFsLWFydGljbGVfX2N1c3RvbVwiIFtpbm5lckhUTUxdPVwiZ2V0Q3VzdG9tRWxlbWVudChlbGVtZW50KS5wcm9wcy5odG1sQ29udGVudFwiPjwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvYXJ0aWNsZT5cbiAgYCxcbiAgc3R5bGVVcmxzOiBbJy4vYXJ0aWNsZS5jb21wb25lbnQuc2NzcyddLFxuICAvLyBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCwgLy8gQ29tZW50YWRvIHRlbXBvcmFsbWVudGUgcGFyYSBkZWJ1Z1xufSlcbi8qKlxuICogdmFsLWFydGljbGVcbiAqXG4gKiBDb21wb25lbnRlIHBhcmEgY3JlYXIgYXJ0w61jdWxvcywgYmxvZ3MgeSBkb2N1bWVudGFjacOzbiBkZSBmb3JtYSBkZWNsYXJhdGl2YS5cbiAqIFBlcm1pdGUgY29tYmluYXIgbcO6bHRpcGxlcyBlbGVtZW50b3MgKHTDrXR1bG9zLCB0ZXh0bywgaW3DoWdlbmVzLCBjw7NkaWdvLCBldGMuKVxuICogY29uIGVzcGFjaWFkbyBhdXRvbcOhdGljbyB5IHNvcG9ydGUgbXVsdGktaWRpb21hLlxuICpcbiAqIEBleGFtcGxlIFVzbyBiw6FzaWNvOlxuICogYGBgaHRtbFxuICogPHZhbC1hcnRpY2xlIFtwcm9wc109XCJhcnRpY2xlQ29uZmlnXCI+PC92YWwtYXJ0aWNsZT5cbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlIENvbiBBcnRpY2xlQnVpbGRlcjpcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGFydGljbGVDb25maWcgPSBuZXcgQXJ0aWNsZUJ1aWxkZXIoKVxuICogICAudGl0bGUodGl0bGVQcm9wcylcbiAqICAgLnBhcmFncmFwaCh0ZXh0UHJvcHMpXG4gKiAgIC5jb2RlKCdjb25zb2xlLmxvZyhcIkhlbGxvIFdvcmxkXCIpJywgJ2phdmFzY3JpcHQnKVxuICogICAuYnVpbGQoKTtcbiAqIGBgYFxuICpcbiAqIEBpbnB1dCBwcm9wczogQXJ0aWNsZU1ldGFkYXRhIC0gQ29uZmlndXJhY2nDs24gY29tcGxldGEgZGVsIGFydMOtY3Vsb1xuICovXG5leHBvcnQgY2xhc3MgQXJ0aWNsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8qKlxuICAgKiBDb25maWd1cmFjacOzbiBkZWwgYXJ0w61jdWxvXG4gICAqIEB0eXBlIHtBcnRpY2xlTWV0YWRhdGF9XG4gICAqL1xuICBASW5wdXQoKVxuICBwcm9wcyE6IEFydGljbGVNZXRhZGF0YTtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgLy8gVmFsaWRhY2nDs24gYsOhc2ljYVxuICAgIGlmICghdGhpcy5wcm9wcyB8fCAhdGhpcy5wcm9wcy5lbGVtZW50cykge1xuICAgICAgY29uc29sZS53YXJuKCd2YWwtYXJ0aWNsZTogcHJvcHMuZWxlbWVudHMgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogT2J0aWVuZSBsb3MgZXN0aWxvcyBkZSBwYWRkaW5nIHBhcmEgZWwgY29udGVuZWRvciBhcnRpY2xlXG4gICAqL1xuICBnZXRDb250YWluZXJTdHlsZXMoKTogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSB7XG4gICAgY29uc3Qgc3BhY2luZyA9IHRoaXMucHJvcHMuY29udGFpbmVyU3BhY2luZztcbiAgICBpZiAoIXNwYWNpbmcpIHJldHVybiB7fTtcblxuICAgIGNvbnN0IHN0eWxlczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHt9O1xuICAgIGNvbnN0IHNwYWNpbmdWYWx1ZXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gICAgICBub25lOiAnMCcsXG4gICAgICBzbWFsbDogJzAuNXJlbScsXG4gICAgICBtZWRpdW06ICcxcmVtJyxcbiAgICAgIGxhcmdlOiAnMS41cmVtJyxcbiAgICAgIHhsYXJnZTogJzIuNXJlbScsXG4gICAgfTtcblxuICAgIGlmIChzcGFjaW5nLnRvcCkgc3R5bGVzWydwYWRkaW5nLXRvcCddID0gc3BhY2luZ1ZhbHVlc1tzcGFjaW5nLnRvcF07XG4gICAgaWYgKHNwYWNpbmcuYm90dG9tKSBzdHlsZXNbJ3BhZGRpbmctYm90dG9tJ10gPSBzcGFjaW5nVmFsdWVzW3NwYWNpbmcuYm90dG9tXTtcbiAgICBpZiAoc3BhY2luZy5ob3Jpem9udGFsKSB7XG4gICAgICBzdHlsZXNbJ3BhZGRpbmctbGVmdCddID0gc3BhY2luZ1ZhbHVlc1tzcGFjaW5nLmhvcml6b250YWxdO1xuICAgICAgc3R5bGVzWydwYWRkaW5nLXJpZ2h0J10gPSBzcGFjaW5nVmFsdWVzW3NwYWNpbmcuaG9yaXpvbnRhbF07XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0eWxlcztcbiAgfVxuXG4gIC8qKlxuICAgKiBGdW5jacOzbiBkZSB0cmFja0J5IHBhcmEgb3B0aW1pemFyIGVsIHJlbmRlcmluZyBkZSBlbGVtZW50b3NcbiAgICovXG4gIHRyYWNrQnlGbihpbmRleDogbnVtYmVyLCBlbGVtZW50OiBBcnRpY2xlRWxlbWVudCk6IGFueSB7XG4gICAgcmV0dXJuIGVsZW1lbnQuaWQgfHwgaW5kZXg7XG4gIH1cblxuICAvKipcbiAgICogT2J0aWVuZSBlbCBlc3BhY2lhZG8gcG9yIGRlZmVjdG8gc2Vnw7puIGVsIHRpcG8gZGUgZWxlbWVudG9cbiAgICovXG4gIHByaXZhdGUgZ2V0RGVmYXVsdFNwYWNpbmdGb3JUeXBlKHR5cGU6IEFydGljbGVDb250ZW50VHlwZSk6IEFydGljbGVTcGFjaW5nIHtcbiAgICBjb25zdCBzcGFjaW5nTWFwOiBSZWNvcmQ8QXJ0aWNsZUNvbnRlbnRUeXBlLCBBcnRpY2xlU3BhY2luZz4gPSB7XG4gICAgICB0aXRsZTogQVJUSUNMRV9TUEFDSU5HLlRJVExFLFxuICAgICAgc3VidGl0bGU6IEFSVElDTEVfU1BBQ0lORy5TVUJUSVRMRSxcbiAgICAgIHRleHQ6IEFSVElDTEVfU1BBQ0lORy5QQVJBR1JBUEgsXG4gICAgICBwYXJhZ3JhcGg6IEFSVElDTEVfU1BBQ0lORy5QQVJBR1JBUEgsXG4gICAgICBxdW90ZTogQVJUSUNMRV9TUEFDSU5HLlFVT1RFLFxuICAgICAgaGlnaGxpZ2h0OiBBUlRJQ0xFX1NQQUNJTkcuTUVESVVNLFxuICAgICAgY29kZTogQVJUSUNMRV9TUEFDSU5HLkNPREUsXG4gICAgICBub3RlOiBBUlRJQ0xFX1NQQUNJTkcuTk9URSxcbiAgICAgIGNvbW1hbmQ6IEFSVElDTEVfU1BBQ0lORy5DT01NQU5ELFxuICAgICAgbGlzdDogQVJUSUNMRV9TUEFDSU5HLkxJU1QsXG4gICAgICBidXR0b246IEFSVElDTEVfU1BBQ0lORy5CVVRUT04sXG4gICAgICBzZXBhcmF0b3I6IEFSVElDTEVfU1BBQ0lORy5TRVBBUkFUT1IsXG4gICAgICBpbWFnZTogQVJUSUNMRV9TUEFDSU5HLklNQUdFLFxuICAgICAgdmlkZW86IEFSVElDTEVfU1BBQ0lORy5JTUFHRSxcbiAgICAgIGN1c3RvbTogQVJUSUNMRV9TUEFDSU5HLk1FRElVTSxcbiAgICB9O1xuICAgIHJldHVybiBzcGFjaW5nTWFwW3R5cGVdIHx8IEFSVElDTEVfU1BBQ0lORy5NRURJVU07XG4gIH1cblxuICAvKipcbiAgICogT2J0aWVuZSBsYXMgY2xhc2VzIENTUyBwYXJhIGVsIGVzcGFjaWFkbyBkZWwgZWxlbWVudG8uXG4gICAqIFByaW9yaWRhZDogZWxlbWVudC5zcGFjaW5nID4gZWxlbWVudFNwYWNpbmcgPiBlc3BhY2lhZG8gbmF0aXZvIHBvciB0aXBvXG4gICAqL1xuICBnZXRFbGVtZW50U3BhY2luZ0NsYXNzKGVsZW1lbnQ6IEFydGljbGVFbGVtZW50KTogc3RyaW5nIHtcbiAgICBjb25zdCBkZWZhdWx0Rm9yVHlwZSA9IHRoaXMuZ2V0RGVmYXVsdFNwYWNpbmdGb3JUeXBlKGVsZW1lbnQudHlwZSk7XG4gICAgY29uc3QgZ2xvYmFsT3ZlcnJpZGUgPSB0aGlzLnByb3BzLmVsZW1lbnRTcGFjaW5nIHx8IHRoaXMucHJvcHMuZGVmYXVsdFNwYWNpbmc7IC8vIGJhY2t3YXJkIGNvbXBhdFxuXG4gICAgY29uc3Qgc3BhY2luZzogQXJ0aWNsZVNwYWNpbmcgPSB7XG4gICAgICB0b3A6IGVsZW1lbnQuc3BhY2luZz8udG9wID8/IGdsb2JhbE92ZXJyaWRlPy50b3AgPz8gZGVmYXVsdEZvclR5cGUudG9wLFxuICAgICAgYm90dG9tOiBlbGVtZW50LnNwYWNpbmc/LmJvdHRvbSA/PyBnbG9iYWxPdmVycmlkZT8uYm90dG9tID8/IGRlZmF1bHRGb3JUeXBlLmJvdHRvbSxcbiAgICAgIGhvcml6b250YWw6IGVsZW1lbnQuc3BhY2luZz8uaG9yaXpvbnRhbCA/PyBnbG9iYWxPdmVycmlkZT8uaG9yaXpvbnRhbCA/PyBkZWZhdWx0Rm9yVHlwZS5ob3Jpem9udGFsLFxuICAgIH07XG5cbiAgICBjb25zdCBjbGFzc2VzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGlmIChzcGFjaW5nLnRvcCkgY2xhc3Nlcy5wdXNoKGB2YWwtYXJ0aWNsZV9fc3BhY2luZy10b3AtLSR7c3BhY2luZy50b3B9YCk7XG4gICAgaWYgKHNwYWNpbmcuYm90dG9tKSBjbGFzc2VzLnB1c2goYHZhbC1hcnRpY2xlX19zcGFjaW5nLWJvdHRvbS0tJHtzcGFjaW5nLmJvdHRvbX1gKTtcbiAgICBpZiAoc3BhY2luZy5ob3Jpem9udGFsKSBjbGFzc2VzLnB1c2goYHZhbC1hcnRpY2xlX19zcGFjaW5nLWhvcml6b250YWwtLSR7c3BhY2luZy5ob3Jpem9udGFsfWApO1xuXG4gICAgcmV0dXJuIGNsYXNzZXMuam9pbignICcpO1xuICB9XG5cbiAgLy8gPT09IEZVTkNJT05FUyBERSBUSVBPIFBBUkEgVFlQRVNDUklQVCA9PT1cblxuICBnZXRUaXRsZUVsZW1lbnQoZWxlbWVudDogQXJ0aWNsZUVsZW1lbnQpOiBBcnRpY2xlVGl0bGVFbGVtZW50IHtcbiAgICByZXR1cm4gZWxlbWVudCBhcyBBcnRpY2xlVGl0bGVFbGVtZW50O1xuICB9XG5cbiAgZ2V0U3VidGl0bGVFbGVtZW50KGVsZW1lbnQ6IEFydGljbGVFbGVtZW50KTogQXJ0aWNsZVN1YnRpdGxlRWxlbWVudCB7XG4gICAgcmV0dXJuIGVsZW1lbnQgYXMgQXJ0aWNsZVN1YnRpdGxlRWxlbWVudDtcbiAgfVxuXG4gIGdldFRleHRFbGVtZW50KGVsZW1lbnQ6IEFydGljbGVFbGVtZW50KTogQXJ0aWNsZVRleHRFbGVtZW50IHtcbiAgICByZXR1cm4gZWxlbWVudCBhcyBBcnRpY2xlVGV4dEVsZW1lbnQ7XG4gIH1cblxuICBnZXRRdW90ZUVsZW1lbnQoZWxlbWVudDogQXJ0aWNsZUVsZW1lbnQpOiBBcnRpY2xlUXVvdGVFbGVtZW50IHtcbiAgICByZXR1cm4gZWxlbWVudCBhcyBBcnRpY2xlUXVvdGVFbGVtZW50O1xuICB9XG5cbiAgZ2V0SGlnaGxpZ2h0RWxlbWVudChlbGVtZW50OiBBcnRpY2xlRWxlbWVudCk6IEFydGljbGVIaWdobGlnaHRFbGVtZW50IHtcbiAgICByZXR1cm4gZWxlbWVudCBhcyBBcnRpY2xlSGlnaGxpZ2h0RWxlbWVudDtcbiAgfVxuXG4gIGdldENvZGVFbGVtZW50KGVsZW1lbnQ6IEFydGljbGVFbGVtZW50KTogQXJ0aWNsZUNvZGVFbGVtZW50IHtcbiAgICByZXR1cm4gZWxlbWVudCBhcyBBcnRpY2xlQ29kZUVsZW1lbnQ7XG4gIH1cblxuICBnZXRMaXN0RWxlbWVudChlbGVtZW50OiBBcnRpY2xlRWxlbWVudCk6IEFydGljbGVMaXN0RWxlbWVudCB7XG4gICAgcmV0dXJuIGVsZW1lbnQgYXMgQXJ0aWNsZUxpc3RFbGVtZW50O1xuICB9XG5cbiAgZ2V0QnV0dG9uRWxlbWVudChlbGVtZW50OiBBcnRpY2xlRWxlbWVudCk6IEFydGljbGVCdXR0b25FbGVtZW50IHtcbiAgICByZXR1cm4gZWxlbWVudCBhcyBBcnRpY2xlQnV0dG9uRWxlbWVudDtcbiAgfVxuXG4gIGdldFNlcGFyYXRvckVsZW1lbnQoZWxlbWVudDogQXJ0aWNsZUVsZW1lbnQpOiBBcnRpY2xlU2VwYXJhdG9yRWxlbWVudCB7XG4gICAgcmV0dXJuIGVsZW1lbnQgYXMgQXJ0aWNsZVNlcGFyYXRvckVsZW1lbnQ7XG4gIH1cblxuICBnZXRJbWFnZUVsZW1lbnQoZWxlbWVudDogQXJ0aWNsZUVsZW1lbnQpOiBBcnRpY2xlSW1hZ2VFbGVtZW50IHtcbiAgICByZXR1cm4gZWxlbWVudCBhcyBBcnRpY2xlSW1hZ2VFbGVtZW50O1xuICB9XG5cbiAgZ2V0VmlkZW9FbGVtZW50KGVsZW1lbnQ6IEFydGljbGVFbGVtZW50KTogQXJ0aWNsZVZpZGVvRWxlbWVudCB7XG4gICAgcmV0dXJuIGVsZW1lbnQgYXMgQXJ0aWNsZVZpZGVvRWxlbWVudDtcbiAgfVxuXG4gIGdldEN1c3RvbUVsZW1lbnQoZWxlbWVudDogQXJ0aWNsZUVsZW1lbnQpOiBBcnRpY2xlQ3VzdG9tRWxlbWVudCB7XG4gICAgcmV0dXJuIGVsZW1lbnQgYXMgQXJ0aWNsZUN1c3RvbUVsZW1lbnQ7XG4gIH1cblxuICAvLyA9PT0gRlVOQ0lPTkVTIEFVWElMSUFSRVMgUEFSQSBQUk9QUyA9PT1cblxuICBnZXRRdW90ZVRleHRQcm9wcyhlbGVtZW50OiBBcnRpY2xlRWxlbWVudCkge1xuICAgIGNvbnN0IHF1b3RlRWxlbWVudCA9IHRoaXMuZ2V0UXVvdGVFbGVtZW50KGVsZW1lbnQpO1xuICAgIGNvbnN0IHsgYXV0aG9yLCBzb3VyY2UsIC4uLnRleHRQcm9wcyB9ID0gcXVvdGVFbGVtZW50LnByb3BzO1xuICAgIHJldHVybiB0ZXh0UHJvcHM7XG4gIH1cblxuICBnZXRIaWdobGlnaHRUZXh0UHJvcHMoZWxlbWVudDogQXJ0aWNsZUVsZW1lbnQpIHtcbiAgICBjb25zdCBoaWdobGlnaHRFbGVtZW50ID0gdGhpcy5nZXRIaWdobGlnaHRFbGVtZW50KGVsZW1lbnQpO1xuICAgIGNvbnN0IHsgYmFja2dyb3VuZENvbG9yLCByb3VuZGVkLCAuLi50ZXh0UHJvcHMgfSA9IGhpZ2hsaWdodEVsZW1lbnQucHJvcHM7XG4gICAgcmV0dXJuIHRleHRQcm9wcztcbiAgfVxuXG4gIGdldEhpZ2hsaWdodENvbG9yKGVsZW1lbnQ6IEFydGljbGVFbGVtZW50KTogc3RyaW5nIHtcbiAgICBjb25zdCBoaWdobGlnaHRFbGVtZW50ID0gdGhpcy5nZXRIaWdobGlnaHRFbGVtZW50KGVsZW1lbnQpO1xuICAgIHJldHVybiBoaWdobGlnaHRFbGVtZW50LnByb3BzLmJhY2tncm91bmRDb2xvciB8fCAndmFyKC0taW9uLWNvbG9yLWxpZ2h0KSc7XG4gIH1cblxuICBnZXRCdXR0b25Qcm9wcyhlbGVtZW50OiBBcnRpY2xlRWxlbWVudCkge1xuICAgIGNvbnN0IGJ1dHRvbkVsZW1lbnQgPSB0aGlzLmdldEJ1dHRvbkVsZW1lbnQoZWxlbWVudCk7XG4gICAgY29uc3QgeyBhbGlnbm1lbnQsIC4uLmJ1dHRvblByb3BzIH0gPSBidXR0b25FbGVtZW50LnByb3BzO1xuICAgIHJldHVybiBidXR0b25Qcm9wcztcbiAgfVxuXG4gIGdldENvZGVEaXNwbGF5UHJvcHMoZWxlbWVudDogQXJ0aWNsZUVsZW1lbnQpOiBDb2RlRGlzcGxheU1ldGFkYXRhIHtcbiAgICBjb25zdCBjb2RlRWxlbWVudCA9IHRoaXMuZ2V0Q29kZUVsZW1lbnQoZWxlbWVudCk7XG4gICAgcmV0dXJuIHtcbiAgICAgIGNvZGU6IGNvZGVFbGVtZW50LnByb3BzLmNvZGUsXG4gICAgICBsYW5ndWFnZTogY29kZUVsZW1lbnQucHJvcHMubGFuZ3VhZ2UgfHwgJ3R5cGVzY3JpcHQnLFxuICAgICAgdGFiczogW10sXG4gICAgfTtcbiAgfVxuXG4gIGdldE5vdGVFbGVtZW50KGVsZW1lbnQ6IEFydGljbGVFbGVtZW50KTogQXJ0aWNsZU5vdGVFbGVtZW50IHtcbiAgICByZXR1cm4gZWxlbWVudCBhcyBBcnRpY2xlTm90ZUVsZW1lbnQ7XG4gIH1cblxuICBnZXRDb21tYW5kRWxlbWVudChlbGVtZW50OiBBcnRpY2xlRWxlbWVudCk6IEFydGljbGVDb21tYW5kRWxlbWVudCB7XG4gICAgcmV0dXJuIGVsZW1lbnQgYXMgQXJ0aWNsZUNvbW1hbmRFbGVtZW50O1xuICB9XG5cbiAgZ2V0Tm90ZUJveFByb3BzKGVsZW1lbnQ6IEFydGljbGVFbGVtZW50KTogTm90ZXNCb3hNZXRhZGF0YSB7XG4gICAgY29uc3Qgbm90ZUVsZW1lbnQgPSB0aGlzLmdldE5vdGVFbGVtZW50KGVsZW1lbnQpO1xuICAgIHJldHVybiB7XG4gICAgICB0ZXh0OiBub3RlRWxlbWVudC5wcm9wcy50ZXh0LFxuICAgICAgLy8gYD8/YCAobm90IGB8fGApIHNvIGV4cGxpY2l0IGVtcHR5IHN0cmluZyBzdXBwcmVzc2VzIHRoZSBwcmVmaXguXG4gICAgICBwcmVmaXg6IG5vdGVFbGVtZW50LnByb3BzLnByZWZpeCA/PyAnTm90YTonLFxuICAgICAgY29sb3I6IG5vdGVFbGVtZW50LnByb3BzLmNvbG9yIHx8ICd3YXJuaW5nJyxcbiAgICAgIHRleHRDb2xvcjogbm90ZUVsZW1lbnQucHJvcHMudGV4dENvbG9yIHx8ICdkYXJrJyxcbiAgICAgIHNpemU6IG5vdGVFbGVtZW50LnByb3BzLnNpemUgfHwgJ21lZGl1bScsXG4gICAgICByb3VuZGVkOiBub3RlRWxlbWVudC5wcm9wcy5yb3VuZGVkID8/IHRydWUsXG4gICAgICBwYWRkaW5nOiBub3RlRWxlbWVudC5wcm9wcy5wYWRkaW5nLFxuICAgICAgYWxsb3dQYXJ0aWFsQm9sZDogbm90ZUVsZW1lbnQucHJvcHMuYWxsb3dQYXJ0aWFsQm9sZCxcbiAgICAgIHByb2Nlc3NMaW5rczogbm90ZUVsZW1lbnQucHJvcHMucHJvY2Vzc0xpbmtzLFxuICAgICAgY29tcGFjdDogbm90ZUVsZW1lbnQucHJvcHMuY29tcGFjdCxcbiAgICAgIGFsaWduOiBub3RlRWxlbWVudC5wcm9wcy5hbGlnbixcbiAgICB9O1xuICB9XG5cbiAgZ2V0Q29tbWFuZFByb3BzKGVsZW1lbnQ6IEFydGljbGVFbGVtZW50KTogUGxhaW5Db2RlQm94TWV0YWRhdGEge1xuICAgIGNvbnN0IGNvbW1hbmRFbGVtZW50ID0gdGhpcy5nZXRDb21tYW5kRWxlbWVudChlbGVtZW50KTtcbiAgICByZXR1cm4ge1xuICAgICAgbGluZXM6IGNvbW1hbmRFbGVtZW50LnByb3BzLmxpbmVzLFxuICAgICAgc2hvd0NvcHlCdXR0b246IGNvbW1hbmRFbGVtZW50LnByb3BzLnNob3dDb3B5QnV0dG9uID8/IHRydWUsXG4gICAgICBsYW5ndWFnZTogY29tbWFuZEVsZW1lbnQucHJvcHMubGFuZ3VhZ2UsXG4gICAgfTtcbiAgfVxuXG4gIGdldEltYWdlTWV0YWRhdGEoZWxlbWVudDogQXJ0aWNsZUVsZW1lbnQpOiBJbWFnZU1ldGFkYXRhIHtcbiAgICBjb25zdCBpbWFnZUVsZW1lbnQgPSB0aGlzLmdldEltYWdlRWxlbWVudChlbGVtZW50KTtcbiAgICBjb25zdCBwcm9wcyA9IGltYWdlRWxlbWVudC5wcm9wcztcblxuICAgIHJldHVybiB7XG4gICAgICBzcmM6IHByb3BzLnNyYyxcbiAgICAgIGFsdDogcHJvcHMuYWx0LFxuICAgICAgbW9kZTogcHJvcHMucm91bmRlZCA/ICdyb3VuZGVkJyA6ICdib3gnLFxuICAgICAgc2l6ZTogcHJvcHMuc2l6ZSB8fCAnbWVkaXVtJyxcbiAgICAgIHNoYWRlZDogZmFsc2UsXG4gICAgICBib3JkZXJlZDogZmFsc2UsXG4gICAgICBhbGlnbm1lbnQ6IHByb3BzLmFsaWdubWVudCB8fCAnY2VudGVyJyxcbiAgICAgIGNhcHRpb246IHByb3BzLmNhcHRpb24sXG4gICAgICBjYXB0aW9uU2l6ZTogJ21lZGl1bScgYXMgY29uc3QsXG4gICAgICB3aWR0aDogcHJvcHMubWF4V2lkdGggPyBwYXJzZUludChwcm9wcy5tYXhXaWR0aC5yZXBsYWNlKCdweCcsICcnKSkgOiB1bmRlZmluZWQsXG4gICAgICBwcmV2aWV3TW9kZTogcHJvcHMucHJldmlldyB8fCBmYWxzZSxcbiAgICB9O1xuICB9XG59XG4iXX0=