@netgrif/components-core 6.4.0-beta.4 → 6.4.0-beta.6

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 (100) hide show
  1. package/esm2020/assets/i18n/de.json +9 -0
  2. package/esm2020/assets/i18n/en.json +9 -0
  3. package/esm2020/assets/i18n/sk.json +9 -0
  4. package/esm2020/lib/actions/front-action.module.mjs +28 -0
  5. package/esm2020/lib/actions/model/front-action-definition.mjs +2 -0
  6. package/esm2020/lib/actions/model/router-action-definitions.mjs +8 -0
  7. package/esm2020/lib/actions/model/task-action-definitions.mjs +16 -0
  8. package/esm2020/lib/actions/public-api.mjs +6 -0
  9. package/esm2020/lib/actions/services/front-action.service.mjs +27 -0
  10. package/esm2020/lib/data-fields/case-ref-field/case-ref-default/case-ref-default.component.mjs +6 -2
  11. package/esm2020/lib/data-fields/case-ref-field/model/case-ref-injection-tokens.mjs +2 -1
  12. package/esm2020/lib/data-fields/data-fields.module.mjs +1 -1
  13. package/esm2020/lib/data-fields/enumeration-field/enumeration-caseref-field/abstract-enumeration-caseref-field.component.mjs +67 -0
  14. package/esm2020/lib/data-fields/enumeration-field/models/enumeration-field.mjs +9 -1
  15. package/esm2020/lib/data-fields/models/changed-fields.mjs +1 -1
  16. package/esm2020/lib/data-fields/multichoice-field/models/multichoice-field.mjs +9 -1
  17. package/esm2020/lib/data-fields/multichoice-field/multichoice-caseref-field/abstract-multichoice-caseref-field.component.mjs +67 -0
  18. package/esm2020/lib/data-fields/public-api.mjs +3 -1
  19. package/esm2020/lib/event/model/event-constants.mjs +5 -1
  20. package/esm2020/lib/event/services/event.service.mjs +23 -1
  21. package/esm2020/lib/filter/user-filters.service.mjs +1 -1
  22. package/esm2020/lib/header/abstract-header.component.mjs +8 -2
  23. package/esm2020/lib/header/header-modes/abstract-header-mode.component.mjs +10 -2
  24. package/esm2020/lib/navigation/model/group-navigation-constants.mjs +5 -1
  25. package/esm2020/lib/navigation/navigation-double-drawer/abstract-navigation-double-drawer.mjs +96 -37
  26. package/esm2020/lib/navigation/service/uri.service.mjs +22 -1
  27. package/esm2020/lib/navigation/utility/filter-extraction.service.mjs +2 -2
  28. package/esm2020/lib/panel/case-panel/abstract-case-panel.component.mjs +9 -2
  29. package/esm2020/lib/panel/task-panel/abstract-task-panel.component.mjs +5 -2
  30. package/esm2020/lib/panel/task-panel-list/task-panel-list-pagination/abstract-task-list-pagination.component.mjs +5 -3
  31. package/esm2020/lib/panel/task-panel-single/abstract-single-task.component.mjs +11 -5
  32. package/esm2020/lib/public/factories/public-search-factory.mjs +15 -4
  33. package/esm2020/lib/registry/front-action-registry.service.mjs +34 -0
  34. package/esm2020/lib/registry/public-api.mjs +2 -1
  35. package/esm2020/lib/resources/interface/event-outcome.mjs +1 -1
  36. package/esm2020/lib/search/fulltext-search-component/abstract-fulltext-search.component.mjs +14 -4
  37. package/esm2020/lib/search/search-component/abstract-search.component.mjs +5 -3
  38. package/esm2020/lib/side-menu/content-components/injection-tokens.mjs +2 -1
  39. package/esm2020/lib/side-menu/content-components/public-api.mjs +2 -1
  40. package/esm2020/lib/side-menu/content-components/task-view/model/task-view-injection-data.mjs +2 -0
  41. package/esm2020/lib/task/services/task-data.service.mjs +11 -9
  42. package/esm2020/lib/task-content/services/single-task-content.service.mjs +4 -4
  43. package/esm2020/lib/task-content/services/task-content.service.mjs +22 -22
  44. package/esm2020/lib/task-content/services/unlimited-task-content.service.mjs +4 -4
  45. package/esm2020/lib/utility/navigation-item-default-headers-factory.mjs +12 -7
  46. package/esm2020/lib/view/abstract/netgrif-paginator-intl.mjs +36 -0
  47. package/esm2020/lib/view/case-view/components/case-list-paginator/abstract-case-list-paginator.component.mjs +8 -4
  48. package/esm2020/lib/view/public-api.mjs +2 -1
  49. package/esm2020/lib/view/task-view/abstract-single-task-view.component.mjs +18 -34
  50. package/esm2020/public-api.mjs +2 -1
  51. package/fesm2015/netgrif-components-core.mjs +1041 -589
  52. package/fesm2015/netgrif-components-core.mjs.map +1 -1
  53. package/fesm2020/netgrif-components-core.mjs +1027 -583
  54. package/fesm2020/netgrif-components-core.mjs.map +1 -1
  55. package/lib/actions/front-action.module.d.ts +9 -0
  56. package/lib/actions/model/front-action-definition.d.ts +5 -0
  57. package/lib/actions/model/router-action-definitions.d.ts +2 -0
  58. package/lib/actions/model/task-action-definitions.d.ts +3 -0
  59. package/lib/actions/public-api.d.ts +5 -0
  60. package/lib/actions/services/front-action.service.d.ts +15 -0
  61. package/lib/data-fields/case-ref-field/model/case-ref-injection-tokens.d.ts +2 -0
  62. package/lib/data-fields/enumeration-field/enumeration-caseref-field/abstract-enumeration-caseref-field.component.d.ts +16 -0
  63. package/lib/data-fields/enumeration-field/models/enumeration-field.d.ts +4 -1
  64. package/lib/data-fields/models/changed-fields.d.ts +7 -6
  65. package/lib/data-fields/multichoice-field/models/multichoice-field.d.ts +4 -0
  66. package/lib/data-fields/multichoice-field/multichoice-caseref-field/abstract-multichoice-caseref-field.component.d.ts +16 -0
  67. package/lib/data-fields/public-api.d.ts +2 -0
  68. package/lib/event/model/event-constants.d.ts +5 -1
  69. package/lib/event/services/event.service.d.ts +3 -0
  70. package/lib/header/abstract-header.component.d.ts +4 -1
  71. package/lib/header/header-modes/abstract-header-mode.component.d.ts +6 -1
  72. package/lib/navigation/model/group-navigation-constants.d.ts +5 -1
  73. package/lib/navigation/navigation-double-drawer/abstract-navigation-double-drawer.d.ts +9 -1
  74. package/lib/navigation/service/uri.service.d.ts +6 -0
  75. package/lib/panel/case-panel/abstract-case-panel.component.d.ts +5 -1
  76. package/lib/panel/task-panel/abstract-task-panel.component.d.ts +2 -1
  77. package/lib/panel/task-panel-list/task-panel-list-pagination/abstract-task-list-pagination.component.d.ts +2 -1
  78. package/lib/panel/task-panel-single/abstract-single-task.component.d.ts +5 -3
  79. package/lib/public/factories/public-search-factory.d.ts +3 -0
  80. package/lib/registry/front-action-registry.service.d.ts +13 -0
  81. package/lib/registry/public-api.d.ts +1 -0
  82. package/lib/resources/interface/event-outcome.d.ts +5 -0
  83. package/lib/search/fulltext-search-component/abstract-fulltext-search.component.d.ts +2 -1
  84. package/lib/search/search-component/abstract-search.component.d.ts +2 -1
  85. package/lib/side-menu/content-components/injection-tokens.d.ts +1 -0
  86. package/lib/side-menu/content-components/public-api.d.ts +1 -0
  87. package/lib/side-menu/content-components/task-view/model/task-view-injection-data.d.ts +4 -0
  88. package/lib/task/services/task-data.service.d.ts +4 -2
  89. package/lib/task-content/services/single-task-content.service.d.ts +2 -2
  90. package/lib/task-content/services/task-content.service.d.ts +7 -16
  91. package/lib/task-content/services/unlimited-task-content.service.d.ts +2 -2
  92. package/lib/view/abstract/netgrif-paginator-intl.d.ts +19 -0
  93. package/lib/view/case-view/components/case-list-paginator/abstract-case-list-paginator.component.d.ts +3 -1
  94. package/lib/view/public-api.d.ts +1 -0
  95. package/lib/view/task-view/abstract-single-task-view.component.d.ts +6 -5
  96. package/package.json +1 -1
  97. package/public-api.d.ts +1 -0
  98. package/src/assets/i18n/de.json +9 -0
  99. package/src/assets/i18n/en.json +9 -0
  100. package/src/assets/i18n/sk.json +9 -0
@@ -15,6 +15,7 @@ export * from './enumeration-field/enumeration-select-field/abstract-enumeration
15
15
  export * from './enumeration-field/enumeration-list-field/abstract-enumeration-list-field.component';
16
16
  export * from './enumeration-field/enumeration-autocomplete-select-field/abstract-enumeration-autocomplete-select-field.component';
17
17
  export * from './enumeration-field/enumeration-stepper-field/abstract-enumeration-stepper-field.component';
18
+ export * from './enumeration-field/enumeration-caseref-field/abstract-enumeration-caseref-field.component';
18
19
  export * from './file-field/abstract-file-field.component';
19
20
  export * from './file-field/file-default-field/abstract-file-default-field.component';
20
21
  export * from './file-field/abstract-preview-dialog/preview-dialog-data';
@@ -23,6 +24,7 @@ export * from './file-list-field/file-list-default-field/abstract-file-list-defa
23
24
  export * from './multichoice-field/abstract-multichoice-field.component';
24
25
  export * from './multichoice-field/multichoice-autocomplete-field/abstract-multichoice-autocomplete-field-component.component';
25
26
  export * from './multichoice-field/multichoice-list-field/abstract-multichoice-list-field.component';
27
+ export * from './multichoice-field/multichoice-caseref-field/abstract-multichoice-caseref-field.component';
26
28
  export * from './multichoice-field/multichoice-select-field/abstract-multichoice-select-field.component';
27
29
  export * from './number-field/abstract-number-field.component';
28
30
  export * from './number-field/currency-number-field/abstract-currency-number-field.component';
@@ -111,4 +113,4 @@ export * from './task-ref-field/model/task-ref-dashboard-tile-constants';
111
113
  export * from './text-field/dashboard-portal-text-field/dashboard-view-constants';
112
114
  /* Services */
113
115
  export * from './i18n-field/language-icons.service';
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy1jb3JlL3NyYy9saWIvZGF0YS1maWVsZHMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNCQUFzQixDQUFDO0FBRXJDLGdCQUFnQjtBQUNoQixjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxnRkFBZ0YsQ0FBQztBQUMvRixjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsNkVBQTZFLENBQUM7QUFDNUYsY0FBYyw4REFBOEQsQ0FBQztBQUM3RSxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsdUVBQXVFLENBQUM7QUFDdEYsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLHNGQUFzRixDQUFDO0FBQ3JHLGNBQWMsMERBQTBELENBQUM7QUFDekUsY0FBYywwRkFBMEYsQ0FBQztBQUN6RyxjQUFjLHNGQUFzRixDQUFDO0FBQ3JHLGNBQWMsb0hBQW9ILENBQUM7QUFDbkksY0FBYyw0RkFBNEYsQ0FBQztBQUMzRyxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsdUVBQXVFLENBQUM7QUFDdEYsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsc0ZBQXNGLENBQUM7QUFDckcsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLGdIQUFnSCxDQUFDO0FBQy9ILGNBQWMsc0ZBQXNGLENBQUM7QUFDckcsY0FBYywwRkFBMEYsQ0FBQztBQUN6RyxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsK0VBQStFLENBQUM7QUFDOUYsY0FBYyw2RUFBNkUsQ0FBQztBQUM1RixjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1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b3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2RhdGEtZmllbGRzLm1vZHVsZSc7XG5cbi8qIENvbXBvbmVudHMgKi9cbmV4cG9ydCAqIGZyb20gJy4vYmFzZS1jb21wb25lbnQvYWJzdHJhY3QtYmFzZS1kYXRhLWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2Jvb2xlYW4tZmllbGQvYWJzdHJhY3QtYm9vbGVhbi1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9ib29sZWFuLWZpZWxkL2Jvb2xlYW4tZGVmYXVsdC1maWVsZC9hYnN0cmFjdC1ib29sZWFuLWRlZmF1bHQtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vYnV0dG9uLWZpZWxkL2Fic3RyYWN0LWJ1dHRvbi1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9idXR0b24tZmllbGQvYnV0dG9uLWRlZmF1bHQtZmllbGQvYWJzdHJhY3QtYnV0dG9uLWRlZmF1bHQtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZGF0YS1maWVsZC10ZW1wbGF0ZS9hYnN0cmFjdC1kYXRhLWZpZWxkLXRlbXBsYXRlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2RhdGUtZmllbGQvYWJzdHJhY3QtZGF0ZS1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9kYXRlLWZpZWxkL2RhdGUtZGVmYXVsdC1maWVsZC9hYnN0cmFjdC1kYXRlLWRlZmF1bHQtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZGF0ZS10aW1lLWZpZWxkL2Fic3RyYWN0LWRhdGUtdGltZS1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9kYXRlLXRpbWUtZmllbGQvZGF0ZS10aW1lLWRlZmF1bHQtZmllbGQvYWJzdHJhY3QtZGF0ZS10aW1lLWRlZmF1bHQtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZW51bWVyYXRpb24tZmllbGQvYWJzdHJhY3QtZW51bWVyYXRpb24tZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZW51bWVyYXRpb24tZmllbGQvZW51bWVyYXRpb24tc2VsZWN0LWZpZWxkL2Fic3RyYWN0LWVudW1lcmF0aW9uLXNlbGVjdC1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9lbnVtZXJhdGlvbi1maWVsZC9lbnVtZXJhdGlvbi1saXN0LWZpZWxkL2Fic3RyYWN0LWVudW1lcmF0aW9uLWxpc3QtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZW51bWVyYXRpb24tZmllbGQvZW51bWVyYXRpb24tYXV0b2NvbXBsZXRlLXNlbGVjdC1maWVsZC9hYnN0cmFjdC1lbnVtZXJhdGlvbi1hdXRvY29tcGxldGUtc2VsZWN0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2VudW1lcmF0aW9uLWZpZWxkL2VudW1lcmF0aW9uLXN0ZXBwZXItZmllbGQvYWJzdHJhY3QtZW51bWVyYXRpb24tc3RlcHBlci1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9maWxlLWZpZWxkL2Fic3RyYWN0LWZpbGUtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZmlsZS1maWVsZC9maWxlLWRlZmF1bHQtZmllbGQvYWJzdHJhY3QtZmlsZS1kZWZhdWx0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2ZpbGUtZmllbGQvYWJzdHJhY3QtcHJldmlldy1kaWFsb2cvcHJldmlldy1kaWFsb2ctZGF0YSc7XG5leHBvcnQgKiBmcm9tICcuL2ZpbGUtbGlzdC1maWVsZC9hYnN0cmFjdC1maWxlLWxpc3QtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZmlsZS1saXN0LWZpZWxkL2ZpbGUtbGlzdC1kZWZhdWx0LWZpZWxkL2Fic3RyYWN0LWZpbGUtbGlzdC1kZWZhdWx0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL211bHRpY2hvaWNlLWZpZWxkL2Fic3RyYWN0LW11bHRpY2hvaWNlLWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL211bHRpY2hvaWNlLWZpZWxkL211bHRpY2hvaWNlLWF1dG9jb21wbGV0ZS1maWVsZC9hYnN0cmFjdC1tdWx0aWNob2ljZS1hdXRvY29tcGxldGUtZmllbGQtY29tcG9uZW50LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL211bHRpY2hvaWNlLWZpZWxkL211bHRpY2hvaWNlLWxpc3QtZmllbGQvYWJzdHJhY3QtbXVsdGljaG9pY2UtbGlzdC1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9tdWx0aWNob2ljZS1maWVsZC9tdWx0aWNob2ljZS1zZWxlY3QtZmllbGQvYWJzdHJhY3QtbXVsdGljaG9pY2Utc2VsZWN0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL251bWJlci1maWVsZC9hYnN0cmFjdC1udW1iZXItZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbnVtYmVyLWZpZWxkL2N1cnJlbmN5LW51bWJlci1maWVsZC9hYnN0cmFjdC1jdXJyZW5jeS1udW1iZXItZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbnVtYmVyLWZpZWxkL251bWJlci1kZWZhdWx0LWZpZWxkL2Fic3RyYWN0LWRlZmF1bHQtbnVtYmVyLWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL251bWJlci1maWVsZC9hYnN0cmFjdC1udW1iZXItZXJyb3JzLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3RleHQtZmllbGQvYWJzdHJhY3QtdGV4dC1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi90ZXh0LWZpZWxkL2Fic3RyYWN0LXRleHQtZXJyb3JzLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3RleHQtZmllbGQvc2ltcGxlLXRleHQtZmllbGQvYWJzdHJhY3Qtc2ltcGxlLXRleHQtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdGV4dC1maWVsZC9yaWNoLXRleHRhcmVhLWZpZWxkL2Fic3RyYWN0LXJpY2gtdGV4dGFyZWEtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdGV4dC1maWVsZC9odG1sLXRleHRhcmVhLWZpZWxkL2Fic3RyYWN0LWh0bWwtdGV4dGFyZWEtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdGV4dC1maWVsZC9wYXNzd29yZC10ZXh0LWZpZWxkL2Fic3RyYWN0LXBhc3N3b3JkLXRleHQtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdGV4dC1maWVsZC90ZXh0YXJlYS1maWVsZC9hYnN0cmFjdC10ZXh0YXJlYS1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi90ZXh0LWZpZWxkL2Fic3RyYWN0LWRhc2hib2FyZC10ZXh0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3RleHQtZmllbGQvZGFzaGJvYXJkLWxpbmUtY2hhcnQtdGV4dC1maWVsZC9hYnN0cmFjdC1kYXNoYm9hcmQtbGluZS1jaGFydC10ZXh0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3RleHQtZmllbGQvZGFzaGJvYXJkLXBpZS1jaGFydC10ZXh0LWZpZWxkL2Fic3RyYWN0LWRhc2hib2FyZC1waWUtY2hhcnQtdGV4dC1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi90ZXh0LWZpZWxkL2Rhc2hib2FyZC1iYXItY2hhcnQtdGV4dC1maWVsZC9hYnN0cmFjdC1kYXNoYm9hcmQtYmFyLWNoYXJ0LXRleHQtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdGV4dC1maWVsZC9kYXNoYm9hcmQtaWZyYW1lLXRleHQtZmllbGQvYWJzdHJhY3QtZGFzaGJvYXJkLWlmcmFtZS10ZXh0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3RleHQtZmllbGQvZGFzaGJvYXJkLXBvcnRhbC10ZXh0LWZpZWxkL2Fic3RyYWN0LWRhc2hib2FyZC1wb3J0YWwtdGV4dC1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi91c2VyLWZpZWxkL2Fic3RyYWN0LXVzZXItZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdXNlci1maWVsZC91c2VyLWRlZmF1bHQtZmllbGQvYWJzdHJhY3QtdXNlci1kZWZhdWx0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2VudW1lcmF0aW9uLWZpZWxkL2VudW1lcmF0aW9uLWljb24tZmllbGQvYWJzdHJhY3QtZW51bWVyYXRpb24taWNvbi1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9lbnVtZXJhdGlvbi1maWVsZC9lbnVtZXJhdGlvbi1hdXRvY29tcGxldGUtZHluYW1pYy1maWVsZC9hYnN0cmFjdC1lbnVtZXJhdGlvbi1hdXRvY29tcGxldGUtZHluYW1pYy1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9maWx0ZXItZmllbGQvYWJzdHJhY3QtZmlsdGVyLWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2ZpbHRlci1maWVsZC9hYnN0cmFjdC1maWx0ZXItZmllbGQtY29udGVudC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9maWx0ZXItZmllbGQvYWJzdHJhY3QtZmlsdGVyLWZpZWxkLXRhYi12aWV3LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2ZpbHRlci1maWVsZC9hYnN0cmFjdC1maWx0ZXItZmllbGQtdGFiLXZpZXctY29udGVudC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9maWx0ZXItZmllbGQvZmlsdGVyLWRlZmF1bHQtZmllbGQvYWJzdHJhY3QtZmlsdGVyLWRlZmF1bHQtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vaTE4bi1maWVsZC9hYnN0cmFjdC1pMThuLWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2kxOG4tZmllbGQvaTE4bi10ZXh0LWZpZWxkL2Fic3RyYWN0LWkxOG4tdGV4dC1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9pMThuLWZpZWxkL2kxOG4tZGl2aWRlci1maWVsZC9hYnN0cmFjdC1pMThuLWRpdmlkZXItZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vaTE4bi1maWVsZC9hYnN0cmFjdC1pMThuLWVycm9ycy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi91c2VyLWxpc3QtZmllbGQvYWJzdHJhY3QtdXNlci1saXN0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3VzZXItbGlzdC1maWVsZC91c2VyLWxpc3QtZGVmYXVsdC1maWVsZC9hYnN0cmFjdC11c2VyLWxpc3QtZGVmYXVsdC1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi90YXNrLXJlZi1maWVsZC9hYnN0cmFjdC10YXNrLXJlZi1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi90YXNrLXJlZi1maWVsZC90YXNrLXJlZi1kYXNoYm9hcmQtZmllbGQvdGFzay1yZWYtZGFzaGJvYXJkLXRpbGUvYWJzdHJhY3QtdGFzay1yZWYtZGFzaGJvYXJkLXRpbGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdGFzay1yZWYtZmllbGQvdGFzay1yZWYtZGFzaGJvYXJkLWZpZWxkL2Fic3RyYWN0LXRhc2stcmVmLWRhc2hib2FyZC1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi90YXNrLXJlZi1maWVsZC90YXNrLXJlZi1saXN0LWZpZWxkL2Fic3RyYWN0LXRhc2stcmVmLWxpc3QtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY2FzZS1yZWYtZmllbGQvY2FzZS1yZWYtZGVmYXVsdC9jYXNlLXJlZi1kZWZhdWx0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2Nhc2UtcmVmLWZpZWxkL21vZGVsL2Nhc2UtcmVmLWluamVjdGlvbi10b2tlbnMnO1xuXG4vKiBDbGFzcyAqL1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbHMvYWJzdHJhY3QtZGF0YS1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL3RleHQtZmllbGQvbW9kZWxzL3RleHQtYXJlYS1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL3RleHQtZmllbGQvbW9kZWxzL3RleHQtZmllbGQnO1xuZXhwb3J0ICogZnJvbSAnLi9udW1iZXItZmllbGQvbW9kZWxzL251bWJlci1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL2VudW1lcmF0aW9uLWZpZWxkL21vZGVscy9lbnVtZXJhdGlvbi1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL211bHRpY2hvaWNlLWZpZWxkL21vZGVscy9tdWx0aWNob2ljZS1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL2Jvb2xlYW4tZmllbGQvbW9kZWxzL2Jvb2xlYW4tZmllbGQnO1xuZXhwb3J0ICogZnJvbSAnLi9kYXRlLWZpZWxkL21vZGVscy9kYXRlLWZpZWxkJztcbmV4cG9ydCAqIGZyb20gJy4vZmlsZS1maWVsZC9tb2RlbHMvZmlsZS1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL2ZpbGUtbGlzdC1maWVsZC9tb2RlbHMvZmlsZS1saXN0LWZpZWxkJztcbmV4cG9ydCAqIGZyb20gJy4vdXNlci1maWVsZC9tb2RlbHMvdXNlci1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL3VzZXItZmllbGQvbW9kZWxzL3VzZXItdmFsdWUnO1xuZXhwb3J0ICogZnJvbSAnLi9kYXRlLXRpbWUtZmllbGQvbW9kZWxzL2RhdGUtdGltZS1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL2J1dHRvbi1maWVsZC9tb2RlbHMvYnV0dG9uLWZpZWxkJztcbmV4cG9ydCAqIGZyb20gJy4vZGF0ZS1maWVsZC9tb2RlbHMvY3VzdG9tLWRhdGUtYWRhcHRlcic7XG5leHBvcnQgKiBmcm9tICcuL3Rhc2stcmVmLWZpZWxkL21vZGVsL3Rhc2stcmVmLWZpZWxkJztcbmV4cG9ydCAqIGZyb20gJy4vZW51bWVyYXRpb24tZmllbGQvbW9kZWxzL2R5bmFtaWMtZW51bWVyYXRpb24tZmllbGQnO1xuZXhwb3J0ICogZnJvbSAnLi9maWx0ZXItZmllbGQvbW9kZWxzL2ZpbHRlci1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL2kxOG4tZmllbGQvbW9kZWxzL2kxOG4tZmllbGQnO1xuZXhwb3J0ICogZnJvbSAnLi91c2VyLWxpc3QtZmllbGQvbW9kZWxzL3VzZXItbGlzdC1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL3VzZXItbGlzdC1maWVsZC9tb2RlbHMvdXNlci1saXN0LXZhbHVlJztcbmV4cG9ydCAqIGZyb20gJy4vY2FzZS1yZWYtZmllbGQvbW9kZWwvY2FzZS1yZWYtZmllbGQnO1xuXG4vKiBJbnRlcmZhY2VzICovXG5leHBvcnQgKiBmcm9tICcuL21vZGVscy9jaGFuZ2VkLWZpZWxkcyc7XG5leHBvcnQgKiBmcm9tICcuL21vZGVscy92YWxpZGF0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWxzL2xheW91dCc7XG5leHBvcnQgKiBmcm9tICcuL21vZGVscy9mb3JtYXQtZmlsdGVyJztcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWxzL2NvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL21vZGVscy9wcm9wZXJ0aWVzJztcbmV4cG9ydCAqIGZyb20gJy4vZGF0YS1maWVsZC10ZW1wbGF0ZS9tb2RlbHMvd3JhcHBlZC1ib29sZWFuJztcbmV4cG9ydCAqIGZyb20gJy4vaTE4bi1maWVsZC9tb2RlbHMvbGFuZ3VhZ2UtaWNvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi90YXNrLXJlZi1maWVsZC9tb2RlbC90YXNrLXJlZi1kYXNoYm9hcmQtdGlsZSc7XG5cbi8qIFRva2VucyAqL1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbHMvYm9vbGVhbi1sYWJlbC1lbmFibGVkLXRva2VuJztcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWxzL2ludmFsaWQtZGF0YS1wb2xpY3ktdG9rZW4nO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbHMvZGF0YS1maWVsZC1wb3J0YWwtZGF0YS1pbmplY3Rpb24tdG9rZW4nO1xuZXhwb3J0ICogZnJvbSAnLi9maWx0ZXItZmllbGQvbW9kZWxzL2ZpbHRlci1maWVsZC1pbmplY3Rpb24tdG9rZW4nO1xuXG4vKiBFbnVtcyAqL1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbHMvdGVtcGxhdGUtYXBwZWFyYW5jZSc7XG5leHBvcnQgKiBmcm9tICcuL21vZGVscy9tYXRlcmlhbC1hcHBlYXJhbmNlJztcbmV4cG9ydCAqIGZyb20gJy4vZW51bWVyYXRpb24tZmllbGQvZW51bWVyYXRpb24tYXV0b2NvbXBsZXRlLXNlbGVjdC1maWVsZC9lbnVtZXJhdGlvbi1hdXRvY29tcGxldGUtZmlsdGVyLXByb3BlcnR5J1xuZXhwb3J0ICogZnJvbSAnLi9tdWx0aWNob2ljZS1maWVsZC9tdWx0aWNob2ljZS1hdXRvY29tcGxldGUtZmllbGQvbXVsdGljaG9pY2UtYXV0b2NvbXBsZXRlLWZpbHRlci1wcm9wZXJ0eSdcbmV4cG9ydCAqIGZyb20gJy4vdGFzay1yZWYtZmllbGQvbW9kZWwvdGFzay1yZWYtY29tcG9uZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL3Rhc2stcmVmLWZpZWxkL21vZGVsL3Rhc2stcmVmLWRhc2hib2FyZC1jb25zdGFudHMnO1xuZXhwb3J0ICogZnJvbSAnLi90YXNrLXJlZi1maWVsZC9tb2RlbC90YXNrLXJlZi1kYXNoYm9hcmQtdGlsZS1jb25zdGFudHMnO1xuZXhwb3J0ICogZnJvbSAnLi90ZXh0LWZpZWxkL2Rhc2hib2FyZC1wb3J0YWwtdGV4dC1maWVsZC9kYXNoYm9hcmQtdmlldy1jb25zdGFudHMnO1xuXG4vKiBTZXJ2aWNlcyAqL1xuZXhwb3J0ICogZnJvbSAnLi9pMThuLWZpZWxkL2xhbmd1YWdlLWljb25zLnNlcnZpY2UnO1xuIl19
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy1jb3JlL3NyYy9saWIvZGF0YS1maWVsZHMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNCQUFzQixDQUFDO0FBRXJDLGdCQUFnQjtBQUNoQixjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxnRkFBZ0YsQ0FBQztBQUMvRixjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsNkVBQTZFLENBQUM7QUFDNUYsY0FBYyw4REFBOEQsQ0FBQztBQUM3RSxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsdUVBQXVFLENBQUM7QUFDdEYsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLHNGQUFzRixDQUFDO0FBQ3JHLGNBQWMsMERBQTBELENBQUM7QUFDekUsY0FBYywwRkFBMEYsQ0FBQztBQUN6RyxjQUFjLHNGQUFzRixDQUFDO0FBQ3JHLGNBQWMsb0hBQW9ILENBQUM7QUFDbkksY0FBYyw0RkFBNEYsQ0FBQztBQUMzRyxjQUFjLDRGQUE0RixDQUFDO0FBQzNHLGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyx1RUFBdUUsQ0FBQztBQUN0RixjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyxzRkFBc0YsQ0FBQztBQUNyRyxjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsZ0hBQWdILENBQUM7QUFDL0gsY0FBYyxzRkFBc0YsQ0FBQztBQUNyRyxjQUFjLDRGQUE0RixDQUFDO0FBQzNHLGNBQWMsMEZBQTBGLENBQUM7QUFDekcsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLCtFQUErRSxDQUFDO0FBQzlGLGNBQWMsNkVBQTZFLENBQUM7QUFDNUYsY0FBYyxpREFBaUQsQ0FBQztBQUNo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QUFtRSxDQUFDO0FBRWxGLGNBQWM7QUFDZCxjQUFjLHFDQUFxQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9kYXRhLWZpZWxkcy5tb2R1bGUnO1xuXG4vKiBDb21wb25lbnRzICovXG5leHBvcnQgKiBmcm9tICcuL2Jhc2UtY29tcG9uZW50L2Fic3RyYWN0LWJhc2UtZGF0YS1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9ib29sZWFuLWZpZWxkL2Fic3RyYWN0LWJvb2xlYW4tZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vYm9vbGVhbi1maWVsZC9ib29sZWFuLWRlZmF1bHQtZmllbGQvYWJzdHJhY3QtYm9vbGVhbi1kZWZhdWx0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2J1dHRvbi1maWVsZC9hYnN0cmFjdC1idXR0b24tZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vYnV0dG9uLWZpZWxkL2J1dHRvbi1kZWZhdWx0LWZpZWxkL2Fic3RyYWN0LWJ1dHRvbi1kZWZhdWx0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2RhdGEtZmllbGQtdGVtcGxhdGUvYWJzdHJhY3QtZGF0YS1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9kYXRlLWZpZWxkL2Fic3RyYWN0LWRhdGUtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZGF0ZS1maWVsZC9kYXRlLWRlZmF1bHQtZmllbGQvYWJzdHJhY3QtZGF0ZS1kZWZhdWx0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2RhdGUtdGltZS1maWVsZC9hYnN0cmFjdC1kYXRlLXRpbWUtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZGF0ZS10aW1lLWZpZWxkL2RhdGUtdGltZS1kZWZhdWx0LWZpZWxkL2Fic3RyYWN0LWRhdGUtdGltZS1kZWZhdWx0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2VudW1lcmF0aW9uLWZpZWxkL2Fic3RyYWN0LWVudW1lcmF0aW9uLWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2VudW1lcmF0aW9uLWZpZWxkL2VudW1lcmF0aW9uLXNlbGVjdC1maWVsZC9hYnN0cmFjdC1lbnVtZXJhdGlvbi1zZWxlY3QtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZW51bWVyYXRpb24tZmllbGQvZW51bWVyYXRpb24tbGlzdC1maWVsZC9hYnN0cmFjdC1lbnVtZXJhdGlvbi1saXN0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2VudW1lcmF0aW9uLWZpZWxkL2VudW1lcmF0aW9uLWF1dG9jb21wbGV0ZS1zZWxlY3QtZmllbGQvYWJzdHJhY3QtZW51bWVyYXRpb24tYXV0b2NvbXBsZXRlLXNlbGVjdC1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9lbnVtZXJhdGlvbi1maWVsZC9lbnVtZXJhdGlvbi1zdGVwcGVyLWZpZWxkL2Fic3RyYWN0LWVudW1lcmF0aW9uLXN0ZXBwZXItZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZW51bWVyYXRpb24tZmllbGQvZW51bWVyYXRpb24tY2FzZXJlZi1maWVsZC9hYnN0cmFjdC1lbnVtZXJhdGlvbi1jYXNlcmVmLWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2ZpbGUtZmllbGQvYWJzdHJhY3QtZmlsZS1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9maWxlLWZpZWxkL2ZpbGUtZGVmYXVsdC1maWVsZC9hYnN0cmFjdC1maWxlLWRlZmF1bHQtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZmlsZS1maWVsZC9hYnN0cmFjdC1wcmV2aWV3LWRpYWxvZy9wcmV2aWV3LWRpYWxvZy1kYXRhJztcbmV4cG9ydCAqIGZyb20gJy4vZmlsZS1saXN0LWZpZWxkL2Fic3RyYWN0LWZpbGUtbGlzdC1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9maWxlLWxpc3QtZmllbGQvZmlsZS1saXN0LWRlZmF1bHQtZmllbGQvYWJzdHJhY3QtZmlsZS1saXN0LWRlZmF1bHQtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbXVsdGljaG9pY2UtZmllbGQvYWJzdHJhY3QtbXVsdGljaG9pY2UtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbXVsdGljaG9pY2UtZmllbGQvbXVsdGljaG9pY2UtYXV0b2NvbXBsZXRlLWZpZWxkL2Fic3RyYWN0LW11bHRpY2hvaWNlLWF1dG9jb21wbGV0ZS1maWVsZC1jb21wb25lbnQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbXVsdGljaG9pY2UtZmllbGQvbXVsdGljaG9pY2UtbGlzdC1maWVsZC9hYnN0cmFjdC1tdWx0aWNob2ljZS1saXN0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL211bHRpY2hvaWNlLWZpZWxkL211bHRpY2hvaWNlLWNhc2VyZWYtZmllbGQvYWJzdHJhY3QtbXVsdGljaG9pY2UtY2FzZXJlZi1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9tdWx0aWNob2ljZS1maWVsZC9tdWx0aWNob2ljZS1zZWxlY3QtZmllbGQvYWJzdHJhY3QtbXVsdGljaG9pY2Utc2VsZWN0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL251bWJlci1maWVsZC9hYnN0cmFjdC1udW1iZXItZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbnVtYmVyLWZpZWxkL2N1cnJlbmN5LW51bWJlci1maWVsZC9hYnN0cmFjdC1jdXJyZW5jeS1udW1iZXItZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbnVtYmVyLWZpZWxkL251bWJlci1kZWZhdWx0LWZpZWxkL2Fic3RyYWN0LWRlZmF1bHQtbnVtYmVyLWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL251bWJlci1maWVsZC9hYnN0cmFjdC1udW1iZXItZXJyb3JzLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3RleHQtZmllbGQvYWJzdHJhY3QtdGV4dC1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi90ZXh0LWZpZWxkL2Fic3RyYWN0LXRleHQtZXJyb3JzLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3RleHQtZmllbGQvc2ltcGxlLXRleHQtZmllbGQvYWJzdHJhY3Qtc2ltcGxlLXRleHQtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdGV4dC1maWVsZC9yaWNoLXRleHRhcmVhLWZpZWxkL2Fic3RyYWN0LXJpY2gtdGV4dGFyZWEtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdGV4dC1maWVsZC9odG1sLXRleHRhcmVhLWZpZWxkL2Fic3RyYWN0LWh0bWwtdGV4dGFyZWEtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdGV4dC1maWVsZC9wYXNzd29yZC10ZXh0LWZpZWxkL2Fic3RyYWN0LXBhc3N3b3JkLXRleHQtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdGV4dC1maWVsZC90ZXh0YXJlYS1maWVsZC9hYnN0cmFjdC10ZXh0YXJlYS1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi90ZXh0LWZpZWxkL2Fic3RyYWN0LWRhc2hib2FyZC10ZXh0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3RleHQtZmllbGQvZGFzaGJvYXJkLWxpbmUtY2hhcnQtdGV4dC1maWVsZC9hYnN0cmFjdC1kYXNoYm9hcmQtbGluZS1jaGFydC10ZXh0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3RleHQtZmllbGQvZGFzaGJvYXJkLXBpZS1jaGFydC10ZXh0LWZpZWxkL2Fic3RyYWN0LWRhc2hib2FyZC1waWUtY2hhcnQtdGV4dC1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi90ZXh0LWZpZWxkL2Rhc2hib2FyZC1iYXItY2hhcnQtdGV4dC1maWVsZC9hYnN0cmFjdC1kYXNoYm9hcmQtYmFyLWNoYXJ0LXRleHQtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdGV4dC1maWVsZC9kYXNoYm9hcmQtaWZyYW1lLXRleHQtZmllbGQvYWJzdHJhY3QtZGFzaGJvYXJkLWlmcmFtZS10ZXh0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3RleHQtZmllbGQvZGFzaGJvYXJkLXBvcnRhbC10ZXh0LWZpZWxkL2Fic3RyYWN0LWRhc2hib2FyZC1wb3J0YWwtdGV4dC1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi91c2VyLWZpZWxkL2Fic3RyYWN0LXVzZXItZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdXNlci1maWVsZC91c2VyLWRlZmF1bHQtZmllbGQvYWJzdHJhY3QtdXNlci1kZWZhdWx0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2VudW1lcmF0aW9uLWZpZWxkL2VudW1lcmF0aW9uLWljb24tZmllbGQvYWJzdHJhY3QtZW51bWVyYXRpb24taWNvbi1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9lbnVtZXJhdGlvbi1maWVsZC9lbnVtZXJhdGlvbi1hdXRvY29tcGxldGUtZHluYW1pYy1maWVsZC9hYnN0cmFjdC1lbnVtZXJhdGlvbi1hdXRvY29tcGxldGUtZHluYW1pYy1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9maWx0ZXItZmllbGQvYWJzdHJhY3QtZmlsdGVyLWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2ZpbHRlci1maWVsZC9hYnN0cmFjdC1maWx0ZXItZmllbGQtY29udGVudC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9maWx0ZXItZmllbGQvYWJzdHJhY3QtZmlsdGVyLWZpZWxkLXRhYi12aWV3LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2ZpbHRlci1maWVsZC9hYnN0cmFjdC1maWx0ZXItZmllbGQtdGFiLXZpZXctY29udGVudC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9maWx0ZXItZmllbGQvZmlsdGVyLWRlZmF1bHQtZmllbGQvYWJzdHJhY3QtZmlsdGVyLWRlZmF1bHQtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vaTE4bi1maWVsZC9hYnN0cmFjdC1pMThuLWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2kxOG4tZmllbGQvaTE4bi10ZXh0LWZpZWxkL2Fic3RyYWN0LWkxOG4tdGV4dC1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9pMThuLWZpZWxkL2kxOG4tZGl2aWRlci1maWVsZC9hYnN0cmFjdC1pMThuLWRpdmlkZXItZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vaTE4bi1maWVsZC9hYnN0cmFjdC1pMThuLWVycm9ycy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi91c2VyLWxpc3QtZmllbGQvYWJzdHJhY3QtdXNlci1saXN0LWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3VzZXItbGlzdC1maWVsZC91c2VyLWxpc3QtZGVmYXVsdC1maWVsZC9hYnN0cmFjdC11c2VyLWxpc3QtZGVmYXVsdC1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi90YXNrLXJlZi1maWVsZC9hYnN0cmFjdC10YXNrLXJlZi1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi90YXNrLXJlZi1maWVsZC90YXNrLXJlZi1kYXNoYm9hcmQtZmllbGQvdGFzay1yZWYtZGFzaGJvYXJkLXRpbGUvYWJzdHJhY3QtdGFzay1yZWYtZGFzaGJvYXJkLXRpbGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdGFzay1yZWYtZmllbGQvdGFzay1yZWYtZGFzaGJvYXJkLWZpZWxkL2Fic3RyYWN0LXRhc2stcmVmLWRhc2hib2FyZC1maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi90YXNrLXJlZi1maWVsZC90YXNrLXJlZi1saXN0LWZpZWxkL2Fic3RyYWN0LXRhc2stcmVmLWxpc3QtZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY2FzZS1yZWYtZmllbGQvY2FzZS1yZWYtZGVmYXVsdC9jYXNlLXJlZi1kZWZhdWx0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2Nhc2UtcmVmLWZpZWxkL21vZGVsL2Nhc2UtcmVmLWluamVjdGlvbi10b2tlbnMnO1xuXG4vKiBDbGFzcyAqL1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbHMvYWJzdHJhY3QtZGF0YS1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL3RleHQtZmllbGQvbW9kZWxzL3RleHQtYXJlYS1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL3RleHQtZmllbGQvbW9kZWxzL3RleHQtZmllbGQnO1xuZXhwb3J0ICogZnJvbSAnLi9udW1iZXItZmllbGQvbW9kZWxzL251bWJlci1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL2VudW1lcmF0aW9uLWZpZWxkL21vZGVscy9lbnVtZXJhdGlvbi1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL211bHRpY2hvaWNlLWZpZWxkL21vZGVscy9tdWx0aWNob2ljZS1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL2Jvb2xlYW4tZmllbGQvbW9kZWxzL2Jvb2xlYW4tZmllbGQnO1xuZXhwb3J0ICogZnJvbSAnLi9kYXRlLWZpZWxkL21vZGVscy9kYXRlLWZpZWxkJztcbmV4cG9ydCAqIGZyb20gJy4vZmlsZS1maWVsZC9tb2RlbHMvZmlsZS1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL2ZpbGUtbGlzdC1maWVsZC9tb2RlbHMvZmlsZS1saXN0LWZpZWxkJztcbmV4cG9ydCAqIGZyb20gJy4vdXNlci1maWVsZC9tb2RlbHMvdXNlci1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL3VzZXItZmllbGQvbW9kZWxzL3VzZXItdmFsdWUnO1xuZXhwb3J0ICogZnJvbSAnLi9kYXRlLXRpbWUtZmllbGQvbW9kZWxzL2RhdGUtdGltZS1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL2J1dHRvbi1maWVsZC9tb2RlbHMvYnV0dG9uLWZpZWxkJztcbmV4cG9ydCAqIGZyb20gJy4vZGF0ZS1maWVsZC9tb2RlbHMvY3VzdG9tLWRhdGUtYWRhcHRlcic7XG5leHBvcnQgKiBmcm9tICcuL3Rhc2stcmVmLWZpZWxkL21vZGVsL3Rhc2stcmVmLWZpZWxkJztcbmV4cG9ydCAqIGZyb20gJy4vZW51bWVyYXRpb24tZmllbGQvbW9kZWxzL2R5bmFtaWMtZW51bWVyYXRpb24tZmllbGQnO1xuZXhwb3J0ICogZnJvbSAnLi9maWx0ZXItZmllbGQvbW9kZWxzL2ZpbHRlci1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL2kxOG4tZmllbGQvbW9kZWxzL2kxOG4tZmllbGQnO1xuZXhwb3J0ICogZnJvbSAnLi91c2VyLWxpc3QtZmllbGQvbW9kZWxzL3VzZXItbGlzdC1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL3VzZXItbGlzdC1maWVsZC9tb2RlbHMvdXNlci1saXN0LXZhbHVlJztcbmV4cG9ydCAqIGZyb20gJy4vY2FzZS1yZWYtZmllbGQvbW9kZWwvY2FzZS1yZWYtZmllbGQnO1xuXG4vKiBJbnRlcmZhY2VzICovXG5leHBvcnQgKiBmcm9tICcuL21vZGVscy9jaGFuZ2VkLWZpZWxkcyc7XG5leHBvcnQgKiBmcm9tICcuL21vZGVscy92YWxpZGF0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWxzL2xheW91dCc7XG5leHBvcnQgKiBmcm9tICcuL21vZGVscy9mb3JtYXQtZmlsdGVyJztcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWxzL2NvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL21vZGVscy9wcm9wZXJ0aWVzJztcbmV4cG9ydCAqIGZyb20gJy4vZGF0YS1maWVsZC10ZW1wbGF0ZS9tb2RlbHMvd3JhcHBlZC1ib29sZWFuJztcbmV4cG9ydCAqIGZyb20gJy4vaTE4bi1maWVsZC9tb2RlbHMvbGFuZ3VhZ2UtaWNvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi90YXNrLXJlZi1maWVsZC9tb2RlbC90YXNrLXJlZi1kYXNoYm9hcmQtdGlsZSc7XG5cbi8qIFRva2VucyAqL1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbHMvYm9vbGVhbi1sYWJlbC1lbmFibGVkLXRva2VuJztcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWxzL2ludmFsaWQtZGF0YS1wb2xpY3ktdG9rZW4nO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbHMvZGF0YS1maWVsZC1wb3J0YWwtZGF0YS1pbmplY3Rpb24tdG9rZW4nO1xuZXhwb3J0ICogZnJvbSAnLi9maWx0ZXItZmllbGQvbW9kZWxzL2ZpbHRlci1maWVsZC1pbmplY3Rpb24tdG9rZW4nO1xuXG4vKiBFbnVtcyAqL1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbHMvdGVtcGxhdGUtYXBwZWFyYW5jZSc7XG5leHBvcnQgKiBmcm9tICcuL21vZGVscy9tYXRlcmlhbC1hcHBlYXJhbmNlJztcbmV4cG9ydCAqIGZyb20gJy4vZW51bWVyYXRpb24tZmllbGQvZW51bWVyYXRpb24tYXV0b2NvbXBsZXRlLXNlbGVjdC1maWVsZC9lbnVtZXJhdGlvbi1hdXRvY29tcGxldGUtZmlsdGVyLXByb3BlcnR5J1xuZXhwb3J0ICogZnJvbSAnLi9tdWx0aWNob2ljZS1maWVsZC9tdWx0aWNob2ljZS1hdXRvY29tcGxldGUtZmllbGQvbXVsdGljaG9pY2UtYXV0b2NvbXBsZXRlLWZpbHRlci1wcm9wZXJ0eSdcbmV4cG9ydCAqIGZyb20gJy4vdGFzay1yZWYtZmllbGQvbW9kZWwvdGFzay1yZWYtY29tcG9uZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL3Rhc2stcmVmLWZpZWxkL21vZGVsL3Rhc2stcmVmLWRhc2hib2FyZC1jb25zdGFudHMnO1xuZXhwb3J0ICogZnJvbSAnLi90YXNrLXJlZi1maWVsZC9tb2RlbC90YXNrLXJlZi1kYXNoYm9hcmQtdGlsZS1jb25zdGFudHMnO1xuZXhwb3J0ICogZnJvbSAnLi90ZXh0LWZpZWxkL2Rhc2hib2FyZC1wb3J0YWwtdGV4dC1maWVsZC9kYXNoYm9hcmQtdmlldy1jb25zdGFudHMnO1xuXG4vKiBTZXJ2aWNlcyAqL1xuZXhwb3J0ICogZnJvbSAnLi9pMThuLWZpZWxkL2xhbmd1YWdlLWljb25zLnNlcnZpY2UnO1xuIl19
@@ -4,5 +4,9 @@ export var EventConstants;
4
4
  * Changed fields parameter of {@link SetDataEventOutcome}
