@agnos-ui/angular-bootstrap 0.4.0-next.0 → 0.4.0-next.1

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.
@@ -23,7 +23,7 @@ function ModalDefaultSlotsComponent_ng_template_0_Template(rf, ctx) { if (rf & 1
23
23
  const state_r2 = ctx.state;
24
24
  const widget_r1 = ctx.widget;
25
25
  i0.ɵɵadvance();
26
- i0.ɵɵproperty("auSlot", state_r2.slotTitle)("auSlotProps", i0.ɵɵpureFunction2(3, _c2, state_r2, widget_r1));
26
+ i0.ɵɵproperty("auSlot", state_r2.title)("auSlotProps", i0.ɵɵpureFunction2(3, _c2, state_r2, widget_r1));
27
27
  i0.ɵɵadvance();
28
28
  i0.ɵɵconditional(state_r2.closeButton ? 2 : -1);
29
29
  } }
@@ -37,7 +37,7 @@ function ModalDefaultSlotsComponent_ng_template_2_Conditional_0_Template(rf, ctx
37
37
  const state_r4 = ctx_r2.state;
38
38
  const widget_r5 = ctx_r2.widget;
39
39
  i0.ɵɵadvance();
40
- i0.ɵɵproperty("auSlot", state_r4.slotHeader)("auSlotProps", i0.ɵɵpureFunction2(2, _c2, state_r4, widget_r5));
40
+ i0.ɵɵproperty("auSlot", state_r4.header)("auSlotProps", i0.ɵɵpureFunction2(2, _c2, state_r4, widget_r5));
41
41
  } }
42
42
  function ModalDefaultSlotsComponent_ng_template_2_ng_template_2_Template(rf, ctx) { }
43
43
  function ModalDefaultSlotsComponent_ng_template_2_Conditional_3_ng_template_1_Template(rf, ctx) { }
@@ -50,7 +50,7 @@ function ModalDefaultSlotsComponent_ng_template_2_Conditional_3_Template(rf, ctx
50
50
  const state_r4 = ctx_r2.state;
51
51
  const widget_r5 = ctx_r2.widget;
52
52
  i0.ɵɵadvance();
53
- i0.ɵɵproperty("auSlot", state_r4.slotFooter)("auSlotProps", i0.ɵɵpureFunction2(2, _c2, state_r4, widget_r5));
53
+ i0.ɵɵproperty("auSlot", state_r4.footer)("auSlotProps", i0.ɵɵpureFunction2(2, _c2, state_r4, widget_r5));
54
54
  } }
55
55
  function ModalDefaultSlotsComponent_ng_template_2_Template(rf, ctx) { if (rf & 1) {
56
56
  i0.ɵɵtemplate(0, ModalDefaultSlotsComponent_ng_template_2_Conditional_0_Template, 2, 5, "div", 7);
@@ -61,11 +61,11 @@ function ModalDefaultSlotsComponent_ng_template_2_Template(rf, ctx) { if (rf & 1
61
61
  } if (rf & 2) {
62
62
  const state_r4 = ctx.state;
63
63
  const widget_r5 = ctx.widget;
64
- i0.ɵɵconditional(state_r4.slotTitle ? 0 : -1);
64
+ i0.ɵɵconditional(state_r4.title ? 0 : -1);
65
65
  i0.ɵɵadvance(2);
66
66
  i0.ɵɵproperty("auSlot", state_r4.children)("auSlotProps", i0.ɵɵpureFunction2(4, _c2, state_r4, widget_r5));
67
67
  i0.ɵɵadvance();
68
- i0.ɵɵconditional(state_r4.slotFooter ? 3 : -1);
68
+ i0.ɵɵconditional(state_r4.footer ? 3 : -1);
69
69
  } }
70
70
  const _c3 = ["auModal", ""];
71
71
  const _c4 = ["*"];
@@ -90,7 +90,7 @@ function ModalComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
90
90
  i0.ɵɵadvance();
91
91
  i0.ɵɵclassMapInterpolate1("modal-dialog ", ctx_r0.state().fullscreen ? "modal-fullscreen" : "", "");
92
92
  i0.ɵɵadvance(2);
93
- i0.ɵɵproperty("auSlot", ctx_r0.state().slotStructure)("auSlotProps", i0.ɵɵpureFunction2(9, _c2, ctx_r0.state(), ctx_r0.widget));
93
+ i0.ɵɵproperty("auSlot", ctx_r0.state().structure)("auSlotProps", i0.ɵɵpureFunction2(9, _c2, ctx_r0.state(), ctx_r0.widget));
94
94
  } }
95
95
  /**
96
96
  * Directive to provide the slot structure for the modal widget.
@@ -202,24 +202,24 @@ export class ModalDefaultSlotsComponent {
202
202
  template: `
203
203
  <ng-template auModalHeader #header let-state="state" let-widget="widget">
204
204
  <h5 class="modal-title">
205
- <ng-template [auSlot]="state.slotTitle" [auSlotProps]="{state, widget}"></ng-template>
205
+ <ng-template [auSlot]="state.title" [auSlotProps]="{state, widget}"></ng-template>
206
206
  </h5>
207
207
  @if (state.closeButton) {
208
208
  <button class="btn-close" [auUse]="widget.directives.closeButtonDirective"></button>
209
209
  }
210
210
  </ng-template>
211
211
  <ng-template auModalStructure #structure let-state="state" let-widget="widget">
212
- @if (state.slotTitle) {
212
+ @if (state.title) {
213
213
  <div class="modal-header">
214
- <ng-template [auSlot]="state.slotHeader" [auSlotProps]="{state, widget}"></ng-template>
214
+ <ng-template [auSlot]="state.header" [auSlotProps]="{state, widget}"></ng-template>
215
215
  </div>
216
216
  }
217
217
  <div class="modal-body">
218
218
  <ng-template [auSlot]="state.children" [auSlotProps]="{state, widget}"></ng-template>
219
219
  </div>
220
- @if (state.slotFooter) {
220
+ @if (state.footer) {
221
221
  <div class="modal-footer">
222
- <ng-template [auSlot]="state.slotFooter" [auSlotProps]="{state, widget}"></ng-template>
222
+ <ng-template [auSlot]="state.footer" [auSlotProps]="{state, widget}"></ng-template>
223
223
  </div>
224
224
  }
225
225
  </ng-template>
@@ -242,8 +242,8 @@ export const modalDefaultSlotHeader = new ComponentTemplate(ModalDefaultSlotsCom
242
242
  */
243
243
  export const modalDefaultSlotStructure = new ComponentTemplate(ModalDefaultSlotsComponent, 'structure');
244
244
  const defaultConfig = {
245
- slotHeader: modalDefaultSlotHeader,
246
- slotStructure: modalDefaultSlotStructure,
245
+ header: modalDefaultSlotHeader,
246
+ structure: modalDefaultSlotStructure,
247
247
  };
248
248
  /**
249
249
  * Modal component.
@@ -283,10 +283,10 @@ export class ModalComponent extends BaseWidgetDirective {
283
283
  ngAfterContentChecked() {
284
284
  this._widget.patchSlots({
285
285
  children: this.slotDefaultFromContent?.templateRef,
286
- slotFooter: this.slotFooterFromContent?.templateRef,
287
- slotHeader: this.slotHeaderFromContent?.templateRef,
288
- slotStructure: this.slotStructureFromContent?.templateRef,
289
- slotTitle: this.slotTitleFromContent?.templateRef,
286
+ footer: this.slotFooterFromContent?.templateRef,
287
+ header: this.slotHeaderFromContent?.templateRef,
288
+ structure: this.slotStructureFromContent?.templateRef,
289
+ title: this.slotTitleFromContent?.templateRef,
290
290
  });
291
291
  }
292
292
  static { this.ɵfac = /*@__PURE__*/ (() => { let ɵModalComponent_BaseFactory; return function ModalComponent_Factory(t) { return (ɵModalComponent_BaseFactory || (ɵModalComponent_BaseFactory = i0.ɵɵgetInheritedFactory(ModalComponent)))(t || ModalComponent); }; })(); }
@@ -303,7 +303,7 @@ export class ModalComponent extends BaseWidgetDirective {
303
303
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotTitleFromContent = _t.first);
304
304
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotDefaultFromContent = _t.first);
305
305
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotFooterFromContent = _t.first);
306
- } }, inputs: { animated: [2, "auAnimated", "animated", auBooleanAttribute], backdropTransition: [0, "auBackdropTransition", "backdropTransition"], modalTransition: [0, "auModalTransition", "modalTransition"], visible: [2, "auVisible", "visible", auBooleanAttribute], backdrop: [2, "auBackdrop", "backdrop", auBooleanAttribute], closeOnOutsideClick: [2, "auCloseOnOutsideClick", "closeOnOutsideClick", auBooleanAttribute], container: [0, "auContainer", "container"], ariaCloseButtonLabel: [0, "auAriaCloseButtonLabel", "ariaCloseButtonLabel"], backdropClass: [0, "auBackdropClass", "backdropClass"], closeButton: [2, "auCloseButton", "closeButton", auBooleanAttribute], className: [0, "auClassName", "className"], fullscreen: [2, "auFullscreen", "fullscreen", auBooleanAttribute], slotStructure: [0, "auSlotStructure", "slotStructure"], slotHeader: [0, "auSlotHeader", "slotHeader"], slotTitle: [0, "auSlotTitle", "slotTitle"], children: [0, "auChildren", "children"], slotFooter: [0, "auSlotFooter", "slotFooter"], contentData: [0, "auContentData", "contentData"] }, outputs: { visibleChange: "auVisibleChange", beforeClose: "auBeforeClose", hidden: "auHidden", shown: "auShown" }, standalone: true, features: [i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], attrs: _c3, ngContentSelectors: _c4, decls: 3, vars: 3, consts: [[3, "auContentAsSlot"], [1, "modal-backdrop", 3, "auUseMulti"], [1, "modal", "d-block", 3, "auUseMulti"], [1, "modal-content"], [3, "auSlot", "auSlotProps"]], template: function ModalComponent_Template(rf, ctx) { if (rf & 1) {
306
+ } }, inputs: { animated: [2, "auAnimated", "animated", auBooleanAttribute], backdropTransition: [0, "auBackdropTransition", "backdropTransition"], modalTransition: [0, "auModalTransition", "modalTransition"], visible: [2, "auVisible", "visible", auBooleanAttribute], backdrop: [2, "auBackdrop", "backdrop", auBooleanAttribute], closeOnOutsideClick: [2, "auCloseOnOutsideClick", "closeOnOutsideClick", auBooleanAttribute], container: [0, "auContainer", "container"], ariaCloseButtonLabel: [0, "auAriaCloseButtonLabel", "ariaCloseButtonLabel"], backdropClass: [0, "auBackdropClass", "backdropClass"], closeButton: [2, "auCloseButton", "closeButton", auBooleanAttribute], className: [0, "auClassName", "className"], fullscreen: [2, "auFullscreen", "fullscreen", auBooleanAttribute], structure: [0, "auStructure", "structure"], header: [0, "auHeader", "header"], title: [0, "auTitle", "title"], children: [0, "auChildren", "children"], footer: [0, "auFooter", "footer"], contentData: [0, "auContentData", "contentData"] }, outputs: { visibleChange: "auVisibleChange", beforeClose: "auBeforeClose", hidden: "auHidden", shown: "auShown" }, standalone: true, features: [i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], attrs: _c3, ngContentSelectors: _c4, decls: 3, vars: 3, consts: [[3, "auContentAsSlot"], [1, "modal-backdrop", 3, "auUseMulti"], [1, "modal", "d-block", 3, "auUseMulti"], [1, "modal-content"], [3, "auSlot", "auSlotProps"]], template: function ModalComponent_Template(rf, ctx) { if (rf & 1) {
307
307
  i0.ɵɵprojectionDef();
308
308
  i0.ɵɵtemplate(0, ModalComponent_ng_template_0_Template, 1, 0, "ng-template", 0)(1, ModalComponent_Conditional_1_Template, 1, 4, "div", 1)(2, ModalComponent_Conditional_2_Template, 4, 12, "div", 2);
309
309
  } if (rf & 2) {
@@ -330,7 +330,7 @@ export class ModalComponent extends BaseWidgetDirective {
330
330
  <div class="modal d-block" [auUseMulti]="[widget.directives.modalPortalDirective, widget.directives.modalDirective]">
331
331
  <div class="modal-dialog {{ state().fullscreen ? 'modal-fullscreen' : '' }}">
332
332
  <div class="modal-content">
333
- <ng-template [auSlot]="state().slotStructure" [auSlotProps]="{state: state(), widget}"></ng-template>
333
+ <ng-template [auSlot]="state().structure" [auSlotProps]="{state: state(), widget}"></ng-template>
334
334
  </div>
335
335
  </div>
336
336
  </div>
@@ -373,21 +373,21 @@ export class ModalComponent extends BaseWidgetDirective {
373
373
  }], fullscreen: [{
374
374
  type: Input,
375
375
  args: [{ alias: 'auFullscreen', transform: auBooleanAttribute }]
376
- }], slotStructure: [{
376
+ }], structure: [{
377
377
  type: Input,
378
- args: ['auSlotStructure']
378
+ args: ['auStructure']
379
379
  }], slotStructureFromContent: [{
380
380
  type: ContentChild,
381
381
  args: [ModalStructureDirective, { static: false }]
382
- }], slotHeader: [{
382
+ }], header: [{
383
383
  type: Input,
384
- args: ['auSlotHeader']
384
+ args: ['auHeader']
385
385
  }], slotHeaderFromContent: [{
386
386
  type: ContentChild,
387
387
  args: [ModalHeaderDirective, { static: false }]
388
- }], slotTitle: [{
388
+ }], title: [{
389
389
  type: Input,
390
- args: ['auSlotTitle']
390
+ args: ['auTitle']
391
391
  }], slotTitleFromContent: [{
392
392
  type: ContentChild,
393
393
  args: [ModalTitleDirective, { static: false }]
@@ -397,9 +397,9 @@ export class ModalComponent extends BaseWidgetDirective {
397
397
  }], slotDefaultFromContent: [{
398
398
  type: ContentChild,
399
399
  args: [ModalBodyDirective, { static: false }]
400
- }], slotFooter: [{
400
+ }], footer: [{
401
401
  type: Input,
402
- args: ['auSlotFooter']
402
+ args: ['auFooter']
403
403
  }], slotFooterFromContent: [{
404
404
  type: ContentChild,
405
405
  args: [ModalFooterDirective, { static: false }]
@@ -420,4 +420,4 @@ export class ModalComponent extends BaseWidgetDirective {
420
420
  args: ['auShown']
421
421
  }] }); })();
