valtech-components 2.0.597 → 2.0.599

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.
@@ -5,6 +5,7 @@ import { IonButton, IonSpinner, IonTextarea, } from '@ionic/angular/standalone';
5
5
  import { FeedbackService } from '../../../services/feedback/feedback.service';
6
6
  import { ToastService } from '../../../services/toast.service';
7
7
  import { I18nService } from '../../../services/i18n';
8
+ import { AuthService } from '../../../services/auth/auth.service';
8
9
  import * as i0 from "@angular/core";
9
10
  /**
10
11
  * Componente para reacciones de contenido con emojis.
@@ -25,6 +26,7 @@ export class ContentReactionComponent {
25
26
  this.feedbackService = inject(FeedbackService);
26
27
  this.toast = inject(ToastService);
27
28
  this.i18n = inject(I18nService);
29
+ this.auth = inject(AuthService, { optional: true });
28
30
  this.props = {};
29
31
  this.reactionSubmit = new EventEmitter();
30
32
  this.reactionChange = new EventEmitter();
@@ -128,12 +130,22 @@ export class ContentReactionComponent {
128
130
  return;
129
131
  this.state.update((s) => ({ ...s, isLoading: true, error: null }));
130
132
  try {
131
- await this.feedbackService.createReaction(props.entityRef, currentState.selectedValue, currentState.comment || undefined);
133
+ // Determinar si usar endpoint anónimo o autenticado
134
+ const isAuthenticated = this.auth?.isAuthenticated() ?? false;
135
+ const useAnonymous = this.props.allowAnonymous && !isAuthenticated;
136
+ if (useAnonymous) {
137
+ // Usar endpoint anónimo (público)
138
+ await this.feedbackService.createAnonymousReaction(props.entityRef, currentState.selectedValue, currentState.comment || undefined);
139
+ }
140
+ else {
141
+ // Usar endpoint autenticado
142
+ await this.feedbackService.createReaction(props.entityRef, currentState.selectedValue, currentState.comment || undefined);
143
+ }
132
144
  this.state.update((s) => ({
133
145
  ...s,
134
146
  isLoading: false,
135
147
  isSubmitted: true,
136
- hadPreviousReaction: true,
148
+ hadPreviousReaction: !useAnonymous, // Solo para autenticados
137
149
  }));
138
150
  this.reactionSubmit.emit({
139
151
  value: currentState.selectedValue,
@@ -203,4 +215,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
203
215
  }], reactionChange: [{
204
216
  type: Output
205
217
  }] } });
206
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1yZWFjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NvbnRlbnQtcmVhY3Rpb24vY29udGVudC1yZWFjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NvbnRlbnQtcmVhY3Rpb24vY29udGVudC1yZWFjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFJWixNQUFNLEVBQ04sUUFBUSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsV0FBVyxHQUNaLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBRTlFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBUXJEOzs7Ozs7Ozs7Ozs7O0dBYUc7QUFRSCxNQUFNLE9BQU8sd0JBQXdCO0lBUHJDO1FBUVUsb0JBQWUsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDMUMsVUFBSyxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUM3QixTQUFJLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRTFCLFVBQUssR0FBcUMsRUFBRSxDQUFDO1FBQzVDLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQXVCLENBQUM7UUFDekQsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBdUIsQ0FBQztRQUVuRSxrQkFBa0I7UUFDbEIsVUFBSyxHQUFHLE1BQU0sQ0FBdUI7WUFDbkMsYUFBYSxFQUFFLElBQUk7WUFDbkIsT0FBTyxFQUFFLEVBQUU7WUFDWCxTQUFTLEVBQUUsS0FBSztZQUNoQixXQUFXLEVBQUUsS0FBSztZQUNsQixtQkFBbUIsRUFBRSxLQUFLO1lBQzFCLEtBQUssRUFBRSxJQUFJO1NBQ1osQ0FBQyxDQUFDO1FBRUgsc0JBQXNCO1FBQ2Isa0JBQWEsR0FBNkIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzdELGtCQUFhLEdBQTZCO1lBQ2pELGFBQWE7WUFDYixTQUFTO1lBQ1QsVUFBVTtTQUNYLENBQUM7UUFDTyxtQkFBYyxHQUFvQixDQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFL0Usc0JBQXNCO1FBQ3RCLGtCQUFhLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7WUFDOUIsU0FBUyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBVTtZQUNoQyxRQUFRLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUM7WUFDbkQsV0FBVyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxJQUFJLElBQUk7WUFDM0Msa0JBQWtCLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLG9CQUFvQixDQUFDO1lBQ2pGLGdCQUFnQixFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLElBQUksR0FBRztZQUNwRCxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLGFBQWE7WUFDL0MsV0FBVyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxhQUFhO1lBQ3pELFlBQVksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksSUFBSSxJQUFJO1lBQzdDLGVBQWUsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQztZQUNqRSxRQUFRLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLElBQUksS0FBSztZQUN0QyxRQUFRLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLElBQUksS0FBSztTQUN2QyxDQUFDLENBQUMsQ0FBQztRQUVKLHFCQUFnQixHQUFHLFFBQVEsQ0FDekIsR0FBRyxFQUFFLENBQ0gsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLGFBQWEsS0FBSyxJQUFJLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLFdBQVcsQ0FDMUUsQ0FBQztRQUVGLGNBQVMsR0FBRyxRQUFRLENBQ2xCLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxhQUFhLEtBQUssSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLFNBQVMsQ0FDckUsQ0FBQztLQTJKSDtJQXpKQyxRQUFRO1FBQ04sSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN0RCxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUM5QixDQUFDO0lBQ0gsQ0FBQztJQUVPLEtBQUssQ0FBQyxvQkFBb0I7UUFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUztZQUFFLE9BQU87UUFFbEMseURBQXlEO1FBQ3pELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUM1QixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDeEIsR0FBRyxDQUFDO2dCQUNKLGFBQWEsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQWE7Z0JBQ3ZDLG1CQUFtQixFQUFFLElBQUk7Z0JBQ3pCLFNBQVMsRUFBRSxLQUFLO2dCQUNoQixXQUFXLEVBQUUsSUFBSTthQUNsQixDQUFDLENBQUMsQ0FBQztZQUNKLE9BQU87UUFDVCxDQUFDO1FBRUQsZ0RBQWdEO1FBQ2hELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ2hDLE9BQU87UUFDVCxDQUFDO1FBRUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFbkUsSUFBSSxDQUFDO1lBQ0gsTUFBTSxLQUFLLEdBQUcsTUFBTSxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FDcEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUMvQixJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQzlCLENBQUM7WUFFRixJQUFJLEtBQUssQ0FBQyxXQUFXLElBQUksS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUM3QyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztvQkFDeEIsR0FBRyxDQUFDO29CQUNKLGFBQWEsRUFBRSxLQUFLLENBQUMsYUFBYztvQkFDbkMsbUJBQW1CLEVBQUUsSUFBSTtvQkFDekIsU0FBUyxFQUFFLEtBQUs7b0JBQ2hCLFdBQVcsRUFBRSxJQUFJO2lCQUNsQixDQUFDLENBQUMsQ0FBQztZQUNOLENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDekQsQ0FBQztRQUNILENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyxrQ0FBa0MsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUN6RCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDekQsQ0FBQztJQUNILENBQUM7SUFFRCxjQUFjLENBQUMsS0FBb0I7UUFDakMsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRO1lBQUUsT0FBTztRQUUzRSxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsYUFBYSxDQUFDO1FBRWpELElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3hCLEdBQUcsQ0FBQztZQUNKLGFBQWEsRUFBRSxLQUFLO1lBQ3BCLFdBQVcsRUFBRSxLQUFLO1lBQ2xCLEtBQUssRUFBRSxJQUFJO1NBQ1osQ0FBQyxDQUFDLENBQUM7UUFFSixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRCxLQUFLLENBQUMsY0FBYztRQUNsQixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDbEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBRW5DLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxJQUFJLEtBQUssQ0FBQyxRQUFRO1lBQUUsT0FBTztRQUUxRCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUVuRSxJQUFJLENBQUM7WUFDSCxNQUFNLElBQUksQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUN2QyxLQUFLLENBQUMsU0FBUyxFQUNmLFlBQVksQ0FBQyxhQUFhLEVBQzFCLFlBQVksQ0FBQyxPQUFPLElBQUksU0FBUyxDQUNsQyxDQUFDO1lBRUYsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ3hCLEdBQUcsQ0FBQztnQkFDSixTQUFTLEVBQUUsS0FBSztnQkFDaEIsV0FBVyxFQUFFLElBQUk7Z0JBQ2pCLG1CQUFtQixFQUFFLElBQUk7YUFDMUIsQ0FBQyxDQUFDLENBQUM7WUFFSixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQztnQkFDdkIsS0FBSyxFQUFFLFlBQVksQ0FBQyxhQUFhO2dCQUNqQyxPQUFPLEVBQUUsWUFBWSxDQUFDLE9BQU8sSUFBSSxTQUFTO2dCQUMxQyxTQUFTLEVBQUUsS0FBSyxDQUFDLFNBQVM7Z0JBQzFCLFFBQVEsRUFBRSxZQUFZLENBQUMsbUJBQW1CO2FBQzNDLENBQUMsQ0FBQztZQUVILElBQUksS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUN2QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQztvQkFDZCxPQUFPLEVBQUUsS0FBSyxDQUFDLGVBQWU7b0JBQzlCLFFBQVEsRUFBRSxJQUFJO29CQUNkLFFBQVEsRUFBRSxRQUFRO29CQUNsQixLQUFLLEVBQUUsU0FBUztpQkFDakIsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztRQUNILENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyw0QkFBNEIsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUNuRCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDeEIsR0FBRyxDQUFDO2dCQUNKLFNBQVMsRUFBRSxLQUFLO2dCQUNoQixLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQzthQUNqQyxDQUFDLENBQUMsQ0FBQztZQUVKLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO2dCQUNkLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDO2dCQUNsQyxRQUFRLEVBQUUsSUFBSTtnQkFDZCxRQUFRLEVBQUUsUUFBUTtnQkFDbEIsS0FBSyxFQUFFLFFBQVE7YUFDaEIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7SUFFRCxhQUFhLENBQUMsS0FBa0I7UUFDOUIsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQWE7UUFDcEIsT0FBTyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxhQUFhLENBQUMsS0FBYTtRQUN6QixPQUFPLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUFvQjtRQUM3QixPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxhQUFhLEtBQUssS0FBSyxDQUFDO0lBQzlDLENBQUM7SUFFRCxDQUFDLENBQUMsR0FBVztRQUNYLE1BQU0sWUFBWSxHQUEyQjtZQUMzQyxRQUFRLEVBQUUsa0NBQWtDO1lBQzVDLGtCQUFrQixFQUFFLDZCQUE2QjtZQUNqRCxNQUFNLEVBQUUsZ0JBQWdCO1lBQ3hCLE1BQU0sRUFBRSxvQkFBb0I7WUFDNUIsUUFBUSxFQUFFLDBCQUEwQjtZQUNwQyxTQUFTLEVBQUUsK0JBQStCO1lBQzFDLGVBQWUsRUFBRSxvQ0FBb0M7U0FDdEQsQ0FBQztRQUNGLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLGlCQUFpQixDQUFDLElBQUksWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsQ0FBQztJQUN6RSxDQUFDOytHQTVNVSx3QkFBd0I7bUdBQXhCLHdCQUF3QixrTkNuRHJDLHNuRkFpRkEscXpFRGxDWSxZQUFZLDhCQUFFLFdBQVcsK0JBQUUsU0FBUyxvUEFBRSxVQUFVLHlHQUFFLFdBQVc7OzRGQUk1RCx3QkFBd0I7a0JBUHBDLFNBQVM7K0JBQ0Usc0JBQXNCLGNBQ3BCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxXQUFXLENBQUM7OEJBUy9ELEtBQUs7c0JBQWIsS0FBSztnQkFDSSxjQUFjO3NCQUF2QixNQUFNO2dCQUNHLGNBQWM7c0JBQXZCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIGluamVjdCxcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBPbkluaXQsXG4gIE9uQ2hhbmdlcyxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgc2lnbmFsLFxuICBjb21wdXRlZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICBJb25CdXR0b24sXG4gIElvblNwaW5uZXIsXG4gIElvblRleHRhcmVhLFxufSBmcm9tICdAaW9uaWMvYW5ndWxhci9zdGFuZGFsb25lJztcbmltcG9ydCB7IEZlZWRiYWNrU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2ZlZWRiYWNrL2ZlZWRiYWNrLnNlcnZpY2UnO1xuaW1wb3J0IHsgUmVhY3Rpb25WYWx1ZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2ZlZWRiYWNrL3R5cGVzJztcbmltcG9ydCB7IFRvYXN0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3RvYXN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgSTE4blNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9pMThuJztcbmltcG9ydCB7XG4gIENvbnRlbnRSZWFjdGlvbk1ldGFkYXRhLFxuICBDb250ZW50UmVhY3Rpb25TdGF0ZSxcbiAgUmVhY3Rpb25TdWJtaXRFdmVudCxcbiAgUmVhY3Rpb25DaGFuZ2VFdmVudCxcbn0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogQ29tcG9uZW50ZSBwYXJhIHJlYWNjaW9uZXMgZGUgY29udGVuaWRvIGNvbiBlbW9qaXMuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGh0bWxcbiAqIDx2YWwtY29udGVudC1yZWFjdGlvblxuICogICBbcHJvcHNdPVwie1xuICogICAgIGVudGl0eVJlZjogeyBlbnRpdHlUeXBlOiAnYXJ0aWNsZScsIGVudGl0eUlkOiAnYXJ0LTEyMycgfSxcbiAqICAgICBxdWVzdGlvbjogJ8K/VGUgZnVlIMO6dGlsIGVzdGUgYXJ0w61jdWxvPydcbiAqICAgfVwiXG4gKiAgIChyZWFjdGlvblN1Ym1pdCk9XCJvblJlYWN0aW9uU3VibWl0KCRldmVudClcIlxuICogLz5cbiAqIGBgYFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtY29udGVudC1yZWFjdGlvbicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlLCBJb25CdXR0b24sIElvblNwaW5uZXIsIElvblRleHRhcmVhXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbnRlbnQtcmVhY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jb250ZW50LXJlYWN0aW9uLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIENvbnRlbnRSZWFjdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgcHJpdmF0ZSBmZWVkYmFja1NlcnZpY2UgPSBpbmplY3QoRmVlZGJhY2tTZXJ2aWNlKTtcbiAgcHJpdmF0ZSB0b2FzdCA9IGluamVjdChUb2FzdFNlcnZpY2UpO1xuICBwcml2YXRlIGkxOG4gPSBpbmplY3QoSTE4blNlcnZpY2UpO1xuXG4gIEBJbnB1dCgpIHByb3BzOiBQYXJ0aWFsPENvbnRlbnRSZWFjdGlvbk1ldGFkYXRhPiA9IHt9O1xuICBAT3V0cHV0KCkgcmVhY3Rpb25TdWJtaXQgPSBuZXcgRXZlbnRFbWl0dGVyPFJlYWN0aW9uU3VibWl0RXZlbnQ+KCk7XG4gIEBPdXRwdXQoKSByZWFjdGlvbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8UmVhY3Rpb25DaGFuZ2VFdmVudD4oKTtcblxuICAvLyBFc3RhZG8gcmVhY3Rpdm9cbiAgc3RhdGUgPSBzaWduYWw8Q29udGVudFJlYWN0aW9uU3RhdGU+KHtcbiAgICBzZWxlY3RlZFZhbHVlOiBudWxsLFxuICAgIGNvbW1lbnQ6ICcnLFxuICAgIGlzTG9hZGluZzogZmFsc2UsXG4gICAgaXNTdWJtaXR0ZWQ6IGZhbHNlLFxuICAgIGhhZFByZXZpb3VzUmVhY3Rpb246IGZhbHNlLFxuICAgIGVycm9yOiBudWxsLFxuICB9KTtcblxuICAvLyBWYWxvcmVzIHBvciBkZWZlY3RvXG4gIHJlYWRvbmx5IGRlZmF1bHRFbW9qaXM6IFtzdHJpbmcsIHN0cmluZywgc3RyaW5nXSA9IFsn8J+YnicsICfwn5iQJywgJ/CfmIonXTtcbiAgcmVhZG9ubHkgZGVmYXVsdExhYmVsczogW3N0cmluZywgc3RyaW5nLCBzdHJpbmddID0gW1xuICAgICdObyBtZSBheXVkw7MnLFxuICAgICdSZWd1bGFyJyxcbiAgICAnTXV5IMO6dGlsJyxcbiAgXTtcbiAgcmVhZG9ubHkgcmVhY3Rpb25WYWx1ZXM6IFJlYWN0aW9uVmFsdWVbXSA9IFsnbmVnYXRpdmUnLCAnbmV1dHJhbCcsICdwb3NpdGl2ZSddO1xuXG4gIC8vIENvbXB1dGVkIHByb3BlcnRpZXNcbiAgcmVzb2x2ZWRQcm9wcyA9IGNvbXB1dGVkKCgpID0+ICh7XG4gICAgZW50aXR5UmVmOiB0aGlzLnByb3BzLmVudGl0eVJlZiEsXG4gICAgcXVlc3Rpb246IHRoaXMucHJvcHMucXVlc3Rpb24gfHwgdGhpcy50KCdxdWVzdGlvbicpLFxuICAgIHNob3dDb21tZW50OiB0aGlzLnByb3BzLnNob3dDb21tZW50ID8/IHRydWUsXG4gICAgY29tbWVudFBsYWNlaG9sZGVyOiB0aGlzLnByb3BzLmNvbW1lbnRQbGFjZWhvbGRlciB8fCB0aGlzLnQoJ2NvbW1lbnRQbGFjZWhvbGRlcicpLFxuICAgIG1heENvbW1lbnRMZW5ndGg6IHRoaXMucHJvcHMubWF4Q29tbWVudExlbmd0aCA/PyA1MDAsXG4gICAgZW1vamlzOiB0aGlzLnByb3BzLmVtb2ppcyB8fCB0aGlzLmRlZmF1bHRFbW9qaXMsXG4gICAgZW1vamlMYWJlbHM6IHRoaXMucHJvcHMuZW1vamlMYWJlbHMgfHwgdGhpcy5kZWZhdWx0TGFiZWxzLFxuICAgIHNob3dUaGFua1lvdTogdGhpcy5wcm9wcy5zaG93VGhhbmtZb3UgPz8gdHJ1ZSxcbiAgICB0aGFua1lvdU1lc3NhZ2U6IHRoaXMucHJvcHMudGhhbmtZb3VNZXNzYWdlIHx8IHRoaXMudCgndGhhbmtZb3UnKSxcbiAgICBkaXNhYmxlZDogdGhpcy5wcm9wcy5kaXNhYmxlZCA/PyBmYWxzZSxcbiAgICByZWFkb25seTogdGhpcy5wcm9wcy5yZWFkb25seSA/PyBmYWxzZSxcbiAgfSkpO1xuXG4gIHNob3dDb21tZW50RmllbGQgPSBjb21wdXRlZChcbiAgICAoKSA9PlxuICAgICAgdGhpcy5zdGF0ZSgpLnNlbGVjdGVkVmFsdWUgIT09IG51bGwgJiYgdGhpcy5yZXNvbHZlZFByb3BzKCkuc2hvd0NvbW1lbnRcbiAgKTtcblxuICBjYW5TdWJtaXQgPSBjb21wdXRlZChcbiAgICAoKSA9PiB0aGlzLnN0YXRlKCkuc2VsZWN0ZWRWYWx1ZSAhPT0gbnVsbCAmJiAhdGhpcy5zdGF0ZSgpLmlzTG9hZGluZ1xuICApO1xuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMubG9hZFByZXZpb3VzUmVhY3Rpb24oKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlc1sncHJvcHMnXSAmJiAhY2hhbmdlc1sncHJvcHMnXS5maXJzdENoYW5nZSkge1xuICAgICAgdGhpcy5sb2FkUHJldmlvdXNSZWFjdGlvbigpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgbG9hZFByZXZpb3VzUmVhY3Rpb24oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCF0aGlzLnByb3BzLmVudGl0eVJlZikgcmV0dXJuO1xuXG4gICAgLy8gU2kgaGF5IGluaXRpYWxWYWx1ZSwgdXNhcmxvIGRpcmVjdGFtZW50ZSBzaW4gY29uc3VsdGFyXG4gICAgaWYgKHRoaXMucHJvcHMuaW5pdGlhbFZhbHVlKSB7XG4gICAgICB0aGlzLnN0YXRlLnVwZGF0ZSgocykgPT4gKHtcbiAgICAgICAgLi4ucyxcbiAgICAgICAgc2VsZWN0ZWRWYWx1ZTogdGhpcy5wcm9wcy5pbml0aWFsVmFsdWUhLFxuICAgICAgICBoYWRQcmV2aW91c1JlYWN0aW9uOiB0cnVlLFxuICAgICAgICBpc0xvYWRpbmc6IGZhbHNlLFxuICAgICAgICBpc1N1Ym1pdHRlZDogdHJ1ZSxcbiAgICAgIH0pKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBTaSBza2lwSW5pdGlhbENoZWNrIGVzdMOhIGFjdGl2bywgbm8gY29uc3VsdGFyXG4gICAgaWYgKHRoaXMucHJvcHMuc2tpcEluaXRpYWxDaGVjaykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuc3RhdGUudXBkYXRlKChzKSA9PiAoeyAuLi5zLCBpc0xvYWRpbmc6IHRydWUsIGVycm9yOiBudWxsIH0pKTtcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCBjaGVjayA9IGF3YWl0IHRoaXMuZmVlZGJhY2tTZXJ2aWNlLmNoZWNrRmVlZGJhY2soXG4gICAgICAgIHRoaXMucHJvcHMuZW50aXR5UmVmLmVudGl0eVR5cGUsXG4gICAgICAgIHRoaXMucHJvcHMuZW50aXR5UmVmLmVudGl0eUlkXG4gICAgICApO1xuXG4gICAgICBpZiAoY2hlY2suaGFzRmVlZGJhY2sgJiYgY2hlY2sucmVhY3Rpb25WYWx1ZSkge1xuICAgICAgICB0aGlzLnN0YXRlLnVwZGF0ZSgocykgPT4gKHtcbiAgICAgICAgICAuLi5zLFxuICAgICAgICAgIHNlbGVjdGVkVmFsdWU6IGNoZWNrLnJlYWN0aW9uVmFsdWUhLFxuICAgICAgICAgIGhhZFByZXZpb3VzUmVhY3Rpb246IHRydWUsXG4gICAgICAgICAgaXNMb2FkaW5nOiBmYWxzZSxcbiAgICAgICAgICBpc1N1Ym1pdHRlZDogdHJ1ZSxcbiAgICAgICAgfSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5zdGF0ZS51cGRhdGUoKHMpID0+ICh7IC4uLnMsIGlzTG9hZGluZzogZmFsc2UgfSkpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBsb2FkaW5nIHByZXZpb3VzIHJlYWN0aW9uOicsIGVycm9yKTtcbiAgICAgIHRoaXMuc3RhdGUudXBkYXRlKChzKSA9PiAoeyAuLi5zLCBpc0xvYWRpbmc6IGZhbHNlIH0pKTtcbiAgICB9XG4gIH1cblxuICBzZWxlY3RSZWFjdGlvbih2YWx1ZTogUmVhY3Rpb25WYWx1ZSk6IHZvaWQge1xuICAgIGlmICh0aGlzLnJlc29sdmVkUHJvcHMoKS5kaXNhYmxlZCB8fCB0aGlzLnJlc29sdmVkUHJvcHMoKS5yZWFkb25seSkgcmV0dXJuO1xuXG4gICAgY29uc3QgcHJldmlvdXNWYWx1ZSA9IHRoaXMuc3RhdGUoKS5zZWxlY3RlZFZhbHVlO1xuXG4gICAgdGhpcy5zdGF0ZS51cGRhdGUoKHMpID0+ICh7XG4gICAgICAuLi5zLFxuICAgICAgc2VsZWN0ZWRWYWx1ZTogdmFsdWUsXG4gICAgICBpc1N1Ym1pdHRlZDogZmFsc2UsXG4gICAgICBlcnJvcjogbnVsbCxcbiAgICB9KSk7XG5cbiAgICB0aGlzLnJlYWN0aW9uQ2hhbmdlLmVtaXQoeyB2YWx1ZSwgcHJldmlvdXNWYWx1ZSB9KTtcbiAgfVxuXG4gIGFzeW5jIHN1Ym1pdFJlYWN0aW9uKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGN1cnJlbnRTdGF0ZSA9IHRoaXMuc3RhdGUoKTtcbiAgICBjb25zdCBwcm9wcyA9IHRoaXMucmVzb2x2ZWRQcm9wcygpO1xuXG4gICAgaWYgKCFjdXJyZW50U3RhdGUuc2VsZWN0ZWRWYWx1ZSB8fCBwcm9wcy5kaXNhYmxlZCkgcmV0dXJuO1xuXG4gICAgdGhpcy5zdGF0ZS51cGRhdGUoKHMpID0+ICh7IC4uLnMsIGlzTG9hZGluZzogdHJ1ZSwgZXJyb3I6IG51bGwgfSkpO1xuXG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRoaXMuZmVlZGJhY2tTZXJ2aWNlLmNyZWF0ZVJlYWN0aW9uKFxuICAgICAgICBwcm9wcy5lbnRpdHlSZWYsXG4gICAgICAgIGN1cnJlbnRTdGF0ZS5zZWxlY3RlZFZhbHVlLFxuICAgICAgICBjdXJyZW50U3RhdGUuY29tbWVudCB8fCB1bmRlZmluZWRcbiAgICAgICk7XG5cbiAgICAgIHRoaXMuc3RhdGUudXBkYXRlKChzKSA9PiAoe1xuICAgICAgICAuLi5zLFxuICAgICAgICBpc0xvYWRpbmc6IGZhbHNlLFxuICAgICAgICBpc1N1Ym1pdHRlZDogdHJ1ZSxcbiAgICAgICAgaGFkUHJldmlvdXNSZWFjdGlvbjogdHJ1ZSxcbiAgICAgIH0pKTtcblxuICAgICAgdGhpcy5yZWFjdGlvblN1Ym1pdC5lbWl0KHtcbiAgICAgICAgdmFsdWU6IGN1cnJlbnRTdGF0ZS5zZWxlY3RlZFZhbHVlLFxuICAgICAgICBjb21tZW50OiBjdXJyZW50U3RhdGUuY29tbWVudCB8fCB1bmRlZmluZWQsXG4gICAgICAgIGVudGl0eVJlZjogcHJvcHMuZW50aXR5UmVmLFxuICAgICAgICBpc1VwZGF0ZTogY3VycmVudFN0YXRlLmhhZFByZXZpb3VzUmVhY3Rpb24sXG4gICAgICB9KTtcblxuICAgICAgaWYgKHByb3BzLnNob3dUaGFua1lvdSkge1xuICAgICAgICB0aGlzLnRvYXN0LnNob3coe1xuICAgICAgICAgIG1lc3NhZ2U6IHByb3BzLnRoYW5rWW91TWVzc2FnZSxcbiAgICAgICAgICBkdXJhdGlvbjogMjAwMCxcbiAgICAgICAgICBwb3NpdGlvbjogJ2JvdHRvbScsXG4gICAgICAgICAgY29sb3I6ICdzdWNjZXNzJyxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIHN1Ym1pdHRpbmcgcmVhY3Rpb246JywgZXJyb3IpO1xuICAgICAgdGhpcy5zdGF0ZS51cGRhdGUoKHMpID0+ICh7XG4gICAgICAgIC4uLnMsXG4gICAgICAgIGlzTG9hZGluZzogZmFsc2UsXG4gICAgICAgIGVycm9yOiB0aGlzLnQoJ2Vycm9yU3VibWl0dGluZycpLFxuICAgICAgfSkpO1xuXG4gICAgICB0aGlzLnRvYXN0LnNob3coe1xuICAgICAgICBtZXNzYWdlOiB0aGlzLnQoJ2Vycm9yU3VibWl0dGluZycpLFxuICAgICAgICBkdXJhdGlvbjogMzAwMCxcbiAgICAgICAgcG9zaXRpb246ICdib3R0b20nLFxuICAgICAgICBjb2xvcjogJ2RhbmdlcicsXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICB1cGRhdGVDb21tZW50KGV2ZW50OiBDdXN0b21FdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IHZhbHVlID0gZXZlbnQuZGV0YWlsLnZhbHVlIHx8ICcnO1xuICAgIHRoaXMuc3RhdGUudXBkYXRlKChzKSA9PiAoeyAuLi5zLCBjb21tZW50OiB2YWx1ZSB9KSk7XG4gIH1cblxuICBnZXRFbW9qaShpbmRleDogbnVtYmVyKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5yZXNvbHZlZFByb3BzKCkuZW1vamlzW2luZGV4XTtcbiAgfVxuXG4gIGdldEVtb2ppTGFiZWwoaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucmVzb2x2ZWRQcm9wcygpLmVtb2ppTGFiZWxzW2luZGV4XTtcbiAgfVxuXG4gIGlzU2VsZWN0ZWQodmFsdWU6IFJlYWN0aW9uVmFsdWUpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZSgpLnNlbGVjdGVkVmFsdWUgPT09IHZhbHVlO1xuICB9XG5cbiAgdChrZXk6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3QgdHJhbnNsYXRpb25zOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICAgICAgcXVlc3Rpb246ICfCv1RlIHJlc3VsdMOzIMO6dGlsIGVzdGUgY29udGVuaWRvPycsXG4gICAgICBjb21tZW50UGxhY2Vob2xkZXI6ICdDdcOpbnRhbm9zIG3DoXMgKG9wY2lvbmFsKS4uLicsXG4gICAgICBzdWJtaXQ6ICdFbnZpYXIgb3BpbmnDs24nLFxuICAgICAgdXBkYXRlOiAnQWN0dWFsaXphciBvcGluacOzbicsXG4gICAgICB0aGFua1lvdTogJ8KhR3JhY2lhcyBwb3IgdHUgb3BpbmnDs24hJyxcbiAgICAgIHN1Ym1pdHRlZDogJ1R1IG9waW5pw7NuIGhhIHNpZG8gcmVnaXN0cmFkYScsXG4gICAgICBlcnJvclN1Ym1pdHRpbmc6ICdFcnJvciBhbCBlbnZpYXIuIEludGVudGEgZGUgbnVldm8uJyxcbiAgICB9O1xuICAgIHJldHVybiB0aGlzLmkxOG4udChrZXksICdDb250ZW50UmVhY3Rpb24nKSB8fCB0cmFuc2xhdGlvbnNba2V5XSB8fCBrZXk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJjb250ZW50LXJlYWN0aW9uXCJcbiAgW2NsYXNzLmRpc2FibGVkXT1cInJlc29sdmVkUHJvcHMoKS5kaXNhYmxlZFwiXG4gIFtjbGFzcy5yZWFkb25seV09XCJyZXNvbHZlZFByb3BzKCkucmVhZG9ubHlcIlxuPlxuICA8IS0tIExvYWRpbmcgaW5pY2lhbCAtLT5cbiAgQGlmIChzdGF0ZSgpLmlzTG9hZGluZyAmJiAhc3RhdGUoKS5zZWxlY3RlZFZhbHVlKSB7XG4gICAgPGRpdiBjbGFzcz1cImxvYWRpbmctY29udGFpbmVyXCI+XG4gICAgICA8aW9uLXNwaW5uZXIgbmFtZT1cImNyZXNjZW50XCI+PC9pb24tc3Bpbm5lcj5cbiAgICA8L2Rpdj5cbiAgfSBAZWxzZSB7XG4gICAgPCEtLSBQcmVndW50YSAtLT5cbiAgICA8cCBjbGFzcz1cInF1ZXN0aW9uXCI+e3sgcmVzb2x2ZWRQcm9wcygpLnF1ZXN0aW9uIH19PC9wPlxuXG4gICAgPCEtLSBFbW9qaXMgLS0+XG4gICAgPGRpdiBjbGFzcz1cImVtb2ppLWNvbnRhaW5lclwiPlxuICAgICAgQGZvciAodmFsdWUgb2YgcmVhY3Rpb25WYWx1ZXM7IHRyYWNrIHZhbHVlOyBsZXQgaSA9ICRpbmRleCkge1xuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgY2xhc3M9XCJlbW9qaS1idXR0b25cIlxuICAgICAgICAgIFtjbGFzcy5zZWxlY3RlZF09XCJpc1NlbGVjdGVkKHZhbHVlKVwiXG4gICAgICAgICAgW2NsYXNzLm5lZ2F0aXZlXT1cInZhbHVlID09PSAnbmVnYXRpdmUnICYmIGlzU2VsZWN0ZWQodmFsdWUpXCJcbiAgICAgICAgICBbY2xhc3MubmV1dHJhbF09XCJ2YWx1ZSA9PT0gJ25ldXRyYWwnICYmIGlzU2VsZWN0ZWQodmFsdWUpXCJcbiAgICAgICAgICBbY2xhc3MucG9zaXRpdmVdPVwidmFsdWUgPT09ICdwb3NpdGl2ZScgJiYgaXNTZWxlY3RlZCh2YWx1ZSlcIlxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiZ2V0RW1vamlMYWJlbChpKVwiXG4gICAgICAgICAgW2F0dHIuYXJpYS1wcmVzc2VkXT1cImlzU2VsZWN0ZWQodmFsdWUpXCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwicmVzb2x2ZWRQcm9wcygpLmRpc2FibGVkIHx8IHJlc29sdmVkUHJvcHMoKS5yZWFkb25seVwiXG4gICAgICAgICAgKGNsaWNrKT1cInNlbGVjdFJlYWN0aW9uKHZhbHVlKVwiXG4gICAgICAgID5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImVtb2ppXCI+e3sgZ2V0RW1vamkoaSkgfX08L3NwYW4+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgfVxuICAgIDwvZGl2PlxuXG4gICAgPCEtLSBDYW1wbyBkZSBjb21lbnRhcmlvIChzb2xvIHNpIGhheSBzZWxlY2Npw7NuKSAtLT5cbiAgICBAaWYgKHNob3dDb21tZW50RmllbGQoKSkge1xuICAgICAgPGRpdiBjbGFzcz1cImNvbW1lbnQtc2VjdGlvblwiPlxuICAgICAgICA8aW9uLXRleHRhcmVhXG4gICAgICAgICAgW3ZhbHVlXT1cInN0YXRlKCkuY29tbWVudFwiXG4gICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInJlc29sdmVkUHJvcHMoKS5jb21tZW50UGxhY2Vob2xkZXJcIlxuICAgICAgICAgIFttYXhsZW5ndGhdPVwicmVzb2x2ZWRQcm9wcygpLm1heENvbW1lbnRMZW5ndGhcIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCJyZXNvbHZlZFByb3BzKCkuZGlzYWJsZWRcIlxuICAgICAgICAgIFtyb3dzXT1cIjNcIlxuICAgICAgICAgIGNsYXNzPVwiY29tbWVudC10ZXh0YXJlYVwiXG4gICAgICAgICAgKGlvbklucHV0KT1cInVwZGF0ZUNvbW1lbnQoJGV2ZW50KVwiXG4gICAgICAgID48L2lvbi10ZXh0YXJlYT5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGFyLWNvdW50XCI+XG4gICAgICAgICAge3sgc3RhdGUoKS5jb21tZW50Lmxlbmd0aCB9fS97eyByZXNvbHZlZFByb3BzKCkubWF4Q29tbWVudExlbmd0aCB9fVxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICB9XG5cbiAgICA8IS0tIEJvdMOzbiBkZSBlbnbDrW8gLS0+XG4gICAgQGlmIChzdGF0ZSgpLnNlbGVjdGVkVmFsdWUgJiYgIXN0YXRlKCkuaXNTdWJtaXR0ZWQpIHtcbiAgICAgIDxpb24tYnV0dG9uXG4gICAgICAgIGV4cGFuZD1cImJsb2NrXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cIiFjYW5TdWJtaXQoKVwiXG4gICAgICAgIChjbGljayk9XCJzdWJtaXRSZWFjdGlvbigpXCJcbiAgICAgICAgY2xhc3M9XCJzdWJtaXQtYnV0dG9uXCJcbiAgICAgID5cbiAgICAgICAgQGlmIChzdGF0ZSgpLmlzTG9hZGluZykge1xuICAgICAgICAgIDxpb24tc3Bpbm5lciBuYW1lPVwiY3Jlc2NlbnRcIj48L2lvbi1zcGlubmVyPlxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICB7eyBzdGF0ZSgpLmhhZFByZXZpb3VzUmVhY3Rpb24gPyB0KCd1cGRhdGUnKSA6IHQoJ3N1Ym1pdCcpIH19XG4gICAgICAgIH1cbiAgICAgIDwvaW9uLWJ1dHRvbj5cbiAgICB9XG5cbiAgICA8IS0tIE1lbnNhamUgZGUgY29uZmlybWFjacOzbiAtLT5cbiAgICBAaWYgKHN0YXRlKCkuaXNTdWJtaXR0ZWQpIHtcbiAgICAgIDxwIGNsYXNzPVwic3VibWl0dGVkLW1lc3NhZ2VcIj5cbiAgICAgICAge3sgdCgnc3VibWl0dGVkJykgfX1cbiAgICAgIDwvcD5cbiAgICB9XG5cbiAgICA8IS0tIEVycm9yIC0tPlxuICAgIEBpZiAoc3RhdGUoKS5lcnJvcikge1xuICAgICAgPHAgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+e3sgc3RhdGUoKS5lcnJvciB9fTwvcD5cbiAgICB9XG4gIH1cbjwvZGl2PlxuIl19
218
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1yZWFjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NvbnRlbnQtcmVhY3Rpb24vY29udGVudC1yZWFjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NvbnRlbnQtcmVhY3Rpb24vY29udGVudC1yZWFjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFJWixNQUFNLEVBQ04sUUFBUSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsV0FBVyxHQUNaLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBRTlFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOztBQVFsRTs7Ozs7Ozs7Ozs7OztHQWFHO0FBUUgsTUFBTSxPQUFPLHdCQUF3QjtJQVByQztRQVFVLG9CQUFlLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQzFDLFVBQUssR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDN0IsU0FBSSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztR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UHBDLFNBQVM7K0JBQ0Usc0JBQXNCLGNBQ3BCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxXQUFXLENBQUM7OEJBVS9ELEtBQUs7c0JBQWIsS0FBSztnQkFDSSxjQUFjO3NCQUF2QixNQUFNO2dCQUNHLGNBQWM7c0JBQXZCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIGluamVjdCxcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBPbkluaXQsXG4gIE9uQ2hhbmdlcyxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgc2lnbmFsLFxuICBjb21wdXRlZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICBJb25CdXR0b24sXG4gIElvblNwaW5uZXIsXG4gIElvblRleHRhcmVhLFxufSBmcm9tICdAaW9uaWMvYW5ndWxhci9zdGFuZGFsb25lJztcbmltcG9ydCB7IEZlZWRiYWNrU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2ZlZWRiYWNrL2ZlZWRiYWNrLnNlcnZpY2UnO1xuaW1wb3J0IHsgUmVhY3Rpb25WYWx1ZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2ZlZWRiYWNrL3R5cGVzJztcbmltcG9ydCB7IFRvYXN0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3RvYXN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgSTE4blNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9pMThuJztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYXV0aC9hdXRoLnNlcnZpY2UnO1xuaW1wb3J0IHtcbiAgQ29udGVudFJlYWN0aW9uTWV0YWRhdGEsXG4gIENvbnRlbnRSZWFjdGlvblN0YXRlLFxuICBSZWFjdGlvblN1Ym1pdEV2ZW50LFxuICBSZWFjdGlvbkNoYW5nZUV2ZW50LFxufSBmcm9tICcuL3R5cGVzJztcblxuLyoqXG4gKiBDb21wb25lbnRlIHBhcmEgcmVhY2Npb25lcyBkZSBjb250ZW5pZG8gY29uIGVtb2ppcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgaHRtbFxuICogPHZhbC1jb250ZW50LXJlYWN0aW9uXG4gKiAgIFtwcm9wc109XCJ7XG4gKiAgICAgZW50aXR5UmVmOiB7IGVudGl0eVR5cGU6ICdhcnRpY2xlJywgZW50aXR5SWQ6ICdhcnQtMTIzJyB9LFxuICogICAgIHF1ZXN0aW9uOiAnwr9UZSBmdWUgw7p0aWwgZXN0ZSBhcnTDrWN1bG8/J1xuICogICB9XCJcbiAqICAgKHJlYWN0aW9uU3VibWl0KT1cIm9uUmVhY3Rpb25TdWJtaXQoJGV2ZW50KVwiXG4gKiAvPlxuICogYGBgXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1jb250ZW50LXJlYWN0aW9uJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGUsIElvbkJ1dHRvbiwgSW9uU3Bpbm5lciwgSW9uVGV4dGFyZWFdLFxuICB0ZW1wbGF0ZVVybDogJy4vY29udGVudC1yZWFjdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvbnRlbnQtcmVhY3Rpb24uY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQ29udGVudFJlYWN0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBwcml2YXRlIGZlZWRiYWNrU2VydmljZSA9IGluamVjdChGZWVkYmFja1NlcnZpY2UpO1xuICBwcml2YXRlIHRvYXN0ID0gaW5qZWN0KFRvYXN0U2VydmljZSk7XG4gIHByaXZhdGUgaTE4biA9IGluamVjdChJMThuU2VydmljZSk7XG4gIHByaXZhdGUgYXV0aCA9IGluamVjdChBdXRoU2VydmljZSwgeyBvcHRpb25hbDogdHJ1ZSB9KTtcblxuICBASW5wdXQoKSBwcm9wczogUGFydGlhbDxDb250ZW50UmVhY3Rpb25NZXRhZGF0YT4gPSB7fTtcbiAgQE91dHB1dCgpIHJlYWN0aW9uU3VibWl0ID0gbmV3IEV2ZW50RW1pdHRlcjxSZWFjdGlvblN1Ym1pdEV2ZW50PigpO1xuICBAT3V0cHV0KCkgcmVhY3Rpb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFJlYWN0aW9uQ2hhbmdlRXZlbnQ+KCk7XG5cbiAgLy8gRXN0YWRvIHJlYWN0aXZvXG4gIHN0YXRlID0gc2lnbmFsPENvbnRlbnRSZWFjdGlvblN0YXRlPih7XG4gICAgc2VsZWN0ZWRWYWx1ZTogbnVsbCxcbiAgICBjb21tZW50OiAnJyxcbiAgICBpc0xvYWRpbmc6IGZhbHNlLFxuICAgIGlzU3VibWl0dGVkOiBmYWxzZSxcbiAgICBoYWRQcmV2aW91c1JlYWN0aW9uOiBmYWxzZSxcbiAgICBlcnJvcjogbnVsbCxcbiAgfSk7XG5cbiAgLy8gVmFsb3JlcyBwb3IgZGVmZWN0b1xuICByZWFkb25seSBkZWZhdWx0RW1vamlzOiBbc3RyaW5nLCBzdHJpbmcsIHN0cmluZ10gPSBbJ/CfmJ4nLCAn8J+YkCcsICfwn5iKJ107XG4gIHJlYWRvbmx5IGRlZmF1bHRMYWJlbHM6IFtzdHJpbmcsIHN0cmluZywgc3RyaW5nXSA9IFtcbiAgICAnTm8gbWUgYXl1ZMOzJyxcbiAgICAnUmVndWxhcicsXG4gICAgJ011eSDDunRpbCcsXG4gIF07XG4gIHJlYWRvbmx5IHJlYWN0aW9uVmFsdWVzOiBSZWFjdGlvblZhbHVlW10gPSBbJ25lZ2F0aXZlJywgJ25ldXRyYWwnLCAncG9zaXRpdmUnXTtcblxuICAvLyBDb21wdXRlZCBwcm9wZXJ0aWVzXG4gIHJlc29sdmVkUHJvcHMgPSBjb21wdXRlZCgoKSA9PiAoe1xuICAgIGVudGl0eVJlZjogdGhpcy5wcm9wcy5lbnRpdHlSZWYhLFxuICAgIHF1ZXN0aW9uOiB0aGlzLnByb3BzLnF1ZXN0aW9uIHx8IHRoaXMudCgncXVlc3Rpb24nKSxcbiAgICBzaG93Q29tbWVudDogdGhpcy5wcm9wcy5zaG93Q29tbWVudCA/PyB0cnVlLFxuICAgIGNvbW1lbnRQbGFjZWhvbGRlcjogdGhpcy5wcm9wcy5jb21tZW50UGxhY2Vob2xkZXIgfHwgdGhpcy50KCdjb21tZW50UGxhY2Vob2xkZXInKSxcbiAgICBtYXhDb21tZW50TGVuZ3RoOiB0aGlzLnByb3BzLm1heENvbW1lbnRMZW5ndGggPz8gNTAwLFxuICAgIGVtb2ppczogdGhpcy5wcm9wcy5lbW9qaXMgfHwgdGhpcy5kZWZhdWx0RW1vamlzLFxuICAgIGVtb2ppTGFiZWxzOiB0aGlzLnByb3BzLmVtb2ppTGFiZWxzIHx8IHRoaXMuZGVmYXVsdExhYmVscyxcbiAgICBzaG93VGhhbmtZb3U6IHRoaXMucHJvcHMuc2hvd1RoYW5rWW91ID8/IHRydWUsXG4gICAgdGhhbmtZb3VNZXNzYWdlOiB0aGlzLnByb3BzLnRoYW5rWW91TWVzc2FnZSB8fCB0aGlzLnQoJ3RoYW5rWW91JyksXG4gICAgZGlzYWJsZWQ6IHRoaXMucHJvcHMuZGlzYWJsZWQgPz8gZmFsc2UsXG4gICAgcmVhZG9ubHk6IHRoaXMucHJvcHMucmVhZG9ubHkgPz8gZmFsc2UsXG4gIH0pKTtcblxuICBzaG93Q29tbWVudEZpZWxkID0gY29tcHV0ZWQoXG4gICAgKCkgPT5cbiAgICAgIHRoaXMuc3RhdGUoKS5zZWxlY3RlZFZhbHVlICE9PSBudWxsICYmIHRoaXMucmVzb2x2ZWRQcm9wcygpLnNob3dDb21tZW50XG4gICk7XG5cbiAgY2FuU3VibWl0ID0gY29tcHV0ZWQoXG4gICAgKCkgPT4gdGhpcy5zdGF0ZSgpLnNlbGVjdGVkVmFsdWUgIT09IG51bGwgJiYgIXRoaXMuc3RhdGUoKS5pc0xvYWRpbmdcbiAgKTtcblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmxvYWRQcmV2aW91c1JlYWN0aW9uKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXNbJ3Byb3BzJ10gJiYgIWNoYW5nZXNbJ3Byb3BzJ10uZmlyc3RDaGFuZ2UpIHtcbiAgICAgIHRoaXMubG9hZFByZXZpb3VzUmVhY3Rpb24oKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGxvYWRQcmV2aW91c1JlYWN0aW9uKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICghdGhpcy5wcm9wcy5lbnRpdHlSZWYpIHJldHVybjtcblxuICAgIC8vIFNpIGhheSBpbml0aWFsVmFsdWUsIHVzYXJsbyBkaXJlY3RhbWVudGUgc2luIGNvbnN1bHRhclxuICAgIGlmICh0aGlzLnByb3BzLmluaXRpYWxWYWx1ZSkge1xuICAgICAgdGhpcy5zdGF0ZS51cGRhdGUoKHMpID0+ICh7XG4gICAgICAgIC4uLnMsXG4gICAgICAgIHNlbGVjdGVkVmFsdWU6IHRoaXMucHJvcHMuaW5pdGlhbFZhbHVlISxcbiAgICAgICAgaGFkUHJldmlvdXNSZWFjdGlvbjogdHJ1ZSxcbiAgICAgICAgaXNMb2FkaW5nOiBmYWxzZSxcbiAgICAgICAgaXNTdWJtaXR0ZWQ6IHRydWUsXG4gICAgICB9KSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gU2kgc2tpcEluaXRpYWxDaGVjayBlc3TDoSBhY3Rpdm8sIG5vIGNvbnN1bHRhclxuICAgIGlmICh0aGlzLnByb3BzLnNraXBJbml0aWFsQ2hlY2spIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnN0YXRlLnVwZGF0ZSgocykgPT4gKHsgLi4ucywgaXNMb2FkaW5nOiB0cnVlLCBlcnJvcjogbnVsbCB9KSk7XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgY2hlY2sgPSBhd2FpdCB0aGlzLmZlZWRiYWNrU2VydmljZS5jaGVja0ZlZWRiYWNrKFxuICAgICAgICB0aGlzLnByb3BzLmVudGl0eVJlZi5lbnRpdHlUeXBlLFxuICAgICAgICB0aGlzLnByb3BzLmVudGl0eVJlZi5lbnRpdHlJZFxuICAgICAgKTtcblxuICAgICAgaWYgKGNoZWNrLmhhc0ZlZWRiYWNrICYmIGNoZWNrLnJlYWN0aW9uVmFsdWUpIHtcbiAgICAgICAgdGhpcy5zdGF0ZS51cGRhdGUoKHMpID0+ICh7XG4gICAgICAgICAgLi4ucyxcbiAgICAgICAgICBzZWxlY3RlZFZhbHVlOiBjaGVjay5yZWFjdGlvblZhbHVlISxcbiAgICAgICAgICBoYWRQcmV2aW91c1JlYWN0aW9uOiB0cnVlLFxuICAgICAgICAgIGlzTG9hZGluZzogZmFsc2UsXG4gICAgICAgICAgaXNTdWJtaXR0ZWQ6IHRydWUsXG4gICAgICAgIH0pKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuc3RhdGUudXBkYXRlKChzKSA9PiAoeyAuLi5zLCBpc0xvYWRpbmc6IGZhbHNlIH0pKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgbG9hZGluZyBwcmV2aW91cyByZWFjdGlvbjonLCBlcnJvcik7XG4gICAgICB0aGlzLnN0YXRlLnVwZGF0ZSgocykgPT4gKHsgLi4ucywgaXNMb2FkaW5nOiBmYWxzZSB9KSk7XG4gICAgfVxuICB9XG5cbiAgc2VsZWN0UmVhY3Rpb24odmFsdWU6IFJlYWN0aW9uVmFsdWUpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5yZXNvbHZlZFByb3BzKCkuZGlzYWJsZWQgfHwgdGhpcy5yZXNvbHZlZFByb3BzKCkucmVhZG9ubHkpIHJldHVybjtcblxuICAgIGNvbnN0IHByZXZpb3VzVmFsdWUgPSB0aGlzLnN0YXRlKCkuc2VsZWN0ZWRWYWx1ZTtcblxuICAgIHRoaXMuc3RhdGUudXBkYXRlKChzKSA9PiAoe1xuICAgICAgLi4ucyxcbiAgICAgIHNlbGVjdGVkVmFsdWU6IHZhbHVlLFxuICAgICAgaXNTdWJtaXR0ZWQ6IGZhbHNlLFxuICAgICAgZXJyb3I6IG51bGwsXG4gICAgfSkpO1xuXG4gICAgdGhpcy5yZWFjdGlvbkNoYW5nZS5lbWl0KHsgdmFsdWUsIHByZXZpb3VzVmFsdWUgfSk7XG4gIH1cblxuICBhc3luYyBzdWJtaXRSZWFjdGlvbigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBjdXJyZW50U3RhdGUgPSB0aGlzLnN0YXRlKCk7XG4gICAgY29uc3QgcHJvcHMgPSB0aGlzLnJlc29sdmVkUHJvcHMoKTtcblxuICAgIGlmICghY3VycmVudFN0YXRlLnNlbGVjdGVkVmFsdWUgfHwgcHJvcHMuZGlzYWJsZWQpIHJldHVybjtcblxuICAgIHRoaXMuc3RhdGUudXBkYXRlKChzKSA9PiAoeyAuLi5zLCBpc0xvYWRpbmc6IHRydWUsIGVycm9yOiBudWxsIH0pKTtcblxuICAgIHRyeSB7XG4gICAgICAvLyBEZXRlcm1pbmFyIHNpIHVzYXIgZW5kcG9pbnQgYW7Ds25pbW8gbyBhdXRlbnRpY2Fkb1xuICAgICAgY29uc3QgaXNBdXRoZW50aWNhdGVkID0gdGhpcy5hdXRoPy5pc0F1dGhlbnRpY2F0ZWQoKSA/PyBmYWxzZTtcbiAgICAgIGNvbnN0IHVzZUFub255bW91cyA9IHRoaXMucHJvcHMuYWxsb3dBbm9ueW1vdXMgJiYgIWlzQXV0aGVudGljYXRlZDtcblxuICAgICAgaWYgKHVzZUFub255bW91cykge1xuICAgICAgICAvLyBVc2FyIGVuZHBvaW50IGFuw7NuaW1vIChww7pibGljbylcbiAgICAgICAgYXdhaXQgdGhpcy5mZWVkYmFja1NlcnZpY2UuY3JlYXRlQW5vbnltb3VzUmVhY3Rpb24oXG4gICAgICAgICAgcHJvcHMuZW50aXR5UmVmLFxuICAgICAgICAgIGN1cnJlbnRTdGF0ZS5zZWxlY3RlZFZhbHVlLFxuICAgICAgICAgIGN1cnJlbnRTdGF0ZS5jb21tZW50IHx8IHVuZGVmaW5lZFxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gVXNhciBlbmRwb2ludCBhdXRlbnRpY2Fkb1xuICAgICAgICBhd2FpdCB0aGlzLmZlZWRiYWNrU2VydmljZS5jcmVhdGVSZWFjdGlvbihcbiAgICAgICAgICBwcm9wcy5lbnRpdHlSZWYsXG4gICAgICAgICAgY3VycmVudFN0YXRlLnNlbGVjdGVkVmFsdWUsXG4gICAgICAgICAgY3VycmVudFN0YXRlLmNvbW1lbnQgfHwgdW5kZWZpbmVkXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc3RhdGUudXBkYXRlKChzKSA9PiAoe1xuICAgICAgICAuLi5zLFxuICAgICAgICBpc0xvYWRpbmc6IGZhbHNlLFxuICAgICAgICBpc1N1Ym1pdHRlZDogdHJ1ZSxcbiAgICAgICAgaGFkUHJldmlvdXNSZWFjdGlvbjogIXVzZUFub255bW91cywgLy8gU29sbyBwYXJhIGF1dGVudGljYWRvc1xuICAgICAgfSkpO1xuXG4gICAgICB0aGlzLnJlYWN0aW9uU3VibWl0LmVtaXQoe1xuICAgICAgICB2YWx1ZTogY3VycmVudFN0YXRlLnNlbGVjdGVkVmFsdWUsXG4gICAgICAgIGNvbW1lbnQ6IGN1cnJlbnRTdGF0ZS5jb21tZW50IHx8IHVuZGVmaW5lZCxcbiAgICAgICAgZW50aXR5UmVmOiBwcm9wcy5lbnRpdHlSZWYsXG4gICAgICAgIGlzVXBkYXRlOiBjdXJyZW50U3RhdGUuaGFkUHJldmlvdXNSZWFjdGlvbixcbiAgICAgIH0pO1xuXG4gICAgICBpZiAocHJvcHMuc2hvd1RoYW5rWW91KSB7XG4gICAgICAgIHRoaXMudG9hc3Quc2hvdyh7XG4gICAgICAgICAgbWVzc2FnZTogcHJvcHMudGhhbmtZb3VNZXNzYWdlLFxuICAgICAgICAgIGR1cmF0aW9uOiAyMDAwLFxuICAgICAgICAgIHBvc2l0aW9uOiAnYm90dG9tJyxcbiAgICAgICAgICBjb2xvcjogJ3N1Y2Nlc3MnLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3Igc3VibWl0dGluZyByZWFjdGlvbjonLCBlcnJvcik7XG4gICAgICB0aGlzLnN0YXRlLnVwZGF0ZSgocykgPT4gKHtcbiAgICAgICAgLi4ucyxcbiAgICAgICAgaXNMb2FkaW5nOiBmYWxzZSxcbiAgICAgICAgZXJyb3I6IHRoaXMudCgnZXJyb3JTdWJtaXR0aW5nJyksXG4gICAgICB9KSk7XG5cbiAgICAgIHRoaXMudG9hc3Quc2hvdyh7XG4gICAgICAgIG1lc3NhZ2U6IHRoaXMudCgnZXJyb3JTdWJtaXR0aW5nJyksXG4gICAgICAgIGR1cmF0aW9uOiAzMDAwLFxuICAgICAgICBwb3NpdGlvbjogJ2JvdHRvbScsXG4gICAgICAgIGNvbG9yOiAnZGFuZ2VyJyxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZUNvbW1lbnQoZXZlbnQ6IEN1c3RvbUV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgdmFsdWUgPSBldmVudC5kZXRhaWwudmFsdWUgfHwgJyc7XG4gICAgdGhpcy5zdGF0ZS51cGRhdGUoKHMpID0+ICh7IC4uLnMsIGNvbW1lbnQ6IHZhbHVlIH0pKTtcbiAgfVxuXG4gIGdldEVtb2ppKGluZGV4OiBudW1iZXIpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnJlc29sdmVkUHJvcHMoKS5lbW9qaXNbaW5kZXhdO1xuICB9XG5cbiAgZ2V0RW1vamlMYWJlbChpbmRleDogbnVtYmVyKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5yZXNvbHZlZFByb3BzKCkuZW1vamlMYWJlbHNbaW5kZXhdO1xuICB9XG5cbiAgaXNTZWxlY3RlZCh2YWx1ZTogUmVhY3Rpb25WYWx1ZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnN0YXRlKCkuc2VsZWN0ZWRWYWx1ZSA9PT0gdmFsdWU7XG4gIH1cblxuICB0KGtleTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCB0cmFuc2xhdGlvbnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gICAgICBxdWVzdGlvbjogJ8K/VGUgcmVzdWx0w7Mgw7p0aWwgZXN0ZSBjb250ZW5pZG8/JyxcbiAgICAgIGNvbW1lbnRQbGFjZWhvbGRlcjogJ0N1w6ludGFub3MgbcOhcyAob3BjaW9uYWwpLi4uJyxcbiAgICAgIHN1Ym1pdDogJ0VudmlhciBvcGluacOzbicsXG4gICAgICB1cGRhdGU6ICdBY3R1YWxpemFyIG9waW5pw7NuJyxcbiAgICAgIHRoYW5rWW91OiAnwqFHcmFjaWFzIHBvciB0dSBvcGluacOzbiEnLFxuICAgICAgc3VibWl0dGVkOiAnVHUgb3BpbmnDs24gaGEgc2lkbyByZWdpc3RyYWRhJyxcbiAgICAgIGVycm9yU3VibWl0dGluZzogJ0Vycm9yIGFsIGVudmlhci4gSW50ZW50YSBkZSBudWV2by4nLFxuICAgIH07XG4gICAgcmV0dXJuIHRoaXMuaTE4bi50KGtleSwgJ0NvbnRlbnRSZWFjdGlvbicpIHx8IHRyYW5zbGF0aW9uc1trZXldIHx8IGtleTtcbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cImNvbnRlbnQtcmVhY3Rpb25cIlxuICBbY2xhc3MuZGlzYWJsZWRdPVwicmVzb2x2ZWRQcm9wcygpLmRpc2FibGVkXCJcbiAgW2NsYXNzLnJlYWRvbmx5XT1cInJlc29sdmVkUHJvcHMoKS5yZWFkb25seVwiXG4+XG4gIDwhLS0gTG9hZGluZyBpbmljaWFsIC0tPlxuICBAaWYgKHN0YXRlKCkuaXNMb2FkaW5nICYmICFzdGF0ZSgpLnNlbGVjdGVkVmFsdWUpIHtcbiAgICA8ZGl2IGNsYXNzPVwibG9hZGluZy1jb250YWluZXJcIj5cbiAgICAgIDxpb24tc3Bpbm5lciBuYW1lPVwiY3Jlc2NlbnRcIj48L2lvbi1zcGlubmVyPlxuICAgIDwvZGl2PlxuICB9IEBlbHNlIHtcbiAgICA8IS0tIFByZWd1bnRhIC0tPlxuICAgIDxwIGNsYXNzPVwicXVlc3Rpb25cIj57eyByZXNvbHZlZFByb3BzKCkucXVlc3Rpb24gfX08L3A+XG5cbiAgICA8IS0tIEVtb2ppcyAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiZW1vamktY29udGFpbmVyXCI+XG4gICAgICBAZm9yICh2YWx1ZSBvZiByZWFjdGlvblZhbHVlczsgdHJhY2sgdmFsdWU7IGxldCBpID0gJGluZGV4KSB7XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICBjbGFzcz1cImVtb2ppLWJ1dHRvblwiXG4gICAgICAgICAgW2NsYXNzLnNlbGVjdGVkXT1cImlzU2VsZWN0ZWQodmFsdWUpXCJcbiAgICAgICAgICBbY2xhc3MubmVnYXRpdmVdPVwidmFsdWUgPT09ICduZWdhdGl2ZScgJiYgaXNTZWxlY3RlZCh2YWx1ZSlcIlxuICAgICAgICAgIFtjbGFzcy5uZXV0cmFsXT1cInZhbHVlID09PSAnbmV1dHJhbCcgJiYgaXNTZWxlY3RlZCh2YWx1ZSlcIlxuICAgICAgICAgIFtjbGFzcy5wb3NpdGl2ZV09XCJ2YWx1ZSA9PT0gJ3Bvc2l0aXZlJyAmJiBpc1NlbGVjdGVkKHZhbHVlKVwiXG4gICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJnZXRFbW9qaUxhYmVsKGkpXCJcbiAgICAgICAgICBbYXR0ci5hcmlhLXByZXNzZWRdPVwiaXNTZWxlY3RlZCh2YWx1ZSlcIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCJyZXNvbHZlZFByb3BzKCkuZGlzYWJsZWQgfHwgcmVzb2x2ZWRQcm9wcygpLnJlYWRvbmx5XCJcbiAgICAgICAgICAoY2xpY2spPVwic2VsZWN0UmVhY3Rpb24odmFsdWUpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZW1vamlcIj57eyBnZXRFbW9qaShpKSB9fTwvc3Bhbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICB9XG4gICAgPC9kaXY+XG5cbiAgICA8IS0tIENhbXBvIGRlIGNvbWVudGFyaW8gKHNvbG8gc2kgaGF5IHNlbGVjY2nDs24pIC0tPlxuICAgIEBpZiAoc2hvd0NvbW1lbnRGaWVsZCgpKSB7XG4gICAgICA8ZGl2IGNsYXNzPVwiY29tbWVudC1zZWN0aW9uXCI+XG4gICAgICAgIDxpb24tdGV4dGFyZWFcbiAgICAgICAgICBbdmFsdWVdPVwic3RhdGUoKS5jb21tZW50XCJcbiAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicmVzb2x2ZWRQcm9wcygpLmNvbW1lbnRQbGFjZWhvbGRlclwiXG4gICAgICAgICAgW21heGxlbmd0aF09XCJyZXNvbHZlZFByb3BzKCkubWF4Q29tbWVudExlbmd0aFwiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cInJlc29sdmVkUHJvcHMoKS5kaXNhYmxlZFwiXG4gICAgICAgICAgW3Jvd3NdPVwiM1wiXG4gICAgICAgICAgY2xhc3M9XCJjb21tZW50LXRleHRhcmVhXCJcbiAgICAgICAgICAoaW9uSW5wdXQpPVwidXBkYXRlQ29tbWVudCgkZXZlbnQpXCJcbiAgICAgICAgPjwvaW9uLXRleHRhcmVhPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImNoYXItY291bnRcIj5cbiAgICAgICAgICB7eyBzdGF0ZSgpLmNvbW1lbnQubGVuZ3RoIH19L3t7IHJlc29sdmVkUHJvcHMoKS5tYXhDb21tZW50TGVuZ3RoIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIH1cblxuICAgIDwhLS0gQm90w7NuIGRlIGVudsOtbyAtLT5cbiAgICBAaWYgKHN0YXRlKCkuc2VsZWN0ZWRWYWx1ZSAmJiAhc3RhdGUoKS5pc1N1Ym1pdHRlZCkge1xuICAgICAgPGlvbi1idXR0b25cbiAgICAgICAgZXhwYW5kPVwiYmxvY2tcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiIWNhblN1Ym1pdCgpXCJcbiAgICAgICAgKGNsaWNrKT1cInN1Ym1pdFJlYWN0aW9uKClcIlxuICAgICAgICBjbGFzcz1cInN1Ym1pdC1idXR0b25cIlxuICAgICAgPlxuICAgICAgICBAaWYgKHN0YXRlKCkuaXNMb2FkaW5nKSB7XG4gICAgICAgICAgPGlvbi1zcGlubmVyIG5hbWU9XCJjcmVzY2VudFwiPjwvaW9uLXNwaW5uZXI+XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgIHt7IHN0YXRlKCkuaGFkUHJldmlvdXNSZWFjdGlvbiA/IHQoJ3VwZGF0ZScpIDogdCgnc3VibWl0JykgfX1cbiAgICAgICAgfVxuICAgICAgPC9pb24tYnV0dG9uPlxuICAgIH1cblxuICAgIDwhLS0gTWVuc2FqZSBkZSBjb25maXJtYWNpw7NuIC0tPlxuICAgIEBpZiAoc3RhdGUoKS5pc1N1Ym1pdHRlZCkge1xuICAgICAgPHAgY2xhc3M9XCJzdWJtaXR0ZWQtbWVzc2FnZVwiPlxuICAgICAgICB7eyB0KCdzdWJtaXR0ZWQnKSB9fVxuICAgICAgPC9wPlxuICAgIH1cblxuICAgIDwhLS0gRXJyb3IgLS0+XG4gICAgQGlmIChzdGF0ZSgpLmVycm9yKSB7XG4gICAgICA8cCBjbGFzcz1cImVycm9yLW1lc3NhZ2VcIj57eyBzdGF0ZSgpLmVycm9yIH19PC9wPlxuICAgIH1cbiAgfVxuPC9kaXY+XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NvbnRlbnQtcmVhY3Rpb24vdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVudGl0eVJlZiwgUmVhY3Rpb25WYWx1ZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2ZlZWRiYWNrL3R5cGVzJztcblxuLyoqXG4gKiBDb25maWd1cmFjacOzbiBkZWwgY29tcG9uZW50ZSBjb250ZW50LXJlYWN0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbnRlbnRSZWFjdGlvbk1ldGFkYXRhIHtcbiAgLyoqIFJlZmVyZW5jaWEgYSBsYSBlbnRpZGFkIChyZXF1ZXJpZG8pICovXG4gIGVudGl0eVJlZjogRW50aXR5UmVmO1xuXG4gIC8qKiBQcmVndW50YSBhIG1vc3RyYXIgKGRlZmF1bHQ6IFwiwr9UZSByZXN1bHTDsyDDunRpbCBlc3RlIGNvbnRlbmlkbz9cIikgKi9cbiAgcXVlc3Rpb24/OiBzdHJpbmc7XG5cbiAgLyoqIE1vc3RyYXIgY2FtcG8gZGUgY29tZW50YXJpbyAoZGVmYXVsdDogdHJ1ZSkgKi9cbiAgc2hvd0NvbW1lbnQ/OiBib29sZWFuO1xuXG4gIC8qKiBQbGFjZWhvbGRlciBkZWwgY29tZW50YXJpbyAqL1xuICBjb21tZW50UGxhY2Vob2xkZXI/OiBzdHJpbmc7XG5cbiAgLyoqIE3DoXhpbW8gZGUgY2FyYWN0ZXJlcyBkZWwgY29tZW50YXJpbyAoZGVmYXVsdDogNTAwKSAqL1xuICBtYXhDb21tZW50TGVuZ3RoPzogbnVtYmVyO1xuXG4gIC8qKiBFbW9qaXMgcGVyc29uYWxpemFkb3MgW25lZ2F0aXZlLCBuZXV0cmFsLCBwb3NpdGl2ZV0gKi9cbiAgZW1vamlzPzogW3N0cmluZywgc3RyaW5nLCBzdHJpbmddO1xuXG4gIC8qKiBMYWJlbHMgcGFyYSBlbW9qaXMgKGFjY2VzaWJpbGlkYWQpICovXG4gIGVtb2ppTGFiZWxzPzogW3N0cmluZywgc3RyaW5nLCBzdHJpbmddO1xuXG4gIC8qKiBNb3N0cmFyIHRvYXN0IGRlIGFncmFkZWNpbWllbnRvIChkZWZhdWx0OiB0cnVlKSAqL1xuICBzaG93VGhhbmtZb3U/OiBib29sZWFuO1xuXG4gIC8qKiBNZW5zYWplIGRlIGFncmFkZWNpbWllbnRvIHBlcnNvbmFsaXphZG8gKi9cbiAgdGhhbmtZb3VNZXNzYWdlPzogc3RyaW5nO1xuXG4gIC8qKiBEZXNoYWJpbGl0YXIgaW50ZXJhY2Npw7NuICovXG4gIGRpc2FibGVkPzogYm9vbGVhbjtcblxuICAvKiogTW9kbyByZWFkb25seSAoc29sbyBtb3N0cmFyIHNlbGVjY2nDs24gcHJldmlhKSAqL1xuICByZWFkb25seT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFZhbG9yIGluaWNpYWwgKHBhcmEgU3Rvcnlib29rIG8gY3VhbmRvIHlhIHNlIGNvbm9jZSBlbCBlc3RhZG8pLlxuICAgKiBTaSBzZSBwcm9wb3JjaW9uYSwgbm8gc2UgY29uc3VsdGFyw6EgbGEgQVBJL0ZpcmViYXNlLlxuICAgKi9cbiAgaW5pdGlhbFZhbHVlPzogUmVhY3Rpb25WYWx1ZTtcblxuICAvKipcbiAgICogT21pdGlyIGNvbnN1bHRhIGRlIGZlZWRiYWNrIHByZXZpbyBhbCBjYXJnYXIuXG4gICAqIMOadGlsIHBhcmEgU3Rvcnlib29rIG8gY3VhbmRvIHNlIHVzYSBpbml0aWFsVmFsdWUuXG4gICAqL1xuICBza2lwSW5pdGlhbENoZWNrPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBFc3RhZG8gaW50ZXJubyBkZWwgY29tcG9uZW50ZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb250ZW50UmVhY3Rpb25TdGF0ZSB7XG4gIC8qKiBWYWxvciBzZWxlY2Npb25hZG8gYWN0dWFsbWVudGUgKi9cbiAgc2VsZWN0ZWRWYWx1ZTogUmVhY3Rpb25WYWx1ZSB8IG51bGw7XG5cbiAgLyoqIENvbWVudGFyaW8gZGVsIHVzdWFyaW8gKi9cbiAgY29tbWVudDogc3RyaW5nO1xuXG4gIC8qKiBJbmRpY2Egc2kgZXN0w6EgY2FyZ2FuZG8gKi9cbiAgaXNMb2FkaW5nOiBib29sZWFuO1xuXG4gIC8qKiBJbmRpY2Egc2kgeWEgZW52acOzIGxhIHJlYWNjacOzbiAqL1xuICBpc1N1Ym1pdHRlZDogYm9vbGVhbjtcblxuICAvKiogSW5kaWNhIHNpIHRlbsOtYSByZWFjY2nDs24gcHJldmlhICovXG4gIGhhZFByZXZpb3VzUmVhY3Rpb246IGJvb2xlYW47XG5cbiAgLyoqIEVycm9yIG1lc3NhZ2UgaWYgYW55ICovXG4gIGVycm9yOiBzdHJpbmcgfCBudWxsO1xufVxuXG4vKipcbiAqIEV2ZW50byBlbWl0aWRvIGFsIGVudmlhciByZWFjY2nDs24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVhY3Rpb25TdWJtaXRFdmVudCB7XG4gIHZhbHVlOiBSZWFjdGlvblZhbHVlO1xuICBjb21tZW50Pzogc3RyaW5nO1xuICBlbnRpdHlSZWY6IEVudGl0eVJlZjtcbiAgaXNVcGRhdGU6IGJvb2xlYW47XG59XG5cbi8qKlxuICogRXZlbnRvIGVtaXRpZG8gYWwgY2FtYmlhciBzZWxlY2Npw7NuLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlYWN0aW9uQ2hhbmdlRXZlbnQge1xuICB2YWx1ZTogUmVhY3Rpb25WYWx1ZSB8IG51bGw7XG4gIHByZXZpb3VzVmFsdWU6IFJlYWN0aW9uVmFsdWUgfCBudWxsO1xufVxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NvbnRlbnQtcmVhY3Rpb24vdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVudGl0eVJlZiwgUmVhY3Rpb25WYWx1ZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2ZlZWRiYWNrL3R5cGVzJztcblxuLyoqXG4gKiBDb25maWd1cmFjacOzbiBkZWwgY29tcG9uZW50ZSBjb250ZW50LXJlYWN0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbnRlbnRSZWFjdGlvbk1ldGFkYXRhIHtcbiAgLyoqIFJlZmVyZW5jaWEgYSBsYSBlbnRpZGFkIChyZXF1ZXJpZG8pICovXG4gIGVudGl0eVJlZjogRW50aXR5UmVmO1xuXG4gIC8qKiBQcmVndW50YSBhIG1vc3RyYXIgKGRlZmF1bHQ6IFwiwr9UZSByZXN1bHTDsyDDunRpbCBlc3RlIGNvbnRlbmlkbz9cIikgKi9cbiAgcXVlc3Rpb24/OiBzdHJpbmc7XG5cbiAgLyoqIE1vc3RyYXIgY2FtcG8gZGUgY29tZW50YXJpbyAoZGVmYXVsdDogdHJ1ZSkgKi9cbiAgc2hvd0NvbW1lbnQ/OiBib29sZWFuO1xuXG4gIC8qKiBQbGFjZWhvbGRlciBkZWwgY29tZW50YXJpbyAqL1xuICBjb21tZW50UGxhY2Vob2xkZXI/OiBzdHJpbmc7XG5cbiAgLyoqIE3DoXhpbW8gZGUgY2FyYWN0ZXJlcyBkZWwgY29tZW50YXJpbyAoZGVmYXVsdDogNTAwKSAqL1xuICBtYXhDb21tZW50TGVuZ3RoPzogbnVtYmVyO1xuXG4gIC8qKiBFbW9qaXMgcGVyc29uYWxpemFkb3MgW25lZ2F0aXZlLCBuZXV0cmFsLCBwb3NpdGl2ZV0gKi9cbiAgZW1vamlzPzogW3N0cmluZywgc3RyaW5nLCBzdHJpbmddO1xuXG4gIC8qKiBMYWJlbHMgcGFyYSBlbW9qaXMgKGFjY2VzaWJpbGlkYWQpICovXG4gIGVtb2ppTGFiZWxzPzogW3N0cmluZywgc3RyaW5nLCBzdHJpbmddO1xuXG4gIC8qKiBNb3N0cmFyIHRvYXN0IGRlIGFncmFkZWNpbWllbnRvIChkZWZhdWx0OiB0cnVlKSAqL1xuICBzaG93VGhhbmtZb3U/OiBib29sZWFuO1xuXG4gIC8qKiBNZW5zYWplIGRlIGFncmFkZWNpbWllbnRvIHBlcnNvbmFsaXphZG8gKi9cbiAgdGhhbmtZb3VNZXNzYWdlPzogc3RyaW5nO1xuXG4gIC8qKiBEZXNoYWJpbGl0YXIgaW50ZXJhY2Npw7NuICovXG4gIGRpc2FibGVkPzogYm9vbGVhbjtcblxuICAvKiogTW9kbyByZWFkb25seSAoc29sbyBtb3N0cmFyIHNlbGVjY2nDs24gcHJldmlhKSAqL1xuICByZWFkb25seT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFZhbG9yIGluaWNpYWwgKHBhcmEgU3Rvcnlib29rIG8gY3VhbmRvIHlhIHNlIGNvbm9jZSBlbCBlc3RhZG8pLlxuICAgKiBTaSBzZSBwcm9wb3JjaW9uYSwgbm8gc2UgY29uc3VsdGFyw6EgbGEgQVBJL0ZpcmViYXNlLlxuICAgKi9cbiAgaW5pdGlhbFZhbHVlPzogUmVhY3Rpb25WYWx1ZTtcblxuICAvKipcbiAgICogT21pdGlyIGNvbnN1bHRhIGRlIGZlZWRiYWNrIHByZXZpbyBhbCBjYXJnYXIuXG4gICAqIMOadGlsIHBhcmEgU3Rvcnlib29rIG8gY3VhbmRvIHNlIHVzYSBpbml0aWFsVmFsdWUuXG4gICAqL1xuICBza2lwSW5pdGlhbENoZWNrPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogUGVybWl0aXIgZmVlZGJhY2sgYW7Ds25pbW8gKHNpbiBhdXRlbnRpY2FjacOzbikuXG4gICAqIFVzYWRvIHBhcmEgYmxvZ3MsIEZBUXMgeSBjb250ZW5pZG8gcMO6YmxpY28uXG4gICAqIERlZmF1bHQ6IGZhbHNlXG4gICAqL1xuICBhbGxvd0Fub255bW91cz86IGJvb2xlYW47XG59XG5cbi8qKlxuICogRXN0YWRvIGludGVybm8gZGVsIGNvbXBvbmVudGUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudFJlYWN0aW9uU3RhdGUge1xuICAvKiogVmFsb3Igc2VsZWNjaW9uYWRvIGFjdHVhbG1lbnRlICovXG4gIHNlbGVjdGVkVmFsdWU6IFJlYWN0aW9uVmFsdWUgfCBudWxsO1xuXG4gIC8qKiBDb21lbnRhcmlvIGRlbCB1c3VhcmlvICovXG4gIGNvbW1lbnQ6IHN0cmluZztcblxuICAvKiogSW5kaWNhIHNpIGVzdMOhIGNhcmdhbmRvICovXG4gIGlzTG9hZGluZzogYm9vbGVhbjtcblxuICAvKiogSW5kaWNhIHNpIHlhIGVudmnDsyBsYSByZWFjY2nDs24gKi9cbiAgaXNTdWJtaXR0ZWQ6IGJvb2xlYW47XG5cbiAgLyoqIEluZGljYSBzaSB0ZW7DrWEgcmVhY2Npw7NuIHByZXZpYSAqL1xuICBoYWRQcmV2aW91c1JlYWN0aW9uOiBib29sZWFuO1xuXG4gIC8qKiBFcnJvciBtZXNzYWdlIGlmIGFueSAqL1xuICBlcnJvcjogc3RyaW5nIHwgbnVsbDtcbn1cblxuLyoqXG4gKiBFdmVudG8gZW1pdGlkbyBhbCBlbnZpYXIgcmVhY2Npw7NuLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlYWN0aW9uU3VibWl0RXZlbnQge1xuICB2YWx1ZTogUmVhY3Rpb25WYWx1ZTtcbiAgY29tbWVudD86IHN0cmluZztcbiAgZW50aXR5UmVmOiBFbnRpdHlSZWY7XG4gIGlzVXBkYXRlOiBib29sZWFuO1xufVxuXG4vKipcbiAqIEV2ZW50byBlbWl0aWRvIGFsIGNhbWJpYXIgc2VsZWNjacOzbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZWFjdGlvbkNoYW5nZUV2ZW50IHtcbiAgdmFsdWU6IFJlYWN0aW9uVmFsdWUgfCBudWxsO1xuICBwcmV2aW91c1ZhbHVlOiBSZWFjdGlvblZhbHVlIHwgbnVsbDtcbn1cbiJdfQ==
@@ -128,7 +128,7 @@ export class DocsApiTableComponent {
128
128
  <p class="docs-api-table__empty">No items to display.</p>
129
129
  }
130
130
  </div>
131
- `, isInline: true, styles: [".docs-api-table{--table-bg: var(--ion-background-color, #fff);--table-border: var(--ion-border-color, #e0e0e0);--table-header-bg: #f8f9fa;--table-row-hover: rgba(0, 0, 0, .02);--table-text: var(--ion-text-color, #1a1a1a);--table-text-secondary: #5b6570;--code-bg: #f1f3f5;--code-text: #0d6efd;--type-bg: #e9ecef;--type-text: #495057;margin:1.5rem 0;font-family:var(--ion-font-family, system-ui, -apple-system, sans-serif)}.docs-api-table__title{font-size:1.25rem;font-weight:700;margin:0 0 1rem;color:var(--table-text)}.docs-api-table__wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.docs-api-table__table{width:100%;min-width:620px;border-collapse:separate;border-spacing:0;font-size:.875rem;line-height:1.5;table-layout:fixed}.docs-api-table__th{text-align:left;padding:.625rem .75rem;font-weight:600;font-size:.8125rem;color:var(--table-text-secondary);background:var(--table-header-bg);border-bottom:2px solid var(--table-border);white-space:nowrap}.docs-api-table__th--name{width:120px}.docs-api-table__th--type{width:160px}.docs-api-table__th--default{width:110px}.docs-api-table__th--description{width:auto}.docs-api-table__td{padding:.625rem .75rem;border-bottom:1px solid var(--table-border);vertical-align:top;color:var(--table-text)}.docs-api-table__td--description{color:var(--table-text-secondary);line-height:1.5}.docs-api-table__row{transition:background-color .15s ease}.docs-api-table__row:hover{background:var(--table-row-hover)}.docs-api-table__row:last-child .docs-api-table__td{border-bottom:none}.docs-api-table__row--deprecated{opacity:.65}.docs-api-table__row--deprecated .docs-api-table__code{text-decoration:line-through}.docs-api-table__code{display:inline-block;font-family:SF Mono,Fira Code,Monaco,Consolas,monospace;font-size:.75rem;font-weight:500;color:var(--code-text);background:var(--code-bg);padding:.125rem .375rem;border-radius:4px;word-break:break-word}.docs-api-table__type,.docs-api-table__default{display:inline-block;font-family:SF Mono,Fira Code,Monaco,Consolas,monospace;font-size:.6875rem;font-weight:500;color:var(--type-text);background:var(--type-bg);padding:.1875rem .375rem;border-radius:4px;white-space:normal;word-break:break-word}.docs-api-table__required{color:var(--ion-color-danger, #dc3545);font-weight:700;margin-left:.25rem;font-size:1rem;vertical-align:middle}.docs-api-table__badge{display:inline-block;margin-left:.5rem;padding:.1875rem .5rem;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;border-radius:4px;background:#e9ecef;color:#495057;vertical-align:middle}.docs-api-table__badge--deprecated{background:#fff3cd;color:#856404}.docs-api-table__deprecation-note{margin-top:.5rem;font-size:.75rem;font-style:italic;color:#856404}.docs-api-table__empty{padding:3rem;text-align:center;color:var(--table-text-secondary);font-style:italic}.docs-api-table--bordered .docs-api-table__wrapper{border:1px solid var(--table-border);border-radius:12px;overflow-x:auto;overflow-y:hidden;background:var(--table-bg)}.docs-api-table--bordered .docs-api-table__th:first-child{border-top-left-radius:11px}.docs-api-table--bordered .docs-api-table__th:last-child{border-top-right-radius:11px}@media (max-width: 768px){.docs-api-table__table{display:block}.docs-api-table__table thead{display:none}.docs-api-table__table tbody{display:block}.docs-api-table__row{display:block;padding:1rem;margin-bottom:.5rem;border:1px solid var(--table-border);border-radius:8px;background:var(--table-bg)}.docs-api-table__row:last-child{margin-bottom:0}.docs-api-table__row:hover{background:var(--table-row-hover)}.docs-api-table__td{display:block;padding:.375rem 0;border:none!important}.docs-api-table__td:before{content:attr(data-label);display:block;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--table-text-secondary);margin-bottom:.25rem}.docs-api-table__td--name{padding-bottom:.5rem;margin-bottom:.5rem;border-bottom:1px solid var(--table-border)!important}.docs-api-table__td--description:before{display:none}.docs-api-table--bordered .docs-api-table__wrapper{border:none;border-radius:0;background:transparent}}:host-context(.dark) .docs-api-table,:host-context([color-scheme=dark]) .docs-api-table{--table-bg: #1e1e1e;--table-border: #3a3a3a;--table-header-bg: #252525;--table-row-hover: rgba(255, 255, 255, .03);--table-text: #f4f5f8;--table-text-secondary: #a0a0a0;--code-bg: rgba(56, 139, 253, .15);--code-text: #79b8ff;--type-bg: rgba(255, 255, 255, .08);--type-text: #c9d1d9}:host-context(.dark) .docs-api-table__badge,:host-context([color-scheme=dark]) .docs-api-table__badge{background:#ffffff14;color:#c9d1d9}:host-context(.dark) .docs-api-table__badge--deprecated,:host-context([color-scheme=dark]) .docs-api-table__badge--deprecated{background:#ffc10726;color:#ffc107}:host-context(.dark) .docs-api-table__deprecation-note,:host-context([color-scheme=dark]) .docs-api-table__deprecation-note{color:#ffc107}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
131
+ `, isInline: true, styles: [".docs-api-table{--table-bg: var(--ion-background-color, #fff);--table-border: var(--ion-border-color, #e0e0e0);--table-header-bg: #f8f9fa;--table-row-hover: rgba(0, 0, 0, .02);--table-text: var(--ion-text-color, #1a1a1a);--table-text-secondary: #5b6570;--code-bg: #f1f3f5;--code-text: #0d6efd;--type-bg: #e9ecef;--type-text: #495057;margin:1.5rem 0;font-family:var(--ion-font-family, system-ui, -apple-system, sans-serif)}.docs-api-table__title{font-size:1.25rem;font-weight:700;margin:0 0 1rem;color:var(--table-text)}.docs-api-table__wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.docs-api-table__table{width:100%;min-width:620px;border-collapse:separate;border-spacing:0;font-size:.875rem;line-height:1.5;table-layout:fixed}.docs-api-table__th{text-align:left;padding:.625rem .75rem;font-weight:600;font-size:.8125rem;color:var(--table-text-secondary);background:var(--table-header-bg);border-bottom:2px solid var(--table-border);white-space:nowrap}.docs-api-table__th--name{width:120px}.docs-api-table__th--type{width:160px}.docs-api-table__th--default{width:110px}.docs-api-table__th--description{width:auto}.docs-api-table__td{padding:.625rem .75rem;border-bottom:1px solid var(--table-border);vertical-align:top;color:var(--table-text)}.docs-api-table__td--description{color:var(--table-text-secondary);line-height:1.5}.docs-api-table__row{transition:background-color .15s ease}.docs-api-table__row:hover{background:var(--table-row-hover)}.docs-api-table__row:last-child .docs-api-table__td{border-bottom:none}.docs-api-table__row--deprecated{opacity:.65}.docs-api-table__row--deprecated .docs-api-table__code{text-decoration:line-through}.docs-api-table__code{display:inline-block;font-family:SF Mono,Fira Code,Monaco,Consolas,monospace;font-size:.75rem;font-weight:500;color:var(--code-text);background:var(--code-bg);padding:.125rem .375rem;border-radius:4px;word-break:break-word}.docs-api-table__type,.docs-api-table__default{display:inline-block;font-family:SF Mono,Fira Code,Monaco,Consolas,monospace;font-size:.6875rem;font-weight:500;color:var(--type-text);background:var(--type-bg);padding:.1875rem .375rem;border-radius:4px;white-space:normal;word-break:break-word}.docs-api-table__required{color:var(--ion-color-danger, #dc3545);font-weight:700;margin-left:.25rem;font-size:1rem;vertical-align:middle}.docs-api-table__badge{display:inline-block;margin-left:.5rem;padding:.1875rem .5rem;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;border-radius:4px;background:#e9ecef;color:#495057;vertical-align:middle}.docs-api-table__badge--deprecated{background:#fff3cd;color:#856404}.docs-api-table__deprecation-note{margin-top:.5rem;font-size:.75rem;font-style:italic;color:#856404}.docs-api-table__empty{padding:3rem;text-align:center;color:var(--table-text-secondary);font-style:italic}.docs-api-table--bordered .docs-api-table__wrapper{border:1px solid var(--table-border);border-radius:12px;overflow-x:auto;overflow-y:hidden;background:var(--table-bg)}.docs-api-table--bordered .docs-api-table__th:first-child{border-top-left-radius:11px}.docs-api-table--bordered .docs-api-table__th:last-child{border-top-right-radius:11px}@media (max-width: 768px){.docs-api-table__wrapper{overflow-x:visible}.docs-api-table__table{display:block;min-width:0;width:100%}.docs-api-table__table thead{display:none}.docs-api-table__table tbody{display:block}.docs-api-table__row{display:block;padding:1rem;margin-bottom:.5rem;border:1px solid var(--table-border);border-radius:8px;background:var(--table-bg)}.docs-api-table__row:last-child{margin-bottom:0}.docs-api-table__row:hover{background:var(--table-row-hover)}.docs-api-table__td{display:block;padding:.375rem 0;border:none!important;width:100%}.docs-api-table__td:before{content:attr(data-label);display:block;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--table-text-secondary);margin-bottom:.25rem}.docs-api-table__td--name{padding-bottom:.5rem;margin-bottom:.5rem;border-bottom:1px solid var(--table-border)!important}.docs-api-table__td--description:before{display:none}.docs-api-table--bordered .docs-api-table__wrapper{border:none;border-radius:0;background:transparent;overflow-x:visible}}:host-context(.dark) .docs-api-table,:host-context([color-scheme=dark]) .docs-api-table{--table-bg: #1e1e1e;--table-border: #3a3a3a;--table-header-bg: #252525;--table-row-hover: rgba(255, 255, 255, .03);--table-text: #f4f5f8;--table-text-secondary: #a0a0a0;--code-bg: rgba(56, 139, 253, .15);--code-text: #79b8ff;--type-bg: rgba(255, 255, 255, .08);--type-text: #c9d1d9}:host-context(.dark) .docs-api-table__badge,:host-context([color-scheme=dark]) .docs-api-table__badge{background:#ffffff14;color:#c9d1d9}:host-context(.dark) .docs-api-table__badge--deprecated,:host-context([color-scheme=dark]) .docs-api-table__badge--deprecated{background:#ffc10726;color:#ffc107}:host-context(.dark) .docs-api-table__deprecation-note,:host-context([color-scheme=dark]) .docs-api-table__deprecation-note{color:#ffc107}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
132
132
  }
133
133
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DocsApiTableComponent, decorators: [{
134
134
  type: Component,
@@ -215,8 +215,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
215
215
  <p class="docs-api-table__empty">No items to display.</p>
216
216
  }
217
217
  </div>
218
- `, styles: [".docs-api-table{--table-bg: var(--ion-background-color, #fff);--table-border: var(--ion-border-color, #e0e0e0);--table-header-bg: #f8f9fa;--table-row-hover: rgba(0, 0, 0, .02);--table-text: var(--ion-text-color, #1a1a1a);--table-text-secondary: #5b6570;--code-bg: #f1f3f5;--code-text: #0d6efd;--type-bg: #e9ecef;--type-text: #495057;margin:1.5rem 0;font-family:var(--ion-font-family, system-ui, -apple-system, sans-serif)}.docs-api-table__title{font-size:1.25rem;font-weight:700;margin:0 0 1rem;color:var(--table-text)}.docs-api-table__wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.docs-api-table__table{width:100%;min-width:620px;border-collapse:separate;border-spacing:0;font-size:.875rem;line-height:1.5;table-layout:fixed}.docs-api-table__th{text-align:left;padding:.625rem .75rem;font-weight:600;font-size:.8125rem;color:var(--table-text-secondary);background:var(--table-header-bg);border-bottom:2px solid var(--table-border);white-space:nowrap}.docs-api-table__th--name{width:120px}.docs-api-table__th--type{width:160px}.docs-api-table__th--default{width:110px}.docs-api-table__th--description{width:auto}.docs-api-table__td{padding:.625rem .75rem;border-bottom:1px solid var(--table-border);vertical-align:top;color:var(--table-text)}.docs-api-table__td--description{color:var(--table-text-secondary);line-height:1.5}.docs-api-table__row{transition:background-color .15s ease}.docs-api-table__row:hover{background:var(--table-row-hover)}.docs-api-table__row:last-child .docs-api-table__td{border-bottom:none}.docs-api-table__row--deprecated{opacity:.65}.docs-api-table__row--deprecated .docs-api-table__code{text-decoration:line-through}.docs-api-table__code{display:inline-block;font-family:SF Mono,Fira Code,Monaco,Consolas,monospace;font-size:.75rem;font-weight:500;color:var(--code-text);background:var(--code-bg);padding:.125rem .375rem;border-radius:4px;word-break:break-word}.docs-api-table__type,.docs-api-table__default{display:inline-block;font-family:SF Mono,Fira Code,Monaco,Consolas,monospace;font-size:.6875rem;font-weight:500;color:var(--type-text);background:var(--type-bg);padding:.1875rem .375rem;border-radius:4px;white-space:normal;word-break:break-word}.docs-api-table__required{color:var(--ion-color-danger, #dc3545);font-weight:700;margin-left:.25rem;font-size:1rem;vertical-align:middle}.docs-api-table__badge{display:inline-block;margin-left:.5rem;padding:.1875rem .5rem;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;border-radius:4px;background:#e9ecef;color:#495057;vertical-align:middle}.docs-api-table__badge--deprecated{background:#fff3cd;color:#856404}.docs-api-table__deprecation-note{margin-top:.5rem;font-size:.75rem;font-style:italic;color:#856404}.docs-api-table__empty{padding:3rem;text-align:center;color:var(--table-text-secondary);font-style:italic}.docs-api-table--bordered .docs-api-table__wrapper{border:1px solid var(--table-border);border-radius:12px;overflow-x:auto;overflow-y:hidden;background:var(--table-bg)}.docs-api-table--bordered .docs-api-table__th:first-child{border-top-left-radius:11px}.docs-api-table--bordered .docs-api-table__th:last-child{border-top-right-radius:11px}@media (max-width: 768px){.docs-api-table__table{display:block}.docs-api-table__table thead{display:none}.docs-api-table__table tbody{display:block}.docs-api-table__row{display:block;padding:1rem;margin-bottom:.5rem;border:1px solid var(--table-border);border-radius:8px;background:var(--table-bg)}.docs-api-table__row:last-child{margin-bottom:0}.docs-api-table__row:hover{background:var(--table-row-hover)}.docs-api-table__td{display:block;padding:.375rem 0;border:none!important}.docs-api-table__td:before{content:attr(data-label);display:block;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--table-text-secondary);margin-bottom:.25rem}.docs-api-table__td--name{padding-bottom:.5rem;margin-bottom:.5rem;border-bottom:1px solid var(--table-border)!important}.docs-api-table__td--description:before{display:none}.docs-api-table--bordered .docs-api-table__wrapper{border:none;border-radius:0;background:transparent}}:host-context(.dark) .docs-api-table,:host-context([color-scheme=dark]) .docs-api-table{--table-bg: #1e1e1e;--table-border: #3a3a3a;--table-header-bg: #252525;--table-row-hover: rgba(255, 255, 255, .03);--table-text: #f4f5f8;--table-text-secondary: #a0a0a0;--code-bg: rgba(56, 139, 253, .15);--code-text: #79b8ff;--type-bg: rgba(255, 255, 255, .08);--type-text: #c9d1d9}:host-context(.dark) .docs-api-table__badge,:host-context([color-scheme=dark]) .docs-api-table__badge{background:#ffffff14;color:#c9d1d9}:host-context(.dark) .docs-api-table__badge--deprecated,:host-context([color-scheme=dark]) .docs-api-table__badge--deprecated{background:#ffc10726;color:#ffc107}:host-context(.dark) .docs-api-table__deprecation-note,:host-context([color-scheme=dark]) .docs-api-table__deprecation-note{color:#ffc107}\n"] }]
218
+ `, styles: [".docs-api-table{--table-bg: var(--ion-background-color, #fff);--table-border: var(--ion-border-color, #e0e0e0);--table-header-bg: #f8f9fa;--table-row-hover: rgba(0, 0, 0, .02);--table-text: var(--ion-text-color, #1a1a1a);--table-text-secondary: #5b6570;--code-bg: #f1f3f5;--code-text: #0d6efd;--type-bg: #e9ecef;--type-text: #495057;margin:1.5rem 0;font-family:var(--ion-font-family, system-ui, -apple-system, sans-serif)}.docs-api-table__title{font-size:1.25rem;font-weight:700;margin:0 0 1rem;color:var(--table-text)}.docs-api-table__wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.docs-api-table__table{width:100%;min-width:620px;border-collapse:separate;border-spacing:0;font-size:.875rem;line-height:1.5;table-layout:fixed}.docs-api-table__th{text-align:left;padding:.625rem .75rem;font-weight:600;font-size:.8125rem;color:var(--table-text-secondary);background:var(--table-header-bg);border-bottom:2px solid var(--table-border);white-space:nowrap}.docs-api-table__th--name{width:120px}.docs-api-table__th--type{width:160px}.docs-api-table__th--default{width:110px}.docs-api-table__th--description{width:auto}.docs-api-table__td{padding:.625rem .75rem;border-bottom:1px solid var(--table-border);vertical-align:top;color:var(--table-text)}.docs-api-table__td--description{color:var(--table-text-secondary);line-height:1.5}.docs-api-table__row{transition:background-color .15s ease}.docs-api-table__row:hover{background:var(--table-row-hover)}.docs-api-table__row:last-child .docs-api-table__td{border-bottom:none}.docs-api-table__row--deprecated{opacity:.65}.docs-api-table__row--deprecated .docs-api-table__code{text-decoration:line-through}.docs-api-table__code{display:inline-block;font-family:SF Mono,Fira Code,Monaco,Consolas,monospace;font-size:.75rem;font-weight:500;color:var(--code-text);background:var(--code-bg);padding:.125rem .375rem;border-radius:4px;word-break:break-word}.docs-api-table__type,.docs-api-table__default{display:inline-block;font-family:SF Mono,Fira Code,Monaco,Consolas,monospace;font-size:.6875rem;font-weight:500;color:var(--type-text);background:var(--type-bg);padding:.1875rem .375rem;border-radius:4px;white-space:normal;word-break:break-word}.docs-api-table__required{color:var(--ion-color-danger, #dc3545);font-weight:700;margin-left:.25rem;font-size:1rem;vertical-align:middle}.docs-api-table__badge{display:inline-block;margin-left:.5rem;padding:.1875rem .5rem;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;border-radius:4px;background:#e9ecef;color:#495057;vertical-align:middle}.docs-api-table__badge--deprecated{background:#fff3cd;color:#856404}.docs-api-table__deprecation-note{margin-top:.5rem;font-size:.75rem;font-style:italic;color:#856404}.docs-api-table__empty{padding:3rem;text-align:center;color:var(--table-text-secondary);font-style:italic}.docs-api-table--bordered .docs-api-table__wrapper{border:1px solid var(--table-border);border-radius:12px;overflow-x:auto;overflow-y:hidden;background:var(--table-bg)}.docs-api-table--bordered .docs-api-table__th:first-child{border-top-left-radius:11px}.docs-api-table--bordered .docs-api-table__th:last-child{border-top-right-radius:11px}@media (max-width: 768px){.docs-api-table__wrapper{overflow-x:visible}.docs-api-table__table{display:block;min-width:0;width:100%}.docs-api-table__table thead{display:none}.docs-api-table__table tbody{display:block}.docs-api-table__row{display:block;padding:1rem;margin-bottom:.5rem;border:1px solid var(--table-border);border-radius:8px;background:var(--table-bg)}.docs-api-table__row:last-child{margin-bottom:0}.docs-api-table__row:hover{background:var(--table-row-hover)}.docs-api-table__td{display:block;padding:.375rem 0;border:none!important;width:100%}.docs-api-table__td:before{content:attr(data-label);display:block;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--table-text-secondary);margin-bottom:.25rem}.docs-api-table__td--name{padding-bottom:.5rem;margin-bottom:.5rem;border-bottom:1px solid var(--table-border)!important}.docs-api-table__td--description:before{display:none}.docs-api-table--bordered .docs-api-table__wrapper{border:none;border-radius:0;background:transparent;overflow-x:visible}}:host-context(.dark) .docs-api-table,:host-context([color-scheme=dark]) .docs-api-table{--table-bg: #1e1e1e;--table-border: #3a3a3a;--table-header-bg: #252525;--table-row-hover: rgba(255, 255, 255, .03);--table-text: #f4f5f8;--table-text-secondary: #a0a0a0;--code-bg: rgba(56, 139, 253, .15);--code-text: #79b8ff;--type-bg: rgba(255, 255, 255, .08);--type-text: #c9d1d9}:host-context(.dark) .docs-api-table__badge,:host-context([color-scheme=dark]) .docs-api-table__badge{background:#ffffff14;color:#c9d1d9}:host-context(.dark) .docs-api-table__badge--deprecated,:host-context([color-scheme=dark]) .docs-api-table__badge--deprecated{background:#ffc10726;color:#ffc107}:host-context(.dark) .docs-api-table__deprecation-note,:host-context([color-scheme=dark]) .docs-api-table__deprecation-note{color:#ffc107}\n"] }]
219
219
  }], propDecorators: { props: [{
220
220
  type: Input
221
221
  }] } });
222
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jcy1hcGktdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9kb2NzLWFwaS10YWJsZS9kb2NzLWFwaS10YWJsZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBb0QsdUJBQXVCLEVBQUUsTUFBTSxTQUFTLENBQUM7O0FBRXBHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E4Qkc7QUEyRkgsTUFBTSxPQUFPLHFCQUFxQjtJQTFGbEM7UUEyRlcsVUFBSyxHQUF5QixFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUU1QyxpQkFBWSxHQUFHLHVCQUF1QixDQUFDO0tBU2pEO0lBUEMsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxhQUFhLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRUQsY0FBYyxDQUFDLEdBQWtCO1FBQy9CLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNoQyxDQUFDOytHQVhVLHFCQUFxQjttR0FBckIscUJBQXFCLDBHQXRGdEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUZULCs2SkFwRlMsWUFBWTs7NEZBdUZYLHFCQUFxQjtrQkExRmpDLFNBQVM7K0JBQ0Usb0JBQW9CLGNBQ2xCLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyxZQUNiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1GVDs4QkFJUSxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9jc0FwaVRhYmxlTWV0YWRhdGEsIERvY3NBcGlDb2x1bW4sIERvY3NBcGlJdGVtLCBBUElfVEFCTEVfQ09MVU1OX0xBQkVMUyB9IGZyb20gJy4vdHlwZXMnO1xuXG4vKipcbiAqIHZhbC1kb2NzLWFwaS10YWJsZVxuICpcbiAqIEEgdGFibGUgY29tcG9uZW50IGZvciBkb2N1bWVudGluZyBjb21wb25lbnQgQVBJcyAoaW5wdXRzLCBvdXRwdXRzLCBtZXRob2RzKS5cbiAqXG4gKiBAZXhhbXBsZSBQcm9wZXJ0aWVzIHRhYmxlXG4gKiBgYGBodG1sXG4gKiA8dmFsLWRvY3MtYXBpLXRhYmxlXG4gKiAgIFtwcm9wc109XCJ7XG4gKiAgICAgdGl0bGU6ICdQcm9wZXJ0aWVzJyxcbiAqICAgICBpdGVtczogW1xuICogICAgICAgeyBuYW1lOiAnZGlzYWJsZWQnLCB0eXBlOiAnYm9vbGVhbicsIGRlZmF1bHQ6ICdmYWxzZScsIGRlc2NyaXB0aW9uOiAnRGlzYWJsZXMgdGhlIGJ1dHRvbicgfSxcbiAqICAgICAgIHsgbmFtZTogJ2NvbG9yJywgdHlwZTogJ3N0cmluZycsIGRlZmF1bHQ6ICdwcmltYXJ5JywgZGVzY3JpcHRpb246ICdCdXR0b24gY29sb3IgdmFyaWFudCcgfVxuICogICAgIF1cbiAqICAgfVwiXG4gKiA+PC92YWwtZG9jcy1hcGktdGFibGU+XG4gKiBgYGBcbiAqXG4gKiBAZXhhbXBsZSBFdmVudHMgdGFibGVcbiAqIGBgYGh0bWxcbiAqIDx2YWwtZG9jcy1hcGktdGFibGVcbiAqICAgW3Byb3BzXT1cIntcbiAqICAgICB0aXRsZTogJ0V2ZW50cycsXG4gKiAgICAgY29sdW1uczogWyduYW1lJywgJ3R5cGUnLCAnZGVzY3JpcHRpb24nXSxcbiAqICAgICBpdGVtczogW1xuICogICAgICAgeyBuYW1lOiAnY2xpY2snLCB0eXBlOiAnRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+JywgZGVzY3JpcHRpb246ICdFbWl0dGVkIHdoZW4gY2xpY2tlZCcgfVxuICogICAgIF1cbiAqICAgfVwiXG4gKiA+PC92YWwtZG9jcy1hcGktdGFibGU+XG4gKiBgYGBcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLWRvY3MtYXBpLXRhYmxlJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJkb2NzLWFwaS10YWJsZVwiXG4gICAgICBbY2xhc3NdPVwicHJvcHMuY3NzQ2xhc3NcIlxuICAgICAgW2NsYXNzLmRvY3MtYXBpLXRhYmxlLS1ib3JkZXJlZF09XCJwcm9wcy5ib3JkZXJlZCAhPT0gZmFsc2VcIlxuICAgID5cbiAgICAgIEBpZiAocHJvcHMudGl0bGUpIHtcbiAgICAgICAgPGgzIGNsYXNzPVwiZG9jcy1hcGktdGFibGVfX3RpdGxlXCI+e3sgcHJvcHMudGl0bGUgfX08L2gzPlxuICAgICAgfVxuXG4gICAgICA8ZGl2IGNsYXNzPVwiZG9jcy1hcGktdGFibGVfX3dyYXBwZXJcIj5cbiAgICAgICAgPHRhYmxlIGNsYXNzPVwiZG9jcy1hcGktdGFibGVfX3RhYmxlXCI+XG4gICAgICAgICAgPHRoZWFkPlxuICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICBAZm9yIChjb2wgb2YgZGlzcGxheUNvbHVtbnM7IHRyYWNrIGNvbCkge1xuICAgICAgICAgICAgICAgIDx0aFxuICAgICAgICAgICAgICAgICAgc2NvcGU9XCJjb2xcIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkb2NzLWFwaS10YWJsZV9fdGhcIlxuICAgICAgICAgICAgICAgICAgW2NsYXNzLmRvY3MtYXBpLXRhYmxlX190aC0tbmFtZV09XCJjb2wgPT09ICduYW1lJ1wiXG4gICAgICAgICAgICAgICAgICBbY2xhc3MuZG9jcy1hcGktdGFibGVfX3RoLS10eXBlXT1cImNvbCA9PT0gJ3R5cGUnXCJcbiAgICAgICAgICAgICAgICAgIFtjbGFzcy5kb2NzLWFwaS10YWJsZV9fdGgtLWRlZmF1bHRdPVwiY29sID09PSAnZGVmYXVsdCdcIlxuICAgICAgICAgICAgICAgICAgW2NsYXNzLmRvY3MtYXBpLXRhYmxlX190aC0tZGVzY3JpcHRpb25dPVwiY29sID09PSAnZGVzY3JpcHRpb24nXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7eyBnZXRDb2x1bW5MYWJlbChjb2wpIH19XG4gICAgICAgICAgICAgICAgPC90aD5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICA8L3RoZWFkPlxuICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgIEBmb3IgKGl0ZW0gb2YgcHJvcHMuaXRlbXM7IHRyYWNrIGl0ZW0ubmFtZSkge1xuICAgICAgICAgICAgICA8dHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImRvY3MtYXBpLXRhYmxlX19yb3dcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy5kb2NzLWFwaS10YWJsZV9fcm93LS1kZXByZWNhdGVkXT1cIml0ZW0uZGVwcmVjYXRlZFwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICBAZm9yIChjb2wgb2YgZGlzcGxheUNvbHVtbnM7IHRyYWNrIGNvbCkge1xuICAgICAgICAgICAgICAgICAgPHRkXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZG9jcy1hcGktdGFibGVfX3RkXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmRvY3MtYXBpLXRhYmxlX190ZC0tbmFtZV09XCJjb2wgPT09ICduYW1lJ1wiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy5kb2NzLWFwaS10YWJsZV9fdGQtLXR5cGVdPVwiY29sID09PSAndHlwZSdcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZG9jcy1hcGktdGFibGVfX3RkLS1kZWZhdWx0XT1cImNvbCA9PT0gJ2RlZmF1bHQnXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmRvY3MtYXBpLXRhYmxlX190ZC0tZGVzY3JpcHRpb25dPVwiY29sID09PSAnZGVzY3JpcHRpb24nXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuZGF0YS1sYWJlbF09XCJnZXRDb2x1bW5MYWJlbChjb2wpXCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgQHN3aXRjaCAoY29sKSB7XG4gICAgICAgICAgICAgICAgICAgICAgQGNhc2UgKCduYW1lJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGNvZGUgY2xhc3M9XCJkb2NzLWFwaS10YWJsZV9fY29kZVwiPnt7IGl0ZW0ubmFtZSB9fTwvY29kZT5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5yZXF1aXJlZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImRvY3MtYXBpLXRhYmxlX19yZXF1aXJlZFwiIGFyaWEtbGFiZWw9XCJSZXF1aXJlZFwiIHRpdGxlPVwiUmVxdWlyZWRcIj4qPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLmRlcHJlY2F0ZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJkb2NzLWFwaS10YWJsZV9fYmFkZ2UgZG9jcy1hcGktdGFibGVfX2JhZGdlLS1kZXByZWNhdGVkXCIgYXJpYS1sYWJlbD1cIlRoaXMgcHJvcGVydHkgaXMgZGVwcmVjYXRlZFwiPkRlcHJlY2F0ZWQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIEBjYXNlICgndHlwZScpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxjb2RlIGNsYXNzPVwiZG9jcy1hcGktdGFibGVfX3R5cGVcIj57eyBpdGVtLnR5cGUgfHwgJy0nIH19PC9jb2RlPlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICBAY2FzZSAoJ2RlZmF1bHQnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8Y29kZSBjbGFzcz1cImRvY3MtYXBpLXRhYmxlX19kZWZhdWx0XCI+e3sgaXRlbS5kZWZhdWx0IHx8ICctJyB9fTwvY29kZT5cbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgQGNhc2UgKCdkZXNjcmlwdGlvbicpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IGl0ZW0uZGVzY3JpcHRpb24gfHwgJy0nIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLmRlcHJlY2F0ZWQgJiYgaXRlbS5kZXByZWNhdGlvbk5vdGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRvY3MtYXBpLXRhYmxlX19kZXByZWNhdGlvbi1ub3RlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgaXRlbS5kZXByZWNhdGlvbk5vdGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIEBjYXNlICgncmVxdWlyZWQnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBpdGVtLnJlcXVpcmVkID8gJ1llcycgOiAnTm8nIH19XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICA8L3RhYmxlPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIEBpZiAocHJvcHMuaXRlbXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIDxwIGNsYXNzPVwiZG9jcy1hcGktdGFibGVfX2VtcHR5XCI+Tm8gaXRlbXMgdG8gZGlzcGxheS48L3A+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL2RvY3MtYXBpLXRhYmxlLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIERvY3NBcGlUYWJsZUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHByb3BzOiBEb2NzQXBpVGFibGVNZXRhZGF0YSA9IHsgaXRlbXM6IFtdIH07XG5cbiAgcmVhZG9ubHkgY29sdW1uTGFiZWxzID0gQVBJX1RBQkxFX0NPTFVNTl9MQUJFTFM7XG5cbiAgZ2V0IGRpc3BsYXlDb2x1bW5zKCk6IERvY3NBcGlDb2x1bW5bXSB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMuY29sdW1ucyB8fCBbJ25hbWUnLCAndHlwZScsICdkZWZhdWx0JywgJ2Rlc2NyaXB0aW9uJ107XG4gIH1cblxuICBnZXRDb2x1bW5MYWJlbChjb2w6IERvY3NBcGlDb2x1bW4pOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmNvbHVtbkxhYmVsc1tjb2xdO1xuICB9XG59XG4iXX0=
222
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jcy1hcGktdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9kb2NzLWFwaS10YWJsZS9kb2NzLWFwaS10YWJsZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBb0QsdUJBQXVCLEVBQUUsTUFBTSxTQUFTLENBQUM7O0FBRXBHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E4Qkc7QUEyRkgsTUFBTSxPQUFPLHFCQUFxQjtJQTFGbEM7UUEyRlcsVUFBSyxHQUF5QixFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUU1QyxpQkFBWSxHQUFHLHVCQUF1QixDQUFDO0tBU2pEO0lBUEMsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxhQUFhLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRUQsY0FBYyxDQUFDLEdBQWtCO1FBQy9CLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNoQyxDQUFDOytHQVhVLHFCQUFxQjttR0FBckIscUJBQXFCLDBHQXRGdEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUZULGdoS0FwRlMsWUFBWTs7NEZBdUZYLHFCQUFxQjtrQkExRmpDLFNBQVM7K0JBQ0Usb0JBQW9CLGNBQ2xCLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyxZQUNiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1GVDs4QkFJUSxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9jc0FwaVRhYmxlTWV0YWRhdGEsIERvY3NBcGlDb2x1bW4sIERvY3NBcGlJdGVtLCBBUElfVEFCTEVfQ09MVU1OX0xBQkVMUyB9IGZyb20gJy4vdHlwZXMnO1xuXG4vKipcbiAqIHZhbC1kb2NzLWFwaS10YWJsZVxuICpcbiAqIEEgdGFibGUgY29tcG9uZW50IGZvciBkb2N1bWVudGluZyBjb21wb25lbnQgQVBJcyAoaW5wdXRzLCBvdXRwdXRzLCBtZXRob2RzKS5cbiAqXG4gKiBAZXhhbXBsZSBQcm9wZXJ0aWVzIHRhYmxlXG4gKiBgYGBodG1sXG4gKiA8dmFsLWRvY3MtYXBpLXRhYmxlXG4gKiAgIFtwcm9wc109XCJ7XG4gKiAgICAgdGl0bGU6ICdQcm9wZXJ0aWVzJyxcbiAqICAgICBpdGVtczogW1xuICogICAgICAgeyBuYW1lOiAnZGlzYWJsZWQnLCB0eXBlOiAnYm9vbGVhbicsIGRlZmF1bHQ6ICdmYWxzZScsIGRlc2NyaXB0aW9uOiAnRGlzYWJsZXMgdGhlIGJ1dHRvbicgfSxcbiAqICAgICAgIHsgbmFtZTogJ2NvbG9yJywgdHlwZTogJ3N0cmluZycsIGRlZmF1bHQ6ICdwcmltYXJ5JywgZGVzY3JpcHRpb246ICdCdXR0b24gY29sb3IgdmFyaWFudCcgfVxuICogICAgIF1cbiAqICAgfVwiXG4gKiA+PC92YWwtZG9jcy1hcGktdGFibGU+XG4gKiBgYGBcbiAqXG4gKiBAZXhhbXBsZSBFdmVudHMgdGFibGVcbiAqIGBgYGh0bWxcbiAqIDx2YWwtZG9jcy1hcGktdGFibGVcbiAqICAgW3Byb3BzXT1cIntcbiAqICAgICB0aXRsZTogJ0V2ZW50cycsXG4gKiAgICAgY29sdW1uczogWyduYW1lJywgJ3R5cGUnLCAnZGVzY3JpcHRpb24nXSxcbiAqICAgICBpdGVtczogW1xuICogICAgICAgeyBuYW1lOiAnY2xpY2snLCB0eXBlOiAnRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+JywgZGVzY3JpcHRpb246ICdFbWl0dGVkIHdoZW4gY2xpY2tlZCcgfVxuICogICAgIF1cbiAqICAgfVwiXG4gKiA+PC92YWwtZG9jcy1hcGktdGFibGU+XG4gKiBgYGBcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLWRvY3MtYXBpLXRhYmxlJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJkb2NzLWFwaS10YWJsZVwiXG4gICAgICBbY2xhc3NdPVwicHJvcHMuY3NzQ2xhc3NcIlxuICAgICAgW2NsYXNzLmRvY3MtYXBpLXRhYmxlLS1ib3JkZXJlZF09XCJwcm9wcy5ib3JkZXJlZCAhPT0gZmFsc2VcIlxuICAgID5cbiAgICAgIEBpZiAocHJvcHMudGl0bGUpIHtcbiAgICAgICAgPGgzIGNsYXNzPVwiZG9jcy1hcGktdGFibGVfX3RpdGxlXCI+e3sgcHJvcHMudGl0bGUgfX08L2gzPlxuICAgICAgfVxuXG4gICAgICA8ZGl2IGNsYXNzPVwiZG9jcy1hcGktdGFibGVfX3dyYXBwZXJcIj5cbiAgICAgICAgPHRhYmxlIGNsYXNzPVwiZG9jcy1hcGktdGFibGVfX3RhYmxlXCI+XG4gICAgICAgICAgPHRoZWFkPlxuICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICBAZm9yIChjb2wgb2YgZGlzcGxheUNvbHVtbnM7IHRyYWNrIGNvbCkge1xuICAgICAgICAgICAgICAgIDx0aFxuICAgICAgICAgICAgICAgICAgc2NvcGU9XCJjb2xcIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkb2NzLWFwaS10YWJsZV9fdGhcIlxuICAgICAgICAgICAgICAgICAgW2NsYXNzLmRvY3MtYXBpLXRhYmxlX190aC0tbmFtZV09XCJjb2wgPT09ICduYW1lJ1wiXG4gICAgICAgICAgICAgICAgICBbY2xhc3MuZG9jcy1hcGktdGFibGVfX3RoLS10eXBlXT1cImNvbCA9PT0gJ3R5cGUnXCJcbiAgICAgICAgICAgICAgICAgIFtjbGFzcy5kb2NzLWFwaS10YWJsZV9fdGgtLWRlZmF1bHRdPVwiY29sID09PSAnZGVmYXVsdCdcIlxuICAgICAgICAgICAgICAgICAgW2NsYXNzLmRvY3MtYXBpLXRhYmxlX190aC0tZGVzY3JpcHRpb25dPVwiY29sID09PSAnZGVzY3JpcHRpb24nXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7eyBnZXRDb2x1bW5MYWJlbChjb2wpIH19XG4gICAgICAgICAgICAgICAgPC90aD5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICA8L3RoZWFkPlxuICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgIEBmb3IgKGl0ZW0gb2YgcHJvcHMuaXRlbXM7IHRyYWNrIGl0ZW0ubmFtZSkge1xuICAgICAgICAgICAgICA8dHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImRvY3MtYXBpLXRhYmxlX19yb3dcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy5kb2NzLWFwaS10YWJsZV9fcm93LS1kZXByZWNhdGVkXT1cIml0ZW0uZGVwcmVjYXRlZFwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICBAZm9yIChjb2wgb2YgZGlzcGxheUNvbHVtbnM7IHRyYWNrIGNvbCkge1xuICAgICAgICAgICAgICAgICAgPHRkXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZG9jcy1hcGktdGFibGVfX3RkXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmRvY3MtYXBpLXRhYmxlX190ZC0tbmFtZV09XCJjb2wgPT09ICduYW1lJ1wiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy5kb2NzLWFwaS10YWJsZV9fdGQtLXR5cGVdPVwiY29sID09PSAndHlwZSdcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZG9jcy1hcGktdGFibGVfX3RkLS1kZWZhdWx0XT1cImNvbCA9PT0gJ2RlZmF1bHQnXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmRvY3MtYXBpLXRhYmxlX190ZC0tZGVzY3JpcHRpb25dPVwiY29sID09PSAnZGVzY3JpcHRpb24nXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuZGF0YS1sYWJlbF09XCJnZXRDb2x1bW5MYWJlbChjb2wpXCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgQHN3aXRjaCAoY29sKSB7XG4gICAgICAgICAgICAgICAgICAgICAgQGNhc2UgKCduYW1lJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGNvZGUgY2xhc3M9XCJkb2NzLWFwaS10YWJsZV9fY29kZVwiPnt7IGl0ZW0ubmFtZSB9fTwvY29kZT5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5yZXF1aXJlZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImRvY3MtYXBpLXRhYmxlX19yZXF1aXJlZFwiIGFyaWEtbGFiZWw9XCJSZXF1aXJlZFwiIHRpdGxlPVwiUmVxdWlyZWRcIj4qPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLmRlcHJlY2F0ZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJkb2NzLWFwaS10YWJsZV9fYmFkZ2UgZG9jcy1hcGktdGFibGVfX2JhZGdlLS1kZXByZWNhdGVkXCIgYXJpYS1sYWJlbD1cIlRoaXMgcHJvcGVydHkgaXMgZGVwcmVjYXRlZFwiPkRlcHJlY2F0ZWQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIEBjYXNlICgndHlwZScpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxjb2RlIGNsYXNzPVwiZG9jcy1hcGktdGFibGVfX3R5cGVcIj57eyBpdGVtLnR5cGUgfHwgJy0nIH19PC9jb2RlPlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICBAY2FzZSAoJ2RlZmF1bHQnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8Y29kZSBjbGFzcz1cImRvY3MtYXBpLXRhYmxlX19kZWZhdWx0XCI+e3sgaXRlbS5kZWZhdWx0IHx8ICctJyB9fTwvY29kZT5cbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgQGNhc2UgKCdkZXNjcmlwdGlvbicpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IGl0ZW0uZGVzY3JpcHRpb24gfHwgJy0nIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLmRlcHJlY2F0ZWQgJiYgaXRlbS5kZXByZWNhdGlvbk5vdGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRvY3MtYXBpLXRhYmxlX19kZXByZWNhdGlvbi1ub3RlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgaXRlbS5kZXByZWNhdGlvbk5vdGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIEBjYXNlICgncmVxdWlyZWQnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBpdGVtLnJlcXVpcmVkID8gJ1llcycgOiAnTm8nIH19XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICA8L3RhYmxlPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIEBpZiAocHJvcHMuaXRlbXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIDxwIGNsYXNzPVwiZG9jcy1hcGktdGFibGVfX2VtcHR5XCI+Tm8gaXRlbXMgdG8gZGlzcGxheS48L3A+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL2RvY3MtYXBpLXRhYmxlLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIERvY3NBcGlUYWJsZUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHByb3BzOiBEb2NzQXBpVGFibGVNZXRhZGF0YSA9IHsgaXRlbXM6IFtdIH07XG5cbiAgcmVhZG9ubHkgY29sdW1uTGFiZWxzID0gQVBJX1RBQkxFX0NPTFVNTl9MQUJFTFM7XG5cbiAgZ2V0IGRpc3BsYXlDb2x1bW5zKCk6IERvY3NBcGlDb2x1bW5bXSB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMuY29sdW1ucyB8fCBbJ25hbWUnLCAndHlwZScsICdkZWZhdWx0JywgJ2Rlc2NyaXB0aW9uJ107XG4gIH1cblxuICBnZXRDb2x1bW5MYWJlbChjb2w6IERvY3NBcGlDb2x1bW4pOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmNvbHVtbkxhYmVsc1tjb2xdO1xuICB9XG59XG4iXX0=
@@ -140,7 +140,7 @@ export class DocsPageComponent {
140
140
  </aside>
141
141
  }
142
142
  </div>
143
- `, isInline: true, styles: [".docs-page{display:grid;grid-template-columns:1fr;gap:2rem;max-width:1400px;margin:0 auto;padding:2rem 1.5rem}@media (min-width: 1200px){.docs-page{grid-template-columns:1fr 220px;padding:2rem}}.docs-page__content{min-width:0;max-width:900px}.docs-page__header{margin-bottom:2rem}.docs-page__title-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.docs-page__title{margin:0;font-size:2rem;font-weight:700;color:var(--ion-text-color, #1a1a1a);line-height:1.2}@media (min-width: 768px){.docs-page__title{font-size:2.5rem}}.docs-page__badge{display:inline-flex;align-items:center;padding:.25rem .625rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;border-radius:4px;background:#00000014;color:var(--ion-color-medium-shade)}.docs-page__badge--success{background:var(--ion-color-success-tint, #e8f5e9);color:var(--ion-color-success-shade, #2e7d32)}.docs-page__badge--warning{background:var(--ion-color-warning-tint, #fff3e0);color:var(--ion-color-warning-shade, #e65100)}.docs-page__badge--danger{background:var(--ion-color-danger-tint, #ffebee);color:var(--ion-color-danger-shade, #c62828)}.docs-page__lead{margin:1rem 0 0;font-size:1.125rem;line-height:1.7;color:var(--ion-color-medium, #666)}.docs-page__sections>*:last-child{margin-bottom:0}.docs-page__toc{display:none}@media (min-width: 1200px){.docs-page__toc{display:block;position:sticky;top:2rem;height:fit-content;max-height:calc(100vh - 4rem);overflow-y:auto}}.docs-page__sections h2{font-size:1.5rem;font-weight:600;margin:0 0 1rem;color:var(--ion-text-color, #1a1a1a);scroll-margin-top:2rem}.docs-page__sections h3{font-size:1.125rem;font-weight:600;margin:1.5rem 0 1rem;color:var(--ion-text-color, #1a1a1a)}.docs-page__sections h4{font-size:1rem;font-weight:600;margin:1.25rem 0 .75rem;color:var(--ion-text-color, #1a1a1a)}.docs-page__sections p{line-height:1.7;color:var(--ion-text-color, #1a1a1a);margin:0 0 1rem}.docs-page__sections ul,.docs-page__sections ol{padding-left:1.5rem;margin:0 0 1rem}.docs-page__sections li{margin-bottom:.5rem;line-height:1.6;color:var(--ion-text-color, #1a1a1a)}.docs-page__sections a{color:var(--ion-color-primary, #3880ff);text-decoration:none}.docs-page__sections a:hover{text-decoration:underline}.docs-page__sections code:not([class*=language-]){background:#0000000f;padding:.125rem .375rem;border-radius:4px;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.875em}.docs-page__sections pre:not([class*=language-]){background:#0000000a;padding:1rem;border-radius:8px;overflow-x:auto;margin:0 0 1rem}.docs-page__sections pre:not([class*=language-]) code{background:none;padding:0}.docs-page__sections table{width:100%;border-collapse:collapse;margin:0 0 1rem;font-size:.875rem}.docs-page__sections th,.docs-page__sections td{padding:.75rem;text-align:left;border-bottom:1px solid rgba(0,0,0,.1)}.docs-page__sections th{font-weight:600;background:#00000005}.docs-page__sections blockquote{margin:0 0 1rem;padding:1rem 1.5rem;border-left:4px solid var(--ion-color-primary, #3880ff);background:#00000005;border-radius:0 8px 8px 0}.docs-page__sections blockquote p:last-child{margin-bottom:0}.docs-page__sections img{max-width:100%;height:auto;border-radius:8px}.docs-page__sections hr{border:none;border-top:1px solid rgba(0,0,0,.1);margin:2rem 0}.docs-page__sections strong{font-weight:600}.docs-page__sections section{margin-bottom:2rem}:host-context(.dark) .docs-page__badge,:host-context([color-scheme=\"dark\"]) .docs-page__badge{background:#ffffff1a;color:var(--ion-color-medium)}:host-context(.dark) .docs-page__badge--success,:host-context([color-scheme=\"dark\"]) .docs-page__badge--success{background:#2e7d3233;color:#81c784}:host-context(.dark) .docs-page__badge--warning,:host-context([color-scheme=\"dark\"]) .docs-page__badge--warning{background:#e6510033;color:#ffb74d}:host-context(.dark) .docs-page__badge--danger,:host-context([color-scheme=\"dark\"]) .docs-page__badge--danger{background:#c6282833;color:#e57373}:host-context(.dark) .docs-page__sections code:not([class*=language-]),:host-context([color-scheme=\"dark\"]) .docs-page__sections code:not([class*=language-]){background:#ffffff1a}:host-context(.dark) .docs-page__sections pre:not([class*=language-]),:host-context([color-scheme=\"dark\"]) .docs-page__sections pre:not([class*=language-]){background:#ffffff0f}:host-context(.dark) .docs-page__sections th,:host-context([color-scheme=\"dark\"]) .docs-page__sections th{background:#ffffff0a}:host-context(.dark) .docs-page__sections th,:host-context(.dark) .docs-page__sections td,:host-context([color-scheme=\"dark\"]) .docs-page__sections th,:host-context([color-scheme=\"dark\"]) .docs-page__sections td{border-color:#ffffff1a}:host-context(.dark) .docs-page__sections blockquote,:host-context([color-scheme=\"dark\"]) .docs-page__sections blockquote{background:#ffffff0a}:host-context(.dark) .docs-page__sections hr,:host-context([color-scheme=\"dark\"]) .docs-page__sections hr{border-color:#ffffff1a}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DocsNavLinksComponent, selector: "val-docs-nav-links", inputs: ["props"], outputs: ["navigate"] }, { kind: "component", type: DocsTocComponent, selector: "val-docs-toc", inputs: ["props"], outputs: ["sectionChange"] }] }); }
143
+ `, isInline: true, styles: [".docs-page{display:grid;grid-template-columns:1fr;gap:2rem;max-width:1400px;margin:0 auto;padding:2rem 1.5rem}@media (min-width: 1200px){.docs-page{grid-template-columns:1fr 220px;padding:2rem}}.docs-page__content{min-width:0;max-width:900px}.docs-page__header{margin-bottom:2rem}.docs-page__title-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.docs-page__title{margin:0;font-size:2rem;font-weight:700;color:var(--ion-text-color, #1a1a1a);line-height:1.2}@media (min-width: 768px){.docs-page__title{font-size:2.5rem}}.docs-page__badge{display:inline-flex;align-items:center;padding:.25rem .5rem;font-size:.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em;border-radius:4px;background:#0000000a;color:#888}.docs-page__badge--success{background:var(--ion-color-success-tint, #e8f5e9);color:var(--ion-color-success-shade, #2e7d32)}.docs-page__badge--warning{background:var(--ion-color-warning-tint, #fff3e0);color:var(--ion-color-warning-shade, #e65100)}.docs-page__badge--danger{background:var(--ion-color-danger-tint, #ffebee);color:var(--ion-color-danger-shade, #c62828)}.docs-page__lead{margin:1rem 0 0;font-size:1.125rem;line-height:1.7;color:var(--ion-color-medium, #666)}.docs-page__sections>*:last-child{margin-bottom:0}.docs-page__toc{display:none}@media (min-width: 1200px){.docs-page__toc{display:block;position:sticky;top:2rem;height:fit-content;max-height:calc(100vh - 4rem);overflow-y:auto}}.docs-page__sections h2{font-size:1.5rem;font-weight:600;margin:0 0 1rem;color:var(--ion-text-color, #1a1a1a);scroll-margin-top:2rem}.docs-page__sections h3{font-size:1.125rem;font-weight:600;margin:1.5rem 0 1rem;color:var(--ion-text-color, #1a1a1a)}.docs-page__sections h4{font-size:1rem;font-weight:600;margin:1.25rem 0 .75rem;color:var(--ion-text-color, #1a1a1a)}.docs-page__sections p{line-height:1.7;color:var(--ion-text-color, #1a1a1a);margin:0 0 1rem}.docs-page__sections ul,.docs-page__sections ol{padding-left:1.5rem;margin:0 0 1rem}.docs-page__sections li{margin-bottom:.5rem;line-height:1.6;color:var(--ion-text-color, #1a1a1a)}.docs-page__sections a{color:var(--ion-color-primary, #3880ff);text-decoration:none}.docs-page__sections a:hover{text-decoration:underline}.docs-page__sections code:not([class*=language-]){background:#0000000f;padding:.125rem .375rem;border-radius:4px;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.875em}.docs-page__sections pre:not([class*=language-]){background:#0000000a;padding:1rem;border-radius:8px;overflow-x:auto;margin:0 0 1rem}.docs-page__sections pre:not([class*=language-]) code{background:none;padding:0}.docs-page__sections table{width:100%;border-collapse:collapse;margin:0 0 1rem;font-size:.875rem}.docs-page__sections th,.docs-page__sections td{padding:.75rem;text-align:left;border-bottom:1px solid rgba(0,0,0,.1)}.docs-page__sections th{font-weight:600;background:#00000005}.docs-page__sections blockquote{margin:0 0 1rem;padding:1rem 1.5rem;border-left:4px solid var(--ion-color-primary, #3880ff);background:#00000005;border-radius:0 8px 8px 0}.docs-page__sections blockquote p:last-child{margin-bottom:0}.docs-page__sections img{max-width:100%;height:auto;border-radius:8px}.docs-page__sections hr{border:none;border-top:1px solid rgba(0,0,0,.1);margin:2rem 0}.docs-page__sections strong{font-weight:600}.docs-page__sections section{margin-bottom:2rem}:host-context(.dark) .docs-page__badge,:host-context([color-scheme=\"dark\"]) .docs-page__badge{background:#ffffff0f;color:#999}:host-context(.dark) .docs-page__badge--success,:host-context([color-scheme=\"dark\"]) .docs-page__badge--success{background:#2e7d3233;color:#81c784}:host-context(.dark) .docs-page__badge--warning,:host-context([color-scheme=\"dark\"]) .docs-page__badge--warning{background:#e6510033;color:#ffb74d}:host-context(.dark) .docs-page__badge--danger,:host-context([color-scheme=\"dark\"]) .docs-page__badge--danger{background:#c6282833;color:#e57373}:host-context(.dark) .docs-page__sections code:not([class*=language-]),:host-context([color-scheme=\"dark\"]) .docs-page__sections code:not([class*=language-]){background:#ffffff1a}:host-context(.dark) .docs-page__sections pre:not([class*=language-]),:host-context([color-scheme=\"dark\"]) .docs-page__sections pre:not([class*=language-]){background:#ffffff0f}:host-context(.dark) .docs-page__sections th,:host-context([color-scheme=\"dark\"]) .docs-page__sections th{background:#ffffff0a}:host-context(.dark) .docs-page__sections th,:host-context(.dark) .docs-page__sections td,:host-context([color-scheme=\"dark\"]) .docs-page__sections th,:host-context([color-scheme=\"dark\"]) .docs-page__sections td{border-color:#ffffff1a}:host-context(.dark) .docs-page__sections blockquote,:host-context([color-scheme=\"dark\"]) .docs-page__sections blockquote{background:#ffffff0a}:host-context(.dark) .docs-page__sections hr,:host-context([color-scheme=\"dark\"]) .docs-page__sections hr{border-color:#ffffff1a}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DocsNavLinksComponent, selector: "val-docs-nav-links", inputs: ["props"], outputs: ["navigate"] }, { kind: "component", type: DocsTocComponent, selector: "val-docs-toc", inputs: ["props"], outputs: ["sectionChange"] }] }); }
144
144
  }
145
145
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DocsPageComponent, decorators: [{
146
146
  type: Component,
@@ -181,8 +181,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
181
181
  </aside>
182
182
  }
183
183
  </div>
184
- `, styles: [".docs-page{display:grid;grid-template-columns:1fr;gap:2rem;max-width:1400px;margin:0 auto;padding:2rem 1.5rem}@media (min-width: 1200px){.docs-page{grid-template-columns:1fr 220px;padding:2rem}}.docs-page__content{min-width:0;max-width:900px}.docs-page__header{margin-bottom:2rem}.docs-page__title-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.docs-page__title{margin:0;font-size:2rem;font-weight:700;color:var(--ion-text-color, #1a1a1a);line-height:1.2}@media (min-width: 768px){.docs-page__title{font-size:2.5rem}}.docs-page__badge{display:inline-flex;align-items:center;padding:.25rem .625rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;border-radius:4px;background:#00000014;color:var(--ion-color-medium-shade)}.docs-page__badge--success{background:var(--ion-color-success-tint, #e8f5e9);color:var(--ion-color-success-shade, #2e7d32)}.docs-page__badge--warning{background:var(--ion-color-warning-tint, #fff3e0);color:var(--ion-color-warning-shade, #e65100)}.docs-page__badge--danger{background:var(--ion-color-danger-tint, #ffebee);color:var(--ion-color-danger-shade, #c62828)}.docs-page__lead{margin:1rem 0 0;font-size:1.125rem;line-height:1.7;color:var(--ion-color-medium, #666)}.docs-page__sections>*:last-child{margin-bottom:0}.docs-page__toc{display:none}@media (min-width: 1200px){.docs-page__toc{display:block;position:sticky;top:2rem;height:fit-content;max-height:calc(100vh - 4rem);overflow-y:auto}}.docs-page__sections h2{font-size:1.5rem;font-weight:600;margin:0 0 1rem;color:var(--ion-text-color, #1a1a1a);scroll-margin-top:2rem}.docs-page__sections h3{font-size:1.125rem;font-weight:600;margin:1.5rem 0 1rem;color:var(--ion-text-color, #1a1a1a)}.docs-page__sections h4{font-size:1rem;font-weight:600;margin:1.25rem 0 .75rem;color:var(--ion-text-color, #1a1a1a)}.docs-page__sections p{line-height:1.7;color:var(--ion-text-color, #1a1a1a);margin:0 0 1rem}.docs-page__sections ul,.docs-page__sections ol{padding-left:1.5rem;margin:0 0 1rem}.docs-page__sections li{margin-bottom:.5rem;line-height:1.6;color:var(--ion-text-color, #1a1a1a)}.docs-page__sections a{color:var(--ion-color-primary, #3880ff);text-decoration:none}.docs-page__sections a:hover{text-decoration:underline}.docs-page__sections code:not([class*=language-]){background:#0000000f;padding:.125rem .375rem;border-radius:4px;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.875em}.docs-page__sections pre:not([class*=language-]){background:#0000000a;padding:1rem;border-radius:8px;overflow-x:auto;margin:0 0 1rem}.docs-page__sections pre:not([class*=language-]) code{background:none;padding:0}.docs-page__sections table{width:100%;border-collapse:collapse;margin:0 0 1rem;font-size:.875rem}.docs-page__sections th,.docs-page__sections td{padding:.75rem;text-align:left;border-bottom:1px solid rgba(0,0,0,.1)}.docs-page__sections th{font-weight:600;background:#00000005}.docs-page__sections blockquote{margin:0 0 1rem;padding:1rem 1.5rem;border-left:4px solid var(--ion-color-primary, #3880ff);background:#00000005;border-radius:0 8px 8px 0}.docs-page__sections blockquote p:last-child{margin-bottom:0}.docs-page__sections img{max-width:100%;height:auto;border-radius:8px}.docs-page__sections hr{border:none;border-top:1px solid rgba(0,0,0,.1);margin:2rem 0}.docs-page__sections strong{font-weight:600}.docs-page__sections section{margin-bottom:2rem}:host-context(.dark) .docs-page__badge,:host-context([color-scheme=\"dark\"]) .docs-page__badge{background:#ffffff1a;color:var(--ion-color-medium)}:host-context(.dark) .docs-page__badge--success,:host-context([color-scheme=\"dark\"]) .docs-page__badge--success{background:#2e7d3233;color:#81c784}:host-context(.dark) .docs-page__badge--warning,:host-context([color-scheme=\"dark\"]) .docs-page__badge--warning{background:#e6510033;color:#ffb74d}:host-context(.dark) .docs-page__badge--danger,:host-context([color-scheme=\"dark\"]) .docs-page__badge--danger{background:#c6282833;color:#e57373}:host-context(.dark) .docs-page__sections code:not([class*=language-]),:host-context([color-scheme=\"dark\"]) .docs-page__sections code:not([class*=language-]){background:#ffffff1a}:host-context(.dark) .docs-page__sections pre:not([class*=language-]),:host-context([color-scheme=\"dark\"]) .docs-page__sections pre:not([class*=language-]){background:#ffffff0f}:host-context(.dark) .docs-page__sections th,:host-context([color-scheme=\"dark\"]) .docs-page__sections th{background:#ffffff0a}:host-context(.dark) .docs-page__sections th,:host-context(.dark) .docs-page__sections td,:host-context([color-scheme=\"dark\"]) .docs-page__sections th,:host-context([color-scheme=\"dark\"]) .docs-page__sections td{border-color:#ffffff1a}:host-context(.dark) .docs-page__sections blockquote,:host-context([color-scheme=\"dark\"]) .docs-page__sections blockquote{background:#ffffff0a}:host-context(.dark) .docs-page__sections hr,:host-context([color-scheme=\"dark\"]) .docs-page__sections hr{border-color:#ffffff1a}\n"] }]
184
+ `, styles: [".docs-page{display:grid;grid-template-columns:1fr;gap:2rem;max-width:1400px;margin:0 auto;padding:2rem 1.5rem}@media (min-width: 1200px){.docs-page{grid-template-columns:1fr 220px;padding:2rem}}.docs-page__content{min-width:0;max-width:900px}.docs-page__header{margin-bottom:2rem}.docs-page__title-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.docs-page__title{margin:0;font-size:2rem;font-weight:700;color:var(--ion-text-color, #1a1a1a);line-height:1.2}@media (min-width: 768px){.docs-page__title{font-size:2.5rem}}.docs-page__badge{display:inline-flex;align-items:center;padding:.25rem .5rem;font-size:.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em;border-radius:4px;background:#0000000a;color:#888}.docs-page__badge--success{background:var(--ion-color-success-tint, #e8f5e9);color:var(--ion-color-success-shade, #2e7d32)}.docs-page__badge--warning{background:var(--ion-color-warning-tint, #fff3e0);color:var(--ion-color-warning-shade, #e65100)}.docs-page__badge--danger{background:var(--ion-color-danger-tint, #ffebee);color:var(--ion-color-danger-shade, #c62828)}.docs-page__lead{margin:1rem 0 0;font-size:1.125rem;line-height:1.7;color:var(--ion-color-medium, #666)}.docs-page__sections>*:last-child{margin-bottom:0}.docs-page__toc{display:none}@media (min-width: 1200px){.docs-page__toc{display:block;position:sticky;top:2rem;height:fit-content;max-height:calc(100vh - 4rem);overflow-y:auto}}.docs-page__sections h2{font-size:1.5rem;font-weight:600;margin:0 0 1rem;color:var(--ion-text-color, #1a1a1a);scroll-margin-top:2rem}.docs-page__sections h3{font-size:1.125rem;font-weight:600;margin:1.5rem 0 1rem;color:var(--ion-text-color, #1a1a1a)}.docs-page__sections h4{font-size:1rem;font-weight:600;margin:1.25rem 0 .75rem;color:var(--ion-text-color, #1a1a1a)}.docs-page__sections p{line-height:1.7;color:var(--ion-text-color, #1a1a1a);margin:0 0 1rem}.docs-page__sections ul,.docs-page__sections ol{padding-left:1.5rem;margin:0 0 1rem}.docs-page__sections li{margin-bottom:.5rem;line-height:1.6;color:var(--ion-text-color, #1a1a1a)}.docs-page__sections a{color:var(--ion-color-primary, #3880ff);text-decoration:none}.docs-page__sections a:hover{text-decoration:underline}.docs-page__sections code:not([class*=language-]){background:#0000000f;padding:.125rem .375rem;border-radius:4px;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.875em}.docs-page__sections pre:not([class*=language-]){background:#0000000a;padding:1rem;border-radius:8px;overflow-x:auto;margin:0 0 1rem}.docs-page__sections pre:not([class*=language-]) code{background:none;padding:0}.docs-page__sections table{width:100%;border-collapse:collapse;margin:0 0 1rem;font-size:.875rem}.docs-page__sections th,.docs-page__sections td{padding:.75rem;text-align:left;border-bottom:1px solid rgba(0,0,0,.1)}.docs-page__sections th{font-weight:600;background:#00000005}.docs-page__sections blockquote{margin:0 0 1rem;padding:1rem 1.5rem;border-left:4px solid var(--ion-color-primary, #3880ff);background:#00000005;border-radius:0 8px 8px 0}.docs-page__sections blockquote p:last-child{margin-bottom:0}.docs-page__sections img{max-width:100%;height:auto;border-radius:8px}.docs-page__sections hr{border:none;border-top:1px solid rgba(0,0,0,.1);margin:2rem 0}.docs-page__sections strong{font-weight:600}.docs-page__sections section{margin-bottom:2rem}:host-context(.dark) .docs-page__badge,:host-context([color-scheme=\"dark\"]) .docs-page__badge{background:#ffffff0f;color:#999}:host-context(.dark) .docs-page__badge--success,:host-context([color-scheme=\"dark\"]) .docs-page__badge--success{background:#2e7d3233;color:#81c784}:host-context(.dark) .docs-page__badge--warning,:host-context([color-scheme=\"dark\"]) .docs-page__badge--warning{background:#e6510033;color:#ffb74d}:host-context(.dark) .docs-page__badge--danger,:host-context([color-scheme=\"dark\"]) .docs-page__badge--danger{background:#c6282833;color:#e57373}:host-context(.dark) .docs-page__sections code:not([class*=language-]),:host-context([color-scheme=\"dark\"]) .docs-page__sections code:not([class*=language-]){background:#ffffff1a}:host-context(.dark) .docs-page__sections pre:not([class*=language-]),:host-context([color-scheme=\"dark\"]) .docs-page__sections pre:not([class*=language-]){background:#ffffff0f}:host-context(.dark) .docs-page__sections th,:host-context([color-scheme=\"dark\"]) .docs-page__sections th{background:#ffffff0a}:host-context(.dark) .docs-page__sections th,:host-context(.dark) .docs-page__sections td,:host-context([color-scheme=\"dark\"]) .docs-page__sections th,:host-context([color-scheme=\"dark\"]) .docs-page__sections td{border-color:#ffffff1a}:host-context(.dark) .docs-page__sections blockquote,:host-context([color-scheme=\"dark\"]) .docs-page__sections blockquote{background:#ffffff0a}:host-context(.dark) .docs-page__sections hr,:host-context([color-scheme=\"dark\"]) .docs-page__sections hr{border-color:#ffffff1a}\n"] }]
185
185
  }], propDecorators: { props: [{
186
186
  type: Input
187
187
  }] } });
188
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jcy1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy90ZW1wbGF0ZXMvZG9jcy1wYWdlL2RvY3MtcGFnZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBNEIsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqSCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFFaEcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7O0FBSS9FOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0NHO0FBc1VILE1BQU0sT0FBTyxpQkFBaUI7SUFyVTlCO1FBc1VVLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFL0IsVUFBSyxHQUFxQixFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUV6QyxhQUFRLEdBQUcsTUFBTSxDQUFpRCxFQUFFLENBQUMsQ0FBQztRQUN0RSxhQUFRLEdBQTRCLElBQUksQ0FBQztRQTRDakQsYUFBUSxHQUFHLFFBQVEsQ0FBa0IsR0FBRyxFQUFFLENBQUMsQ0FBQztZQUMxQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsS0FBSyxJQUFJLGNBQWM7WUFDOUMsS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUU7U0FDdkIsQ0FBQyxDQUFDLENBQUM7UUFFSixrQkFBYSxHQUFHLFFBQVEsQ0FBdUIsR0FBRyxFQUFFLENBQUMsQ0FBQztZQUNwRCxRQUFRLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZO2dCQUMvQixD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QUFRLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7K0dBaERVLGlCQUFpQjttR0FBakIsaUJBQWlCLHFHQWpVbEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FxQ1QsczhKQXRDUyxZQUFZLCtCQUFFLHFCQUFxQix5R0FBRSxnQkFBZ0I7OzRGQWtVcEQsaUJBQWlCO2tCQXJVN0IsU0FBUzsrQkFDRSxlQUFlLGNBQ2IsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLHFCQUFxQixFQUFFLGdCQUFnQixDQUFDLFlBQ3REOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUNUOzhCQStSUSxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBjb21wdXRlZCwgc2lnbmFsLCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIEVsZW1lbnRSZWYsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERvY3NOYXZMaW5rc0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9kb2NzLW5hdi1saW5rcy9kb2NzLW5hdi1saW5rcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRG9jc05hdkxpbmtzTWV0YWRhdGEgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvZG9jcy1uYXYtbGlua3MvdHlwZXMnO1xuaW1wb3J0IHsgRG9jc1RvY0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL29yZ2FuaXNtcy9kb2NzLXRvYy9kb2NzLXRvYy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRG9jc1RvY01ldGFkYXRhIH0gZnJvbSAnLi4vLi4vb3JnYW5pc21zL2RvY3MtdG9jL3R5cGVzJztcbmltcG9ydCB7IERvY3NQYWdlTWV0YWRhdGEgfSBmcm9tICcuL3R5cGVzJztcblxuLyoqXG4gKiB2YWwtZG9jcy1wYWdlXG4gKlxuICogQSBjb21wbGV0ZSBkb2N1bWVudGF0aW9uIHBhZ2UgdGVtcGxhdGUgdGhhdCBlbGltaW5hdGVzIGJvaWxlcnBsYXRlLlxuICogUHJvdmlkZXMgYXV0b21hdGljIFRPQyBnZW5lcmF0aW9uLCBuYXZpZ2F0aW9uIGxpbmtzLCBhbmQgY29uc2lzdGVudCBzdHlsaW5nLlxuICpcbiAqIEBleGFtcGxlIEJhc2ljIHVzYWdlXG4gKiBgYGBodG1sXG4gKiA8dmFsLWRvY3MtcGFnZSBbcHJvcHNdPVwie1xuICogICB0aXRsZTogJ0J1dHRvbicsXG4gKiAgIGxlYWQ6ICdBIGNsaWNrYWJsZSBlbGVtZW50IGZvciB1c2VyIGludGVyYWN0aW9ucy4nLFxuICogICBwcmV2aW91c1BhZ2U6IHsgdGl0bGU6ICdRdWljayBTdGFydCcsIHJvdXRlOiBbJy9kb2NzJywgJ3F1aWNrLXN0YXJ0J10gfSxcbiAqICAgbmV4dFBhZ2U6IHsgdGl0bGU6ICdDYXJkJywgcm91dGU6IFsnL2RvY3MnLCAnY29tcG9uZW50cycsICdjYXJkJ10gfVxuICogfVwiPlxuICogICA8dmFsLWRvY3Mtc2VjdGlvbiBbcHJvcHNdPVwieyBpZDogJ2Jhc2ljLXVzYWdlJywgdGl0bGU6ICdCYXNpYyBVc2FnZScgfVwiPlxuICogICAgIDxwPkNvbnRlbnQgaGVyZS4uLjwvcD5cbiAqICAgPC92YWwtZG9jcy1zZWN0aW9uPlxuICpcbiAqICAgPHZhbC1kb2NzLXNlY3Rpb24gW3Byb3BzXT1cInsgaWQ6ICd2YXJpYW50cycsIHRpdGxlOiAnVmFyaWFudHMnIH1cIj5cbiAqICAgICA8cD5Nb3JlIGNvbnRlbnQuLi48L3A+XG4gKiAgIDwvdmFsLWRvY3Mtc2VjdGlvbj5cbiAqIDwvdmFsLWRvY3MtcGFnZT5cbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlIFdpdGggYmFkZ2VcbiAqIGBgYGh0bWxcbiAqIDx2YWwtZG9jcy1wYWdlIFtwcm9wc109XCJ7XG4gKiAgIHRpdGxlOiAnTmV3IENvbXBvbmVudCcsXG4gKiAgIGJhZGdlOiAnTmV3JyxcbiAqICAgYmFkZ2VDb2xvcjogJ3N1Y2Nlc3MnXG4gKiB9XCI+XG4gKiAgIC4uLlxuICogPC92YWwtZG9jcy1wYWdlPlxuICogYGBgXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1kb2NzLXBhZ2UnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBEb2NzTmF2TGlua3NDb21wb25lbnQsIERvY3NUb2NDb21wb25lbnRdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJkb2NzLXBhZ2VcIiBbY2xhc3NdPVwicHJvcHMuY3NzQ2xhc3NcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJkb2NzLXBhZ2VfX2NvbnRlbnRcIiAjY29udGVudD5cbiAgICAgICAgPGhlYWRlciBjbGFzcz1cImRvY3MtcGFnZV9faGVhZGVyXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImRvY3MtcGFnZV9fdGl0bGUtcm93XCI+XG4gICAgICAgICAgICA8aDEgY2xhc3M9XCJkb2NzLXBhZ2VfX3RpdGxlXCI+e3sgcHJvcHMudGl0bGUgfX08L2gxPlxuICAgICAgICAgICAgQGlmIChwcm9wcy5iYWRnZSkge1xuICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZG9jcy1wYWdlX19iYWRnZVwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLmRvY3MtcGFnZV9fYmFkZ2UtLXN1Y2Nlc3NdPVwicHJvcHMuYmFkZ2VDb2xvciA9PT0gJ3N1Y2Nlc3MnXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MuZG9jcy1wYWdlX19iYWRnZS0td2FybmluZ109XCJwcm9wcy5iYWRnZUNvbG9yID09PSAnd2FybmluZydcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy5kb2NzLXBhZ2VfX2JhZGdlLS1kYW5nZXJdPVwicHJvcHMuYmFkZ2VDb2xvciA9PT0gJ2RhbmdlcidcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgcHJvcHMuYmFkZ2UgfX1cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIEBpZiAocHJvcHMubGVhZCkge1xuICAgICAgICAgICAgPHAgY2xhc3M9XCJkb2NzLXBhZ2VfX2xlYWRcIj57eyBwcm9wcy5sZWFkIH19PC9wPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9oZWFkZXI+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRvY3MtcGFnZV9fc2VjdGlvbnNcIj5cbiAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIEBpZiAoc2hvd05hdkxpbmtzKCkpIHtcbiAgICAgICAgICA8dmFsLWRvY3MtbmF2LWxpbmtzIFtwcm9wc109XCJuYXZMaW5rc1Byb3BzKClcIj48L3ZhbC1kb2NzLW5hdi1saW5rcz5cbiAgICAgICAgfVxuICAgICAgPC9kaXY+XG5cbiAgICAgIEBpZiAoIXByb3BzLnRvYz8uaGlkZSkge1xuICAgICAgICA8YXNpZGUgY2xhc3M9XCJkb2NzLXBhZ2VfX3RvY1wiPlxuICAgICAgICAgIDx2YWwtZG9jcy10b2MgW3Byb3BzXT1cInRvY1Byb3BzKClcIj48L3ZhbC1kb2NzLXRvYz5cbiAgICAgICAgPC9hc2lkZT5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVzOiBbYFxuICAgIC8qIE1haW4gbGF5b3V0ICovXG4gICAgLmRvY3MtcGFnZSB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICBnYXA6IDJyZW07XG4gICAgICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgcGFkZGluZzogMnJlbSAxLjVyZW07XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgLmRvY3MtcGFnZSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDIyMHB4O1xuICAgICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5kb2NzLXBhZ2VfX2NvbnRlbnQge1xuICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgbWF4LXdpZHRoOiA5MDBweDtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19oZWFkZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX190aXRsZS1yb3cge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IDAuNzVyZW07XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuXG4gICAgLmRvY3MtcGFnZV9fdGl0bGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiB2YXIoLS1pb24tdGV4dC1jb2xvciwgIzFhMWExYSk7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLmRvY3MtcGFnZV9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19iYWRnZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAwLjI1cmVtIDAuNjI1cmVtO1xuICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4wMjVlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG4gICAgICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLW1lZGl1bS1zaGFkZSk7XG4gICAgfVxuXG4gICAgLmRvY3MtcGFnZV9fYmFkZ2UtLXN1Y2Nlc3Mge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLXN1Y2Nlc3MtdGludCwgI2U4ZjVlOSk7XG4gICAgICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLXN1Y2Nlc3Mtc2hhZGUsICMyZTdkMzIpO1xuICAgIH1cblxuICAgIC5kb2NzLXBhZ2VfX2JhZGdlLS13YXJuaW5nIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWlvbi1jb2xvci13YXJuaW5nLXRpbnQsICNmZmYzZTApO1xuICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci13YXJuaW5nLXNoYWRlLCAjZTY1MTAwKTtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19iYWRnZS0tZGFuZ2VyIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWlvbi1jb2xvci1kYW5nZXItdGludCwgI2ZmZWJlZSk7XG4gICAgICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLWRhbmdlci1zaGFkZSwgI2M2MjgyOCk7XG4gICAgfVxuXG4gICAgLmRvY3MtcGFnZV9fbGVhZCB7XG4gICAgICBtYXJnaW46IDFyZW0gMCAwO1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjc7XG4gICAgICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLW1lZGl1bSwgIzY2Nik7XG4gICAgfVxuXG4gICAgLmRvY3MtcGFnZV9fc2VjdGlvbnMgPiAqOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvKiBUT0MgLSBIaWRkZW4gb24gbW9iaWxlLCB2aXNpYmxlIG9uIGRlc2t0b3AgKi9cbiAgICAuZG9jcy1wYWdlX190b2Mge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAuZG9jcy1wYWdlX190b2Mge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgdG9wOiAycmVtO1xuICAgICAgICBoZWlnaHQ6IGZpdC1jb250ZW50O1xuICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNHJlbSk7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyogQ29udGVudCB0eXBvZ3JhcGh5IHN0eWxlcyAqL1xuICAgIC5kb2NzLXBhZ2VfX3NlY3Rpb25zIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICAgIGNvbG9yOiB2YXIoLS1pb24tdGV4dC1jb2xvciwgIzFhMWExYSk7XG4gICAgICBzY3JvbGwtbWFyZ2luLXRvcDogMnJlbTtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19zZWN0aW9ucyBoMyB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIG1hcmdpbjogMS41cmVtIDAgMXJlbSAwO1xuICAgICAgY29sb3I6IHZhcigtLWlvbi10ZXh0LWNvbG9yLCAjMWExYTFhKTtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19zZWN0aW9ucyBoNCB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbWFyZ2luOiAxLjI1cmVtIDAgMC43NXJlbSAwO1xuICAgICAgY29sb3I6IHZhcigtLWlvbi10ZXh0LWNvbG9yLCAjMWExYTFhKTtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19zZWN0aW9ucyBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjc7XG4gICAgICBjb2xvcjogdmFyKC0taW9uLXRleHQtY29sb3IsICMxYTFhMWEpO1xuICAgICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICAgIH1cblxuICAgIC5kb2NzLXBhZ2VfX3NlY3Rpb25zIHVsLFxuICAgIC5kb2NzLXBhZ2VfX3NlY3Rpb25zIG9sIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICAgIH1cblxuICAgIC5kb2NzLXBhZ2VfX3NlY3Rpb25zIGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICBjb2xvcjogdmFyKC0taW9uLXRleHQtY29sb3IsICMxYTFhMWEpO1xuICAgIH1cblxuICAgIC5kb2NzLXBhZ2VfX3NlY3Rpb25zIGEge1xuICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1wcmltYXJ5LCAjMzg4MGZmKTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19zZWN0aW9ucyBhOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cblxuICAgIC5kb2NzLXBhZ2VfX3NlY3Rpb25zIGNvZGU6bm90KFtjbGFzcyo9J2xhbmd1YWdlLSddKSB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDYpO1xuICAgICAgcGFkZGluZzogMC4xMjVyZW0gMC4zNzVyZW07XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICBmb250LWZhbWlseTogJ1NGIE1vbm8nLCAnRmlyYSBDb2RlJywgQ29uc29sYXMsIG1vbm9zcGFjZTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19zZWN0aW9ucyBwcmU6bm90KFtjbGFzcyo9J2xhbmd1YWdlLSddKSB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDQpO1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgfVxuXG4gICAgLmRvY3MtcGFnZV9fc2VjdGlvbnMgcHJlOm5vdChbY2xhc3MqPSdsYW5ndWFnZS0nXSkgY29kZSB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19zZWN0aW9ucyB0YWJsZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIH1cblxuICAgIC5kb2NzLXBhZ2VfX3NlY3Rpb25zIHRoLFxuICAgIC5kb2NzLXBhZ2VfX3NlY3Rpb25zIHRkIHtcbiAgICAgIHBhZGRpbmc6IDAuNzVyZW07XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19zZWN0aW9ucyB0aCB7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjAyKTtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19zZWN0aW9ucyBibG9ja3F1b3RlIHtcbiAgICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuICAgICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB2YXIoLS1pb24tY29sb3ItcHJpbWFyeSwgIzM4ODBmZik7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDIpO1xuICAgICAgYm9yZGVyLXJhZGl1czogMCA4cHggOHB4IDA7XG4gICAgfVxuXG4gICAgLmRvY3MtcGFnZV9fc2VjdGlvbnMgYmxvY2txdW90ZSBwOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19zZWN0aW9ucyBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIH1cblxuICAgIC5kb2NzLXBhZ2VfX3NlY3Rpb25zIGhyIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICBtYXJnaW46IDJyZW0gMDtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19zZWN0aW9ucyBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19zZWN0aW9ucyBzZWN0aW9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgfVxuXG4gICAgLyogRGFyayBtb2RlICovXG4gICAgOmhvc3QtY29udGV4dCguZGFyaykgLmRvY3MtcGFnZV9fYmFkZ2UsXG4gICAgOmhvc3QtY29udGV4dChbY29sb3Itc2NoZW1lPVwiZGFya1wiXSkgLmRvY3MtcGFnZV9fYmFkZ2Uge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1tZWRpdW0pO1xuICAgIH1cblxuICAgIDpob3N0LWNvbnRleHQoLmRhcmspIC5kb2NzLXBhZ2VfX2JhZGdlLS1zdWNjZXNzLFxuICAgIDpob3N0LWNvbnRleHQoW2NvbG9yLXNjaGVtZT1cImRhcmtcIl0pIC5kb2NzLXBhZ2VfX2JhZGdlLS1zdWNjZXNzIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoNDYsIDEyNSwgNTAsIDAuMik7XG4gICAgICBjb2xvcjogIzgxYzc4NDtcbiAgICB9XG5cbiAgICA6aG9zdC1jb250ZXh0KC5kYXJrKSAuZG9jcy1wYWdlX19iYWRnZS0td2FybmluZyxcbiAgICA6aG9zdC1jb250ZXh0KFtjb2xvci1zY2hlbWU9XCJkYXJrXCJdKSAuZG9jcy1wYWdlX19iYWRnZS0td2FybmluZyB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIzMCwgODEsIDAsIDAuMik7XG4gICAgICBjb2xvcjogI2ZmYjc0ZDtcbiAgICB9XG5cbiAgICA6aG9zdC1jb250ZXh0KC5kYXJrKSAuZG9jcy1wYWdlX19iYWRnZS0tZGFuZ2VyLFxuICAgIDpob3N0LWNvbnRleHQoW2NvbG9yLXNjaGVtZT1cImRhcmtcIl0pIC5kb2NzLXBhZ2VfX2JhZGdlLS1kYW5nZXIge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgxOTgsIDQwLCA0MCwgMC4yKTtcbiAgICAgIGNvbG9yOiAjZTU3MzczO1xuICAgIH1cblxuICAgIDpob3N0LWNvbnRleHQoLmRhcmspIC5kb2NzLXBhZ2VfX3NlY3Rpb25zIGNvZGU6bm90KFtjbGFzcyo9J2xhbmd1YWdlLSddKSxcbiAgICA6aG9zdC1jb250ZXh0KFtjb2xvci1zY2hlbWU9XCJkYXJrXCJdKSAuZG9jcy1wYWdlX19zZWN0aW9ucyBjb2RlOm5vdChbY2xhc3MqPSdsYW5ndWFnZS0nXSkge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgIH1cblxuICAgIDpob3N0LWNvbnRleHQoLmRhcmspIC5kb2NzLXBhZ2VfX3NlY3Rpb25zIHByZTpub3QoW2NsYXNzKj0nbGFuZ3VhZ2UtJ10pLFxuICAgIDpob3N0LWNvbnRleHQoW2NvbG9yLXNjaGVtZT1cImRhcmtcIl0pIC5kb2NzLXBhZ2VfX3NlY3Rpb25zIHByZTpub3QoW2NsYXNzKj0nbGFuZ3VhZ2UtJ10pIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNik7XG4gICAgfVxuXG4gICAgOmhvc3QtY29udGV4dCguZGFyaykgLmRvY3MtcGFnZV9fc2VjdGlvbnMgdGgsXG4gICAgOmhvc3QtY29udGV4dChbY29sb3Itc2NoZW1lPVwiZGFya1wiXSkgLmRvY3MtcGFnZV9fc2VjdGlvbnMgdGgge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA0KTtcbiAgICB9XG5cbiAgICA6aG9zdC1jb250ZXh0KC5kYXJrKSAuZG9jcy1wYWdlX19zZWN0aW9ucyB0aCxcbiAgICA6aG9zdC1jb250ZXh0KC5kYXJrKSAuZG9jcy1wYWdlX19zZWN0aW9ucyB0ZCxcbiAgICA6aG9zdC1jb250ZXh0KFtjb2xvci1zY2hlbWU9XCJkYXJrXCJdKSAuZG9jcy1wYWdlX19zZWN0aW9ucyB0aCxcbiAgICA6aG9zdC1jb250ZXh0KFtjb2xvci1zY2hlbWU9XCJkYXJrXCJdKSAuZG9jcy1wYWdlX19zZWN0aW9ucyB0ZCB7XG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICB9XG5cbiAgICA6aG9zdC1jb250ZXh0KC5kYXJrKSAuZG9jcy1wYWdlX19zZWN0aW9ucyBibG9ja3F1b3RlLFxuICAgIDpob3N0LWNvbnRleHQoW2NvbG9yLXNjaGVtZT1cImRhcmtcIl0pIC5kb2NzLXBhZ2VfX3NlY3Rpb25zIGJsb2NrcXVvdGUge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA0KTtcbiAgICB9XG5cbiAgICA6aG9zdC1jb250ZXh0KC5kYXJrKSAuZG9jcy1wYWdlX19zZWN0aW9ucyBocixcbiAgICA6aG9zdC1jb250ZXh0KFtjb2xvci1zY2hlbWU9XCJkYXJrXCJdKSAuZG9jcy1wYWdlX19zZWN0aW9ucyBociB7XG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICB9XG4gIGBdLFxufSlcbmV4cG9ydCBjbGFzcyBEb2NzUGFnZUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcblxuICBASW5wdXQoKSBwcm9wczogRG9jc1BhZ2VNZXRhZGF0YSA9IHsgdGl0bGU6ICcnIH07XG5cbiAgcHJpdmF0ZSB0b2NJdGVtcyA9IHNpZ25hbDx7IGlkOiBzdHJpbmc7IGxhYmVsOiBzdHJpbmc7IGxldmVsOiBudW1iZXIgfVtdPihbXSk7XG4gIHByaXZhdGUgb2JzZXJ2ZXI6IE11dGF0aW9uT2JzZXJ2ZXIgfCBudWxsID0gbnVsbDtcblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgLy8gSW5pdGlhbCBzY2FuXG4gICAgdGhpcy5zY2FuRm9yU2VjdGlvbnMoKTtcblxuICAgIC8vIFdhdGNoIGZvciBkeW5hbWljIGNvbnRlbnQgY2hhbmdlc1xuICAgIHRoaXMub2JzZXJ2ZXIgPSBuZXcgTXV0YXRpb25PYnNlcnZlcigoKSA9PiB7XG4gICAgICB0aGlzLnNjYW5Gb3JTZWN0aW9ucygpO1xuICAgIH0pO1xuXG4gICAgY29uc3QgY29udGVudEVsID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignLmRvY3MtcGFnZV9fc2VjdGlvbnMnKTtcbiAgICBpZiAoY29udGVudEVsKSB7XG4gICAgICB0aGlzLm9ic2VydmVyLm9ic2VydmUoY29udGVudEVsLCB7IGNoaWxkTGlzdDogdHJ1ZSwgc3VidHJlZTogdHJ1ZSB9KTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLm9ic2VydmVyPy5kaXNjb25uZWN0KCk7XG4gIH1cblxuICBwcml2YXRlIHNjYW5Gb3JTZWN0aW9ucygpOiB2b2lkIHtcbiAgICBjb25zdCBjb250ZW50RWwgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcuZG9jcy1wYWdlX19zZWN0aW9ucycpO1xuICAgIGlmICghY29udGVudEVsKSByZXR1cm47XG5cbiAgICBjb25zdCBoZWFkaW5ncyA9IGNvbnRlbnRFbC5xdWVyeVNlbGVjdG9yQWxsKCdoMltpZF0sIGgzW2lkXSwgc2VjdGlvbltpZF0gPiBoMiwgc2VjdGlvbltpZF0gPiBoMycpO1xuICAgIGNvbnN0IGl0ZW1zOiB7IGlkOiBzdHJpbmc7IGxhYmVsOiBzdHJpbmc7IGxldmVsOiBudW1iZXIgfVtdID0gW107XG5cbiAgICBoZWFkaW5ncy5mb3JFYWNoKChoZWFkaW5nOiBFbGVtZW50KSA9PiB7XG4gICAgICAvLyBHZXQgSUQgZnJvbSBoZWFkaW5nIG9yIHBhcmVudCBzZWN0aW9uXG4gICAgICBsZXQgaWQgPSBoZWFkaW5nLmlkO1xuICAgICAgaWYgKCFpZCAmJiBoZWFkaW5nLnBhcmVudEVsZW1lbnQ/LnRhZ05hbWUgPT09ICdTRUNUSU9OJykge1xuICAgICAgICBpZCA9IGhlYWRpbmcucGFyZW50RWxlbWVudC5pZDtcbiAgICAgIH1cblxuICAgICAgaWYgKGlkKSB7XG4gICAgICAgIGNvbnN0IGxldmVsID0gaGVhZGluZy50YWdOYW1lID09PSAnSDInID8gMiA6IDM7XG4gICAgICAgIGl0ZW1zLnB1c2goeyBpZCwgbGFiZWw6IGhlYWRpbmcudGV4dENvbnRlbnQ/LnRyaW0oKSB8fCAnJywgbGV2ZWwgfSk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLnRvY0l0ZW1zLnNldChpdGVtcyk7XG4gIH1cblxuICB0b2NQcm9wcyA9IGNvbXB1dGVkPERvY3NUb2NNZXRhZGF0YT4oKCkgPT4gKHtcbiAgICB0aXRsZTogdGhpcy5wcm9wcy50b2M/LnRpdGxlID8/ICdPbiB0aGlzIHBhZ2UnLFxuICAgIGl0ZW1zOiB0aGlzLnRvY0l0ZW1zKCksXG4gIH0pKTtcblxuICBuYXZMaW5rc1Byb3BzID0gY29tcHV0ZWQ8RG9jc05hdkxpbmtzTWV0YWRhdGE+KCgpID0+ICh7XG4gICAgcHJldmlvdXM6IHRoaXMucHJvcHMucHJldmlvdXNQYWdlXG4gICAgICA/IHtcbiAgICAgICAgICBsYWJlbDogdGhpcy5wcm9wcy5uYXZMYWJlbHM/LnByZXZpb3VzID8/ICdQcmV2aW91cycsXG4gICAgICAgICAgdGl0bGU6IHRoaXMucHJvcHMucHJldmlvdXNQYWdlLnRpdGxlLFxuICAgICAgICAgIHJvdXRlOiB0aGlzLnByb3BzLnByZXZpb3VzUGFnZS5yb3V0ZSxcbiAgICAgICAgfVxuICAgICAgOiB1bmRlZmluZWQsXG4gICAgbmV4dDogdGhpcy5wcm9wcy5uZXh0UGFnZVxuICAgICAgPyB7XG4gICAgICAgICAgbGFiZWw6IHRoaXMucHJvcHMubmF2TGFiZWxzPy5uZXh0ID8/ICdOZXh0JyxcbiAgICAgICAgICB0aXRsZTogdGhpcy5wcm9wcy5uZXh0UGFnZS50aXRsZSxcbiAgICAgICAgICByb3V0ZTogdGhpcy5wcm9wcy5uZXh0UGFnZS5yb3V0ZSxcbiAgICAgICAgfVxuICAgICAgOiB1bmRlZmluZWQsXG4gIH0pKTtcblxuICBzaG93TmF2TGlua3MgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgcmV0dXJuICEhdGhpcy5wcm9wcy5wcmV2aW91c1BhZ2UgfHwgISF0aGlzLnByb3BzLm5leHRQYWdlO1xuICB9KTtcbn1cbiJdfQ==
188
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jcy1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy90ZW1wbGF0ZXMvZG9jcy1wYWdlL2RvY3MtcGFnZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBNEIsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqSCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFFaEcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7O0FBSS9FOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0NHO0FBc1VILE1BQU0sT0FBTyxpQkFBaUI7SUFyVTlCO1FBc1VVLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFL0IsVUFBSyxHQUFxQixFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUV6QyxhQUFRLEdBQUcsTUFBTSxDQUFpRCxFQUFFLENBQUMsQ0FBQztRQUN0RSxhQUFRLEdBQTRCLElBQUksQ0FBQztRQTRDakQsYUFBUSxHQUFHLFFBQVEsQ0FBa0IsR0FBRyxFQUFFLENBQUMsQ0FBQztZQUMxQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsS0FBSyxJQUFJLGNBQWM7WUFDOUMsS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUU7U0FDdkIsQ0FBQyxDQUFDLENBQUM7UUFFSixrQkFBYSxHQUFHLFFBQVEsQ0FBdUIsR0FBRyxFQUFFLENBQUMsQ0FBQztZQUNwRCxRQUFRLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZO2dCQUMvQixD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QUFRLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7K0dBaERVLGlCQUFpQjttR0FBakIsaUJBQWlCLHFHQWpVbEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FxQ1QseTVKQXRDUyxZQUFZLCtCQUFFLHFCQUFxQix5R0FBRSxnQkFBZ0I7OzRGQWtVcEQsaUJBQWlCO2tCQXJVN0IsU0FBUzsrQkFDRSxlQUFlLGNBQ2IsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLHFCQUFxQixFQUFFLGdCQUFnQixDQUFDLFlBQ3REOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUNUOzhCQStSUSxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBjb21wdXRlZCwgc2lnbmFsLCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIEVsZW1lbnRSZWYsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERvY3NOYXZMaW5rc0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9kb2NzLW5hdi1saW5rcy9kb2NzLW5hdi1saW5rcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRG9jc05hdkxpbmtzTWV0YWRhdGEgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvZG9jcy1uYXYtbGlua3MvdHlwZXMnO1xuaW1wb3J0IHsgRG9jc1RvY0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL29yZ2FuaXNtcy9kb2NzLXRvYy9kb2NzLXRvYy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRG9jc1RvY01ldGFkYXRhIH0gZnJvbSAnLi4vLi4vb3JnYW5pc21zL2RvY3MtdG9jL3R5cGVzJztcbmltcG9ydCB7IERvY3NQYWdlTWV0YWRhdGEgfSBmcm9tICcuL3R5cGVzJztcblxuLyoqXG4gKiB2YWwtZG9jcy1wYWdlXG4gKlxuICogQSBjb21wbGV0ZSBkb2N1bWVudGF0aW9uIHBhZ2UgdGVtcGxhdGUgdGhhdCBlbGltaW5hdGVzIGJvaWxlcnBsYXRlLlxuICogUHJvdmlkZXMgYXV0b21hdGljIFRPQyBnZW5lcmF0aW9uLCBuYXZpZ2F0aW9uIGxpbmtzLCBhbmQgY29uc2lzdGVudCBzdHlsaW5nLlxuICpcbiAqIEBleGFtcGxlIEJhc2ljIHVzYWdlXG4gKiBgYGBodG1sXG4gKiA8dmFsLWRvY3MtcGFnZSBbcHJvcHNdPVwie1xuICogICB0aXRsZTogJ0J1dHRvbicsXG4gKiAgIGxlYWQ6ICdBIGNsaWNrYWJsZSBlbGVtZW50IGZvciB1c2VyIGludGVyYWN0aW9ucy4nLFxuICogICBwcmV2aW91c1BhZ2U6IHsgdGl0bGU6ICdRdWljayBTdGFydCcsIHJvdXRlOiBbJy9kb2NzJywgJ3F1aWNrLXN0YXJ0J10gfSxcbiAqICAgbmV4dFBhZ2U6IHsgdGl0bGU6ICdDYXJkJywgcm91dGU6IFsnL2RvY3MnLCAnY29tcG9uZW50cycsICdjYXJkJ10gfVxuICogfVwiPlxuICogICA8dmFsLWRvY3Mtc2VjdGlvbiBbcHJvcHNdPVwieyBpZDogJ2Jhc2ljLXVzYWdlJywgdGl0bGU6ICdCYXNpYyBVc2FnZScgfVwiPlxuICogICAgIDxwPkNvbnRlbnQgaGVyZS4uLjwvcD5cbiAqICAgPC92YWwtZG9jcy1zZWN0aW9uPlxuICpcbiAqICAgPHZhbC1kb2NzLXNlY3Rpb24gW3Byb3BzXT1cInsgaWQ6ICd2YXJpYW50cycsIHRpdGxlOiAnVmFyaWFudHMnIH1cIj5cbiAqICAgICA8cD5Nb3JlIGNvbnRlbnQuLi48L3A+XG4gKiAgIDwvdmFsLWRvY3Mtc2VjdGlvbj5cbiAqIDwvdmFsLWRvY3MtcGFnZT5cbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlIFdpdGggYmFkZ2VcbiAqIGBgYGh0bWxcbiAqIDx2YWwtZG9jcy1wYWdlIFtwcm9wc109XCJ7XG4gKiAgIHRpdGxlOiAnTmV3IENvbXBvbmVudCcsXG4gKiAgIGJhZGdlOiAnTmV3JyxcbiAqICAgYmFkZ2VDb2xvcjogJ3N1Y2Nlc3MnXG4gKiB9XCI+XG4gKiAgIC4uLlxuICogPC92YWwtZG9jcy1wYWdlPlxuICogYGBgXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1kb2NzLXBhZ2UnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBEb2NzTmF2TGlua3NDb21wb25lbnQsIERvY3NUb2NDb21wb25lbnRdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJkb2NzLXBhZ2VcIiBbY2xhc3NdPVwicHJvcHMuY3NzQ2xhc3NcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJkb2NzLXBhZ2VfX2NvbnRlbnRcIiAjY29udGVudD5cbiAgICAgICAgPGhlYWRlciBjbGFzcz1cImRvY3MtcGFnZV9faGVhZGVyXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImRvY3MtcGFnZV9fdGl0bGUtcm93XCI+XG4gICAgICAgICAgICA8aDEgY2xhc3M9XCJkb2NzLXBhZ2VfX3RpdGxlXCI+e3sgcHJvcHMudGl0bGUgfX08L2gxPlxuICAgICAgICAgICAgQGlmIChwcm9wcy5iYWRnZSkge1xuICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZG9jcy1wYWdlX19iYWRnZVwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLmRvY3MtcGFnZV9fYmFkZ2UtLXN1Y2Nlc3NdPVwicHJvcHMuYmFkZ2VDb2xvciA9PT0gJ3N1Y2Nlc3MnXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MuZG9jcy1wYWdlX19iYWRnZS0td2FybmluZ109XCJwcm9wcy5iYWRnZUNvbG9yID09PSAnd2FybmluZydcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy5kb2NzLXBhZ2VfX2JhZGdlLS1kYW5nZXJdPVwicHJvcHMuYmFkZ2VDb2xvciA9PT0gJ2RhbmdlcidcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgcHJvcHMuYmFkZ2UgfX1cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIEBpZiAocHJvcHMubGVhZCkge1xuICAgICAgICAgICAgPHAgY2xhc3M9XCJkb2NzLXBhZ2VfX2xlYWRcIj57eyBwcm9wcy5sZWFkIH19PC9wPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9oZWFkZXI+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRvY3MtcGFnZV9fc2VjdGlvbnNcIj5cbiAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIEBpZiAoc2hvd05hdkxpbmtzKCkpIHtcbiAgICAgICAgICA8dmFsLWRvY3MtbmF2LWxpbmtzIFtwcm9wc109XCJuYXZMaW5rc1Byb3BzKClcIj48L3ZhbC1kb2NzLW5hdi1saW5rcz5cbiAgICAgICAgfVxuICAgICAgPC9kaXY+XG5cbiAgICAgIEBpZiAoIXByb3BzLnRvYz8uaGlkZSkge1xuICAgICAgICA8YXNpZGUgY2xhc3M9XCJkb2NzLXBhZ2VfX3RvY1wiPlxuICAgICAgICAgIDx2YWwtZG9jcy10b2MgW3Byb3BzXT1cInRvY1Byb3BzKClcIj48L3ZhbC1kb2NzLXRvYz5cbiAgICAgICAgPC9hc2lkZT5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVzOiBbYFxuICAgIC8qIE1haW4gbGF5b3V0ICovXG4gICAgLmRvY3MtcGFnZSB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICBnYXA6IDJyZW07XG4gICAgICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgcGFkZGluZzogMnJlbSAxLjVyZW07XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgLmRvY3MtcGFnZSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDIyMHB4O1xuICAgICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5kb2NzLXBhZ2VfX2NvbnRlbnQge1xuICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgbWF4LXdpZHRoOiA5MDBweDtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19oZWFkZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX190aXRsZS1yb3cge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IDAuNzVyZW07XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuXG4gICAgLmRvY3MtcGFnZV9fdGl0bGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiB2YXIoLS1pb24tdGV4dC1jb2xvciwgIzFhMWExYSk7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLmRvY3MtcGFnZV9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19iYWRnZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4wM2VtO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA0KTtcbiAgICAgIGNvbG9yOiAjODg4O1xuICAgIH1cblxuICAgIC5kb2NzLXBhZ2VfX2JhZGdlLS1zdWNjZXNzIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWlvbi1jb2xvci1zdWNjZXNzLXRpbnQsICNlOGY1ZTkpO1xuICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1zdWNjZXNzLXNoYWRlLCAjMmU3ZDMyKTtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19iYWRnZS0td2FybmluZyB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pb24tY29sb3Itd2FybmluZy10aW50LCAjZmZmM2UwKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3Itd2FybmluZy1zaGFkZSwgI2U2NTEwMCk7XG4gICAgfVxuXG4gICAgLmRvY3MtcGFnZV9fYmFkZ2UtLWRhbmdlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pb24tY29sb3ItZGFuZ2VyLXRpbnQsICNmZmViZWUpO1xuICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1kYW5nZXItc2hhZGUsICNjNjI4MjgpO1xuICAgIH1cblxuICAgIC5kb2NzLXBhZ2VfX2xlYWQge1xuICAgICAgbWFyZ2luOiAxcmVtIDAgMDtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS43O1xuICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1tZWRpdW0sICM2NjYpO1xuICAgIH1cblxuICAgIC5kb2NzLXBhZ2VfX3NlY3Rpb25zID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLyogVE9DIC0gSGlkZGVuIG9uIG1vYmlsZSwgdmlzaWJsZSBvbiBkZXNrdG9wICovXG4gICAgLmRvY3MtcGFnZV9fdG9jIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgLmRvY3MtcGFnZV9fdG9jIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgIHRvcDogMnJlbTtcbiAgICAgICAgaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDRyZW0pO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qIENvbnRlbnQgdHlwb2dyYXBoeSBzdHlsZXMgKi9cbiAgICAuZG9jcy1wYWdlX19zZWN0aW9ucyBoMiB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgICBjb2xvcjogdmFyKC0taW9uLXRleHQtY29sb3IsICMxYTFhMWEpO1xuICAgICAgc2Nyb2xsLW1hcmdpbi10b3A6IDJyZW07XG4gICAgfVxuXG4gICAgLmRvY3MtcGFnZV9fc2VjdGlvbnMgaDMge1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBtYXJnaW46IDEuNXJlbSAwIDFyZW0gMDtcbiAgICAgIGNvbG9yOiB2YXIoLS1pb24tdGV4dC1jb2xvciwgIzFhMWExYSk7XG4gICAgfVxuXG4gICAgLmRvY3MtcGFnZV9fc2VjdGlvbnMgaDQge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIG1hcmdpbjogMS4yNXJlbSAwIDAuNzVyZW0gMDtcbiAgICAgIGNvbG9yOiB2YXIoLS1pb24tdGV4dC1jb2xvciwgIzFhMWExYSk7XG4gICAgfVxuXG4gICAgLmRvY3MtcGFnZV9fc2VjdGlvbnMgcCB7XG4gICAgICBsaW5lLWhlaWdodDogMS43O1xuICAgICAgY29sb3I6IHZhcigtLWlvbi10ZXh0LWNvbG9yLCAjMWExYTFhKTtcbiAgICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19zZWN0aW9ucyB1bCxcbiAgICAuZG9jcy1wYWdlX19zZWN0aW9ucyBvbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19zZWN0aW9ucyBsaSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgY29sb3I6IHZhcigtLWlvbi10ZXh0LWNvbG9yLCAjMWExYTFhKTtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19zZWN0aW9ucyBhIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItcHJpbWFyeSwgIzM4ODBmZik7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgLmRvY3MtcGFnZV9fc2VjdGlvbnMgYTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19zZWN0aW9ucyBjb2RlOm5vdChbY2xhc3MqPSdsYW5ndWFnZS0nXSkge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA2KTtcbiAgICAgIHBhZGRpbmc6IDAuMTI1cmVtIDAuMzc1cmVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgZm9udC1mYW1pbHk6ICdTRiBNb25vJywgJ0ZpcmEgQ29kZScsIENvbnNvbGFzLCBtb25vc3BhY2U7XG4gICAgICBmb250LXNpemU6IDAuODc1ZW07XG4gICAgfVxuXG4gICAgLmRvY3MtcGFnZV9fc2VjdGlvbnMgcHJlOm5vdChbY2xhc3MqPSdsYW5ndWFnZS0nXSkge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA0KTtcbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICAgIH1cblxuICAgIC5kb2NzLXBhZ2VfX3NlY3Rpb25zIHByZTpub3QoW2NsYXNzKj0nbGFuZ3VhZ2UtJ10pIGNvZGUge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLmRvY3MtcGFnZV9fc2VjdGlvbnMgdGFibGUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19zZWN0aW9ucyB0aCxcbiAgICAuZG9jcy1wYWdlX19zZWN0aW9ucyB0ZCB7XG4gICAgICBwYWRkaW5nOiAwLjc1cmVtO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgfVxuXG4gICAgLmRvY3MtcGFnZV9fc2VjdGlvbnMgdGgge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wMik7XG4gICAgfVxuXG4gICAgLmRvY3MtcGFnZV9fc2VjdGlvbnMgYmxvY2txdW90ZSB7XG4gICAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcbiAgICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgdmFyKC0taW9uLWNvbG9yLXByaW1hcnksICMzODgwZmYpO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjAyKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgOHB4IDhweCAwO1xuICAgIH1cblxuICAgIC5kb2NzLXBhZ2VfX3NlY3Rpb25zIGJsb2NrcXVvdGUgcDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLmRvY3MtcGFnZV9fc2VjdGlvbnMgaW1nIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICB9XG5cbiAgICAuZG9jcy1wYWdlX19zZWN0aW9ucyBociB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgbWFyZ2luOiAycmVtIDA7XG4gICAgfVxuXG4gICAgLmRvY3MtcGFnZV9fc2VjdGlvbnMgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuXG4gICAgLmRvY3MtcGFnZV9fc2VjdGlvbnMgc2VjdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIH1cblxuICAgIC8qIERhcmsgbW9kZSAqL1xuICAgIDpob3N0LWNvbnRleHQoLmRhcmspIC5kb2NzLXBhZ2VfX2JhZGdlLFxuICAgIDpob3N0LWNvbnRleHQoW2NvbG9yLXNjaGVtZT1cImRhcmtcIl0pIC5kb2NzLXBhZ2VfX2JhZGdlIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNik7XG4gICAgICBjb2xvcjogIzk5OTtcbiAgICB9XG5cbiAgICA6aG9zdC1jb250ZXh0KC5kYXJrKSAuZG9jcy1wYWdlX19iYWRnZS0tc3VjY2VzcyxcbiAgICA6aG9zdC1jb250ZXh0KFtjb2xvci1zY2hlbWU9XCJkYXJrXCJdKSAuZG9jcy1wYWdlX19iYWRnZS0tc3VjY2VzcyB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDQ2LCAxMjUsIDUwLCAwLjIpO1xuICAgICAgY29sb3I6ICM4MWM3ODQ7XG4gICAgfVxuXG4gICAgOmhvc3QtY29udGV4dCguZGFyaykgLmRvY3MtcGFnZV9fYmFkZ2UtLXdhcm5pbmcsXG4gICAgOmhvc3QtY29udGV4dChbY29sb3Itc2NoZW1lPVwiZGFya1wiXSkgLmRvY3MtcGFnZV9fYmFkZ2UtLXdhcm5pbmcge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyMzAsIDgxLCAwLCAwLjIpO1xuICAgICAgY29sb3I6ICNmZmI3NGQ7XG4gICAgfVxuXG4gICAgOmhvc3QtY29udGV4dCguZGFyaykgLmRvY3MtcGFnZV9fYmFkZ2UtLWRhbmdlcixcbiAgICA6aG9zdC1jb250ZXh0KFtjb2xvci1zY2hlbWU9XCJkYXJrXCJdKSAuZG9jcy1wYWdlX19iYWRnZS0tZGFuZ2VyIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMTk4LCA0MCwgNDAsIDAuMik7XG4gICAgICBjb2xvcjogI2U1NzM3MztcbiAgICB9XG5cbiAgICA6aG9zdC1jb250ZXh0KC5kYXJrKSAuZG9jcy1wYWdlX19zZWN0aW9ucyBjb2RlOm5vdChbY2xhc3MqPSdsYW5ndWFnZS0nXSksXG4gICAgOmhvc3QtY29udGV4dChbY29sb3Itc2NoZW1lPVwiZGFya1wiXSkgLmRvY3MtcGFnZV9fc2VjdGlvbnMgY29kZTpub3QoW2NsYXNzKj0nbGFuZ3VhZ2UtJ10pIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICB9XG5cbiAgICA6aG9zdC1jb250ZXh0KC5kYXJrKSAuZG9jcy1wYWdlX19zZWN0aW9ucyBwcmU6bm90KFtjbGFzcyo9J2xhbmd1YWdlLSddKSxcbiAgICA6aG9zdC1jb250ZXh0KFtjb2xvci1zY2hlbWU9XCJkYXJrXCJdKSAuZG9jcy1wYWdlX19zZWN0aW9ucyBwcmU6bm90KFtjbGFzcyo9J2xhbmd1YWdlLSddKSB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDYpO1xuICAgIH1cblxuICAgIDpob3N0LWNvbnRleHQoLmRhcmspIC5kb2NzLXBhZ2VfX3NlY3Rpb25zIHRoLFxuICAgIDpob3N0LWNvbnRleHQoW2NvbG9yLXNjaGVtZT1cImRhcmtcIl0pIC5kb2NzLXBhZ2VfX3NlY3Rpb25zIHRoIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNCk7XG4gICAgfVxuXG4gICAgOmhvc3QtY29udGV4dCguZGFyaykgLmRvY3MtcGFnZV9fc2VjdGlvbnMgdGgsXG4gICAgOmhvc3QtY29udGV4dCguZGFyaykgLmRvY3MtcGFnZV9fc2VjdGlvbnMgdGQsXG4gICAgOmhvc3QtY29udGV4dChbY29sb3Itc2NoZW1lPVwiZGFya1wiXSkgLmRvY3MtcGFnZV9fc2VjdGlvbnMgdGgsXG4gICAgOmhvc3QtY29udGV4dChbY29sb3Itc2NoZW1lPVwiZGFya1wiXSkgLmRvY3MtcGFnZV9fc2VjdGlvbnMgdGQge1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgfVxuXG4gICAgOmhvc3QtY29udGV4dCguZGFyaykgLmRvY3MtcGFnZV9fc2VjdGlvbnMgYmxvY2txdW90ZSxcbiAgICA6aG9zdC1jb250ZXh0KFtjb2xvci1zY2hlbWU9XCJkYXJrXCJdKSAuZG9jcy1wYWdlX19zZWN0aW9ucyBibG9ja3F1b3RlIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNCk7XG4gICAgfVxuXG4gICAgOmhvc3QtY29udGV4dCguZGFyaykgLmRvY3MtcGFnZV9fc2VjdGlvbnMgaHIsXG4gICAgOmhvc3QtY29udGV4dChbY29sb3Itc2NoZW1lPVwiZGFya1wiXSkgLmRvY3MtcGFnZV9fc2VjdGlvbnMgaHIge1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgfVxuICBgXSxcbn0pXG5leHBvcnQgY2xhc3MgRG9jc1BhZ2VDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIGVsZW1lbnRSZWYgPSBpbmplY3QoRWxlbWVudFJlZik7XG5cbiAgQElucHV0KCkgcHJvcHM6IERvY3NQYWdlTWV0YWRhdGEgPSB7IHRpdGxlOiAnJyB9O1xuXG4gIHByaXZhdGUgdG9jSXRlbXMgPSBzaWduYWw8eyBpZDogc3RyaW5nOyBsYWJlbDogc3RyaW5nOyBsZXZlbDogbnVtYmVyIH1bXT4oW10pO1xuICBwcml2YXRlIG9ic2VydmVyOiBNdXRhdGlvbk9ic2VydmVyIHwgbnVsbCA9IG51bGw7XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIC8vIEluaXRpYWwgc2NhblxuICAgIHRoaXMuc2NhbkZvclNlY3Rpb25zKCk7XG5cbiAgICAvLyBXYXRjaCBmb3IgZHluYW1pYyBjb250ZW50IGNoYW5nZXNcbiAgICB0aGlzLm9ic2VydmVyID0gbmV3IE11dGF0aW9uT2JzZXJ2ZXIoKCkgPT4ge1xuICAgICAgdGhpcy5zY2FuRm9yU2VjdGlvbnMoKTtcbiAgICB9KTtcblxuICAgIGNvbnN0IGNvbnRlbnRFbCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy5kb2NzLXBhZ2VfX3NlY3Rpb25zJyk7XG4gICAgaWYgKGNvbnRlbnRFbCkge1xuICAgICAgdGhpcy5vYnNlcnZlci5vYnNlcnZlKGNvbnRlbnRFbCwgeyBjaGlsZExpc3Q6IHRydWUsIHN1YnRyZWU6IHRydWUgfSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5vYnNlcnZlcj8uZGlzY29ubmVjdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBzY2FuRm9yU2VjdGlvbnMoKTogdm9pZCB7XG4gICAgY29uc3QgY29udGVudEVsID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignLmRvY3MtcGFnZV9fc2VjdGlvbnMnKTtcbiAgICBpZiAoIWNvbnRlbnRFbCkgcmV0dXJuO1xuXG4gICAgY29uc3QgaGVhZGluZ3MgPSBjb250ZW50RWwucXVlcnlTZWxlY3RvckFsbCgnaDJbaWRdLCBoM1tpZF0sIHNlY3Rpb25baWRdID4gaDIsIHNlY3Rpb25baWRdID4gaDMnKTtcbiAgICBjb25zdCBpdGVtczogeyBpZDogc3RyaW5nOyBsYWJlbDogc3RyaW5nOyBsZXZlbDogbnVtYmVyIH1bXSA9IFtdO1xuXG4gICAgaGVhZGluZ3MuZm9yRWFjaCgoaGVhZGluZzogRWxlbWVudCkgPT4ge1xuICAgICAgLy8gR2V0IElEIGZyb20gaGVhZGluZyBvciBwYXJlbnQgc2VjdGlvblxuICAgICAgbGV0IGlkID0gaGVhZGluZy5pZDtcbiAgICAgIGlmICghaWQgJiYgaGVhZGluZy5wYXJlbnRFbGVtZW50Py50YWdOYW1lID09PSAnU0VDVElPTicpIHtcbiAgICAgICAgaWQgPSBoZWFkaW5nLnBhcmVudEVsZW1lbnQuaWQ7XG4gICAgICB9XG5cbiAgICAgIGlmIChpZCkge1xuICAgICAgICBjb25zdCBsZXZlbCA9IGhlYWRpbmcudGFnTmFtZSA9PT0gJ0gyJyA/IDIgOiAzO1xuICAgICAgICBpdGVtcy5wdXNoKHsgaWQsIGxhYmVsOiBoZWFkaW5nLnRleHRDb250ZW50Py50cmltKCkgfHwgJycsIGxldmVsIH0pO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy50b2NJdGVtcy5zZXQoaXRlbXMpO1xuICB9XG5cbiAgdG9jUHJvcHMgPSBjb21wdXRlZDxEb2NzVG9jTWV0YWRhdGE+KCgpID0+ICh7XG4gICAgdGl0bGU6IHRoaXMucHJvcHMudG9jPy50aXRsZSA/PyAnT24gdGhpcyBwYWdlJyxcbiAgICBpdGVtczogdGhpcy50b2NJdGVtcygpLFxuICB9KSk7XG5cbiAgbmF2TGlua3NQcm9wcyA9IGNvbXB1dGVkPERvY3NOYXZMaW5rc01ldGFkYXRhPigoKSA9PiAoe1xuICAgIHByZXZpb3VzOiB0aGlzLnByb3BzLnByZXZpb3VzUGFnZVxuICAgICAgPyB7XG4gICAgICAgICAgbGFiZWw6IHRoaXMucHJvcHMubmF2TGFiZWxzPy5wcmV2aW91cyA/PyAnUHJldmlvdXMnLFxuICAgICAgICAgIHRpdGxlOiB0aGlzLnByb3BzLnByZXZpb3VzUGFnZS50aXRsZSxcbiAgICAgICAgICByb3V0ZTogdGhpcy5wcm9wcy5wcmV2aW91c1BhZ2Uucm91dGUsXG4gICAgICAgIH1cbiAgICAgIDogdW5kZWZpbmVkLFxuICAgIG5leHQ6IHRoaXMucHJvcHMubmV4dFBhZ2VcbiAgICAgID8ge1xuICAgICAgICAgIGxhYmVsOiB0aGlzLnByb3BzLm5hdkxhYmVscz8ubmV4dCA/PyAnTmV4dCcsXG4gICAgICAgICAgdGl0bGU6IHRoaXMucHJvcHMubmV4dFBhZ2UudGl0bGUsXG4gICAgICAgICAgcm91dGU6IHRoaXMucHJvcHMubmV4dFBhZ2Uucm91dGUsXG4gICAgICAgIH1cbiAgICAgIDogdW5kZWZpbmVkLFxuICB9KSk7XG5cbiAgc2hvd05hdkxpbmtzID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIHJldHVybiAhIXRoaXMucHJvcHMucHJldmlvdXNQYWdlIHx8ICEhdGhpcy5wcm9wcy5uZXh0UGFnZTtcbiAgfSk7XG59XG4iXX0=
@@ -216,6 +216,35 @@ export class FeedbackService {
216
216
  };
217
217
  return firstValueFrom(this.http.post(this.baseUrl, request));
218
218
  }
219
+ /**
220
+ * Crea feedback anónimo (sin autenticación requerida).
221
+ * Usado para blogs, FAQs y contenido público.
222
+ *
223
+ * @param entityRef - Referencia a la entidad
224
+ * @param value - Valor de la reacción (negative, neutral, positive)
225
+ * @param comment - Comentario opcional (máx 500 caracteres)
226
+ * @returns Promise con la respuesta
227
+ *
228
+ * @example
229
+ * ```typescript
230
+ * // En un blog público
231
+ * const response = await this.feedbackService.createAnonymousReaction(
232
+ * { entityType: 'blog', entityId: 'my-post-slug' },
233
+ * 'positive'
234
+ * );
235
+ * ```
236
+ */
237
+ async createAnonymousReaction(entityRef, value, comment) {
238
+ const request = {
239
+ type: 'reaction',
240
+ entityRef,
241
+ reactionValue: value,
242
+ description: comment || '',
243
+ deviceContext: this.captureDeviceContext(),
244
+ appId: this.config.appId,
245
+ };
246
+ return firstValueFrom(this.http.post(`${this.baseUrl}/anonymous`, request));
247
+ }
219
248
  // =========================================================================