5
5
  */
6
6
  EventConstants["CHANGED_FIELDS"] = "changedFields";
7
+ /**
8
+ * Front actions parameter of {@link EventOutcome}
9
+ */
10
+ EventConstants["FRONT_ACTIONS"] = "frontActions";
7
11
  })(EventConstants || (EventConstants = {}));
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzLWNvcmUvc3JjL2xpYi9ldmVudC9tb2RlbC9ldmVudC1jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksY0FNWDtBQU5ELFdBQVksY0FBYztJQUV0Qjs7T0FFRztJQUNILGtEQUFnQyxDQUFBO0FBQ3BDLENBQUMsRUFOVyxjQUFjLEtBQWQsY0FBYyxRQU16QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEV2ZW50Q29uc3RhbnRzIHtcblxuICAgIC8qKlxuICAgICAqIENoYW5nZWQgZmllbGRzIHBhcmFtZXRlciBvZiB7QGxpbmsgU2V0RGF0YUV2ZW50T3V0Y29tZX1cbiAgICAgKi9cbiAgICBDSEFOR0VEX0ZJRUxEUyA9ICdjaGFuZ2VkRmllbGRzJ1xufVxuIl19
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzLWNvcmUvc3JjL2xpYi9ldmVudC9tb2RlbC9ldmVudC1jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksY0FVWDtBQVZELFdBQVksY0FBYztJQUV0Qjs7T0FFRztJQUNILGtEQUFnQyxDQUFBO0lBQ2hDOztPQUVHO0lBQ0gsZ0RBQThCLENBQUE7QUFDbEMsQ0FBQyxFQVZXLGNBQWMsS0FBZCxjQUFjLFFBVXpCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gRXZlbnRDb25zdGFudHMge1xuXG4gICAgLyoqXG4gICAgICogQ2hhbmdlZCBmaWVsZHMgcGFyYW1ldGVyIG9mIHtAbGluayBTZXREYXRhRXZlbnRPdXRjb21lfVxuICAgICAqL1xuICAgIENIQU5HRURfRklFTERTID0gJ2NoYW5nZWRGaWVsZHMnLFxuICAgIC8qKlxuICAgICAqIEZyb250IGFjdGlvbnMgcGFyYW1ldGVyIG9mIHtAbGluayBFdmVudE91dGNvbWV9XG4gICAgICovXG4gICAgRlJPTlRfQUNUSU9OUyA9ICdmcm9udEFjdGlvbnMnXG59XG4iXX0=
@@ -46,6 +46,28 @@ export class EventService {
46
46
  });
47
47
  return changedFieldsMap;
48
48
  }
49
+ parseFrontActionsFromOutcomeTree(outcome) {
50
+ const frontActions = [];
51
+ if (!!outcome.outcomes && outcome.outcomes.length > 0) {
52
+ return this.parseFrontActionsFromOutcomeTreeRecursive(outcome.outcomes, frontActions);
53
+ }
54
+ else
55
+ return frontActions;
56
+ }
57
+ parseFrontActionsFromOutcomeTreeRecursive(outcomes, frontActions) {
58
+ outcomes.forEach(childOutcome => {
59
+ if (EventConstants.FRONT_ACTIONS in childOutcome) {
60
+ const childFrontActions = childOutcome.frontActions;
61
+ if (!!childFrontActions) {
62
+ frontActions.push(...childFrontActions);
63
+ }
64
+ }
65
+ if (!!childOutcome.outcomes && childOutcome.outcomes.length > 0) {
66
+ this.parseFrontActionsFromOutcomeTreeRecursive(childOutcome.outcomes, frontActions);
67
+ }
68
+ });
69
+ return frontActions;
70
+ }
49
71
  }
50
72
  EventService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: EventService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
51
73
  EventService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: EventService, providedIn: 'root' });
@@ -55,4 +77,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
55
77
  providedIn: 'root'
56
78
  }]
57
79
  }], ctorParameters: function () { return []; } });
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy1jb3JlL3NyYy9saWIvZXZlbnQvc2VydmljZXMvZXZlbnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBS3pDLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQzs7QUFLeEQsTUFBTSxPQUFPLFlBQVk7SUFFckI7SUFDQSxDQUFDO0lBRU0saUNBQWlDLENBQUMsT0FBcUI7UUFDMUQsTUFBTSxnQkFBZ0IsR0FBcUIsRUFBRSxDQUFDO1FBQzlDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ25ELE9BQU8sSUFBSSxDQUFDLDBDQUEwQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztTQUM5Rjs7WUFBTSxPQUFPLGdCQUFnQixDQUFDO0lBQ25DLENBQUM7SUFFTywwQ0FBMEMsQ0FBQyxRQUE2QixFQUM3QixnQkFBa0M7UUFDakYsUUFBUSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsRUFBRTtZQUM1QixJQUFJLGNBQWMsQ0FBQyxjQUFjLElBQUksWUFBWTttQkFDMUMsQ0FBQyxDQUFFLFlBQW9DLENBQUMsS0FBSzttQkFDN0MsQ0FBQyxDQUFFLFlBQW9DLENBQUMsSUFBSSxFQUFFO2dCQUNqRCxNQUFNLGNBQWMsR0FBd0IsWUFBbUMsQ0FBQztnQkFDaEYsTUFBTSxvQkFBb0IsR0FBbUIsWUFBb0MsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDO2dCQUM5RyxNQUFNLE1BQU0sR0FBRyxjQUFjLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztnQkFDN0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUU7b0JBQ2pELGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQztpQkFDakM7Z0JBQ0QsTUFBTSxNQUFNLEdBQUcsY0FBYyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7Z0JBQzVDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFO29CQUN6RCxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRzt3QkFDL0IsTUFBTTtxQkFDVCxDQUFDO2lCQUNMO2dCQUNELE1BQU0sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7b0JBQ2hELElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRTt3QkFDakUsTUFBTSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRTs0QkFDM0QsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsb0JBQW9CLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUM7d0JBQ3BHLENBQUMsQ0FBQyxDQUFDO3FCQUNOO3lCQUFNO3dCQUNILGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLGNBQWMsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO3FCQUNuRztnQkFDTCxDQUFDLENBQUMsQ0FBQzthQUNOO1lBQ0QsSUFBSSxDQUFDLENBQUMsWUFBWSxDQUFDLFFBQVEsSUFBSSxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQzdELElBQUksQ0FBQywwQ0FBMEMsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLGdCQUFnQixDQUFDLENBQUM7YUFDNUY7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sZ0JBQWdCLENBQUM7SUFDNUIsQ0FBQzs7MEdBN0NRLFlBQVk7OEdBQVosWUFBWSxjQUZULE1BQU07NEZBRVQsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtFdmVudE91dGNvbWV9IGZyb20gJy4uLy4uL3Jlc291cmNlcy9pbnRlcmZhY2UvZXZlbnQtb3V0Y29tZSc7XG5pbXBvcnQge0NoYW5nZWRGaWVsZHN9IGZyb20gJy4uLy4uL2RhdGEtZmllbGRzL21vZGVscy9jaGFuZ2VkLWZpZWxkcyc7XG5pbXBvcnQge1NldERhdGFFdmVudE91dGNvbWV9IGZyb20gJy4uL21vZGVsL2V2ZW50LW91dGNvbWVzL2RhdGEtb3V0Y29tZXMvc2V0LWRhdGEtZXZlbnQtb3V0Y29tZSc7XG5pbXBvcnQge0NoYW5nZWRGaWVsZHNNYXB9IGZyb20gJy4vaW50ZXJmYWNlcy9jaGFuZ2VkLWZpZWxkcy1tYXAnO1xuaW1wb3J0IHtFdmVudENvbnN0YW50c30gZnJvbSAnLi4vbW9kZWwvZXZlbnQtY29uc3RhbnRzJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBFdmVudFNlcnZpY2Uge1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgfVxuXG4gICAgcHVibGljIHBhcnNlQ2hhbmdlZEZpZWxkc0Zyb21PdXRjb21lVHJlZShvdXRjb21lOiBFdmVudE91dGNvbWUpOiBDaGFuZ2VkRmllbGRzTWFwIHtcbiAgICAgICAgY29uc3QgY2hhbmdlZEZpZWxkc01hcDogQ2hhbmdlZEZpZWxkc01hcCA9IHt9O1xuICAgICAgICBpZiAoISFvdXRjb21lLm91dGNvbWVzICYmIG91dGNvbWUub3V0Y29tZXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMucGFyc2VDaGFuZ2VkRmllbGRzRnJvbU91dGNvbWVUcmVlUmVjdXJzaXZlKG91dGNvbWUub3V0Y29tZXMsIGNoYW5nZWRGaWVsZHNNYXApO1xuICAgICAgICB9IGVsc2UgcmV0dXJuIGNoYW5nZWRGaWVsZHNNYXA7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwYXJzZUNoYW5nZWRGaWVsZHNGcm9tT3V0Y29tZVRyZWVSZWN1cnNpdmUob3V0Y29tZXM6IEFycmF5PEV2ZW50T3V0Y29tZT4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlZEZpZWxkc01hcDogQ2hhbmdlZEZpZWxkc01hcCk6IENoYW5nZWRGaWVsZHNNYXAge1xuICAgICAgICBvdXRjb21lcy5mb3JFYWNoKGNoaWxkT3V0Y29tZSA9PiB7XG4gICAgICAgICAgICBpZiAoRXZlbnRDb25zdGFudHMuQ0hBTkdFRF9GSUVMRFMgaW4gY2hpbGRPdXRjb21lXG4gICAgICAgICAgICAgICAgJiYgISEoY2hpbGRPdXRjb21lIGFzIFNldERhdGFFdmVudE91dGNvbWUpLmFDYXNlXG4gICAgICAgICAgICAgICAgJiYgISEoY2hpbGRPdXRjb21lIGFzIFNldERhdGFFdmVudE91dGNvbWUpLnRhc2spIHtcbiAgICAgICAgICAgICAgICBjb25zdCBzZXREYXRhT3V0Y29tZTogU2V0RGF0YUV2ZW50T3V0Y29tZSA9IGNoaWxkT3V0Y29tZSBhcyBTZXREYXRhRXZlbnRPdXRjb21lO1xuICAgICAgICAgICAgICAgIGNvbnN0IG91dGNvbWVDaGFuZ2VkRmllbGRzOiBDaGFuZ2VkRmllbGRzID0gKGNoaWxkT3V0Y29tZSBhcyBTZXREYXRhRXZlbnRPdXRjb21lKS5jaGFuZ2VkRmllbGRzLmNoYW5nZWRGaWVsZHM7XG4gICAgICAgICAgICAgICAgY29uc3QgY2FzZUlkID0gc2V0RGF0YU91dGNvbWUuYUNhc2Uuc3RyaW5nSWQ7XG4gICAgICAgICAgICAgICAgaWYgKCFPYmplY3Qua2V5cyhjaGFuZ2VkRmllbGRzTWFwKS5pbmNsdWRlcyhjYXNlSWQpKSB7XG4gICAgICAgICAgICAgICAgICAgIGNoYW5nZWRGaWVsZHNNYXBbY2FzZUlkXSA9IHt9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjb25zdCB0YXNrSWQgPSBzZXREYXRhT3V0Y29tZS50YXNrLnN0cmluZ0lkO1xuICAgICAgICAgICAgICAgIGlmICghT2JqZWN0LmtleXMoY2hhbmdlZEZpZWxkc01hcFtjYXNlSWRdKS5pbmNsdWRlcyh0YXNrSWQpKSB7XG4gICAgICAgICAgICAgICAgICAgIGNoYW5nZWRGaWVsZHNNYXBbY2FzZUlkXVt0YXNrSWRdID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGFza0lkXG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIE9iamVjdC5rZXlzKG91dGNvbWVDaGFuZ2VkRmllbGRzKS5mb3JFYWNoKGZpZWxkSWQgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LmtleXMoY2hhbmdlZEZpZWxkc01hcFtjYXNlSWRdW3Rhc2tJZF0pLmluY2x1ZGVzKGZpZWxkSWQpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBPYmplY3Qua2V5cyhvdXRjb21lQ2hhbmdlZEZpZWxkc1tmaWVsZElkXSkuZm9yRWFjaChhdHRyaWJ1dGUgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYW5nZWRGaWVsZHNNYXBbY2FzZUlkXVt0YXNrSWRdW2ZpZWxkSWRdW2F0dHJpYnV0ZV0gPSBvdXRjb21lQ2hhbmdlZEZpZWxkc1tmaWVsZElkXVthdHRyaWJ1dGVdO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjaGFuZ2VkRmllbGRzTWFwW2Nhc2VJZF1bdGFza0lkXVtmaWVsZElkXSA9IHNldERhdGFPdXRjb21lLmNoYW5nZWRGaWVsZHMuY2hhbmdlZEZpZWxkc1tmaWVsZElkXTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCEhY2hpbGRPdXRjb21lLm91dGNvbWVzICYmIGNoaWxkT3V0Y29tZS5vdXRjb21lcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5wYXJzZUNoYW5nZWRGaWVsZHNGcm9tT3V0Y29tZVRyZWVSZWN1cnNpdmUoY2hpbGRPdXRjb21lLm91dGNvbWVzLCBjaGFuZ2VkRmllbGRzTWFwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBjaGFuZ2VkRmllbGRzTWFwO1xuICAgIH1cblxufVxuIl19
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy1jb3JlL3NyYy9saWIvZXZlbnQvc2VydmljZXMvZXZlbnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBS3pDLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQzs7QUFLeEQsTUFBTSxPQUFPLFlBQVk7SUFFckI7SUFDQSxDQUFDO0lBRU0saUNBQWlDLENBQUMsT0FBcUI7UUFDMUQsTUFBTSxnQkFBZ0IsR0FBcUIsRUFBRSxDQUFDO1FBQzlDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ25ELE9BQU8sSUFBSSxDQUFDLDBDQUEwQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztTQUM5Rjs7WUFBTSxPQUFPLGdCQUFnQixDQUFDO0lBQ25DLENBQUM7SUFFTywwQ0FBMEMsQ0FBQyxRQUE2QixFQUM3QixnQkFBa0M7UUFDakYsUUFBUSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsRUFBRTtZQUM1QixJQUFJLGNBQWMsQ0FBQyxjQUFjLElBQUksWUFBWTttQkFDMUMsQ0FBQyxDQUFFLFlBQW9DLENBQUMsS0FBSzttQkFDN0MsQ0FBQyxDQUFFLFlBQW9DLENBQUMsSUFBSSxFQUFFO2dCQUNqRCxNQUFNLGNBQWMsR0FBd0IsWUFBbUMsQ0FBQztnQkFDaEYsTUFBTSxvQkFBb0IsR0FBbUIsWUFBb0MsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDO2dCQUM5RyxNQUFNLE1BQU0sR0FBRyxjQUFjLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztnQkFDN0MsSUFBSSxDQUFDLE1BQU0s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WTs4R0FBWixZQUFZLGNBRlQsTUFBTTs0RkFFVCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0V2ZW50T3V0Y29tZX0gZnJvbSAnLi4vLi4vcmVzb3VyY2VzL2ludGVyZmFjZS9ldmVudC1vdXRjb21lJztcbmltcG9ydCB7Q2hhbmdlZEZpZWxkcywgRnJvbnRBY3Rpb259IGZyb20gJy4uLy4uL2RhdGEtZmllbGRzL21vZGVscy9jaGFuZ2VkLWZpZWxkcyc7XG5pbXBvcnQge1NldERhdGFFdmVudE91dGNvbWV9IGZyb20gJy4uL21vZGVsL2V2ZW50LW91dGNvbWVzL2RhdGEtb3V0Y29tZXMvc2V0LWRhdGEtZXZlbnQtb3V0Y29tZSc7XG5pbXBvcnQge0NoYW5nZWRGaWVsZHNNYXB9IGZyb20gJy4vaW50ZXJmYWNlcy9jaGFuZ2VkLWZpZWxkcy1tYXAnO1xuaW1wb3J0IHtFdmVudENvbnN0YW50c30gZnJvbSAnLi4vbW9kZWwvZXZlbnQtY29uc3RhbnRzJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBFdmVudFNlcnZpY2Uge1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgfVxuXG4gICAgcHVibGljIHBhcnNlQ2hhbmdlZEZpZWxkc0Zyb21PdXRjb21lVHJlZShvdXRjb21lOiBFdmVudE91dGNvbWUpOiBDaGFuZ2VkRmllbGRzTWFwIHtcbiAgICAgICAgY29uc3QgY2hhbmdlZEZpZWxkc01hcDogQ2hhbmdlZEZpZWxkc01hcCA9IHt9O1xuICAgICAgICBpZiAoISFvdXRjb21lLm91dGNvbWVzICYmIG91dGNvbWUub3V0Y29tZXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMucGFyc2VDaGFuZ2VkRmllbGRzRnJvbU91dGNvbWVUcmVlUmVjdXJzaXZlKG91dGNvbWUub3V0Y29tZXMsIGNoYW5nZWRGaWVsZHNNYXApO1xuICAgICAgICB9IGVsc2UgcmV0dXJuIGNoYW5nZWRGaWVsZHNNYXA7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwYXJzZUNoYW5nZWRGaWVsZHNGcm9tT3V0Y29tZVRyZWVSZWN1cnNpdmUob3V0Y29tZXM6IEFycmF5PEV2ZW50T3V0Y29tZT4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlZEZpZWxkc01hcDogQ2hhbmdlZEZpZWxkc01hcCk6IENoYW5nZWRGaWVsZHNNYXAge1xuICAgICAgICBvdXRjb21lcy5mb3JFYWNoKGNoaWxkT3V0Y29tZSA9PiB7XG4gICAgICAgICAgICBpZiAoRXZlbnRDb25zdGFudHMuQ0hBTkdFRF9GSUVMRFMgaW4gY2hpbGRPdXRjb21lXG4gICAgICAgICAgICAgICAgJiYgISEoY2hpbGRPdXRjb21lIGFzIFNldERhdGFFdmVudE91dGNvbWUpLmFDYXNlXG4gICAgICAgICAgICAgICAgJiYgISEoY2hpbGRPdXRjb21lIGFzIFNldERhdGFFdmVudE91dGNvbWUpLnRhc2spIHtcbiAgICAgICAgICAgICAgICBjb25zdCBzZXREYXRhT3V0Y29tZTogU2V0RGF0YUV2ZW50T3V0Y29tZSA9IGNoaWxkT3V0Y29tZSBhcyBTZXREYXRhRXZlbnRPdXRjb21lO1xuICAgICAgICAgICAgICAgIGNvbnN0IG91dGNvbWVDaGFuZ2VkRmllbGRzOiBDaGFuZ2VkRmllbGRzID0gKGNoaWxkT3V0Y29tZSBhcyBTZXREYXRhRXZlbnRPdXRjb21lKS5jaGFuZ2VkRmllbGRzLmNoYW5nZWRGaWVsZHM7XG4gICAgICAgICAgICAgICAgY29uc3QgY2FzZUlkID0gc2V0RGF0YU91dGNvbWUuYUNhc2Uuc3RyaW5nSWQ7XG4gICAgICAgICAgICAgICAgaWYgKCFPYmplY3Qua2V5cyhjaGFuZ2VkRmllbGRzTWFwKS5pbmNsdWRlcyhjYXNlSWQpKSB7XG4gICAgICAgICAgICAgICAgICAgIGNoYW5nZWRGaWVsZHNNYXBbY2FzZUlkXSA9IHt9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjb25zdCB0YXNrSWQgPSBzZXREYXRhT3V0Y29tZS50YXNrLnN0cmluZ0lkO1xuICAgICAgICAgICAgICAgIGlmICghT2JqZWN0LmtleXMoY2hhbmdlZEZpZWxkc01hcFtjYXNlSWRdKS5pbmNsdWRlcyh0YXNrSWQpKSB7XG4gICAgICAgICAgICAgICAgICAgIGNoYW5nZWRGaWVsZHNNYXBbY2FzZUlkXVt0YXNrSWRdID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGFza0lkXG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIE9iamVjdC5rZXlzKG91dGNvbWVDaGFuZ2VkRmllbGRzKS5mb3JFYWNoKGZpZWxkSWQgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LmtleXMoY2hhbmdlZEZpZWxkc01hcFtjYXNlSWRdW3Rhc2tJZF0pLmluY2x1ZGVzKGZpZWxkSWQpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBPYmplY3Qua2V5cyhvdXRjb21lQ2hhbmdlZEZpZWxkc1tmaWVsZElkXSkuZm9yRWFjaChhdHRyaWJ1dGUgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYW5nZWRGaWVsZHNNYXBbY2FzZUlkXVt0YXNrSWRdW2ZpZWxkSWRdW2F0dHJpYnV0ZV0gPSBvdXRjb21lQ2hhbmdlZEZpZWxkc1tmaWVsZElkXVthdHRyaWJ1dGVdO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjaGFuZ2VkRmllbGRzTWFwW2Nhc2VJZF1bdGFza0lkXVtmaWVsZElkXSA9IHNldERhdGFPdXRjb21lLmNoYW5nZWRGaWVsZHMuY2hhbmdlZEZpZWxkc1tmaWVsZElkXTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCEhY2hpbGRPdXRjb21lLm91dGNvbWVzICYmIGNoaWxkT3V0Y29tZS5vdXRjb21lcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5wYXJzZUNoYW5nZWRGaWVsZHNGcm9tT3V0Y29tZVRyZWVSZWN1cnNpdmUoY2hpbGRPdXRjb21lLm91dGNvbWVzLCBjaGFuZ2VkRmllbGRzTWFwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBjaGFuZ2VkRmllbGRzTWFwO1xuICAgIH1cblxuICAgIHB1YmxpYyBwYXJzZUZyb250QWN0aW9uc0Zyb21PdXRjb21lVHJlZShvdXRjb21lOiBFdmVudE91dGNvbWUpOiBBcnJheTxGcm9udEFjdGlvbj4ge1xuICAgICAgICBjb25zdCBmcm9udEFjdGlvbnM6IEFycmF5PEZyb250QWN0aW9uPiA9IFtdO1xuICAgICAgICBpZiAoISFvdXRjb21lLm91dGNvbWVzICYmIG91dGNvbWUub3V0Y29tZXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMucGFyc2VGcm9udEFjdGlvbnNGcm9tT3V0Y29tZVRyZWVSZWN1cnNpdmUob3V0Y29tZS5vdXRjb21lcywgZnJvbnRBY3Rpb25zKTtcbiAgICAgICAgfSBlbHNlIHJldHVybiBmcm9udEFjdGlvbnM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwYXJzZUZyb250QWN0aW9uc0Zyb21PdXRjb21lVHJlZVJlY3Vyc2l2ZShvdXRjb21lczogQXJyYXk8RXZlbnRPdXRjb21lPixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyb250QWN0aW9uczogQXJyYXk8RnJvbnRBY3Rpb24+KTogQXJyYXk8RnJvbnRBY3Rpb24+IHtcbiAgICAgICAgb3V0Y29tZXMuZm9yRWFjaChjaGlsZE91dGNvbWUgPT4ge1xuICAgICAgICAgICAgaWYgKEV2ZW50Q29uc3RhbnRzLkZST05UX0FDVElPTlMgaW4gY2hpbGRPdXRjb21lKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgY2hpbGRGcm9udEFjdGlvbnM6IEFycmF5PEZyb250QWN0aW9uPiA9IChjaGlsZE91dGNvbWUgYXMgRXZlbnRPdXRjb21lKS5mcm9udEFjdGlvbnM7XG5cbiAgICAgICAgICAgICAgICBpZiAoISFjaGlsZEZyb250QWN0aW9ucykge1xuICAgICAgICAgICAgICAgICAgICBmcm9udEFjdGlvbnMucHVzaCguLi5jaGlsZEZyb250QWN0aW9ucylcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoISFjaGlsZE91dGNvbWUub3V0Y29tZXMgJiYgY2hpbGRPdXRjb21lLm91dGNvbWVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICB0aGlzLnBhcnNlRnJvbnRBY3Rpb25zRnJvbU91dGNvbWVUcmVlUmVjdXJzaXZlKGNoaWxkT3V0Y29tZS5vdXRjb21lcywgZnJvbnRBY3Rpb25zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBmcm9udEFjdGlvbnM7XG4gICAgfVxuXG59XG4iXX0=
@@ -328,4 +328,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
328
328
  type: Inject,
