@bizdoc/core 1.11.0-next.1 → 1.11.0-next.10

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 (59) hide show
  1. package/assets/bizdoc-schema.json +4 -7
  2. package/esm2020/lib/app.component.mjs +11 -4
  3. package/esm2020/lib/compose/attachments/attachments.component.mjs +5 -5
  4. package/esm2020/lib/compose/attachments/progress-button.directive.mjs +6 -6
  5. package/esm2020/lib/compose/form.component.mjs +20 -22
  6. package/esm2020/lib/compose/trace/flow.component.mjs +12 -31
  7. package/esm2020/lib/compose/trace/trace.component.mjs +4 -4
  8. package/esm2020/lib/compose/trace/trace.pane.component.mjs +2 -2
  9. package/esm2020/lib/core/component-factory-resolver.mjs +9 -2
  10. package/esm2020/lib/core/controls/address.input.mjs +3 -2
  11. package/esm2020/lib/core/controls/combination-picker-body.mjs +1 -1
  12. package/esm2020/lib/core/controls/file.input.mjs +52 -22
  13. package/esm2020/lib/core/datasource.service.mjs +3 -3
  14. package/esm2020/lib/core/functions.mjs +4 -1
  15. package/esm2020/lib/core/info/attachment-info.service.mjs +2 -2
  16. package/esm2020/lib/core/mailbox.service.mjs +48 -20
  17. package/esm2020/lib/core/models.mjs +1 -1
  18. package/esm2020/lib/core/session.service.mjs +7 -2
  19. package/esm2020/lib/core/tagging/edit-input.component.mjs +3 -3
  20. package/esm2020/lib/cube/chart/chart.component.mjs +2 -3
  21. package/esm2020/lib/cube/cube-info.service.mjs +3 -3
  22. package/esm2020/lib/cube/cube.service.mjs +15 -2
  23. package/esm2020/lib/cube/filter/filter.component.mjs +49 -30
  24. package/esm2020/lib/cube/grid/spreadsheet.component.mjs +3 -2
  25. package/esm2020/lib/cube/matrix/matrix.base.mjs +1 -1
  26. package/esm2020/lib/cube/matrix/matrix.mobile.component.mjs +4 -4
  27. package/esm2020/lib/cube/matrix/matrix.pane.component.mjs +5 -4
  28. package/esm2020/lib/cube/matrix/popup.component.mjs +6 -5
  29. package/esm2020/lib/cube/matrix/table.component.mjs +64 -11
  30. package/esm2020/lib/cube/pivot/pivot.component.mjs +15 -1
  31. package/esm2020/lib/dashboard/cube/filter/filter.component.mjs +1 -1
  32. package/esm2020/lib/dashboard/score/activity.widget.mjs +2 -5
  33. package/esm2020/lib/reports/cube/usage-args.component.mjs +3 -5
  34. package/esm2020/lib/shared.module.mjs +4 -4
  35. package/esm2020/lib/views/cube/cube-base.mjs +7 -9
  36. package/esm2020/lib/views/cube/matrix.component.mjs +19 -20
  37. package/fesm2015/bizdoc-core.mjs +387 -240
  38. package/fesm2015/bizdoc-core.mjs.map +1 -1
  39. package/fesm2020/bizdoc-core.mjs +387 -240
  40. package/fesm2020/bizdoc-core.mjs.map +1 -1
  41. package/lib/app.component.d.ts +3 -1
  42. package/lib/compose/attachments/attachments.component.d.ts +2 -2
  43. package/lib/compose/attachments/progress-button.directive.d.ts +3 -3
  44. package/lib/core/controls/combination-picker-body.d.ts +2 -0
  45. package/lib/core/controls/file.input.d.ts +1 -0
  46. package/lib/core/functions.d.ts +6 -0
  47. package/lib/core/mailbox.service.d.ts +10 -8
  48. package/lib/core/models.d.ts +1 -2
  49. package/lib/core/session.service.d.ts +1 -0
  50. package/lib/cube/cube-info.service.d.ts +2 -2
  51. package/lib/cube/cube.service.d.ts +10 -4
  52. package/lib/cube/filter/filter.component.d.ts +10 -9
  53. package/lib/cube/matrix/matrix.base.d.ts +2 -1
  54. package/lib/cube/matrix/table.component.d.ts +7 -3
  55. package/lib/cube/pivot/pivot.component.d.ts +3 -0
  56. package/lib/reports/cube/usage-args.component.d.ts +0 -1
  57. package/lib/shared.module.d.ts +1 -1
  58. package/lib/views/cube/matrix.component.d.ts +1 -3
  59. package/package.json +1 -1
@@ -35,7 +35,7 @@ import { ConversationComponent } from './chat/conversation.component';
35
35
  import { AssignActionComponent } from './compose/action/assign-action.component';
36
36
  import { ReturnActionComponent } from './compose/action/return-action.component';
37
37
  import { AttachmentsComponent } from './compose/attachments/attachments.component';
38
- import { ProgressButtonDirective } from './compose/attachments/progress-button.directive';
38
+ import { ProgressDirective } from './compose/attachments/progress-button.directive';
39
39
  import { CommentComponent } from './compose/comments/comment.component';
40
40
  import { CommentsComponent } from './compose/comments/comments.component';
41
41
  import { EditCommentComponent } from './compose/comments/edit-comment.component';
@@ -272,7 +272,7 @@ SharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "
272
272
  LongRunningTaskNotification, TaggedNotification, CommentedNotification, NudgeNotification, TextNotification, CubeAnomalyNotification, EscalatedNotification, LikedNotification, StateChangedNotification, UpcomingEventNotification,
273
273
  NoneComponent, ScheduleViewComponent,
274
274
  OptionsComponent, TraceViewComponent,
275
- ProgressButtonDirective,
275
+ ProgressDirective,
276
276
  AttachmentsComponent,
277
277
  DocumentEventsComponent,
278
278
  TagsComponent,
@@ -411,7 +411,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
411
411
  LongRunningTaskNotification, TaggedNotification, CommentedNotification, NudgeNotification, TextNotification, CubeAnomalyNotification, EscalatedNotification, LikedNotification, StateChangedNotification, UpcomingEventNotification,
412
412
  NoneComponent, ScheduleViewComponent,
413
413
  OptionsComponent, TraceViewComponent,
414
- ProgressButtonDirective,
414
+ ProgressDirective,
415
415
  AttachmentsComponent,
416
416
  DocumentEventsComponent,
417
417
  TagsComponent,
@@ -507,4 +507,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
507
507
  ]
508
508
  }]
509
509
  }] });
