@net7/boilerplate-muruca 5.5.10 → 5.5.12

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.
@@ -17,15 +17,16 @@ export class MrFormComponent {
17
17
  this.sections = this.sections.map((section) => ({
18
18
  ...section,
19
19
  title: _t(section.title),
20
- description: _t(section.description)
20
+ description: _t(section.description),
21
+ info: _t(section.info)
21
22
  }));
22
23
  }
23
24
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MrFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
24
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MrFormComponent, selector: "mr-form", inputs: { form: "form", group: "group" }, queries: [{ propertyName: "templateRef", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: "<div *ngIf=\"form.loaded$ | async\" class=\"mr-form {{ group?.classes || '' }}\">\n <div *ngFor=\"let section of sections\" class=\"mr-form__section {{ section.classes || '' }}\" \n [ngClass]=\"{ 'mr-form__section-advanced' : section.advancedSection }\" >\n \n <div class=\"mr-form__section-header\">\n <h3 *ngIf=\"section.title\" class=\"mr-form__section-title\">{{ section.title }}</h3>\n <p *ngIf=\"section.description\" class=\"mr-form__section-description\">{{ section.description }}</p>\n </div>\n \n <div class=\"mr-form__section-content\">\n <div *ngFor=\"let input of section.inputs\" class=\"mr-form__element {{ input.options?.classes || '' }}\">\n <ng-container [ngSwitch]=\"input.type\">\n\n <!-- INPUT TEXT -->\n <n7-input-text *ngSwitchCase=\"'text'\" \n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></n7-input-text>\n\n <!-- INPUT CHECKBOX -->\n <n7-input-checkbox *ngSwitchCase=\"'checkbox'\" \n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></n7-input-checkbox>\n\n <!-- INPUT SELECT -->\n <n7-input-select *ngSwitchCase=\"'select'\"\n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></n7-input-select>\n\n <!-- INPUT TYPEAHEAD -->\n <mr-input-typeahead *ngSwitchCase=\"'typeahead'\"\n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></mr-input-typeahead>\n\n <!-- DEFAULT (external template) -->\n <ng-container *ngSwitchDefault>\n <ng-template *ngTemplateOutlet=\"\n templateRef; \n context: { \n type: input.type, \n input: form.inputs[input.id] \n }\"></ng-template>\n </ng-container>\n\n </ng-container>\n </div>\n </div>\n </div>\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: i2.InputCheckboxComponent, selector: "n7-input-checkbox", inputs: ["data", "emit"] }, { kind: "component", type: i2.InputSelectComponent, selector: "n7-input-select", inputs: ["data", "emit"] }, { kind: "component", type: i2.InputTextComponent, selector: "n7-input-text", inputs: ["data", "emit"] }, { kind: "component", type: i3.MrInputTypeaheadComponent, selector: "mr-input-typeahead", inputs: ["data", "emit"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
25
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MrFormComponent, selector: "mr-form", inputs: { form: "form", group: "group" }, queries: [{ propertyName: "templateRef", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: "<div *ngIf=\"form.loaded$ | async\" class=\"mr-form {{ group?.classes || '' }}\">\n <div *ngFor=\"let section of sections\" class=\"mr-form__section {{ section.classes || '' }}\" \n [ngClass]=\"{ 'mr-form__section-advanced' : section.advancedSection }\" >\n \n <div class=\"mr-form__section-header\">\n <h3 *ngIf=\"section.title\" class=\"mr-form__section-title\">\n {{ section.title }}\n <span *ngIf=\"section.info\" class=\"mr-input-info n7-icon n7-icon-info-circle\" [attr.alt]=\"section.info\"></span>\n </h3>\n <p *ngIf=\"section.description\" class=\"mr-form__section-description\">{{ section.description }}</p>\n </div>\n \n <div class=\"mr-form__section-content\">\n <div *ngFor=\"let input of section.inputs\" class=\"mr-form__element {{ input.options?.classes || '' }}\">\n <ng-container [ngSwitch]=\"input.type\">\n\n <!-- INPUT TEXT -->\n <n7-input-text *ngSwitchCase=\"'text'\" \n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></n7-input-text>\n\n <!-- INPUT CHECKBOX -->\n <n7-input-checkbox *ngSwitchCase=\"'checkbox'\" \n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></n7-input-checkbox>\n\n <!-- INPUT SELECT -->\n <n7-input-select *ngSwitchCase=\"'select'\"\n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></n7-input-select>\n\n <!-- INPUT TYPEAHEAD -->\n <mr-input-typeahead *ngSwitchCase=\"'typeahead'\"\n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></mr-input-typeahead>\n\n <!-- DEFAULT (external template) -->\n <ng-container *ngSwitchDefault>\n <ng-template *ngTemplateOutlet=\"\n templateRef; \n context: { \n type: input.type, \n input: form.inputs[input.id] \n }\"></ng-template>\n </ng-container>\n\n </ng-container>\n </div>\n </div>\n </div>\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: i2.InputCheckboxComponent, selector: "n7-input-checkbox", inputs: ["data", "emit"] }, { kind: "component", type: i2.InputSelectComponent, selector: "n7-input-select", inputs: ["data", "emit"] }, { kind: "component", type: i2.InputTextComponent, selector: "n7-input-text", inputs: ["data", "emit"] }, { kind: "component", type: i3.MrInputTypeaheadComponent, selector: "mr-input-typeahead", inputs: ["data", "emit"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
25
26
  }
26
27
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MrFormComponent, decorators: [{
27
28
  type: Component,
28
- args: [{ selector: 'mr-form', template: "<div *ngIf=\"form.loaded$ | async\" class=\"mr-form {{ group?.classes || '' }}\">\n <div *ngFor=\"let section of sections\" class=\"mr-form__section {{ section.classes || '' }}\" \n [ngClass]=\"{ 'mr-form__section-advanced' : section.advancedSection }\" >\n \n <div class=\"mr-form__section-header\">\n <h3 *ngIf=\"section.title\" class=\"mr-form__section-title\">{{ section.title }}</h3>\n <p *ngIf=\"section.description\" class=\"mr-form__section-description\">{{ section.description }}</p>\n </div>\n \n <div class=\"mr-form__section-content\">\n <div *ngFor=\"let input of section.inputs\" class=\"mr-form__element {{ input.options?.classes || '' }}\">\n <ng-container [ngSwitch]=\"input.type\">\n\n <!-- INPUT TEXT -->\n <n7-input-text *ngSwitchCase=\"'text'\" \n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></n7-input-text>\n\n <!-- INPUT CHECKBOX -->\n <n7-input-checkbox *ngSwitchCase=\"'checkbox'\" \n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></n7-input-checkbox>\n\n <!-- INPUT SELECT -->\n <n7-input-select *ngSwitchCase=\"'select'\"\n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></n7-input-select>\n\n <!-- INPUT TYPEAHEAD -->\n <mr-input-typeahead *ngSwitchCase=\"'typeahead'\"\n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></mr-input-typeahead>\n\n <!-- DEFAULT (external template) -->\n <ng-container *ngSwitchDefault>\n <ng-template *ngTemplateOutlet=\"\n templateRef; \n context: { \n type: input.type, \n input: form.inputs[input.id] \n }\"></ng-template>\n </ng-container>\n\n </ng-container>\n </div>\n </div>\n </div>\n</div>" }]
29
+ args: [{ selector: 'mr-form', template: "<div *ngIf=\"form.loaded$ | async\" class=\"mr-form {{ group?.classes || '' }}\">\n <div *ngFor=\"let section of sections\" class=\"mr-form__section {{ section.classes || '' }}\" \n [ngClass]=\"{ 'mr-form__section-advanced' : section.advancedSection }\" >\n \n <div class=\"mr-form__section-header\">\n <h3 *ngIf=\"section.title\" class=\"mr-form__section-title\">\n {{ section.title }}\n <span *ngIf=\"section.info\" class=\"mr-input-info n7-icon n7-icon-info-circle\" [attr.alt]=\"section.info\"></span>\n </h3>\n <p *ngIf=\"section.description\" class=\"mr-form__section-description\">{{ section.description }}</p>\n </div>\n \n <div class=\"mr-form__section-content\">\n <div *ngFor=\"let input of section.inputs\" class=\"mr-form__element {{ input.options?.classes || '' }}\">\n <ng-container [ngSwitch]=\"input.type\">\n\n <!-- INPUT TEXT -->\n <n7-input-text *ngSwitchCase=\"'text'\" \n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></n7-input-text>\n\n <!-- INPUT CHECKBOX -->\n <n7-input-checkbox *ngSwitchCase=\"'checkbox'\" \n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></n7-input-checkbox>\n\n <!-- INPUT SELECT -->\n <n7-input-select *ngSwitchCase=\"'select'\"\n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></n7-input-select>\n\n <!-- INPUT TYPEAHEAD -->\n <mr-input-typeahead *ngSwitchCase=\"'typeahead'\"\n [data]=\"form.inputs[input.id].ds.out$ | async\"\n [emit]=\"form.inputs[input.id].emit\"></mr-input-typeahead>\n\n <!-- DEFAULT (external template) -->\n <ng-container *ngSwitchDefault>\n <ng-template *ngTemplateOutlet=\"\n templateRef; \n context: { \n type: input.type, \n input: form.inputs[input.id] \n }\"></ng-template>\n </ng-container>\n\n </ng-container>\n </div>\n </div>\n </div>\n</div>" }]
29
30
  }], propDecorators: { form: [{
30
31
  type: Input
31
32
  }], group: [{
@@ -34,4 +35,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
34
35
  type: ContentChild,
35
36
  args: [TemplateRef]
36
37
  }] } });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLW11cnVjYS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9mb3JtLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtbXVydWNhL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2Zvcm0uaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsV0FBVyxFQUNwRCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sWUFBWSxDQUFDOzs7OztBQVFoQyxNQUFNLE9BQU8sZUFBZTtJQVUxQixRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDZixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVE7aUJBQ3RDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzFELENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUM7UUFDNUMsQ0FBQztRQUVELGVBQWU7UUFDZixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzlDLEdBQUcsT0FBTztZQUNWLEtBQUssRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztZQUN4QixXQUFXLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUM7U0FDckMsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDOytHQXhCVSxlQUFlO21HQUFmLGVBQWUsa0lBS1osV0FBVyxnRENoQjNCLGkyRUErQ007OzRGRHBDTyxlQUFlO2tCQUozQixTQUFTOytCQUNFLFNBQVM7OEJBSVYsSUFBSTtzQkFBWixLQUFLO2dCQUVHLEtBQUs7c0JBQWIsS0FBSztnQkFHQyxXQUFXO3NCQURqQixZQUFZO3VCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgSW5wdXQsIE9uSW5pdCwgVGVtcGxhdGVSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBfdCB9IGZyb20gJ0BuZXQ3L2NvcmUnO1xuaW1wb3J0IHsgTXJGb3JtQ29uZmlnR3JvdXAsIE1yRm9ybUNvbmZpZ1NlY3Rpb24gfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2Zvcm0uaW50ZXJmYWNlJztcbmltcG9ydCB7IE1yRm9ybU1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2Zvcm0ubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtci1mb3JtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0uaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIE1yRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIGZvcm06IE1yRm9ybU1vZGVsO1xuXG4gIEBJbnB1dCgpIGdyb3VwPzogTXJGb3JtQ29uZmlnR3JvdXA7XG5cbiAgQENvbnRlbnRDaGlsZChUZW1wbGF0ZVJlZilcbiAgcHVibGljIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIHB1YmxpYyBzZWN0aW9uczogTXJGb3JtQ29uZmlnU2VjdGlvbltdO1xuXG4gIG5nT25Jbml0KCkge1xuICAgIGlmICh0aGlzLmdyb3VwKSB7XG4gICAgICB0aGlzLnNlY3Rpb25zID0gdGhpcy5mb3JtLmNvbmZpZy5zZWN0aW9uc1xuICAgICAgICAuZmlsdGVyKCh7IGlkIH0pID0+IHRoaXMuZ3JvdXAuc2VjdGlvbnMuaW5jbHVkZXMoaWQpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZWN0aW9ucyA9IHRoaXMuZm9ybS5jb25maWcuc2VjdGlvbnM7XG4gICAgfVxuXG4gICAgLy8gdHJhbnNsYXRpb25zXG4gICAgdGhpcy5zZWN0aW9ucyA9IHRoaXMuc2VjdGlvbnMubWFwKChzZWN0aW9uKSA9PiAoe1xuICAgICAgLi4uc2VjdGlvbixcbiAgICAgIHRpdGxlOiBfdChzZWN0aW9uLnRpdGxlKSxcbiAgICAgIGRlc2NyaXB0aW9uOiBfdChzZWN0aW9uLmRlc2NyaXB0aW9uKVxuICAgIH0pKTtcbiAgfVxufVxuIiwiPGRpdiAqbmdJZj1cImZvcm0ubG9hZGVkJCB8IGFzeW5jXCIgY2xhc3M9XCJtci1mb3JtIHt7IGdyb3VwPy5jbGFzc2VzIHx8ICcnIH19XCI+XG4gICAgPGRpdiAqbmdGb3I9XCJsZXQgc2VjdGlvbiBvZiBzZWN0aW9uc1wiIGNsYXNzPVwibXItZm9ybV9fc2VjdGlvbiB7eyBzZWN0aW9uLmNsYXNzZXMgfHwgJycgfX1cIiBcbiAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ21yLWZvcm1fX3NlY3Rpb24tYWR2YW5jZWQnIDogc2VjdGlvbi5hZHZhbmNlZFNlY3Rpb24gIH1cIiA+XG4gICAgICAgIFxuICAgICAgICA8ZGl2IGNsYXNzPVwibXItZm9ybV9fc2VjdGlvbi1oZWFkZXJcIj5cbiAgICAgICAgICAgIDxoMyAqbmdJZj1cInNlY3Rpb24udGl0bGVcIiBjbGFzcz1cIm1yLWZvcm1fX3NlY3Rpb24tdGl0bGVcIj57eyBzZWN0aW9uLnRpdGxlIH19PC9oMz5cbiAgICAgICAgICAgIDxwICpuZ0lmPVwic2VjdGlvbi5kZXNjcmlwdGlvblwiIGNsYXNzPVwibXItZm9ybV9fc2VjdGlvbi1kZXNjcmlwdGlvblwiPnt7IHNlY3Rpb24uZGVzY3JpcHRpb24gfX08L3A+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICBcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1yLWZvcm1fX3NlY3Rpb24tY29udGVudFwiPlxuICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgaW5wdXQgb2Ygc2VjdGlvbi5pbnB1dHNcIiBjbGFzcz1cIm1yLWZvcm1fX2VsZW1lbnQge3sgaW5wdXQub3B0aW9ucz8uY2xhc3NlcyB8fCAnJyB9fVwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImlucHV0LnR5cGVcIj5cblxuICAgICAgICAgICAgICAgICAgICA8IS0tIElOUFVUIFRFWFQgLS0+XG4gICAgICAgICAgICAgICAgICAgIDxuNy1pbnB1dC10ZXh0ICpuZ1N3aXRjaENhc2U9XCIndGV4dCdcIiBcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkYXRhXT1cImZvcm0uaW5wdXRzW2lucHV0LmlkXS5kcy5vdXQkIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2VtaXRdPVwiZm9ybS5pbnB1dHNbaW5wdXQuaWRdLmVtaXRcIj48L243LWlucHV0LXRleHQ+XG5cbiAgICAgICAgICAgICAgICAgICAgPCEtLSBJTlBVVCBDSEVDS0JPWCAtLT5cbiAgICAgICAgICAgICAgICAgICAgPG43LWlucHV0LWNoZWNrYm94ICpuZ1N3aXRjaENhc2U9XCInY2hlY2tib3gnXCIgXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGF0YV09XCJmb3JtLmlucHV0c1tpbnB1dC5pZF0uZHMub3V0JCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtlbWl0XT1cImZvcm0uaW5wdXRzW2lucHV0LmlkXS5lbWl0XCI+PC9uNy1pbnB1dC1jaGVja2JveD5cblxuICAgICAgICAgICAgICAgICAgICA8IS0tIElOUFVUIFNFTEVDVCAtLT5cbiAgICAgICAgICAgICAgICAgICAgPG43LWlucHV0LXNlbGVjdCAqbmdTd2l0Y2hDYXNlPVwiJ3NlbGVjdCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2RhdGFdPVwiZm9ybS5pbnB1dHNbaW5wdXQuaWRdLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbZW1pdF09XCJmb3JtLmlucHV0c1tpbnB1dC5pZF0uZW1pdFwiPjwvbjctaW5wdXQtc2VsZWN0PlxuXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gSU5QVVQgVFlQRUFIRUFEIC0tPlxuICAgICAgICAgICAgICAgICAgICA8bXItaW5wdXQtdHlwZWFoZWFkICpuZ1N3aXRjaENhc2U9XCIndHlwZWFoZWFkJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGF0YV09XCJmb3JtLmlucHV0c1tpbnB1dC5pZF0uZHMub3V0JCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtlbWl0XT1cImZvcm0uaW5wdXRzW2lucHV0LmlkXS5lbWl0XCI+PC9tci1pbnB1dC10eXBlYWhlYWQ+XG5cbiAgICAgICAgICAgICAgICAgICAgPCEtLSBERUZBVUxUIChleHRlcm5hbCB0ZW1wbGF0ZSkgLS0+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoRGVmYXVsdD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgdGVtcGxhdGVSZWY7IFxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dDogeyBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBpbnB1dC50eXBlLCBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dDogZm9ybS5pbnB1dHNbaW5wdXQuaWRdIFxuICAgICAgICAgICAgICAgICAgICAgICAgfVwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj4iXX0=
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLW11cnVjYS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9mb3JtLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtbXVydWNhL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2Zvcm0uaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsV0FBVyxFQUNwRCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sWUFBWSxDQUFDOzs7OztBQVFoQyxNQUFNLE9BQU8sZUFBZTtJQVUxQixRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDZixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVE7aUJBQ3RDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzFELENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUM7UUFDNUMsQ0FBQztRQUVELGVBQWU7UUFDZixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzlDLEdBQUcsT0FBTztZQUNWLEtBQUssRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztZQUN4QixXQUFXLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUM7WUFDcEMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO1NBQ3ZCLENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQzsrR0F6QlUsZUFBZTttR0FBZixlQUFlLGtJQUtaLFdBQVcsZ0RDaEIzQix1Z0ZBa0RNOzs0RkR2Q08sZUFBZTtrQkFKM0IsU0FBUzsrQkFDRSxTQUFTOzhCQUlWLElBQUk7c0JBQVosS0FBSztnQkFFRyxLQUFLO3NCQUFiLEtBQUs7Z0JBR0MsV0FBVztzQkFEakIsWUFBWTt1QkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIElucHV0LCBPbkluaXQsIFRlbXBsYXRlUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgX3QgfSBmcm9tICdAbmV0Ny9jb3JlJztcbmltcG9ydCB7IE1yRm9ybUNvbmZpZ0dyb3VwLCBNckZvcm1Db25maWdTZWN0aW9uIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9mb3JtLmludGVyZmFjZSc7XG5pbXBvcnQgeyBNckZvcm1Nb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9mb3JtLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbXItZm9ybScsXG4gIHRlbXBsYXRlVXJsOiAnLi9mb3JtLmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBNckZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBmb3JtOiBNckZvcm1Nb2RlbDtcblxuICBASW5wdXQoKSBncm91cD86IE1yRm9ybUNvbmZpZ0dyb3VwO1xuXG4gIEBDb250ZW50Q2hpbGQoVGVtcGxhdGVSZWYpXG4gIHB1YmxpYyB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PjtcblxuICBwdWJsaWMgc2VjdGlvbnM6IE1yRm9ybUNvbmZpZ1NlY3Rpb25bXTtcblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAodGhpcy5ncm91cCkge1xuICAgICAgdGhpcy5zZWN0aW9ucyA9IHRoaXMuZm9ybS5jb25maWcuc2VjdGlvbnNcbiAgICAgICAgLmZpbHRlcigoeyBpZCB9KSA9PiB0aGlzLmdyb3VwLnNlY3Rpb25zLmluY2x1ZGVzKGlkKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VjdGlvbnMgPSB0aGlzLmZvcm0uY29uZmlnLnNlY3Rpb25zO1xuICAgIH1cblxuICAgIC8vIHRyYW5zbGF0aW9uc1xuICAgIHRoaXMuc2VjdGlvbnMgPSB0aGlzLnNlY3Rpb25zLm1hcCgoc2VjdGlvbikgPT4gKHtcbiAgICAgIC4uLnNlY3Rpb24sXG4gICAgICB0aXRsZTogX3Qoc2VjdGlvbi50aXRsZSksXG4gICAgICBkZXNjcmlwdGlvbjogX3Qoc2VjdGlvbi5kZXNjcmlwdGlvbiksXG4gICAgICBpbmZvOiBfdChzZWN0aW9uLmluZm8pXG4gICAgfSkpO1xuICB9XG59XG4iLCI8ZGl2ICpuZ0lmPVwiZm9ybS5sb2FkZWQkIHwgYXN5bmNcIiBjbGFzcz1cIm1yLWZvcm0ge3sgZ3JvdXA/LmNsYXNzZXMgfHwgJycgfX1cIj5cbiAgICA8ZGl2ICpuZ0Zvcj1cImxldCBzZWN0aW9uIG9mIHNlY3Rpb25zXCIgY2xhc3M9XCJtci1mb3JtX19zZWN0aW9uIHt7IHNlY3Rpb24uY2xhc3NlcyB8fCAnJyB9fVwiIFxuICAgICAgICAgW25nQ2xhc3NdPVwieyAnbXItZm9ybV9fc2VjdGlvbi1hZHZhbmNlZCcgOiBzZWN0aW9uLmFkdmFuY2VkU2VjdGlvbiAgfVwiID5cbiAgICAgICAgXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtci1mb3JtX19zZWN0aW9uLWhlYWRlclwiPlxuICAgICAgICAgICAgPGgzICpuZ0lmPVwic2VjdGlvbi50aXRsZVwiIGNsYXNzPVwibXItZm9ybV9fc2VjdGlvbi10aXRsZVwiPlxuICAgICAgICAgICAgICAgIHt7IHNlY3Rpb24udGl0bGUgfX1cbiAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNlY3Rpb24uaW5mb1wiIGNsYXNzPVwibXItaW5wdXQtaW5mbyBuNy1pY29uIG43LWljb24taW5mby1jaXJjbGVcIiBbYXR0ci5hbHRdPVwic2VjdGlvbi5pbmZvXCI+PC9zcGFuPlxuICAgICAgICAgICAgPC9oMz5cbiAgICAgICAgICAgIDxwICpuZ0lmPVwic2VjdGlvbi5kZXNjcmlwdGlvblwiIGNsYXNzPVwibXItZm9ybV9fc2VjdGlvbi1kZXNjcmlwdGlvblwiPnt7IHNlY3Rpb24uZGVzY3JpcHRpb24gfX08L3A+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICBcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1yLWZvcm1fX3NlY3Rpb24tY29udGVudFwiPlxuICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgaW5wdXQgb2Ygc2VjdGlvbi5pbnB1dHNcIiBjbGFzcz1cIm1yLWZvcm1fX2VsZW1lbnQge3sgaW5wdXQub3B0aW9ucz8uY2xhc3NlcyB8fCAnJyB9fVwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImlucHV0LnR5cGVcIj5cblxuICAgICAgICAgICAgICAgICAgICA8IS0tIElOUFVUIFRFWFQgLS0+XG4gICAgICAgICAgICAgICAgICAgIDxuNy1pbnB1dC10ZXh0ICpuZ1N3aXRjaENhc2U9XCIndGV4dCdcIiBcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkYXRhXT1cImZvcm0uaW5wdXRzW2lucHV0LmlkXS5kcy5vdXQkIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2VtaXRdPVwiZm9ybS5pbnB1dHNbaW5wdXQuaWRdLmVtaXRcIj48L243LWlucHV0LXRleHQ+XG5cbiAgICAgICAgICAgICAgICAgICAgPCEtLSBJTlBVVCBDSEVDS0JPWCAtLT5cbiAgICAgICAgICAgICAgICAgICAgPG43LWlucHV0LWNoZWNrYm94ICpuZ1N3aXRjaENhc2U9XCInY2hlY2tib3gnXCIgXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGF0YV09XCJmb3JtLmlucHV0c1tpbnB1dC5pZF0uZHMub3V0JCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtlbWl0XT1cImZvcm0uaW5wdXRzW2lucHV0LmlkXS5lbWl0XCI+PC9uNy1pbnB1dC1jaGVja2JveD5cblxuICAgICAgICAgICAgICAgICAgICA8IS0tIElOUFVUIFNFTEVDVCAtLT5cbiAgICAgICAgICAgICAgICAgICAgPG43LWlucHV0LXNlbGVjdCAqbmdTd2l0Y2hDYXNlPVwiJ3NlbGVjdCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2RhdGFdPVwiZm9ybS5pbnB1dHNbaW5wdXQuaWRdLmRzLm91dCQgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbZW1pdF09XCJmb3JtLmlucHV0c1tpbnB1dC5pZF0uZW1pdFwiPjwvbjctaW5wdXQtc2VsZWN0PlxuXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gSU5QVVQgVFlQRUFIRUFEIC0tPlxuICAgICAgICAgICAgICAgICAgICA8bXItaW5wdXQtdHlwZWFoZWFkICpuZ1N3aXRjaENhc2U9XCIndHlwZWFoZWFkJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGF0YV09XCJmb3JtLmlucHV0c1tpbnB1dC5pZF0uZHMub3V0JCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtlbWl0XT1cImZvcm0uaW5wdXRzW2lucHV0LmlkXS5lbWl0XCI+PC9tci1pbnB1dC10eXBlYWhlYWQ+XG5cbiAgICAgICAgICAgICAgICAgICAgPCEtLSBERUZBVUxUIChleHRlcm5hbCB0ZW1wbGF0ZSkgLS0+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoRGVmYXVsdD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgdGVtcGxhdGVSZWY7IFxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dDogeyBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBpbnB1dC50eXBlLCBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dDogZm9ybS5pbnB1dHNbaW5wdXQuaWRdIFxuICAgICAgICAgICAgICAgICAgICAgICAgfVwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj4iXX0=
@@ -5,4 +5,4 @@ export {};
5
5
  // type: string;
6
6
  // data: object;
7
7
  // }
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtc2VhcmNoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtbXVydWNhL3NyYy9saWIvY29uZmlnLXR5cGVzL211cnVjYS9hZHZhbmNlZC1zZWFyY2gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQStHQSx1QkFBdUI7QUFDdkIsNERBQTREO0FBQzVELGlEQUFpRDtBQUNqRCxrQkFBa0I7QUFDbEIsa0JBQWtCO0FBQ2xCLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby11c2UtYmVmb3JlLWRlZmluZSAqL1xuaW1wb3J0IHtcbiAgSW5wdXRDaGVja2JveERhdGEsIElucHV0U2VsZWN0RGF0YSwgSW5wdXRUZXh0RGF0YSwgTWFwRGF0YSwgSGlzdG9ncmFtUmFuZ2VEYXRhXG59IGZyb20gJ0BuZXQ3L2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgQ29uZmlnTXVydWNhTGF5b3V0IH0gZnJvbSAnLi9sYXlvdXRzJztcblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FBZHZhbmNlZFNlYXJjaExheW91dCBleHRlbmRzIENvbmZpZ011cnVjYUxheW91dCB7XG4gIC8qKiByZXN1bHRzIHBhZ2UgdXJsICovXG4gIHJlc3VsdHNVcmw6IHN0cmluZyB8IHtcbiAgICBbbG9jYWxlOiBzdHJpbmddOiBzdHJpbmc7XG4gIH07XG4gIC8qKiBkeW5hbWljIG9wdGlvbnMgKGZyb20gQVBJKSAqL1xuICBoYXNEeW5hbWljT3B0aW9ucz86IGJvb2xlYW47XG4gIGZvcm1Db25maWc6IHtcbiAgICAvKiogZm9ybSBzdWJtaXQgYnV0dG9uICAqL1xuICAgIHN1Ym1pdEJ1dHRvbjoge1xuICAgICAgbGFiZWw6IHN0cmluZztcbiAgICB9O1xuICAgIC8qKiBmb3JtIHJlc2V0IGJ1dHRvbiAgKi9cbiAgICByZXNldEJ1dHRvbjoge1xuICAgICAgbGFiZWw6IHN0cmluZztcbiAgICB9O1xuICAgIC8qKiBmb3JtIGdyb3VwcyAoZm9ybSBhY2NvcmRpb24gc2VjdGlvbikgKi9cbiAgICBncm91cHM6IHtcbiAgICAgIC8qKiBpZCAodW5pcXVlKSAqL1xuICAgICAgaWQ6IHN0cmluZztcbiAgICAgIC8qKiBncm91cCBzZWN0aW9ucyAoaWQpIFtzZWN0aW9uMSwgc2VjdGlvbjIsIC4uLl0gKi9cbiAgICAgIHNlY3Rpb25zOiBzdHJpbmdbXTtcbiAgICAgIC8qKiBhZGl0aW9uYWwgY3NzIGNsYXNzZXMgKi9cbiAgICAgIGNsYXNzZXM/OiBzdHJpbmc7XG4gICAgICAvKiogYWRpdGlvbmFsIG9wdGlvbnMgKi9cbiAgICAgIG9wdGlvbnM/OiB7XG4gICAgICAgIC8qKiBncm91cCBsYWJlbCAqL1xuICAgICAgICBsYWJlbDogc3RyaW5nO1xuICAgICAgICAvKiogZ3JvdXAgaXMgKHZpc3VhbGx5KSBvcGVuPyAqL1xuICAgICAgICBpc09wZW4/OiBib29sZWFuO1xuICAgICAgICAvKiogc2hvdyBncm91cCBoZWFkZXI/ICovXG4gICAgICAgIHNob3dIZWFkZXI/OiBib29sZWFuO1xuICAgICAgfTtcbiAgICB9W107XG4gICAgc2VjdGlvbnM6IENvbmZpZ011cnVjYUFkdmFuY2VkU2VhcmNoU2VjdGlvbltdO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYUFkdmFuY2VkU2VhcmNoU2VjdGlvbiB7XG4gIC8qKiBpZCAodW5pcXVlKSAqL1xuICBpZDogc3RyaW5nO1xuICAvKiogc2VjdGlvbiB0aXRsZSAqL1xuICB0aXRsZT86IHN0cmluZztcbiAgLyoqIHNlY3Rpb24gZGVzY3JpcHRpb24gdGV4dCAqL1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgLyoqIGlzIGFkdmFuY2VkPyBmb3IgY3NzIHB1cnBvc2VzICovXG4gIGFkdmFuY2VkU2VjdGlvbj86IGJvb2xlYW47XG4gIC8qKiBzZWN0aW9uIGlucHV0cyAqL1xuICBpbnB1dHM6IChcbiAgICBDb25maWdNdXJ1Y2FBZHZhbmNlZFNlYXJjaElucHV0VGV4dDx1bmtub3duPlxuICAgIHwgQ29uZmlnTXVydWNhQWR2YW5jZWRTZWFyY2hJbnB1dENoZWNrYm94PHVua25vd24+XG4gICAgfCBDb25maWdNdXJ1Y2FBZHZhbmNlZFNlYXJjaElucHV0U2VsZWN0PHVua25vd24+XG4gICAgfCBDb25maWdNdXJ1Y2FBZHZhbmNlZFNlYXJjaElucHV0TWFwPHVua25vd24+XG4gICAgLy8gRklYTUU6IGN1c3RvbSBpbnB1dHNcbiAgICAvLyB8IENvbmZpZ011cnVjYUFkdmFuY2VkU2VhcmNoSW5wdXRDdXN0b208dW5rbm93bj5cbiAgKVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYUFkdmFuY2VkU2VhcmNoSW5wdXQ8VD4ge1xuICBpZDogc3RyaW5nO1xuICBpbmZvPzogc3RyaW5nO1xuICAvKiogaW5wdXQgc3RhdGUgKi9cbiAgc3RhdGU/OiB7XG4gICAgdmFsdWU6IFQ7XG4gICAgZGlzYWJsZWQ/OiBib29sZWFuO1xuICAgIGhpZGRlbj86IGJvb2xlYW47XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhQWR2YW5jZWRTZWFyY2hJbnB1dFRleHQ8VD5cbiAgZXh0ZW5kcyBDb25maWdNdXJ1Y2FBZHZhbmNlZFNlYXJjaElucHV0PFQ+IHtcbiAgdHlwZTogJ3RleHQnO1xuICBkYXRhOiBJbnB1dFRleHREYXRhO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFkdmFuY2VkSW5wdXRDaGVja2JveERhdGEgZXh0ZW5kcyBJbnB1dENoZWNrYm94RGF0YSB7XG4gIGlkOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhQWR2YW5jZWRTZWFyY2hJbnB1dENoZWNrYm94PFQ+XG4gIGV4dGVuZHMgQ29uZmlnTXVydWNhQWR2YW5jZWRTZWFyY2hJbnB1dDxUPiB7XG4gIHR5cGU6ICdjaGVja2JveCc7XG4gIGRhdGE6IEFkdmFuY2VkSW5wdXRDaGVja2JveERhdGE7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhQWR2YW5jZWRTZWFyY2hJbnB1dFNlbGVjdDxUPlxuICBleHRlbmRzIENvbmZpZ011cnVjYUFkdmFuY2VkU2VhcmNoSW5wdXQ8VD4ge1xuICB0eXBlOiAnc2VsZWN0JztcbiAgZGF0YTogSW5wdXRTZWxlY3REYXRhO1xufVxuXG4vLyBBbGxvdyBlbWJlZGRpbmcgb2YgbWFwLWNvbXBvbmVudCBpbnRvIHRoZSBzZWFyY2ggZmFjZXRzXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYUFkdmFuY2VkU2VhcmNoSW5wdXRNYXA8VD5cbiAgZXh0ZW5kcyBDb25maWdNdXJ1Y2FBZHZhbmNlZFNlYXJjaElucHV0PFQ+IHtcbiAgdHlwZTogJ21hcCc7XG4gIGRhdGE6IE1hcERhdGE7XG59XG5cbi8vIEFsbG93IGVtYmVkZGluZyBvZiBoaXN0b2dyYW0tY29tcG9uZW50IGludG8gdGhlIHNlYXJjaCBmYWNldHNcbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhQWR2YW5jZWRTZWFyY2hJbnB1dEhpc3RvZ3JhbTxUPlxuICBleHRlbmRzIENvbmZpZ011cnVjYUFkdmFuY2VkU2VhcmNoSW5wdXQ8VD4ge1xuICB0eXBlOiAnaGlzdG9ncmFtJztcbiAgZGF0YTogSGlzdG9ncmFtUmFuZ2VEYXRhO1xufVxuXG4vLyBGSVhNRTogY3VzdG9tIGlucHV0c1xuLy8gZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FBZHZhbmNlZFNlYXJjaElucHV0Q3VzdG9tPFQ+XG4vLyAgIGV4dGVuZHMgQ29uZmlnTXVydWNhQWR2YW5jZWRTZWFyY2hJbnB1dDxUPiB7XG4vLyAgIHR5cGU6IHN0cmluZztcbi8vICAgZGF0YTogb2JqZWN0O1xuLy8gfVxuIl19
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtc2VhcmNoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbjctYm9pbGVycGxhdGUtbXVydWNhL3NyYy9saWIvY29uZmlnLXR5cGVzL211cnVjYS9hZHZhbmNlZC1zZWFyY2gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQWlIQSx1QkFBdUI7QUFDdkIsNERBQTREO0FBQzVELGlEQUFpRDtBQUNqRCxrQkFBa0I7QUFDbEIsa0JBQWtCO0FBQ2xCLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby11c2UtYmVmb3JlLWRlZmluZSAqL1xuaW1wb3J0IHtcbiAgSW5wdXRDaGVja2JveERhdGEsIElucHV0U2VsZWN0RGF0YSwgSW5wdXRUZXh0RGF0YSwgTWFwRGF0YSwgSGlzdG9ncmFtUmFuZ2VEYXRhXG59IGZyb20gJ0BuZXQ3L2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgQ29uZmlnTXVydWNhTGF5b3V0IH0gZnJvbSAnLi9sYXlvdXRzJztcblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FBZHZhbmNlZFNlYXJjaExheW91dCBleHRlbmRzIENvbmZpZ011cnVjYUxheW91dCB7XG4gIC8qKiByZXN1bHRzIHBhZ2UgdXJsICovXG4gIHJlc3VsdHNVcmw6IHN0cmluZyB8IHtcbiAgICBbbG9jYWxlOiBzdHJpbmddOiBzdHJpbmc7XG4gIH07XG4gIC8qKiBkeW5hbWljIG9wdGlvbnMgKGZyb20gQVBJKSAqL1xuICBoYXNEeW5hbWljT3B0aW9ucz86IGJvb2xlYW47XG4gIGZvcm1Db25maWc6IHtcbiAgICAvKiogZm9ybSBzdWJtaXQgYnV0dG9uICAqL1xuICAgIHN1Ym1pdEJ1dHRvbjoge1xuICAgICAgbGFiZWw6IHN0cmluZztcbiAgICB9O1xuICAgIC8qKiBmb3JtIHJlc2V0IGJ1dHRvbiAgKi9cbiAgICByZXNldEJ1dHRvbjoge1xuICAgICAgbGFiZWw6IHN0cmluZztcbiAgICB9O1xuICAgIC8qKiBmb3JtIGdyb3VwcyAoZm9ybSBhY2NvcmRpb24gc2VjdGlvbikgKi9cbiAgICBncm91cHM6IHtcbiAgICAgIC8qKiBpZCAodW5pcXVlKSAqL1xuICAgICAgaWQ6IHN0cmluZztcbiAgICAgIC8qKiBncm91cCBzZWN0aW9ucyAoaWQpIFtzZWN0aW9uMSwgc2VjdGlvbjIsIC4uLl0gKi9cbiAgICAgIHNlY3Rpb25zOiBzdHJpbmdbXTtcbiAgICAgIC8qKiBhZGl0aW9uYWwgY3NzIGNsYXNzZXMgKi9cbiAgICAgIGNsYXNzZXM/OiBzdHJpbmc7XG4gICAgICAvKiogYWRpdGlvbmFsIG9wdGlvbnMgKi9cbiAgICAgIG9wdGlvbnM/OiB7XG4gICAgICAgIC8qKiBncm91cCBsYWJlbCAqL1xuICAgICAgICBsYWJlbDogc3RyaW5nO1xuICAgICAgICAvKiogZ3JvdXAgaXMgKHZpc3VhbGx5KSBvcGVuPyAqL1xuICAgICAgICBpc09wZW4/OiBib29sZWFuO1xuICAgICAgICAvKiogc2hvdyBncm91cCBoZWFkZXI/ICovXG4gICAgICAgIHNob3dIZWFkZXI/OiBib29sZWFuO1xuICAgICAgfTtcbiAgICB9W107XG4gICAgc2VjdGlvbnM6IENvbmZpZ011cnVjYUFkdmFuY2VkU2VhcmNoU2VjdGlvbltdO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYUFkdmFuY2VkU2VhcmNoU2VjdGlvbiB7XG4gIC8qKiBpZCAodW5pcXVlKSAqL1xuICBpZDogc3RyaW5nO1xuICAvKiogc2VjdGlvbiB0aXRsZSAqL1xuICB0aXRsZT86IHN0cmluZztcbiAgLyoqIHNlY3Rpb24gZGVzY3JpcHRpb24gdGV4dCAqL1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgLyoqIHNlY3Rpb24gaW5mbyB0b29sdGlwICovXG4gIGluZm8/OiBzdHJpbmc7XG4gIC8qKiBpcyBhZHZhbmNlZD8gZm9yIGNzcyBwdXJwb3NlcyAqL1xuICBhZHZhbmNlZFNlY3Rpb24/OiBib29sZWFuO1xuICAvKiogc2VjdGlvbiBpbnB1dHMgKi9cbiAgaW5wdXRzOiAoXG4gICAgQ29uZmlnTXVydWNhQWR2YW5jZWRTZWFyY2hJbnB1dFRleHQ8dW5rbm93bj5cbiAgICB8IENvbmZpZ011cnVjYUFkdmFuY2VkU2VhcmNoSW5wdXRDaGVja2JveDx1bmtub3duPlxuICAgIHwgQ29uZmlnTXVydWNhQWR2YW5jZWRTZWFyY2hJbnB1dFNlbGVjdDx1bmtub3duPlxuICAgIHwgQ29uZmlnTXVydWNhQWR2YW5jZWRTZWFyY2hJbnB1dE1hcDx1bmtub3duPlxuICAgIC8vIEZJWE1FOiBjdXN0b20gaW5wdXRzXG4gICAgLy8gfCBDb25maWdNdXJ1Y2FBZHZhbmNlZFNlYXJjaElucHV0Q3VzdG9tPHVua25vd24+XG4gIClbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FBZHZhbmNlZFNlYXJjaElucHV0PFQ+IHtcbiAgaWQ6IHN0cmluZztcbiAgaW5mbz86IHN0cmluZztcbiAgLyoqIGlucHV0IHN0YXRlICovXG4gIHN0YXRlPzoge1xuICAgIHZhbHVlOiBUO1xuICAgIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgICBoaWRkZW4/OiBib29sZWFuO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYUFkdmFuY2VkU2VhcmNoSW5wdXRUZXh0PFQ+XG4gIGV4dGVuZHMgQ29uZmlnTXVydWNhQWR2YW5jZWRTZWFyY2hJbnB1dDxUPiB7XG4gIHR5cGU6ICd0ZXh0JztcbiAgZGF0YTogSW5wdXRUZXh0RGF0YTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBZHZhbmNlZElucHV0Q2hlY2tib3hEYXRhIGV4dGVuZHMgSW5wdXRDaGVja2JveERhdGEge1xuICBpZDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYUFkdmFuY2VkU2VhcmNoSW5wdXRDaGVja2JveDxUPlxuICBleHRlbmRzIENvbmZpZ011cnVjYUFkdmFuY2VkU2VhcmNoSW5wdXQ8VD4ge1xuICB0eXBlOiAnY2hlY2tib3gnO1xuICBkYXRhOiBBZHZhbmNlZElucHV0Q2hlY2tib3hEYXRhO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYUFkdmFuY2VkU2VhcmNoSW5wdXRTZWxlY3Q8VD5cbiAgZXh0ZW5kcyBDb25maWdNdXJ1Y2FBZHZhbmNlZFNlYXJjaElucHV0PFQ+IHtcbiAgdHlwZTogJ3NlbGVjdCc7XG4gIGRhdGE6IElucHV0U2VsZWN0RGF0YTtcbn1cblxuLy8gQWxsb3cgZW1iZWRkaW5nIG9mIG1hcC1jb21wb25lbnQgaW50byB0aGUgc2VhcmNoIGZhY2V0c1xuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FBZHZhbmNlZFNlYXJjaElucHV0TWFwPFQ+XG4gIGV4dGVuZHMgQ29uZmlnTXVydWNhQWR2YW5jZWRTZWFyY2hJbnB1dDxUPiB7XG4gIHR5cGU6ICdtYXAnO1xuICBkYXRhOiBNYXBEYXRhO1xufVxuXG4vLyBBbGxvdyBlbWJlZGRpbmcgb2YgaGlzdG9ncmFtLWNvbXBvbmVudCBpbnRvIHRoZSBzZWFyY2ggZmFjZXRzXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYUFkdmFuY2VkU2VhcmNoSW5wdXRIaXN0b2dyYW08VD5cbiAgZXh0ZW5kcyBDb25maWdNdXJ1Y2FBZHZhbmNlZFNlYXJjaElucHV0PFQ+IHtcbiAgdHlwZTogJ2hpc3RvZ3JhbSc7XG4gIGRhdGE6IEhpc3RvZ3JhbVJhbmdlRGF0YTtcbn1cblxuLy8gRklYTUU6IGN1c3RvbSBpbnB1dHNcbi8vIGV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhQWR2YW5jZWRTZWFyY2hJbnB1dEN1c3RvbTxUPlxuLy8gICBleHRlbmRzIENvbmZpZ011cnVjYUFkdmFuY2VkU2VhcmNoSW5wdXQ8VD4ge1xuLy8gICB0eXBlOiBzdHJpbmc7XG4vLyAgIGRhdGE6IG9iamVjdDtcbi8vIH1cbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLW11cnVjYS9zcmMvbGliL2NvbmZpZy10eXBlcy9tdXJ1Y2EvbGF5b3V0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTGliT3B0aW9ucywgTmV0d29ya0xpYk9wdGlvbnMgfSBmcm9tICdAbmV0Ny9jb21wb25lbnRzJztcbmltcG9ydCB7IE1yU2VhcmNoQ29uZmlnIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9zZWFyY2guaW50ZXJmYWNlJztcbmltcG9ydCB7XG4gIENvbmZpZ011cnVjYUJyZWFkY3J1bWJzU2VjdGlvbixcbiAgQ29uZmlnTXVydWNhQ29sbGVjdGlvblNlY3Rpb24sXG4gIENvbmZpZ011cnVjYUNvbnRlbnRTZWN0aW9uLFxuICBDb25maWdNdXJ1Y2FHYWxsZXJ5U2VjdGlvbixcbiAgQ29uZmlnTXVydWNhSGVyb1NlY3Rpb24sXG4gIENvbmZpZ011cnVjYUltYWdlVmlld2VyU2VjdGlvbixcbiAgQ29uZmlnTXVydWNhSW5mb0JveFNlY3Rpb24sXG4gIENvbmZpZ011cnVjYUl0ZW1QcmV2aWV3U2VjdGlvbixcbiAgQ29uZmlnTXVydWNhTWV0YWRhdGFTZWN0aW9uLFxuICBDb25maWdNdXJ1Y2FTbGlkZXJTZWN0aW9uLFxuICBDb25maWdNdXJ1Y2FUYWJzU2VjdGlvbixcbiAgQ29uZmlnTXVydWNhVGV4dFZpZXdlclNlY3Rpb24sXG4gIENvbmZpZ011cnVjYVRpdGxlU2VjdGlvbixcbiAgQ29uZmlnTXVydWNhTWV0YWRhdGFEeW5hbWljU2VjdGlvbixcbiAgQ29uZmlnTXVydWNhQnV0dG9uU2VjdGlvbixcbiAgQ29uZmlnTXVydWNhUGFyYWxsZWxUZXh0Vmlld2VyU2VjdGlvblxufSBmcm9tICcuL3NlY3Rpb25zJztcblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FMYXlvdXQge1xuICAvKiogcGFnZSB0aXRsZSAqL1xuICB0aXRsZTogc3RyaW5nO1xuICAvKiogYWRpdGlvbmFsIGJvZHkgY2xhc3NlcyAqL1xuICBib2R5Q2xhc3Nlcz86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FIb21lTGF5b3V0IGV4dGVuZHMgQ29uZmlnTXVydWNhTGF5b3V0IHtcbiAgLyoqIGxheW91dCBzZWN0aW9ucyAqL1xuICBzZWN0aW9uczogKFxuICAgIENvbmZpZ011cnVjYVNsaWRlclNlY3Rpb25cbiAgICB8IENvbmZpZ011cnVjYUNvbnRlbnRTZWN0aW9uXG4gICAgfCBDb25maWdNdXJ1Y2FIZXJvU2VjdGlvblxuICAgIHwgQ29uZmlnTXVydWNhQ29sbGVjdGlvblNlY3Rpb25cbiAgKVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYVJlc291cmNlTGF5b3V0IGV4dGVuZHMgQ29uZmlnTXVydWNhTGF5b3V0IHtcbiAgLyoqIHJlc291cmNlIHR5cGUgKHVzZWQgYnkgcmVzb3VyY2UgbW9kYWwpICovXG4gIHR5cGU6IHN0cmluZztcbiAgLyoqIGRlbGF5IHRpbWUgYmVmb3JlIHNjcm9sbGluZyB0byBhbiBhbmNob3IgKi9cbiAgcGFnZUxvYWQ/OiBudW1iZXI7XG4gIC8qKiBUaHJlc2hvbGQgd2hlcmUgdGhlIFwicmVhZC1tb3JlXCIgYnV0dG9uIGFwcGVhcnMgKi9cbiAgbWF4SGVpZ2h0PzogbnVtYmVyO1xuICAvKiogbGF5b3V0IHNlY3Rpb25zICh0b3AgfCBjb250ZW50KSAqL1xuICBzZWN0aW9uczoge1xuICAgIFtrZXkgaW4gJ3RvcCcgfCAnY29udGVudCddOiAoXG4gICAgICBDb25maWdNdXJ1Y2FUYWJzU2VjdGlvblxuICAgICAgfCBDb25maWdNdXJ1Y2FUaXRsZVNlY3Rpb25cbiAgICAgIHwgQ29uZmlnTXVydWNhSW1hZ2VWaWV3ZXJTZWN0aW9uXG4gICAgICB8IENvbmZpZ011cnVjYU1ldGFkYXRhU2VjdGlvblxuICAgICAgfCBDb25maWdNdXJ1Y2FDb2xsZWN0aW9uU2VjdGlvblxuICAgICAgfCBDb25maWdNdXJ1Y2FJdGVtUHJldmlld1NlY3Rpb25cbiAgICAgIHwgQ29uZmlnTXVydWNhVGV4dFZpZXdlclNlY3Rpb25cbiAgICAgIHwgQ29uZmlnTXVydWNhUGFyYWxsZWxUZXh0Vmlld2VyU2VjdGlvblxuICAgICAgfCBDb25maWdNdXJ1Y2FJbmZvQm94U2VjdGlvblxuICAgICAgfCBDb25maWdNdXJ1Y2FCcmVhZGNydW1ic1NlY3Rpb25cbiAgICAgIHwgQ29uZmlnTXVydWNhTWV0YWRhdGFEeW5hbWljU2VjdGlvblxuICAgICAgfCBDb25maWdNdXJ1Y2FCdXR0b25TZWN0aW9uXG4gICAgKVtdO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYUl0aW5lcmFyeUxheW91dCBleHRlbmRzIENvbmZpZ011cnVjYUxheW91dCB7XG4gIC8qKiBsYXlvdXQgc2VjdGlvbnMgKi9cbiAgc2VjdGlvbnM6IChcbiAgICBDb25maWdNdXJ1Y2FNZXRhZGF0YVNlY3Rpb25cbiAgICB8IENvbmZpZ011cnVjYUNvbGxlY3Rpb25TZWN0aW9uXG4gICAgfCBDb25maWdNdXJ1Y2FHYWxsZXJ5U2VjdGlvblxuICApW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhVGltZWxpbmVMYXlvdXQgZXh0ZW5kcyBDb25maWdNdXJ1Y2FMYXlvdXQge1xuICAvKiogbWFwIGhlYWRlciB0aXRsZSAqL1xuICBtYXBIZWFkZXI6IHN0cmluZztcbiAgLyoqIHRpbWVsaW5lIGxpYnJhcnkgb3B0aW9ucyAqL1xuICBsaWJPcHRpb25zOiBMaWJPcHRpb25zO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYU5ldHdvcmtMYXlvdXQgZXh0ZW5kcyBDb25maWdNdXJ1Y2FMYXlvdXQge1xuICAvKiogbWFwIGhlYWRlciB0aXRsZSAqL1xuICBtYXBIZWFkZXI6IHN0cmluZztcbiAgLyoqIHRpbWVsaW5lIGxpYnJhcnkgb3B0aW9ucyAqL1xuICBsaWJPcHRpb25zOiBOZXR3b3JrTGliT3B0aW9ucztcbn1cblxudHlwZSBTZWFyY2hTb3J0Q29uZmlnID0ge1xuICAvKiogc2VsZWN0IGxhYmVsICovXG4gIGxhYmVsPzogc3RyaW5nO1xuICAvKiogc2VsZWN0IG9wdGlvbnMgKi9cbiAgb3B0aW9uczoge1xuICAgIHZhbHVlOiBzdHJpbmc7XG4gICAgbGFiZWw6IHN0cmluZztcbiAgICBzZWxlY3RlZD86IGJvb2xlYW47XG4gICAgZGlzYWJsZWQ/OiBib29sZWFuO1xuICB9W107XG59XG5cbnR5cGUgU2VhcmNoUGFnaW5hdGlvbkNvbmZpZyA9IHtcbiAgLyoqIHJlc3VsdHMgcGVyIHBhZ2UgKi9cbiAgbGltaXQ6IG51bWJlcjtcbiAgLyoqIHNlbGVjdCBvcHRpb25zICovXG4gIG9wdGlvbnM6IG51bWJlcltdO1xuICAvKiogc2VsZWN0IGxhYmVsICovXG4gIHNlbGVjdExhYmVsPzogc3RyaW5nO1xufVxuXG50eXBlIFNlYXJjaEl0ZW1QcmV2aWV3Q29uZmlnID0ge1xuICAvKiogYWRpdGlvbmFsIGNzcyBjbGFzc2VzICovXG4gIGNsYXNzZXM6IHN0cmluZztcbiAgLyoqIGxpbmsgdGFyZ2V0IDxhIHRhcmdldD1cInt0YXJnZXR9XCI+ICAqL1xuICBsaW5rVGFyZ2V0PzogJ19ibGFuaycgfCAnX3NlbGYnIHwgJ19wYXJlbnQnIHwgJ190b3AnO1xufVxuXG50eXBlIFNlYXJjaEZhbGxiYWNrQ29uZmlnID0ge1xuICAvKiogZGVzY3JpcHRpb24gKG5vIHJlc3VsdHMgfCBlcnJvcikgKi9cbiAgdGV4dDogc3RyaW5nO1xuICAvKiogYnV0dG9uIHRleHQgKi9cbiAgYnV0dG9uOiBzdHJpbmc7XG4gIC8qKiBidXR0b24gcGF5bG9hZCAqL1xuICBwYXlsb2FkPzogb2JqZWN0O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYVNlYXJjaExheW91dCBleHRlbmRzIENvbmZpZ011cnVjYUxheW91dCB7XG4gIC8qKiBzZWFyY2ggaWQgKHVuaXF1ZSkgdXNlZCBieSBzZWFyY2ggc2VydmljZSAqL1xuICBzZWFyY2hJZDogc3RyaW5nO1xuICAvKiogc2VhcmNoIGNvbmZpZyAqL1xuICBzZWFyY2hDb25maWc6IE1yU2VhcmNoQ29uZmlnO1xuICAvKiogcmVzdWx0cyByZXNvdXJjZSBwYXRoIChyb3V0ZSkgKi9cbiAgcmVzb3VyY2VQYXRoOiBzdHJpbmc7XG4gIC8qKiB0b3RhbCByZXN1bHRzIHRleHQgKi9cbiAgdG90YWxSZXN1bHRzVGV4dDogc3RyaW5nO1xuICAvKiogZmFjZXRzIHNpZGViYXIgdGl0bGUgKi9cbiAgZmFjZXRzVGl0bGU/OiBzdHJpbmc7XG4gIC8qKiBmaWx0ZXJzIHRpdGxlLCBvbiB0b3Agb2YgcmVzdWx0cyAqL1xuICBmaWx0ZXJzVGl0bGU/OiBzdHJpbmc7XG4gIC8qKiBpdGVtIHByZXZpZXcgaXMgYWR2YW5jZWQ/ICovXG4gIGFkdmFuY2VkUmVzdWx0cz86IGJvb2xlYW47XG4gIC8qKiBmYWNldHMgY29sdW1uIHdpZHRoICglKSAqL1xuICBmYWNldHNXaWR0aFBlcmNlbnRhZ2U/OiBudW1iZXI7XG4gIC8qKiBwYWdlIGRlc2NyaXB0aW9uICovXG4gIGRlc2NyaXB0aW9uPzoge1xuICAgIGlkOiBzdHJpbmc7XG4gICAgYnV0dG9uVGV4dDogc3RyaW5nO1xuICAgIGxpbmtUZXh0OiBzdHJpbmc7XG4gIH07XG4gIC8qKiByZXN1bHRzIGNzcyBncmlkIDEsIDIsIDMgKi9cbiAgZ3JpZD86IG51bWJlcjtcbiAgc29ydD86IFNlYXJjaFNvcnRDb25maWc7XG4gIHBhZ2luYXRpb246IFNlYXJjaFBhZ2luYXRpb25Db25maWc7XG4gIGl0ZW1QcmV2aWV3PzogU2VhcmNoSXRlbVByZXZpZXdDb25maWc7XG4gIGRpc2FibGVTY3JvbGw/OiBib29sZWFuO1xuICBmYWxsYmFjazogU2VhcmNoRmFsbGJhY2tDb25maWc7XG4gIGtvOiBTZWFyY2hGYWxsYmFja0NvbmZpZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FMYXlvdXRQb3N0cyBleHRlbmRzIENvbmZpZ011cnVjYUxheW91dCB7XG4gIC8qKiBpZCAodW5pcXVlKSB1c2VkIGJ5IHNlYXJjaCBzZXJ2aWNlICovXG4gIHNlYXJjaElkOiBzdHJpbmc7XG4gIC8qKiByZXN1bHRzIHJlc291cmNlIHBhdGggKGxpbmspICovXG4gIHJlc291cmNlUGF0aDogc3RyaW5nO1xuICAvKiogdG90YWwgcG9zdHMgdGV4dCAqL1xuICB0b3RhbFJlc3VsdHNUZXh0OiBzdHJpbmc7XG4gIC8qKiByZXN1bHRzIGNzcyBncmlkIDEsIDIsIDMgKi9cbiAgZ3JpZD86IG51bWJlcjtcbiAgc29ydD86IFNlYXJjaFNvcnRDb25maWc7XG4gIHBhZ2luYXRpb246IFNlYXJjaFBhZ2luYXRpb25Db25maWc7XG4gIGl0ZW1QcmV2aWV3PzogU2VhcmNoSXRlbVByZXZpZXdDb25maWc7XG4gIGZhbGxiYWNrOiBTZWFyY2hGYWxsYmFja0NvbmZpZztcbiAga286IFNlYXJjaEZhbGxiYWNrQ29uZmlnO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYUxheW91dEFkdmFuY2VkUmVzdWx0cyBleHRlbmRzIENvbmZpZ011cnVjYUxheW91dCB7XG4gIC8qKiBpZCAodW5pcXVlKSB1c2VkIGJ5IHNlYXJjaCBzZXJ2aWNlICovXG4gIHNlYXJjaElkOiBzdHJpbmc7XG4gIC8qKiByZXN1bHRzIHJlc291cmNlIHBhdGggKGxpbmspICovXG4gIHJlc291cmNlUGF0aDogc3RyaW5nO1xuICAvKiogdG90YWwgcmVzdWx0cyB0ZXh0ICovXG4gIHRvdGFsUmVzdWx0c1RleHQ6IHN0cmluZztcbiAgLyoqIGZpbHRlcnMgdG8gc2hvdyAqL1xuICBmaWx0ZXJzOiB7XG4gICAgLyoqIGZpbHRlcnMgdGl0bGUgKi9cbiAgICB0aXRsZTogc3RyaW5nO1xuICAgIC8qKlxuICAgICAqIGZpbHRlcnMgbGFiZWxzIG1hcDogZmlsdGVySWQgPT4gbGFiZWxcbiAgICAgKiBmaWx0ZXIgbXVzdCBiZSBpbiB0aGlzIG1hcCB0byBiZSBzaG93biBvbiBwYWdlXG4gICAgICovXG4gICAgbGFiZWxzOiB7XG4gICAgICBbZmlsdGVySWQ6IHN0cmluZ106IHN0cmluZztcbiAgICB9O1xuICB9O1xuICAvKiogcmVzdWx0cyBjc3MgZ3JpZCAxLCAyLCAzICovXG4gIGdyaWQ/OiBudW1iZXI7XG4gIHNvcnQ/OiBTZWFyY2hTb3J0Q29uZmlnO1xuICBwYWdpbmF0aW9uOiBTZWFyY2hQYWdpbmF0aW9uQ29uZmlnO1xuICBpdGVtUHJldmlldz86IFNlYXJjaEl0ZW1QcmV2aWV3Q29uZmlnO1xuICBoaWdobGlnaHRzPzoge1xuICAgIGhhc1RvZ2dsZT86IGJvb2xlYW47XG4gICAgaGlkZGVuPzogYm9vbGVhbjtcbiAgfTtcbiAgZmFsbGJhY2s6IFNlYXJjaEZhbGxiYWNrQ29uZmlnO1xuICBrbzogU2VhcmNoRmFsbGJhY2tDb25maWc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhTGF5b3V0TWFwIGV4dGVuZHMgQ29uZmlnTXVydWNhTGF5b3V0IHtcbiAgLyoqIHBhZ2UgZGVmYXVsdCBkZXNjcmlwdGlvbiAqL1xuICBkZWZhdWx0VGV4dDogc3RyaW5nO1xufVxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLW11cnVjYS9zcmMvbGliL2NvbmZpZy10eXBlcy9tdXJ1Y2EvbGF5b3V0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTGliT3B0aW9ucywgTmV0d29ya0xpYk9wdGlvbnMgfSBmcm9tICdAbmV0Ny9jb21wb25lbnRzJztcbmltcG9ydCB7IE1yU2VhcmNoQ29uZmlnIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9zZWFyY2guaW50ZXJmYWNlJztcbmltcG9ydCB7XG4gIENvbmZpZ011cnVjYUJyZWFkY3J1bWJzU2VjdGlvbixcbiAgQ29uZmlnTXVydWNhQ29sbGVjdGlvblNlY3Rpb24sXG4gIENvbmZpZ011cnVjYUNvbnRlbnRTZWN0aW9uLFxuICBDb25maWdNdXJ1Y2FHYWxsZXJ5U2VjdGlvbixcbiAgQ29uZmlnTXVydWNhSGVyb1NlY3Rpb24sXG4gIENvbmZpZ011cnVjYUltYWdlVmlld2VyU2VjdGlvbixcbiAgQ29uZmlnTXVydWNhSW5mb0JveFNlY3Rpb24sXG4gIENvbmZpZ011cnVjYUl0ZW1QcmV2aWV3U2VjdGlvbixcbiAgQ29uZmlnTXVydWNhTWV0YWRhdGFTZWN0aW9uLFxuICBDb25maWdNdXJ1Y2FTbGlkZXJTZWN0aW9uLFxuICBDb25maWdNdXJ1Y2FUYWJzU2VjdGlvbixcbiAgQ29uZmlnTXVydWNhVGV4dFZpZXdlclNlY3Rpb24sXG4gIENvbmZpZ011cnVjYVRpdGxlU2VjdGlvbixcbiAgQ29uZmlnTXVydWNhTWV0YWRhdGFEeW5hbWljU2VjdGlvbixcbiAgQ29uZmlnTXVydWNhQnV0dG9uU2VjdGlvbixcbiAgQ29uZmlnTXVydWNhUGFyYWxsZWxUZXh0Vmlld2VyU2VjdGlvbixcbiAgQ29uZmlnTXVydWNhRW1iZWRkZWRDb250ZW50U2VjdGlvblxufSBmcm9tICcuL3NlY3Rpb25zJztcblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FMYXlvdXQge1xuICAvKiogcGFnZSB0aXRsZSAqL1xuICB0aXRsZTogc3RyaW5nO1xuICAvKiogYWRpdGlvbmFsIGJvZHkgY2xhc3NlcyAqL1xuICBib2R5Q2xhc3Nlcz86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FIb21lTGF5b3V0IGV4dGVuZHMgQ29uZmlnTXVydWNhTGF5b3V0IHtcbiAgLyoqIGxheW91dCBzZWN0aW9ucyAqL1xuICBzZWN0aW9uczogKFxuICAgIENvbmZpZ011cnVjYVNsaWRlclNlY3Rpb25cbiAgICB8IENvbmZpZ011cnVjYUNvbnRlbnRTZWN0aW9uXG4gICAgfCBDb25maWdNdXJ1Y2FIZXJvU2VjdGlvblxuICAgIHwgQ29uZmlnTXVydWNhQ29sbGVjdGlvblNlY3Rpb25cbiAgKVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYVJlc291cmNlTGF5b3V0IGV4dGVuZHMgQ29uZmlnTXVydWNhTGF5b3V0IHtcbiAgLyoqIHJlc291cmNlIHR5cGUgKHVzZWQgYnkgcmVzb3VyY2UgbW9kYWwpICovXG4gIHR5cGU6IHN0cmluZztcbiAgLyoqIGRlbGF5IHRpbWUgYmVmb3JlIHNjcm9sbGluZyB0byBhbiBhbmNob3IgKi9cbiAgcGFnZUxvYWQ/OiBudW1iZXI7XG4gIC8qKiBUaHJlc2hvbGQgd2hlcmUgdGhlIFwicmVhZC1tb3JlXCIgYnV0dG9uIGFwcGVhcnMgKi9cbiAgbWF4SGVpZ2h0PzogbnVtYmVyO1xuICAvKiogbGF5b3V0IHNlY3Rpb25zICh0b3AgfCBjb250ZW50KSAqL1xuICBzZWN0aW9uczoge1xuICAgIFtrZXkgaW4gJ3RvcCcgfCAnY29udGVudCddOiAoXG4gICAgICBDb25maWdNdXJ1Y2FUYWJzU2VjdGlvblxuICAgICAgfCBDb25maWdNdXJ1Y2FUaXRsZVNlY3Rpb25cbiAgICAgIHwgQ29uZmlnTXVydWNhSW1hZ2VWaWV3ZXJTZWN0aW9uXG4gICAgICB8IENvbmZpZ011cnVjYU1ldGFkYXRhU2VjdGlvblxuICAgICAgfCBDb25maWdNdXJ1Y2FDb2xsZWN0aW9uU2VjdGlvblxuICAgICAgfCBDb25maWdNdXJ1Y2FJdGVtUHJldmlld1NlY3Rpb25cbiAgICAgIHwgQ29uZmlnTXVydWNhVGV4dFZpZXdlclNlY3Rpb25cbiAgICAgIHwgQ29uZmlnTXVydWNhUGFyYWxsZWxUZXh0Vmlld2VyU2VjdGlvblxuICAgICAgfCBDb25maWdNdXJ1Y2FFbWJlZGRlZENvbnRlbnRTZWN0aW9uXG4gICAgICB8IENvbmZpZ011cnVjYUluZm9Cb3hTZWN0aW9uXG4gICAgICB8IENvbmZpZ011cnVjYUJyZWFkY3J1bWJzU2VjdGlvblxuICAgICAgfCBDb25maWdNdXJ1Y2FNZXRhZGF0YUR5bmFtaWNTZWN0aW9uXG4gICAgICB8IENvbmZpZ011cnVjYUJ1dHRvblNlY3Rpb25cbiAgICApW107XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhSXRpbmVyYXJ5TGF5b3V0IGV4dGVuZHMgQ29uZmlnTXVydWNhTGF5b3V0IHtcbiAgLyoqIGxheW91dCBzZWN0aW9ucyAqL1xuICBzZWN0aW9uczogKFxuICAgIENvbmZpZ011cnVjYU1ldGFkYXRhU2VjdGlvblxuICAgIHwgQ29uZmlnTXVydWNhQ29sbGVjdGlvblNlY3Rpb25cbiAgICB8IENvbmZpZ011cnVjYUdhbGxlcnlTZWN0aW9uXG4gIClbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FUaW1lbGluZUxheW91dCBleHRlbmRzIENvbmZpZ011cnVjYUxheW91dCB7XG4gIC8qKiBtYXAgaGVhZGVyIHRpdGxlICovXG4gIG1hcEhlYWRlcjogc3RyaW5nO1xuICAvKiogdGltZWxpbmUgbGlicmFyeSBvcHRpb25zICovXG4gIGxpYk9wdGlvbnM6IExpYk9wdGlvbnM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhTmV0d29ya0xheW91dCBleHRlbmRzIENvbmZpZ011cnVjYUxheW91dCB7XG4gIC8qKiBtYXAgaGVhZGVyIHRpdGxlICovXG4gIG1hcEhlYWRlcjogc3RyaW5nO1xuICAvKiogdGltZWxpbmUgbGlicmFyeSBvcHRpb25zICovXG4gIGxpYk9wdGlvbnM6IE5ldHdvcmtMaWJPcHRpb25zO1xufVxuXG50eXBlIFNlYXJjaFNvcnRDb25maWcgPSB7XG4gIC8qKiBzZWxlY3QgbGFiZWwgKi9cbiAgbGFiZWw/OiBzdHJpbmc7XG4gIC8qKiBzZWxlY3Qgb3B0aW9ucyAqL1xuICBvcHRpb25zOiB7XG4gICAgdmFsdWU6IHN0cmluZztcbiAgICBsYWJlbDogc3RyaW5nO1xuICAgIHNlbGVjdGVkPzogYm9vbGVhbjtcbiAgICBkaXNhYmxlZD86IGJvb2xlYW47XG4gIH1bXTtcbn1cblxudHlwZSBTZWFyY2hQYWdpbmF0aW9uQ29uZmlnID0ge1xuICAvKiogcmVzdWx0cyBwZXIgcGFnZSAqL1xuICBsaW1pdDogbnVtYmVyO1xuICAvKiogc2VsZWN0IG9wdGlvbnMgKi9cbiAgb3B0aW9uczogbnVtYmVyW107XG4gIC8qKiBzZWxlY3QgbGFiZWwgKi9cbiAgc2VsZWN0TGFiZWw/OiBzdHJpbmc7XG59XG5cbnR5cGUgU2VhcmNoSXRlbVByZXZpZXdDb25maWcgPSB7XG4gIC8qKiBhZGl0aW9uYWwgY3NzIGNsYXNzZXMgKi9cbiAgY2xhc3Nlczogc3RyaW5nO1xuICAvKiogbGluayB0YXJnZXQgPGEgdGFyZ2V0PVwie3RhcmdldH1cIj4gICovXG4gIGxpbmtUYXJnZXQ/OiAnX2JsYW5rJyB8ICdfc2VsZicgfCAnX3BhcmVudCcgfCAnX3RvcCc7XG59XG5cbnR5cGUgU2VhcmNoRmFsbGJhY2tDb25maWcgPSB7XG4gIC8qKiBkZXNjcmlwdGlvbiAobm8gcmVzdWx0cyB8IGVycm9yKSAqL1xuICB0ZXh0OiBzdHJpbmc7XG4gIC8qKiBidXR0b24gdGV4dCAqL1xuICBidXR0b246IHN0cmluZztcbiAgLyoqIGJ1dHRvbiBwYXlsb2FkICovXG4gIHBheWxvYWQ/OiBvYmplY3Q7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhU2VhcmNoTGF5b3V0IGV4dGVuZHMgQ29uZmlnTXVydWNhTGF5b3V0IHtcbiAgLyoqIHNlYXJjaCBpZCAodW5pcXVlKSB1c2VkIGJ5IHNlYXJjaCBzZXJ2aWNlICovXG4gIHNlYXJjaElkOiBzdHJpbmc7XG4gIC8qKiBzZWFyY2ggY29uZmlnICovXG4gIHNlYXJjaENvbmZpZzogTXJTZWFyY2hDb25maWc7XG4gIC8qKiByZXN1bHRzIHJlc291cmNlIHBhdGggKHJvdXRlKSAqL1xuICByZXNvdXJjZVBhdGg6IHN0cmluZztcbiAgLyoqIHRvdGFsIHJlc3VsdHMgdGV4dCAqL1xuICB0b3RhbFJlc3VsdHNUZXh0OiBzdHJpbmc7XG4gIC8qKiBmYWNldHMgc2lkZWJhciB0aXRsZSAqL1xuICBmYWNldHNUaXRsZT86IHN0cmluZztcbiAgLyoqIGZpbHRlcnMgdGl0bGUsIG9uIHRvcCBvZiByZXN1bHRzICovXG4gIGZpbHRlcnNUaXRsZT86IHN0cmluZztcbiAgLyoqIGl0ZW0gcHJldmlldyBpcyBhZHZhbmNlZD8gKi9cbiAgYWR2YW5jZWRSZXN1bHRzPzogYm9vbGVhbjtcbiAgLyoqIGZhY2V0cyBjb2x1bW4gd2lkdGggKCUpICovXG4gIGZhY2V0c1dpZHRoUGVyY2VudGFnZT86IG51bWJlcjtcbiAgLyoqIHBhZ2UgZGVzY3JpcHRpb24gKi9cbiAgZGVzY3JpcHRpb24/OiB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBidXR0b25UZXh0OiBzdHJpbmc7XG4gICAgbGlua1RleHQ6IHN0cmluZztcbiAgfTtcbiAgLyoqIHJlc3VsdHMgY3NzIGdyaWQgMSwgMiwgMyAqL1xuICBncmlkPzogbnVtYmVyO1xuICBzb3J0PzogU2VhcmNoU29ydENvbmZpZztcbiAgcGFnaW5hdGlvbjogU2VhcmNoUGFnaW5hdGlvbkNvbmZpZztcbiAgaXRlbVByZXZpZXc/OiBTZWFyY2hJdGVtUHJldmlld0NvbmZpZztcbiAgZGlzYWJsZVNjcm9sbD86IGJvb2xlYW47XG4gIGZhbGxiYWNrOiBTZWFyY2hGYWxsYmFja0NvbmZpZztcbiAga286IFNlYXJjaEZhbGxiYWNrQ29uZmlnO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYUxheW91dFBvc3RzIGV4dGVuZHMgQ29uZmlnTXVydWNhTGF5b3V0IHtcbiAgLyoqIGlkICh1bmlxdWUpIHVzZWQgYnkgc2VhcmNoIHNlcnZpY2UgKi9cbiAgc2VhcmNoSWQ6IHN0cmluZztcbiAgLyoqIHJlc3VsdHMgcmVzb3VyY2UgcGF0aCAobGluaykgKi9cbiAgcmVzb3VyY2VQYXRoOiBzdHJpbmc7XG4gIC8qKiB0b3RhbCBwb3N0cyB0ZXh0ICovXG4gIHRvdGFsUmVzdWx0c1RleHQ6IHN0cmluZztcbiAgLyoqIHJlc3VsdHMgY3NzIGdyaWQgMSwgMiwgMyAqL1xuICBncmlkPzogbnVtYmVyO1xuICBzb3J0PzogU2VhcmNoU29ydENvbmZpZztcbiAgcGFnaW5hdGlvbjogU2VhcmNoUGFnaW5hdGlvbkNvbmZpZztcbiAgaXRlbVByZXZpZXc/OiBTZWFyY2hJdGVtUHJldmlld0NvbmZpZztcbiAgZmFsbGJhY2s6IFNlYXJjaEZhbGxiYWNrQ29uZmlnO1xuICBrbzogU2VhcmNoRmFsbGJhY2tDb25maWc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhTGF5b3V0QWR2YW5jZWRSZXN1bHRzIGV4dGVuZHMgQ29uZmlnTXVydWNhTGF5b3V0IHtcbiAgLyoqIGlkICh1bmlxdWUpIHVzZWQgYnkgc2VhcmNoIHNlcnZpY2UgKi9cbiAgc2VhcmNoSWQ6IHN0cmluZztcbiAgLyoqIHJlc3VsdHMgcmVzb3VyY2UgcGF0aCAobGluaykgKi9cbiAgcmVzb3VyY2VQYXRoOiBzdHJpbmc7XG4gIC8qKiB0b3RhbCByZXN1bHRzIHRleHQgKi9cbiAgdG90YWxSZXN1bHRzVGV4dDogc3RyaW5nO1xuICAvKiogZmlsdGVycyB0byBzaG93ICovXG4gIGZpbHRlcnM6IHtcbiAgICAvKiogZmlsdGVycyB0aXRsZSAqL1xuICAgIHRpdGxlOiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogZmlsdGVycyBsYWJlbHMgbWFwOiBmaWx0ZXJJZCA9PiBsYWJlbFxuICAgICAqIGZpbHRlciBtdXN0IGJlIGluIHRoaXMgbWFwIHRvIGJlIHNob3duIG9uIHBhZ2VcbiAgICAgKi9cbiAgICBsYWJlbHM6IHtcbiAgICAgIFtmaWx0ZXJJZDogc3RyaW5nXTogc3RyaW5nO1xuICAgIH07XG4gIH07XG4gIC8qKiByZXN1bHRzIGNzcyBncmlkIDEsIDIsIDMgKi9cbiAgZ3JpZD86IG51bWJlcjtcbiAgc29ydD86IFNlYXJjaFNvcnRDb25maWc7XG4gIHBhZ2luYXRpb246IFNlYXJjaFBhZ2luYXRpb25Db25maWc7XG4gIGl0ZW1QcmV2aWV3PzogU2VhcmNoSXRlbVByZXZpZXdDb25maWc7XG4gIGhpZ2hsaWdodHM/OiB7XG4gICAgaGFzVG9nZ2xlPzogYm9vbGVhbjtcbiAgICBoaWRkZW4/OiBib29sZWFuO1xuICB9O1xuICBmYWxsYmFjazogU2VhcmNoRmFsbGJhY2tDb25maWc7XG4gIGtvOiBTZWFyY2hGYWxsYmFja0NvbmZpZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FMYXlvdXRNYXAgZXh0ZW5kcyBDb25maWdNdXJ1Y2FMYXlvdXQge1xuICAvKiogcGFnZSBkZWZhdWx0IGRlc2NyaXB0aW9uICovXG4gIGRlZmF1bHRUZXh0OiBzdHJpbmc7XG59XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uNy1ib2lsZXJwbGF0ZS1tdXJ1Y2Evc3JjL2xpYi9jb25maWctdHlwZXMvbXVydWNhL3NlY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZWFkTW9yZURhdGEgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL3JlYWQtbW9yZS9yZWFkLW1vcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYVNlY3Rpb24ge1xuICAvKiogaWQgKHVuaXF1ZSkgKi9cbiAgaWQ6IHN0cmluZztcbiAgLyoqIHNlY3Rpb24gdGl0bGUgKi9cbiAgdGl0bGU/OiBzdHJpbmc7XG4gIC8qKiBjc3MgZ3JpZCB2YWx1ZSAxLCAyLCAzICovXG4gIGdyaWQ/OiBudW1iZXI7XG4gIC8qKiBzZWN0aW9uIG9wdGlvbnMgKi9cbiAgb3B0aW9ucz86IG9iamVjdDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FTbGlkZXJTZWN0aW9uIGV4dGVuZHMgQ29uZmlnTXVydWNhU2VjdGlvbiB7XG4gIHR5cGU6ICdzbGlkZXInO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYUNvbnRlbnRTZWN0aW9uIGV4dGVuZHMgQ29uZmlnTXVydWNhU2VjdGlvbiB7XG4gIHR5cGU6ICdjb250ZW50Jztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FIZXJvU2VjdGlvbiBleHRlbmRzIENvbmZpZ011cnVjYVNlY3Rpb24ge1xuICB0eXBlOiAnaGVybyc7XG4gIG9wdGlvbnM/OiB7XG4gICAgLyoqIGFkaXRpb25hbCBjc3MgY2xhc3NlcyAqL1xuICAgIGNsYXNzZXM/OiBzdHJpbmc7XG4gICAgLyoqIGhhcyBiYWNrZ3JvdW5kPyAqL1xuICAgIGJhY2tncm91bmQ/OiBib29sZWFuO1xuICAgIC8qKiBzZWFyY2ggaW5wdXQgZmllbGQgKi9cbiAgICBpbnB1dD86IHtcbiAgICAgIC8qKiBwbGFjZWhvbGRlciBsYWJlbCAqL1xuICAgICAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gICAgICAvKiogaWNvbiBpbnNpb2RlIHRoZSBmaWVsZCAqL1xuICAgICAgaWNvbj86IHN0cmluZztcbiAgICAgIC8qKiBwYXlsb2FkIHVzZWQgdG8gZGV0ZWN0IGV2ZW50ICovXG4gICAgICBwYXlsb2FkPzogc3RyaW5nO1xuICAgICAgLyoqIGlkIG9mIHRoZSBxdWVyeSB1c2VkIGZvciBxdWVyeVBhcmFtcyAqL1xuICAgICAgcXVlcnlJZD86IHN0cmluZztcbiAgICAgIC8qKiBhZGRpdGlvbmFsIHF1ZXJ5UGFyYW1zICovXG4gICAgICBhZGRpdGlvbmFsUXVlcnlQYXJhbXM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAgIH07XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhQnV0dG9uU2VjdGlvbiBleHRlbmRzIENvbmZpZ011cnVjYVNlY3Rpb24ge1xuICB0eXBlOiAnYnV0dG9uJztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FDb2xsZWN0aW9uU2VjdGlvbiBleHRlbmRzIENvbmZpZ011cnVjYVNlY3Rpb24ge1xuICB0eXBlOiAnY29sbGVjdGlvbic7XG4gIG9wdGlvbnM/OiB7XG4gICAgLyoqIGFkaXRpb25hbCBjc3MgY2xhc3NlcyAqL1xuICAgIGNsYXNzZXM/OiBzdHJpbmc7XG4gICAgaXRlbVByZXZpZXc/OiB7XG4gICAgICAvKiogdGV4dCBjaGFyYWN0ZXIgbGltaXQgKi9cbiAgICAgIGxpbWl0PzogbnVtYmVyO1xuICAgICAgLyoqIG5vIGh0bWwgdGFncz8gKi9cbiAgICAgIHN0cmlwdGFncz86IGJvb2xlYW47XG4gICAgICAvKiogbGluayB0YXJnZXQgPGEgdGFyZ2V0PVwie3RhcmdldH1cIj4gICovXG4gICAgICBsaW5rVGFyZ2V0PzogJ19ibGFuaycgfCAnX3NlbGYnIHwgJ19wYXJlbnQnIHwgJ190b3AnO1xuICAgIH07XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhQnJlYWRjcnVtYnNTZWN0aW9uIGV4dGVuZHMgQ29uZmlnTXVydWNhU2VjdGlvbiB7XG4gIHR5cGU6ICdicmVhZGNydW1icyc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhSW5mb0JveFNlY3Rpb24gZXh0ZW5kcyBDb25maWdNdXJ1Y2FTZWN0aW9uIHtcbiAgdHlwZTogJ2luZm8nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYVRleHRWaWV3ZXJTZWN0aW9uIGV4dGVuZHMgQ29uZmlnTXVydWNhU2VjdGlvbiB7XG4gIHR5cGU6ICd0ZXh0LXZpZXdlcic7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhUGFyYWxsZWxUZXh0Vmlld2VyU2VjdGlvbiBleHRlbmRzIENvbmZpZ011cnVjYVNlY3Rpb24ge1xuICB0eXBlOiAncGFyYWxsZWwtdGV4dC12aWV3ZXInO1xuICBvcHRpb25zPzoge1xuICAgIC8qKiBncmlkICovXG4gICAgZ3JpZD86IGFueTtcbiAgICAvKiogcGFuZWxzICovXG4gICAgcGFuZWxzPzogYW55O1xuICAgIC8qKiBzZWFyY2ggKi9cbiAgICBzZWFyY2hJZD86IGFueSxcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FUaXRsZVNlY3Rpb24gZXh0ZW5kcyBDb25maWdNdXJ1Y2FTZWN0aW9uIHtcbiAgdHlwZTogJ3RpdGxlJztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FJbWFnZVZpZXdlclNlY3Rpb24gZXh0ZW5kcyBDb25maWdNdXJ1Y2FTZWN0aW9uIHtcbiAgdHlwZTogJ3ZpZXdlcic7XG4gIG9wdGlvbnM/OiB7XG4gICAgLyoqIGhhcyBpbWFnZSB2aWV3ZXIgdG9vbHM/ICovXG4gICAgdG9vbHM6IGJvb2xlYW47XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhVGFic1NlY3Rpb24gZXh0ZW5kcyBDb25maWdNdXJ1Y2FTZWN0aW9uIHtcbiAgdHlwZTogJ3RhYnMnO1xuICBvcHRpb25zPzoge1xuICAgIC8qKiBzZWN0aW9ucyBvZiB0YWJzIChlczogbWV0YWRhdGEtZGF0b3MtYmlibGlvZ3JhZmljb3MpIHRoYXQgd2Ugd2FudCB0byBwcmludCBhcyBQREYgKi9cbiAgICB0YWJzQ29udGVudHM/OiBzdHJpbmdbXTtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYUl0ZW1QcmV2aWV3U2VjdGlvbiBleHRlbmRzIENvbmZpZ011cnVjYVNlY3Rpb24ge1xuICB0eXBlOiAncHJldmlldyc7XG4gIG9wdGlvbnM/OiB7XG4gICAgLyoqIGFkaXRpb25hbCBjc3MgY2xhc3NlcyAqL1xuICAgIGNsYXNzZXM/OiBzdHJpbmc7XG4gICAgaXRlbVByZXZpZXc/OiB7XG4gICAgICAvKiogdGV4dCBjaGFyYWN0ZXIgbGltaXQgKi9cbiAgICAgIGxpbWl0PzogbnVtYmVyO1xuICAgICAgLyoqIG5vIGh0bWwgdGFncz8gKi9cbiAgICAgIHN0cmlwdGFncz86IGJvb2xlYW47XG4gICAgfTtcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FNZXRhZGF0YVNlY3Rpb24gZXh0ZW5kcyBDb25maWdNdXJ1Y2FTZWN0aW9uIHtcbiAgdHlwZTogJ21ldGFkYXRhJztcbiAgLyoqIHJlYWQgbW9yZSB0b2dnbGUgZGF0YSAqL1xuICByZWFkbW9yZT86IFJlYWRNb3JlRGF0YTtcbiAgb3B0aW9ucz86IHtcbiAgICAvKiogaGlkZSBtZXRhZGF0YSBsYWJlbHM/ICovXG4gICAgaGlkZUxhYmVsczogYm9vbGVhbjtcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FHYWxsZXJ5U2VjdGlvbiBleHRlbmRzIENvbmZpZ011cnVjYVNlY3Rpb24ge1xuICB0eXBlOiAnZ2FsbGVyeSc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhTWV0YWRhdGFEeW5hbWljU2VjdGlvbiBleHRlbmRzIENvbmZpZ011cnVjYVNlY3Rpb24ge1xuICB0eXBlOiAnbWV0YWRhdGEtZHluYW1pYydcbiAgb3B0aW9ucz86IHtcbiAgICBhY2NvcmRpb246IGJvb2xlYW4sXG4gICAgZHluYW1pYzogYm9vbGVhblxuICB9XG59XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uNy1ib2lsZXJwbGF0ZS1tdXJ1Y2Evc3JjL2xpYi9jb25maWctdHlwZXMvbXVydWNhL3NlY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZWFkTW9yZURhdGEgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL3JlYWQtbW9yZS9yZWFkLW1vcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYVNlY3Rpb24ge1xuICAvKiogaWQgKHVuaXF1ZSkgKi9cbiAgaWQ6IHN0cmluZztcbiAgLyoqIHNlY3Rpb24gdGl0bGUgKi9cbiAgdGl0bGU/OiBzdHJpbmc7XG4gIC8qKiBjc3MgZ3JpZCB2YWx1ZSAxLCAyLCAzICovXG4gIGdyaWQ/OiBudW1iZXI7XG4gIC8qKiBzZWN0aW9uIG9wdGlvbnMgKi9cbiAgb3B0aW9ucz86IG9iamVjdDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FTbGlkZXJTZWN0aW9uIGV4dGVuZHMgQ29uZmlnTXVydWNhU2VjdGlvbiB7XG4gIHR5cGU6ICdzbGlkZXInO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYUNvbnRlbnRTZWN0aW9uIGV4dGVuZHMgQ29uZmlnTXVydWNhU2VjdGlvbiB7XG4gIHR5cGU6ICdjb250ZW50Jztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FIZXJvU2VjdGlvbiBleHRlbmRzIENvbmZpZ011cnVjYVNlY3Rpb24ge1xuICB0eXBlOiAnaGVybyc7XG4gIG9wdGlvbnM/OiB7XG4gICAgLyoqIGFkaXRpb25hbCBjc3MgY2xhc3NlcyAqL1xuICAgIGNsYXNzZXM/OiBzdHJpbmc7XG4gICAgLyoqIGhhcyBiYWNrZ3JvdW5kPyAqL1xuICAgIGJhY2tncm91bmQ/OiBib29sZWFuO1xuICAgIC8qKiBzZWFyY2ggaW5wdXQgZmllbGQgKi9cbiAgICBpbnB1dD86IHtcbiAgICAgIC8qKiBwbGFjZWhvbGRlciBsYWJlbCAqL1xuICAgICAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gICAgICAvKiogaWNvbiBpbnNpb2RlIHRoZSBmaWVsZCAqL1xuICAgICAgaWNvbj86IHN0cmluZztcbiAgICAgIC8qKiBwYXlsb2FkIHVzZWQgdG8gZGV0ZWN0IGV2ZW50ICovXG4gICAgICBwYXlsb2FkPzogc3RyaW5nO1xuICAgICAgLyoqIGlkIG9mIHRoZSBxdWVyeSB1c2VkIGZvciBxdWVyeVBhcmFtcyAqL1xuICAgICAgcXVlcnlJZD86IHN0cmluZztcbiAgICAgIC8qKiBhZGRpdGlvbmFsIHF1ZXJ5UGFyYW1zICovXG4gICAgICBhZGRpdGlvbmFsUXVlcnlQYXJhbXM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAgIH07XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhQnV0dG9uU2VjdGlvbiBleHRlbmRzIENvbmZpZ011cnVjYVNlY3Rpb24ge1xuICB0eXBlOiAnYnV0dG9uJztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FDb2xsZWN0aW9uU2VjdGlvbiBleHRlbmRzIENvbmZpZ011cnVjYVNlY3Rpb24ge1xuICB0eXBlOiAnY29sbGVjdGlvbic7XG4gIG9wdGlvbnM/OiB7XG4gICAgLyoqIGFkaXRpb25hbCBjc3MgY2xhc3NlcyAqL1xuICAgIGNsYXNzZXM/OiBzdHJpbmc7XG4gICAgaXRlbVByZXZpZXc/OiB7XG4gICAgICAvKiogdGV4dCBjaGFyYWN0ZXIgbGltaXQgKi9cbiAgICAgIGxpbWl0PzogbnVtYmVyO1xuICAgICAgLyoqIG5vIGh0bWwgdGFncz8gKi9cbiAgICAgIHN0cmlwdGFncz86IGJvb2xlYW47XG4gICAgICAvKiogbGluayB0YXJnZXQgPGEgdGFyZ2V0PVwie3RhcmdldH1cIj4gICovXG4gICAgICBsaW5rVGFyZ2V0PzogJ19ibGFuaycgfCAnX3NlbGYnIHwgJ19wYXJlbnQnIHwgJ190b3AnO1xuICAgIH07XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhQnJlYWRjcnVtYnNTZWN0aW9uIGV4dGVuZHMgQ29uZmlnTXVydWNhU2VjdGlvbiB7XG4gIHR5cGU6ICdicmVhZGNydW1icyc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhSW5mb0JveFNlY3Rpb24gZXh0ZW5kcyBDb25maWdNdXJ1Y2FTZWN0aW9uIHtcbiAgdHlwZTogJ2luZm8nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYVRleHRWaWV3ZXJTZWN0aW9uIGV4dGVuZHMgQ29uZmlnTXVydWNhU2VjdGlvbiB7XG4gIHR5cGU6ICd0ZXh0LXZpZXdlcic7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhRW1iZWRkZWRDb250ZW50U2VjdGlvbiBleHRlbmRzIENvbmZpZ011cnVjYVNlY3Rpb24ge1xuICB0eXBlOiAnZW1iZWRkZWQtY29udGVudCc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhUGFyYWxsZWxUZXh0Vmlld2VyU2VjdGlvbiBleHRlbmRzIENvbmZpZ011cnVjYVNlY3Rpb24ge1xuICB0eXBlOiAncGFyYWxsZWwtdGV4dC12aWV3ZXInO1xuICBvcHRpb25zPzoge1xuICAgIC8qKiBncmlkICovXG4gICAgZ3JpZD86IGFueTtcbiAgICAvKiogcGFuZWxzICovXG4gICAgcGFuZWxzPzogYW55O1xuICAgIC8qKiBzZWFyY2ggKi9cbiAgICBzZWFyY2hJZD86IGFueSxcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FUaXRsZVNlY3Rpb24gZXh0ZW5kcyBDb25maWdNdXJ1Y2FTZWN0aW9uIHtcbiAgdHlwZTogJ3RpdGxlJztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FJbWFnZVZpZXdlclNlY3Rpb24gZXh0ZW5kcyBDb25maWdNdXJ1Y2FTZWN0aW9uIHtcbiAgdHlwZTogJ3ZpZXdlcic7XG4gIG9wdGlvbnM/OiB7XG4gICAgLyoqIGhhcyBpbWFnZSB2aWV3ZXIgdG9vbHM/ICovXG4gICAgdG9vbHM6IGJvb2xlYW47XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhVGFic1NlY3Rpb24gZXh0ZW5kcyBDb25maWdNdXJ1Y2FTZWN0aW9uIHtcbiAgdHlwZTogJ3RhYnMnO1xuICBvcHRpb25zPzoge1xuICAgIC8qKiBzZWN0aW9ucyBvZiB0YWJzIChlczogbWV0YWRhdGEtZGF0b3MtYmlibGlvZ3JhZmljb3MpIHRoYXQgd2Ugd2FudCB0byBwcmludCBhcyBQREYgKi9cbiAgICB0YWJzQ29udGVudHM/OiBzdHJpbmdbXTtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ011cnVjYUl0ZW1QcmV2aWV3U2VjdGlvbiBleHRlbmRzIENvbmZpZ011cnVjYVNlY3Rpb24ge1xuICB0eXBlOiAncHJldmlldyc7XG4gIG9wdGlvbnM/OiB7XG4gICAgLyoqIGFkaXRpb25hbCBjc3MgY2xhc3NlcyAqL1xuICAgIGNsYXNzZXM/OiBzdHJpbmc7XG4gICAgaXRlbVByZXZpZXc/OiB7XG4gICAgICAvKiogdGV4dCBjaGFyYWN0ZXIgbGltaXQgKi9cbiAgICAgIGxpbWl0PzogbnVtYmVyO1xuICAgICAgLyoqIG5vIGh0bWwgdGFncz8gKi9cbiAgICAgIHN0cmlwdGFncz86IGJvb2xlYW47XG4gICAgfTtcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FNZXRhZGF0YVNlY3Rpb24gZXh0ZW5kcyBDb25maWdNdXJ1Y2FTZWN0aW9uIHtcbiAgdHlwZTogJ21ldGFkYXRhJztcbiAgLyoqIHJlYWQgbW9yZSB0b2dnbGUgZGF0YSAqL1xuICByZWFkbW9yZT86IFJlYWRNb3JlRGF0YTtcbiAgb3B0aW9ucz86IHtcbiAgICAvKiogaGlkZSBtZXRhZGF0YSBsYWJlbHM/ICovXG4gICAgaGlkZUxhYmVsczogYm9vbGVhbjtcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNdXJ1Y2FHYWxsZXJ5U2VjdGlvbiBleHRlbmRzIENvbmZpZ011cnVjYVNlY3Rpb24ge1xuICB0eXBlOiAnZ2FsbGVyeSc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTXVydWNhTWV0YWRhdGFEeW5hbWljU2VjdGlvbiBleHRlbmRzIENvbmZpZ011cnVjYVNlY3Rpb24ge1xuICB0eXBlOiAnbWV0YWRhdGEtZHluYW1pYydcbiAgb3B0aW9ucz86IHtcbiAgICBhY2NvcmRpb246IGJvb2xlYW4sXG4gICAgZHluYW1pYzogYm9vbGVhblxuICB9XG59XG4iXX0=
@@ -0,0 +1,8 @@
1
+ import { DataSource } from '@net7/core';
2
+ export class MrEmbeddedContentDS extends DataSource {
3
+ transform(data) {
4
+ const iframe = `<iframe src="${data}" width="100%" height="600px"></iframe>`;
5
+ return iframe;
6
+ }
7
+ }
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1iZWRkZWQtY29udGVudC5kcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLW11cnVjYS9zcmMvbGliL2RhdGEtc291cmNlcy9lbWJlZGRlZC1jb250ZW50LmRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFeEMsTUFBTSxPQUFPLG1CQUFvQixTQUFRLFVBQVU7SUFHdkMsU0FBUyxDQUFDLElBQVM7UUFDM0IsTUFBTSxNQUFNLEdBQUcsZ0JBQWdCLElBQUkseUNBQXlDLENBQUM7UUFDN0UsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0YVNvdXJjZSB9IGZyb20gJ0BuZXQ3L2NvcmUnO1xuXG5leHBvcnQgY2xhc3MgTXJFbWJlZGRlZENvbnRlbnREUyBleHRlbmRzIERhdGFTb3VyY2Uge1xuICBpZDogc3RyaW5nO1xuXG4gIHByb3RlY3RlZCB0cmFuc2Zvcm0oZGF0YTogYW55KTogYW55IHtcbiAgICBjb25zdCBpZnJhbWUgPSBgPGlmcmFtZSBzcmM9XCIke2RhdGF9XCIgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiNjAwcHhcIj48L2lmcmFtZT5gO1xuICAgIHJldHVybiBpZnJhbWU7XG4gIH1cbn1cbiJdfQ==
@@ -22,6 +22,7 @@ export * from './gallery.ds';
22
22
  export * from './network.ds';
23
23
  export * from './network-resource.ds';
24
24
  export * from './parallel-text-viewer.ds';
25
+ export * from './embedded-content.ds';
25
26
  // search layout
26
27
  export * from './search/search-page-title.ds';
27
28
  export * from './search/search-results-title.ds';
@@ -38,4 +39,4 @@ export * from './search/advanced-search-tags.ds';
38
39
  export * from './metadata-dynamic.ds';
39
40
  // image-viewer-iiif
40
41
  export * from './image-viewer-iiif.ds';
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uNy1ib2lsZXJwbGF0ZS1tdXJ1Y2Evc3JjL2xpYi9kYXRhLXNvdXJjZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxnQkFBZ0I7QUFDaEIsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGdCQUFnQjtBQUNoQixjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGVBQWU7QUFDZixjQUFjLDZCQUE2QixDQUFDO0FBQzVDLHlCQUF5QjtBQUN6QixjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELG1CQUFtQjtBQUNuQixjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLG9CQUFvQjtBQUNwQixjQUFjLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9icmVhZGNydW1icy5kcyc7XG5leHBvcnQgKiBmcm9tICcuL2J1dHRvbi5kcyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbGxlY3Rpb24uZHMnO1xuZXhwb3J0ICogZnJvbSAnLi9jb250ZW50LmRzJztcbmV4cG9ydCAqIGZyb20gJy4vZmlsdGVycy5kcyc7XG5leHBvcnQgKiBmcm9tICcuL2hlcm8uZHMnO1xuZXhwb3J0ICogZnJvbSAnLi9pbWFnZS12aWV3ZXIuZHMnO1xuZXhwb3J0ICogZnJvbSAnLi9pbWFnZS12aWV3ZXItdG9vbHMuZHMnO1xuZXhwb3J0ICogZnJvbSAnLi9pbWFnZS12aWV3ZXItb3ZlcmxheS1kZXRhaWxzLmRzJztcbmV4cG9ydCAqIGZyb20gJy4vaW5mby1ib3guZHMnO1xuZXhwb3J0ICogZnJvbSAnLi9pbm5lci10aXRsZS5kcyc7XG5leHBvcnQgKiBmcm9tICcuL2l0ZW0tcHJldmlldy5kcyc7XG5leHBvcnQgKiBmcm9tICcuL2l0ZW0tcHJldmlld3MuZHMnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXAuZHMnO1xuZXhwb3J0ICogZnJvbSAnLi9tZXRhZGF0YS5kcyc7XG5leHBvcnQgKiBmcm9tICcuL25hdi5kcyc7XG5leHBvcnQgKiBmcm9tICcuL3Jlc291cmNlLXRhYnMuZHMnO1xuZXhwb3J0ICogZnJvbSAnLi90ZXh0LXZpZXdlci5kcyc7XG5leHBvcnQgKiBmcm9tICcuL3RpbWVsaW5lLmRzJztcbmV4cG9ydCAqIGZyb20gJy4veWVhci1oZWFkZXIuZHMnO1xuZXhwb3J0ICogZnJvbSAnLi9nYWxsZXJ5LmRzJztcbmV4cG9ydCAqIGZyb20gJy4vbmV0d29yay5kcyc7XG5leHBvcnQgKiBmcm9tICcuL25ldHdvcmstcmVzb3VyY2UuZHMnO1xuZXhwb3J0ICogZnJvbSAnLi9wYXJhbGxlbC10ZXh0LXZpZXdlci5kcyc7XG4vLyBzZWFyY2ggbGF5b3V0XG5leHBvcnQgKiBmcm9tICcuL3NlYXJjaC9zZWFyY2gtcGFnZS10aXRsZS5kcyc7XG5leHBvcnQgKiBmcm9tICcuL3NlYXJjaC9zZWFyY2gtcmVzdWx0cy10aXRsZS5kcyc7XG5leHBvcnQgKiBmcm9tICcuL3NlYXJjaC9zZWFyY2gtcmVzdWx0cy5kcyc7XG5leHBvcnQgKiBmcm9tICcuL3NlYXJjaC9zZWFyY2gtdGFncy5kcyc7XG5leHBvcnQgKiBmcm9tICcuL3NlYXJjaC9zZWFyY2gtcGFnZS1kZXNjcmlwdGlvbi5kcyc7XG4vLyBzdGF0aWMgbGF5b3V0XG5leHBvcnQgKiBmcm9tICcuL3N0YXRpYy1tZXRhZGF0YS5kcyc7XG4vLyBmb3JtIHdyYXBwZXJcbmV4cG9ydCAqIGZyb20gJy4vZm9ybS13cmFwcGVyLWFjY29yZGlvbi5kcyc7XG4vLyBhZHZhbmNlZCBzZWFyY2ggbGF5b3V0XG5leHBvcnQgKiBmcm9tICcuL3NlYXJjaC9hZHZhbmNlZC1zZWFyY2gtdGFncy5kcyc7XG4vLyBtZXRhZGF0YS1keW5hbWljXG5leHBvcnQgKiBmcm9tICcuL21ldGFkYXRhLWR5bmFtaWMuZHMnO1xuLy8gaW1hZ2Utdmlld2VyLWlpaWZcbmV4cG9ydCAqIGZyb20gJy4vaW1hZ2Utdmlld2VyLWlpaWYuZHMnO1xuIl19
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uNy1ib2lsZXJwbGF0ZS1tdXJ1Y2Evc3JjL2xpYi9kYXRhLXNvdXJjZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGdCQUFnQjtBQUNoQixjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsZ0JBQWdCO0FBQ2hCLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsZUFBZTtBQUNmLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMseUJBQXlCO0FBQ3pCLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsbUJBQW1CO0FBQ25CLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsb0JBQW9CO0FBQ3BCLGNBQWMsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2JyZWFkY3J1bWJzLmRzJztcbmV4cG9ydCAqIGZyb20gJy4vYnV0dG9uLmRzJztcbmV4cG9ydCAqIGZyb20gJy4vY29sbGVjdGlvbi5kcyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRlbnQuZHMnO1xuZXhwb3J0ICogZnJvbSAnLi9maWx0ZXJzLmRzJztcbmV4cG9ydCAqIGZyb20gJy4vaGVyby5kcyc7XG5leHBvcnQgKiBmcm9tICcuL2ltYWdlLXZpZXdlci5kcyc7XG5leHBvcnQgKiBmcm9tICcuL2ltYWdlLXZpZXdlci10b29scy5kcyc7XG5leHBvcnQgKiBmcm9tICcuL2ltYWdlLXZpZXdlci1vdmVybGF5LWRldGFpbHMuZHMnO1xuZXhwb3J0ICogZnJvbSAnLi9pbmZvLWJveC5kcyc7XG5leHBvcnQgKiBmcm9tICcuL2lubmVyLXRpdGxlLmRzJztcbmV4cG9ydCAqIGZyb20gJy4vaXRlbS1wcmV2aWV3LmRzJztcbmV4cG9ydCAqIGZyb20gJy4vaXRlbS1wcmV2aWV3cy5kcyc7XG5leHBvcnQgKiBmcm9tICcuL21hcC5kcyc7XG5leHBvcnQgKiBmcm9tICcuL21ldGFkYXRhLmRzJztcbmV4cG9ydCAqIGZyb20gJy4vbmF2LmRzJztcbmV4cG9ydCAqIGZyb20gJy4vcmVzb3VyY2UtdGFicy5kcyc7XG5leHBvcnQgKiBmcm9tICcuL3RleHQtdmlld2VyLmRzJztcbmV4cG9ydCAqIGZyb20gJy4vdGltZWxpbmUuZHMnO1xuZXhwb3J0ICogZnJvbSAnLi95ZWFyLWhlYWRlci5kcyc7XG5leHBvcnQgKiBmcm9tICcuL2dhbGxlcnkuZHMnO1xuZXhwb3J0ICogZnJvbSAnLi9uZXR3b3JrLmRzJztcbmV4cG9ydCAqIGZyb20gJy4vbmV0d29yay1yZXNvdXJjZS5kcyc7XG5leHBvcnQgKiBmcm9tICcuL3BhcmFsbGVsLXRleHQtdmlld2VyLmRzJztcbmV4cG9ydCAqIGZyb20gJy4vZW1iZWRkZWQtY29udGVudC5kcyc7XG4vLyBzZWFyY2ggbGF5b3V0XG5leHBvcnQgKiBmcm9tICcuL3NlYXJjaC9zZWFyY2gtcGFnZS10aXRsZS5kcyc7XG5leHBvcnQgKiBmcm9tICcuL3NlYXJjaC9zZWFyY2gtcmVzdWx0cy10aXRsZS5kcyc7XG5leHBvcnQgKiBmcm9tICcuL3NlYXJjaC9zZWFyY2gtcmVzdWx0cy5kcyc7XG5leHBvcnQgKiBmcm9tICcuL3NlYXJjaC9zZWFyY2gtdGFncy5kcyc7XG5leHBvcnQgKiBmcm9tICcuL3NlYXJjaC9zZWFyY2gtcGFnZS1kZXNjcmlwdGlvbi5kcyc7XG4vLyBzdGF0aWMgbGF5b3V0XG5leHBvcnQgKiBmcm9tICcuL3N0YXRpYy1tZXRhZGF0YS5kcyc7XG4vLyBmb3JtIHdyYXBwZXJcbmV4cG9ydCAqIGZyb20gJy4vZm9ybS13cmFwcGVyLWFjY29yZGlvbi5kcyc7XG4vLyBhZHZhbmNlZCBzZWFyY2ggbGF5b3V0XG5leHBvcnQgKiBmcm9tICcuL3NlYXJjaC9hZHZhbmNlZC1zZWFyY2gtdGFncy5kcyc7XG4vLyBtZXRhZGF0YS1keW5hbWljXG5leHBvcnQgKiBmcm9tICcuL21ldGFkYXRhLWR5bmFtaWMuZHMnO1xuLy8gaW1hZ2Utdmlld2VyLWlpaWZcbmV4cG9ydCAqIGZyb20gJy4vaW1hZ2Utdmlld2VyLWlpaWYuZHMnO1xuIl19
@@ -131,11 +131,10 @@ export class MrParallelTextViewerDS extends DataSource {
131
131
  const mainDoc = data.docs.find((doc) => doc.id === 'mainDoc');
132
132
  if (mainDoc) {
133
133
  const xmlQueryUrl = `${searchApi.url}?resource-id=${searchApi['resource-id']}&searchId=${searchId}&xml=${mainDoc.xml}&${params.toString()}`;
134
- mainDoc.url = xmlQueryUrl;
135
- mainDoc.rootPath = 'api/mrcparts';
134
+ data.mainDoc.url = xmlQueryUrl;
135
+ data.mainDoc.rootPath = 'api/mrcparts';
136
136
  }
137
137
  }
138
- // ..
139
138
  }