329
329
  args: [NAE_LOAD_FILTER_DIALOG_COMPONENT]
330
330
  }] }]; } });
331
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1maWx0ZXJzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL2ZpbHRlci91c2VyLWZpbHRlcnMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFFLFVBQVUsRUFBYSxRQUFRLEVBQU8sTUFBTSxlQUFlLENBQUM7QUFDNUUsT0FBTyxFQUFhLEVBQUUsRUFBRSxhQUFhLEVBQVUsTUFBTSxNQUFNLENBQUM7QUFNNUQsT0FBTyxFQUFTLElBQUksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNwRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFJbEUsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFHNUUsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFPbkUsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRWhELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQU10RCxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUc1RCxPQUFPLEVBQUMsZ0NBQWdDLEVBQUUsZ0NBQWdDLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7Ozs7OztBQUU5Rzs7R0FFRztBQUlILE1BQU0sT0FBTyxrQkFBa0I7SUFLM0IsWUFBc0IsWUFBaUMsRUFDakMsWUFBaUMsRUFDakMsZUFBK0IsRUFDL0IsaUJBQW1DLEVBQ25DLGdCQUFpQyxFQUNqQyxJQUFtQixFQUNuQix3QkFBaUQsRUFDakQsT0FBa0IsRUFDb0Msb0JBQTRDLEVBQzVDLG9CQUE0QztRQVRsRyxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFDakMsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBQ2pDLG9CQUFlLEdBQWYsZUFBZSxDQUFnQjtRQUMvQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBQ25DLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBaUI7UUFDakMsU0FBSSxHQUFKLElBQUksQ0FBZTtRQUNuQiw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQXlCO1FBQ2pELFlBQU8sR0FBUCxPQUFPLENBQVc7UUFDb0MseUJBQW9CLEdBQXBCLG9CQUFvQixDQUF3QjtRQUM1Qyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXdCO1FBQ3BILElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxhQUFhLENBQVUsQ0FBQyxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsbUJBQW1CLENBQUMscUJBQXFCLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDbkYsSUFBSSxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUM7WUFDdEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUFFO1lBQ1AsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsMkNBQTJDLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDcEUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsWUFBb0I7UUFDOUIsTUFBTSxPQUFPLEdBQUcsSUFBSSxhQUFhLENBQVUsQ0FBQyxDQUFDLENBQUM7UUFDOUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBcUMsRUFBRSxFQUFFO1lBQzNGLElBQUksUUFBUSxDQUFDLE9BQU8sRUFBRTtnQkFDbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsNEJBQTRCLEVBQUUsUUFBUSxDQUFDLENBQUM7Z0JBQ3hELE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ25CLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQzthQUN0QjtpQkFBTTtnQkFDSCxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyw0QkFBNEIsRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFDeEQsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDcEIsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO2FBQ3RCO1FBQ0wsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFO1lBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsMEJBQTBCLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDL0MsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNwQixPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDdkIsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7O09BV0c7SUFDSSxJQUFJLENBQUMsVUFBc0IsRUFBRSxnQkFBeUI7UUFDekQsSUFBSSxnQkFBZ0IsRUFBRSxJQUFJLEtBQUssVUFBVSxDQUFDLElBQUksRUFBRTtZQUM1QyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxpRkFBaUYsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1lBQ3JILE1BQU0sS0FBSyxDQUFDLGlGQUFpRixDQUFDLENBQUM7U0FDbEc7UUFFRCxJQUFJLGlCQUFpQixHQUFHLFlBQVksQ0FBQyxhQUFhLENBQUM7WUFDL0MsT0FBTyxFQUFFO2dCQUNMLFVBQVUsRUFBRSxtQkFBbUIsQ0FBQyxxQkFBcUI7YUFDeEQ7WUFDRCxLQUFLLEVBQUUsV0FBVyxtQkFBbUIsQ0FBQyxvQkFBb0IsYUFBYSxVQUFVLEVBQUU7U0FDdEYsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLENBQUMsZ0JBQWdCLEVBQUU7WUFDcEIsaUJBQWlCLEdBQUcsaUJBQWlCLENBQUMsS0FBSyxDQUFDLGdCQUFnQixFQUFFLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNwRjtRQUVELE1BQU0sTUFBTSxHQUFHLElBQUksYUFBYSxDQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ3pDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtZQUNyRCxVQUFVLEVBQUUsbUJBQW1CO1lBQy9CLElBQUksRUFBRTtnQkFDRixNQUFNLEVBQUUsaUJBQWlCO2FBQ0Q7U0FDL0IsQ0FBQyxDQUFDO1FBQ0gsR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNoQyxJQUFJLEtBQUssQ0FBQyxPQUFPLEtBQUssK0JBQStCLEVBQUU7Z0JBQ25ELE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQzthQUNqQjtpQkFBTTtnQkFDSCxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUMzQjtZQUNELE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN0QixDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQTRCRztJQUNJLElBQUksQ0FBQyxhQUE0QixFQUM1QixXQUFrQyxFQUNsQyxnQkFBb0QsRUFDcEQsTUFBZSxFQUNmLGlCQUEyQyxFQUFFLEVBQzdDLHFCQUFxQixHQUFHLElBQUksRUFDNUIsa0JBQWtCLEdBQUcsSUFBSSxFQUN6Qix5QkFBMkMsSUFBSTtRQUN2RCxJQUFJLENBQUMsYUFBYSxDQUFDLHdCQUF3QixFQUFFO1lBQ3pDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLHlGQUF5RixDQUFDLENBQUM7WUFDMUcsT0FBTyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDeEI7UUFFRCxNQUFNLE1BQU0sR0FBRyxJQUFJLGFBQWEsQ0FBc0IsQ0FBQyxDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLDBCQUEwQixDQUMzQixhQUFhLEVBQ2IsV0FBVyxFQUNYLGdCQUFnQixFQUNoQixNQUFNLEVBQ04sY0FBYyxFQUNkLHFCQUFxQixFQUNyQixrQkFBa0IsRUFDbEIsc0JBQXNCLENBQ3pCLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxFQUFFO1lBQ3ZCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtnQkFDckQsVUFBVSxFQUFFLG1CQUFtQjtnQkFDL0IsSUFBSSxFQUFFO29CQUNGLGVBQWUsRUFBRSxZQUFZO2lCQUNMO2FBQy9CLENBQUMsQ0FBQztZQUNILEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ2hDLElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSywrQkFBK0IsRUFBRTtvQkFDbkQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztvQkFDMUIsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO2lCQUNqQjtxQkFBTTtvQkFDSCxNQUFNLENBQUMsSUFBSSxDQUFDO3dCQUNSLFlBQVk7d0JBQ1osV0FBVyxFQUFFLENBQUMsR0FBRyxXQUFXLENBQUM7d0JBQzdCLFlBQVksRUFBRSxNQUFNO3dCQUNwQixjQUFjLEVBQUUsSUFBSSxDQUFDLCtCQUErQixDQUNoRCxhQUFhLEVBQ2IsZ0JBQWdCLEVBQ2hCLHFCQUFxQixFQUNyQixrQkFBa0IsQ0FDckI7d0JBQ0QsTUFBTSxFQUFFLFlBQVksQ0FBQyxTQUFTLENBQUMsRUFBQyxLQUFLLEVBQUUsYUFBYSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFDLEVBQUUsYUFBYSxDQUFDLFVBQVUsQ0FBQztxQkFDN0csQ0FBQyxDQUFDO2lCQUNOO2dCQUNELE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN0QixDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0F3Qkc7SUFDSSwwQkFBMEIsQ0FBQyxhQUE0QixFQUM1QixXQUFrQyxFQUNsQyxnQkFBb0QsRUFDcEQsTUFBZSxFQUNmLGlCQUEyQyxFQUFFLEVBQzdDLHFCQUFxQixHQUFHLElBQUksRUFDNUIsa0JBQWtCLEdBQUcsSUFBSSxFQUN6Qix5QkFBMkMsSUFBSTtRQUM3RSxNQUFNLE1BQU0sR0FBRyxJQUFJLGFBQWEsQ0FBUyxDQUFDLENBQUMsQ0FBQztRQUM1QyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRTtZQUN0QixJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQztnQkFDekIsS0FBSyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZTtnQkFDdEMsS0FBSyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUTthQUNsQyxDQUFDLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFFO2dCQUN0QixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDO29CQUNsRCxJQUFJLEVBQUU7d0JBQ0YsRUFBRSxFQUFHLFVBQVUsQ0FBQyxPQUFrQyxDQUFDLEtBQUssQ0FBQyxRQUFRO3FCQUNwRTtpQkFDSixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7b0JBQ2pCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUU7d0JBQ25CLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0VBQWdFLENBQUMsQ0FBQztxQkFDckY7b0JBRUQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxLQUFLLG1CQUFtQixDQUFDLGlDQUFpQyxDQUFDLENBQUM7b0JBQ3hILElBQUksUUFBUSxLQUFLLFNBQVMsRUFBRTt3QkFDeEIsTUFBTSxJQUFJLEtBQUssQ0FBQyw0Q0FBNEMsbUJBQW1CLENBQUMsaUNBQ2hGLHdCQUF3QixDQUFDLENBQUM7cUJBQzdCO29CQUVELE1BQU0sV0FBVyxHQUFHO3dCQUNoQixDQUFDLG1CQUFtQixDQUFDLG9CQUFvQixDQUFDLEVBQUU7NEJBQ3hDLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxlQUFlOzRCQUN2QyxLQUFLLEVBQUUsYUFBYSxDQUFDLFVBQVU7eUJBQ2xDO3dCQUNELENBQUMsbUJBQW1CLENBQUMsZUFBZSxDQUFDLEVBQUU7NEJBQ25DLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxNQUFNOzRCQUM5QixLQUFLLEVBQUUsYUFBYSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsS0FBSzs0QkFDOUMsV0FBVzs0QkFDWCxjQUFjLEVBQUUsSUFBSSxDQUFDLCtCQUErQixDQUNoRCxhQUFhLEVBQ2IsZ0JBQWdCLEVBQ2hCLHFCQUFxQixFQUNyQixrQkFBa0IsQ0FDckI7eUJBQ0o7cUJBQ0osQ0FBQztvQkFFRixJQUFJLHVCQUF1QixDQUFDO29CQUM1QixJQUFJLHNCQUFzQixLQUFLLElBQUksSUFBSSxzQkFBc0IsS0FBSyxTQUFTLEVBQUU7d0JBQ3pFLHVCQUF1QixHQUFHLHNCQUFzQixDQUFDLHNCQUFzQixFQUNuRSxtQkFBbUIsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO3FCQUNwRDtvQkFFRCxJQUFJLHVCQUF1QixLQUFLLFNBQVMsRUFBRTt3QkFDdkMsV0FBVyxDQUFDLG1CQUFtQixDQUFDLDhCQUE4QixDQUFDLEdBQUc7NEJBQzlELElBQUksRUFBRSxpQkFBaUIsQ0FBQyxJQUFJOzRCQUM1QixLQUFLLEVBQUUsdUJBQXVCLENBQUMsS0FBSzt5QkFDdkMsQ0FBQztxQkFDTDt5QkFBTSxJQUFJLE1BQU0sS0FBSyxTQUFTLElBQUksTUFBTSxLQUFLLEVBQUUsRUFBRTt3QkFDOUMsV0FBVyxDQUFDLG1CQUFtQixDQUFDLHVCQUF1QixDQUFDLEdBQUc7NEJBQ3ZELElBQUksRUFBRSxpQkFBaUIsQ0FBQyxJQUFJOzRCQUM1QixLQUFLLEVBQUUsTUFBTTt5QkFDaEIsQ0FBQztxQkFDTDtvQkFFRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFO3dCQUMvQixDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRTs0QkFDakIsR0FBRyxXQUFXOzRCQUNkLEdBQUcsY0FBYzt5QkFDcEI7cUJBQ0osRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFO3dCQUN2QyxJQUFJLENBQUMsT0FBTyxFQUFFOzRCQUNWLE1BQU0sSUFBSSxLQUFLLENBQUMsMENBQTBDLENBQUMsQ0FBQzt5QkFDL0Q7d0JBRUQsTUFBTSxDQUFDLElBQUksQ0FBRSxVQUFVLENBQUMsT0FBa0MsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7d0JBQzNFLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDdEIsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDUixDQUFDLENBQUMsQ0FBQztZQUNQLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxFQUFFLGtCQUFrQixDQUFDLENBQUM7UUFDdkIsT0FBTyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVTLGVBQWUsQ0FBQyxTQUFxQixFQUNyQixNQUFlLEVBQ2YsWUFBd0IsR0FBRyxFQUFFO1FBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLCtEQUNaLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLE1BQU0sR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQ25DLHNCQUFzQixDQUFDLENBQUM7SUFDNUIsQ0FBQztRQUN2QixJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLEVBQUU7WUFDcEUsV0FBVyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDNUMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsK0VBQStFO0lBQ3JFLG1CQUFtQixDQUFDLElBQVUsRUFBRSxJQUE0QixFQUFFLFNBQTJCO1FBQy9GLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLEVBQUU7WUFDbEUsSUFBSSxhQUFhLENBQUMsS0FBSyxFQUFFO2dCQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQywwQkFBMEIsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLElBQUksRUFBRSxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3BGLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3RCLE9BQU87YUFDVjtZQUVELElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDMUQsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsRUFBRTtvQkFDbEUsSUFBSSxhQUFhLENBQUMsS0FBSyxFQUFFO3dCQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQywwQkFBMEIsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLElBQUksRUFBRSxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7d0JBQ3BGLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7d0JBQ3RCLE9BQU87cUJBQ1Y7b0JBRUQsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDekIsQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUFFO29CQUNQLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLDBCQUEwQixJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO29CQUN0RSxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUMxQixDQUFDLENBQUMsQ0FBQztZQUNQLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRTtnQkFDUCxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQywrQkFBK0IsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQ2pGLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDMUIsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUU7WUFDUCxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQywwQkFBMEIsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztZQUN0RSxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVTLCtCQUErQixDQUFDLGFBQTRCLEVBQzVCLGdCQUFvRCxFQUNwRCxxQkFBOEIsRUFDOUIsa0JBQTJCO1FBQ2pFLE9BQU87WUFDSCxVQUFVLEVBQUUsYUFBYSxDQUFDLFVBQVU7WUFDcEMsaUJBQWlCLEVBQUUsYUFBYSxDQUFDLHVCQUF1QixFQUFFO1lBQzFELGdCQUFnQixFQUFFLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdkYsdUJBQXVCLEVBQUUscUJBQXFCO1lBQzlDLGtCQUFrQjtTQUNyQixDQUFDO0lBQ04sQ0FBQzs7Z0hBM1ZRLGtCQUFrQixrUkFhSyxnQ0FBZ0MsNkJBQ2hDLGdDQUFnQztvSEFkdkQsa0JBQWtCLGNBRmYsTUFBTTs0RkFFVCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOzswQkFjZ0IsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxnQ0FBZ0M7OzBCQUNuRCxRQUFROzswQkFBSSxNQUFNOzJCQUFDLGdDQUFnQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0LCBJbmplY3RhYmxlLCBPbkRlc3Ryb3ksIE9wdGlvbmFsLCBUeXBlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgb2YsIFJlcGxheVN1YmplY3QsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtDYXNlUmVzb3VyY2VTZXJ2aWNlfSBmcm9tICcuLi9yZXNvdXJjZXMvZW5naW5lLWVuZHBvaW50L2Nhc2UtcmVzb3VyY2Uuc2VydmljZSc7XG5pbXBvcnQge1Rhc2tSZXNvdXJjZVNlcnZpY2V9IGZyb20gJy4uL3Jlc291cmNlcy9lbmdpbmUtZW5kcG9pbnQvdGFzay1yZXNvdXJjZS5zZXJ2aWNlJztcbmltcG9ydCB7U2VhcmNoU2VydmljZX0gZnJvbSAnLi4vc2VhcmNoL3NlYXJjaC1zZXJ2aWNlL3NlYXJjaC5zZXJ2aWNlJztcbmltcG9ydCB7UHJvY2Vzc1NlcnZpY2V9IGZyb20gJy4uL3Byb2Nlc3MvcHJvY2Vzcy5zZXJ2aWNlJztcbmltcG9ydCB7TG9nZ2VyU2VydmljZX0gZnJvbSAnLi4vbG9nZ2VyL3NlcnZpY2VzL2xvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7ZmlsdGVyLCB0YWtlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1NpbXBsZUZpbHRlcn0gZnJvbSAnLi9tb2RlbHMvc2ltcGxlLWZpbHRlcic7XG5pbXBvcnQge2hhc0NvbnRlbnR9IGZyb20gJy4uL3V0aWxpdHkvcGFnaW5hdGlvbi9wYWdlLWhhcy1jb250ZW50JztcbmltcG9ydCB7VGFza30gZnJvbSAnLi4vcmVzb3VyY2VzL2ludGVyZmFjZS90YXNrJztcbmltcG9ydCB7Q2FsbENoYWluU2VydmljZX0gZnJvbSAnLi4vdXRpbGl0eS9jYWxsLWNoYWluL2NhbGwtY2hhaW4uc2VydmljZSc7XG5pbXBvcnQge1Rhc2tTZXREYXRhUmVxdWVzdEJvZHksIFRhc2tTZXREYXRhUmVxdWVzdEZpZWxkc30gZnJvbSAnLi4vcmVzb3VyY2VzL2ludGVyZmFjZS90YXNrLXNldC1kYXRhLXJlcXVlc3QtYm9keSc7XG5pbXBvcnQge0ZpZWxkVHlwZVJlc291cmNlfSBmcm9tICcuLi90YXNrLWNvbnRlbnQvbW9kZWwvZmllbGQtdHlwZS1yZXNvdXJjZSc7XG5pbXBvcnQge0NhdGVnb3J5fSBmcm9tICcuLi9zZWFyY2gvbW9kZWxzL2NhdGVnb3J5L2NhdGVnb3J5JztcbmltcG9ydCB7TmV0fSBmcm9tICcuLi9wcm9jZXNzL25ldCc7XG5pbXBvcnQge1VzZXJGaWx0ZXJDb25zdGFudHN9IGZyb20gJy4vbW9kZWxzL3VzZXItZmlsdGVyLWNvbnN0YW50cyc7XG5pbXBvcnQge1NpZGVNZW51U2l6ZX0gZnJvbSAnLi4vc2lkZS1tZW51L21vZGVscy9zaWRlLW1lbnUtc2l6ZSc7XG5pbXBvcnQge1NhdmVGaWx0ZXJJbmplY3Rpb25EYXRhfSBmcm9tICcuLi9zaWRlLW1lbnUvY29udGVudC1jb21wb25lbnRzL3NhdmUtZmlsdGVyL21vZGVsL3NhdmUtZmlsdGVyLWluamVjdGlvbi1kYXRhJztcbmltcG9ydCB7U2lkZU1lbnVTZXJ2aWNlfSBmcm9tICcuLi9zaWRlLW1lbnUvc2VydmljZXMvc2lkZS1tZW51LnNlcnZpY2UnO1xuaW1wb3J0IHtOQUVfTE9BRF9GSUxURVJfQ09NUE9ORU5ULCBOQUVfU0FWRV9GSUxURVJfQ09NUE9ORU5UfSBmcm9tICcuLi9zaWRlLW1lbnUvY29udGVudC1jb21wb25lbnRzL2luamVjdGlvbi10b2tlbnMnO1xuaW1wb3J0IHtDb21wb25lbnRUeXBlfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7TG9hZEZpbHRlckluamVjdGlvbkRhdGF9IGZyb20gJy4uL3NpZGUtbWVudS9jb250ZW50LWNvbXBvbmVudHMvbG9hZC1maWx0ZXIvbW9kZWwvbG9hZC1maWx0ZXItaW5qZWN0aW9uLWRhdGEnO1xuaW1wb3J0IHtGaWx0ZXJUeXBlfSBmcm9tICcuL21vZGVscy9maWx0ZXItdHlwZSc7XG5pbXBvcnQge0ZpbHRlcn0gZnJvbSAnLi9tb2RlbHMvZmlsdGVyJztcbmltcG9ydCB7TWVyZ2VPcGVyYXRvcn0gZnJvbSAnLi9tb2RlbHMvbWVyZ2Utb3BlcmF0b3InO1xuaW1wb3J0IHtTYXZlZEZpbHRlck1ldGFkYXRhfSBmcm9tICcuLi9zZWFyY2gvbW9kZWxzL3BlcnNpc3RhbmNlL3NhdmVkLWZpbHRlci1tZXRhZGF0YSc7XG5pbXBvcnQge0ZpbHRlck1ldGFkYXRhfSBmcm9tICcuLi9zZWFyY2gvbW9kZWxzL3BlcnNpc3RhbmNlL2ZpbHRlci1tZXRhZGF0YSc7XG5pbXBvcnQge0NyZWF0ZUNhc2VFdmVudE91dGNvbWV9IGZyb20gJy4uL2V2ZW50L21vZGVsL2V2ZW50LW91dGNvbWVzL2Nhc2Utb3V0Y29tZXMvY3JlYXRlLWNhc2UtZXZlbnQtb3V0Y29tZSc7XG5pbXBvcnQge0NhdGVnb3J5UmVzb2x2ZXJTZXJ2aWNlfSBmcm9tICcuLi9zZWFyY2gvY2F0ZWdvcnktZmFjdG9yeS9jYXRlZ29yeS1yZXNvbHZlci5zZXJ2aWNlJztcbmltcG9ydCB7RGF0YUdyb3VwfSBmcm9tICcuLi9yZXNvdXJjZXMvaW50ZXJmYWNlL2RhdGEtZ3JvdXBzJztcbmltcG9ydCB7Z2V0RmllbGRGcm9tRGF0YUdyb3Vwc30gZnJvbSAnLi4vdXRpbGl0eS9nZXQtZmllbGQnO1xuaW1wb3J0IHtFdmVudE91dGNvbWVNZXNzYWdlUmVzb3VyY2V9IGZyb20gJy4uL3Jlc291cmNlcy9pbnRlcmZhY2UvbWVzc2FnZS1yZXNvdXJjZSc7XG5pbXBvcnQge01hdERpYWxvZ30gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7TkFFX0xPQURfRklMVEVSX0RJQUxPR19DT01QT05FTlQsIE5BRV9TQVZFX0ZJTFRFUl9ESUFMT0dfQ09NUE9ORU5UfSBmcm9tICcuLi9kaWFsb2cvaW5qZWN0aW9uLXRva2Vucyc7XG5cbi8qKlxuICogU2VydmljZSB0aGF0IG1hbmFnZXMgZmlsdGVycyBjcmVhdGVkIGJ5IHVzZXJzIG9mIHRoZSBhcHBsaWNhdGlvbi5cbiAqL1xuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBVc2VyRmlsdGVyc1NlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuXG4gICAgcHJvdGVjdGVkIF9pbml0aWFsaXplZCQ6IFJlcGxheVN1YmplY3Q8Ym9vbGVhbj47XG4gICAgcHJvdGVjdGVkIF9maWx0ZXJOZXQ6IE5ldDtcblxuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBfY2FzZVNlcnZpY2U6IENhc2VSZXNvdXJjZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgcHJvdGVjdGVkIF90YXNrU2VydmljZTogVGFza1Jlc291cmNlU2VydmljZSxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX3Byb2Nlc3NTZXJ2aWNlOiBQcm9jZXNzU2VydmljZSxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2NhbGxDaGFpblNlcnZpY2U6IENhbGxDaGFpblNlcnZpY2UsXG4gICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9zaWRlTWVudVNlcnZpY2U6IFNpZGVNZW51U2VydmljZSxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2xvZzogTG9nZ2VyU2VydmljZSxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2NhdGVnb3J5UmVzb2x2ZXJTZXJ2aWNlOiBDYXRlZ29yeVJlc29sdmVyU2VydmljZSxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2RpYWxvZzogTWF0RGlhbG9nLFxuICAgICAgICAgICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoTkFFX1NBVkVfRklMVEVSX0RJQUxPR19DT01QT05FTlQpIHByb3RlY3RlZCBfc2F2ZUZpbHRlckNvbXBvbmVudDogQ29tcG9uZW50VHlwZTx1bmtub3duPixcbiAgICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE5BRV9MT0FEX0ZJTFRFUl9ESUFMT0dfQ09NUE9ORU5UKSBwcm90ZWN0ZWQgX2xvYWRGaWx0ZXJDb21wb25lbnQ6IENvbXBvbmVudFR5cGU8dW5rbm93bj4pIHtcbiAgICAgICAgdGhpcy5faW5pdGlhbGl6ZWQkID0gbmV3IFJlcGxheVN1YmplY3Q8Ym9vbGVhbj4oMSk7XG4gICAgICAgIHRoaXMuX3Byb2Nlc3NTZXJ2aWNlLmdldE5ldChVc2VyRmlsdGVyQ29uc3RhbnRzLkZJTFRFUl9ORVRfSURFTlRJRklFUikuc3Vic2NyaWJlKG5ldCA9PiB7XG4gICAgICAgICAgICB0aGlzLl9maWx0ZXJOZXQgPSBuZXQ7XG4gICAgICAgICAgICB0aGlzLl9pbml0aWFsaXplZCQubmV4dCh0cnVlKTtcbiAgICAgICAgfSwgZXJyb3IgPT4ge1xuICAgICAgICAgICAgdGhpcy5fbG9nLmVycm9yKGBGaWx0ZXIgbmV0IGNvdWxkIG5vdCBiZSBsb2FkZWQgd2l0aCBlcnJvcmAsIGVycm9yKTtcbiAgICAgICAgICAgIHRoaXMuX2luaXRpYWxpemVkJC5uZXh0KGZhbHNlKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2luaXRpYWxpemVkJC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIERlbGV0ZXMgdGhlIHNwZWNpZmllZCBmaWx0ZXIgY2FzZSBieSBpdHMgY2FzZSBpZC5cbiAgICAgKiBAcGFyYW0gZmlsdGVyQ2FzZUlkIFN0cmluZ0lkIG9mIHRoZSBmaWx0ZXIgY2FzZSB0aGF0IHNob3VsZCBiZSBkZWxldGVkXG4gICAgICogQHJldHVybnMgYW4gT2JzZXJ2YWJsZSB0aGF0IGVtaXRzIGB0cnVlYCBpZiB0aGUgY2FzZSB3YXMgc3VjY2Vzc2Z1bGx5IGRlbGV0ZWQgYW5kIGBmYWxzZWAgb3RoZXJ3aXNlXG4gICAgICovXG4gICAgcHVibGljIGRlbGV0ZShmaWx0ZXJDYXNlSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICBjb25zdCByZXN1bHQkID0gbmV3IFJlcGxheVN1YmplY3Q8Ym9vbGVhbj4oMSk7XG4gICAgICAgIHRoaXMuX2Nhc2VTZXJ2aWNlLmRlbGV0ZUNhc2UoZmlsdGVyQ2FzZUlkKS5zdWJzY3JpYmUoKHJlc3BvbnNlOiBFdmVudE91dGNvbWVNZXNzYWdlUmVzb3VyY2UpID0+IHtcbiAgICAgICAgICAgIGlmIChyZXNwb25zZS5zdWNjZXNzKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fbG9nLmRlYnVnKCdGaWx0ZXIgY2FzZSBkZWxldGUgc3VjY2VzcycsIHJlc3BvbnNlKTtcbiAgICAgICAgICAgICAgICByZXN1bHQkLm5leHQodHJ1ZSk7XG4gICAgICAgICAgICAgICAgcmVzdWx0JC5jb21wbGV0ZSgpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9sb2cuZXJyb3IoJ0ZpbHRlciBjYXNlIGRlbGV0ZSBmYWlsdXJlJywgcmVzcG9uc2UpO1xuICAgICAgICAgICAgICAgIHJlc3VsdCQubmV4dChmYWxzZSk7XG4gICAgICAgICAgICAgICAgcmVzdWx0JC5jb21wbGV0ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LCBlID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2xvZy5lcnJvcignRmlsdGVyIGNhc2UgZGVsZXRlIGVycm9yJywgZSk7XG4gICAgICAgICAgICByZXN1bHQkLm5leHQoZmFsc2UpO1xuICAgICAgICAgICAgcmVzdWx0JC5jb21wbGV0ZSgpO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHJlc3VsdCQuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogT3BlbnMgYSBzaWRlIG1lbnUgd2l0aCBmaWx0ZXIgY2FzZXMgYW5kIGFsbG93cyB0aGUgdXNlciB0byBzZWxlY3Qgb25lIG9mIHRoZW0uXG4gICAgICpcbiAgICAgKiBUaGUgZGVmYXVsdCBmaWx0ZXIgY29uc3RyYWlucyB0aGUgY2FzZXMgdG8gYmUgaW5zdGFuY2VzIG9mIHRoZSBmaWx0ZXIgcHJvY2VzcyBhbmQgdG8gYmUgZmlsdGVycyBvZiB0aGUgc3BlY2lmaWVkIHR5cGVcbiAgICAgKiAoYENhc2VgIG9yIGBUYXNrYCkuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZmlsdGVyVHlwZSB3aGV0aGVyIGBDYXNlYCBvciBgVGFza2AgdXNlciBmaWx0ZXJzIHNob3VsZCBiZSBsb2FkZWRcbiAgICAgKiBAcGFyYW0gYWRkaXRpb25hbEZpbHRlciBhZGRpdGlvbmFsIGNvbnN0cmFpbnMgb24gdGhlIGRpc3BsYXllZCB1c2VyIGZpbHRlciBjYXNlcy4gTXVzdCBiZSBvZiB0eXBlIGBDYXNlYFxuICAgICAqIG90aGVyd2lzZSB0aGUgbWV0aG9kIHRocm93cyBhbiBlcnJvci4gSWYgaXQgaXMgYSB7QGxpbmsgTWVyZ2VkRmlsdGVyfSBtdXN0IHVzZSB0aGUgYEFORGAge0BsaW5rIE1lcmdlT3BlcmF0b3J9IG90aGVyd2lzZSBhbiBlcnJvclxuICAgICAqIHdpbGwgYmUgdGhyb3duXG4gICAgICogQHJldHVybnMgYW4gT2JzZXJ2YWJsZSB0aGF0IGVtaXRzIHRoZSBkYXRhIG5lY2Vzc2FyeSB0byByZWNvbnN0cnVjdCB0aGUgc2VsZWN0ZWQgZmlsdGVyLCBvciBgdW5kZWZpbmVkYCBpZiBubyBmaWx0ZXIgd2FzIHNlbGVjdGVkXG4gICAgICovXG4gICAgcHVibGljIGxvYWQoZmlsdGVyVHlwZTogRmlsdGVyVHlwZSwgYWRkaXRpb25hbEZpbHRlcj86IEZpbHRlcik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIGlmIChhZGRpdGlvbmFsRmlsdGVyPy50eXBlID09PSBGaWx0ZXJUeXBlLlRBU0spIHtcbiAgICAgICAgICAgIHRoaXMuX2xvZy5lcnJvcignVGhlIGFkZGl0aW9uYWwgZmlsdGVyIGFwcGxpZWQgdG8gVXNlckZpbHRlcnNTZXJ2aWNlLmxvYWQoKSBtdXN0IGJlIG9mIHR5cGUgQ2FzZScsIGFkZGl0aW9uYWxGaWx0ZXIpO1xuICAgICAgICAgICAgdGhyb3cgRXJyb3IoJ1RoZSBhZGRpdGlvbmFsIGZpbHRlciBhcHBsaWVkIHRvIFVzZXJGaWx0ZXJzU2VydmljZS5sb2FkKCkgbXVzdCBiZSBvZiB0eXBlIENhc2UnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBmaWx0ZXJDYXNlc0ZpbHRlciA9IFNpbXBsZUZpbHRlci5mcm9tQ2FzZVF1ZXJ5KHtcbiAgICAgICAgICAgIHByb2Nlc3M6IHtcbiAgICAgICAgICAgICAgICBpZGVudGlmaWVyOiBVc2VyRmlsdGVyQ29uc3RhbnRzLkZJTFRFUl9ORVRfSURFTlRJRklFUlxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHF1ZXJ5OiBgZGF0YVNldC4ke1VzZXJGaWx0ZXJDb25zdGFudHMuRklMVEVSX1RZUEVfRklFTERfSUR9LmtleVZhbHVlOiR7ZmlsdGVyVHlwZX1gXG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoISFhZGRpdGlvbmFsRmlsdGVyKSB7XG4gICAgICAgICAgICBmaWx0ZXJDYXNlc0ZpbHRlciA9IGZpbHRlckNhc2VzRmlsdGVyLm1lcmdlKGFkZGl0aW9uYWxGaWx0ZXIsIE1lcmdlT3BlcmF0b3IuQU5EKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBSZXBsYXlTdWJqZWN0PGFueT4oMSk7XG4gICAgICAgIGNvbnN0IHJlZiA9IHRoaXMuX2RpYWxvZy5vcGVuKHRoaXMuX2xvYWRGaWx0ZXJDb21wb25lbnQsIHtcbiAgICAgICAgICAgIHBhbmVsQ2xhc3M6IFwiZGlhbG9nLXJlc3BvbnNpdmVcIixcbiAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IGZpbHRlckNhc2VzRmlsdGVyXG4gICAgICAgICAgICB9IGFzIExvYWRGaWx0ZXJJbmplY3Rpb25EYXRhLFxuICAgICAgICB9KTtcbiAgICAgICAgcmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgICAgICAgIGlmIChldmVudC5tZXNzYWdlID09PSAnU2lkZSBtZW51IGNsb3NlZCB1bmV4cGVjdGVkbHknKSB7XG4gICAgICAgICAgICAgICAgcmVzdWx0Lm5leHQoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcmVzdWx0Lm5leHQoZXZlbnQuZGF0YSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXN1bHQuY29tcGxldGUoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiByZXN1bHQuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2F2ZXMgdGhlIHByZWRpY2F0ZSBmaWx0ZXIgY29udGFpbmVkIGluIHRoZSBwcm92aWRlZCB7QGxpbmsgU2VhcmNoU2VydmljZX0gaW5zdGFuY2UuXG4gICAgICpcbiAgICAgKiBUaGUgYmFzZSBmaWx0ZXIgb2YgdGhlIHNlYXJjaCBzZXJ2aWNlIGlzIG5vdCBzYXZlZC5cbiAgICAgKlxuICAgICAqIEEgbmV3IGZpbHRlciBjYXNlIGlzIGNyZWF0ZWQgYW5kIHRoZSBuZWNlc3NhcnkgZmlsdGVyIGluZm9ybWF0aW9uIGlzIHNldCBpbnRvIGl0LlxuICAgICAqXG4gICAgICogVGhlbiBhIHNpZGUgbWVudSB3aXRoIHRoZSBmaWx0ZXIgaXMgb3BlbmVkIGZvciB0aGUgdXNlciB0byBlbnRlciB0aGUgbmFtZSBhbmQgb3RoZXIgcHJvcGVydGllcy5cbiAgICAgKiBUaGUgdXNlciBjYW4gY29uZmlybSBvciBjYW5jZWwgdGhlIHNhdmUgYnkgZmluaXNoaW5nIHRoZSB0YXNrIGluIHRoZSBzaWRlIG1lbnUsIG9yIGJ5IGNhbmNlbGluZy9jbG9zaW5nLlxuICAgICAqXG4gICAgICogQHBhcmFtIHNlYXJjaFNlcnZpY2Ugc2VhcmNoIHNlcnZpY2UgY29udGFpbmluZyBhIHByZWRpY2F0ZSBmaWx0ZXIsIHdlIHdhbnQgdG8gc2F2ZVxuICAgICAqIEBwYXJhbSBhbGxvd2VkTmV0cyBhbGxvd2VkIG5ldHMgb2YgdGhlIHZpZXcsIHRoYXQgY29udGFpbnMgdGhlIHNlYXJjaCBzZXJ2aWNlXG4gICAgICogQHBhcmFtIHNlYXJjaENhdGVnb3JpZXMgc2VhcmNoIGNhdGVnb3JpZXMgYXZhaWxhYmxlIGluIHRoZSBzYXZlZCBhZHZhbmNlZCBzZWFyY2ggY29tcG9uZW50XG4gICAgICogQHBhcmFtIHZpZXdJZCB0aGUgdmlld0lkIG9mIHRoZSB2aWV3IHdoaWNoIGNvbnRhaW5lZCB0aGUgZmlsdGVyLlxuICAgICAqIElmIG5laXRoZXIgdGhlIGB2aWV3SWRgIG5vciB0aGUgYG5hdmlnYXRpb25JdGVtVGFza0RhdGFgIGF0dHJpYnV0ZSBpcyBzZXQgdGhlIGZpbHRlciB3aWxsIGJlIGNyZWF0ZWQgYXMgYSBuZXcgcm9vdCBmaWx0ZXJcbiAgICAgKiB3aXRob3V0IGFueSBwYXJlbnQgZmlsdGVyIGxpbmsuIFRoaXMgd2lsbCBtb3N0IGxpa2VseSByZXN1bHQgaW4gdGhlIGZpbHRlciBiZWluZyBsZXNzIHJlc3RyaWN0aXZlIHRoYW4gd2hhdFxuICAgICAqIHRoZSB1c2VyIHNlZXMgaW4gdGhlIGN1cnJlbnQgdmlldywgc2luY2UgdGhlIGJhc2UgZmlsdGVyIG9mIHRoZSB2aWV3IHdpbGwgTk9UIGJlIHNhdmVkIGFsb25nc2lkZSB0aGUgc2F2ZWQgZmlsdGVyLlxuICAgICAqIEBwYXJhbSBhZGRpdGlvbmFsRGF0YSBzZXQgZGF0YSByZXF1ZXN0IGJvZHksIHRoYXQgaXMgc2VudCB0byB0aGUgZmlsdGVyIGluIGFkZGl0aW9uIHRvIHRoZSBkZWZhdWx0IGJvZHkuXG4gICAgICogVGhlIGRlZmF1bHQgYm9keSBpcyBhcHBsaWVkIGZpcnN0IGFuZCBjYW4gYmUgb3ZlcnJpZGRlbiBieSB0aGlzIGFyZ3VtZW50LlxuICAgICAqIEBwYXJhbSB3aXRoRGVmYXVsdENhdGVnb3JpZXMgV2hldGhlciB0aGUgc2F2ZWQgZmlsdGVyIHNob3VsZCBiZSBzYXZlZCB3aXRoXG4gICAgICogdGhlIFtkZWZhdWx0U2VhcmNoQ2F0ZWdvcmllc117QGxpbmsgRmlsdGVyTWV0YWRhdGEjZGVmYXVsdFNlYXJjaENhdGVnb3JpZXN9IGZsYWcgc2V0IHRvIGB0cnVlYCwgb3IgYGZhbHNlYC5cbiAgICAgKiBAcGFyYW0gaW5oZXJpdEFsbG93ZWROZXRzIFdoZXRoZXIgdGhlIHNhdmVkIGZpbHRlciBzaG91bGQgbWVyZ2UgaXRzIGFsbG93ZWQgbmV0cyB3aXRoIHRoZSBhbGxvd2VkIG5ldHMgcHJvdmlkZWQgYnlcbiAgICAgKiB0aGUge0BsaW5rIEJhc2VBbGxvd2VkTmV0c1NlcnZpY2V9LlxuICAgICAqIEBwYXJhbSBuYXZpZ2F0aW9uSXRlbVRhc2tEYXRhIGlmIHByb3ZpZGVkIHRoZW4gaXQgaW1wbGllcyB0aGUgZmlsdGVyIGhhcyBhIHBhcmVudCBmaWx0ZXIgdGhhdCBjcmVhdGVkIGl0cyBob3N0IGR5bmFtaWMgdmlldy5cbiAgICAgKiBJZiB0aGlzIGlzIHRoZSBjYXNlIHRoZSBjYXNlIElEIG9mIHRoZSBwYXJlbnQgZmlsdGVyIHdpbGwgYmUgc2V0IGludG8gdGhlIG5ld2x5IGNyZWF0ZWQgZmlsdGVyIGNhc2UuXG4gICAgICogSWYgbm90IHNldCBpdCBpbXBsaWVzIHRoaXMgaXMgYSBmaWx0ZXIgb3JpZ2luYXRpbmcgaW4gYW4gaW4tYXBwIHZpZXcgYW5kIGl0cyB2aWV3IGlkIHdpbGwgYmUgc2V0IGludG8gdGhlIGNyZWF0ZWQgZmlsdGVyLlxuICAgICAqIEByZXR1cm5zIGFuIG9ic2VydmFibGUgdGhhdCBlbWl0cyB0aGUgaWQgb2YgdGhlIGNyZWF0ZWQgRmlsdGVyIGNhc2UgaW5zdGFuY2Ugb3IgYHVuZGVmaW5lZGAgaWYgdGhlIHVzZXIgY2FuY2VsZWQgdGhlIHNhdmUgcHJvY2VzcyxcbiAgICAgKiBvciB0aGUgZmlsdGVyIGNvdWxkIG5vdCBiZSBzYXZlZFxuICAgICAqL1xuICAgIHB1YmxpYyBzYXZlKHNlYXJjaFNlcnZpY2U6IFNlYXJjaFNlcnZpY2UsXG4gICAgICAgICAgICAgICAgYWxsb3dlZE5ldHM6IFJlYWRvbmx5QXJyYXk8c3RyaW5nPixcbiAgICAgICAgICAgICAgICBzZWFyY2hDYXRlZ29yaWVzOiBSZWFkb25seUFycmF5PFR5cGU8Q2F0ZWdvcnk8YW55Pj4+LFxuICAgICAgICAgICAgICAgIHZpZXdJZD86IHN0cmluZyxcbiAgICAgICAgICAgICAgICBhZGRpdGlvbmFsRGF0YTogVGFza1NldERhdGFSZXF1ZXN0RmllbGRzID0ge30sXG4gICAgICAgICAgICAgICAgd2l0aERlZmF1bHRDYXRlZ29yaWVzID0gdHJ1ZSxcbiAgICAgICAgICAgICAgICBpbmhlcml0QWxsb3dlZE5ldHMgPSB0cnVlLFxuICAgICAgICAgICAgICAgIG5hdmlnYXRpb25JdGVtVGFza0RhdGE6IEFycmF5PERhdGFHcm91cD4gPSBudWxsKTogT2JzZXJ2YWJsZTxTYXZlZEZpbHRlck1ldGFkYXRhPiB7XG4gICAgICAgIGlmICghc2VhcmNoU2VydmljZS5hZGRpdGlvbmFsRmlsdGVyc0FwcGxpZWQpIHtcbiAgICAgICAgICAgIHRoaXMuX2xvZy53YXJuKCdUaGUgcHJvdmlkZWQgU2VhcmNoU2VydmljZSBjb250YWlucyBubyBmaWx0ZXIgYmVzaWRlcyB0aGUgYmFzZSBmaWx0ZXIuIE5vdGhpbmcgdG8gc2F2ZS4nKTtcbiAgICAgICAgICAgIHJldHVybiBvZih1bmRlZmluZWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcmVzdWx0ID0gbmV3IFJlcGxheVN1YmplY3Q8U2F2ZWRGaWx0ZXJNZXRhZGF0YT4oMSk7XG4gICAgICAgIHRoaXMuY3JlYXRlRmlsdGVyQ2FzZUFuZFNldERhdGEoXG4gICAgICAgICAgICBzZWFyY2hTZXJ2aWNlLFxuICAgICAgICAgICAgYWxsb3dlZE5ldHMsXG4gICAgICAgICAgICBzZWFyY2hDYXRlZ29yaWVzLFxuICAgICAgICAgICAgdmlld0lkLFxuICAgICAgICAgICAgYWRkaXRpb25hbERhdGEsXG4gICAgICAgICAgICB3aXRoRGVmYXVsdENhdGVnb3JpZXMsXG4gICAgICAgICAgICBpbmhlcml0QWxsb3dlZE5ldHMsXG4gICAgICAgICAgICBuYXZpZ2F0aW9uSXRlbVRhc2tEYXRhXG4gICAgICAgICkuc3Vic2NyaWJlKGZpbHRlckNhc2VJZCA9PiB7XG4gICAgICAgICAgICBjb25zdCByZWYgPSB0aGlzLl9kaWFsb2cub3Blbih0aGlzLl9zYXZlRmlsdGVyQ29tcG9uZW50LCB7XG4gICAgICAgICAgICAgICAgcGFuZWxDbGFzczogXCJkaWFsb2ctcmVzcG9uc2l2ZVwiLFxuICAgICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICAgICAgbmV3RmlsdGVyQ2FzZUlkOiBmaWx0ZXJDYXNlSWRcbiAgICAgICAgICAgICAgICB9IGFzIFNhdmVGaWx0ZXJJbmplY3Rpb25EYXRhLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoZXZlbnQgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChldmVudC5tZXNzYWdlID09PSAnU2lkZSBtZW51IGNsb3NlZCB1bmV4cGVjdGVkbHknKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGVsZXRlKGZpbHRlckNhc2VJZCk7XG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdC5uZXh0KCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0Lm5leHQoe1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyQ2FzZUlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgYWxsb3dlZE5ldHM6IFsuLi5hbGxvd2VkTmV0c10sXG4gICAgICAgICAgICAgICAgICAgICAgICBvcmlnaW5WaWV3SWQ6IHZpZXdJZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlck1ldGFkYXRhOiB0aGlzLmZpbHRlck1ldGFkYXRhRnJvbVNlYXJjaFNlcnZpY2UoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VhcmNoU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWFyY2hDYXRlZ29yaWVzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpdGhEZWZhdWx0Q2F0ZWdvcmllcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmhlcml0QWxsb3dlZE5ldHNcbiAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6IFNpbXBsZUZpbHRlci5mcm9tUXVlcnkoe3F1ZXJ5OiBzZWFyY2hTZXJ2aWNlLnJvb3RQcmVkaWNhdGUucXVlcnkudmFsdWV9LCBzZWFyY2hTZXJ2aWNlLmZpbHRlclR5cGUpXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXN1bHQuY29tcGxldGUoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHJlc3VsdC5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTYXZlcyB0aGUgcHJlZGljYXRlIGZpbHRlciBjb250YWluZWQgaW4gdGhlIHByb3ZpZGVkIHtAbGluayBTZWFyY2hTZXJ2aWNlfSBpbnN0YW5jZS5cbiAgICAgKlxuICAgICAqIFRoZSBiYXNlIGZpbHRlciBvZiB0aGUgc2VhcmNoIHNlcnZpY2UgaXMgbm90IHNhdmVkLlxuICAgICAqXG4gICAgICogQSBuZXcgZmlsdGVyIGNhc2UgaXMgY3JlYXRlZCBhbmQgdGhlIG5lY2Vzc2FyeSBmaWx0ZXIgaW5mb3JtYXRpb24gaXMgc2V0IGludG8gaXQuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gc2VhcmNoU2VydmljZSBzZWFyY2ggc2VydmljZSBjb250YWluaW5nIGEgcHJlZGljYXRlIGZpbHRlciwgd2Ugd2FudCB0byBzYXZlXG4gICAgICogQHBhcmFtIGFsbG93ZWROZXRzIGFsbG93ZWQgbmV0cyBvZiB0aGUgdmlldywgdGhhdCBjb250YWlucyB0aGUgc2VhcmNoIHNlcnZpY2VcbiAgICAgKiBAcGFyYW0gc2VhcmNoQ2F0ZWdvcmllcyBzZWFyY2ggY2F0ZWdvcmllcyBhdmFpbGFibGUgaW4gdGhlIHNhdmVkIGFkdmFuY2VkIHNlYXJjaCBjb21wb25lbnRcbiAgICAgKiBAcGFyYW0gdmlld0lkIHRoZSB2aWV3SWQgb2YgdGhlIHZpZXcgd2hpY2ggY29udGFpbmVkIHRoZSBmaWx0ZXIuXG4gICAgICogSWYgbmVpdGhlciB0aGUgYHZpZXdJZGAgbm9yIHRoZSBgbmF2aWdhdGlvbkl0ZW1UYXNrRGF0YWAgYXR0cmlidXRlIGlzIHNldCB0aGUgZmlsdGVyIHdpbGwgYmUgY3JlYXRlZCBhcyBhIG5ldyByb290IGZpbHRlclxuICAgICAqIHdpdGhvdXQgYW55IHBhcmVudCBmaWx0ZXIgbGluay4gVGhpcyB3aWxsIG1vc3QgbGlrZWx5IHJlc3VsdCBpbiB0aGUgZmlsdGVyIGJlaW5nIGxlc3MgcmVzdHJpY3RpdmUgdGhhbiB3aGF0XG4gICAgICogdGhlIHVzZXIgc2VlcyBpbiB0aGUgY3VycmVudCB2aWV3LCBzaW5jZSB0aGUgYmFzZSBmaWx0ZXIgb2YgdGhlIHZpZXcgd2lsbCBOT1QgYmUgc2F2ZWQgYWxvbmdzaWRlIHRoZSBzYXZlZCBmaWx0ZXIuXG4gICAgICogQHBhcmFtIGFkZGl0aW9uYWxEYXRhIHNldCBkYXRhIHJlcXVlc3QgYm9keSwgdGhhdCBpcyBzZW50IHRvIHRoZSBmaWx0ZXIgaW4gYWRkaXRpb24gdG8gdGhlIGRlZmF1bHQgYm9keS5cbiAgICAgKiBUaGUgZGVmYXVsdCBib2R5IGlzIGFwcGxpZWQgZmlyc3QgYW5kIGNhbiBiZSBvdmVycmlkZGVuIGJ5IHRoaXMgYXJndW1lbnQuXG4gICAgICogQHBhcmFtIHdpdGhEZWZhdWx0Q2F0ZWdvcmllcyBXaGV0aGVyIHRoZSBzYXZlZCBmaWx0ZXIgc2hvdWxkIGJlIHNhdmVkIHdpdGhcbiAgICAgKiB0aGUgW2RlZmF1bHRTZWFyY2hDYXRlZ29yaWVzXXtAbGluayBGaWx0ZXJNZXRhZGF0YSNkZWZhdWx0U2VhcmNoQ2F0ZWdvcmllc30gZmxhZyBzZXQgdG8gYHRydWVgLCBvciBgZmFsc2VgLlxuICAgICAqIEBwYXJhbSBpbmhlcml0QWxsb3dlZE5ldHMgV2hldGhlciB0aGUgc2F2ZWQgZmlsdGVyIHNob3VsZCBtZXJnZSBpdHMgYWxsb3dlZCBuZXRzIHdpdGggdGhlIGFsbG93ZWQgbmV0cyBwcm92aWRlZCBieVxuICAgICAqIHRoZSB7QGxpbmsgQmFzZUFsbG93ZWROZXRzU2VydmljZX0uXG4gICAgICogQHBhcmFtIG5hdmlnYXRpb25JdGVtVGFza0RhdGEgaWYgcHJvdmlkZWQgdGhlbiBpdCBpbXBsaWVzIHRoZSBmaWx0ZXIgaGFzIGEgcGFyZW50IGZpbHRlciB0aGF0IGNyZWF0ZWQgaXRzIGhvc3QgZHluYW1pYyB2aWV3LlxuICAgICAqIElmIHRoaXMgaXMgdGhlIGNhc2UgdGhlIGNhc2UgSUQgb2YgdGhlIHBhcmVudCBmaWx0ZXIgd2lsbCBiZSBzZXQgaW50byB0aGUgbmV3bHkgY3JlYXRlZCBmaWx0ZXIgY2FzZS5cbiAgICAgKiBJZiBub3Qgc2V0IGl0IGltcGxpZXMgdGhpcyBpcyBhIGZpbHRlciBvcmlnaW5hdGluZyBpbiBhbiBpbi1hcHAgdmlldyBhbmQgaXRzIHZpZXcgaWQgd2lsbCBiZSBzZXQgaW50byB0aGUgY3JlYXRlZCBmaWx0ZXIuXG4gICAgICogQHJldHVybnMgYW4gb2JzZXJ2YWJsZSB0aGF0IGVtaXRzIHRoZSBpZCBvZiB0aGUgY3JlYXRlZCBGaWx0ZXIgY2FzZSBpbnN0YW5jZVxuICAgICAqL1xuICAgIHB1YmxpYyBjcmVhdGVGaWx0ZXJDYXNlQW5kU2V0RGF0YShzZWFyY2hTZXJ2aWNlOiBTZWFyY2hTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGxvd2VkTmV0czogUmVhZG9ubHlBcnJheTxzdHJpbmc+LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWFyY2hDYXRlZ29yaWVzOiBSZWFkb25seUFycmF5PFR5cGU8Q2F0ZWdvcnk8YW55Pj4+LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3SWQ/OiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZGl0aW9uYWxEYXRhOiBUYXNrU2V0RGF0YVJlcXVlc3RGaWVsZHMgPSB7fSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2l0aERlZmF1bHRDYXRlZ29yaWVzID0gdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5oZXJpdEFsbG93ZWROZXRzID0gdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmF2aWdhdGlvbkl0ZW1UYXNrRGF0YTogQXJyYXk8RGF0YUdyb3VwPiA9IG51bGwpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBuZXcgUmVwbGF5U3ViamVjdDxzdHJpbmc+KDEpO1xuICAgICAgICB0aGlzLndoZW5Jbml0aWFsaXplZCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9jYXNlU2VydmljZS5jcmVhdGVDYXNlKHtcbiAgICAgICAgICAgICAgICB0aXRsZTogdGhpcy5fZmlsdGVyTmV0LmRlZmF1bHRDYXNlTmFtZSxcbiAgICAgICAgICAgICAgICBuZXRJZDogdGhpcy5fZmlsdGVyTmV0LnN0cmluZ0lkXG4gICAgICAgICAgICB9KS5zdWJzY3JpYmUoZmlsdGVyQ2FzZSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fdGFza1NlcnZpY2UuZ2V0VGFza3MoU2ltcGxlRmlsdGVyLmZyb21UYXNrUXVlcnkoe1xuICAgICAgICAgICAgICAgICAgICBjYXNlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZDogKGZpbHRlckNhc2Uub3V0Y29tZSBhcyBDcmVhdGVDYXNlRXZlbnRPdXRjb21lKS5hQ2FzZS5zdHJpbmdJZFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSkpLnN1YnNjcmliZShwYWdlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFoYXNDb250ZW50KHBhZ2UpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0V4cGVjdGVkIGZpbHRlciBwcm9jZXNzIHRvIGNvbnRhaW4gdGFza3MsIGJ1dCBub25lIHdlcmUgZm91bmQhJyk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBjb25zdCBpbml0VGFzayA9IHBhZ2UuY29udGVudC5maW5kKHRhc2sgPT4gdGFzay50cmFuc2l0aW9uSWQgPT09IFVzZXJGaWx0ZXJDb25zdGFudHMuU0VUX0ZJTFRFUl9NRVRBREFUQV9UUkFOU0lUSU9OX0lEKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGluaXRUYXNrID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgRXhwZWN0ZWQgZmlsdGVyIHByb2Nlc3MgdG8gY29udGFpbiB0YXNrICcke1VzZXJGaWx0ZXJDb25zdGFudHMuU0VUX0ZJTFRFUl9NRVRBREFUQV9UUkFOU0lUSU9OX0lEXG4gICAgICAgICAgICAgICAgICAgICAgICB9JywgYnV0IG5vbmUgd2FzIGZvdW5kIWApO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVxdWVzdEJvZHkgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBbVXNlckZpbHRlckNvbnN0YW50cy5GSUxURVJfVFlQRV9GSUVMRF9JRF06IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGVSZXNvdXJjZS5FTlVNRVJBVElPTl9NQVAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IHNlYXJjaFNlcnZpY2UuZmlsdGVyVHlwZVxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIFtVc2VyRmlsdGVyQ29uc3RhbnRzLkZJTFRFUl9GSUVMRF9JRF06IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGVSZXNvdXJjZS5GSUxURVIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IHNlYXJjaFNlcnZpY2Uucm9vdFByZWRpY2F0ZS5xdWVyeS52YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGxvd2VkTmV0cyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXJNZXRhZGF0YTogdGhpcy5maWx0ZXJNZXRhZGF0YUZyb21TZWFyY2hTZXJ2aWNlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWFyY2hTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWFyY2hDYXRlZ29yaWVzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aXRoRGVmYXVsdENhdGVnb3JpZXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluaGVyaXRBbGxvd2VkTmV0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgICAgICAgICAgbGV0IHBhcmVudEZpbHRlckNhc2VJZEZpZWxkO1xuICAgICAgICAgICAgICAgICAgICBpZiAobmF2aWdhdGlvbkl0ZW1UYXNrRGF0YSAhPT0gbnVsbCAmJiBuYXZpZ2F0aW9uSXRlbVRhc2tEYXRhICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmVudEZpbHRlckNhc2VJZEZpZWxkID0gZ2V0RmllbGRGcm9tRGF0YUdyb3VwcyhuYXZpZ2F0aW9uSXRlbVRhc2tEYXRhLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVzZXJGaWx0ZXJDb25zdGFudHMuRklMVEVSX0NBU0VfSURfRklFTERfSUQpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKHBhcmVudEZpbHRlckNhc2VJZEZpZWxkICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVlc3RCb2R5W1VzZXJGaWx0ZXJDb25zdGFudHMuUEFSRU5UX0ZJTFRFUl9DQVNFX0lEX0ZJRUxEX0lEXSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGVSZXNvdXJjZS5URVhULFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBwYXJlbnRGaWx0ZXJDYXNlSWRGaWVsZC52YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICh2aWV3SWQgIT09IHVuZGVmaW5lZCB8fCB2aWV3SWQgIT09ICcnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXF1ZXN0Qm9keVtVc2VyRmlsdGVyQ29uc3RhbnRzLk9SSUdJTl9WSUVXX0lEX0ZJRUxEX0lEXSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGVSZXNvdXJjZS5URVhULFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiB2aWV3SWRcbiAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB0aGlzLmFzc2lnblNldERhdGFGaW5pc2goaW5pdFRhc2ssIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpbml0VGFzay5zdHJpbmdJZF06IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5yZXF1ZXN0Qm9keSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5hZGRpdGlvbmFsRGF0YVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9LCB0aGlzLl9jYWxsQ2hhaW5TZXJ2aWNlLmNyZWF0ZShzdWNjZXNzID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghc3VjY2Vzcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRmlsdGVyIGluc3RhbmNlIGNvdWxkIG5vdCBiZSBpbml0aWFsaXplZCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQubmV4dCgoZmlsdGVyQ2FzZS5vdXRjb21lIGFzIENyZWF0ZUNhc2VFdmVudE91dGNvbWUpLmFDYXNlLnN0cmluZ0lkKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdC5jb21wbGV0ZSgpO1xuICAgICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSwgJ3NhdmVXaXRoU2lkZU1lbnUnKTtcbiAgICAgICAgcmV0dXJuIHJlc3VsdC5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgd2hlbkluaXRpYWxpemVkKG9uU3VjY2VzczogKCkgPT4gdm9pZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ldGhvZD86IHN0cmluZyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uRmFpbHVyZTogKCkgPT4gdm9pZCA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9sb2cuZXJyb3IoYFVzZXJGaWx0ZXJTZXJ2aWNlIGZhaWxlZCB0byBpbml0aWFsaXplIGFuZCB0aGUgY2FsbGVkIG1ldGhvZCR7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ldGhvZCA/ICcgKCcgKyBtZXRob2QgKyAnKScgOiAnJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gY2Fubm90IGJlIHBlcmZvcm1lZGApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkge1xuICAgICAgICB0aGlzLl9pbml0aWFsaXplZCQuYXNPYnNlcnZhYmxlKCkucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoaW5pdGlhbGl6ZWQgPT4ge1xuICAgICAgICAgICAgaW5pdGlhbGl6ZWQgPyBvblN1Y2Nlc3MoKSA6IG9uRmFpbHVyZSgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyBUT0RPIDYuNC4yMDIxIElNUFJPVkVNRU5UIC0gZXh0cmFjdCBzaW1pbGFyIG1ldGhvZCBpbnRvIHNvbWUgdXRpbGl0eSBzZXJ2aWNlXG4gICAgcHJvdGVjdGVkIGFzc2lnblNldERhdGFGaW5pc2godGFzazogVGFzaywgZGF0YTogVGFza1NldERhdGFSZXF1ZXN0Qm9keSwgY2FsbENoYWluOiBTdWJqZWN0PGJvb2xlYW4+KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3Rhc2tTZXJ2aWNlLmFzc2lnblRhc2sodGFzay5zdHJpbmdJZCkuc3Vic2NyaWJlKGFzc2lnbk91dGNvbWUgPT4ge1xuICAgICAgICAgICAgaWYgKGFzc2lnbk91dGNvbWUuZXJyb3IpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9sb2cuZXJyb3IoYENvdWxkIG5vdCBhc3NpZ24gdGFzayAnJHt0YXNrLnRpdGxlfSdgLCB0YXNrLCBhc3NpZ25PdXRjb21lLmVycm9yKTtcbiAgICAgICAgICAgICAgICBjYWxsQ2hhaW4ubmV4dChmYWxzZSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLl90YXNrU2VydmljZS5zZXREYXRhKHRhc2suc3RyaW5nSWQsIGRhdGEpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fdGFza1NlcnZpY2UuZmluaXNoVGFzayh0YXNrLnN0cmluZ0lkKS5zdWJzY3JpYmUoZmluaXNoT3V0Y29tZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChmaW5pc2hPdXRjb21lLmVycm9yKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9sb2cuZXJyb3IoYENvdWxkIG5vdCBmaW5pc2ggdGFzayAnJHt0YXNrLnRpdGxlfSdgLCB0YXNrLCBmaW5pc2hPdXRjb21lLmVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxDaGFpbi5uZXh0KGZhbHNlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGNhbGxDaGFpbi5uZXh0KHRydWUpO1xuICAgICAgICAgICAgICAgIH0sIGVycm9yID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fbG9nLmVycm9yKGBDb3VsZCBub3QgZmluaXNoIHRhc2sgJyR7dGFzay50aXRsZX0nYCwgdGFzaywgZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICBjYWxsQ2hhaW4ubmV4dChmYWxzZSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LCBlcnJvciA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fbG9nLmVycm9yKGBDb3VsZCBub3Qgc2V0IGRhdGEgb2YgdGFzayAnJHt0YXNrLnRpdGxlfSdgLCB0YXNrLCBkYXRhLCBlcnJvcik7XG4gICAgICAgICAgICAgICAgY2FsbENoYWluLm5leHQoZmFsc2UpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0sIGVycm9yID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2xvZy5lcnJvcihgQ291bGQgbm90IGFzc2lnbiB0YXNrICcke3Rhc2sudGl0bGV9J2AsIHRhc2ssIGVycm9yKTtcbiAgICAgICAgICAgIGNhbGxDaGFpbi5uZXh0KGZhbHNlKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGZpbHRlck1ldGFkYXRhRnJvbVNlYXJjaFNlcnZpY2Uoc2VhcmNoU2VydmljZTogU2VhcmNoU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWFyY2hDYXRlZ29yaWVzOiBSZWFkb25seUFycmF5PFR5cGU8Q2F0ZWdvcnk8YW55Pj4+LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpdGhEZWZhdWx0Q2F0ZWdvcmllczogYm9vbGVhbixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmhlcml0QWxsb3dlZE5ldHM6IGJvb2xlYW4pOiBGaWx0ZXJNZXRhZGF0YSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBmaWx0ZXJUeXBlOiBzZWFyY2hTZXJ2aWNlLmZpbHRlclR5cGUsXG4gICAgICAgICAgICBwcmVkaWNhdGVNZXRhZGF0YTogc2VhcmNoU2VydmljZS5jcmVhdGVQcmVkaWNhdGVNZXRhZGF0YSgpLFxuICAgICAgICAgICAgc2VhcmNoQ2F0ZWdvcmllczogc2VhcmNoQ2F0ZWdvcmllcy5tYXAoYyA9PiB0aGlzLl9jYXRlZ29yeVJlc29sdmVyU2VydmljZS5zZXJpYWxpemUoYykpLFxuICAgICAgICAgICAgZGVmYXVsdFNlYXJjaENhdGVnb3JpZXM6IHdpdGhEZWZhdWx0Q2F0ZWdvcmllcyxcbiAgICAgICAgICAgIGluaGVyaXRBbGxvd2VkTmV0c1xuICAgICAgICB9O1xuICAgIH1cbn1cbiJdfQ==
331
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1maWx0ZXJzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL2ZpbHRlci91c2VyLWZpbHRlcnMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFFLFVBQVUsRUFBYSxRQUFRLEVBQU8sTUFBTSxlQUFlLENBQUM7QUFDNUUsT0FBTyxFQUFhLEVBQUUsRUFBRSxhQUFhLEVBQVUsTUFBTSxNQUFNLENBQUM7QUFNNUQsT0FBTyxFQUFTLElBQUksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNwRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFJbEUsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFHNUUsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFLbkUsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRWhELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQU10RCxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUc1RCxPQUFPLEVBQUMsZ0NBQWdDLEVBQUUsZ0NBQWdDLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7Ozs7OztBQUU5Rzs7R0FFRztBQUlILE1BQU0sT0FBTyxrQkFBa0I7SUFLM0IsWUFBc0IsWUFBaUMsRUFDakMsWUFBaUMsRUFDakMsZUFBK0IsRUFDL0IsaUJBQW1DLEVBQ25DLGdCQUFpQyxFQUNqQyxJQUFtQixFQUNuQix3QkFBaUQsRUFDakQsT0FBa0IsRUFDb0Msb0JBQTRDLEVBQzVDLG9CQUE0QztRQVRsRyxpQkFBWSxHQUFaLFlBQVks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QixrUkFhSyxnQ0FBZ0MsNkJBQ2hDLGdDQUFnQztvSEFkdkQsa0JBQWtCLGNBRmYsTUFBTTs0RkFFVCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOzswQkFjZ0IsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxnQ0FBZ0M7OzBCQUNuRCxRQUFROzswQkFBSSxNQUFNOzJCQUFDLGdDQUFnQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0LCBJbmplY3RhYmxlLCBPbkRlc3Ryb3ksIE9wdGlvbmFsLCBUeXBlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgb2YsIFJlcGxheVN1YmplY3QsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtDYXNlUmVzb3VyY2VTZXJ2aWNlfSBmcm9tICcuLi9yZXNvdXJjZXMvZW5naW5lLWVuZHBvaW50L2Nhc2UtcmVzb3VyY2Uuc2VydmljZSc7XG5pbXBvcnQge1Rhc2tSZXNvdXJjZVNlcnZpY2V9IGZyb20gJy4uL3Jlc291cmNlcy9lbmdpbmUtZW5kcG9pbnQvdGFzay1yZXNvdXJjZS5zZXJ2aWNlJztcbmltcG9ydCB7U2VhcmNoU2VydmljZX0gZnJvbSAnLi4vc2VhcmNoL3NlYXJjaC1zZXJ2aWNlL3NlYXJjaC5zZXJ2aWNlJztcbmltcG9ydCB7UHJvY2Vzc1NlcnZpY2V9IGZyb20gJy4uL3Byb2Nlc3MvcHJvY2Vzcy5zZXJ2aWNlJztcbmltcG9ydCB7TG9nZ2VyU2VydmljZX0gZnJvbSAnLi4vbG9nZ2VyL3NlcnZpY2VzL2xvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7ZmlsdGVyLCB0YWtlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1NpbXBsZUZpbHRlcn0gZnJvbSAnLi9tb2RlbHMvc2ltcGxlLWZpbHRlcic7XG5pbXBvcnQge2hhc0NvbnRlbnR9IGZyb20gJy4uL3V0aWxpdHkvcGFnaW5hdGlvbi9wYWdlLWhhcy1jb250ZW50JztcbmltcG9ydCB7VGFza30gZnJvbSAnLi4vcmVzb3VyY2VzL2ludGVyZmFjZS90YXNrJztcbmltcG9ydCB7Q2FsbENoYWluU2VydmljZX0gZnJvbSAnLi4vdXRpbGl0eS9jYWxsLWNoYWluL2NhbGwtY2hhaW4uc2VydmljZSc7XG5pbXBvcnQge1Rhc2tTZXREYXRhUmVxdWVzdEJvZHksIFRhc2tTZXREYXRhUmVxdWVzdEZpZWxkc30gZnJvbSAnLi4vcmVzb3VyY2VzL2ludGVyZmFjZS90YXNrLXNldC1kYXRhLXJlcXVlc3QtYm9keSc7XG5pbXBvcnQge0ZpZWxkVHlwZVJlc291cmNlfSBmcm9tICcuLi90YXNrLWNvbnRlbnQvbW9kZWwvZmllbGQtdHlwZS1yZXNvdXJjZSc7XG5pbXBvcnQge0NhdGVnb3J5fSBmcm9tICcuLi9zZWFyY2gvbW9kZWxzL2NhdGVnb3J5L2NhdGVnb3J5JztcbmltcG9ydCB7TmV0fSBmcm9tICcuLi9wcm9jZXNzL25ldCc7XG5pbXBvcnQge1VzZXJGaWx0ZXJDb25zdGFudHN9IGZyb20gJy4vbW9kZWxzL3VzZXItZmlsdGVyLWNvbnN0YW50cyc7XG5pbXBvcnQge1NhdmVGaWx0ZXJJbmplY3Rpb25EYXRhfSBmcm9tICcuLi9zaWRlLW1lbnUvY29udGVudC1jb21wb25lbnRzL3NhdmUtZmlsdGVyL21vZGVsL3NhdmUtZmlsdGVyLWluamVjdGlvbi1kYXRhJztcbmltcG9ydCB7U2lkZU1lbnVTZXJ2aWNlfSBmcm9tICcuLi9zaWRlLW1lbnUvc2VydmljZXMvc2lkZS1tZW51LnNlcnZpY2UnO1xuaW1wb3J0IHtDb21wb25lbnRUeXBlfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7TG9hZEZpbHRlckluamVjdGlvbkRhdGF9IGZyb20gJy4uL3NpZGUtbWVudS9jb250ZW50LWNvbXBvbmVudHMvbG9hZC1maWx0ZXIvbW9kZWwvbG9hZC1maWx0ZXItaW5qZWN0aW9uLWRhdGEnO1xuaW1wb3J0IHtGaWx0ZXJUeXBlfSBmcm9tICcuL21vZGVscy9maWx0ZXItdHlwZSc7XG5pbXBvcnQge0ZpbHRlcn0gZnJvbSAnLi9tb2RlbHMvZmlsdGVyJztcbmltcG9ydCB7TWVyZ2VPcGVyYXRvcn0gZnJvbSAnLi9tb2RlbHMvbWVyZ2Utb3BlcmF0b3InO1xuaW1wb3J0IHtTYXZlZEZpbHRlck1ldGFkYXRhfSBmcm9tICcuLi9zZWFyY2gvbW9kZWxzL3BlcnNpc3RhbmNlL3NhdmVkLWZpbHRlci1tZXRhZGF0YSc7XG5pbXBvcnQge0ZpbHRlck1ldGFkYXRhfSBmcm9tICcuLi9zZWFyY2gvbW9kZWxzL3BlcnNpc3RhbmNlL2ZpbHRlci1tZXRhZGF0YSc7XG5pbXBvcnQge0NyZWF0ZUNhc2VFdmVudE91dGNvbWV9IGZyb20gJy4uL2V2ZW50L21vZGVsL2V2ZW50LW91dGNvbWVzL2Nhc2Utb3V0Y29tZXMvY3JlYXRlLWNhc2UtZXZlbnQtb3V0Y29tZSc7XG5pbXBvcnQge0NhdGVnb3J5UmVzb2x2ZXJTZXJ2aWNlfSBmcm9tICcuLi9zZWFyY2gvY2F0ZWdvcnktZmFjdG9yeS9jYXRlZ29yeS1yZXNvbHZlci5zZXJ2aWNlJztcbmltcG9ydCB7RGF0YUdyb3VwfSBmcm9tICcuLi9yZXNvdXJjZXMvaW50ZXJmYWNlL2RhdGEtZ3JvdXBzJztcbmltcG9ydCB7Z2V0RmllbGRGcm9tRGF0YUdyb3Vwc30gZnJvbSAnLi4vdXRpbGl0eS9nZXQtZmllbGQnO1xuaW1wb3J0IHtFdmVudE91dGNvbWVNZXNzYWdlUmVzb3VyY2V9IGZyb20gJy4uL3Jlc291cmNlcy9pbnRlcmZhY2UvbWVzc2FnZS1yZXNvdXJjZSc7XG5pbXBvcnQge01hdERpYWxvZ30gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7TkFFX0xPQURfRklMVEVSX0RJQUxPR19DT01QT05FTlQsIE5BRV9TQVZFX0ZJTFRFUl9ESUFMT0dfQ09NUE9ORU5UfSBmcm9tICcuLi9kaWFsb2cvaW5qZWN0aW9uLXRva2Vucyc7XG5cbi8qKlxuICogU2VydmljZSB0aGF0IG1hbmFnZXMgZmlsdGVycyBjcmVhdGVkIGJ5IHVzZXJzIG9mIHRoZSBhcHBsaWNhdGlvbi5cbiAqL1xuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBVc2VyRmlsdGVyc1NlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuXG4gICAgcHJvdGVjdGVkIF9pbml0aWFsaXplZCQ6IFJlcGxheVN1YmplY3Q8Ym9vbGVhbj47XG4gICAgcHJvdGVjdGVkIF9maWx0ZXJOZXQ6IE5ldDtcblxuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBfY2FzZVNlcnZpY2U6IENhc2VSZXNvdXJjZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgcHJvdGVjdGVkIF90YXNrU2VydmljZTogVGFza1Jlc291cmNlU2VydmljZSxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX3Byb2Nlc3NTZXJ2aWNlOiBQcm9jZXNzU2VydmljZSxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2NhbGxDaGFpblNlcnZpY2U6IENhbGxDaGFpblNlcnZpY2UsXG4gICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9zaWRlTWVudVNlcnZpY2U6IFNpZGVNZW51U2VydmljZSxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2xvZzogTG9nZ2VyU2VydmljZSxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2NhdGVnb3J5UmVzb2x2ZXJTZXJ2aWNlOiBDYXRlZ29yeVJlc29sdmVyU2VydmljZSxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2RpYWxvZzogTWF0RGlhbG9nLFxuICAgICAgICAgICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoTkFFX1NBVkVfRklMVEVSX0RJQUxPR19DT01QT05FTlQpIHByb3RlY3RlZCBfc2F2ZUZpbHRlckNvbXBvbmVudDogQ29tcG9uZW50VHlwZTx1bmtub3duPixcbiAgICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE5BRV9MT0FEX0ZJTFRFUl9ESUFMT0dfQ09NUE9ORU5UKSBwcm90ZWN0ZWQgX2xvYWRGaWx0ZXJDb21wb25lbnQ6IENvbXBvbmVudFR5cGU8dW5rbm93bj4pIHtcbiAgICAgICAgdGhpcy5faW5pdGlhbGl6ZWQkID0gbmV3IFJlcGxheVN1YmplY3Q8Ym9vbGVhbj4oMSk7XG4gICAgICAgIHRoaXMuX3Byb2Nlc3NTZXJ2aWNlLmdldE5ldChVc2VyRmlsdGVyQ29uc3RhbnRzLkZJTFRFUl9ORVRfSURFTlRJRklFUikuc3Vic2NyaWJlKG5ldCA9PiB7XG4gICAgICAgICAgICB0aGlzLl9maWx0ZXJOZXQgPSBuZXQ7XG4gICAgICAgICAgICB0aGlzLl9pbml0aWFsaXplZCQubmV4dCh0cnVlKTtcbiAgICAgICAgfSwgZXJyb3IgPT4ge1xuICAgICAgICAgICAgdGhpcy5fbG9nLmVycm9yKGBGaWx0ZXIgbmV0IGNvdWxkIG5vdCBiZSBsb2FkZWQgd2l0aCBlcnJvcmAsIGVycm9yKTtcbiAgICAgICAgICAgIHRoaXMuX2luaXRpYWxpemVkJC5uZXh0KGZhbHNlKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2luaXRpYWxpemVkJC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIERlbGV0ZXMgdGhlIHNwZWNpZmllZCBmaWx0ZXIgY2FzZSBieSBpdHMgY2FzZSBpZC5cbiAgICAgKiBAcGFyYW0gZmlsdGVyQ2FzZUlkIFN0cmluZ0lkIG9mIHRoZSBmaWx0ZXIgY2FzZSB0aGF0IHNob3VsZCBiZSBkZWxldGVkXG4gICAgICogQHJldHVybnMgYW4gT2JzZXJ2YWJsZSB0aGF0IGVtaXRzIGB0cnVlYCBpZiB0aGUgY2FzZSB3YXMgc3VjY2Vzc2Z1bGx5IGRlbGV0ZWQgYW5kIGBmYWxzZWAgb3RoZXJ3aXNlXG4gICAgICovXG4gICAgcHVibGljIGRlbGV0ZShmaWx0ZXJDYXNlSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICBjb25zdCByZXN1bHQkID0gbmV3IFJlcGxheVN1YmplY3Q8Ym9vbGVhbj4oMSk7XG4gICAgICAgIHRoaXMuX2Nhc2VTZXJ2aWNlLmRlbGV0ZUNhc2UoZmlsdGVyQ2FzZUlkKS5zdWJzY3JpYmUoKHJlc3BvbnNlOiBFdmVudE91dGNvbWVNZXNzYWdlUmVzb3VyY2UpID0+IHtcbiAgICAgICAgICAgIGlmIChyZXNwb25zZS5zdWNjZXNzKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fbG9nLmRlYnVnKCdGaWx0ZXIgY2FzZSBkZWxldGUgc3VjY2VzcycsIHJlc3BvbnNlKTtcbiAgICAgICAgICAgICAgICByZXN1bHQkLm5leHQodHJ1ZSk7XG4gICAgICAgICAgICAgICAgcmVzdWx0JC5jb21wbGV0ZSgpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9sb2cuZXJyb3IoJ0ZpbHRlciBjYXNlIGRlbGV0ZSBmYWlsdXJlJywgcmVzcG9uc2UpO1xuICAgICAgICAgICAgICAgIHJlc3VsdCQubmV4dChmYWxzZSk7XG4gICAgICAgICAgICAgICAgcmVzdWx0JC5jb21wbGV0ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LCBlID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2xvZy5lcnJvcignRmlsdGVyIGNhc2UgZGVsZXRlIGVycm9yJywgZSk7XG4gICAgICAgICAgICByZXN1bHQkLm5leHQoZmFsc2UpO1xuICAgICAgICAgICAgcmVzdWx0JC5jb21wbGV0ZSgpO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHJlc3VsdCQuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogT3BlbnMgYSBzaWRlIG1lbnUgd2l0aCBmaWx0ZXIgY2FzZXMgYW5kIGFsbG93cyB0aGUgdXNlciB0byBzZWxlY3Qgb25lIG9mIHRoZW0uXG4gICAgICpcbiAgICAgKiBUaGUgZGVmYXVsdCBmaWx0ZXIgY29uc3RyYWlucyB0aGUgY2FzZXMgdG8gYmUgaW5zdGFuY2VzIG9mIHRoZSBmaWx0ZXIgcHJvY2VzcyBhbmQgdG8gYmUgZmlsdGVycyBvZiB0aGUgc3BlY2lmaWVkIHR5cGVcbiAgICAgKiAoYENhc2VgIG9yIGBUYXNrYCkuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZmlsdGVyVHlwZSB3aGV0aGVyIGBDYXNlYCBvciBgVGFza2AgdXNlciBmaWx0ZXJzIHNob3VsZCBiZSBsb2FkZWRcbiAgICAgKiBAcGFyYW0gYWRkaXRpb25hbEZpbHRlciBhZGRpdGlvbmFsIGNvbnN0cmFpbnMgb24gdGhlIGRpc3BsYXllZCB1c2VyIGZpbHRlciBjYXNlcy4gTXVzdCBiZSBvZiB0eXBlIGBDYXNlYFxuICAgICAqIG90aGVyd2lzZSB0aGUgbWV0aG9kIHRocm93cyBhbiBlcnJvci4gSWYgaXQgaXMgYSB7QGxpbmsgTWVyZ2VkRmlsdGVyfSBtdXN0IHVzZSB0aGUgYEFORGAge0BsaW5rIE1lcmdlT3BlcmF0b3J9IG90aGVyd2lzZSBhbiBlcnJvclxuICAgICAqIHdpbGwgYmUgdGhyb3duXG4gICAgICogQHJldHVybnMgYW4gT2JzZXJ2YWJsZSB0aGF0IGVtaXRzIHRoZSBkYXRhIG5lY2Vzc2FyeSB0byByZWNvbnN0cnVjdCB0aGUgc2VsZWN0ZWQgZmlsdGVyLCBvciBgdW5kZWZpbmVkYCBpZiBubyBmaWx0ZXIgd2FzIHNlbGVjdGVkXG4gICAgICovXG4gICAgcHVibGljIGxvYWQoZmlsdGVyVHlwZTogRmlsdGVyVHlwZSwgYWRkaXRpb25hbEZpbHRlcj86IEZpbHRlcik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIGlmIChhZGRpdGlvbmFsRmlsdGVyPy50eXBlID09PSBGaWx0ZXJUeXBlLlRBU0spIHtcbiAgICAgICAgICAgIHRoaXMuX2xvZy5lcnJvcignVGhlIGFkZGl0aW9uYWwgZmlsdGVyIGFwcGxpZWQgdG8gVXNlckZpbHRlcnNTZXJ2aWNlLmxvYWQoKSBtdXN0IGJlIG9mIHR5cGUgQ2FzZScsIGFkZGl0aW9uYWxGaWx0ZXIpO1xuICAgICAgICAgICAgdGhyb3cgRXJyb3IoJ1RoZSBhZGRpdGlvbmFsIGZpbHRlciBhcHBsaWVkIHRvIFVzZXJGaWx0ZXJzU2VydmljZS5sb2FkKCkgbXVzdCBiZSBvZiB0eXBlIENhc2UnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBmaWx0ZXJDYXNlc0ZpbHRlciA9IFNpbXBsZUZpbHRlci5mcm9tQ2FzZVF1ZXJ5KHtcbiAgICAgICAgICAgIHByb2Nlc3M6IHtcbiAgICAgICAgICAgICAgICBpZGVudGlmaWVyOiBVc2VyRmlsdGVyQ29uc3RhbnRzLkZJTFRFUl9ORVRfSURFTlRJRklFUlxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHF1ZXJ5OiBgZGF0YVNldC4ke1VzZXJGaWx0ZXJDb25zdGFudHMuRklMVEVSX1RZUEVfRklFTERfSUR9LmtleVZhbHVlOiR7ZmlsdGVyVHlwZX1gXG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoISFhZGRpdGlvbmFsRmlsdGVyKSB7XG4gICAgICAgICAgICBmaWx0ZXJDYXNlc0ZpbHRlciA9IGZpbHRlckNhc2VzRmlsdGVyLm1lcmdlKGFkZGl0aW9uYWxGaWx0ZXIsIE1lcmdlT3BlcmF0b3IuQU5EKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBSZXBsYXlTdWJqZWN0PGFueT4oMSk7XG4gICAgICAgIGNvbnN0IHJlZiA9IHRoaXMuX2RpYWxvZy5vcGVuKHRoaXMuX2xvYWRGaWx0ZXJDb21wb25lbnQsIHtcbiAgICAgICAgICAgIHBhbmVsQ2xhc3M6IFwiZGlhbG9nLXJlc3BvbnNpdmVcIixcbiAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IGZpbHRlckNhc2VzRmlsdGVyXG4gICAgICAgICAgICB9IGFzIExvYWRGaWx0ZXJJbmplY3Rpb25EYXRhLFxuICAgICAgICB9KTtcbiAgICAgICAgcmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgICAgICAgIGlmIChldmVudC5tZXNzYWdlID09PSAnU2lkZSBtZW51IGNsb3NlZCB1bmV4cGVjdGVkbHknKSB7XG4gICAgICAgICAgICAgICAgcmVzdWx0Lm5leHQoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcmVzdWx0Lm5leHQoZXZlbnQuZGF0YSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXN1bHQuY29tcGxldGUoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiByZXN1bHQuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2F2ZXMgdGhlIHByZWRpY2F0ZSBmaWx0ZXIgY29udGFpbmVkIGluIHRoZSBwcm92aWRlZCB7QGxpbmsgU2VhcmNoU2VydmljZX0gaW5zdGFuY2UuXG4gICAgICpcbiAgICAgKiBUaGUgYmFzZSBmaWx0ZXIgb2YgdGhlIHNlYXJjaCBzZXJ2aWNlIGlzIG5vdCBzYXZlZC5cbiAgICAgKlxuICAgICAqIEEgbmV3IGZpbHRlciBjYXNlIGlzIGNyZWF0ZWQgYW5kIHRoZSBuZWNlc3NhcnkgZmlsdGVyIGluZm9ybWF0aW9uIGlzIHNldCBpbnRvIGl0LlxuICAgICAqXG4gICAgICogVGhlbiBhIHNpZGUgbWVudSB3aXRoIHRoZSBmaWx0ZXIgaXMgb3BlbmVkIGZvciB0aGUgdXNlciB0byBlbnRlciB0aGUgbmFtZSBhbmQgb3RoZXIgcHJvcGVydGllcy5cbiAgICAgKiBUaGUgdXNlciBjYW4gY29uZmlybSBvciBjYW5jZWwgdGhlIHNhdmUgYnkgZmluaXNoaW5nIHRoZSB0YXNrIGluIHRoZSBzaWRlIG1lbnUsIG9yIGJ5IGNhbmNlbGluZy9jbG9zaW5nLlxuICAgICAqXG4gICAgICogQHBhcmFtIHNlYXJjaFNlcnZpY2Ugc2VhcmNoIHNlcnZpY2UgY29udGFpbmluZyBhIHByZWRpY2F0ZSBmaWx0ZXIsIHdlIHdhbnQgdG8gc2F2ZVxuICAgICAqIEBwYXJhbSBhbGxvd2VkTmV0cyBhbGxvd2VkIG5ldHMgb2YgdGhlIHZpZXcsIHRoYXQgY29udGFpbnMgdGhlIHNlYXJjaCBzZXJ2aWNlXG4gICAgICogQHBhcmFtIHNlYXJjaENhdGVnb3JpZXMgc2VhcmNoIGNhdGVnb3JpZXMgYXZhaWxhYmxlIGluIHRoZSBzYXZlZCBhZHZhbmNlZCBzZWFyY2ggY29tcG9uZW50XG4gICAgICogQHBhcmFtIHZpZXdJZCB0aGUgdmlld0lkIG9mIHRoZSB2aWV3IHdoaWNoIGNvbnRhaW5lZCB0aGUgZmlsdGVyLlxuICAgICAqIElmIG5laXRoZXIgdGhlIGB2aWV3SWRgIG5vciB0aGUgYG5hdmlnYXRpb25JdGVtVGFza0RhdGFgIGF0dHJpYnV0ZSBpcyBzZXQgdGhlIGZpbHRlciB3aWxsIGJlIGNyZWF0ZWQgYXMgYSBuZXcgcm9vdCBmaWx0ZXJcbiAgICAgKiB3aXRob3V0IGFueSBwYXJlbnQgZmlsdGVyIGxpbmsuIFRoaXMgd2lsbCBtb3N0IGxpa2VseSByZXN1bHQgaW4gdGhlIGZpbHRlciBiZWluZyBsZXNzIHJlc3RyaWN0aXZlIHRoYW4gd2hhdFxuICAgICAqIHRoZSB1c2VyIHNlZXMgaW4gdGhlIGN1cnJlbnQgdmlldywgc2luY2UgdGhlIGJhc2UgZmlsdGVyIG9mIHRoZSB2aWV3IHdpbGwgTk9UIGJlIHNhdmVkIGFsb25nc2lkZSB0aGUgc2F2ZWQgZmlsdGVyLlxuICAgICAqIEBwYXJhbSBhZGRpdGlvbmFsRGF0YSBzZXQgZGF0YSByZXF1ZXN0IGJvZHksIHRoYXQgaXMgc2VudCB0byB0aGUgZmlsdGVyIGluIGFkZGl0aW9uIHRvIHRoZSBkZWZhdWx0IGJvZHkuXG4gICAgICogVGhlIGRlZmF1bHQgYm9keSBpcyBhcHBsaWVkIGZpcnN0IGFuZCBjYW4gYmUgb3ZlcnJpZGRlbiBieSB0aGlzIGFyZ3VtZW50LlxuICAgICAqIEBwYXJhbSB3aXRoRGVmYXVsdENhdGVnb3JpZXMgV2hldGhlciB0aGUgc2F2ZWQgZmlsdGVyIHNob3VsZCBiZSBzYXZlZCB3aXRoXG4gICAgICogdGhlIFtkZWZhdWx0U2VhcmNoQ2F0ZWdvcmllc117QGxpbmsgRmlsdGVyTWV0YWRhdGEjZGVmYXVsdFNlYXJjaENhdGVnb3JpZXN9IGZsYWcgc2V0IHRvIGB0cnVlYCwgb3IgYGZhbHNlYC5cbiAgICAgKiBAcGFyYW0gaW5oZXJpdEFsbG93ZWROZXRzIFdoZXRoZXIgdGhlIHNhdmVkIGZpbHRlciBzaG91bGQgbWVyZ2UgaXRzIGFsbG93ZWQgbmV0cyB3aXRoIHRoZSBhbGxvd2VkIG5ldHMgcHJvdmlkZWQgYnlcbiAgICAgKiB0aGUge0BsaW5rIEJhc2VBbGxvd2VkTmV0c1NlcnZpY2V9LlxuICAgICAqIEBwYXJhbSBuYXZpZ2F0aW9uSXRlbVRhc2tEYXRhIGlmIHByb3ZpZGVkIHRoZW4gaXQgaW1wbGllcyB0aGUgZmlsdGVyIGhhcyBhIHBhcmVudCBmaWx0ZXIgdGhhdCBjcmVhdGVkIGl0cyBob3N0IGR5bmFtaWMgdmlldy5cbiAgICAgKiBJZiB0aGlzIGlzIHRoZSBjYXNlIHRoZSBjYXNlIElEIG9mIHRoZSBwYXJlbnQgZmlsdGVyIHdpbGwgYmUgc2V0IGludG8gdGhlIG5ld2x5IGNyZWF0ZWQgZmlsdGVyIGNhc2UuXG4gICAgICogSWYgbm90IHNldCBpdCBpbXBsaWVzIHRoaXMgaXMgYSBmaWx0ZXIgb3JpZ2luYXRpbmcgaW4gYW4gaW4tYXBwIHZpZXcgYW5kIGl0cyB2aWV3IGlkIHdpbGwgYmUgc2V0IGludG8gdGhlIGNyZWF0ZWQgZmlsdGVyLlxuICAgICAqIEByZXR1cm5zIGFuIG9ic2VydmFibGUgdGhhdCBlbWl0cyB0aGUgaWQgb2YgdGhlIGNyZWF0ZWQgRmlsdGVyIGNhc2UgaW5zdGFuY2Ugb3IgYHVuZGVmaW5lZGAgaWYgdGhlIHVzZXIgY2FuY2VsZWQgdGhlIHNhdmUgcHJvY2VzcyxcbiAgICAgKiBvciB0aGUgZmlsdGVyIGNvdWxkIG5vdCBiZSBzYXZlZFxuICAgICAqL1xuICAgIHB1YmxpYyBzYXZlKHNlYXJjaFNlcnZpY2U6IFNlYXJjaFNlcnZpY2UsXG4gICAgICAgICAgICAgICAgYWxsb3dlZE5ldHM6IFJlYWRvbmx5QXJyYXk8c3RyaW5nPixcbiAgICAgICAgICAgICAgICBzZWFyY2hDYXRlZ29yaWVzOiBSZWFkb25seUFycmF5PFR5cGU8Q2F0ZWdvcnk8YW55Pj4+LFxuICAgICAgICAgICAgICAgIHZpZXdJZD86IHN0cmluZyxcbiAgICAgICAgICAgICAgICBhZGRpdGlvbmFsRGF0YTogVGFza1NldERhdGFSZXF1ZXN0RmllbGRzID0ge30sXG4gICAgICAgICAgICAgICAgd2l0aERlZmF1bHRDYXRlZ29yaWVzID0gdHJ1ZSxcbiAgICAgICAgICAgICAgICBpbmhlcml0QWxsb3dlZE5ldHMgPSB0cnVlLFxuICAgICAgICAgICAgICAgIG5hdmlnYXRpb25JdGVtVGFza0RhdGE6IEFycmF5PERhdGFHcm91cD4gPSBudWxsKTogT2JzZXJ2YWJsZTxTYXZlZEZpbHRlck1ldGFkYXRhPiB7XG4gICAgICAgIGlmICghc2VhcmNoU2VydmljZS5hZGRpdGlvbmFsRmlsdGVyc0FwcGxpZWQpIHtcbiAgICAgICAgICAgIHRoaXMuX2xvZy53YXJuKCdUaGUgcHJvdmlkZWQgU2VhcmNoU2VydmljZSBjb250YWlucyBubyBmaWx0ZXIgYmVzaWRlcyB0aGUgYmFzZSBmaWx0ZXIuIE5vdGhpbmcgdG8gc2F2ZS4nKTtcbiAgICAgICAgICAgIHJldHVybiBvZih1bmRlZmluZWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcmVzdWx0ID0gbmV3IFJlcGxheVN1YmplY3Q8U2F2ZWRGaWx0ZXJNZXRhZGF0YT4oMSk7XG4gICAgICAgIHRoaXMuY3JlYXRlRmlsdGVyQ2FzZUFuZFNldERhdGEoXG4gICAgICAgICAgICBzZWFyY2hTZXJ2aWNlLFxuICAgICAgICAgICAgYWxsb3dlZE5ldHMsXG4gICAgICAgICAgICBzZWFyY2hDYXRlZ29yaWVzLFxuICAgICAgICAgICAgdmlld0lkLFxuICAgICAgICAgICAgYWRkaXRpb25hbERhdGEsXG4gICAgICAgICAgICB3aXRoRGVmYXVsdENhdGVnb3JpZXMsXG4gICAgICAgICAgICBpbmhlcml0QWxsb3dlZE5ldHMsXG4gICAgICAgICAgICBuYXZpZ2F0aW9uSXRlbVRhc2tEYXRhXG4gICAgICAgICkuc3Vic2NyaWJlKGZpbHRlckNhc2VJZCA9PiB7XG4gICAgICAgICAgICBjb25zdCByZWYgPSB0aGlzLl9kaWFsb2cub3Blbih0aGlzLl9zYXZlRmlsdGVyQ29tcG9uZW50LCB7XG4gICAgICAgICAgICAgICAgcGFuZWxDbGFzczogXCJkaWFsb2ctcmVzcG9uc2l2ZVwiLFxuICAgICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICAgICAgbmV3RmlsdGVyQ2FzZUlkOiBmaWx0ZXJDYXNlSWRcbiAgICAgICAgICAgICAgICB9IGFzIFNhdmVGaWx0ZXJJbmplY3Rpb25EYXRhLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoZXZlbnQgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChldmVudC5tZXNzYWdlID09PSAnU2lkZSBtZW51IGNsb3NlZCB1bmV4cGVjdGVkbHknKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGVsZXRlKGZpbHRlckNhc2VJZCk7XG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdC5uZXh0KCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0Lm5leHQoe1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyQ2FzZUlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgYWxsb3dlZE5ldHM6IFsuLi5hbGxvd2VkTmV0c10sXG4gICAgICAgICAgICAgICAgICAgICAgICBvcmlnaW5WaWV3SWQ6IHZpZXdJZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlck1ldGFkYXRhOiB0aGlzLmZpbHRlck1ldGFkYXRhRnJvbVNlYXJjaFNlcnZpY2UoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VhcmNoU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWFyY2hDYXRlZ29yaWVzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpdGhEZWZhdWx0Q2F0ZWdvcmllcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmhlcml0QWxsb3dlZE5ldHNcbiAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6IFNpbXBsZUZpbHRlci5mcm9tUXVlcnkoe3F1ZXJ5OiBzZWFyY2hTZXJ2aWNlLnJvb3RQcmVkaWNhdGUucXVlcnkudmFsdWV9LCBzZWFyY2hTZXJ2aWNlLmZpbHRlclR5cGUpXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXN1bHQuY29tcGxldGUoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHJlc3VsdC5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTYXZlcyB0aGUgcHJlZGljYXRlIGZpbHRlciBjb250YWluZWQgaW4gdGhlIHByb3ZpZGVkIHtAbGluayBTZWFyY2hTZXJ2aWNlfSBpbnN0YW5jZS5cbiAgICAgKlxuICAgICAqIFRoZSBiYXNlIGZpbHRlciBvZiB0aGUgc2VhcmNoIHNlcnZpY2UgaXMgbm90IHNhdmVkLlxuICAgICAqXG4gICAgICogQSBuZXcgZmlsdGVyIGNhc2UgaXMgY3JlYXRlZCBhbmQgdGhlIG5lY2Vzc2FyeSBmaWx0ZXIgaW5mb3JtYXRpb24gaXMgc2V0IGludG8gaXQuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gc2VhcmNoU2VydmljZSBzZWFyY2ggc2VydmljZSBjb250YWluaW5nIGEgcHJlZGljYXRlIGZpbHRlciwgd2Ugd2FudCB0byBzYXZlXG4gICAgICogQHBhcmFtIGFsbG93ZWROZXRzIGFsbG93ZWQgbmV0cyBvZiB0aGUgdmlldywgdGhhdCBjb250YWlucyB0aGUgc2VhcmNoIHNlcnZpY2VcbiAgICAgKiBAcGFyYW0gc2VhcmNoQ2F0ZWdvcmllcyBzZWFyY2ggY2F0ZWdvcmllcyBhdmFpbGFibGUgaW4gdGhlIHNhdmVkIGFkdmFuY2VkIHNlYXJjaCBjb21wb25lbnRcbiAgICAgKiBAcGFyYW0gdmlld0lkIHRoZSB2aWV3SWQgb2YgdGhlIHZpZXcgd2hpY2ggY29udGFpbmVkIHRoZSBmaWx0ZXIuXG4gICAgICogSWYgbmVpdGhlciB0aGUgYHZpZXdJZGAgbm9yIHRoZSBgbmF2aWdhdGlvbkl0ZW1UYXNrRGF0YWAgYXR0cmlidXRlIGlzIHNldCB0aGUgZmlsdGVyIHdpbGwgYmUgY3JlYXRlZCBhcyBhIG5ldyByb290IGZpbHRlclxuICAgICAqIHdpdGhvdXQgYW55IHBhcmVudCBmaWx0ZXIgbGluay4gVGhpcyB3aWxsIG1vc3QgbGlrZWx5IHJlc3VsdCBpbiB0aGUgZmlsdGVyIGJlaW5nIGxlc3MgcmVzdHJpY3RpdmUgdGhhbiB3aGF0XG4gICAgICogdGhlIHVzZXIgc2VlcyBpbiB0aGUgY3VycmVudCB2aWV3LCBzaW5jZSB0aGUgYmFzZSBmaWx0ZXIgb2YgdGhlIHZpZXcgd2lsbCBOT1QgYmUgc2F2ZWQgYWxvbmdzaWRlIHRoZSBzYXZlZCBmaWx0ZXIuXG4gICAgICogQHBhcmFtIGFkZGl0aW9uYWxEYXRhIHNldCBkYXRhIHJlcXVlc3QgYm9keSwgdGhhdCBpcyBzZW50IHRvIHRoZSBmaWx0ZXIgaW4gYWRkaXRpb24gdG8gdGhlIGRlZmF1bHQgYm9keS5cbiAgICAgKiBUaGUgZGVmYXVsdCBib2R5IGlzIGFwcGxpZWQgZmlyc3QgYW5kIGNhbiBiZSBvdmVycmlkZGVuIGJ5IHRoaXMgYXJndW1lbnQuXG4gICAgICogQHBhcmFtIHdpdGhEZWZhdWx0Q2F0ZWdvcmllcyBXaGV0aGVyIHRoZSBzYXZlZCBmaWx0ZXIgc2hvdWxkIGJlIHNhdmVkIHdpdGhcbiAgICAgKiB0aGUgW2RlZmF1bHRTZWFyY2hDYXRlZ29yaWVzXXtAbGluayBGaWx0ZXJNZXRhZGF0YSNkZWZhdWx0U2VhcmNoQ2F0ZWdvcmllc30gZmxhZyBzZXQgdG8gYHRydWVgLCBvciBgZmFsc2VgLlxuICAgICAqIEBwYXJhbSBpbmhlcml0QWxsb3dlZE5ldHMgV2hldGhlciB0aGUgc2F2ZWQgZmlsdGVyIHNob3VsZCBtZXJnZSBpdHMgYWxsb3dlZCBuZXRzIHdpdGggdGhlIGFsbG93ZWQgbmV0cyBwcm92aWRlZCBieVxuICAgICAqIHRoZSB7QGxpbmsgQmFzZUFsbG93ZWROZXRzU2VydmljZX0uXG4gICAgICogQHBhcmFtIG5hdmlnYXRpb25JdGVtVGFza0RhdGEgaWYgcHJvdmlkZWQgdGhlbiBpdCBpbXBsaWVzIHRoZSBmaWx0ZXIgaGFzIGEgcGFyZW50IGZpbHRlciB0aGF0IGNyZWF0ZWQgaXRzIGhvc3QgZHluYW1pYyB2aWV3LlxuICAgICAqIElmIHRoaXMgaXMgdGhlIGNhc2UgdGhlIGNhc2UgSUQgb2YgdGhlIHBhcmVudCBmaWx0ZXIgd2lsbCBiZSBzZXQgaW50byB0aGUgbmV3bHkgY3JlYXRlZCBmaWx0ZXIgY2FzZS5cbiAgICAgKiBJZiBub3Qgc2V0IGl0IGltcGxpZXMgdGhpcyBpcyBhIGZpbHRlciBvcmlnaW5hdGluZyBpbiBhbiBpbi1hcHAgdmlldyBhbmQgaXRzIHZpZXcgaWQgd2lsbCBiZSBzZXQgaW50byB0aGUgY3JlYXRlZCBmaWx0ZXIuXG4gICAgICogQHJldHVybnMgYW4gb2JzZXJ2YWJsZSB0aGF0IGVtaXRzIHRoZSBpZCBvZiB0aGUgY3JlYXRlZCBGaWx0ZXIgY2FzZSBpbnN0YW5jZVxuICAgICAqL1xuICAgIHB1YmxpYyBjcmVhdGVGaWx0ZXJDYXNlQW5kU2V0RGF0YShzZWFyY2hTZXJ2aWNlOiBTZWFyY2hTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGxvd2VkTmV0czogUmVhZG9ubHlBcnJheTxzdHJpbmc+LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWFyY2hDYXRlZ29yaWVzOiBSZWFkb25seUFycmF5PFR5cGU8Q2F0ZWdvcnk8YW55Pj4+LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3SWQ/OiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZGl0aW9uYWxEYXRhOiBUYXNrU2V0RGF0YVJlcXVlc3RGaWVsZHMgPSB7fSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2l0aERlZmF1bHRDYXRlZ29yaWVzID0gdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5oZXJpdEFsbG93ZWROZXRzID0gdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmF2aWdhdGlvbkl0ZW1UYXNrRGF0YTogQXJyYXk8RGF0YUdyb3VwPiA9IG51bGwpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBuZXcgUmVwbGF5U3ViamVjdDxzdHJpbmc+KDEpO1xuICAgICAgICB0aGlzLndoZW5Jbml0aWFsaXplZCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9jYXNlU2VydmljZS5jcmVhdGVDYXNlKHtcbiAgICAgICAgICAgICAgICB0aXRsZTogdGhpcy5fZmlsdGVyTmV0LmRlZmF1bHRDYXNlTmFtZSxcbiAgICAgICAgICAgICAgICBuZXRJZDogdGhpcy5fZmlsdGVyTmV0LnN0cmluZ0lkXG4gICAgICAgICAgICB9KS5zdWJzY3JpYmUoZmlsdGVyQ2FzZSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fdGFza1NlcnZpY2UuZ2V0VGFza3MoU2ltcGxlRmlsdGVyLmZyb21UYXNrUXVlcnkoe1xuICAgICAgICAgICAgICAgICAgICBjYXNlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZDogKGZpbHRlckNhc2Uub3V0Y29tZSBhcyBDcmVhdGVDYXNlRXZlbnRPdXRjb21lKS5hQ2FzZS5zdHJpbmdJZFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSkpLnN1YnNjcmliZShwYWdlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFoYXNDb250ZW50KHBhZ2UpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0V4cGVjdGVkIGZpbHRlciBwcm9jZXNzIHRvIGNvbnRhaW4gdGFza3MsIGJ1dCBub25lIHdlcmUgZm91bmQhJyk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBjb25zdCBpbml0VGFzayA9IHBhZ2UuY29udGVudC5maW5kKHRhc2sgPT4gdGFzay50cmFuc2l0aW9uSWQgPT09IFVzZXJGaWx0ZXJDb25zdGFudHMuU0VUX0ZJTFRFUl9NRVRBREFUQV9UUkFOU0lUSU9OX0lEKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGluaXRUYXNrID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgRXhwZWN0ZWQgZmlsdGVyIHByb2Nlc3MgdG8gY29udGFpbiB0YXNrICcke1VzZXJGaWx0ZXJDb25zdGFudHMuU0VUX0ZJTFRFUl9NRVRBREFUQV9UUkFOU0lUSU9OX0lEXG4gICAgICAgICAgICAgICAgICAgICAgICB9JywgYnV0IG5vbmUgd2FzIGZvdW5kIWApO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVxdWVzdEJvZHkgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBbVXNlckZpbHRlckNvbnN0YW50cy5GSUxURVJfVFlQRV9GSUVMRF9JRF06IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGVSZXNvdXJjZS5FTlVNRVJBVElPTl9NQVAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IHNlYXJjaFNlcnZpY2UuZmlsdGVyVHlwZVxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIFtVc2VyRmlsdGVyQ29uc3RhbnRzLkZJTFRFUl9GSUVMRF9JRF06IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGVSZXNvdXJjZS5GSUxURVIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IHNlYXJjaFNlcnZpY2Uucm9vdFByZWRpY2F0ZS5xdWVyeS52YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGxvd2VkTmV0cyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXJNZXRhZGF0YTogdGhpcy5maWx0ZXJNZXRhZGF0YUZyb21TZWFyY2hTZXJ2aWNlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWFyY2hTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWFyY2hDYXRlZ29yaWVzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aXRoRGVmYXVsdENhdGVnb3JpZXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluaGVyaXRBbGxvd2VkTmV0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgICAgICAgICAgbGV0IHBhcmVudEZpbHRlckNhc2VJZEZpZWxkO1xuICAgICAgICAgICAgICAgICAgICBpZiAobmF2aWdhdGlvbkl0ZW1UYXNrRGF0YSAhPT0gbnVsbCAmJiBuYXZpZ2F0aW9uSXRlbVRhc2tEYXRhICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmVudEZpbHRlckNhc2VJZEZpZWxkID0gZ2V0RmllbGRGcm9tRGF0YUdyb3VwcyhuYXZpZ2F0aW9uSXRlbVRhc2tEYXRhLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVzZXJGaWx0ZXJDb25zdGFudHMuRklMVEVSX0NBU0VfSURfRklFTERfSUQpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKHBhcmVudEZpbHRlckNhc2VJZEZpZWxkICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVlc3RCb2R5W1VzZXJGaWx0ZXJDb25zdGFudHMuUEFSRU5UX0ZJTFRFUl9DQVNFX0lEX0ZJRUxEX0lEXSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGVSZXNvdXJjZS5URVhULFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBwYXJlbnRGaWx0ZXJDYXNlSWRGaWVsZC52YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICh2aWV3SWQgIT09IHVuZGVmaW5lZCB8fCB2aWV3SWQgIT09ICcnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXF1ZXN0Qm9keVtVc2VyRmlsdGVyQ29uc3RhbnRzLk9SSUdJTl9WSUVXX0lEX0ZJRUxEX0lEXSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBGaWVsZFR5cGVSZXNvdXJjZS5URVhULFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiB2aWV3SWRcbiAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB0aGlzLmFzc2lnblNldERhdGFGaW5pc2goaW5pdFRhc2ssIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpbml0VGFzay5zdHJpbmdJZF06IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5yZXF1ZXN0Qm9keSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5hZGRpdGlvbmFsRGF0YVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9LCB0aGlzLl9jYWxsQ2hhaW5TZXJ2aWNlLmNyZWF0ZShzdWNjZXNzID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghc3VjY2Vzcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRmlsdGVyIGluc3RhbmNlIGNvdWxkIG5vdCBiZSBpbml0aWFsaXplZCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQubmV4dCgoZmlsdGVyQ2FzZS5vdXRjb21lIGFzIENyZWF0ZUNhc2VFdmVudE91dGNvbWUpLmFDYXNlLnN0cmluZ0lkKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdC5jb21wbGV0ZSgpO1xuICAgICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSwgJ3NhdmVXaXRoU2lkZU1lbnUnKTtcbiAgICAgICAgcmV0dXJuIHJlc3VsdC5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgd2hlbkluaXRpYWxpemVkKG9uU3VjY2VzczogKCkgPT4gdm9pZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ldGhvZD86IHN0cmluZyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uRmFpbHVyZTogKCkgPT4gdm9pZCA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9sb2cuZXJyb3IoYFVzZXJGaWx0ZXJTZXJ2aWNlIGZhaWxlZCB0byBpbml0aWFsaXplIGFuZCB0aGUgY2FsbGVkIG1ldGhvZCR7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ldGhvZCA/ICcgKCcgKyBtZXRob2QgKyAnKScgOiAnJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gY2Fubm90IGJlIHBlcmZvcm1lZGApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkge1xuICAgICAgICB0aGlzLl9pbml0aWFsaXplZCQuYXNPYnNlcnZhYmxlKCkucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoaW5pdGlhbGl6ZWQgPT4ge1xuICAgICAgICAgICAgaW5pdGlhbGl6ZWQgPyBvblN1Y2Nlc3MoKSA6IG9uRmFpbHVyZSgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyBUT0RPIDYuNC4yMDIxIElNUFJPVkVNRU5UIC0gZXh0cmFjdCBzaW1pbGFyIG1ldGhvZCBpbnRvIHNvbWUgdXRpbGl0eSBzZXJ2aWNlXG4gICAgcHJvdGVjdGVkIGFzc2lnblNldERhdGFGaW5pc2godGFzazogVGFzaywgZGF0YTogVGFza1NldERhdGFSZXF1ZXN0Qm9keSwgY2FsbENoYWluOiBTdWJqZWN0PGJvb2xlYW4+KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3Rhc2tTZXJ2aWNlLmFzc2lnblRhc2sodGFzay5zdHJpbmdJZCkuc3Vic2NyaWJlKGFzc2lnbk91dGNvbWUgPT4ge1xuICAgICAgICAgICAgaWYgKGFzc2lnbk91dGNvbWUuZXJyb3IpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9sb2cuZXJyb3IoYENvdWxkIG5vdCBhc3NpZ24gdGFzayAnJHt0YXNrLnRpdGxlfSdgLCB0YXNrLCBhc3NpZ25PdXRjb21lLmVycm9yKTtcbiAgICAgICAgICAgICAgICBjYWxsQ2hhaW4ubmV4dChmYWxzZSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLl90YXNrU2VydmljZS5zZXREYXRhKHRhc2suc3RyaW5nSWQsIGRhdGEpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fdGFza1NlcnZpY2UuZmluaXNoVGFzayh0YXNrLnN0cmluZ0lkKS5zdWJzY3JpYmUoZmluaXNoT3V0Y29tZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChmaW5pc2hPdXRjb21lLmVycm9yKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9sb2cuZXJyb3IoYENvdWxkIG5vdCBmaW5pc2ggdGFzayAnJHt0YXNrLnRpdGxlfSdgLCB0YXNrLCBmaW5pc2hPdXRjb21lLmVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxDaGFpbi5uZXh0KGZhbHNlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGNhbGxDaGFpbi5uZXh0KHRydWUpO1xuICAgICAgICAgICAgICAgIH0sIGVycm9yID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fbG9nLmVycm9yKGBDb3VsZCBub3QgZmluaXNoIHRhc2sgJyR7dGFzay50aXRsZX0nYCwgdGFzaywgZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICBjYWxsQ2hhaW4ubmV4dChmYWxzZSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LCBlcnJvciA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fbG9nLmVycm9yKGBDb3VsZCBub3Qgc2V0IGRhdGEgb2YgdGFzayAnJHt0YXNrLnRpdGxlfSdgLCB0YXNrLCBkYXRhLCBlcnJvcik7XG4gICAgICAgICAgICAgICAgY2FsbENoYWluLm5leHQoZmFsc2UpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0sIGVycm9yID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2xvZy5lcnJvcihgQ291bGQgbm90IGFzc2lnbiB0YXNrICcke3Rhc2sudGl0bGV9J2AsIHRhc2ssIGVycm9yKTtcbiAgICAgICAgICAgIGNhbGxDaGFpbi5uZXh0KGZhbHNlKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGZpbHRlck1ldGFkYXRhRnJvbVNlYXJjaFNlcnZpY2Uoc2VhcmNoU2VydmljZTogU2VhcmNoU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWFyY2hDYXRlZ29yaWVzOiBSZWFkb25seUFycmF5PFR5cGU8Q2F0ZWdvcnk8YW55Pj4+LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpdGhEZWZhdWx0Q2F0ZWdvcmllczogYm9vbGVhbixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmhlcml0QWxsb3dlZE5ldHM6IGJvb2xlYW4pOiBGaWx0ZXJNZXRhZGF0YSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBmaWx0ZXJUeXBlOiBzZWFyY2hTZXJ2aWNlLmZpbHRlclR5cGUsXG4gICAgICAgICAgICBwcmVkaWNhdGVNZXRhZGF0YTogc2VhcmNoU2VydmljZS5jcmVhdGVQcmVkaWNhdGVNZXRhZGF0YSgpLFxuICAgICAgICAgICAgc2VhcmNoQ2F0ZWdvcmllczogc2VhcmNoQ2F0ZWdvcmllcy5tYXAoYyA9PiB0aGlzLl9jYXRlZ29yeVJlc29sdmVyU2VydmljZS5zZXJpYWxpemUoYykpLFxuICAgICAgICAgICAgZGVmYXVsdFNlYXJjaENhdGVnb3JpZXM6IHdpdGhEZWZhdWx0Q2F0ZWdvcmllcyxcbiAgICAgICAgICAgIGluaGVyaXRBbGxvd2VkTmV0c1xuICAgICAgICB9O1xuICAgIH1cbn1cbiJdfQ==
@@ -50,6 +50,9 @@ export class AbstractHeaderComponent {
50
50
  this._initResponsiveHeaders = responsive;
51
51
  }