510
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvc2hhcmVkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFrQyxRQUFRLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDcEcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzlELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzdELE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9ELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSwyQkFBMkIsRUFB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Q2xFLGdCQUFnQixFQUFFLGFBQWE7d0JBQy9CLGtCQUFrQixFQUFFLGNBQWM7d0JBQ2xDLFFBQVEsRUFBRSxRQUFRO3dCQUNsQixhQUFhLEVBQUUsVUFBVSxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxnQkFBZ0I7d0JBQ2pKLGFBQWEsRUFBRSxZQUFZO3dCQUMzQixZQUFZLEVBQUUsZUFBZSxFQUFFLHdCQUF3Qjt3QkFDdkQsU0FBUyxFQUFFLGlCQUFpQixFQUFFLHdCQUF3Qjt3QkFDdEQsMEJBQTBCLEVBQUUscUJBQXFCLEVBQUUsb0JBQW9CLEVBQUUsdUJBQXVCLEVBQUUsa0JBQWtCLEVBQUUsaUJBQWlCO3dCQUN2SSxxQkFBcUIsRUFBRSxxQkFBcUIsRUFBRSx3QkFBd0I7d0JBQ3RFLGFBQWEsRUFBRSxrQkFBa0IsRUFBRSxtQkFBbUIsRUFBRSxhQUFhLEVBQUUsc0JBQXNCO3dCQUM3Rix3QkFBd0IsRUFBRSxzQkFBc0IsRUFBRSxvQkFBb0IsRUFBRSxtQkFBbUIsRUFBRSx5QkFBeUI7d0JBQ3RILHNCQUFzQixFQUFFLDBCQUEwQixFQUFFLGNBQWMsRUFBRSxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsbUJBQW1CLEVBQUUsYUFBYTt3QkFDNUksdUJBQXVCLEVBQUUsZUFBZTt3QkFDeEMsOEJBQThCO3dCQUM5QixrQkFBa0IsRUFBRSxrQkFBa0I7d0JBQ3RDLHdCQUF3Qjt3QkFDeEIsaUJBQWlCO3FCQUNsQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFQUF9JTklUSUFMSVpFUiwgTE9DQUxFX0lELCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSwgUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTUFUX0RBVEVfRk9STUFUUyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlLCBIVFRQX0lOVEVSQ0VQVE9SUyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgRmxleExheW91dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2ZsZXgtbGF5b3V0JztcclxuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgUGlja2VyTW9kdWxlIH0gZnJvbSAnQGN0cmwvbmd4LWVtb2ppLW1hcnQnO1xyXG5pbXBvcnQgeyBLYW5iYW5Nb2R1bGUgfSBmcm9tICdAc3luY2Z1c2lvbi9lajItYW5ndWxhci1rYW5iYW4nO1xyXG5pbXBvcnQgeyBTeW5jZnVzaW9uVGV4dEVkaXRvck1vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy90ZXh0ZWRpdG9yLm1vZHVsZSc7XHJcbmltcG9ydCB7IFN5bmNmdXNpb25DaGFydE1vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy9jaGFydC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBTeW5jZnVzaW9uRGlhZ3JhbU1vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy9kaWFncmFtLm1vZHVsZSc7XHJcbmltcG9ydCB7IFN5bmNmdXNpb25HcmlkTW9kdWxlIH0gZnJvbSAnLi9tb2R1bGVzL2dyaWQubW9kdWxlJztcclxuaW1wb3J0IHsgU3luY2Z1c2lvbkNpcmN1bGFyR2F1Z2VNb2R1bGUgfSBmcm9tICcuL21vZHVsZXMvY2lyY3VsYXItZ2F1Z2UubW9kdWxlJztcclxuaW1wb3J0IHsgU3luY2Z1c2lvblBpdm90TW9kdWxlIH0gZnJvbSAnLi9tb2R1bGVzL3Bpdm90Lm1vZHVsZSc7XHJcbmltcG9ydCB7IFN5bmNmdXNpb25TY2hlZHVsZU1vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy9zY2hlZHVsZS5tb2R1bGUnO1xyXG5pbXBvcnQgeyBTeW5jZnVzaW9uU3ByZWFkc2hlZXRNb2R1bGUgfSBmcm9tICcuL21vZHVsZXMvc3ByZWFkc2hlZXQubW9kdWxlJztcclxuaW1wb3J0IHsgU3luY2Z1c2lvbkdhbnR0TW9kdWxlIH0gZnJvbSAnLi9tb2R1bGVzL2dhbnR0Lm1vZHVsZSc7XHJcbmltcG9ydCB7IENvb2tpZVNlcnZpY2UgfSBmcm9tICduZ3gtY29va2llLXNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNYXRlcmlhbE1vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy9tYXRlcmlhbC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBDaGF0U2VydmljZSB9IGZyb20gJy4vY2hhdC9jaGF0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDYW5EZWFjdGl2YXRlQ29tcG9zZSB9IGZyb20gJy4vY29tcG9zZS9jYW4tZGVhY3RpdmF0ZS1jaGFuZ2VzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBSZWNpcGllbnRSZXNvbHZlU2VydmljZSwgRG9jdW1lbnRSZXNvbHZlU2VydmljZSB9IGZyb20gJy4vY29tcG9zZS9jb21wb3NlLXJlc29sdmUuc2VydmljZSc7XHJcbmltcG9ydCB7IENvbXBvc2VEaXNtaXNzIH0gZnJvbSAnLi9jb21wb3NlL2Rpc21pc3Muc2VydmljZSc7XHJcbmltcG9ydCB7IEJpekRvY0NvbXBvbmVudEZhY3RvcnlSZXNvbHZlciB9IGZyb20gJy4vY29yZS9jb21wb25lbnQtZmFjdG9yeS1yZXNvbHZlcic7XHJcbmltcG9ydCB7IEh1YlNlcnZpY2UgfSBmcm9tICcuL2NvcmUvaHViLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQcm9tcHRTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3Byb21wdC5zZXJ2aWNlJzsgXHJcbmltcG9ydCB7IFdpbmRvd1RpdGxlU2VydmljZSB9IGZyb20gJy4vY29yZS93aW5kb3ctdGl0bGUuc2VydmljZSc7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvbnNTZXJ2aWNlIH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMuc2VydmljZSc7XHJcbmltcG9ydCB7IE9wdGlvbnNTZXJ2aWNlIH0gZnJvbSAnLi9vcHRpb25zL29wdGlvbnMuc2VydmljZSc7XHJcbmltcG9ydCB7IEFjZUlucHV0IH0gZnJvbSAnLi9hZG1pbi9jb3JlL2FjZS5pbnB1dCc7XHJcbmltcG9ydCB7IEV4cGFuZGVkSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vYnJvd3NlL2V4cGFuZGVkLWl0ZW0vZXhwYW5kZWQtaXRlbS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb250YWN0c0NvbXBvbmVudCwgSHRtbFNpbXBsZVBpcGUgfSBmcm9tICcuL2NoYXQvY29udGFjdHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29udmVyc2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jaGF0L2NvbnZlcnNhdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBc3NpZ25BY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvYWN0aW9uL2Fzc2lnbi1hY3Rpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmV0dXJuQWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb3NlL2FjdGlvbi9yZXR1cm4tYWN0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEF0dGFjaG1lbnRzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb3NlL2F0dGFjaG1lbnRzL2F0dGFjaG1lbnRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFByb2dyZXNzQnV0dG9uRGlyZWN0aXZlIH0gZnJvbSAnLi9jb21wb3NlL2F0dGFjaG1lbnRzL3Byb2dyZXNzLWJ1dHRvbi5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDb21tZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb3NlL2NvbW1lbnRzL2NvbW1lbnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tbWVudHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvY29tbWVudHMvY29tbWVudHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRWRpdENvbW1lbnRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvY29tbWVudHMvZWRpdC1jb21tZW50LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbW1lbnRFZGl0c0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS9jb21tZW50cy9lZGl0cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb21tZW50TGlrZXNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvY29tbWVudHMvdm90ZXMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRG9jdW1lbnRFdmVudHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvZXZlbnRzL2V2ZW50cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTYXZlQ2hhbmdlc0RpYWxvZyB9IGZyb20gJy4vY29tcG9zZS9zYXZlLWNoYW5nZXMuZGlhbG9nJztcclxuaW1wb3J0IHsgVGFnc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS90YWcvdGFncy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQZW9wbGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvdHJhY2UvcGVvcGxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFZlcnNpb25Db21wYXJlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb3NlL3ZlcnNpb24tY29tcGFyZS92ZXJzaW9uLWNvbXBhcmUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0SWNvbkFuaW1hdGUgfSBmcm9tICcuL2NvcmUvYW5pbWF0ZWQtaWNvbi9hbmltYXRlZC1pY29uLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFRpbWVzcGFuSW5wdXQgfSBmcm9tICcuL2NvcmUvY29udHJvbHMvdGltZXNwYW4uaW5wdXQnO1xyXG5pbXBvcnQgeyBHdWlkZUNvbXBvbmVudCB9IGZyb20gJy4vY29yZS9ndWlkZS9ndWlkZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXBDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvaW5mby9sb2NhdGlvbi1pbmZvLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEF1dG9jb21wbGV0ZUZpZWxkIH0gZnJvbSAnLi9jb3JlL2xheW91dC9hdXRvY29tcGxldGUuZmllbGQnO1xyXG5pbXBvcnQgeyBDaGVja0ZpZWxkIH0gZnJvbSAnLi9jb3JlL2xheW91dC9jaGVja2JveC5maWVsZCc7XHJcbmltcG9ydCB7IERhdGVSYW5nZUZpZWxkIH0gZnJvbSAnLi9jb3JlL2xheW91dC9kYXRlLXJhbmdlLmZpZWxkJztcclxuaW1wb3J0IHsgRGF0ZUZpZWxkIH0gZnJvbSAnLi9jb3JlL2xheW91dC9kYXRlLmZpZWxkJztcclxuaW1wb3J0IHsgRXhwcmVzc2lvbkZpZWxkIH0gZnJvbSAnLi9jb3JlL2xheW91dC9leHByZXNzaW9uLmZpZWxkJztcclxuaW1wb3J0IHsgSHRtbEZpZWxkIH0gZnJvbSAnLi9jb3JlL2xheW91dC9odG1sLmZpZWxkJztcclxuaW1wb3J0IHsgSW5wdXRGaWVsZCB9IGZyb20gJy4vY29yZS9sYXlvdXQvaW5wdXQuZmllbGQnO1xyXG5pbXBvcnQgeyBMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvbGF5b3V0L2xheW91dC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOdW1lcmljRmllbGQgfSBmcm9tICcuL2NvcmUvbGF5b3V0L251bWVyaWMuZmllbGQnO1xyXG5pbXBvcnQgeyBTZWxlY3RGaWVsZCB9IGZyb20gJy4vY29yZS9sYXlvdXQvc2VsZWN0LmZpZWxkJztcclxuaW1wb3J0IHsgU3dpdGNoRmllbGQgfSBmcm9tICcuL2NvcmUvbGF5b3V0L3N3aXRjaC5maWVsZCc7XHJcbmltcG9ydCB7IFRleHRhcmVhRmllbGQgfSBmcm9tICcuL2NvcmUvbGF5b3V0L3RleHRhcmVhLmZpZWxkJztcclxuaW1wb3J0IHsgVGltZXNwYW5GaWVsZCB9IGZyb20gJy4vY29yZS9sYXlvdXQvdGltZXNwYW4uZmllbGQnO1xyXG5pbXBvcnQgeyBMb3R0aWVBbmltYXRpb24gfSBmcm9tICcuL2NvcmUvbG90dGllLWFuaW1hdGlvbic7XHJcbmltcG9ydCB7IE5neENvbXBvbmVudE91dGxldCB9IGZyb20gJy4vY29yZS9OZ0NvbXBvbmVudE91dGxldCc7XHJcbmltcG9ydCB7IE5vbmVDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvbm9uZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQb3B1cENvbXBvbmVudCB9IGZyb20gJy4vY29yZS9wb3B1cC9wb3B1cC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBc2tEaWFsb2cgfSBmcm9tICcuL2NvcmUvcHJvbXB0L2Fzay9hc2suZGlhbG9nJztcclxuaW1wb3J0IHsgTWFza0NvbXBvbmVudCB9IGZyb20gJy4vY29yZS9wcm9tcHQvbWFzay9tYXNrLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERvY3VtZW50VGFnZ2luZ0NvbXBvbmVudCB9IGZyb20gJy4vY29yZS90YWdnaW5nL2RvY3VtZW50cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFZGl0SW5wdXRDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvdGFnZ2luZy9lZGl0LWlucHV0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEVtb2ppSG9zdENvbXBvbmVudCB9IGZyb20gJy4vY29yZS90YWdnaW5nL2Vtb2ppLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRhZ2dpbmdJdGVtRGlyZWN0aXZlIH0gZnJvbSAnLi9jb3JlL3RhZ2dpbmcvdGFnZ2luZy1pdGVtLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFRhZ2dpbmdEaXJlY3RpdmUgfSBmcm9tICcuL2NvcmUvdGFnZ2luZy90YWdnaW5nLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFRhZ2dpbmdQaXBlIH0gZnJvbSAnLi9jb3JlL3RhZ2dpbmcvdGFnZ2luZy5waXBlJztcclxuaW1wb3J0IHsgVXNlclRhZ2dpbmdDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvdGFnZ2luZy91c2Vycy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFeHBsb3JlRG9jdW1lbnRDb21wb25lbnQgfSBmcm9tICcuL2N1YmUvZXhwbG9yZS9kb2N1bWVudC1pdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZpbHRlclRhZ3NDb21wb25lbnQgfSBmcm9tICcuL2N1YmUvZmlsdGVyL2ZpbHRlci10YWdzLmNvbXBvbmVudC5leHAnO1xyXG5pbXBvcnQgeyBDdWJlQWNjdW11bGF0aW9uQ2hhcnRDb21wb25lbnQgfSBmcm9tICcuL2N1YmUvYWNjdW0vYWNjdW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZUNoYXJ0Q29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL2NoYXJ0L2NoYXJ0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1YmVHcmlkQ29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL2dyaWQvZ3JpZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlU3ByZWFkc2hlZXRDb21wb25lbnQgfSBmcm9tICcuL2N1YmUvZ3JpZC9zcHJlYWRzaGVldC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlUGl2b3RDb21wb25lbnQgfSBmcm9tICcuL2N1YmUvcGl2b3QvcGl2b3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZU1hdHJpeFBvcHVwQ29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL21hdHJpeC9wb3B1cC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlTWF0cml4Q29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL21hdHJpeC90YWJsZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEYXNoYm9hcmRDb21wb25lbnQgfSBmcm9tICcuL2Rhc2hib2FyZC9kYXNoYm9hcmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQWN0aW9uc1dpZGdldCB9IGZyb20gJy4vZGFzaGJvYXJkL2FjdGlvbnMvYWN0aW9ucy53aWRnZXQnO1xyXG5pbXBvcnQgeyBDdWJlQWNjdW1BbmFseXNpc1dpZGdldCB9IGZyb20gJy4vZGFzaGJvYXJkL2N1YmUvYWNjdW0tY3ViZS53aWRnZXQnO1xyXG5pbXBvcnQgeyBDdWJlQW5hbHlzaXNXaWRnZXQgfSBmcm9tICcuL2Rhc2hib2FyZC9jdWJlL2N1YmUtYW5hbHlzaXMud2lkZ2V0JztcclxuaW1wb3J0IHsgQ3ViZUNoYXJ0QW5hbHlzaXNXaWRnZXQgfSBmcm9tICcuL2Rhc2hib2FyZC9jdWJlL2N1YmUtY2hhcnQud2lkZ2V0JztcclxuaW1wb3J0IHsgQ3ViZURvY3VtZW50c1dpZGdldCB9IGZyb20gJy4vZGFzaGJvYXJkL2N1YmUvZG9jdW1lbnRzLndpZGdldCc7XHJcbmltcG9ydCB7IEN1YmVXaWRnZXRGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL2Rhc2hib2FyZC9jdWJlL2ZpbHRlci9maWx0ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmVjZW50c1dpZGdldCB9IGZyb20gJy4vZGFzaGJvYXJkL3JlY2VudHMvcmVjZW50cy53aWRnZXQnO1xyXG5pbXBvcnQgeyBQZXJzb25hbEFjdGl2aXR5V2lkZ2V0IH0gZnJvbSAnLi9kYXNoYm9hcmQvc2NvcmUvYWN0aXZpdHkud2lkZ2V0JztcclxuaW1wb3J0IHsgQ29tcGFyZURlcGFydG1lbnRzV2lkZ2V0IH0gZnJvbSAnLi9kYXNoYm9hcmQvc2NvcmUvY29tcGFyZS1kZXBhcnRtZW50cy53aWRnZXQnO1xyXG5pbXBvcnQgeyBQZWVyc1BlcmZvcm1hbmNlV2lkZ2V0IH0gZnJvbSAnLi9kYXNoYm9hcmQvc2NvcmUvcGVlcnMtcGVyZm9ybWFuY2Uud2lkZ2V0JztcclxuaW1wb3J0IHsgUGVuZGluZ1Jlc3VsdHNXaWRnZXQgfSBmcm9tICcuL2Rhc2hib2FyZC9zY29yZS9wZW5kaW5nLXJlc3VsdHMud2lkZ2V0JztcclxuaW1wb3J0IHsgUGVyc29uYWxTY29yZVdpZGdldCB9IGZyb20gJy4vZGFzaGJvYXJkL3Njb3JlL3BlcnNvbmFsLXNjb3JlLndpZGdldCc7XHJcbmltcG9ydCB7IEFib3V0RGlhbG9nIH0gZnJvbSAnLi9ob21lL2Fib3V0L2Fib3V0LmRpYWxvZyc7XHJcbmltcG9ydCB7IEltcGVyc29uYXRlRGlhbG9nIH0gZnJvbSAnLi9pbXBlcnNvbmF0ZS9pbXBlcnNvbmF0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb21tZW50ZWROb3RpZmljYXRpb24gfSBmcm9tICcuL25vdGlmaWNhdGlvbnMvdHlwZXMvY29tbWVudGVkLm5vdGlmaWNhdGlvbic7XHJcbmltcG9ydCB7IEN1YmVBbm9tYWx5Tm90aWZpY2F0aW9uIH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL3R5cGVzL2N1YmUtYW5vbWFseS5ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBFc2NhbGF0ZWROb3RpZmljYXRpb24gfSBmcm9tICcuL25vdGlmaWNhdGlvbnMvdHlwZXMvZXNjYWxhdGVkLm5vdGlmaWNhdGlvbic7XHJcbmltcG9ydCB7IExpa2VkTm90aWZpY2F0aW9uIH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL3R5cGVzL2xpa2VkLm5vdGlmaWNhdGlvbic7XHJcbmltcG9ydCB7IExvbmdSdW5uaW5nVGFza05vdGlmaWNhdGlvbiB9IGZyb20gJy4vbm90aWZpY2F0aW9ucy90eXBlcy9sb25nLXJ1bm5pbmctdGFzay5ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBOdWRnZU5vdGlmaWNhdGlvbiB9IGZyb20gJy4vbm90aWZpY2F0aW9ucy90eXBlcy9udWRnZS5ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBTdGF0ZUNoYW5nZWROb3RpZmljYXRpb24gfSBmcm9tICcuL25vdGlmaWNhdGlvbnMvdHlwZXMvc3RhdGUtY2hhbmdlZC5ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBUYWdnZWROb3RpZmljYXRpb24gfSBmcm9tICcuL25vdGlmaWNhdGlvbnMvdHlwZXMvdGFnZ2VkLm5vdGlmaWNhdGlvbic7XHJcbmltcG9ydCB7IFRleHROb3RpZmljYXRpb24gfSBmcm9tICcuL25vdGlmaWNhdGlvbnMvdHlwZXMvdGV4dC5ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBVcGNvbWluZ0V2ZW50Tm90aWZpY2F0aW9uIH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL3R5cGVzL3VwY29taW5nLWV2ZW50Lm5vdGlmaWNhdGlvbic7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvbnNUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLXRhYmxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvbnNGaWx0ZXJDb21wb25lbnQgfSBmcm9tIFwiLi9ub3RpZmljYXRpb25zL2ZpbHRlci5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgT3B0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vb3B0aW9ucy9vcHRpb25zLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJlcG9ydEFyZ3VtZW50c0NvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0cy9hcmd1bWVudHMtY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZUdyaWREb2N1bWVudHNDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydHMvY3ViZS9ncmlkLWRvY3VtZW50cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlRG9jdW1lbnRzQ29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnRzL2N1YmUvdGFibGUtZG9jdW1lbnRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVzYWdlUmVwb3J0QXJncyB9IGZyb20gJy4vcmVwb3J0cy9jdWJlL3VzYWdlLWFyZ3MuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVXNhZ2VDaGFydENvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0cy9jdWJlL3VzYWdlLWNoYXJ0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVzYWdlUGl2b3RDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydHMvY3ViZS91c2FnZS1waXZvdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTdWJzdGl0dXRpb25Db21wb25lbnQgfSBmcm9tICcuL3JlcG9ydHMvc3Vic3RpdHV0aW9uL3N1YnN0aXR1dGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUYWJsZVZpZXdDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydHMvdGFibGUvdGFibGUtdmlldy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUYXNrc0NvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0cy90YXNrcy90YXNrcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBY3Rpb25QaWNrZXIgfSBmcm9tICcuL2NvbXBvc2UvYWN0aW9uL2FjdGlvbi1waWNrZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXBwSHR0cEludGVyY2VwdG9yIH0gZnJvbSAnLi9jb3JlL2h0dHAuaW50ZXJjZXB0b3InO1xyXG5pbXBvcnQgeyBCaXpEb2NBcHAsIEJyb2tlblBhZ2UgfSBmcm9tICcuL2FwcC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBZGRyZXNzSW5wdXQgfSBmcm9tICcuL2NvcmUvY29udHJvbHMvYWRkcmVzcy5pbnB1dCc7XHJcbmltcG9ydCB7IFR5cGVTZWxlY3QgfSBmcm9tICcuL2NvcmUvY29udHJvbHMvc2VsZWN0LmlucHV0JztcclxuaW1wb3J0IHsgVHlwZUF1dG9jb21wbGV0ZSB9IGZyb20gJy4vY29yZS9jb250cm9scy9hdXRvLWNvbXBsZXRlLmlucHV0JztcclxuaW1wb3J0IHsgVGltZVBpY2tlciB9IGZyb20gJy4vY29yZS9jb250cm9scy90aW1lLXBpY2tlcic7XHJcbmltcG9ydCB7IENvbG9yUGlja2VyIH0gZnJvbSAnLi9hZG1pbi9jb3JlL2NvbG9yLXBpY2tlci5pbnB1dCc7XHJcbmltcG9ydCB7IENvbWJpbmF0aW9uUGlja2VyQm9keSB9IGZyb20gJy4vY29yZS9jb250cm9scy9jb21iaW5hdGlvbi1waWNrZXItYm9keSc7XHJcbmltcG9ydCB7IENvbWJpbmF0aW9uUG9vbCB9IGZyb20gJy4vY29yZS9jb250cm9scy9jb21iaW5hdGlvbi1wb29sJztcclxuaW1wb3J0IHsgSWRlbnRpdHlOYW1lIH0gZnJvbSAnLi9jb3JlL2lkZW50aXR5L2lkZW50aXR5LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFycmF5U29ydFBpcGUsIEZpbHRlclBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvc29ydC5waXBlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlUGlwZSB9IGZyb20gXCIuL2NvcmUvcGlwZXMvdHJhbnNsYXRlLnBpcGVcIjtcclxuaW1wb3J0IHsgRm9ybVBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvZm9ybS5waXBlJztcclxuaW1wb3J0IHsgUm9sZVBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvcm9sZS5waXBlJztcclxuaW1wb3J0IHsgSm9pblBpcGUgfSBmcm9tIFwiLi9jb3JlL3BpcGVzL2pvaW4ucGlwZVwiO1xyXG5pbXBvcnQgeyBTYW5pdGl6ZUh0bWxQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL3Nhbml0aXplLWh0bWwucGlwZSc7XHJcbmltcG9ydCB7IFR5cGVWYWx1ZVBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvdHlwZS12YWx1ZS5waXBlJztcclxuaW1wb3J0IHsgQWdvUGlwZSwgRGF0ZVJhbmdlUGlwZSB9IGZyb20gXCIuL2NvcmUvcGlwZXMvZGF0ZXJhbmdlLnBpcGVcIjtcclxuaW1wb3J0IHsgRHVyYXRpb25QaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL2R1cmF0aW9uLnBpcGUnO1xyXG5pbXBvcnQgeyBBY3Rpb25QaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL2FjdGlvbi5waXBlJztcclxuaW1wb3J0IHsgU3RhdGVQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL3N0YXRlLnBpcGUnO1xyXG5pbXBvcnQgeyBVc2VyTmFtZVBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvdXNlci1uYW1lLnBpcGUnO1xyXG5pbXBvcnQgeyBCcm93c2VGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL2Jyb3dzZS9maWx0ZXIvZmlsdGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRyYWNlVmlld0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS90cmFjZS90cmFjZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGbG93Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS90cmFjZS9mbG93LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFjdGlvbkRpYWxvZyB9IGZyb20gJy4vY29tcG9zZS9hY3Rpb24vYWN0aW9uLmRpYWxvZyc7XHJcbmltcG9ydCB7IFJlcG9ydFZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0cy9yZXBvcnQtdmlld2VyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEF0dGFjaG1lbnRQcmV2aWV3IH0gZnJvbSAnLi9jb21wb3NlL2F0dGFjaG1lbnRzL3ByZXZpZXcvYXR0YWNobWVudC1wcmV2aWV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFByaXZpbGVnZUhpZGRlbkRpcmVjdGl2ZSwgUHJpdmlsZWdlRGlzYWJsZWREaXJlY3RpdmUgfSBmcm9tICcuL2NvbXBvc2UvcHJpdmlsYWdlLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvbXBhcmVOYW1lRGlyZWN0aXZlLCBDb21wYXJlQ29udGV4dERpcmVjdGl2ZSwgQ29tcGFyZUdyb3VwRGlyZWN0aXZlIH0gZnJvbSAnLi9jb21wb3NlL3ZlcnNpb24tY29tcGFyZS92ZXJzaW9uLWNvbXBhcmUuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ3ViZUZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4vY3ViZS9maWx0ZXIvZmlsdGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3Nlc3Npb24uc2VydmljZSc7XHJcbmltcG9ydCB7IEN1YmVTZXJ2aWNlIH0gZnJvbSAnLi9jdWJlL2N1YmUuc2VydmljZSc7XHJcbmltcG9ydCB7IE1haWxib3hTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL21haWxib3guc2VydmljZSc7XHJcbmltcG9ydCB7IERhdGFzb3VyY2VTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL2RhdGFzb3VyY2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IEFjY291bnRTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL2FjY291bnQuc2VydmljZSc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVByb3ZpZGVyRmFjdG9yeSwgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJy4vY29yZS90cmFuc2xhdGUuc2VydmljZSc7XHJcbmltcG9ydCB7IEd1aWRlU2VydmljZSB9IGZyb20gJy4vY29yZS9ndWlkZS9ndWlkZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRG9jdW1lbnRJbmZvIH0gZnJvbSAnLi9jb3JlL2luZm8vZG9jdW1lbnQtaW5mby5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTWFwSW5mbyB9IGZyb20gXCIuL2NvcmUvaW5mby9tYXAtaW5mb1wiO1xyXG5pbXBvcnQgeyBDdWJlSW5mbyB9IGZyb20gXCIuL2N1YmUvY3ViZS1pbmZvLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgQXR0YWNobWVudEluZm8gfSBmcm9tICcuL2NvcmUvaW5mby9hdHRhY2htZW50LWluZm8uc2VydmljZSc7XHJcbmltcG9ydCB7IEN1YmVWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL2N1YmUtdmlldy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQb3B1cCB9IGZyb20gXCIuL2NvcmUvcG9wdXAvcG9wdXAuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBDb21wb3NlRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS9mb3JtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJyb3dzZUl0ZW1zQ29tcG9uZW50IH0gZnJvbSAnLi9icm93c2UvYnJvd3NlLWl0ZW1zLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEV4cGxvcmVJdGVtc0NvbXBvbmVudCB9IGZyb20gJy4vY3ViZS9leHBsb3JlL2V4cGxvcmUtaXRlbXMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2hhdEluZm8gfSBmcm9tICcuL2NoYXQvY2hhdC1pbmZvJztcclxuaW1wb3J0IHsgU2NoZWR1bGVWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9zY2hlZHVsZXIvc2NoZWR1bGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXZhdGFyQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL2F2YXRhci9hdmF0YXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tYmluYXRpb25QaWNrZXIgfSBmcm9tICcuL2NvcmUvY29udHJvbHMvY29tYmluYXRpb24tcGlja2VyJztcclxuaW1wb3J0IHsgV2lkZ2V0SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vZGFzaGJvYXJkL3dpZGdldC1pdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE91dE9mT2ZmaWNlVG9hc3QgfSBmcm9tICcuL2hvbWUvb3V0b2ZvZmZpY2Uvb3V0b2ZvZmZpY2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgcmVnaXN0ZXJDb21wb25lbnRzIH0gZnJvbSAnLi9jb3JlL2NvbXBvbmVudC1mYWN0b3J5LXJlc29sdmVyJztcclxuaW1wb3J0IHsgVG9vbHRpcERpcmVjdGl2ZSwgVG9vbHRpcENvbXBvbmVudCB9IGZyb20gJy4vY29yZS9wb3B1cC90b29sdGlwLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFF1aWNrQ29tbWVudENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS9jb21tZW50cy9xdWljay1jb21tZW50LmNvbXBvbmVudC5leHAnO1xyXG5pbXBvcnQgeyBEb2N1bWVudFZpZXdzQ29tcG9uZW50IH0gZnJvbSAnLi92aWV3cy92aWV3cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBWaWV3SXRlbUNvbXBvbmVudCB9IGZyb20gXCIuL3ZpZXdzL3ZpZXctaXRlbS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgTmdSb3V0ZXIsIFBhbmVSb3V0ZXIsIFJvdXRlckltcGwgfSBmcm9tICcuL2NvcmUvcm91dGVyJztcclxuaW1wb3J0IHsgRG9jdW1lbnRJbmZvQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9zZS9kb2N1bWVudC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgU2hhcmVkQ29uZmlnIH0gZnJvbSAnLi9jb3JlL2NvbmZpZ3VyYXRpb24nO1xyXG5pbXBvcnQgeyBDdWJlRG9jdW1lbnRNYXRyaXhDb21wb25lbnQgfSBmcm9tICcuL3ZpZXdzL2N1YmUvbWF0cml4LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1YmVEb2N1bWVudFZpZXdDb21wb25lbnQgfSBmcm9tICcuL3ZpZXdzL2N1YmUvdmlldy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUaW1lbGluZVZpZXdDb21wb25lbnQgfSBmcm9tICcuL3ZpZXdzL3RpbWVsaW5lL3RpbWVsaW5lLmNvbXBvbmVudC5leHAnO1xyXG5pbXBvcnQgeyBTdGF0ZURpcmVjdGl2ZSB9IGZyb20gJy4vY29tcG9zZS9zdGF0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBJdGVtUmVzb2x2ZVNlcnZpY2UgfSBmcm9tICcuL2N1YmUvZXhwbG9yZS9pdGVtLXJlc29sdmVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBFeHBsb3JlSXRlbUltcGxDb21wb25lbnQgfSBmcm9tICcuL2N1YmUvZXhwbG9yZS9leHBsb3JlLWl0ZW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZVBpdm90Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vdmlld3MvY3ViZS9waXZvdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlRG9jdW1lbnRTdW1Db21wb25lbnQgfSBmcm9tICcuL3ZpZXdzL2N1YmUvc3VtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1YmVDaGFydFZpZXdDb21wb25lbnQgfSBmcm9tICcuL3ZpZXdzL2N1YmUvY2hhcnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZUV4cGxvcmVWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi92aWV3cy9jdWJlL2V4cGxvcmUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZVBhcmFsbGVsVmlld0NvbXBvbmVudCB9IGZyb20gJy4vdmlld3MvY3ViZS9wYXJhbGxlbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlU3VtQ29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL3N1bS9zdW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZVBhcmFsbGVsQ29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL3BhcmFsbGVsL3BhcmFsbGVsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL2xheW91dC9jaGVja2JveCc7XHJcbmltcG9ydCB7IERpZmZlcmVuY2VQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL2RpZmZlcmVuY2UucGlwZSc7XHJcbmltcG9ydCB7IERhdGVGb3JtYXRQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL2RhdGUtZm9ybWF0LnBpcGUnO1xyXG5pbXBvcnQgeyBDYWxlbmRhclBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvY2FsZW5kYXIucGlwZSc7XHJcbmltcG9ydCB7IFRpbWVBZ29QaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL3RpbWUtYWdvLnBpcGUnO1xyXG5pbXBvcnQgeyBEdXJhdGlvbkZvcm1hdFBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvZHVyYXRpb24tZm9ybWF0LnBpcGUnO1xyXG5pbXBvcnQgeyBGaWxlSW5wdXQgfSBmcm9tICcuL2NvcmUvY29udHJvbHMvZmlsZS5pbnB1dCc7XHJcbmltcG9ydCBkYXlqcyBmcm9tICdkYXlqcyc7XHJcbmltcG9ydCByZWxhdGl2ZVRpbWUgZnJvbSAnZGF5anMvcGx1Z2luL3JlbGF0aXZlVGltZSc7XHJcbmltcG9ydCBkdXJhdGlvbiBmcm9tICdkYXlqcy9wbHVnaW4vZHVyYXRpb24nO1xyXG5pbXBvcnQgY2FsZW5kYXIgZnJvbSAnZGF5anMvcGx1Z2luL2NhbGVuZGFyJztcclxuZGF5anMuZXh0ZW5kKHJlbGF0aXZlVGltZSk7XHJcbmRheWpzLmV4dGVuZChkdXJhdGlvbik7XHJcbmRheWpzLmV4dGVuZChjYWxlbmRhcik7XHJcblxyXG5jb25zdCBDT1JFX0NPTVBPTkVOVFMgPSBbQ3ViZVBhcmFsbGVsVmlld0NvbXBvbmVudCwgQ3ViZUV4cGxvcmVWaWV3Q29tcG9uZW50LCBDdWJlQ2hhcnRWaWV3Q29tcG9uZW50LCBDdWJlRG9jdW1lbnRTdW1Db21wb25lbnQsIEN1YmVEb2N1bWVudE1hdHJpeENvbXBvbmVudCwgQ3ViZURvY3VtZW50Vmlld0NvbXBvbmVudCwgQ3ViZVBpdm90Vmlld0NvbXBvbmVudCwgVGltZWxpbmVWaWV3Q29tcG9uZW50LFxyXG4gIFN1YnN0aXR1dGlvbkNvbXBvbmVudCwgQXNzaWduQWN0aW9uQ29tcG9uZW50LCBSZXR1cm5BY3Rpb25Db21wb25lbnQsIEV4cGxvcmVEb2N1bWVudENvbXBvbmVudCxcclxuICBBY3Rpb25zV2lkZ2V0LCBDdWJlQW5hbHlzaXNXaWRnZXQsIEN1YmVEb2N1bWVudHNXaWRnZXQsIFJlY2VudHNXaWRnZXQsIFBlcnNvbmFsQWN0aXZpdHlXaWRnZXQsXHJcbiAgQ29tcGFyZURlcGFydG1lbnRzV2lkZ2V0LCBQZWVyc1BlcmZvcm1hbmNlV2lkZ2V0LCBQZW5kaW5nUmVzdWx0c1dpZGdldCwgUGVyc29uYWxTY29yZVdpZGdldCwgQ3ViZVdpZGdldEZpbHRlckNvbXBvbmVudCxcclxuICBDdWJlRG9jdW1lbnRzQ29tcG9uZW50LCBDdWJlR3JpZERvY3VtZW50c0NvbXBvbmVudCwgVGFza3NDb21wb25lbnQsIFVzYWdlUmVwb3J0QXJncywgVXNhZ2VDaGFydENvbXBvbmVudCwgVXNhZ2VQaXZvdENvbXBvbmVudFxyXG5dO1xyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW0ZpbGVJbnB1dCwgRGF0ZUZvcm1hdFBpcGUsIENhbGVuZGFyUGlwZSwgRGlmZmVyZW5jZVBpcGUsIER1cmF0aW9uUGlwZSwgVGltZUFnb1BpcGUsXHJcbiAgICBDaGVja2JveENvbXBvbmVudCwgQ3ViZVBhcmFsbGVsQ29tcG9uZW50LCBDdWJlU3VtQ29tcG9uZW50LCBDdWJlUGFyYWxsZWxWaWV3Q29tcG9uZW50LCBDdWJlQ2hhcnRWaWV3Q29tcG9uZW50LCBDdWJlRXhwbG9yZVZpZXdDb21wb25lbnQsIEN1YmVEb2N1bWVudFN1bUNvbXBvbmVudCwgRXhwbG9yZUl0ZW1JbXBsQ29tcG9uZW50LCBEb2N1bWVudEluZm9Db21wb25lbnQsIERvY3VtZW50Vmlld3NDb21wb25lbnQsIFZpZXdJdGVtQ29tcG9uZW50LCBDdWJlRG9jdW1lbnRNYXRyaXhDb21wb25lbnQsIEN1YmVEb2N1bWVudFZpZXdDb21wb25lbnQsIEN1YmVQaXZvdFZpZXdDb21wb25lbnQsIEFjdGlvblBpY2tlciwgSHRtbFNpbXBsZVBpcGUsIFF1aWNrQ29tbWVudENvbXBvbmVudCxcclxuICAgIER1cmF0aW9uRm9ybWF0UGlwZSwgQ29tYmluYXRpb25QaWNrZXIsIENvbWJpbmF0aW9uUGlja2VyQm9keSwgQ29tYmluYXRpb25Qb29sLCBUaW1lbGluZVZpZXdDb21wb25lbnQsXHJcbiAgICBNYXRJY29uQW5pbWF0ZSwgRGF0ZVJhbmdlUGlwZSwgQWdvUGlwZSwgQ29sb3JQaWNrZXIsIFN0YXRlRGlyZWN0aXZlLCBCcm9rZW5QYWdlLFxyXG4gICAgSm9pblBpcGUsIFRpbWVQaWNrZXIsXHJcbiAgICBUeXBlVmFsdWVQaXBlLCBUeXBlU2VsZWN0LCBUeXBlQXV0b2NvbXBsZXRlLCBUcmFuc2xhdGVQaXBlLCBJZGVudGl0eU5hbWUsIFNhbml0aXplSHRtbFBpcGUsXHJcbiAgICBBY2VJbnB1dCwgVGltZXNwYW5JbnB1dCwgQWRkcmVzc0lucHV0LFxyXG4gICAgU3RhdGVQaXBlLCBBY3Rpb25QaXBlLCBSb2xlUGlwZSwgRm9ybVBpcGUsIEZpbHRlclBpcGUsIEFycmF5U29ydFBpcGUsIFVzZXJOYW1lUGlwZSxcclxuICAgIExheW91dENvbXBvbmVudCxcclxuICAgIEh0bWxGaWVsZCwgTnVtZXJpY0ZpZWxkLCBBdXRvY29tcGxldGVGaWVsZCwgQ2hlY2tGaWVsZCwgRGF0ZUZpZWxkLCBEYXRlUmFuZ2VGaWVsZCwgRXhwcmVzc2lvbkZpZWxkLCBJbnB1dEZpZWxkLCBTZWxlY3RGaWVsZCwgU3dpdGNoRmllbGQsIFRleHRhcmVhRmllbGQsIFRpbWVzcGFuRmllbGQsXHJcbiAgICBSZXR1cm5BY3Rpb25Db21wb25lbnQsIEFzc2lnbkFjdGlvbkNvbXBvbmVudCxcclxuICAgIEF2YXRhckNvbXBvbmVudCwgUGVvcGxlQ29tcG9uZW50LCBFZGl0SW5wdXRDb21wb25lbnQsXHJcbiAgICBOZ3hDb21wb25lbnRPdXRsZXQsXHJcbiAgICBCaXpEb2NBcHAsXHJcbiAgICBMb3R0aWVBbmltYXRpb24sXHJcbiAgICBDb250YWN0c0NvbXBvbmVudCxcclxuICAgIEN1YmVNYXRyaXhDb21wb25lbnQsIEZpbHRlclRhZ3NDb21wb25lbnQsIEV4cGxvcmVJdGVtc0NvbXBvbmVudCxcclxuICAgIENvbXBhcmVOYW1lRGlyZWN0aXZlLCBDb21wYXJlR3JvdXBEaXJlY3RpdmUsIENvbXBhcmVDb250ZXh0RGlyZWN0aXZlLFxyXG4gICAgR3VpZGVDb21wb25lbnQsXHJcbiAgICBPdXRPZk9mZmljZVRvYXN0LFxyXG4gICAgTm90aWZpY2F0aW9uc1RhYmxlQ29tcG9uZW50LCBOb3RpZmljYXRpb25zRmlsdGVyQ29tcG9uZW50LFxyXG4gICAgVGFnZ2luZ1BpcGUsXHJcbiAgICBQcml2aWxlZ2VIaWRkZW5EaXJlY3RpdmUsXHJcbiAgICBUYWdnaW5nSXRlbURpcmVjdGl2ZSwgVGFnZ2luZ0RpcmVjdGl2ZSwgRG9jdW1lbnRUYWdnaW5nQ29tcG9uZW50LCBVc2VyVGFnZ2luZ0NvbXBvbmVudCxcclxuICAgIFByaXZpbGVnZURpc2FibGVkRGlyZWN0aXZlLCBDdWJlR3JpZERvY3VtZW50c0NvbXBvbmVudCxcclxuICAgIExvbmdSdW5uaW5nVGFza05vdGlmaWNhdGlvbiwgVGFnZ2VkTm90aWZpY2F0aW9uLCBDb21tZW50ZWROb3RpZmljYXRpb24sIE51ZGdlTm90aWZpY2F0aW9uLCBUZXh0Tm90aWZpY2F0aW9uLCBDdWJlQW5vbWFseU5vdGlmaWNhdGlvbiwgRXNjYWxhdGVkTm90aWZpY2F0aW9uLCBMaWtlZE5vdGlmaWNhdGlvbiwgU3RhdGVDaGFuZ2VkTm90aWZpY2F0aW9uLCBVcGNvbWluZ0V2ZW50Tm90aWZpY2F0aW9uLFxyXG4gICAgTm9uZUNvbXBvbmVudCwgU2NoZWR1bGVWaWV3Q29tcG9uZW50LFxyXG4gICAgT3B0aW9uc0NvbXBvbmVudCwgVHJhY2VWaWV3Q29tcG9uZW50LFxyXG4gICAgUHJvZ3Jlc3NCdXR0b25EaXJlY3RpdmUsXHJcbiAgICBBdHRhY2htZW50c0NvbXBvbmVudCxcclxuICAgIERvY3VtZW50RXZlbnRzQ29tcG9uZW50LFxyXG4gICAgVGFnc0NvbXBvbmVudCxcclxuICAgIE1hcENvbXBvbmVudCxcclxuICAgIE1hc2tDb21wb25lbnQsXHJcbiAgICBTYXZlQ2hhbmdlc0RpYWxvZyxcclxuICAgIEZsb3dWaWV3Q29tcG9uZW50LFxyXG4gICAgU3Vic3RpdHV0aW9uQ29tcG9uZW50LFxyXG4gICAgUG9wdXBDb21wb25lbnQsXHJcbiAgICBBdHRhY2htZW50UHJldmlldywgQ29tbWVudHNDb21wb25lbnQsIENvbW1lbnRDb21wb25lbnQsIEVkaXRDb21tZW50Q29tcG9uZW50LCBDb21tZW50TGlrZXNDb21wb25lbnQsIENvbW1lbnRFZGl0c0NvbXBvbmVudCxcclxuICAgIEJyb3dzZUl0ZW1zQ29tcG9uZW50LFxyXG4gICAgQnJvd3NlRmlsdGVyQ29tcG9uZW50LCBFeHBhbmRlZEl0ZW1Db21wb25lbnQsXHJcbiAgICBDb21wb3NlRm9ybUNvbXBvbmVudCxcclxuICAgIEN1YmVWaWV3Q29tcG9uZW50LFxyXG4gICAgQ3ViZUZpbHRlckNvbXBvbmVudCxcclxuICAgIEN1YmVBY2N1bXVsYXRpb25DaGFydENvbXBvbmVudCxcclxuICAgIEN1YmVDaGFydENvbXBvbmVudCwgQ3ViZVBpdm90Q29tcG9uZW50LFxyXG4gICAgQ3ViZVNwcmVhZHNoZWV0Q29tcG9uZW50LFxyXG4gICAgQ3ViZUdyaWRDb21wb25lbnQsXHJcbiAgICBSZXBvcnRWaWV3ZXJDb21wb25lbnQsIFRhYmxlVmlld0NvbXBvbmVudCwgUmVwb3J0QXJndW1lbnRzQ29tcG9uZW50LFxyXG4gICAgRGFzaGJvYXJkQ29tcG9uZW50LCBXaWRnZXRJdGVtQ29tcG9uZW50LCBDdWJlV2lkZ2V0RmlsdGVyQ29tcG9uZW50LCBDdWJlQWNjdW1BbmFseXNpc1dpZGdldCwgQ3ViZUFuYWx5c2lzV2lkZ2V0LCBDdWJlQ2hhcnRBbmFseXNpc1dpZGdldCwgQWN0aW9uc1dpZGdldCwgUmVjZW50c1dpZGdldCxcclxuICAgIEFza0RpYWxvZywgQWJvdXREaWFsb2csIEFjdGlvbkRpYWxvZyxcclxuICAgIEltcGVyc29uYXRlRGlhbG9nLFxyXG4gICAgQ29udmVyc2F0aW9uQ29tcG9uZW50LCBDdWJlTWF0cml4UG9wdXBDb21wb25lbnQsXHJcbiAgICBWZXJzaW9uQ29tcGFyZUNvbXBvbmVudCwgRXhwbG9yZURvY3VtZW50Q29tcG9uZW50LCBUYXNrc0NvbXBvbmVudCxcclxuICAgIFBlbmRpbmdSZXN1bHRzV2lkZ2V0LCBDb21wYXJlRGVwYXJ0bWVudHNXaWRnZXQsIEN1YmVEb2N1bWVudHNDb21wb25lbnQsIEN1YmVEb2N1bWVudHNXaWRnZXQsXHJcbiAgICBQZXJzb25hbFNjb3JlV2lkZ2V0LCBQZXJzb25hbEFjdGl2aXR5V2lkZ2V0LCBQZWVyc1BlcmZvcm1hbmNlV2lkZ2V0LCBVc2FnZVBpdm90Q29tcG9uZW50LCBVc2FnZUNoYXJ0Q29tcG9uZW50LCBVc2FnZVJlcG9ydEFyZ3MsXHJcbiAgICBFbW9qaUhvc3RDb21wb25lbnQsIFRvb2x0aXBEaXJlY3RpdmUsIFRvb2x0aXBDb21wb25lbnRdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEh0dHBDbGllbnRNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgRmxleExheW91dE1vZHVsZSxcclxuICAgIFJvdXRlck1vZHVsZSxcclxuICAgIFBpY2tlck1vZHVsZSxcclxuICAgIFN5bmNmdXNpb25HYW50dE1vZHVsZSxcclxuICAgIFN5bmNmdXNpb25TY2hlZHVsZU1vZHVsZSwgXHJcbiAgICBTeW5jZnVzaW9uQ2lyY3VsYXJHYXVnZU1vZHVsZSxcclxuICAgIFN5bmNmdXNpb25DaGFydE1vZHVsZSxcclxuICAgIFN5bmNmdXNpb25HYW50dE1vZHVsZSxcclxuICAgIFN5bmNmdXNpb25HcmlkTW9kdWxlLFxyXG4gICAgU3luY2Z1c2lvblRleHRFZGl0b3JNb2R1bGUsXHJcbiAgICBTeW5jZnVzaW9uU3ByZWFkc2hlZXRNb2R1bGUsXHJcbiAgICBTeW5jZnVzaW9uUGl2b3RNb2R1bGUsXHJcbiAgICBLYW5iYW5Nb2R1bGUsXHJcbiAgICBTeW5jZnVzaW9uRGlhZ3JhbU1vZHVsZSxcclxuICAgIE1hdGVyaWFsTW9kdWxlXHJcbiAgXSxcclxuICBwcm92aWRlcnM6IFtQb3B1cCwgQ29tcG9zZURpc21pc3MsIEl0ZW1SZXNvbHZlU2VydmljZSxcclxuICAgIFJlY2lwaWVudFJlc29sdmVTZXJ2aWNlLCBEb2N1bWVudFJlc29sdmVTZXJ2aWNlLFxyXG4gICAgQXR0YWNobWVudEluZm8sIE1hcEluZm8sIEN1YmVJbmZvLFxyXG4gICAgQ2FuRGVhY3RpdmF0ZUNvbXBvc2UsIE1haWxib3hTZXJ2aWNlLCBTZXNzaW9uU2VydmljZSwgSHViU2VydmljZSxcclxuICAgIEFjY291bnRTZXJ2aWNlLFxyXG4gICAgU2F2ZUNoYW5nZXNEaWFsb2csXHJcbiAgICBEYXRlUmFuZ2VQaXBlLCBBZ29QaXBlLCBEdXJhdGlvbkZvcm1hdFBpcGUsXHJcbiAgICBEb2N1bWVudEluZm8sIENvb2tpZVNlcnZpY2UsXHJcbiAgICBXaW5kb3dUaXRsZVNlcnZpY2UsIE5vdGlmaWNhdGlvbnNTZXJ2aWNlLFxyXG4gICAgQ3ViZVNlcnZpY2UsIERhdGFzb3VyY2VTZXJ2aWNlLFxyXG4gICAgQWNjb3VudFNlcnZpY2UsIENoYXRTZXJ2aWNlLCBDaGF0SW5mbyxcclxuICAgIEd1aWRlU2VydmljZSwgT3B0aW9uc1NlcnZpY2UsIFxyXG4gICAgQml6RG9jQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBQcm9tcHRTZXJ2aWNlLCBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgLy97IHByb3ZpZGU6IExPQ0FMRV9JRCwgdXNlQ2xhc3M6IFNlc3Npb25TZXJ2aWNlLmdldExvY2FsZSgpIH0sXHJcbiAgICB7IHByb3ZpZGU6IEhUVFBfSU5URVJDRVBUT1JTLCB1c2VDbGFzczogQXBwSHR0cEludGVyY2VwdG9yLCBtdWx0aTogdHJ1ZSB9LFxyXG4gICAgeyBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsIHVzZUZhY3Rvcnk6IFRyYW5zbGF0ZVByb3ZpZGVyRmFjdG9yeSwgZGVwczogW1RyYW5zbGF0ZVNlcnZpY2VdLCBtdWx0aTogdHJ1ZSB9LFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW0ZpbGVJbnB1dCxcclxuICAgIERhdGVGb3JtYXRQaXBlLCBDYWxlbmRhclBpcGUsIERpZmZlcmVuY2VQaXBlLCBEdXJhdGlvblBpcGUsIFRpbWVBZ29QaXBlLFxyXG4gICAgQ2hlY2tib3hDb21wb25lbnQsIEN1YmVQYXJhbGxlbENvbXBvbmVudCwgQ3ViZVN1bUNvbXBvbmVudCwgRXhwbG9yZUl0ZW1JbXBsQ29tcG9uZW50LCBEb2N1bWVudEluZm9Db21wb25lbnQsIERvY3VtZW50Vmlld3NDb21wb25lbnQsIERhc2hib2FyZENvbXBvbmVudCxcclxuICAgIFRhZ3NDb21wb25lbnQsIFF1aWNrQ29tbWVudENvbXBvbmVudCxcclxuICAgIE1hdGVyaWFsTW9kdWxlLCBDb21tZW50c0NvbXBvbmVudCwgQnJva2VuUGFnZSxcclxuICAgIEFjdGlvbkRpYWxvZywgQnJvd3NlRmlsdGVyQ29tcG9uZW50LCBDdWJlRmlsdGVyQ29tcG9uZW50LCBTY2hlZHVsZVZpZXdDb21wb25lbnQsIFJlcG9ydFZpZXdlckNvbXBvbmVudCwgV2lkZ2V0SXRlbUNvbXBvbmVudCwgQ3ViZVZpZXdDb21wb25lbnQsXHJcbiAgICBFeHBsb3JlSXRlbXNDb21wb25lbnQsIENvbXBvc2VGb3JtQ29tcG9uZW50LCBCcm93c2VJdGVtc0NvbXBvbmVudCwgTm90aWZpY2F0aW9uc1RhYmxlQ29tcG9uZW50LFxyXG4gICAgQWN0aW9uUGlja2VyLCBDb252ZXJzYXRpb25Db21wb25lbnQsIFN0YXRlRGlyZWN0aXZlLFxyXG4gICAgQ29udGFjdHNDb21wb25lbnQsIEN1YmVNYXRyaXhDb21wb25lbnQsXHJcbiAgICBEdXJhdGlvbkZvcm1hdFBpcGUsIENvbWJpbmF0aW9uUGlja2VyLCBDb21iaW5hdGlvblBvb2wsIFRpbWVQaWNrZXIsXHJcbiAgICBUb29sdGlwRGlyZWN0aXZlLCBEYXRlUmFuZ2VQaXBlLFxyXG4gICAgTmd4Q29tcG9uZW50T3V0bGV0LCBNYXRJY29uQW5pbWF0ZSxcclxuICAgIEFjZUlucHV0LCBKb2luUGlwZSxcclxuICAgIFR5cGVWYWx1ZVBpcGUsIFR5cGVTZWxlY3QsIFR5cGVBdXRvY29tcGxldGUsIFN0YXRlUGlwZSwgQWN0aW9uUGlwZSwgUm9sZVBpcGUsIEZvcm1QaXBlLCBGaWx0ZXJQaXBlLCBBcnJheVNvcnRQaXBlLCBVc2VyTmFtZVBpcGUsIFNhbml0aXplSHRtbFBpcGUsXHJcbiAgICBUcmFuc2xhdGVQaXBlLCBJZGVudGl0eU5hbWUsXHJcbiAgICBBZGRyZXNzSW5wdXQsIEF2YXRhckNvbXBvbmVudCwgUmVwb3J0QXJndW1lbnRzQ29tcG9uZW50LFxyXG4gICAgQml6RG9jQXBwLCBBdHRhY2htZW50UHJldmlldywgUHJpdmlsZWdlSGlkZGVuRGlyZWN0aXZlLFxyXG4gICAgUHJpdmlsZWdlRGlzYWJsZWREaXJlY3RpdmUsIENvbXBhcmVHcm91cERpcmVjdGl2ZSwgQ29tcGFyZU5hbWVEaXJlY3RpdmUsIENvbXBhcmVDb250ZXh0RGlyZWN0aXZlLCBUcmFjZVZpZXdDb21wb25lbnQsIEZsb3dWaWV3Q29tcG9uZW50LFxyXG4gICAgQXNzaWduQWN0aW9uQ29tcG9uZW50LCBSZXR1cm5BY3Rpb25Db21wb25lbnQsIEV4cGxvcmVEb2N1bWVudENvbXBvbmVudCxcclxuICAgIEFjdGlvbnNXaWRnZXQsIEN1YmVBbmFseXNpc1dpZGdldCwgQ3ViZURvY3VtZW50c1dpZGdldCwgUmVjZW50c1dpZGdldCwgUGVyc29uYWxBY3Rpdml0eVdpZGdldCxcclxuICAgIENvbXBhcmVEZXBhcnRtZW50c1dpZGdldCwgUGVlcnNQZXJmb3JtYW5jZVdpZGdldCwgUGVuZGluZ1Jlc3VsdHNXaWRnZXQsIFBlcnNvbmFsU2NvcmVXaWRnZXQsIEN1YmVXaWRnZXRGaWx0ZXJDb21wb25lbnQsXHJcbiAgICBDdWJlRG9jdW1lbnRzQ29tcG9uZW50LCBDdWJlR3JpZERvY3VtZW50c0NvbXBvbmVudCwgVGFza3NDb21wb25lbnQsIFVzYWdlUmVwb3J0QXJncywgVXNhZ2VDaGFydENvbXBvbmVudCwgVXNhZ2VQaXZvdENvbXBvbmVudCwgVGltZXNwYW5JbnB1dCxcclxuICAgIFZlcnNpb25Db21wYXJlQ29tcG9uZW50LCBMb3R0aWVBbmltYXRpb24sXHJcbiAgICBDdWJlQWNjdW11bGF0aW9uQ2hhcnRDb21wb25lbnQsXHJcbiAgICBDdWJlQ2hhcnRDb21wb25lbnQsIEN1YmVQaXZvdENvbXBvbmVudCxcclxuICAgIEN1YmVTcHJlYWRzaGVldENvbXBvbmVudCxcclxuICAgIEN1YmVHcmlkQ29tcG9uZW50XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2hhcmVkTW9kdWxlIHtcclxuICBzdGF0aWMgZm9yQ2hpbGQoY29uZmlnPzogU2hhcmVkQ29uZmlnKTogTW9kdWxlV2l0aFByb3ZpZGVyczxTaGFyZWRNb2R1bGU+IHtcclxuICAgIGNvbnN0IHsgZm9ybWF0cyB9ID0gY29uZmlnIHx8IHt9O1xyXG4gICAgcmVnaXN0ZXJDb21wb25lbnRzKENPUkVfQ09NUE9ORU5UUyk7XHJcbiAgICBjb25zdCBwcm92aWRlcnMgPSBbe1xyXG4gICAgICBwcm92aWRlOiBSb3V0ZXJJbXBsLCB1c2VDbGFzczogIWNvbmZpZyB8fCAhY29uZmlnLnJvdXRpbmcgfHwgY29uZmlnLnJvdXRpbmcgPT09ICduZycgPyBOZ1JvdXRlciA6IFBhbmVSb3V0ZXJcclxuICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBwcm92aWRlOiBNQVRfREFURV9GT1JNQVRTLCB1c2VWYWx1ZToge1xyXG4gICAgICAgICAgcGFyc2U6IHtcclxuICAgICAgICAgICAgZGF0ZUlucHV0OiAnTEwnLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGRpc3BsYXk6IHtcclxuICAgICAgICAgICAgZGF0ZUlucHV0OiAoZm9ybWF0cyB8fCB7fSkuZGF0ZSB8fCAnbGwnLFxyXG4gICAgICAgICAgICBtb250aFllYXJMYWJlbDogJ01NTSBZWVlZJyxcclxuICAgICAgICAgICAgZGF0ZUExMXlMYWJlbDogJ0xMJyxcclxuICAgICAgICAgICAgbW9udGhZZWFyQTExeUxhYmVsOiAnTU1NTSBZWVlZJyxcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH0gICAgXSBhcyBQcm92aWRlcltdO1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgbmdNb2R1bGU6IFNoYXJlZE1vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
510
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvc2hhcmVkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFrQyxRQUFRLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDcEcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzlELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzdELE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9ELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSwyQkFBMkIsRUFB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Q2xFLGdCQUFnQixFQUFFLGFBQWE7d0JBQy9CLGtCQUFrQixFQUFFLGNBQWM7d0JBQ2xDLFFBQVEsRUFBRSxRQUFRO3dCQUNsQixhQUFhLEVBQUUsVUFBVSxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxnQkFBZ0I7d0JBQ2pKLGFBQWEsRUFBRSxZQUFZO3dCQUMzQixZQUFZLEVBQUUsZUFBZSxFQUFFLHdCQUF3Qjt3QkFDdkQsU0FBUyxFQUFFLGlCQUFpQixFQUFFLHdCQUF3Qjt3QkFDdEQsMEJBQTBCLEVBQUUscUJBQXFCLEVBQUUsb0JBQW9CLEVBQUUsdUJBQXVCLEVBQUUsa0JBQWtCLEVBQUUsaUJBQWlCO3dCQUN2SSxxQkFBcUIsRUFBRSxxQkFBcUIsRUFBRSx3QkFBd0I7d0JBQ3RFLGFBQWEsRUFBRSxrQkFBa0IsRUFBRSxtQkFBbUIsRUFBRSxhQUFhLEVBQUUsc0JBQXNCO3dCQUM3Rix3QkFBd0IsRUFBRSxzQkFBc0IsRUFBRSxvQkFBb0IsRUFBRSxtQkFBbUIsRUFBRSx5QkFBeUI7d0JBQ3RILHNCQUFzQixFQUFFLDBCQUEwQixFQUFFLGNBQWMsRUFBRSxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsbUJBQW1CLEVBQUUsYUFBYTt3QkFDNUksdUJBQXVCLEVBQUUsZUFBZTt3QkFDeEMsOEJBQThCO3dCQUM5QixrQkFBa0IsRUFBRSxrQkFBa0I7d0JBQ3RDLHdCQUF3Qjt3QkFDeEIsaUJBQWlCO3FCQUNsQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFQUF9JTklUSUFMSVpFUiwgTE9DQUxFX0lELCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSwgUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTUFUX0RBVEVfRk9STUFUUyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlLCBIVFRQX0lOVEVSQ0VQVE9SUyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgRmxleExheW91dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2ZsZXgtbGF5b3V0JztcclxuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgUGlja2VyTW9kdWxlIH0gZnJvbSAnQGN0cmwvbmd4LWVtb2ppLW1hcnQnO1xyXG5pbXBvcnQgeyBLYW5iYW5Nb2R1bGUgfSBmcm9tICdAc3luY2Z1c2lvbi9lajItYW5ndWxhci1rYW5iYW4nO1xyXG5pbXBvcnQgeyBTeW5jZnVzaW9uVGV4dEVkaXRvck1vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy90ZXh0ZWRpdG9yLm1vZHVsZSc7XHJcbmltcG9ydCB7IFN5bmNmdXNpb25DaGFydE1vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy9jaGFydC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBTeW5jZnVzaW9uRGlhZ3JhbU1vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy9kaWFncmFtLm1vZHVsZSc7XHJcbmltcG9ydCB7IFN5bmNmdXNpb25HcmlkTW9kdWxlIH0gZnJvbSAnLi9tb2R1bGVzL2dyaWQubW9kdWxlJztcclxuaW1wb3J0IHsgU3luY2Z1c2lvbkNpcmN1bGFyR2F1Z2VNb2R1bGUgfSBmcm9tICcuL21vZHVsZXMvY2lyY3VsYXItZ2F1Z2UubW9kdWxlJztcclxuaW1wb3J0IHsgU3luY2Z1c2lvblBpdm90TW9kdWxlIH0gZnJvbSAnLi9tb2R1bGVzL3Bpdm90Lm1vZHVsZSc7XHJcbmltcG9ydCB7IFN5bmNmdXNpb25TY2hlZHVsZU1vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy9zY2hlZHVsZS5tb2R1bGUnO1xyXG5pbXBvcnQgeyBTeW5jZnVzaW9uU3ByZWFkc2hlZXRNb2R1bGUgfSBmcm9tICcuL21vZHVsZXMvc3ByZWFkc2hlZXQubW9kdWxlJztcclxuaW1wb3J0IHsgU3luY2Z1c2lvbkdhbnR0TW9kdWxlIH0gZnJvbSAnLi9tb2R1bGVzL2dhbnR0Lm1vZHVsZSc7XHJcbmltcG9ydCB7IENvb2tpZVNlcnZpY2UgfSBmcm9tICduZ3gtY29va2llLXNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNYXRlcmlhbE1vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy9tYXRlcmlhbC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBDaGF0U2VydmljZSB9IGZyb20gJy4vY2hhdC9jaGF0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDYW5EZWFjdGl2YXRlQ29tcG9zZSB9IGZyb20gJy4vY29tcG9zZS9jYW4tZGVhY3RpdmF0ZS1jaGFuZ2VzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBSZWNpcGllbnRSZXNvbHZlU2VydmljZSwgRG9jdW1lbnRSZXNvbHZlU2VydmljZSB9IGZyb20gJy4vY29tcG9zZS9jb21wb3NlLXJlc29sdmUuc2VydmljZSc7XHJcbmltcG9ydCB7IENvbXBvc2VEaXNtaXNzIH0gZnJvbSAnLi9jb21wb3NlL2Rpc21pc3Muc2VydmljZSc7XHJcbmltcG9ydCB7IEJpekRvY0NvbXBvbmVudEZhY3RvcnlSZXNvbHZlciB9IGZyb20gJy4vY29yZS9jb21wb25lbnQtZmFjdG9yeS1yZXNvbHZlcic7XHJcbmltcG9ydCB7IEh1YlNlcnZpY2UgfSBmcm9tICcuL2NvcmUvaHViLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQcm9tcHRTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3Byb21wdC5zZXJ2aWNlJzsgXHJcbmltcG9ydCB7IFdpbmRvd1RpdGxlU2VydmljZSB9IGZyb20gJy4vY29yZS93aW5kb3ctdGl0bGUuc2VydmljZSc7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvbnNTZXJ2aWNlIH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMuc2VydmljZSc7XHJcbmltcG9ydCB7IE9wdGlvbnNTZXJ2aWNlIH0gZnJvbSAnLi9vcHRpb25zL29wdGlvbnMuc2VydmljZSc7XHJcbmltcG9ydCB7IEFjZUlucHV0IH0gZnJvbSAnLi9hZG1pbi9jb3JlL2FjZS5pbnB1dCc7XHJcbmltcG9ydCB7IEV4cGFuZGVkSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vYnJvd3NlL2V4cGFuZGVkLWl0ZW0vZXhwYW5kZWQtaXRlbS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb250YWN0c0NvbXBvbmVudCwgSHRtbFNpbXBsZVBpcGUgfSBmcm9tICcuL2NoYXQvY29udGFjdHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29udmVyc2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jaGF0L2NvbnZlcnNhdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBc3NpZ25BY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvYWN0aW9uL2Fzc2lnbi1hY3Rpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmV0dXJuQWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb3NlL2FjdGlvbi9yZXR1cm4tYWN0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEF0dGFjaG1lbnRzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb3NlL2F0dGFjaG1lbnRzL2F0dGFjaG1lbnRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFByb2dyZXNzRGlyZWN0aXZlIH0gZnJvbSAnLi9jb21wb3NlL2F0dGFjaG1lbnRzL3Byb2dyZXNzLWJ1dHRvbi5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDb21tZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb3NlL2NvbW1lbnRzL2NvbW1lbnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tbWVudHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvY29tbWVudHMvY29tbWVudHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRWRpdENvbW1lbnRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvY29tbWVudHMvZWRpdC1jb21tZW50LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbW1lbnRFZGl0c0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS9jb21tZW50cy9lZGl0cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb21tZW50TGlrZXNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvY29tbWVudHMvdm90ZXMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRG9jdW1lbnRFdmVudHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvZXZlbnRzL2V2ZW50cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTYXZlQ2hhbmdlc0RpYWxvZyB9IGZyb20gJy4vY29tcG9zZS9zYXZlLWNoYW5nZXMuZGlhbG9nJztcclxuaW1wb3J0IHsgVGFnc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS90YWcvdGFncy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQZW9wbGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvdHJhY2UvcGVvcGxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFZlcnNpb25Db21wYXJlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb3NlL3ZlcnNpb24tY29tcGFyZS92ZXJzaW9uLWNvbXBhcmUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0SWNvbkFuaW1hdGUgfSBmcm9tICcuL2NvcmUvYW5pbWF0ZWQtaWNvbi9hbmltYXRlZC1pY29uLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFRpbWVzcGFuSW5wdXQgfSBmcm9tICcuL2NvcmUvY29udHJvbHMvdGltZXNwYW4uaW5wdXQnO1xyXG5pbXBvcnQgeyBHdWlkZUNvbXBvbmVudCB9IGZyb20gJy4vY29yZS9ndWlkZS9ndWlkZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXBDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvaW5mby9sb2NhdGlvbi1pbmZvLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEF1dG9jb21wbGV0ZUZpZWxkIH0gZnJvbSAnLi9jb3JlL2xheW91dC9hdXRvY29tcGxldGUuZmllbGQnO1xyXG5pbXBvcnQgeyBDaGVja0ZpZWxkIH0gZnJvbSAnLi9jb3JlL2xheW91dC9jaGVja2JveC5maWVsZCc7XHJcbmltcG9ydCB7IERhdGVSYW5nZUZpZWxkIH0gZnJvbSAnLi9jb3JlL2xheW91dC9kYXRlLXJhbmdlLmZpZWxkJztcclxuaW1wb3J0IHsgRGF0ZUZpZWxkIH0gZnJvbSAnLi9jb3JlL2xheW91dC9kYXRlLmZpZWxkJztcclxuaW1wb3J0IHsgRXhwcmVzc2lvbkZpZWxkIH0gZnJvbSAnLi9jb3JlL2xheW91dC9leHByZXNzaW9uLmZpZWxkJztcclxuaW1wb3J0IHsgSHRtbEZpZWxkIH0gZnJvbSAnLi9jb3JlL2xheW91dC9odG1sLmZpZWxkJztcclxuaW1wb3J0IHsgSW5wdXRGaWVsZCB9IGZyb20gJy4vY29yZS9sYXlvdXQvaW5wdXQuZmllbGQnO1xyXG5pbXBvcnQgeyBMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvbGF5b3V0L2xheW91dC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOdW1lcmljRmllbGQgfSBmcm9tICcuL2NvcmUvbGF5b3V0L251bWVyaWMuZmllbGQnO1xyXG5pbXBvcnQgeyBTZWxlY3RGaWVsZCB9IGZyb20gJy4vY29yZS9sYXlvdXQvc2VsZWN0LmZpZWxkJztcclxuaW1wb3J0IHsgU3dpdGNoRmllbGQgfSBmcm9tICcuL2NvcmUvbGF5b3V0L3N3aXRjaC5maWVsZCc7XHJcbmltcG9ydCB7IFRleHRhcmVhRmllbGQgfSBmcm9tICcuL2NvcmUvbGF5b3V0L3RleHRhcmVhLmZpZWxkJztcclxuaW1wb3J0IHsgVGltZXNwYW5GaWVsZCB9IGZyb20gJy4vY29yZS9sYXlvdXQvdGltZXNwYW4uZmllbGQnO1xyXG5pbXBvcnQgeyBMb3R0aWVBbmltYXRpb24gfSBmcm9tICcuL2NvcmUvbG90dGllLWFuaW1hdGlvbic7XHJcbmltcG9ydCB7IE5neENvbXBvbmVudE91dGxldCB9IGZyb20gJy4vY29yZS9OZ0NvbXBvbmVudE91dGxldCc7XHJcbmltcG9ydCB7IE5vbmVDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvbm9uZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQb3B1cENvbXBvbmVudCB9IGZyb20gJy4vY29yZS9wb3B1cC9wb3B1cC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBc2tEaWFsb2cgfSBmcm9tICcuL2NvcmUvcHJvbXB0L2Fzay9hc2suZGlhbG9nJztcclxuaW1wb3J0IHsgTWFza0NvbXBvbmVudCB9IGZyb20gJy4vY29yZS9wcm9tcHQvbWFzay9tYXNrLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERvY3VtZW50VGFnZ2luZ0NvbXBvbmVudCB9IGZyb20gJy4vY29yZS90YWdnaW5nL2RvY3VtZW50cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFZGl0SW5wdXRDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvdGFnZ2luZy9lZGl0LWlucHV0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEVtb2ppSG9zdENvbXBvbmVudCB9IGZyb20gJy4vY29yZS90YWdnaW5nL2Vtb2ppLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRhZ2dpbmdJdGVtRGlyZWN0aXZlIH0gZnJvbSAnLi9jb3JlL3RhZ2dpbmcvdGFnZ2luZy1pdGVtLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFRhZ2dpbmdEaXJlY3RpdmUgfSBmcm9tICcuL2NvcmUvdGFnZ2luZy90YWdnaW5nLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFRhZ2dpbmdQaXBlIH0gZnJvbSAnLi9jb3JlL3RhZ2dpbmcvdGFnZ2luZy5waXBlJztcclxuaW1wb3J0IHsgVXNlclRhZ2dpbmdDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvdGFnZ2luZy91c2Vycy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFeHBsb3JlRG9jdW1lbnRDb21wb25lbnQgfSBmcm9tICcuL2N1YmUvZXhwbG9yZS9kb2N1bWVudC1pdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZpbHRlclRhZ3NDb21wb25lbnQgfSBmcm9tICcuL2N1YmUvZmlsdGVyL2ZpbHRlci10YWdzLmNvbXBvbmVudC5leHAnO1xyXG5pbXBvcnQgeyBDdWJlQWNjdW11bGF0aW9uQ2hhcnRDb21wb25lbnQgfSBmcm9tICcuL2N1YmUvYWNjdW0vYWNjdW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZUNoYXJ0Q29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL2NoYXJ0L2NoYXJ0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1YmVHcmlkQ29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL2dyaWQvZ3JpZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlU3ByZWFkc2hlZXRDb21wb25lbnQgfSBmcm9tICcuL2N1YmUvZ3JpZC9zcHJlYWRzaGVldC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlUGl2b3RDb21wb25lbnQgfSBmcm9tICcuL2N1YmUvcGl2b3QvcGl2b3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZU1hdHJpeFBvcHVwQ29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL21hdHJpeC9wb3B1cC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlTWF0cml4Q29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL21hdHJpeC90YWJsZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEYXNoYm9hcmRDb21wb25lbnQgfSBmcm9tICcuL2Rhc2hib2FyZC9kYXNoYm9hcmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQWN0aW9uc1dpZGdldCB9IGZyb20gJy4vZGFzaGJvYXJkL2FjdGlvbnMvYWN0aW9ucy53aWRnZXQnO1xyXG5pbXBvcnQgeyBDdWJlQWNjdW1BbmFseXNpc1dpZGdldCB9IGZyb20gJy4vZGFzaGJvYXJkL2N1YmUvYWNjdW0tY3ViZS53aWRnZXQnO1xyXG5pbXBvcnQgeyBDdWJlQW5hbHlzaXNXaWRnZXQgfSBmcm9tICcuL2Rhc2hib2FyZC9jdWJlL2N1YmUtYW5hbHlzaXMud2lkZ2V0JztcclxuaW1wb3J0IHsgQ3ViZUNoYXJ0QW5hbHlzaXNXaWRnZXQgfSBmcm9tICcuL2Rhc2hib2FyZC9jdWJlL2N1YmUtY2hhcnQud2lkZ2V0JztcclxuaW1wb3J0IHsgQ3ViZURvY3VtZW50c1dpZGdldCB9IGZyb20gJy4vZGFzaGJvYXJkL2N1YmUvZG9jdW1lbnRzLndpZGdldCc7XHJcbmltcG9ydCB7IEN1YmVXaWRnZXRGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL2Rhc2hib2FyZC9jdWJlL2ZpbHRlci9maWx0ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmVjZW50c1dpZGdldCB9IGZyb20gJy4vZGFzaGJvYXJkL3JlY2VudHMvcmVjZW50cy53aWRnZXQnO1xyXG5pbXBvcnQgeyBQZXJzb25hbEFjdGl2aXR5V2lkZ2V0IH0gZnJvbSAnLi9kYXNoYm9hcmQvc2NvcmUvYWN0aXZpdHkud2lkZ2V0JztcclxuaW1wb3J0IHsgQ29tcGFyZURlcGFydG1lbnRzV2lkZ2V0IH0gZnJvbSAnLi9kYXNoYm9hcmQvc2NvcmUvY29tcGFyZS1kZXBhcnRtZW50cy53aWRnZXQnO1xyXG5pbXBvcnQgeyBQZWVyc1BlcmZvcm1hbmNlV2lkZ2V0IH0gZnJvbSAnLi9kYXNoYm9hcmQvc2NvcmUvcGVlcnMtcGVyZm9ybWFuY2Uud2lkZ2V0JztcclxuaW1wb3J0IHsgUGVuZGluZ1Jlc3VsdHNXaWRnZXQgfSBmcm9tICcuL2Rhc2hib2FyZC9zY29yZS9wZW5kaW5nLXJlc3VsdHMud2lkZ2V0JztcclxuaW1wb3J0IHsgUGVyc29uYWxTY29yZVdpZGdldCB9IGZyb20gJy4vZGFzaGJvYXJkL3Njb3JlL3BlcnNvbmFsLXNjb3JlLndpZGdldCc7XHJcbmltcG9ydCB7IEFib3V0RGlhbG9nIH0gZnJvbSAnLi9ob21lL2Fib3V0L2Fib3V0LmRpYWxvZyc7XHJcbmltcG9ydCB7IEltcGVyc29uYXRlRGlhbG9nIH0gZnJvbSAnLi9pbXBlcnNvbmF0ZS9pbXBlcnNvbmF0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb21tZW50ZWROb3RpZmljYXRpb24gfSBmcm9tICcuL25vdGlmaWNhdGlvbnMvdHlwZXMvY29tbWVudGVkLm5vdGlmaWNhdGlvbic7XHJcbmltcG9ydCB7IEN1YmVBbm9tYWx5Tm90aWZpY2F0aW9uIH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL3R5cGVzL2N1YmUtYW5vbWFseS5ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBFc2NhbGF0ZWROb3RpZmljYXRpb24gfSBmcm9tICcuL25vdGlmaWNhdGlvbnMvdHlwZXMvZXNjYWxhdGVkLm5vdGlmaWNhdGlvbic7XHJcbmltcG9ydCB7IExpa2VkTm90aWZpY2F0aW9uIH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL3R5cGVzL2xpa2VkLm5vdGlmaWNhdGlvbic7XHJcbmltcG9ydCB7IExvbmdSdW5uaW5nVGFza05vdGlmaWNhdGlvbiB9IGZyb20gJy4vbm90aWZpY2F0aW9ucy90eXBlcy9sb25nLXJ1bm5pbmctdGFzay5ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBOdWRnZU5vdGlmaWNhdGlvbiB9IGZyb20gJy4vbm90aWZpY2F0aW9ucy90eXBlcy9udWRnZS5ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBTdGF0ZUNoYW5nZWROb3RpZmljYXRpb24gfSBmcm9tICcuL25vdGlmaWNhdGlvbnMvdHlwZXMvc3RhdGUtY2hhbmdlZC5ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBUYWdnZWROb3RpZmljYXRpb24gfSBmcm9tICcuL25vdGlmaWNhdGlvbnMvdHlwZXMvdGFnZ2VkLm5vdGlmaWNhdGlvbic7XHJcbmltcG9ydCB7IFRleHROb3RpZmljYXRpb24gfSBmcm9tICcuL25vdGlmaWNhdGlvbnMvdHlwZXMvdGV4dC5ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBVcGNvbWluZ0V2ZW50Tm90aWZpY2F0aW9uIH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL3R5cGVzL3VwY29taW5nLWV2ZW50Lm5vdGlmaWNhdGlvbic7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvbnNUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLXRhYmxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvbnNGaWx0ZXJDb21wb25lbnQgfSBmcm9tIFwiLi9ub3RpZmljYXRpb25zL2ZpbHRlci5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgT3B0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vb3B0aW9ucy9vcHRpb25zLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJlcG9ydEFyZ3VtZW50c0NvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0cy9hcmd1bWVudHMtY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZUdyaWREb2N1bWVudHNDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydHMvY3ViZS9ncmlkLWRvY3VtZW50cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlRG9jdW1lbnRzQ29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnRzL2N1YmUvdGFibGUtZG9jdW1lbnRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVzYWdlUmVwb3J0QXJncyB9IGZyb20gJy4vcmVwb3J0cy9jdWJlL3VzYWdlLWFyZ3MuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVXNhZ2VDaGFydENvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0cy9jdWJlL3VzYWdlLWNoYXJ0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVzYWdlUGl2b3RDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydHMvY3ViZS91c2FnZS1waXZvdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTdWJzdGl0dXRpb25Db21wb25lbnQgfSBmcm9tICcuL3JlcG9ydHMvc3Vic3RpdHV0aW9uL3N1YnN0aXR1dGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUYWJsZVZpZXdDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydHMvdGFibGUvdGFibGUtdmlldy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUYXNrc0NvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0cy90YXNrcy90YXNrcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBY3Rpb25QaWNrZXIgfSBmcm9tICcuL2NvbXBvc2UvYWN0aW9uL2FjdGlvbi1waWNrZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXBwSHR0cEludGVyY2VwdG9yIH0gZnJvbSAnLi9jb3JlL2h0dHAuaW50ZXJjZXB0b3InO1xyXG5pbXBvcnQgeyBCaXpEb2NBcHAsIEJyb2tlblBhZ2UgfSBmcm9tICcuL2FwcC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBZGRyZXNzSW5wdXQgfSBmcm9tICcuL2NvcmUvY29udHJvbHMvYWRkcmVzcy5pbnB1dCc7XHJcbmltcG9ydCB7IFR5cGVTZWxlY3QgfSBmcm9tICcuL2NvcmUvY29udHJvbHMvc2VsZWN0LmlucHV0JztcclxuaW1wb3J0IHsgVHlwZUF1dG9jb21wbGV0ZSB9IGZyb20gJy4vY29yZS9jb250cm9scy9hdXRvLWNvbXBsZXRlLmlucHV0JztcclxuaW1wb3J0IHsgVGltZVBpY2tlciB9IGZyb20gJy4vY29yZS9jb250cm9scy90aW1lLXBpY2tlcic7XHJcbmltcG9ydCB7IENvbG9yUGlja2VyIH0gZnJvbSAnLi9hZG1pbi9jb3JlL2NvbG9yLXBpY2tlci5pbnB1dCc7XHJcbmltcG9ydCB7IENvbWJpbmF0aW9uUGlja2VyQm9keSB9IGZyb20gJy4vY29yZS9jb250cm9scy9jb21iaW5hdGlvbi1waWNrZXItYm9keSc7XHJcbmltcG9ydCB7IENvbWJpbmF0aW9uUG9vbCB9IGZyb20gJy4vY29yZS9jb250cm9scy9jb21iaW5hdGlvbi1wb29sJztcclxuaW1wb3J0IHsgSWRlbnRpdHlOYW1lIH0gZnJvbSAnLi9jb3JlL2lkZW50aXR5L2lkZW50aXR5LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFycmF5U29ydFBpcGUsIEZpbHRlclBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvc29ydC5waXBlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlUGlwZSB9IGZyb20gXCIuL2NvcmUvcGlwZXMvdHJhbnNsYXRlLnBpcGVcIjtcclxuaW1wb3J0IHsgRm9ybVBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvZm9ybS5waXBlJztcclxuaW1wb3J0IHsgUm9sZVBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvcm9sZS5waXBlJztcclxuaW1wb3J0IHsgSm9pblBpcGUgfSBmcm9tIFwiLi9jb3JlL3BpcGVzL2pvaW4ucGlwZVwiO1xyXG5pbXBvcnQgeyBTYW5pdGl6ZUh0bWxQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL3Nhbml0aXplLWh0bWwucGlwZSc7XHJcbmltcG9ydCB7IFR5cGVWYWx1ZVBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvdHlwZS12YWx1ZS5waXBlJztcclxuaW1wb3J0IHsgQWdvUGlwZSwgRGF0ZVJhbmdlUGlwZSB9IGZyb20gXCIuL2NvcmUvcGlwZXMvZGF0ZXJhbmdlLnBpcGVcIjtcclxuaW1wb3J0IHsgRHVyYXRpb25QaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL2R1cmF0aW9uLnBpcGUnO1xyXG5pbXBvcnQgeyBBY3Rpb25QaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL2FjdGlvbi5waXBlJztcclxuaW1wb3J0IHsgU3RhdGVQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL3N0YXRlLnBpcGUnO1xyXG5pbXBvcnQgeyBVc2VyTmFtZVBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvdXNlci1uYW1lLnBpcGUnO1xyXG5pbXBvcnQgeyBCcm93c2VGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL2Jyb3dzZS9maWx0ZXIvZmlsdGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRyYWNlVmlld0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS90cmFjZS90cmFjZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGbG93Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS90cmFjZS9mbG93LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFjdGlvbkRpYWxvZyB9IGZyb20gJy4vY29tcG9zZS9hY3Rpb24vYWN0aW9uLmRpYWxvZyc7XHJcbmltcG9ydCB7IFJlcG9ydFZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0cy9yZXBvcnQtdmlld2VyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEF0dGFjaG1lbnRQcmV2aWV3IH0gZnJvbSAnLi9jb21wb3NlL2F0dGFjaG1lbnRzL3ByZXZpZXcvYXR0YWNobWVudC1wcmV2aWV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFByaXZpbGVnZUhpZGRlbkRpcmVjdGl2ZSwgUHJpdmlsZWdlRGlzYWJsZWREaXJlY3RpdmUgfSBmcm9tICcuL2NvbXBvc2UvcHJpdmlsYWdlLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvbXBhcmVOYW1lRGlyZWN0aXZlLCBDb21wYXJlQ29udGV4dERpcmVjdGl2ZSwgQ29tcGFyZUdyb3VwRGlyZWN0aXZlIH0gZnJvbSAnLi9jb21wb3NlL3ZlcnNpb24tY29tcGFyZS92ZXJzaW9uLWNvbXBhcmUuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ3ViZUZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4vY3ViZS9maWx0ZXIvZmlsdGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3Nlc3Npb24uc2VydmljZSc7XHJcbmltcG9ydCB7IEN1YmVTZXJ2aWNlIH0gZnJvbSAnLi9jdWJlL2N1YmUuc2VydmljZSc7XHJcbmltcG9ydCB7IE1haWxib3hTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL21haWxib3guc2VydmljZSc7XHJcbmltcG9ydCB7IERhdGFzb3VyY2VTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL2RhdGFzb3VyY2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IEFjY291bnRTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL2FjY291bnQuc2VydmljZSc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVByb3ZpZGVyRmFjdG9yeSwgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJy4vY29yZS90cmFuc2xhdGUuc2VydmljZSc7XHJcbmltcG9ydCB7IEd1aWRlU2VydmljZSB9IGZyb20gJy4vY29yZS9ndWlkZS9ndWlkZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRG9jdW1lbnRJbmZvIH0gZnJvbSAnLi9jb3JlL2luZm8vZG9jdW1lbnQtaW5mby5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTWFwSW5mbyB9IGZyb20gXCIuL2NvcmUvaW5mby9tYXAtaW5mb1wiO1xyXG5pbXBvcnQgeyBDdWJlSW5mbyB9IGZyb20gXCIuL2N1YmUvY3ViZS1pbmZvLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgQXR0YWNobWVudEluZm8gfSBmcm9tICcuL2NvcmUvaW5mby9hdHRhY2htZW50LWluZm8uc2VydmljZSc7XHJcbmltcG9ydCB7IEN1YmVWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL2N1YmUtdmlldy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQb3B1cCB9IGZyb20gXCIuL2NvcmUvcG9wdXAvcG9wdXAuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBDb21wb3NlRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS9mb3JtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJyb3dzZUl0ZW1zQ29tcG9uZW50IH0gZnJvbSAnLi9icm93c2UvYnJvd3NlLWl0ZW1zLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEV4cGxvcmVJdGVtc0NvbXBvbmVudCB9IGZyb20gJy4vY3ViZS9leHBsb3JlL2V4cGxvcmUtaXRlbXMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2hhdEluZm8gfSBmcm9tICcuL2NoYXQvY2hhdC1pbmZvJztcclxuaW1wb3J0IHsgU2NoZWR1bGVWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9zY2hlZHVsZXIvc2NoZWR1bGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXZhdGFyQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL2F2YXRhci9hdmF0YXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tYmluYXRpb25QaWNrZXIgfSBmcm9tICcuL2NvcmUvY29udHJvbHMvY29tYmluYXRpb24tcGlja2VyJztcclxuaW1wb3J0IHsgV2lkZ2V0SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vZGFzaGJvYXJkL3dpZGdldC1pdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE91dE9mT2ZmaWNlVG9hc3QgfSBmcm9tICcuL2hvbWUvb3V0b2ZvZmZpY2Uvb3V0b2ZvZmZpY2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgcmVnaXN0ZXJDb21wb25lbnRzIH0gZnJvbSAnLi9jb3JlL2NvbXBvbmVudC1mYWN0b3J5LXJlc29sdmVyJztcclxuaW1wb3J0IHsgVG9vbHRpcERpcmVjdGl2ZSwgVG9vbHRpcENvbXBvbmVudCB9IGZyb20gJy4vY29yZS9wb3B1cC90b29sdGlwLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFF1aWNrQ29tbWVudENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS9jb21tZW50cy9xdWljay1jb21tZW50LmNvbXBvbmVudC5leHAnO1xyXG5pbXBvcnQgeyBEb2N1bWVudFZpZXdzQ29tcG9uZW50IH0gZnJvbSAnLi92aWV3cy92aWV3cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBWaWV3SXRlbUNvbXBvbmVudCB9IGZyb20gXCIuL3ZpZXdzL3ZpZXctaXRlbS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgTmdSb3V0ZXIsIFBhbmVSb3V0ZXIsIFJvdXRlckltcGwgfSBmcm9tICcuL2NvcmUvcm91dGVyJztcclxuaW1wb3J0IHsgRG9jdW1lbnRJbmZvQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9zZS9kb2N1bWVudC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgU2hhcmVkQ29uZmlnIH0gZnJvbSAnLi9jb3JlL2NvbmZpZ3VyYXRpb24nO1xyXG5pbXBvcnQgeyBDdWJlRG9jdW1lbnRNYXRyaXhDb21wb25lbnQgfSBmcm9tICcuL3ZpZXdzL2N1YmUvbWF0cml4LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1YmVEb2N1bWVudFZpZXdDb21wb25lbnQgfSBmcm9tICcuL3ZpZXdzL2N1YmUvdmlldy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUaW1lbGluZVZpZXdDb21wb25lbnQgfSBmcm9tICcuL3ZpZXdzL3RpbWVsaW5lL3RpbWVsaW5lLmNvbXBvbmVudC5leHAnO1xyXG5pbXBvcnQgeyBTdGF0ZURpcmVjdGl2ZSB9IGZyb20gJy4vY29tcG9zZS9zdGF0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBJdGVtUmVzb2x2ZVNlcnZpY2UgfSBmcm9tICcuL2N1YmUvZXhwbG9yZS9pdGVtLXJlc29sdmVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBFeHBsb3JlSXRlbUltcGxDb21wb25lbnQgfSBmcm9tICcuL2N1YmUvZXhwbG9yZS9leHBsb3JlLWl0ZW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZVBpdm90Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vdmlld3MvY3ViZS9waXZvdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlRG9jdW1lbnRTdW1Db21wb25lbnQgfSBmcm9tICcuL3ZpZXdzL2N1YmUvc3VtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1YmVDaGFydFZpZXdDb21wb25lbnQgfSBmcm9tICcuL3ZpZXdzL2N1YmUvY2hhcnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZUV4cGxvcmVWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi92aWV3cy9jdWJlL2V4cGxvcmUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZVBhcmFsbGVsVmlld0NvbXBvbmVudCB9IGZyb20gJy4vdmlld3MvY3ViZS9wYXJhbGxlbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlU3VtQ29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL3N1bS9zdW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZVBhcmFsbGVsQ29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL3BhcmFsbGVsL3BhcmFsbGVsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL2xheW91dC9jaGVja2JveCc7XHJcbmltcG9ydCB7IERpZmZlcmVuY2VQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL2RpZmZlcmVuY2UucGlwZSc7XHJcbmltcG9ydCB7IERhdGVGb3JtYXRQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL2RhdGUtZm9ybWF0LnBpcGUnO1xyXG5pbXBvcnQgeyBDYWxlbmRhclBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvY2FsZW5kYXIucGlwZSc7XHJcbmltcG9ydCB7IFRpbWVBZ29QaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL3RpbWUtYWdvLnBpcGUnO1xyXG5pbXBvcnQgeyBEdXJhdGlvbkZvcm1hdFBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvZHVyYXRpb24tZm9ybWF0LnBpcGUnO1xyXG5pbXBvcnQgeyBGaWxlSW5wdXQgfSBmcm9tICcuL2NvcmUvY29udHJvbHMvZmlsZS5pbnB1dCc7XHJcbmltcG9ydCBkYXlqcyBmcm9tICdkYXlqcyc7XHJcbmltcG9ydCByZWxhdGl2ZVRpbWUgZnJvbSAnZGF5anMvcGx1Z2luL3JlbGF0aXZlVGltZSc7XHJcbmltcG9ydCBkdXJhdGlvbiBmcm9tICdkYXlqcy9wbHVnaW4vZHVyYXRpb24nO1xyXG5pbXBvcnQgY2FsZW5kYXIgZnJvbSAnZGF5anMvcGx1Z2luL2NhbGVuZGFyJztcclxuZGF5anMuZXh0ZW5kKHJlbGF0aXZlVGltZSk7XHJcbmRheWpzLmV4dGVuZChkdXJhdGlvbik7XHJcbmRheWpzLmV4dGVuZChjYWxlbmRhcik7XHJcblxyXG5jb25zdCBDT1JFX0NPTVBPTkVOVFMgPSBbQ3ViZVBhcmFsbGVsVmlld0NvbXBvbmVudCwgQ3ViZUV4cGxvcmVWaWV3Q29tcG9uZW50LCBDdWJlQ2hhcnRWaWV3Q29tcG9uZW50LCBDdWJlRG9jdW1lbnRTdW1Db21wb25lbnQsIEN1YmVEb2N1bWVudE1hdHJpeENvbXBvbmVudCwgQ3ViZURvY3VtZW50Vmlld0NvbXBvbmVudCwgQ3ViZVBpdm90Vmlld0NvbXBvbmVudCwgVGltZWxpbmVWaWV3Q29tcG9uZW50LFxyXG4gIFN1YnN0aXR1dGlvbkNvbXBvbmVudCwgQXNzaWduQWN0aW9uQ29tcG9uZW50LCBSZXR1cm5BY3Rpb25Db21wb25lbnQsIEV4cGxvcmVEb2N1bWVudENvbXBvbmVudCxcclxuICBBY3Rpb25zV2lkZ2V0LCBDdWJlQW5hbHlzaXNXaWRnZXQsIEN1YmVEb2N1bWVudHNXaWRnZXQsIFJlY2VudHNXaWRnZXQsIFBlcnNvbmFsQWN0aXZpdHlXaWRnZXQsXHJcbiAgQ29tcGFyZURlcGFydG1lbnRzV2lkZ2V0LCBQZWVyc1BlcmZvcm1hbmNlV2lkZ2V0LCBQZW5kaW5nUmVzdWx0c1dpZGdldCwgUGVyc29uYWxTY29yZVdpZGdldCwgQ3ViZVdpZGdldEZpbHRlckNvbXBvbmVudCxcclxuICBDdWJlRG9jdW1lbnRzQ29tcG9uZW50LCBDdWJlR3JpZERvY3VtZW50c0NvbXBvbmVudCwgVGFza3NDb21wb25lbnQsIFVzYWdlUmVwb3J0QXJncywgVXNhZ2VDaGFydENvbXBvbmVudCwgVXNhZ2VQaXZvdENvbXBvbmVudFxyXG5dO1xyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW0ZpbGVJbnB1dCwgRGF0ZUZvcm1hdFBpcGUsIENhbGVuZGFyUGlwZSwgRGlmZmVyZW5jZVBpcGUsIER1cmF0aW9uUGlwZSwgVGltZUFnb1BpcGUsXHJcbiAgICBDaGVja2JveENvbXBvbmVudCwgQ3ViZVBhcmFsbGVsQ29tcG9uZW50LCBDdWJlU3VtQ29tcG9uZW50LCBDdWJlUGFyYWxsZWxWaWV3Q29tcG9uZW50LCBDdWJlQ2hhcnRWaWV3Q29tcG9uZW50LCBDdWJlRXhwbG9yZVZpZXdDb21wb25lbnQsIEN1YmVEb2N1bWVudFN1bUNvbXBvbmVudCwgRXhwbG9yZUl0ZW1JbXBsQ29tcG9uZW50LCBEb2N1bWVudEluZm9Db21wb25lbnQsIERvY3VtZW50Vmlld3NDb21wb25lbnQsIFZpZXdJdGVtQ29tcG9uZW50LCBDdWJlRG9jdW1lbnRNYXRyaXhDb21wb25lbnQsIEN1YmVEb2N1bWVudFZpZXdDb21wb25lbnQsIEN1YmVQaXZvdFZpZXdDb21wb25lbnQsIEFjdGlvblBpY2tlciwgSHRtbFNpbXBsZVBpcGUsIFF1aWNrQ29tbWVudENvbXBvbmVudCxcclxuICAgIER1cmF0aW9uRm9ybWF0UGlwZSwgQ29tYmluYXRpb25QaWNrZXIsIENvbWJpbmF0aW9uUGlja2VyQm9keSwgQ29tYmluYXRpb25Qb29sLCBUaW1lbGluZVZpZXdDb21wb25lbnQsXHJcbiAgICBNYXRJY29uQW5pbWF0ZSwgRGF0ZVJhbmdlUGlwZSwgQWdvUGlwZSwgQ29sb3JQaWNrZXIsIFN0YXRlRGlyZWN0aXZlLCBCcm9rZW5QYWdlLFxyXG4gICAgSm9pblBpcGUsIFRpbWVQaWNrZXIsXHJcbiAgICBUeXBlVmFsdWVQaXBlLCBUeXBlU2VsZWN0LCBUeXBlQXV0b2NvbXBsZXRlLCBUcmFuc2xhdGVQaXBlLCBJZGVudGl0eU5hbWUsIFNhbml0aXplSHRtbFBpcGUsXHJcbiAgICBBY2VJbnB1dCwgVGltZXNwYW5JbnB1dCwgQWRkcmVzc0lucHV0LFxyXG4gICAgU3RhdGVQaXBlLCBBY3Rpb25QaXBlLCBSb2xlUGlwZSwgRm9ybVBpcGUsIEZpbHRlclBpcGUsIEFycmF5U29ydFBpcGUsIFVzZXJOYW1lUGlwZSxcclxuICAgIExheW91dENvbXBvbmVudCxcclxuICAgIEh0bWxGaWVsZCwgTnVtZXJpY0ZpZWxkLCBBdXRvY29tcGxldGVGaWVsZCwgQ2hlY2tGaWVsZCwgRGF0ZUZpZWxkLCBEYXRlUmFuZ2VGaWVsZCwgRXhwcmVzc2lvbkZpZWxkLCBJbnB1dEZpZWxkLCBTZWxlY3RGaWVsZCwgU3dpdGNoRmllbGQsIFRleHRhcmVhRmllbGQsIFRpbWVzcGFuRmllbGQsXHJcbiAgICBSZXR1cm5BY3Rpb25Db21wb25lbnQsIEFzc2lnbkFjdGlvbkNvbXBvbmVudCxcclxuICAgIEF2YXRhckNvbXBvbmVudCwgUGVvcGxlQ29tcG9uZW50LCBFZGl0SW5wdXRDb21wb25lbnQsXHJcbiAgICBOZ3hDb21wb25lbnRPdXRsZXQsXHJcbiAgICBCaXpEb2NBcHAsXHJcbiAgICBMb3R0aWVBbmltYXRpb24sXHJcbiAgICBDb250YWN0c0NvbXBvbmVudCxcclxuICAgIEN1YmVNYXRyaXhDb21wb25lbnQsIEZpbHRlclRhZ3NDb21wb25lbnQsIEV4cGxvcmVJdGVtc0NvbXBvbmVudCxcclxuICAgIENvbXBhcmVOYW1lRGlyZWN0aXZlLCBDb21wYXJlR3JvdXBEaXJlY3RpdmUsIENvbXBhcmVDb250ZXh0RGlyZWN0aXZlLFxyXG4gICAgR3VpZGVDb21wb25lbnQsXHJcbiAgICBPdXRPZk9mZmljZVRvYXN0LFxyXG4gICAgTm90aWZpY2F0aW9uc1RhYmxlQ29tcG9uZW50LCBOb3RpZmljYXRpb25zRmlsdGVyQ29tcG9uZW50LFxyXG4gICAgVGFnZ2luZ1BpcGUsXHJcbiAgICBQcml2aWxlZ2VIaWRkZW5EaXJlY3RpdmUsXHJcbiAgICBUYWdnaW5nSXRlbURpcmVjdGl2ZSwgVGFnZ2luZ0RpcmVjdGl2ZSwgRG9jdW1lbnRUYWdnaW5nQ29tcG9uZW50LCBVc2VyVGFnZ2luZ0NvbXBvbmVudCxcclxuICAgIFByaXZpbGVnZURpc2FibGVkRGlyZWN0aXZlLCBDdWJlR3JpZERvY3VtZW50c0NvbXBvbmVudCxcclxuICAgIExvbmdSdW5uaW5nVGFza05vdGlmaWNhdGlvbiwgVGFnZ2VkTm90aWZpY2F0aW9uLCBDb21tZW50ZWROb3RpZmljYXRpb24sIE51ZGdlTm90aWZpY2F0aW9uLCBUZXh0Tm90aWZpY2F0aW9uLCBDdWJlQW5vbWFseU5vdGlmaWNhdGlvbiwgRXNjYWxhdGVkTm90aWZpY2F0aW9uLCBMaWtlZE5vdGlmaWNhdGlvbiwgU3RhdGVDaGFuZ2VkTm90aWZpY2F0aW9uLCBVcGNvbWluZ0V2ZW50Tm90aWZpY2F0aW9uLFxyXG4gICAgTm9uZUNvbXBvbmVudCwgU2NoZWR1bGVWaWV3Q29tcG9uZW50LFxyXG4gICAgT3B0aW9uc0NvbXBvbmVudCwgVHJhY2VWaWV3Q29tcG9uZW50LFxyXG4gICAgUHJvZ3Jlc3NEaXJlY3RpdmUsXHJcbiAgICBBdHRhY2htZW50c0NvbXBvbmVudCxcclxuICAgIERvY3VtZW50RXZlbnRzQ29tcG9uZW50LFxyXG4gICAgVGFnc0NvbXBvbmVudCxcclxuICAgIE1hcENvbXBvbmVudCxcclxuICAgIE1hc2tDb21wb25lbnQsXHJcbiAgICBTYXZlQ2hhbmdlc0RpYWxvZyxcclxuICAgIEZsb3dWaWV3Q29tcG9uZW50LFxyXG4gICAgU3Vic3RpdHV0aW9uQ29tcG9uZW50LFxyXG4gICAgUG9wdXBDb21wb25lbnQsXHJcbiAgICBBdHRhY2htZW50UHJldmlldywgQ29tbWVudHNDb21wb25lbnQsIENvbW1lbnRDb21wb25lbnQsIEVkaXRDb21tZW50Q29tcG9uZW50LCBDb21tZW50TGlrZXNDb21wb25lbnQsIENvbW1lbnRFZGl0c0NvbXBvbmVudCxcclxuICAgIEJyb3dzZUl0ZW1zQ29tcG9uZW50LFxyXG4gICAgQnJvd3NlRmlsdGVyQ29tcG9uZW50LCBFeHBhbmRlZEl0ZW1Db21wb25lbnQsXHJcbiAgICBDb21wb3NlRm9ybUNvbXBvbmVudCxcclxuICAgIEN1YmVWaWV3Q29tcG9uZW50LFxyXG4gICAgQ3ViZUZpbHRlckNvbXBvbmVudCxcclxuICAgIEN1YmVBY2N1bXVsYXRpb25DaGFydENvbXBvbmVudCxcclxuICAgIEN1YmVDaGFydENvbXBvbmVudCwgQ3ViZVBpdm90Q29tcG9uZW50LFxyXG4gICAgQ3ViZVNwcmVhZHNoZWV0Q29tcG9uZW50LFxyXG4gICAgQ3ViZUdyaWRDb21wb25lbnQsXHJcbiAgICBSZXBvcnRWaWV3ZXJDb21wb25lbnQsIFRhYmxlVmlld0NvbXBvbmVudCwgUmVwb3J0QXJndW1lbnRzQ29tcG9uZW50LFxyXG4gICAgRGFzaGJvYXJkQ29tcG9uZW50LCBXaWRnZXRJdGVtQ29tcG9uZW50LCBDdWJlV2lkZ2V0RmlsdGVyQ29tcG9uZW50LCBDdWJlQWNjdW1BbmFseXNpc1dpZGdldCwgQ3ViZUFuYWx5c2lzV2lkZ2V0LCBDdWJlQ2hhcnRBbmFseXNpc1dpZGdldCwgQWN0aW9uc1dpZGdldCwgUmVjZW50c1dpZGdldCxcclxuICAgIEFza0RpYWxvZywgQWJvdXREaWFsb2csIEFjdGlvbkRpYWxvZyxcclxuICAgIEltcGVyc29uYXRlRGlhbG9nLFxyXG4gICAgQ29udmVyc2F0aW9uQ29tcG9uZW50LCBDdWJlTWF0cml4UG9wdXBDb21wb25lbnQsXHJcbiAgICBWZXJzaW9uQ29tcGFyZUNvbXBvbmVudCwgRXhwbG9yZURvY3VtZW50Q29tcG9uZW50LCBUYXNrc0NvbXBvbmVudCxcclxuICAgIFBlbmRpbmdSZXN1bHRzV2lkZ2V0LCBDb21wYXJlRGVwYXJ0bWVudHNXaWRnZXQsIEN1YmVEb2N1bWVudHNDb21wb25lbnQsIEN1YmVEb2N1bWVudHNXaWRnZXQsXHJcbiAgICBQZXJzb25hbFNjb3JlV2lkZ2V0LCBQZXJzb25hbEFjdGl2aXR5V2lkZ2V0LCBQZWVyc1BlcmZvcm1hbmNlV2lkZ2V0LCBVc2FnZVBpdm90Q29tcG9uZW50LCBVc2FnZUNoYXJ0Q29tcG9uZW50LCBVc2FnZVJlcG9ydEFyZ3MsXHJcbiAgICBFbW9qaUhvc3RDb21wb25lbnQsIFRvb2x0aXBEaXJlY3RpdmUsIFRvb2x0aXBDb21wb25lbnRdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEh0dHBDbGllbnRNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgRmxleExheW91dE1vZHVsZSxcclxuICAgIFJvdXRlck1vZHVsZSxcclxuICAgIFBpY2tlck1vZHVsZSxcclxuICAgIFN5bmNmdXNpb25HYW50dE1vZHVsZSxcclxuICAgIFN5bmNmdXNpb25TY2hlZHVsZU1vZHVsZSwgXHJcbiAgICBTeW5jZnVzaW9uQ2lyY3VsYXJHYXVnZU1vZHVsZSxcclxuICAgIFN5bmNmdXNpb25DaGFydE1vZHVsZSxcclxuICAgIFN5bmNmdXNpb25HYW50dE1vZHVsZSxcclxuICAgIFN5bmNmdXNpb25HcmlkTW9kdWxlLFxyXG4gICAgU3luY2Z1c2lvblRleHRFZGl0b3JNb2R1bGUsXHJcbiAgICBTeW5jZnVzaW9uU3ByZWFkc2hlZXRNb2R1bGUsXHJcbiAgICBTeW5jZnVzaW9uUGl2b3RNb2R1bGUsXHJcbiAgICBLYW5iYW5Nb2R1bGUsXHJcbiAgICBTeW5jZnVzaW9uRGlhZ3JhbU1vZHVsZSxcclxuICAgIE1hdGVyaWFsTW9kdWxlXHJcbiAgXSxcclxuICBwcm92aWRlcnM6IFtQb3B1cCwgQ29tcG9zZURpc21pc3MsIEl0ZW1SZXNvbHZlU2VydmljZSxcclxuICAgIFJlY2lwaWVudFJlc29sdmVTZXJ2aWNlLCBEb2N1bWVudFJlc29sdmVTZXJ2aWNlLFxyXG4gICAgQXR0YWNobWVudEluZm8sIE1hcEluZm8sIEN1YmVJbmZvLFxyXG4gICAgQ2FuRGVhY3RpdmF0ZUNvbXBvc2UsIE1haWxib3hTZXJ2aWNlLCBTZXNzaW9uU2VydmljZSwgSHViU2VydmljZSxcclxuICAgIEFjY291bnRTZXJ2aWNlLFxyXG4gICAgU2F2ZUNoYW5nZXNEaWFsb2csXHJcbiAgICBEYXRlUmFuZ2VQaXBlLCBBZ29QaXBlLCBEdXJhdGlvbkZvcm1hdFBpcGUsXHJcbiAgICBEb2N1bWVudEluZm8sIENvb2tpZVNlcnZpY2UsXHJcbiAgICBXaW5kb3dUaXRsZVNlcnZpY2UsIE5vdGlmaWNhdGlvbnNTZXJ2aWNlLFxyXG4gICAgQ3ViZVNlcnZpY2UsIERhdGFzb3VyY2VTZXJ2aWNlLFxyXG4gICAgQWNjb3VudFNlcnZpY2UsIENoYXRTZXJ2aWNlLCBDaGF0SW5mbyxcclxuICAgIEd1aWRlU2VydmljZSwgT3B0aW9uc1NlcnZpY2UsIFxyXG4gICAgQml6RG9jQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBQcm9tcHRTZXJ2aWNlLCBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgLy97IHByb3ZpZGU6IExPQ0FMRV9JRCwgdXNlQ2xhc3M6IFNlc3Npb25TZXJ2aWNlLmdldExvY2FsZSgpIH0sXHJcbiAgICB7IHByb3ZpZGU6IEhUVFBfSU5URVJDRVBUT1JTLCB1c2VDbGFzczogQXBwSHR0cEludGVyY2VwdG9yLCBtdWx0aTogdHJ1ZSB9LFxyXG4gICAgeyBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsIHVzZUZhY3Rvcnk6IFRyYW5zbGF0ZVByb3ZpZGVyRmFjdG9yeSwgZGVwczogW1RyYW5zbGF0ZVNlcnZpY2VdLCBtdWx0aTogdHJ1ZSB9LFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW0ZpbGVJbnB1dCxcclxuICAgIERhdGVGb3JtYXRQaXBlLCBDYWxlbmRhclBpcGUsIERpZmZlcmVuY2VQaXBlLCBEdXJhdGlvblBpcGUsIFRpbWVBZ29QaXBlLFxyXG4gICAgQ2hlY2tib3hDb21wb25lbnQsIEN1YmVQYXJhbGxlbENvbXBvbmVudCwgQ3ViZVN1bUNvbXBvbmVudCwgRXhwbG9yZUl0ZW1JbXBsQ29tcG9uZW50LCBEb2N1bWVudEluZm9Db21wb25lbnQsIERvY3VtZW50Vmlld3NDb21wb25lbnQsIERhc2hib2FyZENvbXBvbmVudCxcclxuICAgIFRhZ3NDb21wb25lbnQsIFF1aWNrQ29tbWVudENvbXBvbmVudCxcclxuICAgIE1hdGVyaWFsTW9kdWxlLCBDb21tZW50c0NvbXBvbmVudCwgQnJva2VuUGFnZSxcclxuICAgIEFjdGlvbkRpYWxvZywgQnJvd3NlRmlsdGVyQ29tcG9uZW50LCBDdWJlRmlsdGVyQ29tcG9uZW50LCBTY2hlZHVsZVZpZXdDb21wb25lbnQsIFJlcG9ydFZpZXdlckNvbXBvbmVudCwgV2lkZ2V0SXRlbUNvbXBvbmVudCwgQ3ViZVZpZXdDb21wb25lbnQsXHJcbiAgICBFeHBsb3JlSXRlbXNDb21wb25lbnQsIENvbXBvc2VGb3JtQ29tcG9uZW50LCBCcm93c2VJdGVtc0NvbXBvbmVudCwgTm90aWZpY2F0aW9uc1RhYmxlQ29tcG9uZW50LFxyXG4gICAgQWN0aW9uUGlja2VyLCBDb252ZXJzYXRpb25Db21wb25lbnQsIFN0YXRlRGlyZWN0aXZlLFxyXG4gICAgQ29udGFjdHNDb21wb25lbnQsIEN1YmVNYXRyaXhDb21wb25lbnQsXHJcbiAgICBEdXJhdGlvbkZvcm1hdFBpcGUsIENvbWJpbmF0aW9uUGlja2VyLCBDb21iaW5hdGlvblBvb2wsIFRpbWVQaWNrZXIsXHJcbiAgICBUb29sdGlwRGlyZWN0aXZlLCBEYXRlUmFuZ2VQaXBlLFxyXG4gICAgTmd4Q29tcG9uZW50T3V0bGV0LCBNYXRJY29uQW5pbWF0ZSxcclxuICAgIEFjZUlucHV0LCBKb2luUGlwZSxcclxuICAgIFR5cGVWYWx1ZVBpcGUsIFR5cGVTZWxlY3QsIFR5cGVBdXRvY29tcGxldGUsIFN0YXRlUGlwZSwgQWN0aW9uUGlwZSwgUm9sZVBpcGUsIEZvcm1QaXBlLCBGaWx0ZXJQaXBlLCBBcnJheVNvcnRQaXBlLCBVc2VyTmFtZVBpcGUsIFNhbml0aXplSHRtbFBpcGUsXHJcbiAgICBUcmFuc2xhdGVQaXBlLCBJZGVudGl0eU5hbWUsXHJcbiAgICBBZGRyZXNzSW5wdXQsIEF2YXRhckNvbXBvbmVudCwgUmVwb3J0QXJndW1lbnRzQ29tcG9uZW50LFxyXG4gICAgQml6RG9jQXBwLCBBdHRhY2htZW50UHJldmlldywgUHJpdmlsZWdlSGlkZGVuRGlyZWN0aXZlLFxyXG4gICAgUHJpdmlsZWdlRGlzYWJsZWREaXJlY3RpdmUsIENvbXBhcmVHcm91cERpcmVjdGl2ZSwgQ29tcGFyZU5hbWVEaXJlY3RpdmUsIENvbXBhcmVDb250ZXh0RGlyZWN0aXZlLCBUcmFjZVZpZXdDb21wb25lbnQsIEZsb3dWaWV3Q29tcG9uZW50LFxyXG4gICAgQXNzaWduQWN0aW9uQ29tcG9uZW50LCBSZXR1cm5BY3Rpb25Db21wb25lbnQsIEV4cGxvcmVEb2N1bWVudENvbXBvbmVudCxcclxuICAgIEFjdGlvbnNXaWRnZXQsIEN1YmVBbmFseXNpc1dpZGdldCwgQ3ViZURvY3VtZW50c1dpZGdldCwgUmVjZW50c1dpZGdldCwgUGVyc29uYWxBY3Rpdml0eVdpZGdldCxcclxuICAgIENvbXBhcmVEZXBhcnRtZW50c1dpZGdldCwgUGVlcnNQZXJmb3JtYW5jZVdpZGdldCwgUGVuZGluZ1Jlc3VsdHNXaWRnZXQsIFBlcnNvbmFsU2NvcmVXaWRnZXQsIEN1YmVXaWRnZXRGaWx0ZXJDb21wb25lbnQsXHJcbiAgICBDdWJlRG9jdW1lbnRzQ29tcG9uZW50LCBDdWJlR3JpZERvY3VtZW50c0NvbXBvbmVudCwgVGFza3NDb21wb25lbnQsIFVzYWdlUmVwb3J0QXJncywgVXNhZ2VDaGFydENvbXBvbmVudCwgVXNhZ2VQaXZvdENvbXBvbmVudCwgVGltZXNwYW5JbnB1dCxcclxuICAgIFZlcnNpb25Db21wYXJlQ29tcG9uZW50LCBMb3R0aWVBbmltYXRpb24sXHJcbiAgICBDdWJlQWNjdW11bGF0aW9uQ2hhcnRDb21wb25lbnQsXHJcbiAgICBDdWJlQ2hhcnRDb21wb25lbnQsIEN1YmVQaXZvdENvbXBvbmVudCxcclxuICAgIEN1YmVTcHJlYWRzaGVldENvbXBvbmVudCxcclxuICAgIEN1YmVHcmlkQ29tcG9uZW50XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2hhcmVkTW9kdWxlIHtcclxuICBzdGF0aWMgZm9yQ2hpbGQoY29uZmlnPzogU2hhcmVkQ29uZmlnKTogTW9kdWxlV2l0aFByb3ZpZGVyczxTaGFyZWRNb2R1bGU+IHtcclxuICAgIGNvbnN0IHsgZm9ybWF0cyB9ID0gY29uZmlnIHx8IHt9O1xyXG4gICAgcmVnaXN0ZXJDb21wb25lbnRzKENPUkVfQ09NUE9ORU5UUyk7XHJcbiAgICBjb25zdCBwcm92aWRlcnMgPSBbe1xyXG4gICAgICBwcm92aWRlOiBSb3V0ZXJJbXBsLCB1c2VDbGFzczogIWNvbmZpZyB8fCAhY29uZmlnLnJvdXRpbmcgfHwgY29uZmlnLnJvdXRpbmcgPT09ICduZycgPyBOZ1JvdXRlciA6IFBhbmVSb3V0ZXJcclxuICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBwcm92aWRlOiBNQVRfREFURV9GT1JNQVRTLCB1c2VWYWx1ZToge1xyXG4gICAgICAgICAgcGFyc2U6IHtcclxuICAgICAgICAgICAgZGF0ZUlucHV0OiAnTEwnLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGRpc3BsYXk6IHtcclxuICAgICAgICAgICAgZGF0ZUlucHV0OiAoZm9ybWF0cyB8fCB7fSkuZGF0ZSB8fCAnbGwnLFxyXG4gICAgICAgICAgICBtb250aFllYXJMYWJlbDogJ01NTSBZWVlZJyxcclxuICAgICAgICAgICAgZGF0ZUExMXlMYWJlbDogJ0xMJyxcclxuICAgICAgICAgICAgbW9udGhZZWFyQTExeUxhYmVsOiAnTU1NTSBZWVlZJyxcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH0gICAgXSBhcyBQcm92aWRlcltdO1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgbmdNb2R1bGU6IFNoYXJlZE1vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -59,15 +59,13 @@ export class CubeBase {
59
59
  let i = 0;
60
60
  while (i < cube.axes.length) {
61
61
  let name = cube.axes[i].name, axis = e.axes[i], val = consolidate[e.cube][name];
62
- if (!val)
63
- consolidate[e.cube][name] = axis;
64
- else if ((isString(val) && val !== axis) || (isArray(val) && val.indexOf(axis) < 0)) {
65
- if (h && !Object.keys(h).every(a => e[a] === h[a]))
66
- continue;
67
- if (isArray(val))
68
- val.push(axis);
69
- else
62
+ if (!h || !h[name] || h[name] === axis) {
63
+ if (!val)
64
+ consolidate[e.cube][name] = axis;
65
+ else if (isString(val) && val !== axis)
70
66
  consolidate[e.cube][name] = [val, axis];
67
+ else if (isArray(val) && val.indexOf(axis) < 0)
68
+ val.push(axis);
71
69
  }
72
70
  i++;
73
71
  }
@@ -95,4 +93,4 @@ CubeBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.
95
93
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: CubeBase, decorators: [{
96
94
  type: Directive
97
95
  }], ctorParameters: function () { return [{ type: i1.DocumentViewRef }, { type: i2.CubeService }, { type: i3.SessionService }, { type: undefined }]; } });
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3ViZS1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi92aWV3cy9jdWJlL2N1YmUtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBTzFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7O0FBVXpELE1BQU0sT0FBZ0IsUUFBUTtJQWM1QixZQUNZLFFBQTRCLEVBQzVCLFFBQXFCLEVBQ3JCLFFBQXdCLEVBQVUsS0FBZTtRQUZqRCxhQUFRLEdBQVIsUUFBUSxDQUFvQjtRQUM1QixhQUFRLEdBQVIsUUFBUSxDQUFhO1FBQ3JCLGFBQVEsR0FBUixRQUFRLENBQWdCO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBVTtJQUM3RCxDQUFDO0lBQ0QsTUFBTSxDQUFDLEtBQXlCO1FBQzlCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDdEIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBRXBCLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFFL0MsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFdEUsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7WUFFcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNyQjthQUNJLElBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSztZQUNqQixJQUFJ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O1lBQ3JELFNBQVMsRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFDUyxTQUFTLENBQUMsWUFBcUI7UUFDdkMsTUFBTSxJQUFJLEdBQUcsRUFBRSxHQUFHLFlBQVksRUFBRSxDQUFDO1FBQ2pDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsU0FBUztZQUNqQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMvRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDRCxJQUFJLEtBQUssS0FBSyxPQUFPLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQSxDQUFDLENBQUM7O3FHQXpHMUIsUUFBUTt5RkFBUixRQUFROzJGQUFSLFFBQVE7a0JBRDdCLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBBeGVzTWFwLCBDdWJlLCBEb2N1bWVudE1vZGVsIH0gZnJvbSBcIi4uLy4uL2NvcmUvbW9kZWxzXCI7XHJcbmltcG9ydCB7IFNlc3Npb25TZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL2NvcmUvc2Vzc2lvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IERvY3VtZW50Vmlld1JlZiB9IGZyb20gXCIuLi9kb2N1bWVudC12aWV3LXJlZlwiO1xyXG5cclxuaW1wb3J0IHsgQ3ViZVNlcnZpY2UsIFBhdHRlcm4gfSBmcm9tICcuLi8uLi9jdWJlL2N1YmUuc2VydmljZSc7XHJcbmltcG9ydCB7IERvY3VtZW50Vmlld0NvbXBvbmVudCB9IGZyb20gXCIuLi8uLi9jb3JlL2Jhc2VcIjtcclxuaW1wb3J0IHsgaXNBcnJheSwgaXNTdHJpbmcgfSBmcm9tIFwiLi4vLi4vY29yZS9mdW5jdGlvbnNcIjtcclxuaW1wb3J0IHsgU2NvcGVUeXBlIH0gZnJvbSBcIi4uLy4uL2NvcmUvY29uZmlndXJhdGlvblwiO1xyXG5cclxudHlwZSBDb25zb2xpZGF0ZWRNb2RlbCA9IHtcclxuICBbY3ViZTogc3RyaW5nXToge1xyXG4gICAgW2F4aXM6IHN0cmluZ106IHN0cmluZyB8IHN0cmluZ1tdO1xyXG4gIH07XHJcbn07XHJcblxyXG5ARGlyZWN0aXZlKClcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEN1YmVCYXNlPE8gZXh0ZW5kcyBPcHRpb25zPiBpbXBsZW1lbnRzIERvY3VtZW50Vmlld0NvbXBvbmVudCB7XHJcbiAgcGF0dGVybnM6IFBhdHRlcm5bXTtcclxuICBwYXR0ZXJuOiBQYXR0ZXJuO1xyXG4gIHNjb3BlOiBTY29wZVR5cGU7XHJcbiAgbG9hZGluZzogYm9vbGVhbjtcclxuICBheGVzOiBBeGVzTWFwO1xyXG4gIGFueUZpbHRlcnM6IGJvb2xlYW47XHJcbiAgbW9kZWw6IERvY3VtZW50TW9kZWw8YW55PjtcclxuICBvcmlnaW5hbEF4ZXM6IEF4ZXNNYXA7XHJcbiAgYWx0ZXJuYXRlOiBDdWJlW107XHJcbiAgY3ViZTogQ3ViZTtcclxuICBoYXNkYXRhOiBib29sZWFuO1xyXG4gIHRpdGxlOiBzdHJpbmc7XHJcbiAgcHJpdmF0ZSBfY29uc29saWRhdGVEYXRhOiBDb25zb2xpZGF0ZWRNb2RlbDtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByb3RlY3RlZCBfdmlld1JlZjogRG9jdW1lbnRWaWV3UmVmPE8+LFxyXG4gICAgcHJvdGVjdGVkIF9zZXJ2aWNlOiBDdWJlU2VydmljZSxcclxuICAgIHByb3RlY3RlZCBfc2Vzc2lvbjogU2Vzc2lvblNlcnZpY2UsIHByaXZhdGUgX25vbmU/OiBib29sZWFuKSB7XHJcbiAgfVxyXG4gIG9uQmluZChtb2RlbDogRG9jdW1lbnRNb2RlbDxhbnk+KSB7XHJcbiAgICB0aGlzLm1vZGVsID0gbW9kZWw7XHJcbiAgICBpZiAobW9kZWwuY3ViZXMubGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMuX2NvbnNvbGlkYXRlKCk7XHJcblxyXG4gICAgICBjb25zdCBpZHMgPSBPYmplY3Qua2V5cyh0aGlzLl9jb25zb2xpZGF0ZURhdGEpO1xyXG5cclxuICAgICAgY29uc3QgY3ViZSA9IHRoaXMuX3Nlc3Npb24ucHJvZmlsZS5jdWJlcy5maW5kKGMgPT4gYy5uYW1lID09PSBpZHNbMF0pO1xyXG5cclxuICAgICAgdGhpcy5oYXNkYXRhID0gdHJ1ZTtcclxuXHJcbiAgICAgIHRoaXMuc3dpdGNoVG8oY3ViZSk7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmKCF0aGlzLl9ub25lKVxyXG4gICAgICB0aGlzLl92aWV3UmVmLmhpZGRlbiA9IHRydWU7XHJcbiAgfVxyXG4gIGFic3RyYWN0IG9uVmlld0JpbmQoKTtcclxuICBzd2l0Y2hBeGVzKGF4ZXM/OiBBeGVzTWFwKSB7XHJcbiAgICB0aGlzLl9jb25zb2xpZGF0ZShheGVzKTtcclxuXHJcbiAgICB0aGlzLm9yaWdpbmFsQXhlcyA9IHRoaXMuX2NvbnNvbGlkYXRlRGF0YVt0aGlzLmN1YmUubmFtZV07XHJcblxyXG4gICAgdGhpcy5heGVzID0gdGhpcy5hZ2dyZWdhdGUodGhpcy5vcmlnaW5hbEF4ZXMpO1xyXG4gIH1cclxuICBkcm9wKGF4ZXM6IHN0cmluZyB8IHN0cmluZ1tdKSB7XHJcbiAgICBpZiAoaXNTdHJpbmcoYXhlcykpXHJcbiAgICAgIGRlbGV0ZSB0aGlzLmF4ZXNbYXhlc107XHJcbiAgICBlbHNlIGF4ZXMuZm9yRWFjaChzID0+IGRlbGV0ZSB0aGlzLmF4ZXNbc10pO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBcclxuICAgKiBAcGFyYW0gY3ViZVxyXG4gICAqL1xyXG4gIHN3aXRjaFRvKGN1YmU6IEN1YmUpIHtcclxuICAgIGNvbnN0IGlkcyA9IE9iamVjdC5rZXlzKHRoaXMuX2NvbnNvbGlkYXRlRGF0YSk7XHJcblxyXG4gICAgaWYgKGlkcy5sZW5ndGggPiAxKVxyXG4gICAgICB0aGlzLmFsdGVybmF0ZSA9IHRoaXMuX3Nlc3Npb24ucHJvZmlsZS5jdWJlcy5maWx0ZXIoYyA9PiBpZHMuaW5kZXhPZihjLm5hbWUpID4gLTEgJiYgYyAhPSBjdWJlKTtcclxuXHJcbiAgICB0aGlzLmN1YmUgPSBjdWJlO1xyXG5cclxuICAgIHRoaXMub3JpZ2luYWxBeGVzID0gdGhpcy5fY29uc29saWRhdGVEYXRhW2N1YmUubmFtZV07XHJcblxyXG4gICAgdGhpcy5heGVzID0gdGhpcy5hZ2dyZWdhdGUodGhpcy5vcmlnaW5hbEF4ZXMpO1xyXG5cclxuICAgIHRoaXMub25WaWV3QmluZCgpO1xyXG4gIH1cclxuICBwcml2YXRlIF9jb25zb2xpZGF0ZShoPzogQXhlc01hcCkge1xyXG4gICAgY29uc3QgY29uc29saWRhdGUgPSB7fSBhcyBDb25zb2xpZGF0ZWRNb2RlbDtcclxuICAgIGxldCBjdWJlOiBDdWJlO1xyXG4gICAgLy8gY29sbGVjdFxyXG4gICAgdGhpcy5tb2RlbC5jdWJlcy5mb3JFYWNoKGUgPT4ge1xyXG4gICAgICBpZiAoIWNvbnNvbGlkYXRlW2UuY3ViZV0pXHJcbiAgICAgICAgY29uc29saWRhdGVbZS5jdWJlXSA9IHt9O1xyXG4gICAgICBpZiAoIWN1YmUgfHwgY3ViZS5uYW1lICE9PSBlLmN1YmUpXHJcbiAgICAgICAgY3ViZSA9IHRoaXMuX3Nlc3Npb24ucHJvZmlsZS5jdWJlcy5maW5kKGMgPT4gYy5uYW1lID09PSBlLmN1YmUpO1xyXG4gICAgICBsZXQgaSA9IDA7XHJcbiAgICAgIHdoaWxlIChpIDwgY3ViZS5heGVzLmxlbmd0aCkge1xyXG4gICAgICAgIGxldCBuYW1lID0gY3ViZS5heGVzW2ldLm5hbWUsIGF4aXMgPSBlLmF4ZXNbaV0sIHZhbCA9IGNvbnNvbGlkYXRlW2UuY3ViZV1bbmFtZV07XHJcbiAgICAgICAgaWYgKCF2YWwpXHJcbiAgICAgICAgICBjb25zb2xpZGF0ZVtlLmN1YmVdW25hbWVdID0gYXhpcztcclxuICAgICAgICBlbHNlIGlmICgoaXNTdHJpbmcodmFsKSAmJiB2YWwgIT09IGF4aXMpIHx8IChpc0FycmF5KHZhbCkgJiYgdmFsLmluZGV4T2YoYXhpcykgPCAwKSkge1xyXG4gICAgICAgICAgaWYgKGggJiYgIU9iamVjdC5rZXlzKGgpLmV2ZXJ5KGEgPT4gZVthXSA9PT0gaFthXSkpXHJcbiAgICAgICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICAgICAgaWYgKGlzQXJyYXkodmFsKSkgdmFsLnB1c2goYXhpcyk7XHJcbiAgICAgICAgICBlbHNlIGNvbnNvbGlkYXRlW2UuY3ViZV1bbmFtZV0gPSBbdmFsLCBheGlzXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaSsrO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHRoaXMuX2NvbnNvbGlkYXRlRGF0YSA9IGNvbnNvbGlkYXRlO1xyXG4gIH1cclxuICBwcm90ZWN0ZWQgYXN5bmMgZ2V0QWdncmVnYXRlTGFiZWwoKSB7XHJcbiAgICBpZiAoIXRoaXMuX3ZpZXdSZWYub3B0aW9ucy5hZ2dyZWdhdGUpXHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgY29uc3QgYXhlcyA9IHt9O1xyXG4gICAgdGhpcy5fdmlld1JlZi5vcHRpb25zLmFnZ3JlZ2F0ZS5mb3JFYWNoKGEgPT4gYXhlc1thXSA9IHRoaXMub3JpZ2luYWxBeGVzW2FdKTtcclxuICAgIHJldHVybiBhd2FpdCB0aGlzLl9zZXJ2aWNlLm5hbWVPZihheGVzLCB0aGlzLmN1YmUubmFtZSkuXHJcbiAgICAgIHRvUHJvbWlzZSgpO1xyXG4gIH1cclxuICBwcm90ZWN0ZWQgYWdncmVnYXRlKG9yaWdpbmFsQXhlczogQXhlc01hcCk6IEF4ZXNNYXAge1xyXG4gICAgY29uc3QgYXhlcyA9IHsgLi4ub3JpZ2luYWxBeGVzIH07XHJcbiAgICBpZiAodGhpcy5fdmlld1JlZi5vcHRpb25zLmFnZ3JlZ2F0ZSlcclxuICAgICAgdGhpcy5fdmlld1JlZi5vcHRpb25zLmFnZ3JlZ2F0ZS5mb3JFYWNoKGEgPT4gZGVsZXRlIGF4ZXNbYV0pO1xyXG4gICAgcmV0dXJuIGF4ZXM7XHJcbiAgfVxyXG4gIGdldCBncm91cCgpIHsgcmV0dXJuIGAjJHt0aGlzLm1vZGVsLm51bWJlcn1gIH1cclxufVxyXG5pbnRlcmZhY2UgT3B0aW9ucyB7XHJcbiAgYWdncmVnYXRlPzogc3RyaW5nW107XHJcbn1cclxuIl19
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3ViZS1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi92aWV3cy9jdWJlL2N1YmUtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBTzFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7O0FBVXpELE1BQU0sT0FBZ0IsUUFBUTtJQWM1QixZQUNZLFFBQTRCLEVBQzVCLFFBQXFCLEVBQ3JCLFFBQXdCLEVBQVUsS0FBZTtRQUZqRCxhQUFRLEdBQVIsUUFBUSxDQUFvQjtRQUM1QixhQUFRLEdBQVIsUUFBUSxDQUFhO1FBQ3JCLGFBQVEsR0FBUixRQUFRLENBQWdCO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBVTtJQUM3RCxDQUFDO0lBQ0QsTUFBTSxDQUFDLEtBQXlCO1FBQzlCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDdEIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBRXBCLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFFL0MsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFdEUsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7WUFFcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNyQjthQUNJLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSztZQUNsQixJQUFJ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QUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxTQUFTO1lBQ2pDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9ELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUNELElBQUksS0FBSyxLQUFLLE9BQU8sSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFBLENBQUMsQ0FBQzs7cUdBeEcxQixRQUFRO3lGQUFSLFFBQVE7MkZBQVIsUUFBUTtrQkFEN0IsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEF4ZXNNYXAsIEN1YmUsIERvY3VtZW50TW9kZWwgfSBmcm9tIFwiLi4vLi4vY29yZS9tb2RlbHNcIjtcclxuaW1wb3J0IHsgU2Vzc2lvblNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vY29yZS9zZXNzaW9uLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgRG9jdW1lbnRWaWV3UmVmIH0gZnJvbSBcIi4uL2RvY3VtZW50LXZpZXctcmVmXCI7XHJcblxyXG5pbXBvcnQgeyBDdWJlU2VydmljZSwgUGF0dGVybiB9IGZyb20gJy4uLy4uL2N1YmUvY3ViZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRG9jdW1lbnRWaWV3Q29tcG9uZW50IH0gZnJvbSBcIi4uLy4uL2NvcmUvYmFzZVwiO1xyXG5pbXBvcnQgeyBpc0FycmF5LCBpc1N0cmluZyB9IGZyb20gXCIuLi8uLi9jb3JlL2Z1bmN0aW9uc1wiO1xyXG5pbXBvcnQgeyBTY29wZVR5cGUgfSBmcm9tIFwiLi4vLi4vY29yZS9jb25maWd1cmF0aW9uXCI7XHJcblxyXG50eXBlIENvbnNvbGlkYXRlZE1vZGVsID0ge1xyXG4gIFtjdWJlOiBzdHJpbmddOiB7XHJcbiAgICBbYXhpczogc3RyaW5nXTogc3RyaW5nIHwgc3RyaW5nW107XHJcbiAgfTtcclxufTtcclxuXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQ3ViZUJhc2U8TyBleHRlbmRzIE9wdGlvbnM+IGltcGxlbWVudHMgRG9jdW1lbnRWaWV3Q29tcG9uZW50IHtcclxuICBwYXR0ZXJuczogUGF0dGVybltdO1xyXG4gIHBhdHRlcm46IFBhdHRlcm47XHJcbiAgc2NvcGU6IFNjb3BlVHlwZTtcclxuICBsb2FkaW5nOiBib29sZWFuO1xyXG4gIGF4ZXM6IEF4ZXNNYXA7XHJcbiAgYW55RmlsdGVyczogYm9vbGVhbjtcclxuICBtb2RlbDogRG9jdW1lbnRNb2RlbDxhbnk+O1xyXG4gIG9yaWdpbmFsQXhlczogQXhlc01hcDtcclxuICBhbHRlcm5hdGU6IEN1YmVbXTtcclxuICBjdWJlOiBDdWJlO1xyXG4gIGhhc2RhdGE6IGJvb2xlYW47XHJcbiAgdGl0bGU6IHN0cmluZztcclxuICBwcml2YXRlIF9jb25zb2xpZGF0ZURhdGE6IENvbnNvbGlkYXRlZE1vZGVsO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJvdGVjdGVkIF92aWV3UmVmOiBEb2N1bWVudFZpZXdSZWY8Tz4sXHJcbiAgICBwcm90ZWN0ZWQgX3NlcnZpY2U6IEN1YmVTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIF9zZXNzaW9uOiBTZXNzaW9uU2VydmljZSwgcHJpdmF0ZSBfbm9uZT86IGJvb2xlYW4pIHtcclxuICB9XHJcbiAgb25CaW5kKG1vZGVsOiBEb2N1bWVudE1vZGVsPGFueT4pIHtcclxuICAgIHRoaXMubW9kZWwgPSBtb2RlbDtcclxuICAgIGlmIChtb2RlbC5jdWJlcy5sZW5ndGgpIHtcclxuICAgICAgdGhpcy5fY29uc29saWRhdGUoKTtcclxuXHJcbiAgICAgIGNvbnN0IGlkcyA9IE9iamVjdC5rZXlzKHRoaXMuX2NvbnNvbGlkYXRlRGF0YSk7XHJcblxyXG4gICAgICBjb25zdCBjdWJlID0gdGhpcy5fc2Vzc2lvbi5wcm9maWxlLmN1YmVzLmZpbmQoYyA9PiBjLm5hbWUgPT09IGlkc1swXSk7XHJcblxyXG4gICAgICB0aGlzLmhhc2RhdGEgPSB0cnVlO1xyXG5cclxuICAgICAgdGhpcy5zd2l0Y2hUbyhjdWJlKTtcclxuICAgIH1cclxuICAgIGVsc2UgaWYgKCF0aGlzLl9ub25lKVxyXG4gICAgICB0aGlzLl92aWV3UmVmLmhpZGRlbiA9IHRydWU7XHJcbiAgfVxyXG4gIGFic3RyYWN0IG9uVmlld0JpbmQoKTtcclxuICBzd2l0Y2hBeGVzKGF4ZXM/OiBBeGVzTWFwKSB7XHJcbiAgICB0aGlzLl9jb25zb2xpZGF0ZShheGVzKTtcclxuXHJcbiAgICB0aGlzLm9yaWdpbmFsQXhlcyA9IHRoaXMuX2NvbnNvbGlkYXRlRGF0YVt0aGlzLmN1YmUubmFtZV07XHJcblxyXG4gICAgdGhpcy5heGVzID0gdGhpcy5hZ2dyZWdhdGUodGhpcy5vcmlnaW5hbEF4ZXMpO1xyXG4gIH1cclxuICBkcm9wKGF4ZXM6IHN0cmluZyB8IHN0cmluZ1tdKSB7XHJcbiAgICBpZiAoaXNTdHJpbmcoYXhlcykpXHJcbiAgICAgIGRlbGV0ZSB0aGlzLmF4ZXNbYXhlc107XHJcbiAgICBlbHNlIGF4ZXMuZm9yRWFjaChzID0+IGRlbGV0ZSB0aGlzLmF4ZXNbc10pO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBcclxuICAgKiBAcGFyYW0gY3ViZVxyXG4gICAqL1xyXG4gIHN3aXRjaFRvKGN1YmU6IEN1YmUpIHtcclxuICAgIGNvbnN0IGlkcyA9IE9iamVjdC5rZXlzKHRoaXMuX2NvbnNvbGlkYXRlRGF0YSk7XHJcblxyXG4gICAgaWYgKGlkcy5sZW5ndGggPiAxKVxyXG4gICAgICB0aGlzLmFsdGVybmF0ZSA9IHRoaXMuX3Nlc3Npb24ucHJvZmlsZS5jdWJlcy5maWx0ZXIoYyA9PiBpZHMuaW5kZXhPZihjLm5hbWUpID4gLTEgJiYgYyAhPSBjdWJlKTtcclxuXHJcbiAgICB0aGlzLmN1YmUgPSBjdWJlO1xyXG5cclxuICAgIHRoaXMub3JpZ2luYWxBeGVzID0gdGhpcy5fY29uc29saWRhdGVEYXRhW2N1YmUubmFtZV07XHJcblxyXG4gICAgdGhpcy5heGVzID0gdGhpcy5hZ2dyZWdhdGUodGhpcy5vcmlnaW5hbEF4ZXMpO1xyXG5cclxuICAgIHRoaXMub25WaWV3QmluZCgpO1xyXG4gIH1cclxuICBwcml2YXRlIF9jb25zb2xpZGF0ZShoPzogQXhlc01hcCkge1xyXG4gICAgY29uc3QgY29uc29saWRhdGUgPSB7fSBhcyBDb25zb2xpZGF0ZWRNb2RlbDtcclxuICAgIGxldCBjdWJlOiBDdWJlO1xyXG4gICAgLy8gY29sbGVjdFxyXG4gICAgdGhpcy5tb2RlbC5jdWJlcy5mb3JFYWNoKGUgPT4ge1xyXG4gICAgICBpZiAoIWNvbnNvbGlkYXRlW2UuY3ViZV0pXHJcbiAgICAgICAgY29uc29saWRhdGVbZS5jdWJlXSA9IHt9O1xyXG4gICAgICBpZiAoIWN1YmUgfHwgY3ViZS5uYW1lICE9PSBlLmN1YmUpXHJcbiAgICAgICAgY3ViZSA9IHRoaXMuX3Nlc3Npb24ucHJvZmlsZS5jdWJlcy5maW5kKGMgPT4gYy5uYW1lID09PSBlLmN1YmUpO1xyXG4gICAgICBsZXQgaSA9IDA7XHJcbiAgICAgIHdoaWxlIChpIDwgY3ViZS5heGVzLmxlbmd0aCkge1xyXG4gICAgICAgIGxldCBuYW1lID0gY3ViZS5heGVzW2ldLm5hbWUsIGF4aXMgPSBlLmF4ZXNbaV0sIHZhbCA9IGNvbnNvbGlkYXRlW2UuY3ViZV1bbmFtZV07XHJcbiAgICAgICAgaWYgKCFoIHx8ICFoW25hbWVdIHx8IGhbbmFtZV0gPT09IGF4aXMpIHtcclxuICAgICAgICAgIGlmICghdmFsKVxyXG4gICAgICAgICAgICBjb25zb2xpZGF0ZVtlLmN1YmVdW25hbWVdID0gYXhpcztcclxuICAgICAgICAgIGVsc2UgaWYgKGlzU3RyaW5nKHZhbCkgJiYgdmFsICE9PSBheGlzKSBjb25zb2xpZGF0ZVtlLmN1YmVdW25hbWVdID0gW3ZhbCwgYXhpc107XHJcbiAgICAgICAgICBlbHNlIGlmIChpc0FycmF5KHZhbCkgJiYgdmFsLmluZGV4T2YoYXhpcykgPCAwKVxyXG4gICAgICAgICAgICB2YWwucHVzaChheGlzKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaSsrO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHRoaXMuX2NvbnNvbGlkYXRlRGF0YSA9IGNvbnNvbGlkYXRlO1xyXG4gIH1cclxuICBwcm90ZWN0ZWQgYXN5bmMgZ2V0QWdncmVnYXRlTGFiZWwoKSB7XHJcbiAgICBpZiAoIXRoaXMuX3ZpZXdSZWYub3B0aW9ucy5hZ2dyZWdhdGUpXHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgY29uc3QgYXhlcyA9IHt9O1xyXG4gICAgdGhpcy5fdmlld1JlZi5vcHRpb25zLmFnZ3JlZ2F0ZS5mb3JFYWNoKGEgPT4gYXhlc1thXSA9IHRoaXMub3JpZ2luYWxBeGVzW2FdKTtcclxuICAgIHJldHVybiBhd2FpdCB0aGlzLl9zZXJ2aWNlLm5hbWVPZihheGVzLCB0aGlzLmN1YmUubmFtZSkuXHJcbiAgICAgIHRvUHJvbWlzZSgpO1xyXG4gIH1cclxuICBwcm90ZWN0ZWQgYWdncmVnYXRlKG9yaWdpbmFsQXhlczogQXhlc01hcCk6IEF4ZXNNYXAge1xyXG4gICAgY29uc3QgYXhlcyA9IHsgLi4ub3JpZ2luYWxBeGVzIH07XHJcbiAgICBpZiAodGhpcy5fdmlld1JlZi5vcHRpb25zLmFnZ3JlZ2F0ZSlcclxuICAgICAgdGhpcy5fdmlld1JlZi5vcHRpb25zLmFnZ3JlZ2F0ZS5mb3JFYWNoKGEgPT4gZGVsZXRlIGF4ZXNbYV0pO1xyXG4gICAgcmV0dXJuIGF4ZXM7XHJcbiAgfVxyXG4gIGdldCBncm91cCgpIHsgcmV0dXJuIGAjJHt0aGlzLm1vZGVsLm51bWJlcn1gIH1cclxufVxyXG5pbnRlcmZhY2UgT3B0aW9ucyB7XHJcbiAgYWdncmVnYXRlPzogc3RyaW5nW107XHJcbn1cclxuIl19
@@ -1,6 +1,7 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { Component, ViewChild } from "@angular/core";
3
- import { isArray } from "../../core/functions";
3
+ import { map } from "rxjs";
4
+ import { isArray, mapToArray } from "../../core/functions";
4
5
  import { BizDoc } from "../../core/decorators";
