@ieeesa-npm/events-and-meetings 0.7.0 → 0.7.2

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.
@@ -3,7 +3,7 @@ import { CommonModule } from '@angular/common';
3
3
  import { CreateModifyMeetingComponent } from '../create-modify-meeting/create-modify-meeting.component';
4
4
  import * as screenTexts from '../../assets/constants.json';
5
5
  import { Subject, takeUntil } from 'rxjs';
6
- import { AlignType, TabsComponent } from '@ieeesa-npm/presentation';
6
+ import { AlignType, TabsComponent, } from '@ieeesa-npm/presentation';
7
7
  import { ViewMeetingAgendaComponent } from '../view-meeting-agenda/view-meeting-agenda.component';
8
8
  import { MeetingView } from '../../models/event-or-meeting-menu-action.model';
9
9
  import * as i0 from "@angular/core";
@@ -163,13 +163,15 @@ export class AddMeetingComponent {
163
163
  this.destroy$?.unsubscribe();
164
164
  }
165
165
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddMeetingComponent, deps: [{ token: i1.EventsAndMeetingsService }, { token: i2.SharedService }, { token: i3.Router }, { token: i2.FormUtilityService }, { token: i4.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
166
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AddMeetingComponent, isStandalone: true, selector: "ieeesa-add-meeting-form", inputs: { meetingView: "meetingView", eventId: "eventId", meetingId: "meetingId", routePaths: "routePaths", apiBaseURL: "apiBaseURL", userPermissions: "userPermissions" }, outputs: { formCancel: "formCancel", addMeetingClick: "addMeetingClick" }, viewQueries: [{ propertyName: "tabsComponentRef", first: true, predicate: TabsComponent, descendants: true }], ngImport: i0, template: "<div\r\n class=\"ieeesa-add-meeting\"\r\n [ngClass]=\"{\r\n 'ieeesa-non-standalone-meeting': !isStandaloneMeeting\r\n }\"\r\n>\r\n <p *ngIf=\"selectedMeetingId\" class=\"ieeesa-title-lg-24 pb-3 m-0\">\r\n {{ screenTexts?.createOrModifyMeeting?.label?.meetingDetails }}\r\n </p>\r\n <ieeesa-tabs\r\n [tabs]=\"meetingFormTabs\"\r\n [eventId]=\"eventId\"\r\n [meetingId]=\"meetingId\"\r\n [selectedTabIndex]=\"meetingView\"\r\n [apiBaseURL]=\"apiBaseURL\"\r\n [userPermissions]=\"userPermissions\"\r\n [routePaths]=\"routePaths\"\r\n [isFormChanged]=\"isFormChanged\"\r\n (selectedIndexChange)=\"onSelectedTabIndexChange()\"\r\n [confirmationModalConfig]=\"confirmationModalConfig\"\r\n ></ieeesa-tabs>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: TabsComponent, selector: "ieeesa-tabs", inputs: ["selectedTabIndex", "tabs", "isFormChanged", "confirmationModalConfig", "eventId", "meetingId", "routePaths", "apiBaseURL", "userPermissions"], outputs: ["selectedIndexChange"] }] }); }
166
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AddMeetingComponent, isStandalone: true, selector: "ieeesa-add-meeting-form", inputs: { meetingView: "meetingView", isViewOnly: "isViewOnly", eventId: "eventId", meetingId: "meetingId", routePaths: "routePaths", apiBaseURL: "apiBaseURL", userPermissions: "userPermissions" }, outputs: { formCancel: "formCancel", addMeetingClick: "addMeetingClick" }, viewQueries: [{ propertyName: "tabsComponentRef", first: true, predicate: TabsComponent, descendants: true }], ngImport: i0, template: "<div\r\n class=\"ieeesa-add-meeting\"\r\n [ngClass]=\"{\r\n 'ieeesa-non-standalone-meeting': !isStandaloneMeeting\r\n }\"\r\n>\r\n <p *ngIf=\"selectedMeetingId\" class=\"ieeesa-title-lg-24 pb-3 m-0\">\r\n {{ screenTexts?.createOrModifyMeeting?.label?.meetingDetails }}\r\n </p>\r\n <ieeesa-tabs\r\n [tabs]=\"meetingFormTabs\"\r\n [eventId]=\"eventId\"\r\n [meetingId]=\"meetingId\"\r\n [selectedTabIndex]=\"meetingView\"\r\n [apiBaseURL]=\"apiBaseURL\"\r\n [userPermissions]=\"userPermissions\"\r\n [routePaths]=\"routePaths\"\r\n [isViewOnly]=\"isViewOnly\"\r\n [isFormChanged]=\"isFormChanged\"\r\n (selectedIndexChange)=\"onSelectedTabIndexChange()\"\r\n [confirmationModalConfig]=\"confirmationModalConfig\"\r\n ></ieeesa-tabs>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: TabsComponent, selector: "ieeesa-tabs", inputs: ["selectedTabIndex", "tabs", "isFormChanged", "confirmationModalConfig", "isViewOnly", "eventId", "meetingId", "routePaths", "apiBaseURL", "userPermissions"], outputs: ["selectedIndexChange"] }] }); }
167
167
  }
168
168
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddMeetingComponent, decorators: [{
169
169
  type: Component,
170
- args: [{ selector: 'ieeesa-add-meeting-form', standalone: true, imports: [CommonModule, TabsComponent], template: "<div\r\n class=\"ieeesa-add-meeting\"\r\n [ngClass]=\"{\r\n 'ieeesa-non-standalone-meeting': !isStandaloneMeeting\r\n }\"\r\n>\r\n <p *ngIf=\"selectedMeetingId\" class=\"ieeesa-title-lg-24 pb-3 m-0\">\r\n {{ screenTexts?.createOrModifyMeeting?.label?.meetingDetails }}\r\n </p>\r\n <ieeesa-tabs\r\n [tabs]=\"meetingFormTabs\"\r\n [eventId]=\"eventId\"\r\n [meetingId]=\"meetingId\"\r\n [selectedTabIndex]=\"meetingView\"\r\n [apiBaseURL]=\"apiBaseURL\"\r\n [userPermissions]=\"userPermissions\"\r\n [routePaths]=\"routePaths\"\r\n [isFormChanged]=\"isFormChanged\"\r\n (selectedIndexChange)=\"onSelectedTabIndexChange()\"\r\n [confirmationModalConfig]=\"confirmationModalConfig\"\r\n ></ieeesa-tabs>\r\n</div>\r\n" }]
170
+ args: [{ selector: 'ieeesa-add-meeting-form', standalone: true, imports: [CommonModule, TabsComponent], template: "<div\r\n class=\"ieeesa-add-meeting\"\r\n [ngClass]=\"{\r\n 'ieeesa-non-standalone-meeting': !isStandaloneMeeting\r\n }\"\r\n>\r\n <p *ngIf=\"selectedMeetingId\" class=\"ieeesa-title-lg-24 pb-3 m-0\">\r\n {{ screenTexts?.createOrModifyMeeting?.label?.meetingDetails }}\r\n </p>\r\n <ieeesa-tabs\r\n [tabs]=\"meetingFormTabs\"\r\n [eventId]=\"eventId\"\r\n [meetingId]=\"meetingId\"\r\n [selectedTabIndex]=\"meetingView\"\r\n [apiBaseURL]=\"apiBaseURL\"\r\n [userPermissions]=\"userPermissions\"\r\n [routePaths]=\"routePaths\"\r\n [isViewOnly]=\"isViewOnly\"\r\n [isFormChanged]=\"isFormChanged\"\r\n (selectedIndexChange)=\"onSelectedTabIndexChange()\"\r\n [confirmationModalConfig]=\"confirmationModalConfig\"\r\n ></ieeesa-tabs>\r\n</div>\r\n" }]
171
171
  }], ctorParameters: function () { return [{ type: i1.EventsAndMeetingsService }, { type: i2.SharedService }, { type: i3.Router }, { type: i2.FormUtilityService }, { type: i4.MatDialog }]; }, propDecorators: { meetingView: [{
172
172
  type: Input
173
+ }], isViewOnly: [{
174
+ type: Input
173
175
  }], tabsComponentRef: [{
174
176
  type: ViewChild,
175
177
  args: [TabsComponent]
@@ -188,4 +190,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
188
190
  }], addMeetingClick: [{
189
191
  type: Output
190
192
  }] } });