52
52
  }
53
+ get approvalFormControl() {
54
+ return this._approvalFormControl;
55
+ }
53
56
  changeHeadersMode(mode, saveLastMode = true) {
54
57
  if (this.headerService) {
55
58
  this.headerService.changeMode(mode, saveLastMode);
@@ -135,6 +138,7 @@ export class AbstractHeaderComponent {
135
138
  Validators.required,
136
139
  Validators.min(180)
137
140
  ]);
141
+ this._approvalFormControl = new FormControl(false);
138
142
  if (exist) {
139
143
  this.initializeValueChanges();
140
144
  }
@@ -163,7 +167,7 @@ export class AbstractHeaderComponent {
163
167
  }
164
168
  }
165
169
  AbstractHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractHeaderComponent, deps: [{ token: i0.Injector }, { token: i1.TranslateService }, { token: i2.OverflowService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
166
- AbstractHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AbstractHeaderComponent, selector: "ncc-abstract-header", inputs: { type: "type", hideHeaderMenu: "hideHeaderMenu", showEditButton: "showEditButton", showSortButton: "showSortButton", showSearchButton: "showSearchButton", showTableSection: "showTableSection", maxHeaderColumns: "maxHeaderColumns", responsiveHeaders: "responsiveHeaders" }, ngImport: i0, template: '', isInline: true });
170
+ AbstractHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AbstractHeaderComponent, selector: "ncc-abstract-header", inputs: { type: "type", hideHeaderMenu: "hideHeaderMenu", showEditButton: "showEditButton", showSortButton: "showSortButton", showSearchButton: "showSearchButton", showTableSection: "showTableSection", approval: "approval", maxHeaderColumns: "maxHeaderColumns", responsiveHeaders: "responsiveHeaders" }, ngImport: i0, template: '', isInline: true });
167
171
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractHeaderComponent, decorators: [{
168
172
  type: Component,
169
173
  args: [{
@@ -184,9 +188,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
184
188
  type: Input
185
189
  }], showTableSection: [{
186
190
  type: Input
191
+ }], approval: [{
192
+ type: Input
187
193
  }], maxHeaderColumns: [{
188
194
  type: Input
189
195
  }], responsiveHeaders: [{
190
196
  type: Input
191
197
  }] } });