422
422
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ModalComponent, { className: "ModalComponent", filePath: "components/modal/modal.component.ts", lineNumber: 161 }); })();
423
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbW9kYWwvbW9kYWwuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDTixtQkFBbUIsRUFDbkIsaUJBQWlCLEVBQ2pCLHNCQUFzQixFQUN0QixhQUFhLEVBQ2IsWUFBWSxFQUNaLGlCQUFpQixFQUNqQixrQkFBa0IsR0FDbEIsTUFBTSw0QkFBNEIsQ0FBQztBQUVwQyxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sU0FBUyxDQUFDO0FBQ3BDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUVqRCxPQUFPLEVBQ04sdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFdBQVcsRUFDWCxTQUFTLEVBQ1QsTUFBTSxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGNBQWMsQ0FBQzs7Ozs7OztJQXNFM0MsNEJBQW9GOzs7SUFBMUQsaUVBQWdEOzs7SUFKM0UsNkJBQXdCO0lBQ3ZCLHlHQUF3RTtJQUN6RSxpQkFBSztJQUNMLG9HQUF5Qjs7OztJQUZYLGNBQTBCO0lBQUMsQUFBM0IsMkNBQTBCLGdFQUFnQztJQUV4RSxjQUVDO0lBRkQsK0NBRUM7Ozs7SUFJQSw4QkFBMEI7SUFDekIsdUhBQXlFO0lBQzFFLGlCQUFNOzs7OztJQURRLGNBQTJCO0lBQUMsQUFBNUIsNENBQTJCLGdFQUFnQzs7Ozs7SUFPekUsOEJBQTBCO0lBQ3pCLHVIQUF5RTtJQUMxRSxpQkFBTTs7Ozs7SUFEUSxjQUEyQjtJQUFDLEFBQTVCLDRDQUEyQixnRUFBZ0M7OztJQVYxRSxpR0FBdUI7SUFLdkIsOEJBQXdCO0lBQ3ZCLHlHQUF1RTtJQUN4RSxpQkFBTTtJQUNOLGlHQUF3Qjs7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RSxTQUFTLEVBQUUsa0JBQWtCLEVBQUM7WUFLeEMsU0FBUztrQkFBOUIsS0FBSzttQkFBQyxhQUFhO1lBSzJDLFVBQVU7a0JBQXhFLEtBQUs7bUJBQUMsRUFBQyxLQUFLLEVBQUUsY0FBYyxFQUFFLFNBQVMsRUFBRSxrQkFBa0IsRUFBQztZQU1uQyxhQUFhO2tCQUF0QyxLQUFLO21CQUFDLGlCQUFpQjtZQUV4Qix3QkFBd0I7a0JBRHZCLFlBQVk7bUJBQUMsdUJBQXVCLEVBQUUsRUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFDO1lBTS9CLFVBQVU7a0JBQWhDLEtBQUs7bUJBQUMsY0FBYztZQUVyQixxQkFBcUI7a0JBRHBCLFlBQVk7bUJBQUMsb0JBQW9CLEVBQUUsRUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFDO1lBTTdCLFNBQVM7a0JBQTlCLEtBQUs7bUJBQUMsYUFBYTtZQUVwQixvQkFBb0I7a0JBRG5CLFlBQVk7bUJBQUMsbUJBQW1CLEVBQUUsRUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFDO1lBTTdCLFFBQVE7a0JBQTVCLEtBQUs7bUJBQUMsWUFBWTtZQUVuQixzQkFBc0I7a0JBRHJCLFlBQVk7bUJBQUMsa0JBQWtCLEVBQUUsRUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFDO1lBTTFCLFVBQVU7a0JBQWhDLEtBQUs7bUJBQUMsY0FBYztZQUVyQixxQkFBcUI7a0JBRHBCLFlBQVk7bUJBQUMsb0JBQW9CLEVBQUUsRUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFDO1lBTTNCLFdBQVc7a0JBQWxDLEtBQUs7bUJBQUMsZUFBZTtZQUtLLGFBQWE7a0JBQXZDLE1BQU07bUJBQUMsaUJBQWlCO1lBS0EsV0FBVztrQkFBbkMsTUFBTTttQkFBQyxlQUFlO1lBS0gsTUFBTTtrQkFBekIsTUFBTTttQkFBQyxVQUFVO1lBS0MsS0FBSztrQkFBdkIsTUFBTTttQkFBQyxTQUFTOztrRkExSEwsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtTbG90Q29udGVudCwgVHJhbnNpdGlvbkZufSBmcm9tICdAYWdub3MtdWkvYW5ndWxhci1oZWFkbGVzcyc7XG5pbXBvcnQge1xuXHRCYXNlV2lkZ2V0RGlyZWN0aXZlLFxuXHRDb21wb25lbnRUZW1wbGF0ZSxcblx0Q29udGVudEFzU2xvdERpcmVjdGl2ZSxcblx0U2xvdERpcmVjdGl2ZSxcblx0VXNlRGlyZWN0aXZlLFxuXHRVc2VNdWx0aURpcmVjdGl2ZSxcblx0YXVCb29sZWFuQXR0cmlidXRlLFxufSBmcm9tICdAYWdub3MtdWkvYW5ndWxhci1oZWFkbGVzcyc7XG5pbXBvcnQgdHlwZSB7TW9kYWxDb250ZXh0LCBNb2RhbFByb3BzLCBNb2RhbFdpZGdldCwgTW9kYWxCZWZvcmVDbG9zZUV2ZW50fSBmcm9tICcuL21vZGFsJztcbmltcG9ydCB7Y3JlYXRlTW9kYWx9IGZyb20gJy4vbW9kYWwnO1xuaW1wb3J0IHt3cml0YWJsZX0gZnJvbSAnQGFtYWRldXMtaXQtZ3JvdXAvdGFuc3UnO1xuaW1wb3J0IHR5cGUge0FmdGVyQ29udGVudENoZWNrZWR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcblx0Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG5cdENvbXBvbmVudCxcblx0Q29udGVudENoaWxkLFxuXHREaXJlY3RpdmUsXG5cdEV2ZW50RW1pdHRlcixcblx0SW5wdXQsXG5cdE91dHB1dCxcblx0VGVtcGxhdGVSZWYsXG5cdFZpZXdDaGlsZCxcblx0aW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Y2FsbFdpZGdldEZhY3Rvcnl9IGZyb20gJy4uLy4uL2NvbmZpZyc7XG5cbi8qKlxuICogRGlyZWN0aXZlIHRvIHByb3ZpZGUgdGhlIHNsb3Qgc3RydWN0dXJlIGZvciB0aGUgbW9kYWwgd2lkZ2V0LlxuICovXG5ARGlyZWN0aXZlKHtzZWxlY3RvcjogJ25nLXRlbXBsYXRlW2F1TW9kYWxTdHJ1Y3R1cmVdJywgc3RhbmRhbG9uZTogdHJ1ZX0pXG5leHBvcnQgY2xhc3MgTW9kYWxTdHJ1Y3R1cmVEaXJlY3RpdmU8RGF0YT4ge1xuXHRwdWJsaWMgdGVtcGxhdGVSZWYgPSBpbmplY3QoVGVtcGxhdGVSZWY8TW9kYWxDb250ZXh0PERhdGE+Pik7XG5cdHN0YXRpYyBuZ1RlbXBsYXRlQ29udGV4dEd1YXJkPERhdGE+KGRpcjogTW9kYWxTdHJ1Y3R1cmVEaXJlY3RpdmU8RGF0YT4sIGNvbnRleHQ6IHVua25vd24pOiBjb250ZXh0IGlzIE1vZGFsQ29udGV4dDxEYXRhPiB7XG5cdFx0cmV0dXJuIHRydWU7XG5cdH1cbn1cblxuLyoqXG4gKiBEaXJlY3RpdmUgdG8gcHJvdmlkZSB0aGUgc2xvdCBoZWFkZXIgZm9yIHRoZSBtb2RhbCB3aWRnZXQuXG4gKi9cbkBEaXJlY3RpdmUoe3NlbGVjdG9yOiAnbmctdGVtcGxhdGVbYXVNb2RhbEhlYWRlcl0nLCBzdGFuZGFsb25lOiB0cnVlfSlcbmV4cG9ydCBjbGFzcyBNb2RhbEhlYWRlckRpcmVjdGl2ZTxEYXRhPiB7XG5cdHB1YmxpYyB0ZW1wbGF0ZVJlZiA9IGluamVjdChUZW1wbGF0ZVJlZjxNb2RhbENvbnRleHQ8RGF0YT4+KTtcblx0c3RhdGljIG5nVGVtcGxhdGVDb250ZXh0R3VhcmQ8RGF0YT4oX2RpcjogTW9kYWxIZWFkZXJEaXJlY3RpdmU8RGF0YT4sIGNvbnRleHQ6IHVua25vd24pOiBjb250ZXh0IGlzIE1vZGFsQ29udGV4dDxEYXRhPiB7XG5cdFx0cmV0dXJuIHRydWU7XG5cdH1cbn1cblxuLyoqXG4gKiBEaXJlY3RpdmUgdG8gcHJvdmlkZSB0aGUgc2xvdCB0aXRsZSBmb3IgdGhlIG1vZGFsIHdpZGdldC5cbiAqL1xuQERpcmVjdGl2ZSh7c2VsZWN0b3I6ICduZy10ZW1wbGF0ZVthdU1vZGFsVGl0bGVdJywgc3RhbmRhbG9uZTogdHJ1ZX0pXG5leHBvcnQgY2xhc3MgTW9kYWxUaXRsZURpcmVjdGl2ZTxEYXRhPiB7XG5cdHB1YmxpYyB0ZW1wbGF0ZVJlZiA9IGluamVjdChUZW1wbGF0ZVJlZjxNb2RhbENvbnRleHQ8RGF0YT4+KTtcblx0c3RhdGljIG5nVGVtcGxhdGVDb250ZXh0R3VhcmQ8RGF0YT4oX2RpcjogTW9kYWxUaXRsZURpcmVjdGl2ZTxEYXRhPiwgY29udGV4dDogdW5rbm93bik6IGNvbnRleHQgaXMgTW9kYWxDb250ZXh0PERhdGE+IHtcblx0XHRyZXR1cm4gdHJ1ZTtcblx0fVxufVxuXG4vKipcbiAqIERpcmVjdGl2ZSB0byBwcm92aWRlIHRoZSBkZWZhdWx0IHNsb3QgZm9yIHRoZSBtb2RhbCB3aWRnZXQuXG4gKi9cbkBEaXJlY3RpdmUoe3NlbGVjdG9yOiAnbmctdGVtcGxhdGVbYXVNb2RhbEJvZHldJywgc3RhbmRhbG9uZTogdHJ1ZX0pXG5leHBvcnQgY2xhc3MgTW9kYWxCb2R5RGlyZWN0aXZlPERhdGE+IHtcblx0cHVibGljIHRlbXBsYXRlUmVmID0gaW5qZWN0KFRlbXBsYXRlUmVmPE1vZGFsQ29udGV4dDxEYXRhPj4pO1xuXHRzdGF0aWMgbmdUZW1wbGF0ZUNvbnRleHRHdWFyZDxEYXRhPihfZGlyOiBNb2RhbEJvZHlEaXJlY3RpdmU8RGF0YT4sIGNvbnRleHQ6IHVua25vd24pOiBjb250ZXh0IGlzIE1vZGFsQ29udGV4dDxEYXRhPiB7XG5cdFx0cmV0dXJuIHRydWU7XG5cdH1cbn1cblxuLyoqXG4gKiBEaXJlY3RpdmUgdG8gcHJvdmlkZSB0aGUgc2xvdCBmb290ZXIgZm9yIHRoZSBtb2RhbCB3aWRnZXQuXG4gKi9cbkBEaXJlY3RpdmUoe3NlbGVjdG9yOiAnbmctdGVtcGxhdGVbYXVNb2RhbEZvb3Rlcl0nLCBzdGFuZGFsb25lOiB0cnVlfSlcbmV4cG9ydCBjbGFzcyBNb2RhbEZvb3RlckRpcmVjdGl2ZTxEYXRhPiB7XG5cdHB1YmxpYyB0ZW1wbGF0ZVJlZiA9IGluamVjdChUZW1wbGF0ZVJlZjxNb2RhbENvbnRleHQ8RGF0YT4+KTtcblx0c3RhdGljIG5nVGVtcGxhdGVDb250ZXh0R3VhcmQ8RGF0YT4oX2RpcjogTW9kYWxGb290ZXJEaXJlY3RpdmU8RGF0YT4sIGNvbnRleHQ6IHVua25vd24pOiBjb250ZXh0IGlzIE1vZGFsQ29udGV4dDxEYXRhPiB7XG5cdFx0cmV0dXJuIHRydWU7XG5cdH1cbn1cblxuLyoqXG4gKiBDb21wb25lbnQgY29udGFpbmluZyB0aGUgZGVmYXVsdCBzbG90cyBmb3IgdGhlIG1vZGFsLlxuICovXG5AQ29tcG9uZW50KHtcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG5cdGltcG9ydHM6IFtTbG90RGlyZWN0aXZlLCBNb2RhbEhlYWRlckRpcmVjdGl2ZSwgTW9kYWxTdHJ1Y3R1cmVEaXJlY3RpdmUsIFVzZURpcmVjdGl2ZV0sXG5cdHRlbXBsYXRlOiBgXG5cdFx0PG5nLXRlbXBsYXRlIGF1TW9kYWxIZWFkZXIgI2hlYWRlciBsZXQtc3RhdGU9XCJzdGF0ZVwiIGxldC13aWRnZXQ9XCJ3aWRnZXRcIj5cblx0XHRcdDxoNSBjbGFzcz1cIm1vZGFsLXRpdGxlXCI+XG5cdFx0XHRcdDxuZy10ZW1wbGF0ZSBbYXVTbG90XT1cInN0YXRlLnNsb3RUaXRsZVwiIFthdVNsb3RQcm9wc109XCJ7c3RhdGUsIHdpZGdldH1cIj48L25nLXRlbXBsYXRlPlxuXHRcdFx0PC9oNT5cblx0XHRcdEBpZiAoc3RhdGUuY2xvc2VCdXR0b24pIHtcblx0XHRcdFx0PGJ1dHRvbiBjbGFzcz1cImJ0bi1jbG9zZVwiIFthdVVzZV09XCJ3aWRnZXQuZGlyZWN0aXZlcy5jbG9zZUJ1dHRvbkRpcmVjdGl2ZVwiPjwvYnV0dG9uPlxuXHRcdFx0fVxuXHRcdDwvbmctdGVtcGxhdGU+XG5cdFx0PG5nLXRlbXBsYXRlIGF1TW9kYWxTdHJ1Y3R1cmUgI3N0cnVjdHVyZSBsZXQtc3RhdGU9XCJzdGF0ZVwiIGxldC13aWRnZXQ9XCJ3aWRnZXRcIj5cblx0XHRcdEBpZiAoc3RhdGUuc2xvdFRpdGxlKSB7XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJtb2RhbC1oZWFkZXJcIj5cblx0XHRcdFx0XHQ8bmctdGVtcGxhdGUgW2F1U2xvdF09XCJzdGF0ZS5zbG90SGVhZGVyXCIgW2F1U2xvdFByb3BzXT1cIntzdGF0ZSwgd2lkZ2V0fVwiPjwvbmctdGVtcGxhdGU+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0fVxuXHRcdFx0PGRpdiBjbGFzcz1cIm1vZGFsLWJvZHlcIj5cblx0XHRcdFx0PG5nLXRlbXBsYXRlIFthdVNsb3RdPVwic3RhdGUuY2hpbGRyZW5cIiBbYXVTbG90UHJvcHNdPVwie3N0YXRlLCB3aWRnZXR9XCI+PC9uZy10ZW1wbGF0ZT5cblx0XHRcdDwvZGl2PlxuXHRcdFx0QGlmIChzdGF0ZS5zbG90Rm9vdGVyKSB7XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJtb2RhbC1mb290ZXJcIj5cblx0XHRcdFx0XHQ8bmctdGVtcGxhdGUgW2F1U2xvdF09XCJzdGF0ZS5zbG90Rm9vdGVyXCIgW2F1U2xvdFByb3BzXT1cIntzdGF0ZSwgd2lkZ2V0fVwiPjwvbmctdGVtcGxhdGU+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0fVxuXHRcdDwvbmctdGVtcGxhdGU+XG5cdGAsXG59KVxuZXhwb3J0IGNsYXNzIE1vZGFsRGVmYXVsdFNsb3RzQ29tcG9uZW50PERhdGE+IHtcblx0QFZpZXdDaGlsZCgnaGVhZGVyJywge3N0YXRpYzogdHJ1ZX0pIGhlYWRlciE6IFRlbXBsYXRlUmVmPE1vZGFsQ29udGV4dDxEYXRhPj47XG5cdEBWaWV3Q2hpbGQoJ3N0cnVjdHVyZScsIHtzdGF0aWM6IHRydWV9KSBzdHJ1Y3R1cmUhOiBUZW1wbGF0ZVJlZjxNb2RhbENvbnRleHQ8RGF0YT4+O1xufVxuXG4vKipcbiAqIERlZmF1bHQgc2xvdCBmb3IgbW9kYWwgaGVhZGVyLlxuICovXG5leHBvcnQgY29uc3QgbW9kYWxEZWZhdWx0U2xvdEhlYWRlciA9IG5ldyBDb21wb25lbnRUZW1wbGF0ZShNb2RhbERlZmF1bHRTbG90c0NvbXBvbmVudCwgJ2hlYWRlcicpO1xuXG4vKipcbiAqIERlZmF1bHQgc2xvdCBmb3IgbW9kYWwgc3RydWN0dXJlLlxuICovXG5leHBvcnQgY29uc3QgbW9kYWxEZWZhdWx0U2xvdFN0cnVjdHVyZSA9IG5ldyBDb21wb25lbnRUZW1wbGF0ZShNb2RhbERlZmF1bHRTbG90c0NvbXBvbmVudCwgJ3N0cnVjdHVyZScpO1xuXG5jb25zdCBkZWZhdWx0Q29uZmlnOiBQYXJ0aWFsPE1vZGFsUHJvcHM8YW55Pj4gPSB7XG5cdHNsb3RIZWFkZXI6IG1vZGFsRGVmYXVsdFNsb3RIZWFkZXIsXG5cdHNsb3RTdHJ1Y3R1cmU6IG1vZGFsRGVmYXVsdFNsb3RTdHJ1Y3R1cmUsXG59O1xuXG4vKipcbiAqIE1vZGFsIGNvbXBvbmVudC5cbiAqL1xuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnW2F1TW9kYWxdJyxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG5cdGltcG9ydHM6IFtVc2VNdWx0aURpcmVjdGl2ZSwgU2xvdERpcmVjdGl2ZSwgQ29udGVudEFzU2xvdERpcmVjdGl2ZV0sXG5cdHRlbXBsYXRlOiBgXG5cdFx0PG5nLXRlbXBsYXRlIFthdUNvbnRlbnRBc1Nsb3RdPVwiZGVmYXVsdFNsb3RzXCI+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvbmctdGVtcGxhdGU+XG5cdFx0QGlmICghc3RhdGUoKS5iYWNrZHJvcEhpZGRlbikge1xuXHRcdFx0PGRpdiBjbGFzcz1cIm1vZGFsLWJhY2tkcm9wXCIgW2F1VXNlTXVsdGldPVwiW3dpZGdldC5kaXJlY3RpdmVzLmJhY2tkcm9wUG9ydGFsRGlyZWN0aXZlLCB3aWRnZXQuZGlyZWN0aXZlcy5iYWNrZHJvcERpcmVjdGl2ZV1cIj48L2Rpdj5cblx0XHR9XG5cdFx0QGlmICghc3RhdGUoKS5oaWRkZW4pIHtcblx0XHRcdDxkaXYgY2xhc3M9XCJtb2RhbCBkLWJsb2NrXCIgW2F1VXNlTXVsdGldPVwiW3dpZGdldC5kaXJlY3RpdmVzLm1vZGFsUG9ydGFsRGlyZWN0aXZlLCB3aWRnZXQuZGlyZWN0aXZlcy5tb2RhbERpcmVjdGl2ZV1cIj5cblx0XHRcdFx0PGRpdiBjbGFzcz1cIm1vZGFsLWRpYWxvZyB7eyBzdGF0ZSgpLmZ1bGxzY3JlZW4gPyAnbW9kYWwtZnVsbHNjcmVlbicgOiAnJyB9fVwiPlxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJtb2RhbC1jb250ZW50XCI+XG5cdFx0XHRcdFx0XHQ8bmctdGVtcGxhdGUgW2F1U2xvdF09XCJzdGF0ZSgpLnNsb3RTdHJ1Y3R1cmVcIiBbYXVTbG90UHJvcHNdPVwie3N0YXRlOiBzdGF0ZSgpLCB3aWRnZXR9XCI+PC9uZy10ZW1wbGF0ZT5cblx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHQ8L2Rpdj5cblx0XHR9XG5cdGAsXG59KVxuZXhwb3J0IGNsYXNzIE1vZGFsQ29tcG9uZW50PERhdGE+IGV4dGVuZHMgQmFzZVdpZGdldERpcmVjdGl2ZTxNb2RhbFdpZGdldDxEYXRhPj4gaW1wbGVtZW50cyBBZnRlckNvbnRlbnRDaGVja2VkIHtcblx0LyoqXG5cdCAqIFdoZXRoZXIgdGhlIG1vZGFsIGFuZCBpdHMgYmFja2Ryb3AgKGlmIHByZXNlbnQpIHNob3VsZCBiZSBhbmltYXRlZCB3aGVuIHNob3duIG9yIGhpZGRlbi5cblx0ICovXG5cdEBJbnB1dCh7YWxpYXM6ICdhdUFuaW1hdGVkJywgdHJhbnNmb3JtOiBhdUJvb2xlYW5BdHRyaWJ1dGV9KSBhbmltYXRlZDogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuXHQvKipcblx0ICogVGhlIHRyYW5zaXRpb24gdG8gdXNlIGZvciB0aGUgYmFja2Ryb3AgYmVoaW5kIHRoZSBtb2RhbCAoaWYgcHJlc2VudCkuXG5cdCAqL1xuXHRASW5wdXQoJ2F1QmFja2Ryb3BUcmFuc2l0aW9uJykgYmFja2Ryb3BUcmFuc2l0aW9uOiBUcmFuc2l0aW9uRm4gfCB1bmRlZmluZWQ7XG5cblx0LyoqXG5cdCAqIFRoZSB0cmFuc2l0aW9uIHRvIHVzZSBmb3IgdGhlIG1vZGFsLlxuXHQgKi9cblx0QElucHV0KCdhdU1vZGFsVHJhbnNpdGlvbicpIG1vZGFsVHJhbnNpdGlvbjogVHJhbnNpdGlvbkZuIHwgdW5kZWZpbmVkO1xuXG5cdC8qKlxuXHQgKiBXaGV0aGVyIHRoZSBtb2RhbCBzaG91bGQgYmUgdmlzaWJsZSB3aGVuIHRoZSB0cmFuc2l0aW9uIGlzIGNvbXBsZXRlZC5cblx0ICovXG5cdEBJbnB1dCh7YWxpYXM6ICdhdVZpc2libGUnLCB0cmFuc2Zvcm06IGF1Qm9vbGVhbkF0dHJpYnV0ZX0pIHZpc2libGU6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5cblx0LyoqXG5cdCAqIFdoZXRoZXIgYSBiYWNrZHJvcCBzaG91bGQgYmUgY3JlYXRlZCBiZWhpbmQgdGhlIG1vZGFsLlxuXHQgKi9cblx0QElucHV0KHthbGlhczogJ2F1QmFja2Ryb3AnLCB0cmFuc2Zvcm06IGF1Qm9vbGVhbkF0dHJpYnV0ZX0pIGJhY2tkcm9wOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG5cdC8qKlxuXHQgKiBXaGV0aGVyIHRoZSBtb2RhbCBzaG91bGQgYmUgY2xvc2VkIHdoZW4gY2xpY2tpbmcgb24gdGhlIHZpZXdwb3J0IG91dHNpZGUgdGhlIG1vZGFsLlxuXHQgKi9cblx0QElucHV0KHthbGlhczogJ2F1Q2xvc2VPbk91dHNpZGVDbGljaycsIHRyYW5zZm9ybTogYXVCb29sZWFuQXR0cmlidXRlfSkgY2xvc2VPbk91dHNpZGVDbGljazogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuXHQvKipcblx0ICogV2hpY2ggZWxlbWVudCBzaG91bGQgY29udGFpbiB0aGUgbW9kYWwgYW5kIGJhY2tkcm9wIERPTSBlbGVtZW50cy5cblx0ICogSWYgaXQgaXMgbm90IG51bGwsIHRoZSBtb2RhbCBhbmQgYmFja2Ryb3AgRE9NIGVsZW1lbnRzIGFyZSBtb3ZlZCB0byB0aGUgc3BlY2lmaWVkIGNvbnRhaW5lci5cblx0ICogT3RoZXJ3aXNlLCB0aGV5IHN0YXkgd2hlcmUgdGhlIHdpZGdldCBpcyBsb2NhdGVkLlxuXHQgKi9cblx0QElucHV0KCdhdUNvbnRhaW5lcicpIGNvbnRhaW5lcjogSFRNTEVsZW1lbnQgfCBudWxsIHwgdW5kZWZpbmVkO1xuXG5cdC8qKlxuXHQgKiBWYWx1ZSBvZiB0aGUgYXJpYS1sYWJlbCBhdHRyaWJ1dGUgdG8gcHV0IG9uIHRoZSBjbG9zZSBidXR0b24uXG5cdCAqL1xuXHRASW5wdXQoJ2F1QXJpYUNsb3NlQnV0dG9uTGFiZWwnKSBhcmlhQ2xvc2VCdXR0b25MYWJlbDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG5cdC8qKlxuXHQgKiBDbGFzc2VzIHRvIGFkZCBvbiB0aGUgYmFja2Ryb3AgRE9NIGVsZW1lbnQuXG5cdCAqL1xuXHRASW5wdXQoJ2F1QmFja2Ryb3BDbGFzcycpIGJhY2tkcm9wQ2xhc3M6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuXHQvKipcblx0ICogV2hldGhlciB0byBkaXNwbGF5IHRoZSBjbG9zZSBidXR0b24uXG5cdCAqL1xuXHRASW5wdXQoe2FsaWFzOiAnYXVDbG9zZUJ1dHRvbicsIHRyYW5zZm9ybTogYXVCb29sZWFuQXR0cmlidXRlfSkgY2xvc2VCdXR0b246IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5cblx0LyoqXG5cdCAqIENTUyBjbGFzc2VzIHRvIGJlIGFwcGxpZWQgb24gdGhlIHdpZGdldCBtYWluIGNvbnRhaW5lclxuXHQgKi9cblx0QElucHV0KCdhdUNsYXNzTmFtZScpIGNsYXNzTmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG5cdC8qKlxuXHQgKiBPcHRpb24gdG8gY3JlYXRlIGEgZnVsbHNjcmVlbiBtb2RhbCwgYWNjb3JkaW5nIHRvIHRoZSBib290c3RyYXAgZG9jdW1lbnRhdGlvbi5cblx0ICovXG5cdEBJbnB1dCh7YWxpYXM6ICdhdUZ1bGxzY3JlZW4nLCB0cmFuc2Zvcm06IGF1Qm9vbGVhbkF0dHJpYnV0ZX0pIGZ1bGxzY3JlZW46IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5cblx0LyoqXG5cdCAqIFN0cnVjdHVyZSBvZiB0aGUgbW9kYWwuXG5cdCAqIFRoZSBkZWZhdWx0IHN0cnVjdHVyZSB1c2VzIE1vZGFsQ29tbW9uUHJvcHNBbmRTdGF0ZS5zbG90SGVhZGVyIHNsb3RIZWFkZXIsIE1vZGFsQ29tbW9uUHJvcHNBbmRTdGF0ZS5jaGlsZHJlbiBjaGlsZHJlbiBhbmQgTW9kYWxDb21tb25Qcm9wc0FuZFN0YXRlLnNsb3RGb290ZXIgc2xvdEZvb3Rlci5cblx0ICovXG5cdEBJbnB1dCgnYXVTbG90U3RydWN0dXJlJykgc2xvdFN0cnVjdHVyZTogU2xvdENvbnRlbnQ8TW9kYWxDb250ZXh0PERhdGE+Pjtcblx0QENvbnRlbnRDaGlsZChNb2RhbFN0cnVjdHVyZURpcmVjdGl2ZSwge3N0YXRpYzogZmFsc2V9KVxuXHRzbG90U3RydWN0dXJlRnJvbUNvbnRlbnQ6IE1vZGFsU3RydWN0dXJlRGlyZWN0aXZlPERhdGE+IHwgdW5kZWZpbmVkO1xuXG5cdC8qKlxuXHQgKiBIZWFkZXIgb2YgdGhlIG1vZGFsLiBUaGUgZGVmYXVsdCBoZWFkZXIgaW5jbHVkZXMgTW9kYWxDb21tb25Qcm9wc0FuZFN0YXRlLnNsb3RUaXRsZSBzbG90VGl0bGUuXG5cdCAqL1xuXHRASW5wdXQoJ2F1U2xvdEhlYWRlcicpIHNsb3RIZWFkZXI6IFNsb3RDb250ZW50PE1vZGFsQ29udGV4dDxEYXRhPj47XG5cdEBDb250ZW50Q2hpbGQoTW9kYWxIZWFkZXJEaXJlY3RpdmUsIHtzdGF0aWM6IGZhbHNlfSlcblx0c2xvdEhlYWRlckZyb21Db250ZW50OiBNb2RhbEhlYWRlckRpcmVjdGl2ZTxEYXRhPiB8IHVuZGVmaW5lZDtcblxuXHQvKipcblx0ICogVGl0bGUgb2YgdGhlIG1vZGFsLlxuXHQgKi9cblx0QElucHV0KCdhdVNsb3RUaXRsZScpIHNsb3RUaXRsZTogU2xvdENvbnRlbnQ8TW9kYWxDb250ZXh0PERhdGE+Pjtcblx0QENvbnRlbnRDaGlsZChNb2RhbFRpdGxlRGlyZWN0aXZlLCB7c3RhdGljOiBmYWxzZX0pXG5cdHNsb3RUaXRsZUZyb21Db250ZW50OiBNb2RhbFRpdGxlRGlyZWN0aXZlPERhdGE+IHwgdW5kZWZpbmVkO1xuXG5cdC8qKlxuXHQgKiBCb2R5IG9mIHRoZSBtb2RhbC5cblx0ICovXG5cdEBJbnB1dCgnYXVDaGlsZHJlbicpIGNoaWxkcmVuOiBTbG90Q29udGVudDxNb2RhbENvbnRleHQ8RGF0YT4+O1xuXHRAQ29udGVudENoaWxkKE1vZGFsQm9keURpcmVjdGl2ZSwge3N0YXRpYzogZmFsc2V9KVxuXHRzbG90RGVmYXVsdEZyb21Db250ZW50OiBNb2RhbEJvZHlEaXJlY3RpdmU8RGF0YT4gfCB1bmRlZmluZWQ7XG5cblx0LyoqXG5cdCAqIEZvb3RlciBvZiB0aGUgbW9kYWwuXG5cdCAqL1xuXHRASW5wdXQoJ2F1U2xvdEZvb3RlcicpIHNsb3RGb290ZXI6IFNsb3RDb250ZW50PE1vZGFsQ29udGV4dDxEYXRhPj47XG5cdEBDb250ZW50Q2hpbGQoTW9kYWxGb290ZXJEaXJlY3RpdmUsIHtzdGF0aWM6IGZhbHNlfSlcblx0c2xvdEZvb3RlckZyb21Db250ZW50OiBNb2RhbEZvb3RlckRpcmVjdGl2ZTxEYXRhPiB8IHVuZGVmaW5lZDtcblxuXHQvKipcblx0ICogRGF0YSB0byB1c2UgaW4gY29udGVudCBzbG90c1xuXHQgKi9cblx0QElucHV0KCdhdUNvbnRlbnREYXRhJykgY29udGVudERhdGE6IERhdGEgfCB1bmRlZmluZWQ7XG5cblx0LyoqXG5cdCAqIEV2ZW50IHRvIGJlIHRyaWdnZXJlZCB3aGVuIHRoZSB2aXNpYmxlIHByb3BlcnR5IGNoYW5nZXMuXG5cdCAqL1xuXHRAT3V0cHV0KCdhdVZpc2libGVDaGFuZ2UnKSB2aXNpYmxlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG5cdC8qKlxuXHQgKiBFdmVudCB0byBiZSB0cmlnZ2VyZWQgd2hlbiB0aGUgbW9kYWwgaXMgYWJvdXQgdG8gYmUgY2xvc2VkIChpLmUuIHRoZSBNb2RhbEFwaS5jbG9zZWNsb3NlICBtZXRob2Qgd2FzIGNhbGxlZCkuXG5cdCAqL1xuXHRAT3V0cHV0KCdhdUJlZm9yZUNsb3NlJykgYmVmb3JlQ2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPE1vZGFsQmVmb3JlQ2xvc2VFdmVudD4oKTtcblxuXHQvKipcblx0ICogRXZlbnQgdG8gYmUgdHJpZ2dlcmVkIHdoZW4gdGhlIHRyYW5zaXRpb24gaXMgY29tcGxldGVkIGFuZCB0aGUgbW9kYWwgaXMgbm90IHZpc2libGUuXG5cdCAqL1xuXHRAT3V0cHV0KCdhdUhpZGRlbicpIGhpZGRlbiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuXHQvKipcblx0ICogRXZlbnQgdG8gYmUgdHJpZ2dlcmVkIHdoZW4gdGhlIHRyYW5zaXRpb24gaXMgY29tcGxldGVkIGFuZCB0aGUgbW9kYWwgaXMgdmlzaWJsZS5cblx0ICovXG5cdEBPdXRwdXQoJ2F1U2hvd24nKSBzaG93biA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuXHRyZWFkb25seSBkZWZhdWx0U2xvdHMgPSB3cml0YWJsZShkZWZhdWx0Q29uZmlnKTtcblxuXHRyZWFkb25seSBfd2lkZ2V0ID0gY2FsbFdpZGdldEZhY3Rvcnk8TW9kYWxXaWRnZXQ8RGF0YT4+KHtcblx0XHRmYWN0b3J5OiBjcmVhdGVNb2RhbCxcblx0XHR3aWRnZXROYW1lOiAnbW9kYWwnLFxuXHRcdGRlZmF1bHRDb25maWc6IHRoaXMuZGVmYXVsdFNsb3RzLFxuXHRcdGV2ZW50czoge1xuXHRcdFx0b25TaG93bjogKCkgPT4gdGhpcy5zaG93bi5lbWl0KCksXG5cdFx0XHRvbkhpZGRlbjogKCkgPT4gdGhpcy5oaWRkZW4uZW1pdCgpLFxuXHRcdFx0b25CZWZvcmVDbG9zZTogKGV2ZW50KSA9PiB0aGlzLmJlZm9yZUNsb3NlLmVtaXQoZXZlbnQpLFxuXHRcdFx0b25WaXNpYmxlQ2hhbmdlOiAoZXZlbnQpID0+IHRoaXMudmlzaWJsZUNoYW5nZS5lbWl0KGV2ZW50KSxcblx0XHR9LFxuXHR9KTtcblxuXHRuZ0FmdGVyQ29udGVudENoZWNrZWQoKTogdm9pZCB7XG5cdFx0dGhpcy5fd2lkZ2V0LnBhdGNoU2xvdHMoe1xuXHRcdFx0Y2hpbGRyZW46IHRoaXMuc2xvdERlZmF1bHRGcm9tQ29udGVudD8udGVtcGxhdGVSZWYsXG5cdFx0XHRzbG90Rm9vdGVyOiB0aGlzLnNsb3RGb290ZXJGcm9tQ29udGVudD8udGVtcGxhdGVSZWYsXG5cdFx0XHRzbG90SGVhZGVyOiB0aGlzLnNsb3RIZWFkZXJGcm9tQ29udGVudD8udGVtcGxhdGVSZWYsXG5cdFx0XHRzbG90U3RydWN0dXJlOiB0aGlzLnNsb3RTdHJ1Y3R1cmVGcm9tQ29udGVudD8udGVtcGxhdGVSZWYsXG5cdFx0XHRzbG90VGl0bGU6IHRoaXMuc2xvdFRpdGxlRnJvbUNvbnRlbnQ/LnRlbXBsYXRlUmVmLFxuXHRcdH0gYXMgYW55KTtcblx0fVxufVxuIl19
423
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbW9kYWwvbW9kYWwuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDTixtQkFBbUIsRUFDbkIsaUJBQWlCLEVBQ2pCLHNCQUFzQixFQUN0QixhQUFhLEVBQ2IsWUFBWSxFQUNaLGlCQUFpQixFQUNqQixrQkFBa0IsR0FDbEIsTUFBTSw0QkFBNEIsQ0FBQztBQUVwQyxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sU0FBUyxDQUFDO0FBQ3BDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUVqRCxPQUFPLEVBQ04sdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFdBQVcsRUFDWCxTQUFTLEVBQ1QsTUFBTSxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGNBQWMsQ0FBQzs7Ozs7OztJQXNFM0MsNEJBQW9GOzs7SUFBMUQsaUVBQWdEOzs7SUFKM0UsNkJBQXdCO0lBQ3ZCLHlHQUFvRTtJQUNyRSxpQkFBSztJQUNMLG9HQUF5Qjs7OztJQUZYLGNBQXNCO0lBQUMsQUFBdkIsdUNBQXNCLGdFQUFnQztJQUVwRSxjQUVDO0lBRkQsK0NBRUM7Ozs7SUFJQSw4QkFBMEI7SUFDekIsdUhBQXFFO0lBQ3RFLGlCQUFNOzs7OztJQURRLGNBQXVCO0lBQUMsQUFBeEIsd0NBQXVCLGdFQUFnQzs7Ozs7SUFPckUsOEJBQTBCO0lBQ3pCLHVIQUFxRTtJQUN0RSxpQkFBTTs7Ozs7SUFEUSxjQUF1QjtJQUFDLEFBQXhCLHdDQUF1QixnRUFBZ0M7OztJQVZ0RSxpR0FBbUI7SUFLbkIsOEJBQXdCO0lBQ3ZCLHlHQUF1RTtJQUN4RSxpQkFBTTtJQUNOLGlHQUFvQjs7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RSxTQUFTLEVBQUUsa0JBQWtCLEVBQUM7WUFLeEMsU0FBUztrQkFBOUIsS0FBSzttQkFBQyxhQUFhO1lBSzJDLFVBQVU7a0JBQXhFLEtBQUs7bUJBQUMsRUFBQyxLQUFLLEVBQUUsY0FBYyxFQUFFLFNBQVMsRUFBRSxrQkFBa0IsRUFBQztZQU12QyxTQUFTO2tCQUE5QixLQUFLO21CQUFDLGFBQWE7WUFFcEIsd0JBQXdCO2tCQUR2QixZQUFZO21CQUFDLHVCQUF1QixFQUFFLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBQztZQU1uQyxNQUFNO2tCQUF4QixLQUFLO21CQUFDLFVBQVU7WUFFakIscUJBQXFCO2tCQURwQixZQUFZO21CQUFDLG9CQUFvQixFQUFFLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBQztZQU1qQyxLQUFLO2tCQUF0QixLQUFLO21CQUFDLFNBQVM7WUFFaEIsb0JBQW9CO2tCQURuQixZQUFZO21CQUFDLG1CQUFtQixFQUFFLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBQztZQU03QixRQUFRO2tCQUE1QixLQUFLO21CQUFDLFlBQVk7WUFFbkIsc0JBQXNCO2tCQURyQixZQUFZO21CQUFDLGtCQUFrQixFQUFFLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBQztZQU05QixNQUFNO2tCQUF4QixLQUFLO21CQUFDLFVBQVU7WUFFakIscUJBQXFCO2tCQURwQixZQUFZO21CQUFDLG9CQUFvQixFQUFFLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBQztZQU0zQixXQUFXO2tCQUFsQyxLQUFLO21CQUFDLGVBQWU7WUFLSyxhQUFhO2tCQUF2QyxNQUFNO21CQUFDLGlCQUFpQjtZQUtBLFdBQVc7a0JBQW5DLE1BQU07bUJBQUMsZUFBZTtZQUtILE1BQU07a0JBQXpCLE1BQU07bUJBQUMsVUFBVTtZQUtDLEtBQUs7a0JBQXZCLE1BQU07bUJBQUMsU0FBUzs7a0ZBMUhMLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7U2xvdENvbnRlbnQsIFRyYW5zaXRpb25Gbn0gZnJvbSAnQGFnbm9zLXVpL2FuZ3VsYXItaGVhZGxlc3MnO1xuaW1wb3J0IHtcblx0QmFzZVdpZGdldERpcmVjdGl2ZSxcblx0Q29tcG9uZW50VGVtcGxhdGUsXG5cdENvbnRlbnRBc1Nsb3REaXJlY3RpdmUsXG5cdFNsb3REaXJlY3RpdmUsXG5cdFVzZURpcmVjdGl2ZSxcblx0VXNlTXVsdGlEaXJlY3RpdmUsXG5cdGF1Qm9vbGVhbkF0dHJpYnV0ZSxcbn0gZnJvbSAnQGFnbm9zLXVpL2FuZ3VsYXItaGVhZGxlc3MnO1xuaW1wb3J0IHR5cGUge01vZGFsQ29udGV4dCwgTW9kYWxQcm9wcywgTW9kYWxXaWRnZXQsIE1vZGFsQmVmb3JlQ2xvc2VFdmVudH0gZnJvbSAnLi9tb2RhbCc7XG5pbXBvcnQge2NyZWF0ZU1vZGFsfSBmcm9tICcuL21vZGFsJztcbmltcG9ydCB7d3JpdGFibGV9IGZyb20gJ0BhbWFkZXVzLWl0LWdyb3VwL3RhbnN1JztcbmltcG9ydCB0eXBlIHtBZnRlckNvbnRlbnRDaGVja2VkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG5cdENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuXHRDb21wb25lbnQsXG5cdENvbnRlbnRDaGlsZCxcblx0RGlyZWN0aXZlLFxuXHRFdmVudEVtaXR0ZXIsXG5cdElucHV0LFxuXHRPdXRwdXQsXG5cdFRlbXBsYXRlUmVmLFxuXHRWaWV3Q2hpbGQsXG5cdGluamVjdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2NhbGxXaWRnZXRGYWN0b3J5fSBmcm9tICcuLi8uLi9jb25maWcnO1xuXG4vKipcbiAqIERpcmVjdGl2ZSB0byBwcm92aWRlIHRoZSBzbG90IHN0cnVjdHVyZSBmb3IgdGhlIG1vZGFsIHdpZGdldC5cbiAqL1xuQERpcmVjdGl2ZSh7c2VsZWN0b3I6ICduZy10ZW1wbGF0ZVthdU1vZGFsU3RydWN0dXJlXScsIHN0YW5kYWxvbmU6IHRydWV9KVxuZXhwb3J0IGNsYXNzIE1vZGFsU3RydWN0dXJlRGlyZWN0aXZlPERhdGE+IHtcblx0cHVibGljIHRlbXBsYXRlUmVmID0gaW5qZWN0KFRlbXBsYXRlUmVmPE1vZGFsQ29udGV4dDxEYXRhPj4pO1xuXHRzdGF0aWMgbmdUZW1wbGF0ZUNvbnRleHRHdWFyZDxEYXRhPihkaXI6IE1vZGFsU3RydWN0dXJlRGlyZWN0aXZlPERhdGE+LCBjb250ZXh0OiB1bmtub3duKTogY29udGV4dCBpcyBNb2RhbENvbnRleHQ8RGF0YT4ge1xuXHRcdHJldHVybiB0cnVlO1xuXHR9XG59XG5cbi8qKlxuICogRGlyZWN0aXZlIHRvIHByb3ZpZGUgdGhlIHNsb3QgaGVhZGVyIGZvciB0aGUgbW9kYWwgd2lkZ2V0LlxuICovXG5ARGlyZWN0aXZlKHtzZWxlY3RvcjogJ25nLXRlbXBsYXRlW2F1TW9kYWxIZWFkZXJdJywgc3RhbmRhbG9uZTogdHJ1ZX0pXG5leHBvcnQgY2xhc3MgTW9kYWxIZWFkZXJEaXJlY3RpdmU8RGF0YT4ge1xuXHRwdWJsaWMgdGVtcGxhdGVSZWYgPSBpbmplY3QoVGVtcGxhdGVSZWY8TW9kYWxDb250ZXh0PERhdGE+Pik7XG5cdHN0YXRpYyBuZ1RlbXBsYXRlQ29udGV4dEd1YXJkPERhdGE+KF9kaXI6IE1vZGFsSGVhZGVyRGlyZWN0aXZlPERhdGE+LCBjb250ZXh0OiB1bmtub3duKTogY29udGV4dCBpcyBNb2RhbENvbnRleHQ8RGF0YT4ge1xuXHRcdHJldHVybiB0cnVlO1xuXHR9XG59XG5cbi8qKlxuICogRGlyZWN0aXZlIHRvIHByb3ZpZGUgdGhlIHNsb3QgdGl0bGUgZm9yIHRoZSBtb2RhbCB3aWRnZXQuXG4gKi9cbkBEaXJlY3RpdmUoe3NlbGVjdG9yOiAnbmctdGVtcGxhdGVbYXVNb2RhbFRpdGxlXScsIHN0YW5kYWxvbmU6IHRydWV9KVxuZXhwb3J0IGNsYXNzIE1vZGFsVGl0bGVEaXJlY3RpdmU8RGF0YT4ge1xuXHRwdWJsaWMgdGVtcGxhdGVSZWYgPSBpbmplY3QoVGVtcGxhdGVSZWY8TW9kYWxDb250ZXh0PERhdGE+Pik7XG5cdHN0YXRpYyBuZ1RlbXBsYXRlQ29udGV4dEd1YXJkPERhdGE+KF9kaXI6IE1vZGFsVGl0bGVEaXJlY3RpdmU8RGF0YT4sIGNvbnRleHQ6IHVua25vd24pOiBjb250ZXh0IGlzIE1vZGFsQ29udGV4dDxEYXRhPiB7XG5cdFx0cmV0dXJuIHRydWU7XG5cdH1cbn1cblxuLyoqXG4gKiBEaXJlY3RpdmUgdG8gcHJvdmlkZSB0aGUgZGVmYXVsdCBzbG90IGZvciB0aGUgbW9kYWwgd2lkZ2V0LlxuICovXG5ARGlyZWN0aXZlKHtzZWxlY3RvcjogJ25nLXRlbXBsYXRlW2F1TW9kYWxCb2R5XScsIHN0YW5kYWxvbmU6IHRydWV9KVxuZXhwb3J0IGNsYXNzIE1vZGFsQm9keURpcmVjdGl2ZTxEYXRhPiB7XG5cdHB1YmxpYyB0ZW1wbGF0ZVJlZiA9IGluamVjdChUZW1wbGF0ZVJlZjxNb2RhbENvbnRleHQ8RGF0YT4+KTtcblx0c3RhdGljIG5nVGVtcGxhdGVDb250ZXh0R3VhcmQ8RGF0YT4oX2RpcjogTW9kYWxCb2R5RGlyZWN0aXZlPERhdGE+LCBjb250ZXh0OiB1bmtub3duKTogY29udGV4dCBpcyBNb2RhbENvbnRleHQ8RGF0YT4ge1xuXHRcdHJldHVybiB0cnVlO1xuXHR9XG59XG5cbi8qKlxuICogRGlyZWN0aXZlIHRvIHByb3ZpZGUgdGhlIHNsb3QgZm9vdGVyIGZvciB0aGUgbW9kYWwgd2lkZ2V0LlxuICovXG5ARGlyZWN0aXZlKHtzZWxlY3RvcjogJ25nLXRlbXBsYXRlW2F1TW9kYWxGb290ZXJdJywgc3RhbmRhbG9uZTogdHJ1ZX0pXG5leHBvcnQgY2xhc3MgTW9kYWxGb290ZXJEaXJlY3RpdmU8RGF0YT4ge1xuXHRwdWJsaWMgdGVtcGxhdGVSZWYgPSBpbmplY3QoVGVtcGxhdGVSZWY8TW9kYWxDb250ZXh0PERhdGE+Pik7XG5cdHN0YXRpYyBuZ1RlbXBsYXRlQ29udGV4dEd1YXJkPERhdGE+KF9kaXI6IE1vZGFsRm9vdGVyRGlyZWN0aXZlPERhdGE+LCBjb250ZXh0OiB1bmtub3duKTogY29udGV4dCBpcyBNb2RhbENvbnRleHQ8RGF0YT4ge1xuXHRcdHJldHVybiB0cnVlO1xuXHR9XG59XG5cbi8qKlxuICogQ29tcG9uZW50IGNvbnRhaW5pbmcgdGhlIGRlZmF1bHQgc2xvdHMgZm9yIHRoZSBtb2RhbC5cbiAqL1xuQENvbXBvbmVudCh7XG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuXHRpbXBvcnRzOiBbU2xvdERpcmVjdGl2ZSwgTW9kYWxIZWFkZXJEaXJlY3RpdmUsIE1vZGFsU3RydWN0dXJlRGlyZWN0aXZlLCBVc2VEaXJlY3RpdmVdLFxuXHR0ZW1wbGF0ZTogYFxuXHRcdDxuZy10ZW1wbGF0ZSBhdU1vZGFsSGVhZGVyICNoZWFkZXIgbGV0LXN0YXRlPVwic3RhdGVcIiBsZXQtd2lkZ2V0PVwid2lkZ2V0XCI+XG5cdFx0XHQ8aDUgY2xhc3M9XCJtb2RhbC10aXRsZVwiPlxuXHRcdFx0XHQ8bmctdGVtcGxhdGUgW2F1U2xvdF09XCJzdGF0ZS50aXRsZVwiIFthdVNsb3RQcm9wc109XCJ7c3RhdGUsIHdpZGdldH1cIj48L25nLXRlbXBsYXRlPlxuXHRcdFx0PC9oNT5cblx0XHRcdEBpZiAoc3RhdGUuY2xvc2VCdXR0b24pIHtcblx0XHRcdFx0PGJ1dHRvbiBjbGFzcz1cImJ0bi1jbG9zZVwiIFthdVVzZV09XCJ3aWRnZXQuZGlyZWN0aXZlcy5jbG9zZUJ1dHRvbkRpcmVjdGl2ZVwiPjwvYnV0dG9uPlxuXHRcdFx0fVxuXHRcdDwvbmctdGVtcGxhdGU+XG5cdFx0PG5nLXRlbXBsYXRlIGF1TW9kYWxTdHJ1Y3R1cmUgI3N0cnVjdHVyZSBsZXQtc3RhdGU9XCJzdGF0ZVwiIGxldC13aWRnZXQ9XCJ3aWRnZXRcIj5cblx0XHRcdEBpZiAoc3RhdGUudGl0bGUpIHtcblx0XHRcdFx0PGRpdiBjbGFzcz1cIm1vZGFsLWhlYWRlclwiPlxuXHRcdFx0XHRcdDxuZy10ZW1wbGF0ZSBbYXVTbG90XT1cInN0YXRlLmhlYWRlclwiIFthdVNsb3RQcm9wc109XCJ7c3RhdGUsIHdpZGdldH1cIj48L25nLXRlbXBsYXRlPlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdH1cblx0XHRcdDxkaXYgY2xhc3M9XCJtb2RhbC1ib2R5XCI+XG5cdFx0XHRcdDxuZy10ZW1wbGF0ZSBbYXVTbG90XT1cInN0YXRlLmNoaWxkcmVuXCIgW2F1U2xvdFByb3BzXT1cIntzdGF0ZSwgd2lkZ2V0fVwiPjwvbmctdGVtcGxhdGU+XG5cdFx0XHQ8L2Rpdj5cblx0XHRcdEBpZiAoc3RhdGUuZm9vdGVyKSB7XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJtb2RhbC1mb290ZXJcIj5cblx0XHRcdFx0XHQ8bmctdGVtcGxhdGUgW2F1U2xvdF09XCJzdGF0ZS5mb290ZXJcIiBbYXVTbG90UHJvcHNdPVwie3N0YXRlLCB3aWRnZXR9XCI+PC9uZy10ZW1wbGF0ZT5cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHR9XG5cdFx0PC9uZy10ZW1wbGF0ZT5cblx0YCxcbn0pXG5leHBvcnQgY2xhc3MgTW9kYWxEZWZhdWx0U2xvdHNDb21wb25lbnQ8RGF0YT4ge1xuXHRAVmlld0NoaWxkKCdoZWFkZXInLCB7c3RhdGljOiB0cnVlfSkgaGVhZGVyITogVGVtcGxhdGVSZWY8TW9kYWxDb250ZXh0PERhdGE+Pjtcblx0QFZpZXdDaGlsZCgnc3RydWN0dXJlJywge3N0YXRpYzogdHJ1ZX0pIHN0cnVjdHVyZSE6IFRlbXBsYXRlUmVmPE1vZGFsQ29udGV4dDxEYXRhPj47XG59XG5cbi8qKlxuICogRGVmYXVsdCBzbG90IGZvciBtb2RhbCBoZWFkZXIuXG4gKi9cbmV4cG9ydCBjb25zdCBtb2RhbERlZmF1bHRTbG90SGVhZGVyID0gbmV3IENvbXBvbmVudFRlbXBsYXRlKE1vZGFsRGVmYXVsdFNsb3RzQ29tcG9uZW50LCAnaGVhZGVyJyk7XG5cbi8qKlxuICogRGVmYXVsdCBzbG90IGZvciBtb2RhbCBzdHJ1Y3R1cmUuXG4gKi9cbmV4cG9ydCBjb25zdCBtb2RhbERlZmF1bHRTbG90U3RydWN0dXJlID0gbmV3IENvbXBvbmVudFRlbXBsYXRlKE1vZGFsRGVmYXVsdFNsb3RzQ29tcG9uZW50LCAnc3RydWN0dXJlJyk7XG5cbmNvbnN0IGRlZmF1bHRDb25maWc6IFBhcnRpYWw8TW9kYWxQcm9wczxhbnk+PiA9IHtcblx0aGVhZGVyOiBtb2RhbERlZmF1bHRTbG90SGVhZGVyLFxuXHRzdHJ1Y3R1cmU6IG1vZGFsRGVmYXVsdFNsb3RTdHJ1Y3R1cmUsXG59O1xuXG4vKipcbiAqIE1vZGFsIGNvbXBvbmVudC5cbiAqL1xuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnW2F1TW9kYWxdJyxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG5cdGltcG9ydHM6IFtVc2VNdWx0aURpcmVjdGl2ZSwgU2xvdERpcmVjdGl2ZSwgQ29udGVudEFzU2xvdERpcmVjdGl2ZV0sXG5cdHRlbXBsYXRlOiBgXG5cdFx0PG5nLXRlbXBsYXRlIFthdUNvbnRlbnRBc1Nsb3RdPVwiZGVmYXVsdFNsb3RzXCI+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvbmctdGVtcGxhdGU+XG5cdFx0QGlmICghc3RhdGUoKS5iYWNrZHJvcEhpZGRlbikge1xuXHRcdFx0PGRpdiBjbGFzcz1cIm1vZGFsLWJhY2tkcm9wXCIgW2F1VXNlTXVsdGldPVwiW3dpZGdldC5kaXJlY3RpdmVzLmJhY2tkcm9wUG9ydGFsRGlyZWN0aXZlLCB3aWRnZXQuZGlyZWN0aXZlcy5iYWNrZHJvcERpcmVjdGl2ZV1cIj48L2Rpdj5cblx0XHR9XG5cdFx0QGlmICghc3RhdGUoKS5oaWRkZW4pIHtcblx0XHRcdDxkaXYgY2xhc3M9XCJtb2RhbCBkLWJsb2NrXCIgW2F1VXNlTXVsdGldPVwiW3dpZGdldC5kaXJlY3RpdmVzLm1vZGFsUG9ydGFsRGlyZWN0aXZlLCB3aWRnZXQuZGlyZWN0aXZlcy5tb2RhbERpcmVjdGl2ZV1cIj5cblx0XHRcdFx0PGRpdiBjbGFzcz1cIm1vZGFsLWRpYWxvZyB7eyBzdGF0ZSgpLmZ1bGxzY3JlZW4gPyAnbW9kYWwtZnVsbHNjcmVlbicgOiAnJyB9fVwiPlxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJtb2RhbC1jb250ZW50XCI+XG5cdFx0XHRcdFx0XHQ8bmctdGVtcGxhdGUgW2F1U2xvdF09XCJzdGF0ZSgpLnN0cnVjdHVyZVwiIFthdVNsb3RQcm9wc109XCJ7c3RhdGU6IHN0YXRlKCksIHdpZGdldH1cIj48L25nLXRlbXBsYXRlPlxuXHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvZGl2PlxuXHRcdH1cblx0YCxcbn0pXG5leHBvcnQgY2xhc3MgTW9kYWxDb21wb25lbnQ8RGF0YT4gZXh0ZW5kcyBCYXNlV2lkZ2V0RGlyZWN0aXZlPE1vZGFsV2lkZ2V0PERhdGE+PiBpbXBsZW1lbnRzIEFmdGVyQ29udGVudENoZWNrZWQge1xuXHQvKipcblx0ICogV2hldGhlciB0aGUgbW9kYWwgYW5kIGl0cyBiYWNrZHJvcCAoaWYgcHJlc2VudCkgc2hvdWxkIGJlIGFuaW1hdGVkIHdoZW4gc2hvd24gb3IgaGlkZGVuLlxuXHQgKi9cblx0QElucHV0KHthbGlhczogJ2F1QW5pbWF0ZWQnLCB0cmFuc2Zvcm06IGF1Qm9vbGVhbkF0dHJpYnV0ZX0pIGFuaW1hdGVkOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG5cdC8qKlxuXHQgKiBUaGUgdHJhbnNpdGlvbiB0byB1c2UgZm9yIHRoZSBiYWNrZHJvcCBiZWhpbmQgdGhlIG1vZGFsIChpZiBwcmVzZW50KS5cblx0ICovXG5cdEBJbnB1dCgnYXVCYWNrZHJvcFRyYW5zaXRpb24nKSBiYWNrZHJvcFRyYW5zaXRpb246IFRyYW5zaXRpb25GbiB8IHVuZGVmaW5lZDtcblxuXHQvKipcblx0ICogVGhlIHRyYW5zaXRpb24gdG8gdXNlIGZvciB0aGUgbW9kYWwuXG5cdCAqL1xuXHRASW5wdXQoJ2F1TW9kYWxUcmFuc2l0aW9uJykgbW9kYWxUcmFuc2l0aW9uOiBUcmFuc2l0aW9uRm4gfCB1bmRlZmluZWQ7XG5cblx0LyoqXG5cdCAqIFdoZXRoZXIgdGhlIG1vZGFsIHNob3VsZCBiZSB2aXNpYmxlIHdoZW4gdGhlIHRyYW5zaXRpb24gaXMgY29tcGxldGVkLlxuXHQgKi9cblx0QElucHV0KHthbGlhczogJ2F1VmlzaWJsZScsIHRyYW5zZm9ybTogYXVCb29sZWFuQXR0cmlidXRlfSkgdmlzaWJsZTogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuXHQvKipcblx0ICogV2hldGhlciBhIGJhY2tkcm9wIHNob3VsZCBiZSBjcmVhdGVkIGJlaGluZCB0aGUgbW9kYWwuXG5cdCAqL1xuXHRASW5wdXQoe2FsaWFzOiAnYXVCYWNrZHJvcCcsIHRyYW5zZm9ybTogYXVCb29sZWFuQXR0cmlidXRlfSkgYmFja2Ryb3A6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5cblx0LyoqXG5cdCAqIFdoZXRoZXIgdGhlIG1vZGFsIHNob3VsZCBiZSBjbG9zZWQgd2hlbiBjbGlja2luZyBvbiB0aGUgdmlld3BvcnQgb3V0c2lkZSB0aGUgbW9kYWwuXG5cdCAqL1xuXHRASW5wdXQoe2FsaWFzOiAnYXVDbG9zZU9uT3V0c2lkZUNsaWNrJywgdHJhbnNmb3JtOiBhdUJvb2xlYW5BdHRyaWJ1dGV9KSBjbG9zZU9uT3V0c2lkZUNsaWNrOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG5cdC8qKlxuXHQgKiBXaGljaCBlbGVtZW50IHNob3VsZCBjb250YWluIHRoZSBtb2RhbCBhbmQgYmFja2Ryb3AgRE9NIGVsZW1lbnRzLlxuXHQgKiBJZiBpdCBpcyBub3QgbnVsbCwgdGhlIG1vZGFsIGFuZCBiYWNrZHJvcCBET00gZWxlbWVudHMgYXJlIG1vdmVkIHRvIHRoZSBzcGVjaWZpZWQgY29udGFpbmVyLlxuXHQgKiBPdGhlcndpc2UsIHRoZXkgc3RheSB3aGVyZSB0aGUgd2lkZ2V0IGlzIGxvY2F0ZWQuXG5cdCAqL1xuXHRASW5wdXQoJ2F1Q29udGFpbmVyJykgY29udGFpbmVyOiBIVE1MRWxlbWVudCB8IG51bGwgfCB1bmRlZmluZWQ7XG5cblx0LyoqXG5cdCAqIFZhbHVlIG9mIHRoZSBhcmlhLWxhYmVsIGF0dHJpYnV0ZSB0byBwdXQgb24gdGhlIGNsb3NlIGJ1dHRvbi5cblx0ICovXG5cdEBJbnB1dCgnYXVBcmlhQ2xvc2VCdXR0b25MYWJlbCcpIGFyaWFDbG9zZUJ1dHRvbkxhYmVsOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cblx0LyoqXG5cdCAqIENsYXNzZXMgdG8gYWRkIG9uIHRoZSBiYWNrZHJvcCBET00gZWxlbWVudC5cblx0ICovXG5cdEBJbnB1dCgnYXVCYWNrZHJvcENsYXNzJykgYmFja2Ryb3BDbGFzczogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG5cdC8qKlxuXHQgKiBXaGV0aGVyIHRvIGRpc3BsYXkgdGhlIGNsb3NlIGJ1dHRvbi5cblx0ICovXG5cdEBJbnB1dCh7YWxpYXM6ICdhdUNsb3NlQnV0dG9uJywgdHJhbnNmb3JtOiBhdUJvb2xlYW5BdHRyaWJ1dGV9KSBjbG9zZUJ1dHRvbjogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuXHQvKipcblx0ICogQ1NTIGNsYXNzZXMgdG8gYmUgYXBwbGllZCBvbiB0aGUgd2lkZ2V0IG1haW4gY29udGFpbmVyXG5cdCAqL1xuXHRASW5wdXQoJ2F1Q2xhc3NOYW1lJykgY2xhc3NOYW1lOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cblx0LyoqXG5cdCAqIE9wdGlvbiB0byBjcmVhdGUgYSBmdWxsc2NyZWVuIG1vZGFsLCBhY2NvcmRpbmcgdG8gdGhlIGJvb3RzdHJhcCBkb2N1bWVudGF0aW9uLlxuXHQgKi9cblx0QElucHV0KHthbGlhczogJ2F1RnVsbHNjcmVlbicsIHRyYW5zZm9ybTogYXVCb29sZWFuQXR0cmlidXRlfSkgZnVsbHNjcmVlbjogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuXHQvKipcblx0ICogU3RydWN0dXJlIG9mIHRoZSBtb2RhbC5cblx0ICogVGhlIGRlZmF1bHQgc3RydWN0dXJlIHVzZXMgTW9kYWxDb21tb25Qcm9wc0FuZFN0YXRlLmhlYWRlciBoZWFkZXIsIE1vZGFsQ29tbW9uUHJvcHNBbmRTdGF0ZS5jaGlsZHJlbiBjaGlsZHJlbiBhbmQgTW9kYWxDb21tb25Qcm9wc0FuZFN0YXRlLmZvb3RlciBmb290ZXIuXG5cdCAqL1xuXHRASW5wdXQoJ2F1U3RydWN0dXJlJykgc3RydWN0dXJlOiBTbG90Q29udGVudDxNb2RhbENvbnRleHQ8RGF0YT4+O1xuXHRAQ29udGVudENoaWxkKE1vZGFsU3RydWN0dXJlRGlyZWN0aXZlLCB7c3RhdGljOiBmYWxzZX0pXG5cdHNsb3RTdHJ1Y3R1cmVGcm9tQ29udGVudDogTW9kYWxTdHJ1Y3R1cmVEaXJlY3RpdmU8RGF0YT4gfCB1bmRlZmluZWQ7XG5cblx0LyoqXG5cdCAqIEhlYWRlciBvZiB0aGUgbW9kYWwuIFRoZSBkZWZhdWx0IGhlYWRlciBpbmNsdWRlcyBNb2RhbENvbW1vblByb3BzQW5kU3RhdGUudGl0bGUgdGl0bGUuXG5cdCAqL1xuXHRASW5wdXQoJ2F1SGVhZGVyJykgaGVhZGVyOiBTbG90Q29udGVudDxNb2RhbENvbnRleHQ8RGF0YT4+O1xuXHRAQ29udGVudENoaWxkKE1vZGFsSGVhZGVyRGlyZWN0aXZlLCB7c3RhdGljOiBmYWxzZX0pXG5cdHNsb3RIZWFkZXJGcm9tQ29udGVudDogTW9kYWxIZWFkZXJEaXJlY3RpdmU8RGF0YT4gfCB1bmRlZmluZWQ7XG5cblx0LyoqXG5cdCAqIFRpdGxlIG9mIHRoZSBtb2RhbC5cblx0ICovXG5cdEBJbnB1dCgnYXVUaXRsZScpIHRpdGxlOiBTbG90Q29udGVudDxNb2RhbENvbnRleHQ8RGF0YT4+O1xuXHRAQ29udGVudENoaWxkKE1vZGFsVGl0bGVEaXJlY3RpdmUsIHtzdGF0aWM6IGZhbHNlfSlcblx0c2xvdFRpdGxlRnJvbUNvbnRlbnQ6IE1vZGFsVGl0bGVEaXJlY3RpdmU8RGF0YT4gfCB1bmRlZmluZWQ7XG5cblx0LyoqXG5cdCAqIEJvZHkgb2YgdGhlIG1vZGFsLlxuXHQgKi9cblx0QElucHV0KCdhdUNoaWxkcmVuJykgY2hpbGRyZW46IFNsb3RDb250ZW50PE1vZGFsQ29udGV4dDxEYXRhPj47XG5cdEBDb250ZW50Q2hpbGQoTW9kYWxCb2R5RGlyZWN0aXZlLCB7c3RhdGljOiBmYWxzZX0pXG5cdHNsb3REZWZhdWx0RnJvbUNvbnRlbnQ6IE1vZGFsQm9keURpcmVjdGl2ZTxEYXRhPiB8IHVuZGVmaW5lZDtcblxuXHQvKipcblx0ICogRm9vdGVyIG9mIHRoZSBtb2RhbC5cblx0ICovXG5cdEBJbnB1dCgnYXVGb290ZXInKSBmb290ZXI6IFNsb3RDb250ZW50PE1vZGFsQ29udGV4dDxEYXRhPj47XG5cdEBDb250ZW50Q2hpbGQoTW9kYWxGb290ZXJEaXJlY3RpdmUsIHtzdGF0aWM6IGZhbHNlfSlcblx0c2xvdEZvb3RlckZyb21Db250ZW50OiBNb2RhbEZvb3RlckRpcmVjdGl2ZTxEYXRhPiB8IHVuZGVmaW5lZDtcblxuXHQvKipcblx0ICogRGF0YSB0byB1c2UgaW4gY29udGVudCBzbG90c1xuXHQgKi9cblx0QElucHV0KCdhdUNvbnRlbnREYXRhJykgY29udGVudERhdGE6IERhdGEgfCB1bmRlZmluZWQ7XG5cblx0LyoqXG5cdCAqIEV2ZW50IHRvIGJlIHRyaWdnZXJlZCB3aGVuIHRoZSB2aXNpYmxlIHByb3BlcnR5IGNoYW5nZXMuXG5cdCAqL1xuXHRAT3V0cHV0KCdhdVZpc2libGVDaGFuZ2UnKSB2aXNpYmxlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG5cdC8qKlxuXHQgKiBFdmVudCB0byBiZSB0cmlnZ2VyZWQgd2hlbiB0aGUgbW9kYWwgaXMgYWJvdXQgdG8gYmUgY2xvc2VkIChpLmUuIHRoZSBNb2RhbEFwaS5jbG9zZWNsb3NlICBtZXRob2Qgd2FzIGNhbGxlZCkuXG5cdCAqL1xuXHRAT3V0cHV0KCdhdUJlZm9yZUNsb3NlJykgYmVmb3JlQ2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPE1vZGFsQmVmb3JlQ2xvc2VFdmVudD4oKTtcblxuXHQvKipcblx0ICogRXZlbnQgdG8gYmUgdHJpZ2dlcmVkIHdoZW4gdGhlIHRyYW5zaXRpb24gaXMgY29tcGxldGVkIGFuZCB0aGUgbW9kYWwgaXMgbm90IHZpc2libGUuXG5cdCAqL1xuXHRAT3V0cHV0KCdhdUhpZGRlbicpIGhpZGRlbiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuXHQvKipcblx0ICogRXZlbnQgdG8gYmUgdHJpZ2dlcmVkIHdoZW4gdGhlIHRyYW5zaXRpb24gaXMgY29tcGxldGVkIGFuZCB0aGUgbW9kYWwgaXMgdmlzaWJsZS5cblx0ICovXG5cdEBPdXRwdXQoJ2F1U2hvd24nKSBzaG93biA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuXHRyZWFkb25seSBkZWZhdWx0U2xvdHMgPSB3cml0YWJsZShkZWZhdWx0Q29uZmlnKTtcblxuXHRyZWFkb25seSBfd2lkZ2V0ID0gY2FsbFdpZGdldEZhY3Rvcnk8TW9kYWxXaWRnZXQ8RGF0YT4+KHtcblx0XHRmYWN0b3J5OiBjcmVhdGVNb2RhbCxcblx0XHR3aWRnZXROYW1lOiAnbW9kYWwnLFxuXHRcdGRlZmF1bHRDb25maWc6IHRoaXMuZGVmYXVsdFNsb3RzLFxuXHRcdGV2ZW50czoge1xuXHRcdFx0b25TaG93bjogKCkgPT4gdGhpcy5zaG93bi5lbWl0KCksXG5cdFx0XHRvbkhpZGRlbjogKCkgPT4gdGhpcy5oaWRkZW4uZW1pdCgpLFxuXHRcdFx0b25CZWZvcmVDbG9zZTogKGV2ZW50KSA9PiB0aGlzLmJlZm9yZUNsb3NlLmVtaXQoZXZlbnQpLFxuXHRcdFx0b25WaXNpYmxlQ2hhbmdlOiAoZXZlbnQpID0+IHRoaXMudmlzaWJsZUNoYW5nZS5lbWl0KGV2ZW50KSxcblx0XHR9LFxuXHR9KTtcblxuXHRuZ0FmdGVyQ29udGVudENoZWNrZWQoKTogdm9pZCB7XG5cdFx0dGhpcy5fd2lkZ2V0LnBhdGNoU2xvdHMoe1xuXHRcdFx0Y2hpbGRyZW46IHRoaXMuc2xvdERlZmF1bHRGcm9tQ29udGVudD8udGVtcGxhdGVSZWYsXG5cdFx0XHRmb290ZXI6IHRoaXMuc2xvdEZvb3RlckZyb21Db250ZW50Py50ZW1wbGF0ZVJlZixcblx0XHRcdGhlYWRlcjogdGhpcy5zbG90SGVhZGVyRnJvbUNvbnRlbnQ/LnRlbXBsYXRlUmVmLFxuXHRcdFx0c3RydWN0dXJlOiB0aGlzLnNsb3RTdHJ1Y3R1cmVGcm9tQ29udGVudD8udGVtcGxhdGVSZWYsXG5cdFx0XHR0aXRsZTogdGhpcy5zbG90VGl0bGVGcm9tQ29udGVudD8udGVtcGxhdGVSZWYsXG5cdFx0fSBhcyBhbnkpO1xuXHR9XG59XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuZ2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbW9kYWwvbW9kYWwuZ2VuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7V2lkZ2V0U2xvdENvbnRleHQsIFNsb3RDb250ZW50LCBUcmFuc2l0aW9uRm4sIFdpZGdldCwgRGlyZWN0aXZlfSBmcm9tICdAYWdub3MtdWkvYW5ndWxhci1oZWFkbGVzcyc7XG5cbmV4cG9ydCB0eXBlIE1vZGFsQ29udGV4dDxEYXRhPiA9IFdpZGdldFNsb3RDb250ZXh0PE1vZGFsV2lkZ2V0PERhdGE+PjtcblxuZXhwb3J0IGludGVyZmFjZSBNb2RhbFN0YXRlPERhdGE+IHtcblx0LyoqXG5cdCAqIFdoZXRoZXIgdGhlIGJhY2tkcm9wIGlzIGZ1bGx5IGhpZGRlbi4gVGhpcyBjYW4gYmUgdHJ1ZSBlaXRoZXIgYmVjYXVzZSB7QGxpbmsgTW9kYWxQcm9wcy5iYWNrZHJvcGJhY2tkcm9wfSBpcyBmYWxzZSBvclxuXHQgKiBiZWNhdXNlIHtAbGluayBNb2RhbENvbW1vblByb3BzQW5kU3RhdGUudmlzaWJsZXZpc2libGV9IGlzIGZhbHNlIGFuZCB0aGVyZSBpcyBubyBjdXJyZW50IHRyYW5zaXRpb24uXG5cdCAqL1xuXHRiYWNrZHJvcEhpZGRlbjogYm9vbGVhbjtcblx0LyoqXG5cdCAqIFdoZXRoZXIgdGhlIG1vZGFsIGlzIGZ1bGx5IGhpZGRlbi5cblx0ICovXG5cdGhpZGRlbjogYm9vbGVhbjtcblx0LyoqXG5cdCAqIFdoZXRoZXIgdGhlcmUgaXMgYW4gYWN0aXZlIHRyYW5zaXRpb24gdG8gZWl0aGVyIGRpc3BsYXkgb3IgaGlkZSB0aGUgbW9kYWwuXG5cdCAqL1xuXHR0cmFuc2l0aW9uaW5nOiBib29sZWFuO1xuXHQvKipcblx0ICogRE9NIGVsZW1lbnQgb2YgdGhlIG1vZGFsLlxuXHQgKi9cblx0bW9kYWxFbGVtZW50OiBIVE1MRWxlbWVudCB8IG51bGw7XG5cdC8qKlxuXHQgKiBWYWx1ZSBvZiB0aGUgYXJpYS1sYWJlbCBhdHRyaWJ1dGUgdG8gcHV0IG9uIHRoZSBjbG9zZSBidXR0b24uXG5cdCAqL1xuXHRhcmlhQ2xvc2VCdXR0b25MYWJlbDogc3RyaW5nO1xuXHQvKipcblx0ICogQ2xhc3NlcyB0byBhZGQgb24gdGhlIGJhY2tkcm9wIERPTSBlbGVtZW50LlxuXHQgKi9cblx0YmFja2Ryb3BDbGFzczogc3RyaW5nO1xuXHQvKipcblx0ICogV2hldGhlciB0byBkaXNwbGF5IHRoZSBjbG9zZSBidXR0b24uXG5cdCAqL1xuXHRjbG9zZUJ1dHRvbjogYm9vbGVhbjtcblx0LyoqXG5cdCAqIFdoaWNoIGVsZW1lbnQgc2hvdWxkIGNvbnRhaW4gdGhlIG1vZGFsIGFuZCBiYWNrZHJvcCBET00gZWxlbWVudHMuXG5cdCAqIElmIGl0IGlzIG5vdCBudWxsLCB0aGUgbW9kYWwgYW5kIGJhY2tkcm9wIERPTSBlbGVtZW50cyBhcmUgbW92ZWQgdG8gdGhlIHNwZWNpZmllZCBjb250YWluZXIuXG5cdCAqIE90aGVyd2lzZSwgdGhleSBzdGF5IHdoZXJlIHRoZSB3aWRnZXQgaXMgbG9jYXRlZC5cblx0ICovXG5cdGNvbnRhaW5lcjogSFRNTEVsZW1lbnQgfCBudWxsO1xuXHQvKipcblx0ICogV2hldGhlciB0aGUgbW9kYWwgc2hvdWxkIGJlIHZpc2libGUgd2hlbiB0aGUgdHJhbnNpdGlvbiBpcyBjb21wbGV0ZWQuXG5cdCAqL1xuXHR2aXNpYmxlOiBib29sZWFuO1xuXHQvKipcblx0ICogQ1NTIGNsYXNzZXMgdG8gYmUgYXBwbGllZCBvbiB0aGUgd2lkZ2V0IG1haW4gY29udGFpbmVyXG5cdCAqL1xuXHRjbGFzc05hbWU6IHN0cmluZztcblx0LyoqXG5cdCAqIERhdGEgdG8gdXNlIGluIGNvbnRlbnQgc2xvdHNcblx0ICovXG5cdGNvbnRlbnREYXRhOiBEYXRhO1xuXHQvKipcblx0ICogQm9keSBvZiB0aGUgbW9kYWwuXG5cdCAqL1xuXHRjaGlsZHJlbjogU2xvdENvbnRlbnQ8TW9kYWxDb250ZXh0PERhdGE+Pjtcblx0LyoqXG5cdCAqIEZvb3RlciBvZiB0aGUgbW9kYWwuXG5cdCAqL1xuXHRzbG90Rm9vdGVyOiBTbG90Q29udGVudDxNb2RhbENvbnRleHQ8RGF0YT4+O1xuXHQvKipcblx0ICogSGVhZGVyIG9mIHRoZSBtb2RhbC4gVGhlIGRlZmF1bHQgaGVhZGVyIGluY2x1ZGVzIHtAbGluayBNb2RhbENvbW1vblByb3BzQW5kU3RhdGUuc2xvdFRpdGxlIHNsb3RUaXRsZX0uXG5cdCAqL1xuXHRzbG90SGVhZGVyOiBTbG90Q29udGVudDxNb2RhbENvbnRleHQ8RGF0YT4+O1xuXHQvKipcblx0ICogU3RydWN0dXJlIG9mIHRoZSBtb2RhbC5cblx0ICogVGhlIGRlZmF1bHQgc3RydWN0dXJlIHVzZXMge0BsaW5rIE1vZGFsQ29tbW9uUHJvcHNBbmRTdGF0ZS5zbG90SGVhZGVyIHNsb3RIZWFkZXJ9LCB7QGxpbmsgTW9kYWxDb21tb25Qcm9wc0FuZFN0YXRlLmNoaWxkcmVuIGNoaWxkcmVufSBhbmQge0BsaW5rIE1vZGFsQ29tbW9uUHJvcHNBbmRTdGF0ZS5zbG90Rm9vdGVyIHNsb3RGb290ZXJ9LlxuXHQgKi9cblx0c2xvdFN0cnVjdHVyZTogU2xvdENvbnRlbnQ8TW9kYWxDb250ZXh0PERhdGE+Pjtcblx0LyoqXG5cdCAqIFRpdGxlIG9mIHRoZSBtb2RhbC5cblx0ICovXG5cdHNsb3RUaXRsZTogU2xvdENvbnRlbnQ8TW9kYWxDb250ZXh0PERhdGE+Pjtcblx0LyoqXG5cdCAqIE9wdGlvbiB0byBjcmVhdGUgYSBmdWxsc2NyZWVuIG1vZGFsLCBhY2NvcmRpbmcgdG8gdGhlIGJvb3RzdHJhcCBkb2N1bWVudGF0aW9uLlxuXHQgKi9cblx0ZnVsbHNjcmVlbjogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNb2RhbFByb3BzPERhdGE+IHtcblx0LyoqXG5cdCAqIFdoZXRoZXIgdGhlIG1vZGFsIGFuZCBpdHMgYmFja2Ryb3AgKGlmIHByZXNlbnQpIHNob3VsZCBiZSBhbmltYXRlZCB3aGVuIHNob3duIG9yIGhpZGRlbi5cblx0ICovXG5cdGFuaW1hdGVkOiBib29sZWFuO1xuXHQvKipcblx0ICogV2hldGhlciBhIGJhY2tkcm9wIHNob3VsZCBiZSBjcmVhdGVkIGJlaGluZCB0aGUgbW9kYWwuXG5cdCAqL1xuXHRiYWNrZHJvcDogYm9vbGVhbjtcblx0LyoqXG5cdCAqIFRoZSB0cmFuc2l0aW9uIHRvIHVzZSBmb3IgdGhlIGJhY2tkcm9wIGJlaGluZCB0aGUgbW9kYWwgKGlmIHByZXNlbnQpLlxuXHQgKi9cblx0YmFja2Ryb3BUcmFuc2l0aW9uOiBUcmFuc2l0aW9uRm47XG5cdC8qKlxuXHQgKiBXaGV0aGVyIHRoZSBtb2RhbCBzaG91bGQgYmUgY2xvc2VkIHdoZW4gY2xpY2tpbmcgb24gdGhlIHZpZXdwb3J0IG91dHNpZGUgdGhlIG1vZGFsLlxuXHQgKi9cblx0Y2xvc2VPbk91dHNpZGVDbGljazogYm9vbGVhbjtcblx0LyoqXG5cdCAqIFRoZSB0cmFuc2l0aW9uIHRvIHVzZSBmb3IgdGhlIG1vZGFsLlxuXHQgKi9cblx0bW9kYWxUcmFuc2l0aW9uOiBUcmFuc2l0aW9uRm47XG5cdC8qKlxuXHQgKiBFdmVudCB0byBiZSB0cmlnZ2VyZWQgd2hlbiB0aGUgbW9kYWwgaXMgYWJvdXQgdG8gYmUgY2xvc2VkIChpLmUuIHRoZSB7QGxpbmsgTW9kYWxBcGkuY2xvc2VjbG9zZX0gbWV0aG9kIHdhcyBjYWxsZWQpLlxuXHQgKi9cblx0b25CZWZvcmVDbG9zZTogKGV2ZW50OiBNb2RhbEJlZm9yZUNsb3NlRXZlbnQpID0+IHZvaWQ7XG5cdC8qKlxuXHQgKiBFdmVudCB0byBiZSB0cmlnZ2VyZWQgd2hlbiB0aGUgdmlzaWJsZSBwcm9wZXJ0eSBjaGFuZ2VzLlxuXHQgKi9cblx0b25WaXNpYmxlQ2hhbmdlOiAodmlzaWJsZTogYm9vbGVhbikgPT4gdm9pZDtcblx0LyoqXG5cdCAqIEV2ZW50IHRvIGJlIHRyaWdnZXJlZCB3aGVuIHRoZSB0cmFuc2l0aW9uIGlzIGNvbXBsZXRlZCBhbmQgdGhlIG1vZGFsIGlzIG5vdCB2aXNpYmxlLlxuXHQgKi9cblx0b25IaWRkZW46ICgpID0+IHZvaWQ7XG5cdC8qKlxuXHQgKiBFdmVudCB0byBiZSB0cmlnZ2VyZWQgd2hlbiB0aGUgdHJhbnNpdGlvbiBpcyBjb21wbGV0ZWQgYW5kIHRoZSBtb2RhbCBpcyB2aXNpYmxlLlxuXHQgKi9cblx0b25TaG93bjogKCkgPT4gdm9pZDtcblx0LyoqXG5cdCAqIFZhbHVlIG9mIHRoZSBhcmlhLWxhYmVsIGF0dHJpYnV0ZSB0byBwdXQgb24gdGhlIGNsb3NlIGJ1dHRvbi5cblx0ICovXG5cdGFyaWFDbG9zZUJ1dHRvbkxhYmVsOiBzdHJpbmc7XG5cdC8qKlxuXHQgKiBDbGFzc2VzIHRvIGFkZCBvbiB0aGUgYmFja2Ryb3AgRE9NIGVsZW1lbnQuXG5cdCAqL1xuXHRiYWNrZHJvcENsYXNzOiBzdHJpbmc7XG5cdC8qKlxuXHQgKiBXaGV0aGVyIHRvIGRpc3BsYXkgdGhlIGNsb3NlIGJ1dHRvbi5cblx0ICovXG5cdGNsb3NlQnV0dG9uOiBib29sZWFuO1xuXHQvKipcblx0ICogV2hpY2ggZWxlbWVudCBzaG91bGQgY29udGFpbiB0aGUgbW9kYWwgYW5kIGJhY2tkcm9wIERPTSBlbGVtZW50cy5cblx0ICogSWYgaXQgaXMgbm90IG51bGwsIHRoZSBtb2RhbCBhbmQgYmFja2Ryb3AgRE9NIGVsZW1lbnRzIGFyZSBtb3ZlZCB0byB0aGUgc3BlY2lmaWVkIGNvbnRhaW5lci5cblx0ICogT3RoZXJ3aXNlLCB0aGV5IHN0YXkgd2hlcmUgdGhlIHdpZGdldCBpcyBsb2NhdGVkLlxuXHQgKi9cblx0Y29udGFpbmVyOiBIVE1MRWxlbWVudCB8IG51bGw7XG5cdC8qKlxuXHQgKiBXaGV0aGVyIHRoZSBtb2RhbCBzaG91bGQgYmUgdmlzaWJsZSB3aGVuIHRoZSB0cmFuc2l0aW9uIGlzIGNvbXBsZXRlZC5cblx0ICovXG5cdHZpc2libGU6IGJvb2xlYW47XG5cdC8qKlxuXHQgKiBDU1MgY2xhc3NlcyB0byBiZSBhcHBsaWVkIG9uIHRoZSB3aWRnZXQgbWFpbiBjb250YWluZXJcblx0ICovXG5cdGNsYXNzTmFtZTogc3RyaW5nO1xuXHQvKipcblx0ICogRGF0YSB0byB1c2UgaW4gY29udGVudCBzbG90c1xuXHQgKi9cblx0Y29udGVudERhdGE6IERhdGE7XG5cdC8qKlxuXHQgKiBCb2R5IG9mIHRoZSBtb2RhbC5cblx0ICovXG5cdGNoaWxkcmVuOiBTbG90Q29udGVudDxNb2RhbENvbnRleHQ8RGF0YT4+O1xuXHQvKipcblx0ICogRm9vdGVyIG9mIHRoZSBtb2RhbC5cblx0ICovXG5cdHNsb3RGb290ZXI6IFNsb3RDb250ZW50PE1vZGFsQ29udGV4dDxEYXRhPj47XG5cdC8qKlxuXHQgKiBIZWFkZXIgb2YgdGhlIG1vZGFsLiBUaGUgZGVmYXVsdCBoZWFkZXIgaW5jbHVkZXMge0BsaW5rIE1vZGFsQ29tbW9uUHJvcHNBbmRTdGF0ZS5zbG90VGl0bGUgc2xvdFRpdGxlfS5cblx0ICovXG5cdHNsb3RIZWFkZXI6IFNsb3RDb250ZW50PE1vZGFsQ29udGV4dDxEYXRhPj47XG5cdC8qKlxuXHQgKiBTdHJ1Y3R1cmUgb2YgdGhlIG1vZGFsLlxuXHQgKiBUaGUgZGVmYXVsdCBzdHJ1Y3R1cmUgdXNlcyB7QGxpbmsgTW9kYWxDb21tb25Qcm9wc0FuZFN0YXRlLnNsb3RIZWFkZXIgc2xvdEhlYWRlcn0sIHtAbGluayBNb2RhbENvbW1vblByb3BzQW5kU3RhdGUuY2hpbGRyZW4gY2hpbGRyZW59IGFuZCB7QGxpbmsgTW9kYWxDb21tb25Qcm9wc0FuZFN0YXRlLnNsb3RGb290ZXIgc2xvdEZvb3Rlcn0uXG5cdCAqL1xuXHRzbG90U3RydWN0dXJlOiBTbG90Q29udGVudDxNb2RhbENvbnRleHQ8RGF0YT4+O1xuXHQvKipcblx0ICogVGl0bGUgb2YgdGhlIG1vZGFsLlxuXHQgKi9cblx0c2xvdFRpdGxlOiBTbG90Q29udGVudDxNb2RhbENvbnRleHQ8RGF0YT4+O1xuXHQvKipcblx0ICogT3B0aW9uIHRvIGNyZWF0ZSBhIGZ1bGxzY3JlZW4gbW9kYWwsIGFjY29yZGluZyB0byB0aGUgYm9vdHN0cmFwIGRvY3VtZW50YXRpb24uXG5cdCAqL1xuXHRmdWxsc2NyZWVuOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1vZGFsQXBpPERhdGE+IHtcblx0LyoqXG5cdCAqIE1ldGhvZCB0byBjaGFuZ2Ugc29tZSBtb2RhbCBwcm9wZXJ0aWVzLlxuXHQgKi9cblx0cGF0Y2g6IE1vZGFsV2lkZ2V0PERhdGE+WydwYXRjaCddO1xuXHQvKipcblx0ICogQ2xvc2VzIHRoZSBtb2RhbCB3aXRoIHRoZSBnaXZlbiByZXN1bHQuXG5cdCAqL1xuXHRjbG9zZShyZXN1bHQ/OiBhbnkpOiB2b2lkO1xuXHQvKipcblx0ICogT3BlbnMgdGhlIG1vZGFsIGFuZCByZXR1cm5zIGEgcHJvbWlzZSB0aGF0IGlzIHJlc29sdmVkIHdoZW4gdGhlIG1vZGFsIGlzIGNsb3NlZC5cblx0ICogVGhlIHJlc29sdmVkIHZhbHVlIGlzIHRoZSByZXN1bHQgcGFzc2VkIHRvIHRoZSB7QGxpbmsgTW9kYWxBcGkuY2xvc2VjbG9zZX0gbWV0aG9kIGFuZCBwb3NzaWJseSBjaGFuZ2VkIGJ5IHRoZVxuXHQgKiB7QGxpbmsgTW9kYWxQcm9wcy5vbkJlZm9yZUNsb3Nlb25CZWZvcmVDbG9zZX0gZXZlbnQgaGFuZGxlclxuXHQgKi9cblx0b3BlbigpOiBQcm9taXNlPGFueT47XG59XG5cbmV4cG9ydCB0eXBlIE1vZGFsV2lkZ2V0PERhdGE+ID0gV2lkZ2V0PE1vZGFsUHJvcHM8RGF0YT4sIE1vZGFsU3RhdGU8RGF0YT4sIE1vZGFsQXBpPERhdGE+LCBNb2RhbEFjdGlvbnMsIE1vZGFsRGlyZWN0aXZlcz47XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9kYWxCZWZvcmVDbG9zZUV2ZW50IHtcblx0LyoqXG5cdCAqIFJlc3VsdCBvZiB0aGUgbW9kYWwsIHdoaWNoIGlzIHRoZSB2YWx1ZSBwYXNzZWQgdG8gdGhlIHtAbGluayBNb2RhbEFwaS5jbG9zZWNsb3NlfSBtZXRob2Rcblx0ICogYW5kIGxhdGVyIHJlc29sdmVkIGJ5IHRoZSBwcm9taXNlIHJldHVybmVkIGJ5IHRoZSB7QGxpbmsgTW9kYWxBcGkub3Blbm9wZW59IG1ldGhvZC5cblx0ICogSWYgbmVlZGVkLCBpdCBjYW4gYmUgY2hhbmdlZCBmcm9tIHRoZSB7QGxpbmsgTW9kYWxQcm9wcy5vbkJlZm9yZUNsb3Nlb25CZWZvcmVDbG9zZX0gZXZlbnQgaGFuZGxlci5cblx0ICovXG5cdHJlc3VsdDogYW55O1xuXHQvKipcblx0ICogV2hldGhlciB0byBjYW5jZWwgdGhlIGNsb3NlIG9mIHRoZSBtb2RhbC5cblx0ICogSXQgY2FuIGJlIGNoYW5nZWQgZnJvbSB0aGUge0BsaW5rIE1vZGFsUHJvcHMub25CZWZvcmVDbG9zZW9uQmVmb3JlQ2xvc2V9IGV2ZW50IGhhbmRsZXIuXG5cdCAqL1xuXHRjYW5jZWw6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9kYWxBY3Rpb25zIHtcblx0LyoqXG5cdCAqIEFjdGlvbiB0byBiZSBjYWxsZWQgd2hlbiB0aGUgdXNlciBjbGlja3Mgb24gdGhlIGNsb3NlIGJ1dHRvbi4gSXQgY2xvc2VzIHRoZSBtb2RhbCB3aXRoIHRoZSB7QGxpbmsgbW9kYWxDbG9zZUJ1dHRvbkNsaWNrfSByZXN1bHQuXG5cdCAqL1xuXHRjbG9zZUJ1dHRvbkNsaWNrKGV2ZW50OiBQaWNrPE1vdXNlRXZlbnQsIG5ldmVyPik6IHZvaWQ7XG5cdC8qKlxuXHQgKiBBY3Rpb24gdG8gYmUgY2FsbGVkIHdoZW4gdGhlIHVzZXIgY2xpY2tzIG9uIHRoZSBtb2RhbCBET00gZWxlbWVudCAod2hpY2ggaXMgc3VwcG9zZWQgdG8gaGF2ZSB0aGUgc2l6ZSBvZiB0aGUgZnVsbCB2aWV3cG9ydCkuXG5cdCAqIElmIHRoZSBjbGljayBpcyBub3QgZG9uZSBvbiBhIGRlc2NlbmRhbnQgb2YgdGhlIG1vZGFsIERPTSBlbGVtZW50LCBpdCBpcyBjb25zaWRlcmVkIHRvIGJlIGRvbmUgb3V0c2lkZSB0aGUgbW9kYWxcblx0ICogYW5kLCBkZXBlbmRpbmcgb24gdGhlIHZhbHVlIG9mIHRoZSB7QGxpbmsgTW9kYWxQcm9wcy5jbG9zZU9uT3V0c2lkZUNsaWNrY2xvc2VPbk91dHNpZGVDbGlja30gcHJvcCwgdGhlIG1vZGFsIGlzIG9yIGlzbid0IGNsb3NlZFxuXHQgKiAod2l0aCB0aGUge0BsaW5rIG1vZGFsT3V0c2lkZUNsaWNrfSByZXN1bHQpLlxuXHQgKi9cblx0bW9kYWxDbGljayhldmVudDogUGljazxNb3VzZUV2ZW50LCAndGFyZ2V0JyB8ICdjdXJyZW50VGFyZ2V0Jz4pOiB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1vZGFsRGlyZWN0aXZlcyB7XG5cdC8qKlxuXHQgKiBEaXJlY3RpdmUgdG8gcHV0IG9uIHRoZSBtb2RhbCBET00gZWxlbWVudC5cblx0ICovXG5cdG1vZGFsRGlyZWN0aXZlOiBEaXJlY3RpdmU7XG5cdC8qKlxuXHQgKiBEaXJlY3RpdmUgdG8gcHV0IG9uIHRoZSBiYWNrZHJvcCBET00gZWxlbWVudC5cblx0ICovXG5cdGJhY2tkcm9wRGlyZWN0aXZlOiBEaXJlY3RpdmU7XG5cdC8qKlxuXHQgKiBQb3J0YWwgZGlyZWN0aXZlIHRvIHB1dCBvbiB0aGUgbW9kYWwgRE9NIGVsZW1lbnQuXG5cdCAqL1xuXHRtb2RhbFBvcnRhbERpcmVjdGl2ZTogRGlyZWN0aXZlO1xuXHQvKipcblx0ICogUG9ydGFsIGRpcmVjdGl2ZSB0byBwdXQgb24gdGhlIGJhY2tkcm9wIERPTSBlbGVtZW50LlxuXHQgKi9cblx0YmFja2Ryb3BQb3J0YWxEaXJlY3RpdmU6IERpcmVjdGl2ZTtcblx0LyoqXG5cdCAqIERpcmVjdGl2ZSB0aGF0IGFkZHMgYWxsIHRoZSBuZWNlc3NhcnkgYXR0cmlidXRlcyB0byB0aGUgY2xvc2UgYnV0dG9uXG5cdCAqL1xuXHRjbG9zZUJ1dHRvbkRpcmVjdGl2ZTogRGlyZWN0aXZlO1xuXHQvKipcblx0ICogRGlyZWN0aXZlIHRvIGFwcGx5IHRvIHRoZSBkaWFsb2cgZWxlbWVudCB3aGVuIHVzaW5nIHRoZSBuYXRpdmUgW0hUTUxEaWFsb2dFbGVtZW50XShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvSFRNTERpYWxvZ0VsZW1lbnQpXG5cdCAqL1xuXHRkaWFsb2dEaXJlY3RpdmU6IERpcmVjdGl2ZTtcbn1cblxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuZ2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbW9kYWwvbW9kYWwuZ2VuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7V2lkZ2V0U2xvdENvbnRleHQsIFNsb3RDb250ZW50LCBUcmFuc2l0aW9uRm4sIFdpZGdldCwgRGlyZWN0aXZlfSBmcm9tICdAYWdub3MtdWkvYW5ndWxhci1oZWFkbGVzcyc7XG5cbmV4cG9ydCB0eXBlIE1vZGFsQ29udGV4dDxEYXRhPiA9IFdpZGdldFNsb3RDb250ZXh0PE1vZGFsV2lkZ2V0PERhdGE+PjtcblxuZXhwb3J0IGludGVyZmFjZSBNb2RhbFN0YXRlPERhdGE+IHtcblx0LyoqXG5cdCAqIFdoZXRoZXIgdGhlIGJhY2tkcm9wIGlzIGZ1bGx5IGhpZGRlbi4gVGhpcyBjYW4gYmUgdHJ1ZSBlaXRoZXIgYmVjYXVzZSB7QGxpbmsgTW9kYWxQcm9wcy5iYWNrZHJvcGJhY2tkcm9wfSBpcyBmYWxzZSBvclxuXHQgKiBiZWNhdXNlIHtAbGluayBNb2RhbENvbW1vblByb3BzQW5kU3RhdGUudmlzaWJsZXZpc2libGV9IGlzIGZhbHNlIGFuZCB0aGVyZSBpcyBubyBjdXJyZW50IHRyYW5zaXRpb24uXG5cdCAqL1xuXHRiYWNrZHJvcEhpZGRlbjogYm9vbGVhbjtcblx0LyoqXG5cdCAqIFdoZXRoZXIgdGhlIG1vZGFsIGlzIGZ1bGx5IGhpZGRlbi5cblx0ICovXG5cdGhpZGRlbjogYm9vbGVhbjtcblx0LyoqXG5cdCAqIFdoZXRoZXIgdGhlcmUgaXMgYW4gYWN0aXZlIHRyYW5zaXRpb24gdG8gZWl0aGVyIGRpc3BsYXkgb3IgaGlkZSB0aGUgbW9kYWwuXG5cdCAqL1xuXHR0cmFuc2l0aW9uaW5nOiBib29sZWFuO1xuXHQvKipcblx0ICogRE9NIGVsZW1lbnQgb2YgdGhlIG1vZGFsLlxuXHQgKi9cblx0bW9kYWxFbGVtZW50OiBIVE1MRWxlbWVudCB8IG51bGw7XG5cdC8qKlxuXHQgKiBWYWx1ZSBvZiB0aGUgYXJpYS1sYWJlbCBhdHRyaWJ1dGUgdG8gcHV0IG9uIHRoZSBjbG9zZSBidXR0b24uXG5cdCAqL1xuXHRhcmlhQ2xvc2VCdXR0b25MYWJlbDogc3RyaW5nO1xuXHQvKipcblx0ICogQ2xhc3NlcyB0byBhZGQgb24gdGhlIGJhY2tkcm9wIERPTSBlbGVtZW50LlxuXHQgKi9cblx0YmFja2Ryb3BDbGFzczogc3RyaW5nO1xuXHQvKipcblx0ICogV2hldGhlciB0byBkaXNwbGF5IHRoZSBjbG9zZSBidXR0b24uXG5cdCAqL1xuXHRjbG9zZUJ1dHRvbjogYm9vbGVhbjtcblx0LyoqXG5cdCAqIFdoaWNoIGVsZW1lbnQgc2hvdWxkIGNvbnRhaW4gdGhlIG1vZGFsIGFuZCBiYWNrZHJvcCBET00gZWxlbWVudHMuXG5cdCAqIElmIGl0IGlzIG5vdCBudWxsLCB0aGUgbW9kYWwgYW5kIGJhY2tkcm9wIERPTSBlbGVtZW50cyBhcmUgbW92ZWQgdG8gdGhlIHNwZWNpZmllZCBjb250YWluZXIuXG5cdCAqIE90aGVyd2lzZSwgdGhleSBzdGF5IHdoZXJlIHRoZSB3aWRnZXQgaXMgbG9jYXRlZC5cblx0ICovXG5cdGNvbnRhaW5lcjogSFRNTEVsZW1lbnQgfCBudWxsO1xuXHQvKipcblx0ICogV2hldGhlciB0aGUgbW9kYWwgc2hvdWxkIGJlIHZpc2libGUgd2hlbiB0aGUgdHJhbnNpdGlvbiBpcyBjb21wbGV0ZWQuXG5cdCAqL1xuXHR2aXNpYmxlOiBib29sZWFuO1xuXHQvKipcblx0ICogQ1NTIGNsYXNzZXMgdG8gYmUgYXBwbGllZCBvbiB0aGUgd2lkZ2V0IG1haW4gY29udGFpbmVyXG5cdCAqL1xuXHRjbGFzc05hbWU6IHN0cmluZztcblx0LyoqXG5cdCAqIERhdGEgdG8gdXNlIGluIGNvbnRlbnQgc2xvdHNcblx0ICovXG5cdGNvbnRlbnREYXRhOiBEYXRhO1xuXHQvKipcblx0ICogQm9keSBvZiB0aGUgbW9kYWwuXG5cdCAqL1xuXHRjaGlsZHJlbjogU2xvdENvbnRlbnQ8TW9kYWxDb250ZXh0PERhdGE+Pjtcblx0LyoqXG5cdCAqIEZvb3RlciBvZiB0aGUgbW9kYWwuXG5cdCAqL1xuXHRmb290ZXI6IFNsb3RDb250ZW50PE1vZGFsQ29udGV4dDxEYXRhPj47XG5cdC8qKlxuXHQgKiBIZWFkZXIgb2YgdGhlIG1vZGFsLiBUaGUgZGVmYXVsdCBoZWFkZXIgaW5jbHVkZXMge0BsaW5rIE1vZGFsQ29tbW9uUHJvcHNBbmRTdGF0ZS50aXRsZSB0aXRsZX0uXG5cdCAqL1xuXHRoZWFkZXI6IFNsb3RDb250ZW50PE1vZGFsQ29udGV4dDxEYXRhPj47XG5cdC8qKlxuXHQgKiBTdHJ1Y3R1cmUgb2YgdGhlIG1vZGFsLlxuXHQgKiBUaGUgZGVmYXVsdCBzdHJ1Y3R1cmUgdXNlcyB7QGxpbmsgTW9kYWxDb21tb25Qcm9wc0FuZFN0YXRlLmhlYWRlciBoZWFkZXJ9LCB7QGxpbmsgTW9kYWxDb21tb25Qcm9wc0FuZFN0YXRlLmNoaWxkcmVuIGNoaWxkcmVufSBhbmQge0BsaW5rIE1vZGFsQ29tbW9uUHJvcHNBbmRTdGF0ZS5mb290ZXIgZm9vdGVyfS5cblx0ICovXG5cdHN0cnVjdHVyZTogU2xvdENvbnRlbnQ8TW9kYWxDb250ZXh0PERhdGE+Pjtcblx0LyoqXG5cdCAqIFRpdGxlIG9mIHRoZSBtb2RhbC5cblx0ICovXG5cdHRpdGxlOiBTbG90Q29udGVudDxNb2RhbENvbnRleHQ8RGF0YT4+O1xuXHQvKipcblx0ICogT3B0aW9uIHRvIGNyZWF0ZSBhIGZ1bGxzY3JlZW4gbW9kYWwsIGFjY29yZGluZyB0byB0aGUgYm9vdHN0cmFwIGRvY3VtZW50YXRpb24uXG5cdCAqL1xuXHRmdWxsc2NyZWVuOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1vZGFsUHJvcHM8RGF0YT4ge1xuXHQvKipcblx0ICogV2hldGhlciB0aGUgbW9kYWwgYW5kIGl0cyBiYWNrZHJvcCAoaWYgcHJlc2VudCkgc2hvdWxkIGJlIGFuaW1hdGVkIHdoZW4gc2hvd24gb3IgaGlkZGVuLlxuXHQgKi9cblx0YW5pbWF0ZWQ6IGJvb2xlYW47XG5cdC8qKlxuXHQgKiBXaGV0aGVyIGEgYmFja2Ryb3Agc2hvdWxkIGJlIGNyZWF0ZWQgYmVoaW5kIHRoZSBtb2RhbC5cblx0ICovXG5cdGJhY2tkcm9wOiBib29sZWFuO1xuXHQvKipcblx0ICogVGhlIHRyYW5zaXRpb24gdG8gdXNlIGZvciB0aGUgYmFja2Ryb3AgYmVoaW5kIHRoZSBtb2RhbCAoaWYgcHJlc2VudCkuXG5cdCAqL1xuXHRiYWNrZHJvcFRyYW5zaXRpb246IFRyYW5zaXRpb25Gbjtcblx0LyoqXG5cdCAqIFdoZXRoZXIgdGhlIG1vZGFsIHNob3VsZCBiZSBjbG9zZWQgd2hlbiBjbGlja2luZyBvbiB0aGUgdmlld3BvcnQgb3V0c2lkZSB0aGUgbW9kYWwuXG5cdCAqL1xuXHRjbG9zZU9uT3V0c2lkZUNsaWNrOiBib29sZWFuO1xuXHQvKipcblx0ICogVGhlIHRyYW5zaXRpb24gdG8gdXNlIGZvciB0aGUgbW9kYWwuXG5cdCAqL1xuXHRtb2RhbFRyYW5zaXRpb246IFRyYW5zaXRpb25Gbjtcblx0LyoqXG5cdCAqIEV2ZW50IHRvIGJlIHRyaWdnZXJlZCB3aGVuIHRoZSBtb2RhbCBpcyBhYm91dCB0byBiZSBjbG9zZWQgKGkuZS4gdGhlIHtAbGluayBNb2RhbEFwaS5jbG9zZWNsb3NlfSBtZXRob2Qgd2FzIGNhbGxlZCkuXG5cdCAqL1xuXHRvbkJlZm9yZUNsb3NlOiAoZXZlbnQ6IE1vZGFsQmVmb3JlQ2xvc2VFdmVudCkgPT4gdm9pZDtcblx0LyoqXG5cdCAqIEV2ZW50IHRvIGJlIHRyaWdnZXJlZCB3aGVuIHRoZSB2aXNpYmxlIHByb3BlcnR5IGNoYW5nZXMuXG5cdCAqL1xuXHRvblZpc2libGVDaGFuZ2U6ICh2aXNpYmxlOiBib29sZWFuKSA9PiB2b2lkO1xuXHQvKipcblx0ICogRXZlbnQgdG8gYmUgdHJpZ2dlcmVkIHdoZW4gdGhlIHRyYW5zaXRpb24gaXMgY29tcGxldGVkIGFuZCB0aGUgbW9kYWwgaXMgbm90IHZpc2libGUuXG5cdCAqL1xuXHRvbkhpZGRlbjogKCkgPT4gdm9pZDtcblx0LyoqXG5cdCAqIEV2ZW50IHRvIGJlIHRyaWdnZXJlZCB3aGVuIHRoZSB0cmFuc2l0aW9uIGlzIGNvbXBsZXRlZCBhbmQgdGhlIG1vZGFsIGlzIHZpc2libGUuXG5cdCAqL1xuXHRvblNob3duOiAoKSA9PiB2b2lkO1xuXHQvKipcblx0ICogVmFsdWUgb2YgdGhlIGFyaWEtbGFiZWwgYXR0cmlidXRlIHRvIHB1dCBvbiB0aGUgY2xvc2UgYnV0dG9uLlxuXHQgKi9cblx0YXJpYUNsb3NlQnV0dG9uTGFiZWw6IHN0cmluZztcblx0LyoqXG5cdCAqIENsYXNzZXMgdG8gYWRkIG9uIHRoZSBiYWNrZHJvcCBET00gZWxlbWVudC5cblx0ICovXG5cdGJhY2tkcm9wQ2xhc3M6IHN0cmluZztcblx0LyoqXG5cdCAqIFdoZXRoZXIgdG8gZGlzcGxheSB0aGUgY2xvc2UgYnV0dG9uLlxuXHQgKi9cblx0Y2xvc2VCdXR0b246IGJvb2xlYW47XG5cdC8qKlxuXHQgKiBXaGljaCBlbGVtZW50IHNob3VsZCBjb250YWluIHRoZSBtb2RhbCBhbmQgYmFja2Ryb3AgRE9NIGVsZW1lbnRzLlxuXHQgKiBJZiBpdCBpcyBub3QgbnVsbCwgdGhlIG1vZGFsIGFuZCBiYWNrZHJvcCBET00gZWxlbWVudHMgYXJlIG1vdmVkIHRvIHRoZSBzcGVjaWZpZWQgY29udGFpbmVyLlxuXHQgKiBPdGhlcndpc2UsIHRoZXkgc3RheSB3aGVyZSB0aGUgd2lkZ2V0IGlzIGxvY2F0ZWQuXG5cdCAqL1xuXHRjb250YWluZXI6IEhUTUxFbGVtZW50IHwgbnVsbDtcblx0LyoqXG5cdCAqIFdoZXRoZXIgdGhlIG1vZGFsIHNob3VsZCBiZSB2aXNpYmxlIHdoZW4gdGhlIHRyYW5zaXRpb24gaXMgY29tcGxldGVkLlxuXHQgKi9cblx0dmlzaWJsZTogYm9vbGVhbjtcblx0LyoqXG5cdCAqIENTUyBjbGFzc2VzIHRvIGJlIGFwcGxpZWQgb24gdGhlIHdpZGdldCBtYWluIGNvbnRhaW5lclxuXHQgKi9cblx0Y2xhc3NOYW1lOiBzdHJpbmc7XG5cdC8qKlxuXHQgKiBEYXRhIHRvIHVzZSBpbiBjb250ZW50IHNsb3RzXG5cdCAqL1xuXHRjb250ZW50RGF0YTogRGF0YTtcblx0LyoqXG5cdCAqIEJvZHkgb2YgdGhlIG1vZGFsLlxuXHQgKi9cblx0Y2hpbGRyZW46IFNsb3RDb250ZW50PE1vZGFsQ29udGV4dDxEYXRhPj47XG5cdC8qKlxuXHQgKiBGb290ZXIgb2YgdGhlIG1vZGFsLlxuXHQgKi9cblx0Zm9vdGVyOiBTbG90Q29udGVudDxNb2RhbENvbnRleHQ8RGF0YT4+O1xuXHQvKipcblx0ICogSGVhZGVyIG9mIHRoZSBtb2RhbC4gVGhlIGRlZmF1bHQgaGVhZGVyIGluY2x1ZGVzIHtAbGluayBNb2RhbENvbW1vblByb3BzQW5kU3RhdGUudGl0bGUgdGl0bGV9LlxuXHQgKi9cblx0aGVhZGVyOiBTbG90Q29udGVudDxNb2RhbENvbnRleHQ8RGF0YT4+O1xuXHQvKipcblx0ICogU3RydWN0dXJlIG9mIHRoZSBtb2RhbC5cblx0ICogVGhlIGRlZmF1bHQgc3RydWN0dXJlIHVzZXMge0BsaW5rIE1vZGFsQ29tbW9uUHJvcHNBbmRTdGF0ZS5oZWFkZXIgaGVhZGVyfSwge0BsaW5rIE1vZGFsQ29tbW9uUHJvcHNBbmRTdGF0ZS5jaGlsZHJlbiBjaGlsZHJlbn0gYW5kIHtAbGluayBNb2RhbENvbW1vblByb3BzQW5kU3RhdGUuZm9vdGVyIGZvb3Rlcn0uXG5cdCAqL1xuXHRzdHJ1Y3R1cmU6IFNsb3RDb250ZW50PE1vZGFsQ29udGV4dDxEYXRhPj47XG5cdC8qKlxuXHQgKiBUaXRsZSBvZiB0aGUgbW9kYWwuXG5cdCAqL1xuXHR0aXRsZTogU2xvdENvbnRlbnQ8TW9kYWxDb250ZXh0PERhdGE+Pjtcblx0LyoqXG5cdCAqIE9wdGlvbiB0byBjcmVhdGUgYSBmdWxsc2NyZWVuIG1vZGFsLCBhY2NvcmRpbmcgdG8gdGhlIGJvb3RzdHJhcCBkb2N1bWVudGF0aW9uLlxuXHQgKi9cblx0ZnVsbHNjcmVlbjogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNb2RhbEFwaTxEYXRhPiB7XG5cdC8qKlxuXHQgKiBNZXRob2QgdG8gY2hhbmdlIHNvbWUgbW9kYWwgcHJvcGVydGllcy5cblx0ICovXG5cdHBhdGNoOiBNb2RhbFdpZGdldDxEYXRhPlsncGF0Y2gnXTtcblx0LyoqXG5cdCAqIENsb3NlcyB0aGUgbW9kYWwgd2l0aCB0aGUgZ2l2ZW4gcmVzdWx0LlxuXHQgKi9cblx0Y2xvc2UocmVzdWx0PzogYW55KTogdm9pZDtcblx0LyoqXG5cdCAqIE9wZW5zIHRoZSBtb2RhbCBhbmQgcmV0dXJucyBhIHByb21pc2UgdGhhdCBpcyByZXNvbHZlZCB3aGVuIHRoZSBtb2RhbCBpcyBjbG9zZWQuXG5cdCAqIFRoZSByZXNvbHZlZCB2YWx1ZSBpcyB0aGUgcmVzdWx0IHBhc3NlZCB0byB0aGUge0BsaW5rIE1vZGFsQXBpLmNsb3NlY2xvc2V9IG1ldGhvZCBhbmQgcG9zc2libHkgY2hhbmdlZCBieSB0aGVcblx0ICoge0BsaW5rIE1vZGFsUHJvcHMub25CZWZvcmVDbG9zZW9uQmVmb3JlQ2xvc2V9IGV2ZW50IGhhbmRsZXJcblx0ICovXG5cdG9wZW4oKTogUHJvbWlzZTxhbnk+O1xufVxuXG5leHBvcnQgdHlwZSBNb2RhbFdpZGdldDxEYXRhPiA9IFdpZGdldDxNb2RhbFByb3BzPERhdGE+LCBNb2RhbFN0YXRlPERhdGE+LCBNb2RhbEFwaTxEYXRhPiwgTW9kYWxBY3Rpb25zLCBNb2RhbERpcmVjdGl2ZXM+O1xuXG5leHBvcnQgaW50ZXJmYWNlIE1vZGFsQmVmb3JlQ2xvc2VFdmVudCB7XG5cdC8qKlxuXHQgKiBSZXN1bHQgb2YgdGhlIG1vZGFsLCB3aGljaCBpcyB0aGUgdmFsdWUgcGFzc2VkIHRvIHRoZSB7QGxpbmsgTW9kYWxBcGkuY2xvc2VjbG9zZX0gbWV0aG9kXG5cdCAqIGFuZCBsYXRlciByZXNvbHZlZCBieSB0aGUgcHJvbWlzZSByZXR1cm5lZCBieSB0aGUge0BsaW5rIE1vZGFsQXBpLm9wZW5vcGVufSBtZXRob2QuXG5cdCAqIElmIG5lZWRlZCwgaXQgY2FuIGJlIGNoYW5nZWQgZnJvbSB0aGUge0BsaW5rIE1vZGFsUHJvcHMub25CZWZvcmVDbG9zZW9uQmVmb3JlQ2xvc2V9IGV2ZW50IGhhbmRsZXIuXG5cdCAqL1xuXHRyZXN1bHQ6IGFueTtcblx0LyoqXG5cdCAqIFdoZXRoZXIgdG8gY2FuY2VsIHRoZSBjbG9zZSBvZiB0aGUgbW9kYWwuXG5cdCAqIEl0IGNhbiBiZSBjaGFuZ2VkIGZyb20gdGhlIHtAbGluayBNb2RhbFByb3BzLm9uQmVmb3JlQ2xvc2VvbkJlZm9yZUNsb3NlfSBldmVudCBoYW5kbGVyLlxuXHQgKi9cblx0Y2FuY2VsOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1vZGFsQWN0aW9ucyB7XG5cdC8qKlxuXHQgKiBBY3Rpb24gdG8gYmUgY2FsbGVkIHdoZW4gdGhlIHVzZXIgY2xpY2tzIG9uIHRoZSBjbG9zZSBidXR0b24uIEl0IGNsb3NlcyB0aGUgbW9kYWwgd2l0aCB0aGUge0BsaW5rIG1vZGFsQ2xvc2VCdXR0b25DbGlja30gcmVzdWx0LlxuXHQgKi9cblx0Y2xvc2VCdXR0b25DbGljayhldmVudDogUGljazxNb3VzZUV2ZW50LCBuZXZlcj4pOiB2b2lkO1xuXHQvKipcblx0ICogQWN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSB1c2VyIGNsaWNrcyBvbiB0aGUgbW9kYWwgRE9NIGVsZW1lbnQgKHdoaWNoIGlzIHN1cHBvc2VkIHRvIGhhdmUgdGhlIHNpemUgb2YgdGhlIGZ1bGwgdmlld3BvcnQpLlxuXHQgKiBJZiB0aGUgY2xpY2sgaXMgbm90IGRvbmUgb24gYSBkZXNjZW5kYW50IG9mIHRoZSBtb2RhbCBET00gZWxlbWVudCwgaXQgaXMgY29uc2lkZXJlZCB0byBiZSBkb25lIG91dHNpZGUgdGhlIG1vZGFsXG5cdCAqIGFuZCwgZGVwZW5kaW5nIG9uIHRoZSB2YWx1ZSBvZiB0aGUge0BsaW5rIE1vZGFsUHJvcHMuY2xvc2VPbk91dHNpZGVDbGlja2Nsb3NlT25PdXRzaWRlQ2xpY2t9IHByb3AsIHRoZSBtb2RhbCBpcyBvciBpc24ndCBjbG9zZWRcblx0ICogKHdpdGggdGhlIHtAbGluayBtb2RhbE91dHNpZGVDbGlja30gcmVzdWx0KS5cblx0ICovXG5cdG1vZGFsQ2xpY2soZXZlbnQ6IFBpY2s8TW91c2VFdmVudCwgJ3RhcmdldCcgfCAnY3VycmVudFRhcmdldCc+KTogdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNb2RhbERpcmVjdGl2ZXMge1xuXHQvKipcblx0ICogRGlyZWN0aXZlIHRvIHB1dCBvbiB0aGUgbW9kYWwgRE9NIGVsZW1lbnQuXG5cdCAqL1xuXHRtb2RhbERpcmVjdGl2ZTogRGlyZWN0aXZlO1xuXHQvKipcblx0ICogRGlyZWN0aXZlIHRvIHB1dCBvbiB0aGUgYmFja2Ryb3AgRE9NIGVsZW1lbnQuXG5cdCAqL1xuXHRiYWNrZHJvcERpcmVjdGl2ZTogRGlyZWN0aXZlO1xuXHQvKipcblx0ICogUG9ydGFsIGRpcmVjdGl2ZSB0byBwdXQgb24gdGhlIG1vZGFsIERPTSBlbGVtZW50LlxuXHQgKi9cblx0bW9kYWxQb3J0YWxEaXJlY3RpdmU6IERpcmVjdGl2ZTtcblx0LyoqXG5cdCAqIFBvcnRhbCBkaXJlY3RpdmUgdG8gcHV0IG9uIHRoZSBiYWNrZHJvcCBET00gZWxlbWVudC5cblx0ICovXG5cdGJhY2tkcm9wUG9ydGFsRGlyZWN0aXZlOiBEaXJlY3RpdmU7XG5cdC8qKlxuXHQgKiBEaXJlY3RpdmUgdGhhdCBhZGRzIGFsbCB0aGUgbmVjZXNzYXJ5IGF0dHJpYnV0ZXMgdG8gdGhlIGNsb3NlIGJ1dHRvblxuXHQgKi9cblx0Y2xvc2VCdXR0b25EaXJlY3RpdmU6IERpcmVjdGl2ZTtcblx0LyoqXG5cdCAqIERpcmVjdGl2ZSB0byBhcHBseSB0byB0aGUgZGlhbG9nIGVsZW1lbnQgd2hlbiB1c2luZyB0aGUgbmF0aXZlIFtIVE1MRGlhbG9nRWxlbWVudF0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL0hUTUxEaWFsb2dFbGVtZW50KVxuXHQgKi9cblx0ZGlhbG9nRGlyZWN0aXZlOiBEaXJlY3RpdmU7XG59XG5cbiJdfQ==