@eo-sdk/client 9.1.0-rc.1 → 9.2.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/app/eo-client/inbox-state/inbox-state/inbox.types.enum.d.ts +2 -2
  2. package/app/eo-framework/actions/action-menu/action-menu.component.d.ts +4 -2
  3. package/app/eo-framework/actions/action.module.d.ts +2 -1
  4. package/app/eo-framework/actions/actions/add-resubmission-action/add-resubmission/add-resubmission.component.d.ts +2 -1
  5. package/app/eo-framework/actions/actions/add-subscription-action/add-subscription/add-subscription.component.d.ts +2 -1
  6. package/app/eo-framework/actions/actions/delete-action/delete/delete.component.d.ts +4 -2
  7. package/app/eo-framework/actions/actions/finalize/finalize-action.d.ts +5 -5
  8. package/app/eo-framework/actions/actions/finalize/finalize-object-action/finalize-object-action.component.d.ts +14 -0
  9. package/app/eo-framework/actions/actions/share-object-action/share-object/share-object.component.d.ts +5 -2
  10. package/app/eo-framework/form-elements/organization/organization.component.d.ts +3 -2
  11. package/app/eo-framework/grid/extensions/filter/setFilters/set-filter.component.d.ts +0 -1
  12. package/app/eo-framework/grid/extensions/filter/text/text-filter.component.d.ts +8 -4
  13. package/app/eo-framework/util/directive/prevent-double-click.directive.d.ts +1 -0
  14. package/assets/_default/i18n/de.json +11 -6
  15. package/assets/_default/i18n/en.json +11 -5
  16. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.js +547 -515
  17. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.js.map +1 -1
  18. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.min.js +2 -3
  19. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.min.js.map +1 -1
  20. package/bundles/eo-sdk-client.umd.js +326 -214
  21. package/bundles/eo-sdk-client.umd.js.map +1 -1
  22. package/bundles/eo-sdk-client.umd.min.js +1 -1
  23. package/bundles/eo-sdk-client.umd.min.js.map +1 -1
  24. package/eo-sdk-client.d.ts +60 -60
  25. package/eo-sdk-client.metadata.json +1 -1
  26. package/esm2015/app/eo-client/about-state/about-state.component.js +3 -3
  27. package/esm2015/app/eo-client/dashboard/dashboard.component.js +2 -4
  28. package/esm2015/app/eo-client/inbox-state/inbox-state/inbox-state.component.js +9 -7
  29. package/esm2015/app/eo-client/inbox-state/inbox-state/inbox.types.enum.js +3 -3
  30. package/esm2015/app/eo-client/object-state/object-state/object-state.component.js +2 -2
  31. package/esm2015/app/eo-framework/actions/action-menu/action-menu.component.js +14 -5
  32. package/esm2015/app/eo-framework/actions/action.module.js +4 -1
  33. package/esm2015/app/eo-framework/actions/actions/add-resubmission-action/add-resubmission/add-resubmission.component.js +7 -3
  34. package/esm2015/app/eo-framework/actions/actions/add-subscription-action/add-subscription/add-subscription.component.js +8 -4
  35. package/esm2015/app/eo-framework/actions/actions/delete-action/delete/delete.component.js +11 -4
  36. package/esm2015/app/eo-framework/actions/actions/finalize/finalize-action.js +12 -11
  37. package/esm2015/app/eo-framework/actions/actions/finalize/finalize-object-action/finalize-object-action.component.js +39 -0
  38. package/esm2015/app/eo-framework/actions/actions/share-object-action/share-object/share-object.component.js +43 -16
  39. package/esm2015/app/eo-framework/app-shell/app-shell.module.js +1 -3
  40. package/esm2015/app/eo-framework/form-elements/organization/organization.component.js +5 -2
  41. package/esm2015/app/eo-framework/grid/extensions/filter/setFilters/set-filter.component.js +2 -4
  42. package/esm2015/app/eo-framework/grid/extensions/filter/text/text-filter.component.js +30 -17
  43. package/esm2015/app/eo-framework/grid/extensions/quick-filter/quick-filter.component.js +2 -2
  44. package/esm2015/app/eo-framework/grid/filters/codesystem-filter.component.js +2 -2
  45. package/esm2015/app/eo-framework/grid/filters/dynamic-list-filter.component.js +1 -2
  46. package/esm2015/app/eo-framework/grid/filters/list-filter.component.js +2 -3
  47. package/esm2015/app/eo-framework/grid/filters/organization-filter.component.js +3 -3
  48. package/esm2015/app/eo-framework/result-list/result-list.module.js +2 -2
  49. package/esm2015/app/eo-framework/ui/ui.module.js +6 -3
  50. package/esm2015/app/eo-framework/util/directive/prevent-double-click.directive.js +8 -2
  51. package/esm2015/eo-sdk-client.js +61 -61
  52. package/esm2015/projects/eo-sdk/core/lib/model/inbox-item.model.js +2 -2
  53. package/esm2015/projects/eo-sdk/core/lib/service/backend/backend.service.js +35 -9
  54. package/esm2015/projects/eo-sdk/core/lib/service/dms/dms.service.js +10 -11
  55. package/esm2015/projects/eo-sdk/core/lib/service/user/user.service.js +11 -1
  56. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.js +54 -19
  57. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.js.map +1 -1
  58. package/fesm2015/eo-sdk-client.js +257 -150
  59. package/fesm2015/eo-sdk-client.js.map +1 -1
  60. package/package.json +2 -2
  61. package/projects/eo-sdk/core/eo-sdk-client-projects-eo-sdk-core.metadata.json +1 -1
  62. package/projects/eo-sdk/core/lib/model/inbox-item.model.d.ts +2 -2
  63. package/projects/eo-sdk/core/lib/service/backend/backend.service.d.ts +1 -0
  64. package/projects/eo-sdk/core/lib/service/dms/dms.service.d.ts +3 -2
  65. package/projects/eo-sdk/core/lib/service/user/user.service.d.ts +5 -0
  66. package/projects/eo-sdk/core/package.json +1 -1
@@ -9,69 +9,69 @@ export { PrepareStateRoutingModule as ɵcr } from './app/eo-client/prepare-state
9
9
  export { ProcessStateComponent as ɵct } from './app/eo-client/process-state/process-state.component';
10
10
  export { PendingChangesGuard as ɵa } from './app/eo-framework-core/pending-changes/pending-changes-guard.service';
11
11
  export { PipesModule as ɵe } from './app/eo-framework-core/pipes/pipes.module';
12
- export { ActionComponentAnchorDirective as ɵv } from './app/eo-framework/actions/action-menu/action-component-anchor/action-component-anchor.directive';
13
- export { AddResubmissionActionComponent as ɵbw } from './app/eo-framework/actions/actions/add-resubmission-action/add-resubmission-action';
14
- export { AddResubmissionComponent as ɵbx } from './app/eo-framework/actions/actions/add-resubmission-action/add-resubmission/add-resubmission.component';
15
- export { AddSubscriptionActionComponent as ɵbq } from './app/eo-framework/actions/actions/add-subscription-action/add-subscription-action';
16
- export { AddSubscriptionComponent as ɵbr } from './app/eo-framework/actions/actions/add-subscription-action/add-subscription/add-subscription.component';
17
- export { ClipboardActionComponent as ɵbh } from './app/eo-framework/actions/actions/clipboard/clipboard-action';
18
- export { ClipboardLinkActionComponent as ɵbi } from './app/eo-framework/actions/actions/clipboard/clipboard-link-action';
19
- export { ClipboardOriginalActionComponent as ɵbj } from './app/eo-framework/actions/actions/clipboard/clipboard-original-action';
20
- export { ClipboardPdfActionComponent as ɵbk } from './app/eo-framework/actions/actions/clipboard/clipboard-pdf-action';
21
- export { CopyActionComponent as ɵx } from './app/eo-framework/actions/actions/copy-action/copy-action';
22
- export { CustomActionsComponent as ɵbv } from './app/eo-framework/actions/actions/custom-actions/custom-actions.component';
23
- export { CutActionComponent as ɵcb } from './app/eo-framework/actions/actions/cut-action/cut-action';
24
- export { DeleteActionComponent as ɵbl } from './app/eo-framework/actions/actions/delete-action/delete-action';
25
- export { DeletePreparedActionComponent as ɵbp } from './app/eo-framework/actions/actions/delete-action/delete-prepared-action';
26
- export { DeleteComponent as ɵbm } from './app/eo-framework/actions/actions/delete-action/delete/delete.component';
27
- export { DeleteContentActionComponent as ɵce } from './app/eo-framework/actions/actions/delete-content-action/delete-content-action';
28
- export { DownloadActionComponent as ɵz } from './app/eo-framework/actions/actions/download-action/download-action';
29
- export { DownloadOriginalActionComponent as ɵba } from './app/eo-framework/actions/actions/download-original-action/download-original-action';
30
- export { DownloadPdfActionComponent as ɵbb } from './app/eo-framework/actions/actions/download-pdf-action/download-pdf-action';
31
- export { EmailActionComponent as ɵbd } from './app/eo-framework/actions/actions/email/email-action';
32
- export { EmailLinkActionComponent as ɵbe } from './app/eo-framework/actions/actions/email/email-link-action';
33
- export { EmailOriginalActionComponent as ɵbf } from './app/eo-framework/actions/actions/email/email-original-action';
34
- export { EmailPdfActionComponent as ɵbg } from './app/eo-framework/actions/actions/email/email-pdf-action';
35
- export { FavoriteActionComponent as ɵch } from './app/eo-framework/actions/actions/favorite-action/favorite-action';
36
- export { DefinalizeActionComponent as ɵcd } from './app/eo-framework/actions/actions/finalize/definalize-action';
37
- export { FinalizeActionComponent as ɵcc } from './app/eo-framework/actions/actions/finalize/finalize-action';
38
- export { OpenContextActionComponent as ɵy } from './app/eo-framework/actions/actions/open-context-action/open-context-action';
39
- export { OpenDocumentActionComponent as ɵbc } from './app/eo-framework/actions/actions/open-document-action/open-document-action';
40
- export { OpenDocumentComponent as ɵw } from './app/eo-framework/actions/actions/open-document-action/open-document-action.component';
41
- export { OpenVersionsActionComponent as ɵbn } from './app/eo-framework/actions/actions/open-versions-action/open-versions-action';
42
- export { RemoveSubscriptionActionComponent as ɵbs } from './app/eo-framework/actions/actions/remove-subscription-action/remove-subscription-action';
43
- export { RestoreVersionActionComponent as ɵbo } from './app/eo-framework/actions/actions/restore-version-action/restore-version-action';
44
- export { ShareObjectActionComponent as ɵbz } from './app/eo-framework/actions/actions/share-object-action/share-object-action';
45
- export { ShareObjectComponent as ɵca } from './app/eo-framework/actions/actions/share-object-action/share-object/share-object.component';
46
- export { UnlockActionComponent as ɵcf } from './app/eo-framework/actions/actions/unlock-action/unlock-action';
47
- export { UpdateResubmissionActionComponent as ɵby } from './app/eo-framework/actions/actions/update-resubmission-action/update-resubmission-action';
48
- export { SimpleWorkflowActionComponent as ɵcg } from './app/eo-framework/actions/actions/workflow-action/simple-workflow-action.component';
49
- export { WorkflowActionComponent as ɵbt } from './app/eo-framework/actions/actions/workflow-action/workflow-action.component';
50
- export { WorkflowComponent as ɵbu } from './app/eo-framework/actions/actions/workflow-action/workflow/workflow.component';
12
+ export { ActionComponentAnchorDirective as ɵw } from './app/eo-framework/actions/action-menu/action-component-anchor/action-component-anchor.directive';
13
+ export { AddResubmissionActionComponent as ɵbx } from './app/eo-framework/actions/actions/add-resubmission-action/add-resubmission-action';
14
+ export { AddResubmissionComponent as ɵby } from './app/eo-framework/actions/actions/add-resubmission-action/add-resubmission/add-resubmission.component';
15
+ export { AddSubscriptionActionComponent as ɵbr } from './app/eo-framework/actions/actions/add-subscription-action/add-subscription-action';
16
+ export { AddSubscriptionComponent as ɵbs } from './app/eo-framework/actions/actions/add-subscription-action/add-subscription/add-subscription.component';
17
+ export { ClipboardActionComponent as ɵbi } from './app/eo-framework/actions/actions/clipboard/clipboard-action';
18
+ export { ClipboardLinkActionComponent as ɵbj } from './app/eo-framework/actions/actions/clipboard/clipboard-link-action';
19
+ export { ClipboardOriginalActionComponent as ɵbk } from './app/eo-framework/actions/actions/clipboard/clipboard-original-action';
20
+ export { ClipboardPdfActionComponent as ɵbl } from './app/eo-framework/actions/actions/clipboard/clipboard-pdf-action';
21
+ export { CopyActionComponent as ɵy } from './app/eo-framework/actions/actions/copy-action/copy-action';
22
+ export { CustomActionsComponent as ɵbw } from './app/eo-framework/actions/actions/custom-actions/custom-actions.component';
23
+ export { CutActionComponent as ɵcc } from './app/eo-framework/actions/actions/cut-action/cut-action';
24
+ export { DeleteActionComponent as ɵbm } from './app/eo-framework/actions/actions/delete-action/delete-action';
25
+ export { DeletePreparedActionComponent as ɵbq } from './app/eo-framework/actions/actions/delete-action/delete-prepared-action';
26
+ export { DeleteComponent as ɵbn } from './app/eo-framework/actions/actions/delete-action/delete/delete.component';
27
+ export { DeleteContentActionComponent as ɵcg } from './app/eo-framework/actions/actions/delete-content-action/delete-content-action';
28
+ export { DownloadActionComponent as ɵba } from './app/eo-framework/actions/actions/download-action/download-action';
29
+ export { DownloadOriginalActionComponent as ɵbb } from './app/eo-framework/actions/actions/download-original-action/download-original-action';
30
+ export { DownloadPdfActionComponent as ɵbc } from './app/eo-framework/actions/actions/download-pdf-action/download-pdf-action';
31
+ export { EmailActionComponent as ɵbe } from './app/eo-framework/actions/actions/email/email-action';
32
+ export { EmailLinkActionComponent as ɵbf } from './app/eo-framework/actions/actions/email/email-link-action';
33
+ export { EmailOriginalActionComponent as ɵbg } from './app/eo-framework/actions/actions/email/email-original-action';
34
+ export { EmailPdfActionComponent as ɵbh } from './app/eo-framework/actions/actions/email/email-pdf-action';
35
+ export { FavoriteActionComponent as ɵcj } from './app/eo-framework/actions/actions/favorite-action/favorite-action';
36
+ export { DefinalizeActionComponent as ɵcf } from './app/eo-framework/actions/actions/finalize/definalize-action';
37
+ export { FinalizeActionComponent as ɵcd } from './app/eo-framework/actions/actions/finalize/finalize-action';
38
+ export { FinalizeObjectActionComponent as ɵce } from './app/eo-framework/actions/actions/finalize/finalize-object-action/finalize-object-action.component';
39
+ export { OpenContextActionComponent as ɵz } from './app/eo-framework/actions/actions/open-context-action/open-context-action';
40
+ export { OpenDocumentActionComponent as ɵbd } from './app/eo-framework/actions/actions/open-document-action/open-document-action';
41
+ export { OpenDocumentComponent as ɵx } from './app/eo-framework/actions/actions/open-document-action/open-document-action.component';
42
+ export { OpenVersionsActionComponent as ɵbo } from './app/eo-framework/actions/actions/open-versions-action/open-versions-action';
43
+ export { RemoveSubscriptionActionComponent as ɵbt } from './app/eo-framework/actions/actions/remove-subscription-action/remove-subscription-action';
44
+ export { RestoreVersionActionComponent as ɵbp } from './app/eo-framework/actions/actions/restore-version-action/restore-version-action';
45
+ export { ShareObjectActionComponent as ɵca } from './app/eo-framework/actions/actions/share-object-action/share-object-action';
46
+ export { ShareObjectComponent as ɵcb } from './app/eo-framework/actions/actions/share-object-action/share-object/share-object.component';
47
+ export { UnlockActionComponent as ɵch } from './app/eo-framework/actions/actions/unlock-action/unlock-action';
48
+ export { UpdateResubmissionActionComponent as ɵbz } from './app/eo-framework/actions/actions/update-resubmission-action/update-resubmission-action';
49
+ export { SimpleWorkflowActionComponent as ɵci } from './app/eo-framework/actions/actions/workflow-action/simple-workflow-action.component';
50
+ export { WorkflowActionComponent as ɵbu } from './app/eo-framework/actions/actions/workflow-action/workflow-action.component';
51
+ export { WorkflowComponent as ɵbv } from './app/eo-framework/actions/actions/workflow-action/workflow/workflow.component';
51
52
  export { AppProcessComponent as ɵd } from './app/eo-framework/app-shell/app-bar/app-process/app-process.component';
52
53
  export { AppShellRoutingModule as ɵc } from './app/eo-framework/app-shell/app-shell-routing.module';
53
- export { DatepickerService as ɵk } from './app/eo-framework/form-elements/datetime/datepicker/service/datepicker.service';
54
- export { YearRangeDirective as ɵl } from './app/eo-framework/form-elements/datetime/year-range/year-range.directive';
55
- export { fadeInOut as ɵn } from './app/eo-framework/form-elements/id-reference/animation/reference-finder.animation';
56
- export { ReferenceFinderEntryComponent as ɵp } from './app/eo-framework/form-elements/id-reference/reference-finder-entry/reference-finder-entry.component';
57
- export { ReferenceFinderComponent as ɵm } from './app/eo-framework/form-elements/id-reference/reference-finder/reference-finder.component';
58
- export { ReferenceFinderService as ɵo } from './app/eo-framework/form-elements/id-reference/service/reference-finder.service';
59
- export { PaginationComponent as ɵs } from './app/eo-framework/grid/extensions/pagination/pagination.component';
60
- export { DynamicListFilterComponent as ɵq } from './app/eo-framework/grid/filters/dynamic-list-filter.component';
61
- export { ListFilterComponent as ɵr } from './app/eo-framework/grid/filters/list-filter.component';
62
- export { DuetimeInfoComponent as ɵcm } from './app/eo-framework/inbox-details/duetimeInfo/duetimeInfo.component';
63
- export { EditIconComponent as ɵcl } from './app/eo-framework/object-details/edit-icon/edit-icon.component';
64
- export { PrepareContentExistsInfoComponent as ɵcn } from './app/eo-framework/prepare-details/prepare-content-exists-info/prepare-content-exists-info.component';
65
- export { ProcessFormComponent as ɵu } from './app/eo-framework/process-form/process-form.component';
66
- export { ProcessFormModule as ɵt } from './app/eo-framework/process-form/process-form.module';
67
- export { StoredQueryModule as ɵco } from './app/eo-framework/stored-query';
68
- export { TreeNodeComponent as ɵj } from './app/eo-framework/tree/tree-node/tree-node.component';
69
- export { UserAvatarComponent as ɵcj } from './app/eo-framework/ui';
70
- export { IndexdataSummaryEntryComponent as ɵh } from './app/eo-framework/ui/indexdata-summary/indexdata-summary-entry/indexdata-summary-entry.component';
54
+ export { DatepickerService as ɵl } from './app/eo-framework/form-elements/datetime/datepicker/service/datepicker.service';
55
+ export { YearRangeDirective as ɵm } from './app/eo-framework/form-elements/datetime/year-range/year-range.directive';
56
+ export { fadeInOut as ɵo } from './app/eo-framework/form-elements/id-reference/animation/reference-finder.animation';
57
+ export { ReferenceFinderEntryComponent as ɵq } from './app/eo-framework/form-elements/id-reference/reference-finder-entry/reference-finder-entry.component';
58
+ export { ReferenceFinderComponent as ɵn } from './app/eo-framework/form-elements/id-reference/reference-finder/reference-finder.component';
59
+ export { ReferenceFinderService as ɵp } from './app/eo-framework/form-elements/id-reference/service/reference-finder.service';
60
+ export { PaginationComponent as ɵt } from './app/eo-framework/grid/extensions/pagination/pagination.component';
61
+ export { DynamicListFilterComponent as ɵr } from './app/eo-framework/grid/filters/dynamic-list-filter.component';
62
+ export { ListFilterComponent as ɵs } from './app/eo-framework/grid/filters/list-filter.component';
63
+ export { DuetimeInfoComponent as ɵcn } from './app/eo-framework/inbox-details/duetimeInfo/duetimeInfo.component';
64
+ export { EditIconComponent as ɵcm } from './app/eo-framework/object-details/edit-icon/edit-icon.component';
65
+ export { PrepareContentExistsInfoComponent as ɵco } from './app/eo-framework/prepare-details/prepare-content-exists-info/prepare-content-exists-info.component';
66
+ export { ProcessFormComponent as ɵv } from './app/eo-framework/process-form/process-form.component';
67
+ export { ProcessFormModule as ɵu } from './app/eo-framework/process-form/process-form.module';
68
+ export { TreeNodeComponent as ɵk } from './app/eo-framework/tree/tree-node/tree-node.component';
69
+ export { UserAvatarComponent as ɵcl } from './app/eo-framework/ui';
70
+ export { IndexdataSummaryEntryComponent as ɵi } from './app/eo-framework/ui/indexdata-summary/indexdata-summary-entry/indexdata-summary-entry.component';
71
71
  export { QueryScopeSelectComponent as ɵg } from './app/eo-framework/ui/query-scope-select/query-scope-select.component';