192
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy1jb3JlL3NyYy9saWIvaGVhZGVyL2Fic3RyYWN0LWhlYWRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBWSxLQUFLLEVBQXFCLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV0RixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNwRSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNwRSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUNoRixPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ2hELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHVEQUF1RCxDQUFDO0FBQzFGLE9BQU8sRUFBQyxXQUFXLEVBQUUsVUFBVSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFHdkQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBRTVELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQU01QyxNQUFNLE9BQWdCLHVCQUF1QjtJQTJCekMsWUFBc0IsU0FBbUIsRUFDbkIsVUFBNEIsRUFDaEIsZ0JBQWlDO1FBRjdDLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFDbkIsZUFBVSxHQUFWLFVBQVUsQ0FBa0I7UUFDaEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFpQjtRQTNCaEQseUJBQW9CLEdBQUcsQ0FBQyxDQUFDO1FBQ3pCLHlCQUFvQixHQUFHLEdBQUcsQ0FBQztRQUMzQix3QkFBbUIsR0FBRyxHQUFHLENB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QUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUM3SCxJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLEVBQUU7Z0JBQy9CLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO2dCQUMxQyxJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxVQUFVLENBQUMsSUFBSSxFQUFFO29CQUNwRCxJQUFJLENBQUMsYUFBbUMsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO2lCQUNqRTthQUNKO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOztxSEEvS2lCLHVCQUF1Qjt5R0FBdkIsdUJBQXVCLHFWQUYvQixFQUFFOzRGQUVNLHVCQUF1QjtrQkFKNUMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixRQUFRLEVBQUUsRUFBRTtpQkFDZjs7MEJBOEJnQixRQUFROzRDQXhCWixJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkF3QkssZ0JBQWdCO3NCQUQxQixLQUFLO2dCQWFLLGlCQUFpQjtzQkFEM0IsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbmplY3RvciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPcHRpb25hbH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Fic3RyYWN0SGVhZGVyU2VydmljZX0gZnJvbSAnLi9hYnN0cmFjdC1oZWFkZXItc2VydmljZSc7XG5pbXBvcnQge0Nhc2VIZWFkZXJTZXJ2aWNlfSBmcm9tICcuL2Nhc2UtaGVhZGVyL2Nhc2UtaGVhZGVyLnNlcnZpY2UnO1xuaW1wb3J0IHtUYXNrSGVhZGVyU2VydmljZX0gZnJvbSAnLi90YXNrLWhlYWRlci90YXNrLWhlYWRlci5zZXJ2aWNlJztcbmltcG9ydCB7V29ya2Zsb3dIZWFkZXJTZXJ2aWNlfSBmcm9tICcuL3dvcmtmbG93LWhlYWRlci93b3JrZmxvdy1oZWFkZXIuc2VydmljZSc7XG5pbXBvcnQge0hlYWRlclR5cGV9IGZyb20gJy4vbW9kZWxzL2hlYWRlci10eXBlJztcbmltcG9ydCB7SGVhZGVyTW9kZX0gZnJvbSAnLi9tb2RlbHMvaGVhZGVyLW1vZGUnO1xuaW1wb3J0IHtIZWFkZXJTZWFyY2hTZXJ2aWNlfSBmcm9tICcuLi9zZWFyY2gvaGVhZGVyLXNlYXJjaC1zZXJ2aWNlL2hlYWRlci1zZWFyY2guc2VydmljZSc7XG5pbXBvcnQge0Zvcm1Db250cm9sLCBWYWxpZGF0b3JzfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtPdmVyZmxvd1NlcnZpY2V9IGZyb20gJy4vc2VydmljZXMvb3ZlcmZsb3cuc2VydmljZSc7XG5pbXBvcnQge3N0b3BQcm9wYWdhdGlvbn0gZnJvbSAnLi4vdXRpbGl0eS9zdG9wLXByb3BhZ2F0aW9uJztcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZGVib3VuY2VUaW1lfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduY2MtYWJzdHJhY3QtaGVhZGVyJyxcbiAgICB0ZW1wbGF0ZTogJydcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RIZWFkZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgREVGQVVMVF9DT0xVTU5fQ09VTlQgPSA2O1xuICAgIHByb3RlY3RlZCByZWFkb25seSBERUZBVUxUX0NPTFVNTl9XSURUSCA9IDIyMDtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgSU5QVVRfREVCT1VOQ0VfVElNRSA9IDYwMDtcbiAgICBASW5wdXQoKSB0eXBlOiBIZWFkZXJUeXBlID0gSGVhZGVyVHlwZS5DQVNFO1xuICAgIEBJbnB1dCgpIGhpZGVIZWFkZXJNZW51ID0gZmFsc2U7XG4gICAgQElucHV0KCkgc2hvd0VkaXRCdXR0b24gPSB0cnVlO1xuICAgIEBJbnB1dCgpIHNob3dTb3J0QnV0dG9uID0gdHJ1ZTtcbiAgICBASW5wdXQoKSBzaG93U2VhcmNoQnV0dG9uID0gdHJ1ZTtcbiAgICBASW5wdXQoKSBzaG93VGFibGVTZWN0aW9uID0gdHJ1ZTtcblxuICAgIHB1YmxpYyBoZWFkZXJTZXJ2aWNlOiBBYnN0cmFjdEhlYWRlclNlcnZpY2U7XG4gICAgcHJvdGVjdGVkIF9oZWFkZXJTZWFyY2g6IEhlYWRlclNlYXJjaFNlcnZpY2U7XG4gICAgcHVibGljIHJlYWRvbmx5IGhlYWRlck1vZGVFbnVtID0gSGVhZGVyTW9kZTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgaGVhZGVyVHlwZUVudW0gPSBIZWFkZXJUeXBlO1xuICAgIHB1YmxpYyBvdmVyZmxvd0NvbnRyb2w6IEZvcm1Db250cm9sO1xuICAgIHB1YmxpYyBjb2x1bW5Db3VudENvbnRyb2w6IEZvcm1Db250cm9sO1xuICAgIHB1YmxpYyBjb2x1bW5XaWR0aENvbnRyb2w6IEZvcm1Db250cm9sO1xuICAgIHB1YmxpYyBjYW5PdmVyZmxvdzogYm9vbGVhbjtcbiAgICBwdWJsaWMgc3ViT3ZlcmZsb3dDb250cm9sOiBTdWJzY3JpcHRpb247XG4gICAgcHVibGljIHN1YkNvbHVtbkNvdW50Q29udHJvbDogU3Vic2NyaXB0aW9uO1xuICAgIHB1YmxpYyBzdWJDb2x1bW5XaWR0aENvbnRyb2w6IFN1YnNjcmlwdGlvbjtcblxuICAgIHByb3RlY3RlZCBfaW5pdEhlYWRlckNvdW50OiBudW1iZXIgPSB1bmRlZmluZWQ7XG4gICAgcHJvdGVjdGVkIF9pbml0UmVzcG9uc2l2ZUhlYWRlcnM6IGJvb2xlYW4gPSB1bmRlZmluZWQ7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgX2luamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX3RyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBwcm90ZWN0ZWQgX292ZXJmbG93U2VydmljZTogT3ZlcmZsb3dTZXJ2aWNlKSB7XG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZUZvcm1Db250cm9scyh0aGlzLl9vdmVyZmxvd1NlcnZpY2UgIT09IG51bGwpO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNldCBtYXhIZWFkZXJDb2x1bW5zKGNvdW50OiBudW1iZXIpIHtcbiAgICAgICAgaWYgKHRoaXMuaGVhZGVyU2VydmljZSkge1xuICAgICAgICAgICAgdGhpcy5oZWFkZXJTZXJ2aWNlLmhlYWRlckNvbHVtbkNvdW50ID0gY291bnQ7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9pbml0SGVhZGVyQ291bnQgPSBjb3VudDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5fb3ZlcmZsb3dTZXJ2aWNlID09PSBudWxsIHx8ICh0aGlzLl9vdmVyZmxvd1NlcnZpY2UgIT09IG51bGwgJiYgIXRoaXMuX292ZXJmbG93U2VydmljZS5pbml0aWFsaXplZENvdW50KSkge1xuICAgICAgICAgICAgdGhpcy5jb2x1bW5Db3VudENvbnRyb2wuc2V0VmFsdWUoY291bnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2V0IHJlc3BvbnNpdmVIZWFkZXJzKHJlc3BvbnNpdmU6IGJvb2xlYW4pIHtcbiAgICAgICAgaWYgKHRoaXMuaGVhZGVyU2VydmljZSkge1xuICAgICAgICAgICAgdGhpcy5oZWFkZXJTZXJ2aWNlLnJlc3BvbnNpdmVIZWFkZXJzID0gcmVzcG9uc2l2ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX2luaXRSZXNwb25zaXZlSGVhZGVycyA9IHJlc3BvbnNpdmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgY2hhbmdlSGVhZGVyc01vZGUobW9kZTogSGVhZGVyTW9kZSwgc2F2ZUxhc3RNb2RlOiBib29sZWFuID0gdHJ1ZSkge1xuICAgICAgICBpZiAodGhpcy5oZWFkZXJTZXJ2aWNlKSB7XG4gICAgICAgICAgICB0aGlzLmhlYWRlclNlcnZpY2UuY2hhbmdlTW9kZShtb2RlLCBzYXZlTGFzdE1vZGUpXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZXNvbHZlSGVhZGVyU2VydmljZSgpO1xuICAgICAgICB0aGlzLmluaXRpYWxpemVkSGVhZGVyU2VhcmNoKCk7XG4gICAgICAgIGlmICh0aGlzLl9pbml0SGVhZGVyQ291bnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy5oZWFkZXJTZXJ2aWNlLmhlYWRlckNvbHVtbkNvdW50ID0gdGhpcy5faW5pdEhlYWRlckNvdW50O1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLl9pbml0UmVzcG9uc2l2ZUhlYWRlcnMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy5oZWFkZXJTZXJ2aWNlLnJlc3BvbnNpdmVIZWFkZXJzID0gdGhpcy5faW5pdFJlc3BvbnNpdmVIZWFkZXJzO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaGVhZGVyU2VydmljZS5wcmVmZXJlbmNlQ29sdW1uQ291bnQkLnN1YnNjcmliZSh2YWx1ZSA9PiB0aGlzLmNvbHVtbkNvdW50Q29udHJvbC5zZXRWYWx1ZSh2YWx1ZSkpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5jYW5PdmVyZmxvdykge1xuICAgICAgICAgICAgdGhpcy5zdWJDb2x1bW5XaWR0aENvbnRyb2wudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgIHRoaXMuc3ViQ29sdW1uQ291bnRDb250cm9sLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICB0aGlzLnN1Yk92ZXJmbG93Q29udHJvbC51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSW5qZWN0cyB0aGUgY29ycmVjdCB7QGxpbmsgQWJzdHJhY3RIZWFkZXJTZXJ2aWNlfSBpbnN0YW5jZSBiYXNlZCBvbiB0aGlzIGNvbXBvbmVudCdzIHR5cGVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVzb2x2ZUhlYWRlclNlcnZpY2UoKSB7XG4gICAgICAgIHN3aXRjaCAodGhpcy50eXBlKSB7XG4gICAgICAgICAgICBjYXNlIEhlYWRlclR5cGUuQ0FTRTpcbiAgICAgICAgICAgICAgICB0aGlzLmhlYWRlclNlcnZpY2UgPSB0aGlzLl9pbmplY3Rvci5nZXQoQ2FzZUhlYWRlclNlcnZpY2UpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBIZWFkZXJUeXBlLlRBU0s6XG4gICAgICAgICAgICAgICAgdGhpcy5oZWFkZXJTZXJ2aWNlID0gdGhpcy5faW5qZWN0b3IuZ2V0KFRhc2tIZWFkZXJTZXJ2aWNlKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgSGVhZGVyVHlwZS5XT1JLRkxPVzpcbiAgICAgICAgICAgICAgICB0aGlzLmhlYWRlclNlcnZpY2UgPSB0aGlzLl9pbmplY3Rvci5nZXQoV29ya2Zsb3dIZWFkZXJTZXJ2aWNlKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIGNvcnJlY3Qge0BsaW5rIEFic3RyYWN0SGVhZGVyU2VydmljZX0gaW5zdGFuY2UgdG8gdGhlIHtAbGluayBIZWFkZXJTZWFyY2hTZXJ2aWNlfVxuICAgICAqL1xuICAgIHByb3RlY3RlZCBpbml0aWFsaXplZEhlYWRlclNlYXJjaCgpIHtcbiAgICAgICAgaWYgKHRoaXMudHlwZSA9PT0gSGVhZGVyVHlwZS5DQVNFKSB7XG4gICAgICAgICAgICB0aGlzLl9oZWFkZXJTZWFyY2ggPSB0aGlzLl9pbmplY3Rvci5nZXQoSGVhZGVyU2VhcmNoU2VydmljZSk7XG4gICAgICAgICAgICB0aGlzLl9oZWFkZXJTZWFyY2guaGVhZGVyU2VydmljZSA9IHRoaXMuaGVhZGVyU2VydmljZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNsaWNrU3RvcCgkZXZlbnQpIHtcbiAgICAgICAgc3RvcFByb3BhZ2F0aW9uKCRldmVudCk7XG4gICAgfVxuXG4gICAgZ2V0TWluV2lkdGgoKSB7XG4gICAgICAgIHJldHVybiAodGhpcy5fb3ZlcmZsb3dTZXJ2aWNlICYmIHRoaXMuX292ZXJmbG93U2VydmljZS5vdmVyZmxvd01vZGUpID8gYCR7dGhpcy5fb3ZlcmZsb3dTZXJ2aWNlLmNvbHVtbldpZHRofXB4YCA6ICcwJztcbiAgICB9XG5cbiAgICBjb25maXJtRWRpdE1vZGUoKSB7XG4gICAgICAgIGlmICghdGhpcy5vdmVyZmxvd0NvbnRyb2wudmFsdWUgfHwgKHRoaXMub3ZlcmZsb3dDb250cm9sLnZhbHVlICYmIHRoaXMuY29sdW1uV2lkdGhDb250cm9sLnZhbGlkICYmIHRoaXMuY29sdW1uV2lkdGhDb250cm9sLnZhbGlkKSkge1xuICAgICAgICAgICAgdGhpcy5oZWFkZXJTZXJ2aWNlLmNvbmZpcm1FZGl0TW9kZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0RXJyb3JNZXNzYWdlV2lkdGgoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmJ1aWxkRXJyb3JNZXNzYWdlKHRoaXMuY29sdW1uV2lkdGhDb250cm9sLCAxODApO1xuICAgIH1cblxuICAgIGdldEVycm9yTWVzc2FnZUNvdW50KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5idWlsZEVycm9yTWVzc2FnZSh0aGlzLmNvbHVtbkNvdW50Q29udHJvbCwgMSk7XG4gICAgfVxuXG4gICAgYnVpbGRFcnJvck1lc3NhZ2UoZm9ybUNvbnRyb2xSZWY6IEZvcm1Db250cm9sLCBtaW5OdW1iZXIpIHtcbiAgICAgICAgaWYgKGZvcm1Db250cm9sUmVmLmhhc0Vycm9yKCdyZXF1aXJlZCcpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fdHJhbnNsYXRlLmluc3RhbnQoJ2RhdGFGaWVsZC52YWxpZGF0aW9ucy5yZXF1aXJlZCcpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChmb3JtQ29udHJvbFJlZi5oYXNFcnJvcignbWluJykpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl90cmFuc2xhdGUuaW5zdGFudCgnZGF0YUZpZWxkLnZhbGlkYXRpb25zLm1pbicsIHtsZW5ndGg6IG1pbk51bWJlcn0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiAnJztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgaW5pdGlhbGl6ZUZvcm1Db250cm9scyhleGlzdDogYm9vbGVhbikge1xuICAgICAgICB0aGlzLmNhbk92ZXJmbG93ID0gZXhpc3Q7XG4gICAgICAgIHRoaXMub3ZlcmZsb3dDb250cm9sID0gbmV3IEZvcm1Db250cm9sKGV4aXN0ID8gdGhpcy5fb3ZlcmZsb3dTZXJ2aWNlLm92ZXJmbG93TW9kZSA6IGZhbHNlKTtcbiAgICAgICAgdGhpcy5jb2x1bW5Db3VudENvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woZXhpc3QgPyB0aGlzLl9vdmVyZmxvd1NlcnZpY2UuY29sdW1uQ291bnQgOiB0aGlzLkRFRkFVTFRfQ09MVU1OX0NPVU5ULCBbXG4gICAgICAgICAgICBWYWxpZGF0b3JzLnJlcXVpcmVkLFxuICAgICAgICAgICAgVmFsaWRhdG9ycy5taW4oMSldKTtcbiAgICAgICAgdGhpcy5jb2x1bW5XaWR0aENvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woZXhpc3QgPyB0aGlzLl9vdmVyZmxvd1NlcnZpY2UuY29sdW1uV2lkdGggOiB0aGlzLkRFRkFVTFRfQ09MVU1OX1dJRFRILCBbXG4gICAgICAgICAgICBWYWxpZGF0b3JzLnJlcXVpcmVkLFxuICAgICAgICAgICAgVmFsaWRhdG9ycy5taW4oMTgwKV0pO1xuXG4gICAgICAgIGlmIChleGlzdCkge1xuICAgICAgICAgICAgdGhpcy5pbml0aWFsaXplVmFsdWVDaGFuZ2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgaW5pdGlhbGl6ZVZhbHVlQ2hhbmdlcygpIHtcbiAgICAgICAgdGhpcy5zdWJPdmVyZmxvd0NvbnRyb2wgPSB0aGlzLm92ZXJmbG93Q29udHJvbC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHZhbHVlID0+IHtcbiAgICAgICAgICAgIHRoaXMuX292ZXJmbG93U2VydmljZS5vdmVyZmxvd01vZGUgPSB2YWx1ZTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuc3ViQ29sdW1uQ291bnRDb250cm9sID0gdGhpcy5jb2x1bW5Db3VudENvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoZGVib3VuY2VUaW1lKHRoaXMuSU5QVVRfREVCT1VOQ0VfVElNRSkpLnN1YnNjcmliZSh2YWx1ZSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5jb2x1bW5Db3VudENvbnRyb2wudmFsaWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9vdmVyZmxvd1NlcnZpY2UuY29sdW1uQ291bnQgPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5oZWFkZXJTZXJ2aWNlICYmIHRoaXMudHlwZSA9PT0gSGVhZGVyVHlwZS5DQVNFKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaGVhZGVyU2VydmljZS5oZWFkZXJDb2x1bW5Db3VudCA9IHZhbHVlO1xuICAgICAgICAgICAgICAgICAgICAodGhpcy5oZWFkZXJTZXJ2aWNlIGFzIENhc2VIZWFkZXJTZXJ2aWNlKS51cGRhdGVDb2x1bW5Db3VudCgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuc3ViQ29sdW1uV2lkdGhDb250cm9sID0gdGhpcy5jb2x1bW5XaWR0aENvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoZGVib3VuY2VUaW1lKHRoaXMuSU5QVVRfREVCT1VOQ0VfVElNRSkpLnN1YnNjcmliZSh2YWx1ZSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5jb2x1bW5XaWR0aENvbnRyb2wudmFsaWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9vdmVyZmxvd1NlcnZpY2UuY29sdW1uV2lkdGggPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5oZWFkZXJTZXJ2aWNlICYmIHRoaXMudHlwZSA9PT0gSGVhZGVyVHlwZS5DQVNFKSB7XG4gICAgICAgICAgICAgICAgICAgICh0aGlzLmhlYWRlclNlcnZpY2UgYXMgQ2FzZUhlYWRlclNlcnZpY2UpLnVwZGF0ZUNvbHVtbkNvdW50KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
198
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy1jb3JlL3NyYy9saWIvaGVhZGVyL2Fic3RyYWN0LWhlYWRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBWSxLQUFLLEVBQXFCLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV0RixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNwRSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNwRSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUNoRixPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ2hELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHVEQUF1RCxDQUFDO0FBQzFGLE9BQU8sRUFBQyxXQUFXLEVBQUUsVUFBVSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFHdkQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBRTVELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQU01QyxNQUFNLE9BQWdCLHVCQUF1QjtJQTZCekMsWUFBc0IsU0FBbUIsRUFDbkIsVUFBNEIsRUFDaEIsZ0JBQWlDO1FBRjdDLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFDbkIsZUFBVSxHQUFWLFVBQVUsQ0FBa0I7UUFDaEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFpQjtRQTdCaEQseUJBQW9CLEdBQUcsQ0FBQyxDQUFDO1FBQ3pCLHlCQUFvQixHQUFHLEdBQUcsQ0FBQztRQUMzQix3QkFBbUIsR0FBRyxHQUFHLENB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Q0FBQyxpQkFBaUIsRUFBRSxDQUFDO2lCQUNqRTthQUNKO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzdILElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssRUFBRTtnQkFDL0IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7Z0JBQzFDLElBQUksSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFVBQVUsQ0FBQyxJQUFJLEVBQUU7b0JBQ3BELElBQUksQ0FBQyxhQUFtQyxDQUFDLGlCQUFpQixFQUFFLENBQUM7aUJBQ2pFO2FBQ0o7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7O3FIQXJMaUIsdUJBQXVCO3lHQUF2Qix1QkFBdUIsMldBRi9CLEVBQUU7NEZBRU0sdUJBQXVCO2tCQUo1QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFFBQVEsRUFBRSxFQUFFO2lCQUNmOzswQkFnQ2dCLFFBQVE7NENBMUJaLElBQUk7c0JBQVosS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBeUJLLGdCQUFnQjtzQkFEMUIsS0FBSztnQkFhSyxpQkFBaUI7c0JBRDNCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5qZWN0b3IsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3B0aW9uYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBYnN0cmFjdEhlYWRlclNlcnZpY2V9IGZyb20gJy4vYWJzdHJhY3QtaGVhZGVyLXNlcnZpY2UnO1xuaW1wb3J0IHtDYXNlSGVhZGVyU2VydmljZX0gZnJvbSAnLi9jYXNlLWhlYWRlci9jYXNlLWhlYWRlci5zZXJ2aWNlJztcbmltcG9ydCB7VGFza0hlYWRlclNlcnZpY2V9IGZyb20gJy4vdGFzay1oZWFkZXIvdGFzay1oZWFkZXIuc2VydmljZSc7XG5pbXBvcnQge1dvcmtmbG93SGVhZGVyU2VydmljZX0gZnJvbSAnLi93b3JrZmxvdy1oZWFkZXIvd29ya2Zsb3ctaGVhZGVyLnNlcnZpY2UnO1xuaW1wb3J0IHtIZWFkZXJUeXBlfSBmcm9tICcuL21vZGVscy9oZWFkZXItdHlwZSc7XG5pbXBvcnQge0hlYWRlck1vZGV9IGZyb20gJy4vbW9kZWxzL2hlYWRlci1tb2RlJztcbmltcG9ydCB7SGVhZGVyU2VhcmNoU2VydmljZX0gZnJvbSAnLi4vc2VhcmNoL2hlYWRlci1zZWFyY2gtc2VydmljZS9oZWFkZXItc2VhcmNoLnNlcnZpY2UnO1xuaW1wb3J0IHtGb3JtQ29udHJvbCwgVmFsaWRhdG9yc30gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7T3ZlcmZsb3dTZXJ2aWNlfSBmcm9tICcuL3NlcnZpY2VzL292ZXJmbG93LnNlcnZpY2UnO1xuaW1wb3J0IHtzdG9wUHJvcGFnYXRpb259IGZyb20gJy4uL3V0aWxpdHkvc3RvcC1wcm9wYWdhdGlvbic7XG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2RlYm91bmNlVGltZX0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmNjLWFic3RyYWN0LWhlYWRlcicsXG4gICAgdGVtcGxhdGU6ICcnXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0SGVhZGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IERFRkFVTFRfQ09MVU1OX0NPVU5UID0gNjtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgREVGQVVMVF9DT0xVTU5fV0lEVEggPSAyMjA7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IElOUFVUX0RFQk9VTkNFX1RJTUUgPSA2MDA7XG4gICAgQElucHV0KCkgdHlwZTogSGVhZGVyVHlwZSA9IEhlYWRlclR5cGUuQ0FTRTtcbiAgICBASW5wdXQoKSBoaWRlSGVhZGVyTWVudSA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIHNob3dFZGl0QnV0dG9uID0gdHJ1ZTtcbiAgICBASW5wdXQoKSBzaG93U29ydEJ1dHRvbiA9IHRydWU7XG4gICAgQElucHV0KCkgc2hvd1NlYXJjaEJ1dHRvbiA9IHRydWU7XG4gICAgQElucHV0KCkgc2hvd1RhYmxlU2VjdGlvbiA9IHRydWU7XG4gICAgQElucHV0KCkgcHVibGljIGFwcHJvdmFsOiBib29sZWFuO1xuXG4gICAgcHVibGljIGhlYWRlclNlcnZpY2U6IEFic3RyYWN0SGVhZGVyU2VydmljZTtcbiAgICBwcm90ZWN0ZWQgX2hlYWRlclNlYXJjaDogSGVhZGVyU2VhcmNoU2VydmljZTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgaGVhZGVyTW9kZUVudW0gPSBIZWFkZXJNb2RlO1xuICAgIHB1YmxpYyByZWFkb25seSBoZWFkZXJUeXBlRW51bSA9IEhlYWRlclR5cGU7XG4gICAgcHVibGljIG92ZXJmbG93Q29udHJvbDogRm9ybUNvbnRyb2w7XG4gICAgcHVibGljIGNvbHVtbkNvdW50Q29udHJvbDogRm9ybUNvbnRyb2w7XG4gICAgcHVibGljIGNvbHVtbldpZHRoQ29udHJvbDogRm9ybUNvbnRyb2w7XG4gICAgcHVibGljIGNhbk92ZXJmbG93OiBib29sZWFuO1xuICAgIHB1YmxpYyBzdWJPdmVyZmxvd0NvbnRyb2w6IFN1YnNjcmlwdGlvbjtcbiAgICBwdWJsaWMgc3ViQ29sdW1uQ291bnRDb250cm9sOiBTdWJzY3JpcHRpb247XG4gICAgcHVibGljIHN1YkNvbHVtbldpZHRoQ29udHJvbDogU3Vic2NyaXB0aW9uO1xuXG4gICAgcHJvdGVjdGVkIF9pbml0SGVhZGVyQ291bnQ6IG51bWJlciA9IHVuZGVmaW5lZDtcbiAgICBwcm90ZWN0ZWQgX2luaXRSZXNwb25zaXZlSGVhZGVyczogYm9vbGVhbiA9IHVuZGVmaW5lZDtcbiAgICBwcm90ZWN0ZWQgX2FwcHJvdmFsRm9ybUNvbnRyb2w6IEZvcm1Db250cm9sO1xuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIF9pbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgICAgICAgICAgcHJvdGVjdGVkIF90cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgcHJvdGVjdGVkIF9vdmVyZmxvd1NlcnZpY2U6IE92ZXJmbG93U2VydmljZSkge1xuICAgICAgICB0aGlzLmluaXRpYWxpemVGb3JtQ29udHJvbHModGhpcy5fb3ZlcmZsb3dTZXJ2aWNlICE9PSBudWxsKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzZXQgbWF4SGVhZGVyQ29sdW1ucyhjb3VudDogbnVtYmVyKSB7XG4gICAgICAgIGlmICh0aGlzLmhlYWRlclNlcnZpY2UpIHtcbiAgICAgICAgICAgIHRoaXMuaGVhZGVyU2VydmljZS5oZWFkZXJDb2x1bW5Db3VudCA9IGNvdW50O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5faW5pdEhlYWRlckNvdW50ID0gY291bnQ7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuX292ZXJmbG93U2VydmljZSA9PT0gbnVsbCB8fCAodGhpcy5fb3ZlcmZsb3dTZXJ2aWNlICE9PSBudWxsICYmICF0aGlzLl9vdmVyZmxvd1NlcnZpY2UuaW5pdGlhbGl6ZWRDb3VudCkpIHtcbiAgICAgICAgICAgIHRoaXMuY29sdW1uQ291bnRDb250cm9sLnNldFZhbHVlKGNvdW50KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNldCByZXNwb25zaXZlSGVhZGVycyhyZXNwb25zaXZlOiBib29sZWFuKSB7XG4gICAgICAgIGlmICh0aGlzLmhlYWRlclNlcnZpY2UpIHtcbiAgICAgICAgICAgIHRoaXMuaGVhZGVyU2VydmljZS5yZXNwb25zaXZlSGVhZGVycyA9IHJlc3BvbnNpdmU7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9pbml0UmVzcG9uc2l2ZUhlYWRlcnMgPSByZXNwb25zaXZlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IGFwcHJvdmFsRm9ybUNvbnRyb2woKTogRm9ybUNvbnRyb2wge1xuICAgICAgICByZXR1cm4gdGhpcy5fYXBwcm92YWxGb3JtQ29udHJvbDtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2hhbmdlSGVhZGVyc01vZGUobW9kZTogSGVhZGVyTW9kZSwgc2F2ZUxhc3RNb2RlOiBib29sZWFuID0gdHJ1ZSkge1xuICAgICAgICBpZiAodGhpcy5oZWFkZXJTZXJ2aWNlKSB7XG4gICAgICAgICAgICB0aGlzLmhlYWRlclNlcnZpY2UuY2hhbmdlTW9kZShtb2RlLCBzYXZlTGFzdE1vZGUpXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZXNvbHZlSGVhZGVyU2VydmljZSgpO1xuICAgICAgICB0aGlzLmluaXRpYWxpemVkSGVhZGVyU2VhcmNoKCk7XG4gICAgICAgIGlmICh0aGlzLl9pbml0SGVhZGVyQ291bnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy5oZWFkZXJTZXJ2aWNlLmhlYWRlckNvbHVtbkNvdW50ID0gdGhpcy5faW5pdEhlYWRlckNvdW50O1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLl9pbml0UmVzcG9uc2l2ZUhlYWRlcnMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy5oZWFkZXJTZXJ2aWNlLnJlc3BvbnNpdmVIZWFkZXJzID0gdGhpcy5faW5pdFJlc3BvbnNpdmVIZWFkZXJzO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaGVhZGVyU2VydmljZS5wcmVmZXJlbmNlQ29sdW1uQ291bnQkLnN1YnNjcmliZSh2YWx1ZSA9PiB0aGlzLmNvbHVtbkNvdW50Q29udHJvbC5zZXRWYWx1ZSh2YWx1ZSkpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5jYW5PdmVyZmxvdykge1xuICAgICAgICAgICAgdGhpcy5zdWJDb2x1bW5XaWR0aENvbnRyb2wudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgIHRoaXMuc3ViQ29sdW1uQ291bnRDb250cm9sLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICB0aGlzLnN1Yk92ZXJmbG93Q29udHJvbC51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSW5qZWN0cyB0aGUgY29ycmVjdCB7QGxpbmsgQWJzdHJhY3RIZWFkZXJTZXJ2aWNlfSBpbnN0YW5jZSBiYXNlZCBvbiB0aGlzIGNvbXBvbmVudCdzIHR5cGVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVzb2x2ZUhlYWRlclNlcnZpY2UoKSB7XG4gICAgICAgIHN3aXRjaCAodGhpcy50eXBlKSB7XG4gICAgICAgICAgICBjYXNlIEhlYWRlclR5cGUuQ0FTRTpcbiAgICAgICAgICAgICAgICB0aGlzLmhlYWRlclNlcnZpY2UgPSB0aGlzLl9pbmplY3Rvci5nZXQoQ2FzZUhlYWRlclNlcnZpY2UpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBIZWFkZXJUeXBlLlRBU0s6XG4gICAgICAgICAgICAgICAgdGhpcy5oZWFkZXJTZXJ2aWNlID0gdGhpcy5faW5qZWN0b3IuZ2V0KFRhc2tIZWFkZXJTZXJ2aWNlKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgSGVhZGVyVHlwZS5XT1JLRkxPVzpcbiAgICAgICAgICAgICAgICB0aGlzLmhlYWRlclNlcnZpY2UgPSB0aGlzLl9pbmplY3Rvci5nZXQoV29ya2Zsb3dIZWFkZXJTZXJ2aWNlKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIGNvcnJlY3Qge0BsaW5rIEFic3RyYWN0SGVhZGVyU2VydmljZX0gaW5zdGFuY2UgdG8gdGhlIHtAbGluayBIZWFkZXJTZWFyY2hTZXJ2aWNlfVxuICAgICAqL1xuICAgIHByb3RlY3RlZCBpbml0aWFsaXplZEhlYWRlclNlYXJjaCgpIHtcbiAgICAgICAgaWYgKHRoaXMudHlwZSA9PT0gSGVhZGVyVHlwZS5DQVNFKSB7XG4gICAgICAgICAgICB0aGlzLl9oZWFkZXJTZWFyY2ggPSB0aGlzLl9pbmplY3Rvci5nZXQoSGVhZGVyU2VhcmNoU2VydmljZSk7XG4gICAgICAgICAgICB0aGlzLl9oZWFkZXJTZWFyY2guaGVhZGVyU2VydmljZSA9IHRoaXMuaGVhZGVyU2VydmljZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNsaWNrU3RvcCgkZXZlbnQpIHtcbiAgICAgICAgc3RvcFByb3BhZ2F0aW9uKCRldmVudCk7XG4gICAgfVxuXG4gICAgZ2V0TWluV2lkdGgoKSB7XG4gICAgICAgIHJldHVybiAodGhpcy5fb3ZlcmZsb3dTZXJ2aWNlICYmIHRoaXMuX292ZXJmbG93U2VydmljZS5vdmVyZmxvd01vZGUpID8gYCR7dGhpcy5fb3ZlcmZsb3dTZXJ2aWNlLmNvbHVtbldpZHRofXB4YCA6ICcwJztcbiAgICB9XG5cbiAgICBjb25maXJtRWRpdE1vZGUoKSB7XG4gICAgICAgIGlmICghdGhpcy5vdmVyZmxvd0NvbnRyb2wudmFsdWUgfHwgKHRoaXMub3ZlcmZsb3dDb250cm9sLnZhbHVlICYmIHRoaXMuY29sdW1uV2lkdGhDb250cm9sLnZhbGlkICYmIHRoaXMuY29sdW1uV2lkdGhDb250cm9sLnZhbGlkKSkge1xuICAgICAgICAgICAgdGhpcy5oZWFkZXJTZXJ2aWNlLmNvbmZpcm1FZGl0TW9kZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0RXJyb3JNZXNzYWdlV2lkdGgoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmJ1aWxkRXJyb3JNZXNzYWdlKHRoaXMuY29sdW1uV2lkdGhDb250cm9sLCAxODApO1xuICAgIH1cblxuICAgIGdldEVycm9yTWVzc2FnZUNvdW50KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5idWlsZEVycm9yTWVzc2FnZSh0aGlzLmNvbHVtbkNvdW50Q29udHJvbCwgMSk7XG4gICAgfVxuXG4gICAgYnVpbGRFcnJvck1lc3NhZ2UoZm9ybUNvbnRyb2xSZWY6IEZvcm1Db250cm9sLCBtaW5OdW1iZXIpIHtcbiAgICAgICAgaWYgKGZvcm1Db250cm9sUmVmLmhhc0Vycm9yKCdyZXF1aXJlZCcpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fdHJhbnNsYXRlLmluc3RhbnQoJ2RhdGFGaWVsZC52YWxpZGF0aW9ucy5yZXF1aXJlZCcpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChmb3JtQ29udHJvbFJlZi5oYXNFcnJvcignbWluJykpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl90cmFuc2xhdGUuaW5zdGFudCgnZGF0YUZpZWxkLnZhbGlkYXRpb25zLm1pbicsIHtsZW5ndGg6IG1pbk51bWJlcn0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiAnJztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgaW5pdGlhbGl6ZUZvcm1Db250cm9scyhleGlzdDogYm9vbGVhbikge1xuICAgICAgICB0aGlzLmNhbk92ZXJmbG93ID0gZXhpc3Q7XG4gICAgICAgIHRoaXMub3ZlcmZsb3dDb250cm9sID0gbmV3IEZvcm1Db250cm9sKGV4aXN0ID8gdGhpcy5fb3ZlcmZsb3dTZXJ2aWNlLm92ZXJmbG93TW9kZSA6IGZhbHNlKTtcbiAgICAgICAgdGhpcy5jb2x1bW5Db3VudENvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woZXhpc3QgPyB0aGlzLl9vdmVyZmxvd1NlcnZpY2UuY29sdW1uQ291bnQgOiB0aGlzLkRFRkFVTFRfQ09MVU1OX0NPVU5ULCBbXG4gICAgICAgICAgICBWYWxpZGF0b3JzLnJlcXVpcmVkLFxuICAgICAgICAgICAgVmFsaWRhdG9ycy5taW4oMSldKTtcbiAgICAgICAgdGhpcy5jb2x1bW5XaWR0aENvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woZXhpc3QgPyB0aGlzLl9vdmVyZmxvd1NlcnZpY2UuY29sdW1uV2lkdGggOiB0aGlzLkRFRkFVTFRfQ09MVU1OX1dJRFRILCBbXG4gICAgICAgICAgICBWYWxpZGF0b3JzLnJlcXVpcmVkLFxuICAgICAgICAgICAgVmFsaWRhdG9ycy5taW4oMTgwKV0pO1xuICAgICAgICB0aGlzLl9hcHByb3ZhbEZvcm1Db250cm9sID0gbmV3IEZvcm1Db250cm9sKGZhbHNlKTtcbiAgICAgICAgaWYgKGV4aXN0KSB7XG4gICAgICAgICAgICB0aGlzLmluaXRpYWxpemVWYWx1ZUNoYW5nZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBpbml0aWFsaXplVmFsdWVDaGFuZ2VzKCkge1xuICAgICAgICB0aGlzLnN1Yk92ZXJmbG93Q29udHJvbCA9IHRoaXMub3ZlcmZsb3dDb250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsdWUgPT4ge1xuICAgICAgICAgICAgdGhpcy5fb3ZlcmZsb3dTZXJ2aWNlLm92ZXJmbG93TW9kZSA9IHZhbHVlO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5zdWJDb2x1bW5Db3VudENvbnRyb2wgPSB0aGlzLmNvbHVtbkNvdW50Q29udHJvbC52YWx1ZUNoYW5nZXMucGlwZShkZWJvdW5jZVRpbWUodGhpcy5JTlBVVF9ERUJPVU5DRV9USU1FKSkuc3Vic2NyaWJlKHZhbHVlID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLmNvbHVtbkNvdW50Q29udHJvbC52YWxpZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX292ZXJmbG93U2VydmljZS5jb2x1bW5Db3VudCA9IHZhbHVlO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmhlYWRlclNlcnZpY2UgJiYgdGhpcy50eXBlID09PSBIZWFkZXJUeXBlLkNBU0UpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5oZWFkZXJTZXJ2aWNlLmhlYWRlckNvbHVtbkNvdW50ID0gdmFsdWU7XG4gICAgICAgICAgICAgICAgICAgICh0aGlzLmhlYWRlclNlcnZpY2UgYXMgQ2FzZUhlYWRlclNlcnZpY2UpLnVwZGF0ZUNvbHVtbkNvdW50KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5zdWJDb2x1bW5XaWR0aENvbnRyb2wgPSB0aGlzLmNvbHVtbldpZHRoQ29udHJvbC52YWx1ZUNoYW5nZXMucGlwZShkZWJvdW5jZVRpbWUodGhpcy5JTlBVVF9ERUJPVU5DRV9USU1FKSkuc3Vic2NyaWJlKHZhbHVlID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLmNvbHVtbldpZHRoQ29udHJvbC52YWxpZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX292ZXJmbG93U2VydmljZS5jb2x1bW5XaWR0aCA9IHZhbHVlO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmhlYWRlclNlcnZpY2UgJiYgdGhpcy50eXBlID09PSBIZWFkZXJUeXBlLkNBU0UpIHtcbiAgICAgICAgICAgICAgICAgICAgKHRoaXMuaGVhZGVyU2VydmljZSBhcyBDYXNlSGVhZGVyU2VydmljZSkudXBkYXRlQ29sdW1uQ291bnQoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
@@ -8,7 +8,7 @@ export class AbstractHeaderModeComponent {
8
8
  }
