@ieeesa-npm/dashboard 0.0.1 → 0.0.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.
Files changed (38) hide show
  1. package/esm2022/lib/assets/constants.json +23 -6
  2. package/esm2022/lib/assets/dashboard-mock.mjs +5 -1
  3. package/esm2022/lib/assets/dashboard-route-paths.mock.mjs +7 -5
  4. package/esm2022/lib/components/event-group-card/event-group-card.component.mjs +168 -31
  5. package/esm2022/lib/components/meeting-attendance-row/meeting-attendance-row.component.mjs +25 -24
  6. package/esm2022/lib/components/upcoming-meetings-events/upcoming-meetings-events.component.mjs +103 -5
  7. package/esm2022/lib/components/welcome-header/dashboard-welcome-header.component.mjs +3 -3
  8. package/esm2022/lib/components/your-groups/your-groups.component.mjs +157 -120
  9. package/esm2022/lib/dashboard.component.mjs +54 -14
  10. package/esm2022/lib/models/event-meeting-list-item.model.mjs +2 -0
  11. package/esm2022/lib/models/event-meeting-list-payload.model.mjs +8 -0
  12. package/esm2022/lib/models/group-row.model.mjs +1 -1
  13. package/esm2022/lib/models/meeting-row.model.mjs +1 -1
  14. package/esm2022/lib/models/my-groups-view.model.mjs +2 -0
  15. package/esm2022/lib/models/upcoming-event.model.mjs +13 -2
  16. package/esm2022/lib/services/dashboard.service.mjs +229 -35
  17. package/esm2022/lib/utils/date-format.util.mjs +110 -0
  18. package/esm2022/lib/utils/event-meeting-mapper.util.mjs +96 -0
  19. package/esm2022/public-api.mjs +3 -1
  20. package/fesm2022/ieeesa-npm-dashboard.mjs +1193 -446
  21. package/fesm2022/ieeesa-npm-dashboard.mjs.map +1 -1
  22. package/lib/components/event-group-card/event-group-card.component.d.ts +100 -132
  23. package/lib/components/meeting-attendance-row/meeting-attendance-row.component.d.ts +8 -132
  24. package/lib/components/member-level-badge/member-level-badge.component.d.ts +19 -3
  25. package/lib/components/upcoming-meetings-events/upcoming-meetings-events.component.d.ts +63 -126
  26. package/lib/components/your-groups/your-groups.component.d.ts +104 -55
  27. package/lib/dashboard.component.d.ts +48 -10
  28. package/lib/models/event-meeting-list-item.model.d.ts +107 -0
  29. package/lib/models/event-meeting-list-payload.model.d.ts +40 -0
  30. package/lib/models/group-row.model.d.ts +25 -0
  31. package/lib/models/meeting-row.model.d.ts +18 -2
  32. package/lib/models/my-groups-view.model.d.ts +56 -0
  33. package/lib/models/upcoming-event.model.d.ts +40 -2
  34. package/lib/services/dashboard.service.d.ts +97 -14
  35. package/lib/utils/date-format.util.d.ts +60 -0
  36. package/lib/utils/event-meeting-mapper.util.d.ts +50 -0
  37. package/package.json +1 -1
  38. package/public-api.d.ts +2 -0
@@ -1,5 +1,5 @@
1
1
  import { CommonModule } from '@angular/common';
2
- import { Component, EventEmitter, Input, Output, ViewEncapsulation, } from '@angular/core';
2
+ import { Component, ElementRef, EventEmitter, Input, Output, ViewChild, ViewEncapsulation, } from '@angular/core';
3
3
  import { Subject, takeUntil } from 'rxjs';
4
4
  import { AlertType } from '@ieeesa-npm/models';
5
5
  import { AlertsService } from '@ieeesa-npm/utility';
@@ -94,10 +94,14 @@ export class DashboardComponent {
94
94
  };
95
95
  /** Whether the viewport is at/below the mobile breakpoint (Req 15.1, 15.2). */
96
96
  this.isMobileView = false;
97
+ /** Whether the Upcoming Meetings & Events card is expanded. Starts collapsed. */
98
+ this.meetingsExpanded = false;
99
+ /** Whether the Your Groups card is expanded. Starts collapsed. */
100
+ this.groupsExpanded = false;
97
101
  /** The current zero-based page index of the groups table. */
98
102
  this.groupsPageIndex = 0;
99
- /** The current page size of the groups table. */
100
- this.groupsPageSize = 10;
103
+ /** The current page size of the groups table (5 rows per page per the design). */
104
+ this.groupsPageSize = 5;
101
105
  /** Completes on destroy to tear down all subscriptions (Req 2.4, 2.5). */
102
106
  this.destroy$ = new Subject();
103
107
  }
@@ -139,19 +143,30 @@ export class DashboardComponent {
139
143
  // No date-scoped reload yet; retained for future date filtering (Req 4.4).
140
144
  }
141
145
  /**
142
- * Handles a welcome-header "Jump to" shortcut, emitting the navigation intent
143
- * for the matching section so the host app routes to it: MEETINGS →
144
- * `viewAllEvents` (/events-and-meetings/view-events-meetings-list), GROUPS →
145
- * `viewAllGroups` (/groups).
146
+ * Handles a welcome-header "Jump to" shortcut: opens the matching section's
147
+ * card (so its content is visible) and smoothly scrolls it into view. It does
148
+ * NOT navigate away — the shortcut is an in-page jump to the section.
146
149
  * @param {DashboardJumpTarget} target - The selected shortcut target.
147
150
  * @return {void}
148
151
  * @memberof DashboardComponent
149
152
  */
150
153
  onJumpToShortcut(target) {
151
- const path = target === DashboardJumpTarget.MEETINGS
152
- ? this.activeRouteConfig.viewAllEvents
153
- : this.activeRouteConfig.viewAllGroups;
154
- this.emitNavigation(path);
154
+ const section = target === DashboardJumpTarget.MEETINGS
155
+ ? this.upcomingSection
156
+ : this.groupsSection;
157
+ if (target === DashboardJumpTarget.MEETINGS) {
158
+ this.meetingsExpanded = true;
159
+ }
160
+ else {
161
+ this.groupsExpanded = true;
162
+ }
163
+ // Scroll after the expand has rendered so the target's final position is used.
164
+ setTimeout(() => {
165
+ section?.nativeElement?.scrollIntoView({
166
+ behavior: 'smooth',
167
+ block: 'start',
168
+ });
169
+ });
155
170
  }