5
6
  import { CubeBase } from "./cube-base";
6
7
  import { CubeMatrixComponent } from "../../cube/matrix/table.component";
@@ -8,23 +9,21 @@ import * as i0 from "@angular/core";
8
9
  import * as i1 from "../document-view-ref";
9
10
  import * as i2 from "../../core/router";
10
11
  import * as i3 from "../../cube/cube.service";
11
- import * as i4 from "../../core/datasource.service";
12
- import * as i5 from "../../core/session.service";
13
- import * as i6 from "@angular/material/button";
14
- import * as i7 from "@angular/material/icon";
15
- import * as i8 from "@angular/material/menu";
16
- import * as i9 from "@angular/material/progress-spinner";
17
- import * as i10 from "../../cube/matrix/table.component";
18
- import * as i11 from "../../core/none.component";
19
- import * as i12 from "@angular/common";
20
- import * as i13 from "../../core/popup/tooltip.directive";
21
- import * as i14 from "../../core/pipes/translate.pipe";
22
- import * as i15 from "../../core/pipes/type-value.pipe";
12
+ import * as i4 from "../../core/session.service";
13
+ import * as i5 from "@angular/material/button";
14
+ import * as i6 from "@angular/material/icon";
15
+ import * as i7 from "@angular/material/menu";
16
+ import * as i8 from "@angular/material/progress-spinner";
17
+ import * as i9 from "../../cube/matrix/table.component";
18
+ import * as i10 from "../../core/none.component";
19
+ import * as i11 from "@angular/common";
20
+ import * as i12 from "../../core/popup/tooltip.directive";
21
+ import * as i13 from "../../core/pipes/translate.pipe";
22
+ import * as i14 from "../../core/pipes/type-value.pipe";
23
23
  let CubeDocumentMatrixComponent = class CubeDocumentMatrixComponent extends CubeBase {
24
- constructor(viewRef, _router, service, _ds, session) {
24
+ constructor(viewRef, _router, service, session) {
25
25
  super(viewRef, service, session, true);
26
26
  this._router = _router;
27
- this._ds = _ds;
28
27
  this.sources = {};
29
28
  }
30
29
  onViewBind() {
@@ -41,7 +40,7 @@ let CubeDocumentMatrixComponent = class CubeDocumentMatrixComponent extends Cube
41
40
  this.filters = this.cube.axes.filter(a => isArray(filters) ?
42
41
  filters.indexOf(a.name) > -1 :
43
42
  a.name === filters);
44
- this.filters.forEach(f => this.sources[f.name] = this._ds.all(f.dataType));
43
+ this.filters.forEach(f => this.sources[f.name] = this._service.values(this.cube.name, f.name).pipe(map(mapToArray)));
45
44
  }
46
45
  explore(axes) {
47
46
  this._router.navigate(['cube', this.cube.name, 'explore'], {
@@ -78,8 +77,8 @@ let CubeDocumentMatrixComponent = class CubeDocumentMatrixComponent extends Cube
78
77
  this.title = null;
79
78
  }
80
79
  };
81
- CubeDocumentMatrixComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: CubeDocumentMatrixComponent, deps: [{ token: i1.DocumentViewRef }, { token: i2.RouterImpl }, { token: i3.CubeService }, { token: i4.DatasourceService }, { token: i5.SessionService }], target: i0.ɵɵFactoryTarget.Component });
82
- CubeDocumentMatrixComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: CubeDocumentMatrixComponent, selector: "ng-component", host: { classAttribute: "view" }, viewQueries: [{ propertyName: "table", first: true, predicate: CubeMatrixComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"hasdata; else none\">\r\n <div class=\"nav-toolbar\">\r\n <ng-container *ngIf=\"alternate\">\r\n <button mat-button [matMenuTriggerFor]=\"cmenu\">{{cube.title}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #cmenu>\r\n <button mat-menu-item *ngFor=\"let a of alternate\"\r\n (click)=\"switchTo(a)\">\r\n {{a.title}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n <span class=\"divider\"></span>\r\n <!-- title -->\r\n <button mat-icon-button [matMenuTriggerFor]=\"patternsMenu\" *ngIf=\"patterns && patterns.length\" [bizdocTooltip]=\"'Pattern'|translate\" [attr.aria-label]=\"'Pattern'|translate\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #patternsMenu xPosition=\"before\">\r\n <!-- patterns -->\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">{{p.title}}</button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"reset()\" [disabled]=\"!pattern\" [bizdocTooltip]=\"'Clear' | translate\">\r\n <mat-icon>clear_all</mat-icon>\r\n </button>\r\n <!-- filters -->\r\n <ng-container *ngFor=\"let f of filters\">\r\n <button mat-button [matMenuTriggerFor]=\"fmenu\">{{axes[f.name] | typeValue : f.dataType | async}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #fmenu xPosition=\"before\">\r\n <button mat-menu-item *ngFor=\"let kv of sources[f.name] | async\"\r\n (click)=\"filter(f.name, kv.key, kv.value)\">\r\n {{kv.value}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n </div>\r\n <div class=\"loading-view\" *ngIf=\"loading\">\r\n <mat-spinner color=\"accent\"></mat-spinner>\r\n </div>\r\n <bizdoc-cube-matrix [cube]=\"cube.name\" [xAxis]=\"xAxis\" [series]=\"series\" [indices]=\"indices\" [sum]=\"sum\"\r\n [filters]=\"axes\" [scope]=\"scope\" class=\"table\"\r\n (explore)='explore($event)' [(loading)]=\"loading\"></bizdoc-cube-matrix>\r\n</ng-container>\r\n<ng-template #none>\r\n <bizdoc-none icon=\"insert_chart_outlined\" subtitle=\"NothingHere\"></bizdoc-none>\r\n</ng-template>\r\n", styles: [".table{padding:0 8px}\n"], components: [{ type: i6.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i8.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i8.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i9.MatSpinner, selector: "mat-spinner", inputs: ["color"] }, { type: i10.CubeMatrixComponent, selector: "bizdoc-cube-matrix", inputs: ["availableLabel", "cube", "xAxis", "series", "indices", "scope", "sum", "filters", "loading", "interactive"], outputs: ["explore", "loadingChange"] }, { type: i11.NoneComponent, selector: "bizdoc-none", inputs: ["title", "subtitle", "icon"] }], directives: [{ type: i12.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i12.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i13.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }], pipes: { "translate": i14.TranslatePipe, "async": i12.AsyncPipe, "typeValue": i15.TypeValuePipe } });
80
+ CubeDocumentMatrixComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: CubeDocumentMatrixComponent, deps: [{ token: i1.DocumentViewRef }, { token: i2.RouterImpl }, { token: i3.CubeService }, { token: i4.SessionService }], target: i0.ɵɵFactoryTarget.Component });
81
+ CubeDocumentMatrixComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: CubeDocumentMatrixComponent, selector: "ng-component", host: { classAttribute: "view" }, viewQueries: [{ propertyName: "table", first: true, predicate: CubeMatrixComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"hasdata; else none\">\r\n <div class=\"nav-toolbar\">\r\n <ng-container *ngIf=\"alternate\">\r\n <button mat-button [matMenuTriggerFor]=\"cmenu\">{{cube.title}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #cmenu>\r\n <button mat-menu-item *ngFor=\"let a of alternate\"\r\n (click)=\"switchTo(a)\">\r\n {{a.title}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n <span class=\"divider\"></span>\r\n <!-- title -->\r\n <button mat-icon-button [matMenuTriggerFor]=\"patternsMenu\" *ngIf=\"patterns && patterns.length\" [bizdocTooltip]=\"'Pattern'|translate\" [attr.aria-label]=\"'Pattern'|translate\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #patternsMenu xPosition=\"before\">\r\n <!-- patterns -->\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">{{p.title}}</button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"reset()\" [disabled]=\"!pattern\" [bizdocTooltip]=\"'Clear' | translate\">\r\n <mat-icon>clear_all</mat-icon>\r\n </button>\r\n <!-- filters -->\r\n <ng-container *ngFor=\"let f of filters\">\r\n <button mat-button [matMenuTriggerFor]=\"fmenu\">{{axes[f.name] | typeValue : f.dataType | async}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #fmenu xPosition=\"before\">\r\n <button mat-menu-item *ngFor=\"let kv of sources[f.name] | async\"\r\n (click)=\"filter(f.name, kv.key, kv.value)\">\r\n {{kv.value}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n </div>\r\n <div class=\"loading-view\" *ngIf=\"loading\">\r\n <mat-spinner color=\"accent\"></mat-spinner>\r\n </div>\r\n <bizdoc-cube-matrix [cube]=\"cube.name\" [xAxis]=\"xAxis\" [series]=\"series\" [indices]=\"indices\" [sum]=\"sum\"\r\n [filters]=\"axes\" [scope]=\"scope\" class=\"table\"\r\n (explore)='explore($event)' [(loading)]=\"loading\"></bizdoc-cube-matrix>\r\n</ng-container>\r\n<ng-template #none>\r\n <bizdoc-none icon=\"insert_chart_outlined\" subtitle=\"NothingHere\"></bizdoc-none>\r\n</ng-template>\r\n", styles: [".table{padding:0 8px}\n"], components: [{ type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i7.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i7.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i8.MatSpinner, selector: "mat-spinner", inputs: ["color"] }, { type: i9.CubeMatrixComponent, selector: "bizdoc-cube-matrix", inputs: ["seriesTotalLabel", "xAxisTotalLabel", "cube", "xAxis", "series", "indices", "scope", "sum", "filters", "loading", "interactive"], outputs: ["explore", "loadingChange"] }, { type: i10.NoneComponent, selector: "bizdoc-none", inputs: ["title", "subtitle", "icon"] }], directives: [{ type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i11.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i12.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }], pipes: { "translate": i13.TranslatePipe, "async": i11.AsyncPipe, "typeValue": i14.TypeValuePipe } });
83
82
  CubeDocumentMatrixComponent = __decorate([
84
83
  BizDoc({
85
84
  selector: 'bizdoc-cube-matrix'
@@ -89,8 +88,8 @@ export { CubeDocumentMatrixComponent };
89
88
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: CubeDocumentMatrixComponent, decorators: [{
90
89
  type: Component,
91
90
  args: [{ host: { class: 'view' }, template: "<ng-container *ngIf=\"hasdata; else none\">\r\n <div class=\"nav-toolbar\">\r\n <ng-container *ngIf=\"alternate\">\r\n <button mat-button [matMenuTriggerFor]=\"cmenu\">{{cube.title}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #cmenu>\r\n <button mat-menu-item *ngFor=\"let a of alternate\"\r\n (click)=\"switchTo(a)\">\r\n {{a.title}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n <span class=\"divider\"></span>\r\n <!-- title -->\r\n <button mat-icon-button [matMenuTriggerFor]=\"patternsMenu\" *ngIf=\"patterns && patterns.length\" [bizdocTooltip]=\"'Pattern'|translate\" [attr.aria-label]=\"'Pattern'|translate\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #patternsMenu xPosition=\"before\">\r\n <!-- patterns -->\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">{{p.title}}</button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"reset()\" [disabled]=\"!pattern\" [bizdocTooltip]=\"'Clear' | translate\">\r\n <mat-icon>clear_all</mat-icon>\r\n </button>\r\n <!-- filters -->\r\n <ng-container *ngFor=\"let f of filters\">\r\n <button mat-button [matMenuTriggerFor]=\"fmenu\">{{axes[f.name] | typeValue : f.dataType | async}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #fmenu xPosition=\"before\">\r\n <button mat-menu-item *ngFor=\"let kv of sources[f.name] | async\"\r\n (click)=\"filter(f.name, kv.key, kv.value)\">\r\n {{kv.value}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n </div>\r\n <div class=\"loading-view\" *ngIf=\"loading\">\r\n <mat-spinner color=\"accent\"></mat-spinner>\r\n </div>\r\n <bizdoc-cube-matrix [cube]=\"cube.name\" [xAxis]=\"xAxis\" [series]=\"series\" [indices]=\"indices\" [sum]=\"sum\"\r\n [filters]=\"axes\" [scope]=\"scope\" class=\"table\"\r\n (explore)='explore($event)' [(loading)]=\"loading\"></bizdoc-cube-matrix>\r\n</ng-container>\r\n<ng-template #none>\r\n <bizdoc-none icon=\"insert_chart_outlined\" subtitle=\"NothingHere\"></bizdoc-none>\r\n</ng-template>\r\n", styles: [".table{padding:0 8px}\n"] }]
92
- }], ctorParameters: function () { return [{ type: i1.DocumentViewRef }, { type: i2.RouterImpl }, { type: i3.CubeService }, { type: i4.DatasourceService }, { type: i5.SessionService }]; }, propDecorators: { table: [{
91
+ }], ctorParameters: function () { return [{ type: i1.DocumentViewRef }, { type: i2.RouterImpl }, { type: i3.CubeService }, { type: i4.SessionService }]; }, propDecorators: { table: [{
93
92
  type: ViewChild,
94
93
  args: [CubeMatrixComponent, { static: true }]
95
94
  }] } });
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0cml4LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvdmlld3MvY3ViZS9tYXRyaXguY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi92aWV3cy9jdWJlL21hdHJpeC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFckQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQU8vQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxtQkFBbUIsRUFBZSxNQUFNLG1DQUFtQyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7OztJQVd4RSwyQkFBMkIsU0FBM0IsMkJBQTRCLFNBQVEsUUFBaUI7SUFRaEUsWUFDRSxPQUFpQyxFQUN6QixPQUFtQixFQUMzQixPQUFvQixFQUNaLEdBQXNCLEVBQzlCLE9BQXVCO1FBQ3ZCLEtBQUssQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUovQixZQUFPLEdBQVAsT0FBTyxDQUFZO1FBRW5CLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBVnZCLFlBQU8sR0FBb0UsRUFBRSxDQUFDO0lBYXZGLENBQUM7SUFFRCxVQUFVO1FBQ1IsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7UUFDOUUsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLE1BQU07WUFBRSxNQUFN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LEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO0lBQ3BCLENBQUM7Q0FDRixDQUFBO3dIQXhFWSwyQkFBMkI7NEdBQTNCLDJCQUEyQiw2SEFDM0IsbUJBQW1CLHFGQ3hCaEMsa3RFQTBDQTtBRG5CYSwyQkFBMkI7SUFIdkMsTUFBTSxDQUFDO1FBQ04sUUFBUSxFQUFFLG9CQUFvQjtLQUMvQixDQUFDO0dBQ1csMkJBQTJCLENBd0V2QztTQXhFWSwyQkFBMkI7MkZBQTNCLDJCQUEyQjtrQkFSdkMsU0FBUzsyQkFHRixFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUU7c05BTTJCLEtBQUs7c0JBQXRELFNBQVM7dUJBQUMsbUJBQW1CLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3Q2hpbGQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgaXNBcnJheSB9IGZyb20gXCIuLi8uLi9jb3JlL2Z1bmN0aW9uc1wiO1xyXG5pbXBvcnQgeyBEb2N1bWVudFZpZXdDb21wb25lbnQgfSBmcm9tIFwiLi4vLi4vY29yZS9iYXNlXCI7XHJcbmltcG9ydCB7IEJpekRvYyB9IGZyb20gXCIuLi8uLi9jb3JlL2RlY29yYXRvcnNcIjtcclxuaW1wb3J0IHsgQXhlc01hcCwgQ3ViZUF4aXMgfSBmcm9tIFwiLi4vLi4vY29yZS9tb2RlbHNcIjtcclxuaW1wb3J0IHsgRGF0YXNvdXJjZVNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vY29yZS9kYXRhc291cmNlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgU2Vzc2lvblNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vY29yZS9zZXNzaW9uLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgUm91dGVySW1wbCB9IGZyb20gXCIuLi8uLi9jb3JlL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBDdWJlU2VydmljZSwgUGF0dGVybiB9IGZyb20gXCIuLi8uLi9jdWJlL2N1YmUuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBEb2N1bWVudFZpZXdSZWYgfSBmcm9tIFwiLi4vZG9jdW1lbnQtdmlldy1yZWZcIjtcclxuaW1wb3J0IHsgQ3ViZUJhc2UgfSBmcm9tIFwiLi9jdWJlLWJhc2VcIjtcclxuaW1wb3J0IHsgQ3ViZU1hdHJpeENvbXBvbmVudCwgU3VtU2V0dGluZ3MgfSBmcm9tIFwiLi4vLi4vY3ViZS9tYXRyaXgvdGFibGUuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFNjb3BlVHlwZSB9IGZyb20gXCIuLi8uLi9jb3JlL2NvbmZpZ3VyYXRpb25cIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHRlbXBsYXRlVXJsOiAnbWF0cml4LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnbWF0cml4LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgaG9zdDogeyBjbGFzczogJ3ZpZXcnIH1cclxufSlcclxuQEJpekRvYyh7XHJcbiAgc2VsZWN0b3I6ICdiaXpkb2MtY3ViZS1tYXRyaXgnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDdWJlRG9jdW1lbnRNYXRyaXhDb21wb25lbnQgZXh0ZW5kcyBDdWJlQmFzZTxPcHRpb25zPiB7XHJcbiAgQFZpZXdDaGlsZChDdWJlTWF0cml4Q29tcG9uZW50LCB7IHN0YXRpYzogdHJ1ZSB9KSB0YWJsZTogQ3ViZU1hdHJpeENvbXBvbmVudDtcclxuICByZWFkb25seSBzb3VyY2VzOiB7IFtheGlzOiBzdHJpbmddOiBPYnNlcnZhYmxlPHsga2V5OiBzdHJpbmc7IHZhbHVlOiBhbnk7IH1bXT47IH0gPSB7fTtcclxuICBmaWx0ZXJzOiBDdWJlQXhpc1tdO1xyXG4gIGluZGljZXM/OiBzdHJpbmcgfCBzdHJpbmdbXTtcclxuICB4QXhpczogc3RyaW5nO1xyXG4gIHNlcmllczogc3RyaW5nO1xyXG4gIHN1bT86IFN1bVNldHRpbmdzIHwgU3VtU2V0dGluZ3NbXTtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHZpZXdSZWY6IERvY3VtZW50Vmlld1JlZjxPcHRpb25zPixcclxuICAgIHByaXZhdGUgX3JvdXRlcjogUm91dGVySW1wbCxcclxuICAgIHNlcnZpY2U6IEN1YmVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfZHM6IERhdGFzb3VyY2VTZXJ2aWNlLFxyXG4gICAgc2Vzc2lvbjogU2Vzc2lvblNlcnZpY2UpIHtcclxuICAgIHN1cGVyKHZpZXdSZWYsIHNlcnZpY2UsIHNlc3Npb24sIHRydWUpO1xyXG4gIH1cclxuXHJcbiAgb25WaWV3QmluZCgpIHtcclxuICAgIGNvbnN0IHsgeEF4aXMsIHNlcmllcywgaW5kaWNlcywgc3VtLCBzY29wZSwgZmlsdGVycyB9ID0gdGhpcy5fdmlld1JlZi5vcHRpb25zO1xyXG4gICAgaWYgKCF4QXhpcyB8fCAhc2VyaWVzKSB0aHJvdyAneEF4aXMgYW5kIHNlcmllIHJlcXVpcmVkJztcclxuICAgIHRoaXMueEF4aXMgPSBpc0FycmF5KHhBeGlzKSA/IHhBeGlzWzBdIDogeEF4aXM7XHJcbiAgICB0aGlzLnNlcmllcyA9IGlzQXJyYXkoc2VyaWVzKSA/IHNlcmllc1swXSA6IHNlcmllcztcclxuICAgIHRoaXMuaW5kaWNlcyA9IGluZGljZXM7XHJcbiAgICB0aGlzLnN1bSA9IHN1bTtcclxuICAgIHRoaXMuc2NvcGUgPSBzY29wZTtcclxuXHJcbiAgICB0aGlzLl9zZXJ2aWNlLnBhdHRlcm5zKHRoaXMuY3ViZS5uYW1lKS5zdWJzY3JpYmUocCA9PiB0aGlzLnBhdHRlcm5zID0gcCk7XHJcbiAgICAvKiogb25lIG9yIG1vcmUgYXhpcyAqL1xyXG4gICAgdGhpcy5maWx0ZXJzID0gdGhpcy5jdWJlLmF4ZXMuZmlsdGVyKGEgPT4gaXNBcnJheShmaWx0ZXJzKSA/XHJcbiAgICAgIGZpbHRlcnMuaW5kZXhPZihhLm5hbWUpID4gLTEgOlxyXG4gICAgICBhLm5hbWUgPT09IGZpbHRlcnMpO1xyXG4gICAgdGhpcy5maWx0ZXJzLmZvckVhY2goZiA9PlxyXG4gICAgICB0aGlzLnNvdXJjZXNbZi5uYW1lXSA9IHRoaXMuX2RzLmFsbChmLmRhdGFUeXBlKVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGV4cGxvcmUoYXhlczogQXhlc01hcCkge1xyXG4gICAgdGhpcy5fcm91dGVyLm5hdmlnYXRlKFsnY3ViZScsIHRoaXMuY3ViZS5uYW1lLCAnZXhwbG9yZSddLCB7XHJcbiAgICAgIHF1ZXJ5UGFyYW1zOiBheGVzLFxyXG4gICAgICBncm91cDogdGhpcy5ncm91cFxyXG4gICAgfSk7XHJcblxyXG4gIH1cclxuICAvKipcclxuICpcclxuICogQHBhcmFtIHZhbHVlXHJcbiAqL1xyXG4gIGZpbHRlcihuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfCBudW1iZXIsIHRpdGxlOiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IGF4ZXMgPSB7IC4uLnRoaXMuYXhlcyB9O1xyXG4gICAgYXhlc1tuYW1lXSA9IHZhbHVlO1xyXG4gICAgdGhpcy5hbnlGaWx0ZXJzID0gdHJ1ZTtcclxuICAgIHRoaXMuYXhlcyA9IGF4ZXM7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAgKlxyXG4gICAgKiBAcGFyYW0gcGF0dGVyblxyXG4gICAgKi9cclxuICBwYXR0ZXJuQ2hhbmdlKHBhdHRlcm46IFBhdHRlcm4pIHtcclxuICAgIGNvbnN0IGF4ZXMgPSB7IC4uLnBhdHRlcm4uYXhlcyB9O1xyXG4gICAgdGhpcy5fc2VydmljZS5iYXNlKHRoaXMuY3ViZS5uYW1lLCBheGVzLCB0aGlzLm9yaWdpbmFsQXhlcyk7XHJcbiAgICB0aGlzLmF4ZXMgPSBheGVzO1xyXG4gICAgdGhpcy5hbnlGaWx0ZXJzID0gdHJ1ZTtcclxuICAgIHRoaXMudGl0bGUgPSBwYXR0ZXJuLnRpdGxlO1xyXG4gICAgdGhpcy5wYXR0ZXJuID0gcGF0dGVybjtcclxuICB9XHJcblxyXG4gIHJlc2V0KCkge1xyXG4gICAgdGhpcy5heGVzID0gc3VwZXIuYWdncmVnYXRlKHRoaXMub3JpZ2luYWxBeGVzKTtcclxuICAgIHRoaXMuYW55RmlsdGVycyA9IGZhbHNlO1xyXG4gICAgdGhpcy5wYXR0ZXJuID0gbnVsbDtcclxuICAgIHRoaXMudGl0bGUgPSBudWxsO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBPcHRpb25zIHtcclxuICBmaWx0ZXJzOiBzdHJpbmdbXSB8IHN0cmluZztcclxuICBzdW06IFN1bVNldHRpbmdzIHwgU3VtU2V0dGluZ3NbXTtcclxuICBpbmRpY2VzOiBzdHJpbmdbXSB8IHN0cmluZztcclxuICBhZ2dyZWdhdGU6IHN0cmluZ1tdO1xyXG4gIHhBeGlzOiBzdHJpbmc7XHJcbiAgc2VyaWVzOiBzdHJpbmc7XHJcbiAgc2NvcGU/OiBTY29wZVR5cGU7XHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImhhc2RhdGE7IGVsc2Ugbm9uZVwiPlxyXG4gIDxkaXYgY2xhc3M9XCJuYXYtdG9vbGJhclwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImFsdGVybmF0ZVwiPlxyXG4gICAgICA8YnV0dG9uIG1hdC1idXR0b24gW21hdE1lbnVUcmlnZ2VyRm9yXT1cImNtZW51XCI+e3tjdWJlLnRpdGxlfX0gPG1hdC1pY29uPmFycm93X2Ryb3BfZG93bjwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgICAgIDxtYXQtbWVudSAjY21lbnU+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtICpuZ0Zvcj1cImxldCBhIG9mIGFsdGVybmF0ZVwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwic3dpdGNoVG8oYSlcIj5cclxuICAgICAgICAgIHt7YS50aXRsZX19XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgIDwvbWF0LW1lbnU+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxzcGFuIGNsYXNzPVwiZGl2aWRlclwiPjwvc3Bhbj5cclxuICAgIDwhLS0gdGl0bGUgLS0+XHJcbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBbbWF0TWVudVRyaWdnZXJGb3JdPVwicGF0dGVybnNNZW51XCIgKm5nSWY9XCJwYXR0ZXJucyAmJiBwYXR0ZXJucy5sZW5ndGhcIiBbYml6ZG9jVG9vbHRpcF09XCInUGF0dGVybid8dHJhbnNsYXRlXCIgW2F0dHIuYXJpYS1sYWJlbF09XCInUGF0dGVybid8dHJhbnNsYXRlXCI+PG1hdC1pY29uIFtjbGFzcy5maWxsZWRdPVwicGF0dGVyblwiPmZpbHRlcl9hbHQ8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgPG1hdC1tZW51ICNwYXR0ZXJuc01lbnUgeFBvc2l0aW9uPVwiYmVmb3JlXCI+XHJcbiAgICAgIDwhLS0gcGF0dGVybnMgLS0+XHJcbiAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAqbmdGb3I9XCJsZXQgcCBvZiBwYXR0ZXJuc1wiIChjbGljayk9XCJwYXR0ZXJuQ2hhbmdlKHApXCI+e3twLnRpdGxlfX08L2J1dHRvbj5cclxuICAgIDwvbWF0LW1lbnU+XHJcbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwicmVzZXQoKVwiIFtkaXNhYmxlZF09XCIhcGF0dGVyblwiIFtiaXpkb2NUb29sdGlwXT1cIidDbGVhcicgfCB0cmFuc2xhdGVcIj5cclxuICAgICAgPG1hdC1pY29uPmNsZWFyX2FsbDwvbWF0LWljb24+XHJcbiAgICA8L2J1dHRvbj5cclxuICAgIDwhLS0gZmlsdGVycyAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGYgb2YgZmlsdGVyc1wiPlxyXG4gICAgICA8YnV0dG9uIG1hdC1idXR0b24gW21hdE1lbnVUcmlnZ2VyRm9yXT1cImZtZW51XCI+e3theGVzW2YubmFtZV0gfCB0eXBlVmFsdWUgOiBmLmRhdGFUeXBlIHwgYXN5bmN9fSA8bWF0LWljb24+YXJyb3dfZHJvcF9kb3duPC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICAgICAgPG1hdC1tZW51ICNmbWVudSB4UG9zaXRpb249XCJiZWZvcmVcIj5cclxuICAgICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKm5nRm9yPVwibGV0IGt2IG9mIHNvdXJjZXNbZi5uYW1lXSB8IGFzeW5jXCJcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJmaWx0ZXIoZi5uYW1lLCBrdi5rZXksIGt2LnZhbHVlKVwiPlxyXG4gICAgICAgICAge3trdi52YWx1ZX19XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgIDwvbWF0LW1lbnU+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwibG9hZGluZy12aWV3XCIgKm5nSWY9XCJsb2FkaW5nXCI+XHJcbiAgICA8bWF0LXNwaW5uZXIgY29sb3I9XCJhY2NlbnRcIj48L21hdC1zcGlubmVyPlxyXG4gIDwvZGl2PlxyXG4gIDxiaXpkb2MtY3ViZS1tYXRyaXggW2N1YmVdPVwiY3ViZS5uYW1lXCIgW3hBeGlzXT1cInhBeGlzXCIgW3Nlcmllc109XCJzZXJpZXNcIiBbaW5kaWNlc109XCJpbmRpY2VzXCIgW3N1bV09XCJzdW1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtmaWx0ZXJzXT1cImF4ZXNcIiBbc2NvcGVdPVwic2NvcGVcIiBjbGFzcz1cInRhYmxlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAoZXhwbG9yZSk9J2V4cGxvcmUoJGV2ZW50KScgWyhsb2FkaW5nKV09XCJsb2FkaW5nXCI+PC9iaXpkb2MtY3ViZS1tYXRyaXg+XHJcbjwvbmctY29udGFpbmVyPlxyXG48bmctdGVtcGxhdGUgI25vbmU+XHJcbiAgPGJpemRvYy1ub25lIGljb249XCJpbnNlcnRfY2hhcnRfb3V0bGluZWRcIiBzdWJ0aXRsZT1cIk5vdGhpbmdIZXJlXCI+PC9iaXpkb2Mtbm9uZT5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0cml4LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvdmlld3MvY3ViZS9tYXRyaXguY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi92aWV3cy9jdWJlL21hdHJpeC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLEdBQUcsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQU8vQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxtQkFBbUIsRUFBZSxNQUFNLG1DQUFtQyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7O0lBV3hFLDJCQUEyQixTQUEzQiwyQkFBNEIsU0FBUSxRQUFpQjtJQVFoRSxZQUNFLE9BQWlDLEVBQ3pCLE9BQW1CLEVBQzNCLE9BQW9CLEVBQ3BCLE9BQXVCO1FBQ3ZCLEtBQUssQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUgvQixZQUFPLEdBQVAsT0FBTyxDQUFZO1FBUnBCLFlBQU8sR0FBb0UsRUFBRSxDQUFDO0lBWXZGLENBQUM7SUFFRCxVQUFVO1FBQ1IsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7UUFDOUUsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLE1BQU07WUFBRSxNQUFNLDBCQUEwQixDQUFDO1FBQ3hELElBQUksQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUMvQyxJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDbkQsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUVuQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDekUsdUJBQXVCO1FBQ3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7WUFDMUQsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM5QixDQUFDLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQ3ZCLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQzFGLENBQUM7SUFDSixDQUFDO0lBRUQsT0FBTyxDQUFDLElBQWE7UUFDbkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLEVBQUU7WUFDekQsV0FBVyxFQUFFLElBQUk7WUFDakIsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO1NBQ2xCLENBQUMsQ0FBQztJQUVMLENBQUM7SUFDRDs7O0tBR0M7SUFDRCxNQUFNLENBQUMsSUFBWSxFQUFFLEtBQXNCLEVBQUUsS0FBYTtRQUN4RCxNQUFNLElBQUksR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzlCLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFDdkIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUNEOzs7UUFHSTtJQUNKLGFBQWEsQ0FBQyxPQUFnQjtRQUM1QixNQUFNLElBQUksR0FBRyxFQUFFLEdBQUcsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFDdkIsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQzNCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUN4QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNwQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztJQUNwQixDQUFDO0NBQ0YsQ0FBQTt3SEF2RVksMkJBQTJCOzRHQUEzQiwyQkFBMkIsNkhBQzNCLG1CQUFtQixxRkN2QmhDLGt0RUEwQ0E7QURwQmEsMkJBQTJCO0lBSHZDLE1BQU0sQ0FBQztRQUNOLFFBQVEsRUFBRSxvQkFBb0I7S0FDL0IsQ0FBQztHQUNXLDJCQUEyQixDQXVFdkM7U0F2RVksMkJBQTJCOzJGQUEzQiwyQkFBMkI7a0JBUnZDLFNBQVM7MkJBR0YsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFO3NMQU0yQixLQUFLO3NCQUF0RCxTQUFTO3VCQUFDLG1CQUFtQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgVmlld0NoaWxkIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgbWFwLCBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgaXNBcnJheSwgbWFwVG9BcnJheSB9IGZyb20gXCIuLi8uLi9jb3JlL2Z1bmN0aW9uc1wiO1xyXG5pbXBvcnQgeyBCaXpEb2MgfSBmcm9tIFwiLi4vLi4vY29yZS9kZWNvcmF0b3JzXCI7XHJcbmltcG9ydCB7IEF4ZXNNYXAsIEN1YmVBeGlzIH0gZnJvbSBcIi4uLy4uL2NvcmUvbW9kZWxzXCI7XHJcbmltcG9ydCB7IERhdGFzb3VyY2VTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL2NvcmUvZGF0YXNvdXJjZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFNlc3Npb25TZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL2NvcmUvc2Vzc2lvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFJvdXRlckltcGwgfSBmcm9tIFwiLi4vLi4vY29yZS9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgQ3ViZVNlcnZpY2UsIFBhdHRlcm4gfSBmcm9tIFwiLi4vLi4vY3ViZS9jdWJlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgRG9jdW1lbnRWaWV3UmVmIH0gZnJvbSBcIi4uL2RvY3VtZW50LXZpZXctcmVmXCI7XHJcbmltcG9ydCB7IEN1YmVCYXNlIH0gZnJvbSBcIi4vY3ViZS1iYXNlXCI7XHJcbmltcG9ydCB7IEN1YmVNYXRyaXhDb21wb25lbnQsIFN1bVNldHRpbmdzIH0gZnJvbSBcIi4uLy4uL2N1YmUvbWF0cml4L3RhYmxlLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBTY29wZVR5cGUgfSBmcm9tIFwiLi4vLi4vY29yZS9jb25maWd1cmF0aW9uXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZVVybDogJ21hdHJpeC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJ21hdHJpeC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGhvc3Q6IHsgY2xhc3M6ICd2aWV3JyB9XHJcbn0pXHJcbkBCaXpEb2Moe1xyXG4gIHNlbGVjdG9yOiAnYml6ZG9jLWN1YmUtbWF0cml4J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQ3ViZURvY3VtZW50TWF0cml4Q29tcG9uZW50IGV4dGVuZHMgQ3ViZUJhc2U8T3B0aW9ucz4ge1xyXG4gIEBWaWV3Q2hpbGQoQ3ViZU1hdHJpeENvbXBvbmVudCwgeyBzdGF0aWM6IHRydWUgfSkgdGFibGU6IEN1YmVNYXRyaXhDb21wb25lbnQ7XHJcbiAgcmVhZG9ubHkgc291cmNlczogeyBbYXhpczogc3RyaW5nXTogT2JzZXJ2YWJsZTx7IGtleTogc3RyaW5nOyB2YWx1ZTogYW55OyB9W10+OyB9ID0ge307XHJcbiAgZmlsdGVyczogQ3ViZUF4aXNbXTtcclxuICBpbmRpY2VzPzogc3RyaW5nIHwgc3RyaW5nW107XHJcbiAgeEF4aXM6IHN0cmluZztcclxuICBzZXJpZXM6IHN0cmluZztcclxuICBzdW0/OiBTdW1TZXR0aW5ncyB8IFN1bVNldHRpbmdzW107XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICB2aWV3UmVmOiBEb2N1bWVudFZpZXdSZWY8T3B0aW9ucz4sXHJcbiAgICBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlckltcGwsXHJcbiAgICBzZXJ2aWNlOiBDdWJlU2VydmljZSxcclxuICAgIHNlc3Npb246IFNlc3Npb25TZXJ2aWNlKSB7XHJcbiAgICBzdXBlcih2aWV3UmVmLCBzZXJ2aWNlLCBzZXNzaW9uLCB0cnVlKTtcclxuICB9XHJcblxyXG4gIG9uVmlld0JpbmQoKSB7XHJcbiAgICBjb25zdCB7IHhBeGlzLCBzZXJpZXMsIGluZGljZXMsIHN1bSwgc2NvcGUsIGZpbHRlcnMgfSA9IHRoaXMuX3ZpZXdSZWYub3B0aW9ucztcclxuICAgIGlmICgheEF4aXMgfHwgIXNlcmllcykgdGhyb3cgJ3hBeGlzIGFuZCBzZXJpZSByZXF1aXJlZCc7XHJcbiAgICB0aGlzLnhBeGlzID0gaXNBcnJheSh4QXhpcykgPyB4QXhpc1swXSA6IHhBeGlzO1xyXG4gICAgdGhpcy5zZXJpZXMgPSBpc0FycmF5KHNlcmllcykgPyBzZXJpZXNbMF0gOiBzZXJpZXM7XHJcbiAgICB0aGlzLmluZGljZXMgPSBpbmRpY2VzO1xyXG4gICAgdGhpcy5zdW0gPSBzdW07XHJcbiAgICB0aGlzLnNjb3BlID0gc2NvcGU7XHJcblxyXG4gICAgdGhpcy5fc2VydmljZS5wYXR0ZXJucyh0aGlzLmN1YmUubmFtZSkuc3Vic2NyaWJlKHAgPT4gdGhpcy5wYXR0ZXJucyA9IHApO1xyXG4gICAgLyoqIG9uZSBvciBtb3JlIGF4aXMgKi9cclxuICAgIHRoaXMuZmlsdGVycyA9IHRoaXMuY3ViZS5heGVzLmZpbHRlcihhID0+IGlzQXJyYXkoZmlsdGVycykgP1xyXG4gICAgICBmaWx0ZXJzLmluZGV4T2YoYS5uYW1lKSA+IC0xIDpcclxuICAgICAgYS5uYW1lID09PSBmaWx0ZXJzKTtcclxuICAgIHRoaXMuZmlsdGVycy5mb3JFYWNoKGYgPT5cclxuICAgICAgdGhpcy5zb3VyY2VzW2YubmFtZV0gPSB0aGlzLl9zZXJ2aWNlLnZhbHVlcyh0aGlzLmN1YmUubmFtZSwgZi5uYW1lKS5waXBlKG1hcChtYXBUb0FycmF5KSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBleHBsb3JlKGF4ZXM6IEF4ZXNNYXApIHtcclxuICAgIHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShbJ2N1YmUnLCB0aGlzLmN1YmUubmFtZSwgJ2V4cGxvcmUnXSwge1xyXG4gICAgICBxdWVyeVBhcmFtczogYXhlcyxcclxuICAgICAgZ3JvdXA6IHRoaXMuZ3JvdXBcclxuICAgIH0pO1xyXG5cclxuICB9XHJcbiAgLyoqXHJcbiAqXHJcbiAqIEBwYXJhbSB2YWx1ZVxyXG4gKi9cclxuICBmaWx0ZXIobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyLCB0aXRsZTogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBheGVzID0geyAuLi50aGlzLmF4ZXMgfTtcclxuICAgIGF4ZXNbbmFtZV0gPSB2YWx1ZTtcclxuICAgIHRoaXMuYW55RmlsdGVycyA9IHRydWU7XHJcbiAgICB0aGlzLmF4ZXMgPSBheGVzO1xyXG4gIH1cclxuICAvKipcclxuICAgICpcclxuICAgICogQHBhcmFtIHBhdHRlcm5cclxuICAgICovXHJcbiAgcGF0dGVybkNoYW5nZShwYXR0ZXJuOiBQYXR0ZXJuKSB7XHJcbiAgICBjb25zdCBheGVzID0geyAuLi5wYXR0ZXJuLmF4ZXMgfTtcclxuICAgIHRoaXMuX3NlcnZpY2UuYmFzZSh0aGlzLmN1YmUubmFtZSwgYXhlcywgdGhpcy5vcmlnaW5hbEF4ZXMpO1xyXG4gICAgdGhpcy5heGVzID0gYXhlcztcclxuICAgIHRoaXMuYW55RmlsdGVycyA9IHRydWU7XHJcbiAgICB0aGlzLnRpdGxlID0gcGF0dGVybi50aXRsZTtcclxuICAgIHRoaXMucGF0dGVybiA9IHBhdHRlcm47XHJcbiAgfVxyXG5cclxuICByZXNldCgpIHtcclxuICAgIHRoaXMuYXhlcyA9IHN1cGVyLmFnZ3JlZ2F0ZSh0aGlzLm9yaWdpbmFsQXhlcyk7XHJcbiAgICB0aGlzLmFueUZpbHRlcnMgPSBmYWxzZTtcclxuICAgIHRoaXMucGF0dGVybiA9IG51bGw7XHJcbiAgICB0aGlzLnRpdGxlID0gbnVsbDtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgT3B0aW9ucyB7XHJcbiAgZmlsdGVyczogc3RyaW5nW10gfCBzdHJpbmc7XHJcbiAgc3VtOiBTdW1TZXR0aW5ncyB8IFN1bVNldHRpbmdzW107XHJcbiAgaW5kaWNlczogc3RyaW5nW10gfCBzdHJpbmc7XHJcbiAgYWdncmVnYXRlOiBzdHJpbmdbXTtcclxuICB4QXhpczogc3RyaW5nO1xyXG4gIHNlcmllczogc3RyaW5nO1xyXG4gIHNjb3BlPzogU2NvcGVUeXBlO1xyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJoYXNkYXRhOyBlbHNlIG5vbmVcIj5cclxuICA8ZGl2IGNsYXNzPVwibmF2LXRvb2xiYXJcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhbHRlcm5hdGVcIj5cclxuICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIFttYXRNZW51VHJpZ2dlckZvcl09XCJjbWVudVwiPnt7Y3ViZS50aXRsZX19IDxtYXQtaWNvbj5hcnJvd19kcm9wX2Rvd248L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgICA8bWF0LW1lbnUgI2NtZW51PlxyXG4gICAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAqbmdGb3I9XCJsZXQgYSBvZiBhbHRlcm5hdGVcIlxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cInN3aXRjaFRvKGEpXCI+XHJcbiAgICAgICAgICB7e2EudGl0bGV9fVxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8L21hdC1tZW51PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8c3BhbiBjbGFzcz1cImRpdmlkZXJcIj48L3NwYW4+XHJcbiAgICA8IS0tIHRpdGxlIC0tPlxyXG4gICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gW21hdE1lbnVUcmlnZ2VyRm9yXT1cInBhdHRlcm5zTWVudVwiICpuZ0lmPVwicGF0dGVybnMgJiYgcGF0dGVybnMubGVuZ3RoXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ1BhdHRlcm4nfHRyYW5zbGF0ZVwiIFthdHRyLmFyaWEtbGFiZWxdPVwiJ1BhdHRlcm4nfHRyYW5zbGF0ZVwiPjxtYXQtaWNvbiBbY2xhc3MuZmlsbGVkXT1cInBhdHRlcm5cIj5maWx0ZXJfYWx0PC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICAgIDxtYXQtbWVudSAjcGF0dGVybnNNZW51IHhQb3NpdGlvbj1cImJlZm9yZVwiPlxyXG4gICAgICA8IS0tIHBhdHRlcm5zIC0tPlxyXG4gICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKm5nRm9yPVwibGV0IHAgb2YgcGF0dGVybnNcIiAoY2xpY2spPVwicGF0dGVybkNoYW5nZShwKVwiPnt7cC50aXRsZX19PC9idXR0b24+XHJcbiAgICA8L21hdC1tZW51PlxyXG4gICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cInJlc2V0KClcIiBbZGlzYWJsZWRdPVwiIXBhdHRlcm5cIiBbYml6ZG9jVG9vbHRpcF09XCInQ2xlYXInIHwgdHJhbnNsYXRlXCI+XHJcbiAgICAgIDxtYXQtaWNvbj5jbGVhcl9hbGw8L21hdC1pY29uPlxyXG4gICAgPC9idXR0b24+XHJcbiAgICA8IS0tIGZpbHRlcnMgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBmIG9mIGZpbHRlcnNcIj5cclxuICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIFttYXRNZW51VHJpZ2dlckZvcl09XCJmbWVudVwiPnt7YXhlc1tmLm5hbWVdIHwgdHlwZVZhbHVlIDogZi5kYXRhVHlwZSB8IGFzeW5jfX0gPG1hdC1pY29uPmFycm93X2Ryb3BfZG93bjwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgICAgIDxtYXQtbWVudSAjZm1lbnUgeFBvc2l0aW9uPVwiYmVmb3JlXCI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtICpuZ0Zvcj1cImxldCBrdiBvZiBzb3VyY2VzW2YubmFtZV0gfCBhc3luY1wiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiZmlsdGVyKGYubmFtZSwga3Yua2V5LCBrdi52YWx1ZSlcIj5cclxuICAgICAgICAgIHt7a3YudmFsdWV9fVxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8L21hdC1tZW51PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cImxvYWRpbmctdmlld1wiICpuZ0lmPVwibG9hZGluZ1wiPlxyXG4gICAgPG1hdC1zcGlubmVyIGNvbG9yPVwiYWNjZW50XCI+PC9tYXQtc3Bpbm5lcj5cclxuICA8L2Rpdj5cclxuICA8Yml6ZG9jLWN1YmUtbWF0cml4IFtjdWJlXT1cImN1YmUubmFtZVwiIFt4QXhpc109XCJ4QXhpc1wiIFtzZXJpZXNdPVwic2VyaWVzXCIgW2luZGljZXNdPVwiaW5kaWNlc1wiIFtzdW1dPVwic3VtXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbZmlsdGVyc109XCJheGVzXCIgW3Njb3BlXT1cInNjb3BlXCIgY2xhc3M9XCJ0YWJsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKGV4cGxvcmUpPSdleHBsb3JlKCRldmVudCknIFsobG9hZGluZyldPVwibG9hZGluZ1wiPjwvYml6ZG9jLWN1YmUtbWF0cml4PlxyXG48L25nLWNvbnRhaW5lcj5cclxuPG5nLXRlbXBsYXRlICNub25lPlxyXG4gIDxiaXpkb2Mtbm9uZSBpY29uPVwiaW5zZXJ0X2NoYXJ0X291dGxpbmVkXCIgc3VidGl0bGU9XCJOb3RoaW5nSGVyZVwiPjwvYml6ZG9jLW5vbmU+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==