140
139
  document.addEventListener('pb-end-update', (ev) => {
141
140
  this.scrollElementsIntoView(ev.detail, 'hq', '#transcription-view');
@@ -393,4 +392,4 @@ export class MrParallelTextViewerDS extends DataSource {
393
392
  }, 300);
394
393
  }
395
394
  }
396
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYWxsZWwtdGV4dC12aWV3ZXIuZHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uNy1ib2lsZXJwbGF0ZS1tdXJ1Y2Evc3JjL2xpYi9kYXRhLXNvdXJjZXMvcGFyYWxsZWwtdGV4dC12aWV3ZXIuZHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNkRBQTZEO0FBQzdELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFeEMsTUFBTSxPQUFPLHNCQUF1QixTQUFRLFVBQVU7SUFHcEQsOEVBQThFO0lBQzlFLHlFQUF5RTtJQUMvRCxTQUFTLENBQUMsSUFBUztRQUMzQixJQUFJLENBQUMsSUFBSTtZQUFFLE9BQU8sSUFBSSxDQUFDO1FBRXZCOzs7Ozs7OztZQVFJO1FBQ0osSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbkIsNEJBQTRCO1lBQzFCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksT0FBTyxJQUFJLENBQUMsVUFBVSxLQUFLLFFBQVEsRUFBRSxDQUFDO29CQUM1RCxJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztnQkFDdkIsQ0FBQztnQkFDRCxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7b0JBQ25ELElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsS0FBSyxRQUFRLEVBQUUsQ0FBQzt3QkFDdEUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7b0JBQzVCLENBQUM7b0JBQ0QsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJ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O09BRUc7SUFDSCxvQkFBb0IsQ0FBQyxHQUFXO1FBQzlCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxNQUFNLFFBQVEsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUN0QyxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsaUVBQWlFLENBQUMsQ0FBQztZQUUzRyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO2dCQUM5QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLGFBQWEsQ0FBQyxJQUFJLFFBQVEsRUFBRSxDQUFDLENBQUM7Z0JBQzlELElBQUksTUFBTSxFQUFFLENBQUM7b0JBQ1YsTUFBc0IsQ0FBQyxjQUFjLENBQUMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO29CQUNoRixPQUFPLElBQUksQ0FBQztnQkFDZCxDQUFDO2dCQUNELE9BQU8sS0FBSyxDQUFDO1lBQ2YsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDVixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBpbXBvcnQgeyBQYXJhbGxlbFRleHRWaWV3ZXJEYXRhIH0gZnJvbSAnQG5ldDcvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBEYXRhU291cmNlIH0gZnJvbSAnQG5ldDcvY29yZSc7XG5cbmV4cG9ydCBjbGFzcyBNclBhcmFsbGVsVGV4dFZpZXdlckRTIGV4dGVuZHMgRGF0YVNvdXJjZSB7XG4gIGlkOiBzdHJpbmc7XG5cbiAgLy8gcHJvdGVjdGVkIHRyYW5zZm9ybShkYXRhOiBQYXJhbGxlbFRleHRWaWV3ZXJEYXRhKTogUGFyYWxsZWxUZXh0Vmlld2VyRGF0YSB7XG4gIC8vIF5eXl5eXl5eXl5eXl5zZSB2YSBidWlsZGFyZSBjb21wb25lbnRzIC0tLSAxNy0xMi0yMDI1Xl5eXl5eXl5eXl5eXl5eXl5cbiAgcHJvdGVjdGVkIHRyYW5zZm9ybShkYXRhOiBhbnkpOiBhbnkge1xuICAgIGlmICghZGF0YSkgcmV0dXJuIG51bGw7XG5cbiAgICAvKlxuICAgIGlmICh0aGlzLm9wdGlvbnMuZmFjc2ltaWxlT3B0aW9ucyAmJiBkYXRhLmZhY3NpbWlsZSkge1xuICAgICAgaWYgKCFkYXRhLmZhY3NpbWlsZS5vcHRpb25zKSB7XG4gICAgICAgIGRhdGEuZmFjc2ltaWxlLm9wdGlvbnMgPSB7fTtcbiAgICAgIH1cbiAgICAgIE9iamVjdC5rZXlzKHRoaXMub3B0aW9ucy5mYWNzaW1pbGVPcHRpb25zKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgZGF0YS5mYWNzaW1pbGUub3B0aW9uc1trZXldID0gdGhpcy5vcHRpb25zLmZhY3NpbWlsZU9wdGlvbnNba2V5XTtcbiAgICAgIH0pO1xuICAgIH0gKi9cbiAgICBpZiAodGhpcy5vcHRpb25zKSB7XG4gICAgLy8gR2VzdGlvbmUgZGVsbGUgbGliT3B0aW9uc1xuICAgICAgaWYgKHRoaXMub3B0aW9ucy5saWJPcHRpb25zKSB7XG4gICAgICAgIGlmICghZGF0YS5saWJPcHRpb25zIHx8IHR5cGVvZiBkYXRhLmxpYk9wdGlvbnMgIT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgZGF0YS5saWJPcHRpb25zID0ge307XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmtleXModGhpcy5vcHRpb25zLmxpYk9wdGlvbnMpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICAgIGlmICghZGF0YS5saWJPcHRpb25zW2tleV0gfHwgdHlwZW9mIGRhdGEubGliT3B0aW9uc1trZXldICE9PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgZGF0YS5saWJPcHRpb25zW2tleV0gPSB7fTtcbiAgICAgICAgICB9XG4gICAgICAgICAgT2JqZWN0LmtleXModGhpcy5vcHRpb25zLmxpYk9wdGlvbnNba2V5XSkuZm9yRWFjaCgoc3ViS2V5KSA9PiB7XG4gICAgICAgICAgICBkYXRhLmxpYk9wdGlvbnNba2V5XVtzdWJLZXldID0gdGhpcy5vcHRpb25zLmxpYk9wdGlvbnNba2V5XVtzdWJLZXldO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgLy8gRGVidWcgbGliT3B0aW9uc1xuICAgICAgLyogICAgICAgY29uc29sZS5sb2coJyBERUJVRyBsaWJPcHRpb25zOicsIHtcbiAgICAgICAgJ3RoaXMub3B0aW9ucy5saWJPcHRpb25zJzogdGhpcy5vcHRpb25zLmxpYk9wdGlvbnMsXG4gICAgICAgICdkYXRhLmxpYk9wdGlvbnMnOiBkYXRhLmxpYk9wdGlvbnMsXG4gICAgICAgICdkYXRhLmxpYk9wdGlvbnMucGJQYWdlJzogZGF0YS5saWJPcHRpb25zLnBiUGFnZSxcbiAgICAgICAgJ3VybElnbm9yZSc6IGRhdGEubGliT3B0aW9ucy5wYlBhZ2U/LnVybElnbm9yZVxuICAgICAgfSk7ICovXG4gICAgICB9XG4gICAgICAvLyBHZXN0aW9uZSBkZWxsYSBncmlkXG4gICAgICBpZiAodGhpcy5vcHRpb25zLmdyaWQpIHtcbiAgICAgICAgZGF0YS5ncmlkID0gdGhpcy5vcHRpb25zLmdyaWQ7XG4gICAgICB9XG4gICAgICAvLyBHZXN0aW9uZSBkZWkgcGFuZWxzXG4gICAgICBpZiAodGhpcy5vcHRpb25zLnBhbmVscykge1xuICAgICAgICB0aGlzLm9wdGlvbnMucGFuZWxzLmZvckVhY2goKHBhbmVsUHJvcGVydGllcykgPT4ge1xuICAgICAgICAgIGNvbnN0IHBhbmVsSW5kZXggPSBkYXRhLnBhbmVscy5maW5kSW5kZXgoXG4gICAgICAgICAgICAocGFuZWwpID0+IHBhbmVsLmlkID09PSBwYW5lbFByb3BlcnRpZXMuaWRcbiAgICAgICAgICApO1xuXG4gICAgICAgICAgaWYgKHBhbmVsSW5kZXggIT09IC0xKSB7XG4gICAgICAgICAgICBkYXRhLnBhbmVsc1twYW5lbEluZGV4XSA9IHtcbiAgICAgICAgICAgICAgLi4uZGF0YS5wYW5lbHNbcGFuZWxJbmRleF0sXG4gICAgICAgICAgICAgIC4uLnBhbmVsUHJvcGVydGllc1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgICBjb25zdCB7XG4gICAgICBlbmFibGVDbGlja09uRW50aXRpZXMsIHRvZ2dsZUNvbHVtbixcbiAgICAgIHNlYXJjaElkLFxuICAgICAgc2VhcmNoQXBpXG4gICAgfSA9IHRoaXMub3B0aW9ucyB8fCB7fTtcbiAgICBkYXRhLnRvZ2dsZUNvbHVtbiA9IHRvZ2dsZUNvbHVtbjtcbiAgICAvLyBmb3JjZSB0ZWkgcHVibGlzaGVyIGVuZHBvaW50IHZhbHVlXG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcbiAgICAgICdwYi1wYWdlLXJlYWR5JyxcbiAgICAgIChldjogQ3VzdG9tRXZlbnQpID0+IHtcbiAgICAgICAgY29uc3QgeyBkZXRhaWwgfSA9IGV2O1xuICAgICAgICBkZXRhaWwuZW5kcG9pbnQgPSBkYXRhLmVuZHBvaW50O1xuICAgICAgfSxcbiAgICAgIHsgb25jZTogdHJ1ZSB9XG4gICAgKTtcblxuICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXMoZG9jdW1lbnQubG9jYXRpb24uc2VhcmNoKTtcbiAgICAvLyBjb25zdCBpZCA9IHBhcmFtcy5nZXQoJ2lkJyk7XG5cbiAgICB0aGlzLnNldHVwVmlld0NsaWNrTGlzdGVuZXJzKCk7XG5cbiAgICAvKiAgICAgaWYgKGRhdGEuZG9jc1swXT8udmlldyA9PT0gJ3BhZ2UnICYmIGlkKSB7XG4gICAgICBkYXRhLmRvY3NbMF0udmlldyA9ICdkaXYnO1xuICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcbiAgICAgICAgJ3BiLWVuZC11cGRhdGUnLFxuICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBkb2N1bWVudC5kaXNwYXRjaEV2ZW50KFxuICAgICAgICAgICAgICBuZXcgQ3VzdG9tRXZlbnQoJ3BiLXRvZ2dsZScsIHtcbiAgICAgICAgICAgICAgICBkZXRhaWw6IHtcbiAgICAgICAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgdmlldzogJ3BhZ2UnLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIGFjdGlvbjogJ3JlZnJlc2gnLFxuICAgICAgICAgICAgICAgICAga2V5OiAndHJhbnNjcmlwdGlvbicsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBkb2N1bWVudC5kaXNwYXRjaEV2ZW50KFxuICAgICAgICAgICAgICBuZXcgQ3VzdG9tRXZlbnQoJ3BiLXRvZ2dsZScsIHtcbiAgICAgICAgICAgICAgICBkZXRhaWw6IHtcbiAgICAgICAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgdmlldzogJ3NpbmdsZScsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgYWN0aW9uOiAncmVmcmVzaCcsXG4gICAgICAgICAgICAgICAgICBrZXk6ICdhZGRDaGFubmVsJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGRvY3VtZW50LmRpc3BhdGNoRXZlbnQoXG4gICAgICAgICAgICAgIG5ldyBDdXN0b21FdmVudCgncGItdG9nZ2xlJywge1xuICAgICAgICAgICAgICAgIGRldGFpbDoge1xuICAgICAgICAgICAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgICAgICAgICAgICB2aWV3OiAnc2luZ2xlJyxcbiAgICAgICAgICAgICAgICAgICAgaWQ6ICcnLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIGFjdGlvbjogJ3JlZnJlc2gnLFxuICAgICAgICAgICAgICAgICAga2V5OiAnaW5kZXgnLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0sIDUwMCk7XG4gICAgICAgIH0sXG4gICAgICAgIHsgb25jZTogdHJ1ZSB9XG4gICAgICApO1xuICAgIH0gKi9cblxuICAgIGlmIChlbmFibGVDbGlja09uRW50aXRpZXMpIHtcbiAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3BiLWVuZC11cGRhdGUnLCAoZXY6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLnNjcm9sbEVsZW1lbnRzSW50b1ZpZXcoZXYuZGV0YWlsLCAnY2hhcHRlcicsICcjdmlldzEnKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qICAgICAgIGlmIChwYXJhbXMuZ2V0KCdocScpKSB7XG4gICAgICBpZiAoc2VhcmNoQXBpKSB7XG4gICAgICAgIGNvbnN0IHhtbFF1ZXJ5VXJsID0gYCR7c2VhcmNoQXBpLnVybFxuICAgICAgICB9P3Jlc291cmNlLWlkPSR7c2VhcmNoQXBpWydyZXNvdXJjZS1pZCddXG4gICAgICAgIH0mc2VhcmNoSWQ9JHtzZWFyY2hJZFxuICAgICAgICB9JnhtbD0ke2RhdGEuZG9jc1swXT8ueG1sXG4gICAgICAgIH0mJHtwYXJhbXMudG9TdHJpbmcoKX1gO1xuXG4gICAgICAgIGRhdGEuZG9jc1swXS51cmwgPSB4bWxRdWVyeVVybDtcbiAgICAgICAgZGF0YS5kb2NzWzBdLnJvb3RQYXRoID0gJ2FwaS9tcmNwYXJ0cyc7XG4gICAgICB9XG4gICAgICAgICAqL1xuXG4gICAgaWYgKHBhcmFtcy5nZXQoJ2hxJykpIHtcbiAgICAgIGlmIChzZWFyY2hBcGkpIHtcbiAgICAgICAgY29uc3QgbWFpbkRvYyA9IGRhdGEuZG9jcy5maW5kKChkb2MpID0+IGRvYy5pZCA9PT0gJ21haW5Eb2MnKTtcblxuICAgICAgICBpZiAobWFpbkRvYykge1xuICAgICAgICAgIGNvbnN0IHhtbFF1ZXJ5VXJsID0gYCR7c2VhcmNoQXBpLnVybFxuICAgICAgICAgIH0/cmVzb3VyY2UtaWQ9JHtzZWFyY2hBcGlbJ3Jlc291cmNlLWlkJ11cbiAgICAgICAgICB9JnNlYXJjaElkPSR7c2VhcmNoSWRcbiAgICAgICAgICB9JnhtbD0ke21haW5Eb2MueG1sXG4gICAgICAgICAgfSYke3BhcmFtcy50b1N0cmluZygpfWA7XG5cbiAgICAgICAgICBtYWluRG9jLnVybCA9IHhtbFF1ZXJ5VXJsO1xuICAgICAgICAgIG1haW5Eb2Mucm9vdFBhdGggPSAnYXBpL21yY3BhcnRzJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLy8gLi5cbiAgICB9XG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigncGItZW5kLXVwZGF0ZScsIChldjogYW55KSA9PiB7XG4gICAgICB0aGlzLnNjcm9sbEVsZW1lbnRzSW50b1ZpZXcoZXYuZGV0YWlsLCAnaHEnLCAnI3RyYW5zY3JpcHRpb24tdmlldycpO1xuICAgIH0pO1xuICAgIC8qICAgfSAgKi9cbiAgICByZXR1cm4gZGF0YTtcbiAgfVxuXG4gIGRpc3BsYXlJbmRleCgpIHtcbiAgICBpZiAodGhpcy5vdXRwdXQudG9nZ2xlQ29sdW1uKSB7XG4gICAgICB0aGlzLm91dHB1dC50b2dnbGVDb2x1bW4gPSBmYWxzZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vdXRwdXQudG9nZ2xlQ29sdW1uID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBzZXR1cFZpZXdDbGlja0xpc3RlbmVycygpIHtcbiAgICBjb25zdCBhdHRhY2hMaXN0ZW5lcnMgPSAoKSA9PiB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgY29uc3Qgdmlld3MgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcubjctcGFyYWxsZWwtdGV4dC12aWV3ZXIgW2lkJD1cIi12aWV3XCJdJyk7XG5cbiAgICAgICAgdmlld3MuZm9yRWFjaCgodmlldykgPT4ge1xuICAgICAgICAgIGlmICh2aWV3LmlkID09PSAndHJhbnNjcmlwdGlvbi12aWV3Jykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICh2aWV3LnNoYWRvd1Jvb3QpIHtcbiAgICAgICAgICAgIGlmICgodmlldyBhcyBhbnkpLl9fY2xpY2tMaXN0ZW5lckF0dGFjaGVkKSB7XG4gICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgY2xpY2tMaXN0ZW5lciA9IChldmVudDogRXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5vbkNsaWNrKGV2ZW50KTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIC8vIFNhbHZhIGlsIHJpZmVyaW1lbnRvIGUgbWFyY2EgY29tZSBhdHRhY2NhdG9cbiAgICAgICAgICAgICh2aWV3IGFzIGFueSkuX19jbGlja0xpc3RlbmVyID0gY2xpY2tMaXN0ZW5lcjtcbiAgICAgICAgICAgICh2aWV3IGFzIGFueSkuX19jbGlja0xpc3RlbmVyQXR0YWNoZWQgPSB0cnVlO1xuXG4gICAgICAgICAgICAvLyBBdHRhY2NhIGlsIGxpc3RlbmVyIGluIGNhcHR1cmUgcGhhc2UgcGVyIGNhdHR1cmFyZSB0dXR0aSBpIGNsaWNrXG4gICAgICAgICAgICB2aWV3LnNoYWRvd1Jvb3QuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBjbGlja0xpc3RlbmVyLCB0cnVlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfSwgMTAwKTtcbiAgICB9O1xuXG4gICAgLy8gQXR0YWNjYSBhbCBwcmltbyBjYXJpY2FtZW50b1xuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3BiLWVuZC11cGRhdGUnLCBhdHRhY2hMaXN0ZW5lcnMpO1xuXG4gICAgc2V0VGltZW91dChhdHRhY2hMaXN0ZW5lcnMsIDUwMCk7XG4gIH1cblxuICBvbkNsaWNrKHBheWxvYWQpIHtcbiAgICAvLyBjb25zb2xlLmxvZygn8J+UtSBvbkNsaWNrIGNoaWFtYXRvIScsIHBheWxvYWQpO1xuICAgIGxldCB0YXJnZXQgPSBudWxsO1xuICAgIGNvbnN0IGNsaWNrUGF0aCA9IHBheWxvYWQucGF0aCB8fCBwYXlsb2FkLmNvbXBvc2VkUGF0aCgpO1xuICAgIC8vIGNvbnNvbGUubG9nKCfwn5S1IGNsaWNrUGF0aDonLCBjbGlja1BhdGgpO1xuXG4gICAgLy8gY2hpdXN1cmEgYXBwYXJhdG8gY29uIHRhc3RvXG4gICAgY29uc3QgY2xvc2VCdXR0b24gPSBjbGlja1BhdGguZmluZCgoZWwpID0+IGVsLmNsYXNzTmFtZVxuICAgICAgJiYgdHlwZW9mIGVsLmNsYXNzTmFtZSA9PT0gJ3N0cmluZydcbiAgICAgICYmIGVsLmNsYXNzTmFtZS5pbmNsdWRlcygnY2xvc2VfYXBwJykpO1xuXG4gICAgaWYgKGNsb3NlQnV0dG9uKSB7XG4gICAgLy8gIGNvbnNvbGUubG9nKCdDbGljayByaWxldmF0byBzdWwgYm90dG9uZSBkaSBjaGl1c3VyYTonLCBjbG9zZUJ1dHRvbik7XG5cbiAgICAgIGNvbnN0IHBhcmVudEFwcEl0ZW0gPSBjbG9zZUJ1dHRvbi5jbG9zZXN0KCcudGVpLWFwcCcpO1xuICAgICAgaWYgKHBhcmVudEFwcEl0ZW0gJiYgcGFyZW50QXBwSXRlbS5zdHlsZSkge1xuICAgICAgICAvLyAgICBjb25zb2xlLmxvZygnQ2hpdXN1cmEgZGVsbFxcJ2VsZW1lbnRvIHRlaS1hcHAnKTtcbiAgICAgICAgcGFyZW50QXBwSXRlbS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICAgICAgICAocGFyZW50QXBwSXRlbSBhcyBIVE1MRWxlbWVudCkuc3R5bGUudHJhbnNmb3JtID0gJyc7XG4gICAgICAgIHBheWxvYWQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBpbnNpZGVUZWlBcHAgPSBjbGlja1BhdGguZmluZCgoZWwpID0+IGVsLmNsYXNzTmFtZVxuICAgICAgJiYgdHlwZW9mIGVsLmNsYXNzTmFtZSA9PT0gJ3N0cmluZydcbiAgICAgICYmIGVsLmNsYXNzTmFtZS5pbmNsdWRlcygndGVpLWFwcCcpKTtcblxuICAgIGlmIChpbnNpZGVUZWlBcHAgJiYgKGluc2lkZVRlaUFwcCBhcyBIVE1MRWxlbWVudCkuc3R5bGUuZGlzcGxheSA9PT0gJ2Jsb2NrJykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIENoaXVzdXJhIG5vdGUgY29uIHRhc3RvXG4gICAgY29uc3QgY2xvc2VOb3RlQnV0dG9uID0gY2xpY2tQYXRoLmZpbmQoKGVsKSA9PiBlbC5jbGFzc05hbWVcbiAgICAgICYmIHR5cGVvZiBlbC5jbGFzc05hbWUgPT09ICdzdHJpbmcnXG4gICAgICAmJiBlbC5jbGFzc05hbWUuaW5jbHVkZXMoJ2Nsb3NlX25vdGUnKSk7XG5cbiAgICBpZiAoY2xvc2VOb3RlQnV0dG9uKSB7XG4gICAgLy8gIGNvbnNvbGUubG9nKCdDbGljayByaWxldmF0byBzdWwgYm90dG9uZSBkaSBjaGl1c3VyYSBub3RhOicsIGNsb3NlTm90ZUJ1dHRvbik7XG5cbiAgICAgIGNvbnN0IHBhcmVudE5vdGVJdGVtID0gY2xvc2VOb3RlQnV0dG9uLmNsb3Nlc3QoJy5ub3RlLWl0ZW0nKTtcbiAgICAgIGlmIChwYXJlbnROb3RlSXRlbSAmJiBwYXJlbnROb3RlSXRlbS5zdHlsZSkge1xuICAgICAgICAvLyAgICBjb25zb2xlLmxvZygnQ2hpdXN1cmEgZGVsbFxcJ2VsZW1lbnRvIG5vdGUtaXRlbScpO1xuICAgICAgICBwYXJlbnROb3RlSXRlbS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICAgICAgICAocGFyZW50Tm90ZUl0ZW0gYXMgSFRNTEVsZW1lbnQpLnN0eWxlLnRyYW5zZm9ybSA9ICcnO1xuICAgICAgICBwYXlsb2FkLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHBheWxvYWQucGF0aCkge1xuICAgICAgdGFyZ2V0ID0gcGF5bG9hZC5wYXRoLmZpbmQoXG4gICAgICAgICh7IHRhZ05hbWUgfSkgPT4gdGFnTmFtZSA9PT0gJ1BCLUhJR0hMSUdIVCdcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRhcmdldCA9IHBheWxvYWQuY29tcG9zZWRQYXRoKCkuZmluZChcbiAgICAgICAgKHsgdGFnTmFtZSB9KSA9PiB0YWdOYW1lID09PSAnUEItSElHSExJR0hUJ1xuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAodGFyZ2V0ICYmIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3R5cGUnKSA9PT0gJ2FwcF9sZW0nKSB7XG4gICAgICBjb25zdCBhcHBJZCA9IHRhcmdldC5nZXRBdHRyaWJ1dGUoJ2tleScpO1xuICAgICAgLy8gY29uc29sZS5sb2coJ2FwcElkOicsIGFwcElkKTtcblxuICAgICAgLy8gUG9zaXppb25lIGVsZW1lbnRvIGNsaWNjYXRvXG4gICAgICBjb25zdCBjbGlja2VkRWxlbWVudFBvc2l0aW9uID0gKHRhcmdldCBhcyBIVE1MRWxlbWVudCkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wO1xuXG4gICAgICBjb25zdCBjbGlja2VkVmlldyA9IGNsaWNrUGF0aC5maW5kKChlbCkgPT4gZWwuaWQgJiYgZWwuaWQuZW5kc1dpdGgoJy12aWV3JykpO1xuICAgICAgY29uc3QgY2xpY2tlZFZpZXdJZCA9IGNsaWNrZWRWaWV3ID8gY2xpY2tlZFZpZXcuaWQgOiBudWxsO1xuXG4gICAgICBjb25zdCBhcHBhcmF0dXNWaWV3ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLm43LXBhcmFsbGVsLXRleHQtdmlld2VyIFtpZCQ9XCItdmlld1wiXScpO1xuICAgICAgLy8gY29uc29sZS5sb2coJ051bWVybyBkaSB2aWV3IHRyb3ZhdGU6JywgYXBwYXJhdHVzVmlldy5sZW5ndGgpO1xuXG4gICAgICBsZXQgYW5jaG9yRWxlbWVudCA9IG51bGw7XG4gICAgICBsZXQgdGVpQXBwRWxlbWVudCA9IG51bGw7XG5cbiAgICAgIGFwcGFyYXR1c1ZpZXcuZm9yRWFjaCgodmlldykgPT4ge1xuICAgICAgICAvLyBTYWx0YSBsYSB2aWV3IGluIGN1aSDDqCBzdGF0byBmYXR0byBpbCBjbGlja1xuICAgICAgICBpZiAodmlldy5pZCA9PT0gY2xpY2tlZFZpZXdJZCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh2aWV3LnNoYWRvd1Jvb3QpIHtcbiAgICAgICAgICBjb25zdCBmb3VuZCA9IHZpZXcuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKGBbaWQ9XCIke2FwcElkfVwiXWApO1xuICAgICAgICAgIGlmIChmb3VuZCkge1xuICAgICAgICAgICAgaWYgKCFhbmNob3JFbGVtZW50KSB7XG4gICAgICAgICAgICAgIGFuY2hvckVsZW1lbnQgPSBmb3VuZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgYXBwRWxlbWVudCA9IGZvdW5kLmNsb3Nlc3QoJy50ZWktYXBwJyk7XG4gICAgICAgICAgICBpZiAoYXBwRWxlbWVudCAmJiAhdGVpQXBwRWxlbWVudCkge1xuICAgICAgICAgICAgICB0ZWlBcHBFbGVtZW50ID0gYXBwRWxlbWVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICBpZiAodGVpQXBwRWxlbWVudCkge1xuICAgICAgICBjb25zdCBpc1Zpc2libGUgPSAodGVpQXBwRWxlbWVudCBhcyBIVE1MRWxlbWVudCkuc3R5bGUuZGlzcGxheSA9PT0gJ2Jsb2NrJztcblxuICAgICAgICBpZiAoaXNWaXNpYmxlKSB7XG4gICAgICAgICAgKHRlaUFwcEVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG4gICAgICAgICAgKHRlaUFwcEVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLnN0eWxlLnRyYW5zZm9ybSA9ICcnO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICh0ZWlBcHBFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5zdHlsZS5kaXNwbGF5ID0gJ2Jsb2NrJztcblxuICAgICAgICAgIC8vIHBvc2l6aW9uZSBhdHR1YWxlXG4gICAgICAgICAgY29uc3QgZWxlbWVudFBvc2l0aW9uID0gdGVpQXBwRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3A7XG5cbiAgICAgICAgICAvLyBkaWZmZXJlbnphXG4gICAgICAgICAgY29uc3QgcG9zaXRpb25EaWZmZXJlbmNlID0gY2xpY2tlZEVsZW1lbnRQb3NpdGlvbiAtIGVsZW1lbnRQb3NpdGlvbjtcblxuICAgICAgICAgIC8vIHNwb3N0YW1lbnRvXG4gICAgICAgICAgKHRlaUFwcEVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLnN0eWxlLnRyYW5zZm9ybSA9IGB0cmFuc2xhdGVZKCR7cG9zaXRpb25EaWZmZXJlbmNlfXB4KWA7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnNvbGUud2FybigndGVpQXBwRWxlbWVudCBub24gdHJvdmF0byEnKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHRhcmdldCAmJiB0YXJnZXQuZ2V0QXR0cmlidXRlKCd0eXBlJykgPT09ICdub3RlX2xpbmUnKSB7XG4gICAgICBjb25zdCBub3RlSWQgPSB0YXJnZXQuZ2V0QXR0cmlidXRlKCdrZXknKTtcbiAgICAgIC8vIGNvbnNvbGUubG9nKCdub3RlSWQnLCBub3RlSWQpO1xuXG4gICAgICBjb25zdCBjbGlja2VkRWxlbWVudFBvc2l0aW9uID0gKHRhcmdldCBhcyBIVE1MRWxlbWVudCkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wO1xuXG4gICAgICBjb25zdCBhcHBhcmF0dXNWaWV3ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLm43LXRleHQtdmlld2VyICNhcHBhcmF0by12aWV3Jyk7XG5cbiAgICAgIGNvbnN0IGFuY2hvckVsZW1lbnQgPSBhcHBhcmF0dXNWaWV3XG4gICAgICAgID8uc2hhZG93Um9vdFxuICAgICAgICA/LnF1ZXJ5U2VsZWN0b3IoYCMke25vdGVJZH1gKTtcblxuICAgICAgY29uc3QgdGVpTm90ZUVsZW1lbnQgPSBhbmNob3JFbGVtZW50XG4gICAgICAgID8gYW5jaG9yRWxlbWVudC5jbG9zZXN0KCcubm90ZS1pdGVtJylcbiAgICAgICAgOiBudWxsO1xuICAgICAgaWYgKHRlaU5vdGVFbGVtZW50KSB7XG4gICAgICAgIC8vIFZlcmlmaWNhIHNlIMOoIHZpc2liaWxlXG4gICAgICAgIGNvbnN0IGlzVmlzaWJsZSA9ICh0ZWlOb3RlRWxlbWVudCBhcyBIVE1MRWxlbWVudCkuc3R5bGUuZGlzcGxheSA9PT0gJ2Jsb2NrJztcblxuICAgICAgICBpZiAoaXNWaXNpYmxlKSB7XG4gICAgICAgICAgKHRlaU5vdGVFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuXG4gICAgICAgICAgKHRlaU5vdGVFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5zdHlsZS50cmFuc2Zvcm0gPSAnJztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAodGVpTm90ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snO1xuXG4gICAgICAgICAgLy8gcG9zaXppb25lIGF0dHVhbGVcbiAgICAgICAgICBjb25zdCBlbGVtZW50UG9zaXRpb24gPSB0ZWlOb3RlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3A7XG5cbiAgICAgICAgICAvLyBkaWZmZXJlbnphXG4gICAgICAgICAgY29uc3QgcG9zaXRpb25EaWZmZXJlbmNlID0gY2xpY2tlZEVsZW1lbnRQb3NpdGlvbiAtIGVsZW1lbnRQb3NpdGlvbjtcblxuICAgICAgICAgIC8vIHNwb3N0YW1lbnRvXG4gICAgICAgICAgKHRlaU5vdGVFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5zdHlsZS50cmFuc2Zvcm0gPSBgdHJhbnNsYXRlWSgke3Bvc2l0aW9uRGlmZmVyZW5jZX1weClgO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh0YXJnZXQgJiYgdGFyZ2V0LmdldEF0dHJpYnV0ZSgna2V5JykgJiYgdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc2Nyb2xsdmlldycpICE9PSBudWxsKSB7XG4gICAgICAvLyBQZXIgc2Nyb2xsIHN1IGluZGljZVxuICAgICAgY29uc3Qga2V5ID0gdGFyZ2V0LmdldEF0dHJpYnV0ZSgna2V5Jyk7XG4gICAgICBpZiAoa2V5KSB7XG4gICAgICAgIHRoaXMuc2Nyb2xsVG9JbmRleEVsZW1lbnQoa2V5KTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHRhcmdldCAmJiB0aGlzLm91dHB1dC50b2dnbGVDb2x1bW4gPT09IGZhbHNlKSB7XG4gICAgICBpZiAoXG4gICAgICAgIHRhcmdldC5fX2tleVxuICAgICAgICAmJiAodGFyZ2V0LmNsYXNzTmFtZS5pbmNsdWRlcygncGVyc29uJylcbiAgICAgICAgICB8fCB0YXJnZXQuY2xhc3NOYW1lLmluY2x1ZGVzKCdwbGFjZScpKVxuICAgICAgKSB7XG4gICAgICAgIHRoaXMub3V0cHV0LnRvZ2dsZUNvbHVtbiA9IHRydWU7XG4gICAgICAgIHRoaXMuc2Nyb2xsRWxlbWVudHNJbnRvVmlldyh0YXJnZXQsICdlbnRpdHknLCAnI3RleHQtdmlld2VyLWluZGV4Jyk7XG4gICAgICB9XG4gICAgfSBlbHNlIHRoaXMub3V0cHV0LnRvZ2dsZUNvbHVtbiA9IGZhbHNlO1xuICB9XG5cbiAgdmlld0xpc3RlbmVyVXBkYXRlKCkge1xuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAncGItc3RhcnQtdXBkYXRlJyxcbiAgICAgIGZ1bmN0aW9uIF9saXN0ZW5lcigpIHtcbiAgICAgICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigncGItc3RhcnQtdXBkYXRlJywgX2xpc3RlbmVyLCB0cnVlKTtcbiAgICAgIH0sXG4gICAgICB0cnVlXG4gICAgKTtcbiAgfVxuXG4gIGNoYW5nZVZpZXcodmlldywgcmVmcmVzaCkge1xuICAgIHNldFRpbWVvdXQoXG4gICAgICAodiwgcikgPT4ge1xuICAgICAgICAvLyBjb25zb2xlLmxvZyhgVEVTVCBDSEFOR0UgVklFVzogJHt2aWV3fWApO1xuICAgICAgICBkb2N1bWVudC5kaXNwYXRjaEV2ZW50KFxuICAgICAgICAgIG5ldyBDdXN0b21FdmVudCgncGItdG9nZ2xlJywge1xuICAgICAgICAgICAgZGV0YWlsOiB7XG4gICAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgICB2aWV3OiB2LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBhY3Rpb246IHIgPyAncmVmcmVzaCcgOiAnJyxcbiAgICAgICAgICAgICAga2V5OiAndHJhbnNjcmlwdGlvbicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgICB9LFxuICAgICAgNjAwLFxuICAgICAgdmlldyxcbiAgICAgIHJlZnJlc2hcbiAgICApO1xuICB9XG5cbiAgc2Nyb2xsRWxlbWVudHNJbnRvVmlldyh0YXJnZXQsIHR5cGUsIHZpZXcpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGxldCBlbGVtZW50OiBhbnk7XG4gICAgICBpZiAodHlwZSA9PT0gJ2NoYXB0ZXInKSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBkb2N1bWVudFxuICAgICAgICAgICAgLnF1ZXJ5U2VsZWN0b3IoJy5uNy10ZXh0LXZpZXdlciAjdmlldzAnKVxuICAgICAgICAgICAgLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigncGItaGlnaGxpZ2h0JylcbiAgICAgICAgKSB7XG4gICAgICAgICAgY29uc3QgaGlnaGxpZ2h0ID0gZG9jdW1lbnRcbiAgICAgICAgICAgIC5xdWVyeVNlbGVjdG9yKCcubjctdGV4dC12aWV3ZXIgI3ZpZXcwJylcbiAgICAgICAgICAgIC5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3JBbGwoJ3BiLWhpZ2hsaWdodCcpO1xuXG4gICAgICAgICAgY29uc3QgaGlnaGxpZ2h0SWQgPSBoaWdobGlnaHRbaGlnaGxpZ2h0Lmxlbmd0aCAtIDFdLmlkOyAvLyBzLnhcblxuICAgICAgICAgIGNvbnN0IGZyYWdtZW50TnVtYmVyID0gaGlnaGxpZ2h0SWQucmVwbGFjZSgnLicsICdcXFxcLicpO1xuXG4gICAgICAgICAgZWxlbWVudCA9IGRvY3VtZW50XG4gICAgICAgICAgICAucXVlcnlTZWxlY3Rvcih2aWV3KVxuICAgICAgICAgICAgLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcihgIyR7ZnJhZ21lbnROdW1iZXJ9YCk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gJ2VudGl0eScpIHtcbiAgICAgICAgY29uc3Qga2V5ID0gdGFyZ2V0Ll9fa2V5O1xuICAgICAgICBlbGVtZW50ID0gZG9jdW1lbnRcbiAgICAgICAgICAucXVlcnlTZWxlY3RvcihgLm43LXRleHQtdmlld2VyICR7dmlld31gKVxuICAgICAgICAgIC5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoYCMke2tleX1gKTtcbiAgICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gJ2hxJykge1xuICAgICAgICBlbGVtZW50ID0gZG9jdW1lbnRcbiAgICAgICAgICAucXVlcnlTZWxlY3RvcihgLm43LXBhcmFsbGVsLXRleHQtdmlld2VyICR7dmlld31gKVxuICAgICAgICAgIC5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoJy50ZWktZW0nKTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgY29udGFpbmVyID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihgLm43LXBhcmFsbGVsLXRleHQtdmlld2VyICR7dmlld31gKTtcbiAgICAgIGlmIChlbGVtZW50KSB7XG4gICAgICAgIGNvbnRhaW5lci5zY3JvbGxUb3AgPSBlbGVtZW50Lm9mZnNldFRvcDtcbiAgICAgIH1cbiAgICB9LCA2MDApO1xuICB9XG5cbiAgLyoqXG4gICAqIFNjcm9sbGEgYWxsJ2VsZW1lbnRvIGNvcnJpc3BvbmRlbnRlIG5lbGwnaW5kaWNlXG4gICAqL1xuICBzY3JvbGxUb0luZGV4RWxlbWVudChrZXk6IHN0cmluZykge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgY29uc3QgY2xlYW5LZXkgPSBrZXkucmVwbGFjZSgnIycsICcnKTtcbiAgICAgIGNvbnN0IHZpZXdzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLm43LXBhcmFsbGVsLXRleHQtdmlld2VyIFtpZCQ9XCItdmlld1wiXTpub3QoI3RyYW5zY3JpcHRpb24tdmlldyknKTtcblxuICAgICAgQXJyYXkuZnJvbSh2aWV3cykuc29tZSgodmlldykgPT4ge1xuICAgICAgICBjb25zdCB0YXJnZXQgPSB2aWV3LnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoYCMke2NsZWFuS2V5fWApO1xuICAgICAgICBpZiAodGFyZ2V0KSB7XG4gICAgICAgICAgKHRhcmdldCBhcyBIVE1MRWxlbWVudCkuc2Nyb2xsSW50b1ZpZXcoeyBiZWhhdmlvcjogJ3Ntb290aCcsIGJsb2NrOiAnY2VudGVyJyB9KTtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9KTtcbiAgICB9LCAzMDApO1xuICB9XG59XG4iXX0=
395
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYWxsZWwtdGV4dC12aWV3ZXIuZHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uNy1ib2lsZXJwbGF0ZS1tdXJ1Y2Evc3JjL2xpYi9kYXRhLXNvdXJjZXMvcGFyYWxsZWwtdGV4dC12aWV3ZXIuZHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNkRBQTZEO0FBQzdELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFeEMsTUFBTSxPQUFPLHNCQUF1QixTQUFRLFVBQVU7SUFHcEQsOEVBQThFO0lBQzlFLHlFQUF5RTtJQUMvRCxTQUFTLENBQUMsSUFBUztRQUMzQixJQUFJLENBQUMsSUFBSTtZQUFFLE9BQU8sSUFBSSxDQUFDO1FBRXZCOzs7Ozs7OztZQVFJO1FBQ0osSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbkIsNEJBQTRCO1lBQzFCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksT0FBTyxJQUFJLENBQUMsVUFBVSxLQUFLLFFBQVEsRUFBRSxDQUFDO29CQUM1RCxJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztnQkFDdkIsQ0FBQztnQkFDRCxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7b0JBQ25ELElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsS0FBSyxRQUFRLEVBQUUsQ0FBQzt3QkFDdEUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7b0JBQzVCLENBQUM7b0JBQ0QsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJ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Q0FBQztJQUVEOztPQUVHO0lBQ0gsb0JBQW9CLENBQUMsR0FBVztRQUM5QixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDdEMsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLGdCQUFnQixDQUFDLGlFQUFpRSxDQUFDLENBQUM7WUFFM0csS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtnQkFDOUIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxhQUFhLENBQUMsSUFBSSxRQUFRLEVBQUUsQ0FBQyxDQUFDO2dCQUM5RCxJQUFJLE1BQU0sRUFBRSxDQUFDO29CQUNWLE1BQXNCLENBQUMsY0FBYyxDQUFDLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztvQkFDaEYsT0FBTyxJQUFJLENBQUM7Z0JBQ2QsQ0FBQztnQkFDRCxPQUFPLEtBQUssQ0FBQztZQUNmLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ1YsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLy8gaW1wb3J0IHsgUGFyYWxsZWxUZXh0Vmlld2VyRGF0YSB9IGZyb20gJ0BuZXQ3L2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgRGF0YVNvdXJjZSB9IGZyb20gJ0BuZXQ3L2NvcmUnO1xuXG5leHBvcnQgY2xhc3MgTXJQYXJhbGxlbFRleHRWaWV3ZXJEUyBleHRlbmRzIERhdGFTb3VyY2Uge1xuICBpZDogc3RyaW5nO1xuXG4gIC8vIHByb3RlY3RlZCB0cmFuc2Zvcm0oZGF0YTogUGFyYWxsZWxUZXh0Vmlld2VyRGF0YSk6IFBhcmFsbGVsVGV4dFZpZXdlckRhdGEge1xuICAvLyBeXl5eXl5eXl5eXl5ec2UgdmEgYnVpbGRhcmUgY29tcG9uZW50cyAtLS0gMTctMTItMjAyNV5eXl5eXl5eXl5eXl5eXl5eXG4gIHByb3RlY3RlZCB0cmFuc2Zvcm0oZGF0YTogYW55KTogYW55IHtcbiAgICBpZiAoIWRhdGEpIHJldHVybiBudWxsO1xuXG4gICAgLypcbiAgICBpZiAodGhpcy5vcHRpb25zLmZhY3NpbWlsZU9wdGlvbnMgJiYgZGF0YS5mYWNzaW1pbGUpIHtcbiAgICAgIGlmICghZGF0YS5mYWNzaW1pbGUub3B0aW9ucykge1xuICAgICAgICBkYXRhLmZhY3NpbWlsZS5vcHRpb25zID0ge307XG4gICAgICB9XG4gICAgICBPYmplY3Qua2V5cyh0aGlzLm9wdGlvbnMuZmFjc2ltaWxlT3B0aW9ucykuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgIGRhdGEuZmFjc2ltaWxlLm9wdGlvbnNba2V5XSA9IHRoaXMub3B0aW9ucy5mYWNzaW1pbGVPcHRpb25zW2tleV07XG4gICAgICB9KTtcbiAgICB9ICovXG4gICAgaWYgKHRoaXMub3B0aW9ucykge1xuICAgIC8vIEdlc3Rpb25lIGRlbGxlIGxpYk9wdGlvbnNcbiAgICAgIGlmICh0aGlzLm9wdGlvbnMubGliT3B0aW9ucykge1xuICAgICAgICBpZiAoIWRhdGEubGliT3B0aW9ucyB8fCB0eXBlb2YgZGF0YS5saWJPcHRpb25zICE9PSAnb2JqZWN0Jykge1xuICAgICAgICAgIGRhdGEubGliT3B0aW9ucyA9IHt9O1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5rZXlzKHRoaXMub3B0aW9ucy5saWJPcHRpb25zKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgICBpZiAoIWRhdGEubGliT3B0aW9uc1trZXldIHx8IHR5cGVvZiBkYXRhLmxpYk9wdGlvbnNba2V5XSAhPT0gJ29iamVjdCcpIHtcbiAgICAgICAgICAgIGRhdGEubGliT3B0aW9uc1trZXldID0ge307XG4gICAgICAgICAgfVxuICAgICAgICAgIE9iamVjdC5rZXlzKHRoaXMub3B0aW9ucy5saWJPcHRpb25zW2tleV0pLmZvckVhY2goKHN1YktleSkgPT4ge1xuICAgICAgICAgICAgZGF0YS5saWJPcHRpb25zW2tleV1bc3ViS2V5XSA9IHRoaXMub3B0aW9ucy5saWJPcHRpb25zW2tleV1bc3ViS2V5XTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICAgIC8vIERlYnVnIGxpYk9wdGlvbnNcbiAgICAgIC8qICAgICAgIGNvbnNvbGUubG9nKCcgREVCVUcgbGliT3B0aW9uczonLCB7XG4gICAgICAgICd0aGlzLm9wdGlvbnMubGliT3B0aW9ucyc6IHRoaXMub3B0aW9ucy5saWJPcHRpb25zLFxuICAgICAgICAnZGF0YS5saWJPcHRpb25zJzogZGF0YS5saWJPcHRpb25zLFxuICAgICAgICAnZGF0YS5saWJPcHRpb25zLnBiUGFnZSc6IGRhdGEubGliT3B0aW9ucy5wYlBhZ2UsXG4gICAgICAgICd1cmxJZ25vcmUnOiBkYXRhLmxpYk9wdGlvbnMucGJQYWdlPy51cmxJZ25vcmVcbiAgICAgIH0pOyAqL1xuICAgICAgfVxuICAgICAgLy8gR2VzdGlvbmUgZGVsbGEgZ3JpZFxuICAgICAgaWYgKHRoaXMub3B0aW9ucy5ncmlkKSB7XG4gICAgICAgIGRhdGEuZ3JpZCA9IHRoaXMub3B0aW9ucy5ncmlkO1xuICAgICAgfVxuICAgICAgLy8gR2VzdGlvbmUgZGVpIHBhbmVsc1xuICAgICAgaWYgKHRoaXMub3B0aW9ucy5wYW5lbHMpIHtcbiAgICAgICAgdGhpcy5vcHRpb25zLnBhbmVscy5mb3JFYWNoKChwYW5lbFByb3BlcnRpZXMpID0+IHtcbiAgICAgICAgICBjb25zdCBwYW5lbEluZGV4ID0gZGF0YS5wYW5lbHMuZmluZEluZGV4KFxuICAgICAgICAgICAgKHBhbmVsKSA9PiBwYW5lbC5pZCA9PT0gcGFuZWxQcm9wZXJ0aWVzLmlkXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIGlmIChwYW5lbEluZGV4ICE9PSAtMSkge1xuICAgICAgICAgICAgZGF0YS5wYW5lbHNbcGFuZWxJbmRleF0gPSB7XG4gICAgICAgICAgICAgIC4uLmRhdGEucGFuZWxzW3BhbmVsSW5kZXhdLFxuICAgICAgICAgICAgICAuLi5wYW5lbFByb3BlcnRpZXNcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3Qge1xuICAgICAgZW5hYmxlQ2xpY2tPbkVudGl0aWVzLCB0b2dnbGVDb2x1bW4sXG4gICAgICBzZWFyY2hJZCxcbiAgICAgIHNlYXJjaEFwaVxuICAgIH0gPSB0aGlzLm9wdGlvbnMgfHwge307XG4gICAgZGF0YS50b2dnbGVDb2x1bW4gPSB0b2dnbGVDb2x1bW47XG4gICAgLy8gZm9yY2UgdGVpIHB1Ymxpc2hlciBlbmRwb2ludCB2YWx1ZVxuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAncGItcGFnZS1yZWFkeScsXG4gICAgICAoZXY6IEN1c3RvbUV2ZW50KSA9PiB7XG4gICAgICAgIGNvbnN0IHsgZGV0YWlsIH0gPSBldjtcbiAgICAgICAgZGV0YWlsLmVuZHBvaW50ID0gZGF0YS5lbmRwb2ludDtcbiAgICAgIH0sXG4gICAgICB7IG9uY2U6IHRydWUgfVxuICAgICk7XG5cbiAgICBjb25zdCBwYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKGRvY3VtZW50LmxvY2F0aW9uLnNlYXJjaCk7XG4gICAgLy8gY29uc3QgaWQgPSBwYXJhbXMuZ2V0KCdpZCcpO1xuXG4gICAgdGhpcy5zZXR1cFZpZXdDbGlja0xpc3RlbmVycygpO1xuXG4gICAgLyogICAgIGlmIChkYXRhLmRvY3NbMF0/LnZpZXcgPT09ICdwYWdlJyAmJiBpZCkge1xuICAgICAgZGF0YS5kb2NzWzBdLnZpZXcgPSAnZGl2JztcbiAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAgICdwYi1lbmQtdXBkYXRlJyxcbiAgICAgICAgKCkgPT4ge1xuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChcbiAgICAgICAgICAgICAgbmV3IEN1c3RvbUV2ZW50KCdwYi10b2dnbGUnLCB7XG4gICAgICAgICAgICAgICAgZGV0YWlsOiB7XG4gICAgICAgICAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICAgICAgICAgIHZpZXc6ICdwYWdlJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICBhY3Rpb246ICdyZWZyZXNoJyxcbiAgICAgICAgICAgICAgICAgIGtleTogJ3RyYW5zY3JpcHRpb24nLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChcbiAgICAgICAgICAgICAgbmV3IEN1c3RvbUV2ZW50KCdwYi10b2dnbGUnLCB7XG4gICAgICAgICAgICAgICAgZGV0YWlsOiB7XG4gICAgICAgICAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICAgICAgICAgIHZpZXc6ICdzaW5nbGUnLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIGFjdGlvbjogJ3JlZnJlc2gnLFxuICAgICAgICAgICAgICAgICAga2V5OiAnYWRkQ2hhbm5lbCcsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBkb2N1bWVudC5kaXNwYXRjaEV2ZW50KFxuICAgICAgICAgICAgICBuZXcgQ3VzdG9tRXZlbnQoJ3BiLXRvZ2dsZScsIHtcbiAgICAgICAgICAgICAgICBkZXRhaWw6IHtcbiAgICAgICAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgdmlldzogJ3NpbmdsZScsXG4gICAgICAgICAgICAgICAgICAgIGlkOiAnJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICBhY3Rpb246ICdyZWZyZXNoJyxcbiAgICAgICAgICAgICAgICAgIGtleTogJ2luZGV4JyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9LCA1MDApO1xuICAgICAgICB9LFxuICAgICAgICB7IG9uY2U6IHRydWUgfVxuICAgICAgKTtcbiAgICB9ICovXG5cbiAgICBpZiAoZW5hYmxlQ2xpY2tPbkVudGl0aWVzKSB7XG4gICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdwYi1lbmQtdXBkYXRlJywgKGV2OiBhbnkpID0+IHtcbiAgICAgICAgdGhpcy5zY3JvbGxFbGVtZW50c0ludG9WaWV3KGV2LmRldGFpbCwgJ2NoYXB0ZXInLCAnI3ZpZXcxJyk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiAgICAgICBpZiAocGFyYW1zLmdldCgnaHEnKSkge1xuICAgICAgaWYgKHNlYXJjaEFwaSkge1xuICAgICAgICBjb25zdCB4bWxRdWVyeVVybCA9IGAke3NlYXJjaEFwaS51cmxcbiAgICAgICAgfT9yZXNvdXJjZS1pZD0ke3NlYXJjaEFwaVsncmVzb3VyY2UtaWQnXVxuICAgICAgICB9JnNlYXJjaElkPSR7c2VhcmNoSWRcbiAgICAgICAgfSZ4bWw9JHtkYXRhLmRvY3NbMF0/LnhtbFxuICAgICAgICB9JiR7cGFyYW1zLnRvU3RyaW5nKCl9YDtcblxuICAgICAgICBkYXRhLmRvY3NbMF0udXJsID0geG1sUXVlcnlVcmw7XG4gICAgICAgIGRhdGEuZG9jc1swXS5yb290UGF0aCA9ICdhcGkvbXJjcGFydHMnO1xuICAgICAgfVxuICAgICAgICAgKi9cblxuICAgIGlmIChwYXJhbXMuZ2V0KCdocScpKSB7XG4gICAgICBpZiAoc2VhcmNoQXBpKSB7XG4gICAgICAgIGNvbnN0IG1haW5Eb2MgPSBkYXRhLmRvY3MuZmluZCgoZG9jKSA9PiBkb2MuaWQgPT09ICdtYWluRG9jJyk7XG5cbiAgICAgICAgaWYgKG1haW5Eb2MpIHtcbiAgICAgICAgICBjb25zdCB4bWxRdWVyeVVybCA9IGAke3NlYXJjaEFwaS51cmxcbiAgICAgICAgICB9P3Jlc291cmNlLWlkPSR7c2VhcmNoQXBpWydyZXNvdXJjZS1pZCddXG4gICAgICAgICAgfSZzZWFyY2hJZD0ke3NlYXJjaElkXG4gICAgICAgICAgfSZ4bWw9JHttYWluRG9jLnhtbFxuICAgICAgICAgIH0mJHtwYXJhbXMudG9TdHJpbmcoKX1gO1xuXG4gICAgICAgICAgZGF0YS5tYWluRG9jLnVybCA9IHhtbFF1ZXJ5VXJsO1xuICAgICAgICAgIGRhdGEubWFpbkRvYy5yb290UGF0aCA9ICdhcGkvbXJjcGFydHMnO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3BiLWVuZC11cGRhdGUnLCAoZXY6IGFueSkgPT4ge1xuICAgICAgdGhpcy5zY3JvbGxFbGVtZW50c0ludG9WaWV3KGV2LmRldGFpbCwgJ2hxJywgJyN0cmFuc2NyaXB0aW9uLXZpZXcnKTtcbiAgICB9KTtcbiAgICAvKiAgIH0gICovXG4gICAgcmV0dXJuIGRhdGE7XG4gIH1cblxuICBkaXNwbGF5SW5kZXgoKSB7XG4gICAgaWYgKHRoaXMub3V0cHV0LnRvZ2dsZUNvbHVtbikge1xuICAgICAgdGhpcy5vdXRwdXQudG9nZ2xlQ29sdW1uID0gZmFsc2U7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMub3V0cHV0LnRvZ2dsZUNvbHVtbiA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgc2V0dXBWaWV3Q2xpY2tMaXN0ZW5lcnMoKSB7XG4gICAgY29uc3QgYXR0YWNoTGlzdGVuZXJzID0gKCkgPT4ge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IHZpZXdzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLm43LXBhcmFsbGVsLXRleHQtdmlld2VyIFtpZCQ9XCItdmlld1wiXScpO1xuXG4gICAgICAgIHZpZXdzLmZvckVhY2goKHZpZXcpID0+IHtcbiAgICAgICAgICBpZiAodmlldy5pZCA9PT0gJ3RyYW5zY3JpcHRpb24tdmlldycpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAodmlldy5zaGFkb3dSb290KSB7XG4gICAgICAgICAgICBpZiAoKHZpZXcgYXMgYW55KS5fX2NsaWNrTGlzdGVuZXJBdHRhY2hlZCkge1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IGNsaWNrTGlzdGVuZXIgPSAoZXZlbnQ6IEV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMub25DbGljayhldmVudCk7XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAvLyBTYWx2YSBpbCByaWZlcmltZW50byBlIG1hcmNhIGNvbWUgYXR0YWNjYXRvXG4gICAgICAgICAgICAodmlldyBhcyBhbnkpLl9fY2xpY2tMaXN0ZW5lciA9IGNsaWNrTGlzdGVuZXI7XG4gICAgICAgICAgICAodmlldyBhcyBhbnkpLl9fY2xpY2tMaXN0ZW5lckF0dGFjaGVkID0gdHJ1ZTtcblxuICAgICAgICAgICAgLy8gQXR0YWNjYSBpbCBsaXN0ZW5lciBpbiBjYXB0dXJlIHBoYXNlIHBlciBjYXR0dXJhcmUgdHV0dGkgaSBjbGlja1xuICAgICAgICAgICAgdmlldy5zaGFkb3dSb290LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgY2xpY2tMaXN0ZW5lciwgdHJ1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0sIDEwMCk7XG4gICAgfTtcblxuICAgIC8vIEF0dGFjY2EgYWwgcHJpbW8gY2FyaWNhbWVudG9cbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdwYi1lbmQtdXBkYXRlJywgYXR0YWNoTGlzdGVuZXJzKTtcblxuICAgIHNldFRpbWVvdXQoYXR0YWNoTGlzdGVuZXJzLCA1MDApO1xuICB9XG5cbiAgb25DbGljayhwYXlsb2FkKSB7XG4gICAgLy8gY29uc29sZS5sb2coJ/CflLUgb25DbGljayBjaGlhbWF0byEnLCBwYXlsb2FkKTtcbiAgICBsZXQgdGFyZ2V0ID0gbnVsbDtcbiAgICBjb25zdCBjbGlja1BhdGggPSBwYXlsb2FkLnBhdGggfHwgcGF5bG9hZC5jb21wb3NlZFBhdGgoKTtcbiAgICAvLyBjb25zb2xlLmxvZygn8J+UtSBjbGlja1BhdGg6JywgY2xpY2tQYXRoKTtcblxuICAgIC8vIGNoaXVzdXJhIGFwcGFyYXRvIGNvbiB0YXN0b1xuICAgIGNvbnN0IGNsb3NlQnV0dG9uID0gY2xpY2tQYXRoLmZpbmQoKGVsKSA9PiBlbC5jbGFzc05hbWVcbiAgICAgICYmIHR5cGVvZiBlbC5jbGFzc05hbWUgPT09ICdzdHJpbmcnXG4gICAgICAmJiBlbC5jbGFzc05hbWUuaW5jbHVkZXMoJ2Nsb3NlX2FwcCcpKTtcblxuICAgIGlmIChjbG9zZUJ1dHRvbikge1xuICAgIC8vICBjb25zb2xlLmxvZygnQ2xpY2sgcmlsZXZhdG8gc3VsIGJvdHRvbmUgZGkgY2hpdXN1cmE6JywgY2xvc2VCdXR0b24pO1xuXG4gICAgICBjb25zdCBwYXJlbnRBcHBJdGVtID0gY2xvc2VCdXR0b24uY2xvc2VzdCgnLnRlaS1hcHAnKTtcbiAgICAgIGlmIChwYXJlbnRBcHBJdGVtICYmIHBhcmVudEFwcEl0ZW0uc3R5bGUpIHtcbiAgICAgICAgLy8gICAgY29uc29sZS5sb2coJ0NoaXVzdXJhIGRlbGxcXCdlbGVtZW50byB0ZWktYXBwJyk7XG4gICAgICAgIHBhcmVudEFwcEl0ZW0uc3R5bGUuZGlzcGxheSA9ICdub25lJztcbiAgICAgICAgKHBhcmVudEFwcEl0ZW0gYXMgSFRNTEVsZW1lbnQpLnN0eWxlLnRyYW5zZm9ybSA9ICcnO1xuICAgICAgICBwYXlsb2FkLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgaW5zaWRlVGVpQXBwID0gY2xpY2tQYXRoLmZpbmQoKGVsKSA9PiBlbC5jbGFzc05hbWVcbiAgICAgICYmIHR5cGVvZiBlbC5jbGFzc05hbWUgPT09ICdzdHJpbmcnXG4gICAgICAmJiBlbC5jbGFzc05hbWUuaW5jbHVkZXMoJ3RlaS1hcHAnKSk7XG5cbiAgICBpZiAoaW5zaWRlVGVpQXBwICYmIChpbnNpZGVUZWlBcHAgYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPT09ICdibG9jaycpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBDaGl1c3VyYSBub3RlIGNvbiB0YXN0b1xuICAgIGNvbnN0IGNsb3NlTm90ZUJ1dHRvbiA9IGNsaWNrUGF0aC5maW5kKChlbCkgPT4gZWwuY2xhc3NOYW1lXG4gICAgICAmJiB0eXBlb2YgZWwuY2xhc3NOYW1lID09PSAnc3RyaW5nJ1xuICAgICAgJiYgZWwuY2xhc3NOYW1lLmluY2x1ZGVzKCdjbG9zZV9ub3RlJykpO1xuXG4gICAgaWYgKGNsb3NlTm90ZUJ1dHRvbikge1xuICAgIC8vICBjb25zb2xlLmxvZygnQ2xpY2sgcmlsZXZhdG8gc3VsIGJvdHRvbmUgZGkgY2hpdXN1cmEgbm90YTonLCBjbG9zZU5vdGVCdXR0b24pO1xuXG4gICAgICBjb25zdCBwYXJlbnROb3RlSXRlbSA9IGNsb3NlTm90ZUJ1dHRvbi5jbG9zZXN0KCcubm90ZS1pdGVtJyk7XG4gICAgICBpZiAocGFyZW50Tm90ZUl0ZW0gJiYgcGFyZW50Tm90ZUl0ZW0uc3R5bGUpIHtcbiAgICAgICAgLy8gICAgY29uc29sZS5sb2coJ0NoaXVzdXJhIGRlbGxcXCdlbGVtZW50byBub3RlLWl0ZW0nKTtcbiAgICAgICAgcGFyZW50Tm90ZUl0ZW0uc3R5bGUuZGlzcGxheSA9ICdub25lJztcbiAgICAgICAgKHBhcmVudE5vdGVJdGVtIGFzIEhUTUxFbGVtZW50KS5zdHlsZS50cmFuc2Zvcm0gPSAnJztcbiAgICAgICAgcGF5bG9hZC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChwYXlsb2FkLnBhdGgpIHtcbiAgICAgIHRhcmdldCA9IHBheWxvYWQucGF0aC5maW5kKFxuICAgICAgICAoeyB0YWdOYW1lIH0pID0+IHRhZ05hbWUgPT09ICdQQi1ISUdITElHSFQnXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0YXJnZXQgPSBwYXlsb2FkLmNvbXBvc2VkUGF0aCgpLmZpbmQoXG4gICAgICAgICh7IHRhZ05hbWUgfSkgPT4gdGFnTmFtZSA9PT0gJ1BCLUhJR0hMSUdIVCdcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKHRhcmdldCAmJiB0YXJnZXQuZ2V0QXR0cmlidXRlKCd0eXBlJykgPT09ICdhcHBfbGVtJykge1xuICAgICAgY29uc3QgYXBwSWQgPSB0YXJnZXQuZ2V0QXR0cmlidXRlKCdrZXknKTtcbiAgICAgIC8vIGNvbnNvbGUubG9nKCdhcHBJZDonLCBhcHBJZCk7XG5cbiAgICAgIC8vIFBvc2l6aW9uZSBlbGVtZW50byBjbGljY2F0b1xuICAgICAgY29uc3QgY2xpY2tlZEVsZW1lbnRQb3NpdGlvbiA9ICh0YXJnZXQgYXMgSFRNTEVsZW1lbnQpLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcDtcblxuICAgICAgY29uc3QgY2xpY2tlZFZpZXcgPSBjbGlja1BhdGguZmluZCgoZWwpID0+IGVsLmlkICYmIGVsLmlkLmVuZHNXaXRoKCctdmlldycpKTtcbiAgICAgIGNvbnN0IGNsaWNrZWRWaWV3SWQgPSBjbGlja2VkVmlldyA/IGNsaWNrZWRWaWV3LmlkIDogbnVsbDtcblxuICAgICAgY29uc3QgYXBwYXJhdHVzVmlldyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5uNy1wYXJhbGxlbC10ZXh0LXZpZXdlciBbaWQkPVwiLXZpZXdcIl0nKTtcbiAgICAgIC8vIGNvbnNvbGUubG9nKCdOdW1lcm8gZGkgdmlldyB0cm92YXRlOicsIGFwcGFyYXR1c1ZpZXcubGVuZ3RoKTtcblxuICAgICAgbGV0IGFuY2hvckVsZW1lbnQgPSBudWxsO1xuICAgICAgbGV0IHRlaUFwcEVsZW1lbnQgPSBudWxsO1xuXG4gICAgICBhcHBhcmF0dXNWaWV3LmZvckVhY2goKHZpZXcpID0+IHtcbiAgICAgICAgLy8gU2FsdGEgbGEgdmlldyBpbiBjdWkgw6ggc3RhdG8gZmF0dG8gaWwgY2xpY2tcbiAgICAgICAgaWYgKHZpZXcuaWQgPT09IGNsaWNrZWRWaWV3SWQpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodmlldy5zaGFkb3dSb290KSB7XG4gICAgICAgICAgY29uc3QgZm91bmQgPSB2aWV3LnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcihgW2lkPVwiJHthcHBJZH1cIl1gKTtcbiAgICAgICAgICBpZiAoZm91bmQpIHtcbiAgICAgICAgICAgIGlmICghYW5jaG9yRWxlbWVudCkge1xuICAgICAgICAgICAgICBhbmNob3JFbGVtZW50ID0gZm91bmQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IGFwcEVsZW1lbnQgPSBmb3VuZC5jbG9zZXN0KCcudGVpLWFwcCcpO1xuICAgICAgICAgICAgaWYgKGFwcEVsZW1lbnQgJiYgIXRlaUFwcEVsZW1lbnQpIHtcbiAgICAgICAgICAgICAgdGVpQXBwRWxlbWVudCA9IGFwcEVsZW1lbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgaWYgKHRlaUFwcEVsZW1lbnQpIHtcbiAgICAgICAgY29uc3QgaXNWaXNpYmxlID0gKHRlaUFwcEVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPT09ICdibG9jayc7XG5cbiAgICAgICAgaWYgKGlzVmlzaWJsZSkge1xuICAgICAgICAgICh0ZWlBcHBFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICAgICAgICAgICh0ZWlBcHBFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5zdHlsZS50cmFuc2Zvcm0gPSAnJztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAodGVpQXBwRWxlbWVudCBhcyBIVE1MRWxlbWVudCkuc3R5bGUuZGlzcGxheSA9ICdibG9jayc7XG5cbiAgICAgICAgICAvLyBwb3NpemlvbmUgYXR0dWFsZVxuICAgICAgICAgIGNvbnN0IGVsZW1lbnRQb3NpdGlvbiA9IHRlaUFwcEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wO1xuXG4gICAgICAgICAgLy8gZGlmZmVyZW56YVxuICAgICAgICAgIGNvbnN0IHBvc2l0aW9uRGlmZmVyZW5jZSA9IGNsaWNrZWRFbGVtZW50UG9zaXRpb24gLSBlbGVtZW50UG9zaXRpb247XG5cbiAgICAgICAgICAvLyBzcG9zdGFtZW50b1xuICAgICAgICAgICh0ZWlBcHBFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5zdHlsZS50cmFuc2Zvcm0gPSBgdHJhbnNsYXRlWSgke3Bvc2l0aW9uRGlmZmVyZW5jZX1weClgO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zb2xlLndhcm4oJ3RlaUFwcEVsZW1lbnQgbm9uIHRyb3ZhdG8hJyk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh0YXJnZXQgJiYgdGFyZ2V0LmdldEF0dHJpYnV0ZSgndHlwZScpID09PSAnbm90ZV9saW5lJykge1xuICAgICAgY29uc3Qgbm90ZUlkID0gdGFyZ2V0LmdldEF0dHJpYnV0ZSgna2V5Jyk7XG4gICAgICAvLyBjb25zb2xlLmxvZygnbm90ZUlkJywgbm90ZUlkKTtcblxuICAgICAgY29uc3QgY2xpY2tlZEVsZW1lbnRQb3NpdGlvbiA9ICh0YXJnZXQgYXMgSFRNTEVsZW1lbnQpLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcDtcblxuICAgICAgY29uc3QgYXBwYXJhdHVzVmlldyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5uNy10ZXh0LXZpZXdlciAjYXBwYXJhdG8tdmlldycpO1xuXG4gICAgICBjb25zdCBhbmNob3JFbGVtZW50ID0gYXBwYXJhdHVzVmlld1xuICAgICAgICA/LnNoYWRvd1Jvb3RcbiAgICAgICAgPy5xdWVyeVNlbGVjdG9yKGAjJHtub3RlSWR9YCk7XG5cbiAgICAgIGNvbnN0IHRlaU5vdGVFbGVtZW50ID0gYW5jaG9yRWxlbWVudFxuICAgICAgICA/IGFuY2hvckVsZW1lbnQuY2xvc2VzdCgnLm5vdGUtaXRlbScpXG4gICAgICAgIDogbnVsbDtcbiAgICAgIGlmICh0ZWlOb3RlRWxlbWVudCkge1xuICAgICAgICAvLyBWZXJpZmljYSBzZSDDqCB2aXNpYmlsZVxuICAgICAgICBjb25zdCBpc1Zpc2libGUgPSAodGVpTm90ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPT09ICdibG9jayc7XG5cbiAgICAgICAgaWYgKGlzVmlzaWJsZSkge1xuICAgICAgICAgICh0ZWlOb3RlRWxlbWVudCBhcyBIVE1MRWxlbWVudCkuc3R5bGUuZGlzcGxheSA9ICdub25lJztcblxuICAgICAgICAgICh0ZWlOb3RlRWxlbWVudCBhcyBIVE1MRWxlbWVudCkuc3R5bGUudHJhbnNmb3JtID0gJyc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgKHRlaU5vdGVFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5zdHlsZS5kaXNwbGF5ID0gJ2Jsb2NrJztcblxuICAgICAgICAgIC8vIHBvc2l6aW9uZSBhdHR1YWxlXG4gICAgICAgICAgY29uc3QgZWxlbWVudFBvc2l0aW9uID0gdGVpTm90ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wO1xuXG4gICAgICAgICAgLy8gZGlmZmVyZW56YVxuICAgICAgICAgIGNvbnN0IHBvc2l0aW9uRGlmZmVyZW5jZSA9IGNsaWNrZWRFbGVtZW50UG9zaXRpb24gLSBlbGVtZW50UG9zaXRpb247XG5cbiAgICAgICAgICAvLyBzcG9zdGFtZW50b1xuICAgICAgICAgICh0ZWlOb3RlRWxlbWVudCBhcyBIVE1MRWxlbWVudCkuc3R5bGUudHJhbnNmb3JtID0gYHRyYW5zbGF0ZVkoJHtwb3NpdGlvbkRpZmZlcmVuY2V9cHgpYDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodGFyZ2V0ICYmIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ2tleScpICYmIHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3Njcm9sbHZpZXcnKSAhPT0gbnVsbCkge1xuICAgICAgLy8gUGVyIHNjcm9sbCBzdSBpbmRpY2VcbiAgICAgIGNvbnN0IGtleSA9IHRhcmdldC5nZXRBdHRyaWJ1dGUoJ2tleScpO1xuICAgICAgaWYgKGtleSkge1xuICAgICAgICB0aGlzLnNjcm9sbFRvSW5kZXhFbGVtZW50KGtleSk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh0YXJnZXQgJiYgdGhpcy5vdXRwdXQudG9nZ2xlQ29sdW1uID09PSBmYWxzZSkge1xuICAgICAgaWYgKFxuICAgICAgICB0YXJnZXQuX19rZXlcbiAgICAgICAgJiYgKHRhcmdldC5jbGFzc05hbWUuaW5jbHVkZXMoJ3BlcnNvbicpXG4gICAgICAgICAgfHwgdGFyZ2V0LmNsYXNzTmFtZS5pbmNsdWRlcygncGxhY2UnKSlcbiAgICAgICkge1xuICAgICAgICB0aGlzLm91dHB1dC50b2dnbGVDb2x1bW4gPSB0cnVlO1xuICAgICAgICB0aGlzLnNjcm9sbEVsZW1lbnRzSW50b1ZpZXcodGFyZ2V0LCAnZW50aXR5JywgJyN0ZXh0LXZpZXdlci1pbmRleCcpO1xuICAgICAgfVxuICAgIH0gZWxzZSB0aGlzLm91dHB1dC50b2dnbGVDb2x1bW4gPSBmYWxzZTtcbiAgfVxuXG4gIHZpZXdMaXN0ZW5lclVwZGF0ZSgpIHtcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFxuICAgICAgJ3BiLXN0YXJ0LXVwZGF0ZScsXG4gICAgICBmdW5jdGlvbiBfbGlzdGVuZXIoKSB7XG4gICAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3BiLXN0YXJ0LXVwZGF0ZScsIF9saXN0ZW5lciwgdHJ1ZSk7XG4gICAgICB9LFxuICAgICAgdHJ1ZVxuICAgICk7XG4gIH1cblxuICBjaGFuZ2VWaWV3KHZpZXcsIHJlZnJlc2gpIHtcbiAgICBzZXRUaW1lb3V0KFxuICAgICAgKHYsIHIpID0+IHtcbiAgICAgICAgLy8gY29uc29sZS5sb2coYFRFU1QgQ0hBTkdFIFZJRVc6ICR7dmlld31gKTtcbiAgICAgICAgZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChcbiAgICAgICAgICBuZXcgQ3VzdG9tRXZlbnQoJ3BiLXRvZ2dsZScsIHtcbiAgICAgICAgICAgIGRldGFpbDoge1xuICAgICAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICAgICAgdmlldzogdixcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgYWN0aW9uOiByID8gJ3JlZnJlc2gnIDogJycsXG4gICAgICAgICAgICAgIGtleTogJ3RyYW5zY3JpcHRpb24nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgfSxcbiAgICAgIDYwMCxcbiAgICAgIHZpZXcsXG4gICAgICByZWZyZXNoXG4gICAgKTtcbiAgfVxuXG4gIHNjcm9sbEVsZW1lbnRzSW50b1ZpZXcodGFyZ2V0LCB0eXBlLCB2aWV3KSB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBsZXQgZWxlbWVudDogYW55O1xuICAgICAgaWYgKHR5cGUgPT09ICdjaGFwdGVyJykge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgZG9jdW1lbnRcbiAgICAgICAgICAgIC5xdWVyeVNlbGVjdG9yKCcubjctdGV4dC12aWV3ZXIgI3ZpZXcwJylcbiAgICAgICAgICAgIC5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoJ3BiLWhpZ2hsaWdodCcpXG4gICAgICAgICkge1xuICAgICAgICAgIGNvbnN0IGhpZ2hsaWdodCA9IGRvY3VtZW50XG4gICAgICAgICAgICAucXVlcnlTZWxlY3RvcignLm43LXRleHQtdmlld2VyICN2aWV3MCcpXG4gICAgICAgICAgICAuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yQWxsKCdwYi1oaWdobGlnaHQnKTtcblxuICAgICAgICAgIGNvbnN0IGhpZ2hsaWdodElkID0gaGlnaGxpZ2h0W2hpZ2hsaWdodC5sZW5ndGggLSAxXS5pZDsgLy8gcy54XG5cbiAgICAgICAgICBjb25zdCBmcmFnbWVudE51bWJlciA9IGhpZ2hsaWdodElkLnJlcGxhY2UoJy4nLCAnXFxcXC4nKTtcblxuICAgICAgICAgIGVsZW1lbnQgPSBkb2N1bWVudFxuICAgICAgICAgICAgLnF1ZXJ5U2VsZWN0b3IodmlldylcbiAgICAgICAgICAgIC5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoYCMke2ZyYWdtZW50TnVtYmVyfWApO1xuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKHR5cGUgPT09ICdlbnRpdHknKSB7XG4gICAgICAgIGNvbnN0IGtleSA9IHRhcmdldC5fX2tleTtcbiAgICAgICAgZWxlbWVudCA9IGRvY3VtZW50XG4gICAgICAgICAgLnF1ZXJ5U2VsZWN0b3IoYC5uNy10ZXh0LXZpZXdlciAke3ZpZXd9YClcbiAgICAgICAgICAuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKGAjJHtrZXl9YCk7XG4gICAgICB9IGVsc2UgaWYgKHR5cGUgPT09ICdocScpIHtcbiAgICAgICAgZWxlbWVudCA9IGRvY3VtZW50XG4gICAgICAgICAgLnF1ZXJ5U2VsZWN0b3IoYC5uNy1wYXJhbGxlbC10ZXh0LXZpZXdlciAke3ZpZXd9YClcbiAgICAgICAgICAuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCcudGVpLWVtJyk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGNvbnRhaW5lciA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYC5uNy1wYXJhbGxlbC10ZXh0LXZpZXdlciAke3ZpZXd9YCk7XG4gICAgICBpZiAoZWxlbWVudCkge1xuICAgICAgICBjb250YWluZXIuc2Nyb2xsVG9wID0gZWxlbWVudC5vZmZzZXRUb3A7XG4gICAgICB9XG4gICAgfSwgNjAwKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTY3JvbGxhIGFsbCdlbGVtZW50byBjb3JyaXNwb25kZW50ZSBuZWxsJ2luZGljZVxuICAgKi9cbiAgc2Nyb2xsVG9JbmRleEVsZW1lbnQoa2V5OiBzdHJpbmcpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGNvbnN0IGNsZWFuS2V5ID0ga2V5LnJlcGxhY2UoJyMnLCAnJyk7XG4gICAgICBjb25zdCB2aWV3cyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5uNy1wYXJhbGxlbC10ZXh0LXZpZXdlciBbaWQkPVwiLXZpZXdcIl06bm90KCN0cmFuc2NyaXB0aW9uLXZpZXcpJyk7XG5cbiAgICAgIEFycmF5LmZyb20odmlld3MpLnNvbWUoKHZpZXcpID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0ID0gdmlldy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKGAjJHtjbGVhbktleX1gKTtcbiAgICAgICAgaWYgKHRhcmdldCkge1xuICAgICAgICAgICh0YXJnZXQgYXMgSFRNTEVsZW1lbnQpLnNjcm9sbEludG9WaWV3KHsgYmVoYXZpb3I6ICdzbW9vdGgnLCBibG9jazogJ2NlbnRlcicgfSk7XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfSk7XG4gICAgfSwgMzAwKTtcbiAgfVxufVxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uNy1ib2lsZXJwbGF0ZS1tdXJ1Y2Evc3JjL2xpYi9pbnRlcmZhY2VzL2Zvcm0uaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJRGF0YVNvdXJjZSwgSUV2ZW50SGFuZGxlciB9IGZyb20gJ0BuZXQ3L2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgdHlwZSBNckZvcm1JbnB1dFN0YXRlPFQ+ID0ge1xuICB2YWx1ZT86IFQ7XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgaGlkZGVuPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNcklucHV0RGF0YVNvdXJjZTxUPiBleHRlbmRzIElEYXRhU291cmNlIHtcbiAgaWQ6IHN0cmluZztcbiAgc3RhdGU6IE1yRm9ybUlucHV0U3RhdGU8VD47XG4gIGdldFN0YXRlKCk6IE1yRm9ybUlucHV0U3RhdGU8VD47XG4gIHNldFN0YXRlKHN0YXRlOiBNckZvcm1JbnB1dFN0YXRlPFQ+KTogdm9pZDtcbiAgY2xlYXIoKTogdm9pZDtcbiAgcmVmcmVzaCgpOiB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1ySW5wdXRFdmVudEhhbmRsZXIgZXh0ZW5kcyBJRXZlbnRIYW5kbGVyIHtcbiAgY2hhbmdlZCQ6IFN1YmplY3Q8TXJDaGFuZ2VkUGFyYW1zPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNckNoYW5nZWRQYXJhbXMge1xuICBpZDogc3RyaW5nO1xuICBzdGF0ZTogTXJGb3JtSW5wdXRTdGF0ZTxhbnk+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1yRm9ybUNvbmZpZyB7XG4gIHNlY3Rpb25zOiBNckZvcm1Db25maWdTZWN0aW9uW107XG4gIGdyb3Vwcz86IE1yRm9ybUNvbmZpZ0dyb3VwW107XG4gIHN1Ym1pdEJ1dHRvbjoge1xuICAgIGxhYmVsOiBzdHJpbmc7XG4gIH07XG4gIHJlc2V0QnV0dG9uPzoge1xuICAgIGxhYmVsOiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTXJGb3JtQ29uZmlnU2VjdGlvbiB7XG4gIGlkOiBzdHJpbmc7XG4gIHRpdGxlPzogc3RyaW5nO1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgaW5wdXRzOiBNckZvcm1Db25maWdJbnB1dDxhbnk+W107XG4gIGNsYXNzZXM/OiBzdHJpbmc7XG4gIGFkdmFuY2VkU2VjdGlvbj86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTXJGb3JtQ29uZmlnR3JvdXAge1xuICBpZDogc3RyaW5nO1xuICBzZWN0aW9uczogc3RyaW5nW107XG4gIGNsYXNzZXM/OiBzdHJpbmc7XG4gIG9wdGlvbnM/OiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTXJGb3JtQ29uZmlnSW5wdXQ8VD4ge1xuICBpZDogc3RyaW5nO1xuICB0eXBlOiBzdHJpbmc7XG4gIGRhdGE6IG9iamVjdDtcbiAgc3RhdGU/OiBNckZvcm1JbnB1dFN0YXRlPFQ+O1xuICBvcHRpb25zPzoge1xuICAgIGNsYXNzZXM/OiBzdHJpbmc7XG4gIH07XG59XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uNy1ib2lsZXJwbGF0ZS1tdXJ1Y2Evc3JjL2xpYi9pbnRlcmZhY2VzL2Zvcm0uaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJRGF0YVNvdXJjZSwgSUV2ZW50SGFuZGxlciB9IGZyb20gJ0BuZXQ3L2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgdHlwZSBNckZvcm1JbnB1dFN0YXRlPFQ+ID0ge1xuICB2YWx1ZT86IFQ7XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgaGlkZGVuPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNcklucHV0RGF0YVNvdXJjZTxUPiBleHRlbmRzIElEYXRhU291cmNlIHtcbiAgaWQ6IHN0cmluZztcbiAgc3RhdGU6IE1yRm9ybUlucHV0U3RhdGU8VD47XG4gIGdldFN0YXRlKCk6IE1yRm9ybUlucHV0U3RhdGU8VD47XG4gIHNldFN0YXRlKHN0YXRlOiBNckZvcm1JbnB1dFN0YXRlPFQ+KTogdm9pZDtcbiAgY2xlYXIoKTogdm9pZDtcbiAgcmVmcmVzaCgpOiB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1ySW5wdXRFdmVudEhhbmRsZXIgZXh0ZW5kcyBJRXZlbnRIYW5kbGVyIHtcbiAgY2hhbmdlZCQ6IFN1YmplY3Q8TXJDaGFuZ2VkUGFyYW1zPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNckNoYW5nZWRQYXJhbXMge1xuICBpZDogc3RyaW5nO1xuICBzdGF0ZTogTXJGb3JtSW5wdXRTdGF0ZTxhbnk+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1yRm9ybUNvbmZpZyB7XG4gIHNlY3Rpb25zOiBNckZvcm1Db25maWdTZWN0aW9uW107XG4gIGdyb3Vwcz86IE1yRm9ybUNvbmZpZ0dyb3VwW107XG4gIHN1Ym1pdEJ1dHRvbjoge1xuICAgIGxhYmVsOiBzdHJpbmc7XG4gIH07XG4gIHJlc2V0QnV0dG9uPzoge1xuICAgIGxhYmVsOiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTXJGb3JtQ29uZmlnU2VjdGlvbiB7XG4gIGlkOiBzdHJpbmc7XG4gIHRpdGxlPzogc3RyaW5nO1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgaW5mbz86IHN0cmluZztcbiAgaW5wdXRzOiBNckZvcm1Db25maWdJbnB1dDxhbnk+W107XG4gIGNsYXNzZXM/OiBzdHJpbmc7XG4gIGFkdmFuY2VkU2VjdGlvbj86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTXJGb3JtQ29uZmlnR3JvdXAge1xuICBpZDogc3RyaW5nO1xuICBzZWN0aW9uczogc3RyaW5nW107XG4gIGNsYXNzZXM/OiBzdHJpbmc7XG4gIG9wdGlvbnM/OiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTXJGb3JtQ29uZmlnSW5wdXQ8VD4ge1xuICBpZDogc3RyaW5nO1xuICB0eXBlOiBzdHJpbmc7XG4gIGRhdGE6IG9iamVjdDtcbiAgc3RhdGU/OiBNckZvcm1JbnB1dFN0YXRlPFQ+O1xuICBvcHRpb25zPzoge1xuICAgIGNsYXNzZXM/OiBzdHJpbmc7XG4gIH07XG59XG4iXX0=
@@ -116,6 +116,9 @@ export class MrAdvancedSearchLayoutDS extends LayoutDataSource {
116
116
  if (section.description) {
117
117
  section.description = _t(section.description);
118
118
  }
119
+ if (section.info) {
120
+ section.info = _t(section.info);
121
+ }
119
122
  section.inputs.forEach((input) => {
120
123
  if (input.data.label) {
121
124
  input.data.label = _t(input.data.label);
@@ -164,4 +167,4 @@ export class MrAdvancedSearchLayoutDS extends LayoutDataSource {
164
167
  });
165
168
  }
166
169
  }
167
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtc2VhcmNoLWxheW91dC5kcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLW11cnVjYS9zcmMvbGliL2xheW91dHMvYWR2YW5jZWQtc2VhcmNoLWxheW91dC9hZHZhbmNlZC1zZWFyY2gtbGF5b3V0LmRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxFQUFFLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFHNUMsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBR3RELE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxnQkFBZ0I7SUFBOUQ7O1FBYVksaUJBQVksR0FBRyxFQUFFLENBQUM7UUFvRmxCLHlCQUFvQixHQUFHLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDNUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7WUFDdkMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtnQkFDcEMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUU7b0JBQ3pDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTt3QkFDdkIsSUFBSSxLQUFLLENBQUMsRUFBRSxLQUFLLEdBQUcsRUFBRSxDQUFDOzRCQUNyQixLQUFLLENBQUMsSUFBSSxHQUFHO2dDQUNYLEdBQUcsS0FBSyxDQUFDLElBQUk7Z0NBQ2Is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Q0FBQyxJQUFJLEtBQUssVUFBVSxFQUFFLENBQUM7b0JBQ2pFLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxJQUF5QixDQUFDO29CQUNsRCxJQUFJLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7d0JBQUUsT0FBTztvQkFDN0MsS0FBSyxDQUFDLElBQTBCLENBQUMsTUFBTSxHQUFHO3dCQUN6QyxTQUFTLFNBQVMsQ0FBQyxNQUFNLFNBQVM7d0JBQ2xDLGdFQUFnRSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXO3FCQUMxRixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDYixDQUFDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGEsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBMYXlvdXREYXRhU291cmNlLCBfdCB9IGZyb20gJ0BuZXQ3L2NvcmUnO1xuaW1wb3J0IHsgY2xvbmVEZWVwLCBpc0VtcHR5IH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IENvbW11bmljYXRpb25TZXJ2aWNlLCBDb25maWd1cmF0aW9uU2VydmljZSwgTWFpblN0YXRlU2VydmljZSB9IGZyb20gJ0BuZXQ3L2JvaWxlcnBsYXRlLWNvbW1vbic7XG5pbXBvcnQgeyBJbnB1dENoZWNrYm94RGF0YSwgSW5wdXRTZWxlY3REYXRhLCBJbnB1dFRleHREYXRhIH0gZnJvbSAnQG5ldDcvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTXJGb3JtTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvZm9ybS5tb2RlbCc7XG5pbXBvcnQgeyBNckxvY2FsZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9sb2NhbGUuc2VydmljZSc7XG5cbmV4cG9ydCBjbGFzcyBNckFkdmFuY2VkU2VhcmNoTGF5b3V0RFMgZXh0ZW5kcyBMYXlvdXREYXRhU291cmNlIHtcbiAgcHJvdGVjdGVkIHJvdXRlcjogUm91dGVyO1xuXG4gIHByb3RlY3RlZCBjb25maWd1cmF0aW9uOiBDb25maWd1cmF0aW9uU2VydmljZTtcblxuICBwcm90ZWN0ZWQgY29tbXVuaWNhdGlvbjogQ29tbXVuaWNhdGlvblNlcnZpY2U7XG5cbiAgcHJvdGVjdGVkIG1haW5TdGF0ZTogTWFpblN0YXRlU2VydmljZTtcblxuICBwcm90ZWN0ZWQgbG9jYWxlU2VydmljZTogTXJMb2NhbGVTZXJ2aWNlO1xuXG4gIHByb3RlY3RlZCByb3V0ZURhdGE6IERhdGE7XG5cbiAgcHJvdGVjdGVkIGluaXRpYWxTdGF0ZSA9IHt9O1xuXG4gIHB1YmxpYyBwYWdlQ29uZmlnO1xuXG4gIHB1YmxpYyBmb3JtOiBNckZvcm1Nb2RlbDtcblxuICBvbkluaXQocGF5bG9hZCkge1xuICAgIHRoaXMucm91dGVyID0gcGF5bG9hZC5yb3V0ZXI7XG4gICAgdGhpcy5jb25maWd1cmF0aW9uID0gcGF5bG9hZC5jb25maWd1cmF0aW9uO1xuICAgIHRoaXMuY29tbXVuaWNhdGlvbiA9IHBheWxvYWQuY29tbXVuaWNhdGlvbjtcbiAgICB0aGlzLm1haW5TdGF0ZSA9IHBheWxvYWQubWFpblN0YXRlO1xuICAgIHRoaXMucm91dGVEYXRhID0gcGF5bG9hZC5yb3V0ZURhdGE7XG4gICAgdGhpcy5sb2NhbGVTZXJ2aWNlID0gcGF5bG9hZC5sb2NhbGVTZXJ2aWNlO1xuICAgIHRoaXMucGFnZUNvbmZpZyA9IHRoaXMuY29uZmlndXJhdGlvbi5nZXQodGhpcy5yb3V0ZURhdGEuY29uZmlnSWQpO1xuXG4gICAgLy8gYWRkIHRyYW5zbGF0aW9uc1xuICAgIHRoaXMuYWRkVHJhbnNsYXRpb25zKHRoaXMucGFnZUNvbmZpZyk7XG5cbiAgICBsZXQgb3B0aW9uc1JlcSQ6IE9ic2VydmFibGU8dW5rbm93bj4gPSBvZih0cnVlKTtcbiAgICBpZiAodGhpcy5wYWdlQ29uZmlnLmhhc0R5bmFtaWNPcHRpb25zKSB7XG4gICAgICBjb25zdCBkeW5hbWljUmVxJCA9IHRoaXMuY29tbXVuaWNhdGlvbi5yZXF1ZXN0JCgnYWR2YW5jZWRTZWFyY2hPcHRpb25zJywge1xuICAgICAgICBvbkVycm9yOiAoZXJyKSA9PiB7XG4gICAgICAgICAgY29uc29sZS53YXJuKCdSZXF1ZXN0IGVycm9yJywgZXJyKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICBvcHRpb25zUmVxJCA9IGR5bmFtaWNSZXEkLnBpcGUoXG4gICAgICAgIHRhcCh0aGlzLmhhbmRsZU9wdGlvbnNSZXF1ZXN0KVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBvcHRpb25zUmVxJC5zdWJzY3JpYmUoe1xuICAgICAgY29tcGxldGU6ICgpID0+IHtcbiAgICAgICAgLy8gaW5pdCBmb3JtXG4gICAgICAgIHRoaXMuZm9ybSA9IG5ldyBNckZvcm1Nb2RlbCgpO1xuICAgICAgICAvLyBmb3JtIGluaXRcbiAgICAgICAgdGhpcy5mb3JtLmluaXQodGhpcy5wYWdlQ29uZmlnLmZvcm1Db25maWcpO1xuICAgICAgICAvLyBzZXQgaW5pdGlhbCBzdGF0ZVxuICAgICAgICB0aGlzLmluaXRpYWxTdGF0ZSA9IGNsb25lRGVlcCh0aGlzLmZvcm0uZ2V0U3RhdGUoKSk7XG5cbiAgICAgICAgdGhpcy5vbmUoJ21yLWZvcm0td3JhcHBlci1hY2NvcmRpb24nKS51cGRhdGUoe1xuICAgICAgICAgIGZvcm06IHRoaXMuZm9ybVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIC8vIHVwZGF0ZSBoZWFkIHRpdGxlXG4gICAgdGhpcy51cGRhdGVIZWFkVGl0bGUoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCB1cGRhdGVIZWFkVGl0bGUoKSB7XG4gICAgY29uc3QgYXBwTmFtZSA9IHRoaXMuY29uZmlndXJhdGlvbi5nZXQoJ25hbWUnKTtcbiAgICBjb25zdCBwYWdlVGl0bGUgPSB0aGlzLnBhZ2VDb25maWcudGl0bGU7XG4gICAgdGhpcy5tYWluU3RhdGUudXBkYXRlKCdoZWFkVGl0bGUnLCBbYXBwTmFtZSwgX3QocGFnZVRpdGxlKV0uam9pbignID4gJykpO1xuICB9XG5cbiAgb25TdWJtaXQoeyBzdGF0ZSB9KSB7XG4gICAgaWYgKCFpc0VtcHR5KHN0YXRlKSkge1xuICAgICAgY29uc3QgeyByZXN1bHRzVXJsIH0gPSB0aGlzLnBhZ2VDb25maWc7XG4gICAgICBsZXQgYmFzZVVybCA9IHJlc3VsdHNVcmw7XG4gICAgICBpZiAodHlwZW9mIHJlc3VsdHNVcmwgIT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGNvbnN0IGxvY2FsZSA9IHRoaXMubG9jYWxlU2VydmljZS5nZXRMb2NhbGUoKTtcbiAgICAgICAgYmFzZVVybCA9IHJlc3VsdHNVcmxbbG9jYWxlXTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHBhcmFtcyA9IE9iamVjdC5rZXlzKHN0YXRlKVxuICAgICAgICAuZmlsdGVyKChrZXkpID0+ICEoc3RhdGVba2V5XS5kaXNhYmxlZCB8fCBpc0VtcHR5KHN0YXRlW2tleV0udmFsdWUpKSlcbiAgICAgICAgLm1hcCgoa2V5KSA9PiAoe1xuICAgICAgICAgIGtleSxcbiAgICAgICAgICB2YWx1ZTogQXJyYXkuaXNBcnJheShzdGF0ZVtrZXldLnZhbHVlKVxuICAgICAgICAgICAgPyBzdGF0ZVtrZXldLnZhbHVlLmpvaW4oJywnKVxuICAgICAgICAgICAgOiBzdGF0ZVtrZXldLnZhbHVlXG4gICAgICAgIH0pKVxuICAgICAgICAubWFwKCh7IGtleSwgdmFsdWUgfSkgPT4gYCR7a2V5fT0ke2VuY29kZVVSSUNvbXBvbmVudCh2YWx1ZSl9YCk7XG4gICAgICBjb25zdCB1cmwgPSBgJHtiYXNlVXJsfT8ke3BhcmFtcy5qb2luKCcmJyl9YDtcbiAgICAgIHdpbmRvdy5vcGVuKHVybCwgJ19ibGFuaycpO1xuICAgIH1cbiAgfVxuXG4gIG9uUmVzZXQoKSB7XG4gICAgT2JqZWN0LmtleXModGhpcy5pbml0aWFsU3RhdGUpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgY29uc3QgaW5wdXRTdGF0ZSA9IGNsb25lRGVlcCh0aGlzLmluaXRpYWxTdGF0ZVtrZXldKTtcbiAgICAgIHRoaXMuZm9ybS5nZXRJbnB1dChrZXkpLnNldFN0YXRlKGlucHV0U3RhdGUpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZU9wdGlvbnNSZXF1ZXN0ID0gKHJlc3BvbnNlKSA9PiB7XG4gICAgY29uc3QgeyBmb3JtQ29uZmlnIH0gPSB0aGlzLnBhZ2VDb25maWc7XG4gICAgT2JqZWN0LmtleXMocmVzcG9uc2UpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgZm9ybUNvbmZpZy5zZWN0aW9ucy5mb3JFYWNoKCh7IGlucHV0cyB9KSA9PiB7XG4gICAgICAgIGlucHV0cy5mb3JFYWNoKChpbnB1dCkgPT4ge1xuICAgICAgICAgIGlmIChpbnB1dC5pZCA9PT0ga2V5KSB7XG4gICAgICAgICAgICBpbnB1dC5kYXRhID0ge1xuICAgICAgICAgICAgICAuLi5pbnB1dC5kYXRhLFxuICAgICAgICAgICAgICAuLi5yZXNwb25zZVtrZXldXG4gICAgICAgICAgICB9O1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfTtcblxuICBwcm90ZWN0ZWQgYWRkVHJhbnNsYXRpb25zKHBhZ2VDb25maWcpIHtcbiAgICBjb25zdCB7IGZvcm1Db25maWcgfSA9IHBhZ2VDb25maWc7XG4gICAgLy8gcGFnZSB0aXRsZVxuICAgIHBhZ2VDb25maWcudGl0bGUgPSBfdChwYWdlQ29uZmlnLnRpdGxlKTtcbiAgICAvLyBzdWJtaXRcbiAgICBpZiAoZm9ybUNvbmZpZy5zdWJtaXRCdXR0b24pIHtcbiAgICAgIGZvcm1Db25maWcuc3VibWl0QnV0dG9uLmxhYmVsID0gX3QoZm9ybUNvbmZpZy5zdWJtaXRCdXR0b24ubGFiZWwpO1xuICAgIH1cbiAgICAvLyByZXNldFxuICAgIGlmIChmb3JtQ29uZmlnLnJlc2V0QnV0dG9uKSB7XG4gICAgICBmb3JtQ29uZmlnLnJlc2V0QnV0dG9uLmxhYmVsID0gX3QoZm9ybUNvbmZpZy5yZXNldEJ1dHRvbi5sYWJlbCk7XG4gICAgfVxuICAgIC8vIGdyb3Vwc1xuICAgIGZvcm1Db25maWcuZ3JvdXBzLmZvckVhY2goKGdyb3VwKSA9PiB7XG4gICAgICBpZiAoZ3JvdXAub3B0aW9ucz8ubGFiZWwpIHtcbiAgICAgICAgZ3JvdXAub3B0aW9ucy5sYWJlbCA9IF90KGdyb3VwLm9wdGlvbnMubGFiZWwpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIC8vIHNlY3Rpb25zXG4gICAgZm9ybUNvbmZpZy5zZWN0aW9ucy5mb3JFYWNoKChzZWN0aW9uKSA9PiB7XG4gICAgICBpZiAoc2VjdGlvbi50aXRsZSkge1xuICAgICAgICBzZWN0aW9uLnRpdGxlID0gX3Qoc2VjdGlvbi50aXRsZSk7XG4gICAgICB9XG4gICAgICBpZiAoc2VjdGlvbi5kZXNjcmlwdGlvbikge1xuICAgICAgICBzZWN0aW9uLmRlc2NyaXB0aW9uID0gX3Qoc2VjdGlvbi5kZXNjcmlwdGlvbik7XG4gICAgICB9XG4gICAgICBzZWN0aW9uLmlucHV0cy5mb3JFYWNoKChpbnB1dCkgPT4ge1xuICAgICAgICBpZiAoaW5wdXQuZGF0YS5sYWJlbCkge1xuICAgICAgICAgIGlucHV0LmRhdGEubGFiZWwgPSBfdChpbnB1dC5kYXRhLmxhYmVsKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChpbnB1dC5kYXRhLmxlZ2VuZCkge1xuICAgICAgICAgIGlucHV0LmRhdGEubGVnZW5kID0gX3QoaW5wdXQuZGF0YS5sZWdlbmQpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gaW5wdXQgdGV4dCAvIHR5cGVhaGVhZFxuICAgICAgICBpZiAoaW5wdXQudHlwZSA9PT0gJ3RleHQnIHx8IGlucHV0LnR5cGUgPT09ICd0eXBlYWhlYWQnKSB7XG4gICAgICAgICAgaWYgKGlucHV0LmRhdGEucGxhY2Vob2xkZXIpIHtcbiAgICAgICAgICAgIGlucHV0LmRhdGEucGxhY2Vob2xkZXIgPSBfdChpbnB1dC5kYXRhLnBsYWNlaG9sZGVyKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy8gaW5wdXQgY2hlY2tib3hcbiAgICAgICAgaWYgKGlucHV0LnR5cGUgPT09ICdjaGVja2JveCcpIHtcbiAgICAgICAgICBpbnB1dC5kYXRhLmNoZWNrYm94ZXMuZm9yRWFjaCgoY2hlY2tib3gpID0+IHtcbiAgICAgICAgICAgIGNoZWNrYm94LmxhYmVsID0gX3QoY2hlY2tib3gubGFiZWwpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIC8vIGlucHV0IHNlbGVjdFxuICAgICAgICBpZiAoaW5wdXQudHlwZSA9PT0gJ3NlbGVjdCcpIHtcbiAgICAgICAgICBpbnB1dC5kYXRhLm9wdGlvbnMuZm9yRWFjaCgob3B0aW9uKSA9PiB7XG4gICAgICAgICAgICBvcHRpb24ubGFiZWwgPSBfdChvcHRpb24ubGFiZWwpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gaW5mbyB0b29sdGlwXG4gICAgICAgIGlmIChpbnB1dC5pbmZvICYmIGlucHV0LmRhdGEubGFiZWwgJiYgWyd0ZXh0JywgJ3NlbGVjdCcsICd0eXBlYWhlYWQnXS5pbmNsdWRlcyhpbnB1dC50eXBlKSkge1xuICAgICAgICAgIGNvbnN0IGlucHV0RGF0YSA9IGlucHV0LmRhdGEgYXMgSW5wdXRUZXh0RGF0YSB8IElucHV0U2VsZWN0RGF0YTtcbiAgICAgICAgICBpZiAoL243LWljb24vLnRlc3QoaW5wdXQuZGF0YS5sYWJlbCkpIHJldHVybjtcbiAgICAgICAgICAoaW5wdXQuZGF0YSBhcyBJbnB1dFRleHREYXRhIHwgSW5wdXRTZWxlY3REYXRhKS5sYWJlbCA9IFtcbiAgICAgICAgICAgIGA8c3Bhbj4ke2lucHV0RGF0YS5sYWJlbH08L3NwYW4+YCxcbiAgICAgICAgICAgIGA8c3BhbiBjbGFzcz1cIm1yLWlucHV0LWluZm8gbjctaWNvbiBuNy1pY29uLWluZm8tY2lyY2xlXCIgYWx0PVwiJHtfdChpbnB1dC5pbmZvKX1cIj48L3NwYW4+YFxuICAgICAgICAgIF0uam9pbignJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlucHV0LmluZm8gJiYgaW5wdXQuZGF0YS5sZWdlbmQgJiYgaW5wdXQudHlwZSA9PT0gJ2NoZWNrYm94Jykge1xuICAgICAgICAgIGNvbnN0IGlucHV0RGF0YSA9IGlucHV0LmRhdGEgYXMgSW5wdXRDaGVja2JveERhdGE7XG4gICAgICAgICAgaWYgKC9uNy1pY29uLy50ZXN0KGlucHV0LmRhdGEubGVnZW5kKSkgcmV0dXJuO1xuICAgICAgICAgIChpbnB1dC5kYXRhIGFzIElucHV0Q2hlY2tib3hEYXRhKS5sZWdlbmQgPSBbXG4gICAgICAgICAgICBgPHNwYW4+JHtpbnB1dERhdGEubGVnZW5kfTwvc3Bhbj5gLFxuICAgICAgICAgICAgYDxzcGFuIGNsYXNzPVwibXItaW5wdXQtaW5mbyBuNy1pY29uIG43LWljb24taW5mby1jaXJjbGVcIiBhbHQ9XCIke190KGlucHV0LmluZm8pfVwiPjwvc3Bhbj5gXG4gICAgICAgICAgXS5qb2luKCcnKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
170
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtc2VhcmNoLWxheW91dC5kcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL243LWJvaWxlcnBsYXRlLW11cnVjYS9zcmMvbGliL2xheW91dHMvYWR2YW5jZWQtc2VhcmNoLWxheW91dC9hZHZhbmNlZC1zZWFyY2gtbGF5b3V0LmRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxFQUFFLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFHNUMsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBR3RELE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxnQkFBZ0I7SUFBOUQ7O1FBYVksaUJBQVksR0FBRyxFQUFFLENBQUM7UUFvRmxCLHlCQUFvQixHQUFHLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDNUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7WUFDdkMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtnQkFDcEMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUU7b0JBQ3pDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTt3QkFDdkIsSUFBSSxLQUFLLENBQUMsRUFBRSxLQUFLLEdBQUcsRUFBRSxDQUFDOzRCQUNyQixLQUFLLENBQUMsSUFBSSxHQUFHO2dDQUNYLEdBQUcsS0FBSyxDQUFDLElBQUk7Z0NBQ2Is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LENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNiLENBQUM7Z0JBQ0QsSUFBSSxLQUFLLENBQUMsSUFBSSxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssVUFBVSxFQUFFLENBQUM7b0JBQ2pFLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxJQUF5QixDQUFDO29CQUNsRCxJQUFJLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7d0JBQUUsT0FBTztvQkFDN0MsS0FBSyxDQUFDLElBQTBCLENBQUMsTUFBTSxHQUFHO3dCQUN6QyxTQUFTLFNBQVMsQ0FBQyxNQUFNLFNBQVM7d0JBQ2xDLGdFQUFnRSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXO3FCQUMxRixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDYixDQUFDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGEsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBMYXlvdXREYXRhU291cmNlLCBfdCB9IGZyb20gJ0BuZXQ3L2NvcmUnO1xuaW1wb3J0IHsgY2xvbmVEZWVwLCBpc0VtcHR5IH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IENvbW11bmljYXRpb25TZXJ2aWNlLCBDb25maWd1cmF0aW9uU2VydmljZSwgTWFpblN0YXRlU2VydmljZSB9IGZyb20gJ0BuZXQ3L2JvaWxlcnBsYXRlLWNvbW1vbic7XG5pbXBvcnQgeyBJbnB1dENoZWNrYm94RGF0YSwgSW5wdXRTZWxlY3REYXRhLCBJbnB1dFRleHREYXRhIH0gZnJvbSAnQG5ldDcvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTXJGb3JtTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvZm9ybS5tb2RlbCc7XG5pbXBvcnQgeyBNckxvY2FsZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9sb2NhbGUuc2VydmljZSc7XG5cbmV4cG9ydCBjbGFzcyBNckFkdmFuY2VkU2VhcmNoTGF5b3V0RFMgZXh0ZW5kcyBMYXlvdXREYXRhU291cmNlIHtcbiAgcHJvdGVjdGVkIHJvdXRlcjogUm91dGVyO1xuXG4gIHByb3RlY3RlZCBjb25maWd1cmF0aW9uOiBDb25maWd1cmF0aW9uU2VydmljZTtcblxuICBwcm90ZWN0ZWQgY29tbXVuaWNhdGlvbjogQ29tbXVuaWNhdGlvblNlcnZpY2U7XG5cbiAgcHJvdGVjdGVkIG1haW5TdGF0ZTogTWFpblN0YXRlU2VydmljZTtcblxuICBwcm90ZWN0ZWQgbG9jYWxlU2VydmljZTogTXJMb2NhbGVTZXJ2aWNlO1xuXG4gIHByb3RlY3RlZCByb3V0ZURhdGE6IERhdGE7XG5cbiAgcHJvdGVjdGVkIGluaXRpYWxTdGF0ZSA9IHt9O1xuXG4gIHB1YmxpYyBwYWdlQ29uZmlnO1xuXG4gIHB1YmxpYyBmb3JtOiBNckZvcm1Nb2RlbDtcblxuICBvbkluaXQocGF5bG9hZCkge1xuICAgIHRoaXMucm91dGVyID0gcGF5bG9hZC5yb3V0ZXI7XG4gICAgdGhpcy5jb25maWd1cmF0aW9uID0gcGF5bG9hZC5jb25maWd1cmF0aW9uO1xuICAgIHRoaXMuY29tbXVuaWNhdGlvbiA9IHBheWxvYWQuY29tbXVuaWNhdGlvbjtcbiAgICB0aGlzLm1haW5TdGF0ZSA9IHBheWxvYWQubWFpblN0YXRlO1xuICAgIHRoaXMucm91dGVEYXRhID0gcGF5bG9hZC5yb3V0ZURhdGE7XG4gICAgdGhpcy5sb2NhbGVTZXJ2aWNlID0gcGF5bG9hZC5sb2NhbGVTZXJ2aWNlO1xuICAgIHRoaXMucGFnZUNvbmZpZyA9IHRoaXMuY29uZmlndXJhdGlvbi5nZXQodGhpcy5yb3V0ZURhdGEuY29uZmlnSWQpO1xuXG4gICAgLy8gYWRkIHRyYW5zbGF0aW9uc1xuICAgIHRoaXMuYWRkVHJhbnNsYXRpb25zKHRoaXMucGFnZUNvbmZpZyk7XG5cbiAgICBsZXQgb3B0aW9uc1JlcSQ6IE9ic2VydmFibGU8dW5rbm93bj4gPSBvZih0cnVlKTtcbiAgICBpZiAodGhpcy5wYWdlQ29uZmlnLmhhc0R5bmFtaWNPcHRpb25zKSB7XG4gICAgICBjb25zdCBkeW5hbWljUmVxJCA9IHRoaXMuY29tbXVuaWNhdGlvbi5yZXF1ZXN0JCgnYWR2YW5jZWRTZWFyY2hPcHRpb25zJywge1xuICAgICAgICBvbkVycm9yOiAoZXJyKSA9PiB7XG4gICAgICAgICAgY29uc29sZS53YXJuKCdSZXF1ZXN0IGVycm9yJywgZXJyKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICBvcHRpb25zUmVxJCA9IGR5bmFtaWNSZXEkLnBpcGUoXG4gICAgICAgIHRhcCh0aGlzLmhhbmRsZU9wdGlvbnNSZXF1ZXN0KVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBvcHRpb25zUmVxJC5zdWJzY3JpYmUoe1xuICAgICAgY29tcGxldGU6ICgpID0+IHtcbiAgICAgICAgLy8gaW5pdCBmb3JtXG4gICAgICAgIHRoaXMuZm9ybSA9IG5ldyBNckZvcm1Nb2RlbCgpO1xuICAgICAgICAvLyBmb3JtIGluaXRcbiAgICAgICAgdGhpcy5mb3JtLmluaXQodGhpcy5wYWdlQ29uZmlnLmZvcm1Db25maWcpO1xuICAgICAgICAvLyBzZXQgaW5pdGlhbCBzdGF0ZVxuICAgICAgICB0aGlzLmluaXRpYWxTdGF0ZSA9IGNsb25lRGVlcCh0aGlzLmZvcm0uZ2V0U3RhdGUoKSk7XG5cbiAgICAgICAgdGhpcy5vbmUoJ21yLWZvcm0td3JhcHBlci1hY2NvcmRpb24nKS51cGRhdGUoe1xuICAgICAgICAgIGZvcm06IHRoaXMuZm9ybVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIC8vIHVwZGF0ZSBoZWFkIHRpdGxlXG4gICAgdGhpcy51cGRhdGVIZWFkVGl0bGUoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCB1cGRhdGVIZWFkVGl0bGUoKSB7XG4gICAgY29uc3QgYXBwTmFtZSA9IHRoaXMuY29uZmlndXJhdGlvbi5nZXQoJ25hbWUnKTtcbiAgICBjb25zdCBwYWdlVGl0bGUgPSB0aGlzLnBhZ2VDb25maWcudGl0bGU7XG4gICAgdGhpcy5tYWluU3RhdGUudXBkYXRlKCdoZWFkVGl0bGUnLCBbYXBwTmFtZSwgX3QocGFnZVRpdGxlKV0uam9pbignID4gJykpO1xuICB9XG5cbiAgb25TdWJtaXQoeyBzdGF0ZSB9KSB7XG4gICAgaWYgKCFpc0VtcHR5KHN0YXRlKSkge1xuICAgICAgY29uc3QgeyByZXN1bHRzVXJsIH0gPSB0aGlzLnBhZ2VDb25maWc7XG4gICAgICBsZXQgYmFzZVVybCA9IHJlc3VsdHNVcmw7XG4gICAgICBpZiAodHlwZW9mIHJlc3VsdHNVcmwgIT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGNvbnN0IGxvY2FsZSA9IHRoaXMubG9jYWxlU2VydmljZS5nZXRMb2NhbGUoKTtcbiAgICAgICAgYmFzZVVybCA9IHJlc3VsdHNVcmxbbG9jYWxlXTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHBhcmFtcyA9IE9iamVjdC5rZXlzKHN0YXRlKVxuICAgICAgICAuZmlsdGVyKChrZXkpID0+ICEoc3RhdGVba2V5XS5kaXNhYmxlZCB8fCBpc0VtcHR5KHN0YXRlW2tleV0udmFsdWUpKSlcbiAgICAgICAgLm1hcCgoa2V5KSA9PiAoe1xuICAgICAgICAgIGtleSxcbiAgICAgICAgICB2YWx1ZTogQXJyYXkuaXNBcnJheShzdGF0ZVtrZXldLnZhbHVlKVxuICAgICAgICAgICAgPyBzdGF0ZVtrZXldLnZhbHVlLmpvaW4oJywnKVxuICAgICAgICAgICAgOiBzdGF0ZVtrZXldLnZhbHVlXG4gICAgICAgIH0pKVxuICAgICAgICAubWFwKCh7IGtleSwgdmFsdWUgfSkgPT4gYCR7a2V5fT0ke2VuY29kZVVSSUNvbXBvbmVudCh2YWx1ZSl9YCk7XG4gICAgICBjb25zdCB1cmwgPSBgJHtiYXNlVXJsfT8ke3BhcmFtcy5qb2luKCcmJyl9YDtcbiAgICAgIHdpbmRvdy5vcGVuKHVybCwgJ19ibGFuaycpO1xuICAgIH1cbiAgfVxuXG4gIG9uUmVzZXQoKSB7XG4gICAgT2JqZWN0LmtleXModGhpcy5pbml0aWFsU3RhdGUpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgY29uc3QgaW5wdXRTdGF0ZSA9IGNsb25lRGVlcCh0aGlzLmluaXRpYWxTdGF0ZVtrZXldKTtcbiAgICAgIHRoaXMuZm9ybS5nZXRJbnB1dChrZXkpLnNldFN0YXRlKGlucHV0U3RhdGUpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZU9wdGlvbnNSZXF1ZXN0ID0gKHJlc3BvbnNlKSA9PiB7XG4gICAgY29uc3QgeyBmb3JtQ29uZmlnIH0gPSB0aGlzLnBhZ2VDb25maWc7XG4gICAgT2JqZWN0LmtleXMocmVzcG9uc2UpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgZm9ybUNvbmZpZy5zZWN0aW9ucy5mb3JFYWNoKCh7IGlucHV0cyB9KSA9PiB7XG4gICAgICAgIGlucHV0cy5mb3JFYWNoKChpbnB1dCkgPT4ge1xuICAgICAgICAgIGlmIChpbnB1dC5pZCA9PT0ga2V5KSB7XG4gICAgICAgICAgICBpbnB1dC5kYXRhID0ge1xuICAgICAgICAgICAgICAuLi5pbnB1dC5kYXRhLFxuICAgICAgICAgICAgICAuLi5yZXNwb25zZVtrZXldXG4gICAgICAgICAgICB9O1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfTtcblxuICBwcm90ZWN0ZWQgYWRkVHJhbnNsYXRpb25zKHBhZ2VDb25maWcpIHtcbiAgICBjb25zdCB7IGZvcm1Db25maWcgfSA9IHBhZ2VDb25maWc7XG4gICAgLy8gcGFnZSB0aXRsZVxuICAgIHBhZ2VDb25maWcudGl0bGUgPSBfdChwYWdlQ29uZmlnLnRpdGxlKTtcbiAgICAvLyBzdWJtaXRcbiAgICBpZiAoZm9ybUNvbmZpZy5zdWJtaXRCdXR0b24pIHtcbiAgICAgIGZvcm1Db25maWcuc3VibWl0QnV0dG9uLmxhYmVsID0gX3QoZm9ybUNvbmZpZy5zdWJtaXRCdXR0b24ubGFiZWwpO1xuICAgIH1cbiAgICAvLyByZXNldFxuICAgIGlmIChmb3JtQ29uZmlnLnJlc2V0QnV0dG9uKSB7XG4gICAgICBmb3JtQ29uZmlnLnJlc2V0QnV0dG9uLmxhYmVsID0gX3QoZm9ybUNvbmZpZy5yZXNldEJ1dHRvbi5sYWJlbCk7XG4gICAgfVxuICAgIC8vIGdyb3Vwc1xuICAgIGZvcm1Db25maWcuZ3JvdXBzLmZvckVhY2goKGdyb3VwKSA9PiB7XG4gICAgICBpZiAoZ3JvdXAub3B0aW9ucz8ubGFiZWwpIHtcbiAgICAgICAgZ3JvdXAub3B0aW9ucy5sYWJlbCA9IF90KGdyb3VwLm9wdGlvbnMubGFiZWwpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIC8vIHNlY3Rpb25zXG4gICAgZm9ybUNvbmZpZy5zZWN0aW9ucy5mb3JFYWNoKChzZWN0aW9uKSA9PiB7XG4gICAgICBpZiAoc2VjdGlvbi50aXRsZSkge1xuICAgICAgICBzZWN0aW9uLnRpdGxlID0gX3Qoc2VjdGlvbi50aXRsZSk7XG4gICAgICB9XG4gICAgICBpZiAoc2VjdGlvbi5kZXNjcmlwdGlvbikge1xuICAgICAgICBzZWN0aW9uLmRlc2NyaXB0aW9uID0gX3Qoc2VjdGlvbi5kZXNjcmlwdGlvbik7XG4gICAgICB9XG4gICAgICBpZiAoc2VjdGlvbi5pbmZvKSB7XG4gICAgICAgIHNlY3Rpb24uaW5mbyA9IF90KHNlY3Rpb24uaW5mbyk7XG4gICAgICB9XG4gICAgICBzZWN0aW9uLmlucHV0cy5mb3JFYWNoKChpbnB1dCkgPT4ge1xuICAgICAgICBpZiAoaW5wdXQuZGF0YS5sYWJlbCkge1xuICAgICAgICAgIGlucHV0LmRhdGEubGFiZWwgPSBfdChpbnB1dC5kYXRhLmxhYmVsKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChpbnB1dC5kYXRhLmxlZ2VuZCkge1xuICAgICAgICAgIGlucHV0LmRhdGEubGVnZW5kID0gX3QoaW5wdXQuZGF0YS5sZWdlbmQpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gaW5wdXQgdGV4dCAvIHR5cGVhaGVhZFxuICAgICAgICBpZiAoaW5wdXQudHlwZSA9PT0gJ3RleHQnIHx8IGlucHV0LnR5cGUgPT09ICd0eXBlYWhlYWQnKSB7XG4gICAgICAgICAgaWYgKGlucHV0LmRhdGEucGxhY2Vob2xkZXIpIHtcbiAgICAgICAgICAgIGlucHV0LmRhdGEucGxhY2Vob2xkZXIgPSBfdChpbnB1dC5kYXRhLnBsYWNlaG9sZGVyKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy8gaW5wdXQgY2hlY2tib3hcbiAgICAgICAgaWYgKGlucHV0LnR5cGUgPT09ICdjaGVja2JveCcpIHtcbiAgICAgICAgICBpbnB1dC5kYXRhLmNoZWNrYm94ZXMuZm9yRWFjaCgoY2hlY2tib3gpID0+IHtcbiAgICAgICAgICAgIGNoZWNrYm94LmxhYmVsID0gX3QoY2hlY2tib3gubGFiZWwpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIC8vIGlucHV0IHNlbGVjdFxuICAgICAgICBpZiAoaW5wdXQudHlwZSA9PT0gJ3NlbGVjdCcpIHtcbiAgICAgICAgICBpbnB1dC5kYXRhLm9wdGlvbnMuZm9yRWFjaCgob3B0aW9uKSA9PiB7XG4gICAgICAgICAgICBvcHRpb24ubGFiZWwgPSBfdChvcHRpb24ubGFiZWwpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gaW5mbyB0b29sdGlwXG4gICAgICAgIGlmIChpbnB1dC5pbmZvICYmIGlucHV0LmRhdGEubGFiZWwgJiYgWyd0ZXh0JywgJ3NlbGVjdCcsICd0eXBlYWhlYWQnXS5pbmNsdWRlcyhpbnB1dC50eXBlKSkge1xuICAgICAgICAgIGNvbnN0IGlucHV0RGF0YSA9IGlucHV0LmRhdGEgYXMgSW5wdXRUZXh0RGF0YSB8IElucHV0U2VsZWN0RGF0YTtcbiAgICAgICAgICBpZiAoL243LWljb24vLnRlc3QoaW5wdXQuZGF0YS5sYWJlbCkpIHJldHVybjtcbiAgICAgICAgICAoaW5wdXQuZGF0YSBhcyBJbnB1dFRleHREYXRhIHwgSW5wdXRTZWxlY3REYXRhKS5sYWJlbCA9IFtcbiAgICAgICAgICAgIGA8c3Bhbj4ke2lucHV0RGF0YS5sYWJlbH08L3NwYW4+YCxcbiAgICAgICAgICAgIGA8c3BhbiBjbGFzcz1cIm1yLWlucHV0LWluZm8gbjctaWNvbiBuNy1pY29uLWluZm8tY2lyY2xlXCIgYWx0PVwiJHtfdChpbnB1dC5pbmZvKX1cIj48L3NwYW4+YFxuICAgICAgICAgIF0uam9pbignJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlucHV0LmluZm8gJiYgaW5wdXQuZGF0YS5sZWdlbmQgJiYgaW5wdXQudHlwZSA9PT0gJ2NoZWNrYm94Jykge1xuICAgICAgICAgIGNvbnN0IGlucHV0RGF0YSA9IGlucHV0LmRhdGEgYXMgSW5wdXRDaGVja2JveERhdGE7XG4gICAgICAgICAgaWYgKC9uNy1pY29uLy50ZXN0KGlucHV0LmRhdGEubGVnZW5kKSkgcmV0dXJuO1xuICAgICAgICAgIChpbnB1dC5kYXRhIGFzIElucHV0Q2hlY2tib3hEYXRhKS5sZWdlbmQgPSBbXG4gICAgICAgICAgICBgPHNwYW4+JHtpbnB1dERhdGEubGVnZW5kfTwvc3Bhbj5gLFxuICAgICAgICAgICAgYDxzcGFuIGNsYXNzPVwibXItaW5wdXQtaW5mbyBuNy1pY29uIG43LWljb24taW5mby1jaXJjbGVcIiBhbHQ9XCIke190KGlucHV0LmluZm8pfVwiPjwvc3Bhbj5gXG4gICAgICAgICAgXS5qb2luKCcnKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==