156
171
  /**
157
172
  * Emits the "View All" upcoming-events navigation intent, targeting the
@@ -212,6 +227,25 @@ export class DashboardComponent {
212
227
  this.groupsPageIndex = page.pageIndex;
213
228
  this.groupsPageSize = page.pageSize;
214
229
  }
230
+ /**
231
+ * Lazily loads (or paginates) the child meetings of an expanded EVENT card via
232
+ * the service, surfacing the attendance error message on failure. Each event
233
+ * paginates independently.
234
+ * @param {{ eventId: string; page: number }} request - The event id and one-based page to load.
235
+ * @return {void}
236
+ * @memberof DashboardComponent
237
+ */
238
+ onLoadEventMeetings(request) {
239
+ if (!request?.eventId) {
240
+ return;
241
+ }
242
+ this.dashboardService
243
+ .loadEventMeetings(request.eventId, request.page)
244
+ .pipe(takeUntil(this.destroy$))
245
+ .subscribe({
246
+ error: () => this.showAttendanceError(),
247
+ });
248
+ }
215
249
  /**
216
250
  * Delegates a log-attendance request to the service, surfacing the
217
251
  * attendance-action error message via the shared {@link AlertsService} on
@@ -353,7 +387,7 @@ export class DashboardComponent {
353
387
  });
354
388
  }
355
389
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DashboardComponent, deps: [{ token: i1.DashboardService }, { token: i2.UserPermissionsService }, { token: i3.BreakpointObserverService }, { token: i4.AlertsService }], target: i0.ɵɵFactoryTarget.Component }); }
356
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DashboardComponent, isStandalone: true, selector: "ieeesa-dashboard", inputs: { routePaths: "routePaths", apiBaseURL: "apiBaseURL", userInfo: "userInfo", userPermissions: "userPermissions" }, outputs: { dashboardNavigate: "dashboardNavigate" }, providers: [AlertsService], ngImport: i0, template: "<div\r\n class=\"ieeesa-dashboard\"\r\n [ngClass]=\"{ 'ieeesa-dashboard--mobile': isMobileView }\"\r\n>\r\n <ieeesa-dashboard-welcome-header\r\n [userName]=\"userInfo?.name ?? ''\"\r\n [meetingsCount]=\"meetingsCount\"\r\n [groupsCount]=\"groupsCount\"\r\n (shortcutSelected)=\"onJumpToShortcut($event)\"\r\n ></ieeesa-dashboard-welcome-header>\r\n\r\n <main class=\"ieeesa-dashboard__content\">\r\n <ieeesa-upcoming-meetings-events\r\n class=\"ieeesa-dashboard__upcoming\"\r\n [events]=\"upcomingEvents\"\r\n [sectionState]=\"upcomingState\"\r\n [permissions]=\"attendancePermissions\"\r\n [attendanceStates]=\"attendanceStates\"\r\n [inFlightMeetingIds]=\"inFlightMeetingIds\"\r\n [isMobileView]=\"isMobileView\"\r\n (viewAll)=\"onViewAllEvents()\"\r\n (viewEvent)=\"onViewEvent($event)\"\r\n (openMeeting)=\"onOpenMeeting($event)\"\r\n (logAttendance)=\"onLogAttendance($event)\"\r\n (leaveMeeting)=\"onLeaveMeeting($event)\"\r\n ></ieeesa-upcoming-meetings-events>\r\n\r\n <ieeesa-your-groups\r\n [groups]=\"groups | slice: (groupsPageIndex * groupsPageSize) : ((groupsPageIndex + 1) * groupsPageSize)\"\r\n [sectionState]=\"groupsState\"\r\n [totalGroups]=\"groups.length\"\r\n [pageIndex]=\"groupsPageIndex\"\r\n [pageSize]=\"groupsPageSize\"\r\n (groupSelected)=\"onGroupSelected($event)\"\r\n (viewAllGroups)=\"onViewAllGroups()\"\r\n (pageChange)=\"onGroupsPageChange($event)\"\r\n ></ieeesa-your-groups>\r\n </main>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-sm-12{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.75rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:focus{background:#1f75a7}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:focus{background:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:focus{background-color:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}.mat-mdc-button,.mat-mdc-outlined-button{--mat-mdc-button-persistent-ripple-color: unset}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-wrapper-border{border:1px solid #b2b7be;border-top:none;padding:1.5em;border-radius:0 0 4px 4px}.ieeesa-dashboard{display:flex;flex-direction:column;gap:24px;padding:16px}.ieeesa-dashboard__content{display:flex;flex-direction:column;gap:24px}.ieeesa-dashboard__welcome,.ieeesa-dashboard__upcoming,.ieeesa-dashboard__groups,.ieeesa-dashboard__footer{display:block}.ieeesa-dashboard--mobile{padding:8px;gap:16px}.ieeesa-dashboard--mobile .ieeesa-dashboard__content{gap:16px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i5.SlicePipe, name: "slice" }, { kind: "component", type: UpcomingMeetingsEventsComponent, selector: "ieeesa-upcoming-meetings-events", inputs: ["events", "sectionState", "permissions", "attendanceStates", "inFlightMeetingIds", "isMobileView"], outputs: ["viewAll", "viewEvent", "openMeeting", "logAttendance", "leaveMeeting", "meetingPageChange"] }, { kind: "component", type: YourGroupsComponent, selector: "ieeesa-your-groups", inputs: ["groups", "sectionState", "totalGroups", "pageIndex", "pageSize"], outputs: ["groupSelected", "viewAllGroups", "pageChange"] }, { kind: "component", type: DashboardWelcomeHeaderComponent, selector: "ieeesa-dashboard-welcome-header", inputs: ["userName", "meetingsCount", "groupsCount"], outputs: ["shortcutSelected"] }], encapsulation: i0.ViewEncapsulation.None }); }
390
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DashboardComponent, isStandalone: true, selector: "ieeesa-dashboard", inputs: { routePaths: "routePaths", apiBaseURL: "apiBaseURL", userInfo: "userInfo", userPermissions: "userPermissions" }, outputs: { dashboardNavigate: "dashboardNavigate" }, providers: [AlertsService], viewQueries: [{ propertyName: "upcomingSection", first: true, predicate: ["upcomingSection"], descendants: true, read: ElementRef }, { propertyName: "groupsSection", first: true, predicate: ["groupsSection"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div\r\n class=\"ieeesa-dashboard\"\r\n [ngClass]=\"{ 'ieeesa-dashboard--mobile': isMobileView }\"\r\n>\r\n <ieeesa-dashboard-welcome-header\r\n class=\"ieeesa-dashboard__welcome\"\r\n [userName]=\"userInfo?.name ?? ''\"\r\n [meetingsCount]=\"meetingsCount\"\r\n [groupsCount]=\"groupsCount\"\r\n (shortcutSelected)=\"onJumpToShortcut($event)\"\r\n ></ieeesa-dashboard-welcome-header>\r\n\r\n <main class=\"ieeesa-dashboard__content\">\r\n <ieeesa-upcoming-meetings-events\r\n #upcomingSection\r\n class=\"ieeesa-dashboard__upcoming\"\r\n [(expanded)]=\"meetingsExpanded\"\r\n [events]=\"upcomingEvents\"\r\n [sectionState]=\"upcomingState\"\r\n [permissions]=\"attendancePermissions\"\r\n [attendanceStates]=\"attendanceStates\"\r\n [inFlightMeetingIds]=\"inFlightMeetingIds\"\r\n [isMobileView]=\"isMobileView\"\r\n (viewAll)=\"onViewAllEvents()\"\r\n (viewEvent)=\"onViewEvent($event)\"\r\n (openMeeting)=\"onOpenMeeting($event)\"\r\n (logAttendance)=\"onLogAttendance($event)\"\r\n (leaveMeeting)=\"onLeaveMeeting($event)\"\r\n (loadEventMeetings)=\"onLoadEventMeetings($event)\"\r\n ></ieeesa-upcoming-meetings-events>\r\n\r\n <ieeesa-your-groups\r\n #groupsSection\r\n [(expanded)]=\"groupsExpanded\"\r\n [groups]=\"groups\"\r\n [sectionState]=\"groupsState\"\r\n [totalGroups]=\"groups.length\"\r\n [pageIndex]=\"groupsPageIndex\"\r\n [pageSize]=\"groupsPageSize\"\r\n (viewAllGroups)=\"onViewAllGroups()\"\r\n (pageChange)=\"onGroupsPageChange($event)\"\r\n ></ieeesa-your-groups>\r\n </main>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-sm-12{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.75rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:focus{background:#1f75a7}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:focus{background:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:focus{background-color:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}.mat-mdc-button,.mat-mdc-outlined-button{--mat-mdc-button-persistent-ripple-color: unset}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-wrapper-border{border:1px solid #b2b7be;border-top:none;padding:1.5em;border-radius:0 0 4px 4px}.ieeesa-dashboard{display:flex;flex-direction:column;gap:24px;padding:16px;height:100vh;max-height:100vh;overflow:hidden}.ieeesa-dashboard__welcome{display:block;flex:0 0 auto}.ieeesa-dashboard__content{display:flex;flex-direction:column;gap:24px;flex:1 1 auto;overflow-y:auto;padding-right:4px}.ieeesa-dashboard__upcoming,.ieeesa-dashboard__groups,.ieeesa-dashboard__footer{display:block}.ieeesa-dashboard--mobile{padding:8px;gap:16px}.ieeesa-dashboard--mobile .ieeesa-dashboard__content{gap:16px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: UpcomingMeetingsEventsComponent, selector: "ieeesa-upcoming-meetings-events", inputs: ["events", "sectionState", "permissions", "attendanceStates", "inFlightMeetingIds", "isMobileView", "expanded"], outputs: ["viewAll", "viewEvent", "openMeeting", "logAttendance", "leaveMeeting", "meetingPageChange", "loadEventMeetings", "expandedChange"] }, { kind: "component", type: YourGroupsComponent, selector: "ieeesa-your-groups", inputs: ["groups", "sectionState", "totalGroups", "pageIndex", "pageSize", "expanded"], outputs: ["viewAllGroups", "pageChange", "expandedChange"] }, { kind: "component", type: DashboardWelcomeHeaderComponent, selector: "ieeesa-dashboard-welcome-header", inputs: ["userName", "meetingsCount", "groupsCount"], outputs: ["shortcutSelected"] }], encapsulation: i0.ViewEncapsulation.None }); }
357
391
  }
358
392
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DashboardComponent, decorators: [{
359
393
  type: Component,
@@ -362,7 +396,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
362
396
  UpcomingMeetingsEventsComponent,
363
397
  YourGroupsComponent,
364
398
  DashboardWelcomeHeaderComponent
365
- ], encapsulation: ViewEncapsulation.None, providers: [AlertsService], template: "<div\r\n class=\"ieeesa-dashboard\"\r\n [ngClass]=\"{ 'ieeesa-dashboard--mobile': isMobileView }\"\r\n>\r\n <ieeesa-dashboard-welcome-header\r\n [userName]=\"userInfo?.name ?? ''\"\r\n [meetingsCount]=\"meetingsCount\"\r\n [groupsCount]=\"groupsCount\"\r\n (shortcutSelected)=\"onJumpToShortcut($event)\"\r\n ></ieeesa-dashboard-welcome-header>\r\n\r\n <main class=\"ieeesa-dashboard__content\">\r\n <ieeesa-upcoming-meetings-events\r\n class=\"ieeesa-dashboard__upcoming\"\r\n [events]=\"upcomingEvents\"\r\n [sectionState]=\"upcomingState\"\r\n [permissions]=\"attendancePermissions\"\r\n [attendanceStates]=\"attendanceStates\"\r\n [inFlightMeetingIds]=\"inFlightMeetingIds\"\r\n [isMobileView]=\"isMobileView\"\r\n (viewAll)=\"onViewAllEvents()\"\r\n (viewEvent)=\"onViewEvent($event)\"\r\n (openMeeting)=\"onOpenMeeting($event)\"\r\n (logAttendance)=\"onLogAttendance($event)\"\r\n (leaveMeeting)=\"onLeaveMeeting($event)\"\r\n ></ieeesa-upcoming-meetings-events>\r\n\r\n <ieeesa-your-groups\r\n [groups]=\"groups | slice: (groupsPageIndex * groupsPageSize) : ((groupsPageIndex + 1) * groupsPageSize)\"\r\n [sectionState]=\"groupsState\"\r\n [totalGroups]=\"groups.length\"\r\n [pageIndex]=\"groupsPageIndex\"\r\n [pageSize]=\"groupsPageSize\"\r\n (groupSelected)=\"onGroupSelected($event)\"\r\n (viewAllGroups)=\"onViewAllGroups()\"\r\n (pageChange)=\"onGroupsPageChange($event)\"\r\n ></ieeesa-your-groups>\r\n </main>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-sm-12{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.75rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:focus{background:#1f75a7}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:focus{background:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:focus{background-color:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}.mat-mdc-button,.mat-mdc-outlined-button{--mat-mdc-button-persistent-ripple-color: unset}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-wrapper-border{border:1px solid #b2b7be;border-top:none;padding:1.5em;border-radius:0 0 4px 4px}.ieeesa-dashboard{display:flex;flex-direction:column;gap:24px;padding:16px}.ieeesa-dashboard__content{display:flex;flex-direction:column;gap:24px}.ieeesa-dashboard__welcome,.ieeesa-dashboard__upcoming,.ieeesa-dashboard__groups,.ieeesa-dashboard__footer{display:block}.ieeesa-dashboard--mobile{padding:8px;gap:16px}.ieeesa-dashboard--mobile .ieeesa-dashboard__content{gap:16px}\n"] }]
399
+ ], encapsulation: ViewEncapsulation.None, providers: [AlertsService], template: "<div\r\n class=\"ieeesa-dashboard\"\r\n [ngClass]=\"{ 'ieeesa-dashboard--mobile': isMobileView }\"\r\n>\r\n <ieeesa-dashboard-welcome-header\r\n class=\"ieeesa-dashboard__welcome\"\r\n [userName]=\"userInfo?.name ?? ''\"\r\n [meetingsCount]=\"meetingsCount\"\r\n [groupsCount]=\"groupsCount\"\r\n (shortcutSelected)=\"onJumpToShortcut($event)\"\r\n ></ieeesa-dashboard-welcome-header>\r\n\r\n <main class=\"ieeesa-dashboard__content\">\r\n <ieeesa-upcoming-meetings-events\r\n #upcomingSection\r\n class=\"ieeesa-dashboard__upcoming\"\r\n [(expanded)]=\"meetingsExpanded\"\r\n [events]=\"upcomingEvents\"\r\n [sectionState]=\"upcomingState\"\r\n [permissions]=\"attendancePermissions\"\r\n [attendanceStates]=\"attendanceStates\"\r\n [inFlightMeetingIds]=\"inFlightMeetingIds\"\r\n [isMobileView]=\"isMobileView\"\r\n (viewAll)=\"onViewAllEvents()\"\r\n (viewEvent)=\"onViewEvent($event)\"\r\n (openMeeting)=\"onOpenMeeting($event)\"\r\n (logAttendance)=\"onLogAttendance($event)\"\r\n (leaveMeeting)=\"onLeaveMeeting($event)\"\r\n (loadEventMeetings)=\"onLoadEventMeetings($event)\"\r\n ></ieeesa-upcoming-meetings-events>\r\n\r\n <ieeesa-your-groups\r\n #groupsSection\r\n [(expanded)]=\"groupsExpanded\"\r\n [groups]=\"groups\"\r\n [sectionState]=\"groupsState\"\r\n [totalGroups]=\"groups.length\"\r\n [pageIndex]=\"groupsPageIndex\"\r\n [pageSize]=\"groupsPageSize\"\r\n (viewAllGroups)=\"onViewAllGroups()\"\r\n (pageChange)=\"onGroupsPageChange($event)\"\r\n ></ieeesa-your-groups>\r\n </main>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-sm-12{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.75rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:focus{background:#1f75a7}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:focus{background:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:focus{background-color:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}.mat-mdc-button,.mat-mdc-outlined-button{--mat-mdc-button-persistent-ripple-color: unset}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-wrapper-border{border:1px solid #b2b7be;border-top:none;padding:1.5em;border-radius:0 0 4px 4px}.ieeesa-dashboard{display:flex;flex-direction:column;gap:24px;padding:16px;height:100vh;max-height:100vh;overflow:hidden}.ieeesa-dashboard__welcome{display:block;flex:0 0 auto}.ieeesa-dashboard__content{display:flex;flex-direction:column;gap:24px;flex:1 1 auto;overflow-y:auto;padding-right:4px}.ieeesa-dashboard__upcoming,.ieeesa-dashboard__groups,.ieeesa-dashboard__footer{display:block}.ieeesa-dashboard--mobile{padding:8px;gap:16px}.ieeesa-dashboard--mobile .ieeesa-dashboard__content{gap:16px}\n"] }]
366
400
  }], ctorParameters: function () { return [{ type: i1.DashboardService }, { type: i2.UserPermissionsService }, { type: i3.BreakpointObserverService }, { type: i4.AlertsService }]; }, propDecorators: { routePaths: [{
367
401
  type: Input
368
402
  }], apiBaseURL: [{
@@ -373,5 +407,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
373
407
  type: Input
374
408
  }], dashboardNavigate: [{
375
409
  type: Output
410
+ }], upcomingSection: [{
411
+ type: ViewChild,
412
+ args: ['upcomingSection', { read: ElementRef }]
413
+ }], groupsSection: [{
414
+ type: ViewChild,
415
+ args: ['groupsSection', { read: ElementRef }]
376
416
  }] } });
377
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Rhc2hib2FyZC9zcmMvbGliL2Rhc2hib2FyZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXNoYm9hcmQvc3JjL2xpYi9kYXNoYm9hcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxTQUFTLEVBQWtCLE1BQU0sb0JBQW9CLENBQUM7QUFDL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBSXBELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBTy9FLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLDBFQUEwRSxDQUFDO0FBQzNILE9BQU8sS0FBSyxTQUFTLE1BQU0seUJBQXlCLENBQUM7QUFDckQsT0FBTyxFQUNMLG1CQUFtQixFQUNuQiwrQkFBK0IsR0FDaEMsTUFBTSxnRUFBZ0UsQ0FBQztBQUN4RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQzs7Ozs7OztBQWVyRjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F1Qkc7QUFnQkgsTUFBTSxPQUFPLGtCQUFrQjtJQThDN0I7Ozs7O09BS0c7SUFDSCxJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUMvQixDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssR0FB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O3dCQUNaLCtCQUErQjt3QkFDL0IsbUJBQW1CO3dCQUNuQiwrQkFBK0I7cUJBQ2hDLGlCQUdjLGlCQUFpQixDQUFDLElBQUksYUFDMUIsQ0FBQyxhQUFhLENBQUM7Z05BT2pCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBR0csVUFBVTtzQkFBbEIsS0FBSztnQkFHRyxRQUFRO3NCQUFoQixLQUFLO2dCQUdHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBR0ksaUJBQWlCO3NCQUExQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE9uRGVzdHJveSxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQnJlYWtwb2ludE9ic2VydmVyU2VydmljZSB9IGZyb20gJ0BpZWVlc2EtbnBtL3ByZXNlbnRhdGlvbic7XHJcbmltcG9ydCB7IEFsZXJ0VHlwZSwgVXNlclBlcm1pc3Npb24gfSBmcm9tICdAaWVlZXNhLW5wbS9tb2RlbHMnO1xyXG5pbXBvcnQgeyBBbGVydHNTZXJ2aWNlIH0gZnJvbSAnQGllZWVzYS1ucG0vdXRpbGl0eSc7XHJcbmltcG9ydCB7IEF0dGVuZGFuY2VBY3Rpb25QZXJtaXNzaW9ucyB9IGZyb20gJy4vbW9kZWxzL2F0dGVuZGFuY2UtYWN0aW9uLXBlcm1pc3Npb25zLm1vZGVsJztcclxuaW1wb3J0IHsgQXR0ZW5kYW5jZVN0YXRlIH0gZnJvbSAnLi9tb2RlbHMvYXR0ZW5kYW5jZS1zdGF0ZS5tb2RlbCc7XHJcbmltcG9ydCB7IERhc2hib2FyZFJvdXRlQ29uZmlnIH0gZnJvbSAnLi9tb2RlbHMvZGFzaGJvYXJkLXJvdXRlLWNvbmZpZy5tb2RlbCc7XHJcbmltcG9ydCB7IERhc2hib2FyZFNlY3Rpb25TdGF0ZSB9IGZyb20gJy4vbW9kZWxzL2Rhc2hib2FyZC1zZWN0aW9uLXN0YXRlLm1vZGVsJztcclxuaW1wb3J0IHsgRGFzaGJvYXJkVXNlckluZm8gfSBmcm9tICcuL21vZGVscy9kYXNoYm9hcmQtdXNlci1pbmZvLm1vZGVsJztcclxuaW1wb3J0IHsgR3JvdXBSb3cgfSBmcm9tICcuL21vZGVscy9ncm91cC1yb3cubW9kZWwnO1xyXG5pbXBvcnQgeyBQYWdlQ2hhbmdlIH0gZnJvbSAnLi9tb2RlbHMvcGFnZS1jaGFuZ2UubW9kZWwnO1xyXG5pbXBvcnQgeyBVcGNvbWluZ0V2ZW50IH0gZnJvbSAnLi9tb2RlbHMvdXBjb21pbmctZXZlbnQubW9kZWwnO1xyXG5pbXBvcnQgeyBEYXNoYm9hcmRTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9kYXNoYm9hcmQuc2VydmljZSc7XHJcbmltcG9ydCB7IFVzZXJQZXJtaXNzaW9uc1NlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3VzZXItcGVybWlzc2lvbnMuc2VydmljZSc7XHJcbmltcG9ydCB7IFVwY29taW5nTWVldGluZ3NFdmVudHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdXBjb21pbmctbWVldGluZ3MtZXZlbnRzL3VwY29taW5nLW1lZXRpbmdzLWV2ZW50cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgKiBhcyBjb25zdGFudHMgZnJvbSAnLi9hc3NldHMvY29uc3RhbnRzLmpzb24nO1xyXG5pbXBvcnQge1xyXG4gIERhc2hib2FyZEp1bXBUYXJnZXQsXHJcbiAgRGFzaGJvYXJkV2VsY29tZUhlYWRlckNvbXBvbmVudCxcclxufSBmcm9tICcuL2NvbXBvbmVudHMvd2VsY29tZS1oZWFkZXIvZGFzaGJvYXJkLXdlbGNvbWUtaGVhZGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFlvdXJHcm91cHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMveW91ci1ncm91cHMveW91ci1ncm91cHMuY29tcG9uZW50JztcclxuXHJcbi8qKlxyXG4gKiBBIG5hdmlnYXRpb24gaW50ZW50IGVtaXR0ZWQgYnkge0BsaW5rIERhc2hib2FyZENvbXBvbmVudH0gZm9yIHRoZSBob3N0XHJcbiAqIGFwcGxpY2F0aW9uIHRvIGFjdCBvbi4gVGhlIGxpYnJhcnkgbmV2ZXIgcGVyZm9ybXMgbmF2aWdhdGlvbiBpdHNlbGY7IGl0IGVtaXRzXHJcbiAqIHRoZSByZXNvbHZlZCB0YXJnZXQgYHBhdGhgIChmcm9tIHRoZSB7QGxpbmsgRGFzaGJvYXJkUm91dGVDb25maWd9KSB0b2dldGhlclxyXG4gKiB3aXRoIHRoZSB0cmlnZ2VyaW5nIGlkZW50aWZpZXIgc28gdGhlIGhvc3QgY2FuIHJvdXRlIGFjY29yZGluZ2x5IChSZXEgMTEuMSkuXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIERhc2hib2FyZE5hdmlnYXRpb25JbnRlbnQge1xyXG4gIC8qKiBUaGUgcmVzb2x2ZWQgdGFyZ2V0IHJvdXRlIHBhdGggZnJvbSB0aGUgYWN0aXZlIHtAbGluayBEYXNoYm9hcmRSb3V0ZUNvbmZpZ30uICovXHJcbiAgcGF0aDogc3RyaW5nO1xyXG4gIC8qKiBUaGUgaWRlbnRpZmllciB0aGF0IHRyaWdnZXJlZCB0aGUgbmF2aWdhdGlvbiAoZXZlbnQvbWVldGluZy9ncm91cCBpZCksIHdoZW4gYXBwbGljYWJsZS4gKi9cclxuICBpZD86IHN0cmluZztcclxufVxyXG5cclxuLyoqXHJcbiAqIERhc2hib2FyZCAoYGllZWVzYS1kYXNoYm9hcmRgKSBpcyB0aGUgcm9vdCBjb250YWluZXIgYW5kIHNpbmdsZSBob3N0IGVudHJ5XHJcbiAqIHBvaW50IGZvciB0aGUgXCJORVNDIFJldmlzaW9uIEN5Y2xlXCIgZGFzaGJvYXJkIGxhbmRpbmcgcGFnZS4gSXQgb3ducyB0aGVcclxuICogaG9zdC1zdXBwbGllZCBjb25maWd1cmF0aW9uIChgcm91dGVQYXRoc2AsIGBhcGlCYXNlVVJMYCwgYHVzZXJJbmZvYCxcclxuICogYHVzZXJQZXJtaXNzaW9uc2ApLCBjb21wb3NlcyB0aGUgZm91ciByZWdpb25zIOKAlCB3ZWxjb21lIGhlYWRlciwgdXBjb21pbmdcclxuICogbWVldGluZ3MgJiBldmVudHMsIHlvdXIgZ3JvdXBzLCBhbmQgZm9vdGVyIOKAlCBhbmQgb3JjaGVzdHJhdGVzIGRhdGEgbG9hZGluZ1xyXG4gKiBhbmQgYXR0ZW5kYW5jZSBhY3Rpb25zIHRocm91Z2ggdGhlIHtAbGluayBEYXNoYm9hcmRTZXJ2aWNlfS5cclxuICpcclxuICogVGhlIGNvbXBvbmVudCBpcyBjb21wb3NpdGlvbi1maXJzdCBhbmQgaG9zdC1hZ25vc3RpYzogaXQgc3Vic2NyaWJlcyB0byB0aGVcclxuICogc2VydmljZSBvYnNlcnZhYmxlcyAoYHVwY29taW5nRXZlbnRzJGAsIGBncm91cHMkYCwgdGhlIHBlci1zZWN0aW9uIHN0YXRlcywgdGhlXHJcbiAqIGF0dGVuZGFuY2Utc3RhdGUgbWFwLCBhbmQgdGhlIGluLWZsaWdodCBzZXQpIHdpdGggYHRha2VVbnRpbChkZXN0cm95JClgIGFuZFxyXG4gKiB0cmFja3MgYGlzTW9iaWxlVmlld2AgZnJvbSB0aGUgUHJlc2VudGF0aW9uX0xpYnJhcnlcclxuICoge0BsaW5rIEJyZWFrcG9pbnRPYnNlcnZlclNlcnZpY2V9IChSZXEgMTMuMSwgMTMuMiwgMTMuNSwgMTUuMSwgMTUuMikuIENoaWxkXHJcbiAqIG5hdmlnYXRpb24gYEBPdXRwdXQoKWBzIGFyZSBjb21wb3NlZCBpbnRvIGEgc2luZ2xlIHtAbGluayBkYXNoYm9hcmROYXZpZ2F0ZX1cclxuICogc3RyZWFtIG9mIGB7IHBhdGgsIGlkIH1gIGludGVudHMgcmVzb2x2ZWQgZnJvbSBgcm91dGVQYXRoc2AgKGZhbGxpbmcgYmFjayB0b1xyXG4gKiB0aGUgZGVmYXVsdCByb3V0ZSBjb25maWd1cmF0aW9uIGluIGBjb25zdGFudHMuanNvbmAgd2hlbiBgcm91dGVQYXRoc2AgaXNcclxuICogb21pdHRlZCkgKFJlcSA1LjIsIDYuNCwgNy40LCA4LjIsIDguNywgMTEuMSwgMTEuNSkuIEF0dGVuZGFuY2UgYEBPdXRwdXQoKWBzXHJcbiAqIGFyZSBkZWxlZ2F0ZWQgdG8gdGhlIHNlcnZpY2UsIGFuZCBvbiBmYWlsdXJlIHRoZSBhdHRlbmRhbmNlLWFjdGlvbiBlcnJvclxyXG4gKiBtZXNzYWdlIGZyb20gYGNvbnN0YW50cy5qc29uYCBpcyBzdXJmYWNlZCB2aWEgdGhlIHNoYXJlZCB7QGxpbmsgQWxlcnRzU2VydmljZX1cclxuICogKFJlcSA3LjcsIDcuOCwgMTMuNykuIFBlci1yb3cge0BsaW5rIEF0dGVuZGFuY2VBY3Rpb25QZXJtaXNzaW9uc30gYXJlIGNvbXB1dGVkXHJcbiAqIGZyb20gYHVzZXJQZXJtaXNzaW9uc2AgYW5kIHBhc3NlZCBkb3duIHRvIHRoZSByb3dzIChSZXEgMTIuMykuXHJcbiAqIEBleHBvcnRcclxuICogQGNsYXNzIERhc2hib2FyZENvbXBvbmVudFxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcclxuICBzZWxlY3RvcjogJ2llZWVzYS1kYXNoYm9hcmQnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgVXBjb21pbmdNZWV0aW5nc0V2ZW50c0NvbXBvbmVudCxcclxuICAgIFlvdXJHcm91cHNDb21wb25lbnQsXHJcbiAgICBEYXNoYm9hcmRXZWxjb21lSGVhZGVyQ29tcG9uZW50XHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vZGFzaGJvYXJkLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9kYXNoYm9hcmQuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIHByb3ZpZGVyczogW0FsZXJ0c1NlcnZpY2VdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGFzaGJvYXJkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIC8qKiBVc2VyLWZhY2luZyBzdHJpbmdzIGFuZCB0aGUgZGVmYXVsdCByb3V0ZSBjb25maWcgc291cmNlZCBmcm9tIGBjb25zdGFudHMuanNvbmAuICovXHJcbiAgY29uc3RhbnRzID0gY29uc3RhbnRzO1xyXG5cclxuICAvKiogSG9zdCBuYXZpZ2F0aW9uIHBhdGhzOyBmYWxscyBiYWNrIHRvIHRoZSBgY29uc3RhbnRzLmpzb25gIGRlZmF1bHQgd2hlbiBvbWl0dGVkIChSZXEgMTEuMSwgMTEuNSkuICovXHJcbiAgQElucHV0KCkgcm91dGVQYXRocz86IERhc2hib2FyZFJvdXRlQ29uZmlnO1xyXG5cclxuICAvKiogVGhlIGhvc3QgYXBwbGljYXRpb24ncyBBUEkgYmFzZSBVUkwsIGZvcndhcmRlZCB0byB0aGUgc2VydmljZSAoUmVxIDExLjIpLiAqL1xyXG4gIEBJbnB1dCgpIGFwaUJhc2VVUkwhOiBzdHJpbmc7XHJcblxyXG4gIC8qKiBUaGUgc2lnbmVkLWluIHVzZXIncyBpbmZvIHVzZWQgYnkgdGhlIHdlbGNvbWUgaGVhZGVyIGdyZWV0aW5nIChSZXEgMTEuMywgNC4xKS4gKi9cclxuICBASW5wdXQoKSB1c2VySW5mbyE6IERhc2hib2FyZFVzZXJJbmZvO1xyXG5cclxuICAvKiogVGhlIHNpZ25lZC1pbiB1c2VyJ3MgcGVybWlzc2lvbnMgdXNlZCB0byBnYXRlIGF0dGVuZGFuY2UgYWN0aW9ucyAoUmVxIDExLjQsIDEyLjMpLiAqL1xyXG4gIEBJbnB1dCgpIHVzZXJQZXJtaXNzaW9ucyE6IFVzZXJQZXJtaXNzaW9uW107XHJcblxyXG4gIC8qKiBFbWl0cyBhIHJlc29sdmVkIG5hdmlnYXRpb24gaW50ZW50IGZvciB0aGUgaG9zdCB0byBhY3Qgb24gKFJlcSA1LjIsIDYuNCwgNy40LCA4LjIsIDguNywgMTEuMSkuICovXHJcbiAgQE91dHB1dCgpIGRhc2hib2FyZE5hdmlnYXRlID0gbmV3IEV2ZW50RW1pdHRlcjxEYXNoYm9hcmROYXZpZ2F0aW9uSW50ZW50PigpO1xyXG5cclxuICAvKiogVGhlIHVzZXIncyB1cGNvbWluZyBldmVudHMsIGJvdW5kIHRvIHRoZSB1cGNvbWluZyBzZWN0aW9uIChSZXEgMTMuMSwgMTMuMikuICovXHJcbiAgdXBjb21pbmdFdmVudHM6IFVwY29taW5nRXZlbnRbXSA9IFtdO1xyXG5cclxuICAvKiogVGhlIHVzZXIncyBncm91cHMsIGJvdW5kIHRvIHRoZSBncm91cHMgc2VjdGlvbiAoUmVxIDEzLjEsIDEzLjIpLiAqL1xyXG4gIGdyb3VwczogR3JvdXBSb3dbXSA9IFtdO1xyXG5cclxuICAvKiogVGhlIHVwY29taW5nLWV2ZW50cyBzZWN0aW9uJ3MgbG9hZC9lbXB0eS9lcnJvciBzdGF0ZSAoUmVxIDEzLjEsIDEzLjIsIDEzLjUpLiAqL1xyXG4gIHVwY29taW5nU3RhdGU6IERhc2hib2FyZFNlY3Rpb25TdGF0ZSA9IERhc2hib2FyZFNlY3Rpb25TdGF0ZS5MT0FESU5HO1xyXG5cclxuICAvKiogVGhlIGdyb3VwcyBzZWN0aW9uJ3MgbG9hZC9lbXB0eS9lcnJvciBzdGF0ZSAoUmVxIDEzLjEsIDEzLjIsIDEzLjUpLiAqL1xyXG4gIGdyb3Vwc1N0YXRlOiBEYXNoYm9hcmRTZWN0aW9uU3RhdGUgPSBEYXNoYm9hcmRTZWN0aW9uU3RhdGUuTE9BRElORztcclxuXHJcbiAgLyoqIFRoZSBwZXItbWVldGluZyBhdHRlbmRhbmNlLXN0YXRlIG1hcCBwYXNzZWQgZG93biB0byB0aGUgcm93cy4gKi9cclxuICBhdHRlbmRhbmNlU3RhdGVzOiBSZWNvcmQ8c3RyaW5nLCBBdHRlbmRhbmNlU3RhdGU+ID0ge307XHJcblxyXG4gIC8qKiBUaGUgc2V0IG9mIG1lZXRpbmcgaWRzIHdpdGggYW4gYXR0ZW5kYW5jZSBhY3Rpb24gYXdhaXRpbmcgcmVzb2x1dGlvbi4gKi9cclxuICBpbkZsaWdodE1lZXRpbmdJZHM6IFJlYWRvbmx5U2V0PHN0cmluZz4gPSBuZXcgU2V0PHN0cmluZz4oKTtcclxuXHJcbiAgLyoqIFRoZSBwZXItcm93IGF0dGVuZGFuY2UtYWN0aW9uIHBlcm1pc3Npb25zIGRlcml2ZWQgZnJvbSBgdXNlclBlcm1pc3Npb25zYCAoUmVxIDEyLjMpLiAqL1xyXG4gIGF0dGVuZGFuY2VQZXJtaXNzaW9uczogQXR0ZW5kYW5jZUFjdGlvblBlcm1pc3Npb25zID0ge1xyXG4gICAgY2FuTG9nQXR0ZW5kYW5jZTogZmFsc2UsXHJcbiAgICBjYW5MZWF2ZU1lZXRpbmc6IGZhbHNlLFxyXG4gIH07XHJcblxyXG4gIC8qKiBXaGV0aGVyIHRoZSB2aWV3cG9ydCBpcyBhdC9iZWxvdyB0aGUgbW9iaWxlIGJyZWFrcG9pbnQgKFJlcSAxNS4xLCAxNS4yKS4gKi9cclxuICBpc01vYmlsZVZpZXcgPSBmYWxzZTtcclxuXHJcbiAgLyoqXHJcbiAgICogVG90YWwgbnVtYmVyIG9mIG1lZXRpbmdzIGFjcm9zcyB0aGUgbG9hZGVkIHVwY29taW5nIGV2ZW50cywgc2hvd24gaW4gdGhlXHJcbiAgICogd2VsY29tZSBoZWFkZXIncyBcIlVwY29taW5nIE1lZXRpbmdzICYgRXZlbnRzXCIgc2hvcnRjdXQgYmFkZ2UuXHJcbiAgICogQHJlYWRvbmx5XHJcbiAgICogQG1lbWJlcm9mIERhc2hib2FyZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIGdldCBtZWV0aW5nc0NvdW50KCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy51cGNvbWluZ0V2ZW50cy5yZWR1Y2UoXHJcbiAgICAgICh0b3RhbCwgZXZlbnQpID0+IHRvdGFsICsgKGV2ZW50Py5tZWV0aW5nQ291bnQgPz8gMCksXHJcbiAgICAgIDBcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBOdW1iZXIgb2YgbG9hZGVkIGdyb3Vwcywgc2hvd24gaW4gdGhlIHdlbGNvbWUgaGVhZGVyJ3MgXCJZb3VyIEdyb3Vwc1wiXHJcbiAgICogc2hvcnRjdXQgYmFkZ2UuXHJcbiAgICogQHJlYWRvbmx5XHJcbiAgICogQG1lbWJlcm9mIERhc2hib2FyZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIGdldCBncm91cHNDb3VudCgpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuZ3JvdXBzLmxlbmd0aDtcclxuICB9XHJcblxyXG4gIC8qKiBUaGUgY3VycmVudCB6ZXJvLWJhc2VkIHBhZ2UgaW5kZXggb2YgdGhlIGdyb3VwcyB0YWJsZS4gKi9cclxuICBncm91cHNQYWdlSW5kZXggPSAwO1xyXG5cclxuICAvKiogVGhlIGN1cnJlbnQgcGFnZSBzaXplIG9mIHRoZSBncm91cHMgdGFibGUuICovXHJcbiAgZ3JvdXBzUGFnZVNpemUgPSAxMDtcclxuXHJcbiAgLyoqIENvbXBsZXRlcyBvbiBkZXN0cm95IHRvIHRlYXIgZG93biBhbGwgc3Vic2NyaXB0aW9ucyAoUmVxIDIuNCwgMi41KS4gKi9cclxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLXZhcnNcclxuICAgIHByaXZhdGUgZGFzaGJvYXJkU2VydmljZTogRGFzaGJvYXJkU2VydmljZSxcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gICAgcHJpdmF0ZSB1c2VyUGVybWlzc2lvbnNTZXJ2aWNlOiBVc2VyUGVybWlzc2lvbnNTZXJ2aWNlLFxyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXHJcbiAgICBwcml2YXRlIGJyZWFrcG9pbnRPYnNlcnZlclNlcnZpY2U6IEJyZWFrcG9pbnRPYnNlcnZlclNlcnZpY2UsXHJcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLXZhcnNcclxuICAgIHByaXZhdGUgYWxlcnRTZXJ2aWNlOiBBbGVydHNTZXJ2aWNlIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1lbXB0eS1mdW5jdGlvblxyXG4gICkge31cclxuXHJcbiAgLyoqXHJcbiAgICogSW5pdGlhbGl6ZXMgdGhlIGRhc2hib2FyZDogZm9yd2FyZHMgdGhlIGhvc3QgY29uZmlnIHRvIHRoZSBzZXJ2aWNlLCBkZXJpdmVzXHJcbiAgICogdGhlIHBlci1yb3cgYXR0ZW5kYW5jZSBwZXJtaXNzaW9ucywga2lja3Mgb2ZmIHRoZSB1cGNvbWluZy1ldmVudHMgYW5kIGdyb3Vwc1xyXG4gICAqIGxvYWRzLCBhbmQgd2lyZXMgdXAgc3Vic2NyaXB0aW9ucyB0byB0aGUgc2VydmljZSBzdGF0ZSBvYnNlcnZhYmxlcyBhbmQgdGhlXHJcbiAgICogYnJlYWtwb2ludCBvYnNlcnZlciDigJQgYWxsIGNsZWFuZWQgdXAgdmlhIGB0YWtlVW50aWwoZGVzdHJveSQpYCAoUmVxIDExLjIsXHJcbiAgICogMTEuNCwgMTIuMywgMTMuMSwgMTMuMiwgMTMuNSwgMTUuMSwgMTUuMikuXHJcbiAgICogQHJldHVybiB7dm9pZH1cclxuICAgKiBAbWVtYmVyb2YgRGFzaGJvYXJkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmRhc2hib2FyZFNlcnZpY2Uuc2V0QXBwQ29uZmlnKHRoaXMuYXBpQmFzZVVSTCwgdGhpcy51c2VyUGVybWlzc2lvbnMpO1xyXG4gICAgdGhpcy5hdHRlbmRhbmNlUGVybWlzc2lvbnMgPVxyXG4gICAgICB0aGlzLnVzZXJQZXJtaXNzaW9uc1NlcnZpY2UubWFwVG9BdHRlbmRhbmNlQWN0aW9uUGVybWlzc2lvbnMoXHJcbiAgICAgICAgdGhpcy51c2VyUGVybWlzc2lvbnNcclxuICAgICAgKTtcclxuXHJcbiAgICB0aGlzLnN1YnNjcmliZVRvU2VydmljZVN0YXRlKCk7XHJcbiAgICB0aGlzLnN1YnNjcmliZVRvQnJlYWtwb2ludCgpO1xyXG4gICAgdGhpcy5sb2FkVXBjb21pbmdFdmVudHMoKTtcclxuICAgIHRoaXMubG9hZEdyb3VwcygpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVGVhcnMgZG93biBhbGwgc3Vic2NyaXB0aW9ucyBvbiBkZXN0cm95IChSZXEgMi40LCAyLjUpLlxyXG4gICAqIEByZXR1cm4ge3ZvaWR9XHJcbiAgICogQG1lbWJlcm9mIERhc2hib2FyZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSGFuZGxlcyB0aGUgd2VsY29tZS1oZWFkZXIgXCJKdW1wIHRvXCIgZGF0ZSBzZWxlY3Rpb24uIFRoZSBkYXNoYm9hcmQgY3VycmVudGx5XHJcbiAgICogaGFzIG5vIGRhdGUtc2NvcGVkIGRhdGEgbG9hZCwgc28gdGhlIHNlbGVjdGlvbiBpcyBhY2NlcHRlZCB3aXRob3V0IHNpZGVcclxuICAgKiBlZmZlY3RzOyB0aGUgaG9vayBrZWVwcyB0aGUgaGVhZGVyJ3MgY29udHJhY3Qgc2F0aXNmaWVkIGZvciBmdXR1cmUgZmlsdGVyaW5nLlxyXG4gICAqIEByZXR1cm4ge3ZvaWR9XHJcbiAgICogQG1lbWJlcm9mIERhc2hib2FyZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIG9uSnVtcFRvRGF0ZVNlbGVjdGVkKCk6IHZvaWQge1xyXG4gICAgLy8gTm8gZGF0ZS1zY29wZWQgcmVsb2FkIHlldDsgcmV0YWluZWQgZm9yIGZ1dHVyZSBkYXRlIGZpbHRlcmluZyAoUmVxIDQuNCkuXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBIYW5kbGVzIGEgd2VsY29tZS1oZWFkZXIgXCJKdW1wIHRvXCIgc2hvcnRjdXQsIGVtaXR0aW5nIHRoZSBuYXZpZ2F0aW9uIGludGVudFxyXG4gICAqIGZvciB0aGUgbWF0Y2hpbmcgc2VjdGlvbiBzbyB0aGUgaG9zdCBhcHAgcm91dGVzIHRvIGl0OiBNRUVUSU5HUyDihpJcclxuICAgKiBgdmlld0FsbEV2ZW50c2AgKC9ldmVudHMtYW5kLW1lZXRpbmdzL3ZpZXctZXZlbnRzLW1lZXRpbmdzLWxpc3QpLCBHUk9VUFMg4oaSXHJcbiAgICogYHZpZXdBbGxHcm91cHNgICgvZ3JvdXBzKS5cclxuICAgKiBAcGFyYW0ge0Rhc2hib2FyZEp1bXBUYXJnZXR9IHRhcmdldCAtIFRoZSBzZWxlY3RlZCBzaG9ydGN1dCB0YXJnZXQuXHJcbiAgICogQHJldHVybiB7dm9pZH1cclxuICAgKiBAbWVtYmVyb2YgRGFzaGJvYXJkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgb25KdW1wVG9TaG9ydGN1dCh0YXJnZXQ6IERhc2hib2FyZEp1bXBUYXJnZXQpOiB2b2lkIHtcclxuICAgIGNvbnN0IHBhdGggPVxyXG4gICAgICB0YXJnZXQgPT09IERhc2hib2FyZEp1bXBUYXJnZXQuTUVFVElOR1NcclxuICAgICAgICA/IHRoaXMuYWN0aXZlUm91dGVDb25maWcudmlld0FsbEV2ZW50c1xyXG4gICAgICAgIDogdGhpcy5hY3RpdmVSb3V0ZUNvbmZpZy52aWV3QWxsR3JvdXBzO1xyXG4gICAgdGhpcy5lbWl0TmF2aWdhdGlvbihwYXRoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEVtaXRzIHRoZSBcIlZpZXcgQWxsXCIgdXBjb21pbmctZXZlbnRzIG5hdmlnYXRpb24gaW50ZW50LCB0YXJnZXRpbmcgdGhlXHJcbiAgICogYHZpZXdBbGxFdmVudHNgIHJvdXRlIHdpdGggbm8gaWQgKFJlcSA1LjIsIDExLjEpLlxyXG4gICAqIEByZXR1cm4ge3ZvaWR9XHJcbiAgICogQG1lbWJlcm9mIERhc2hib2FyZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIG9uVmlld0FsbEV2ZW50cygpOiB2b2lkIHtcclxuICAgIHRoaXMuZW1pdE5hdmlnYXRpb24odGhpcy5hY3RpdmVSb3V0ZUNvbmZpZy52aWV3QWxsRXZlbnRzKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEVtaXRzIHRoZSBcIlZpZXcgRXZlbnRcIiBuYXZpZ2F0aW9uIGludGVudCwgdGFyZ2V0aW5nIHRoZSBgZXZlbnREZXRhaWxgIHJvdXRlXHJcbiAgICogd2l0aCB0aGUgZXZlbnQgaWQgKFJlcSA2LjQsIDExLjEpLlxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBldmVudElkIC0gVGhlIGlkIG9mIHRoZSBldmVudCB0byB2aWV3LlxyXG4gICAqIEByZXR1cm4ge3ZvaWR9XHJcbiAgICogQG1lbWJlcm9mIERhc2hib2FyZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIG9uVmlld0V2ZW50KGV2ZW50SWQ6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5lbWl0TmF2aWdhdGlvbih0aGlzLmFjdGl2ZVJvdXRlQ29uZmlnLmV2ZW50RGV0YWlsLCBldmVudElkKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEVtaXRzIHRoZSBvcGVuLW1lZXRpbmcgbmF2aWdhdGlvbiBpbnRlbnQsIHRhcmdldGluZyB0aGUgYG1lZXRpbmdEZXRhaWxgXHJcbiAgICogcm91dGUgd2l0aCB0aGUgbWVldGluZyBpZCAoUmVxIDcuNCwgMTEuMSkuXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IG1lZXRpbmdJZCAtIFRoZSBpZCBvZiB0aGUgbWVldGluZyB0byBvcGVuLlxyXG4gICAqIEByZXR1cm4ge3ZvaWR9XHJcbiAgICogQG1lbWJlcm9mIERhc2hib2FyZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIG9uT3Blbk1lZXRpbmcobWVldGluZ0lkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuZW1pdE5hdmlnYXRpb24odGhpcy5hY3RpdmVSb3V0ZUNvbmZpZy5tZWV0aW5nRGV0YWlsLCBtZWV0aW5nSWQpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRW1pdHMgdGhlIFwiVmlldyBBbGxcIiBncm91cHMgbmF2aWdhdGlvbiBpbnRlbnQsIHRhcmdldGluZyB0aGVcclxuICAgKiBgdmlld0FsbEdyb3Vwc2Agcm91dGUgd2l0aCBubyBpZCAoUmVxIDguMiwgMTEuMSkuXHJcbiAgICogQHJldHVybiB7dm9pZH1cclxuICAgKiBAbWVtYmVyb2YgRGFzaGJvYXJkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgb25WaWV3QWxsR3JvdXBzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5lbWl0TmF2aWdhdGlvbih0aGlzLmFjdGl2ZVJvdXRlQ29uZmlnLnZpZXdBbGxHcm91cHMpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRW1pdHMgdGhlIGdyb3VwLWRldGFpbCBuYXZpZ2F0aW9uIGludGVudCwgdGFyZ2V0aW5nIHRoZSBgZ3JvdXBEZXRhaWxgIHJvdXRlXHJcbiAgICogd2l0aCB0aGUgZ3JvdXAgaWQgKFJlcSA4LjcsIDExLjEpLlxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBncm91cElkIC0gVGhlIGlkIG9mIHRoZSBzZWxlY3RlZCBncm91cC5cclxuICAgKiBAcmV0dXJuIHt2b2lkfVxyXG4gICAqIEBtZW1iZXJvZiBEYXNoYm9hcmRDb21wb25lbnRcclxuICAgKi9cclxuICBvbkdyb3VwU2VsZWN0ZWQoZ3JvdXBJZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLmVtaXROYXZpZ2F0aW9uKHRoaXMuYWN0aXZlUm91dGVDb25maWcuZ3JvdXBEZXRhaWwsIGdyb3VwSWQpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVXBkYXRlcyB0aGUgZ3JvdXBzIHRhYmxlIHBhZ2luZyBzdGF0ZSBpbiByZXNwb25zZSB0byBhIHBhZ2luYXRvciBjaGFuZ2Ugc29cclxuICAgKiB0aGUgZ3JvdXBzIHNlY3Rpb24gcmVmbGVjdHMgdGhlIHJlcXVlc3RlZCBwYWdlIChSZXEgOC4xMCkuXHJcbiAgICogQHBhcmFtIHtQYWdlQ2hhbmdlfSBwYWdlIC0gVGhlIHJlcXVlc3RlZCBwYWdlIGluZGV4IGFuZCBzaXplLlxyXG4gICAqIEByZXR1cm4ge3ZvaWR9XHJcbiAgICogQG1lbWJlcm9mIERhc2hib2FyZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIG9uR3JvdXBzUGFnZUNoYW5nZShwYWdlOiBQYWdlQ2hhbmdlKTogdm9pZCB7XHJcbiAgICB0aGlzLmdyb3Vwc1BhZ2VJbmRleCA9IHBhZ2UucGFnZUluZGV4O1xyXG4gICAgdGhpcy5ncm91cHNQYWdlU2l6ZSA9IHBhZ2UucGFnZVNpemU7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEZWxlZ2F0ZXMgYSBsb2ctYXR0ZW5kYW5jZSByZXF1ZXN0IHRvIHRoZSBzZXJ2aWNlLCBzdXJmYWNpbmcgdGhlXHJcbiAgICogYXR0ZW5kYW5jZS1hY3Rpb24gZXJyb3IgbWVzc2FnZSB2aWEgdGhlIHNoYXJlZCB7QGxpbmsgQWxlcnRzU2VydmljZX0gb25cclxuICAgKiBmYWlsdXJlIHdoaWxlIHRoZSBzZXJ2aWNlIHJldGFpbnMgdGhlIHByaW9yIGRpc3BsYXllZCBzdGF0ZSAoUmVxIDcuNywgMTMuNykuXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IG1lZXRpbmdJZCAtIFRoZSBtZWV0aW5nIHRvIGxvZyBhdHRlbmRhbmNlIGZvci5cclxuICAgKiBAcmV0dXJuIHt2b2lkfVxyXG4gICAqIEBtZW1iZXJvZiBEYXNoYm9hcmRDb21wb25lbnRcclxuICAgKi9cclxuICBvbkxvZ0F0dGVuZGFuY2UobWVldGluZ0lkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuZGFzaGJvYXJkU2VydmljZVxyXG4gICAgICAubG9nQXR0ZW5kYW5jZShtZWV0aW5nSWQpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgZXJyb3I6ICgpID0+IHRoaXMuc2hvd0F0dGVuZGFuY2VFcnJvcigpLFxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIERlbGVnYXRlcyBhIGxlYXZlLW1lZXRpbmcgcmVxdWVzdCB0byB0aGUgc2VydmljZSwgc3VyZmFjaW5nIHRoZVxyXG4gICAqIGF0dGVuZGFuY2UtYWN0aW9uIGVycm9yIG1lc3NhZ2UgdmlhIHRoZSBzaGFyZWQge0BsaW5rIEFsZXJ0c1NlcnZpY2V9IG9uXHJcbiAgICogZmFpbHVyZSB3aGlsZSB0aGUgc2VydmljZSByZXRhaW5zIHRoZSBwcmlvciBkaXNwbGF5ZWQgc3RhdGUgKFJlcSA3LjgsIDEzLjcpLlxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBtZWV0aW5nSWQgLSBUaGUgbWVldGluZyB0byBsZWF2ZS5cclxuICAgKiBAcmV0dXJuIHt2b2lkfVxyXG4gICAqIEBtZW1iZXJvZiBEYXNoYm9hcmRDb21wb25lbnRcclxuICAgKi9cclxuICBvbkxlYXZlTWVldGluZyhtZWV0aW5nSWQ6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5kYXNoYm9hcmRTZXJ2aWNlXHJcbiAgICAgIC5sZWF2ZU1lZXRpbmcobWVldGluZ0lkKVxyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoe1xyXG4gICAgICAgIGVycm9yOiAoKSA9PiB0aGlzLnNob3dBdHRlbmRhbmNlRXJyb3IoKSxcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBUaGUgcm91dGUgY29uZmlndXJhdGlvbiBpbiBlZmZlY3Q6IHRoZSBob3N0LXN1cHBsaWVkIGByb3V0ZVBhdGhzYCB3aGVuXHJcbiAgICogcHJvdmlkZWQsIG90aGVyd2lzZSB0aGUgZGVmYXVsdCByb3V0ZSBjb25maWcgZnJvbSBgY29uc3RhbnRzLmpzb25gIHNvXHJcbiAgICogbmF2aWdhdGlvbiBpbnRlbnRzIGFsd2F5cyBjYXJyeSB2YWxpZCB0YXJnZXRzIChSZXEgMTEuMSwgMTEuNSkuXHJcbiAgICogQHJldHVybiB7RGFzaGJvYXJkUm91dGVDb25maWd9IFRoZSBhY3RpdmUgcm91dGUgY29uZmlndXJhdGlvbi5cclxuICAgKiBAbWVtYmVyb2YgRGFzaGJvYXJkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgcHJpdmF0ZSBnZXQgYWN0aXZlUm91dGVDb25maWcoKTogRGFzaGJvYXJkUm91dGVDb25maWcge1xyXG4gICAgcmV0dXJuIHRoaXMucm91dGVQYXRocyA/PyB0aGlzLmNvbnN0YW50cy5kZWZhdWx0Um91dGVDb25maWc7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTdWJzY3JpYmVzIHRvIHRoZSBzZXJ2aWNlJ3Mgc3RhdGUgb2JzZXJ2YWJsZXMsIG1pcnJvcmluZyBlYWNoIGludG8gYSBsb2NhbFxyXG4gICAqIGZpZWxkIGZvciB0aGUgdGVtcGxhdGUgdG8gYmluZC4gQWxsIHN1YnNjcmlwdGlvbnMgYXJlIHRvcm4gZG93biB2aWFcclxuICAgKiBgdGFrZVVudGlsKGRlc3Ryb3kkKWAgKFJlcSAxMy4xLCAxMy4yLCAxMy41KS5cclxuICAgKiBAcmV0dXJuIHt2b2lkfVxyXG4gICAqIEBtZW1iZXJvZiBEYXNoYm9hcmRDb21wb25lbnRcclxuICAgKi9cclxuICBwcml2YXRlIHN1YnNjcmliZVRvU2VydmljZVN0YXRlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5kYXNoYm9hcmRTZXJ2aWNlLnVwY29taW5nRXZlbnRzJFxyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKGV2ZW50cykgPT4gKHRoaXMudXBjb21pbmdFdmVudHMgPSBldmVudHMpKTtcclxuXHJcbiAgICB0aGlzLmRhc2hib2FyZFNlcnZpY2UuZ3JvdXBzJFxyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKGdyb3VwcykgPT4ge1xyXG4gICAgICAgIHRoaXMuZ3JvdXBzID0gZ3JvdXBzO1xyXG4gICAgICB9KTtcclxuXHJcbiAgICB0aGlzLmRhc2hib2FyZFNlcnZpY2UudXBjb21pbmdTdGF0ZSRcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChzdGF0ZSkgPT4gKHRoaXMudXBjb21pbmdTdGF0ZSA9IHN0YXRlKSk7XHJcblxyXG4gICAgdGhpcy5kYXNoYm9hcmRTZXJ2aWNlLmdyb3Vwc1N0YXRlJFxyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHN0YXRlKSA9PiAodGhpcy5ncm91cHNTdGF0ZSA9IHN0YXRlKSk7XHJcblxyXG4gICAgdGhpcy5kYXNoYm9hcmRTZXJ2aWNlLmF0dGVuZGFuY2VTdGF0ZXMkXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSgoc3RhdGVzKSA9PiAodGhpcy5hdHRlbmRhbmNlU3RhdGVzID0gc3RhdGVzKSk7XHJcblxyXG4gICAgdGhpcy5kYXNoYm9hcmRTZXJ2aWNlLmluRmxpZ2h0TWVldGluZ0lkcyRcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChpZHMpID0+ICh0aGlzLmluRmxpZ2h0TWVldGluZ0lkcyA9IGlkcykpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU3Vic2NyaWJlcyB0byB0aGUgUHJlc2VudGF0aW9uX0xpYnJhcnkgYnJlYWtwb2ludCBvYnNlcnZlciB0byBrZWVwXHJcbiAgICogYGlzTW9iaWxlVmlld2AgaW4gc3luYyB3aXRoIHRoZSB2aWV3cG9ydCAoUmVxIDE1LjEsIDE1LjIpLlxyXG4gICAqIEByZXR1cm4ge3ZvaWR9XHJcbiAgICogQG1lbWJlcm9mIERhc2hib2FyZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIHByaXZhdGUgc3Vic2NyaWJlVG9CcmVha3BvaW50KCk6IHZvaWQge1xyXG4gICAgdGhpcy5icmVha3BvaW50T2JzZXJ2ZXJTZXJ2aWNlXHJcbiAgICAgIC5nZXRCcmVha3BvaW50KClcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IHsgbWF0Y2hlczogYm9vbGVhbiB9KSA9PiB7XHJcbiAgICAgICAgdGhpcy5pc01vYmlsZVZpZXcgPSByZXN1bHQ/Lm1hdGNoZXM7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVHJpZ2dlcnMgdGhlIHVwY29taW5nLWV2ZW50cyBsb2FkLCBzZXR0aW5nIHRoZSBzZWN0aW9uIHRvIGBFUlJPUmAgb24gZmFpbHVyZVxyXG4gICAqIHNvIG9ubHkgdGhlIHNlY3Rpb24gZXJyb3IgcmVnaW9uIHJlbmRlcnMgKFJlcSAxMy4xLCAxMy4yLCAxMy41KS5cclxuICAgKiBAcmV0dXJuIHt2b2lkfVxyXG4gICAqIEBtZW1iZXJvZiBEYXNoYm9hcmRDb21wb25lbnRcclxuICAgKi9cclxuICBwcml2YXRlIGxvYWRVcGNvbWluZ0V2ZW50cygpOiB2b2lkIHtcclxuICAgIHRoaXMuZGFzaGJvYXJkU2VydmljZVxyXG4gICAgICAubG9hZFVwY29taW5nRXZlbnRzKClcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKHtcclxuICAgICAgICBlcnJvcjogKCkgPT4gKHRoaXMudXBjb21pbmdTdGF0ZSA9IERhc2hib2FyZFNlY3Rpb25TdGF0ZS5FUlJPUiksXHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVHJpZ2dlcnMgdGhlIGdyb3VwcyBsb2FkLCBzZXR0aW5nIHRoZSBzZWN0aW9uIHRvIGBFUlJPUmAgb24gZmFpbHVyZSBzbyBvbmx5XHJcbiAgICogdGhlIHNlY3Rpb24gZXJyb3IgcmVnaW9uIHJlbmRlcnMuIElzb2xhdGVkIGZyb20gdGhlIHVwY29taW5nLWV2ZW50cyBsb2FkIHNvXHJcbiAgICogb25lIGZhaWxpbmcgZG9lcyBub3QgYWZmZWN0IHRoZSBvdGhlciAoUmVxIDEzLjEsIDEzLjIsIDEzLjUpLlxyXG4gICAqIEByZXR1cm4ge3ZvaWR9XHJcbiAgICogQG1lbWJlcm9mIERhc2hib2FyZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIHByaXZhdGUgbG9hZEdyb3VwcygpOiB2b2lkIHtcclxuICAgIHRoaXMuZGFzaGJvYXJkU2VydmljZVxyXG4gICAgICAubG9hZEdyb3VwcygpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgZXJyb3I6ICgpID0+ICh0aGlzLmdyb3Vwc1N0YXRlID0gRGFzaGJvYXJkU2VjdGlvblN0YXRlLkVSUk9SKSxcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDb21wb3NlcyBhbmQgZW1pdHMgYSB7QGxpbmsgRGFzaGJvYXJkTmF2aWdhdGlvbkludGVudH0gZm9yIHRoZSBob3N0IGZyb20gdGhlXHJcbiAgICogcmVzb2x2ZWQgdGFyZ2V0IHBhdGggYW5kIGFuIG9wdGlvbmFsIHRyaWdnZXJpbmcgaWQgKFJlcSAxMS4xKS5cclxuICAgKiBAcGFyYW0ge3N0cmluZ30gcGF0aCAtIFRoZSByZXNvbHZlZCB0YXJnZXQgcm91dGUgcGF0aC5cclxuICAgKiBAcGFyYW0ge3N0cmluZ30gW2lkXSAtIFRoZSB0cmlnZ2VyaW5nIGlkZW50aWZpZXIsIHdoZW4gYXBwbGljYWJsZS5cclxuICAgKiBAcmV0dXJuIHt2b2lkfVxyXG4gICAqIEBtZW1iZXJvZiBEYXNoYm9hcmRDb21wb25lbnRcclxuICAgKi9cclxuICBwcml2YXRlIGVtaXROYXZpZ2F0aW9uKHBhdGg6IHN0cmluZywgaWQ/OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuZGFzaGJvYXJkTmF2aWdhdGUuZW1pdChpZCA/IHsgcGF0aCwgaWQgfSA6IHsgcGF0aCB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFN1cmZhY2VzIHRoZSBhdHRlbmRhbmNlLWFjdGlvbiBlcnJvciBtZXNzYWdlIGZyb20gYGNvbnN0YW50cy5qc29uYCB2aWEgdGhlXHJcbiAgICogc2hhcmVkIHtAbGluayBBbGVydHNTZXJ2aWNlfSAoUmVxIDEzLjcpLlxyXG4gICAqIEByZXR1cm4ge3ZvaWR9XHJcbiAgICogQG1lbWJlcm9mIERhc2hib2FyZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIHByaXZhdGUgc2hvd0F0dGVuZGFuY2VFcnJvcigpOiB2b2lkIHtcclxuICAgIHRoaXMuYWxlcnRTZXJ2aWNlPy5zaG93TWVzc2FnZSh7XHJcbiAgICAgIHN0YXR1czogJ2N1c3RvbScsXHJcbiAgICAgIG1lc3NhZ2U6XHJcbiAgICAgICAgdGhpcy5jb25zdGFudHM/LmF0dGVuZGFuY2U/LmVycm9yTWVzc2FnZSA/P1xyXG4gICAgICAgICdVbmFibGUgdG8gdXBkYXRlIHlvdXIgYXR0ZW5kYW5jZS4gUGxlYXNlIHRyeSBhZ2Fpbi4nLFxyXG4gICAgICBhbGVydFR5cGU6IEFsZXJ0VHlwZS5FUlJPUixcclxuICAgICAgaXNDbG9zZU5lZWRlZDogdHJ1ZSxcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgY2xhc3M9XCJpZWVlc2EtZGFzaGJvYXJkXCJcclxuICBbbmdDbGFzc109XCJ7ICdpZWVlc2EtZGFzaGJvYXJkLS1tb2JpbGUnOiBpc01vYmlsZVZpZXcgfVwiXHJcbj5cclxuICA8aWVlZXNhLWRhc2hib2FyZC13ZWxjb21lLWhlYWRlclxyXG4gICAgW3VzZXJOYW1lXT1cInVzZXJJbmZvPy5uYW1lID8/ICcnXCJcclxuICAgIFttZWV0aW5nc0NvdW50XT1cIm1lZXRpbmdzQ291bnRcIlxyXG4gICAgW2dyb3Vwc0NvdW50XT1cImdyb3Vwc0NvdW50XCJcclxuICAgIChzaG9ydGN1dFNlbGVjdGVkKT1cIm9uSnVtcFRvU2hvcnRjdXQoJGV2ZW50KVwiXHJcbiAgPjwvaWVlZXNhLWRhc2hib2FyZC13ZWxjb21lLWhlYWRlcj5cclxuXHJcbiAgPG1haW4gY2xhc3M9XCJpZWVlc2EtZGFzaGJvYXJkX19jb250ZW50XCI+XHJcbiAgICA8aWVlZXNhLXVwY29taW5nLW1lZXRpbmdzLWV2ZW50c1xyXG4gICAgICBjbGFzcz1cImllZWVzYS1kYXNoYm9hcmRfX3VwY29taW5nXCJcclxuICAgICAgW2V2ZW50c109XCJ1cGNvbWluZ0V2ZW50c1wiXHJcbiAgICAgIFtzZWN0aW9uU3RhdGVdPVwidXBjb21pbmdTdGF0ZVwiXHJcbiAgICAgIFtwZXJtaXNzaW9uc109XCJhdHRlbmRhbmNlUGVybWlzc2lvbnNcIlxyXG4gICAgICBbYXR0ZW5kYW5jZVN0YXRlc109XCJhdHRlbmRhbmNlU3RhdGVzXCJcclxuICAgICAgW2luRmxpZ2h0TWVldGluZ0lkc109XCJpbkZsaWdodE1lZXRpbmdJZHNcIlxyXG4gICAgICBbaXNNb2JpbGVWaWV3XT1cImlzTW9iaWxlVmlld1wiXHJcbiAgICAgICh2aWV3QWxsKT1cIm9uVmlld0FsbEV2ZW50cygpXCJcclxuICAgICAgKHZpZXdFdmVudCk9XCJvblZpZXdFdmVudCgkZXZlbnQpXCJcclxuICAgICAgKG9wZW5NZWV0aW5nKT1cIm9uT3Blbk1lZXRpbmcoJGV2ZW50KVwiXHJcbiAgICAgIChsb2dBdHRlbmRhbmNlKT1cIm9uTG9nQXR0ZW5kYW5jZSgkZXZlbnQpXCJcclxuICAgICAgKGxlYXZlTWVldGluZyk9XCJvbkxlYXZlTWVldGluZygkZXZlbnQpXCJcclxuICAgID48L2llZWVzYS11cGNvbWluZy1tZWV0aW5ncy1ldmVudHM+XHJcblxyXG4gICAgPGllZWVzYS15b3VyLWdyb3Vwc1xyXG4gICAgICBbZ3JvdXBzXT1cImdyb3VwcyB8IHNsaWNlOiAoZ3JvdXBzUGFnZUluZGV4ICogZ3JvdXBzUGFnZVNpemUpIDogKChncm91cHNQYWdlSW5kZXggKyAxKSAqIGdyb3Vwc1BhZ2VTaXplKVwiXHJcbiAgICAgIFtzZWN0aW9uU3RhdGVdPVwiZ3JvdXBzU3RhdGVcIlxyXG4gICAgICBbdG90YWxHcm91cHNdPVwiZ3JvdXBzLmxlbmd0aFwiXHJcbiAgICAgIFtwYWdlSW5kZXhdPVwiZ3JvdXBzUGFnZUluZGV4XCJcclxuICAgICAgW3BhZ2VTaXplXT1cImdyb3Vwc1BhZ2VTaXplXCJcclxuICAgICAgKGdyb3VwU2VsZWN0ZWQpPVwib25Hcm91cFNlbGVjdGVkKCRldmVudClcIlxyXG4gICAgICAodmlld0FsbEdyb3Vwcyk9XCJvblZpZXdBbGxHcm91cHMoKVwiXHJcbiAgICAgIChwYWdlQ2hhbmdlKT1cIm9uR3JvdXBzUGFnZUNoYW5nZSgkZXZlbnQpXCJcclxuICAgID48L2llZWVzYS15b3VyLWdyb3Vwcz5cclxuICA8L21haW4+XHJcbjwvZGl2PlxyXG4iXX0=
417
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Rhc2hib2FyZC9zcmMvbGliL2Rhc2hib2FyZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXNoYm9hcmQvc3JjL2xpYi9kYXNoYm9hcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUNOLFNBQVMsRUFDVCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFMUMsT0FBTyxFQUFFLFNBQVMsRUFBa0IsTUFBTSxvQkFBb0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFJcEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFPL0UsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sMEVBQTBFLENBQUM7QUFDM0gsT0FBTyxLQUFLLFNBQVMsTUFBTSx5QkFBeUIsQ0FBQztBQUNyRCxPQUFPLEVBQ0wsbUJBQW1CLEVBQ25CLCtCQUErQixHQUNoQyxNQUFNLGdFQUFnRSxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDOzs7Ozs7O0FBZXJGOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXVCRztBQWdCSCxNQUFNLE9BQU8sa0JBQWtCO0lBOEQ3Qjs7Ozs7T0FLRztJQUNILElBQUksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQy9CLENBQUMsS0FBSyxFQUFFLEtBQUssRUFB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QUFpQixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFHbEQsYUFBYTtzQkFEWixTQUFTO3VCQUFDLGVBQWUsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBFbGVtZW50UmVmLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBWaWV3Q2hpbGQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBCcmVha3BvaW50T2JzZXJ2ZXJTZXJ2aWNlIH0gZnJvbSAnQGllZWVzYS1ucG0vcHJlc2VudGF0aW9uJztcclxuaW1wb3J0IHsgQWxlcnRUeXBlLCBVc2VyUGVybWlzc2lvbiB9IGZyb20gJ0BpZWVlc2EtbnBtL21vZGVscyc7XHJcbmltcG9ydCB7IEFsZXJ0c1NlcnZpY2UgfSBmcm9tICdAaWVlZXNhLW5wbS91dGlsaXR5JztcclxuaW1wb3J0IHsgQXR0ZW5kYW5jZUFjdGlvblBlcm1pc3Npb25zIH0gZnJvbSAnLi9tb2RlbHMvYXR0ZW5kYW5jZS1hY3Rpb24tcGVybWlzc2lvbnMubW9kZWwnO1xyXG5pbXBvcnQgeyBBdHRlbmRhbmNlU3RhdGUgfSBmcm9tICcuL21vZGVscy9hdHRlbmRhbmNlLXN0YXRlLm1vZGVsJztcclxuaW1wb3J0IHsgRGFzaGJvYXJkUm91dGVDb25maWcgfSBmcm9tICcuL21vZGVscy9kYXNoYm9hcmQtcm91dGUtY29uZmlnLm1vZGVsJztcclxuaW1wb3J0IHsgRGFzaGJvYXJkU2VjdGlvblN0YXRlIH0gZnJvbSAnLi9tb2RlbHMvZGFzaGJvYXJkLXNlY3Rpb24tc3RhdGUubW9kZWwnO1xyXG5pbXBvcnQgeyBEYXNoYm9hcmRVc2VySW5mbyB9IGZyb20gJy4vbW9kZWxzL2Rhc2hib2FyZC11c2VyLWluZm8ubW9kZWwnO1xyXG5pbXBvcnQgeyBHcm91cFJvdyB9IGZyb20gJy4vbW9kZWxzL2dyb3VwLXJvdy5tb2RlbCc7XHJcbmltcG9ydCB7IFBhZ2VDaGFuZ2UgfSBmcm9tICcuL21vZGVscy9wYWdlLWNoYW5nZS5tb2RlbCc7XHJcbmltcG9ydCB7IFVwY29taW5nRXZlbnQgfSBmcm9tICcuL21vZGVscy91cGNvbWluZy1ldmVudC5tb2RlbCc7XHJcbmltcG9ydCB7IERhc2hib2FyZFNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2Rhc2hib2FyZC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVXNlclBlcm1pc3Npb25zU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvdXNlci1wZXJtaXNzaW9ucy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVXBjb21pbmdNZWV0aW5nc0V2ZW50c0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy91cGNvbWluZy1tZWV0aW5ncy1ldmVudHMvdXBjb21pbmctbWVldGluZ3MtZXZlbnRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCAqIGFzIGNvbnN0YW50cyBmcm9tICcuL2Fzc2V0cy9jb25zdGFudHMuanNvbic7XHJcbmltcG9ydCB7XHJcbiAgRGFzaGJvYXJkSnVtcFRhcmdldCxcclxuICBEYXNoYm9hcmRXZWxjb21lSGVhZGVyQ29tcG9uZW50LFxyXG59IGZyb20gJy4vY29tcG9uZW50cy93ZWxjb21lLWhlYWRlci9kYXNoYm9hcmQtd2VsY29tZS1oZWFkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWW91ckdyb3Vwc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy95b3VyLWdyb3Vwcy95b3VyLWdyb3Vwcy5jb21wb25lbnQnO1xyXG5cclxuLyoqXHJcbiAqIEEgbmF2aWdhdGlvbiBpbnRlbnQgZW1pdHRlZCBieSB7QGxpbmsgRGFzaGJvYXJkQ29tcG9uZW50fSBmb3IgdGhlIGhvc3RcclxuICogYXBwbGljYXRpb24gdG8gYWN0IG9uLiBUaGUgbGlicmFyeSBuZXZlciBwZXJmb3JtcyBuYXZpZ2F0aW9uIGl0c2VsZjsgaXQgZW1pdHNcclxuICogdGhlIHJlc29sdmVkIHRhcmdldCBgcGF0aGAgKGZyb20gdGhlIHtAbGluayBEYXNoYm9hcmRSb3V0ZUNvbmZpZ30pIHRvZ2V0aGVyXHJcbiAqIHdpdGggdGhlIHRyaWdnZXJpbmcgaWRlbnRpZmllciBzbyB0aGUgaG9zdCBjYW4gcm91dGUgYWNjb3JkaW5nbHkgKFJlcSAxMS4xKS5cclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgRGFzaGJvYXJkTmF2aWdhdGlvbkludGVudCB7XHJcbiAgLyoqIFRoZSByZXNvbHZlZCB0YXJnZXQgcm91dGUgcGF0aCBmcm9tIHRoZSBhY3RpdmUge0BsaW5rIERhc2hib2FyZFJvdXRlQ29uZmlnfS4gKi9cclxuICBwYXRoOiBzdHJpbmc7XHJcbiAgLyoqIFRoZSBpZGVudGlmaWVyIHRoYXQgdHJpZ2dlcmVkIHRoZSBuYXZpZ2F0aW9uIChldmVudC9tZWV0aW5nL2dyb3VwIGlkKSwgd2hlbiBhcHBsaWNhYmxlLiAqL1xyXG4gIGlkPzogc3RyaW5nO1xyXG59XHJcblxyXG4vKipcclxuICogRGFzaGJvYXJkIChgaWVlZXNhLWRhc2hib2FyZGApIGlzIHRoZSByb290IGNvbnRhaW5lciBhbmQgc2luZ2xlIGhvc3QgZW50cnlcclxuICogcG9pbnQgZm9yIHRoZSBcIk5FU0MgUmV2aXNpb24gQ3ljbGVcIiBkYXNoYm9hcmQgbGFuZGluZyBwYWdlLiBJdCBvd25zIHRoZVxyXG4gKiBob3N0LXN1cHBsaWVkIGNvbmZpZ3VyYXRpb24gKGByb3V0ZVBhdGhzYCwgYGFwaUJhc2VVUkxgLCBgdXNlckluZm9gLFxyXG4gKiBgdXNlclBlcm1pc3Npb25zYCksIGNvbXBvc2VzIHRoZSBmb3VyIHJlZ2lvbnMg4oCUIHdlbGNvbWUgaGVhZGVyLCB1cGNvbWluZ1xyXG4gKiBtZWV0aW5ncyAmIGV2ZW50cywgeW91ciBncm91cHMsIGFuZCBmb290ZXIg4oCUIGFuZCBvcmNoZXN0cmF0ZXMgZGF0YSBsb2FkaW5nXHJcbiAqIGFuZCBhdHRlbmRhbmNlIGFjdGlvbnMgdGhyb3VnaCB0aGUge0BsaW5rIERhc2hib2FyZFNlcnZpY2V9LlxyXG4gKlxyXG4gKiBUaGUgY29tcG9uZW50IGlzIGNvbXBvc2l0aW9uLWZpcnN0IGFuZCBob3N0LWFnbm9zdGljOiBpdCBzdWJzY3JpYmVzIHRvIHRoZVxyXG4gKiBzZXJ2aWNlIG9ic2VydmFibGVzIChgdXBjb21pbmdFdmVudHMkYCwgYGdyb3VwcyRgLCB0aGUgcGVyLXNlY3Rpb24gc3RhdGVzLCB0aGVcclxuICogYXR0ZW5kYW5jZS1zdGF0ZSBtYXAsIGFuZCB0aGUgaW4tZmxpZ2h0IHNldCkgd2l0aCBgdGFrZVVudGlsKGRlc3Ryb3kkKWAgYW5kXHJcbiAqIHRyYWNrcyBgaXNNb2JpbGVWaWV3YCBmcm9tIHRoZSBQcmVzZW50YXRpb25fTGlicmFyeVxyXG4gKiB7QGxpbmsgQnJlYWtwb2ludE9ic2VydmVyU2VydmljZX0gKFJlcSAxMy4xLCAxMy4yLCAxMy41LCAxNS4xLCAxNS4yKS4gQ2hpbGRcclxuICogbmF2aWdhdGlvbiBgQE91dHB1dCgpYHMgYXJlIGNvbXBvc2VkIGludG8gYSBzaW5nbGUge0BsaW5rIGRhc2hib2FyZE5hdmlnYXRlfVxyXG4gKiBzdHJlYW0gb2YgYHsgcGF0aCwgaWQgfWAgaW50ZW50cyByZXNvbHZlZCBmcm9tIGByb3V0ZVBhdGhzYCAoZmFsbGluZyBiYWNrIHRvXHJcbiAqIHRoZSBkZWZhdWx0IHJvdXRlIGNvbmZpZ3VyYXRpb24gaW4gYGNvbnN0YW50cy5qc29uYCB3aGVuIGByb3V0ZVBhdGhzYCBpc1xyXG4gKiBvbWl0dGVkKSAoUmVxIDUuMiwgNi40LCA3LjQsIDguMiwgOC43LCAxMS4xLCAxMS41KS4gQXR0ZW5kYW5jZSBgQE91dHB1dCgpYHNcclxuICogYXJlIGRlbGVnYXRlZCB0byB0aGUgc2VydmljZSwgYW5kIG9uIGZhaWx1cmUgdGhlIGF0dGVuZGFuY2UtYWN0aW9uIGVycm9yXHJcbiAqIG1lc3NhZ2UgZnJvbSBgY29uc3RhbnRzLmpzb25gIGlzIHN1cmZhY2VkIHZpYSB0aGUgc2hhcmVkIHtAbGluayBBbGVydHNTZXJ2aWNlfVxyXG4gKiAoUmVxIDcuNywgNy44LCAxMy43KS4gUGVyLXJvdyB7QGxpbmsgQXR0ZW5kYW5jZUFjdGlvblBlcm1pc3Npb25zfSBhcmUgY29tcHV0ZWRcclxuICogZnJvbSBgdXNlclBlcm1pc3Npb25zYCBhbmQgcGFzc2VkIGRvd24gdG8gdGhlIHJvd3MgKFJlcSAxMi4zKS5cclxuICogQGV4cG9ydFxyXG4gKiBAY2xhc3MgRGFzaGJvYXJkQ29tcG9uZW50XHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxyXG4gIHNlbGVjdG9yOiAnaWVlZXNhLWRhc2hib2FyZCcsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBVcGNvbWluZ01lZXRpbmdzRXZlbnRzQ29tcG9uZW50LFxyXG4gICAgWW91ckdyb3Vwc0NvbXBvbmVudCxcclxuICAgIERhc2hib2FyZFdlbGNvbWVIZWFkZXJDb21wb25lbnRcclxuICBdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXNoYm9hcmQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2Rhc2hib2FyZC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgcHJvdmlkZXJzOiBbQWxlcnRzU2VydmljZV0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEYXNoYm9hcmRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgLyoqIFVzZXItZmFjaW5nIHN0cmluZ3MgYW5kIHRoZSBkZWZhdWx0IHJvdXRlIGNvbmZpZyBzb3VyY2VkIGZyb20gYGNvbnN0YW50cy5qc29uYC4gKi9cclxuICBjb25zdGFudHMgPSBjb25zdGFudHM7XHJcblxyXG4gIC8qKiBIb3N0IG5hdmlnYXRpb24gcGF0aHM7IGZhbGxzIGJhY2sgdG8gdGhlIGBjb25zdGFudHMuanNvbmAgZGVmYXVsdCB3aGVuIG9taXR0ZWQgKFJlcSAxMS4xLCAxMS41KS4gKi9cclxuICBASW5wdXQoKSByb3V0ZVBhdGhzPzogRGFzaGJvYXJkUm91dGVDb25maWc7XHJcblxyXG4gIC8qKiBUaGUgaG9zdCBhcHBsaWNhdGlvbidzIEFQSSBiYXNlIFVSTCwgZm9yd2FyZGVkIHRvIHRoZSBzZXJ2aWNlIChSZXEgMTEuMikuICovXHJcbiAgQElucHV0KCkgYXBpQmFzZVVSTCE6IHN0cmluZztcclxuXHJcbiAgLyoqIFRoZSBzaWduZWQtaW4gdXNlcidzIGluZm8gdXNlZCBieSB0aGUgd2VsY29tZSBoZWFkZXIgZ3JlZXRpbmcgKFJlcSAxMS4zLCA0LjEpLiAqL1xyXG4gIEBJbnB1dCgpIHVzZXJJbmZvITogRGFzaGJvYXJkVXNlckluZm87XHJcblxyXG4gIC8qKiBUaGUgc2lnbmVkLWluIHVzZXIncyBwZXJtaXNzaW9ucyB1c2VkIHRvIGdhdGUgYXR0ZW5kYW5jZSBhY3Rpb25zIChSZXEgMTEuNCwgMTIuMykuICovXHJcbiAgQElucHV0KCkgdXNlclBlcm1pc3Npb25zITogVXNlclBlcm1pc3Npb25bXTtcclxuXHJcbiAgLyoqIEVtaXRzIGEgcmVzb2x2ZWQgbmF2aWdhdGlvbiBpbnRlbnQgZm9yIHRoZSBob3N0IHRvIGFjdCBvbiAoUmVxIDUuMiwgNi40LCA3LjQsIDguMiwgOC43LCAxMS4xKS4gKi9cclxuICBAT3V0cHV0KCkgZGFzaGJvYXJkTmF2aWdhdGUgPSBuZXcgRXZlbnRFbWl0dGVyPERhc2hib2FyZE5hdmlnYXRpb25JbnRlbnQ+KCk7XHJcblxyXG4gIC8qKiBUaGUgdXNlcidzIHVwY29taW5nIGV2ZW50cywgYm91bmQgdG8gdGhlIHVwY29taW5nIHNlY3Rpb24gKFJlcSAxMy4xLCAxMy4yKS4gKi9cclxuICB1cGNvbWluZ0V2ZW50czogVXBjb21pbmdFdmVudFtdID0gW107XHJcblxyXG4gIC8qKiBUaGUgdXNlcidzIGdyb3VwcywgYm91bmQgdG8gdGhlIGdyb3VwcyBzZWN0aW9uIChSZXEgMTMuMSwgMTMuMikuICovXHJcbiAgZ3JvdXBzOiBHcm91cFJvd1tdID0gW107XHJcblxyXG4gIC8qKiBUaGUgdXBjb21pbmctZXZlbnRzIHNlY3Rpb24ncyBsb2FkL2VtcHR5L2Vycm9yIHN0YXRlIChSZXEgMTMuMSwgMTMuMiwgMTMuNSkuICovXHJcbiAgdXBjb21pbmdTdGF0ZTogRGFzaGJvYXJkU2VjdGlvblN0YXRlID0gRGFzaGJvYXJkU2VjdGlvblN0YXRlLkxPQURJTkc7XHJcblxyXG4gIC8qKiBUaGUgZ3JvdXBzIHNlY3Rpb24ncyBsb2FkL2VtcHR5L2Vycm9yIHN0YXRlIChSZXEgMTMuMSwgMTMuMiwgMTMuNSkuICovXHJcbiAgZ3JvdXBzU3RhdGU6IERhc2hib2FyZFNlY3Rpb25TdGF0ZSA9IERhc2hib2FyZFNlY3Rpb25TdGF0ZS5MT0FESU5HO1xyXG5cclxuICAvKiogVGhlIHBlci1tZWV0aW5nIGF0dGVuZGFuY2Utc3RhdGUgbWFwIHBhc3NlZCBkb3duIHRvIHRoZSByb3dzLiAqL1xyXG4gIGF0dGVuZGFuY2VTdGF0ZXM6IFJlY29yZDxzdHJpbmcsIEF0dGVuZGFuY2VTdGF0ZT4gPSB7fTtcclxuXHJcbiAgLyoqIFRoZSBzZXQgb2YgbWVldGluZyBpZHMgd2l0aCBhbiBhdHRlbmRhbmNlIGFjdGlvbiBhd2FpdGluZyByZXNvbHV0aW9uLiAqL1xyXG4gIGluRmxpZ2h0TWVldGluZ0lkczogUmVhZG9ubHlTZXQ8c3RyaW5nPiA9IG5ldyBTZXQ8c3RyaW5nPigpO1xyXG5cclxuICAvKiogVGhlIHBlci1yb3cgYXR0ZW5kYW5jZS1hY3Rpb24gcGVybWlzc2lvbnMgZGVyaXZlZCBmcm9tIGB1c2VyUGVybWlzc2lvbnNgIChSZXEgMTIuMykuICovXHJcbiAgYXR0ZW5kYW5jZVBlcm1pc3Npb25zOiBBdHRlbmRhbmNlQWN0aW9uUGVybWlzc2lvbnMgPSB7XHJcbiAgICBjYW5Mb2dBdHRlbmRhbmNlOiBmYWxzZSxcclxuICAgIGNhbkxlYXZlTWVldGluZzogZmFsc2UsXHJcbiAgfTtcclxuXHJcbiAgLyoqIFdoZXRoZXIgdGhlIHZpZXdwb3J0IGlzIGF0L2JlbG93IHRoZSBtb2JpbGUgYnJlYWtwb2ludCAoUmVxIDE1LjEsIDE1LjIpLiAqL1xyXG4gIGlzTW9iaWxlVmlldyA9IGZhbHNlO1xyXG5cclxuICAvKiogV2hldGhlciB0aGUgVXBjb21pbmcgTWVldGluZ3MgJiBFdmVudHMgY2FyZCBpcyBleHBhbmRlZC4gU3RhcnRzIGNvbGxhcHNlZC4gKi9cclxuICBtZWV0aW5nc0V4cGFuZGVkID0gZmFsc2U7XHJcblxyXG4gIC8qKiBXaGV0aGVyIHRoZSBZb3VyIEdyb3VwcyBjYXJkIGlzIGV4cGFuZGVkLiBTdGFydHMgY29sbGFwc2VkLiAqL1xyXG4gIGdyb3Vwc0V4cGFuZGVkID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIFNlY3Rpb24gaG9zdCBlbGVtZW50cyB1c2VkIHRvIHNjcm9sbCBhIFwiSnVtcCB0b1wiIHRhcmdldCBpbnRvIHZpZXcuIFJlYWQgYXNcclxuICAgKiBFbGVtZW50UmVmIChub3QgdGhlIGNvbXBvbmVudCBpbnN0YW5jZSkgc28gdGhlIG5hdGl2ZSBlbGVtZW50IGlzIGF2YWlsYWJsZVxyXG4gICAqIGZvciBzY3JvbGxJbnRvVmlldy5cclxuICAgKi9cclxuICBAVmlld0NoaWxkKCd1cGNvbWluZ1NlY3Rpb24nLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSlcclxuICB1cGNvbWluZ1NlY3Rpb24/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcclxuICBAVmlld0NoaWxkKCdncm91cHNTZWN0aW9uJywgeyByZWFkOiBFbGVtZW50UmVmIH0pXHJcbiAgZ3JvdXBzU2VjdGlvbj86IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xyXG5cclxuICAvKipcclxuICAgKiBUb3RhbCBudW1iZXIgb2YgbWVldGluZ3MgYWNyb3NzIHRoZSBsb2FkZWQgdXBjb21pbmcgZXZlbnRzLCBzaG93biBpbiB0aGVcclxuICAgKiB3ZWxjb21lIGhlYWRlcidzIFwiVXBjb21pbmcgTWVldGluZ3MgJiBFdmVudHNcIiBzaG9ydGN1dCBiYWRnZS5cclxuICAgKiBAcmVhZG9ubHlcclxuICAgKiBAbWVtYmVyb2YgRGFzaGJvYXJkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgZ2V0IG1lZXRpbmdzQ291bnQoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLnVwY29taW5nRXZlbnRzLnJlZHVjZShcclxuICAgICAgKHRvdGFsLCBldmVudCkgPT4gdG90YWwgKyAoZXZlbnQ/Lm1lZXRpbmdDb3VudCA/PyAwKSxcclxuICAgICAgMFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE51bWJlciBvZiBsb2FkZWQgZ3JvdXBzLCBzaG93biBpbiB0aGUgd2VsY29tZSBoZWFkZXIncyBcIllvdXIgR3JvdXBzXCJcclxuICAgKiBzaG9ydGN1dCBiYWRnZS5cclxuICAgKiBAcmVhZG9ubHlcclxuICAgKiBAbWVtYmVyb2YgRGFzaGJvYXJkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgZ2V0IGdyb3Vwc0NvdW50KCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5ncm91cHMubGVuZ3RoO1xyXG4gIH1cclxuXHJcbiAgLyoqIFRoZSBjdXJyZW50IHplcm8tYmFzZWQgcGFnZSBpbmRleCBvZiB0aGUgZ3JvdXBzIHRhYmxlLiAqL1xyXG4gIGdyb3Vwc1BhZ2VJbmRleCA9IDA7XHJcblxyXG4gIC8qKiBUaGUgY3VycmVudCBwYWdlIHNpemUgb2YgdGhlIGdyb3VwcyB0YWJsZSAoNSByb3dzIHBlciBwYWdlIHBlciB0aGUgZGVzaWduKS4gKi9cclxuICBncm91cHNQYWdlU2l6ZSA9IDU7XHJcblxyXG4gIC8qKiBDb21wbGV0ZXMgb24gZGVzdHJveSB0byB0ZWFyIGRvd24gYWxsIHN1YnNjcmlwdGlvbnMgKFJlcSAyLjQsIDIuNSkuICovXHJcbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXHJcbiAgICBwcml2YXRlIGRhc2hib2FyZFNlcnZpY2U6IERhc2hib2FyZFNlcnZpY2UsXHJcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLXZhcnNcclxuICAgIHByaXZhdGUgdXNlclBlcm1pc3Npb25zU2VydmljZTogVXNlclBlcm1pc3Npb25zU2VydmljZSxcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gICAgcHJpdmF0ZSBicmVha3BvaW50T2JzZXJ2ZXJTZXJ2aWNlOiBCcmVha3BvaW50T2JzZXJ2ZXJTZXJ2aWNlLFxyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXHJcbiAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRzU2VydmljZSAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZW1wdHktZnVuY3Rpb25cclxuICApIHt9XHJcblxyXG4gIC8qKlxyXG4gICAqIEluaXRpYWxpemVzIHRoZSBkYXNoYm9hcmQ6IGZvcndhcmRzIHRoZSBob3N0IGNvbmZpZyB0byB0aGUgc2VydmljZSwgZGVyaXZlc1xyXG4gICAqIHRoZSBwZXItcm93IGF0dGVuZGFuY2UgcGVybWlzc2lvbnMsIGtpY2tzIG9mZiB0aGUgdXBjb21pbmctZXZlbnRzIGFuZCBncm91cHNcclxuICAgKiBsb2FkcywgYW5kIHdpcmVzIHVwIHN1YnNjcmlwdGlvbnMgdG8gdGhlIHNlcnZpY2Ugc3RhdGUgb2JzZXJ2YWJsZXMgYW5kIHRoZVxyXG4gICAqIGJyZWFrcG9pbnQgb2JzZXJ2ZXIg4oCUIGFsbCBjbGVhbmVkIHVwIHZpYSBgdGFrZVVudGlsKGRlc3Ryb3kkKWAgKFJlcSAxMS4yLFxyXG4gICAqIDExLjQsIDEyLjMsIDEzLjEsIDEzLjIsIDEzLjUsIDE1LjEsIDE1LjIpLlxyXG4gICAqIEByZXR1cm4ge3ZvaWR9XHJcbiAgICogQG1lbWJlcm9mIERhc2hib2FyZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kYXNoYm9hcmRTZXJ2aWNlLnNldEFwcENvbmZpZyh0aGlzLmFwaUJhc2VVUkwsIHRoaXMudXNlclBlcm1pc3Npb25zKTtcclxuICAgIHRoaXMuYXR0ZW5kYW5jZVBlcm1pc3Npb25zID1cclxuICAgICAgdGhpcy51c2VyUGVybWlzc2lvbnNTZXJ2aWNlLm1hcFRvQXR0ZW5kYW5jZUFjdGlvblBlcm1pc3Npb25zKFxyXG4gICAgICAgIHRoaXMudXNlclBlcm1pc3Npb25zXHJcbiAgICAgICk7XHJcblxyXG4gICAgdGhpcy5zdWJzY3JpYmVUb1NlcnZpY2VTdGF0ZSgpO1xyXG4gICAgdGhpcy5zdWJzY3JpYmVUb0JyZWFrcG9pbnQoKTtcclxuICAgIHRoaXMubG9hZFVwY29taW5nRXZlbnRzKCk7XHJcbiAgICB0aGlzLmxvYWRHcm91cHMoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFRlYXJzIGRvd24gYWxsIHN1YnNjcmlwdGlvbnMgb24gZGVzdHJveSAoUmVxIDIuNCwgMi41KS5cclxuICAgKiBAcmV0dXJuIHt2b2lkfVxyXG4gICAqIEBtZW1iZXJvZiBEYXNoYm9hcmRDb21wb25lbnRcclxuICAgKi9cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuZGVzdHJveSQubmV4dCh0cnVlKTtcclxuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEhhbmRsZXMgdGhlIHdlbGNvbWUtaGVhZGVyIFwiSnVtcCB0b1wiIGRhdGUgc2VsZWN0aW9uLiBUaGUgZGFzaGJvYXJkIGN1cnJlbnRseVxyXG4gICAqIGhhcyBubyBkYXRlLXNjb3BlZCBkYXRhIGxvYWQsIHNvIHRoZSBzZWxlY3Rpb24gaXMgYWNjZXB0ZWQgd2l0aG91dCBzaWRlXHJcbiAgICogZWZmZWN0czsgdGhlIGhvb2sga2VlcHMgdGhlIGhlYWRlcidzIGNvbnRyYWN0IHNhdGlzZmllZCBmb3IgZnV0dXJlIGZpbHRlcmluZy5cclxuICAgKiBAcmV0dXJuIHt2b2lkfVxyXG4gICAqIEBtZW1iZXJvZiBEYXNoYm9hcmRDb21wb25lbnRcclxuICAgKi9cclxuICBvbkp1bXBUb0RhdGVTZWxlY3RlZCgpOiB2b2lkIHtcclxuICAgIC8vIE5vIGRhdGUtc2NvcGVkIHJlbG9hZCB5ZXQ7IHJldGFpbmVkIGZvciBmdXR1cmUgZGF0ZSBmaWx0ZXJpbmcgKFJlcSA0LjQpLlxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSGFuZGxlcyBhIHdlbGNvbWUtaGVhZGVyIFwiSnVtcCB0b1wiIHNob3J0Y3V0OiBvcGVucyB0aGUgbWF0Y2hpbmcgc2VjdGlvbidzXHJcbiAgICogY2FyZCAoc28gaXRzIGNvbnRlbnQgaXMgdmlzaWJsZSkgYW5kIHNtb290aGx5IHNjcm9sbHMgaXQgaW50byB2aWV3LiBJdCBkb2VzXHJcbiAgICogTk9UIG5hdmlnYXRlIGF3YXkg4oCUIHRoZSBzaG9ydGN1dCBpcyBhbiBpbi1wYWdlIGp1bXAgdG8gdGhlIHNlY3Rpb24uXHJcbiAgICogQHBhcmFtIHtEYXNoYm9hcmRKdW1wVGFyZ2V0fSB0YXJnZXQgLSBUaGUgc2VsZWN0ZWQgc2hvcnRjdXQgdGFyZ2V0LlxyXG4gICAqIEByZXR1cm4ge3ZvaWR9XHJcbiAgICogQG1lbWJlcm9mIERhc2hib2FyZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIG9uSnVtcFRvU2hvcnRjdXQodGFyZ2V0OiBEYXNoYm9hcmRKdW1wVGFyZ2V0KTogdm9pZCB7XHJcbiAgICBjb25zdCBzZWN0aW9uID1cclxuICAgICAgdGFyZ2V0ID09PSBEYXNoYm9hcmRKdW1wVGFyZ2V0Lk1FRVRJTkdTXHJcbiAgICAgICAgPyB0aGlzLnVwY29taW5nU2VjdGlvblxyXG4gICAgICAgIDogdGhpcy5ncm91cHNTZWN0aW9uO1xyXG5cclxuICAgIGlmICh0YXJnZXQgPT09IERhc2hib2FyZEp1bXBUYXJnZXQuTUVFVElOR1MpIHtcclxuICAgICAgdGhpcy5tZWV0aW5nc0V4cGFuZGVkID0gdHJ1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZ3JvdXBzRXhwYW5kZWQgPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFNjcm9sbCBhZnRlciB0aGUgZXhwYW5kIGhhcyByZW5kZXJlZCBzbyB0aGUgdGFyZ2V0J3MgZmluYWwgcG9zaXRpb24gaXMgdXNlZC5cclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICBzZWN0aW9uPy5uYXRpdmVFbGVtZW50Py5zY3JvbGxJbnRvVmlldyh7XHJcbiAgICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxyXG4gICAgICAgIGJsb2NrOiAnc3RhcnQnLFxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRW1pdHMgdGhlIFwiVmlldyBBbGxcIiB1cGNvbWluZy1ldmVudHMgbmF2aWdhdGlvbiBpbnRlbnQsIHRhcmdldGluZyB0aGVcclxuICAgKiBgdmlld0FsbEV2ZW50c2Agcm91dGUgd2l0aCBubyBpZCAoUmVxIDUuMiwgMTEuMSkuXHJcbiAgICogQHJldHVybiB7dm9pZH1cclxuICAgKiBAbWVtYmVyb2YgRGFzaGJvYXJkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgb25WaWV3QWxsRXZlbnRzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5lbWl0TmF2aWdhdGlvbih0aGlzLmFjdGl2ZVJvdXRlQ29uZmlnLnZpZXdBbGxFdmVudHMpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRW1pdHMgdGhlIFwiVmlldyBFdmVudFwiIG5hdmlnYXRpb24gaW50ZW50LCB0YXJnZXRpbmcgdGhlIGBldmVudERldGFpbGAgcm91dGVcclxuICAgKiB3aXRoIHRoZSBldmVudCBpZCAoUmVxIDYuNCwgMTEuMSkuXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IGV2ZW50SWQgLSBUaGUgaWQgb2YgdGhlIGV2ZW50IHRvIHZpZXcuXHJcbiAgICogQHJldHVybiB7dm9pZH1cclxuICAgKiBAbWVtYmVyb2YgRGFzaGJvYXJkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgb25WaWV3RXZlbnQoZXZlbnRJZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLmVtaXROYXZpZ2F0aW9uKHRoaXMuYWN0aXZlUm91dGVDb25maWcuZXZlbnREZXRhaWwsIGV2ZW50SWQpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRW1pdHMgdGhlIG9wZW4tbWVldGluZyBuYXZpZ2F0aW9uIGludGVudCwgdGFyZ2V0aW5nIHRoZSBgbWVldGluZ0RldGFpbGBcclxuICAgKiByb3V0ZSB3aXRoIHRoZSBtZWV0aW5nIGlkIChSZXEgNy40LCAxMS4xKS5cclxuICAgKiBAcGFyYW0ge3N0cmluZ30gbWVldGluZ0lkIC0gVGhlIGlkIG9mIHRoZSBtZWV0aW5nIHRvIG9wZW4uXHJcbiAgICogQHJldHVybiB7dm9pZH1cclxuICAgKiBAbWVtYmVyb2YgRGFzaGJvYXJkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgb25PcGVuTWVldGluZyhtZWV0aW5nSWQ6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5lbWl0TmF2aWdhdGlvbih0aGlzLmFjdGl2ZVJvdXRlQ29uZmlnLm1lZXRpbmdEZXRhaWwsIG1lZXRpbmdJZCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFbWl0cyB0aGUgXCJWaWV3IEFsbFwiIGdyb3VwcyBuYXZpZ2F0aW9uIGludGVudCwgdGFyZ2V0aW5nIHRoZVxyXG4gICAqIGB2aWV3QWxsR3JvdXBzYCByb3V0ZSB3aXRoIG5vIGlkIChSZXEgOC4yLCAxMS4xKS5cclxuICAgKiBAcmV0dXJuIHt2b2lkfVxyXG4gICAqIEBtZW1iZXJvZiBEYXNoYm9hcmRDb21wb25lbnRcclxuICAgKi9cclxuICBvblZpZXdBbGxHcm91cHMoKTogdm9pZCB7XHJcbiAgICB0aGlzLmVtaXROYXZpZ2F0aW9uKHRoaXMuYWN0aXZlUm91dGVDb25maWcudmlld0FsbEdyb3Vwcyk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFbWl0cyB0aGUgZ3JvdXAtZGV0YWlsIG5hdmlnYXRpb24gaW50ZW50LCB0YXJnZXRpbmcgdGhlIGBncm91cERldGFpbGAgcm91dGVcclxuICAgKiB3aXRoIHRoZSBncm91cCBpZCAoUmVxIDguNywgMTEuMSkuXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IGdyb3VwSWQgLSBUaGUgaWQgb2YgdGhlIHNlbGVjdGVkIGdyb3VwLlxyXG4gICAqIEByZXR1cm4ge3ZvaWR9XHJcbiAgICogQG1lbWJlcm9mIERhc2hib2FyZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIG9uR3JvdXBTZWxlY3RlZChncm91cElkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuZW1pdE5hdmlnYXRpb24odGhpcy5hY3RpdmVSb3V0ZUNvbmZpZy5ncm91cERldGFpbCwgZ3JvdXBJZCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBVcGRhdGVzIHRoZSBncm91cHMgdGFibGUgcGFnaW5nIHN0YXRlIGluIHJlc3BvbnNlIHRvIGEgcGFnaW5hdG9yIGNoYW5nZSBzb1xyXG4gICAqIHRoZSBncm91cHMgc2VjdGlvbiByZWZsZWN0cyB0aGUgcmVxdWVzdGVkIHBhZ2UgKFJlcSA4LjEwKS5cclxuICAgKiBAcGFyYW0ge1BhZ2VDaGFuZ2V9IHBhZ2UgLSBUaGUgcmVxdWVzdGVkIHBhZ2UgaW5kZXggYW5kIHNpemUuXHJcbiAgICogQHJldHVybiB7dm9pZH1cclxuICAgKiBAbWVtYmVyb2YgRGFzaGJvYXJkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgb25Hcm91cHNQYWdlQ2hhbmdlKHBhZ2U6IFBhZ2VDaGFuZ2UpOiB2b2lkIHtcclxuICAgIHRoaXMuZ3JvdXBzUGFnZUluZGV4ID0gcGFnZS5wYWdlSW5kZXg7XHJcbiAgICB0aGlzLmdyb3Vwc1BhZ2VTaXplID0gcGFnZS5wYWdlU2l6ZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIExhemlseSBsb2FkcyAob3IgcGFnaW5hdGVzKSB0aGUgY2hpbGQgbWVldGluZ3Mgb2YgYW4gZXhwYW5kZWQgRVZFTlQgY2FyZCB2aWFcclxuICAgKiB0aGUgc2VydmljZSwgc3VyZmFjaW5nIHRoZSBhdHRlbmRhbmNlIGVycm9yIG1lc3NhZ2Ugb24gZmFpbHVyZS4gRWFjaCBldmVudFxyXG4gICAqIHBhZ2luYXRlcyBpbmRlcGVuZGVudGx5LlxyXG4gICAqIEBwYXJhbSB7eyBldmVudElkOiBzdHJpbmc7IHBhZ2U6IG51bWJlciB9fSByZXF1ZXN0IC0gVGhlIGV2ZW50IGlkIGFuZCBvbmUtYmFzZWQgcGFnZSB0byBsb2FkLlxyXG4gICAqIEByZXR1cm4ge3ZvaWR9XHJcbiAgICogQG1lbWJlcm9mIERhc2hib2FyZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIG9uTG9hZEV2ZW50TWVldGluZ3MocmVxdWVzdDogeyBldmVudElkOiBzdHJpbmc7IHBhZ2U6IG51bWJlciB9KTogdm9pZCB7XHJcbiAgICBpZiAoIXJlcXVlc3Q/LmV2ZW50SWQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5kYXNoYm9hcmRTZXJ2aWNlXHJcbiAgICAgIC5sb2FkRXZlbnRNZWV0aW5ncyhyZXF1ZXN0LmV2ZW50SWQsIHJlcXVlc3QucGFnZSlcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKHtcclxuICAgICAgICBlcnJvcjogKCkgPT4gdGhpcy5zaG93QXR0ZW5kYW5jZUVycm9yKCksXHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGVsZWdhdGVzIGEgbG9nLWF0dGVuZGFuY2UgcmVxdWVzdCB0byB0aGUgc2VydmljZSwgc3VyZmFjaW5nIHRoZVxyXG4gICAqIGF0dGVuZGFuY2UtYWN0aW9uIGVycm9yIG1lc3NhZ2UgdmlhIHRoZSBzaGFyZWQge0BsaW5rIEFsZXJ0c1NlcnZpY2V9IG9uXHJcbiAgICogZmFpbHVyZSB3aGlsZSB0aGUgc2VydmljZSByZXRhaW5zIHRoZSBwcmlvciBkaXNwbGF5ZWQgc3RhdGUgKFJlcSA3LjcsIDEzLjcpLlxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBtZWV0aW5nSWQgLSBUaGUgbWVldGluZyB0byBsb2cgYXR0ZW5kYW5jZSBmb3IuXHJcbiAgICogQHJldHVybiB7dm9pZH1cclxuICAgKiBAbWVtYmVyb2YgRGFzaGJvYXJkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgb25Mb2dBdHRlbmRhbmNlKG1lZXRpbmdJZDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLmRhc2hib2FyZFNlcnZpY2VcclxuICAgICAgLmxvZ0F0dGVuZGFuY2UobWVldGluZ0lkKVxyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoe1xyXG4gICAgICAgIGVycm9yOiAoKSA9PiB0aGlzLnNob3dBdHRlbmRhbmNlRXJyb3IoKSxcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEZWxlZ2F0ZXMgYSBsZWF2ZS1tZWV0aW5nIHJlcXVlc3QgdG8gdGhlIHNlcnZpY2UsIHN1cmZhY2luZyB0aGVcclxuICAgKiBhdHRlbmRhbmNlLWFjdGlvbiBlcnJvciBtZXNzYWdlIHZpYSB0aGUgc2hhcmVkIHtAbGluayBBbGVydHNTZXJ2aWNlfSBvblxyXG4gICAqIGZhaWx1cmUgd2hpbGUgdGhlIHNlcnZpY2UgcmV0YWlucyB0aGUgcHJpb3IgZGlzcGxheWVkIHN0YXRlIChSZXEgNy44LCAxMy43KS5cclxuICAgKiBAcGFyYW0ge3N0cmluZ30gbWVldGluZ0lkIC0gVGhlIG1lZXRpbmcgdG8gbGVhdmUuXHJcbiAgICogQHJldHVybiB7dm9pZH1cclxuICAgKiBAbWVtYmVyb2YgRGFzaGJvYXJkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgb25MZWF2ZU1lZXRpbmcobWVldGluZ0lkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuZGFzaGJvYXJkU2VydmljZVxyXG4gICAgICAubGVhdmVNZWV0aW5nKG1lZXRpbmdJZClcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKHtcclxuICAgICAgICBlcnJvcjogKCkgPT4gdGhpcy5zaG93QXR0ZW5kYW5jZUVycm9yKCksXHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIHJvdXRlIGNvbmZpZ3VyYXRpb24gaW4gZWZmZWN0OiB0aGUgaG9zdC1zdXBwbGllZCBgcm91dGVQYXRoc2Agd2hlblxyXG4gICAqIHByb3ZpZGVkLCBvdGhlcndpc2UgdGhlIGRlZmF1bHQgcm91dGUgY29uZmlnIGZyb20gYGNvbnN0YW50cy5qc29uYCBzb1xyXG4gICAqIG5hdmlnYXRpb24gaW50ZW50cyBhbHdheXMgY2FycnkgdmFsaWQgdGFyZ2V0cyAoUmVxIDExLjEsIDExLjUpLlxyXG4gICAqIEByZXR1cm4ge0Rhc2hib2FyZFJvdXRlQ29uZmlnfSBUaGUgYWN0aXZlIHJvdXRlIGNvbmZpZ3VyYXRpb24uXHJcbiAgICogQG1lbWJlcm9mIERhc2hib2FyZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIHByaXZhdGUgZ2V0IGFjdGl2ZVJvdXRlQ29uZmlnKCk6IERhc2hib2FyZFJvdXRlQ29uZmlnIHtcclxuICAgIHJldHVybiB0aGlzLnJvdXRlUGF0aHMgPz8gdGhpcy5jb25zdGFudHMuZGVmYXVsdFJvdXRlQ29uZmlnO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU3Vic2NyaWJlcyB0byB0aGUgc2VydmljZSdzIHN0YXRlIG9ic2VydmFibGVzLCBtaXJyb3JpbmcgZWFjaCBpbnRvIGEgbG9jYWxcclxuICAgKiBmaWVsZCBmb3IgdGhlIHRlbXBsYXRlIHRvIGJpbmQuIEFsbCBzdWJzY3JpcHRpb25zIGFyZSB0b3JuIGRvd24gdmlhXHJcbiAgICogYHRha2VVbnRpbChkZXN0cm95JClgIChSZXEgMTMuMSwgMTMuMiwgMTMuNSkuXHJcbiAgICogQHJldHVybiB7dm9pZH1cclxuICAgKiBAbWVtYmVyb2YgRGFzaGJvYXJkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgcHJpdmF0ZSBzdWJzY3JpYmVUb1NlcnZpY2VTdGF0ZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuZGFzaGJvYXJkU2VydmljZS51cGNvbWluZ0V2ZW50cyRcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChldmVudHMpID0+ICh0aGlzLnVwY29taW5nRXZlbnRzID0gZXZlbnRzKSk7XHJcblxyXG4gICAgdGhpcy5kYXNoYm9hcmRTZXJ2aWNlLmdyb3VwcyRcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChncm91cHMpID0+IHtcclxuICAgICAgICB0aGlzLmdyb3VwcyA9IGdyb3VwcztcclxuICAgICAgfSk7XHJcblxyXG4gICAgdGhpcy5kYXNoYm9hcmRTZXJ2aWNlLnVwY29taW5nU3RhdGUkXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSgoc3RhdGUpID0+ICh0aGlzLnVwY29taW5nU3RhdGUgPSBzdGF0ZSkpO1xyXG5cclxuICAgIHRoaXMuZGFzaGJvYXJkU2VydmljZS5ncm91cHNTdGF0ZSRcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChzdGF0ZSkgPT4gKHRoaXMuZ3JvdXBzU3RhdGUgPSBzdGF0ZSkpO1xyXG5cclxuICAgIHRoaXMuZGFzaGJvYXJkU2VydmljZS5hdHRlbmRhbmNlU3RhdGVzJFxyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHN0YXRlcykgPT4gKHRoaXMuYXR0ZW5kYW5jZVN0YXRlcyA9IHN0YXRlcykpO1xyXG5cclxuICAgIHRoaXMuZGFzaGJvYXJkU2VydmljZS5pbkZsaWdodE1lZXRpbmdJZHMkXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSgoaWRzKSA9PiAodGhpcy5pbkZsaWdodE1lZXRpbmdJZHMgPSBpZHMpKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFN1YnNjcmliZXMgdG8gdGhlIFByZXNlbnRhdGlvbl9MaWJyYXJ5IGJyZWFrcG9pbnQgb2JzZXJ2ZXIgdG8ga2VlcFxyXG4gICAqIGBpc01vYmlsZVZpZXdgIGluIHN5bmMgd2l0aCB0aGUgdmlld3BvcnQgKFJlcSAxNS4xLCAxNS4yKS5cclxuICAgKiBAcmV0dXJuIHt2b2lkfVxyXG4gICAqIEBtZW1iZXJvZiBEYXNoYm9hcmRDb21wb25lbnRcclxuICAgKi9cclxuICBwcml2YXRlIHN1YnNjcmliZVRvQnJlYWtwb2ludCgpOiB2b2lkIHtcclxuICAgIHRoaXMuYnJlYWtwb2ludE9ic2VydmVyU2VydmljZVxyXG4gICAgICAuZ2V0QnJlYWtwb2ludCgpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiB7IG1hdGNoZXM6IGJvb2xlYW4gfSkgPT4ge1xyXG4gICAgICAgIHRoaXMuaXNNb2JpbGVWaWV3ID0gcmVzdWx0Py5tYXRjaGVzO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFRyaWdnZXJzIHRoZSB1cGNvbWluZy1ldmVudHMgbG9hZCwgc2V0dGluZyB0aGUgc2VjdGlvbiB0byBgRVJST1JgIG9uIGZhaWx1cmVcclxuICAgKiBzbyBvbmx5IHRoZSBzZWN0aW9uIGVycm9yIHJlZ2lvbiByZW5kZXJzIChSZXEgMTMuMSwgMTMuMiwgMTMuNSkuXHJcbiAgICogQHJldHVybiB7dm9pZH1cclxuICAgKiBAbWVtYmVyb2YgRGFzaGJvYXJkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgcHJpdmF0ZSBsb2FkVXBjb21pbmdFdmVudHMoKTogdm9pZCB7XHJcbiAgICB0aGlzLmRhc2hib2FyZFNlcnZpY2VcclxuICAgICAgLmxvYWRVcGNvbWluZ0V2ZW50cygpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgZXJyb3I6ICgpID0+ICh0aGlzLnVwY29taW5nU3RhdGUgPSBEYXNoYm9hcmRTZWN0aW9uU3RhdGUuRVJST1IpLFxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFRyaWdnZXJzIHRoZSBncm91cHMgbG9hZCwgc2V0dGluZyB0aGUgc2VjdGlvbiB0byBgRVJST1JgIG9uIGZhaWx1cmUgc28gb25seVxyXG4gICAqIHRoZSBzZWN0aW9uIGVycm9yIHJlZ2lvbiByZW5kZXJzLiBJc29sYXRlZCBmcm9tIHRoZSB1cGNvbWluZy1ldmVudHMgbG9hZCBzb1xyXG4gICAqIG9uZSBmYWlsaW5nIGRvZXMgbm90IGFmZmVjdCB0aGUgb3RoZXIgKFJlcSAxMy4xLCAxMy4yLCAxMy41KS5cclxuICAgKiBAcmV0dXJuIHt2b2lkfVxyXG4gICAqIEBtZW1iZXJvZiBEYXNoYm9hcmRDb21wb25lbnRcclxuICAgKi9cclxuICBwcml2YXRlIGxvYWRHcm91cHMoKTogdm9pZCB7XHJcbiAgICB0aGlzLmRhc2hib2FyZFNlcnZpY2VcclxuICAgICAgLmxvYWRHcm91cHMoKVxyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoe1xyXG4gICAgICAgIGVycm9yOiAoKSA9PiAodGhpcy5ncm91cHNTdGF0ZSA9IERhc2hib2FyZFNlY3Rpb25TdGF0ZS5FUlJPUiksXHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ29tcG9zZXMgYW5kIGVtaXRzIGEge0BsaW5rIERhc2hib2FyZE5hdmlnYXRpb25JbnRlbnR9IGZvciB0aGUgaG9zdCBmcm9tIHRoZVxyXG4gICAqIHJlc29sdmVkIHRhcmdldCBwYXRoIGFuZCBhbiBvcHRpb25hbCB0cmlnZ2VyaW5nIGlkIChSZXEgMTEuMSkuXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IHBhdGggLSBUaGUgcmVzb2x2ZWQgdGFyZ2V0IHJvdXRlIHBhdGguXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IFtpZF0gLSBUaGUgdHJpZ2dlcmluZyBpZGVudGlmaWVyLCB3aGVuIGFwcGxpY2FibGUuXHJcbiAgICogQHJldHVybiB7dm9pZH1cclxuICAgKiBAbWVtYmVyb2YgRGFzaGJvYXJkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgcHJpdmF0ZSBlbWl0TmF2aWdhdGlvbihwYXRoOiBzdHJpbmcsIGlkPzogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLmRhc2hib2FyZE5hdmlnYXRlLmVtaXQoaWQgPyB7IHBhdGgsIGlkIH0gOiB7IHBhdGggfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTdXJmYWNlcyB0aGUgYXR0ZW5kYW5jZS1hY3Rpb24gZXJyb3IgbWVzc2FnZSBmcm9tIGBjb25zdGFudHMuanNvbmAgdmlhIHRoZVxyXG4gICAqIHNoYXJlZCB7QGxpbmsgQWxlcnRzU2VydmljZX0gKFJlcSAxMy43KS5cclxuICAgKiBAcmV0dXJuIHt2b2lkfVxyXG4gICAqIEBtZW1iZXJvZiBEYXNoYm9hcmRDb21wb25lbnRcclxuICAgKi9cclxuICBwcml2YXRlIHNob3dBdHRlbmRhbmNlRXJyb3IoKTogdm9pZCB7XHJcbiAgICB0aGlzLmFsZXJ0U2VydmljZT8uc2hvd01lc3NhZ2Uoe1xyXG4gICAgICBzdGF0dXM6ICdjdXN0b20nLFxyXG4gICAgICBtZXNzYWdlOlxyXG4gICAgICAgIHRoaXMuY29uc3RhbnRzPy5hdHRlbmRhbmNlPy5lcnJvck1lc3NhZ2UgPz9cclxuICAgICAgICAnVW5hYmxlIHRvIHVwZGF0ZSB5b3VyIGF0dGVuZGFuY2UuIFBsZWFzZSB0cnkgYWdhaW4uJyxcclxuICAgICAgYWxlcnRUeXBlOiBBbGVydFR5cGUuRVJST1IsXHJcbiAgICAgIGlzQ2xvc2VOZWVkZWQ6IHRydWUsXHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gIGNsYXNzPVwiaWVlZXNhLWRhc2hib2FyZFwiXHJcbiAgW25nQ2xhc3NdPVwieyAnaWVlZXNhLWRhc2hib2FyZC0tbW9iaWxlJzogaXNNb2JpbGVWaWV3IH1cIlxyXG4+XHJcbiAgPGllZWVzYS1kYXNoYm9hcmQtd2VsY29tZS1oZWFkZXJcclxuICAgIGNsYXNzPVwiaWVlZXNhLWRhc2hib2FyZF9fd2VsY29tZVwiXHJcbiAgICBbdXNlck5hbWVdPVwidXNlckluZm8/Lm5hbWUgPz8gJydcIlxyXG4gICAgW21lZXRpbmdzQ291bnRdPVwibWVldGluZ3NDb3VudFwiXHJcbiAgICBbZ3JvdXBzQ291bnRdPVwiZ3JvdXBzQ291bnRcIlxyXG4gICAgKHNob3J0Y3V0U2VsZWN0ZWQpPVwib25KdW1wVG9TaG9ydGN1dCgkZXZlbnQpXCJcclxuICA+PC9pZWVlc2EtZGFzaGJvYXJkLXdlbGNvbWUtaGVhZGVyPlxyXG5cclxuICA8bWFpbiBjbGFzcz1cImllZWVzYS1kYXNoYm9hcmRfX2NvbnRlbnRcIj5cclxuICAgIDxpZWVlc2EtdXBjb21pbmctbWVldGluZ3MtZXZlbnRzXHJcbiAgICAgICN1cGNvbWluZ1NlY3Rpb25cclxuICAgICAgY2xhc3M9XCJpZWVlc2EtZGFzaGJvYXJkX191cGNvbWluZ1wiXHJcbiAgICAgIFsoZXhwYW5kZWQpXT1cIm1lZXRpbmdzRXhwYW5kZWRcIlxyXG4gICAgICBbZXZlbnRzXT1cInVwY29taW5nRXZlbnRzXCJcclxuICAgICAgW3NlY3Rpb25TdGF0ZV09XCJ1cGNvbWluZ1N0YXRlXCJcclxuICAgICAgW3Blcm1pc3Npb25zXT1cImF0dGVuZGFuY2VQZXJtaXNzaW9uc1wiXHJcbiAgICAgIFthdHRlbmRhbmNlU3RhdGVzXT1cImF0dGVuZGFuY2VTdGF0ZXNcIlxyXG4gICAgICBbaW5GbGlnaHRNZWV0aW5nSWRzXT1cImluRmxpZ2h0TWVldGluZ0lkc1wiXHJcbiAgICAgIFtpc01vYmlsZVZpZXddPVwiaXNNb2JpbGVWaWV3XCJcclxuICAgICAgKHZpZXdBbGwpPVwib25WaWV3QWxsRXZlbnRzKClcIlxyXG4gICAgICAodmlld0V2ZW50KT1cIm9uVmlld0V2ZW50KCRldmVudClcIlxyXG4gICAgICAob3Blbk1lZXRpbmcpPVwib25PcGVuTWVldGluZygkZXZlbnQpXCJcclxuICAgICAgKGxvZ0F0dGVuZGFuY2UpPVwib25Mb2dBdHRlbmRhbmNlKCRldmVudClcIlxyXG4gICAgICAobGVhdmVNZWV0aW5nKT1cIm9uTGVhdmVNZWV0aW5nKCRldmVudClcIlxyXG4gICAgICAobG9hZEV2ZW50TWVldGluZ3MpPVwib25Mb2FkRXZlbnRNZWV0aW5ncygkZXZlbnQpXCJcclxuICAgID48L2llZWVzYS11cGNvbWluZy1tZWV0aW5ncy1ldmVudHM+XHJcblxyXG4gICAgPGllZWVzYS15b3VyLWdyb3Vwc1xyXG4gICAgICAjZ3JvdXBzU2VjdGlvblxyXG4gICAgICBbKGV4cGFuZGVkKV09XCJncm91cHNFeHBhbmRlZFwiXHJcbiAgICAgIFtncm91cHNdPVwiZ3JvdXBzXCJcclxuICAgICAgW3NlY3Rpb25TdGF0ZV09XCJncm91cHNTdGF0ZVwiXHJcbiAgICAgIFt0b3RhbEdyb3Vwc109XCJncm91cHMubGVuZ3RoXCJcclxuICAgICAgW3BhZ2VJbmRleF09XCJncm91cHNQYWdlSW5kZXhcIlxyXG4gICAgICBbcGFnZVNpemVdPVwiZ3JvdXBzUGFnZVNpemVcIlxyXG4gICAgICAodmlld0FsbEdyb3Vwcyk9XCJvblZpZXdBbGxHcm91cHMoKVwiXHJcbiAgICAgIChwYWdlQ2hhbmdlKT1cIm9uR3JvdXBzUGFnZUNoYW5nZSgkZXZlbnQpXCJcclxuICAgID48L2llZWVzYS15b3VyLWdyb3Vwcz5cclxuICA8L21haW4+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtbWVldGluZy1saXN0LWl0ZW0ubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXNoYm9hcmQvc3JjL2xpYi9tb2RlbHMvZXZlbnQtbWVldGluZy1saXN0LWl0ZW0ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBSYXcgbGlzdCBpdGVtIHJldHVybmVkIGJ5IHRoZSByZWFsIFwiZXZlbnRzICYgbWVldGluZ3NcIiBiYWNrZW5kXHJcbiAqIChgUE9TVCB7YXBpQmFzZVVybH0vbWVldGluZ3MvZXZlbnRzQW5kTWVldGluZ3NgKS4gQSBzaW5nbGUgbGlzdCBtYXkgY29udGFpblxyXG4gKiBib3RoIEVWRU5UIHJvd3MgKGBpc01lZXRpbmdFdmVudCA9PT0gdHJ1ZWAgLyBgaGFzQ2hpbGRyZW4gPT09IHRydWVgLCB3aGljaCBvd25cclxuICogY2hpbGQgbWVldGluZ3MpIGFuZCBTVEFOREFMT05FIE1FRVRJTkcgcm93cyAoYGlzTWVldGluZ0V2ZW50ID09PSBmYWxzZWApLlxyXG4gKlxyXG4gKiBEYXRlcyBhcmUgZXBvY2ggbWlsbGlzZWNvbmRzIChub3QgSVNPIHN0cmluZ3MpIGFuZCBtdXN0IGJlIGZvcm1hdHRlZCB3aXRoXHJcbiAqIGx1eG9uIGBEYXRlVGltZS5mcm9tTWlsbGlzYC4gVGhpcyBzaGFwZSBtaXJyb3JzIHRoZSBgZXZlbnRzLWFuZC1tZWV0aW5nc2BcclxuICogbGlicmFyeSdzIGBFdmVudHNBbmRNZWV0aW5nc2AgbGlzdCBtb2RlbCBzbyB0aGUgZGFzaGJvYXJkIHJldXNlcyB0aGUgZXhhY3RcclxuICogYmFja2VuZCBjb250cmFjdCByZWZlcmVuY2VkIGJ5IHRoZSBleGlzdGluZ1xyXG4gKiBgdmlldy1ldmVudHMtbWVldGluZ3MtbGlzdGAgc2NyZWVuLlxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBFdmVudE1lZXRpbmdMaXN0SXRlbSB7XHJcbiAgLyoqIFN0YWJsZSBpZGVudGlmaWVyIG9mIHRoZSBldmVudCBvciBzdGFuZGFsb25lIG1lZXRpbmcuICovXHJcbiAgaWQ6IHN0cmluZztcclxuICAvKiogRXZlbnQgLyBtZWV0aW5nIGRpc3BsYXkgbmFtZS4gKi9cclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgLyoqIFN0YXJ0IGRhdGUtdGltZSBhcyBhbiBJU08tODYwMSBzdHJpbmcgKG9yIGVwb2NoIG1zIGZvciBsZWdhY3kgZml4dHVyZXMpLiAqL1xyXG4gIHN0YXJ0RGF0ZVRpbWU6IHN0cmluZyB8IG51bWJlcjtcclxuICAvKiogRW5kIGRhdGUtdGltZSBhcyBhbiBJU08tODYwMSBzdHJpbmcgKG9yIGVwb2NoIG1zIGZvciBsZWdhY3kgZml4dHVyZXMpLiAqL1xyXG4gIGVuZERhdGVUaW1lOiBzdHJpbmcgfCBudW1iZXI7XHJcbiAgLyoqIElBTkEgLyBvZmZzZXQtcHJlZml4ZWQgdGltZXpvbmUgc3RyaW5nLCBlLmcuIFwiKFVUQyswNTozMCkgQXNpYS9Lb2xrYXRhXCIuICovXHJcbiAgdGltZVpvbmU6IHN0cmluZztcclxuICAvKiogT3duaW5nIGdyb3VwIGlkLiAqL1xyXG4gIGdyb3VwSWQ/OiBzdHJpbmc7XHJcbiAgLyoqIE93bmluZyBncm91cCBkaXNwbGF5IG5hbWUuICovXHJcbiAgZ3JvdXBOYW1lPzogc3RyaW5nO1xyXG4gIC8qKiBPd25pbmcgZ3JvdXAgYWNyb255bSwgd2hlbiBwcm92aWRlZC4gKi9cclxuICBncm91cEFjcm9ueW0/OiBzdHJpbmc7XHJcbiAgLyoqIFJvb20gLyBsb2NhdGlvbiB0ZXh0LCB3aGVuIHByb3ZpZGVkLiAqL1xyXG4gIG1lZXRpbmdMb2NhdGlvbj86IHN0cmluZyB8IG51bGw7XHJcbiAgLyoqIFRydWUgd2hlbiB0aGlzIHJvdyBpcyBhbiBFVkVOVCB0aGF0IG93bnMgY2hpbGQgbWVldGluZ3MuICovXHJcbiAgaGFzQ2hpbGRyZW4/OiBib29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIFRydWUgd2hlbiB0aGUgcm93IHJlcHJlc2VudHMgYW4gRVZFTlQgKHZzLiBhIHN0YW5kYWxvbmUgbWVldGluZykuIENvbWJpbmVkXHJcbiAgICogd2l0aCB7QGxpbmsgaGFzQ2hpbGRyZW59IHRoaXMgaXMgdGhlIEVWRU5ULXZzLVNUQU5EQUxPTkUgZGlzY3JpbWluYXRvci5cclxuICAgKi9cclxuICBpc01lZXRpbmdFdmVudD86IGJvb2xlYW47XHJcbiAgLyoqIExpZmVjeWNsZSBzdGF0dXMsIGUuZy4gXCJJbiBQcm9ncmVzc1wiLCBcIlVwY29taW5nXCIsIFwiU3RhcnRzIFNvb25cIi4gKi9cclxuICBzdGF0dXM/OiBzdHJpbmc7XHJcbiAgLyoqIFRydWUgd2hlbiB0aGUgc2lnbmVkLWluIHVzZXIgaXMgYSBtZW1iZXIgb2YgdGhlIG93bmluZyBncm91cC4gKi9cclxuICBpc01lbWJlck9mR3JvdXA/OiBib29sZWFuO1xyXG4gIC8qKiBUcnVlIHdoZW4gdGhlIGN1cnJlbnQgdXNlciBpcyBjdXJyZW50bHkgYXR0ZW5kaW5nIChkcml2ZXMgdGhlIHBpbGwpLiAqL1xyXG4gIGlzQ3VycmVudGx5QXR0ZW5kaW5nPzogYm9vbGVhbjtcclxuICAvKiogVHJ1ZSB3aGVuIHRoZSByb3cgaXMgb3BlbiBmb3IgYXR0ZW5kYW5jZSBsb2dnaW5nLiAqL1xyXG4gIGlzT3BlbkZvckF0dGVuZGFuY2U/OiBib29sZWFuO1xyXG4gIC8qKiBFdmVudCBpZCBhIHN0YW5kYWxvbmUvY2hpbGQgbWVldGluZyBiZWxvbmdzIHRvLCB3aGVuIGFwcGxpY2FibGUuICovXHJcbiAgZXZlbnRJZD86IHN0cmluZztcclxuICAvKiogTWVldGluZyBpZCwgd2hlbiB0aGUgcm93IGlzIGEgbWVldGluZy4gKi9cclxuICBtZWV0aW5nSWQ/OiBzdHJpbmc7XHJcbiAgLyoqIEFsdGVybmF0ZSBuYW1lIGtleSBzb21lIHBheWxvYWRzIHVzZSBmb3IgbWVldGluZ3MuICovXHJcbiAgbWVldGluZ1RpdGxlPzogc3RyaW5nO1xyXG4gIC8qKiBBbHRlcm5hdGUgc3RhdHVzIGtleSAodGhlIGxpc3Qgc2NyZWVuIGNvcGllcyBzdGF0dXMgaGVyZSkuICovXHJcbiAgY29udGVudFVuZGVyTGluaz86IHN0cmluZztcclxuICAvKiogQWx0ZXJuYXRlIGxvY2F0aW9uIGtleSB1c2VkIGJ5IHNvbWUgbWVldGluZyBwYXlsb2Fkcy4gKi9cclxuICByb29tPzogc3RyaW5nIHwgbnVsbDtcclxuICAvKiogQ291bnQgb2YgY2hpbGQgbWVldGluZ3MgZm9yIGFuIGV2ZW50LCB3aGVuIHRoZSBiYWNrZW5kIHByb3ZpZGVzIGl0LiAqL1xyXG4gIG1lZXRpbmdDb3VudD86IG51bWJlcjtcclxuICAvKiogQ291bnQgb2YgY2hpbGQgbWVldGluZ3Mgb3BlbiBmb3IgYXR0ZW5kYW5jZSwgd2hlbiBwcm92aWRlZC4gKi9cclxuICBvcGVuRm9yQXR0ZW5kYW5jZUNvdW50PzogbnVtYmVyO1xyXG4gIC8qKiBcIkRheSBYIG9mIFlcIiBpbmRpY2F0b3Igc3RyaW5nLCB3aGVuIHRoZSBiYWNrZW5kIHByb3ZpZGVzIGl0LiAqL1xyXG4gIGRheUluZGljYXRvcj86IHN0cmluZztcclxufVxyXG5cclxuLyoqXHJcbiAqIFJlc3BvbnNlIGVudmVsb3BlIGZvciB0aGUgZGFzaGJvYXJkIGV2ZW50cy0mLW1lZXRpbmdzIGxpc3QgZW5kcG9pbnQsIG1hdGNoaW5nXHJcbiAqIHRoZSBgZXZlbnRzLWFuZC1tZWV0aW5nc2AgbGlicmFyeSdzIGBHZXRFdmVudHNBbmRNZWV0aW5nc1Jlc3BvbnNlYCBib2R5IHNoYXBlLlxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBFdmVudE1lZXRpbmdMaXN0UmVzcG9uc2Uge1xyXG4gIHN0YXR1czogYm9vbGVhbjtcclxuICBtZXNzYWdlPzogc3RyaW5nO1xyXG4gIGJvZHk6IHtcclxuICAgIHRvdGFsUmVjb3JkczogbnVtYmVyO1xyXG4gICAgZXZlbnRNZWV0aW5nTGlzdDogRXZlbnRNZWV0aW5nTGlzdEl0ZW1bXTtcclxuICB9O1xyXG59XHJcblxyXG4vKipcclxuICogQ2hpbGQtbWVldGluZyBsaXN0IGl0ZW0gcmV0dXJuZWQgYnkgdGhlIHBlci1ldmVudCBleHBhbmQgZW5kcG9pbnRcclxuICogKGBQT1NUIHthcGlCYXNlVXJsfS9tZWV0aW5ncy9tZWV0aW5nc0RldGFpbHNgKS4gRGF0ZXMgYXJlIGVwb2NoIG1pbGxpc2Vjb25kcy5cclxuICogTWlycm9ycyB0aGUgYGV2ZW50cy1hbmQtbWVldGluZ3NgIGxpYnJhcnkncyBgTWVldGluZ2AgbW9kZWwuXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50TWVldGluZ0RldGFpbEl0ZW0ge1xyXG4gIG1lZXRpbmdJZDogc3RyaW5nO1xyXG4gIG1lZXRpbmdUaXRsZTogc3RyaW5nO1xyXG4gIG1lZXRpbmdTdERhdGU6IHN0cmluZyB8IG51bWJlcjtcclxuICBtZWV0aW5nRWREYXRlOiBzdHJpbmcgfCBudW1iZXI7XHJcbiAgbWVldGluZ0xvY2F0aW9uPzogc3RyaW5nO1xyXG4gIGdyb3VwSWQ/OiBzdHJpbmc7XHJcbiAgZ3JvdXBOYW1lPzogc3RyaW5nO1xyXG4gIGdyb3VwQWNyb255bT86IHN0cmluZztcclxuICB0aW1lWm9uZT86IHN0cmluZztcclxuICBzdGF0dXM/OiBzdHJpbmc7XHJcbiAgaXNNZW1iZXJPZkdyb3VwPzogYm9vbGVhbjtcclxuICBpc0N1cnJlbnRseUF0dGVuZGluZz86IGJvb2xlYW47XHJcbiAgaXNPcGVuRm9yQXR0ZW5kYW5jZT86IGJvb2xlYW47XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXNwb25zZSBlbnZlbG9wZSBmb3IgdGhlIHBlci1ldmVudCBjaGlsZC1tZWV0aW5ncyBleHBhbmQgZW5kcG9pbnQsIG1hdGNoaW5nXHJcbiAqIHRoZSBgZXZlbnRzLWFuZC1tZWV0aW5nc2AgbGlicmFyeSdzIGBHZXRNZWV0aW5nc0J5RXZlbnRJZFJlc3BvbnNlYCBib2R5IHNoYXBlLlxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBFdmVudE1lZXRpbmdEZXRhaWxSZXNwb25zZSB7XHJcbiAgc3RhdHVzOiBib29sZWFuO1xyXG4gIG1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgYm9keToge1xyXG4gICAgdG90YWxSZWNvcmRzOiBudW1iZXI7XHJcbiAgICBtZWV0aW5nczogRXZlbnRNZWV0aW5nRGV0YWlsSXRlbVtdO1xyXG4gIH07XHJcbn1cclxuIl19
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Request payloads for the dashboard "events & meetings" backend calls. These
3
+ * mirror the `events-and-meetings` library's `GetEventsAndMeetingsPayload` /
4
+ * `GetMeetingsByEventIdPayload` so the dashboard reuses the exact contract the
5
+ * existing `view-events-meetings-list` screen posts.
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtbWVldGluZy1saXN0LXBheWxvYWQubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXNoYm9hcmQvc3JjL2xpYi9tb2RlbHMvZXZlbnQtbWVldGluZy1saXN0LXBheWxvYWQubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0ciLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogUmVxdWVzdCBwYXlsb2FkcyBmb3IgdGhlIGRhc2hib2FyZCBcImV2ZW50cyAmIG1lZXRpbmdzXCIgYmFja2VuZCBjYWxscy4gVGhlc2VcclxuICogbWlycm9yIHRoZSBgZXZlbnRzLWFuZC1tZWV0aW5nc2AgbGlicmFyeSdzIGBHZXRFdmVudHNBbmRNZWV0aW5nc1BheWxvYWRgIC9cclxuICogYEdldE1lZXRpbmdzQnlFdmVudElkUGF5bG9hZGAgc28gdGhlIGRhc2hib2FyZCByZXVzZXMgdGhlIGV4YWN0IGNvbnRyYWN0IHRoZVxyXG4gKiBleGlzdGluZyBgdmlldy1ldmVudHMtbWVldGluZ3MtbGlzdGAgc2NyZWVuIHBvc3RzLlxyXG4gKi9cclxuXHJcbi8qKiBGaWx0ZXIgYmxvY2sgc2hhcmVkIGJ5IHRoZSBsaXN0IGFuZCBleHBhbmQgcGF5bG9hZHMuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgRXZlbnRNZWV0aW5nRmlsdGVyIHtcclxuICAvKiogTGlmZWN5Y2xlIHN0YXR1c2VzIHRvIGluY2x1ZGUsIGUuZy4gW1wiSW4gUHJvZ3Jlc3NcIiwgXCJVcGNvbWluZ1wiXS4gKi9cclxuICBzdGF0dXM6IHN0cmluZ1tdO1xyXG4gIC8qKiBXaGV0aGVyIGV2ZXJ5IG1lZXRpbmcgKHJlZ2FyZGxlc3Mgb2YgbWVtYmVyc2hpcCkgc2hvdWxkIGJlIHJldHVybmVkLiAqL1xyXG4gIGlzQWxsTWVldGluZ1NlbGVjdGVkOiBib29sZWFuO1xyXG4gIC8qKiBPcHRpb25hbCBncm91cC1pZCBzY29wZS4gKi9cclxuICBncm91cElkcz86IHN0cmluZ1tdO1xyXG59XHJcblxyXG4vKiogUGF5bG9hZCBmb3IgYFBPU1Qge2FwaUJhc2VVcmx9L21lZXRpbmdzL2V2ZW50c0FuZE1lZXRpbmdzYCAodGhlIHNlY3Rpb24gbGlzdCkuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgRXZlbnRNZWV0aW5nTGlzdFBheWxvYWQge1xyXG4gIHBheWxvYWQ6IHtcclxuICAgIC8qKiBOdWxsIGZvciB0aGUgdG9wLWxldmVsIGxpc3Q7IGFuIGV2ZW50IGlkIHdoZW4gc2NvcGluZyB0byBvbmUgZXZlbnQuICovXHJcbiAgICBldmVudElkOiBzdHJpbmcgfCBudWxsO1xyXG4gICAgc29ydENvbHVtbjogc3RyaW5nO1xyXG4gICAgYXNjZW5kaW5nT3JkZXI6IGJvb2xlYW47XHJcbiAgICBwYWdlOiBudW1iZXI7XHJcbiAgICBzaXplOiBudW1iZXI7XHJcbiAgICBzZWFyY2hUZXJtPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGZpbHRlcjogRXZlbnRNZWV0aW5nRmlsdGVyO1xyXG4gIH07XHJcbn1cclxuXHJcbi8qKiBQYXlsb2FkIGZvciBgUE9TVCB7YXBpQmFzZVVybH0vbWVldGluZ3MvbWVldGluZ3NEZXRhaWxzYCAocGVyLWV2ZW50IGV4cGFuZCkuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgRXZlbnRNZWV0aW5nRGV0YWlsUGF5bG9hZCB7XHJcbiAgcGF5bG9hZDoge1xyXG4gICAgZXZlbnRJZDogc3RyaW5nO1xyXG4gICAgc29ydENvbHVtbjogc3RyaW5nO1xyXG4gICAgYXNjZW5kaW5nT3JkZXI6IGJvb2xlYW47XHJcbiAgICBwYWdlOiBudW1iZXI7XHJcbiAgICBzaXplOiBudW1iZXI7XHJcbiAgICBzZWFyY2hUZXJtPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGZpbHRlcjogRXZlbnRNZWV0aW5nRmlsdGVyO1xyXG4gIH07XHJcbn1cclxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAtcm93Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGFzaGJvYXJkL3NyYy9saWIvbW9kZWxzL2dyb3VwLXJvdy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBHcm91cFJvdyB7XHJcbiAgZ3JvdXBJZDogc3RyaW5nO1xyXG4gIGdyb3VwOiBzdHJpbmc7XHJcbiAgdHlwZT86IHN0cmluZztcclxuICBvZmZpY2VyUm9sZT86IHN0cmluZztcclxuICBhZmZpbGlhdGlvbj86IHN0cmluZztcclxuICBtZW1iZXJMZXZlbDogc3RyaW5nO1xyXG59XHJcbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAtcm93Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGFzaGJvYXJkL3NyYy9saWIvbW9kZWxzL2dyb3VwLXJvdy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEEgc2luZ2xlIG5vZGUgaW4gYSBncm91cCdzIGFuY2VzdG9yIGhpZXJhcmNoeSAocm9vdOKGkmxlYWYpLCBhcyByZXR1cm5lZCBieVxyXG4gKiBHRVQgL3YxL2dyb3Vwcy9teS1ncm91cHMuIFVzZWQgdG8gcmVuZGVyIHRoZSBleHBhbmRhYmxlIGhpZXJhcmNoeSByb3dzIGluIHRoZVxyXG4gKiBZb3VyIEdyb3VwcyB0YWJsZS5cclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgR3JvdXBIaWVyYXJjaHlOb2RlIHtcclxuICBncm91cElkOiBzdHJpbmc7XHJcbiAgZ3JvdXBOYW1lOiBzdHJpbmc7XHJcbiAgZ3JvdXBTaG9ydE5hbWU/OiBzdHJpbmc7XHJcbiAgZ3JvdXBBY3JvbnltPzogc3RyaW5nO1xyXG4gIGdyb3VwTGV2ZWw/OiBudW1iZXI7XHJcbiAgZ3JvdXBQYXJlbnRJZD86IHN0cmluZyB8IG51bGw7XHJcbiAgZ3JvdXBUeXBlPzogc3RyaW5nO1xyXG4gIGdyb3VwVHlwZU5hbWU/OiBzdHJpbmcgfCBudWxsO1xyXG4gIGdyb3VwRGVzYz86IHN0cmluZyB8IG51bGw7XHJcbiAgaGFzQ2hpbGRyZW4/OiBib29sZWFuIHwgbnVsbDtcclxufVxyXG5cclxuLyoqXHJcbiAqIFRhYmxlLWZhY2luZyB2aWV3IG9mIGEgZ3JvdXAgaW4gdGhlIFlvdXIgR3JvdXBzIHNlY3Rpb24uIFRoZSBkaXNwbGF5IGZpZWxkc1xyXG4gKiBhcmUgbWFwcGVkIGZyb20gdGhlIGJhY2tlbmQ7IGBoaWVyYXJjaHlgIGNhcnJpZXMgdGhlIGdyb3VwJ3MgYW5jZXN0b3IgcGF0aCBzb1xyXG4gKiB0aGUgcm93IGNhbiBleHBhbmQgdG8gc2hvdyB0aGUgaGllcmFyY2h5IChtYXRjaGluZyB0aGUgTXkgUHJvZmlsZSBGaW5kIEdyb3Vwc1xyXG4gKiB0cmVlKS5cclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgR3JvdXBSb3cge1xyXG4gIGdyb3VwSWQ6IHN0cmluZztcclxuICBncm91cDogc3RyaW5nO1xyXG4gIHR5cGU/OiBzdHJpbmc7XHJcbiAgb2ZmaWNlclJvbGU/OiBzdHJpbmc7XHJcbiAgYWZmaWxpYXRpb24/OiBzdHJpbmc7XHJcbiAgbWVtYmVyTGV2ZWw6IHN0cmluZztcclxuICAvKiogQW5jZXN0b3IgaGllcmFyY2h5IChyb2904oaSbGVhZikgZm9yIHRoZSBleHBhbmRhYmxlIGhpZXJhcmNoeSByb3dzLiAqL1xyXG4gIGhpZXJhcmNoeT86IEdyb3VwSGllcmFyY2h5Tm9kZVtdO1xyXG59XHJcbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVldGluZy1yb3cubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXNoYm9hcmQvc3JjL2xpYi9tb2RlbHMvbWVldGluZy1yb3cubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF0dGVuZGFuY2VTdGF0ZSB9IGZyb20gJy4vYXR0ZW5kYW5jZS1zdGF0ZS5tb2RlbCc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIE1lZXRpbmdSb3cge1xyXG4gIG1lZXRpbmdJZDogc3RyaW5nO1xyXG4gIG1lZXRpbmdOYW1lOiBzdHJpbmc7XHJcbiAgZ3JvdXBPckNvbW1pdHRlZT86IHN0cmluZztcclxuICByb29tT3JMb2NhdGlvbj86IHN0cmluZztcclxuICBtZWV0aW5nRGF0ZTogc3RyaW5nO1xyXG4gIG1lZXRpbmdUaW1lOiBzdHJpbmc7XHJcbiAgdGltZXpvbmU6IHN0cmluZztcclxuICBpc09wZW5Gb3JBdHRlbmRhbmNlPzogYm9vbGVhbjtcclxuICBhdHRlbmRhbmNlU3RhdGU/OiBBdHRlbmRhbmNlU3RhdGU7XHJcbn1cclxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVldGluZy1yb3cubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXNoYm9hcmQvc3JjL2xpYi9tb2RlbHMvbWVldGluZy1yb3cubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF0dGVuZGFuY2VTdGF0ZSB9IGZyb20gJy4vYXR0ZW5kYW5jZS1zdGF0ZS5tb2RlbCc7XHJcblxyXG4vKipcclxuICogVmlldyBtb2RlbCBmb3IgYSBzaW5nbGUgbWVldGluZyByb3csIHVzZWQgYm90aCBmb3IgYW4gZXZlbnQncyBleHBhbmRlZCBjaGlsZFxyXG4gKiBtZWV0aW5ncyBhbmQgKHZpYSB7QGxpbmsgVXBjb21pbmdFdmVudH0pIGZvciBzdGFuZGFsb25lIG1lZXRpbmcgY2FyZHMuXHJcbiAqXHJcbiAqIGBzdGFydEVwb2NoTXNgIC8gYGVuZEVwb2NoTXNgIGNhcnJ5IHRoZSByYXcgZXBvY2gtbWlsbGlzZWNvbmRzIHZhbHVlcyBmcm9tIHRoZVxyXG4gKiBiYWNrZW5kIGFuZCBhcmUgZm9ybWF0dGVkIHdpdGggbHV4b24gYERhdGVUaW1lLmZyb21NaWxsaXNgLiBUaGUgbGVnYWN5IElTT1xyXG4gKiBgbWVldGluZ0RhdGVgIC8gYG1lZXRpbmdUaW1lYCBmaWVsZHMgYXJlIHJldGFpbmVkIGZvciBleGlzdGluZyBmaXh0dXJlcy90ZXN0cy5cclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgTWVldGluZ1JvdyB7XHJcbiAgbWVldGluZ0lkOiBzdHJpbmc7XHJcbiAgbWVldGluZ05hbWU6IHN0cmluZztcclxuICBncm91cE9yQ29tbWl0dGVlPzogc3RyaW5nO1xyXG4gIHJvb21PckxvY2F0aW9uPzogc3RyaW5nO1xyXG4gIC8qKiBTdGFydCBkYXRlLXRpbWUgYXMgYW4gSVNPLTg2MDEgc3RyaW5nIChvciBlcG9jaCBtcyBmb3IgZml4dHVyZXMpLiAqL1xyXG4gIHN0YXJ0RGF0ZVRpbWU/OiBzdHJpbmcgfCBudW1iZXI7XHJcbiAgLyoqIEVuZCBkYXRlLXRpbWUgYXMgYW4gSVNPLTg2MDEgc3RyaW5nIChvciBlcG9jaCBtcyBmb3IgZml4dHVyZXMpLiAqL1xyXG4gIGVuZERhdGVUaW1lPzogc3RyaW5nIHwgbnVtYmVyO1xyXG4gIC8qKiBMZWdhY3kgSVNPIG1lZXRpbmcgZGF0ZSwgcmV0YWluZWQgZm9yIGZpeHR1cmVzL3Rlc3RzLiAqL1xyXG4gIG1lZXRpbmdEYXRlPzogc3RyaW5nO1xyXG4gIC8qKiBMZWdhY3kgSVNPIG1lZXRpbmcgdGltZSwgcmV0YWluZWQgZm9yIGZpeHR1cmVzL3Rlc3RzLiAqL1xyXG4gIG1lZXRpbmdUaW1lPzogc3RyaW5nO1xyXG4gIHRpbWV6b25lOiBzdHJpbmc7XHJcbiAgc3RhdHVzPzogc3RyaW5nO1xyXG4gIGlzTWVtYmVyT2ZHcm91cD86IGJvb2xlYW47XHJcbiAgaXNPcGVuRm9yQXR0ZW5kYW5jZT86IGJvb2xlYW47XHJcbiAgYXR0ZW5kYW5jZVN0YXRlPzogQXR0ZW5kYW5jZVN0YXRlO1xyXG59XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXktZ3JvdXBzLXZpZXcubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXNoYm9hcmQvc3JjL2xpYi9tb2RlbHMvbXktZ3JvdXBzLXZpZXcubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBSZWFkLW9ubHkgYWdncmVnYXRlIHZpZXcgcmV0dXJuZWQgYnkgR0VUIC92MS9ncm91cHMvbXktZ3JvdXBzLCBtaXJyb3JpbmcgdGhlXHJcbiAqIGdyb3Vwcy1hcGkgYE15R3JvdXBzVmlld2AgRFRPLiBUaGUgZGFzaGJvYXJkIFwiWW91ciBHcm91cHNcIiBzZWN0aW9uIGNvbnN1bWVzXHJcbiAqIHRoZSBgZ3JvdXBzYCBjb2xsZWN0aW9uOyBgaW50ZXJlc3RzYCBpcyBub3Qgc2hvd24gb24gdGhlIGRhc2hib2FyZC5cclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgTXlHcm91cHNWaWV3IHtcclxuICBncm91cHM6IE15R3JvdXBWaWV3W107XHJcbiAgaW50ZXJlc3RzPzogTXlJbnRlcmVzdFZpZXdbXTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEEgc2luZ2xlIG9mZmljZXIgcm9sZSB0aGUgdXNlciBob2xkcyBpbiBhIGdyb3VwLCBhcyByZXR1cm5lZCBpbiB0aGVcclxuICogYG9mZmljZXJgIGFycmF5IG9mIEdFVCAvdjEvZ3JvdXBzL215LWdyb3Vwcy5cclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgR3JvdXBPZmZpY2VyIHtcclxuICBvZmZpY2VySWQ6IHN0cmluZztcclxuICBvZmZpY2VyTmFtZTogc3RyaW5nO1xyXG59XHJcblxyXG4vKipcclxuICogQSBzaW5nbGUgZ3JvdXAgdGhlIHVzZXIgaXMgYSByb3N0ZXIgbWVtYmVyIG9mLiBDYXJyaWVzIHRoZSBncm91cCdzIG5hbWUsXHJcbiAqIHR5cGUsIGFmZmlsaWF0aW9ucywgdGhlIHVzZXIncyBtZW1iZXIgbGV2ZWwsIGFuZCB0aGUgdXNlcidzIG9mZmljZXIgcm9sZShzKVxyXG4gKiBmb3IgdGhlIGdyb3VwICh0aGUgYG9mZmljZXJgIGFycmF5IOKAlCBlbXB0eSB3aGVuIHRoZSB1c2VyIGhvbGRzIG5vIG9mZmljZXJcclxuICogcm9sZSkuXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIE15R3JvdXBWaWV3IHtcclxuICBncm91cElkOiBzdHJpbmc7XHJcbiAgZ3JvdXBOYW1lOiBzdHJpbmc7XHJcbiAgZ3JvdXBUeXBlPzogc3RyaW5nO1xyXG4gIGdyb3VwVHlwZU5hbWU/OiBzdHJpbmcgfCBudWxsO1xyXG4gIC8qKiBBbmNlc3RvciBoaWVyYXJjaHkgKHJvb3TihpJsZWFmKSBvZiB0aGUgZ3JvdXAsIGZvciB0aGUgZXhwYW5kYWJsZSByb3dzLiAqL1xyXG4gIGhpZXJhcmNoeT86IE15R3JvdXBIaWVyYXJjaHlJdGVtW107XHJcbiAgYWZmaWxpYXRpb25zPzogc3RyaW5nW107XHJcbiAgbWVtYmVyTGV2ZWxJZD86IHN0cmluZyB8IG51bGw7XHJcbiAgbWVtYmVyTGV2ZWw/OiBzdHJpbmcgfCBudWxsO1xyXG4gIC8qKiBPZmZpY2VyIHJvbGVzIHRoZSB1c2VyIGhvbGRzIGluIHRoaXMgZ3JvdXAgKGUuZy4gXCJDaGFpclwiKTsgZW1wdHkgaWYgbm9uZS4gKi9cclxuICBvZmZpY2VyPzogR3JvdXBPZmZpY2VyW107XHJcbn1cclxuXHJcbi8qKiBBIHNpbmdsZSBub2RlIGluIGEgZ3JvdXAncyBhbmNlc3RvciBoaWVyYXJjaHkgKHJvb3TihpJsZWFmKS4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBNeUdyb3VwSGllcmFyY2h5SXRlbSB7XHJcbiAgZ3JvdXBJZDogc3RyaW5nO1xyXG4gIGdyb3VwTmFtZTogc3RyaW5nO1xyXG4gIGdyb3VwU2hvcnROYW1lPzogc3RyaW5nO1xyXG4gIGdyb3VwQWNyb255bT86IHN0cmluZztcclxuICBncm91cExldmVsPzogbnVtYmVyO1xyXG4gIGdyb3VwUGFyZW50SWQ/OiBzdHJpbmcgfCBudWxsO1xyXG4gIGdyb3VwVHlwZT86IHN0cmluZztcclxuICBncm91cFR5cGVOYW1lPzogc3RyaW5nIHwgbnVsbDtcclxuICBncm91cERlc2M/OiBzdHJpbmcgfCBudWxsO1xyXG4gIGhhc0NoaWxkcmVuPzogYm9vbGVhbiB8IG51bGw7XHJcbn1cclxuXHJcbi8qKiBBIHNpbmdsZSBpbnRlcmVzdCB0aGUgdXNlciBoYXMgZXhwcmVzc2VkIChub3Qgc2hvd24gb24gdGhlIGRhc2hib2FyZCkuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgTXlJbnRlcmVzdFZpZXcge1xyXG4gIGludGVyZXN0SWQ6IHN0cmluZztcclxuICBncm91cElkOiBzdHJpbmc7XHJcbiAgZ3JvdXBOYW1lOiBzdHJpbmc7XHJcbiAgc3RhdHVzOiBzdHJpbmc7XHJcbn1cclxuIl19
@@ -1,2 +1,13 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBjb21pbmctZXZlbnQubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXNoYm9hcmQvc3JjL2xpYi9tb2RlbHMvdXBjb21pbmctZXZlbnQubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1lZXRpbmdSb3cgfSBmcm9tICcuL21lZXRpbmctcm93Lm1vZGVsJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVXBjb21pbmdFdmVudCB7XHJcbiAgZXZlbnRJZDogc3RyaW5nO1xyXG4gIHRpdGxlOiBzdHJpbmc7XHJcbiAgc3RhdHVzOiBzdHJpbmc7XHJcbiAgZGF5SW5kaWNhdG9yPzogc3RyaW5nO1xyXG4gIG1lZXRpbmdDb3VudDogbnVtYmVyO1xyXG4gIG9wZW5Gb3JBdHRlbmRhbmNlQ291bnQ6IG51bWJlcjtcclxuICBzdGFydERhdGU6IHN0cmluZztcclxuICBlbmREYXRlOiBzdHJpbmc7XHJcbiAgdGltZXpvbmU6IHN0cmluZztcclxuICBtZWV0aW5nczogTWVldGluZ1Jvd1tdO1xyXG59XHJcbiJdfQ==
1
+ /* eslint-disable no-unused-vars */
2
+ /**
3
+ * Discriminates how a row in the "Upcoming Meetings & Events" list is rendered.
4
+ * EVENT rows render as an expandable event block that owns child meetings;
5
+ * STANDALONE_MEETING rows render as a single meeting card and always sort LAST
6
+ * within the list.
7
+ */
8
+ export var UpcomingItemKind;
9
+ (function (UpcomingItemKind) {
10
+ UpcomingItemKind["EVENT"] = "EVENT";
11
+ UpcomingItemKind["STANDALONE_MEETING"] = "STANDALONE_MEETING";
12
+ })(UpcomingItemKind || (UpcomingItemKind = {}));
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBjb21pbmctZXZlbnQubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXNoYm9hcmQvc3JjL2xpYi9tb2RlbHMvdXBjb21pbmctZXZlbnQubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsbUNBQW1DO0FBQ25DOzs7OztHQUtHO0FBQ0gsTUFBTSxDQUFOLElBQVksZ0JBR1g7QUFIRCxXQUFZLGdCQUFnQjtJQUMxQixtQ0FBZSxDQUFBO0lBQ2YsNkRBQXlDLENBQUE7QUFDM0MsQ0FBQyxFQUhXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFHM0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNZWV0aW5nUm93IH0gZnJvbSAnLi9tZWV0aW5nLXJvdy5tb2RlbCc7XHJcblxyXG4vKiBlc2xpbnQtZGlzYWJsZSBuby11bnVzZWQtdmFycyAqL1xyXG4vKipcclxuICogRGlzY3JpbWluYXRlcyBob3cgYSByb3cgaW4gdGhlIFwiVXBjb21pbmcgTWVldGluZ3MgJiBFdmVudHNcIiBsaXN0IGlzIHJlbmRlcmVkLlxyXG4gKiBFVkVOVCByb3dzIHJlbmRlciBhcyBhbiBleHBhbmRhYmxlIGV2ZW50IGJsb2NrIHRoYXQgb3ducyBjaGlsZCBtZWV0aW5ncztcclxuICogU1RBTkRBTE9ORV9NRUVUSU5HIHJvd3MgcmVuZGVyIGFzIGEgc2luZ2xlIG1lZXRpbmcgY2FyZCBhbmQgYWx3YXlzIHNvcnQgTEFTVFxyXG4gKiB3aXRoaW4gdGhlIGxpc3QuXHJcbiAqL1xyXG5leHBvcnQgZW51bSBVcGNvbWluZ0l0ZW1LaW5kIHtcclxuICBFVkVOVCA9ICdFVkVOVCcsXHJcbiAgU1RBTkRBTE9ORV9NRUVUSU5HID0gJ1NUQU5EQUxPTkVfTUVFVElORycsXHJcbn1cclxuLyogZXNsaW50LWVuYWJsZSBuby11bnVzZWQtdmFycyAqL1xyXG5cclxuLyoqXHJcbiAqIFZpZXcgbW9kZWwgZm9yIGEgc2luZ2xlIGVudHJ5IGluIHRoZSBcIlVwY29taW5nIE1lZXRpbmdzICYgRXZlbnRzXCIgc2VjdGlvbi5cclxuICpcclxuICogV2hlbiB7QGxpbmsga2luZH0gaXMgYEVWRU5UYCB0aGUgZW50cnkgcmVuZGVycyBhcyB0aGUgZXhwYW5kYWJsZSBldmVudCBibG9ja1xyXG4gKiAoaGVhZGVyIGJhZGdlLCB0aXRsZSwgXCJEYXkgWCBvZiBZXCIsIG1lZXRpbmctY291bnQgc3ViLWxpbmUsIGRhdGVzL3RpbWV6b25lLFxyXG4gKiBWaWV3IGJ1dHRvbiwgYW5kIHRoZSBzaG93L2hpZGUgY2hpbGQtbWVldGluZyBsaXN0KS4gV2hlbiBga2luZGAgaXNcclxuICogYFNUQU5EQUxPTkVfTUVFVElOR2AgdGhlIGVudHJ5IHJlbmRlcnMgYXMgYSBzaW5nbGUgc3RhbmRhbG9uZSBtZWV0aW5nIGNhcmRcclxuICogKHJlbmRlcmVkIGFmdGVyIGFsbCBldmVudHMpLlxyXG4gKlxyXG4gKiBgc3RhcnRFcG9jaE1zYCAvIGBlbmRFcG9jaE1zYCBjYXJyeSB0aGUgcmF3IGVwb2NoLW1pbGxpc2Vjb25kcyB2YWx1ZXMgZnJvbSB0aGVcclxuICogYmFja2VuZCBhbmQgYXJlIGZvcm1hdHRlZCB3aXRoIGx1eG9uIGBEYXRlVGltZS5mcm9tTWlsbGlzYC4gVGhlIGxlZ2FjeSBJU09cclxuICogYHN0YXJ0RGF0ZWAgLyBgZW5kRGF0ZWAgZmllbGRzIGFyZSByZXRhaW5lZCBmb3IgZXhpc3RpbmcgZml4dHVyZXMvdGVzdHMuXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFVwY29taW5nRXZlbnQge1xyXG4gIGV2ZW50SWQ6IHN0cmluZztcclxuICAvKiogRVZFTlQgdnMuIFNUQU5EQUxPTkVfTUVFVElORyByZW5kZXIgZGlzY3JpbWluYXRvci4gKi9cclxuICBraW5kOiBVcGNvbWluZ0l0ZW1LaW5kO1xyXG4gIHRpdGxlOiBzdHJpbmc7XHJcbiAgc3RhdHVzOiBzdHJpbmc7XHJcbiAgZGF5SW5kaWNhdG9yPzogc3RyaW5nO1xyXG4gIG1lZXRpbmdDb3VudDogbnVtYmVyO1xyXG4gIG9wZW5Gb3JBdHRlbmRhbmNlQ291bnQ6IG51bWJlcjtcclxuICAvKiogU3RhcnQgZGF0ZS10aW1lIGFzIGFuIElTTy04NjAxIHN0cmluZyAob3IgZXBvY2ggbXMgZm9yIGZpeHR1cmVzKS4gKi9cclxuICBzdGFydERhdGVUaW1lPzogc3RyaW5nIHwgbnVtYmVyO1xyXG4gIC8qKiBFbmQgZGF0ZS10aW1lIGFzIGFuIElTTy04NjAxIHN0cmluZyAob3IgZXBvY2ggbXMgZm9yIGZpeHR1cmVzKS4gKi9cclxuICBlbmREYXRlVGltZT86IHN0cmluZyB8IG51bWJlcjtcclxuICAvKiogTGVnYWN5IElTTyBzdGFydCBkYXRlLCByZXRhaW5lZCBmb3IgZml4dHVyZXMvdGVzdHMuICovXHJcbiAgc3RhcnREYXRlPzogc3RyaW5nO1xyXG4gIC8qKiBMZWdhY3kgSVNPIGVuZCBkYXRlLCByZXRhaW5lZCBmb3IgZml4dHVyZXMvdGVzdHMuICovXHJcbiAgZW5kRGF0ZT86IHN0cmluZztcclxuICB0aW1lem9uZTogc3RyaW5nO1xyXG4gIC8qKiBPd25pbmcgZ3JvdXAgbGFiZWwsIHNob3duIG9uIHN0YW5kYWxvbmUtbWVldGluZyBjYXJkcy4gKi9cclxuICBncm91cE9yQ29tbWl0dGVlPzogc3RyaW5nO1xyXG4gIC8qKiBSb29tIC8gbG9jYXRpb24sIHNob3duIG9uIHN0YW5kYWxvbmUtbWVldGluZyBjYXJkcy4gKi9cclxuICByb29tT3JMb2NhdGlvbj86IHN0cmluZztcclxuICAvKiogVHJ1ZSB3aGVuIHRoZSB1c2VyIGlzIGEgbWVtYmVyIG9mIHRoZSBvd25pbmcgZ3JvdXAuICovXHJcbiAgaXNNZW1iZXJPZkdyb3VwPzogYm9vbGVhbjtcclxuICAvKiogVGhlIGV2ZW50J3MgY2hpbGQgbWVldGluZ3MgKGVtcHR5IC8gbGF6aWx5IGxvYWRlZCBmb3IgRVZFTlQgcm93cykuICovXHJcbiAgbWVldGluZ3M6IE1lZXRpbmdSb3dbXTtcclxufVxyXG4iXX0=