220
249
  // Helpers privados para detección de browser/OS
221
250
  // =========================================================================
@@ -261,4 +290,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
261
290
  type: Injectable,
262
291
  args: [{ providedIn: 'root' }]
263
292
  }] });
264
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVlZGJhY2suc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2VydmljZXMvZmVlZGJhY2svZmVlZGJhY2suc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFjLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFhbkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQUVuRDs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1CRztBQUVILE1BQU0sT0FBTyxlQUFlO0lBRDVCO1FBRVUsV0FBTSxHQUFHLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBQ3pDLFNBQUksR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDMUIsY0FBUyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3pELFNBQUksR0FBRyxNQUFNLENBQUMsV0FBVyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7S0FzUXhEO0lBcFFDOztPQUVHO0lBQ0gsSUFBWSxPQUFPO1FBQ2pCLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzlELENBQUM7SUFFRDs7T0FFRztJQUNILG9CQUFvQjtRQUNsQixNQUFNLEVBQUUsR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDO1FB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RSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQy9ELElBQUksRUFBRSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7WUFBRSxPQUFPLE9BQU8sQ0FBQztRQUN6QyxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDOytHQXpRVSxlQUFlO21IQUFmLGVBQWUsY0FERixNQUFNOzs0RkFDbkIsZUFBZTtrQkFEM0IsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBmaXJzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVkFMVEVDSF9GRUVEQkFDS19DT05GSUcgfSBmcm9tICcuL2NvbmZpZyc7XG5pbXBvcnQge1xuICBDcmVhdGVGZWVkYmFja1JlcXVlc3QsXG4gIENyZWF0ZUZlZWRiYWNrUmVzcG9uc2UsXG4gIEdldEZlZWRiYWNrUmVzcG9uc2UsXG4gIENoZWNrRmVlZGJhY2tSZXNwb25zZSxcbiAgRGV2aWNlQ29udGV4dCxcbiAgRmVlZGJhY2tUeXBlLFxuICBDb250ZW50UmVmLFxuICBFbnRpdHlSZWYsXG4gIFJlYWN0aW9uVmFsdWUsXG4gIEZlZWRiYWNrRmlyZXN0b3JlRG9jLFxufSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IEZpcmVzdG9yZVNlcnZpY2UgfSBmcm9tICcuLi9maXJlYmFzZS9maXJlc3RvcmUuc2VydmljZSc7XG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uL2F1dGgvYXV0aC5zZXJ2aWNlJztcblxuLyoqXG4gKiBTZXJ2aWNpbyBwYXJhIGdlc3Rpb25hciBmZWVkYmFjayBkZSB1c3Vhcmlvcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogQENvbXBvbmVudCh7Li4ufSlcbiAqIGV4cG9ydCBjbGFzcyBNeUNvbXBvbmVudCB7XG4gKiAgIHByaXZhdGUgZmVlZGJhY2tTZXJ2aWNlID0gaW5qZWN0KEZlZWRiYWNrU2VydmljZSk7XG4gKlxuICogICBhc3luYyBzdWJtaXRGZWVkYmFjaygpIHtcbiAqICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuZmVlZGJhY2tTZXJ2aWNlLmNyZWF0ZUFzeW5jKFxuICogICAgICAgJ2ZlZWRiYWNrJyxcbiAqICAgICAgICdNaSBjb21lbnRhcmlvJyxcbiAqICAgICAgICdEZXNjcmlwY2nDs24gZGV0YWxsYWRhLi4uJ1xuICogICAgICk7XG4gKiAgICAgY29uc29sZS5sb2coJ0ZlZWRiYWNrIGVudmlhZG86JywgcmVzcG9uc2UuZmVlZGJhY2tJZCk7XG4gKiAgIH1cbiAqIH1cbiAqIGBgYFxuICovXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEZlZWRiYWNrU2VydmljZSB7XG4gIHByaXZhdGUgY29uZmlnID0gaW5qZWN0KFZBTFRFQ0hfRkVFREJBQ0tfQ09ORklHKTtcbiAgcHJpdmF0ZSBodHRwID0gaW5qZWN0KEh0dHBDbGllbnQpO1xuICBwcml2YXRlIGZpcmVzdG9yZSA9IGluamVjdChGaXJlc3RvcmVTZXJ2aWNlLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuICBwcml2YXRlIGF1dGggPSBpbmplY3QoQXV0aFNlcnZpY2UsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgLyoqXG4gICAqIFVSTCBiYXNlIHBhcmEgZW5kcG9pbnRzIGRlIGZlZWRiYWNrLlxuICAgKi9cbiAgcHJpdmF0ZSBnZXQgYmFzZVVybCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLmNvbmZpZy5hcGlVcmx9JHt0aGlzLmNvbmZpZy5mZWVkYmFja1ByZWZpeH1gO1xuICB9XG5cbiAgLyoqXG4gICAqIENhcHR1cmEgZWwgY29udGV4dG8gZGVsIGRpc3Bvc2l0aXZvIGF1dG9tw6F0aWNhbWVudGUuXG4gICAqL1xuICBjYXB0dXJlRGV2aWNlQ29udGV4dCgpOiBEZXZpY2VDb250ZXh0IHtcbiAgICBjb25zdCB1YSA9IG5hdmlnYXRvci51c2VyQWdlbnQ7XG4gICAgcmV0dXJuIHtcbiAgICAgIGJyb3dzZXI6IHRoaXMuZGV0ZWN0QnJvd3Nlcih1YSksXG4gICAgICBvczogdGhpcy5kZXRlY3RPUyh1YSksXG4gICAgICB2aWV3cG9ydDogYCR7d2luZG93LmlubmVyV2lkdGh9eCR7d2luZG93LmlubmVySGVpZ2h0fWAsXG4gICAgICBsYW5ndWFnZTogbmF2aWdhdG9yLmxhbmd1YWdlLFxuICAgICAgdXNlckFnZW50OiB1YSxcbiAgICAgIHBhZ2VVcmw6IHdpbmRvdy5sb2NhdGlvbi5ocmVmLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQ3JlYSB1biBudWV2byBmZWVkYmFjay5cbiAgICpcbiAgICogQHBhcmFtIHR5cGUgLSBUaXBvIGRlIGZlZWRiYWNrXG4gICAqIEBwYXJhbSB0aXRsZSAtIFTDrXR1bG8gZGVsIGZlZWRiYWNrXG4gICAqIEBwYXJhbSBkZXNjcmlwdGlvbiAtIERlc2NyaXBjacOzbiBkZXRhbGxhZGFcbiAgICogQHBhcmFtIGF0dGFjaG1lbnRzIC0gVVJMcyBkZSBhcmNoaXZvcyBhZGp1bnRvcyAob3BjaW9uYWwpXG4gICAqIEBwYXJhbSBjb250ZW50UmVmIC0gUmVmZXJlbmNpYSBhIGNvbnRlbmlkbyBlc3BlY8OtZmljbyAob3BjaW9uYWwpXG4gICAqIEByZXR1cm5zIE9ic2VydmFibGUgY29uIGxhIHJlc3B1ZXN0YVxuICAgKi9cbiAgY3JlYXRlKFxuICAgIHR5cGU6IEZlZWRiYWNrVHlwZSxcbiAgICB0aXRsZTogc3RyaW5nLFxuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmcsXG4gICAgYXR0YWNobWVudHM6IHN0cmluZ1tdID0gW10sXG4gICAgY29udGVudFJlZj86IENvbnRlbnRSZWZcbiAgKTogT2JzZXJ2YWJsZTxDcmVhdGVGZWVkYmFja1Jlc3BvbnNlPiB7XG4gICAgY29uc3QgcmVxdWVzdDogQ3JlYXRlRmVlZGJhY2tSZXF1ZXN0ID0ge1xuICAgICAgdHlwZSxcbiAgICAgIHRpdGxlLFxuICAgICAgZGVzY3JpcHRpb24sXG4gICAgICBhdHRhY2htZW50cyxcbiAgICAgIGNvbnRlbnRSZWYsXG4gICAgICBkZXZpY2VDb250ZXh0OiB0aGlzLmNhcHR1cmVEZXZpY2VDb250ZXh0KCksXG4gICAgICBhcHBJZDogdGhpcy5jb25maWcuYXBwSWQsXG4gICAgfTtcblxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxDcmVhdGVGZWVkYmFja1Jlc3BvbnNlPih0aGlzLmJhc2VVcmwsIHJlcXVlc3QpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWEgdW4gbnVldm8gZmVlZGJhY2sgKHZlcnNpw7NuIGFzeW5jL2F3YWl0KS5cbiAgICovXG4gIGFzeW5jIGNyZWF0ZUFzeW5jKFxuICAgIHR5cGU6IEZlZWRiYWNrVHlwZSxcbiAgICB0aXRsZTogc3RyaW5nLFxuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmcsXG4gICAgYXR0YWNobWVudHM6IHN0cmluZ1tdID0gW10sXG4gICAgY29udGVudFJlZj86IENvbnRlbnRSZWZcbiAgKTogUHJvbWlzZTxDcmVhdGVGZWVkYmFja1Jlc3BvbnNlPiB7XG4gICAgcmV0dXJuIGZpcnN0VmFsdWVGcm9tKFxuICAgICAgdGhpcy5jcmVhdGUodHlwZSwgdGl0bGUsIGRlc2NyaXB0aW9uLCBhdHRhY2htZW50cywgY29udGVudFJlZilcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIE9idGllbmUgdW4gZmVlZGJhY2sgcG9yIElEIChzb2xvIGVsIHByb3BpZXRhcmlvKS5cbiAgICpcbiAgICogQHBhcmFtIGZlZWRiYWNrSWQgLSBJRCBkZWwgZmVlZGJhY2tcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZSBjb24gbGEgcmVzcHVlc3RhXG4gICAqL1xuICBnZXRCeUlkKGZlZWRiYWNrSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8R2V0RmVlZGJhY2tSZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEdldEZlZWRiYWNrUmVzcG9uc2U+KGAke3RoaXMuYmFzZVVybH0vJHtmZWVkYmFja0lkfWApO1xuICB9XG5cbiAgLyoqXG4gICAqIE9idGllbmUgdW4gZmVlZGJhY2sgcG9yIElEICh2ZXJzacOzbiBhc3luYy9hd2FpdCkuXG4gICAqL1xuICBhc3luYyBnZXRCeUlkQXN5bmMoZmVlZGJhY2tJZDogc3RyaW5nKTogUHJvbWlzZTxHZXRGZWVkYmFja1Jlc3BvbnNlPiB7XG4gICAgcmV0dXJuIGZpcnN0VmFsdWVGcm9tKHRoaXMuZ2V0QnlJZChmZWVkYmFja0lkKSk7XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhIHNpIHVuIGFyY2hpdm8gY3VtcGxlIGNvbiBsYXMgcmVzdHJpY2Npb25lcy5cbiAgICovXG4gIHZhbGlkYXRlRmlsZShmaWxlOiBGaWxlKTogeyB2YWxpZDogYm9vbGVhbjsgZXJyb3I/OiBzdHJpbmcgfSB7XG4gICAgLy8gVmVyaWZpY2FyIHRhbWHDsW9cbiAgICBpZiAoZmlsZS5zaXplID4gdGhpcy5jb25maWcubWF4RmlsZVNpemUhKSB7XG4gICAgICBjb25zdCBtYXhTaXplTUIgPSBNYXRoLnJvdW5kKHRoaXMuY29uZmlnLm1heEZpbGVTaXplISAvICgxMDI0ICogMTAyNCkpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdmFsaWQ6IGZhbHNlLFxuICAgICAgICBlcnJvcjogYEVsIGFyY2hpdm8gZXhjZWRlIGVsIHRhbWHDsW8gbcOheGltbyBkZSAke21heFNpemVNQn1NQmAsXG4gICAgICB9O1xuICAgIH1cblxuICAgIC8vIFZlcmlmaWNhciB0aXBvXG4gICAgY29uc3QgYWxsb3dlZFR5cGVzID0gdGhpcy5jb25maWcuYWxsb3dlZEZpbGVUeXBlcyB8fCBbXTtcbiAgICBjb25zdCBpc0FsbG93ZWQgPSBhbGxvd2VkVHlwZXMuc29tZSgocGF0dGVybikgPT4ge1xuICAgICAgaWYgKHBhdHRlcm4uZW5kc1dpdGgoJy8qJykpIHtcbiAgICAgICAgY29uc3QgYmFzZVR5cGUgPSBwYXR0ZXJuLnJlcGxhY2UoJy8qJywgJycpO1xuICAgICAgICByZXR1cm4gZmlsZS50eXBlLnN0YXJ0c1dpdGgoYmFzZVR5cGUpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGZpbGUudHlwZSA9PT0gcGF0dGVybjtcbiAgICB9KTtcblxuICAgIGlmICghaXNBbGxvd2VkKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB2YWxpZDogZmFsc2UsXG4gICAgICAgIGVycm9yOiAnVGlwbyBkZSBhcmNoaXZvIG5vIHBlcm1pdGlkbycsXG4gICAgICB9O1xuICAgIH1cblxuICAgIHJldHVybiB7IHZhbGlkOiB0cnVlIH07XG4gIH1cblxuICAvKipcbiAgICogT2J0aWVuZSBsYSBjb25maWd1cmFjacOzbiBhY3R1YWwgZGVsIHNlcnZpY2lvLlxuICAgKi9cbiAgZ2V0Q29uZmlnKCk6IFJlYWRvbmx5PHR5cGVvZiB0aGlzLmNvbmZpZz4ge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZztcbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gUmVhY3Rpb24gTWV0aG9kcyAoQ29udGVudCBmZWVkYmFjayB3aXRoIGVtb2ppcylcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8qKlxuICAgKiBWZXJpZmljYSBzaSBlbCB1c3VhcmlvIHlhIGRpbyBmZWVkYmFjayBwYXJhIHVuYSBlbnRpZGFkIGVzcGVjw61maWNhLlxuICAgKlxuICAgKiBQcmltZXJvIGludGVudGEgbGVlciBkZSBGaXJlYmFzZSAocsOhcGlkbywgc2luIGxhdGVuY2lhIGRlIHJlZCBhbCBiYWNrZW5kKS5cbiAgICogU2kgRmlyZWJhc2Ugbm8gZXN0w6EgZGlzcG9uaWJsZSBvIGZhbGxhLCBoYWNlIGZhbGxiYWNrIGEgbGEgQVBJLlxuICAgKlxuICAgKiBAcGFyYW0gZW50aXR5VHlwZSAtIFRpcG8gZGUgZW50aWRhZCAoYXJ0aWNsZSwgZG9jcywgZmVhdHVyZSwgZXRjLilcbiAgICogQHBhcmFtIGVudGl0eUlkIC0gSUQgZGUgbGEgZW50aWRhZFxuICAgKiBAcmV0dXJucyBQcm9taXNlIGNvbiBsYSByZXNwdWVzdGEgZGUgdmVyaWZpY2FjacOzblxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKiBgYGB0eXBlc2NyaXB0XG4gICAqIGNvbnN0IGNoZWNrID0gYXdhaXQgdGhpcy5mZWVkYmFja1NlcnZpY2UuY2hlY2tGZWVkYmFjaygnYXJ0aWNsZScsICdhcnQtMTIzJyk7XG4gICAqIGlmIChjaGVjay5oYXNGZWVkYmFjaykge1xuICAgKiAgIGNvbnNvbGUubG9nKCdZYSBkaW8gZmVlZGJhY2s6JywgY2hlY2sucmVhY3Rpb25WYWx1ZSk7XG4gICAqIH1cbiAgICogYGBgXG4gICAqL1xuICBhc3luYyBjaGVja0ZlZWRiYWNrKFxuICAgIGVudGl0eVR5cGU6IHN0cmluZyxcbiAgICBlbnRpdHlJZDogc3RyaW5nXG4gICk6IFByb21pc2U8Q2hlY2tGZWVkYmFja1Jlc3BvbnNlPiB7XG4gICAgLy8gMS4gSW50ZW50YXIgRmlyZWJhc2UgcHJpbWVybyAoc2kgZXN0w6EgZGlzcG9uaWJsZSlcbiAgICBpZiAodGhpcy5maXJlc3RvcmUgJiYgdGhpcy5hdXRoKSB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCB1c2VySWQgPSB0aGlzLmF1dGgudXNlcigpPy51c2VySWQ7XG4gICAgICAgIGlmICh1c2VySWQpIHtcbiAgICAgICAgICAvLyBQYXRoOiBmZWVkYmFjay97ZW50aXR5VHlwZX0ve2VudGl0eUlkfS97dXNlcklkfVxuICAgICAgICAgIC8vIEZpcmVzdG9yZVNlcnZpY2UgYWdyZWdhIGF1dG9tw6F0aWNhbWVudGUgZWwgcHJlZmlqbyBhcHBzL3thcHBJZH0vXG4gICAgICAgICAgY29uc3QgY29sbGVjdGlvblBhdGggPSBgZmVlZGJhY2svJHtlbnRpdHlUeXBlfS8ke2VudGl0eUlkfWA7XG4gICAgICAgICAgY29uc3QgZG9jID0gYXdhaXQgdGhpcy5maXJlc3RvcmUuZ2V0RG9jPEZlZWRiYWNrRmlyZXN0b3JlRG9jPihcbiAgICAgICAgICAgIGNvbGxlY3Rpb25QYXRoLFxuICAgICAgICAgICAgdXNlcklkXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIGlmIChkb2MpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgIG9wZXJhdGlvbklkOiAnJyxcbiAgICAgICAgICAgICAgaGFzRmVlZGJhY2s6IHRydWUsXG4gICAgICAgICAgICAgIGZlZWRiYWNrSWQ6IGRvYy5mZWVkYmFja0lkLFxuICAgICAgICAgICAgICB0eXBlOiBkb2MudHlwZSBhcyBGZWVkYmFja1R5cGUsXG4gICAgICAgICAgICAgIHJlYWN0aW9uVmFsdWU6IGRvYy5yZWFjdGlvblZhbHVlIGFzIFJlYWN0aW9uVmFsdWUsXG4gICAgICAgICAgICAgIGNyZWF0ZWRBdDogZG9jLmNyZWF0ZWRBdD8udG9JU09TdHJpbmcoKSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gRG9jIG5vIGV4aXN0ZSA9IG5vIGhheSBmZWVkYmFja1xuICAgICAgICAgIHJldHVybiB7IG9wZXJhdGlvbklkOiAnJywgaGFzRmVlZGJhY2s6IGZhbHNlIH07XG4gICAgICAgIH1cbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIGNvbnNvbGUud2FybignW0ZlZWRiYWNrU2VydmljZV0gRmlyZWJhc2UgY2hlY2sgZmFpbGVkLCBmYWxsaW5nIGJhY2sgdG8gQVBJOicsIGVycm9yKTtcbiAgICAgICAgLy8gRmFsbGJhY2sgYSBBUElcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyAyLiBGYWxsYmFjazogbGxhbWFyIEFQSVxuICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXMoe1xuICAgICAgYXBwSWQ6IHRoaXMuY29uZmlnLmFwcElkLFxuICAgICAgZW50aXR5VHlwZSxcbiAgICAgIGVudGl0eUlkLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIGZpcnN0VmFsdWVGcm9tKFxuICAgICAgdGhpcy5odHRwLmdldDxDaGVja0ZlZWRiYWNrUmVzcG9uc2U+KGAke3RoaXMuYmFzZVVybH0vY2hlY2s/JHtwYXJhbXN9YClcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWEgbyBhY3R1YWxpemEgdW5hIHJlYWNjacOzbiAoZmVlZGJhY2sgY29uIGVtb2ppKS5cbiAgICpcbiAgICogQHBhcmFtIGVudGl0eVJlZiAtIFJlZmVyZW5jaWEgYSBsYSBlbnRpZGFkXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFZhbG9yIGRlIGxhIHJlYWNjacOzbiAobmVnYXRpdmUsIG5ldXRyYWwsIHBvc2l0aXZlKVxuICAgKiBAcGFyYW0gY29tbWVudCAtIENvbWVudGFyaW8gb3BjaW9uYWwgKG3DoXggNTAwIGNhcmFjdGVyZXMpXG4gICAqIEByZXR1cm5zIFByb21pc2UgY29uIGxhIHJlc3B1ZXN0YVxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKiBgYGB0eXBlc2NyaXB0XG4gICAqIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5mZWVkYmFja1NlcnZpY2UuY3JlYXRlUmVhY3Rpb24oXG4gICAqICAgeyBlbnRpdHlUeXBlOiAnYXJ0aWNsZScsIGVudGl0eUlkOiAnYXJ0LTEyMycgfSxcbiAgICogICAncG9zaXRpdmUnLFxuICAgKiAgICdNdXkgw7p0aWwhJ1xuICAgKiApO1xuICAgKiBgYGBcbiAgICovXG4gIGFzeW5jIGNyZWF0ZVJlYWN0aW9uKFxuICAgIGVudGl0eVJlZjogRW50aXR5UmVmLFxuICAgIHZhbHVlOiBSZWFjdGlvblZhbHVlLFxuICAgIGNvbW1lbnQ/OiBzdHJpbmdcbiAgKTogUHJvbWlzZTxDcmVhdGVGZWVkYmFja1Jlc3BvbnNlPiB7XG4gICAgY29uc3QgcmVxdWVzdDogQ3JlYXRlRmVlZGJhY2tSZXF1ZXN0ID0ge1xuICAgICAgdHlwZTogJ3JlYWN0aW9uJyxcbiAgICAgIGVudGl0eVJlZixcbiAgICAgIHJlYWN0aW9uVmFsdWU6IHZhbHVlLFxuICAgICAgZGVzY3JpcHRpb246IGNvbW1lbnQgfHwgJycsXG4gICAgICBkZXZpY2VDb250ZXh0OiB0aGlzLmNhcHR1cmVEZXZpY2VDb250ZXh0KCksXG4gICAgICBhcHBJZDogdGhpcy5jb25maWcuYXBwSWQsXG4gICAgfTtcblxuICAgIHJldHVybiBmaXJzdFZhbHVlRnJvbShcbiAgICAgIHRoaXMuaHR0cC5wb3N0PENyZWF0ZUZlZWRiYWNrUmVzcG9uc2U+KHRoaXMuYmFzZVVybCwgcmVxdWVzdClcbiAgICApO1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBIZWxwZXJzIHByaXZhZG9zIHBhcmEgZGV0ZWNjacOzbiBkZSBicm93c2VyL09TXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICBwcml2YXRlIGRldGVjdEJyb3dzZXIodWE6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgaWYgKHVhLmluY2x1ZGVzKCdFZGcvJykpIHJldHVybiAnRWRnZSc7XG4gICAgaWYgKHVhLmluY2x1ZGVzKCdDaHJvbWUvJykpIHJldHVybiAnQ2hyb21lJztcbiAgICBpZiAodWEuaW5jbHVkZXMoJ0ZpcmVmb3gvJykpIHJldHVybiAnRmlyZWZveCc7XG4gICAgaWYgKHVhLmluY2x1ZGVzKCdTYWZhcmkvJykgJiYgIXVhLmluY2x1ZGVzKCdDaHJvbWUnKSkgcmV0dXJuICdTYWZhcmknO1xuICAgIGlmICh1YS5pbmNsdWRlcygnT3BlcmEnKSB8fCB1YS5pbmNsdWRlcygnT1BSLycpKSByZXR1cm4gJ09wZXJhJztcbiAgICByZXR1cm4gJ1Vua25vd24nO1xuICB9XG5cbiAgcHJpdmF0ZSBkZXRlY3RPUyh1YTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAodWEuaW5jbHVkZXMoJ1dpbmRvd3MgTlQgMTAnKSkgcmV0dXJuICdXaW5kb3dzIDEwJztcbiAgICBpZiAodWEuaW5jbHVkZXMoJ1dpbmRvd3MgTlQgMTEnKSkgcmV0dXJuICdXaW5kb3dzIDExJztcbiAgICBpZiAodWEuaW5jbHVkZXMoJ1dpbmRvd3MnKSkgcmV0dXJuICdXaW5kb3dzJztcbiAgICBpZiAodWEuaW5jbHVkZXMoJ01hYyBPUyBYJykpIHtcbiAgICAgIGNvbnN0IG1hdGNoID0gdWEubWF0Y2goL01hYyBPUyBYIChcXGQrWy5fXVxcZCspLyk7XG4gICAgICBpZiAobWF0Y2gpIHtcbiAgICAgICAgcmV0dXJuIGBtYWNPUyAke21hdGNoWzFdLnJlcGxhY2UoJ18nLCAnLicpfWA7XG4gICAgICB9XG4gICAgICByZXR1cm4gJ21hY09TJztcbiAgICB9XG4gICAgaWYgKHVhLmluY2x1ZGVzKCdBbmRyb2lkJykpIHJldHVybiAnQW5kcm9pZCc7XG4gICAgaWYgKHVhLmluY2x1ZGVzKCdpUGhvbmUnKSB8fCB1YS5pbmNsdWRlcygnaVBhZCcpKSByZXR1cm4gJ2lPUyc7XG4gICAgaWYgKHVhLmluY2x1ZGVzKCdMaW51eCcpKSByZXR1cm4gJ0xpbnV4JztcbiAgICByZXR1cm4gJ1Vua25vd24nO1xuICB9XG59XG4iXX0=
293
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVlZGJhY2suc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2VydmljZXMvZmVlZGJhY2svZmVlZGJhY2suc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFjLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFhbkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQUVuRDs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1CRztBQUVILE1BQU0sT0FBTyxlQUFlO0lBRDVCO1FBRVUsV0FBTSxHQUFHLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBQ3pDLFNBQUksR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDMUIsY0FBUyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3pELFNBQUksR0FBRyxNQUFNLENBQUMsV0FBVyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7S0EyU3hEO0lBelNDOztPQUVHO0lBQ0gsSUFBWSxPQUFPO1FBQ2pCLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzlELENBQUM7SUFFRDs7T0FFRztJQUNILG9CQUFvQjtRQUNsQixNQUFNLEVBQUUsR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDO1FB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QUN0RCxJQUFJLEVBQUUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDO1lBQUUsT0FBTyxTQUFTLENBQUM7UUFDN0MsSUFBSSxFQUFFLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDNUIsTUFBTSxLQUFLLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1lBQ2hELElBQUksS0FBSyxFQUFFLENBQUM7Z0JBQ1YsT0FBTyxTQUFTLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDL0MsQ0FBQztZQUNELE9BQU8sT0FBTyxDQUFDO1FBQ2pCLENBQUM7UUFDRCxJQUFJLEVBQUUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDO1lBQUUsT0FBTyxTQUFTLENBQUM7UUFDN0MsSUFBSSxFQUFFLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDL0QsSUFBSSxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztZQUFFLE9BQU8sT0FBTyxDQUFDO1FBQ3pDLE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7K0dBOVNVLGVBQWU7bUhBQWYsZUFBZSxjQURGLE1BQU07OzRGQUNuQixlQUFlO2tCQUQzQixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IE9ic2VydmFibGUsIGZpcnN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBWQUxURUNIX0ZFRURCQUNLX0NPTkZJRyB9IGZyb20gJy4vY29uZmlnJztcbmltcG9ydCB7XG4gIENyZWF0ZUZlZWRiYWNrUmVxdWVzdCxcbiAgQ3JlYXRlRmVlZGJhY2tSZXNwb25zZSxcbiAgR2V0RmVlZGJhY2tSZXNwb25zZSxcbiAgQ2hlY2tGZWVkYmFja1Jlc3BvbnNlLFxuICBEZXZpY2VDb250ZXh0LFxuICBGZWVkYmFja1R5cGUsXG4gIENvbnRlbnRSZWYsXG4gIEVudGl0eVJlZixcbiAgUmVhY3Rpb25WYWx1ZSxcbiAgRmVlZGJhY2tGaXJlc3RvcmVEb2MsXG59IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgRmlyZXN0b3JlU2VydmljZSB9IGZyb20gJy4uL2ZpcmViYXNlL2ZpcmVzdG9yZS5zZXJ2aWNlJztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vYXV0aC9hdXRoLnNlcnZpY2UnO1xuXG4vKipcbiAqIFNlcnZpY2lvIHBhcmEgZ2VzdGlvbmFyIGZlZWRiYWNrIGRlIHVzdWFyaW9zLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBAQ29tcG9uZW50KHsuLi59KVxuICogZXhwb3J0IGNsYXNzIE15Q29tcG9uZW50IHtcbiAqICAgcHJpdmF0ZSBmZWVkYmFja1NlcnZpY2UgPSBpbmplY3QoRmVlZGJhY2tTZXJ2aWNlKTtcbiAqXG4gKiAgIGFzeW5jIHN1Ym1pdEZlZWRiYWNrKCkge1xuICogICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5mZWVkYmFja1NlcnZpY2UuY3JlYXRlQXN5bmMoXG4gKiAgICAgICAnZmVlZGJhY2snLFxuICogICAgICAgJ01pIGNvbWVudGFyaW8nLFxuICogICAgICAgJ0Rlc2NyaXBjacOzbiBkZXRhbGxhZGEuLi4nXG4gKiAgICAgKTtcbiAqICAgICBjb25zb2xlLmxvZygnRmVlZGJhY2sgZW52aWFkbzonLCByZXNwb25zZS5mZWVkYmFja0lkKTtcbiAqICAgfVxuICogfVxuICogYGBgXG4gKi9cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgRmVlZGJhY2tTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBjb25maWcgPSBpbmplY3QoVkFMVEVDSF9GRUVEQkFDS19DT05GSUcpO1xuICBwcml2YXRlIGh0dHAgPSBpbmplY3QoSHR0cENsaWVudCk7XG4gIHByaXZhdGUgZmlyZXN0b3JlID0gaW5qZWN0KEZpcmVzdG9yZVNlcnZpY2UsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG4gIHByaXZhdGUgYXV0aCA9IGluamVjdChBdXRoU2VydmljZSwgeyBvcHRpb25hbDogdHJ1ZSB9KTtcblxuICAvKipcbiAgICogVVJMIGJhc2UgcGFyYSBlbmRwb2ludHMgZGUgZmVlZGJhY2suXG4gICAqL1xuICBwcml2YXRlIGdldCBiYXNlVXJsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3RoaXMuY29uZmlnLmFwaVVybH0ke3RoaXMuY29uZmlnLmZlZWRiYWNrUHJlZml4fWA7XG4gIH1cblxuICAvKipcbiAgICogQ2FwdHVyYSBlbCBjb250ZXh0byBkZWwgZGlzcG9zaXRpdm8gYXV0b23DoXRpY2FtZW50ZS5cbiAgICovXG4gIGNhcHR1cmVEZXZpY2VDb250ZXh0KCk6IERldmljZUNvbnRleHQge1xuICAgIGNvbnN0IHVhID0gbmF2aWdhdG9yLnVzZXJBZ2VudDtcbiAgICByZXR1cm4ge1xuICAgICAgYnJvd3NlcjogdGhpcy5kZXRlY3RCcm93c2VyKHVhKSxcbiAgICAgIG9zOiB0aGlzLmRldGVjdE9TKHVhKSxcbiAgICAgIHZpZXdwb3J0OiBgJHt3aW5kb3cuaW5uZXJXaWR0aH14JHt3aW5kb3cuaW5uZXJIZWlnaHR9YCxcbiAgICAgIGxhbmd1YWdlOiBuYXZpZ2F0b3IubGFuZ3VhZ2UsXG4gICAgICB1c2VyQWdlbnQ6IHVhLFxuICAgICAgcGFnZVVybDogd2luZG93LmxvY2F0aW9uLmhyZWYsXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhIHVuIG51ZXZvIGZlZWRiYWNrLlxuICAgKlxuICAgKiBAcGFyYW0gdHlwZSAtIFRpcG8gZGUgZmVlZGJhY2tcbiAgICogQHBhcmFtIHRpdGxlIC0gVMOtdHVsbyBkZWwgZmVlZGJhY2tcbiAgICogQHBhcmFtIGRlc2NyaXB0aW9uIC0gRGVzY3JpcGNpw7NuIGRldGFsbGFkYVxuICAgKiBAcGFyYW0gYXR0YWNobWVudHMgLSBVUkxzIGRlIGFyY2hpdm9zIGFkanVudG9zIChvcGNpb25hbClcbiAgICogQHBhcmFtIGNvbnRlbnRSZWYgLSBSZWZlcmVuY2lhIGEgY29udGVuaWRvIGVzcGVjw61maWNvIChvcGNpb25hbClcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZSBjb24gbGEgcmVzcHVlc3RhXG4gICAqL1xuICBjcmVhdGUoXG4gICAgdHlwZTogRmVlZGJhY2tUeXBlLFxuICAgIHRpdGxlOiBzdHJpbmcsXG4gICAgZGVzY3JpcHRpb246IHN0cmluZyxcbiAgICBhdHRhY2htZW50czogc3RyaW5nW10gPSBbXSxcbiAgICBjb250ZW50UmVmPzogQ29udGVudFJlZlxuICApOiBPYnNlcnZhYmxlPENyZWF0ZUZlZWRiYWNrUmVzcG9uc2U+IHtcbiAgICBjb25zdCByZXF1ZXN0OiBDcmVhdGVGZWVkYmFja1JlcXVlc3QgPSB7XG4gICAgICB0eXBlLFxuICAgICAgdGl0bGUsXG4gICAgICBkZXNjcmlwdGlvbixcbiAgICAgIGF0dGFjaG1lbnRzLFxuICAgICAgY29udGVudFJlZixcbiAgICAgIGRldmljZUNvbnRleHQ6IHRoaXMuY2FwdHVyZURldmljZUNvbnRleHQoKSxcbiAgICAgIGFwcElkOiB0aGlzLmNvbmZpZy5hcHBJZCxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PENyZWF0ZUZlZWRiYWNrUmVzcG9uc2U+KHRoaXMuYmFzZVVybCwgcmVxdWVzdCk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYSB1biBudWV2byBmZWVkYmFjayAodmVyc2nDs24gYXN5bmMvYXdhaXQpLlxuICAgKi9cbiAgYXN5bmMgY3JlYXRlQXN5bmMoXG4gICAgdHlwZTogRmVlZGJhY2tUeXBlLFxuICAgIHRpdGxlOiBzdHJpbmcsXG4gICAgZGVzY3JpcHRpb246IHN0cmluZyxcbiAgICBhdHRhY2htZW50czogc3RyaW5nW10gPSBbXSxcbiAgICBjb250ZW50UmVmPzogQ29udGVudFJlZlxuICApOiBQcm9taXNlPENyZWF0ZUZlZWRiYWNrUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gZmlyc3RWYWx1ZUZyb20oXG4gICAgICB0aGlzLmNyZWF0ZSh0eXBlLCB0aXRsZSwgZGVzY3JpcHRpb24sIGF0dGFjaG1lbnRzLCBjb250ZW50UmVmKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogT2J0aWVuZSB1biBmZWVkYmFjayBwb3IgSUQgKHNvbG8gZWwgcHJvcGlldGFyaW8pLlxuICAgKlxuICAgKiBAcGFyYW0gZmVlZGJhY2tJZCAtIElEIGRlbCBmZWVkYmFja1xuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlIGNvbiBsYSByZXNwdWVzdGFcbiAgICovXG4gIGdldEJ5SWQoZmVlZGJhY2tJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxHZXRGZWVkYmFja1Jlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8R2V0RmVlZGJhY2tSZXNwb25zZT4oYCR7dGhpcy5iYXNlVXJsfS8ke2ZlZWRiYWNrSWR9YCk7XG4gIH1cblxuICAvKipcbiAgICogT2J0aWVuZSB1biBmZWVkYmFjayBwb3IgSUQgKHZlcnNpw7NuIGFzeW5jL2F3YWl0KS5cbiAgICovXG4gIGFzeW5jIGdldEJ5SWRBc3luYyhmZWVkYmFja0lkOiBzdHJpbmcpOiBQcm9taXNlPEdldEZlZWRiYWNrUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gZmlyc3RWYWx1ZUZyb20odGhpcy5nZXRCeUlkKGZlZWRiYWNrSWQpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGEgc2kgdW4gYXJjaGl2byBjdW1wbGUgY29uIGxhcyByZXN0cmljY2lvbmVzLlxuICAgKi9cbiAgdmFsaWRhdGVGaWxlKGZpbGU6IEZpbGUpOiB7IHZhbGlkOiBib29sZWFuOyBlcnJvcj86IHN0cmluZyB9IHtcbiAgICAvLyBWZXJpZmljYXIgdGFtYcOxb1xuICAgIGlmIChmaWxlLnNpemUgPiB0aGlzLmNvbmZpZy5tYXhGaWxlU2l6ZSEpIHtcbiAgICAgIGNvbnN0IG1heFNpemVNQiA9IE1hdGgucm91bmQodGhpcy5jb25maWcubWF4RmlsZVNpemUhIC8gKDEwMjQgKiAxMDI0KSk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB2YWxpZDogZmFsc2UsXG4gICAgICAgIGVycm9yOiBgRWwgYXJjaGl2byBleGNlZGUgZWwgdGFtYcOxbyBtw6F4aW1vIGRlICR7bWF4U2l6ZU1CfU1CYCxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgLy8gVmVyaWZpY2FyIHRpcG9cbiAgICBjb25zdCBhbGxvd2VkVHlwZXMgPSB0aGlzLmNvbmZpZy5hbGxvd2VkRmlsZVR5cGVzIHx8IFtdO1xuICAgIGNvbnN0IGlzQWxsb3dlZCA9IGFsbG93ZWRUeXBlcy5zb21lKChwYXR0ZXJuKSA9PiB7XG4gICAgICBpZiAocGF0dGVybi5lbmRzV2l0aCgnLyonKSkge1xuICAgICAgICBjb25zdCBiYXNlVHlwZSA9IHBhdHRlcm4ucmVwbGFjZSgnLyonLCAnJyk7XG4gICAgICAgIHJldHVybiBmaWxlLnR5cGUuc3RhcnRzV2l0aChiYXNlVHlwZSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gZmlsZS50eXBlID09PSBwYXR0ZXJuO1xuICAgIH0pO1xuXG4gICAgaWYgKCFpc0FsbG93ZWQpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHZhbGlkOiBmYWxzZSxcbiAgICAgICAgZXJyb3I6ICdUaXBvIGRlIGFyY2hpdm8gbm8gcGVybWl0aWRvJyxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIHsgdmFsaWQ6IHRydWUgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPYnRpZW5lIGxhIGNvbmZpZ3VyYWNpw7NuIGFjdHVhbCBkZWwgc2VydmljaW8uXG4gICAqL1xuICBnZXRDb25maWcoKTogUmVhZG9ubHk8dHlwZW9mIHRoaXMuY29uZmlnPiB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnO1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBSZWFjdGlvbiBNZXRob2RzIChDb250ZW50IGZlZWRiYWNrIHdpdGggZW1vamlzKVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLyoqXG4gICAqIFZlcmlmaWNhIHNpIGVsIHVzdWFyaW8geWEgZGlvIGZlZWRiYWNrIHBhcmEgdW5hIGVudGlkYWQgZXNwZWPDrWZpY2EuXG4gICAqXG4gICAqIFByaW1lcm8gaW50ZW50YSBsZWVyIGRlIEZpcmViYXNlIChyw6FwaWRvLCBzaW4gbGF0ZW5jaWEgZGUgcmVkIGFsIGJhY2tlbmQpLlxuICAgKiBTaSBGaXJlYmFzZSBubyBlc3TDoSBkaXNwb25pYmxlIG8gZmFsbGEsIGhhY2UgZmFsbGJhY2sgYSBsYSBBUEkuXG4gICAqXG4gICAqIEBwYXJhbSBlbnRpdHlUeXBlIC0gVGlwbyBkZSBlbnRpZGFkIChhcnRpY2xlLCBkb2NzLCBmZWF0dXJlLCBldGMuKVxuICAgKiBAcGFyYW0gZW50aXR5SWQgLSBJRCBkZSBsYSBlbnRpZGFkXG4gICAqIEByZXR1cm5zIFByb21pc2UgY29uIGxhIHJlc3B1ZXN0YSBkZSB2ZXJpZmljYWNpw7NuXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqIGBgYHR5cGVzY3JpcHRcbiAgICogY29uc3QgY2hlY2sgPSBhd2FpdCB0aGlzLmZlZWRiYWNrU2VydmljZS5jaGVja0ZlZWRiYWNrKCdhcnRpY2xlJywgJ2FydC0xMjMnKTtcbiAgICogaWYgKGNoZWNrLmhhc0ZlZWRiYWNrKSB7XG4gICAqICAgY29uc29sZS5sb2coJ1lhIGRpbyBmZWVkYmFjazonLCBjaGVjay5yZWFjdGlvblZhbHVlKTtcbiAgICogfVxuICAgKiBgYGBcbiAgICovXG4gIGFzeW5jIGNoZWNrRmVlZGJhY2soXG4gICAgZW50aXR5VHlwZTogc3RyaW5nLFxuICAgIGVudGl0eUlkOiBzdHJpbmdcbiAgKTogUHJvbWlzZTxDaGVja0ZlZWRiYWNrUmVzcG9uc2U+IHtcbiAgICAvLyAxLiBJbnRlbnRhciBGaXJlYmFzZSBwcmltZXJvIChzaSBlc3TDoSBkaXNwb25pYmxlKVxuICAgIGlmICh0aGlzLmZpcmVzdG9yZSAmJiB0aGlzLmF1dGgpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHVzZXJJZCA9IHRoaXMuYXV0aC51c2VyKCk/LnVzZXJJZDtcbiAgICAgICAgaWYgKHVzZXJJZCkge1xuICAgICAgICAgIC8vIFBhdGg6IGZlZWRiYWNrL3tlbnRpdHlUeXBlfS97ZW50aXR5SWR9L3t1c2VySWR9XG4gICAgICAgICAgLy8gRmlyZXN0b3JlU2VydmljZSBhZ3JlZ2EgYXV0b23DoXRpY2FtZW50ZSBlbCBwcmVmaWpvIGFwcHMve2FwcElkfS9cbiAgICAgICAgICBjb25zdCBjb2xsZWN0aW9uUGF0aCA9IGBmZWVkYmFjay8ke2VudGl0eVR5cGV9LyR7ZW50aXR5SWR9YDtcbiAgICAgICAgICBjb25zdCBkb2MgPSBhd2FpdCB0aGlzLmZpcmVzdG9yZS5nZXREb2M8RmVlZGJhY2tGaXJlc3RvcmVEb2M+KFxuICAgICAgICAgICAgY29sbGVjdGlvblBhdGgsXG4gICAgICAgICAgICB1c2VySWRcbiAgICAgICAgICApO1xuXG4gICAgICAgICAgaWYgKGRvYykge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgb3BlcmF0aW9uSWQ6ICcnLFxuICAgICAgICAgICAgICBoYXNGZWVkYmFjazogdHJ1ZSxcbiAgICAgICAgICAgICAgZmVlZGJhY2tJZDogZG9jLmZlZWRiYWNrSWQsXG4gICAgICAgICAgICAgIHR5cGU6IGRvYy50eXBlIGFzIEZlZWRiYWNrVHlwZSxcbiAgICAgICAgICAgICAgcmVhY3Rpb25WYWx1ZTogZG9jLnJlYWN0aW9uVmFsdWUgYXMgUmVhY3Rpb25WYWx1ZSxcbiAgICAgICAgICAgICAgY3JlYXRlZEF0OiBkb2MuY3JlYXRlZEF0Py50b0lTT1N0cmluZygpLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBEb2Mgbm8gZXhpc3RlID0gbm8gaGF5IGZlZWRiYWNrXG4gICAgICAgICAgcmV0dXJuIHsgb3BlcmF0aW9uSWQ6ICcnLCBoYXNGZWVkYmFjazogZmFsc2UgfTtcbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgY29uc29sZS53YXJuKCdbRmVlZGJhY2tTZXJ2aWNlXSBGaXJlYmFzZSBjaGVjayBmYWlsZWQsIGZhbGxpbmcgYmFjayB0byBBUEk6JywgZXJyb3IpO1xuICAgICAgICAvLyBGYWxsYmFjayBhIEFQSVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIDIuIEZhbGxiYWNrOiBsbGFtYXIgQVBJXG4gICAgY29uc3QgcGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcyh7XG4gICAgICBhcHBJZDogdGhpcy5jb25maWcuYXBwSWQsXG4gICAgICBlbnRpdHlUeXBlLFxuICAgICAgZW50aXR5SWQsXG4gICAgfSk7XG5cbiAgICByZXR1cm4gZmlyc3RWYWx1ZUZyb20oXG4gICAgICB0aGlzLmh0dHAuZ2V0PENoZWNrRmVlZGJhY2tSZXNwb25zZT4oYCR7dGhpcy5iYXNlVXJsfS9jaGVjaz8ke3BhcmFtc31gKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYSBvIGFjdHVhbGl6YSB1bmEgcmVhY2Npw7NuIChmZWVkYmFjayBjb24gZW1vamkpLlxuICAgKlxuICAgKiBAcGFyYW0gZW50aXR5UmVmIC0gUmVmZXJlbmNpYSBhIGxhIGVudGlkYWRcbiAgICogQHBhcmFtIHZhbHVlIC0gVmFsb3IgZGUgbGEgcmVhY2Npw7NuIChuZWdhdGl2ZSwgbmV1dHJhbCwgcG9zaXRpdmUpXG4gICAqIEBwYXJhbSBjb21tZW50IC0gQ29tZW50YXJpbyBvcGNpb25hbCAobcOheCA1MDAgY2FyYWN0ZXJlcylcbiAgICogQHJldHVybnMgUHJvbWlzZSBjb24gbGEgcmVzcHVlc3RhXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqIGBgYHR5cGVzY3JpcHRcbiAgICogY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmZlZWRiYWNrU2VydmljZS5jcmVhdGVSZWFjdGlvbihcbiAgICogICB7IGVudGl0eVR5cGU6ICdhcnRpY2xlJywgZW50aXR5SWQ6ICdhcnQtMTIzJyB9LFxuICAgKiAgICdwb3NpdGl2ZScsXG4gICAqICAgJ011eSDDunRpbCEnXG4gICAqICk7XG4gICAqIGBgYFxuICAgKi9cbiAgYXN5bmMgY3JlYXRlUmVhY3Rpb24oXG4gICAgZW50aXR5UmVmOiBFbnRpdHlSZWYsXG4gICAgdmFsdWU6IFJlYWN0aW9uVmFsdWUsXG4gICAgY29tbWVudD86IHN0cmluZ1xuICApOiBQcm9taXNlPENyZWF0ZUZlZWRiYWNrUmVzcG9uc2U+IHtcbiAgICBjb25zdCByZXF1ZXN0OiBDcmVhdGVGZWVkYmFja1JlcXVlc3QgPSB7XG4gICAgICB0eXBlOiAncmVhY3Rpb24nLFxuICAgICAgZW50aXR5UmVmLFxuICAgICAgcmVhY3Rpb25WYWx1ZTogdmFsdWUsXG4gICAgICBkZXNjcmlwdGlvbjogY29tbWVudCB8fCAnJyxcbiAgICAgIGRldmljZUNvbnRleHQ6IHRoaXMuY2FwdHVyZURldmljZUNvbnRleHQoKSxcbiAgICAgIGFwcElkOiB0aGlzLmNvbmZpZy5hcHBJZCxcbiAgICB9O1xuXG4gICAgcmV0dXJuIGZpcnN0VmFsdWVGcm9tKFxuICAgICAgdGhpcy5odHRwLnBvc3Q8Q3JlYXRlRmVlZGJhY2tSZXNwb25zZT4odGhpcy5iYXNlVXJsLCByZXF1ZXN0KVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYSBmZWVkYmFjayBhbsOzbmltbyAoc2luIGF1dGVudGljYWNpw7NuIHJlcXVlcmlkYSkuXG4gICAqIFVzYWRvIHBhcmEgYmxvZ3MsIEZBUXMgeSBjb250ZW5pZG8gcMO6YmxpY28uXG4gICAqXG4gICAqIEBwYXJhbSBlbnRpdHlSZWYgLSBSZWZlcmVuY2lhIGEgbGEgZW50aWRhZFxuICAgKiBAcGFyYW0gdmFsdWUgLSBWYWxvciBkZSBsYSByZWFjY2nDs24gKG5lZ2F0aXZlLCBuZXV0cmFsLCBwb3NpdGl2ZSlcbiAgICogQHBhcmFtIGNvbW1lbnQgLSBDb21lbnRhcmlvIG9wY2lvbmFsIChtw6F4IDUwMCBjYXJhY3RlcmVzKVxuICAgKiBAcmV0dXJucyBQcm9taXNlIGNvbiBsYSByZXNwdWVzdGFcbiAgICpcbiAgICogQGV4YW1wbGVcbiAgICogYGBgdHlwZXNjcmlwdFxuICAgKiAvLyBFbiB1biBibG9nIHDDumJsaWNvXG4gICAqIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5mZWVkYmFja1NlcnZpY2UuY3JlYXRlQW5vbnltb3VzUmVhY3Rpb24oXG4gICAqICAgeyBlbnRpdHlUeXBlOiAnYmxvZycsIGVudGl0eUlkOiAnbXktcG9zdC1zbHVnJyB9LFxuICAgKiAgICdwb3NpdGl2ZSdcbiAgICogKTtcbiAgICogYGBgXG4gICAqL1xuICBhc3luYyBjcmVhdGVBbm9ueW1vdXNSZWFjdGlvbihcbiAgICBlbnRpdHlSZWY6IEVudGl0eVJlZixcbiAgICB2YWx1ZTogUmVhY3Rpb25WYWx1ZSxcbiAgICBjb21tZW50Pzogc3RyaW5nXG4gICk6IFByb21pc2U8Q3JlYXRlRmVlZGJhY2tSZXNwb25zZT4ge1xuICAgIGNvbnN0IHJlcXVlc3QgPSB7XG4gICAgICB0eXBlOiAncmVhY3Rpb24nIGFzIGNvbnN0LFxuICAgICAgZW50aXR5UmVmLFxuICAgICAgcmVhY3Rpb25WYWx1ZTogdmFsdWUsXG4gICAgICBkZXNjcmlwdGlvbjogY29tbWVudCB8fCAnJyxcbiAgICAgIGRldmljZUNvbnRleHQ6IHRoaXMuY2FwdHVyZURldmljZUNvbnRleHQoKSxcbiAgICAgIGFwcElkOiB0aGlzLmNvbmZpZy5hcHBJZCxcbiAgICB9O1xuXG4gICAgcmV0dXJuIGZpcnN0VmFsdWVGcm9tKFxuICAgICAgdGhpcy5odHRwLnBvc3Q8Q3JlYXRlRmVlZGJhY2tSZXNwb25zZT4oYCR7dGhpcy5iYXNlVXJsfS9hbm9ueW1vdXNgLCByZXF1ZXN0KVxuICAgICk7XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIEhlbHBlcnMgcHJpdmFkb3MgcGFyYSBkZXRlY2Npw7NuIGRlIGJyb3dzZXIvT1NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIHByaXZhdGUgZGV0ZWN0QnJvd3Nlcih1YTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAodWEuaW5jbHVkZXMoJ0VkZy8nKSkgcmV0dXJuICdFZGdlJztcbiAgICBpZiAodWEuaW5jbHVkZXMoJ0Nocm9tZS8nKSkgcmV0dXJuICdDaHJvbWUnO1xuICAgIGlmICh1YS5pbmNsdWRlcygnRmlyZWZveC8nKSkgcmV0dXJuICdGaXJlZm94JztcbiAgICBpZiAodWEuaW5jbHVkZXMoJ1NhZmFyaS8nKSAmJiAhdWEuaW5jbHVkZXMoJ0Nocm9tZScpKSByZXR1cm4gJ1NhZmFyaSc7XG4gICAgaWYgKHVhLmluY2x1ZGVzKCdPcGVyYScpIHx8IHVhLmluY2x1ZGVzKCdPUFIvJykpIHJldHVybiAnT3BlcmEnO1xuICAgIHJldHVybiAnVW5rbm93bic7XG4gIH1cblxuICBwcml2YXRlIGRldGVjdE9TKHVhOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGlmICh1YS5pbmNsdWRlcygnV2luZG93cyBOVCAxMCcpKSByZXR1cm4gJ1dpbmRvd3MgMTAnO1xuICAgIGlmICh1YS5pbmNsdWRlcygnV2luZG93cyBOVCAxMScpKSByZXR1cm4gJ1dpbmRvd3MgMTEnO1xuICAgIGlmICh1YS5pbmNsdWRlcygnV2luZG93cycpKSByZXR1cm4gJ1dpbmRvd3MnO1xuICAgIGlmICh1YS5pbmNsdWRlcygnTWFjIE9TIFgnKSkge1xuICAgICAgY29uc3QgbWF0Y2ggPSB1YS5tYXRjaCgvTWFjIE9TIFggKFxcZCtbLl9dXFxkKykvKTtcbiAgICAgIGlmIChtYXRjaCkge1xuICAgICAgICByZXR1cm4gYG1hY09TICR7bWF0Y2hbMV0ucmVwbGFjZSgnXycsICcuJyl9YDtcbiAgICAgIH1cbiAgICAgIHJldHVybiAnbWFjT1MnO1xuICAgIH1cbiAgICBpZiAodWEuaW5jbHVkZXMoJ0FuZHJvaWQnKSkgcmV0dXJuICdBbmRyb2lkJztcbiAgICBpZiAodWEuaW5jbHVkZXMoJ2lQaG9uZScpIHx8IHVhLmluY2x1ZGVzKCdpUGFkJykpIHJldHVybiAnaU9TJztcbiAgICBpZiAodWEuaW5jbHVkZXMoJ0xpbnV4JykpIHJldHVybiAnTGludXgnO1xuICAgIHJldHVybiAnVW5rbm93bic7XG4gIH1cbn1cbiJdfQ==