72
72
  export { UploadOverlayGuard as ɵb } from './app/eo-framework/upload-overlay/upload-overlay-guard.service';
73
73
  export { UnsubscribeOnDestroy as ɵf } from './app/eo-framework/util';
74
- export { PreventDoubleClickDirective as ɵci } from './app/eo-framework/util/directive/prevent-double-click.directive';
75
- export { TrapFocusDirective as ɵck } from './app/eo-framework/util/directive/trap-focus.directive';
76
- export { OrderByPipe as ɵi } from './app/eo-framework/util/sortable/order-by.pipe';
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW8tc2RrLWNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lby1zZGstY2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUM7QUFFN0IsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEdBQUcsRUFBQyxNQUFNLDBDQUEwQyxDQUFDO0FBQ3RGLE9BQU8sRUFBQyx1QkFBdUIsSUFBSSxHQUFHLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUN0RyxPQUFPLEVBQUMsd0JBQXdCLElBQUksR0FBRyxFQUFDLE1BQU0sMERBQTBELENBQUM7QUFDekcsT0FBTyxFQUFDLHlCQUF5QixJQUFJLEdBQUcsRUFBQyxNQUFNLDREQUE0RCxDQUFDO0FBQzVHLE9BQU8sRUFBQyxxQkFBcUIsSUFBSSxHQUFHLEVBQUMsTUFBTSx1REFBdUQsQ0FBQztBQUNuRyxPQUFPLEVBQUMsbUJBQW1CLElBQUksRUFBRSxFQUFDLE1BQU0sdUVBQXVFLENBQUM7QUFDaEgsT0FBTyxFQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUM3RSxPQUFPLEVBQUMsOEJBQThCLElBQUksRUFBRSxFQUFDLE1BQU0sa0dBQWtHLENBQUM7QUFDdEosT0FBTyxFQUFDLDhCQUE4QixJQUFJLEdBQUcsRUFBQyxNQUFNLG9GQUFvRixDQUFDO0FBQ3pJLE9BQU8sRUFBQyx3QkFBd0IsSUFBSSxHQUFHLEVBQUMsTUFBTSx3R0FBd0csQ0FBQztBQUN2SixPQUFPLEVBQUMsOEJBQThCLElBQUksR0FBRyxFQUFDLE1BQU0sb0ZBQW9GLENBQUM7QUFDekksT0FBTyxFQUFDLHdCQUF3QixJQUFJLEdBQUcsRUFBQyxNQUFNLHdHQUF3RyxDQUFDO0FBQ3ZKLE9BQU8sRUFBQyx3QkFBd0IsSUFBSSxHQUFHLEVBQUMsTUFBTSwrREFBK0QsQ0FBQztBQUM5RyxPQUFPLEVBQUMsNEJBQTRCLElBQUksR0FB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QU0saUNBQWlDLENBQUM7QUFDekUsT0FBTyxFQUFDLGlCQUFpQixJQUFJLEVBQUUsRUFBQyxNQUFNLHVEQUF1RCxDQUFDO0FBQzlGLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxHQUFHLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNqRSxPQUFPLEVBQUMsOEJBQThCLElBQUksRUFBRSxFQUFDLE1BQU0sbUdBQW1HLENBQUM7QUFDdkosT0FBTyxFQUFDLHlCQUF5QixJQUFJLEVBQUUsRUFBQyxNQUFNLHVFQUF1RSxDQUFDO0FBQ3RILE9BQU8sRUFBQyxrQkFBa0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxnRUFBZ0UsQ0FBQztBQUN4RyxPQUFPLEVBQUMsb0JBQW9CLElBQUksRUFBRSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDbkUsT0FBTyxFQUFDLDJCQUEyQixJQUFJLEdBQUcsRUFBQyxNQUFNLGtFQUFrRSxDQUFDO0FBQ3BILE9BQU8sRUFBQyxrQkFBa0IsSUFBSSxHQUFHLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUNqRyxPQUFPLEVBQUMsV0FBVyxJQUFJLEVBQUUsRUFBQyxNQUFNLGdEQUFnRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuXG5leHBvcnQge0VvQ2xpZW50Um91dGluZ01vZHVsZSBhcyDJtWNzfSBmcm9tICcuL2FwcC9lby1jbGllbnQvZW8tY2xpZW50LXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCB7SW5ib3hTdGF0ZVJvdXRpbmdNb2R1bGUgYXMgybVjcX0gZnJvbSAnLi9hcHAvZW8tY2xpZW50L2luYm94LXN0YXRlL2luYm94LXN0YXRlLXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCB7T2JqZWN0U3RhdGVSb3V0aW5nTW9kdWxlIGFzIMm1Y3B9IGZyb20gJy4vYXBwL2VvLWNsaWVudC9vYmplY3Qtc3RhdGUvb2JqZWN0LXN0YXRlLXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCB7UHJlcGFyZVN0YXRlUm91dGluZ01vZHVsZSBhcyDJtWNyfSBmcm9tICcuL2FwcC9lby1jbGllbnQvcHJlcGFyZS1zdGF0ZS9wcmVwYXJlLXN0YXRlLXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCB7UHJvY2Vzc1N0YXRlQ29tcG9uZW50IGFzIMm1Y3R9IGZyb20gJy4vYXBwL2VvLWNsaWVudC9wcm9jZXNzLXN0YXRlL3Byb2Nlc3Mtc3RhdGUuY29tcG9uZW50JztcbmV4cG9ydCB7UGVuZGluZ0NoYW5nZXNHdWFyZCBhcyDJtWF9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay1jb3JlL3BlbmRpbmctY2hhbmdlcy9wZW5kaW5nLWNoYW5nZXMtZ3VhcmQuc2VydmljZSc7XG5leHBvcnQge1BpcGVzTW9kdWxlIGFzIMm1ZX0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrLWNvcmUvcGlwZXMvcGlwZXMubW9kdWxlJztcbmV4cG9ydCB7QWN0aW9uQ29tcG9uZW50QW5jaG9yRGlyZWN0aXZlIGFzIMm1dn0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9uLW1lbnUvYWN0aW9uLWNvbXBvbmVudC1hbmNob3IvYWN0aW9uLWNvbXBvbmVudC1hbmNob3IuZGlyZWN0aXZlJztcbmV4cG9ydCB7QWRkUmVzdWJtaXNzaW9uQWN0aW9uQ29tcG9uZW50IGFzIMm1Ynd9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvYWRkLXJlc3VibWlzc2lvbi1hY3Rpb24vYWRkLXJlc3VibWlzc2lvbi1hY3Rpb24nO1xuZXhwb3J0IHtBZGRSZXN1Ym1pc3Npb25Db21wb25lbnQgYXMgybVieH0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9hZGQtcmVzdWJtaXNzaW9uLWFjdGlvbi9hZGQtcmVzdWJtaXNzaW9uL2FkZC1yZXN1Ym1pc3Npb24uY29tcG9uZW50JztcbmV4cG9ydCB7QWRkU3Vic2NyaXB0aW9uQWN0aW9uQ29tcG9uZW50IGFzIMm1YnF9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvYWRkLXN1YnNjcmlwdGlvbi1hY3Rpb24vYWRkLXN1YnNjcmlwdGlvbi1hY3Rpb24nO1xuZXhwb3J0IHtBZGRTdWJzY3JpcHRpb25Db21wb25lbnQgYXMgybVicn0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9hZGQtc3Vic2NyaXB0aW9uLWFjdGlvbi9hZGQtc3Vic2NyaXB0aW9uL2FkZC1zdWJzY3JpcHRpb24uY29tcG9uZW50JztcbmV4cG9ydCB7Q2xpcGJvYXJkQWN0aW9uQ29tcG9uZW50IGFzIMm1Ymh9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvY2xpcGJvYXJkL2NsaXBib2FyZC1hY3Rpb24nO1xuZXhwb3J0IHtDbGlwYm9hcmRMaW5rQWN0aW9uQ29tcG9uZW50IGFzIMm1Yml9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvY2xpcGJvYXJkL2NsaXBib2FyZC1saW5rLWFjdGlvbic7XG5leHBvcnQge0NsaXBib2FyZE9yaWdpbmFsQWN0aW9uQ29tcG9uZW50IGFzIMm1Ymp9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvY2xpcGJvYXJkL2NsaXBib2FyZC1vcmlnaW5hbC1hY3Rpb24nO1xuZXhwb3J0IHtDbGlwYm9hcmRQZGZBY3Rpb25Db21wb25lbnQgYXMgybVia30gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9jbGlwYm9hcmQvY2xpcGJvYXJkLXBkZi1hY3Rpb24nO1xuZXhwb3J0IHtDb3B5QWN0aW9uQ29tcG9uZW50IGFzIMm1eH0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9jb3B5LWFjdGlvbi9jb3B5LWFjdGlvbic7XG5leHBvcnQge0N1c3RvbUFjdGlvbnNDb21wb25lbnQgYXMgybVidn0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9jdXN0b20tYWN0aW9ucy9jdXN0b20tYWN0aW9ucy5jb21wb25lbnQnO1xuZXhwb3J0IHtDdXRBY3Rpb25Db21wb25lbnQgYXMgybVjYn0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9jdXQtYWN0aW9uL2N1dC1hY3Rpb24nO1xuZXhwb3J0IHtEZWxldGVBY3Rpb25Db21wb25lbnQgYXMgybVibH0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9kZWxldGUtYWN0aW9uL2RlbGV0ZS1hY3Rpb24nO1xuZXhwb3J0IHtEZWxldGVQcmVwYXJlZEFjdGlvbkNvbXBvbmVudCBhcyDJtWJwfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL2RlbGV0ZS1hY3Rpb24vZGVsZXRlLXByZXBhcmVkLWFjdGlvbic7XG5leHBvcnQge0RlbGV0ZUNvbXBvbmVudCBhcyDJtWJtfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL2RlbGV0ZS1hY3Rpb24vZGVsZXRlL2RlbGV0ZS5jb21wb25lbnQnO1xuZXhwb3J0IHtEZWxldGVDb250ZW50QWN0aW9uQ29tcG9uZW50IGFzIMm1Y2V9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvZGVsZXRlLWNvbnRlbnQtYWN0aW9uL2RlbGV0ZS1jb250ZW50LWFjdGlvbic7XG5leHBvcnQge0Rvd25sb2FkQWN0aW9uQ29tcG9uZW50IGFzIMm1en0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9kb3dubG9hZC1hY3Rpb24vZG93bmxvYWQtYWN0aW9uJztcbmV4cG9ydCB7RG93bmxvYWRPcmlnaW5hbEFjdGlvbkNvbXBvbmVudCBhcyDJtWJhfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL2Rvd25sb2FkLW9yaWdpbmFsLWFjdGlvbi9kb3dubG9hZC1vcmlnaW5hbC1hY3Rpb24nO1xuZXhwb3J0IHtEb3dubG9hZFBkZkFjdGlvbkNvbXBvbmVudCBhcyDJtWJifSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL2Rvd25sb2FkLXBkZi1hY3Rpb24vZG93bmxvYWQtcGRmLWFjdGlvbic7XG5leHBvcnQge0VtYWlsQWN0aW9uQ29tcG9uZW50IGFzIMm1YmR9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvZW1haWwvZW1haWwtYWN0aW9uJztcbmV4cG9ydCB7RW1haWxMaW5rQWN0aW9uQ29tcG9uZW50IGFzIMm1YmV9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvZW1haWwvZW1haWwtbGluay1hY3Rpb24nO1xuZXhwb3J0IHtFbWFpbE9yaWdpbmFsQWN0aW9uQ29tcG9uZW50IGFzIMm1YmZ9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvZW1haWwvZW1haWwtb3JpZ2luYWwtYWN0aW9uJztcbmV4cG9ydCB7RW1haWxQZGZBY3Rpb25Db21wb25lbnQgYXMgybViZ30gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9lbWFpbC9lbWFpbC1wZGYtYWN0aW9uJztcbmV4cG9ydCB7RmF2b3JpdGVBY3Rpb25Db21wb25lbnQgYXMgybVjaH0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9mYXZvcml0ZS1hY3Rpb24vZmF2b3JpdGUtYWN0aW9uJztcbmV4cG9ydCB7RGVmaW5hbGl6ZUFjdGlvbkNvbXBvbmVudCBhcyDJtWNkfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL2ZpbmFsaXplL2RlZmluYWxpemUtYWN0aW9uJztcbmV4cG9ydCB7RmluYWxpemVBY3Rpb25Db21wb25lbnQgYXMgybVjY30gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9maW5hbGl6ZS9maW5hbGl6ZS1hY3Rpb24nO1xuZXhwb3J0IHtPcGVuQ29udGV4dEFjdGlvbkNvbXBvbmVudCBhcyDJtXl9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvb3Blbi1jb250ZXh0LWFjdGlvbi9vcGVuLWNvbnRleHQtYWN0aW9uJztcbmV4cG9ydCB7T3BlbkRvY3VtZW50QWN0aW9uQ29tcG9uZW50IGFzIMm1YmN9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvb3Blbi1kb2N1bWVudC1hY3Rpb24vb3Blbi1kb2N1bWVudC1hY3Rpb24nO1xuZXhwb3J0IHtPcGVuRG9jdW1lbnRDb21wb25lbnQgYXMgybV3fSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL29wZW4tZG9jdW1lbnQtYWN0aW9uL29wZW4tZG9jdW1lbnQtYWN0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQge09wZW5WZXJzaW9uc0FjdGlvbkNvbXBvbmVudCBhcyDJtWJufSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL29wZW4tdmVyc2lvbnMtYWN0aW9uL29wZW4tdmVyc2lvbnMtYWN0aW9uJztcbmV4cG9ydCB7UmVtb3ZlU3Vic2NyaXB0aW9uQWN0aW9uQ29tcG9uZW50IGFzIMm1YnN9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvcmVtb3ZlLXN1YnNjcmlwdGlvbi1hY3Rpb24vcmVtb3ZlLXN1YnNjcmlwdGlvbi1hY3Rpb24nO1xuZXhwb3J0IHtSZXN0b3JlVmVyc2lvbkFjdGlvbkNvbXBvbmVudCBhcyDJtWJvfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL3Jlc3RvcmUtdmVyc2lvbi1hY3Rpb24vcmVzdG9yZS12ZXJzaW9uLWFjdGlvbic7XG5leHBvcnQge1NoYXJlT2JqZWN0QWN0aW9uQ29tcG9uZW50IGFzIMm1Ynp9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvc2hhcmUtb2JqZWN0LWFjdGlvbi9zaGFyZS1vYmplY3QtYWN0aW9uJztcbmV4cG9ydCB7U2hhcmVPYmplY3RDb21wb25lbnQgYXMgybVjYX0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9zaGFyZS1vYmplY3QtYWN0aW9uL3NoYXJlLW9iamVjdC9zaGFyZS1vYmplY3QuY29tcG9uZW50JztcbmV4cG9ydCB7VW5sb2NrQWN0aW9uQ29tcG9uZW50IGFzIMm1Y2Z9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvdW5sb2NrLWFjdGlvbi91bmxvY2stYWN0aW9uJztcbmV4cG9ydCB7VXBkYXRlUmVzdWJtaXNzaW9uQWN0aW9uQ29tcG9uZW50IGFzIMm1Ynl9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvdXBkYXRlLXJlc3VibWlzc2lvbi1hY3Rpb24vdXBkYXRlLXJlc3VibWlzc2lvbi1hY3Rpb24nO1xuZXhwb3J0IHtTaW1wbGVXb3JrZmxvd0FjdGlvbkNvbXBvbmVudCBhcyDJtWNnfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL3dvcmtmbG93LWFjdGlvbi9zaW1wbGUtd29ya2Zsb3ctYWN0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQge1dvcmtmbG93QWN0aW9uQ29tcG9uZW50IGFzIMm1YnR9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvd29ya2Zsb3ctYWN0aW9uL3dvcmtmbG93LWFjdGlvbi5jb21wb25lbnQnO1xuZXhwb3J0IHtXb3JrZmxvd0NvbXBvbmVudCBhcyDJtWJ1fSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL3dvcmtmbG93LWFjdGlvbi93b3JrZmxvdy93b3JrZmxvdy5jb21wb25lbnQnO1xuZXhwb3J0IHtBcHBQcm9jZXNzQ29tcG9uZW50IGFzIMm1ZH0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FwcC1zaGVsbC9hcHAtYmFyL2FwcC1wcm9jZXNzL2FwcC1wcm9jZXNzLmNvbXBvbmVudCc7XG5leHBvcnQge0FwcFNoZWxsUm91dGluZ01vZHVsZSBhcyDJtWN9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hcHAtc2hlbGwvYXBwLXNoZWxsLXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCB7RGF0ZXBpY2tlclNlcnZpY2UgYXMgybVrfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvZm9ybS1lbGVtZW50cy9kYXRldGltZS9kYXRlcGlja2VyL3NlcnZpY2UvZGF0ZXBpY2tlci5zZXJ2aWNlJztcbmV4cG9ydCB7WWVhclJhbmdlRGlyZWN0aXZlIGFzIMm1bH0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2Zvcm0tZWxlbWVudHMvZGF0ZXRpbWUveWVhci1yYW5nZS95ZWFyLXJhbmdlLmRpcmVjdGl2ZSc7XG5leHBvcnQge2ZhZGVJbk91dCBhcyDJtW59IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9mb3JtLWVsZW1lbnRzL2lkLXJlZmVyZW5jZS9hbmltYXRpb24vcmVmZXJlbmNlLWZpbmRlci5hbmltYXRpb24nO1xuZXhwb3J0IHtSZWZlcmVuY2VGaW5kZXJFbnRyeUNvbXBvbmVudCBhcyDJtXB9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9mb3JtLWVsZW1lbnRzL2lkLXJlZmVyZW5jZS9yZWZlcmVuY2UtZmluZGVyLWVudHJ5L3JlZmVyZW5jZS1maW5kZXItZW50cnkuY29tcG9uZW50JztcbmV4cG9ydCB7UmVmZXJlbmNlRmluZGVyQ29tcG9uZW50IGFzIMm1bX0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2Zvcm0tZWxlbWVudHMvaWQtcmVmZXJlbmNlL3JlZmVyZW5jZS1maW5kZXIvcmVmZXJlbmNlLWZpbmRlci5jb21wb25lbnQnO1xuZXhwb3J0IHtSZWZlcmVuY2VGaW5kZXJTZXJ2aWNlIGFzIMm1b30gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2Zvcm0tZWxlbWVudHMvaWQtcmVmZXJlbmNlL3NlcnZpY2UvcmVmZXJlbmNlLWZpbmRlci5zZXJ2aWNlJztcbmV4cG9ydCB7UGFnaW5hdGlvbkNvbXBvbmVudCBhcyDJtXN9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9ncmlkL2V4dGVuc2lvbnMvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQge0R5bmFtaWNMaXN0RmlsdGVyQ29tcG9uZW50IGFzIMm1cX0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2dyaWQvZmlsdGVycy9keW5hbWljLWxpc3QtZmlsdGVyLmNvbXBvbmVudCc7XG5leHBvcnQge0xpc3RGaWx0ZXJDb21wb25lbnQgYXMgybVyfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvZ3JpZC9maWx0ZXJzL2xpc3QtZmlsdGVyLmNvbXBvbmVudCc7XG5leHBvcnQge0R1ZXRpbWVJbmZvQ29tcG9uZW50IGFzIMm1Y219IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9pbmJveC1kZXRhaWxzL2R1ZXRpbWVJbmZvL2R1ZXRpbWVJbmZvLmNvbXBvbmVudCc7XG5leHBvcnQge0VkaXRJY29uQ29tcG9uZW50IGFzIMm1Y2x9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9vYmplY3QtZGV0YWlscy9lZGl0LWljb24vZWRpdC1pY29uLmNvbXBvbmVudCc7XG5leHBvcnQge1ByZXBhcmVDb250ZW50RXhpc3RzSW5mb0NvbXBvbmVudCBhcyDJtWNufSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvcHJlcGFyZS1kZXRhaWxzL3ByZXBhcmUtY29udGVudC1leGlzdHMtaW5mby9wcmVwYXJlLWNvbnRlbnQtZXhpc3RzLWluZm8uY29tcG9uZW50JztcbmV4cG9ydCB7UHJvY2Vzc0Zvcm1Db21wb25lbnQgYXMgybV1fSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvcHJvY2Vzcy1mb3JtL3Byb2Nlc3MtZm9ybS5jb21wb25lbnQnO1xuZXhwb3J0IHtQcm9jZXNzRm9ybU1vZHVsZSBhcyDJtXR9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9wcm9jZXNzLWZvcm0vcHJvY2Vzcy1mb3JtLm1vZHVsZSc7XG5leHBvcnQge1N0b3JlZFF1ZXJ5TW9kdWxlIGFzIMm1Y299IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9zdG9yZWQtcXVlcnknO1xuZXhwb3J0IHtUcmVlTm9kZUNvbXBvbmVudCBhcyDJtWp9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay90cmVlL3RyZWUtbm9kZS90cmVlLW5vZGUuY29tcG9uZW50JztcbmV4cG9ydCB7VXNlckF2YXRhckNvbXBvbmVudCBhcyDJtWNqfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvdWknO1xuZXhwb3J0IHtJbmRleGRhdGFTdW1tYXJ5RW50cnlDb21wb25lbnQgYXMgybVofSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvdWkvaW5kZXhkYXRhLXN1bW1hcnkvaW5kZXhkYXRhLXN1bW1hcnktZW50cnkvaW5kZXhkYXRhLXN1bW1hcnktZW50cnkuY29tcG9uZW50JztcbmV4cG9ydCB7UXVlcnlTY29wZVNlbGVjdENvbXBvbmVudCBhcyDJtWd9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay91aS9xdWVyeS1zY29wZS1zZWxlY3QvcXVlcnktc2NvcGUtc2VsZWN0LmNvbXBvbmVudCc7XG5leHBvcnQge1VwbG9hZE92ZXJsYXlHdWFyZCBhcyDJtWJ9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay91cGxvYWQtb3ZlcmxheS91cGxvYWQtb3ZlcmxheS1ndWFyZC5zZXJ2aWNlJztcbmV4cG9ydCB7VW5zdWJzY3JpYmVPbkRlc3Ryb3kgYXMgybVmfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvdXRpbCc7XG5leHBvcnQge1ByZXZlbnREb3VibGVDbGlja0RpcmVjdGl2ZSBhcyDJtWNpfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvdXRpbC9kaXJlY3RpdmUvcHJldmVudC1kb3VibGUtY2xpY2suZGlyZWN0aXZlJztcbmV4cG9ydCB7VHJhcEZvY3VzRGlyZWN0aXZlIGFzIMm1Y2t9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay91dGlsL2RpcmVjdGl2ZS90cmFwLWZvY3VzLmRpcmVjdGl2ZSc7XG5leHBvcnQge09yZGVyQnlQaXBlIGFzIMm1aX0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL3V0aWwvc29ydGFibGUvb3JkZXItYnkucGlwZSc7Il19
74
+ export { PreventDoubleClickDirective as ɵck } from './app/eo-framework/util/directive/prevent-double-click.directive';
75
+ export { TrapFocusDirective as ɵh } from './app/eo-framework/util/directive/trap-focus.directive';
76
+ export { OrderByPipe as ɵj } from './app/eo-framework/util/sortable/order-by.pipe';
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW8tc2RrLWNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lby1zZGstY2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUM7QUFFN0IsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEdBQUcsRUFBQyxNQUFNLDBDQUEwQyxDQUFDO0FBQ3RGLE9BQU8sRUFBQyx1QkFBdUIsSUFBSSxHQUFHLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUN0RyxPQUFPLEVBQUMsd0JBQXdCLElBQUksR0FBRyxFQUFDLE1BQU0sMERBQTBELENBQUM7QUFDekcsT0FBTyxFQUFDLHlCQUF5QixJQUFJLEdBQUcsRUFBQyxNQUFNLDREQUE0RCxDQUFDO0FBQzVHLE9BQU8sRUFBQyxxQkFBcUIsSUFBSSxHQUFHLEVBQUMsTUFBTSx1REFBdUQsQ0FBQztBQUNuRyxPQUFPLEVBQUMsbUJBQW1CLElBQUksRUFBRSxFQUFDLE1BQU0sdUVBQXVFLENBQUM7QUFDaEgsT0FBTyxFQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUM3RSxPQUFPLEVBQUMsOEJBQThCLElBQUksRUFBRSxFQUFDLE1BQU0sa0dBQWtHLENBQUM7QUFDdEosT0FBTyxFQUFDLDhCQUE4QixJQUFJLEdBQUcsRUFBQyxNQUFNLG9GQUFvRixDQUFDO0FBQ3pJLE9BQU8sRUFBQyx3QkFBd0IsSUFBSSxHQUFHLEVBQUMsTUFBTSx3R0FBd0csQ0FBQztBQUN2SixPQUFPLEVBQUMsOEJBQThCLElBQUksR0FBRyxFQUFDLE1BQU0sb0ZBQW9GLENBQUM7QUFDekksT0FBTyxFQUFDLHdCQUF3QixJQUFJLEdBQUcsRUFBQyxNQUFNLHdHQUF3RyxDQUFDO0FBQ3ZKLE9BQU8sRUFBQyx3QkFBd0IsSUFBSSxHQUFHLEVBQUMsTUFBTSwrREFBK0QsQ0FBQztBQUM5RyxPQUFPLEVBQUMsNEJBQTRCLElBQUksR0FBRyxFQUFDLE1BQU0sb0VBQW9FLENBQUM7QUFDdkgsT0FBTyxFQUFDLGdDQUFnQyxJQUFJLEdBQUcsRUFBQyxNQUFNLHdFQUF3RSxDQUFDO0FBQy9ILE9BQU8sRUFBQywyQkFBMkIsSUFBSSxHQUFHLEVBQUMsTUFBTSxtRUFBbUUsQ0FBQztBQUNySCxPQUFPLEVBQUMsbUJBQW1CLElBQUksRUFBRSxFQUFDLE1BQU0sNERBQTRELENBQUM7QUFDckcsT0FBTyxFQUFDLHNCQUFzQixJQUFJLEdBQUcsRUFBQyxNQUFNLDRFQUE0RSxDQUFDO0FBQ3pILE9BQU8sRUFBQyxrQkFBa0IsSUFBSSxHQUFHLEVBQUMsTUFBTSwwREFBMEQsQ0FBQztBQUNuRyxPQUFPLEVBQUMscUJBQXFCLElBQUksR0FBRyxFQUFDLE1BQU0sZ0VBQWdFLENBQUM7QUFDNUcsT0FBTyxFQUFDLDZCQUE2QixJQUFJLEdBQUcsRUFBQyxNQUFNLHlFQUF5RSxDQUFDO0FBQzdILE9BQU8sRUFBQyxlQUFlLElBQUksR0FBRyxFQUFDLE1BQU0sMEVBQTBFLENBQUM7QUFDaEgsT0FBTyxFQUFDLDRCQUE0QixJQUFJLEdBQUcsRUFBQyxNQUFNLGdGQUFnRixDQUFDO0FBQ25JLE9BQU8sRUFBQyx1QkFBdUIsSUFBSSxHQUFHLEVBQUMsTUFBTSxvRUFBb0UsQ0FBQztBQUNsSCxPQUFPLEVBQUMsK0JBQStCLElBQUksR0FBRyxFQUFDLE1BQU0sc0ZBQXNGLENBQUM7QUFDNUksT0FBTyxFQUFDLDBCQUEwQixJQUFJLEdBQUcsRUFBQyxNQUFNLDRFQUE0RSxDQUFDO0FBQzdILE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxHQUFHLEVBQUMsTUFBTSx1REFBdUQsQ0FBQztBQUNsRyxPQUFPLEVBQUMsd0JBQXdCLElBQUksR0FBRyxFQUFDLE1BQU0sNERBQTRELENBQUM7QUFDM0csT0FBTyxFQUFDLDRCQUE0QixJQUFJLEdBQUcsRUFBQyxNQUFNLGdFQUFnRSxDQUFDO0FBQ25ILE9BQU8sRUFBQyx1QkFBdUIsSUFBSSxHQUFHLEVBQUMsTUFBTSwyREFBMkQsQ0FBQztBQUN6RyxPQUFPLEVBQUMsdUJBQXVCLElBQUksR0FBRyxFQUFDLE1BQU0sb0VBQW9FLENBQUM7QUFDbEgsT0FBTyxFQUFDLHlCQUF5QixJQUFJLEdBQUcsRUFBQyxNQUFNLCtEQUErRCxDQUFDO0FBQy9HLE9BQU8sRUFBQyx1QkFBdUIsSUFBSSxHQUFHLEVBQUMsTUFBTSw2REFBNkQsQ0FBQztBQUMzRyxPQUFPLEVBQUMsNkJBQTZCLElBQUksR0FBRyxFQUFDLE1BQU0scUdBQXFHLENBQUM7QUFDekosT0FBTyxFQUFDLDBCQUEwQixJQUFJLEVBQUUsRUFBQyxNQUFNLDRFQUE0RSxDQUFDO0FBQzVILE9BQU8sRUFBQywyQkFBMkIsSUFBSSxHQUFHLEVBQUMsTUFBTSw4RUFBOEUsQ0FBQztBQUNoSSxPQUFPLEVBQUMscUJBQXFCLElBQUksRUFBRSxFQUFDLE1BQU0sd0ZBQXdGLENBQUM7QUFDbkksT0FBTyxFQUFDLDJCQUEyQixJQUFJLEdBQUcsRUFBQyxNQUFNLDhFQUE4RSxDQUFDO0FBQ2hJLE9BQU8sRUFBQyxpQ0FBaUMsSUFBSSxHQUFHLEVBQUMsTUFBTSwwRkFBMEYsQ0FBQztBQUNsSixPQUFPLEVBQUMsNkJBQTZCLElBQUksR0FBRyxFQUFDLE1BQU0sa0ZBQWtGLENBQUM7QUFDdEksT0FBTyxFQUFDLDBCQUEwQixJQUFJLEdBQUcsRUFBQyxNQUFNLDRFQUE0RSxDQUFDO0FBQzdILE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxHQUFHLEVBQUMsTUFBTSw0RkFBNEYsQ0FBQztBQUN2SSxPQUFPLEVBQUMscUJBQXFCLElBQUksR0FBRyxFQUFDLE1BQU0sZ0VBQWdFLENBQUM7QUFDNUcsT0FBTyxFQUFDLGlDQUFpQyxJQUFJLEdBQUcsRUFBQyxNQUFNLDBGQUEwRixDQUFDO0FBQ2xKLE9BQU8sRUFBQyw2QkFBNkIsSUFBSSxHQUFHLEVBQUMsTUFBTSxxRkFBcUYsQ0FBQztBQUN6SSxPQUFPLEVBQUMsdUJBQXVCLElBQUksR0FBRyxFQUFDLE1BQU0sOEVBQThFLENBQUM7QUFDNUgsT0FBTyxFQUFDLGlCQUFpQixJQUFJLEdBQUcsRUFBQyxNQUFNLGdGQUFnRixDQUFDO0FBQ3hILE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSx3RUFBd0UsQ0FBQztBQUNqSCxPQUFPLEVBQUMscUJBQXFCLElBQUksRUFBRSxFQUFDLE1BQU0sdURBQXVELENBQUM7QUFDbEcsT0FBTyxFQUFDLGlCQUFpQixJQUFJLEVBQUUsRUFBQyxNQUFNLGlGQUFpRixDQUFDO0FBQ3hILE9BQU8sRUFBQyxrQkFBa0IsSUFBSSxFQUFFLEVBQUMsTUFBTSwyRUFBMkUsQ0FBQztBQUNuSCxPQUFPLEVBQUMsU0FBUyxJQUFJLEVBQUUsRUFBQyxNQUFNLG9GQUFvRixDQUFDO0FBQ25ILE9BQU8sRUFBQyw2QkFBNkIsSUFBSSxFQUFFLEVBQUMsTUFBTSx1R0FBdUcsQ0FBQztBQUMxSixPQUFPLEVBQUMsd0JBQXdCLElBQUksRUFBRSxFQUFDLE1BQU0sMkZBQTJGLENBQUM7QUFDekksT0FBTyxFQUFDLHNCQUFzQixJQUFJLEVBQUUsRUFBQyxNQUFNLGdGQUFnRixDQUFDO0FBQzVILE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxvRUFBb0UsQ0FBQztBQUM3RyxPQUFPLEVBQUMsMEJBQTBCLElBQUksRUFBRSxFQUFDLE1BQU0sK0RBQStELENBQUM7QUFDL0csT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLHVEQUF1RCxDQUFDO0FBQ2hHLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxHQUFHLEVBQUMsTUFBTSxvRUFBb0UsQ0FBQztBQUMvRyxPQUFPLEVBQUMsaUJBQWlCLElBQUksR0FBRyxFQUFDLE1BQU0saUVBQWlFLENBQUM7QUFDekcsT0FBTyxFQUFDLGlDQUFpQyxJQUFJLEdBQUcsRUFBQyxNQUFNLHNHQUFzRyxDQUFDO0FBQzlKLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUNsRyxPQUFPLEVBQUMsaUJBQWlCLElBQUksRUFBRSxFQUFDLE1BQU0scURBQXFELENBQUM7QUFDNUYsT0FBTyxFQUFDLGlCQUFpQixJQUFJLEVBQUUsRUFBQyxNQUFNLHVEQUF1RCxDQUFDO0FBQzlGLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxHQUFHLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNqRSxPQUFPLEVBQUMsOEJBQThCLElBQUksRUFBRSxFQUFDLE1BQU0sbUdBQW1HLENBQUM7QUFDdkosT0FBTyxFQUFDLHlCQUF5QixJQUFJLEVBQUUsRUFBQyxNQUFNLHVFQUF1RSxDQUFDO0FBQ3RILE9BQU8sRUFBQyxrQkFBa0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxnRUFBZ0UsQ0FBQztBQUN4RyxPQUFPLEVBQUMsb0JBQW9CLElBQUksRUFBRSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDbkUsT0FBTyxFQUFDLDJCQUEyQixJQUFJLEdBQUcsRUFBQyxNQUFNLGtFQUFrRSxDQUFDO0FBQ3BILE9BQU8sRUFBQyxrQkFBa0IsSUFBSSxFQUFFLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUNoRyxPQUFPLEVBQUMsV0FBVyxJQUFJLEVBQUUsRUFBQyxNQUFNLGdEQUFnRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuXG5leHBvcnQge0VvQ2xpZW50Um91dGluZ01vZHVsZSBhcyDJtWNzfSBmcm9tICcuL2FwcC9lby1jbGllbnQvZW8tY2xpZW50LXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCB7SW5ib3hTdGF0ZVJvdXRpbmdNb2R1bGUgYXMgybVjcX0gZnJvbSAnLi9hcHAvZW8tY2xpZW50L2luYm94LXN0YXRlL2luYm94LXN0YXRlLXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCB7T2JqZWN0U3RhdGVSb3V0aW5nTW9kdWxlIGFzIMm1Y3B9IGZyb20gJy4vYXBwL2VvLWNsaWVudC9vYmplY3Qtc3RhdGUvb2JqZWN0LXN0YXRlLXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCB7UHJlcGFyZVN0YXRlUm91dGluZ01vZHVsZSBhcyDJtWNyfSBmcm9tICcuL2FwcC9lby1jbGllbnQvcHJlcGFyZS1zdGF0ZS9wcmVwYXJlLXN0YXRlLXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCB7UHJvY2Vzc1N0YXRlQ29tcG9uZW50IGFzIMm1Y3R9IGZyb20gJy4vYXBwL2VvLWNsaWVudC9wcm9jZXNzLXN0YXRlL3Byb2Nlc3Mtc3RhdGUuY29tcG9uZW50JztcbmV4cG9ydCB7UGVuZGluZ0NoYW5nZXNHdWFyZCBhcyDJtWF9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay1jb3JlL3BlbmRpbmctY2hhbmdlcy9wZW5kaW5nLWNoYW5nZXMtZ3VhcmQuc2VydmljZSc7XG5leHBvcnQge1BpcGVzTW9kdWxlIGFzIMm1ZX0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrLWNvcmUvcGlwZXMvcGlwZXMubW9kdWxlJztcbmV4cG9ydCB7QWN0aW9uQ29tcG9uZW50QW5jaG9yRGlyZWN0aXZlIGFzIMm1d30gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9uLW1lbnUvYWN0aW9uLWNvbXBvbmVudC1hbmNob3IvYWN0aW9uLWNvbXBvbmVudC1hbmNob3IuZGlyZWN0aXZlJztcbmV4cG9ydCB7QWRkUmVzdWJtaXNzaW9uQWN0aW9uQ29tcG9uZW50IGFzIMm1Ynh9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvYWRkLXJlc3VibWlzc2lvbi1hY3Rpb24vYWRkLXJlc3VibWlzc2lvbi1hY3Rpb24nO1xuZXhwb3J0IHtBZGRSZXN1Ym1pc3Npb25Db21wb25lbnQgYXMgybVieX0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9hZGQtcmVzdWJtaXNzaW9uLWFjdGlvbi9hZGQtcmVzdWJtaXNzaW9uL2FkZC1yZXN1Ym1pc3Npb24uY29tcG9uZW50JztcbmV4cG9ydCB7QWRkU3Vic2NyaXB0aW9uQWN0aW9uQ29tcG9uZW50IGFzIMm1YnJ9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvYWRkLXN1YnNjcmlwdGlvbi1hY3Rpb24vYWRkLXN1YnNjcmlwdGlvbi1hY3Rpb24nO1xuZXhwb3J0IHtBZGRTdWJzY3JpcHRpb25Db21wb25lbnQgYXMgybVic30gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9hZGQtc3Vic2NyaXB0aW9uLWFjdGlvbi9hZGQtc3Vic2NyaXB0aW9uL2FkZC1zdWJzY3JpcHRpb24uY29tcG9uZW50JztcbmV4cG9ydCB7Q2xpcGJvYXJkQWN0aW9uQ29tcG9uZW50IGFzIMm1Yml9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvY2xpcGJvYXJkL2NsaXBib2FyZC1hY3Rpb24nO1xuZXhwb3J0IHtDbGlwYm9hcmRMaW5rQWN0aW9uQ29tcG9uZW50IGFzIMm1Ymp9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvY2xpcGJvYXJkL2NsaXBib2FyZC1saW5rLWFjdGlvbic7XG5leHBvcnQge0NsaXBib2FyZE9yaWdpbmFsQWN0aW9uQ29tcG9uZW50IGFzIMm1Ymt9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvY2xpcGJvYXJkL2NsaXBib2FyZC1vcmlnaW5hbC1hY3Rpb24nO1xuZXhwb3J0IHtDbGlwYm9hcmRQZGZBY3Rpb25Db21wb25lbnQgYXMgybVibH0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9jbGlwYm9hcmQvY2xpcGJvYXJkLXBkZi1hY3Rpb24nO1xuZXhwb3J0IHtDb3B5QWN0aW9uQ29tcG9uZW50IGFzIMm1eX0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9jb3B5LWFjdGlvbi9jb3B5LWFjdGlvbic7XG5leHBvcnQge0N1c3RvbUFjdGlvbnNDb21wb25lbnQgYXMgybVid30gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9jdXN0b20tYWN0aW9ucy9jdXN0b20tYWN0aW9ucy5jb21wb25lbnQnO1xuZXhwb3J0IHtDdXRBY3Rpb25Db21wb25lbnQgYXMgybVjY30gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9jdXQtYWN0aW9uL2N1dC1hY3Rpb24nO1xuZXhwb3J0IHtEZWxldGVBY3Rpb25Db21wb25lbnQgYXMgybVibX0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9kZWxldGUtYWN0aW9uL2RlbGV0ZS1hY3Rpb24nO1xuZXhwb3J0IHtEZWxldGVQcmVwYXJlZEFjdGlvbkNvbXBvbmVudCBhcyDJtWJxfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL2RlbGV0ZS1hY3Rpb24vZGVsZXRlLXByZXBhcmVkLWFjdGlvbic7XG5leHBvcnQge0RlbGV0ZUNvbXBvbmVudCBhcyDJtWJufSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL2RlbGV0ZS1hY3Rpb24vZGVsZXRlL2RlbGV0ZS5jb21wb25lbnQnO1xuZXhwb3J0IHtEZWxldGVDb250ZW50QWN0aW9uQ29tcG9uZW50IGFzIMm1Y2d9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvZGVsZXRlLWNvbnRlbnQtYWN0aW9uL2RlbGV0ZS1jb250ZW50LWFjdGlvbic7XG5leHBvcnQge0Rvd25sb2FkQWN0aW9uQ29tcG9uZW50IGFzIMm1YmF9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvZG93bmxvYWQtYWN0aW9uL2Rvd25sb2FkLWFjdGlvbic7XG5leHBvcnQge0Rvd25sb2FkT3JpZ2luYWxBY3Rpb25Db21wb25lbnQgYXMgybViYn0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9kb3dubG9hZC1vcmlnaW5hbC1hY3Rpb24vZG93bmxvYWQtb3JpZ2luYWwtYWN0aW9uJztcbmV4cG9ydCB7RG93bmxvYWRQZGZBY3Rpb25Db21wb25lbnQgYXMgybViY30gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9kb3dubG9hZC1wZGYtYWN0aW9uL2Rvd25sb2FkLXBkZi1hY3Rpb24nO1xuZXhwb3J0IHtFbWFpbEFjdGlvbkNvbXBvbmVudCBhcyDJtWJlfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL2VtYWlsL2VtYWlsLWFjdGlvbic7XG5leHBvcnQge0VtYWlsTGlua0FjdGlvbkNvbXBvbmVudCBhcyDJtWJmfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL2VtYWlsL2VtYWlsLWxpbmstYWN0aW9uJztcbmV4cG9ydCB7RW1haWxPcmlnaW5hbEFjdGlvbkNvbXBvbmVudCBhcyDJtWJnfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL2VtYWlsL2VtYWlsLW9yaWdpbmFsLWFjdGlvbic7XG5leHBvcnQge0VtYWlsUGRmQWN0aW9uQ29tcG9uZW50IGFzIMm1Ymh9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvZW1haWwvZW1haWwtcGRmLWFjdGlvbic7XG5leHBvcnQge0Zhdm9yaXRlQWN0aW9uQ29tcG9uZW50IGFzIMm1Y2p9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvZmF2b3JpdGUtYWN0aW9uL2Zhdm9yaXRlLWFjdGlvbic7XG5leHBvcnQge0RlZmluYWxpemVBY3Rpb25Db21wb25lbnQgYXMgybVjZn0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9maW5hbGl6ZS9kZWZpbmFsaXplLWFjdGlvbic7XG5leHBvcnQge0ZpbmFsaXplQWN0aW9uQ29tcG9uZW50IGFzIMm1Y2R9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvZmluYWxpemUvZmluYWxpemUtYWN0aW9uJztcbmV4cG9ydCB7RmluYWxpemVPYmplY3RBY3Rpb25Db21wb25lbnQgYXMgybVjZX0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9maW5hbGl6ZS9maW5hbGl6ZS1vYmplY3QtYWN0aW9uL2ZpbmFsaXplLW9iamVjdC1hY3Rpb24uY29tcG9uZW50JztcbmV4cG9ydCB7T3BlbkNvbnRleHRBY3Rpb25Db21wb25lbnQgYXMgybV6fSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL29wZW4tY29udGV4dC1hY3Rpb24vb3Blbi1jb250ZXh0LWFjdGlvbic7XG5leHBvcnQge09wZW5Eb2N1bWVudEFjdGlvbkNvbXBvbmVudCBhcyDJtWJkfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL29wZW4tZG9jdW1lbnQtYWN0aW9uL29wZW4tZG9jdW1lbnQtYWN0aW9uJztcbmV4cG9ydCB7T3BlbkRvY3VtZW50Q29tcG9uZW50IGFzIMm1eH0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9vcGVuLWRvY3VtZW50LWFjdGlvbi9vcGVuLWRvY3VtZW50LWFjdGlvbi5jb21wb25lbnQnO1xuZXhwb3J0IHtPcGVuVmVyc2lvbnNBY3Rpb25Db21wb25lbnQgYXMgybVib30gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9vcGVuLXZlcnNpb25zLWFjdGlvbi9vcGVuLXZlcnNpb25zLWFjdGlvbic7XG5leHBvcnQge1JlbW92ZVN1YnNjcmlwdGlvbkFjdGlvbkNvbXBvbmVudCBhcyDJtWJ0fSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL3JlbW92ZS1zdWJzY3JpcHRpb24tYWN0aW9uL3JlbW92ZS1zdWJzY3JpcHRpb24tYWN0aW9uJztcbmV4cG9ydCB7UmVzdG9yZVZlcnNpb25BY3Rpb25Db21wb25lbnQgYXMgybVicH0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy9yZXN0b3JlLXZlcnNpb24tYWN0aW9uL3Jlc3RvcmUtdmVyc2lvbi1hY3Rpb24nO1xuZXhwb3J0IHtTaGFyZU9iamVjdEFjdGlvbkNvbXBvbmVudCBhcyDJtWNhfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL3NoYXJlLW9iamVjdC1hY3Rpb24vc2hhcmUtb2JqZWN0LWFjdGlvbic7XG5leHBvcnQge1NoYXJlT2JqZWN0Q29tcG9uZW50IGFzIMm1Y2J9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hY3Rpb25zL2FjdGlvbnMvc2hhcmUtb2JqZWN0LWFjdGlvbi9zaGFyZS1vYmplY3Qvc2hhcmUtb2JqZWN0LmNvbXBvbmVudCc7XG5leHBvcnQge1VubG9ja0FjdGlvbkNvbXBvbmVudCBhcyDJtWNofSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL3VubG9jay1hY3Rpb24vdW5sb2NrLWFjdGlvbic7XG5leHBvcnQge1VwZGF0ZVJlc3VibWlzc2lvbkFjdGlvbkNvbXBvbmVudCBhcyDJtWJ6fSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL3VwZGF0ZS1yZXN1Ym1pc3Npb24tYWN0aW9uL3VwZGF0ZS1yZXN1Ym1pc3Npb24tYWN0aW9uJztcbmV4cG9ydCB7U2ltcGxlV29ya2Zsb3dBY3Rpb25Db21wb25lbnQgYXMgybVjaX0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy93b3JrZmxvdy1hY3Rpb24vc2ltcGxlLXdvcmtmbG93LWFjdGlvbi5jb21wb25lbnQnO1xuZXhwb3J0IHtXb3JrZmxvd0FjdGlvbkNvbXBvbmVudCBhcyDJtWJ1fSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYWN0aW9ucy9hY3Rpb25zL3dvcmtmbG93LWFjdGlvbi93b3JrZmxvdy1hY3Rpb24uY29tcG9uZW50JztcbmV4cG9ydCB7V29ya2Zsb3dDb21wb25lbnQgYXMgybVidn0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2FjdGlvbnMvYWN0aW9ucy93b3JrZmxvdy1hY3Rpb24vd29ya2Zsb3cvd29ya2Zsb3cuY29tcG9uZW50JztcbmV4cG9ydCB7QXBwUHJvY2Vzc0NvbXBvbmVudCBhcyDJtWR9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9hcHAtc2hlbGwvYXBwLWJhci9hcHAtcHJvY2Vzcy9hcHAtcHJvY2Vzcy5jb21wb25lbnQnO1xuZXhwb3J0IHtBcHBTaGVsbFJvdXRpbmdNb2R1bGUgYXMgybVjfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvYXBwLXNoZWxsL2FwcC1zaGVsbC1yb3V0aW5nLm1vZHVsZSc7XG5leHBvcnQge0RhdGVwaWNrZXJTZXJ2aWNlIGFzIMm1bH0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2Zvcm0tZWxlbWVudHMvZGF0ZXRpbWUvZGF0ZXBpY2tlci9zZXJ2aWNlL2RhdGVwaWNrZXIuc2VydmljZSc7XG5leHBvcnQge1llYXJSYW5nZURpcmVjdGl2ZSBhcyDJtW19IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9mb3JtLWVsZW1lbnRzL2RhdGV0aW1lL3llYXItcmFuZ2UveWVhci1yYW5nZS5kaXJlY3RpdmUnO1xuZXhwb3J0IHtmYWRlSW5PdXQgYXMgybVvfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvZm9ybS1lbGVtZW50cy9pZC1yZWZlcmVuY2UvYW5pbWF0aW9uL3JlZmVyZW5jZS1maW5kZXIuYW5pbWF0aW9uJztcbmV4cG9ydCB7UmVmZXJlbmNlRmluZGVyRW50cnlDb21wb25lbnQgYXMgybVxfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvZm9ybS1lbGVtZW50cy9pZC1yZWZlcmVuY2UvcmVmZXJlbmNlLWZpbmRlci1lbnRyeS9yZWZlcmVuY2UtZmluZGVyLWVudHJ5LmNvbXBvbmVudCc7XG5leHBvcnQge1JlZmVyZW5jZUZpbmRlckNvbXBvbmVudCBhcyDJtW59IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9mb3JtLWVsZW1lbnRzL2lkLXJlZmVyZW5jZS9yZWZlcmVuY2UtZmluZGVyL3JlZmVyZW5jZS1maW5kZXIuY29tcG9uZW50JztcbmV4cG9ydCB7UmVmZXJlbmNlRmluZGVyU2VydmljZSBhcyDJtXB9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9mb3JtLWVsZW1lbnRzL2lkLXJlZmVyZW5jZS9zZXJ2aWNlL3JlZmVyZW5jZS1maW5kZXIuc2VydmljZSc7XG5leHBvcnQge1BhZ2luYXRpb25Db21wb25lbnQgYXMgybV0fSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvZ3JpZC9leHRlbnNpb25zL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQnO1xuZXhwb3J0IHtEeW5hbWljTGlzdEZpbHRlckNvbXBvbmVudCBhcyDJtXJ9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9ncmlkL2ZpbHRlcnMvZHluYW1pYy1saXN0LWZpbHRlci5jb21wb25lbnQnO1xuZXhwb3J0IHtMaXN0RmlsdGVyQ29tcG9uZW50IGFzIMm1c30gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL2dyaWQvZmlsdGVycy9saXN0LWZpbHRlci5jb21wb25lbnQnO1xuZXhwb3J0IHtEdWV0aW1lSW5mb0NvbXBvbmVudCBhcyDJtWNufSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvaW5ib3gtZGV0YWlscy9kdWV0aW1lSW5mby9kdWV0aW1lSW5mby5jb21wb25lbnQnO1xuZXhwb3J0IHtFZGl0SWNvbkNvbXBvbmVudCBhcyDJtWNtfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvb2JqZWN0LWRldGFpbHMvZWRpdC1pY29uL2VkaXQtaWNvbi5jb21wb25lbnQnO1xuZXhwb3J0IHtQcmVwYXJlQ29udGVudEV4aXN0c0luZm9Db21wb25lbnQgYXMgybVjb30gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL3ByZXBhcmUtZGV0YWlscy9wcmVwYXJlLWNvbnRlbnQtZXhpc3RzLWluZm8vcHJlcGFyZS1jb250ZW50LWV4aXN0cy1pbmZvLmNvbXBvbmVudCc7XG5leHBvcnQge1Byb2Nlc3NGb3JtQ29tcG9uZW50IGFzIMm1dn0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL3Byb2Nlc3MtZm9ybS9wcm9jZXNzLWZvcm0uY29tcG9uZW50JztcbmV4cG9ydCB7UHJvY2Vzc0Zvcm1Nb2R1bGUgYXMgybV1fSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvcHJvY2Vzcy1mb3JtL3Byb2Nlc3MtZm9ybS5tb2R1bGUnO1xuZXhwb3J0IHtUcmVlTm9kZUNvbXBvbmVudCBhcyDJtWt9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay90cmVlL3RyZWUtbm9kZS90cmVlLW5vZGUuY29tcG9uZW50JztcbmV4cG9ydCB7VXNlckF2YXRhckNvbXBvbmVudCBhcyDJtWNsfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvdWknO1xuZXhwb3J0IHtJbmRleGRhdGFTdW1tYXJ5RW50cnlDb21wb25lbnQgYXMgybVpfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvdWkvaW5kZXhkYXRhLXN1bW1hcnkvaW5kZXhkYXRhLXN1bW1hcnktZW50cnkvaW5kZXhkYXRhLXN1bW1hcnktZW50cnkuY29tcG9uZW50JztcbmV4cG9ydCB7UXVlcnlTY29wZVNlbGVjdENvbXBvbmVudCBhcyDJtWd9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay91aS9xdWVyeS1zY29wZS1zZWxlY3QvcXVlcnktc2NvcGUtc2VsZWN0LmNvbXBvbmVudCc7XG5leHBvcnQge1VwbG9hZE92ZXJsYXlHdWFyZCBhcyDJtWJ9IGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay91cGxvYWQtb3ZlcmxheS91cGxvYWQtb3ZlcmxheS1ndWFyZC5zZXJ2aWNlJztcbmV4cG9ydCB7VW5zdWJzY3JpYmVPbkRlc3Ryb3kgYXMgybVmfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvdXRpbCc7XG5leHBvcnQge1ByZXZlbnREb3VibGVDbGlja0RpcmVjdGl2ZSBhcyDJtWNrfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvdXRpbC9kaXJlY3RpdmUvcHJldmVudC1kb3VibGUtY2xpY2suZGlyZWN0aXZlJztcbmV4cG9ydCB7VHJhcEZvY3VzRGlyZWN0aXZlIGFzIMm1aH0gZnJvbSAnLi9hcHAvZW8tZnJhbWV3b3JrL3V0aWwvZGlyZWN0aXZlL3RyYXAtZm9jdXMuZGlyZWN0aXZlJztcbmV4cG9ydCB7T3JkZXJCeVBpcGUgYXMgybVqfSBmcm9tICcuL2FwcC9lby1mcmFtZXdvcmsvdXRpbC9zb3J0YWJsZS9vcmRlci1ieS5waXBlJzsiXX0=
@@ -20,7 +20,7 @@ export class InboxItem {
20
20
  this.type = json.type;
21
21
  this.sourceId = json.source ? json.source.id : null;
22
22
  this.iconId = json.target && json.target.icon ? json.target.icon.id : null;
23
- this.read = json.read;
23
+ this.accepted = json.accepted;
24
24
  this.isdeputy = json.isdeputy;
25
25
  this.duetime = json.duetime;
26
26
  this.received = json.receivetime;
@@ -37,4 +37,4 @@ export class InboxItem {
37
37
  InboxItem.TYPE_BPM = 'BPM';
38
38
  InboxItem.TYPE_RESUBMISSION = 'RESUBMISSION';
39
39
  InboxItem.TYPE_SUBSCRIPTION = 'SUBSCRIPTION';
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5ib3gtaXRlbS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VvLXNkay9jb3JlL3NyYy9saWIvbW9kZWwvaW5ib3gtaXRlbS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssY0FBYyxNQUFNLFFBQVEsQ0FBQztBQUV6Qzs7R0FFRztBQUNILE1BQU0sTUFBTSxHQUFHLGNBQWMsQ0FBQztBQUU5Qjs7R0FFRztBQUNILE1BQU0sT0FBTyxTQUFTO0lBa0RwQjs7O09BR0c7SUFDSCxZQUFZLElBQVM7UUFDbkIsNkRBQTZEO1FBQzdELDZCQUE2QjtRQUU3QixJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDNUIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUNwQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ3BELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDM0UsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUM5QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDNUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUM1QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLE9BQU8sSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7O0FBM0VhLGtCQUFRLEdBQUcsS0FBSyxDQUFDO0FBQ2pCLDJCQUFpQixHQUFHLGNBQWMsQ0FBQztBQUNuQywyQkFBaUIsR0FBRyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBtb21lbnRJbXBvcnRlZCBmcm9tICdtb21lbnQnO1xuXG4vKipcbiAqIEBpZ25vcmVcbiAqL1xuY29uc3QgbW9tZW50ID0gbW9tZW50SW1wb3J0ZWQ7XG5cbi8qKlxuICogSXRlbXMgZW1pdHRlZCBieSB0aGUgaW5ib3ggc2VydmljZVxuICovXG5leHBvcnQgY2xhc3MgSW5ib3hJdGVtIHtcblxuICBwdWJsaWMgc3RhdGljIFRZUEVfQlBNID0gJ0JQTSc7XG4gIHB1YmxpYyBzdGF0aWMgVFlQRV9SRVNVQk1JU1NJT04gPSAnUkVTVUJNSVNTSU9OJztcbiAgcHVibGljIHN0YXRpYyBUWVBFX1NVQlNDUklQVElPTiA9ICdTVUJTQ1JJUFRJT04nO1xuXG4gIC8qKlxuICAgKiBJdGVtcyBJRFxuICAgKi9cbiAgaWQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEl0ZW1zIHRpdGxlXG4gICAqL1xuICB0aXRsZTogc3RyaW5nO1xuICAvKipcbiAgICogSXRlbXMgZGVzY3JpcHRpb25cbiAgICovXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJdGVtcyB0eXBlICgnQlBNJywgJ1JFU1VCTUlTU0lPTicsICdTVUJTQ1JJUFRJT04nKVxuICAgKi9cbiAgdHlwZTogc3RyaW5nO1xuICAvKipcbiAgICogSUQgb2YgdGhlIG9iamVjdCB0aGF0IGNhdXNlZCB0aGUgaW5ib3ggZW50cnkuXG4gICAqIEluIGNhc2Ugb2YgdHlwZSBTVUJTQ1JJUFRJT04gYW5kIFJFU1VCTUlTU0lPTiB0aGlzIGlzIHRoZSBpZCBvZiB0aGUgZG1zIG9iamVjdCxcbiAgICogZm9yIHR5cGUgQlBNIGl0IGlzIGEgcHJvY2VzcyBpZFxuICAgKi9cbiAgc291cmNlSWQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEl0ZW1zIGljb24gSURcbiAgICovXG4gIGljb25JZDogc3RyaW5nO1xuICAvKipcbiAgICogRmxhZyBpbmRpY2F0aW5nIHdoZXRoZXIgb3Igbm90IHRoZSBlbnRyeSBoYXMgYmVlbiByZWFkXG4gICAqL1xuICByZWFkOiBib29sZWFuO1xuICAvKipcbiAgICogRmxhZyBpbmRpY2F0aW5nIHRoYXQgdGhlIGN1cnJlbnQgdXNlciBnb3QgdGhpcyB0YXNrIGluIHN1YnN0aXR1dGVcbiAgICovXG4gIGlzZGVwdXR5OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIGRhdGUgdGhlIGl0ZW0gaXMgZHVlLlxuICAgKi9cbiAgZHVldGltZTogRGF0ZTtcbiAgICAvKipcbiAgICogVGhlIGRhdGUgdGhlIGl0ZW0gd2FzIHJlY2VpdmVkXG4gICAqL1xuICByZWNlaXZlZDogRGF0ZTtcbiAgdGFyZ2V0OiBhbnk7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgaW5zdGFuY2VcbiAgICogQHBhcmFtIGpzb24gVGhlIEpTT04gb2JqZWN0IHJlY2VpdmVkIGZyb20gdGhlIGJhY2tlbmQuIFRoaXMgd2lsbCBiZSB1c2VkIHRvIGNvbnN0cnVjdCB0aGUgbmV3IGluYm94IGl0ZW0gaW5zdGFuY2VcbiAgICovXG4gIGNvbnN0cnVjdG9yKGpzb246IGFueSkge1xuICAgIC8vIHRvZG86IGpzdXQgdXNlIE9iamVjdCBhc3NpZ24gd2hlbiBiYWNrZW5kIGNoYW5nZXMgYXJlIGRvbmVcbiAgICAvLyBPYmplY3QuYXNzaWduKHRoaXMsIGpzb24pO1xuXG4gICAgdGhpcy5pZCA9IGpzb24uaW5ib3hlbnRyeWlkO1xuICAgIHRoaXMudGl0bGUgPSBqc29uLnRpdGxlO1xuICAgIHRoaXMuZGVzY3JpcHRpb24gPSBqc29uLmRlc2NyaXB0aW9uO1xuICAgIHRoaXMudHlwZSA9IGpzb24udHlwZTtcbiAgICB0aGlzLnNvdXJjZUlkID0ganNvbi5zb3VyY2UgPyBqc29uLnNvdXJjZS5pZCA6IG51bGw7XG4gICAgdGhpcy5pY29uSWQgPSBqc29uLnRhcmdldCAmJiBqc29uLnRhcmdldC5pY29uID8ganNvbi50YXJnZXQuaWNvbi5pZCA6IG51bGw7XG4gICAgdGhpcy5yZWFkID0ganNvbi5yZWFkO1xuICAgIHRoaXMuaXNkZXB1dHkgPSBqc29uLmlzZGVwdXR5O1xuICAgIHRoaXMuZHVldGltZSA9IGpzb24uZHVldGltZTtcbiAgICB0aGlzLnJlY2VpdmVkID0ganNvbi5yZWNlaXZldGltZTtcbiAgICB0aGlzLnRhcmdldCA9IGpzb24udGFyZ2V0O1xuICB9XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hldGhlciBvciBub3QgdGhlIGluYm94IGl0ZW0gaXMgb3ZlcmR1ZVxuICAgKiBAcmV0dXJucyBUcnVlIHdoZW4gaW5ib3ggaXRlbSBpcyBvdmVyZHVlLCBmYWxzZSBvdGhlcndpc2VcbiAgICovXG4gIGlzT3ZlcmR1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5kdWV0aW1lICYmIG1vbWVudCh0aGlzLmR1ZXRpbWUpLmlzQmVmb3JlKG1vbWVudCgpKTtcbiAgfVxufVxuXG4vKipcbiAqIEluYm94U3RhdGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJbmJveFN0YXRlIHtcbiAgdG90YWxtZXNzYWdlczogbnVtYmVyO1xuICBvdmVyZHVlbWVzc2FnZXM6IG51bWJlcjtcbiAgdW5yZWFkbWVzc2FnZXM6IG51bWJlcjtcbiAgY2FsY3VsYXRpb250aW1lOiBEYXRlO1xufSJdfQ==
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5ib3gtaXRlbS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VvLXNkay9jb3JlL3NyYy9saWIvbW9kZWwvaW5ib3gtaXRlbS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssY0FBYyxNQUFNLFFBQVEsQ0FBQztBQUV6Qzs7R0FFRztBQUNILE1BQU0sTUFBTSxHQUFHLGNBQWMsQ0FBQztBQUU5Qjs7R0FFRztBQUNILE1BQU0sT0FBTyxTQUFTO0lBa0RwQjs7O09BR0c7SUFDSCxZQUFZLElBQVM7UUFDbkIsNkRBQTZEO1FBQzdELDZCQUE2QjtRQUU3QixJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDNUIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUNwQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ3BELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDM0UsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQzlCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUM5QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDNUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUM1QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLE9BQU8sSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7O0FBM0VhLGtCQUFRLEdBQUcsS0FBSyxDQUFDO0FBQ2pCLDJCQUFpQixHQUFHLGNBQWMsQ0FBQztBQUNuQywyQkFBaUIsR0FBRyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBtb21lbnRJbXBvcnRlZCBmcm9tICdtb21lbnQnO1xuXG4vKipcbiAqIEBpZ25vcmVcbiAqL1xuY29uc3QgbW9tZW50ID0gbW9tZW50SW1wb3J0ZWQ7XG5cbi8qKlxuICogSXRlbXMgZW1pdHRlZCBieSB0aGUgaW5ib3ggc2VydmljZVxuICovXG5leHBvcnQgY2xhc3MgSW5ib3hJdGVtIHtcblxuICBwdWJsaWMgc3RhdGljIFRZUEVfQlBNID0gJ0JQTSc7XG4gIHB1YmxpYyBzdGF0aWMgVFlQRV9SRVNVQk1JU1NJT04gPSAnUkVTVUJNSVNTSU9OJztcbiAgcHVibGljIHN0YXRpYyBUWVBFX1NVQlNDUklQVElPTiA9ICdTVUJTQ1JJUFRJT04nO1xuXG4gIC8qKlxuICAgKiBJdGVtcyBJRFxuICAgKi9cbiAgaWQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEl0ZW1zIHRpdGxlXG4gICAqL1xuICB0aXRsZTogc3RyaW5nO1xuICAvKipcbiAgICogSXRlbXMgZGVzY3JpcHRpb25cbiAgICovXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJdGVtcyB0eXBlICgnQlBNJywgJ1JFU1VCTUlTU0lPTicsICdTVUJTQ1JJUFRJT04nKVxuICAgKi9cbiAgdHlwZTogc3RyaW5nO1xuICAvKipcbiAgICogSUQgb2YgdGhlIG9iamVjdCB0aGF0IGNhdXNlZCB0aGUgaW5ib3ggZW50cnkuXG4gICAqIEluIGNhc2Ugb2YgdHlwZSBTVUJTQ1JJUFRJT04gYW5kIFJFU1VCTUlTU0lPTiB0aGlzIGlzIHRoZSBpZCBvZiB0aGUgZG1zIG9iamVjdCxcbiAgICogZm9yIHR5cGUgQlBNIGl0IGlzIGEgcHJvY2VzcyBpZFxuICAgKi9cbiAgc291cmNlSWQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEl0ZW1zIGljb24gSURcbiAgICovXG4gIGljb25JZDogc3RyaW5nO1xuICAvKipcbiAgICogRmxhZyBpbmRpY2F0aW5nIHdoZXRoZXIgb3Igbm90IHRoZSBlbnRyeSBoYXMgYmVlbiBhY2NlcHRlZFxuICAgKi9cbiAgYWNjZXB0ZWQ6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBGbGFnIGluZGljYXRpbmcgdGhhdCB0aGUgY3VycmVudCB1c2VyIGdvdCB0aGlzIHRhc2sgaW4gc3Vic3RpdHV0ZVxuICAgKi9cbiAgaXNkZXB1dHk6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGUgZGF0ZSB0aGUgaXRlbSBpcyBkdWUuXG4gICAqL1xuICBkdWV0aW1lOiBEYXRlO1xuICAgIC8qKlxuICAgKiBUaGUgZGF0ZSB0aGUgaXRlbSB3YXMgcmVjZWl2ZWRcbiAgICovXG4gIHJlY2VpdmVkOiBEYXRlO1xuICB0YXJnZXQ6IGFueTtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBpbnN0YW5jZVxuICAgKiBAcGFyYW0ganNvbiBUaGUgSlNPTiBvYmplY3QgcmVjZWl2ZWQgZnJvbSB0aGUgYmFja2VuZC4gVGhpcyB3aWxsIGJlIHVzZWQgdG8gY29uc3RydWN0IHRoZSBuZXcgaW5ib3ggaXRlbSBpbnN0YW5jZVxuICAgKi9cbiAgY29uc3RydWN0b3IoanNvbjogYW55KSB7XG4gICAgLy8gdG9kbzoganN1dCB1c2UgT2JqZWN0IGFzc2lnbiB3aGVuIGJhY2tlbmQgY2hhbmdlcyBhcmUgZG9uZVxuICAgIC8vIE9iamVjdC5hc3NpZ24odGhpcywganNvbik7XG5cbiAgICB0aGlzLmlkID0ganNvbi5pbmJveGVudHJ5aWQ7XG4gICAgdGhpcy50aXRsZSA9IGpzb24udGl0bGU7XG4gICAgdGhpcy5kZXNjcmlwdGlvbiA9IGpzb24uZGVzY3JpcHRpb247XG4gICAgdGhpcy50eXBlID0ganNvbi50eXBlO1xuICAgIHRoaXMuc291cmNlSWQgPSBqc29uLnNvdXJjZSA/IGpzb24uc291cmNlLmlkIDogbnVsbDtcbiAgICB0aGlzLmljb25JZCA9IGpzb24udGFyZ2V0ICYmIGpzb24udGFyZ2V0Lmljb24gPyBqc29uLnRhcmdldC5pY29uLmlkIDogbnVsbDtcbiAgICB0aGlzLmFjY2VwdGVkID0ganNvbi5hY2NlcHRlZDtcbiAgICB0aGlzLmlzZGVwdXR5ID0ganNvbi5pc2RlcHV0eTtcbiAgICB0aGlzLmR1ZXRpbWUgPSBqc29uLmR1ZXRpbWU7XG4gICAgdGhpcy5yZWNlaXZlZCA9IGpzb24ucmVjZWl2ZXRpbWU7XG4gICAgdGhpcy50YXJnZXQgPSBqc29uLnRhcmdldDtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgb3Igbm90IHRoZSBpbmJveCBpdGVtIGlzIG92ZXJkdWVcbiAgICogQHJldHVybnMgVHJ1ZSB3aGVuIGluYm94IGl0ZW0gaXMgb3ZlcmR1ZSwgZmFsc2Ugb3RoZXJ3aXNlXG4gICAqL1xuICBpc092ZXJkdWUoKSB7XG4gICAgcmV0dXJuIHRoaXMuZHVldGltZSAmJiBtb21lbnQodGhpcy5kdWV0aW1lKS5pc0JlZm9yZShtb21lbnQoKSk7XG4gIH1cbn1cblxuLyoqXG4gKiBJbmJveFN0YXRlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSW5ib3hTdGF0ZSB7XG4gIHRvdGFsbWVzc2FnZXM6IG51bWJlcjtcbiAgb3ZlcmR1ZW1lc3NhZ2VzOiBudW1iZXI7XG4gIHVucmVhZG1lc3NhZ2VzOiBudW1iZXI7XG4gIGNhbGN1bGF0aW9udGltZTogRGF0ZTtcbn0iXX0=
@@ -268,24 +268,44 @@ export class BackendService {
268
268
  * Possible renditions are `PDF`, `TIFF`, `TEXT`, `JPEG`.
269
269
  */
270
270
  downloadContent(dmsObjects, rendition, fileNameWithVersionNumber) {
271
- dmsObjects.forEach(dmsObject => {
272
- if (dmsObject.content) {
273
- let uri = `${this.getServiceBase()}/dms/${dmsObject.content.id}/content?type=${dmsObject.content.type}&asdownload=true`;
271
+ const item = dmsObjects[0];
272
+ if (dmsObjects.length === 1) {
273
+ if (item.content) {
274
+ let uri = `${this.getServiceBase()}/dms/${item.content.id}/content?type=${item.content.type}&asdownload=true`;
274
275
  if (rendition) {
275
276
  uri += `&rendition=${rendition}&_intent=DOWNLOAD_${rendition}`;
276
277
  }
277
278
  else {
278
279
  uri += '&_intent=DOWNLOAD';
279
280
  }
280
- if (dmsObject.content.id === dmsObject.id) {
281
- uri += `&version=${dmsObject.version}`;
281
+ if (item.content.id === item.id) {
282
+ uri += `&version=${item.version}`;
282
283
  }
283
- this.download(uri, fileNameWithVersionNumber ? dmsObject.version : null);
284
+ this.download(uri, fileNameWithVersionNumber ? item.version : null);
284
285
  }
285
286
  else {
286
- this.logger.error('The provided dms object has no content', dmsObject);
287
+ this.logger.error('The provided dms object has no content', item);
287
288
  }
288
- });
289
+ }
290
+ if (dmsObjects.length > 1) {
291
+ let uri = `${this.getServiceBase()}/dms/batch/export`;
292
+ if (item.content) {
293
+ const expressions = dmsObjects.map(obj => obj.content.id);
294
+ const data = {
295
+ query: {
296
+ expression: [...expressions]
297
+ },
298
+ options: {
299
+ rendition: ''
300
+ }
301
+ };
302
+ data.options.rendition = rendition ? 'PDF' : null;
303
+ this.downloadMulti(uri, fileNameWithVersionNumber ? item.version : null, data);
304
+ }
305
+ else {
306
+ this.logger.error('The provided dms object has no content', item);
307
+ }
308
+ }
289
309
  }
290
310
  download(uri, version) {
291
311
  this.http.get(uri, { observe: 'response', responseType: 'blob', withCredentials: this.coreConfig.withCredentials })
@@ -293,6 +313,12 @@ export class BackendService {
293
313
  FileSaver.saveAs(res.body, this.getFileNameFromHttpResponse(res, version));
294
314
  });
295
315
  }
316
+ downloadMulti(uri, version, _body) {
317
+ this.http.post(uri, _body, { observe: 'response', responseType: 'blob', withCredentials: this.coreConfig.withCredentials })
318
+ .subscribe((res) => {
319
+ FileSaver.saveAs(res.body, this.getFileNameFromHttpResponse(res, version));
320
+ });
321
+ }
296
322
  getFileNameFromHttpResponse(res, version) {
297
323
  const contentDispositionHeader = res.headers.get('Content-Disposition') || '';
298
324
  const encodedFileNameMatchResult = contentDispositionHeader.match('filename\\*=UTF-8\'\'(.*)')
@@ -325,4 +351,4 @@ BackendService.ctorParameters = () => [
325
351
  { type: Logger },
326
352
  { type: Config }
327
353
  ];
328
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja2VuZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZW8tc2RrL2NvcmUvc3JjL2xpYi9zZXJ2aWNlL2JhY2tlbmQvYmFja2VuZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxFQUFFLElBQUksWUFBWSxFQUF1QyxNQUFNLE1BQU0sQ0FBQztBQUM5RSxPQUFPLEVBQUMsR0FBRyxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3hDLE9BQU8sRUFBQyxNQUFNLEVBQUUsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBQyxVQUFVLEVBQUUsV0FBVyxFQUFlLE1BQU0sc0JBQXNCLENBQUM7QUFDM0UsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRWhELE9BQU8sS0FBSyxTQUFTLE1BQU0sWUFBWSxDQUFDO0FBQ3hDLE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUd4QyxPQUFPLEVBQUMsUUFBUSxFQUFFLFdBQVcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUF5QjFELGFBQWE7QUFDYjs7OztHQUlHO0FBRUgsTUFBTSxPQUFPLGNBQWM7SUFRekI7O09BRUc7SUFDSCxZQUFvQixJQUFnQixFQUNOLFVBQXNCLEVBQzFDLE1BQWMsRUFDZCxNQUFjO1FBSEosU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNOLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDMUMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFaakIsbUJBQWMsR0FBa0MsR0FBRyxDQUFDLENBQUMsSUFBVyxFQUFFLEVBQUUsQ0FBQyxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsTUFBTSxDQUFDLENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1FBRTVHLFVBQUssR0FBRyxJQUFJLEdBQUcsRUFBZSxDQUFDO1FBQy9CLFNBQUksR0FBRyxJQUFJLEdBQUcsRUFBMkIsQ0FBQztRQUMxQyxZQUFPLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFVekM7OztXQUdHO1FBQ0gsSUFBSSxDQUFDLFdBQVcsR0FBRztZQUNqQixJQUFJLEVBQUUsRUFBRTtZQUNSLElBQUksRUFBRSxJQUFJO1NBQ1gsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNJLGNBQWMsQ0FBQyxPQUFxQjtRQUN6QyxJQUFJLE9BQU8sRUFBRTtZQUNYLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDeEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUM7WUFDM0IsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRTtnQkFDekIsMERBQTBEO2FBQzNEO1lBQ0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDdEM7SUFDSCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLFNBQVMsQ0FBQyxHQUFXLEVBQUUsS0FBYTtRQUN6QyxJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQ3pCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO1NBQzdDO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFVBQVU7UUFDZixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksY0FBYyxDQUFDLGNBQTRCO1FBQ2hELE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsZUFBZSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZSxFQUFDLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDdkgsQ0FBQztJQUVEOzs7T0FHRztJQUNJLGNBQWM7UUFDbkIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksYUFBYTtRQUNsQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRDs7O09BR0c7SUFDSSxjQUFjO1FBQ25CLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFlBQVk7UUFDakIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksVUFBVTtRQUNmLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFlBQVk7UUFDakIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksYUFBYTtRQUNsQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRDs7T0FFRztJQUNJLFdBQVcsQ0FBQyxLQUFhLEVBQUU7UUFDaEMsT0FBTyxJQUFJLENBQUMsY0FBYyxFQUFFLEdBQUcsV0FBVyxHQUFHLEVBQUUsQ0FBQztJQUNsRCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxPQUFPO1FBQ1osT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVPLGtCQUFrQixDQUFDLElBQVk7UUFDckMsT0FBTyxDQUFBLElBQUksYUFBSixJQUFJLHVCQUFKLElBQUksQ0FBRSxVQUFVLENBQUMsR0FBRyxHQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQzVFLENBQUM7SUFFTyxjQUFjLENBQUMsSUFBYTtRQUNsQyxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksR0FBRyxDQUFDLEdBQVcsRUFBRSxJQUFhLEVBQUUsY0FBNEI7UUFDakUsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLEdBQUcsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7SUFDN0YsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSSxHQUFHLENBQUMsR0FBVyxFQUFFLElBQVUsRUFBRSxJQUFhLEVBQUUsY0FBNEI7UUFDN0UsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO0lBQ25HLENBQUM7SUFFRDs7T0FFRztJQUNJLE9BQU8sQ0FBQyxHQUFXLEVBQUUsSUFBYTtRQUN2QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsRUFBQyxZQUFZLEVBQUUsTUFBTSxFQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JHLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ksSUFBSSxDQUFDLEdBQVcsRUFBRSxJQUFLLEVBQUUsSUFBYSxFQUFFLGNBQTRCO1FBQ3pFLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDakQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLE9BQU8sR0FBRyxHQUFHLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO0lBQzFGLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ksYUFBYSxDQUFDLEdBQVcsRUFBRSxRQUFrQixFQUFFLElBQWEsRUFBRSxjQUE0QjtRQUMvRixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNsQyxPQUFPLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQy9CLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLGVBQWUsRUFBQyxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBQ3ZILE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxPQUFPLEdBQUcsR0FBRyxFQUFFLEVBQUUsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxHQUFHLENBQUMsR0FBVyxFQUFFLElBQWEsRUFBRSxjQUE0QjtRQUNqRSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztJQUNoRyxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7T0FVRztJQUNJLE1BQU0sQ0FBQyxJQUFXLEVBQUUsSUFBaUM7UUFDMUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUMsRUFBRSxFQUFFLElBQUksRUFBQyxFQUFFLEVBQUU7WUFDMUIsSUFBSSxFQUFFLEVBQUU7Z0JBQ04sTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7Z0JBQzFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUMsU0FBUyxFQUFFLElBQUksRUFBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDO2FBQzFFO2lCQUFNLElBQUksSUFBSSxFQUFFO2dCQUNmLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ3BEO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxXQUFXLENBQUMsR0FBVztRQUM1QixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3ZCLE9BQU8sWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7U0FDMUM7YUFBTTtZQUNMLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEVBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUMsQ0FBQyxDQUFDLElBQUksQ0FDdEksR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQzVDO0lBQ0gsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSSxlQUFlLENBQUMsRUFBVSxFQUFFLE9BQWtCO1FBQ25ELElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUU7WUFDckIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUMxQjthQUFNO1lBQ0wsTUFBTSxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUNwRCxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsRUFDcEMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7WUFDRixJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDeEIsT0FBTyxJQUFJLENBQUM7U0FDYjtJQUNILENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxlQUFlLENBQUMsVUFBdUIsRUFBRSxTQUE0QyxFQUFFLHlCQUFtQztRQUUvSCxVQUFVLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQzdCLElBQUksU0FBUyxDQUFDLE9BQU8sRUFBRTtnQkFFckIsSUFBSSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLFFBQVEsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLGlCQUFpQixTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksa0JBQWtCLENBQUM7Z0JBQ3hILElBQUksU0FBUyxFQUFFO29CQUNiLEdBQUcsSUFBSSxjQUFjLFNBQVMscUJBQXFCLFNBQVMsRUFBRSxDQUFDO2lCQUNoRTtxQkFBTTtvQkFDTCxHQUFHLElBQUksbUJBQW1CLENBQUM7aUJBQzVCO2dCQUNELElBQUksU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEtBQUssU0FBUyxDQUFDLEVBQUUsRUFBRTtvQkFDekMsR0FBRyxJQUFJLFlBQVksU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDO2lCQUN4QztnQkFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSx5QkFBeUIsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDMUU7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsd0NBQXdDLEVBQUUsU0FBUyxDQUFDLENBQUM7YUFDeEU7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxRQUFRLENBQUMsR0FBVyxFQUFFLE9BQWdCO1FBQzNDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxFQUFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxlQUFlLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLEVBQUMsQ0FBQzthQUM5RyxTQUFTLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNqQixTQUFTLENBQUMsTUFBTSxDQUNkLEdBQUcsQ0FBQyxJQUFJLEVBQ1IsSUFBSSxDQUFDLDJCQUEyQixDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FDL0MsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVPLDJCQUEyQixDQUFDLEdBQXNCLEVBQUUsT0FBZTtRQUN6RSxNQUFNLHdCQUF3QixHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLHFCQUFxQixDQUFDLElBQUksRUFBRSxDQUFDO1FBQzlFLE1BQU0sMEJBQTBCLEdBQUcsd0JBQXdCLENBQUMsS0FBSyxDQUFDLDJCQUEyQixDQUFDO2VBQ3pGLHdCQUF3QixDQUFDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQ3pELE1BQU0sZUFBZSxHQUFHLDBCQUEwQixDQUFDLENBQUMsQ0FBQywwQkFBMEIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQzFGLE1BQU0sUUFBUSxHQUFHLGVBQWUsQ0FBQyxDQUFDLENBQUMsa0JBQWtCLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUNuRixNQUFNLEtBQUssR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN4RixPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLEtBQUssT0FBTyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztJQUNqRyxDQUFDO0lBR0Q7Ozs7T0FJRztJQUNLLGlCQUFpQjtRQUN2QixPQUFPLElBQUksV0FBVyxDQUFDO1lBQ3JCLGNBQWMsRUFBRSxrQkFBa0I7WUFDbEMsb0JBQW9CLEVBQUUsT0FBTztZQUM3QixzQkFBc0IsRUFBRSxPQUFPO1lBQy9CLGlCQUFpQixFQUFFLE1BQU07U0FDMUIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7O1lBalZGLFVBQVU7OztZQXhDSCxVQUFVO1lBUVYsVUFBVSx1QkE2Q2IsTUFBTSxTQUFDLFdBQVc7WUFqRGYsTUFBTTtZQUhOLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge29mIGFzIG9ic2VydmFibGVPZiwgT2JzZXJ2YWJsZSwgTW9ub1R5cGVPcGVyYXRvckZ1bmN0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwLCB0YXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7SW5qZWN0LCBJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7SHR0cENsaWVudCwgSHR0cEhlYWRlcnMsIEh0dHBSZXNwb25zZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtDb25maWd9IGZyb20gJy4uL2NvbmZpZy9jb25maWcuc2VydmljZSc7XG5pbXBvcnQge0Rtc09iamVjdH0gZnJvbSAnLi4vLi4vbW9kZWwvZG1zLW9iamVjdC5tb2RlbCc7XG5pbXBvcnQgKiBhcyBGaWxlU2F2ZXIgZnJvbSAnZmlsZS1zYXZlcic7XG5pbXBvcnQge0xvZ2dlcn0gZnJvbSAnLi4vbG9nZ2VyL2xvZ2dlcic7XG5pbXBvcnQge0F1dGhQcm9maWxlfSBmcm9tICcuLi9hdXRoL2F1dGgtcHJvZmlsZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHtIdHRwUGFyYW1zfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge2ZpbmFsaXplLCBzaGFyZVJlcGxheX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtDb3JlQ29uZmlnfSBmcm9tICcuLi8uLi9jb25maWcvY29yZS1jb25maWcnO1xuaW1wb3J0IHtDT1JFX0NPTkZJR30gZnJvbSAnLi4vLi4vY29uZmlnL2NvcmUtaW5pdC50b2tlbnMnO1xuXG4vKipcbiAqIEh0dHBPcHRpb25zIGZvciBodHRwIHJlcXVlc3RcbiAqIEBwYXJhbSBvYnNlcnZlOiAnYm9keScgfCAnZXZlbnRzJyB8ICdyZXNwb25zZSdcbiAqIEBwYXJhbSByZXNwb25zZVR5cGU6ICdhcnJheWJ1ZmZlcicgfCAnYmxvYicgfCAnanNvbicgfCAndGV4dCdcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBIdHRwT3B0aW9ucyB7XG4gIGhlYWRlcnM/OlxuICB8IEh0dHBIZWFkZXJzXG4gIHwge1xuICAgIFtoZWFkZXI6IHN0cmluZ106IHN0cmluZyB8IHN0cmluZ1tdO1xuICB9O1xuICBvYnNlcnZlPzogYW55O1xuICBwYXJhbXM/OlxuICB8IEh0dHBQYXJhbXNcbiAgfCB7XG4gICAgW3BhcmFtOiBzdHJpbmddOiBzdHJpbmcgfCBzdHJpbmdbXTtcbiAgfTtcbiAgcmVwb3J0UHJvZ3Jlc3M/OiBib29sZWFuO1xuICByZXNwb25zZVR5cGU/OiBhbnk7XG4gIHdpdGhDcmVkZW50aWFscz86IGJvb2xlYW47XG59XG5cblxuLy8gQHRzLWlnbm9yZVxuLyoqXG4gKiBgQmFja2VuZFNlcnZpY2VgIGVuY2Fwc3VsYXRlcyB0aGUgY29tbXVuaWNhdGlvbiB3aXRoIHRoZSB5dXV2aXM8c3VwPiZyZWc7PC9zdXA+IFJBRCBSRVNUIGVuZHBvaW50cy5cbiAqXG4gKiBBcyB5dXV2aXM8c3VwPiZyZWc7PC9zdXA+IFJBRCBwcm92aWRlcyBkaWZmZXJlbnQgc2VydmljZXMsIHRoaXMgc2VydmljZSBpcyBhbHNvIGNhcGFibGUgb2YgcHJvdmlkaW5nIHRoZSBiYXNlIFVSSXMgZm9yIHRob3NlIHNlcnZpY2VzLlxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQmFja2VuZFNlcnZpY2Uge1xuXG4gIHB1YmxpYyBncmlkRGF0YUZpbHRlcjogTW9ub1R5cGVPcGVyYXRvckZ1bmN0aW9uPGFueT4gPSBtYXAoKGRhdGE6IGFueVtdKSA9PiBkYXRhPy5maWx0ZXIoKHY6IGFueSkgPT4gIXYuX19yZW1vdmVkKSk7XG4gIHByaXZhdGUgYXV0aFByb2ZpbGU6IEF1dGhQcm9maWxlO1xuICBwcml2YXRlIGNhY2hlID0gbmV3IE1hcDxzdHJpbmcsIGFueT4oKTtcbiAgcHJpdmF0ZSB0ZW1wID0gbmV3IE1hcDxzdHJpbmcsIE9ic2VydmFibGU8YW55Pj4oKTtcbiAgcHJpdmF0ZSBoZWFkZXJzID0gdGhpcy5zZXREZWZhdWx0SGVhZGVycygpO1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgQEluamVjdChDT1JFX0NPTkZJRykgcHVibGljIGNvcmVDb25maWc6IENvcmVDb25maWcsXG4gICAgcHJpdmF0ZSBsb2dnZXI6IExvZ2dlcixcbiAgICBwcml2YXRlIGNvbmZpZzogQ29uZmlnKSB7XG5cbiAgICAvKipcbiAgICAgKiBkZWZhdWx0IHByb2ZpbGUgaXMgc3VwcG9zZWQgdG8gdXNlIE5UTE1cbiAgICAgKiBAdHlwZSB7aG9zdDogc3RyaW5nOyBudGxtOiBib29sZWFufVxuICAgICAqL1xuICAgIHRoaXMuYXV0aFByb2ZpbGUgPSB7XG4gICAgICBob3N0OiAnJyxcbiAgICAgIG50bG06IHRydWVcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIHB1YmxpYyBzZXRBdXRoUHJvZmlsZShwcm9maWxlPzogQXV0aFByb2ZpbGUpIHtcbiAgICBpZiAocHJvZmlsZSkge1xuICAgICAgdGhpcy5oZWFkZXJzID0gdGhpcy5zZXREZWZhdWx0SGVhZGVycygpO1xuICAgICAgdGhpcy5hdXRoUHJvZmlsZSA9IHByb2ZpbGU7XG4gICAgICBpZiAodGhpcy5hdXRoUHJvZmlsZS5hdXRoKSB7XG4gICAgICAgIC8vIHRoaXMuc2V0SGVhZGVyKCdBdXRob3JpemF0aW9uJywgdGhpcy5hdXRoUHJvZmlsZS5hdXRoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuaGVhZGVycy5kZWxldGUoJ0F1dGhvcml6YXRpb24nKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQWRkIGEgbmV3IGhlYWRlci5cbiAgICogQHBhcmFtIGtleSBUaGUgaGVhZGVycyBuYW1lXG4gICAqIEBwYXJhbSB2YWx1ZSBUaGUgdmFsdWVcbiAgICovXG4gIHB1YmxpYyBzZXRIZWFkZXIoa2V5OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpIHtcbiAgICBpZiAodmFsdWUgJiYgdmFsdWUubGVuZ3RoKSB7XG4gICAgICB0aGlzLmhlYWRlcnMgPSB0aGlzLmhlYWRlcnMuc2V0KGtleSwgdmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZXRyaWV2ZXMgdGhlIGN1cnJlbnQgaGVhZGVyc1xuICAgKiBAcmV0dXJucyBUaGUgYEh0dHBIZWFkZXJzYCB0aGF0IGFyZSBjdXJyZW50bHkgc2V0IHVwXG4gICAqL1xuICBwdWJsaWMgZ2V0SGVhZGVycygpOiBIdHRwSGVhZGVycyB7XG4gICAgcmV0dXJuIHRoaXMuaGVhZGVycztcbiAgfVxuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBwdWJsaWMgZ2V0SHR0cE9wdGlvbnMocmVxdWVzdE9wdGlvbnM/OiBIdHRwT3B0aW9ucyk6IEh0dHBPcHRpb25zIHtcbiAgICByZXR1cm4gT2JqZWN0LmFzc2lnbih7aGVhZGVyczogdGhpcy5nZXRIZWFkZXJzKCksIHdpdGhDcmVkZW50aWFsczogdGhpcy5jb3JlQ29uZmlnLndpdGhDcmVkZW50aWFsc30sIHJlcXVlc3RPcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBiYXNlIFVSSSBmb3IgdGhlIERNUy1TZXJ2aWNlIGVuZHBvaW50XG4gICAqIEByZXR1cm5zIEJhc2UgVVJJXG4gICAqL1xuICBwdWJsaWMgZ2V0U2VydmljZUJhc2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnLmdldFVyaSgnc2VydmljZUJhc2UnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBiYXNlIFVSSSBmb3IgdGhlIFNlYXJjaC1TZXJ2aWNlIGVuZHBvaW50XG4gICAqIEByZXR1cm5zIEJhc2UgVVJJXG4gICAqL1xuICBwdWJsaWMgZ2V0U2VhcmNoQmFzZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jb25maWcuZ2V0VXJpKCdzZWFyY2hCYXNlJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgYmFzZSBVUkkgZm9yIHRoZSBDb250ZXh0LVNlcnZpY2UgZW5kcG9pbnRcbiAgICogQHJldHVybnMgQmFzZSBVUklcbiAgICovXG4gIHB1YmxpYyBnZXRDb250ZXh0QmFzZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jb25maWcuZ2V0VXJpKCdjb250ZXh0QmFzZScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGJhc2UgVVJJIGZvciB0aGUgSW5ib3gtU2VydmljZSBlbmRwb2ludFxuICAgKiBAcmV0dXJucyBCYXNlIFVSSVxuICAgKi9cbiAgcHVibGljIGdldEluYm94QmFzZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jb25maWcuZ2V0VXJpKCdpbmJveEJhc2UnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBiYXNlIFVSSSBmb3IgdGhlIEJQTS1TZXJ2aWNlIGVuZHBvaW50XG4gICAqIEByZXR1cm5zIEJhc2UgVVJJXG4gICAqL1xuICBwdWJsaWMgZ2V0QnBtQmFzZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jb25maWcuZ2V0VXJpKCdicG1CYXNlJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgYmFzZSBVUkkgZm9yIHRoZSBBZ2VudC1TZXJ2aWNlIGVuZHBvaW50XG4gICAqIEByZXR1cm5zIEJhc2UgVVJJXG4gICAqL1xuICBwdWJsaWMgZ2V0QWdlbnRCYXNlKCkge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZy5nZXRVcmkoJ2FnZW50QmFzZScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGJhc2UgVVJJIGZvciB0aGUgU3RhdHVzLVNlcnZpY2UgZW5kcG9pbnRcbiAgICogQHJldHVybnMgQmFzZSBVUklcbiAgICovXG4gIHB1YmxpYyBnZXRTdGF0dXNCYXNlKCkge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZy5nZXRVcmkoJ3N0YXR1c0Jhc2UnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBwdWJsaWMgZ2V0SWNvbkJhc2UoaWQ6IHN0cmluZyA9ICcnKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0U2VydmljZUJhc2UoKSArICcvdWkvaWNvbi8nICsgaWQ7XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgcHVibGljIGdldEhvc3QoKSB7XG4gICAgcmV0dXJuIHRoaXMuYXV0aFByb2ZpbGUuaG9zdCB8fCAnJztcbiAgfVxuXG4gIHByaXZhdGUgZ2V0QmFzZVdpdGhDb250ZXh0KGJhc2U6IHN0cmluZykge1xuICAgIHJldHVybiBiYXNlPy5zdGFydHNXaXRoKCcvJykgPyB0aGlzLmNvbmZpZy5nZXRDb250ZXh0UGF0aCgpICsgYmFzZSA6IGJhc2U7XG4gIH1cblxuICBwcml2YXRlIGdldENvbnRleHRQYXRoKGJhc2U/OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmdldEhvc3QoKSArICh0aGlzLmdldEJhc2VXaXRoQ29udGV4dChiYXNlIHx8IHRoaXMuZ2V0U2VydmljZUJhc2UoKSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdyYXBwZWQgSFRUUCBHRVQgbWV0aG9kXG4gICAqIEBwYXJhbSB1cmkgVGhlIFJFU1QgVVJJIHRvIGJlIHF1ZXJpZWRcbiAgICogQHBhcmFtIGJhc2UgVGhlIEJhc2UgVVJJIChiYWNrZW5kIHNlcnZpY2UpIHRvIGJlIHVzZWRcbiAgICogQHBhcmFtIHJlcXVlc3RPcHRpb25zIEFkZGl0aW9uYWwgcmVxdWVzdCBvcHRpb25zXG4gICAqIEByZXR1cm5zIFRoZSBkYXRhIHJldHJpZXZlZCBmcm9tIHRoZSBnaXZlbiBlbmRwb2ludFxuICAgKi9cbiAgcHVibGljIGdldCh1cmk6IHN0cmluZywgYmFzZT86IHN0cmluZywgcmVxdWVzdE9wdGlvbnM/OiBIdHRwT3B0aW9ucyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodGhpcy5nZXRDb250ZXh0UGF0aChiYXNlKSArIHVyaSwgdGhpcy5nZXRIdHRwT3B0aW9ucyhyZXF1ZXN0T3B0aW9ucykpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdyYXBwZWQgSFRUUCBQVVQgbWV0aG9kXG4gICAqIEBwYXJhbSB1cmkgVGhlIHRhcmdldCBSRVNUIFVSSVxuICAgKiBAcGFyYW0gZGF0YSBEYXRhIHRvIGJlICdwb3N0ZWQnXG4gICAqIEBwYXJhbSBiYXNlIFRoZSBCYXNlIFVSSSAoYmFja2VuZCBzZXJ2aWNlKSB0byBiZSB1c2VkXG4gICAqIEBwYXJhbSByZXF1ZXN0T3B0aW9ucyBBZGRpdGlvbmFsIHJlcXVlc3Qgb3B0aW9uc1xuICAgKiBAcmV0dXJucyBUaGUgcmV0dXJuIHZhbHVlIG9mIHRoZSB0YXJnZXQgUFVUIGVuZHBvaW50XG4gICAqL1xuICBwdWJsaWMgcHV0KHVyaTogc3RyaW5nLCBkYXRhPzogYW55LCBiYXNlPzogc3RyaW5nLCByZXF1ZXN0T3B0aW9ucz86IEh0dHBPcHRpb25zKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dCh0aGlzLmdldENvbnRleHRQYXRoKGJhc2UpICsgdXJpLCBkYXRhLCB0aGlzLmdldEh0dHBPcHRpb25zKHJlcXVlc3RPcHRpb25zKSk7XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgcHVibGljIGdldEpzb24odXJpOiBzdHJpbmcsIGJhc2U/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuZ2V0Q29udGV4dFBhdGgoYmFzZSkgKyB1cmksIHRoaXMuZ2V0SHR0cE9wdGlvbnMoe3Jlc3BvbnNlVHlwZTogJ2pzb24nfSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdyYXBwZWQgSFRUUCBQT1NUIG1ldGhvZFxuICAgKiBAcGFyYW0gdXJpIFRoZSB0YXJnZXQgUkVTVCBVUklcbiAgICogQHBhcmFtIGRhdGEgRGF0YSB0byBiZSAncG9zdGVkJ1xuICAgKiBAcGFyYW0gYmFzZSBUaGUgQmFzZSBVUkkgKGJhY2tlbmQgc2VydmljZSkgdG8gYmUgdXNlZFxuICAgKiBAcGFyYW0gcmVxdWVzdE9wdGlvbnMgQWRkaXRpb25hbCByZXF1ZXN0IG9wdGlvbnNcbiAgICogQHJldHVybnMgVGhlIHJldHVybiB2YWx1ZSBvZiB0aGUgdGFyZ2V0IFBPU1QgZW5kcG9pbnRcbiAgICovXG4gIHB1YmxpYyBwb3N0KHVyaTogc3RyaW5nLCBkYXRhPywgYmFzZT86IHN0cmluZywgcmVxdWVzdE9wdGlvbnM/OiBIdHRwT3B0aW9ucyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3QgYmFzZVVyaSA9IHRoaXMuZ2V0Q29udGV4dFBhdGgoYmFzZSk7XG4gICAgY29uc3QgcGF5bG9hZCA9IGRhdGEgPyBKU09OLnN0cmluZ2lmeShkYXRhKSA6ICcnO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHtiYXNlVXJpfSR7dXJpfWAsIHBheWxvYWQsIHRoaXMuZ2V0SHR0cE9wdGlvbnMocmVxdWVzdE9wdGlvbnMpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQZXJmb3JtcyBhIG11bHRpcGFydCBmb3JtIGRhdGEgUE9TVCByZXF1ZXN0LlxuICAgKiBAcGFyYW0gdXJpIFRoZSB0YXJnZXQgUkVTVCBVUklcbiAgICogQHBhcmFtIGZvcm1EYXRhIEZvcm1EYXRhIHRvIGJlICdwb3N0ZWQnXG4gICAqIEBwYXJhbSBiYXNlIFRoZSBCYXNlIFVSSSAoYmFja2VuZCBzZXJ2aWNlKSB0byBiZSB1c2VkXG4gICAqIEBwYXJhbSByZXF1ZXN0T3B0aW9ucyBBZGRpdGlvbmFsIHJlcXVlc3Qgb3B0aW9uc1xuICAgKiBAcmV0dXJucyBUaGUgcmV0dXJuIHZhbHVlIG9mIHRoZSB0YXJnZXQgUE9TVCBlbmRwb2ludFxuICAgKi9cbiAgcHVibGljIHBvc3RNdWx0aVBhcnQodXJpOiBzdHJpbmcsIGZvcm1EYXRhOiBGb3JtRGF0YSwgYmFzZT86IHN0cmluZywgcmVxdWVzdE9wdGlvbnM/OiBIdHRwT3B0aW9ucyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3QgYmFzZVVyaSA9IHRoaXMuZ2V0Q29udGV4dFBhdGgoYmFzZSk7XG4gICAgY29uc3QgaGVhZGVycyA9IHRoaXMuZ2V0SGVhZGVycygpO1xuICAgIGhlYWRlcnMuZGVsZXRlKCdDb250ZW50LVR5cGUnKTtcbiAgICBjb25zdCByZXFPcHRpb25zID0gT2JqZWN0LmFzc2lnbih7aGVhZGVyczogaGVhZGVycywgd2l0aENyZWRlbnRpYWxzOiB0aGlzLmNvcmVDb25maWcud2l0aENyZWRlbnRpYWxzfSwgcmVxdWVzdE9wdGlvbnMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHtiYXNlVXJpfSR7dXJpfWAsIGZvcm1EYXRhLCByZXFPcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXcmFwcGVkIEhUVFAgREVMRVRFIG1ldGhvZFxuICAgKiBAcGFyYW0gdXJpIFRoZSB0YXJnZXQgUkVTVCBVUklcbiAgICogQHBhcmFtIGJhc2UgVGhlIEJhc2UgVVJJIChiYWNrZW5kIHNlcnZpY2UpIHRvIGJlIHVzZWRcbiAgICogQHBhcmFtIHJlcXVlc3RPcHRpb25zIEFkZGl0aW9uYWwgcmVxdWVzdCBvcHRpb25zXG4gICAqIEByZXR1cm5zIFRoZSByZXR1cm4gdmFsdWUgb2YgdGhlIHRhcmdldCBERUxFVEUgZW5kcG9pbnRcbiAgICovXG4gIHB1YmxpYyBkZWwodXJpOiBzdHJpbmcsIGJhc2U/OiBzdHJpbmcsIHJlcXVlc3RPcHRpb25zPzogSHR0cE9wdGlvbnMpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKHRoaXMuZ2V0Q29udGV4dFBhdGgoYmFzZSkgKyB1cmksIHRoaXMuZ2V0SHR0cE9wdGlvbnMocmVxdWVzdE9wdGlvbnMpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqIFNvZnQgdXBkYXRlIGZvciBsaXN0cyAtIGVuYWJsZXMgZ3JpZCB0byBoYW5kbGUgYWxsIGNoYW5nZXNcbiAgICogdG8gYWRkIG5ldyAtIG9ubHkgaXRlbSBzaG91bGQgYmUgc3BlY2lmaWVkXG4gICAqIHRvIHJlbW92ZSAtIG9ubHkgaWQgc2hvdWxkIGJlIHNwZWNpZmllZFxuICAgKiB0byB1cGRhdGUgLSBib3RoIHBhcmFtcyBzaG91bGQgYmUgc3BlY2lmaWVkXG4gICAqXG4gICAqIEBwYXJhbSBhbnlbXSBsaXN0IE9yaWdpbmFsIGxpc3Qgb2YgaXRlbXNcbiAgICogQHBhcmFtIGlkPzogc3RyaW5nOyBpdGVtPzogYW55IGRhdGFbXVxuICAgKiBAcmV0dXJucyBhbnlbXVxuICAgKi9cbiAgcHVibGljIHVwZGF0ZShsaXN0OiBhbnlbXSwgZGF0YToge2lkPzogc3RyaW5nLCBpdGVtPzogYW55fVtdKSB7XG4gICAgZGF0YS5mb3JFYWNoKCh7aWQsIGl0ZW19KSA9PiB7XG4gICAgICBpZiAoaWQpIHtcbiAgICAgICAgY29uc3QgX2l0ZW0gPSBsaXN0LmZpbmQobCA9PiBsLmlkID09PSBpZCk7XG4gICAgICAgIE9iamVjdC5hc3NpZ24oX2l0ZW0sIGl0ZW0sIGl0ZW0gPyB7X191cGRhdGVkOiB0cnVlfSA6IHtfX3JlbW92ZWQ6IHRydWV9KTtcbiAgICAgIH0gZWxzZSBpZiAoaXRlbSkge1xuICAgICAgICBsaXN0LnVuc2hpZnQoT2JqZWN0LmFzc2lnbihpdGVtLCB7X19hZGRlZDogdHJ1ZX0pKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gbGlzdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqIENhY2hlIGZvciBzbWFsbCByZXF1ZXN0cyBsaWtlIGljb25zIGFuZCBjb25maWdzXG4gICAqXG4gICAqIEBwYXJhbSBzdHJpbmcgdXJpXG4gICAqIEByZXR1cm5zIE9ic2VydmFibGU8YW55PlxuICAgKi9cbiAgcHVibGljIGdldFZpYUNhY2hlKHVyaTogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBpZiAodGhpcy5jYWNoZS5oYXModXJpKSkge1xuICAgICAgcmV0dXJuIG9ic2VydmFibGVPZih0aGlzLmNhY2hlLmdldCh1cmkpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0VmlhVGVtcENhY2hlKHVyaSwgKCkgPT4gdGhpcy5odHRwLmdldCh1cmksIHt3aXRoQ3JlZGVudGlhbHM6IHRoaXMuY29yZUNvbmZpZy53aXRoQ3JlZGVudGlhbHMsIHJlc3BvbnNlVHlwZTogJ3RleHQnfSkucGlwZShcbiAgICAgICAgdGFwKHRleHQgPT4gdGhpcy5jYWNoZS5zZXQodXJpLCB0ZXh0KSkpKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKiBUZW1wb3JhcnkgQ2FjaGUgZm9yIG11bHRpcGxlIGlkZW50aWNhbCByZXF1ZXN0c1xuICAgKlxuICAgKiBAcGFyYW0gc3RyaW5nIGlkXG4gICAqIEBwYXJhbSBGdW5jdGlvbiByZXF1ZXN0XG4gICAqIEByZXR1cm5zIE9ic2VydmFibGU8YW55PlxuICAgKi9cbiAgcHVibGljIGdldFZpYVRlbXBDYWNoZShpZDogc3RyaW5nLCByZXF1ZXN0PzogRnVuY3Rpb24pOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGlmICh0aGlzLnRlbXAuaGFzKGlkKSkge1xuICAgICAgcmV0dXJuIHRoaXMudGVtcC5nZXQoaWQpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCByZXNwID0gKHJlcXVlc3QgPyByZXF1ZXN0KCkgOiB0aGlzLmdldChpZCkpLnBpcGUoXG4gICAgICAgIGZpbmFsaXplKCgpID0+IHRoaXMudGVtcC5kZWxldGUoaWQpKSxcbiAgICAgICAgc2hhcmVSZXBsYXkoMSlcbiAgICAgICk7XG4gICAgICB0aGlzLnRlbXAuc2V0KGlkLCByZXNwKTtcbiAgICAgIHJldHVybiByZXNwO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBEb3dubG9hZCB0aGUgY29udGVudCBvZiBkbXMgb2JqZWN0cy5cbiAgICpcbiAgICogQHBhcmFtIERtc09iamVjdFtdIGRtc09iamVjdHMgQXJyYXkgb2YgZG1zIG9iamVjdHMgdG8gYmUgZG93bmxvYWRlZFxuICAgKiBAcGFyYW0gXCJQREZcIiB8IFwiVElGRlwiIHwgXCJURVhUXCIgfCBcIkpQRUdcIiByZW5kaXRpb24gVGhlIHR5cGUgb2YgcmVuZGl0aW9uIHRvIGJlIGRvd25sb2FkZWQuIElmIG5vdCBzcGVjaWZpZWQsIHRoZSBvcmlnaW5hbCBjb250ZW50IHdpbGwgYmUgZG93bmxvYWRlZC5cbiAgICogUG9zc2libGUgcmVuZGl0aW9ucyBhcmUgYFBERmAsIGBUSUZGYCwgYFRFWFRgLCBgSlBFR2AuXG4gICAqL1xuICBwdWJsaWMgZG93bmxvYWRDb250ZW50KGRtc09iamVjdHM6IERtc09iamVjdFtdLCByZW5kaXRpb24/OiAnUERGJyB8ICdUSUZGJyB8ICdURVhUJyB8ICdKUEVHJywgZmlsZU5hbWVXaXRoVmVyc2lvbk51bWJlcj86IGJvb2xlYW4pIHtcblxuICAgIGRtc09iamVjdHMuZm9yRWFjaChkbXNPYmplY3QgPT4ge1xuICAgICAgaWYgKGRtc09iamVjdC5jb250ZW50KSB7XG5cbiAgICAgICAgbGV0IHVyaSA9IGAke3RoaXMuZ2V0U2VydmljZUJhc2UoKX0vZG1zLyR7ZG1zT2JqZWN0LmNvbnRlbnQuaWR9L2NvbnRlbnQ/dHlwZT0ke2Rtc09iamVjdC5jb250ZW50LnR5cGV9JmFzZG93bmxvYWQ9dHJ1ZWA7XG4gICAgICAgIGlmIChyZW5kaXRpb24pIHtcbiAgICAgICAgICB1cmkgKz0gYCZyZW5kaXRpb249JHtyZW5kaXRpb259Jl9pbnRlbnQ9RE9XTkxPQURfJHtyZW5kaXRpb259YDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB1cmkgKz0gJyZfaW50ZW50PURPV05MT0FEJztcbiAgICAgICAgfVxuICAgICAgICBpZiAoZG1zT2JqZWN0LmNvbnRlbnQuaWQgPT09IGRtc09iamVjdC5pZCkge1xuICAgICAgICAgIHVyaSArPSBgJnZlcnNpb249JHtkbXNPYmplY3QudmVyc2lvbn1gO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZG93bmxvYWQodXJpLCBmaWxlTmFtZVdpdGhWZXJzaW9uTnVtYmVyID8gZG1zT2JqZWN0LnZlcnNpb24gOiBudWxsKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmVycm9yKCdUaGUgcHJvdmlkZWQgZG1zIG9iamVjdCBoYXMgbm8gY29udGVudCcsIGRtc09iamVjdCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZG93bmxvYWQodXJpOiBzdHJpbmcsIHZlcnNpb24/OiBudW1iZXIpIHtcbiAgICB0aGlzLmh0dHAuZ2V0KHVyaSwge29ic2VydmU6ICdyZXNwb25zZScsIHJlc3BvbnNlVHlwZTogJ2Jsb2InLCB3aXRoQ3JlZGVudGlhbHM6IHRoaXMuY29yZUNvbmZpZy53aXRoQ3JlZGVudGlhbHN9KVxuICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XG4gICAgICAgIEZpbGVTYXZlci5zYXZlQXMoXG4gICAgICAgICAgcmVzLmJvZHksXG4gICAgICAgICAgdGhpcy5nZXRGaWxlTmFtZUZyb21IdHRwUmVzcG9uc2UocmVzLCB2ZXJzaW9uKVxuICAgICAgICApO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldEZpbGVOYW1lRnJvbUh0dHBSZXNwb25zZShyZXM6IEh0dHBSZXNwb25zZTxhbnk+LCB2ZXJzaW9uOiBudW1iZXIpIHtcbiAgICBjb25zdCBjb250ZW50RGlzcG9zaXRpb25IZWFkZXIgPSByZXMuaGVhZGVycy5nZXQoJ0NvbnRlbnQtRGlzcG9zaXRpb24nKSB8fCAnJztcbiAgICBjb25zdCBlbmNvZGVkRmlsZU5hbWVNYXRjaFJlc3VsdCA9IGNvbnRlbnREaXNwb3NpdGlvbkhlYWRlci5tYXRjaCgnZmlsZW5hbWVcXFxcKj1VVEYtOFxcJ1xcJyguKiknKVxuICAgICAgfHwgY29udGVudERpc3Bvc2l0aW9uSGVhZGVyLm1hdGNoKCdmaWxlbmFtZT1cXFwiKC4qKVxcXCInKTtcbiAgICBjb25zdCBlbmNvZGVkRmlsZU5hbWUgPSBlbmNvZGVkRmlsZU5hbWVNYXRjaFJlc3VsdCA/IGVuY29kZWRGaWxlTmFtZU1hdGNoUmVzdWx0WzFdIDogbnVsbDtcbiAgICBjb25zdCBmaWxlbmFtZSA9IGVuY29kZWRGaWxlTmFtZSA/IGRlY29kZVVSSUNvbXBvbmVudChlbmNvZGVkRmlsZU5hbWUpIDogJ3Vua25vd24nO1xuICAgIGNvbnN0IGluZGV4ID0gIX5maWxlbmFtZS5sYXN0SW5kZXhPZignLicpID8gZmlsZW5hbWUubGVuZ3RoIDogZmlsZW5hbWUubGFzdEluZGV4T2YoJy4nKTtcbiAgICByZXR1cm4gIXZlcnNpb24gPyBmaWxlbmFtZSA6IGAke2ZpbGVuYW1lLnNsaWNlKDAsIGluZGV4KX1fdiR7dmVyc2lvbn0ke2ZpbGVuYW1lLnNsaWNlKGluZGV4KX1gO1xuICB9XG5cblxuICAvKipcbiAgICogR2V0dGVyIGZvciB0aGUgSFRUUCBIZWFkZXJzXG4gICAqXG4gICAqIEByZXR1cm5zIEh0dHBIZWFkZXJzXG4gICAqL1xuICBwcml2YXRlIHNldERlZmF1bHRIZWFkZXJzKCk6IEh0dHBIZWFkZXJzIHtcbiAgICByZXR1cm4gbmV3IEh0dHBIZWFkZXJzKHtcbiAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAnWC1vcy1pbmNsdWRlLWxpbmtzJzogJ2ZhbHNlJyxcbiAgICAgICdYLW9zLWluY2x1ZGUtYWN0aW9ucyc6ICdmYWxzZScsXG4gICAgICAnWC1vcy1zeW5jLWluZGV4JzogJ3RydWUnXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
354
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja2VuZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZW8tc2RrL2NvcmUvc3JjL2xpYi9zZXJ2aWNlL2JhY2tlbmQvYmFja2VuZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxFQUFFLElBQUksWUFBWSxFQUF1QyxNQUFNLE1BQU0sQ0FBQztBQUM5RSxPQUFPLEVBQUMsR0FBRyxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3hDLE9BQU8sRUFBQyxNQUFNLEVBQUUsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBQyxVQUFVLEVBQUUsV0FBVyxFQUFlLE1BQU0sc0JBQXNCLENBQUM7QUFDM0UsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRWhELE9BQU8sS0FBSyxTQUFTLE1BQU0sWUFBWSxDQUFDO0FBQ3hDLE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUd4QyxPQUFPLEVBQUMsUUFBUSxFQUFFLFdBQVcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUF5QjFELGFBQWE7QUFDYjs7OztHQUlHO0FBRUgsTUFBTSxPQUFPLGNBQWM7SUFRekI7O09BRUc7SUFDSCxZQUFvQixJQUFnQixFQUNOLFVBQXNCLEVBQzFDLE1BQWMsRUFDZCxNQUFjO1FBSEosU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNOLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDMUMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFaakIsbUJBQWMsR0FBa0MsR0FBRyxDQUFDLENBQUMsSUFB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QUFFLE9BQU87WUFDN0Isc0JBQXNCLEVBQUUsT0FBTztZQUMvQixpQkFBaUIsRUFBRSxNQUFNO1NBQzFCLENBQUMsQ0FBQztJQUNMLENBQUM7OztZQS9XRixVQUFVOzs7WUF4Q0gsVUFBVTtZQVFWLFVBQVUsdUJBNkNiLE1BQU0sU0FBQyxXQUFXO1lBakRmLE1BQU07WUFITixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtvZiBhcyBvYnNlcnZhYmxlT2YsIE9ic2VydmFibGUsIE1vbm9UeXBlT3BlcmF0b3JGdW5jdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcCwgdGFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0luamVjdCwgSW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0h0dHBDbGllbnQsIEh0dHBIZWFkZXJzLCBIdHRwUmVzcG9uc2V9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7Q29uZmlnfSBmcm9tICcuLi9jb25maWcvY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHtEbXNPYmplY3R9IGZyb20gJy4uLy4uL21vZGVsL2Rtcy1vYmplY3QubW9kZWwnO1xuaW1wb3J0ICogYXMgRmlsZVNhdmVyIGZyb20gJ2ZpbGUtc2F2ZXInO1xuaW1wb3J0IHtMb2dnZXJ9IGZyb20gJy4uL2xvZ2dlci9sb2dnZXInO1xuaW1wb3J0IHtBdXRoUHJvZmlsZX0gZnJvbSAnLi4vYXV0aC9hdXRoLXByb2ZpbGUuaW50ZXJmYWNlJztcbmltcG9ydCB7SHR0cFBhcmFtc30gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtmaW5hbGl6ZSwgc2hhcmVSZXBsYXl9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7Q29yZUNvbmZpZ30gZnJvbSAnLi4vLi4vY29uZmlnL2NvcmUtY29uZmlnJztcbmltcG9ydCB7Q09SRV9DT05GSUd9IGZyb20gJy4uLy4uL2NvbmZpZy9jb3JlLWluaXQudG9rZW5zJztcblxuLyoqXG4gKiBIdHRwT3B0aW9ucyBmb3IgaHR0cCByZXF1ZXN0XG4gKiBAcGFyYW0gb2JzZXJ2ZTogJ2JvZHknIHwgJ2V2ZW50cycgfCAncmVzcG9uc2UnXG4gKiBAcGFyYW0gcmVzcG9uc2VUeXBlOiAnYXJyYXlidWZmZXInIHwgJ2Jsb2InIHwgJ2pzb24nIHwgJ3RleHQnXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSHR0cE9wdGlvbnMge1xuICBoZWFkZXJzPzpcbiAgfCBIdHRwSGVhZGVyc1xuICB8IHtcbiAgICBbaGVhZGVyOiBzdHJpbmddOiBzdHJpbmcgfCBzdHJpbmdbXTtcbiAgfTtcbiAgb2JzZXJ2ZT86IGFueTtcbiAgcGFyYW1zPzpcbiAgfCBIdHRwUGFyYW1zXG4gIHwge1xuICAgIFtwYXJhbTogc3RyaW5nXTogc3RyaW5nIHwgc3RyaW5nW107XG4gIH07XG4gIHJlcG9ydFByb2dyZXNzPzogYm9vbGVhbjtcbiAgcmVzcG9uc2VUeXBlPzogYW55O1xuICB3aXRoQ3JlZGVudGlhbHM/OiBib29sZWFuO1xufVxuXG5cbi8vIEB0cy1pZ25vcmVcbi8qKlxuICogYEJhY2tlbmRTZXJ2aWNlYCBlbmNhcHN1bGF0ZXMgdGhlIGNvbW11bmljYXRpb24gd2l0aCB0aGUgeXV1dmlzPHN1cD4mcmVnOzwvc3VwPiBSQUQgUkVTVCBlbmRwb2ludHMuXG4gKlxuICogQXMgeXV1dmlzPHN1cD4mcmVnOzwvc3VwPiBSQUQgcHJvdmlkZXMgZGlmZmVyZW50IHNlcnZpY2VzLCB0aGlzIHNlcnZpY2UgaXMgYWxzbyBjYXBhYmxlIG9mIHByb3ZpZGluZyB0aGUgYmFzZSBVUklzIGZvciB0aG9zZSBzZXJ2aWNlcy5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEJhY2tlbmRTZXJ2aWNlIHtcblxuICBwdWJsaWMgZ3JpZERhdGFGaWx0ZXI6IE1vbm9UeXBlT3BlcmF0b3JGdW5jdGlvbjxhbnk+ID0gbWFwKChkYXRhOiBhbnlbXSkgPT4gZGF0YT8uZmlsdGVyKCh2OiBhbnkpID0+ICF2Ll9fcmVtb3ZlZCkpO1xuICBwcml2YXRlIGF1dGhQcm9maWxlOiBBdXRoUHJvZmlsZTtcbiAgcHJpdmF0ZSBjYWNoZSA9IG5ldyBNYXA8c3RyaW5nLCBhbnk+KCk7XG4gIHByaXZhdGUgdGVtcCA9IG5ldyBNYXA8c3RyaW5nLCBPYnNlcnZhYmxlPGFueT4+KCk7XG4gIHByaXZhdGUgaGVhZGVycyA9IHRoaXMuc2V0RGVmYXVsdEhlYWRlcnMoKTtcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIEBJbmplY3QoQ09SRV9DT05GSUcpIHB1YmxpYyBjb3JlQ29uZmlnOiBDb3JlQ29uZmlnLFxuICAgIHByaXZhdGUgbG9nZ2VyOiBMb2dnZXIsXG4gICAgcHJpdmF0ZSBjb25maWc6IENvbmZpZykge1xuXG4gICAgLyoqXG4gICAgICogZGVmYXVsdCBwcm9maWxlIGlzIHN1cHBvc2VkIHRvIHVzZSBOVExNXG4gICAgICogQHR5cGUge2hvc3Q6IHN0cmluZzsgbnRsbTogYm9vbGVhbn1cbiAgICAgKi9cbiAgICB0aGlzLmF1dGhQcm9maWxlID0ge1xuICAgICAgaG9zdDogJycsXG4gICAgICBudGxtOiB0cnVlXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBwdWJsaWMgc2V0QXV0aFByb2ZpbGUocHJvZmlsZT86IEF1dGhQcm9maWxlKSB7XG4gICAgaWYgKHByb2ZpbGUpIHtcbiAgICAgIHRoaXMuaGVhZGVycyA9IHRoaXMuc2V0RGVmYXVsdEhlYWRlcnMoKTtcbiAgICAgIHRoaXMuYXV0aFByb2ZpbGUgPSBwcm9maWxlO1xuICAgICAgaWYgKHRoaXMuYXV0aFByb2ZpbGUuYXV0aCkge1xuICAgICAgICAvLyB0aGlzLnNldEhlYWRlcignQXV0aG9yaXphdGlvbicsIHRoaXMuYXV0aFByb2ZpbGUuYXV0aCk7XG4gICAgICB9XG4gICAgICB0aGlzLmhlYWRlcnMuZGVsZXRlKCdBdXRob3JpemF0aW9uJyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIG5ldyBoZWFkZXIuXG4gICAqIEBwYXJhbSBrZXkgVGhlIGhlYWRlcnMgbmFtZVxuICAgKiBAcGFyYW0gdmFsdWUgVGhlIHZhbHVlXG4gICAqL1xuICBwdWJsaWMgc2V0SGVhZGVyKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKSB7XG4gICAgaWYgKHZhbHVlICYmIHZhbHVlLmxlbmd0aCkge1xuICAgICAgdGhpcy5oZWFkZXJzID0gdGhpcy5oZWFkZXJzLnNldChrZXksIHZhbHVlKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmVzIHRoZSBjdXJyZW50IGhlYWRlcnNcbiAgICogQHJldHVybnMgVGhlIGBIdHRwSGVhZGVyc2AgdGhhdCBhcmUgY3VycmVudGx5IHNldCB1cFxuICAgKi9cbiAgcHVibGljIGdldEhlYWRlcnMoKTogSHR0cEhlYWRlcnMge1xuICAgIHJldHVybiB0aGlzLmhlYWRlcnM7XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgcHVibGljIGdldEh0dHBPcHRpb25zKHJlcXVlc3RPcHRpb25zPzogSHR0cE9wdGlvbnMpOiBIdHRwT3B0aW9ucyB7XG4gICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe2hlYWRlcnM6IHRoaXMuZ2V0SGVhZGVycygpLCB3aXRoQ3JlZGVudGlhbHM6IHRoaXMuY29yZUNvbmZpZy53aXRoQ3JlZGVudGlhbHN9LCByZXF1ZXN0T3B0aW9ucyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgYmFzZSBVUkkgZm9yIHRoZSBETVMtU2VydmljZSBlbmRwb2ludFxuICAgKiBAcmV0dXJucyBCYXNlIFVSSVxuICAgKi9cbiAgcHVibGljIGdldFNlcnZpY2VCYXNlKCkge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZy5nZXRVcmkoJ3NlcnZpY2VCYXNlJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgYmFzZSBVUkkgZm9yIHRoZSBTZWFyY2gtU2VydmljZSBlbmRwb2ludFxuICAgKiBAcmV0dXJucyBCYXNlIFVSSVxuICAgKi9cbiAgcHVibGljIGdldFNlYXJjaEJhc2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnLmdldFVyaSgnc2VhcmNoQmFzZScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGJhc2UgVVJJIGZvciB0aGUgQ29udGV4dC1TZXJ2aWNlIGVuZHBvaW50XG4gICAqIEByZXR1cm5zIEJhc2UgVVJJXG4gICAqL1xuICBwdWJsaWMgZ2V0Q29udGV4dEJhc2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnLmdldFVyaSgnY29udGV4dEJhc2UnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBiYXNlIFVSSSBmb3IgdGhlIEluYm94LVNlcnZpY2UgZW5kcG9pbnRcbiAgICogQHJldHVybnMgQmFzZSBVUklcbiAgICovXG4gIHB1YmxpYyBnZXRJbmJveEJhc2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnLmdldFVyaSgnaW5ib3hCYXNlJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgYmFzZSBVUkkgZm9yIHRoZSBCUE0tU2VydmljZSBlbmRwb2ludFxuICAgKiBAcmV0dXJucyBCYXNlIFVSSVxuICAgKi9cbiAgcHVibGljIGdldEJwbUJhc2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnLmdldFVyaSgnYnBtQmFzZScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGJhc2UgVVJJIGZvciB0aGUgQWdlbnQtU2VydmljZSBlbmRwb2ludFxuICAgKiBAcmV0dXJucyBCYXNlIFVSSVxuICAgKi9cbiAgcHVibGljIGdldEFnZW50QmFzZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jb25maWcuZ2V0VXJpKCdhZ2VudEJhc2UnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBiYXNlIFVSSSBmb3IgdGhlIFN0YXR1cy1TZXJ2aWNlIGVuZHBvaW50XG4gICAqIEByZXR1cm5zIEJhc2UgVVJJXG4gICAqL1xuICBwdWJsaWMgZ2V0U3RhdHVzQmFzZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jb25maWcuZ2V0VXJpKCdzdGF0dXNCYXNlJyk7XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgcHVibGljIGdldEljb25CYXNlKGlkOiBzdHJpbmcgPSAnJykge1xuICAgIHJldHVybiB0aGlzLmdldFNlcnZpY2VCYXNlKCkgKyAnL3VpL2ljb24vJyArIGlkO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIHB1YmxpYyBnZXRIb3N0KCkge1xuICAgIHJldHVybiB0aGlzLmF1dGhQcm9maWxlLmhvc3QgfHwgJyc7XG4gIH1cblxuICBwcml2YXRlIGdldEJhc2VXaXRoQ29udGV4dChiYXNlOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gYmFzZT8uc3RhcnRzV2l0aCgnLycpID8gdGhpcy5jb25maWcuZ2V0Q29udGV4dFBhdGgoKSArIGJhc2UgOiBiYXNlO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDb250ZXh0UGF0aChiYXNlPzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5nZXRIb3N0KCkgKyAodGhpcy5nZXRCYXNlV2l0aENvbnRleHQoYmFzZSB8fCB0aGlzLmdldFNlcnZpY2VCYXNlKCkpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXcmFwcGVkIEhUVFAgR0VUIG1ldGhvZFxuICAgKiBAcGFyYW0gdXJpIFRoZSBSRVNUIFVSSSB0byBiZSBxdWVyaWVkXG4gICAqIEBwYXJhbSBiYXNlIFRoZSBCYXNlIFVSSSAoYmFja2VuZCBzZXJ2aWNlKSB0byBiZSB1c2VkXG4gICAqIEBwYXJhbSByZXF1ZXN0T3B0aW9ucyBBZGRpdGlvbmFsIHJlcXVlc3Qgb3B0aW9uc1xuICAgKiBAcmV0dXJucyBUaGUgZGF0YSByZXRyaWV2ZWQgZnJvbSB0aGUgZ2l2ZW4gZW5kcG9pbnRcbiAgICovXG4gIHB1YmxpYyBnZXQodXJpOiBzdHJpbmcsIGJhc2U/OiBzdHJpbmcsIHJlcXVlc3RPcHRpb25zPzogSHR0cE9wdGlvbnMpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuZ2V0Q29udGV4dFBhdGgoYmFzZSkgKyB1cmksIHRoaXMuZ2V0SHR0cE9wdGlvbnMocmVxdWVzdE9wdGlvbnMpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXcmFwcGVkIEhUVFAgUFVUIG1ldGhvZFxuICAgKiBAcGFyYW0gdXJpIFRoZSB0YXJnZXQgUkVTVCBVUklcbiAgICogQHBhcmFtIGRhdGEgRGF0YSB0byBiZSAncG9zdGVkJ1xuICAgKiBAcGFyYW0gYmFzZSBUaGUgQmFzZSBVUkkgKGJhY2tlbmQgc2VydmljZSkgdG8gYmUgdXNlZFxuICAgKiBAcGFyYW0gcmVxdWVzdE9wdGlvbnMgQWRkaXRpb25hbCByZXF1ZXN0IG9wdGlvbnNcbiAgICogQHJldHVybnMgVGhlIHJldHVybiB2YWx1ZSBvZiB0aGUgdGFyZ2V0IFBVVCBlbmRwb2ludFxuICAgKi9cbiAgcHVibGljIHB1dCh1cmk6IHN0cmluZywgZGF0YT86IGFueSwgYmFzZT86IHN0cmluZywgcmVxdWVzdE9wdGlvbnM/OiBIdHRwT3B0aW9ucyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQodGhpcy5nZXRDb250ZXh0UGF0aChiYXNlKSArIHVyaSwgZGF0YSwgdGhpcy5nZXRIdHRwT3B0aW9ucyhyZXF1ZXN0T3B0aW9ucykpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIHB1YmxpYyBnZXRKc29uKHVyaTogc3RyaW5nLCBiYXNlPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldCh0aGlzLmdldENvbnRleHRQYXRoKGJhc2UpICsgdXJpLCB0aGlzLmdldEh0dHBPcHRpb25zKHtyZXNwb25zZVR5cGU6ICdqc29uJ30pKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXcmFwcGVkIEhUVFAgUE9TVCBtZXRob2RcbiAgICogQHBhcmFtIHVyaSBUaGUgdGFyZ2V0IFJFU1QgVVJJXG4gICAqIEBwYXJhbSBkYXRhIERhdGEgdG8gYmUgJ3Bvc3RlZCdcbiAgICogQHBhcmFtIGJhc2UgVGhlIEJhc2UgVVJJIChiYWNrZW5kIHNlcnZpY2UpIHRvIGJlIHVzZWRcbiAgICogQHBhcmFtIHJlcXVlc3RPcHRpb25zIEFkZGl0aW9uYWwgcmVxdWVzdCBvcHRpb25zXG4gICAqIEByZXR1cm5zIFRoZSByZXR1cm4gdmFsdWUgb2YgdGhlIHRhcmdldCBQT1NUIGVuZHBvaW50XG4gICAqL1xuICBwdWJsaWMgcG9zdCh1cmk6IHN0cmluZywgZGF0YT8sIGJhc2U/OiBzdHJpbmcsIHJlcXVlc3RPcHRpb25zPzogSHR0cE9wdGlvbnMpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IGJhc2VVcmkgPSB0aGlzLmdldENvbnRleHRQYXRoKGJhc2UpO1xuICAgIGNvbnN0IHBheWxvYWQgPSBkYXRhID8gSlNPTi5zdHJpbmdpZnkoZGF0YSkgOiAnJztcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7YmFzZVVyaX0ke3VyaX1gLCBwYXlsb2FkLCB0aGlzLmdldEh0dHBPcHRpb25zKHJlcXVlc3RPcHRpb25zKSk7XG4gIH1cblxuICAvKipcbiAgICogUGVyZm9ybXMgYSBtdWx0aXBhcnQgZm9ybSBkYXRhIFBPU1QgcmVxdWVzdC5cbiAgICogQHBhcmFtIHVyaSBUaGUgdGFyZ2V0IFJFU1QgVVJJXG4gICAqIEBwYXJhbSBmb3JtRGF0YSBGb3JtRGF0YSB0byBiZSAncG9zdGVkJ1xuICAgKiBAcGFyYW0gYmFzZSBUaGUgQmFzZSBVUkkgKGJhY2tlbmQgc2VydmljZSkgdG8gYmUgdXNlZFxuICAgKiBAcGFyYW0gcmVxdWVzdE9wdGlvbnMgQWRkaXRpb25hbCByZXF1ZXN0IG9wdGlvbnNcbiAgICogQHJldHVybnMgVGhlIHJldHVybiB2YWx1ZSBvZiB0aGUgdGFyZ2V0IFBPU1QgZW5kcG9pbnRcbiAgICovXG4gIHB1YmxpYyBwb3N0TXVsdGlQYXJ0KHVyaTogc3RyaW5nLCBmb3JtRGF0YTogRm9ybURhdGEsIGJhc2U/OiBzdHJpbmcsIHJlcXVlc3RPcHRpb25zPzogSHR0cE9wdGlvbnMpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IGJhc2VVcmkgPSB0aGlzLmdldENvbnRleHRQYXRoKGJhc2UpO1xuICAgIGNvbnN0IGhlYWRlcnMgPSB0aGlzLmdldEhlYWRlcnMoKTtcbiAgICBoZWFkZXJzLmRlbGV0ZSgnQ29udGVudC1UeXBlJyk7XG4gICAgY29uc3QgcmVxT3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oe2hlYWRlcnM6IGhlYWRlcnMsIHdpdGhDcmVkZW50aWFsczogdGhpcy5jb3JlQ29uZmlnLndpdGhDcmVkZW50aWFsc30sIHJlcXVlc3RPcHRpb25zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7YmFzZVVyaX0ke3VyaX1gLCBmb3JtRGF0YSwgcmVxT3B0aW9ucyk7XG4gIH1cblxuICAvKipcbiAgICogV3JhcHBlZCBIVFRQIERFTEVURSBtZXRob2RcbiAgICogQHBhcmFtIHVyaSBUaGUgdGFyZ2V0IFJFU1QgVVJJXG4gICAqIEBwYXJhbSBiYXNlIFRoZSBCYXNlIFVSSSAoYmFja2VuZCBzZXJ2aWNlKSB0byBiZSB1c2VkXG4gICAqIEBwYXJhbSByZXF1ZXN0T3B0aW9ucyBBZGRpdGlvbmFsIHJlcXVlc3Qgb3B0aW9uc1xuICAgKiBAcmV0dXJucyBUaGUgcmV0dXJuIHZhbHVlIG9mIHRoZSB0YXJnZXQgREVMRVRFIGVuZHBvaW50XG4gICAqL1xuICBwdWJsaWMgZGVsKHVyaTogc3RyaW5nLCBiYXNlPzogc3RyaW5nLCByZXF1ZXN0T3B0aW9ucz86IEh0dHBPcHRpb25zKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZSh0aGlzLmdldENvbnRleHRQYXRoKGJhc2UpICsgdXJpLCB0aGlzLmdldEh0dHBPcHRpb25zKHJlcXVlc3RPcHRpb25zKSk7XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKiBTb2Z0IHVwZGF0ZSBmb3IgbGlzdHMgLSBlbmFibGVzIGdyaWQgdG8gaGFuZGxlIGFsbCBjaGFuZ2VzXG4gICAqIHRvIGFkZCBuZXcgLSBvbmx5IGl0ZW0gc2hvdWxkIGJlIHNwZWNpZmllZFxuICAgKiB0byByZW1vdmUgLSBvbmx5IGlkIHNob3VsZCBiZSBzcGVjaWZpZWRcbiAgICogdG8gdXBkYXRlIC0gYm90aCBwYXJhbXMgc2hvdWxkIGJlIHNwZWNpZmllZFxuICAgKlxuICAgKiBAcGFyYW0gYW55W10gbGlzdCBPcmlnaW5hbCBsaXN0IG9mIGl0ZW1zXG4gICAqIEBwYXJhbSBpZD86IHN0cmluZzsgaXRlbT86IGFueSBkYXRhW11cbiAgICogQHJldHVybnMgYW55W11cbiAgICovXG4gIHB1YmxpYyB1cGRhdGUobGlzdDogYW55W10sIGRhdGE6IHtpZD86IHN0cmluZywgaXRlbT86IGFueX1bXSkge1xuICAgIGRhdGEuZm9yRWFjaCgoe2lkLCBpdGVtfSkgPT4ge1xuICAgICAgaWYgKGlkKSB7XG4gICAgICAgIGNvbnN0IF9pdGVtID0gbGlzdC5maW5kKGwgPT4gbC5pZCA9PT0gaWQpO1xuICAgICAgICBPYmplY3QuYXNzaWduKF9pdGVtLCBpdGVtLCBpdGVtID8ge19fdXBkYXRlZDogdHJ1ZX0gOiB7X19yZW1vdmVkOiB0cnVlfSk7XG4gICAgICB9IGVsc2UgaWYgKGl0ZW0pIHtcbiAgICAgICAgbGlzdC51bnNoaWZ0KE9iamVjdC5hc3NpZ24oaXRlbSwge19fYWRkZWQ6IHRydWV9KSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIGxpc3Q7XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKiBDYWNoZSBmb3Igc21hbGwgcmVxdWVzdHMgbGlrZSBpY29ucyBhbmQgY29uZmlnc1xuICAgKlxuICAgKiBAcGFyYW0gc3RyaW5nIHVyaVxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlPGFueT5cbiAgICovXG4gIHB1YmxpYyBnZXRWaWFDYWNoZSh1cmk6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgaWYgKHRoaXMuY2FjaGUuaGFzKHVyaSkpIHtcbiAgICAgIHJldHVybiBvYnNlcnZhYmxlT2YodGhpcy5jYWNoZS5nZXQodXJpKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLmdldFZpYVRlbXBDYWNoZSh1cmksICgpID0+IHRoaXMuaHR0cC5nZXQodXJpLCB7d2l0aENyZWRlbnRpYWxzOiB0aGlzLmNvcmVDb25maWcud2l0aENyZWRlbnRpYWxzLCByZXNwb25zZVR5cGU6ICd0ZXh0J30pLnBpcGUoXG4gICAgICAgIHRhcCh0ZXh0ID0+IHRoaXMuY2FjaGUuc2V0KHVyaSwgdGV4dCkpKSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICogVGVtcG9yYXJ5IENhY2hlIGZvciBtdWx0aXBsZSBpZGVudGljYWwgcmVxdWVzdHNcbiAgICpcbiAgICogQHBhcmFtIHN0cmluZyBpZFxuICAgKiBAcGFyYW0gRnVuY3Rpb24gcmVxdWVzdFxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlPGFueT5cbiAgICovXG4gIHB1YmxpYyBnZXRWaWFUZW1wQ2FjaGUoaWQ6IHN0cmluZywgcmVxdWVzdD86IEZ1bmN0aW9uKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBpZiAodGhpcy50ZW1wLmhhcyhpZCkpIHtcbiAgICAgIHJldHVybiB0aGlzLnRlbXAuZ2V0KGlkKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgcmVzcCA9IChyZXF1ZXN0ID8gcmVxdWVzdCgpIDogdGhpcy5nZXQoaWQpKS5waXBlKFxuICAgICAgICBmaW5hbGl6ZSgoKSA9PiB0aGlzLnRlbXAuZGVsZXRlKGlkKSksXG4gICAgICAgIHNoYXJlUmVwbGF5KDEpXG4gICAgICApO1xuICAgICAgdGhpcy50ZW1wLnNldChpZCwgcmVzcCk7XG4gICAgICByZXR1cm4gcmVzcDtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRG93bmxvYWQgdGhlIGNvbnRlbnQgb2YgZG1zIG9iamVjdHMuXG4gICAqXG4gICAqIEBwYXJhbSBEbXNPYmplY3RbXSBkbXNPYmplY3RzIEFycmF5IG9mIGRtcyBvYmplY3RzIHRvIGJlIGRvd25sb2FkZWRcbiAgICogQHBhcmFtIFwiUERGXCIgfCBcIlRJRkZcIiB8IFwiVEVYVFwiIHwgXCJKUEVHXCIgcmVuZGl0aW9uIFRoZSB0eXBlIG9mIHJlbmRpdGlvbiB0byBiZSBkb3dubG9hZGVkLiBJZiBub3Qgc3BlY2lmaWVkLCB0aGUgb3JpZ2luYWwgY29udGVudCB3aWxsIGJlIGRvd25sb2FkZWQuXG4gICAqIFBvc3NpYmxlIHJlbmRpdGlvbnMgYXJlIGBQREZgLCBgVElGRmAsIGBURVhUYCwgYEpQRUdgLlxuICAgKi9cbiAgcHVibGljIGRvd25sb2FkQ29udGVudChkbXNPYmplY3RzOiBEbXNPYmplY3RbXSwgcmVuZGl0aW9uPzogJ1BERicgfCAnVElGRicgfCAnVEVYVCcgfCAnSlBFRycsIGZpbGVOYW1lV2l0aFZlcnNpb25OdW1iZXI/OiBib29sZWFuKSB7XG5cbiAgICBjb25zdCBpdGVtID0gZG1zT2JqZWN0c1swXTtcbiAgICBpZiAoZG1zT2JqZWN0cy5sZW5ndGggPT09IDEpIHtcbiAgICAgIGlmIChpdGVtLmNvbnRlbnQpIHtcblxuICAgICAgICBsZXQgdXJpID0gYCR7dGhpcy5nZXRTZXJ2aWNlQmFzZSgpfS9kbXMvJHtpdGVtLmNvbnRlbnQuaWR9L2NvbnRlbnQ/dHlwZT0ke2l0ZW0uY29udGVudC50eXBlfSZhc2Rvd25sb2FkPXRydWVgO1xuICAgICAgICBpZiAocmVuZGl0aW9uKSB7XG4gICAgICAgICAgdXJpICs9IGAmcmVuZGl0aW9uPSR7cmVuZGl0aW9ufSZfaW50ZW50PURPV05MT0FEXyR7cmVuZGl0aW9ufWA7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdXJpICs9ICcmX2ludGVudD1ET1dOTE9BRCc7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGl0ZW0uY29udGVudC5pZCA9PT0gaXRlbS5pZCkge1xuICAgICAgICAgIHVyaSArPSBgJnZlcnNpb249JHtpdGVtLnZlcnNpb259YDtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmRvd25sb2FkKHVyaSwgZmlsZU5hbWVXaXRoVmVyc2lvbk51bWJlciA/IGl0ZW0udmVyc2lvbiA6IG51bGwpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoJ1RoZSBwcm92aWRlZCBkbXMgb2JqZWN0IGhhcyBubyBjb250ZW50JywgaXRlbSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGRtc09iamVjdHMubGVuZ3RoID4gMSkge1xuICAgICAgbGV0IHVyaSA9IGAke3RoaXMuZ2V0U2VydmljZUJhc2UoKX0vZG1zL2JhdGNoL2V4cG9ydGA7XG4gICAgICBpZiAoaXRlbS5jb250ZW50KSB7XG4gICAgICAgIGNvbnN0IGV4cHJlc3Npb25zID0gZG1zT2JqZWN0cy5tYXAob2JqID0+IG9iai5jb250ZW50LmlkKTtcbiAgICAgICAgY29uc3QgZGF0YSA9IHtcbiAgICAgICAgICBxdWVyeToge1xuICAgICAgICAgICAgZXhwcmVzc2lvbjogWy4uLmV4cHJlc3Npb25zXVxuICAgICAgICAgIH0sXG4gICAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgICAgcmVuZGl0aW9uOiAnJ1xuICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgICAgZGF0YS5vcHRpb25zLnJlbmRpdGlvbiA9IHJlbmRpdGlvbiA/ICdQREYnIDogbnVsbDtcbiAgICAgICAgdGhpcy5kb3dubG9hZE11bHRpKHVyaSwgZmlsZU5hbWVXaXRoVmVyc2lvbk51bWJlciA/IGl0ZW0udmVyc2lvbiA6IG51bGwsIGRhdGEpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoJ1RoZSBwcm92aWRlZCBkbXMgb2JqZWN0IGhhcyBubyBjb250ZW50JywgaXRlbSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGRvd25sb2FkKHVyaTogc3RyaW5nLCB2ZXJzaW9uPzogbnVtYmVyKSB7XG4gICAgdGhpcy5odHRwLmdldCh1cmksIHtvYnNlcnZlOiAncmVzcG9uc2UnLCByZXNwb25zZVR5cGU6ICdibG9iJywgd2l0aENyZWRlbnRpYWxzOiB0aGlzLmNvcmVDb25maWcud2l0aENyZWRlbnRpYWxzfSlcbiAgICAgIC5zdWJzY3JpYmUoKHJlcykgPT4ge1xuICAgICAgICBGaWxlU2F2ZXIuc2F2ZUFzKFxuICAgICAgICAgIHJlcy5ib2R5LFxuICAgICAgICAgIHRoaXMuZ2V0RmlsZU5hbWVGcm9tSHR0cFJlc3BvbnNlKHJlcywgdmVyc2lvbilcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuICB9XG4gIFxuICBwdWJsaWMgZG93bmxvYWRNdWx0aSh1cmk6IHN0cmluZywgdmVyc2lvbj86IG51bWJlciwgX2JvZHk/OiBhbnkpIHtcbiAgICB0aGlzLmh0dHAucG9zdCh1cmksIF9ib2R5LCB7b2JzZXJ2ZTogJ3Jlc3BvbnNlJywgcmVzcG9uc2VUeXBlOiAnYmxvYicsIHdpdGhDcmVkZW50aWFsczogdGhpcy5jb3JlQ29uZmlnLndpdGhDcmVkZW50aWFsc30pXG4gICAgICAuc3Vic2NyaWJlKChyZXMpID0+IHtcbiAgICAgICAgRmlsZVNhdmVyLnNhdmVBcyhcbiAgICAgICAgICByZXMuYm9keSxcbiAgICAgICAgICB0aGlzLmdldEZpbGVOYW1lRnJvbUh0dHBSZXNwb25zZShyZXMsIHZlcnNpb24pXG4gICAgICAgICk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RmlsZU5hbWVGcm9tSHR0cFJlc3BvbnNlKHJlczogSHR0cFJlc3BvbnNlPGFueT4sIHZlcnNpb246IG51bWJlcikge1xuICAgIGNvbnN0IGNvbnRlbnREaXNwb3NpdGlvbkhlYWRlciA9IHJlcy5oZWFkZXJzLmdldCgnQ29udGVudC1EaXNwb3NpdGlvbicpIHx8ICcnO1xuICAgIGNvbnN0IGVuY29kZWRGaWxlTmFtZU1hdGNoUmVzdWx0ID0gY29udGVudERpc3Bvc2l0aW9uSGVhZGVyLm1hdGNoKCdmaWxlbmFtZVxcXFwqPVVURi04XFwnXFwnKC4qKScpXG4gICAgICB8fCBjb250ZW50RGlzcG9zaXRpb25IZWFkZXIubWF0Y2goJ2ZpbGVuYW1lPVxcXCIoLiopXFxcIicpO1xuICAgIGNvbnN0IGVuY29kZWRGaWxlTmFtZSA9IGVuY29kZWRGaWxlTmFtZU1hdGNoUmVzdWx0ID8gZW5jb2RlZEZpbGVOYW1lTWF0Y2hSZXN1bHRbMV0gOiBudWxsO1xuICAgIGNvbnN0IGZpbGVuYW1lID0gZW5jb2RlZEZpbGVOYW1lID8gZGVjb2RlVVJJQ29tcG9uZW50KGVuY29kZWRGaWxlTmFtZSkgOiAndW5rbm93bic7XG4gICAgY29uc3QgaW5kZXggPSAhfmZpbGVuYW1lLmxhc3RJbmRleE9mKCcuJykgPyBmaWxlbmFtZS5sZW5ndGggOiBmaWxlbmFtZS5sYXN0SW5kZXhPZignLicpO1xuICAgIHJldHVybiAhdmVyc2lvbiA/IGZpbGVuYW1lIDogYCR7ZmlsZW5hbWUuc2xpY2UoMCwgaW5kZXgpfV92JHt2ZXJzaW9ufSR7ZmlsZW5hbWUuc2xpY2UoaW5kZXgpfWA7XG4gIH1cblxuXG4gIC8qKlxuICAgKiBHZXR0ZXIgZm9yIHRoZSBIVFRQIEhlYWRlcnNcbiAgICpcbiAgICogQHJldHVybnMgSHR0cEhlYWRlcnNcbiAgICovXG4gIHByaXZhdGUgc2V0RGVmYXVsdEhlYWRlcnMoKTogSHR0cEhlYWRlcnMge1xuICAgIHJldHVybiBuZXcgSHR0cEhlYWRlcnMoe1xuICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICdYLW9zLWluY2x1ZGUtbGlua3MnOiAnZmFsc2UnLFxuICAgICAgJ1gtb3MtaW5jbHVkZS1hY3Rpb25zJzogJ2ZhbHNlJyxcbiAgICAgICdYLW9zLXN5bmMtaW5kZXgnOiAndHJ1ZSdcbiAgICB9KTtcbiAgfVxufVxuIl19