9
9
  }
10
10
  AbstractHeaderModeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractHeaderModeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
11
- AbstractHeaderModeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AbstractHeaderModeComponent, selector: "ncc-abstract-header-mode", inputs: { overflowWidth: "overflowWidth" }, ngImport: i0, template: '', isInline: true });
11
+ AbstractHeaderModeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AbstractHeaderModeComponent, selector: "ncc-abstract-header-mode", inputs: { overflowWidth: "overflowWidth", approval: "approval", indeterminate: "indeterminate", approvalFormControl: "approvalFormControl", typeApproval: "typeApproval" }, ngImport: i0, template: '', isInline: true });
12
12
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractHeaderModeComponent, decorators: [{
13
13
  type: Component,
14
14
  args: [{
@@ -17,5 +17,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
17
17
  }]
18
18
  }], ctorParameters: function () { return []; }, propDecorators: { overflowWidth: [{
19
19
  type: Input
20
+ }], approval: [{
21
+ type: Input
22
+ }], indeterminate: [{
23
+ type: Input
24
+ }], approvalFormControl: [{
25
+ type: Input
26
+ }], typeApproval: [{
27
+ type: Input
20
28
  }] } });
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtaGVhZGVyLW1vZGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzLWNvcmUvc3JjL2xpYi9oZWFkZXIvaGVhZGVyLW1vZGVzL2Fic3RyYWN0LWhlYWRlci1tb2RlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQzs7QUFNL0MsTUFBTSxPQUFnQiwyQkFBMkI7SUFLN0M7SUFDQSxDQUFDO0lBRUQsV0FBVztRQUNQLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM5QixDQUFDOzt5SEFWaUIsMkJBQTJCOzZHQUEzQiwyQkFBMkIsNEdBRm5DLEVBQUU7NEZBRU0sMkJBQTJCO2tCQUpoRCxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSwwQkFBMEI7b0JBQ3BDLFFBQVEsRUFBRSxFQUFFO2lCQUNmOzBFQUlVLGFBQWE7c0JBRG5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25jYy1hYnN0cmFjdC1oZWFkZXItbW9kZScsXG4gICAgdGVtcGxhdGU6ICcnXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0SGVhZGVyTW9kZUNvbXBvbmVudCB7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBvdmVyZmxvd1dpZHRoOiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICB9XG5cbiAgICBnZXRNaW5XaWR0aCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3ZlcmZsb3dXaWR0aDtcbiAgICB9XG59XG4iXX0=
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtaGVhZGVyLW1vZGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzLWNvcmUvc3JjL2xpYi9oZWFkZXIvaGVhZGVyLW1vZGVzL2Fic3RyYWN0LWhlYWRlci1tb2RlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQzs7QUFPL0MsTUFBTSxPQUFnQiwyQkFBMkI7SUFRN0M7SUFDQSxDQUFDO0lBRUQsV0FBVztRQUNQLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM5QixDQUFDOzt5SEFiaUIsMkJBQTJCOzZHQUEzQiwyQkFBMkIsNE9BRm5DLEVBQUU7NEZBRU0sMkJBQTJCO2tCQUpoRCxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSwwQkFBMEI7b0JBQ3BDLFFBQVEsRUFBRSxFQUFFO2lCQUNmOzBFQUdtQixhQUFhO3NCQUE1QixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsYUFBYTtzQkFBNUIsS0FBSztnQkFDVSxtQkFBbUI7c0JBQWxDLEtBQUs7Z0JBQ1UsWUFBWTtzQkFBM0IsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1Db250cm9sfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmNjLWFic3RyYWN0LWhlYWRlci1tb2RlJyxcbiAgICB0ZW1wbGF0ZTogJydcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RIZWFkZXJNb2RlQ29tcG9uZW50IHtcblxuICAgIEBJbnB1dCgpIHB1YmxpYyBvdmVyZmxvd1dpZHRoOiBzdHJpbmc7XG4gICAgQElucHV0KCkgcHVibGljIGFwcHJvdmFsOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBpbmRldGVybWluYXRlOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBhcHByb3ZhbEZvcm1Db250cm9sOiBGb3JtQ29udHJvbDtcbiAgICBASW5wdXQoKSBwdWJsaWMgdHlwZUFwcHJvdmFsOiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICB9XG5cbiAgICBnZXRNaW5XaWR0aCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3ZlcmZsb3dXaWR0aDtcbiAgICB9XG59XG4iXX0=
@@ -136,5 +136,9 @@ export var GroupNavigationConstants;
136
136
  * Boolean field, that is true if item contains child items