191
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLW1lZXRpbmcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZlbnRzLWFuZC1tZWV0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvYWRkLW1lZXRpbmcvYWRkLW1lZXRpbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZlbnRzLWFuZC1tZWV0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvYWRkLW1lZXRpbmcvYWRkLW1lZXRpbmcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUN4RyxPQUFPLEtBQUssV0FBVyxNQUFNLDZCQUE2QixDQUFDO0FBSTNELE9BQU8sRUFBYyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RELE9BQU8sRUFDTCxTQUFTLEVBR1QsYUFBYSxFQUNkLE1BQU0sMEJBQTBCLENBQUM7QUFRbEMsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDbEcsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlEQUFpRCxDQUFDOzs7Ozs7O0FBUzlFLE1BQU0sT0FBTyxtQkFBbUI7SUEyQzlCO0lBQ0UsMENBQTBDO0lBQ2xDLHdCQUFrRDtJQUMxRCwwQ0FBMEM7SUFDbEMsYUFBNEI7SUFDcEMsMENBQTBDO0lBQ2xDLE1BQWM7SUFDdEIsMENBQTBDO0lBQ2xDLGtCQUFzQztJQUM5QywwQ0FBMEM7SUFDbkMsTUFBaUIsQ0FBQyw2Q0FBNkM7O1FBUjlELDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFFbEQsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFFNUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUVkLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFFdkMsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQWxEMUIsOERBQThEO1FBQzlELGdCQUFXLEdBQVEsV0FBVyxDQUFDO1FBQy9CLG9CQUFlLEdBQVU7WUFDdkI7Z0JBQ0UsRUFBRSxFQUFFLENBQUM7Z0JBQ0wsS0FBSyxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSTtnQkFDdEQsWUFBWSxFQUFFLDRCQUE0QjthQUMzQztZQUNEO2dCQUNFLEVBQUUsRUFBRSxDQUFDO2dCQUNMLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU07Z0JBQ3hELFlBQVksRUFBRSwwQkFBMEI7YUFDekM7WUFDRDtnQkFDRSxFQUFFLEVBQUUsQ0FBQztnQkFDTCxLQUFLLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxTQUFTO2dCQUMzRCw4REFBOEQ7Z0JBQzlELFlBQVksRUFBRSxDQUFBLFlBQWlCLENBQUE7YUFDaEM7U0FDRixDQUFDO1FBQ08sZ0JBQVcsR0FBRyxDQUFDLENBQUM7UUFFekIsd0JBQW1CLEdBQUcsSUFBSSxDQUFDO1FBSTNCLGFBQVEsR0FBcUIsSUFBSSxPQUFPLEVBQVcsQ0FBQztRQUNwRCxrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUNaLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRTFDLDJCQUFzQixHQUNwQixJQUFJLENBQUMsV0FBVyxFQUFFLDBCQUEwQjtZQUMxQyxFQUFFLDJDQUEyQyxDQUFDO1FBTWxELDhEQUE4RDtRQUNwRCxvQkFBZSxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO0lBWXBFLENBQUM7SUFDSjs7O09BR0c7SUFDSCxRQUFRO1FBQ04sSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxJQUFJLFdBQVcsQ0FBQyxlQUFlLENBQUM7UUFDbkUsSUFBSSxDQUFDLHdCQUF3QixFQUFFLFlBQVksQ0FDekMsSUFBSSxDQUFDLFVBQVUsRUFDZixJQUFJLENBQUMsZUFBZSxDQUNyQixDQUFDO1FBQ0YsSUFBSSxDQUFDLGFBQWEsRUFBRSxhQUFhLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ25ELElBQUksQ0FBQyx3QkFBd0IsQ0FBQywwQkFBMEIsQ0FDdEQsSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FDdkQsQ0FBQztRQUNGLElBQUksQ0FBQyxtQkFBbUI7WUFDdEIsSUFBSSxDQUFDLHdCQUF3QixDQUFDLDBCQUEwQixFQUFFLENBQUM7UUFDN0QsSUFBSSxDQUFDLHdCQUF3QixDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLENBQUM7UUFDckUsSUFBSSxDQUFDLHdCQUF3QixDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDLENBQUM7UUFDekUsSUFBSSxDQUFDLHVCQUF1QixHQUFHO1lBQzdCLGVBQWUsRUFBRSxJQUFJLENBQUMsc0JBQXNCLEVBQUUsZUFBZTtZQUM3RCxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsc0JBQXNCLEVBQUUsZ0JBQWdCO1lBQy9ELGFBQWEsRUFBRSxJQUFJLENBQUMsc0JBQXNCLEVBQUUsYUFBYTtZQUN6RCxpQkFBaUIsRUFBRSxTQUFTLENBQUMsTUFBTTtTQUNwQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxpQkFBaUIsQ0FBQztRQUMxRSxJQUFJLENBQUMsd0JBQXdCLEVBQUUseUJBQXlCO1lBQ3RELEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDL0IsU0FBUyxDQUFDLENBQUMsTUFBZSxFQUFFLEVBQUU7WUFDN0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQUM7UUFDTCxJQUFJLENBQUMsa0JBQWtCLEVBQUUseUJBQXlCO1lBQ2hELEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDL0IsU0FBUyxDQUFDLENBQUMsTUFBZSxFQUFFLEVBQUU7WUFDN0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ0Q7Ozs7Ozs7T0FPRztJQUNILGFBQWE7UUFLWCxJQUFJLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxpQ0FBaUMsRUFBRSxFQUFFO1lBQ3RFLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixFQUFFLHFCQUFxQixDQUNuRSxJQUFJLENBQUMsdUJBQXVCLENBQzdCLENBQUM7WUFDRixJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztZQUMvQixPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsV0FBVyxFQUFFLENBQUM7U0FDdEM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDRDs7O09BR0c7SUFDSCxlQUFlO1FBQ2IsSUFBSSxDQUFDLGdCQUFnQixFQUFFLFVBQVU7WUFDL0IsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNoQyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZixJQUFJLENBQUMsdUJBQXVCLENBQUMsYUFBYTtnQkFDeEMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLGFBQWEsQ0FBQztZQUM3QyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ3ZCLElBQUksSUFBSSxDQUFDLG1CQUFtQixFQUFFO2dCQUM1QixJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsaUJBQWlCLEVBQUU7b0JBQ3JDLElBQUksQ0FBQyxNQUFNLEVBQUUsYUFBYSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsaUJBQWlCLENBQUMsQ0FBQztpQkFDL0Q7cUJBQU07b0JBQ0wsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztpQkFDN0I7YUFDRjtpQkFBTSxJQUNMLENBQUMsSUFBSSxDQUFDLG1CQUFtQjtnQkFDekIsQ0FBQyxJQUFJLENBQUMsd0JBQXdCLEVBQUUsaUNBQWlDLEVBQUUsRUFDbkU7Z0JBQ0EsSUFBSSxDQUFDLHdCQUF3QixFQUFFLHdCQUF3QixFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNyRTtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUNEOzs7T0FHRztJQUNILHVCQUF1QjtRQUNyQixJQUFJLENBQUMsU0FBUztZQUNaLEVBQUUsV0FBVyxFQUFFO1lBQ2YsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNoQyxFQUFFLFNBQVMsQ0FBQyxDQUFDLE1BQWUsRUFBRSxFQUFFO1lBQzlCLElBQUksTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFO2dCQUN2QyxJQUFJLENBQUMsd0JBQXdCLEVBQUUsd0JBQXdCLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ3JFO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ0Q7OztPQUdHO0lBQ0gsd0JBQXdCO1FBQ3RCLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO1FBQzNCLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxpQ0FBaUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBQ0Q7OztPQUdHO0lBQ0gsV0FBVztRQUNULElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxRQUFRLEVBQUUsV0FBVyxFQUFFLENBQUM7SUFDL0IsQ0FBQzsrR0F2S1UsbUJBQW1CO21HQUFuQixtQkFBbUIsNFhBMEJuQixhQUFhLGdEQ25FMUIsc3ZCQXNCQSx5RERlWSxZQUFZLGlPQUFFLGFBQWE7OzRGQUkxQixtQkFBbUI7a0JBUC9CLFNBQVM7K0JBQ0UseUJBQXlCLGNBQ3ZCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxhQUFhLENBQUM7eU5BMkI3QixXQUFXO3NCQUFuQixLQUFLO2dCQUdvQixnQkFBZ0I7c0JBQXpDLFNBQVM7dUJBQUMsYUFBYTtnQkFLZCxVQUFVO3NCQUFuQixNQUFNO2dCQUtFLE9BQU87c0JBQWYsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUVJLGVBQWU7c0JBQXhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgQ29tcG9uZW50LFxyXG4gIENvbXBvbmVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbiAgVmlld0NoaWxkLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDcmVhdGVNb2RpZnlNZWV0aW5nQ29tcG9uZW50IH0gZnJvbSAnLi4vY3JlYXRlLW1vZGlmeS1tZWV0aW5nL2NyZWF0ZS1tb2RpZnktbWVldGluZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgKiBhcyBzY3JlZW5UZXh0cyBmcm9tICcuLi8uLi9hc3NldHMvY29uc3RhbnRzLmpzb24nO1xyXG5pbXBvcnQgeyBFdmVudHNBbmRNZWV0aW5nc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9ldmVudHMtYW5kLW1lZXRpbmdzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEZWFjdGl2YXRlQ29tcG9uZW50IH0gZnJvbSAnQGllZWVzYS1ucG0vdXRpbGl0eSc7XHJcbmltcG9ydCB7IFJvdXRlciwgVXJsVHJlZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge1xyXG4gIEFsaWduVHlwZSxcclxuICBDb25maXJtYXRpb25Nb2RhbERhdGEsXHJcbiAgVGFiLFxyXG4gIFRhYnNDb21wb25lbnRcclxufSBmcm9tICdAaWVlZXNhLW5wbS9wcmVzZW50YXRpb24nO1xyXG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQge1xyXG4gIEV2ZW50c0FuZE1lZXRpbmdSb3V0ZUNvbmZpZyxcclxuICBGb3JtVXRpbGl0eVNlcnZpY2UsXHJcbiAgU2hhcmVkU2VydmljZSxcclxufSBmcm9tICdAaWVlZXNhLW5wbS9zaGFyZWQnO1xyXG5pbXBvcnQgeyBVc2VyUGVybWlzc2lvbiB9IGZyb20gJy4uLy4uL21vZGVscy9tZWV0aW5nLXBlcm1pc3Npb25zLm1vZGVsJztcclxuaW1wb3J0IHsgVmlld01lZXRpbmdBZ2VuZGFDb21wb25lbnQgfSBmcm9tICcuLi92aWV3LW1lZXRpbmctYWdlbmRhL3ZpZXctbWVldGluZy1hZ2VuZGEuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWVldGluZ1ZpZXcgfSBmcm9tICcuLi8uLi9tb2RlbHMvZXZlbnQtb3ItbWVldGluZy1tZW51LWFjdGlvbi5tb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2llZWVzYS1hZGQtbWVldGluZy1mb3JtJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFRhYnNDb21wb25lbnRdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hZGQtbWVldGluZy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYWRkLW1lZXRpbmcuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkZE1lZXRpbmdDb21wb25lbnRcclxuICBpbXBsZW1lbnRzIE9uSW5pdCwgRGVhY3RpdmF0ZUNvbXBvbmVudCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95XHJcbntcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gIHNjcmVlblRleHRzOiBhbnkgPSBzY3JlZW5UZXh0cztcclxuICBtZWV0aW5nRm9ybVRhYnM6IFRhYltdID0gW1xyXG4gICAge1xyXG4gICAgICBpZDogMSxcclxuICAgICAgbGFiZWw6IHRoaXMuc2NyZWVuVGV4dHM/LmFkZE1lZXRpbmc/LnRhYnM/LmxhYmVsPy5pbmZvLFxyXG4gICAgICBjb21wb25lbnRSZWY6IENyZWF0ZU1vZGlmeU1lZXRpbmdDb21wb25lbnQsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBpZDogMixcclxuICAgICAgbGFiZWw6IHRoaXMuc2NyZWVuVGV4dHM/LmFkZE1lZXRpbmc/LnRhYnM/LmxhYmVsPy5hZ2VuZGEsXHJcbiAgICAgIGNvbXBvbmVudFJlZjogVmlld01lZXRpbmdBZ2VuZGFDb21wb25lbnQsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBpZDogMyxcclxuICAgICAgbGFiZWw6IHRoaXMuc2NyZWVuVGV4dHM/LmFkZE1lZXRpbmc/LnRhYnM/LmxhYmVsPy5hdHRlbmRlZXMsXHJcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgICAgIGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPGFueT4sXHJcbiAgICB9LFxyXG4gIF07XHJcbiAgQElucHV0KCkgbWVldGluZ1ZpZXcgPSAwO1xyXG4gIHNlbGVjdGVkTWVldGluZ0lkITogc3RyaW5nO1xyXG4gIGlzU3RhbmRhbG9uZU1lZXRpbmcgPSB0cnVlO1xyXG4gIEBWaWV3Q2hpbGQoVGFic0NvbXBvbmVudCkgdGFic0NvbXBvbmVudFJlZiE6IFRhYnNDb21wb25lbnQ7XHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICBkaWFsb2dSZWY6IGFueTtcclxuICBkZXN0cm95JDogU3ViamVjdDxib29sZWFuPiA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XHJcbiAgaXNGb3JtQ2hhbmdlZCA9IGZhbHNlO1xyXG4gIEBPdXRwdXQoKSBmb3JtQ2FuY2VsID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIGNvbmZpcm1hdGlvbk1vZGFsQ29uZmlnITogQ29uZmlybWF0aW9uTW9kYWxEYXRhO1xyXG4gIGNvbmZpcm1hdGlvbk1vZGFsVGV4dHMgPVxyXG4gICAgdGhpcy5zY3JlZW5UZXh0cz8uY3JlYXRlTW9kaWZ5RXZlbnRPck1lZXRpbmdcclxuICAgICAgPy51bnNhdmVkRm9ybUNoYW5nZXNDb25maXJtYXRpb25EaWFsb2dPcHRpb25zO1xyXG4gIEBJbnB1dCgpIGV2ZW50SWQhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgbWVldGluZ0lkITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHJvdXRlUGF0aHMhOiBFdmVudHNBbmRNZWV0aW5nUm91dGVDb25maWc7XHJcbiAgQElucHV0KCkgYXBpQmFzZVVSTCE6IHN0cmluZztcclxuICBASW5wdXQoKSB1c2VyUGVybWlzc2lvbnMhOiBVc2VyUGVybWlzc2lvbltdO1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgQE91dHB1dCgpIGFkZE1lZXRpbmdDbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gICAgcHJpdmF0ZSBldmVudHNBbmRNZWV0aW5nc1NlcnZpY2U6IEV2ZW50c0FuZE1lZXRpbmdzU2VydmljZSxcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gICAgcHJpdmF0ZSBzaGFyZWRTZXJ2aWNlOiBTaGFyZWRTZXJ2aWNlLFxyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXHJcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXHJcbiAgICBwcml2YXRlIGZvcm1VdGlsaXR5U2VydmljZTogRm9ybVV0aWxpdHlTZXJ2aWNlLFxyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXHJcbiAgICBwdWJsaWMgZGlhbG9nOiBNYXREaWFsb2cgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWVtcHR5LWZ1bmN0aW9uXHJcbiAgKSB7fVxyXG4gIC8qKlxyXG4gICAqIFNldHMgc2VsZWN0ZWQgbWVldGluZyBpZCBhbmQgZm9ybSBjaGFuZ2Ugc3RhdHVzLlxyXG4gICAqIEBtZW1iZXJvZiBBZGRNZWV0aW5nQ29tcG9uZW50XHJcbiAgICovXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLm1lZXRpbmdWaWV3ID0gdGhpcy5tZWV0aW5nVmlldyA/PyBNZWV0aW5nVmlldy5NRUVUSU5HX0RFVEFJTFM7XHJcbiAgICB0aGlzLmV2ZW50c0FuZE1lZXRpbmdzU2VydmljZT8uc2V0QXBwQ29uZmlnKFxyXG4gICAgICB0aGlzLmFwaUJhc2VVUkwsXHJcbiAgICAgIHRoaXMudXNlclBlcm1pc3Npb25zXHJcbiAgICApO1xyXG4gICAgdGhpcy5zaGFyZWRTZXJ2aWNlPy5zZXRBcGlCYXNlVXJsKHRoaXMuYXBpQmFzZVVSTCk7XHJcbiAgICB0aGlzLmV2ZW50c0FuZE1lZXRpbmdzU2VydmljZS5zZXRTdGFuZGFsb25lTWVldGluZ1N0YXR1cyhcclxuICAgICAgdGhpcy5ldmVudElkICYmIHRoaXMubWVldGluZ0lkID8gZmFsc2UgOiAhdGhpcy5ldmVudElkXHJcbiAgICApO1xyXG4gICAgdGhpcy5pc1N0YW5kYWxvbmVNZWV0aW5nID1cclxuICAgICAgdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2UuZ2V0U3RhbmRhbG9uZU1lZXRpbmdTdGF0dXMoKTtcclxuICAgIHRoaXMuZXZlbnRzQW5kTWVldGluZ3NTZXJ2aWNlLnNldFNlbGVjdGVkRXZlbnRJZCh0aGlzLmV2ZW50SWQgPz8gJycpO1xyXG4gICAgdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2Uuc2V0U2VsZWN0ZWRNZWV0aW5nSWQodGhpcy5tZWV0aW5nSWQgPz8gJycpO1xyXG4gICAgdGhpcy5jb25maXJtYXRpb25Nb2RhbENvbmZpZyA9IHtcclxuICAgICAgbGVmdEJ1dHRvbkxhYmVsOiB0aGlzLmNvbmZpcm1hdGlvbk1vZGFsVGV4dHM/LmxlZnRCdXR0b25MYWJlbCxcclxuICAgICAgcmlnaHRCdXR0b25MYWJlbDogdGhpcy5jb25maXJtYXRpb25Nb2RhbFRleHRzPy5yaWdodEJ1dHRvbkxhYmVsLFxyXG4gICAgICBwcm9tcHRNZXNzYWdlOiB0aGlzLmNvbmZpcm1hdGlvbk1vZGFsVGV4dHM/LnByb21wdE1lc3NhZ2UsXHJcbiAgICAgIGFjdGlvbkJ1dHRvbkFsaWduOiBBbGlnblR5cGUuTUlERExFLFxyXG4gICAgfTtcclxuICAgIHRoaXMuc2VsZWN0ZWRNZWV0aW5nSWQgPSB0aGlzLmV2ZW50c0FuZE1lZXRpbmdzU2VydmljZT8uc2VsZWN0ZWRNZWV0aW5nSWQ7XHJcbiAgICB0aGlzLmV2ZW50c0FuZE1lZXRpbmdzU2VydmljZT8uZm9ybVN0YXR1c0NoYW5nZU5vdGlmaWVyJFxyXG4gICAgICA/LnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChzdGF0dXM6IGJvb2xlYW4pID0+IHtcclxuICAgICAgICB0aGlzLmlzRm9ybUNoYW5nZWQgPSBzdGF0dXM7XHJcbiAgICAgIH0pO1xyXG4gICAgdGhpcy5mb3JtVXRpbGl0eVNlcnZpY2U/LmZvcm1TdGF0dXNDaGFuZ2VOb3RpZmllciRcclxuICAgICAgPy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSgoc3RhdHVzOiBib29sZWFuKSA9PiB7XHJcbiAgICAgICAgdGhpcy5pc0Zvcm1DaGFuZ2VkID0gc3RhdHVzO1xyXG4gICAgICB9KTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogVHJpZ2dlcnMgY29uZmlybWF0aW9uIG1vZGFsIHdoaWxlIGxlYXZpbmcgdW5zYXZlZCBmb3JtLlxyXG4gICAqIEByZXR1cm4geyhib29sZWFuXHJcbiAgICogICAgIHwgVXJsVHJlZVxyXG4gICAqICAgICB8IE9ic2VydmFibGU8Ym9vbGVhbiB8IFVybFRyZWU+XHJcbiAgICogICAgIHwgUHJvbWlzZTxib29sZWFuIHwgVXJsVHJlZT4pfVxyXG4gICAqIEBtZW1iZXJvZiBBZGRNZWV0aW5nQ29tcG9uZW50XHJcbiAgICovXHJcbiAgY2FuRGVhY3RpdmF0ZSgpOlxyXG4gICAgfCBVcmxUcmVlXHJcbiAgICB8IE9ic2VydmFibGU8Ym9vbGVhbiB8IFVybFRyZWU+XHJcbiAgICB8IFByb21pc2U8Ym9vbGVhbiB8IFVybFRyZWU+XHJcbiAgICB8IGJvb2xlYW4ge1xyXG4gICAgaWYgKHRoaXMuZXZlbnRzQW5kTWVldGluZ3NTZXJ2aWNlPy5nZXRFdmVudE9yTWVldGluZ0Zvcm1DaGFuZ2VTdGF0dXMoKSkge1xyXG4gICAgICB0aGlzLmRpYWxvZ1JlZiA9IHRoaXMuZXZlbnRzQW5kTWVldGluZ3NTZXJ2aWNlPy5vcGVuQ29uZmlybWF0aW9uTW9kYWwoXHJcbiAgICAgICAgdGhpcy5jb25maXJtYXRpb25Nb2RhbENvbmZpZ1xyXG4gICAgICApO1xyXG4gICAgICB0aGlzLmNvbmZpcm1hdGlvbk1vZGFsQWN0aW9uKCk7XHJcbiAgICAgIHJldHVybiB0aGlzLmRpYWxvZ1JlZj8uYWZ0ZXJDbG9zZWQoKTtcclxuICAgIH1cclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBIYW5kbGVzIGZvcm0gY2FuY2VsIGV2ZW50cyBpbiB0aGUgdGFiIGNvbXBvbmVudC5cclxuICAgKiBAbWVtYmVyb2YgQWRkTWVldGluZ0NvbXBvbmVudFxyXG4gICAqL1xyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMudGFic0NvbXBvbmVudFJlZj8uZm9ybUNhbmNlbFxyXG4gICAgICA/LnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICA/LnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5jb25maXJtYXRpb25Nb2RhbENvbmZpZy5wcm9tcHRNZXNzYWdlID1cclxuICAgICAgICAgIHRoaXMuY29uZmlybWF0aW9uTW9kYWxUZXh0cz8ucHJvbXB0TWVzc2FnZTtcclxuICAgICAgICB0aGlzLmZvcm1DYW5jZWwuZW1pdCgpO1xyXG4gICAgICAgIGlmICh0aGlzLmlzU3RhbmRhbG9uZU1lZXRpbmcpIHtcclxuICAgICAgICAgIGlmICh0aGlzLnJvdXRlUGF0aHMuZXZlbnRzQW5kTWVldGluZ3MpIHtcclxuICAgICAgICAgICAgdGhpcy5yb3V0ZXI/Lm5hdmlnYXRlQnlVcmwodGhpcy5yb3V0ZVBhdGhzLmV2ZW50c0FuZE1lZXRpbmdzKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuYWRkTWVldGluZ0NsaWNrLmVtaXQoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2UgaWYgKFxyXG4gICAgICAgICAgIXRoaXMuaXNTdGFuZGFsb25lTWVldGluZyAmJlxyXG4gICAgICAgICAgIXRoaXMuZXZlbnRzQW5kTWVldGluZ3NTZXJ2aWNlPy5nZXRFdmVudE9yTWVldGluZ0Zvcm1DaGFuZ2VTdGF0dXMoKVxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2U/LmNhbkNsb3NlQWRkTWVldGluZ01vZGFsJD8ubmV4dCh0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBIYW5kbGVzIGNvbmZpcm1hdGlvbiBtb2RhbCBhY3Rpb25zLlxyXG4gICAqIEBtZW1iZXJvZiBBZGRNZWV0aW5nQ29tcG9uZW50XHJcbiAgICovXHJcbiAgY29uZmlybWF0aW9uTW9kYWxBY3Rpb24oKTogdm9pZCB7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZlxyXG4gICAgICA/LmFmdGVyQ2xvc2VkKClcclxuICAgICAgPy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgPy5zdWJzY3JpYmUoKHJlc3VsdDogYm9vbGVhbikgPT4ge1xyXG4gICAgICAgIGlmIChyZXN1bHQgJiYgIXRoaXMuaXNTdGFuZGFsb25lTWVldGluZykge1xyXG4gICAgICAgICAgdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2U/LmNhbkNsb3NlQWRkTWVldGluZ01vZGFsJD8ubmV4dCh0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBTZXRzIGlzRm9ybUNoYW5nZWQgc3RhdHVzIHRvIGZhbHNlIG9uIHRhYiBjaGFuZ2VzLlxyXG4gICAqIEBtZW1iZXJvZiBBZGRNZWV0aW5nQ29tcG9uZW50XHJcbiAgICovXHJcbiAgb25TZWxlY3RlZFRhYkluZGV4Q2hhbmdlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5pc0Zvcm1DaGFuZ2VkID0gZmFsc2U7XHJcbiAgICB0aGlzLmV2ZW50c0FuZE1lZXRpbmdzU2VydmljZS5zZXRFdmVudE9yTWVldGluZ0Zvcm1DaGFuZ2VTdGF0dXMoZmFsc2UpO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBVbnN1YnNjcmliZXMgdGhlIHN1YnNjcmlwdGlvbiB3aGVuIHRoZSBjb21wb25lbnQgaXMgYmVpbmcgZGVzdHJveWVkLlxyXG4gICAqIEBtZW1iZXJvZiBBZGRNZWV0aW5nQ29tcG9uZW50XHJcbiAgICovXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmRlc3Ryb3kkPy5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5kZXN0cm95JD8udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gIGNsYXNzPVwiaWVlZXNhLWFkZC1tZWV0aW5nXCJcclxuICBbbmdDbGFzc109XCJ7XHJcbiAgICAnaWVlZXNhLW5vbi1zdGFuZGFsb25lLW1lZXRpbmcnOiAhaXNTdGFuZGFsb25lTWVldGluZ1xyXG4gIH1cIlxyXG4+XHJcbiAgPHAgKm5nSWY9XCJzZWxlY3RlZE1lZXRpbmdJZFwiIGNsYXNzPVwiaWVlZXNhLXRpdGxlLWxnLTI0IHBiLTMgbS0wXCI+XHJcbiAgICB7eyBzY3JlZW5UZXh0cz8uY3JlYXRlT3JNb2RpZnlNZWV0aW5nPy5sYWJlbD8ubWVldGluZ0RldGFpbHMgfX1cclxuICA8L3A+XHJcbiAgPGllZWVzYS10YWJzXHJcbiAgICBbdGFic109XCJtZWV0aW5nRm9ybVRhYnNcIlxyXG4gICAgW2V2ZW50SWRdPVwiZXZlbnRJZFwiXHJcbiAgICBbbWVldGluZ0lkXT1cIm1lZXRpbmdJZFwiXHJcbiAgICBbc2VsZWN0ZWRUYWJJbmRleF09XCJtZWV0aW5nVmlld1wiXHJcbiAgICBbYXBpQmFzZVVSTF09XCJhcGlCYXNlVVJMXCJcclxuICAgIFt1c2VyUGVybWlzc2lvbnNdPVwidXNlclBlcm1pc3Npb25zXCJcclxuICAgIFtyb3V0ZVBhdGhzXT1cInJvdXRlUGF0aHNcIlxyXG4gICAgW2lzRm9ybUNoYW5nZWRdPVwiaXNGb3JtQ2hhbmdlZFwiXHJcbiAgICAoc2VsZWN0ZWRJbmRleENoYW5nZSk9XCJvblNlbGVjdGVkVGFiSW5kZXhDaGFuZ2UoKVwiXHJcbiAgICBbY29uZmlybWF0aW9uTW9kYWxDb25maWddPVwiY29uZmlybWF0aW9uTW9kYWxDb25maWdcIlxyXG4gID48L2llZWVzYS10YWJzPlxyXG48L2Rpdj5cclxuIl19
193
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLW1lZXRpbmcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZlbnRzLWFuZC1tZWV0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvYWRkLW1lZXRpbmcvYWRkLW1lZXRpbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZlbnRzLWFuZC1tZWV0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvYWRkLW1lZXRpbmcvYWRkLW1lZXRpbmcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUN4RyxPQUFPLEtBQUssV0FBVyxNQUFNLDZCQUE2QixDQUFDO0FBSTNELE9BQU8sRUFBYyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RELE9BQU8sRUFDTCxTQUFTLEVBR1QsYUFBYSxHQUNkLE1BQU0sMEJBQTBCLENBQUM7QUFRbEMsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDbEcsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlEQUFpRCxDQUFDOzs7Ozs7O0FBUzlFLE1BQU0sT0FBTyxtQkFBbUI7SUE0QzlCO0lBQ0UsMENBQTBDO0lBQ2xDLHdCQUFrRDtJQUMxRCwwQ0FBMEM7SUFDbEMsYUFBNEI7SUFDcEMsMENBQTBDO0lBQ2xDLE1BQWM7SUFDdEIsMENBQTBDO0lBQ2xDLGtCQUFzQztJQUM5QywwQ0FBMEM7SUFDbkMsTUFBaUIsQ0FBQyw2Q0FBNkM7O1FBUjlELDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFFbEQsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFFNUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUVkLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFFdkMsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQW5EMUIsOERBQThEO1FBQzlELGdCQUFXLEdBQVEsV0FBVyxDQUFDO1FBQy9CLG9CQUFlLEdBQVU7WUFDdkI7Z0JBQ0UsRUFBRSxFQUFFLENBQUM7Z0JBQ0wsS0FBSyxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSTtnQkFDdEQsWUFBWSxFQUFFLDRCQUE0QjthQUMzQztZQUNEO2dCQUNFLEVBQUUsRUFBRSxDQUFDO2dCQUNMLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU07Z0JBQ3hELFlBQVksRUFBRSwwQkFBMEI7YUFDekM7WUFDRDtnQkFDRSxFQUFFLEVBQUUsQ0FBQztnQkFDTCxLQUFLLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxTQUFTO2dCQUMzRCw4REFBOEQ7Z0JBQzlELFlBQVksRUFBRSxDQUFBLFlBQWlCLENBQUE7YUFDaEM7U0FDRixDQUFDO1FBQ08sZ0JBQVcsR0FBRyxDQUFDLENBQUM7UUFHekIsd0JBQW1CLEdBQUcsSUFBSSxDQUFDO1FBSTNCLGFBQVEsR0FBcUIsSUFBSSxPQUFPLEVBQVcsQ0FBQztRQUNwRCxrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUNaLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRTFDLDJCQUFzQixHQUNwQixJQUFJLENBQUMsV0FBVyxFQUFFLDBCQUEwQjtZQUMxQyxFQUFFLDJDQUEyQyxDQUFDO1FBTWxELDhEQUE4RDtRQUNwRCxvQkFBZSxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO0lBWXBFLENBQUM7SUFDSjs7O09BR0c7SUFDSCxRQUFRO1FBQ04sSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxJQUFJLFdBQVcsQ0FBQyxlQUFlLENBQUM7UUFDbkUsSUFBSSxDQUFDLHdCQUF3QixFQUFFLFlBQVksQ0FDekMsSUFBSSxDQUFDLFVBQVUsRUFDZixJQUFJLENBQUMsZUFBZSxDQUNyQixDQUFDO1FBQ0YsSUFBSSxDQUFDLGFBQWEsRUFBRSxhQUFhLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ25ELElBQUksQ0FBQyx3QkFBd0IsQ0FBQywwQkFBMEIsQ0FDdEQsSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FDdkQsQ0FBQztRQUNGLElBQUksQ0FBQyxtQkFBbUI7WUFDdEIsSUFBSSxDQUFDLHdCQUF3QixDQUFDLDBCQUEwQixFQUFFLENBQUM7UUFDN0QsSUFBSSxDQUFDLHdCQUF3QixDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLENBQUM7UUFDckUsSUFBSSxDQUFDLHdCQUF3QixDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDLENBQUM7UUFDekUsSUFBSSxDQUFDLHVCQUF1QixHQUFHO1lBQzdCLGVBQWUsRUFBRSxJQUFJLENBQUMsc0JBQXNCLEVBQUUsZUFBZTtZQUM3RCxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsc0JBQXNCLEVBQUUsZ0JBQWdCO1lBQy9ELGFBQWEsRUFBRSxJQUFJLENBQUMsc0JBQXNCLEVBQUUsYUFBYTtZQUN6RCxpQkFBaUIsRUFBRSxTQUFTLENBQUMsTUFBTTtTQUNwQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxpQkFBaUIsQ0FBQztRQUMxRSxJQUFJLENBQUMsd0JBQXdCLEVBQUUseUJBQXlCO1lBQ3RELEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDL0IsU0FBUyxDQUFDLENBQUMsTUFBZSxFQUFFLEVBQUU7WUFDN0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQUM7UUFDTCxJQUFJLENBQUMsa0JBQWtCLEVBQUUseUJBQXlCO1lBQ2hELEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDL0IsU0FBUyxDQUFDLENBQUMsTUFBZSxFQUFFLEVBQUU7WUFDN0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ0Q7Ozs7Ozs7T0FPRztJQUNILGFBQWE7UUFLWCxJQUFJLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxpQ0FBaUMsRUFBRSxFQUFFO1lBQ3RFLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixFQUFFLHFCQUFxQixDQUNuRSxJQUFJLENBQUMsdUJBQXVCLENBQzdCLENBQUM7WUFDRixJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztZQUMvQixPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsV0FBVyxFQUFFLENBQUM7U0FDdEM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDRDs7O09BR0c7SUFDSCxlQUFlO1FBQ2IsSUFBSSxDQUFDLGdCQUFnQixFQUFFLFVBQVU7WUFDL0IsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNoQyxFQUFFLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZixJQUFJLENBQUMsdUJBQXVCLENBQUMsYUFBYTtnQkFDeEMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLGFBQWEsQ0FBQztZQUM3QyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ3ZCLElBQUksSUFBSSxDQUFDLG1CQUFtQixFQUFFO2dCQUM1QixJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsaUJBQWlCLEVBQUU7b0JBQ3JDLElBQUksQ0FBQyxNQUFNLEVBQUUsYUFBYSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsaUJBQWlCLENBQUMsQ0FBQztpQkFDL0Q7cUJBQU07b0JBQ0wsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztpQkFDN0I7YUFDRjtpQkFBTSxJQUNMLENBQUMsSUFBSSxDQUFDLG1CQUFtQjtnQkFDekIsQ0FBQyxJQUFJLENBQUMsd0JBQXdCLEVBQUUsaUNBQWlDLEVBQUUsRUFDbkU7Z0JBQ0EsSUFBSSxDQUFDLHdCQUF3QixFQUFFLHdCQUF3QixFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNyRTtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUNEOzs7T0FHRztJQUNILHVCQUF1QjtRQUNyQixJQUFJLENBQUMsU0FBUztZQUNaLEVBQUUsV0FBVyxFQUFFO1lBQ2YsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNoQyxFQUFFLFNBQVMsQ0FBQyxDQUFDLE1BQWUsRUFBRSxFQUFFO1lBQzlCLElBQUksTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFO2dCQUN2QyxJQUFJLENBQUMsd0JBQXdCLEVBQUUsd0JBQXdCLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ3JFO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ0Q7OztPQUdHO0lBQ0gsd0JBQXdCO1FBQ3RCLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO1FBQzNCLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxpQ0FBaUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBQ0Q7OztPQUdHO0lBQ0gsV0FBVztRQUNULElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxRQUFRLEVBQUUsV0FBVyxFQUFFLENBQUM7SUFDL0IsQ0FBQzsrR0F4S1UsbUJBQW1CO21HQUFuQixtQkFBbUIsc1pBMkJuQixhQUFhLGdEQ3BFMUIseXhCQXVCQSx5RERjWSxZQUFZLGlPQUFFLGFBQWE7OzRGQUkxQixtQkFBbUI7a0JBUC9CLFNBQVM7K0JBQ0UseUJBQXlCLGNBQ3ZCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxhQUFhLENBQUM7eU5BMkI3QixXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBR29CLGdCQUFnQjtzQkFBekMsU0FBUzt1QkFBQyxhQUFhO2dCQUtkLFVBQVU7c0JBQW5CLE1BQU07Z0JBS0UsT0FBTztzQkFBZixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBRUksZUFBZTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQWZ0ZXJWaWV3SW5pdCxcclxuICBDb21wb25lbnQsXHJcbiAgQ29tcG9uZW50UmVmLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBWaWV3Q2hpbGQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENyZWF0ZU1vZGlmeU1lZXRpbmdDb21wb25lbnQgfSBmcm9tICcuLi9jcmVhdGUtbW9kaWZ5LW1lZXRpbmcvY3JlYXRlLW1vZGlmeS1tZWV0aW5nLmNvbXBvbmVudCc7XHJcbmltcG9ydCAqIGFzIHNjcmVlblRleHRzIGZyb20gJy4uLy4uL2Fzc2V0cy9jb25zdGFudHMuanNvbic7XHJcbmltcG9ydCB7IEV2ZW50c0FuZE1lZXRpbmdzU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2V2ZW50cy1hbmQtbWVldGluZ3Muc2VydmljZSc7XHJcbmltcG9ydCB7IERlYWN0aXZhdGVDb21wb25lbnQgfSBmcm9tICdAaWVlZXNhLW5wbS91dGlsaXR5JztcclxuaW1wb3J0IHsgUm91dGVyLCBVcmxUcmVlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7XHJcbiAgQWxpZ25UeXBlLFxyXG4gIENvbmZpcm1hdGlvbk1vZGFsRGF0YSxcclxuICBUYWIsXHJcbiAgVGFic0NvbXBvbmVudCxcclxufSBmcm9tICdAaWVlZXNhLW5wbS9wcmVzZW50YXRpb24nO1xyXG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQge1xyXG4gIEV2ZW50c0FuZE1lZXRpbmdSb3V0ZUNvbmZpZyxcclxuICBGb3JtVXRpbGl0eVNlcnZpY2UsXHJcbiAgU2hhcmVkU2VydmljZSxcclxufSBmcm9tICdAaWVlZXNhLW5wbS9zaGFyZWQnO1xyXG5pbXBvcnQgeyBVc2VyUGVybWlzc2lvbiB9IGZyb20gJy4uLy4uL21vZGVscy9tZWV0aW5nLXBlcm1pc3Npb25zLm1vZGVsJztcclxuaW1wb3J0IHsgVmlld01lZXRpbmdBZ2VuZGFDb21wb25lbnQgfSBmcm9tICcuLi92aWV3LW1lZXRpbmctYWdlbmRhL3ZpZXctbWVldGluZy1hZ2VuZGEuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWVldGluZ1ZpZXcgfSBmcm9tICcuLi8uLi9tb2RlbHMvZXZlbnQtb3ItbWVldGluZy1tZW51LWFjdGlvbi5tb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2llZWVzYS1hZGQtbWVldGluZy1mb3JtJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFRhYnNDb21wb25lbnRdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hZGQtbWVldGluZy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYWRkLW1lZXRpbmcuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkZE1lZXRpbmdDb21wb25lbnRcclxuICBpbXBsZW1lbnRzIE9uSW5pdCwgRGVhY3RpdmF0ZUNvbXBvbmVudCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95XHJcbntcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gIHNjcmVlblRleHRzOiBhbnkgPSBzY3JlZW5UZXh0cztcclxuICBtZWV0aW5nRm9ybVRhYnM6IFRhYltdID0gW1xyXG4gICAge1xyXG4gICAgICBpZDogMSxcclxuICAgICAgbGFiZWw6IHRoaXMuc2NyZWVuVGV4dHM/LmFkZE1lZXRpbmc/LnRhYnM/LmxhYmVsPy5pbmZvLFxyXG4gICAgICBjb21wb25lbnRSZWY6IENyZWF0ZU1vZGlmeU1lZXRpbmdDb21wb25lbnQsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBpZDogMixcclxuICAgICAgbGFiZWw6IHRoaXMuc2NyZWVuVGV4dHM/LmFkZE1lZXRpbmc/LnRhYnM/LmxhYmVsPy5hZ2VuZGEsXHJcbiAgICAgIGNvbXBvbmVudFJlZjogVmlld01lZXRpbmdBZ2VuZGFDb21wb25lbnQsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBpZDogMyxcclxuICAgICAgbGFiZWw6IHRoaXMuc2NyZWVuVGV4dHM/LmFkZE1lZXRpbmc/LnRhYnM/LmxhYmVsPy5hdHRlbmRlZXMsXHJcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgICAgIGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPGFueT4sXHJcbiAgICB9LFxyXG4gIF07XHJcbiAgQElucHV0KCkgbWVldGluZ1ZpZXcgPSAwO1xyXG4gIEBJbnB1dCgpIGlzVmlld09ubHkhOiBzdHJpbmcgfCBib29sZWFuO1xyXG4gIHNlbGVjdGVkTWVldGluZ0lkITogc3RyaW5nO1xyXG4gIGlzU3RhbmRhbG9uZU1lZXRpbmcgPSB0cnVlO1xyXG4gIEBWaWV3Q2hpbGQoVGFic0NvbXBvbmVudCkgdGFic0NvbXBvbmVudFJlZiE6IFRhYnNDb21wb25lbnQ7XHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICBkaWFsb2dSZWY6IGFueTtcclxuICBkZXN0cm95JDogU3ViamVjdDxib29sZWFuPiA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XHJcbiAgaXNGb3JtQ2hhbmdlZCA9IGZhbHNlO1xyXG4gIEBPdXRwdXQoKSBmb3JtQ2FuY2VsID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIGNvbmZpcm1hdGlvbk1vZGFsQ29uZmlnITogQ29uZmlybWF0aW9uTW9kYWxEYXRhO1xyXG4gIGNvbmZpcm1hdGlvbk1vZGFsVGV4dHMgPVxyXG4gICAgdGhpcy5zY3JlZW5UZXh0cz8uY3JlYXRlTW9kaWZ5RXZlbnRPck1lZXRpbmdcclxuICAgICAgPy51bnNhdmVkRm9ybUNoYW5nZXNDb25maXJtYXRpb25EaWFsb2dPcHRpb25zO1xyXG4gIEBJbnB1dCgpIGV2ZW50SWQhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgbWVldGluZ0lkITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHJvdXRlUGF0aHMhOiBFdmVudHNBbmRNZWV0aW5nUm91dGVDb25maWc7XHJcbiAgQElucHV0KCkgYXBpQmFzZVVSTCE6IHN0cmluZztcclxuICBASW5wdXQoKSB1c2VyUGVybWlzc2lvbnMhOiBVc2VyUGVybWlzc2lvbltdO1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgQE91dHB1dCgpIGFkZE1lZXRpbmdDbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gICAgcHJpdmF0ZSBldmVudHNBbmRNZWV0aW5nc1NlcnZpY2U6IEV2ZW50c0FuZE1lZXRpbmdzU2VydmljZSxcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gICAgcHJpdmF0ZSBzaGFyZWRTZXJ2aWNlOiBTaGFyZWRTZXJ2aWNlLFxyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXHJcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXHJcbiAgICBwcml2YXRlIGZvcm1VdGlsaXR5U2VydmljZTogRm9ybVV0aWxpdHlTZXJ2aWNlLFxyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXHJcbiAgICBwdWJsaWMgZGlhbG9nOiBNYXREaWFsb2cgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWVtcHR5LWZ1bmN0aW9uXHJcbiAgKSB7fVxyXG4gIC8qKlxyXG4gICAqIFNldHMgc2VsZWN0ZWQgbWVldGluZyBpZCBhbmQgZm9ybSBjaGFuZ2Ugc3RhdHVzLlxyXG4gICAqIEBtZW1iZXJvZiBBZGRNZWV0aW5nQ29tcG9uZW50XHJcbiAgICovXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLm1lZXRpbmdWaWV3ID0gdGhpcy5tZWV0aW5nVmlldyA/PyBNZWV0aW5nVmlldy5NRUVUSU5HX0RFVEFJTFM7XHJcbiAgICB0aGlzLmV2ZW50c0FuZE1lZXRpbmdzU2VydmljZT8uc2V0QXBwQ29uZmlnKFxyXG4gICAgICB0aGlzLmFwaUJhc2VVUkwsXHJcbiAgICAgIHRoaXMudXNlclBlcm1pc3Npb25zXHJcbiAgICApO1xyXG4gICAgdGhpcy5zaGFyZWRTZXJ2aWNlPy5zZXRBcGlCYXNlVXJsKHRoaXMuYXBpQmFzZVVSTCk7XHJcbiAgICB0aGlzLmV2ZW50c0FuZE1lZXRpbmdzU2VydmljZS5zZXRTdGFuZGFsb25lTWVldGluZ1N0YXR1cyhcclxuICAgICAgdGhpcy5ldmVudElkICYmIHRoaXMubWVldGluZ0lkID8gZmFsc2UgOiAhdGhpcy5ldmVudElkXHJcbiAgICApO1xyXG4gICAgdGhpcy5pc1N0YW5kYWxvbmVNZWV0aW5nID1cclxuICAgICAgdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2UuZ2V0U3RhbmRhbG9uZU1lZXRpbmdTdGF0dXMoKTtcclxuICAgIHRoaXMuZXZlbnRzQW5kTWVldGluZ3NTZXJ2aWNlLnNldFNlbGVjdGVkRXZlbnRJZCh0aGlzLmV2ZW50SWQgPz8gJycpO1xyXG4gICAgdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2Uuc2V0U2VsZWN0ZWRNZWV0aW5nSWQodGhpcy5tZWV0aW5nSWQgPz8gJycpO1xyXG4gICAgdGhpcy5jb25maXJtYXRpb25Nb2RhbENvbmZpZyA9IHtcclxuICAgICAgbGVmdEJ1dHRvbkxhYmVsOiB0aGlzLmNvbmZpcm1hdGlvbk1vZGFsVGV4dHM/LmxlZnRCdXR0b25MYWJlbCxcclxuICAgICAgcmlnaHRCdXR0b25MYWJlbDogdGhpcy5jb25maXJtYXRpb25Nb2RhbFRleHRzPy5yaWdodEJ1dHRvbkxhYmVsLFxyXG4gICAgICBwcm9tcHRNZXNzYWdlOiB0aGlzLmNvbmZpcm1hdGlvbk1vZGFsVGV4dHM/LnByb21wdE1lc3NhZ2UsXHJcbiAgICAgIGFjdGlvbkJ1dHRvbkFsaWduOiBBbGlnblR5cGUuTUlERExFLFxyXG4gICAgfTtcclxuICAgIHRoaXMuc2VsZWN0ZWRNZWV0aW5nSWQgPSB0aGlzLmV2ZW50c0FuZE1lZXRpbmdzU2VydmljZT8uc2VsZWN0ZWRNZWV0aW5nSWQ7XHJcbiAgICB0aGlzLmV2ZW50c0FuZE1lZXRpbmdzU2VydmljZT8uZm9ybVN0YXR1c0NoYW5nZU5vdGlmaWVyJFxyXG4gICAgICA/LnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChzdGF0dXM6IGJvb2xlYW4pID0+IHtcclxuICAgICAgICB0aGlzLmlzRm9ybUNoYW5nZWQgPSBzdGF0dXM7XHJcbiAgICAgIH0pO1xyXG4gICAgdGhpcy5mb3JtVXRpbGl0eVNlcnZpY2U/LmZvcm1TdGF0dXNDaGFuZ2VOb3RpZmllciRcclxuICAgICAgPy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSgoc3RhdHVzOiBib29sZWFuKSA9PiB7XHJcbiAgICAgICAgdGhpcy5pc0Zvcm1DaGFuZ2VkID0gc3RhdHVzO1xyXG4gICAgICB9KTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogVHJpZ2dlcnMgY29uZmlybWF0aW9uIG1vZGFsIHdoaWxlIGxlYXZpbmcgdW5zYXZlZCBmb3JtLlxyXG4gICAqIEByZXR1cm4geyhib29sZWFuXHJcbiAgICogICAgIHwgVXJsVHJlZVxyXG4gICAqICAgICB8IE9ic2VydmFibGU8Ym9vbGVhbiB8IFVybFRyZWU+XHJcbiAgICogICAgIHwgUHJvbWlzZTxib29sZWFuIHwgVXJsVHJlZT4pfVxyXG4gICAqIEBtZW1iZXJvZiBBZGRNZWV0aW5nQ29tcG9uZW50XHJcbiAgICovXHJcbiAgY2FuRGVhY3RpdmF0ZSgpOlxyXG4gICAgfCBVcmxUcmVlXHJcbiAgICB8IE9ic2VydmFibGU8Ym9vbGVhbiB8IFVybFRyZWU+XHJcbiAgICB8IFByb21pc2U8Ym9vbGVhbiB8IFVybFRyZWU+XHJcbiAgICB8IGJvb2xlYW4ge1xyXG4gICAgaWYgKHRoaXMuZXZlbnRzQW5kTWVldGluZ3NTZXJ2aWNlPy5nZXRFdmVudE9yTWVldGluZ0Zvcm1DaGFuZ2VTdGF0dXMoKSkge1xyXG4gICAgICB0aGlzLmRpYWxvZ1JlZiA9IHRoaXMuZXZlbnRzQW5kTWVldGluZ3NTZXJ2aWNlPy5vcGVuQ29uZmlybWF0aW9uTW9kYWwoXHJcbiAgICAgICAgdGhpcy5jb25maXJtYXRpb25Nb2RhbENvbmZpZ1xyXG4gICAgICApO1xyXG4gICAgICB0aGlzLmNvbmZpcm1hdGlvbk1vZGFsQWN0aW9uKCk7XHJcbiAgICAgIHJldHVybiB0aGlzLmRpYWxvZ1JlZj8uYWZ0ZXJDbG9zZWQoKTtcclxuICAgIH1cclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBIYW5kbGVzIGZvcm0gY2FuY2VsIGV2ZW50cyBpbiB0aGUgdGFiIGNvbXBvbmVudC5cclxuICAgKiBAbWVtYmVyb2YgQWRkTWVldGluZ0NvbXBvbmVudFxyXG4gICAqL1xyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMudGFic0NvbXBvbmVudFJlZj8uZm9ybUNhbmNlbFxyXG4gICAgICA/LnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICA/LnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5jb25maXJtYXRpb25Nb2RhbENvbmZpZy5wcm9tcHRNZXNzYWdlID1cclxuICAgICAgICAgIHRoaXMuY29uZmlybWF0aW9uTW9kYWxUZXh0cz8ucHJvbXB0TWVzc2FnZTtcclxuICAgICAgICB0aGlzLmZvcm1DYW5jZWwuZW1pdCgpO1xyXG4gICAgICAgIGlmICh0aGlzLmlzU3RhbmRhbG9uZU1lZXRpbmcpIHtcclxuICAgICAgICAgIGlmICh0aGlzLnJvdXRlUGF0aHMuZXZlbnRzQW5kTWVldGluZ3MpIHtcclxuICAgICAgICAgICAgdGhpcy5yb3V0ZXI/Lm5hdmlnYXRlQnlVcmwodGhpcy5yb3V0ZVBhdGhzLmV2ZW50c0FuZE1lZXRpbmdzKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuYWRkTWVldGluZ0NsaWNrLmVtaXQoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2UgaWYgKFxyXG4gICAgICAgICAgIXRoaXMuaXNTdGFuZGFsb25lTWVldGluZyAmJlxyXG4gICAgICAgICAgIXRoaXMuZXZlbnRzQW5kTWVldGluZ3NTZXJ2aWNlPy5nZXRFdmVudE9yTWVldGluZ0Zvcm1DaGFuZ2VTdGF0dXMoKVxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2U/LmNhbkNsb3NlQWRkTWVldGluZ01vZGFsJD8ubmV4dCh0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBIYW5kbGVzIGNvbmZpcm1hdGlvbiBtb2RhbCBhY3Rpb25zLlxyXG4gICAqIEBtZW1iZXJvZiBBZGRNZWV0aW5nQ29tcG9uZW50XHJcbiAgICovXHJcbiAgY29uZmlybWF0aW9uTW9kYWxBY3Rpb24oKTogdm9pZCB7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZlxyXG4gICAgICA/LmFmdGVyQ2xvc2VkKClcclxuICAgICAgPy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgPy5zdWJzY3JpYmUoKHJlc3VsdDogYm9vbGVhbikgPT4ge1xyXG4gICAgICAgIGlmIChyZXN1bHQgJiYgIXRoaXMuaXNTdGFuZGFsb25lTWVldGluZykge1xyXG4gICAgICAgICAgdGhpcy5ldmVudHNBbmRNZWV0aW5nc1NlcnZpY2U/LmNhbkNsb3NlQWRkTWVldGluZ01vZGFsJD8ubmV4dCh0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBTZXRzIGlzRm9ybUNoYW5nZWQgc3RhdHVzIHRvIGZhbHNlIG9uIHRhYiBjaGFuZ2VzLlxyXG4gICAqIEBtZW1iZXJvZiBBZGRNZWV0aW5nQ29tcG9uZW50XHJcbiAgICovXHJcbiAgb25TZWxlY3RlZFRhYkluZGV4Q2hhbmdlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5pc0Zvcm1DaGFuZ2VkID0gZmFsc2U7XHJcbiAgICB0aGlzLmV2ZW50c0FuZE1lZXRpbmdzU2VydmljZS5zZXRFdmVudE9yTWVldGluZ0Zvcm1DaGFuZ2VTdGF0dXMoZmFsc2UpO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBVbnN1YnNjcmliZXMgdGhlIHN1YnNjcmlwdGlvbiB3aGVuIHRoZSBjb21wb25lbnQgaXMgYmVpbmcgZGVzdHJveWVkLlxyXG4gICAqIEBtZW1iZXJvZiBBZGRNZWV0aW5nQ29tcG9uZW50XHJcbiAgICovXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmRlc3Ryb3kkPy5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5kZXN0cm95JD8udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gIGNsYXNzPVwiaWVlZXNhLWFkZC1tZWV0aW5nXCJcclxuICBbbmdDbGFzc109XCJ7XHJcbiAgICAnaWVlZXNhLW5vbi1zdGFuZGFsb25lLW1lZXRpbmcnOiAhaXNTdGFuZGFsb25lTWVldGluZ1xyXG4gIH1cIlxyXG4+XHJcbiAgPHAgKm5nSWY9XCJzZWxlY3RlZE1lZXRpbmdJZFwiIGNsYXNzPVwiaWVlZXNhLXRpdGxlLWxnLTI0IHBiLTMgbS0wXCI+XHJcbiAgICB7eyBzY3JlZW5UZXh0cz8uY3JlYXRlT3JNb2RpZnlNZWV0aW5nPy5sYWJlbD8ubWVldGluZ0RldGFpbHMgfX1cclxuICA8L3A+XHJcbiAgPGllZWVzYS10YWJzXHJcbiAgICBbdGFic109XCJtZWV0aW5nRm9ybVRhYnNcIlxyXG4gICAgW2V2ZW50SWRdPVwiZXZlbnRJZFwiXHJcbiAgICBbbWVldGluZ0lkXT1cIm1lZXRpbmdJZFwiXHJcbiAgICBbc2VsZWN0ZWRUYWJJbmRleF09XCJtZWV0aW5nVmlld1wiXHJcbiAgICBbYXBpQmFzZVVSTF09XCJhcGlCYXNlVVJMXCJcclxuICAgIFt1c2VyUGVybWlzc2lvbnNdPVwidXNlclBlcm1pc3Npb25zXCJcclxuICAgIFtyb3V0ZVBhdGhzXT1cInJvdXRlUGF0aHNcIlxyXG4gICAgW2lzVmlld09ubHldPVwiaXNWaWV3T25seVwiXHJcbiAgICBbaXNGb3JtQ2hhbmdlZF09XCJpc0Zvcm1DaGFuZ2VkXCJcclxuICAgIChzZWxlY3RlZEluZGV4Q2hhbmdlKT1cIm9uU2VsZWN0ZWRUYWJJbmRleENoYW5nZSgpXCJcclxuICAgIFtjb25maXJtYXRpb25Nb2RhbENvbmZpZ109XCJjb25maXJtYXRpb25Nb2RhbENvbmZpZ1wiXHJcbiAgPjwvaWVlZXNhLXRhYnM+XHJcbjwvZGl2PlxyXG4iXX0=