137
137
  * */
138
138
  GroupNavigationConstants["ITEM_FIELD_ID_HAS_CHILDREN"] = "hasChildren";
139
+ /**
140
+ * CaseField containing stringIds of child instances of process preference_item
141
+ * */
142
+ GroupNavigationConstants["ITEM_FIELD_ID_CHILD_ITEM_IDS"] = "childItemIds";
139
143
  })(GroupNavigationConstants || (GroupNavigationConstants = {}));
140
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAtbmF2aWdhdGlvbi1jb25zdGFudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL25hdmlnYXRpb24vbW9kZWwvZ3JvdXAtbmF2aWdhdGlvbi1jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksd0JBdUtYO0FBdktELFdBQVksd0JBQXdCO0lBQ2hDOztPQUVHO0lBQ0gsdUVBQTJDLENBQUE7SUFDM0M7O09BRUc7SUFDSCwwRUFBOEMsQ0FBQTtJQUM5Qzs7T0FFRztJQUNILCtFQUFtRCxDQUFBO0lBQ25EOztPQUVHO0lBQ0gsMEZBQThELENBQUE7SUFDOUQ7O09BRUc7SUFDSCw4RUFBa0QsQ0FBQTtJQUVsRDs7U0FFSztJQUNMLG1GQUF1RCxDQUFBO0lBRXZEOztTQUVLO0lBQ0wsK0ZBQW1FLENBQUE7SUFFbkU7O1NBRUs7SUFDTCw2RkFBaUUsQ0FBQTtJQUVqRTs7U0FFSztJQUNMLHlGQUE2RCxDQUFBO0lBRTdEOztTQUVLO0lBQ0wseUZBQTZELENBQUE7SUFFN0Q7O1NBRUs7SUFDTCx5RUFBNkMsQ0FBQTtJQUU3Qzs7U0FFSztJQUNMLHlHQUE2RSxDQUFBO0lBRTdFOztTQUVLO0lBQ0wscUZBQXlELENBQUE7SUFFekQ7O1NBRUs7SUFDTCxtR0FBdUUsQ0FBQTtJQUV2RTs7U0FFSztJQUNMLHVHQUEyRSxDQUFBO0lBRTNFOztTQUVLO0lBQ0wscUZBQXlELENBQUE7SUFFekQ7O1NBRUs7SUFDTCxpRkFBcUQsQ0FBQTtJQUVyRDs7U0FFSztJQUNMLGdHQUFvRSxDQUFBO0lBRXBFOztTQUVLO0lBQ0wsaUdBQXFFLENBQUE7SUFFckU7O1NBRUs7SUFDTCxvR0FBd0UsQ0FBQTtJQUV4RTs7U0FFSztJQUNMLGlGQUFxRCxDQUFBO0lBRXJEOztTQUVLO0lBQ0wsZ0dBQW9FLENBQUE7SUFFcEU7O1NBRUs7SUFDTCxpR0FBcUUsQ0FBQTtJQUVyRTs7U0FFSztJQUNMLG9HQUF3RSxDQUFBO0lBRXhFOztTQUVLO0lBQ0wsK0ZBQW1FLENBQUE7SUFFbkU7O1NBRUs7SUFDTCx1RkFBMkQsQ0FBQTtJQUUzRDs7U0FFSztJQUNMLCtGQUFtRSxDQUFBO0lBRW5FOztTQUVLO0lBQ0wsdUZBQTJELENBQUE7SUFFM0Q7O1NBRUs7SUFDTCx5RUFBNkMsQ0FBQTtJQUU3Qzs7U0FFSztJQUNMLHVFQUEyQyxDQUFBO0lBRTNDOztTQUVLO0lBQ0wsaUVBQXFDLENBQUE7SUFFckM7O1NBRUs7SUFDTCxpRUFBcUMsQ0FBQTtJQUVyQzs7U0FFSztJQUNMLGdFQUFvQyxDQUFBO0lBRXBDOztTQUVLO0lBQ0wsc0VBQTBDLENBQUE7QUFFOUMsQ0FBQyxFQXZLVyx3QkFBd0IsS0FBeEIsd0JBQXdCLFFBdUtuQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEdyb3VwTmF2aWdhdGlvbkNvbnN0YW50cyB7XG4gICAgLyoqXG4gICAgICogTmFtZSBvZiB0aGUgY29tcG9uZW50IHRoYXQgaW5kaWNhdGVzIHRoZSBwb3NpdGlvbiBvZiB0aGUgZ3JvdXAgc3BlY2lmaWMgbmF2aWdhdGlvbiBlbGVtZW50cy5cbiAgICAgKi9cbiAgICBHUk9VUF9OQVZJR0FUSU9OX09VVExFVCA9ICdncm91cE5hdmlnYXRpb24nLFxuICAgIC8qKlxuICAgICAqIE5hbWUgb2YgdGhlIHJvdXRlciBwYXJhbSB0aGF0IGlzIHVzZWQgdG8gcHJvdmlkZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgc2VsZWN0ZWQgZmlsdGVyIHRvIHRoZSBncm91cCBuYXZpZ2F0aW9uIHZpZXcgY29tcG9uZW50XG4gICAgICovXG4gICAgR1JPVVBfTkFWSUdBVElPTl9ST1VURVJfUEFSQU0gPSAnZmlsdGVyQ2FzZUlkJyxcbiAgICAvKipcbiAgICAgKiBGaWVsZCBpZCwgdGhhdCBjb250YWlucyB0aGUgdGFiIG5hbWUgb2YgdGhlIG5hdmlnYXRpb24gaXRlbS5cbiAgICAgKi9cbiAgICBOQVZJR0FUSU9OX0VOVFJZX1RJVExFX0ZJRUxEX0lEX1NVRkZJWCA9ICd0YWJfbmFtZScsXG4gICAgLyoqXG4gICAgICogQm9vbGVhbiBmaWVsZCBpZCwgdGhhdCBkZXRlcm1pbmVzIGlmIHRoZSBuYXZpZ2F0aW9uIGRlZmluZXMgYSB0YWIgaWNvbi5cbiAgICAgKi9cbiAgICBOQVZJR0FUSU9OX0VOVFJZX0lDT05fRU5BQkxFRF9GSUVMRF9JRF9TVUZGSVggPSAndXNlX3RhYl9pY29uJyxcbiAgICAvKipcbiAgICAgKiBUZXh0IGZpZWxkIGlkLCB0aGF0IGNvbnRhaW5zIHRoZSBpZCBvZiB0aGUgdXNlZCBtYXRlcmlhbCBpY29uLlxuICAgICAqL1xuICAgIE5BVklHQVRJT05fRU5UUllfSUNPTl9GSUVMRF9JRF9TVUZGSVggPSAndGFiX2ljb24nLFxuXG4gICAgLyoqXG4gICAgICogVGFza1JlZiBmaWVsZCwgdGhhdCBjb250YWlucyB0YXNrSWQgb2YgZmlsdGVyIHRhc2tcbiAgICAgKiAqL1xuICAgIElURU1fRklFTERfSURfRklMVEVSX1RBU0tSRUYgPSAnY3VycmVudF9maWx0ZXJfcHJldmlldycsXG5cbiAgICAvKipcbiAgICAgKiBUZXh0IGZpZWxkIGlkLCB0aGF0IGNvbnRhaW5zIHRpdGxlIG9mIGNyZWF0ZSBjYXNlIGJ1dHRvblxuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9DUkVBVEVfQ0FTRV9CVVRUT05fVElUTEUgPSAnY3JlYXRlX2Nhc2VfYnV0dG9uX3RpdGxlJyxcblxuICAgIC8qKlxuICAgICAqIFRleHQgZmllbGQgaWQsIHRoYXQgY29udGFpbnMgaWNvbiBuYW1lIG9mIGNyZWF0ZSBjYXNlIGJ1dHRvblxuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9DUkVBVEVfQ0FTRV9CVVRUT05fSUNPTiA9ICdjcmVhdGVfY2FzZV9idXR0b25faWNvbicsXG5cbiAgICAvKipcbiAgICAgKiBFbnVtZXJhdGlvbk1hcCBmaWVsZCwgdGhhdCBjb250YWlucyBzZWxlY3RlZCBzZWFyY2ggdHlwZSBmb3IgY2FzZSB2aWV3XG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX0NBU0VfVklFV19TRUFSQ0hfVFlQRSA9ICdjYXNlX3ZpZXdfc2VhcmNoX3R5cGUnLFxuXG4gICAgLyoqXG4gICAgICogRW51bWVyYXRpb25NYXAgZmllbGQsIHRoYXQgY29udGFpbnMgc2VsZWN0ZWQgc2VhcmNoIHR5cGUgZm9yIHRhc2sgdmlld1xuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9UQVNLX1ZJRVdfU0VBUkNIX1RZUEUgPSAndGFza192aWV3X3NlYXJjaF90eXBlJyxcblxuICAgIC8qKlxuICAgICAqIEJvb2xlYW4gZmllbGQsIHRoYXQgaXMgdHJ1ZSBpZiB1c2VyIHdhbnRzIHRvIG1lcmdlIGJhc2UgZmlsdGVyIGFuZCBjdXN0b20gZmlsdGVyXG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX01FUkdFX0ZJTFRFUlMgPSAnbWVyZ2VfZmlsdGVycycsXG5cbiAgICAvKipcbiAgICAgKiBUYXNrUmVmIGZpZWxkLCB0aGF0IGNvbnRhaW5zIHRhc2tJZCBvZiBjdXN0b20gZmlsdGVyIGZvciB0YXNrIHZpZXdcbiAgICAgKiAqL1xuICAgIElURU1fRklFTERfSURfQURESVRJT05BTF9GSUxURVJfVEFTS1JFRiA9ICdjdXJyZW50X2FkZGl0aW9uYWxfZmlsdGVyX3ByZXZpZXcnLFxuXG4gICAgLyoqXG4gICAgICogQm9vbGVhbiBmaWVsZCwgdGhhdCBpcyB0cnVlIGlmIHRoZSB1c2VyIHdhbnRzIHRvIHNlZSBtb3JlIG1lbnUgZm9yIGNhc2UgaXRlbSBpbiBjYXNlIHZpZXdcbiAgICAgKiAqL1xuICAgIElURU1fRklFTERfSURfQ0FTRV9TSE9XX01PUkVfTUVOVSA9ICdjYXNlX3Nob3dfbW9yZV9tZW51JyxcblxuICAgIC8qKlxuICAgICAqIEJvb2xlYW4gZmllbGQsIHRoYXQgaXMgdHJ1ZSBpZiBubyBpbnB1dCBmb3IgdGl0bGUgaW4gY2FzZSBjcmVhdGlvbiBpcyBzaG93blxuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9DQVNFX1RJVExFX0lOX0NSRUFUSU9OID0gJ2Nhc2VfcmVxdWlyZV90aXRsZV9pbl9jcmVhdGlvbicsXG5cbiAgICAvKipcbiAgICAgKiBUZXh0IGZpZWxkLCB0aGF0IGNvbnRhaW5zIGJhbm5lZCBwcm9jZXNzZXMgaW4gY2FzZSBjcmVhdGlvbiBhcyBhIHZhbHVlXG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX0NBU0VfQkFOTkVEX1BST0NFU1NfQ1JFQVRJT04gPSAnY2FzZV9iYW5uZWRfbmV0c19pbl9jcmVhdGlvbicsXG5cbiAgICAvKipcbiAgICAgKiBCb29sZWFuIGZpZWxkLCB0aGF0IGlzIHRydWUgaWYgdGhlIHVzZXIgd2FudHMgdG8gc2VlIG1vcmUgbWVudSBmb3IgdGFzayBpdGVtIGluIHRhc2sgdmlld1xuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9UQVNLX1NIT1dfTU9SRV9NRU5VID0gJ3Rhc2tfc2hvd19tb3JlX21lbnUnLFxuXG4gICAgLyoqXG4gICAgICogTXVsdGljaG9pY2VNYXAgZmllbGQsIHRoYXQgY29udGFpbnMgc2VsZWN0ZWQgaGVhZGVyIG1vZGVzIGZvciBjYXNlIHZpZXcgYXMgYSB2YWx1ZVxuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9DQVNFX0hFQURFUlNfTU9ERSA9ICdjYXNlX2hlYWRlcnNfbW9kZScsXG5cbiAgICAvKipcbiAgICAgKiBCb29sZWFuIGZpZWxkLCB0aGF0IGlzIHRydWUgaWYgdGFibGUgbW9kZSBjYW4gYmUgYXBwbGllZCBpbiBjYXNlIHZpZXdcbiAgICAgKiAqL1xuICAgIElURU1fRklFTERfSURfQ0FTRV9BTExPV19UQUJMRV9NT0RFID0gJ2Nhc2VfYWxsb3dfaGVhZGVyX3RhYmxlX21vZGUnLFxuXG4gICAgLyoqXG4gICAgICogRW51bWVyYXRpb25NYXAgZmllbGQsIHRoYXQgY29udGFpbnMgc2VsZWN0ZWQgZGVmYXVsdCBoZWFkZXIgbW9kZSBmb3IgY2FzZSB2aWV3IGFzIGEgdmFsdWVcbiAgICAgKiAqL1xuICAgIElURU1fRklFTERfSURfQ0FTRV9ERUZBVUxUX0hFQURFUlNfTU9ERSA9ICdjYXNlX2hlYWRlcnNfZGVmYXVsdF9tb2RlJyxcblxuICAgIC8qKlxuICAgICAqIEJvb2xlYW4gZmllbGQsIHRoYXQgaXMgdHJ1ZSB0byBtYWtlIG1vZGUgbWVudSBpbiBjYXNlIHZpZXcgdmlzaWJsZVxuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9DQVNFX0hFQURFUlNfQ0hBTkdFQUJMRSA9ICdjYXNlX2lzX2hlYWRlcl9tb2RlX2NoYW5nZWFibGUnLFxuXG4gICAgLyoqXG4gICAgICogTXVsdGljaG9pY2VNYXAgZmllbGQsIHRoYXQgY29udGFpbnMgc2VsZWN0ZWQgaGVhZGVyIG1vZGVzIGZvciB0YXNrIHZpZXcgYXMgYSB2YWx1ZVxuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9UQVNLX0hFQURFUlNfTU9ERSA9ICd0YXNrX2hlYWRlcnNfbW9kZScsXG5cbiAgICAvKipcbiAgICAgKiBCb29sZWFuIGZpZWxkLCB0aGF0IGlzIHRydWUgaWYgdGFibGUgbW9kZSBjYW4gYmUgYXBwbGllZCBpbiB0YXNrIHZpZXdcbiAgICAgKiAqL1xuICAgIElURU1fRklFTERfSURfVEFTS19BTExPV19UQUJMRV9NT0RFID0gJ3Rhc2tfYWxsb3dfaGVhZGVyX3RhYmxlX21vZGUnLFxuXG4gICAgLyoqXG4gICAgICogRW51bWVyYXRpb25NYXAgZmllbGQsIHRoYXQgY29udGFpbnMgc2VsZWN0ZWQgZGVmYXVsdCBoZWFkZXIgbW9kZSBmb3IgdGFzayB2aWV3IGFzIGEgdmFsdWVcbiAgICAgKiAqL1xuICAgIElURU1fRklFTERfSURfVEFTS19ERUZBVUxUX0hFQURFUlNfTU9ERSA9ICd0YXNrX2hlYWRlcnNfZGVmYXVsdF9tb2RlJyxcblxuICAgIC8qKlxuICAgICAqIEJvb2xlYW4gZmllbGQsIHRoYXQgaXMgdHJ1ZSB0byBtYWtlIG1vZGUgbWVudSBpbiB0YXNrIHZpZXcgdmlzaWJsZVxuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9UQVNLX0hFQURFUlNfQ0hBTkdFQUJMRSA9ICd0YXNrX2lzX2hlYWRlcl9tb2RlX2NoYW5nZWFibGUnLFxuXG4gICAgLyoqXG4gICAgICogQm9vbGVhbiBmaWVsZCwgdGhhdCBpcyB0cnVlIHRvIHVzZSBkZWZhdWx0IGhlYWRlcnMgY29uZmlndXJhdGlvbiBmb3IgY2FzZSB2aWV3XG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX1VTRV9DQVNFX0RFRkFVTFRfSEVBREVSUyA9ICd1c2VfY2FzZV9kZWZhdWx0X2hlYWRlcnMnLFxuXG4gICAgLyoqXG4gICAgICogVGV4dCBmaWVsZCwgdGhhdCBjb250YWlucyBkZWZhdWx0IGhlYWRlciBtZXRhZGF0YSBzZXBhcmF0ZWQgYnkgY29tbWEgZm9yIGNhc2UgdmlldyBhcyBhIHZhbHVlXG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX0NBU0VfREVGQVVMVF9IRUFERVJTID0gJ2Nhc2VfZGVmYXVsdF9oZWFkZXJzJyxcblxuICAgIC8qKlxuICAgICAqIEJvb2xlYW4gZmllbGQsIHRoYXQgaXMgdHJ1ZSB0byB1c2UgZGVmYXVsdCBoZWFkZXJzIGNvbmZpZ3VyYXRpb24gZm9yIHRhc2sgdmlld1xuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9VU0VfVEFTS19ERUZBVUxUX0hFQURFUlMgPSAndXNlX3Rhc2tfZGVmYXVsdF9oZWFkZXJzJyxcblxuICAgIC8qKlxuICAgICAqIFRleHQgZmllbGQsIHRoYXQgY29udGFpbnMgZGVmYXVsdCBoZWFkZXIgbWV0YWRhdGEgc2VwYXJhdGVkIGJ5IGNvbW1hIGZvciB0YXNrIHZpZXcgYXMgYSB2YWx1ZVxuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9UQVNLX0RFRkFVTFRfSEVBREVSUyA9ICd0YXNrX2RlZmF1bHRfaGVhZGVycycsXG5cbiAgICAvKipcbiAgICAgKiBNdWx0aWNob2ljZU1hcCBmaWVsZCwgdGhhdCBjb250YWlucyBhbGxvd2VkIHJvbGVzIGFzIHZhbHVlXG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX0FMTE9XRURfUk9MRVMgPSAnYWxsb3dlZF9yb2xlcycsXG5cbiAgICAvKipcbiAgICAgKiBNdWx0aWNob2ljZU1hcCBmaWVsZCwgdGhhdCBjb250YWlucyBiYW5uZWQgcm9sZXMgYXMgdmFsdWVcbiAgICAgKiAqL1xuICAgIElURU1fRklFTERfSURfQkFOTkVEX1JPTEVTID0gJ2Jhbm5lZF9yb2xlcycsXG5cbiAgICAvKipcbiAgICAgKiBUZXh0IGZpZWxkLCB0aGF0IGNvbnRhaW5zIGljb24gaWRlbnRpZmllclxuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9NRU5VX0lDT04gPSAnbWVudV9pY29uJyxcblxuICAgIC8qKlxuICAgICAqIEkxOG4gZmllbGQsIHRoYXQgY29udGFpbnMgbGFiZWxzIG9mIG1lbnUgaXRlbVxuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9NRU5VX05BTUUgPSAnbWVudV9uYW1lJyxcblxuICAgIC8qKlxuICAgICAqIFRleHQgZmllbGQsIHRoYXQgY29udGFpbnMgVVJJXG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX05PREVfUEFUSCA9ICdub2RlUGF0aCcsXG5cbiAgICAvKipcbiAgICAgKiBCb29sZWFuIGZpZWxkLCB0aGF0IGlzIHRydWUgaWYgaXRlbSBjb250YWlucyBjaGlsZCBpdGVtc1xuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9IQVNfQ0hJTERSRU4gPSAnaGFzQ2hpbGRyZW4nLFxuXG59XG4iXX0=
144
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAtbmF2aWdhdGlvbi1jb25zdGFudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL25hdmlnYXRpb24vbW9kZWwvZ3JvdXAtbmF2aWdhdGlvbi1jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksd0JBNEtYO0FBNUtELFdBQVksd0JBQXdCO0lBQ2hDOztPQUVHO0lBQ0gsdUVBQTJDLENBQUE7SUFDM0M7O09BRUc7SUFDSCwwRUFBOEMsQ0FBQTtJQUM5Qzs7T0FFRztJQUNILCtFQUFtRCxDQUFBO0lBQ25EOztPQUVHO0lBQ0gsMEZBQThELENBQUE7SUFDOUQ7O09BRUc7SUFDSCw4RUFBa0QsQ0FBQTtJQUVsRDs7U0FFSztJQUNMLG1GQUF1RCxDQUFBO0lBRXZEOztTQUVLO0lBQ0wsK0ZBQW1FLENBQUE7SUFFbkU7O1NBRUs7SUFDTCw2RkFBaUUsQ0FBQTtJQUVqRTs7U0FFSztJQUNMLHlGQUE2RCxDQUFBO0lBRTdEOztTQUVLO0lBQ0wseUZBQTZELENBQUE7SUFFN0Q7O1NBRUs7SUFDTCx5RUFBNkMsQ0FBQTtJQUU3Qzs7U0FFSztJQUNMLHlHQUE2RSxDQUFBO0lBRTdFOztTQUVLO0lBQ0wscUZBQXlELENBQUE7SUFFekQ7O1NBRUs7SUFDTCxtR0FBdUUsQ0FBQTtJQUV2RTs7U0FFSztJQUNMLHVHQUEyRSxDQUFBO0lBRTNFOztTQUVLO0lBQ0wscUZBQXlELENBQUE7SUFFekQ7O1NBRUs7SUFDTCxpRkFBcUQsQ0FBQTtJQUVyRDs7U0FFSztJQUNMLGdHQUFvRSxDQUFBO0lBRXBFOztTQUVLO0lBQ0wsaUdBQXFFLENBQUE7SUFFckU7O1NBRUs7SUFDTCxvR0FBd0UsQ0FBQTtJQUV4RTs7U0FFSztJQUNMLGlGQUFxRCxDQUFBO0lBRXJEOztTQUVLO0lBQ0wsZ0dBQW9FLENBQUE7SUFFcEU7O1NBRUs7SUFDTCxpR0FBcUUsQ0FBQTtJQUVyRTs7U0FFSztJQUNMLG9HQUF3RSxDQUFBO0lBRXhFOztTQUVLO0lBQ0wsK0ZBQW1FLENBQUE7SUFFbkU7O1NBRUs7SUFDTCx1RkFBMkQsQ0FBQTtJQUUzRDs7U0FFSztJQUNMLCtGQUFtRSxDQUFBO0lBRW5FOztTQUVLO0lBQ0wsdUZBQTJELENBQUE7SUFFM0Q7O1NBRUs7SUFDTCx5RUFBNkMsQ0FBQTtJQUU3Qzs7U0FFSztJQUNMLHVFQUEyQyxDQUFBO0lBRTNDOztTQUVLO0lBQ0wsaUVBQXFDLENBQUE7SUFFckM7O1NBRUs7SUFDTCxpRUFBcUMsQ0FBQTtJQUVyQzs7U0FFSztJQUNMLGdFQUFvQyxDQUFBO0lBRXBDOztTQUVLO0lBQ0wsc0VBQTBDLENBQUE7SUFFMUM7O1NBRUs7SUFDTCx5RUFBNkMsQ0FBQTtBQUVqRCxDQUFDLEVBNUtXLHdCQUF3QixLQUF4Qix3QkFBd0IsUUE0S25DIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzIHtcbiAgICAvKipcbiAgICAgKiBOYW1lIG9mIHRoZSBjb21wb25lbnQgdGhhdCBpbmRpY2F0ZXMgdGhlIHBvc2l0aW9uIG9mIHRoZSBncm91cCBzcGVjaWZpYyBuYXZpZ2F0aW9uIGVsZW1lbnRzLlxuICAgICAqL1xuICAgIEdST1VQX05BVklHQVRJT05fT1VUTEVUID0gJ2dyb3VwTmF2aWdhdGlvbicsXG4gICAgLyoqXG4gICAgICogTmFtZSBvZiB0aGUgcm91dGVyIHBhcmFtIHRoYXQgaXMgdXNlZCB0byBwcm92aWRlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzZWxlY3RlZCBmaWx0ZXIgdG8gdGhlIGdyb3VwIG5hdmlnYXRpb24gdmlldyBjb21wb25lbnRcbiAgICAgKi9cbiAgICBHUk9VUF9OQVZJR0FUSU9OX1JPVVRFUl9QQVJBTSA9ICdmaWx0ZXJDYXNlSWQnLFxuICAgIC8qKlxuICAgICAqIEZpZWxkIGlkLCB0aGF0IGNvbnRhaW5zIHRoZSB0YWIgbmFtZSBvZiB0aGUgbmF2aWdhdGlvbiBpdGVtLlxuICAgICAqL1xuICAgIE5BVklHQVRJT05fRU5UUllfVElUTEVfRklFTERfSURfU1VGRklYID0gJ3RhYl9uYW1lJyxcbiAgICAvKipcbiAgICAgKiBCb29sZWFuIGZpZWxkIGlkLCB0aGF0IGRldGVybWluZXMgaWYgdGhlIG5hdmlnYXRpb24gZGVmaW5lcyBhIHRhYiBpY29uLlxuICAgICAqL1xuICAgIE5BVklHQVRJT05fRU5UUllfSUNPTl9FTkFCTEVEX0ZJRUxEX0lEX1NVRkZJWCA9ICd1c2VfdGFiX2ljb24nLFxuICAgIC8qKlxuICAgICAqIFRleHQgZmllbGQgaWQsIHRoYXQgY29udGFpbnMgdGhlIGlkIG9mIHRoZSB1c2VkIG1hdGVyaWFsIGljb24uXG4gICAgICovXG4gICAgTkFWSUdBVElPTl9FTlRSWV9JQ09OX0ZJRUxEX0lEX1NVRkZJWCA9ICd0YWJfaWNvbicsXG5cbiAgICAvKipcbiAgICAgKiBUYXNrUmVmIGZpZWxkLCB0aGF0IGNvbnRhaW5zIHRhc2tJZCBvZiBmaWx0ZXIgdGFza1xuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9GSUxURVJfVEFTS1JFRiA9ICdjdXJyZW50X2ZpbHRlcl9wcmV2aWV3JyxcblxuICAgIC8qKlxuICAgICAqIFRleHQgZmllbGQgaWQsIHRoYXQgY29udGFpbnMgdGl0bGUgb2YgY3JlYXRlIGNhc2UgYnV0dG9uXG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX0NSRUFURV9DQVNFX0JVVFRPTl9USVRMRSA9ICdjcmVhdGVfY2FzZV9idXR0b25fdGl0bGUnLFxuXG4gICAgLyoqXG4gICAgICogVGV4dCBmaWVsZCBpZCwgdGhhdCBjb250YWlucyBpY29uIG5hbWUgb2YgY3JlYXRlIGNhc2UgYnV0dG9uXG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX0NSRUFURV9DQVNFX0JVVFRPTl9JQ09OID0gJ2NyZWF0ZV9jYXNlX2J1dHRvbl9pY29uJyxcblxuICAgIC8qKlxuICAgICAqIEVudW1lcmF0aW9uTWFwIGZpZWxkLCB0aGF0IGNvbnRhaW5zIHNlbGVjdGVkIHNlYXJjaCB0eXBlIGZvciBjYXNlIHZpZXdcbiAgICAgKiAqL1xuICAgIElURU1fRklFTERfSURfQ0FTRV9WSUVXX1NFQVJDSF9UWVBFID0gJ2Nhc2Vfdmlld19zZWFyY2hfdHlwZScsXG5cbiAgICAvKipcbiAgICAgKiBFbnVtZXJhdGlvbk1hcCBmaWVsZCwgdGhhdCBjb250YWlucyBzZWxlY3RlZCBzZWFyY2ggdHlwZSBmb3IgdGFzayB2aWV3XG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX1RBU0tfVklFV19TRUFSQ0hfVFlQRSA9ICd0YXNrX3ZpZXdfc2VhcmNoX3R5cGUnLFxuXG4gICAgLyoqXG4gICAgICogQm9vbGVhbiBmaWVsZCwgdGhhdCBpcyB0cnVlIGlmIHVzZXIgd2FudHMgdG8gbWVyZ2UgYmFzZSBmaWx0ZXIgYW5kIGN1c3RvbSBmaWx0ZXJcbiAgICAgKiAqL1xuICAgIElURU1fRklFTERfSURfTUVSR0VfRklMVEVSUyA9ICdtZXJnZV9maWx0ZXJzJyxcblxuICAgIC8qKlxuICAgICAqIFRhc2tSZWYgZmllbGQsIHRoYXQgY29udGFpbnMgdGFza0lkIG9mIGN1c3RvbSBmaWx0ZXIgZm9yIHRhc2sgdmlld1xuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9BRERJVElPTkFMX0ZJTFRFUl9UQVNLUkVGID0gJ2N1cnJlbnRfYWRkaXRpb25hbF9maWx0ZXJfcHJldmlldycsXG5cbiAgICAvKipcbiAgICAgKiBCb29sZWFuIGZpZWxkLCB0aGF0IGlzIHRydWUgaWYgdGhlIHVzZXIgd2FudHMgdG8gc2VlIG1vcmUgbWVudSBmb3IgY2FzZSBpdGVtIGluIGNhc2Ugdmlld1xuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9DQVNFX1NIT1dfTU9SRV9NRU5VID0gJ2Nhc2Vfc2hvd19tb3JlX21lbnUnLFxuXG4gICAgLyoqXG4gICAgICogQm9vbGVhbiBmaWVsZCwgdGhhdCBpcyB0cnVlIGlmIG5vIGlucHV0IGZvciB0aXRsZSBpbiBjYXNlIGNyZWF0aW9uIGlzIHNob3duXG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX0NBU0VfVElUTEVfSU5fQ1JFQVRJT04gPSAnY2FzZV9yZXF1aXJlX3RpdGxlX2luX2NyZWF0aW9uJyxcblxuICAgIC8qKlxuICAgICAqIFRleHQgZmllbGQsIHRoYXQgY29udGFpbnMgYmFubmVkIHByb2Nlc3NlcyBpbiBjYXNlIGNyZWF0aW9uIGFzIGEgdmFsdWVcbiAgICAgKiAqL1xuICAgIElURU1fRklFTERfSURfQ0FTRV9CQU5ORURfUFJPQ0VTU19DUkVBVElPTiA9ICdjYXNlX2Jhbm5lZF9uZXRzX2luX2NyZWF0aW9uJyxcblxuICAgIC8qKlxuICAgICAqIEJvb2xlYW4gZmllbGQsIHRoYXQgaXMgdHJ1ZSBpZiB0aGUgdXNlciB3YW50cyB0byBzZWUgbW9yZSBtZW51IGZvciB0YXNrIGl0ZW0gaW4gdGFzayB2aWV3XG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX1RBU0tfU0hPV19NT1JFX01FTlUgPSAndGFza19zaG93X21vcmVfbWVudScsXG5cbiAgICAvKipcbiAgICAgKiBNdWx0aWNob2ljZU1hcCBmaWVsZCwgdGhhdCBjb250YWlucyBzZWxlY3RlZCBoZWFkZXIgbW9kZXMgZm9yIGNhc2UgdmlldyBhcyBhIHZhbHVlXG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX0NBU0VfSEVBREVSU19NT0RFID0gJ2Nhc2VfaGVhZGVyc19tb2RlJyxcblxuICAgIC8qKlxuICAgICAqIEJvb2xlYW4gZmllbGQsIHRoYXQgaXMgdHJ1ZSBpZiB0YWJsZSBtb2RlIGNhbiBiZSBhcHBsaWVkIGluIGNhc2Ugdmlld1xuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9DQVNFX0FMTE9XX1RBQkxFX01PREUgPSAnY2FzZV9hbGxvd19oZWFkZXJfdGFibGVfbW9kZScsXG5cbiAgICAvKipcbiAgICAgKiBFbnVtZXJhdGlvbk1hcCBmaWVsZCwgdGhhdCBjb250YWlucyBzZWxlY3RlZCBkZWZhdWx0IGhlYWRlciBtb2RlIGZvciBjYXNlIHZpZXcgYXMgYSB2YWx1ZVxuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9DQVNFX0RFRkFVTFRfSEVBREVSU19NT0RFID0gJ2Nhc2VfaGVhZGVyc19kZWZhdWx0X21vZGUnLFxuXG4gICAgLyoqXG4gICAgICogQm9vbGVhbiBmaWVsZCwgdGhhdCBpcyB0cnVlIHRvIG1ha2UgbW9kZSBtZW51IGluIGNhc2UgdmlldyB2aXNpYmxlXG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX0NBU0VfSEVBREVSU19DSEFOR0VBQkxFID0gJ2Nhc2VfaXNfaGVhZGVyX21vZGVfY2hhbmdlYWJsZScsXG5cbiAgICAvKipcbiAgICAgKiBNdWx0aWNob2ljZU1hcCBmaWVsZCwgdGhhdCBjb250YWlucyBzZWxlY3RlZCBoZWFkZXIgbW9kZXMgZm9yIHRhc2sgdmlldyBhcyBhIHZhbHVlXG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX1RBU0tfSEVBREVSU19NT0RFID0gJ3Rhc2tfaGVhZGVyc19tb2RlJyxcblxuICAgIC8qKlxuICAgICAqIEJvb2xlYW4gZmllbGQsIHRoYXQgaXMgdHJ1ZSBpZiB0YWJsZSBtb2RlIGNhbiBiZSBhcHBsaWVkIGluIHRhc2sgdmlld1xuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9UQVNLX0FMTE9XX1RBQkxFX01PREUgPSAndGFza19hbGxvd19oZWFkZXJfdGFibGVfbW9kZScsXG5cbiAgICAvKipcbiAgICAgKiBFbnVtZXJhdGlvbk1hcCBmaWVsZCwgdGhhdCBjb250YWlucyBzZWxlY3RlZCBkZWZhdWx0IGhlYWRlciBtb2RlIGZvciB0YXNrIHZpZXcgYXMgYSB2YWx1ZVxuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9UQVNLX0RFRkFVTFRfSEVBREVSU19NT0RFID0gJ3Rhc2tfaGVhZGVyc19kZWZhdWx0X21vZGUnLFxuXG4gICAgLyoqXG4gICAgICogQm9vbGVhbiBmaWVsZCwgdGhhdCBpcyB0cnVlIHRvIG1ha2UgbW9kZSBtZW51IGluIHRhc2sgdmlldyB2aXNpYmxlXG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX1RBU0tfSEVBREVSU19DSEFOR0VBQkxFID0gJ3Rhc2tfaXNfaGVhZGVyX21vZGVfY2hhbmdlYWJsZScsXG5cbiAgICAvKipcbiAgICAgKiBCb29sZWFuIGZpZWxkLCB0aGF0IGlzIHRydWUgdG8gdXNlIGRlZmF1bHQgaGVhZGVycyBjb25maWd1cmF0aW9uIGZvciBjYXNlIHZpZXdcbiAgICAgKiAqL1xuICAgIElURU1fRklFTERfSURfVVNFX0NBU0VfREVGQVVMVF9IRUFERVJTID0gJ3VzZV9jYXNlX2RlZmF1bHRfaGVhZGVycycsXG5cbiAgICAvKipcbiAgICAgKiBUZXh0IGZpZWxkLCB0aGF0IGNvbnRhaW5zIGRlZmF1bHQgaGVhZGVyIG1ldGFkYXRhIHNlcGFyYXRlZCBieSBjb21tYSBmb3IgY2FzZSB2aWV3IGFzIGEgdmFsdWVcbiAgICAgKiAqL1xuICAgIElURU1fRklFTERfSURfQ0FTRV9ERUZBVUxUX0hFQURFUlMgPSAnY2FzZV9kZWZhdWx0X2hlYWRlcnMnLFxuXG4gICAgLyoqXG4gICAgICogQm9vbGVhbiBmaWVsZCwgdGhhdCBpcyB0cnVlIHRvIHVzZSBkZWZhdWx0IGhlYWRlcnMgY29uZmlndXJhdGlvbiBmb3IgdGFzayB2aWV3XG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX1VTRV9UQVNLX0RFRkFVTFRfSEVBREVSUyA9ICd1c2VfdGFza19kZWZhdWx0X2hlYWRlcnMnLFxuXG4gICAgLyoqXG4gICAgICogVGV4dCBmaWVsZCwgdGhhdCBjb250YWlucyBkZWZhdWx0IGhlYWRlciBtZXRhZGF0YSBzZXBhcmF0ZWQgYnkgY29tbWEgZm9yIHRhc2sgdmlldyBhcyBhIHZhbHVlXG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX1RBU0tfREVGQVVMVF9IRUFERVJTID0gJ3Rhc2tfZGVmYXVsdF9oZWFkZXJzJyxcblxuICAgIC8qKlxuICAgICAqIE11bHRpY2hvaWNlTWFwIGZpZWxkLCB0aGF0IGNvbnRhaW5zIGFsbG93ZWQgcm9sZXMgYXMgdmFsdWVcbiAgICAgKiAqL1xuICAgIElURU1fRklFTERfSURfQUxMT1dFRF9ST0xFUyA9ICdhbGxvd2VkX3JvbGVzJyxcblxuICAgIC8qKlxuICAgICAqIE11bHRpY2hvaWNlTWFwIGZpZWxkLCB0aGF0IGNvbnRhaW5zIGJhbm5lZCByb2xlcyBhcyB2YWx1ZVxuICAgICAqICovXG4gICAgSVRFTV9GSUVMRF9JRF9CQU5ORURfUk9MRVMgPSAnYmFubmVkX3JvbGVzJyxcblxuICAgIC8qKlxuICAgICAqIFRleHQgZmllbGQsIHRoYXQgY29udGFpbnMgaWNvbiBpZGVudGlmaWVyXG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX01FTlVfSUNPTiA9ICdtZW51X2ljb24nLFxuXG4gICAgLyoqXG4gICAgICogSTE4biBmaWVsZCwgdGhhdCBjb250YWlucyBsYWJlbHMgb2YgbWVudSBpdGVtXG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX01FTlVfTkFNRSA9ICdtZW51X25hbWUnLFxuXG4gICAgLyoqXG4gICAgICogVGV4dCBmaWVsZCwgdGhhdCBjb250YWlucyBVUklcbiAgICAgKiAqL1xuICAgIElURU1fRklFTERfSURfTk9ERV9QQVRIID0gJ25vZGVQYXRoJyxcblxuICAgIC8qKlxuICAgICAqIEJvb2xlYW4gZmllbGQsIHRoYXQgaXMgdHJ1ZSBpZiBpdGVtIGNvbnRhaW5zIGNoaWxkIGl0ZW1zXG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX0hBU19DSElMRFJFTiA9ICdoYXNDaGlsZHJlbicsXG5cbiAgICAvKipcbiAgICAgKiBDYXNlRmllbGQgY29udGFpbmluZyBzdHJpbmdJZHMgb2YgY2hpbGQgaW5zdGFuY2VzIG9mIHByb2Nlc3MgcHJlZmVyZW5jZV9pdGVtXG4gICAgICogKi9cbiAgICBJVEVNX0ZJRUxEX0lEX0NISUxEX0lURU1fSURTID0gJ2NoaWxkSXRlbUlkcycsXG5cbn1cbiJdfQ==