@hmcts/ccd-case-ui-toolkit 7.0.0-NodeAndNgUpgrades.1 → 7.0.0-NodeAndNgUpgrades.1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. package/esm2020/lib/shared/commons/case-edit-data/case-edit-data.service.mjs +1 -1
  2. package/esm2020/lib/shared/components/case-editor/case-edit/case-edit.component.mjs +8 -8
  3. package/esm2020/lib/shared/components/case-editor/case-edit-confirm/case-edit-confirm.component.mjs +1 -1
  4. package/esm2020/lib/shared/components/case-editor/case-edit-form/case-edit-form.component.mjs +2 -2
  5. package/esm2020/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.mjs +1 -1
  6. package/esm2020/lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.mjs +1 -1
  7. package/esm2020/lib/shared/components/case-editor/case-editor.module.mjs +13 -13
  8. package/esm2020/lib/shared/components/case-editor/services/case.notifier.mjs +1 -8
  9. package/esm2020/lib/shared/components/case-editor/services/page-validation.service.mjs +1 -1
  10. package/esm2020/lib/shared/components/case-viewer/case-challenged-access-request/case-challenged-access-request.component.mjs +1 -1
  11. package/esm2020/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.mjs +5 -5
  12. package/esm2020/lib/shared/components/case-viewer/case-review-specific-access-request/case-review-specific-access-request.component.mjs +1 -1
  13. package/esm2020/lib/shared/components/case-viewer/case-specific-access-request/case-specific-access-request.component.mjs +1 -1
  14. package/esm2020/lib/shared/components/create-case-filters/create-case-filters.component.mjs +15 -10
  15. package/esm2020/lib/shared/components/event-trigger/event-trigger.component.mjs +1 -1
  16. package/esm2020/lib/shared/components/palette/address/write-address-field.component.mjs +3 -3
  17. package/esm2020/lib/shared/components/palette/base-field/abstract-field-read.component.mjs +1 -1
  18. package/esm2020/lib/shared/components/palette/base-field/abstract-form-field.component.mjs +2 -2
  19. package/esm2020/lib/shared/components/palette/base-field/field-read.component.mjs +4 -4
  20. package/esm2020/lib/shared/components/palette/base-field/field-write.component.mjs +2 -2
  21. package/esm2020/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder.component.mjs +3 -3
  22. package/esm2020/lib/shared/components/palette/case-flag/components/add-comments/add-comments.component.mjs +2 -2
  23. package/esm2020/lib/shared/components/palette/case-flag/components/manage-case-flags/manage-case-flags.component.mjs +2 -2
  24. package/esm2020/lib/shared/components/palette/case-flag/components/search-language-interpreter/search-language-interpreter.component.mjs +2 -2
  25. package/esm2020/lib/shared/components/palette/case-flag/components/select-flag-location/select-flag-location.component.mjs +2 -2
  26. package/esm2020/lib/shared/components/palette/case-flag/components/select-flag-type/select-flag-type.component.mjs +2 -2
  27. package/esm2020/lib/shared/components/palette/case-flag/components/update-flag/update-flag.component.mjs +2 -2
  28. package/esm2020/lib/shared/components/palette/case-flag/domain/case-flag.model.mjs +1 -1
  29. package/esm2020/lib/shared/components/palette/case-flag/read-case-flag-field.component.mjs +3 -3
  30. package/esm2020/lib/shared/components/palette/case-flag/write-case-flag-field.component.mjs +22 -22
  31. package/esm2020/lib/shared/components/palette/case-link/write-case-link-field.component.mjs +4 -4
  32. package/esm2020/lib/shared/components/palette/collection/write-collection-field.component.mjs +8 -8
  33. package/esm2020/lib/shared/components/palette/complex/write-complex-field.component.mjs +3 -3
  34. package/esm2020/lib/shared/components/palette/document/write-document-field.component.mjs +42 -23
  35. package/esm2020/lib/shared/components/palette/judicial-user/write-judicial-user-field.component.mjs +16 -2
  36. package/esm2020/lib/shared/components/palette/linked-cases/components/link-cases/link-cases.component.mjs +1 -1
  37. package/esm2020/lib/shared/components/palette/linked-cases/components/unlink-cases/unlink-cases.component.mjs +1 -1
  38. package/esm2020/lib/shared/components/palette/linked-cases/write-linked-cases-field.component.mjs +3 -3
  39. package/esm2020/lib/shared/components/palette/order-summary/write-order-summary-field.component.mjs +5 -5
  40. package/esm2020/lib/shared/components/palette/organisation/write-organisation-field.component.mjs +3 -3
  41. package/esm2020/lib/shared/components/palette/palette.module.mjs +5 -6
  42. package/esm2020/lib/shared/components/search-filters/search-filters.component.mjs +4 -4
  43. package/esm2020/lib/shared/components/search-result/search-result.component.mjs +2 -2
  44. package/esm2020/lib/shared/components/workbasket-filters/workbasket-filters.component.mjs +15 -4
  45. package/esm2020/lib/shared/directives/conditional-show/conditional-show-form.directive.mjs +4 -4
  46. package/esm2020/lib/shared/directives/substitutor/label-substitutor.directive.mjs +3 -3
  47. package/esm2020/lib/shared/domain/case-edit/case-edit.model.mjs +1 -1
  48. package/esm2020/lib/shared/domain/definition/jurisdiction.model.mjs +1 -1
  49. package/esm2020/lib/shared/pipes/complex/ccd-page-fields.pipe.mjs +1 -1
  50. package/esm2020/lib/shared/pipes/complex/ccd-read-fields-filter.pipe.mjs +1 -1
  51. package/esm2020/lib/shared/services/fields/fields.purger.mjs +9 -9
  52. package/esm2020/lib/shared/services/fields/fields.utils.mjs +6 -6
  53. package/esm2020/lib/shared/services/form/form-error.service.mjs +1 -1
  54. package/esm2020/lib/shared/services/jurisdiction/jurisdiction.service.mjs +5 -2
  55. package/fesm2015/hmcts-ccd-case-ui-toolkit.mjs +156 -114
  56. package/fesm2015/hmcts-ccd-case-ui-toolkit.mjs.map +1 -1
  57. package/fesm2020/hmcts-ccd-case-ui-toolkit.mjs +154 -114
  58. package/fesm2020/hmcts-ccd-case-ui-toolkit.mjs.map +1 -1
  59. package/lib/shared/commons/case-edit-data/case-edit-data.service.d.ts +3 -3
  60. package/lib/shared/commons/case-edit-data/case-edit-data.service.d.ts.map +1 -1
  61. package/lib/shared/components/case-editor/case-edit/case-edit.component.d.ts +5 -5
  62. package/lib/shared/components/case-editor/case-edit/case-edit.component.d.ts.map +1 -1
  63. package/lib/shared/components/case-editor/case-edit-confirm/case-edit-confirm.component.d.ts +2 -2
  64. package/lib/shared/components/case-editor/case-edit-confirm/case-edit-confirm.component.d.ts.map +1 -1
  65. package/lib/shared/components/case-editor/case-edit-form/case-edit-form.component.d.ts +2 -2
  66. package/lib/shared/components/case-editor/case-edit-form/case-edit-form.component.d.ts.map +1 -1
  67. package/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.d.ts +3 -3
  68. package/lib/shared/components/case-editor/case-edit-page/case-edit-page.component.d.ts.map +1 -1
  69. package/lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.d.ts +2 -2
  70. package/lib/shared/components/case-editor/case-edit-submit/case-edit-submit.component.d.ts.map +1 -1
  71. package/lib/shared/components/case-editor/case-editor.module.d.ts +8 -8
  72. package/lib/shared/components/case-editor/services/case.notifier.d.ts.map +1 -1
  73. package/lib/shared/components/case-editor/services/page-validation.service.d.ts +3 -3
  74. package/lib/shared/components/case-editor/services/page-validation.service.d.ts.map +1 -1
  75. package/lib/shared/components/case-viewer/case-challenged-access-request/case-challenged-access-request.component.d.ts +2 -2
  76. package/lib/shared/components/case-viewer/case-challenged-access-request/case-challenged-access-request.component.d.ts.map +1 -1
  77. package/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.d.ts +4 -4
  78. package/lib/shared/components/case-viewer/case-full-access-view/case-full-access-view.component.d.ts.map +1 -1
  79. package/lib/shared/components/case-viewer/case-review-specific-access-request/case-review-specific-access-request.component.d.ts +2 -2
  80. package/lib/shared/components/case-viewer/case-review-specific-access-request/case-review-specific-access-request.component.d.ts.map +1 -1
  81. package/lib/shared/components/case-viewer/case-specific-access-request/case-specific-access-request.component.d.ts +2 -2
  82. package/lib/shared/components/case-viewer/case-specific-access-request/case-specific-access-request.component.d.ts.map +1 -1
  83. package/lib/shared/components/create-case-filters/create-case-filters.component.d.ts +6 -4
  84. package/lib/shared/components/create-case-filters/create-case-filters.component.d.ts.map +1 -1
  85. package/lib/shared/components/event-trigger/event-trigger.component.d.ts +2 -2
  86. package/lib/shared/components/event-trigger/event-trigger.component.d.ts.map +1 -1
  87. package/lib/shared/components/palette/address/write-address-field.component.d.ts +3 -3
  88. package/lib/shared/components/palette/address/write-address-field.component.d.ts.map +1 -1
  89. package/lib/shared/components/palette/base-field/abstract-field-read.component.d.ts +2 -2
  90. package/lib/shared/components/palette/base-field/abstract-field-read.component.d.ts.map +1 -1
  91. package/lib/shared/components/palette/base-field/abstract-form-field.component.d.ts +3 -3
  92. package/lib/shared/components/palette/base-field/abstract-form-field.component.d.ts.map +1 -1
  93. package/lib/shared/components/palette/base-field/field-read.component.d.ts +2 -2
  94. package/lib/shared/components/palette/base-field/field-read.component.d.ts.map +1 -1
  95. package/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder.component.d.ts +2 -2
  96. package/lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder.component.d.ts.map +1 -1
  97. package/lib/shared/components/palette/case-flag/components/add-comments/add-comments.component.d.ts +2 -2
  98. package/lib/shared/components/palette/case-flag/components/add-comments/add-comments.component.d.ts.map +1 -1
  99. package/lib/shared/components/palette/case-flag/components/manage-case-flags/manage-case-flags.component.d.ts +2 -2
  100. package/lib/shared/components/palette/case-flag/components/manage-case-flags/manage-case-flags.component.d.ts.map +1 -1
  101. package/lib/shared/components/palette/case-flag/components/search-language-interpreter/search-language-interpreter.component.d.ts +2 -2
  102. package/lib/shared/components/palette/case-flag/components/search-language-interpreter/search-language-interpreter.component.d.ts.map +1 -1
  103. package/lib/shared/components/palette/case-flag/components/select-flag-location/select-flag-location.component.d.ts +2 -2
  104. package/lib/shared/components/palette/case-flag/components/select-flag-location/select-flag-location.component.d.ts.map +1 -1
  105. package/lib/shared/components/palette/case-flag/components/select-flag-type/select-flag-type.component.d.ts +2 -2
  106. package/lib/shared/components/palette/case-flag/components/select-flag-type/select-flag-type.component.d.ts.map +1 -1
  107. package/lib/shared/components/palette/case-flag/components/update-flag/update-flag.component.d.ts +2 -2
  108. package/lib/shared/components/palette/case-flag/components/update-flag/update-flag.component.d.ts.map +1 -1
  109. package/lib/shared/components/palette/case-flag/domain/case-flag.model.d.ts +2 -2
  110. package/lib/shared/components/palette/case-flag/write-case-flag-field.component.d.ts +6 -6
  111. package/lib/shared/components/palette/case-flag/write-case-flag-field.component.d.ts.map +1 -1
  112. package/lib/shared/components/palette/case-link/write-case-link-field.component.d.ts +2 -2
  113. package/lib/shared/components/palette/case-link/write-case-link-field.component.d.ts.map +1 -1
  114. package/lib/shared/components/palette/collection/write-collection-field.component.d.ts +3 -3
  115. package/lib/shared/components/palette/collection/write-collection-field.component.d.ts.map +1 -1
  116. package/lib/shared/components/palette/complex/write-complex-field.component.d.ts +3 -3
  117. package/lib/shared/components/palette/complex/write-complex-field.component.d.ts.map +1 -1
  118. package/lib/shared/components/palette/document/write-document-field.component.d.ts +8 -4
  119. package/lib/shared/components/palette/document/write-document-field.component.d.ts.map +1 -1
  120. package/lib/shared/components/palette/judicial-user/write-judicial-user-field.component.d.ts +5 -3
  121. package/lib/shared/components/palette/judicial-user/write-judicial-user-field.component.d.ts.map +1 -1
  122. package/lib/shared/components/palette/linked-cases/components/link-cases/link-cases.component.d.ts +2 -2
  123. package/lib/shared/components/palette/linked-cases/components/link-cases/link-cases.component.d.ts.map +1 -1
  124. package/lib/shared/components/palette/linked-cases/components/unlink-cases/unlink-cases.component.d.ts +2 -2
  125. package/lib/shared/components/palette/linked-cases/components/unlink-cases/unlink-cases.component.d.ts.map +1 -1
  126. package/lib/shared/components/palette/linked-cases/write-linked-cases-field.component.d.ts +2 -2
  127. package/lib/shared/components/palette/linked-cases/write-linked-cases-field.component.d.ts.map +1 -1
  128. package/lib/shared/components/palette/organisation/write-organisation-field.component.d.ts +2 -2
  129. package/lib/shared/components/palette/organisation/write-organisation-field.component.d.ts.map +1 -1
  130. package/lib/shared/components/palette/palette.module.d.ts.map +1 -1
  131. package/lib/shared/components/search-filters/search-filters.component.d.ts +3 -3
  132. package/lib/shared/components/search-filters/search-filters.component.d.ts.map +1 -1
  133. package/lib/shared/components/search-result/search-result.component.d.ts +3 -3
  134. package/lib/shared/components/search-result/search-result.component.d.ts.map +1 -1
  135. package/lib/shared/components/workbasket-filters/workbasket-filters.component.d.ts +4 -4
  136. package/lib/shared/components/workbasket-filters/workbasket-filters.component.d.ts.map +1 -1
  137. package/lib/shared/directives/conditional-show/conditional-show-form.directive.d.ts +2 -2
  138. package/lib/shared/directives/conditional-show/conditional-show-form.directive.d.ts.map +1 -1
  139. package/lib/shared/directives/substitutor/label-substitutor.directive.d.ts +2 -2
  140. package/lib/shared/directives/substitutor/label-substitutor.directive.d.ts.map +1 -1
  141. package/lib/shared/domain/case-edit/case-edit.model.d.ts +2 -2
  142. package/lib/shared/domain/case-edit/case-edit.model.d.ts.map +1 -1
  143. package/lib/shared/domain/definition/jurisdiction.model.d.ts +1 -0
  144. package/lib/shared/domain/definition/jurisdiction.model.d.ts.map +1 -1
  145. package/lib/shared/pipes/complex/ccd-page-fields.pipe.d.ts +2 -2
  146. package/lib/shared/pipes/complex/ccd-page-fields.pipe.d.ts.map +1 -1
  147. package/lib/shared/pipes/complex/ccd-read-fields-filter.pipe.d.ts +2 -2
  148. package/lib/shared/pipes/complex/ccd-read-fields-filter.pipe.d.ts.map +1 -1
  149. package/lib/shared/services/fields/fields.purger.d.ts +4 -4
  150. package/lib/shared/services/fields/fields.purger.d.ts.map +1 -1
  151. package/lib/shared/services/fields/fields.utils.d.ts +6 -6
  152. package/lib/shared/services/fields/fields.utils.d.ts.map +1 -1
  153. package/lib/shared/services/form/form-error.service.d.ts +2 -2
  154. package/lib/shared/services/form/form-error.service.d.ts.map +1 -1
  155. package/lib/shared/services/jurisdiction/jurisdiction.service.d.ts +3 -2
  156. package/lib/shared/services/jurisdiction/jurisdiction.service.d.ts.map +1 -1
  157. package/package.json +2 -3
@@ -527,4 +527,4 @@ LinkCasesComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LinkCase
527
527
  }], function () { return [{ type: i1.CasesService }, { type: i2.FormBuilder }, { type: i3.ValidatorsUtils }, { type: i4.LinkedCasesService }]; }, { linkedCasesStateEmitter: [{
528
528
  type: Output
529
529
  }] }); })();
530
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay1jYXNlcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvcGFsZXR0ZS9saW5rZWQtY2FzZXMvY29tcG9uZW50cy9saW5rLWNhc2VzL2xpbmstY2FzZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvbGlua2VkLWNhc2VzL2NvbXBvbmVudHMvbGluay1jYXNlcy9saW5rLWNhc2VzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQWEsV0FBVyxFQUFvQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RixPQUFPLEtBQUssTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUNqQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBR2xDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQVE5RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ25GLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7Ozs7OztJQ1JyRCxnQ0FBMEQsZUFBQTtJQUNwQixzQkFBTTtJQUFBLGlCQUFPO0lBQUMsWUFDcEQ7SUFBQSxpQkFBTzs7O0lBRDZDLGVBQ3BEO0lBRG9ELHVEQUNwRDs7O0lBU0EsZ0NB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bEUsK0JBQXdEO1FBQUEsc0NBQXFCO1FBQUEsaUJBQUs7UUFDbEYsMEJBQTREO1FBQzlELGlCQUFLLEVBQUE7UUFFUCxrQ0FBaUM7UUFDL0Isc0VBY0s7UUFDTCxvRUFJSztRQUNQLGlCQUFRLEVBQUEsRUFBQTtRQUdaLGdDQUFnQyxrQkFBQTtRQUN1QyxnR0FBUyxZQUFRLElBQUM7UUFBQyxxQkFBSTtRQUFBLGlCQUFTLEVBQUEsRUFBQSxFQUFBLEVBQUE7O1FBMUZ6RSxlQUF3RDtRQUF4RCxnR0FBd0Q7UUFFbEMsZUFBa0I7UUFBbEIsdUNBQWtCO1FBK0N4QixlQUE4RDtRQUE5RCwrRUFBOEQ7UUFDdkUsZUFBeUI7UUFBekIsOENBQXlCO1FBZ0JWLGdCQUFrQjtRQUFsQiwyQ0FBa0I7UUFlbEMsZUFBMkI7UUFBM0IsZ0RBQTJCOzt1RkQ3RHhELGtCQUFrQjtjQUw5QixTQUFTOzJCQUNFLGdCQUFnQjt3SkFNbkIsdUJBQXVCO2tCQUQ3QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQXJyYXksIEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0ICogYXMgbW9tZW50IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDYXNlVmlldywgRXJyb3JNZXNzYWdlLCBIdHRwRXJyb3IgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgTG92UmVmRGF0YU1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2VydmljZXMvY29tbW9uLWRhdGEtc2VydmljZS9jb21tb24tZGF0YS1zZXJ2aWNlJztcbmltcG9ydCB7IENhc2VzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL2Nhc2UtZWRpdG9yL3NlcnZpY2VzL2Nhc2VzLnNlcnZpY2UnO1xuaW1wb3J0IHsgTGlua2VkQ2FzZXNTdGF0ZSB9IGZyb20gJy4uLy4uL2RvbWFpbic7XG5pbXBvcnQge1xuICBDYXNlTGluayxcbiAgQ0NEQ2FzZUxpbmtUeXBlLFxuICBMaW5rQ2FzZVJlYXNvbixcbiAgTGlua1JlYXNvblxufSBmcm9tICcuLi8uLi9kb21haW4vbGlua2VkLWNhc2VzLm1vZGVsJztcbmltcG9ydCB7IExpbmtlZENhc2VzRXJyb3JNZXNzYWdlcywgTGlua2VkQ2FzZXNQYWdlcywgUGF0dGVybnMgfSBmcm9tICcuLi8uLi9lbnVtcyc7XG5pbXBvcnQgeyBMaW5rZWRDYXNlc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9saW5rZWQtY2FzZXMuc2VydmljZSc7XG5pbXBvcnQgeyBWYWxpZGF0b3JzVXRpbHMgfSBmcm9tICcuLi8uLi91dGlscy92YWxpZGF0b3JzLnV0aWxzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY2NkLWxpbmstY2FzZXMnLFxuICBzdHlsZVVybHM6IFsnLi9saW5rLWNhc2VzLmNvbXBvbmVudC5zY3NzJ10sXG4gIHRlbXBsYXRlVXJsOiAnLi9saW5rLWNhc2VzLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgTGlua0Nhc2VzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBsaW5rZWRDYXNlc1N0YXRlRW1pdHRlcjogRXZlbnRFbWl0dGVyPExpbmtlZENhc2VzU3RhdGU+ID0gbmV3IEV2ZW50RW1pdHRlcjxMaW5rZWRDYXNlc1N0YXRlPigpO1xuXG4gIHB1YmxpYyBlcnJvck1lc3NhZ2VzOiBFcnJvck1lc3NhZ2VbXSA9IFtdO1xuICBwdWJsaWMgbGlua0Nhc2VGb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xuICBwdWJsaWMgc2VsZWN0ZWRDYXNlczogQ2FzZUxpbmtbXSA9IFtdO1xuICBwdWJsaWMgY2FzZU51bWJlckVycm9yOiBzdHJpbmc7XG4gIHB1YmxpYyBjYXNlUmVhc29uRXJyb3I6IHN0cmluZztcbiAgcHVibGljIGNhc2VSZWFzb25Db21tZW50c0Vycm9yOiBzdHJpbmc7XG4gIHB1YmxpYyBjYXNlU2VsZWN0aW9uRXJyb3I6IHN0cmluZztcbiAgcHVibGljIG5vU2VsZWN0ZWRDYXNlRXJyb3I6IHN0cmluZztcbiAgcHVibGljIGNhc2VJZDogc3RyaW5nO1xuICBwdWJsaWMgY2FzZU5hbWU6IHN0cmluZztcbiAgcHVibGljIGxpbmtDYXNlUmVhc29uczogTG92UmVmRGF0YU1vZGVsW107XG4gIHB1YmxpYyBzaG93Q29tbWVudHMgPSBmYWxzZTtcbiAgcHJpdmF0ZSByZWFkb25seSBJU09fRk9STUFUID0gJ1lZWVktTU0tRERUSEg6bW06c3MuU1NTJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNhc2VzU2VydmljZTogQ2FzZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZmI6IEZvcm1CdWlsZGVyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdmFsaWRhdG9yc1V0aWxzOiBWYWxpZGF0b3JzVXRpbHMsXG4gICAgcHJpdmF0ZSByZWFkb25seSBsaW5rZWRDYXNlc1NlcnZpY2U6IExpbmtlZENhc2VzU2VydmljZSkgeyB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY2FzZUlkID0gdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuY2FzZUlkO1xuICAgIHRoaXMuY2FzZU5hbWUgPSB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5jYXNlTmFtZTtcbiAgICB0aGlzLmxpbmtDYXNlUmVhc29ucyA9IHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmxpbmtDYXNlUmVhc29ucztcbiAgICB0aGlzLmluaXRGb3JtKCk7XG4gICAgaWYgKHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmVkaXRNb2RlKSB7XG4gICAgICAvLyB0aGlzIG1heSBoYXZlIGluY2x1ZGVzIHRoZSBjdXJyZW50bHkgYWRkZWQgb25lIGJ1dCB5ZXQgdG8gYmUgc3VibWl0dGVkLlxuICAgICAgdGhpcy5zZWxlY3RlZENhc2VzID0gdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UubGlua2VkQ2FzZXM7XG4gICAgfSBlbHNlIGlmICh0aGlzLmxpbmtlZENhc2VzU2VydmljZS5pbml0aWFsQ2FzZUxpbmtzLmxlbmd0aCAhPT0gdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuY2FzZUZpZWxkVmFsdWUubGVuZ3RoKSB7XG4gICAgICB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5saW5rZWRDYXNlcyA9IHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmluaXRpYWxDYXNlTGlua3M7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGluaXRGb3JtKCk6IHZvaWQge1xuICAgIHRoaXMubGlua0Nhc2VGb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICBjYXNlTnVtYmVyOiBbJycsIFtWYWxpZGF0b3JzLm1pbkxlbmd0aCgxNiksIHRoaXMudmFsaWRhdG9yc1V0aWxzLnJlZ2V4UGF0dGVybihQYXR0ZXJucy5DQVNFX1JFRildXSxcbiAgICAgIHJlYXNvblR5cGU6IHRoaXMuZ2V0UmVhc29uVHlwZUZvcm1BcnJheSxcbiAgICAgIG90aGVyRGVzY3JpcHRpb246IFsnJywgW1ZhbGlkYXRvcnMubWF4TGVuZ3RoKDEwMCldXVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldCBnZXRSZWFzb25UeXBlRm9ybUFycmF5KCk6IEZvcm1BcnJheSB7XG4gICAgcmV0dXJuIHRoaXMuZmIuYXJyYXkoXG4gICAgICB0aGlzLmxpbmtDYXNlUmVhc29ucy5tYXAoKHZhbCkgPT5cbiAgICAgICAgdGhpcy5mYi5ncm91cCh7XG4gICAgICAgICAga2V5OiBbdmFsLmtleV0sXG4gICAgICAgICAgdmFsdWVfZW46IFt2YWwudmFsdWVfZW5dLFxuICAgICAgICAgIHZhbHVlX2N5OiBbdmFsLnZhbHVlX2N5XSxcbiAgICAgICAgICBoaW50X3RleHRfZW46IFt2YWwuaGludF90ZXh0X2VuXSxcbiAgICAgICAgICBoaW50X3RleHRfY3k6IFt2YWwuaGludF90ZXh0X2N5XSxcbiAgICAgICAgICBsb3Zfb3JkZXI6IFt2YWwubG92X29yZGVyXSxcbiAgICAgICAgICBwYXJlbnRfa2V5OiBbdmFsLnBhcmVudF9rZXldLFxuICAgICAgICAgIHNlbGVjdGVkOiBbISF2YWwuc2VsZWN0ZWRdLFxuICAgICAgICB9KVxuICAgICAgKSxcbiAgICAgIHRoaXMudmFsaWRhdG9yc1V0aWxzLmZvcm1BcnJheVNlbGVjdGVkVmFsaWRhdG9yKClcbiAgICApO1xuICB9XG5cbiAgcHVibGljIHRvZ2dsZUxpbmtDYXNlUmVhc29uT3RoZXJDb21tZW50cyhldmVudDogYW55KTogdm9pZCB7XG4gICAgdGhpcy5saW5rQ2FzZVJlYXNvbnMuZmluZChyZWFzb24gPT4gcmVhc29uLnZhbHVlX2VuID09PSBldmVudC50YXJnZXQudmFsdWUpLnNlbGVjdGVkID0gZXZlbnQudGFyZ2V0LmNoZWNrZWQ7XG4gICAgdGhpcy5zaG93Q29tbWVudHMgPSB0aGlzLmxpbmtDYXNlUmVhc29ucy5maW5kKHJlYXNvbiA9PiByZWFzb24udmFsdWVfZW4gPT09ICdPdGhlcicpLnNlbGVjdGVkO1xuICB9XG5cbiAgcHVibGljIHN1Ym1pdENhc2VJbmZvKCk6IHZvaWQge1xuICAgIHRoaXMuZXJyb3JNZXNzYWdlcyA9IFtdO1xuICAgIHRoaXMuY2FzZVJlYXNvbkVycm9yID0gbnVsbDtcbiAgICB0aGlzLmNhc2VSZWFzb25Db21tZW50c0Vycm9yID0gbnVsbDtcbiAgICB0aGlzLmNhc2VOdW1iZXJFcnJvciA9IG51bGw7XG4gICAgdGhpcy5jYXNlU2VsZWN0aW9uRXJyb3IgPSBudWxsO1xuICAgIHRoaXMubm9TZWxlY3RlZENhc2VFcnJvciA9IG51bGw7XG4gICAgaWYgKFxuICAgICAgdGhpcy5saW5rQ2FzZUZvcm0udmFsaWQgJiZcbiAgICAgICF0aGlzLmlzQ2FzZVNlbGVjdGVkKHRoaXMuc2VsZWN0ZWRDYXNlcykgJiZcbiAgICAgICF0aGlzLmlzQ2FzZVNlbGVjdGVkKHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmxpbmtlZENhc2VzKSAmJlxuICAgICAgIXRoaXMuaXNDYXNlU2VsZWN0ZWRTYW1lQXNDdXJyZW50Q2FzZSgpICYmXG4gICAgICAhdGhpcy5pc090aGVyT3B0aW9uU2VsZWN0ZWRCdXRPdGhlckRlc2NyaXB0aW9uTm90RW50ZXJlZCgpXG4gICAgKSB7XG4gICAgICB0aGlzLmdldENhc2VJbmZvKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2hvd0Vycm9ySW5mbygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBpc0Nhc2VTZWxlY3RlZChsaW5rZWRDYXNlczogQ2FzZUxpbmtbXSk6IGJvb2xlYW4ge1xuICAgIGlmIChsaW5rZWRDYXNlcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgY29uc3QgY2FzZU51bWJlciA9IHRoaXMubGlua0Nhc2VGb3JtLnZhbHVlLmNhc2VOdW1iZXI7XG4gICAgcmV0dXJuICEhbGlua2VkQ2FzZXMuZmluZChcbiAgICAgIChjYXNlTGluaykgPT4gY2FzZUxpbmsuY2FzZVJlZmVyZW5jZS5zcGxpdCgnLScpLmpvaW4oJycpID09PSBjYXNlTnVtYmVyLnNwbGl0KCctJykuam9pbignJylcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBpc0Nhc2VTZWxlY3RlZFNhbWVBc0N1cnJlbnRDYXNlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmxpbmtDYXNlRm9ybS52YWx1ZS5jYXNlTnVtYmVyLnNwbGl0KCctJykuam9pbignJykgPT09IHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmNhc2VJZC5zcGxpdCgnLScpLmpvaW4oJycpO1xuICB9XG5cbiAgcHJpdmF0ZSBpc090aGVyT3B0aW9uU2VsZWN0ZWRCdXRPdGhlckRlc2NyaXB0aW9uTm90RW50ZXJlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zaG93Q29tbWVudHMgJiYgdGhpcy5saW5rQ2FzZUZvcm0udmFsdWUub3RoZXJEZXNjcmlwdGlvbi50cmltKCkubGVuZ3RoID09PSAwO1xuICB9XG5cbiAgcHVibGljIHNob3dFcnJvckluZm8oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubGlua0Nhc2VGb3JtLmNvbnRyb2xzLmNhc2VOdW1iZXIuaW52YWxpZCkge1xuICAgICAgdGhpcy5jYXNlTnVtYmVyRXJyb3IgPSBMaW5rZWRDYXNlc0Vycm9yTWVzc2FnZXMuQ2FzZU51bWJlckVycm9yO1xuICAgICAgdGhpcy5lcnJvck1lc3NhZ2VzLnB1c2goe1xuICAgICAgICB0aXRsZTogJ2R1bW15LWNhc2UtbnVtYmVyJyxcbiAgICAgICAgZGVzY3JpcHRpb246IExpbmtlZENhc2VzRXJyb3JNZXNzYWdlcy5DYXNlTnVtYmVyRXJyb3IsXG4gICAgICAgIGZpZWxkSWQ6ICdjYXNlTnVtYmVyJyxcbiAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAodGhpcy5saW5rQ2FzZUZvcm0uY29udHJvbHMucmVhc29uVHlwZS5pbnZhbGlkKSB7XG4gICAgICB0aGlzLmNhc2VSZWFzb25FcnJvciA9IExpbmtlZENhc2VzRXJyb3JNZXNzYWdlcy5SZWFzb25TZWxlY3Rpb25FcnJvcjtcbiAgICAgIHRoaXMuZXJyb3JNZXNzYWdlcy5wdXNoKHtcbiAgICAgICAgdGl0bGU6ICdkdW1teS1jYXNlLXJlYXNvbicsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBMaW5rZWRDYXNlc0Vycm9yTWVzc2FnZXMuUmVhc29uU2VsZWN0aW9uRXJyb3IsXG4gICAgICAgIGZpZWxkSWQ6ICdjYXNlUmVhc29uJyxcbiAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAodGhpcy5saW5rQ2FzZUZvcm0uY29udHJvbHMucmVhc29uVHlwZS52YWxpZFxuICAgICAgJiYgdGhpcy5saW5rQ2FzZVJlYXNvbnMuZmluZChyZWFzb24gPT4gcmVhc29uLnZhbHVlX2VuID09PSAnT3RoZXInKS5zZWxlY3RlZCkge1xuICAgICAgaWYgKHRoaXMubGlua0Nhc2VGb3JtLmNvbnRyb2xzLm90aGVyRGVzY3JpcHRpb24udmFsdWUudHJpbSgpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICB0aGlzLmNhc2VSZWFzb25Db21tZW50c0Vycm9yID0gTGlua2VkQ2FzZXNFcnJvck1lc3NhZ2VzLm90aGVyRGVzY3JpcHRpb25FcnJvcjtcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2VzLnB1c2goe1xuICAgICAgICAgIHRpdGxlOiAnZHVtbXktY2FzZS1yZWFzb24tY29tbWVudHMnLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiBMaW5rZWRDYXNlc0Vycm9yTWVzc2FnZXMub3RoZXJEZXNjcmlwdGlvbkVycm9yLFxuICAgICAgICAgIGZpZWxkSWQ6ICdvdGhlckRlc2NyaXB0aW9uJyxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5saW5rQ2FzZUZvcm0uY29udHJvbHMub3RoZXJEZXNjcmlwdGlvbi52YWx1ZS50cmltKCkubGVuZ3RoID4gMTAwKSB7XG4gICAgICAgIHRoaXMuY2FzZVJlYXNvbkNvbW1lbnRzRXJyb3IgPSBMaW5rZWRDYXNlc0Vycm9yTWVzc2FnZXMub3RoZXJEZXNjcmlwdGlvbk1heExlbmd0aEVycm9yO1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZXMucHVzaCh7XG4gICAgICAgICAgdGl0bGU6ICdkdW1teS1jYXNlLXJlYXNvbi1jb21tZW50cycsXG4gICAgICAgICAgZGVzY3JpcHRpb246IExpbmtlZENhc2VzRXJyb3JNZXNzYWdlcy5vdGhlckRlc2NyaXB0aW9uTWF4TGVuZ3RoRXJyb3IsXG4gICAgICAgICAgZmllbGRJZDogJ290aGVyRGVzY3JpcHRpb24nLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKHRoaXMuaXNDYXNlU2VsZWN0ZWQodGhpcy5zZWxlY3RlZENhc2VzKSkge1xuICAgICAgdGhpcy5jYXNlU2VsZWN0aW9uRXJyb3IgPSBMaW5rZWRDYXNlc0Vycm9yTWVzc2FnZXMuQ2FzZVByb3Bvc2VkRXJyb3I7XG4gICAgICB0aGlzLmVycm9yTWVzc2FnZXMucHVzaCh7XG4gICAgICAgIHRpdGxlOiAnZHVtbXktY2FzZS1udW1iZXInLFxuICAgICAgICBkZXNjcmlwdGlvbjogTGlua2VkQ2FzZXNFcnJvck1lc3NhZ2VzLkNhc2VQcm9wb3NlZEVycm9yLFxuICAgICAgICBmaWVsZElkOiAnY2FzZU51bWJlcicsXG4gICAgICB9KTtcbiAgICB9XG4gICAgaWYgKHRoaXMuaXNDYXNlU2VsZWN0ZWQodGhpcy5saW5rZWRDYXNlc1NlcnZpY2UubGlua2VkQ2FzZXMpKSB7XG4gICAgICB0aGlzLmNhc2VTZWxlY3Rpb25FcnJvciA9IExpbmtlZENhc2VzRXJyb3JNZXNzYWdlcy5DYXNlc0xpbmtlZEVycm9yO1xuICAgICAgdGhpcy5lcnJvck1lc3NhZ2VzLnB1c2goe1xuICAgICAgICB0aXRsZTogJ2R1bW15LWNhc2UtbnVtYmVyJyxcbiAgICAgICAgZGVzY3JpcHRpb246IExpbmtlZENhc2VzRXJyb3JNZXNzYWdlcy5DYXNlc0xpbmtlZEVycm9yLFxuICAgICAgICBmaWVsZElkOiAnY2FzZU51bWJlcicsXG4gICAgICB9KTtcbiAgICB9XG4gICAgaWYgKHRoaXMubGlua0Nhc2VGb3JtLnZhbHVlLmNhc2VOdW1iZXIuc3BsaXQoJy0nKS5qb2luKCcnKSA9PT0gdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuY2FzZUlkLnNwbGl0KCctJykuam9pbignJykpIHtcbiAgICAgIHRoaXMuZXJyb3JNZXNzYWdlcy5wdXNoKHtcbiAgICAgICAgdGl0bGU6ICdkdW1teS1jYXNlLW51bWJlcicsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBMaW5rZWRDYXNlc0Vycm9yTWVzc2FnZXMuUHJvcG9zZWRDYXNlV2l0aEluLFxuICAgICAgICBmaWVsZElkOiAnY2FzZU51bWJlcicsXG4gICAgICB9KTtcbiAgICB9XG4gICAgd2luZG93LnNjcm9sbFRvKDAsIDApO1xuICAgIHRoaXMuZW1pdExpbmtlZENhc2VzU3RhdGUoZmFsc2UpO1xuICB9XG5cbiAgcHVibGljIGdldENhc2VJbmZvKCk6IHZvaWQge1xuICAgIGNvbnN0IGNhc2VOdW1iZXJEYXRhID0gdGhpcy5saW5rQ2FzZUZvcm0udmFsdWUuY2FzZU51bWJlci5yZXBsYWNlKC9bLSBdL2csICcnKTtcbiAgICB0aGlzLmNhc2VzU2VydmljZVxuICAgICAgLmdldENhc2VWaWV3VjIoY2FzZU51bWJlckRhdGEpXG4gICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAoY2FzZVZpZXc6IENhc2VWaWV3KSA9PiB7XG4gICAgICAgICAgdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuY2FzZURldGFpbHMgPSBjYXNlVmlldztcbiAgICAgICAgICBjb25zdCBjYXNlTGluazogQ2FzZUxpbmsgPSB7XG4gICAgICAgICAgICBjYXNlUmVmZXJlbmNlOiBjYXNlVmlldy5jYXNlX2lkLFxuICAgICAgICAgICAgcmVhc29uczogdGhpcy5nZXRTZWxlY3RlZENhc2VSZWFzb25zKCksXG4gICAgICAgICAgICBjcmVhdGVkRGF0ZVRpbWU6IG1vbWVudChuZXcgRGF0ZSgpKS5mb3JtYXQodGhpcy5JU09fRk9STUFUKSxcbiAgICAgICAgICAgIGNhc2VUeXBlOiBjYXNlVmlldy5jYXNlX3R5cGUubmFtZSB8fCAnJyxcbiAgICAgICAgICAgIGNhc2VUeXBlRGVzY3JpcHRpb246IGNhc2VWaWV3LmNhc2VfdHlwZS5kZXNjcmlwdGlvbiB8fCAnJyxcbiAgICAgICAgICAgIGNhc2VTdGF0ZTogY2FzZVZpZXcuc3RhdGUubmFtZSB8fCAnJyxcbiAgICAgICAgICAgIGNhc2VTdGF0ZURlc2NyaXB0aW9uOiBjYXNlVmlldy5zdGF0ZS5kZXNjcmlwdGlvbiB8fCAnJyxcbiAgICAgICAgICAgIGNhc2VTZXJ2aWNlOiBjYXNlVmlldy5jYXNlX3R5cGUgJiYgY2FzZVZpZXcuY2FzZV90eXBlLmp1cmlzZGljdGlvbiAmJiBjYXNlVmlldy5jYXNlX3R5cGUuanVyaXNkaWN0aW9uLmRlc2NyaXB0aW9uIHx8ICcnLFxuICAgICAgICAgICAgY2FzZU5hbWU6IHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmdldENhc2VOYW1lKGNhc2VWaWV3KSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGNvbnN0IGNjZEFwaUNhc2VMaW5rRGF0YTogQ0NEQ2FzZUxpbmtUeXBlID0ge1xuICAgICAgICAgICAgQ2FzZVJlZmVyZW5jZTogY2FzZVZpZXcuY2FzZV9pZCxcbiAgICAgICAgICAgIENhc2VUeXBlOiBjYXNlVmlldy5jYXNlX3R5cGUuaWQsXG4gICAgICAgICAgICBDcmVhdGVkRGF0ZVRpbWU6IG1vbWVudChuZXcgRGF0ZSgpKS5mb3JtYXQodGhpcy5JU09fRk9STUFUKSxcbiAgICAgICAgICAgIFJlYXNvbkZvckxpbms6IHRoaXMuZ2V0U2VsZWN0ZWRDQ0RUeXBlQ2FzZVJlYXNvbigpXG4gICAgICAgICAgfTtcbiAgICAgICAgICBpZiAoIXRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmNhc2VGaWVsZFZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5jYXNlRmllbGRWYWx1ZSA9IFtdO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5jYXNlRmllbGRWYWx1ZS5wdXNoKHsgaWQ6IGNhc2VWaWV3LmNhc2VfaWQudG9TdHJpbmcoKSwgdmFsdWU6IGNjZEFwaUNhc2VMaW5rRGF0YSB9KTtcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkQ2FzZXMucHVzaChjYXNlTGluayk7XG4gICAgICAgICAgdGhpcy5saW5rQ2FzZVJlYXNvbnMuZm9yRWFjaChyZWFzb24gPT4gcmVhc29uLnNlbGVjdGVkID0gZmFsc2UpO1xuICAgICAgICAgIHRoaXMuaW5pdEZvcm0oKTtcbiAgICAgICAgICB0aGlzLmVtaXRMaW5rZWRDYXNlc1N0YXRlKGZhbHNlKTtcbiAgICAgICAgfSxcbiAgICAgICAgKGVycm9yOiBIdHRwRXJyb3IpID0+IHtcbiAgICAgICAgICB0aGlzLmNhc2VOdW1iZXJFcnJvciA9IExpbmtlZENhc2VzRXJyb3JNZXNzYWdlcy5DYXNlQ2hlY2tBZ2FpbkVycm9yO1xuICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlcy5wdXNoKHtcbiAgICAgICAgICAgIHRpdGxlOiAnZHVtbXktY2FzZS1udW1iZXInLFxuICAgICAgICAgICAgZGVzY3JpcHRpb246IExpbmtlZENhc2VzRXJyb3JNZXNzYWdlcy5DYXNlQ2hlY2tBZ2FpbkVycm9yLFxuICAgICAgICAgICAgZmllbGRJZDogJ2Nhc2VOdW1iZXInLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHRoaXMuZW1pdExpbmtlZENhc2VzU3RhdGUoZmFsc2UpO1xuICAgICAgICAgIHdpbmRvdy5zY3JvbGxUbygwLCAwKTtcbiAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihlcnJvcik7XG4gICAgICAgIH1cbiAgICAgICk7XG4gIH1cblxuICAvLyBSZXR1cm4gbGlua2VkIGNhc2VzIHN0YXRlIGFuZCBlcnJvciBtZXNzYWdlcyB0byB0aGUgcGFyZW50XG4gIHB1YmxpYyBlbWl0TGlua2VkQ2FzZXNTdGF0ZShpc05hdmlnYXRlVG9OZXh0UGFnZTogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMubGlua2VkQ2FzZXNTdGF0ZUVtaXR0ZXIuZW1pdCh7XG4gICAgICBjdXJyZW50TGlua2VkQ2FzZXNQYWdlOiBMaW5rZWRDYXNlc1BhZ2VzLkxJTktfQ0FTRSxcbiAgICAgIGVycm9yTWVzc2FnZXM6IHRoaXMuZXJyb3JNZXNzYWdlcyxcbiAgICAgIG5hdmlnYXRlVG9OZXh0UGFnZTogaXNOYXZpZ2F0ZVRvTmV4dFBhZ2UsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0U2VsZWN0ZWRDYXNlUmVhc29ucygpOiBMaW5rUmVhc29uW10ge1xuICAgIGNvbnN0IHNlbGVjdGVkUmVhc29ucyA9IFtdO1xuICAgIHRoaXMubGlua0Nhc2VGb3JtLmNvbnRyb2xzLnJlYXNvblR5cGUudmFsdWUuZm9yRWFjaChcbiAgICAgIChzZWxlY3RlZFJlYXNvbjogTGlua0Nhc2VSZWFzb24pID0+IHtcbiAgICAgICAgaWYgKHNlbGVjdGVkUmVhc29uLnNlbGVjdGVkKSB7XG4gICAgICAgICAgc2VsZWN0ZWRSZWFzb25zLnB1c2goe1xuICAgICAgICAgICAgUmVhc29uOiBzZWxlY3RlZFJlYXNvbi5rZXksXG4gICAgICAgICAgICBPdGhlckRlc2NyaXB0aW9uOiBzZWxlY3RlZFJlYXNvbi52YWx1ZV9lbiA9PT0gJ090aGVyJ1xuICAgICAgICAgICAgICA/IHRoaXMubGlua0Nhc2VGb3JtLmNvbnRyb2xzLm90aGVyRGVzY3JpcHRpb24udmFsdWVcbiAgICAgICAgICAgICAgOiAnJ1xuICAgICAgICAgIH0gYXMgTGlua1JlYXNvbik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICApO1xuICAgIHJldHVybiBzZWxlY3RlZFJlYXNvbnM7XG4gIH1cblxuICBwdWJsaWMgZ2V0U2VsZWN0ZWRDQ0RUeXBlQ2FzZVJlYXNvbigpOiBMaW5rUmVhc29uW10ge1xuICAgIGNvbnN0IHNlbGVjdGVkUmVhc29ucyA9IFtdO1xuICAgIHRoaXMubGlua0Nhc2VGb3JtLmNvbnRyb2xzLnJlYXNvblR5cGUudmFsdWUuZm9yRWFjaChcbiAgICAgIChzZWxlY3RlZFJlYXNvbjogTGlua0Nhc2VSZWFzb24pID0+IHtcbiAgICAgICAgaWYgKHNlbGVjdGVkUmVhc29uLnNlbGVjdGVkKSB7XG4gICAgICAgICAgc2VsZWN0ZWRSZWFzb25zLnB1c2goe1xuICAgICAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICAgICAgUmVhc29uOiBzZWxlY3RlZFJlYXNvbi5rZXksXG4gICAgICAgICAgICAgIE90aGVyRGVzY3JpcHRpb246IHNlbGVjdGVkUmVhc29uLnZhbHVlX2VuID09PSAnT3RoZXInXG4gICAgICAgICAgICAgICAgPyB0aGlzLmxpbmtDYXNlRm9ybS5jb250cm9scy5vdGhlckRlc2NyaXB0aW9uLnZhbHVlXG4gICAgICAgICAgICAgICAgOiAnJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgKTtcbiAgICByZXR1cm4gc2VsZWN0ZWRSZWFzb25zO1xuICB9XG5cbiAgcHVibGljIG9uU2VsZWN0ZWRMaW5rZWRDYXNlUmVtb3ZlKHBvcywgc2VsZWN0ZWRDYXNlUmVmZXJlbmNlKTogdm9pZCB7XG4gICAgY29uc3QgY2FzZUZpZWxkVmFsdWUgPSB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5jYXNlRmllbGRWYWx1ZSB8fCBbXTtcbiAgICBjb25zdCB1cGRhdGVkSXRlbXMgPSBjYXNlRmllbGRWYWx1ZS5maWx0ZXIoaXRlbSA9PiBpdGVtLnZhbHVlICYmIGl0ZW0udmFsdWUuQ2FzZVJlZmVyZW5jZSAhPT0gc2VsZWN0ZWRDYXNlUmVmZXJlbmNlKTtcbiAgICBpZiAodXBkYXRlZEl0ZW1zKSB7XG4gICAgICB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5jYXNlRmllbGRWYWx1ZSA9IHVwZGF0ZWRJdGVtcztcbiAgICB9XG4gICAgdGhpcy5zZWxlY3RlZENhc2VzLnNwbGljZShwb3MsIDEpO1xuICB9XG5cbiAgcHVibGljIG9uTmV4dCgpOiB2b2lkIHtcbiAgICB0aGlzLmVycm9yTWVzc2FnZXMgPSBbXTtcbiAgICB0aGlzLmNhc2VSZWFzb25FcnJvciA9IG51bGw7XG4gICAgdGhpcy5jYXNlTnVtYmVyRXJyb3IgPSBudWxsO1xuICAgIHRoaXMuY2FzZVNlbGVjdGlvbkVycm9yID0gbnVsbDtcbiAgICB0aGlzLm5vU2VsZWN0ZWRDYXNlRXJyb3IgPSBudWxsO1xuICAgIGxldCBuYXZpZ2F0ZVRvTmV4dFBhZ2UgPSB0cnVlO1xuICAgIGlmICh0aGlzLnNlbGVjdGVkQ2FzZXMubGVuZ3RoKSB7XG4gICAgICB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5saW5rZWRDYXNlcyA9IHRoaXMuc2VsZWN0ZWRDYXNlcztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5ub1NlbGVjdGVkQ2FzZUVycm9yID0gTGlua2VkQ2FzZXNFcnJvck1lc3NhZ2VzLkNhc2VTZWxlY3Rpb25FcnJvcjtcbiAgICAgIHRoaXMuZXJyb3JNZXNzYWdlcy5wdXNoKHtcbiAgICAgICAgdGl0bGU6ICdkdW1teS1jYXNlLXNlbGVjdGlvbicsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBMaW5rZWRDYXNlc0Vycm9yTWVzc2FnZXMuQ2FzZVNlbGVjdGlvbkVycm9yLFxuICAgICAgICBmaWVsZElkOiAnY2FzZVJlYXNvbicsXG4gICAgICB9KTtcbiAgICAgIG5hdmlnYXRlVG9OZXh0UGFnZSA9IGZhbHNlO1xuICAgIH1cbiAgICB0aGlzLmVtaXRMaW5rZWRDYXNlc1N0YXRlKG5hdmlnYXRlVG9OZXh0UGFnZSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJnb3Z1ay1ncmlkLXJvd1wiPlxuICA8ZGl2IGNsYXNzPVwiZ292dWstZ3JpZC1jb2x1bW4tZnVsbFwiPlxuICAgIDxkaXY+XG4gICAgICA8c3BhbiBjbGFzcz1cImdvdnVrLWNhcHRpb24tbFwiPkxpbmsgY2FzZXMgdG8ge3tjYXNlTmFtZX19IHt7Y2FzZUlkIHwgY2NkQ2FzZVJlZmVyZW5jZX19PC9zcGFuPlxuICAgICAgPGgxIGNsYXNzPVwiZ292dWstaGVhZGluZy14bFwiPlNlbGVjdCBhJm5ic3A7Y2FzZSB5b3Ugd2FudCB0byBsaW5rIHRvIHRoaXMgY2FzZTwvaDE+XG4gICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiIFtmb3JtR3JvdXBdPVwibGlua0Nhc2VGb3JtXCIgKm5nSWY9XCJsaW5rQ2FzZUZvcm1cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWZvcm0tZ3JvdXBcIiBpZD1cImNhc2VOdW1iZXJcIiBbbmdDbGFzc109XCJ7J2dvdnVrLWZvcm0tZ3JvdXAtLWVycm9yJzogISFjYXNlTnVtYmVyRXJyb3J9XCI+XG4gICAgICAgICAgPGgzIGNsYXNzPVwiZ292dWstaGVhZGluZy1zXCI+RW50ZXIgY2FzZSByZWZlcmVuY2U8L2gzPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstZXJyb3ItbWVzc2FnZVwiICpuZ0lmPVwiY2FzZU51bWJlckVycm9yXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImdvdnVrLXZpc3VhbGx5LWhpZGRlblwiPkVycm9yOjwvc3Bhbj4ge3tjYXNlTnVtYmVyRXJyb3J9fVxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJnb3Z1ay1pbnB1dCBnb3Z1ay1pbnB1dC0td2lkdGgtMjBcIiBmb3JtQ29udHJvbE5hbWU9XCJjYXNlTnVtYmVyXCIgaWQ9XCJ3aWR0aC0yMFwiIG5hbWU9XCJ3aWR0aC0yMFwiXG4gICAgICAgICAgICB0eXBlPVwidGV4dFwiPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBbbmdDbGFzc109XCJ7J2dvdnVrLWZvcm0tZ3JvdXAtLWVycm9yJzogISFjYXNlUmVhc29uRXJyb3J9XCIgY2xhc3M9XCJnb3Z1ay0hLW1hcmdpbi10b3AtM1wiPlxuICAgICAgICAgIDxoMyBjbGFzcz1cImdvdnVrLWhlYWRpbmctc1wiPldoeSBzaG91bGQgdGhlc2UgY2FzZXMgYmUgbGlua2VkPzwvaDM+XG4gICAgICAgICAgPGRpdiBpZD1cIndhc3RlLWhpbnRcIiBjbGFzcz1cImdvdnVrLWhpbnRcIj5cbiAgICAgICAgICAgIFNlbGVjdCBhbGwgdGhhdCBhcHBseS5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImdvdnVrLWVycm9yLW1lc3NhZ2VcIiAqbmdJZj1cImNhc2VSZWFzb25FcnJvclwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj5FcnJvcjo8L3NwYW4+IHt7Y2FzZVJlYXNvbkVycm9yfX1cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWNoZWNrYm94ZXNcIiBkYXRhLW1vZHVsZT1cImdvdnVrLWNoZWNrYm94ZXNcIiBmb3JtQXJyYXlOYW1lPVwicmVhc29uVHlwZVwiIGlkPVwiY2FzZVJlYXNvblwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWNoZWNrYm94ZXNfX2l0ZW1cIiAqbmdGb3I9XCJsZXQgcmVhc29uIG9mIGxpbmtDYXNlUmVhc29ucztpbmRleCBhcyBwb3NcIiBbZm9ybUdyb3VwTmFtZV09XCJwb3NcIj5cbiAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiZ292dWstY2hlY2tib3hlc19faW5wdXRcIiBpZD1cInt7cmVhc29uLmtleX19XCIgZm9ybUNvbnRyb2xOYW1lPVwic2VsZWN0ZWRcIiBuYW1lPVwicG9zXCJcbiAgICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIiBbdmFsdWVdPVwicmVhc29uLnZhbHVlX2VuXCIgKGNoYW5nZSk9XCJ0b2dnbGVMaW5rQ2FzZVJlYXNvbk90aGVyQ29tbWVudHMoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJnb3Z1ay1sYWJlbCBnb3Z1ay1jaGVja2JveGVzX19sYWJlbFwiIGZvcj1cInt7cmVhc29uLmtleX19XCI+e3tyZWFzb24udmFsdWVfZW59fTwvbGFiZWw+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgaWQ9XCJvdGhlci1kZXNjcmlwdGlvbi1jaGFyLWxpbWl0LWVycm9yXCIgW25nQ2xhc3NdPVwieydnb3Z1ay1mb3JtLWdyb3VwLS1lcnJvcic6ICEhY2FzZVJlYXNvbkNvbW1lbnRzRXJyb3J9XCIgY2xhc3M9XCJnb3Z1ay0hLW1hcmdpbi10b3AtM1wiICpuZ0lmPVwic2hvd0NvbW1lbnRzXCI+XG4gICAgICAgICAgPGgzIGNsYXNzPVwiZ292dWstaGVhZGluZy1zXCI+Q29tbWVudHM8L2gzPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstZXJyb3ItbWVzc2FnZVwiICpuZ0lmPVwiY2FzZVJlYXNvbkNvbW1lbnRzRXJyb3JcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstdmlzdWFsbHktaGlkZGVuXCI+RXJyb3I6PC9zcGFuPiB7e2Nhc2VSZWFzb25Db21tZW50c0Vycm9yfX1cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPHRleHRhcmVhIGNsYXNzPVwiZ292dWstdGV4dGFyZWEgZ292dWstaW5wdXQtLXdpZHRoLTMwXCIgaWQ9XCJvdGhlckRlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgIG5hbWU9XCJvdGhlckRlc2NyaXB0aW9uXCIgZm9ybUNvbnRyb2xOYW1lPVwib3RoZXJEZXNjcmlwdGlvblwiIHJvd3M9XCI1XCJcbiAgICAgICAgICAgIGFyaWEtZGVzY3JpYmVkYnk9XCJvdGhlci1kZXNjcmlwdGlvbi1oaW50IG90aGVyLWRlc2NyaXB0aW9uLWNoYXItbGltaXQtaW5mbyBvdGhlci1kZXNjcmlwdGlvbi1jaGFyLWxpbWl0LWVycm9yXCI+XG4gICAgICAgICAgPC90ZXh0YXJlYT5cbiAgICAgICAgICA8ZGl2IGlkPVwib3RoZXItZGVzY3JpcHRpb24tY2hhci1saW1pdC1pbmZvXCIgYXJpYS1saXZlPVwicG9saXRlXCIgY2xhc3M9XCJnb3Z1ay1oaW50IGdvdnVrLWNoYXJhY3Rlci1jb3VudF9fbWVzc2FnZVwiPlxuICAgICAgICAgICAgWW91IGNhbiBlbnRlciB1cCB0byAxMDAgY2hhcmFjdGVyc1xuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGJyPjxicj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay1lcnJvci1tZXNzYWdlXCIgKm5nSWY9XCJjYXNlU2VsZWN0aW9uRXJyb3JcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImdvdnVrLXZpc3VhbGx5LWhpZGRlblwiPkVycm9yOjwvc3Bhbj4ge3tjYXNlU2VsZWN0aW9uRXJyb3J9fVxuICAgICAgICA8L3NwYW4+XG4gICAgICAgIDxidXR0b24gaWQ9XCJwcm9wb3NlXCIgdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiZ292dWstYnV0dG9uIGdvdnVrLWJ1dHRvbi0tc2Vjb25kYXJ5XCIgZGF0YS1tb2R1bGU9XCJnb3Z1ay1idXR0b25cIlxuICAgICAgICAgIChjbGljayk9XCJzdWJtaXRDYXNlSW5mbygpXCI+UHJvcG9zZSBjYXNlIGxpbms8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGhyPlxuICAgICAgPGJyPjxicj5cbiAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1mb3JtLWdyb3VwXCIgaWQ9XCJjYXNlTnVtYmVyXCIgW25nQ2xhc3NdPVwieydnb3Z1ay1mb3JtLWdyb3VwLS1lcnJvcic6ICEhbm9TZWxlY3RlZENhc2VFcnJvcn1cIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay1lcnJvci1tZXNzYWdlXCIgKm5nSWY9XCJub1NlbGVjdGVkQ2FzZUVycm9yXCI+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj5FcnJvcjo8L3NwYW4+IHt7bm9TZWxlY3RlZENhc2VFcnJvcn19XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPHRhYmxlIGNsYXNzPVwiZ292dWstdGFibGVcIj5cbiAgICAgICAgICA8Y2FwdGlvbiBjbGFzcz1cImdvdnVrLXRhYmxlX19jYXB0aW9uIGdvdnVrLXRhYmxlX19jYXB0aW9uLS1tXCI+UHJvcG9zZWQgY2FzZSBsaW5rcyA8L2NhcHRpb24+XG4gICAgICAgICAgPHRoZWFkIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRcIj5cbiAgICAgICAgICAgIDx0ciBjbGFzcz1cImdvdnVrLXRhYmxlX19yb3dcIj5cbiAgICAgICAgICAgICAgPHRoIHNjb3BlPVwiY29sXCIgY2xhc3M9XCJnb3Z1ay10YWJsZV9faGVhZGVyXCIgd2lkdGg9XCIzMDBcIj5DYXNlIG5hbWUgYW5kIG51bWJlcjwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cImNvbFwiIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRlclwiIHdpZHRoPVwiMTUwXCI+Q2FzZSB0eXBlIDwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cImNvbFwiIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRlclwiIHdpZHRoPVwiMjAwXCI+U2VydmljZTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cImNvbFwiIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRlclwiIHdpZHRoPVwiMjAwXCI+U3RhdGU8L3RoPlxuICAgICAgICAgICAgICA8dGggc2NvcGU9XCJjb2xcIiBjbGFzcz1cImdvdnVrLXRhYmxlX19oZWFkZXJcIiB3aWR0aD1cIjQwMFwiPlJlYXNvbnMgZm9yIGNhc2UgbGluazwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cImNvbFwiIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRlclwiIHdpZHRoPVwiNTBcIj48L3RoPlxuICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICA8L3RoZWFkPlxuICAgICAgICAgIDx0Ym9keSBjbGFzcz1cImdvdnVrLXRhYmxlX19ib2R5XCI+XG4gICAgICAgICAgICA8dHIgY2xhc3M9XCJnb3Z1ay10YWJsZV9fcm93XCIgKm5nRm9yPVwibGV0IGNhc2Ugb2Ygc2VsZWN0ZWRDYXNlczsgbGV0IHBvcyA9IGluZGV4XCI+XG4gICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImdvdnVrLXRhYmxlX19jZWxsXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWZvcm0tZ3JvdXAtLWVycm9yXCJcbiAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsndGFibGUtZ3JvdXAtZXJyb3InOmNhc2VTZWxlY3Rpb25FcnJvciAmJiBjYXNlLmNhc2VSZWZlcmVuY2UgPT09IGxpbmtDYXNlRm9ybS52YWx1ZS5jYXNlTnVtYmVyfVwiPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxzcGFuPnt7Y2FzZS5jYXNlTmFtZX19IDxicj4ge3tjYXNlLmNhc2VSZWZlcmVuY2UgfCBjY2RDYXNlUmVmZXJlbmNlfX08L3NwYW4+XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImdvdnVrLXRhYmxlX19jZWxsXCIgW3RpdGxlXT1cImNhc2UuY2FzZVR5cGVEZXNjcmlwdGlvblwiPnt7Y2FzZS5jYXNlVHlwZX19PC90ZD5cbiAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiZ292dWstdGFibGVfX2NlbGxcIj57e2Nhc2UuY2FzZVNlcnZpY2V9fTwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImdvdnVrLXRhYmxlX19jZWxsXCIgW3RpdGxlXT1cImNhc2UuY2FzZVN0YXRlRGVzY3JpcHRpb25cIj57e2Nhc2UuY2FzZVN0YXRlfX08L3RkPlxuICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJnb3Z1ay10YWJsZV9fY2VsbFwiPjxzcGFuXG4gICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgcmVhc29uIG9mIGNhc2UucmVhc29uc1wiPnt7cmVhc29uIHwgY2NkTGlua0Nhc2VzUmVhc29uVmFsdWV9fTxicj48L3NwYW4+PC90ZD5cbiAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiZ292dWstdGFibGVfX2NlbGxcIj48YSBbYXR0ci5pZF09XCJjYXNlLmNhc2VSZWZlcmVuY2VcIiAoY2xpY2spPVwib25TZWxlY3RlZExpbmtlZENhc2VSZW1vdmUocG9zLCBjYXNlLmNhc2VSZWZlcmVuY2UpO1wiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImdvdnVrLWxpbmsgbm8tdmlzaXRlZC1zdGF0ZVwiPlJlbW92ZTwvYT48L3RkPlxuICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgIDx0ciBjbGFzcz1cImdvdnVrLXRhYmxlX19yb3dcIiAqbmdJZj1cIiFzZWxlY3RlZENhc2VzLmxlbmd0aFwiPlxuICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJnb3Z1ay10YWJsZV9fY2VsbFwiIGNvbHNwYW49XCI2XCI+XG4gICAgICAgICAgICAgICAgTm9uZVxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICA8L3RhYmxlPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZ292dWstYnV0dG9uLWdyb3VwXCI+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidXR0b24gYnV0dG9uLXByaW1hcnlcIiB0eXBlPVwiYnV0dG9uXCIgaWQ9XCJuZXh0LWJ1dHRvblwiIChjbGljayk9XCJvbk5leHQoKVwiPk5leHQ8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
530
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay1jYXNlcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvcGFsZXR0ZS9saW5rZWQtY2FzZXMvY29tcG9uZW50cy9saW5rLWNhc2VzL2xpbmstY2FzZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvbGlua2VkLWNhc2VzL2NvbXBvbmVudHMvbGluay1jYXNlcy9saW5rLWNhc2VzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQWEsV0FBVyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQy9FLE9BQU8sS0FBSyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHbEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBUTlFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxnQkFBZ0IsRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbkYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7Ozs7O0lDUnJELGdDQUEwRCxlQUFBO0lBQ3BCLHNCQUFNO0lBQUEsaUJBQU87SUFBQyxZQUNwRDtJQUFBLGlCQUFPOzs7SUFENkMsZUFDcEQ7SUFEb0QsdURBQ3BEOzs7SUFTQSxnQ0FB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RSwrQkFBd0Q7UUFBQSxzQ0FBcUI7UUFBQSxpQkFBSztRQUNsRiwwQkFBNEQ7UUFDOUQsaUJBQUssRUFBQTtRQUVQLGtDQUFpQztRQUMvQixzRUFjSztRQUNMLG9FQUlLO1FBQ1AsaUJBQVEsRUFBQSxFQUFBO1FBR1osZ0NBQWdDLGtCQUFBO1FBQ3VDLGdHQUFTLFlBQVEsSUFBQztRQUFDLHFCQUFJO1FBQUEsaUJBQVMsRUFBQSxFQUFBLEVBQUEsRUFBQTs7UUExRnpFLGVBQXdEO1FBQXhELGdHQUF3RDtRQUVsQyxlQUFrQjtRQUFsQix1Q0FBa0I7UUErQ3hCLGVBQThEO1FBQTlELCtFQUE4RDtRQUN2RSxlQUF5QjtRQUF6Qiw4Q0FBeUI7UUFnQlYsZ0JBQWtCO1FBQWxCLDJDQUFrQjtRQWVsQyxlQUEyQjtRQUEzQixnREFBMkI7O3VGRDdEeEQsa0JBQWtCO2NBTDlCLFNBQVM7MkJBQ0UsZ0JBQWdCO3dKQU1uQix1QkFBdUI7a0JBRDdCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1BcnJheSwgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCAqIGFzIG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHsgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ2FzZVZpZXcsIEVycm9yTWVzc2FnZSwgSHR0cEVycm9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IExvdlJlZkRhdGFNb2RlbCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3NlcnZpY2VzL2NvbW1vbi1kYXRhLXNlcnZpY2UvY29tbW9uLWRhdGEtc2VydmljZSc7XG5pbXBvcnQgeyBDYXNlc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9jYXNlLWVkaXRvci9zZXJ2aWNlcy9jYXNlcy5zZXJ2aWNlJztcbmltcG9ydCB7IExpbmtlZENhc2VzU3RhdGUgfSBmcm9tICcuLi8uLi9kb21haW4nO1xuaW1wb3J0IHtcbiAgQ2FzZUxpbmssXG4gIENDRENhc2VMaW5rVHlwZSxcbiAgTGlua0Nhc2VSZWFzb24sXG4gIExpbmtSZWFzb25cbn0gZnJvbSAnLi4vLi4vZG9tYWluL2xpbmtlZC1jYXNlcy5tb2RlbCc7XG5pbXBvcnQgeyBMaW5rZWRDYXNlc0Vycm9yTWVzc2FnZXMsIExpbmtlZENhc2VzUGFnZXMsIFBhdHRlcm5zIH0gZnJvbSAnLi4vLi4vZW51bXMnO1xuaW1wb3J0IHsgTGlua2VkQ2FzZXNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbGlua2VkLWNhc2VzLnNlcnZpY2UnO1xuaW1wb3J0IHsgVmFsaWRhdG9yc1V0aWxzIH0gZnJvbSAnLi4vLi4vdXRpbHMvdmFsaWRhdG9ycy51dGlscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NjZC1saW5rLWNhc2VzJyxcbiAgc3R5bGVVcmxzOiBbJy4vbGluay1jYXNlcy5jb21wb25lbnQuc2NzcyddLFxuICB0ZW1wbGF0ZVVybDogJy4vbGluay1jYXNlcy5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIExpbmtDYXNlc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgbGlua2VkQ2FzZXNTdGF0ZUVtaXR0ZXI6IEV2ZW50RW1pdHRlcjxMaW5rZWRDYXNlc1N0YXRlPiA9IG5ldyBFdmVudEVtaXR0ZXI8TGlua2VkQ2FzZXNTdGF0ZT4oKTtcblxuICBwdWJsaWMgZXJyb3JNZXNzYWdlczogRXJyb3JNZXNzYWdlW10gPSBbXTtcbiAgcHVibGljIGxpbmtDYXNlRm9ybTogRm9ybUdyb3VwO1xuICBwdWJsaWMgc2VsZWN0ZWRDYXNlczogQ2FzZUxpbmtbXSA9IFtdO1xuICBwdWJsaWMgY2FzZU51bWJlckVycm9yOiBzdHJpbmc7XG4gIHB1YmxpYyBjYXNlUmVhc29uRXJyb3I6IHN0cmluZztcbiAgcHVibGljIGNhc2VSZWFzb25Db21tZW50c0Vycm9yOiBzdHJpbmc7XG4gIHB1YmxpYyBjYXNlU2VsZWN0aW9uRXJyb3I6IHN0cmluZztcbiAgcHVibGljIG5vU2VsZWN0ZWRDYXNlRXJyb3I6IHN0cmluZztcbiAgcHVibGljIGNhc2VJZDogc3RyaW5nO1xuICBwdWJsaWMgY2FzZU5hbWU6IHN0cmluZztcbiAgcHVibGljIGxpbmtDYXNlUmVhc29uczogTG92UmVmRGF0YU1vZGVsW107XG4gIHB1YmxpYyBzaG93Q29tbWVudHMgPSBmYWxzZTtcbiAgcHJpdmF0ZSByZWFkb25seSBJU09fRk9STUFUID0gJ1lZWVktTU0tRERUSEg6bW06c3MuU1NTJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNhc2VzU2VydmljZTogQ2FzZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZmI6IEZvcm1CdWlsZGVyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdmFsaWRhdG9yc1V0aWxzOiBWYWxpZGF0b3JzVXRpbHMsXG4gICAgcHJpdmF0ZSByZWFkb25seSBsaW5rZWRDYXNlc1NlcnZpY2U6IExpbmtlZENhc2VzU2VydmljZSkgeyB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY2FzZUlkID0gdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuY2FzZUlkO1xuICAgIHRoaXMuY2FzZU5hbWUgPSB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5jYXNlTmFtZTtcbiAgICB0aGlzLmxpbmtDYXNlUmVhc29ucyA9IHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmxpbmtDYXNlUmVhc29ucztcbiAgICB0aGlzLmluaXRGb3JtKCk7XG4gICAgaWYgKHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmVkaXRNb2RlKSB7XG4gICAgICAvLyB0aGlzIG1heSBoYXZlIGluY2x1ZGVzIHRoZSBjdXJyZW50bHkgYWRkZWQgb25lIGJ1dCB5ZXQgdG8gYmUgc3VibWl0dGVkLlxuICAgICAgdGhpcy5zZWxlY3RlZENhc2VzID0gdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UubGlua2VkQ2FzZXM7XG4gICAgfSBlbHNlIGlmICh0aGlzLmxpbmtlZENhc2VzU2VydmljZS5pbml0aWFsQ2FzZUxpbmtzLmxlbmd0aCAhPT0gdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuY2FzZUZpZWxkVmFsdWUubGVuZ3RoKSB7XG4gICAgICB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5saW5rZWRDYXNlcyA9IHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmluaXRpYWxDYXNlTGlua3M7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGluaXRGb3JtKCk6IHZvaWQge1xuICAgIHRoaXMubGlua0Nhc2VGb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICBjYXNlTnVtYmVyOiBbJycsIFtWYWxpZGF0b3JzLm1pbkxlbmd0aCgxNiksIHRoaXMudmFsaWRhdG9yc1V0aWxzLnJlZ2V4UGF0dGVybihQYXR0ZXJucy5DQVNFX1JFRildXSxcbiAgICAgIHJlYXNvblR5cGU6IHRoaXMuZ2V0UmVhc29uVHlwZUZvcm1BcnJheSxcbiAgICAgIG90aGVyRGVzY3JpcHRpb246IFsnJywgW1ZhbGlkYXRvcnMubWF4TGVuZ3RoKDEwMCldXVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldCBnZXRSZWFzb25UeXBlRm9ybUFycmF5KCk6IEZvcm1BcnJheSB7XG4gICAgcmV0dXJuIHRoaXMuZmIuYXJyYXkoXG4gICAgICB0aGlzLmxpbmtDYXNlUmVhc29ucy5tYXAoKHZhbCkgPT5cbiAgICAgICAgdGhpcy5mYi5ncm91cCh7XG4gICAgICAgICAga2V5OiBbdmFsLmtleV0sXG4gICAgICAgICAgdmFsdWVfZW46IFt2YWwudmFsdWVfZW5dLFxuICAgICAgICAgIHZhbHVlX2N5OiBbdmFsLnZhbHVlX2N5XSxcbiAgICAgICAgICBoaW50X3RleHRfZW46IFt2YWwuaGludF90ZXh0X2VuXSxcbiAgICAgICAgICBoaW50X3RleHRfY3k6IFt2YWwuaGludF90ZXh0X2N5XSxcbiAgICAgICAgICBsb3Zfb3JkZXI6IFt2YWwubG92X29yZGVyXSxcbiAgICAgICAgICBwYXJlbnRfa2V5OiBbdmFsLnBhcmVudF9rZXldLFxuICAgICAgICAgIHNlbGVjdGVkOiBbISF2YWwuc2VsZWN0ZWRdLFxuICAgICAgICB9KVxuICAgICAgKSxcbiAgICAgIHRoaXMudmFsaWRhdG9yc1V0aWxzLmZvcm1BcnJheVNlbGVjdGVkVmFsaWRhdG9yKClcbiAgICApO1xuICB9XG5cbiAgcHVibGljIHRvZ2dsZUxpbmtDYXNlUmVhc29uT3RoZXJDb21tZW50cyhldmVudDogYW55KTogdm9pZCB7XG4gICAgdGhpcy5saW5rQ2FzZVJlYXNvbnMuZmluZChyZWFzb24gPT4gcmVhc29uLnZhbHVlX2VuID09PSBldmVudC50YXJnZXQudmFsdWUpLnNlbGVjdGVkID0gZXZlbnQudGFyZ2V0LmNoZWNrZWQ7XG4gICAgdGhpcy5zaG93Q29tbWVudHMgPSB0aGlzLmxpbmtDYXNlUmVhc29ucy5maW5kKHJlYXNvbiA9PiByZWFzb24udmFsdWVfZW4gPT09ICdPdGhlcicpLnNlbGVjdGVkO1xuICB9XG5cbiAgcHVibGljIHN1Ym1pdENhc2VJbmZvKCk6IHZvaWQge1xuICAgIHRoaXMuZXJyb3JNZXNzYWdlcyA9IFtdO1xuICAgIHRoaXMuY2FzZVJlYXNvbkVycm9yID0gbnVsbDtcbiAgICB0aGlzLmNhc2VSZWFzb25Db21tZW50c0Vycm9yID0gbnVsbDtcbiAgICB0aGlzLmNhc2VOdW1iZXJFcnJvciA9IG51bGw7XG4gICAgdGhpcy5jYXNlU2VsZWN0aW9uRXJyb3IgPSBudWxsO1xuICAgIHRoaXMubm9TZWxlY3RlZENhc2VFcnJvciA9IG51bGw7XG4gICAgaWYgKFxuICAgICAgdGhpcy5saW5rQ2FzZUZvcm0udmFsaWQgJiZcbiAgICAgICF0aGlzLmlzQ2FzZVNlbGVjdGVkKHRoaXMuc2VsZWN0ZWRDYXNlcykgJiZcbiAgICAgICF0aGlzLmlzQ2FzZVNlbGVjdGVkKHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmxpbmtlZENhc2VzKSAmJlxuICAgICAgIXRoaXMuaXNDYXNlU2VsZWN0ZWRTYW1lQXNDdXJyZW50Q2FzZSgpICYmXG4gICAgICAhdGhpcy5pc090aGVyT3B0aW9uU2VsZWN0ZWRCdXRPdGhlckRlc2NyaXB0aW9uTm90RW50ZXJlZCgpXG4gICAgKSB7XG4gICAgICB0aGlzLmdldENhc2VJbmZvKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2hvd0Vycm9ySW5mbygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBpc0Nhc2VTZWxlY3RlZChsaW5rZWRDYXNlczogQ2FzZUxpbmtbXSk6IGJvb2xlYW4ge1xuICAgIGlmIChsaW5rZWRDYXNlcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgY29uc3QgY2FzZU51bWJlciA9IHRoaXMubGlua0Nhc2VGb3JtLnZhbHVlLmNhc2VOdW1iZXI7XG4gICAgcmV0dXJuICEhbGlua2VkQ2FzZXMuZmluZChcbiAgICAgIChjYXNlTGluaykgPT4gY2FzZUxpbmsuY2FzZVJlZmVyZW5jZS5zcGxpdCgnLScpLmpvaW4oJycpID09PSBjYXNlTnVtYmVyLnNwbGl0KCctJykuam9pbignJylcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBpc0Nhc2VTZWxlY3RlZFNhbWVBc0N1cnJlbnRDYXNlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmxpbmtDYXNlRm9ybS52YWx1ZS5jYXNlTnVtYmVyLnNwbGl0KCctJykuam9pbignJykgPT09IHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmNhc2VJZC5zcGxpdCgnLScpLmpvaW4oJycpO1xuICB9XG5cbiAgcHJpdmF0ZSBpc090aGVyT3B0aW9uU2VsZWN0ZWRCdXRPdGhlckRlc2NyaXB0aW9uTm90RW50ZXJlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zaG93Q29tbWVudHMgJiYgdGhpcy5saW5rQ2FzZUZvcm0udmFsdWUub3RoZXJEZXNjcmlwdGlvbi50cmltKCkubGVuZ3RoID09PSAwO1xuICB9XG5cbiAgcHVibGljIHNob3dFcnJvckluZm8oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubGlua0Nhc2VGb3JtLmNvbnRyb2xzLmNhc2VOdW1iZXIuaW52YWxpZCkge1xuICAgICAgdGhpcy5jYXNlTnVtYmVyRXJyb3IgPSBMaW5rZWRDYXNlc0Vycm9yTWVzc2FnZXMuQ2FzZU51bWJlckVycm9yO1xuICAgICAgdGhpcy5lcnJvck1lc3NhZ2VzLnB1c2goe1xuICAgICAgICB0aXRsZTogJ2R1bW15LWNhc2UtbnVtYmVyJyxcbiAgICAgICAgZGVzY3JpcHRpb246IExpbmtlZENhc2VzRXJyb3JNZXNzYWdlcy5DYXNlTnVtYmVyRXJyb3IsXG4gICAgICAgIGZpZWxkSWQ6ICdjYXNlTnVtYmVyJyxcbiAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAodGhpcy5saW5rQ2FzZUZvcm0uY29udHJvbHMucmVhc29uVHlwZS5pbnZhbGlkKSB7XG4gICAgICB0aGlzLmNhc2VSZWFzb25FcnJvciA9IExpbmtlZENhc2VzRXJyb3JNZXNzYWdlcy5SZWFzb25TZWxlY3Rpb25FcnJvcjtcbiAgICAgIHRoaXMuZXJyb3JNZXNzYWdlcy5wdXNoKHtcbiAgICAgICAgdGl0bGU6ICdkdW1teS1jYXNlLXJlYXNvbicsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBMaW5rZWRDYXNlc0Vycm9yTWVzc2FnZXMuUmVhc29uU2VsZWN0aW9uRXJyb3IsXG4gICAgICAgIGZpZWxkSWQ6ICdjYXNlUmVhc29uJyxcbiAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAodGhpcy5saW5rQ2FzZUZvcm0uY29udHJvbHMucmVhc29uVHlwZS52YWxpZFxuICAgICAgJiYgdGhpcy5saW5rQ2FzZVJlYXNvbnMuZmluZChyZWFzb24gPT4gcmVhc29uLnZhbHVlX2VuID09PSAnT3RoZXInKS5zZWxlY3RlZCkge1xuICAgICAgaWYgKHRoaXMubGlua0Nhc2VGb3JtLmNvbnRyb2xzLm90aGVyRGVzY3JpcHRpb24udmFsdWUudHJpbSgpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICB0aGlzLmNhc2VSZWFzb25Db21tZW50c0Vycm9yID0gTGlua2VkQ2FzZXNFcnJvck1lc3NhZ2VzLm90aGVyRGVzY3JpcHRpb25FcnJvcjtcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2VzLnB1c2goe1xuICAgICAgICAgIHRpdGxlOiAnZHVtbXktY2FzZS1yZWFzb24tY29tbWVudHMnLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiBMaW5rZWRDYXNlc0Vycm9yTWVzc2FnZXMub3RoZXJEZXNjcmlwdGlvbkVycm9yLFxuICAgICAgICAgIGZpZWxkSWQ6ICdvdGhlckRlc2NyaXB0aW9uJyxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5saW5rQ2FzZUZvcm0uY29udHJvbHMub3RoZXJEZXNjcmlwdGlvbi52YWx1ZS50cmltKCkubGVuZ3RoID4gMTAwKSB7XG4gICAgICAgIHRoaXMuY2FzZVJlYXNvbkNvbW1lbnRzRXJyb3IgPSBMaW5rZWRDYXNlc0Vycm9yTWVzc2FnZXMub3RoZXJEZXNjcmlwdGlvbk1heExlbmd0aEVycm9yO1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZXMucHVzaCh7XG4gICAgICAgICAgdGl0bGU6ICdkdW1teS1jYXNlLXJlYXNvbi1jb21tZW50cycsXG4gICAgICAgICAgZGVzY3JpcHRpb246IExpbmtlZENhc2VzRXJyb3JNZXNzYWdlcy5vdGhlckRlc2NyaXB0aW9uTWF4TGVuZ3RoRXJyb3IsXG4gICAgICAgICAgZmllbGRJZDogJ290aGVyRGVzY3JpcHRpb24nLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKHRoaXMuaXNDYXNlU2VsZWN0ZWQodGhpcy5zZWxlY3RlZENhc2VzKSkge1xuICAgICAgdGhpcy5jYXNlU2VsZWN0aW9uRXJyb3IgPSBMaW5rZWRDYXNlc0Vycm9yTWVzc2FnZXMuQ2FzZVByb3Bvc2VkRXJyb3I7XG4gICAgICB0aGlzLmVycm9yTWVzc2FnZXMucHVzaCh7XG4gICAgICAgIHRpdGxlOiAnZHVtbXktY2FzZS1udW1iZXInLFxuICAgICAgICBkZXNjcmlwdGlvbjogTGlua2VkQ2FzZXNFcnJvck1lc3NhZ2VzLkNhc2VQcm9wb3NlZEVycm9yLFxuICAgICAgICBmaWVsZElkOiAnY2FzZU51bWJlcicsXG4gICAgICB9KTtcbiAgICB9XG4gICAgaWYgKHRoaXMuaXNDYXNlU2VsZWN0ZWQodGhpcy5saW5rZWRDYXNlc1NlcnZpY2UubGlua2VkQ2FzZXMpKSB7XG4gICAgICB0aGlzLmNhc2VTZWxlY3Rpb25FcnJvciA9IExpbmtlZENhc2VzRXJyb3JNZXNzYWdlcy5DYXNlc0xpbmtlZEVycm9yO1xuICAgICAgdGhpcy5lcnJvck1lc3NhZ2VzLnB1c2goe1xuICAgICAgICB0aXRsZTogJ2R1bW15LWNhc2UtbnVtYmVyJyxcbiAgICAgICAgZGVzY3JpcHRpb246IExpbmtlZENhc2VzRXJyb3JNZXNzYWdlcy5DYXNlc0xpbmtlZEVycm9yLFxuICAgICAgICBmaWVsZElkOiAnY2FzZU51bWJlcicsXG4gICAgICB9KTtcbiAgICB9XG4gICAgaWYgKHRoaXMubGlua0Nhc2VGb3JtLnZhbHVlLmNhc2VOdW1iZXIuc3BsaXQoJy0nKS5qb2luKCcnKSA9PT0gdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuY2FzZUlkLnNwbGl0KCctJykuam9pbignJykpIHtcbiAgICAgIHRoaXMuZXJyb3JNZXNzYWdlcy5wdXNoKHtcbiAgICAgICAgdGl0bGU6ICdkdW1teS1jYXNlLW51bWJlcicsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBMaW5rZWRDYXNlc0Vycm9yTWVzc2FnZXMuUHJvcG9zZWRDYXNlV2l0aEluLFxuICAgICAgICBmaWVsZElkOiAnY2FzZU51bWJlcicsXG4gICAgICB9KTtcbiAgICB9XG4gICAgd2luZG93LnNjcm9sbFRvKDAsIDApO1xuICAgIHRoaXMuZW1pdExpbmtlZENhc2VzU3RhdGUoZmFsc2UpO1xuICB9XG5cbiAgcHVibGljIGdldENhc2VJbmZvKCk6IHZvaWQge1xuICAgIGNvbnN0IGNhc2VOdW1iZXJEYXRhID0gdGhpcy5saW5rQ2FzZUZvcm0udmFsdWUuY2FzZU51bWJlci5yZXBsYWNlKC9bLSBdL2csICcnKTtcbiAgICB0aGlzLmNhc2VzU2VydmljZVxuICAgICAgLmdldENhc2VWaWV3VjIoY2FzZU51bWJlckRhdGEpXG4gICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAoY2FzZVZpZXc6IENhc2VWaWV3KSA9PiB7XG4gICAgICAgICAgdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuY2FzZURldGFpbHMgPSBjYXNlVmlldztcbiAgICAgICAgICBjb25zdCBjYXNlTGluazogQ2FzZUxpbmsgPSB7XG4gICAgICAgICAgICBjYXNlUmVmZXJlbmNlOiBjYXNlVmlldy5jYXNlX2lkLFxuICAgICAgICAgICAgcmVhc29uczogdGhpcy5nZXRTZWxlY3RlZENhc2VSZWFzb25zKCksXG4gICAgICAgICAgICBjcmVhdGVkRGF0ZVRpbWU6IG1vbWVudChuZXcgRGF0ZSgpKS5mb3JtYXQodGhpcy5JU09fRk9STUFUKSxcbiAgICAgICAgICAgIGNhc2VUeXBlOiBjYXNlVmlldy5jYXNlX3R5cGUubmFtZSB8fCAnJyxcbiAgICAgICAgICAgIGNhc2VUeXBlRGVzY3JpcHRpb246IGNhc2VWaWV3LmNhc2VfdHlwZS5kZXNjcmlwdGlvbiB8fCAnJyxcbiAgICAgICAgICAgIGNhc2VTdGF0ZTogY2FzZVZpZXcuc3RhdGUubmFtZSB8fCAnJyxcbiAgICAgICAgICAgIGNhc2VTdGF0ZURlc2NyaXB0aW9uOiBjYXNlVmlldy5zdGF0ZS5kZXNjcmlwdGlvbiB8fCAnJyxcbiAgICAgICAgICAgIGNhc2VTZXJ2aWNlOiBjYXNlVmlldy5jYXNlX3R5cGUgJiYgY2FzZVZpZXcuY2FzZV90eXBlLmp1cmlzZGljdGlvbiAmJiBjYXNlVmlldy5jYXNlX3R5cGUuanVyaXNkaWN0aW9uLmRlc2NyaXB0aW9uIHx8ICcnLFxuICAgICAgICAgICAgY2FzZU5hbWU6IHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmdldENhc2VOYW1lKGNhc2VWaWV3KSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGNvbnN0IGNjZEFwaUNhc2VMaW5rRGF0YTogQ0NEQ2FzZUxpbmtUeXBlID0ge1xuICAgICAgICAgICAgQ2FzZVJlZmVyZW5jZTogY2FzZVZpZXcuY2FzZV9pZCxcbiAgICAgICAgICAgIENhc2VUeXBlOiBjYXNlVmlldy5jYXNlX3R5cGUuaWQsXG4gICAgICAgICAgICBDcmVhdGVkRGF0ZVRpbWU6IG1vbWVudChuZXcgRGF0ZSgpKS5mb3JtYXQodGhpcy5JU09fRk9STUFUKSxcbiAgICAgICAgICAgIFJlYXNvbkZvckxpbms6IHRoaXMuZ2V0U2VsZWN0ZWRDQ0RUeXBlQ2FzZVJlYXNvbigpXG4gICAgICAgICAgfTtcbiAgICAgICAgICBpZiAoIXRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmNhc2VGaWVsZFZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5jYXNlRmllbGRWYWx1ZSA9IFtdO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5jYXNlRmllbGRWYWx1ZS5wdXNoKHsgaWQ6IGNhc2VWaWV3LmNhc2VfaWQudG9TdHJpbmcoKSwgdmFsdWU6IGNjZEFwaUNhc2VMaW5rRGF0YSB9KTtcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkQ2FzZXMucHVzaChjYXNlTGluayk7XG4gICAgICAgICAgdGhpcy5saW5rQ2FzZVJlYXNvbnMuZm9yRWFjaChyZWFzb24gPT4gcmVhc29uLnNlbGVjdGVkID0gZmFsc2UpO1xuICAgICAgICAgIHRoaXMuaW5pdEZvcm0oKTtcbiAgICAgICAgICB0aGlzLmVtaXRMaW5rZWRDYXNlc1N0YXRlKGZhbHNlKTtcbiAgICAgICAgfSxcbiAgICAgICAgKGVycm9yOiBIdHRwRXJyb3IpID0+IHtcbiAgICAgICAgICB0aGlzLmNhc2VOdW1iZXJFcnJvciA9IExpbmtlZENhc2VzRXJyb3JNZXNzYWdlcy5DYXNlQ2hlY2tBZ2FpbkVycm9yO1xuICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlcy5wdXNoKHtcbiAgICAgICAgICAgIHRpdGxlOiAnZHVtbXktY2FzZS1udW1iZXInLFxuICAgICAgICAgICAgZGVzY3JpcHRpb246IExpbmtlZENhc2VzRXJyb3JNZXNzYWdlcy5DYXNlQ2hlY2tBZ2FpbkVycm9yLFxuICAgICAgICAgICAgZmllbGRJZDogJ2Nhc2VOdW1iZXInLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHRoaXMuZW1pdExpbmtlZENhc2VzU3RhdGUoZmFsc2UpO1xuICAgICAgICAgIHdpbmRvdy5zY3JvbGxUbygwLCAwKTtcbiAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihlcnJvcik7XG4gICAgICAgIH1cbiAgICAgICk7XG4gIH1cblxuICAvLyBSZXR1cm4gbGlua2VkIGNhc2VzIHN0YXRlIGFuZCBlcnJvciBtZXNzYWdlcyB0byB0aGUgcGFyZW50XG4gIHB1YmxpYyBlbWl0TGlua2VkQ2FzZXNTdGF0ZShpc05hdmlnYXRlVG9OZXh0UGFnZTogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMubGlua2VkQ2FzZXNTdGF0ZUVtaXR0ZXIuZW1pdCh7XG4gICAgICBjdXJyZW50TGlua2VkQ2FzZXNQYWdlOiBMaW5rZWRDYXNlc1BhZ2VzLkxJTktfQ0FTRSxcbiAgICAgIGVycm9yTWVzc2FnZXM6IHRoaXMuZXJyb3JNZXNzYWdlcyxcbiAgICAgIG5hdmlnYXRlVG9OZXh0UGFnZTogaXNOYXZpZ2F0ZVRvTmV4dFBhZ2UsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0U2VsZWN0ZWRDYXNlUmVhc29ucygpOiBMaW5rUmVhc29uW10ge1xuICAgIGNvbnN0IHNlbGVjdGVkUmVhc29ucyA9IFtdO1xuICAgIHRoaXMubGlua0Nhc2VGb3JtLmNvbnRyb2xzLnJlYXNvblR5cGUudmFsdWUuZm9yRWFjaChcbiAgICAgIChzZWxlY3RlZFJlYXNvbjogTGlua0Nhc2VSZWFzb24pID0+IHtcbiAgICAgICAgaWYgKHNlbGVjdGVkUmVhc29uLnNlbGVjdGVkKSB7XG4gICAgICAgICAgc2VsZWN0ZWRSZWFzb25zLnB1c2goe1xuICAgICAgICAgICAgUmVhc29uOiBzZWxlY3RlZFJlYXNvbi5rZXksXG4gICAgICAgICAgICBPdGhlckRlc2NyaXB0aW9uOiBzZWxlY3RlZFJlYXNvbi52YWx1ZV9lbiA9PT0gJ090aGVyJ1xuICAgICAgICAgICAgICA/IHRoaXMubGlua0Nhc2VGb3JtLmNvbnRyb2xzLm90aGVyRGVzY3JpcHRpb24udmFsdWVcbiAgICAgICAgICAgICAgOiAnJ1xuICAgICAgICAgIH0gYXMgTGlua1JlYXNvbik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICApO1xuICAgIHJldHVybiBzZWxlY3RlZFJlYXNvbnM7XG4gIH1cblxuICBwdWJsaWMgZ2V0U2VsZWN0ZWRDQ0RUeXBlQ2FzZVJlYXNvbigpOiBMaW5rUmVhc29uW10ge1xuICAgIGNvbnN0IHNlbGVjdGVkUmVhc29ucyA9IFtdO1xuICAgIHRoaXMubGlua0Nhc2VGb3JtLmNvbnRyb2xzLnJlYXNvblR5cGUudmFsdWUuZm9yRWFjaChcbiAgICAgIChzZWxlY3RlZFJlYXNvbjogTGlua0Nhc2VSZWFzb24pID0+IHtcbiAgICAgICAgaWYgKHNlbGVjdGVkUmVhc29uLnNlbGVjdGVkKSB7XG4gICAgICAgICAgc2VsZWN0ZWRSZWFzb25zLnB1c2goe1xuICAgICAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICAgICAgUmVhc29uOiBzZWxlY3RlZFJlYXNvbi5rZXksXG4gICAgICAgICAgICAgIE90aGVyRGVzY3JpcHRpb246IHNlbGVjdGVkUmVhc29uLnZhbHVlX2VuID09PSAnT3RoZXInXG4gICAgICAgICAgICAgICAgPyB0aGlzLmxpbmtDYXNlRm9ybS5jb250cm9scy5vdGhlckRlc2NyaXB0aW9uLnZhbHVlXG4gICAgICAgICAgICAgICAgOiAnJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgKTtcbiAgICByZXR1cm4gc2VsZWN0ZWRSZWFzb25zO1xuICB9XG5cbiAgcHVibGljIG9uU2VsZWN0ZWRMaW5rZWRDYXNlUmVtb3ZlKHBvcywgc2VsZWN0ZWRDYXNlUmVmZXJlbmNlKTogdm9pZCB7XG4gICAgY29uc3QgY2FzZUZpZWxkVmFsdWUgPSB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5jYXNlRmllbGRWYWx1ZSB8fCBbXTtcbiAgICBjb25zdCB1cGRhdGVkSXRlbXMgPSBjYXNlRmllbGRWYWx1ZS5maWx0ZXIoaXRlbSA9PiBpdGVtLnZhbHVlICYmIGl0ZW0udmFsdWUuQ2FzZVJlZmVyZW5jZSAhPT0gc2VsZWN0ZWRDYXNlUmVmZXJlbmNlKTtcbiAgICBpZiAodXBkYXRlZEl0ZW1zKSB7XG4gICAgICB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5jYXNlRmllbGRWYWx1ZSA9IHVwZGF0ZWRJdGVtcztcbiAgICB9XG4gICAgdGhpcy5zZWxlY3RlZENhc2VzLnNwbGljZShwb3MsIDEpO1xuICB9XG5cbiAgcHVibGljIG9uTmV4dCgpOiB2b2lkIHtcbiAgICB0aGlzLmVycm9yTWVzc2FnZXMgPSBbXTtcbiAgICB0aGlzLmNhc2VSZWFzb25FcnJvciA9IG51bGw7XG4gICAgdGhpcy5jYXNlTnVtYmVyRXJyb3IgPSBudWxsO1xuICAgIHRoaXMuY2FzZVNlbGVjdGlvbkVycm9yID0gbnVsbDtcbiAgICB0aGlzLm5vU2VsZWN0ZWRDYXNlRXJyb3IgPSBudWxsO1xuICAgIGxldCBuYXZpZ2F0ZVRvTmV4dFBhZ2UgPSB0cnVlO1xuICAgIGlmICh0aGlzLnNlbGVjdGVkQ2FzZXMubGVuZ3RoKSB7XG4gICAgICB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5saW5rZWRDYXNlcyA9IHRoaXMuc2VsZWN0ZWRDYXNlcztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5ub1NlbGVjdGVkQ2FzZUVycm9yID0gTGlua2VkQ2FzZXNFcnJvck1lc3NhZ2VzLkNhc2VTZWxlY3Rpb25FcnJvcjtcbiAgICAgIHRoaXMuZXJyb3JNZXNzYWdlcy5wdXNoKHtcbiAgICAgICAgdGl0bGU6ICdkdW1teS1jYXNlLXNlbGVjdGlvbicsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBMaW5rZWRDYXNlc0Vycm9yTWVzc2FnZXMuQ2FzZVNlbGVjdGlvbkVycm9yLFxuICAgICAgICBmaWVsZElkOiAnY2FzZVJlYXNvbicsXG4gICAgICB9KTtcbiAgICAgIG5hdmlnYXRlVG9OZXh0UGFnZSA9IGZhbHNlO1xuICAgIH1cbiAgICB0aGlzLmVtaXRMaW5rZWRDYXNlc1N0YXRlKG5hdmlnYXRlVG9OZXh0UGFnZSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJnb3Z1ay1ncmlkLXJvd1wiPlxuICA8ZGl2IGNsYXNzPVwiZ292dWstZ3JpZC1jb2x1bW4tZnVsbFwiPlxuICAgIDxkaXY+XG4gICAgICA8c3BhbiBjbGFzcz1cImdvdnVrLWNhcHRpb24tbFwiPkxpbmsgY2FzZXMgdG8ge3tjYXNlTmFtZX19IHt7Y2FzZUlkIHwgY2NkQ2FzZVJlZmVyZW5jZX19PC9zcGFuPlxuICAgICAgPGgxIGNsYXNzPVwiZ292dWstaGVhZGluZy14bFwiPlNlbGVjdCBhJm5ic3A7Y2FzZSB5b3Ugd2FudCB0byBsaW5rIHRvIHRoaXMgY2FzZTwvaDE+XG4gICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiIFtmb3JtR3JvdXBdPVwibGlua0Nhc2VGb3JtXCIgKm5nSWY9XCJsaW5rQ2FzZUZvcm1cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWZvcm0tZ3JvdXBcIiBpZD1cImNhc2VOdW1iZXJcIiBbbmdDbGFzc109XCJ7J2dvdnVrLWZvcm0tZ3JvdXAtLWVycm9yJzogISFjYXNlTnVtYmVyRXJyb3J9XCI+XG4gICAgICAgICAgPGgzIGNsYXNzPVwiZ292dWstaGVhZGluZy1zXCI+RW50ZXIgY2FzZSByZWZlcmVuY2U8L2gzPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstZXJyb3ItbWVzc2FnZVwiICpuZ0lmPVwiY2FzZU51bWJlckVycm9yXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImdvdnVrLXZpc3VhbGx5LWhpZGRlblwiPkVycm9yOjwvc3Bhbj4ge3tjYXNlTnVtYmVyRXJyb3J9fVxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJnb3Z1ay1pbnB1dCBnb3Z1ay1pbnB1dC0td2lkdGgtMjBcIiBmb3JtQ29udHJvbE5hbWU9XCJjYXNlTnVtYmVyXCIgaWQ9XCJ3aWR0aC0yMFwiIG5hbWU9XCJ3aWR0aC0yMFwiXG4gICAgICAgICAgICB0eXBlPVwidGV4dFwiPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBbbmdDbGFzc109XCJ7J2dvdnVrLWZvcm0tZ3JvdXAtLWVycm9yJzogISFjYXNlUmVhc29uRXJyb3J9XCIgY2xhc3M9XCJnb3Z1ay0hLW1hcmdpbi10b3AtM1wiPlxuICAgICAgICAgIDxoMyBjbGFzcz1cImdvdnVrLWhlYWRpbmctc1wiPldoeSBzaG91bGQgdGhlc2UgY2FzZXMgYmUgbGlua2VkPzwvaDM+XG4gICAgICAgICAgPGRpdiBpZD1cIndhc3RlLWhpbnRcIiBjbGFzcz1cImdvdnVrLWhpbnRcIj5cbiAgICAgICAgICAgIFNlbGVjdCBhbGwgdGhhdCBhcHBseS5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImdvdnVrLWVycm9yLW1lc3NhZ2VcIiAqbmdJZj1cImNhc2VSZWFzb25FcnJvclwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj5FcnJvcjo8L3NwYW4+IHt7Y2FzZVJlYXNvbkVycm9yfX1cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWNoZWNrYm94ZXNcIiBkYXRhLW1vZHVsZT1cImdvdnVrLWNoZWNrYm94ZXNcIiBmb3JtQXJyYXlOYW1lPVwicmVhc29uVHlwZVwiIGlkPVwiY2FzZVJlYXNvblwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWNoZWNrYm94ZXNfX2l0ZW1cIiAqbmdGb3I9XCJsZXQgcmVhc29uIG9mIGxpbmtDYXNlUmVhc29ucztpbmRleCBhcyBwb3NcIiBbZm9ybUdyb3VwTmFtZV09XCJwb3NcIj5cbiAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiZ292dWstY2hlY2tib3hlc19faW5wdXRcIiBpZD1cInt7cmVhc29uLmtleX19XCIgZm9ybUNvbnRyb2xOYW1lPVwic2VsZWN0ZWRcIiBuYW1lPVwicG9zXCJcbiAgICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIiBbdmFsdWVdPVwicmVhc29uLnZhbHVlX2VuXCIgKGNoYW5nZSk9XCJ0b2dnbGVMaW5rQ2FzZVJlYXNvbk90aGVyQ29tbWVudHMoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJnb3Z1ay1sYWJlbCBnb3Z1ay1jaGVja2JveGVzX19sYWJlbFwiIGZvcj1cInt7cmVhc29uLmtleX19XCI+e3tyZWFzb24udmFsdWVfZW59fTwvbGFiZWw+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgaWQ9XCJvdGhlci1kZXNjcmlwdGlvbi1jaGFyLWxpbWl0LWVycm9yXCIgW25nQ2xhc3NdPVwieydnb3Z1ay1mb3JtLWdyb3VwLS1lcnJvcic6ICEhY2FzZVJlYXNvbkNvbW1lbnRzRXJyb3J9XCIgY2xhc3M9XCJnb3Z1ay0hLW1hcmdpbi10b3AtM1wiICpuZ0lmPVwic2hvd0NvbW1lbnRzXCI+XG4gICAgICAgICAgPGgzIGNsYXNzPVwiZ292dWstaGVhZGluZy1zXCI+Q29tbWVudHM8L2gzPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstZXJyb3ItbWVzc2FnZVwiICpuZ0lmPVwiY2FzZVJlYXNvbkNvbW1lbnRzRXJyb3JcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstdmlzdWFsbHktaGlkZGVuXCI+RXJyb3I6PC9zcGFuPiB7e2Nhc2VSZWFzb25Db21tZW50c0Vycm9yfX1cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPHRleHRhcmVhIGNsYXNzPVwiZ292dWstdGV4dGFyZWEgZ292dWstaW5wdXQtLXdpZHRoLTMwXCIgaWQ9XCJvdGhlckRlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgIG5hbWU9XCJvdGhlckRlc2NyaXB0aW9uXCIgZm9ybUNvbnRyb2xOYW1lPVwib3RoZXJEZXNjcmlwdGlvblwiIHJvd3M9XCI1XCJcbiAgICAgICAgICAgIGFyaWEtZGVzY3JpYmVkYnk9XCJvdGhlci1kZXNjcmlwdGlvbi1oaW50IG90aGVyLWRlc2NyaXB0aW9uLWNoYXItbGltaXQtaW5mbyBvdGhlci1kZXNjcmlwdGlvbi1jaGFyLWxpbWl0LWVycm9yXCI+XG4gICAgICAgICAgPC90ZXh0YXJlYT5cbiAgICAgICAgICA8ZGl2IGlkPVwib3RoZXItZGVzY3JpcHRpb24tY2hhci1saW1pdC1pbmZvXCIgYXJpYS1saXZlPVwicG9saXRlXCIgY2xhc3M9XCJnb3Z1ay1oaW50IGdvdnVrLWNoYXJhY3Rlci1jb3VudF9fbWVzc2FnZVwiPlxuICAgICAgICAgICAgWW91IGNhbiBlbnRlciB1cCB0byAxMDAgY2hhcmFjdGVyc1xuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGJyPjxicj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay1lcnJvci1tZXNzYWdlXCIgKm5nSWY9XCJjYXNlU2VsZWN0aW9uRXJyb3JcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImdvdnVrLXZpc3VhbGx5LWhpZGRlblwiPkVycm9yOjwvc3Bhbj4ge3tjYXNlU2VsZWN0aW9uRXJyb3J9fVxuICAgICAgICA8L3NwYW4+XG4gICAgICAgIDxidXR0b24gaWQ9XCJwcm9wb3NlXCIgdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiZ292dWstYnV0dG9uIGdvdnVrLWJ1dHRvbi0tc2Vjb25kYXJ5XCIgZGF0YS1tb2R1bGU9XCJnb3Z1ay1idXR0b25cIlxuICAgICAgICAgIChjbGljayk9XCJzdWJtaXRDYXNlSW5mbygpXCI+UHJvcG9zZSBjYXNlIGxpbms8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGhyPlxuICAgICAgPGJyPjxicj5cbiAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1mb3JtLWdyb3VwXCIgaWQ9XCJjYXNlTnVtYmVyXCIgW25nQ2xhc3NdPVwieydnb3Z1ay1mb3JtLWdyb3VwLS1lcnJvcic6ICEhbm9TZWxlY3RlZENhc2VFcnJvcn1cIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay1lcnJvci1tZXNzYWdlXCIgKm5nSWY9XCJub1NlbGVjdGVkQ2FzZUVycm9yXCI+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj5FcnJvcjo8L3NwYW4+IHt7bm9TZWxlY3RlZENhc2VFcnJvcn19XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPHRhYmxlIGNsYXNzPVwiZ292dWstdGFibGVcIj5cbiAgICAgICAgICA8Y2FwdGlvbiBjbGFzcz1cImdvdnVrLXRhYmxlX19jYXB0aW9uIGdvdnVrLXRhYmxlX19jYXB0aW9uLS1tXCI+UHJvcG9zZWQgY2FzZSBsaW5rcyA8L2NhcHRpb24+XG4gICAgICAgICAgPHRoZWFkIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRcIj5cbiAgICAgICAgICAgIDx0ciBjbGFzcz1cImdvdnVrLXRhYmxlX19yb3dcIj5cbiAgICAgICAgICAgICAgPHRoIHNjb3BlPVwiY29sXCIgY2xhc3M9XCJnb3Z1ay10YWJsZV9faGVhZGVyXCIgd2lkdGg9XCIzMDBcIj5DYXNlIG5hbWUgYW5kIG51bWJlcjwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cImNvbFwiIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRlclwiIHdpZHRoPVwiMTUwXCI+Q2FzZSB0eXBlIDwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cImNvbFwiIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRlclwiIHdpZHRoPVwiMjAwXCI+U2VydmljZTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cImNvbFwiIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRlclwiIHdpZHRoPVwiMjAwXCI+U3RhdGU8L3RoPlxuICAgICAgICAgICAgICA8dGggc2NvcGU9XCJjb2xcIiBjbGFzcz1cImdvdnVrLXRhYmxlX19oZWFkZXJcIiB3aWR0aD1cIjQwMFwiPlJlYXNvbnMgZm9yIGNhc2UgbGluazwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cImNvbFwiIGNsYXNzPVwiZ292dWstdGFibGVfX2hlYWRlclwiIHdpZHRoPVwiNTBcIj48L3RoPlxuICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICA8L3RoZWFkPlxuICAgICAgICAgIDx0Ym9keSBjbGFzcz1cImdvdnVrLXRhYmxlX19ib2R5XCI+XG4gICAgICAgICAgICA8dHIgY2xhc3M9XCJnb3Z1ay10YWJsZV9fcm93XCIgKm5nRm9yPVwibGV0IGNhc2Ugb2Ygc2VsZWN0ZWRDYXNlczsgbGV0IHBvcyA9IGluZGV4XCI+XG4gICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImdvdnVrLXRhYmxlX19jZWxsXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWZvcm0tZ3JvdXAtLWVycm9yXCJcbiAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsndGFibGUtZ3JvdXAtZXJyb3InOmNhc2VTZWxlY3Rpb25FcnJvciAmJiBjYXNlLmNhc2VSZWZlcmVuY2UgPT09IGxpbmtDYXNlRm9ybS52YWx1ZS5jYXNlTnVtYmVyfVwiPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxzcGFuPnt7Y2FzZS5jYXNlTmFtZX19IDxicj4ge3tjYXNlLmNhc2VSZWZlcmVuY2UgfCBjY2RDYXNlUmVmZXJlbmNlfX08L3NwYW4+XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImdvdnVrLXRhYmxlX19jZWxsXCIgW3RpdGxlXT1cImNhc2UuY2FzZVR5cGVEZXNjcmlwdGlvblwiPnt7Y2FzZS5jYXNlVHlwZX19PC90ZD5cbiAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiZ292dWstdGFibGVfX2NlbGxcIj57e2Nhc2UuY2FzZVNlcnZpY2V9fTwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImdvdnVrLXRhYmxlX19jZWxsXCIgW3RpdGxlXT1cImNhc2UuY2FzZVN0YXRlRGVzY3JpcHRpb25cIj57e2Nhc2UuY2FzZVN0YXRlfX08L3RkPlxuICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJnb3Z1ay10YWJsZV9fY2VsbFwiPjxzcGFuXG4gICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgcmVhc29uIG9mIGNhc2UucmVhc29uc1wiPnt7cmVhc29uIHwgY2NkTGlua0Nhc2VzUmVhc29uVmFsdWV9fTxicj48L3NwYW4+PC90ZD5cbiAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiZ292dWstdGFibGVfX2NlbGxcIj48YSBbYXR0ci5pZF09XCJjYXNlLmNhc2VSZWZlcmVuY2VcIiAoY2xpY2spPVwib25TZWxlY3RlZExpbmtlZENhc2VSZW1vdmUocG9zLCBjYXNlLmNhc2VSZWZlcmVuY2UpO1wiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImdvdnVrLWxpbmsgbm8tdmlzaXRlZC1zdGF0ZVwiPlJlbW92ZTwvYT48L3RkPlxuICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgIDx0ciBjbGFzcz1cImdvdnVrLXRhYmxlX19yb3dcIiAqbmdJZj1cIiFzZWxlY3RlZENhc2VzLmxlbmd0aFwiPlxuICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJnb3Z1ay10YWJsZV9fY2VsbFwiIGNvbHNwYW49XCI2XCI+XG4gICAgICAgICAgICAgICAgTm9uZVxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICA8L3RhYmxlPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZ292dWstYnV0dG9uLWdyb3VwXCI+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidXR0b24gYnV0dG9uLXByaW1hcnlcIiB0eXBlPVwiYnV0dG9uXCIgaWQ9XCJuZXh0LWJ1dHRvblwiIChjbGljayk9XCJvbk5leHQoKVwiPk5leHQ8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -198,4 +198,4 @@ UnLinkCasesComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UnLink
198
198
  }], notifyAPIFailure: [{
199
199
  type: Output
200
200
  }] }); })();
201
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5saW5rLWNhc2VzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL2xpbmtlZC1jYXNlcy9jb21wb25lbnRzL3VubGluay1jYXNlcy91bmxpbmstY2FzZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvbGlua2VkLWNhc2VzL2NvbXBvbmVudHMvdW5saW5rLWNhc2VzL3VubGluay1jYXNlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUFhLFdBQVcsRUFBb0IsTUFBTSxnQkFBZ0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsUUFBUSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBRTVDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUU5RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUN2RyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7Ozs7Ozs7SUNIbkUsNkJBQWtGLGVBQUE7SUFDNUMsc0JBQU07SUFBQSxpQkFBTztJQUFDLFlBQ3BEO0lBQUEsaUJBQUk7OztJQURnRCxlQUNwRDtJQURvRCwwREFDcEQ7Ozs7SUFFRSwrQkFBcUUsZ0JBQUE7SUFFSSxxTEFBVSxlQUFBLDhCQUF1QixDQUFBLElBQUM7SUFEekcsaUJBQzBHO0lBQ3hHLGlDQUFnRjtJQUM5RSxZQUNKOztJQUFB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QixNQUFNO1lBR0EsZ0JBQWdCO2tCQUR0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQXJyYXksIEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgZm9ya0pvaW4sIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENhc2VWaWV3LCBFcnJvck1lc3NhZ2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgQ2FzZXNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY2FzZS1lZGl0b3Ivc2VydmljZXMvY2FzZXMuc2VydmljZSc7XG5pbXBvcnQgeyBDYXNlTGluaywgTGlua2VkQ2FzZXNTdGF0ZSB9IGZyb20gJy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBMaW5rZWRDYXNlc0Vycm9yTWVzc2FnZXMsIExpbmtlZENhc2VzUGFnZXMgfSBmcm9tICcuLi8uLi9lbnVtcy93cml0ZS1saW5rZWQtY2FzZXMtZmllbGQuZW51bSc7XG5pbXBvcnQgeyBMaW5rZWRDYXNlc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9saW5rZWQtY2FzZXMuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NjZC11bmxpbmstY2FzZXMnLFxuICB0ZW1wbGF0ZVVybDogJy4vdW5saW5rLWNhc2VzLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBVbkxpbmtDYXNlc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgTElOS0VEX0NBU0VTX1RBQl9JRCA9ICdsaW5rZWRfY2FzZXNfc3Njcyc7XG4gIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IENBU0VfTkFNRV9NSVNTSU5HX1RFWFQgPSAnQ2FzZSBuYW1lIG1pc3NpbmcnO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgbGlua2VkQ2FzZXNTdGF0ZUVtaXR0ZXI6IEV2ZW50RW1pdHRlcjxMaW5rZWRDYXNlc1N0YXRlPiA9IG5ldyBFdmVudEVtaXR0ZXI8TGlua2VkQ2FzZXNTdGF0ZT4oKTtcbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBub3RpZnlBUElGYWlsdXJlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKGZhbHNlKTtcblxuICBwdWJsaWMgdW5saW5rQ2FzZUZvcm06IFVudHlwZWRGb3JtR3JvdXA7XG4gIHB1YmxpYyBjYXNlSWQ6IHN0cmluZztcbiAgcHVibGljIGxpbmtlZENhc2VzOiBDYXNlTGlua1tdID0gW107XG4gIHB1YmxpYyBlcnJvck1lc3NhZ2VzOiBFcnJvck1lc3NhZ2VbXSA9IFtdO1xuICBwdWJsaWMgdW5saW5rRXJyb3JNZXNzYWdlOiBzdHJpbmc7XG4gIHB1YmxpYyBpc0xvYWRlZDogYm9vbGVhbjtcbiAgcHVibGljIGlzU2VydmVyRXJyb3IgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGZiOiBGb3JtQnVpbGRlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNhc2VzU2VydmljZTogQ2FzZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbGlua2VkQ2FzZXNTZXJ2aWNlOiBMaW5rZWRDYXNlc1NlcnZpY2UpIHtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmdldExpbmtlZENhc2VzKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0TGlua2VkQ2FzZXMoKTogdm9pZCB7XG4gICAgdGhpcy5jYXNlSWQgPSB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5jYXNlSWQ7XG4gICAgaWYgKHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmxpbmtlZENhc2VzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMubGlua2VkQ2FzZXMgPSB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5saW5rZWRDYXNlcztcbiAgICAgIHRoaXMuZ2V0QWxsTGlua2VkQ2FzZUluZm9ybWF0aW9uKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2FzZXNTZXJ2aWNlLmdldENhc2VWaWV3VjIodGhpcy5jYXNlSWQpLnN1YnNjcmliZSgoY2FzZVZpZXc6IENhc2VWaWV3KSA9PiB7XG4gICAgICAgIGNvbnN0IGxpbmtlZENhc2VzVGFiID0gY2FzZVZpZXcudGFicy5maW5kKHRhYiA9PiB0YWIuaWQgPT09IFVuTGlua0Nhc2VzQ29tcG9uZW50LkxJTktFRF9DQVNFU19UQUJfSUQpO1xuICAgICAgICBpZiAobGlua2VkQ2FzZXNUYWIpIHtcbiAgICAgICAgICBjb25zdCBsaW5rZWRDYXNlczogQ2FzZUxpbmtbXSA9IGxpbmtlZENhc2VzVGFiLmZpZWxkc1swXS52YWx1ZTtcbiAgICAgICAgICB0aGlzLmxpbmtlZENhc2VzID0gbGlua2VkQ2FzZXM7XG4gICAgICAgICAgdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UubGlua2VkQ2FzZXMgPSBsaW5rZWRDYXNlcztcbiAgICAgICAgICB0aGlzLmdldEFsbExpbmtlZENhc2VJbmZvcm1hdGlvbigpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0QWxsTGlua2VkQ2FzZUluZm9ybWF0aW9uKCk6IHZvaWQge1xuICAgIGNvbnN0IHNlYXJjaENhc2VzUmVzcG9uc2UgPSBbXTtcbiAgICB0aGlzLmxpbmtlZENhc2VzLmZvckVhY2gobGlua2VkQ2FzZSA9PiB7XG4gICAgICBzZWFyY2hDYXNlc1Jlc3BvbnNlLnB1c2godGhpcy5jYXNlc1NlcnZpY2UuZ2V0Q2FzZVZpZXdWMihsaW5rZWRDYXNlLmNhc2VSZWZlcmVuY2UpKTtcbiAgICB9KTtcbiAgICBpZiAoc2VhcmNoQ2FzZXNSZXNwb25zZS5sZW5ndGgpIHtcbiAgICAgIHRoaXMuc2VhcmNoQ2FzZXNCeUNhc2VJZHMoc2VhcmNoQ2FzZXNSZXNwb25zZSkuc3Vic2NyaWJlKChzZWFyY2hDYXNlczogYW55KSA9PiB7XG4gICAgICAgIHNlYXJjaENhc2VzLmZvckVhY2goKHJlc3BvbnNlOiBDYXNlVmlldykgPT4ge1xuICAgICAgICAgIGNvbnN0IGxpbmtlZENhc2VGcm9tTGlzdCA9IHRoaXMubGlua2VkQ2FzZXMuZmluZChsaW5rZWRDYXNlID0+IGxpbmtlZENhc2UuY2FzZVJlZmVyZW5jZSA9PT0gcmVzcG9uc2UuY2FzZV9pZCk7XG4gICAgICAgICAgaWYgKGxpbmtlZENhc2VGcm9tTGlzdCkge1xuICAgICAgICAgICAgY29uc3QgY2FzZU5hbWUgPSB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5nZXRDYXNlTmFtZShyZXNwb25zZSk7XG4gICAgICAgICAgICB0aGlzLmxpbmtlZENhc2VzLmZpbmQobGlua2VkQ2FzZSA9PiBsaW5rZWRDYXNlLmNhc2VSZWZlcmVuY2UgPT09IHJlc3BvbnNlLmNhc2VfaWQpLmNhc2VOYW1lID0gY2FzZU5hbWU7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5pbml0Rm9ybSgpO1xuICAgICAgICB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5saW5rZWRDYXNlcyA9IHRoaXMubGlua2VkQ2FzZXM7XG4gICAgICAgIHRoaXMuaXNTZXJ2ZXJFcnJvciA9IGZhbHNlO1xuICAgICAgfSxcbiAgICAgICAgZXJyID0+IHtcbiAgICAgICAgICB0aGlzLmlzU2VydmVyRXJyb3IgPSB0cnVlO1xuICAgICAgICAgIHRoaXMubm90aWZ5QVBJRmFpbHVyZS5lbWl0KHRydWUpO1xuICAgICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc2VhcmNoQ2FzZXNCeUNhc2VJZHMoc2VhcmNoQ2FzZXNSZXNwb25zZTogYW55W10pOiBPYnNlcnZhYmxlPHVua25vd25bXT4ge1xuICAgIHJldHVybiBmb3JrSm9pbihzZWFyY2hDYXNlc1Jlc3BvbnNlKTtcbiAgfVxuXG4gIHB1YmxpYyBpbml0Rm9ybSgpOiB2b2lkIHtcbiAgICB0aGlzLnVubGlua0Nhc2VGb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICBsaW5rZWRDYXNlczogdGhpcy5nZXRMaW5rZWRDYXNlc0Zvcm1BcnJheVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldCBnZXRMaW5rZWRDYXNlc0Zvcm1BcnJheSgpOiBGb3JtQXJyYXkge1xuICAgIGNvbnN0IGZvcm1GaWVsZEFycmF5ID0gdGhpcy5saW5rZWRDYXNlcy5tYXAodmFsID0+IHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgY2FzZVJlZmVyZW5jZTogdmFsLmNhc2VSZWZlcmVuY2UsXG4gICAgICByZWFzb25zOiB2YWwucmVhc29ucyxcbiAgICAgIGNyZWF0ZWREYXRlVGltZTogdmFsLmNyZWF0ZWREYXRlVGltZSxcbiAgICAgIGNhc2VUeXBlOiB2YWwuY2FzZVR5cGUsXG4gICAgICBjYXNlU3RhdGU6IHZhbC5jYXNlU3RhdGUsXG4gICAgICBjYXNlU2VydmljZTogdmFsLmNhc2VTZXJ2aWNlLFxuICAgICAgY2FzZU5hbWU6IHZhbC5jYXNlTmFtZSB8fCBVbkxpbmtDYXNlc0NvbXBvbmVudC5DQVNFX05BTUVfTUlTU0lOR19URVhULFxuICAgICAgdW5saW5rOiB2YWwudW5saW5rXG4gICAgfSkpO1xuICAgIHJldHVybiB0aGlzLmZiLmFycmF5KGZvcm1GaWVsZEFycmF5KTtcbiAgfVxuXG4gIHB1YmxpYyBvbkNoYW5nZShjYXNlU2VsZWN0ZWQ6IGFueSk6IHZvaWQge1xuICAgIHRoaXMucmVzZXRFcnJvck1lc3NhZ2VzKCk7XG4gICAgY29uc3Qgc2VsZWN0ZWRDYXNlID0gdGhpcy5saW5rZWRDYXNlcy5maW5kKGxpbmtlZENhc2UgPT4gbGlua2VkQ2FzZS5jYXNlUmVmZXJlbmNlID09PSBjYXNlU2VsZWN0ZWQudmFsdWUpO1xuICAgIGlmIChzZWxlY3RlZENhc2UpIHtcbiAgICAgIHNlbGVjdGVkQ2FzZS51bmxpbmsgPSBjYXNlU2VsZWN0ZWQuY2hlY2tlZCA/IHRydWUgOiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25OZXh0KCk6IHZvaWQge1xuICAgIHRoaXMucmVzZXRFcnJvck1lc3NhZ2VzKCk7XG4gICAgbGV0IG5hdmlnYXRlVG9OZXh0UGFnZSA9IHRydWU7XG4gICAgY29uc3QgY2FzZXNNYXJrZWRUb1VubGluayA9IHRoaXMubGlua2VkQ2FzZXMuZmluZChsaW5rZWRDYXNlID0+IGxpbmtlZENhc2UudW5saW5rICYmIGxpbmtlZENhc2UudW5saW5rID09PSB0cnVlKTtcbiAgICBpZiAoIWNhc2VzTWFya2VkVG9VbmxpbmspIHtcbiAgICAgIHRoaXMuZXJyb3JNZXNzYWdlcy5wdXNoKHtcbiAgICAgICAgdGl0bGU6ICdjYXNlLXNlbGVjdGlvbicsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBMaW5rZWRDYXNlc0Vycm9yTWVzc2FnZXMuVW5saW5rQ2FzZVNlbGVjdGlvbkVycm9yLFxuICAgICAgICBmaWVsZElkOiBgY2FzZS1yZWZlcmVuY2UtJHt0aGlzLmxpbmtlZENhc2VzWzBdLmNhc2VSZWZlcmVuY2V9YFxuICAgICAgfSk7XG4gICAgICB0aGlzLnVubGlua0Vycm9yTWVzc2FnZSA9IExpbmtlZENhc2VzRXJyb3JNZXNzYWdlcy5VbmxpbmtDYXNlU2VsZWN0aW9uRXJyb3I7XG4gICAgICBuYXZpZ2F0ZVRvTmV4dFBhZ2UgPSBmYWxzZTtcbiAgICB9XG4gICAgLy8gUmV0dXJuIGxpbmtlZCBjYXNlcyBzdGF0ZSBhbmQgZXJyb3IgbWVzc2FnZXMgdG8gdGhlIHBhcmVudFxuICAgIHRoaXMuZW1pdExpbmtlZENhc2VzU3RhdGUobmF2aWdhdGVUb05leHRQYWdlKTtcbiAgfVxuXG4gIC8vIFJldHVybiBsaW5rZWQgY2FzZXMgc3RhdGUgYW5kIGVycm9yIG1lc3NhZ2VzIHRvIHRoZSBwYXJlbnRcbiAgcHVibGljIGVtaXRMaW5rZWRDYXNlc1N0YXRlKGlzTmF2aWdhdGVUb05leHRQYWdlOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5saW5rZWRDYXNlc1N0YXRlRW1pdHRlci5lbWl0KHtcbiAgICAgIGN1cnJlbnRMaW5rZWRDYXNlc1BhZ2U6IExpbmtlZENhc2VzUGFnZXMuVU5MSU5LX0NBU0UsXG4gICAgICBlcnJvck1lc3NhZ2VzOiB0aGlzLmVycm9yTWVzc2FnZXMsXG4gICAgICBuYXZpZ2F0ZVRvTmV4dFBhZ2U6IGlzTmF2aWdhdGVUb05leHRQYWdlLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJlc2V0RXJyb3JNZXNzYWdlcygpOiB2b2lkIHtcbiAgICB0aGlzLmVycm9yTWVzc2FnZXMgPSBbXTtcbiAgICB0aGlzLnVubGlua0Vycm9yTWVzc2FnZSA9IG51bGw7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJnb3Z1ay1ncmlkLXJvd1wiICpuZ0lmPVwibGlua2VkQ2FzZXMubGVuZ3RoID4gMFwiPlxuICA8ZGl2IGNsYXNzPVwiZ292dWstZ3JpZC1jb2x1bW4tZnVsbFwiPlxuICAgIDxoMSBjbGFzcz1cImdvdnVrLWhlYWRpbmcteGxcIj5TZWxlY3QgdGhlIGNhc2VzIHlvdSB3YW50IHRvIHVubGluayBmcm9tIHRoaXMgY2FzZTwvaDE+XG4gICAgPGRpdiBjbGFzcz1cImdvdnVrLWZvcm0tZ3JvdXAgZm9ybS1ncm91cFwiIFtuZ0NsYXNzXT1cInsnZ292dWstZm9ybS1ncm91cC0tZXJyb3InOiB1bmxpbmtFcnJvck1lc3NhZ2V9XCIgW2Zvcm1Hcm91cF09XCJ1bmxpbmtDYXNlRm9ybVwiICpuZ0lmPVwidW5saW5rQ2FzZUZvcm1cIj5cbiAgICAgIDxwIGlkPVwidW5saW5rLWNhc2VzLWVycm9yXCIgY2xhc3M9XCJnb3Z1ay1lcnJvci1tZXNzYWdlXCIgKm5nSWY9XCJ1bmxpbmtFcnJvck1lc3NhZ2VcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj5FcnJvcjo8L3NwYW4+IHt7dW5saW5rRXJyb3JNZXNzYWdlfX1cbiAgICAgIDwvcD5cbiAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1jaGVja2JveGVzXCIgZGF0YS1tb2R1bGU9XCJnb3Z1ay1jaGVja2JveGVzXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1jaGVja2JveGVzX19pdGVtXCIgKm5nRm9yPVwibGV0IGNhc2Ugb2YgbGlua2VkQ2FzZXNcIj5cbiAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJnb3Z1ay1jaGVja2JveGVzX19pbnB1dFwiIGlkPVwiY2FzZS1yZWZlcmVuY2Ute3tjYXNlLmNhc2VSZWZlcmVuY2V9fVwiIGZvcm1BcnJheU5hbWU9XCJsaW5rZWRDYXNlc1wiIG5hbWU9XCJsaW5rZWRDYXNlc1wiXG4gICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIiBbdmFsdWVdPVwiY2FzZS5jYXNlUmVmZXJlbmNlXCIgW2NoZWNrZWRdPVwiY2FzZS51bmxpbmtcIiAoY2hhbmdlKT1cIm9uQ2hhbmdlKCRldmVudC50YXJnZXQpXCI+XG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJnb3Z1ay1sYWJlbCBnb3Z1ay1jaGVja2JveGVzX19sYWJlbFwiIGZvcj1cInt7Y2FzZS5jYXNlUmVmZXJlbmNlfX1cIj5cbiAgICAgICAgICAgICAge3tjYXNlLmNhc2VOYW1lIH19IHt7Y2FzZS5jYXNlUmVmZXJlbmNlIHwgY2NkQ2FzZVJlZmVyZW5jZX19XG4gICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZ292dWstYnV0dG9uLWdyb3VwXCI+XG4gICAgICA8YnV0dG9uIGNsYXNzPVwiYnV0dG9uIGJ1dHRvbi1wcmltYXJ5XCIgdHlwZT1cImJ1dHRvblwiIGlkPVwibmV4dC1idXR0b25cIiAoY2xpY2spPVwib25OZXh0KClcIj5OZXh0PC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
201
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5saW5rLWNhc2VzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL2xpbmtlZC1jYXNlcy9jb21wb25lbnRzL3VubGluay1jYXNlcy91bmxpbmstY2FzZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvbGlua2VkLWNhc2VzL2NvbXBvbmVudHMvdW5saW5rLWNhc2VzL3VubGluay1jYXNlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUFhLFdBQVcsRUFBYSxNQUFNLGdCQUFnQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxRQUFRLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFFNUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBRTlFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7Ozs7OztJQ0huRSw2QkFBa0YsZUFBQTtJQUM1QyxzQkFBTTtJQUFBLGlCQUFPO0lBQUMsWUFDcEQ7SUFBQSxpQkFBSTs7O0lBRGdELGVBQ3BEO0lBRG9ELDBEQUNwRDs7OztJQUVFLCtCQUFxRSxnQkFBQTtJQUVJLHFMQUFVLGVBQUEsOEJBQXVCLENBQUEsSUFBQztJQUR6RyxpQkFDMEc7SUFDeEcsaUNBQWdGO0lBQzlFLFlBQ0o7O0lBQUEs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LE1BQU07WUFHQSxnQkFBZ0I7a0JBRHRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1BcnJheSwgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGZvcmtKb2luLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDYXNlVmlldywgRXJyb3JNZXNzYWdlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IENhc2VzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL2Nhc2UtZWRpdG9yL3NlcnZpY2VzL2Nhc2VzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2FzZUxpbmssIExpbmtlZENhc2VzU3RhdGUgfSBmcm9tICcuLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgTGlua2VkQ2FzZXNFcnJvck1lc3NhZ2VzLCBMaW5rZWRDYXNlc1BhZ2VzIH0gZnJvbSAnLi4vLi4vZW51bXMvd3JpdGUtbGlua2VkLWNhc2VzLWZpZWxkLmVudW0nO1xuaW1wb3J0IHsgTGlua2VkQ2FzZXNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbGlua2VkLWNhc2VzLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjY2QtdW5saW5rLWNhc2VzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3VubGluay1jYXNlcy5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgVW5MaW5rQ2FzZXNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IExJTktFRF9DQVNFU19UQUJfSUQgPSAnbGlua2VkX2Nhc2VzX3NzY3MnO1xuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBDQVNFX05BTUVfTUlTU0lOR19URVhUID0gJ0Nhc2UgbmFtZSBtaXNzaW5nJztcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGxpbmtlZENhc2VzU3RhdGVFbWl0dGVyOiBFdmVudEVtaXR0ZXI8TGlua2VkQ2FzZXNTdGF0ZT4gPSBuZXcgRXZlbnRFbWl0dGVyPExpbmtlZENhc2VzU3RhdGU+KCk7XG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgbm90aWZ5QVBJRmFpbHVyZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcihmYWxzZSk7XG5cbiAgcHVibGljIHVubGlua0Nhc2VGb3JtOiBGb3JtR3JvdXA7XG4gIHB1YmxpYyBjYXNlSWQ6IHN0cmluZztcbiAgcHVibGljIGxpbmtlZENhc2VzOiBDYXNlTGlua1tdID0gW107XG4gIHB1YmxpYyBlcnJvck1lc3NhZ2VzOiBFcnJvck1lc3NhZ2VbXSA9IFtdO1xuICBwdWJsaWMgdW5saW5rRXJyb3JNZXNzYWdlOiBzdHJpbmc7XG4gIHB1YmxpYyBpc0xvYWRlZDogYm9vbGVhbjtcbiAgcHVibGljIGlzU2VydmVyRXJyb3IgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGZiOiBGb3JtQnVpbGRlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNhc2VzU2VydmljZTogQ2FzZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbGlua2VkQ2FzZXNTZXJ2aWNlOiBMaW5rZWRDYXNlc1NlcnZpY2UpIHtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmdldExpbmtlZENhc2VzKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0TGlua2VkQ2FzZXMoKTogdm9pZCB7XG4gICAgdGhpcy5jYXNlSWQgPSB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5jYXNlSWQ7XG4gICAgaWYgKHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmxpbmtlZENhc2VzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMubGlua2VkQ2FzZXMgPSB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5saW5rZWRDYXNlcztcbiAgICAgIHRoaXMuZ2V0QWxsTGlua2VkQ2FzZUluZm9ybWF0aW9uKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2FzZXNTZXJ2aWNlLmdldENhc2VWaWV3VjIodGhpcy5jYXNlSWQpLnN1YnNjcmliZSgoY2FzZVZpZXc6IENhc2VWaWV3KSA9PiB7XG4gICAgICAgIGNvbnN0IGxpbmtlZENhc2VzVGFiID0gY2FzZVZpZXcudGFicy5maW5kKHRhYiA9PiB0YWIuaWQgPT09IFVuTGlua0Nhc2VzQ29tcG9uZW50LkxJTktFRF9DQVNFU19UQUJfSUQpO1xuICAgICAgICBpZiAobGlua2VkQ2FzZXNUYWIpIHtcbiAgICAgICAgICBjb25zdCBsaW5rZWRDYXNlczogQ2FzZUxpbmtbXSA9IGxpbmtlZENhc2VzVGFiLmZpZWxkc1swXS52YWx1ZTtcbiAgICAgICAgICB0aGlzLmxpbmtlZENhc2VzID0gbGlua2VkQ2FzZXM7XG4gICAgICAgICAgdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UubGlua2VkQ2FzZXMgPSBsaW5rZWRDYXNlcztcbiAgICAgICAgICB0aGlzLmdldEFsbExpbmtlZENhc2VJbmZvcm1hdGlvbigpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0QWxsTGlua2VkQ2FzZUluZm9ybWF0aW9uKCk6IHZvaWQge1xuICAgIGNvbnN0IHNlYXJjaENhc2VzUmVzcG9uc2UgPSBbXTtcbiAgICB0aGlzLmxpbmtlZENhc2VzLmZvckVhY2gobGlua2VkQ2FzZSA9PiB7XG4gICAgICBzZWFyY2hDYXNlc1Jlc3BvbnNlLnB1c2godGhpcy5jYXNlc1NlcnZpY2UuZ2V0Q2FzZVZpZXdWMihsaW5rZWRDYXNlLmNhc2VSZWZlcmVuY2UpKTtcbiAgICB9KTtcbiAgICBpZiAoc2VhcmNoQ2FzZXNSZXNwb25zZS5sZW5ndGgpIHtcbiAgICAgIHRoaXMuc2VhcmNoQ2FzZXNCeUNhc2VJZHMoc2VhcmNoQ2FzZXNSZXNwb25zZSkuc3Vic2NyaWJlKChzZWFyY2hDYXNlczogYW55KSA9PiB7XG4gICAgICAgIHNlYXJjaENhc2VzLmZvckVhY2goKHJlc3BvbnNlOiBDYXNlVmlldykgPT4ge1xuICAgICAgICAgIGNvbnN0IGxpbmtlZENhc2VGcm9tTGlzdCA9IHRoaXMubGlua2VkQ2FzZXMuZmluZChsaW5rZWRDYXNlID0+IGxpbmtlZENhc2UuY2FzZVJlZmVyZW5jZSA9PT0gcmVzcG9uc2UuY2FzZV9pZCk7XG4gICAgICAgICAgaWYgKGxpbmtlZENhc2VGcm9tTGlzdCkge1xuICAgICAgICAgICAgY29uc3QgY2FzZU5hbWUgPSB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5nZXRDYXNlTmFtZShyZXNwb25zZSk7XG4gICAgICAgICAgICB0aGlzLmxpbmtlZENhc2VzLmZpbmQobGlua2VkQ2FzZSA9PiBsaW5rZWRDYXNlLmNhc2VSZWZlcmVuY2UgPT09IHJlc3BvbnNlLmNhc2VfaWQpLmNhc2VOYW1lID0gY2FzZU5hbWU7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5pbml0Rm9ybSgpO1xuICAgICAgICB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5saW5rZWRDYXNlcyA9IHRoaXMubGlua2VkQ2FzZXM7XG4gICAgICAgIHRoaXMuaXNTZXJ2ZXJFcnJvciA9IGZhbHNlO1xuICAgICAgfSxcbiAgICAgICAgZXJyID0+IHtcbiAgICAgICAgICB0aGlzLmlzU2VydmVyRXJyb3IgPSB0cnVlO1xuICAgICAgICAgIHRoaXMubm90aWZ5QVBJRmFpbHVyZS5lbWl0KHRydWUpO1xuICAgICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc2VhcmNoQ2FzZXNCeUNhc2VJZHMoc2VhcmNoQ2FzZXNSZXNwb25zZTogYW55W10pOiBPYnNlcnZhYmxlPHVua25vd25bXT4ge1xuICAgIHJldHVybiBmb3JrSm9pbihzZWFyY2hDYXNlc1Jlc3BvbnNlKTtcbiAgfVxuXG4gIHB1YmxpYyBpbml0Rm9ybSgpOiB2b2lkIHtcbiAgICB0aGlzLnVubGlua0Nhc2VGb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICBsaW5rZWRDYXNlczogdGhpcy5nZXRMaW5rZWRDYXNlc0Zvcm1BcnJheVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldCBnZXRMaW5rZWRDYXNlc0Zvcm1BcnJheSgpOiBGb3JtQXJyYXkge1xuICAgIGNvbnN0IGZvcm1GaWVsZEFycmF5ID0gdGhpcy5saW5rZWRDYXNlcy5tYXAodmFsID0+IHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgY2FzZVJlZmVyZW5jZTogdmFsLmNhc2VSZWZlcmVuY2UsXG4gICAgICByZWFzb25zOiB2YWwucmVhc29ucyxcbiAgICAgIGNyZWF0ZWREYXRlVGltZTogdmFsLmNyZWF0ZWREYXRlVGltZSxcbiAgICAgIGNhc2VUeXBlOiB2YWwuY2FzZVR5cGUsXG4gICAgICBjYXNlU3RhdGU6IHZhbC5jYXNlU3RhdGUsXG4gICAgICBjYXNlU2VydmljZTogdmFsLmNhc2VTZXJ2aWNlLFxuICAgICAgY2FzZU5hbWU6IHZhbC5jYXNlTmFtZSB8fCBVbkxpbmtDYXNlc0NvbXBvbmVudC5DQVNFX05BTUVfTUlTU0lOR19URVhULFxuICAgICAgdW5saW5rOiB2YWwudW5saW5rXG4gICAgfSkpO1xuICAgIHJldHVybiB0aGlzLmZiLmFycmF5KGZvcm1GaWVsZEFycmF5KTtcbiAgfVxuXG4gIHB1YmxpYyBvbkNoYW5nZShjYXNlU2VsZWN0ZWQ6IGFueSk6IHZvaWQge1xuICAgIHRoaXMucmVzZXRFcnJvck1lc3NhZ2VzKCk7XG4gICAgY29uc3Qgc2VsZWN0ZWRDYXNlID0gdGhpcy5saW5rZWRDYXNlcy5maW5kKGxpbmtlZENhc2UgPT4gbGlua2VkQ2FzZS5jYXNlUmVmZXJlbmNlID09PSBjYXNlU2VsZWN0ZWQudmFsdWUpO1xuICAgIGlmIChzZWxlY3RlZENhc2UpIHtcbiAgICAgIHNlbGVjdGVkQ2FzZS51bmxpbmsgPSBjYXNlU2VsZWN0ZWQuY2hlY2tlZCA/IHRydWUgOiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25OZXh0KCk6IHZvaWQge1xuICAgIHRoaXMucmVzZXRFcnJvck1lc3NhZ2VzKCk7XG4gICAgbGV0IG5hdmlnYXRlVG9OZXh0UGFnZSA9IHRydWU7XG4gICAgY29uc3QgY2FzZXNNYXJrZWRUb1VubGluayA9IHRoaXMubGlua2VkQ2FzZXMuZmluZChsaW5rZWRDYXNlID0+IGxpbmtlZENhc2UudW5saW5rICYmIGxpbmtlZENhc2UudW5saW5rID09PSB0cnVlKTtcbiAgICBpZiAoIWNhc2VzTWFya2VkVG9VbmxpbmspIHtcbiAgICAgIHRoaXMuZXJyb3JNZXNzYWdlcy5wdXNoKHtcbiAgICAgICAgdGl0bGU6ICdjYXNlLXNlbGVjdGlvbicsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBMaW5rZWRDYXNlc0Vycm9yTWVzc2FnZXMuVW5saW5rQ2FzZVNlbGVjdGlvbkVycm9yLFxuICAgICAgICBmaWVsZElkOiBgY2FzZS1yZWZlcmVuY2UtJHt0aGlzLmxpbmtlZENhc2VzWzBdLmNhc2VSZWZlcmVuY2V9YFxuICAgICAgfSk7XG4gICAgICB0aGlzLnVubGlua0Vycm9yTWVzc2FnZSA9IExpbmtlZENhc2VzRXJyb3JNZXNzYWdlcy5VbmxpbmtDYXNlU2VsZWN0aW9uRXJyb3I7XG4gICAgICBuYXZpZ2F0ZVRvTmV4dFBhZ2UgPSBmYWxzZTtcbiAgICB9XG4gICAgLy8gUmV0dXJuIGxpbmtlZCBjYXNlcyBzdGF0ZSBhbmQgZXJyb3IgbWVzc2FnZXMgdG8gdGhlIHBhcmVudFxuICAgIHRoaXMuZW1pdExpbmtlZENhc2VzU3RhdGUobmF2aWdhdGVUb05leHRQYWdlKTtcbiAgfVxuXG4gIC8vIFJldHVybiBsaW5rZWQgY2FzZXMgc3RhdGUgYW5kIGVycm9yIG1lc3NhZ2VzIHRvIHRoZSBwYXJlbnRcbiAgcHVibGljIGVtaXRMaW5rZWRDYXNlc1N0YXRlKGlzTmF2aWdhdGVUb05leHRQYWdlOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5saW5rZWRDYXNlc1N0YXRlRW1pdHRlci5lbWl0KHtcbiAgICAgIGN1cnJlbnRMaW5rZWRDYXNlc1BhZ2U6IExpbmtlZENhc2VzUGFnZXMuVU5MSU5LX0NBU0UsXG4gICAgICBlcnJvck1lc3NhZ2VzOiB0aGlzLmVycm9yTWVzc2FnZXMsXG4gICAgICBuYXZpZ2F0ZVRvTmV4dFBhZ2U6IGlzTmF2aWdhdGVUb05leHRQYWdlLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJlc2V0RXJyb3JNZXNzYWdlcygpOiB2b2lkIHtcbiAgICB0aGlzLmVycm9yTWVzc2FnZXMgPSBbXTtcbiAgICB0aGlzLnVubGlua0Vycm9yTWVzc2FnZSA9IG51bGw7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJnb3Z1ay1ncmlkLXJvd1wiICpuZ0lmPVwibGlua2VkQ2FzZXMubGVuZ3RoID4gMFwiPlxuICA8ZGl2IGNsYXNzPVwiZ292dWstZ3JpZC1jb2x1bW4tZnVsbFwiPlxuICAgIDxoMSBjbGFzcz1cImdvdnVrLWhlYWRpbmcteGxcIj5TZWxlY3QgdGhlIGNhc2VzIHlvdSB3YW50IHRvIHVubGluayBmcm9tIHRoaXMgY2FzZTwvaDE+XG4gICAgPGRpdiBjbGFzcz1cImdvdnVrLWZvcm0tZ3JvdXAgZm9ybS1ncm91cFwiIFtuZ0NsYXNzXT1cInsnZ292dWstZm9ybS1ncm91cC0tZXJyb3InOiB1bmxpbmtFcnJvck1lc3NhZ2V9XCIgW2Zvcm1Hcm91cF09XCJ1bmxpbmtDYXNlRm9ybVwiICpuZ0lmPVwidW5saW5rQ2FzZUZvcm1cIj5cbiAgICAgIDxwIGlkPVwidW5saW5rLWNhc2VzLWVycm9yXCIgY2xhc3M9XCJnb3Z1ay1lcnJvci1tZXNzYWdlXCIgKm5nSWY9XCJ1bmxpbmtFcnJvck1lc3NhZ2VcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJnb3Z1ay12aXN1YWxseS1oaWRkZW5cIj5FcnJvcjo8L3NwYW4+IHt7dW5saW5rRXJyb3JNZXNzYWdlfX1cbiAgICAgIDwvcD5cbiAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1jaGVja2JveGVzXCIgZGF0YS1tb2R1bGU9XCJnb3Z1ay1jaGVja2JveGVzXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1jaGVja2JveGVzX19pdGVtXCIgKm5nRm9yPVwibGV0IGNhc2Ugb2YgbGlua2VkQ2FzZXNcIj5cbiAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJnb3Z1ay1jaGVja2JveGVzX19pbnB1dFwiIGlkPVwiY2FzZS1yZWZlcmVuY2Ute3tjYXNlLmNhc2VSZWZlcmVuY2V9fVwiIGZvcm1BcnJheU5hbWU9XCJsaW5rZWRDYXNlc1wiIG5hbWU9XCJsaW5rZWRDYXNlc1wiXG4gICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIiBbdmFsdWVdPVwiY2FzZS5jYXNlUmVmZXJlbmNlXCIgW2NoZWNrZWRdPVwiY2FzZS51bmxpbmtcIiAoY2hhbmdlKT1cIm9uQ2hhbmdlKCRldmVudC50YXJnZXQpXCI+XG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJnb3Z1ay1sYWJlbCBnb3Z1ay1jaGVja2JveGVzX19sYWJlbFwiIGZvcj1cInt7Y2FzZS5jYXNlUmVmZXJlbmNlfX1cIj5cbiAgICAgICAgICAgICAge3tjYXNlLmNhc2VOYW1lIH19IHt7Y2FzZS5jYXNlUmVmZXJlbmNlIHwgY2NkQ2FzZVJlZmVyZW5jZX19XG4gICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZ292dWstYnV0dG9uLWdyb3VwXCI+XG4gICAgICA8YnV0dG9uIGNsYXNzPVwiYnV0dG9uIGJ1dHRvbi1wcmltYXJ5XCIgdHlwZT1cImJ1dHRvblwiIGlkPVwibmV4dC1idXR0b25cIiAoY2xpY2spPVwib25OZXh0KClcIj5OZXh0PC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -1,5 +1,5 @@
1
1
  import { Component } from '@angular/core';
2
- import { FormControl, UntypedFormGroup } from '@angular/forms';
2
+ import { FormControl, FormGroup } from '@angular/forms';
3
3
  import { AbstractAppConfig } from '../../../../app.config';
4
4
  import { CaseEditDataService } from '../../../commons/case-edit-data';
5
5
  import { CommonDataService } from '../../../services/common-data-service/common-data-service';
@@ -151,7 +151,7 @@ export class WriteLinkedCasesFieldComponent extends AbstractFieldWriteComponent
151
151
  this.linkedCasesService.caseFieldValue = caseFieldValue.filter(item => unlinkedCaseRefereneIds.indexOf(item.id) === -1);
152
152
  }
153
153
  this.formGroup.value.caseLinks = this.linkedCasesService.caseFieldValue;
154
- this.caseEditForm.controls['data'] = new UntypedFormGroup({ caseLinks: new FormControl(this.linkedCasesService.caseFieldValue || []) });
154
+ this.caseEditForm.controls['data'] = new FormGroup({ caseLinks: new FormControl(this.linkedCasesService.caseFieldValue || []) });
155
155
  this.caseEditDataService.setCaseEditForm(this.caseEditForm);
156
156
  }
157
157
  isAtFinalPage() {
@@ -213,4 +213,4 @@ WriteLinkedCasesFieldComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ ty
213
213
  type: Component,
214
214
  args: [{ selector: 'ccd-write-linked-cases-field', template: "<div class=\"form-group govuk-!-margin-bottom-2\" [formGroup]=\"formGroup\">\n <div class=\"govuk-form-group\" [ngSwitch]=\"linkedCasesPage\">\n <ng-container *ngSwitchCase=\"linkedCasesPages.BEFORE_YOU_START\">\n <ccd-linked-cases-before-you-start\n (linkedCasesStateEmitter)=\"onLinkedCasesStateEmitted($event)\"></ccd-linked-cases-before-you-start>\n </ng-container>\n <ng-container *ngSwitchCase=\"linkedCasesPages.NO_LINKED_CASES\">\n <ccd-no-linked-cases\n (linkedCasesStateEmitter)=\"onLinkedCasesStateEmitted($event)\"></ccd-no-linked-cases>\n </ng-container>\n <ng-container *ngSwitchCase=\"linkedCasesPages.LINK_CASE\">\n <ccd-link-cases\n (linkedCasesStateEmitter)=\"onLinkedCasesStateEmitted($event)\"></ccd-link-cases>\n </ng-container>\n <ng-container *ngSwitchCase=\"linkedCasesPages.UNLINK_CASE\">\n <ccd-unlink-cases\n (linkedCasesStateEmitter)=\"onLinkedCasesStateEmitted($event)\"></ccd-unlink-cases>\n </ng-container>\n <ng-container *ngSwitchCase=\"linkedCasesPages.CHECK_YOUR_ANSWERS\">\n <ccd-linked-cases-check-your-answers\n (linkedCasesStateEmitter)=\"onLinkedCasesStateEmitted($event)\"></ccd-linked-cases-check-your-answers>\n </ng-container>\n </div>\n</div>\n" }]
215
215
  }], function () { return [{ type: i1.AbstractAppConfig }, { type: i2.CommonDataService }, { type: i3.CasesService }, { type: i4.LinkedCasesService }, { type: i5.CaseEditDataService }]; }, null); })();
216
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3JpdGUtbGlua2VkLWNhc2VzLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL2xpbmtlZC1jYXNlcy93cml0ZS1saW5rZWQtY2FzZXMtZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvbGlua2VkLWNhc2VzL3dyaXRlLWxpbmtlZC1jYXNlcy1maWVsZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDM0QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFHdEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDOUYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU1RCxPQUFPLEVBQTRCLHdCQUF3QixFQUFFLGdCQUFnQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQy9GLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFlBQVksQ0FBQzs7Ozs7Ozs7O0lDVDVDLDZCQUFnRTtJQUM5RCw0REFDZ0U7SUFBOUQseVBBQTJCLGVBQUEsd0NBQWlDLENBQUEsSUFBQztJQUFDLGlCQUFvQztJQUN0RywwQkFB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QyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUNoRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsMkJBQTJCLEVBQUUsQ0FBQzthQUN2RDtZQUNELHVDQUF1QztZQUN2QyxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyx5QkFBeUI7Z0JBQ3RFLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDO3VCQUN2RixDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxvQkFBb0IsQ0FBQztnQkFDbkQsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQjtnQkFDbkMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQztRQUN2QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OzRHQW5KVSw4QkFBOEI7aUZBQTlCLDhCQUE4QjtRQ2pCM0MsOEJBQXdFLGFBQUE7UUFFcEUsaUdBR2U7UUFDZixpR0FHZTtRQUNmLGlHQUdlO1FBQ2YsaUdBR2U7UUFDZixpR0FHZTtRQUNqQixpQkFBTSxFQUFBOztRQXRCd0MseUNBQXVCO1FBQ3ZDLGVBQTRCO1FBQTVCLDhDQUE0QjtRQUN6QyxlQUErQztRQUEvQyxvRUFBK0M7UUFJL0MsZUFBOEM7UUFBOUMsbUVBQThDO1FBSTlDLGVBQXdDO1FBQXhDLDZEQUF3QztRQUl4QyxlQUEwQztRQUExQywrREFBMEM7UUFJMUMsZUFBaUQ7UUFBakQsc0VBQWlEOzt1RkREdkQsOEJBQThCO2NBSjFDLFNBQVM7MkJBQ0UsOEJBQThCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Db250cm9sLCBVbnR5cGVkRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQWJzdHJhY3RBcHBDb25maWcgfSBmcm9tICcuLi8uLi8uLi8uLi9hcHAuY29uZmlnJztcbmltcG9ydCB7IENhc2VFZGl0RGF0YVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb21tb25zL2Nhc2UtZWRpdC1kYXRhJztcbmltcG9ydCB7IEVycm9yTWVzc2FnZSB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBDYXNlVmlldyB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbi9jYXNlLXZpZXcnO1xuaW1wb3J0IHsgQ29tbW9uRGF0YVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9jb21tb24tZGF0YS1zZXJ2aWNlL2NvbW1vbi1kYXRhLXNlcnZpY2UnO1xuaW1wb3J0IHsgQ2FzZXNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY2FzZS1lZGl0b3Ivc2VydmljZXMvY2FzZXMuc2VydmljZSc7XG5pbXBvcnQgeyBBYnN0cmFjdEZpZWxkV3JpdGVDb21wb25lbnQgfSBmcm9tICcuLi9iYXNlLWZpZWxkJztcbmltcG9ydCB7IENhc2VMaW5rLCBMaW5rZWRDYXNlc1N0YXRlIH0gZnJvbSAnLi9kb21haW4nO1xuaW1wb3J0IHsgTGlua2VkQ2FzZXNFcnJvck1lc3NhZ2VzLCBMaW5rZWRDYXNlc0V2ZW50VHJpZ2dlcnMsIExpbmtlZENhc2VzUGFnZXMgfSBmcm9tICcuL2VudW1zJztcbmltcG9ydCB7IExpbmtlZENhc2VzU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjY2Qtd3JpdGUtbGlua2VkLWNhc2VzLWZpZWxkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3dyaXRlLWxpbmtlZC1jYXNlcy1maWVsZC5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgV3JpdGVMaW5rZWRDYXNlc0ZpZWxkQ29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3RGaWVsZFdyaXRlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcbiAgcHVibGljIGNhc2VFZGl0Rm9ybTogVW50eXBlZEZvcm1Hcm91cDtcbiAgcHVibGljIGNhc2VEZXRhaWxzOiBDYXNlVmlldztcbiAgcHVibGljIGxpbmtlZENhc2VzUGFnZTogbnVtYmVyO1xuICBwdWJsaWMgbGlua2VkQ2FzZXNQYWdlcyA9IExpbmtlZENhc2VzUGFnZXM7XG4gIHB1YmxpYyBsaW5rZWRDYXNlc0V2ZW50VHJpZ2dlcnMgPSBMaW5rZWRDYXNlc0V2ZW50VHJpZ2dlcnM7XG4gIHB1YmxpYyBsaW5rZWRDYXNlczogQ2FzZUxpbmtbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXBwQ29uZmlnOiBBYnN0cmFjdEFwcENvbmZpZyxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbW1vbkRhdGFTZXJ2aWNlOiBDb21tb25EYXRhU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNhc2VzU2VydmljZTogQ2FzZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbGlua2VkQ2FzZXNTZXJ2aWNlOiBMaW5rZWRDYXNlc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjYXNlRWRpdERhdGFTZXJ2aWNlOiBDYXNlRWRpdERhdGFTZXJ2aWNlKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvLyBUaGlzIGlzIHJlcXVpcmVkIHRvIGVuYWJsZSBDb250aW51ZSBidXR0b24gdmFsaWRhdGlvblxuICAgIC8vIENvbnRpbnVlIGJ1dHRvbiBzaG91bGQgYmUgZW5hYmxlZCBvbmx5IGF0IGNoZWNrIHlvdXIgYW5zd2VycyBwYWdlXG4gICAgdGhpcy5jYXNlRWRpdERhdGFTZXJ2aWNlLnNldExpbmtlZENhc2VzSm91cm5leUF0RmluYWxTdGVwKGZhbHNlKTtcbiAgICAvLyBDbGVhciB2YWxpZGF0aW9uIGVycm9yc1xuICAgIHRoaXMuY2FzZUVkaXREYXRhU2VydmljZS5jbGVhckZvcm1WYWxpZGF0aW9uRXJyb3JzKCk7XG4gICAgLy8gR2V0IGxpbmtlZCBjYXNlIHJlYXNvbnMgZnJvbSByZWYgZGF0YVxuICAgIHRoaXMuZ2V0TGlua2VkQ2FzZVJlYXNvbnMoKTtcbiAgICB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5lZGl0TW9kZSA9IGZhbHNlO1xuICAgIHRoaXMuY2FzZUVkaXREYXRhU2VydmljZS5jYXNlRGV0YWlscyQuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IGNhc2VEZXRhaWxzID0+IHRoaXMuaW5pdGlhbGlzZUNhc2VEZXRhaWxzKGNhc2VEZXRhaWxzKVxuICAgIH0pO1xuICAgIHRoaXMuY2FzZUVkaXREYXRhU2VydmljZS5jYXNlRXZlbnRUcmlnZ2VyTmFtZSQuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IG5hbWUgPT4gdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuaXNMaW5rZWRDYXNlc0V2ZW50VHJpZ2dlciA9IChuYW1lID09PSBMaW5rZWRDYXNlc0V2ZW50VHJpZ2dlcnMuTElOS19DQVNFUylcbiAgICB9KTtcbiAgICB0aGlzLmNhc2VFZGl0RGF0YVNlcnZpY2UuY2FzZUVkaXRGb3JtJC5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogZWRpdEZvcm0gPT4gdGhpcy5jYXNlRWRpdEZvcm0gPSBlZGl0Rm9ybVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGluaXRpYWxpc2VDYXNlRGV0YWlscyhjYXNlRGV0YWlsczogQ2FzZVZpZXcpOiB2b2lkIHtcbiAgICBpZiAoY2FzZURldGFpbHMpIHtcbiAgICAgIHRoaXMuY2FzZURldGFpbHMgPSBjYXNlRGV0YWlscztcbiAgICAgIHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmNhc2VEZXRhaWxzID0gY2FzZURldGFpbHM7XG4gICAgICB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5jYXNlSWQgPSBjYXNlRGV0YWlscy5jYXNlX2lkO1xuICAgICAgdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuY2FzZU5hbWUgPSB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5nZXRDYXNlTmFtZShjYXNlRGV0YWlscyk7XG4gICAgICB0aGlzLmdldExpbmtlZENhc2VzKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBsZXQgbGFiZWxGaWVsZCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoJ2dvdnVrLWhlYWRpbmctbCcpO1xuICAgIGlmIChsYWJlbEZpZWxkICYmIGxhYmVsRmllbGQubGVuZ3RoKSB7XG4gICAgICBsYWJlbEZpZWxkWzBdLnJlcGxhY2VXaXRoKCcnKTtcbiAgICB9XG4gICAgbGFiZWxGaWVsZCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoJ2hlYWRpbmctaDInKTtcbiAgICBpZiAobGFiZWxGaWVsZCAmJiBsYWJlbEZpZWxkLmxlbmd0aCkge1xuICAgICAgbGFiZWxGaWVsZFswXS5yZXBsYWNlV2l0aCgnJyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uTGlua2VkQ2FzZXNTdGF0ZUVtaXR0ZWQobGlua2VkQ2FzZXNTdGF0ZTogTGlua2VkQ2FzZXNTdGF0ZSk6IHZvaWQge1xuICAgIC8vIENsZWFyIHZhbGlkYXRpb24gZXJyb3JzXG4gICAgdGhpcy5jYXNlRWRpdERhdGFTZXJ2aWNlLmNsZWFyRm9ybVZhbGlkYXRpb25FcnJvcnMoKTtcblxuICAgIGlmIChsaW5rZWRDYXNlc1N0YXRlLm5hdmlnYXRlVG9OZXh0UGFnZSkge1xuICAgICAgdGhpcy5saW5rZWRDYXNlc1BhZ2UgPSB0aGlzLmdldE5leHRQYWdlKGxpbmtlZENhc2VzU3RhdGUpO1xuICAgICAgdGhpcy5wcm9jZWVkVG9OZXh0UGFnZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAobGlua2VkQ2FzZXNTdGF0ZS5lcnJvck1lc3NhZ2VzICYmIGxpbmtlZENhc2VzU3RhdGUuZXJyb3JNZXNzYWdlcy5sZW5ndGgpIHtcbiAgICAgICAgbGlua2VkQ2FzZXNTdGF0ZS5lcnJvck1lc3NhZ2VzLmZvckVhY2goKGVycm9yTWVzc2FnZSwgaW5kZXgpID0+IHtcbiAgICAgICAgICB0aGlzLmNhc2VFZGl0RGF0YVNlcnZpY2UuYWRkRm9ybVZhbGlkYXRpb25FcnJvcih7IGlkOiBlcnJvck1lc3NhZ2UuZmllbGRJZCwgbWVzc2FnZTogZXJyb3JNZXNzYWdlLmRlc2NyaXB0aW9uIH0pO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0TGlua2VkQ2FzZVJlYXNvbnMoKTogdm9pZCB7XG4gICAgY29uc3QgcmVhc29uQ29kZUFQSXVybCA9IGAke3RoaXMuYXBwQ29uZmlnLmdldFJEQ29tbW9uRGF0YUFwaVVybCgpfS9sb3YvY2F0ZWdvcmllcy9DYXNlTGlua2luZ1JlYXNvbkNvZGVgO1xuICAgIHRoaXMuY29tbW9uRGF0YVNlcnZpY2UuZ2V0UmVmRGF0YShyZWFzb25Db2RlQVBJdXJsKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogcmVhc29ucyA9PiB7XG4gICAgICAgIC8vIFNvcnQgaW4gYXNjZW5kaW5nIG9yZGVyXG4gICAgICAgIGNvbnN0IGxpbmtDYXNlUmVhc29ucyA9IHJlYXNvbnMubGlzdF9vZl92YWx1ZXMuc29ydCgoYSwgYikgPT4gKGEudmFsdWVfZW4gPiBiLnZhbHVlX2VuKSA/IDEgOiAtMSk7XG4gICAgICAgIC8vIE1vdmUgT3RoZXIgb3B0aW9uIHRvIHRoZSBlbmQgb2YgdGhlIGxpc3RcbiAgICAgICAgdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UubGlua0Nhc2VSZWFzb25zID0gbGlua0Nhc2VSZWFzb25zPy5maWx0ZXIocmVhc29uID0+IHJlYXNvbi52YWx1ZV9lbiAhPT0gJ090aGVyJyk7XG4gICAgICAgIHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmxpbmtDYXNlUmVhc29ucy5wdXNoKGxpbmtDYXNlUmVhc29ucz8uZmluZChyZWFzb24gPT4gcmVhc29uLnZhbHVlX2VuID09PSAnT3RoZXInKSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgcHJvY2VlZFRvTmV4dFBhZ2UoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNBdEZpbmFsUGFnZSgpKSB7XG4gICAgICAvLyBDb250aW51ZSBidXR0b24gZXZlbnQgbXVzdCBiZSBhbGxvd2VkIGluIGZpbmFsIHBhZ2VcbiAgICAgIHRoaXMuY2FzZUVkaXREYXRhU2VydmljZS5zZXRMaW5rZWRDYXNlc0pvdXJuZXlBdEZpbmFsU3RlcCh0cnVlKTtcbiAgICAgIC8vIFRyaWdnZXIgdmFsaWRhdGlvbiB0byBjbGVhciB0aGUgXCJub3RBdEZpbmFsUGFnZVwiIGVycm9yIGlmIG5vdyBhdCB0aGUgZmluYWwgc3RhdGVcbiAgICAgIHRoaXMuZm9ybUdyb3VwLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcbiAgICAgIC8vIHVwZGF0ZSBmb3JtIHZhbHVlXG4gICAgICB0aGlzLnN1Ym1pdExpbmtlZENhc2VzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIENvbnRpbnVlIGJ1dHRvbiBldmVudCBtdXN0IG5vdCBiZSBhbGxvd2VkIGlmIG5vdCBpbiBmaW5hbCBwYWdlXG4gICAgICB0aGlzLmNhc2VFZGl0RGF0YVNlcnZpY2Uuc2V0TGlua2VkQ2FzZXNKb3VybmV5QXRGaW5hbFN0ZXAoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzdWJtaXRMaW5rZWRDYXNlcygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmlzTGlua2VkQ2FzZXNFdmVudFRyaWdnZXIpIHtcbiAgICAgIGNvbnN0IHVubGlua2VkQ2FzZVJlZmVyZW5lSWRzID0gdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UubGlua2VkQ2FzZXMuZmlsdGVyKGl0ZW0gPT4gaXRlbS51bmxpbmspLm1hcChpdGVtID0+IGl0ZW0uY2FzZVJlZmVyZW5jZSk7XG4gICAgICBjb25zdCBjYXNlRmllbGRWYWx1ZSA9IHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmNhc2VGaWVsZFZhbHVlO1xuICAgICAgdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuY2FzZUZpZWxkVmFsdWUgPSBjYXNlRmllbGRWYWx1ZS5maWx0ZXIoaXRlbSA9PiB1bmxpbmtlZENhc2VSZWZlcmVuZUlkcy5pbmRleE9mKGl0ZW0uaWQpID09PSAtMSk7XG4gICAgfVxuICAgIHRoaXMuZm9ybUdyb3VwLnZhbHVlLmNhc2VMaW5rcyA9IHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmNhc2VGaWVsZFZhbHVlO1xuICAgICh0aGlzLmNhc2VFZGl0Rm9ybS5jb250cm9sc1snZGF0YSddIGFzIGFueSkgPSBuZXcgVW50eXBlZEZvcm1Hcm91cCh7IGNhc2VMaW5rczogbmV3IEZvcm1Db250cm9sKHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmNhc2VGaWVsZFZhbHVlIHx8IFtdKSB9KTtcbiAgICB0aGlzLmNhc2VFZGl0RGF0YVNlcnZpY2Uuc2V0Q2FzZUVkaXRGb3JtKHRoaXMuY2FzZUVkaXRGb3JtKTtcbiAgfVxuXG4gIHB1YmxpYyBpc0F0RmluYWxQYWdlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmxpbmtlZENhc2VzUGFnZSA9PT0gdGhpcy5saW5rZWRDYXNlc1BhZ2VzLkNIRUNLX1lPVVJfQU5TV0VSUztcbiAgfVxuXG4gIHB1YmxpYyBnZXROZXh0UGFnZShsaW5rZWRDYXNlc1N0YXRlOiBMaW5rZWRDYXNlc1N0YXRlKTogbnVtYmVyIHtcbiAgICBpZiAoKHRoaXMubGlua2VkQ2FzZXNQYWdlID09PSBMaW5rZWRDYXNlc1BhZ2VzLkJFRk9SRV9ZT1VfU1RBUlQpIHx8XG4gICAgICAobGlua2VkQ2FzZXNTdGF0ZS5jdXJyZW50TGlua2VkQ2FzZXNQYWdlID09PSBMaW5rZWRDYXNlc1BhZ2VzLkNIRUNLX1lPVVJfQU5TV0VSUyAmJiBsaW5rZWRDYXNlc1N0YXRlLm5hdmlnYXRlVG9QcmV2aW91c1BhZ2UpKSB7XG4gICAgICByZXR1cm4gdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuaXNMaW5rZWRDYXNlc0V2ZW50VHJpZ2dlclxuICAgICAgICA/IExpbmtlZENhc2VzUGFnZXMuTElOS19DQVNFXG4gICAgICAgIDogTGlua2VkQ2FzZXNQYWdlcy5VTkxJTktfQ0FTRTtcbiAgICB9XG4gICAgcmV0dXJuIExpbmtlZENhc2VzUGFnZXMuQ0hFQ0tfWU9VUl9BTlNXRVJTO1xuICB9XG5cbiAgcHVibGljIGdldExpbmtlZENhc2VzKCk6IHZvaWQge1xuICAgIHRoaXMuY2FzZXNTZXJ2aWNlLmdldENhc2VWaWV3VjIodGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuY2FzZUlkKS5zdWJzY3JpYmUoKGNhc2VWaWV3OiBDYXNlVmlldykgPT4ge1xuICAgICAgY29uc3QgY2FzZVZpZXdGaWx0ZXJlZCA9IGNhc2VWaWV3LnRhYnMuZmlsdGVyKHRhYiA9PiB7XG4gICAgICAgIHJldHVybiB0YWIuZmllbGRzLnNvbWUoXG4gICAgICAgICAgKHsgZmllbGRfdHlwZSB9KSA9PiBmaWVsZF90eXBlICYmIGZpZWxkX3R5cGUuY29sbGVjdGlvbl9maWVsZF90eXBlICYmIGZpZWxkX3R5cGUuY29sbGVjdGlvbl9maWVsZF90eXBlLmlkID09PSAnQ2FzZUxpbmsnXG4gICAgICAgICk7XG4gICAgICB9KTtcbiAgICAgIGlmIChjYXNlVmlld0ZpbHRlcmVkKSB7XG4gICAgICAgIGNvbnN0IGNhc2VMaW5rRmllbGRWYWx1ZSA9IGNhc2VWaWV3RmlsdGVyZWQubWFwKGZpbHRlcmVkID0+XG4gICAgICAgICAgZmlsdGVyZWQuZmllbGRzPy5sZW5ndGggPiAwICYmIGZpbHRlcmVkLmZpZWxkcy5maWx0ZXIoZmllbGQgPT4gZmllbGQuaWQgPT09ICdjYXNlTGlua3MnKVswXS52YWx1ZVxuICAgICAgICApO1xuICAgICAgICB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5jYXNlRmllbGRWYWx1ZSA9IGNhc2VMaW5rRmllbGRWYWx1ZS5sZW5ndGggPyBjYXNlTGlua0ZpZWxkVmFsdWVbMF0gOiBbXTtcbiAgICAgICAgdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuZ2V0QWxsTGlua2VkQ2FzZUluZm9ybWF0aW9uKCk7XG4gICAgICB9XG4gICAgICAvLyBJbml0aWFsaXNlIHRoZSBmaXJzdCBwYWdlIHRvIGRpc3BsYXlcbiAgICAgIHRoaXMubGlua2VkQ2FzZXNQYWdlID0gdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuaXNMaW5rZWRDYXNlc0V2ZW50VHJpZ2dlciB8fFxuICAgICAgICAodGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuY2FzZUZpZWxkVmFsdWUgJiYgdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuY2FzZUZpZWxkVmFsdWUubGVuZ3RoID4gMFxuICAgICAgICAgICYmICF0aGlzLmxpbmtlZENhc2VzU2VydmljZS5zZXJ2ZXJMaW5rZWRBcGlFcnJvcilcbiAgICAgICAgPyBMaW5rZWRDYXNlc1BhZ2VzLkJFRk9SRV9ZT1VfU1RBUlRcbiAgICAgICAgOiBMaW5rZWRDYXNlc1BhZ2VzLk5PX0xJTktFRF9DQVNFUztcbiAgICB9KTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgZ292dWstIS1tYXJnaW4tYm90dG9tLTJcIiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiPlxuICA8ZGl2IGNsYXNzPVwiZ292dWstZm9ybS1ncm91cFwiIFtuZ1N3aXRjaF09XCJsaW5rZWRDYXNlc1BhZ2VcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCJsaW5rZWRDYXNlc1BhZ2VzLkJFRk9SRV9ZT1VfU1RBUlRcIj5cbiAgICAgIDxjY2QtbGlua2VkLWNhc2VzLWJlZm9yZS15b3Utc3RhcnRcbiAgICAgICAgKGxpbmtlZENhc2VzU3RhdGVFbWl0dGVyKT1cIm9uTGlua2VkQ2FzZXNTdGF0ZUVtaXR0ZWQoJGV2ZW50KVwiPjwvY2NkLWxpbmtlZC1jYXNlcy1iZWZvcmUteW91LXN0YXJ0PlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cImxpbmtlZENhc2VzUGFnZXMuTk9fTElOS0VEX0NBU0VTXCI+XG4gICAgICA8Y2NkLW5vLWxpbmtlZC1jYXNlc1xuICAgICAgICAobGlua2VkQ2FzZXNTdGF0ZUVtaXR0ZXIpPVwib25MaW5rZWRDYXNlc1N0YXRlRW1pdHRlZCgkZXZlbnQpXCI+PC9jY2Qtbm8tbGlua2VkLWNhc2VzPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cImxpbmtlZENhc2VzUGFnZXMuTElOS19DQVNFXCI+XG4gICAgICA8Y2NkLWxpbmstY2FzZXNcbiAgICAgICAgKGxpbmtlZENhc2VzU3RhdGVFbWl0dGVyKT1cIm9uTGlua2VkQ2FzZXNTdGF0ZUVtaXR0ZWQoJGV2ZW50KVwiPjwvY2NkLWxpbmstY2FzZXM+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwibGlua2VkQ2FzZXNQYWdlcy5VTkxJTktfQ0FTRVwiPlxuICAgICAgPGNjZC11bmxpbmstY2FzZXNcbiAgICAgICAgKGxpbmtlZENhc2VzU3RhdGVFbWl0dGVyKT1cIm9uTGlua2VkQ2FzZXNTdGF0ZUVtaXR0ZWQoJGV2ZW50KVwiPjwvY2NkLXVubGluay1jYXNlcz5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCJsaW5rZWRDYXNlc1BhZ2VzLkNIRUNLX1lPVVJfQU5TV0VSU1wiPlxuICAgICAgPGNjZC1saW5rZWQtY2FzZXMtY2hlY2steW91ci1hbnN3ZXJzXG4gICAgICAgIChsaW5rZWRDYXNlc1N0YXRlRW1pdHRlcik9XCJvbkxpbmtlZENhc2VzU3RhdGVFbWl0dGVkKCRldmVudClcIj48L2NjZC1saW5rZWQtY2FzZXMtY2hlY2steW91ci1hbnN3ZXJzPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
216
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3JpdGUtbGlua2VkLWNhc2VzLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NjZC1jYXNlLXVpLXRvb2xraXQvc3JjL2xpYi9zaGFyZWQvY29tcG9uZW50cy9wYWxldHRlL2xpbmtlZC1jYXNlcy93cml0ZS1saW5rZWQtY2FzZXMtZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvbGlua2VkLWNhc2VzL3dyaXRlLWxpbmtlZC1jYXNlcy1maWVsZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzNELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBR3RFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFNUQsT0FBTyxFQUE0Qix3QkFBd0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUMvRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxZQUFZLENBQUM7Ozs7Ozs7OztJQ1Q1Qyw2QkFBZ0U7SUFDOUQsNERBQ2dFO0lBQTlELHlQQUEyQixlQUFBLHdDQUFpQyxDQUFBLElBQUM7SUFBQyxpQkFBb0M7SUFDdEcsMEJBQWU7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QUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQ2hHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQywyQkFBMkIsRUFBRSxDQUFDO2FBQ3ZEO1lBQ0QsdUNBQXVDO1lBQ3ZDLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLHlCQUF5QjtnQkFDdEUsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsTUFBTSxHQUFHLENBQUM7dUJBQ3ZGLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLG9CQUFvQixDQUFDO2dCQUNuRCxDQUFDLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWdCO2dCQUNuQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDO1FBQ3ZDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7NEdBbkpVLDhCQUE4QjtpRkFBOUIsOEJBQThCO1FDakIzQyw4QkFBd0UsYUFBQTtRQUVwRSxpR0FHZTtRQUNmLGlHQUdlO1FBQ2YsaUdBR2U7UUFDZixpR0FHZTtRQUNmLGlHQUdlO1FBQ2pCLGlCQUFNLEVBQUE7O1FBdEJ3Qyx5Q0FBdUI7UUFDdkMsZUFBNEI7UUFBNUIsOENBQTRCO1FBQ3pDLGVBQStDO1FBQS9DLG9FQUErQztRQUkvQyxlQUE4QztRQUE5QyxtRUFBOEM7UUFJOUMsZUFBd0M7UUFBeEMsNkRBQXdDO1FBSXhDLGVBQTBDO1FBQTFDLCtEQUEwQztRQUkxQyxlQUFpRDtRQUFqRCxzRUFBaUQ7O3VGRER2RCw4QkFBOEI7Y0FKMUMsU0FBUzsyQkFDRSw4QkFBOEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEFic3RyYWN0QXBwQ29uZmlnIH0gZnJvbSAnLi4vLi4vLi4vLi4vYXBwLmNvbmZpZyc7XG5pbXBvcnQgeyBDYXNlRWRpdERhdGFTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY29tbW9ucy9jYXNlLWVkaXQtZGF0YSc7XG5pbXBvcnQgeyBFcnJvck1lc3NhZ2UgfSBmcm9tICcuLi8uLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgQ2FzZVZpZXcgfSBmcm9tICcuLi8uLi8uLi9kb21haW4vY2FzZS12aWV3JztcbmltcG9ydCB7IENvbW1vbkRhdGFTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvY29tbW9uLWRhdGEtc2VydmljZS9jb21tb24tZGF0YS1zZXJ2aWNlJztcbmltcG9ydCB7IENhc2VzU2VydmljZSB9IGZyb20gJy4uLy4uL2Nhc2UtZWRpdG9yL3NlcnZpY2VzL2Nhc2VzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQWJzdHJhY3RGaWVsZFdyaXRlQ29tcG9uZW50IH0gZnJvbSAnLi4vYmFzZS1maWVsZCc7XG5pbXBvcnQgeyBDYXNlTGluaywgTGlua2VkQ2FzZXNTdGF0ZSB9IGZyb20gJy4vZG9tYWluJztcbmltcG9ydCB7IExpbmtlZENhc2VzRXJyb3JNZXNzYWdlcywgTGlua2VkQ2FzZXNFdmVudFRyaWdnZXJzLCBMaW5rZWRDYXNlc1BhZ2VzIH0gZnJvbSAnLi9lbnVtcyc7XG5pbXBvcnQgeyBMaW5rZWRDYXNlc1NlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY2NkLXdyaXRlLWxpbmtlZC1jYXNlcy1maWVsZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi93cml0ZS1saW5rZWQtY2FzZXMtZmllbGQuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFdyaXRlTGlua2VkQ2FzZXNGaWVsZENvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0RmllbGRXcml0ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG4gIHB1YmxpYyBjYXNlRWRpdEZvcm06IEZvcm1Hcm91cDtcbiAgcHVibGljIGNhc2VEZXRhaWxzOiBDYXNlVmlldztcbiAgcHVibGljIGxpbmtlZENhc2VzUGFnZTogbnVtYmVyO1xuICBwdWJsaWMgbGlua2VkQ2FzZXNQYWdlcyA9IExpbmtlZENhc2VzUGFnZXM7XG4gIHB1YmxpYyBsaW5rZWRDYXNlc0V2ZW50VHJpZ2dlcnMgPSBMaW5rZWRDYXNlc0V2ZW50VHJpZ2dlcnM7XG4gIHB1YmxpYyBsaW5rZWRDYXNlczogQ2FzZUxpbmtbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXBwQ29uZmlnOiBBYnN0cmFjdEFwcENvbmZpZyxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbW1vbkRhdGFTZXJ2aWNlOiBDb21tb25EYXRhU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNhc2VzU2VydmljZTogQ2FzZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbGlua2VkQ2FzZXNTZXJ2aWNlOiBMaW5rZWRDYXNlc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjYXNlRWRpdERhdGFTZXJ2aWNlOiBDYXNlRWRpdERhdGFTZXJ2aWNlKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvLyBUaGlzIGlzIHJlcXVpcmVkIHRvIGVuYWJsZSBDb250aW51ZSBidXR0b24gdmFsaWRhdGlvblxuICAgIC8vIENvbnRpbnVlIGJ1dHRvbiBzaG91bGQgYmUgZW5hYmxlZCBvbmx5IGF0IGNoZWNrIHlvdXIgYW5zd2VycyBwYWdlXG4gICAgdGhpcy5jYXNlRWRpdERhdGFTZXJ2aWNlLnNldExpbmtlZENhc2VzSm91cm5leUF0RmluYWxTdGVwKGZhbHNlKTtcbiAgICAvLyBDbGVhciB2YWxpZGF0aW9uIGVycm9yc1xuICAgIHRoaXMuY2FzZUVkaXREYXRhU2VydmljZS5jbGVhckZvcm1WYWxpZGF0aW9uRXJyb3JzKCk7XG4gICAgLy8gR2V0IGxpbmtlZCBjYXNlIHJlYXNvbnMgZnJvbSByZWYgZGF0YVxuICAgIHRoaXMuZ2V0TGlua2VkQ2FzZVJlYXNvbnMoKTtcbiAgICB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5lZGl0TW9kZSA9IGZhbHNlO1xuICAgIHRoaXMuY2FzZUVkaXREYXRhU2VydmljZS5jYXNlRGV0YWlscyQuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IGNhc2VEZXRhaWxzID0+IHRoaXMuaW5pdGlhbGlzZUNhc2VEZXRhaWxzKGNhc2VEZXRhaWxzKVxuICAgIH0pO1xuICAgIHRoaXMuY2FzZUVkaXREYXRhU2VydmljZS5jYXNlRXZlbnRUcmlnZ2VyTmFtZSQuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IG5hbWUgPT4gdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuaXNMaW5rZWRDYXNlc0V2ZW50VHJpZ2dlciA9IChuYW1lID09PSBMaW5rZWRDYXNlc0V2ZW50VHJpZ2dlcnMuTElOS19DQVNFUylcbiAgICB9KTtcbiAgICB0aGlzLmNhc2VFZGl0RGF0YVNlcnZpY2UuY2FzZUVkaXRGb3JtJC5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogZWRpdEZvcm0gPT4gdGhpcy5jYXNlRWRpdEZvcm0gPSBlZGl0Rm9ybVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGluaXRpYWxpc2VDYXNlRGV0YWlscyhjYXNlRGV0YWlsczogQ2FzZVZpZXcpOiB2b2lkIHtcbiAgICBpZiAoY2FzZURldGFpbHMpIHtcbiAgICAgIHRoaXMuY2FzZURldGFpbHMgPSBjYXNlRGV0YWlscztcbiAgICAgIHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmNhc2VEZXRhaWxzID0gY2FzZURldGFpbHM7XG4gICAgICB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5jYXNlSWQgPSBjYXNlRGV0YWlscy5jYXNlX2lkO1xuICAgICAgdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuY2FzZU5hbWUgPSB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5nZXRDYXNlTmFtZShjYXNlRGV0YWlscyk7XG4gICAgICB0aGlzLmdldExpbmtlZENhc2VzKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBsZXQgbGFiZWxGaWVsZCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoJ2dvdnVrLWhlYWRpbmctbCcpO1xuICAgIGlmIChsYWJlbEZpZWxkICYmIGxhYmVsRmllbGQubGVuZ3RoKSB7XG4gICAgICBsYWJlbEZpZWxkWzBdLnJlcGxhY2VXaXRoKCcnKTtcbiAgICB9XG4gICAgbGFiZWxGaWVsZCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoJ2hlYWRpbmctaDInKTtcbiAgICBpZiAobGFiZWxGaWVsZCAmJiBsYWJlbEZpZWxkLmxlbmd0aCkge1xuICAgICAgbGFiZWxGaWVsZFswXS5yZXBsYWNlV2l0aCgnJyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uTGlua2VkQ2FzZXNTdGF0ZUVtaXR0ZWQobGlua2VkQ2FzZXNTdGF0ZTogTGlua2VkQ2FzZXNTdGF0ZSk6IHZvaWQge1xuICAgIC8vIENsZWFyIHZhbGlkYXRpb24gZXJyb3JzXG4gICAgdGhpcy5jYXNlRWRpdERhdGFTZXJ2aWNlLmNsZWFyRm9ybVZhbGlkYXRpb25FcnJvcnMoKTtcblxuICAgIGlmIChsaW5rZWRDYXNlc1N0YXRlLm5hdmlnYXRlVG9OZXh0UGFnZSkge1xuICAgICAgdGhpcy5saW5rZWRDYXNlc1BhZ2UgPSB0aGlzLmdldE5leHRQYWdlKGxpbmtlZENhc2VzU3RhdGUpO1xuICAgICAgdGhpcy5wcm9jZWVkVG9OZXh0UGFnZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAobGlua2VkQ2FzZXNTdGF0ZS5lcnJvck1lc3NhZ2VzICYmIGxpbmtlZENhc2VzU3RhdGUuZXJyb3JNZXNzYWdlcy5sZW5ndGgpIHtcbiAgICAgICAgbGlua2VkQ2FzZXNTdGF0ZS5lcnJvck1lc3NhZ2VzLmZvckVhY2goKGVycm9yTWVzc2FnZSwgaW5kZXgpID0+IHtcbiAgICAgICAgICB0aGlzLmNhc2VFZGl0RGF0YVNlcnZpY2UuYWRkRm9ybVZhbGlkYXRpb25FcnJvcih7IGlkOiBlcnJvck1lc3NhZ2UuZmllbGRJZCwgbWVzc2FnZTogZXJyb3JNZXNzYWdlLmRlc2NyaXB0aW9uIH0pO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0TGlua2VkQ2FzZVJlYXNvbnMoKTogdm9pZCB7XG4gICAgY29uc3QgcmVhc29uQ29kZUFQSXVybCA9IGAke3RoaXMuYXBwQ29uZmlnLmdldFJEQ29tbW9uRGF0YUFwaVVybCgpfS9sb3YvY2F0ZWdvcmllcy9DYXNlTGlua2luZ1JlYXNvbkNvZGVgO1xuICAgIHRoaXMuY29tbW9uRGF0YVNlcnZpY2UuZ2V0UmVmRGF0YShyZWFzb25Db2RlQVBJdXJsKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogcmVhc29ucyA9PiB7XG4gICAgICAgIC8vIFNvcnQgaW4gYXNjZW5kaW5nIG9yZGVyXG4gICAgICAgIGNvbnN0IGxpbmtDYXNlUmVhc29ucyA9IHJlYXNvbnMubGlzdF9vZl92YWx1ZXMuc29ydCgoYSwgYikgPT4gKGEudmFsdWVfZW4gPiBiLnZhbHVlX2VuKSA/IDEgOiAtMSk7XG4gICAgICAgIC8vIE1vdmUgT3RoZXIgb3B0aW9uIHRvIHRoZSBlbmQgb2YgdGhlIGxpc3RcbiAgICAgICAgdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UubGlua0Nhc2VSZWFzb25zID0gbGlua0Nhc2VSZWFzb25zPy5maWx0ZXIocmVhc29uID0+IHJlYXNvbi52YWx1ZV9lbiAhPT0gJ090aGVyJyk7XG4gICAgICAgIHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmxpbmtDYXNlUmVhc29ucy5wdXNoKGxpbmtDYXNlUmVhc29ucz8uZmluZChyZWFzb24gPT4gcmVhc29uLnZhbHVlX2VuID09PSAnT3RoZXInKSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgcHJvY2VlZFRvTmV4dFBhZ2UoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNBdEZpbmFsUGFnZSgpKSB7XG4gICAgICAvLyBDb250aW51ZSBidXR0b24gZXZlbnQgbXVzdCBiZSBhbGxvd2VkIGluIGZpbmFsIHBhZ2VcbiAgICAgIHRoaXMuY2FzZUVkaXREYXRhU2VydmljZS5zZXRMaW5rZWRDYXNlc0pvdXJuZXlBdEZpbmFsU3RlcCh0cnVlKTtcbiAgICAgIC8vIFRyaWdnZXIgdmFsaWRhdGlvbiB0byBjbGVhciB0aGUgXCJub3RBdEZpbmFsUGFnZVwiIGVycm9yIGlmIG5vdyBhdCB0aGUgZmluYWwgc3RhdGVcbiAgICAgIHRoaXMuZm9ybUdyb3VwLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcbiAgICAgIC8vIHVwZGF0ZSBmb3JtIHZhbHVlXG4gICAgICB0aGlzLnN1Ym1pdExpbmtlZENhc2VzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIENvbnRpbnVlIGJ1dHRvbiBldmVudCBtdXN0IG5vdCBiZSBhbGxvd2VkIGlmIG5vdCBpbiBmaW5hbCBwYWdlXG4gICAgICB0aGlzLmNhc2VFZGl0RGF0YVNlcnZpY2Uuc2V0TGlua2VkQ2FzZXNKb3VybmV5QXRGaW5hbFN0ZXAoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzdWJtaXRMaW5rZWRDYXNlcygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmlzTGlua2VkQ2FzZXNFdmVudFRyaWdnZXIpIHtcbiAgICAgIGNvbnN0IHVubGlua2VkQ2FzZVJlZmVyZW5lSWRzID0gdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UubGlua2VkQ2FzZXMuZmlsdGVyKGl0ZW0gPT4gaXRlbS51bmxpbmspLm1hcChpdGVtID0+IGl0ZW0uY2FzZVJlZmVyZW5jZSk7XG4gICAgICBjb25zdCBjYXNlRmllbGRWYWx1ZSA9IHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmNhc2VGaWVsZFZhbHVlO1xuICAgICAgdGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuY2FzZUZpZWxkVmFsdWUgPSBjYXNlRmllbGRWYWx1ZS5maWx0ZXIoaXRlbSA9PiB1bmxpbmtlZENhc2VSZWZlcmVuZUlkcy5pbmRleE9mKGl0ZW0uaWQpID09PSAtMSk7XG4gICAgfVxuICAgIHRoaXMuZm9ybUdyb3VwLnZhbHVlLmNhc2VMaW5rcyA9IHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmNhc2VGaWVsZFZhbHVlO1xuICAgICh0aGlzLmNhc2VFZGl0Rm9ybS5jb250cm9sc1snZGF0YSddIGFzIGFueSkgPSBuZXcgRm9ybUdyb3VwKHsgY2FzZUxpbmtzOiBuZXcgRm9ybUNvbnRyb2wodGhpcy5saW5rZWRDYXNlc1NlcnZpY2UuY2FzZUZpZWxkVmFsdWUgfHwgW10pIH0pO1xuICAgIHRoaXMuY2FzZUVkaXREYXRhU2VydmljZS5zZXRDYXNlRWRpdEZvcm0odGhpcy5jYXNlRWRpdEZvcm0pO1xuICB9XG5cbiAgcHVibGljIGlzQXRGaW5hbFBhZ2UoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMubGlua2VkQ2FzZXNQYWdlID09PSB0aGlzLmxpbmtlZENhc2VzUGFnZXMuQ0hFQ0tfWU9VUl9BTlNXRVJTO1xuICB9XG5cbiAgcHVibGljIGdldE5leHRQYWdlKGxpbmtlZENhc2VzU3RhdGU6IExpbmtlZENhc2VzU3RhdGUpOiBudW1iZXIge1xuICAgIGlmICgodGhpcy5saW5rZWRDYXNlc1BhZ2UgPT09IExpbmtlZENhc2VzUGFnZXMuQkVGT1JFX1lPVV9TVEFSVCkgfHxcbiAgICAgIChsaW5rZWRDYXNlc1N0YXRlLmN1cnJlbnRMaW5rZWRDYXNlc1BhZ2UgPT09IExpbmtlZENhc2VzUGFnZXMuQ0hFQ0tfWU9VUl9BTlNXRVJTICYmIGxpbmtlZENhc2VzU3RhdGUubmF2aWdhdGVUb1ByZXZpb3VzUGFnZSkpIHtcbiAgICAgIHJldHVybiB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5pc0xpbmtlZENhc2VzRXZlbnRUcmlnZ2VyXG4gICAgICAgID8gTGlua2VkQ2FzZXNQYWdlcy5MSU5LX0NBU0VcbiAgICAgICAgOiBMaW5rZWRDYXNlc1BhZ2VzLlVOTElOS19DQVNFO1xuICAgIH1cbiAgICByZXR1cm4gTGlua2VkQ2FzZXNQYWdlcy5DSEVDS19ZT1VSX0FOU1dFUlM7XG4gIH1cblxuICBwdWJsaWMgZ2V0TGlua2VkQ2FzZXMoKTogdm9pZCB7XG4gICAgdGhpcy5jYXNlc1NlcnZpY2UuZ2V0Q2FzZVZpZXdWMih0aGlzLmxpbmtlZENhc2VzU2VydmljZS5jYXNlSWQpLnN1YnNjcmliZSgoY2FzZVZpZXc6IENhc2VWaWV3KSA9PiB7XG4gICAgICBjb25zdCBjYXNlVmlld0ZpbHRlcmVkID0gY2FzZVZpZXcudGFicy5maWx0ZXIodGFiID0+IHtcbiAgICAgICAgcmV0dXJuIHRhYi5maWVsZHMuc29tZShcbiAgICAgICAgICAoeyBmaWVsZF90eXBlIH0pID0+IGZpZWxkX3R5cGUgJiYgZmllbGRfdHlwZS5jb2xsZWN0aW9uX2ZpZWxkX3R5cGUgJiYgZmllbGRfdHlwZS5jb2xsZWN0aW9uX2ZpZWxkX3R5cGUuaWQgPT09ICdDYXNlTGluaydcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuICAgICAgaWYgKGNhc2VWaWV3RmlsdGVyZWQpIHtcbiAgICAgICAgY29uc3QgY2FzZUxpbmtGaWVsZFZhbHVlID0gY2FzZVZpZXdGaWx0ZXJlZC5tYXAoZmlsdGVyZWQgPT5cbiAgICAgICAgICBmaWx0ZXJlZC5maWVsZHM/Lmxlbmd0aCA+IDAgJiYgZmlsdGVyZWQuZmllbGRzLmZpbHRlcihmaWVsZCA9PiBmaWVsZC5pZCA9PT0gJ2Nhc2VMaW5rcycpWzBdLnZhbHVlXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLmNhc2VGaWVsZFZhbHVlID0gY2FzZUxpbmtGaWVsZFZhbHVlLmxlbmd0aCA/IGNhc2VMaW5rRmllbGRWYWx1ZVswXSA6IFtdO1xuICAgICAgICB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5nZXRBbGxMaW5rZWRDYXNlSW5mb3JtYXRpb24oKTtcbiAgICAgIH1cbiAgICAgIC8vIEluaXRpYWxpc2UgdGhlIGZpcnN0IHBhZ2UgdG8gZGlzcGxheVxuICAgICAgdGhpcy5saW5rZWRDYXNlc1BhZ2UgPSB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5pc0xpbmtlZENhc2VzRXZlbnRUcmlnZ2VyIHx8XG4gICAgICAgICh0aGlzLmxpbmtlZENhc2VzU2VydmljZS5jYXNlRmllbGRWYWx1ZSAmJiB0aGlzLmxpbmtlZENhc2VzU2VydmljZS5jYXNlRmllbGRWYWx1ZS5sZW5ndGggPiAwXG4gICAgICAgICAgJiYgIXRoaXMubGlua2VkQ2FzZXNTZXJ2aWNlLnNlcnZlckxpbmtlZEFwaUVycm9yKVxuICAgICAgICA/IExpbmtlZENhc2VzUGFnZXMuQkVGT1JFX1lPVV9TVEFSVFxuICAgICAgICA6IExpbmtlZENhc2VzUGFnZXMuTk9fTElOS0VEX0NBU0VTO1xuICAgIH0pO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBnb3Z1ay0hLW1hcmdpbi1ib3R0b20tMlwiIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCI+XG4gIDxkaXYgY2xhc3M9XCJnb3Z1ay1mb3JtLWdyb3VwXCIgW25nU3dpdGNoXT1cImxpbmtlZENhc2VzUGFnZVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cImxpbmtlZENhc2VzUGFnZXMuQkVGT1JFX1lPVV9TVEFSVFwiPlxuICAgICAgPGNjZC1saW5rZWQtY2FzZXMtYmVmb3JlLXlvdS1zdGFydFxuICAgICAgICAobGlua2VkQ2FzZXNTdGF0ZUVtaXR0ZXIpPVwib25MaW5rZWRDYXNlc1N0YXRlRW1pdHRlZCgkZXZlbnQpXCI+PC9jY2QtbGlua2VkLWNhc2VzLWJlZm9yZS15b3Utc3RhcnQ+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwibGlua2VkQ2FzZXNQYWdlcy5OT19MSU5LRURfQ0FTRVNcIj5cbiAgICAgIDxjY2Qtbm8tbGlua2VkLWNhc2VzXG4gICAgICAgIChsaW5rZWRDYXNlc1N0YXRlRW1pdHRlcik9XCJvbkxpbmtlZENhc2VzU3RhdGVFbWl0dGVkKCRldmVudClcIj48L2NjZC1uby1saW5rZWQtY2FzZXM+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwibGlua2VkQ2FzZXNQYWdlcy5MSU5LX0NBU0VcIj5cbiAgICAgIDxjY2QtbGluay1jYXNlc1xuICAgICAgICAobGlua2VkQ2FzZXNTdGF0ZUVtaXR0ZXIpPVwib25MaW5rZWRDYXNlc1N0YXRlRW1pdHRlZCgkZXZlbnQpXCI+PC9jY2QtbGluay1jYXNlcz5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCJsaW5rZWRDYXNlc1BhZ2VzLlVOTElOS19DQVNFXCI+XG4gICAgICA8Y2NkLXVubGluay1jYXNlc1xuICAgICAgICAobGlua2VkQ2FzZXNTdGF0ZUVtaXR0ZXIpPVwib25MaW5rZWRDYXNlc1N0YXRlRW1pdHRlZCgkZXZlbnQpXCI+PC9jY2QtdW5saW5rLWNhc2VzPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cImxpbmtlZENhc2VzUGFnZXMuQ0hFQ0tfWU9VUl9BTlNXRVJTXCI+XG4gICAgICA8Y2NkLWxpbmtlZC1jYXNlcy1jaGVjay15b3VyLWFuc3dlcnNcbiAgICAgICAgKGxpbmtlZENhc2VzU3RhdGVFbWl0dGVyKT1cIm9uTGlua2VkQ2FzZXNTdGF0ZUVtaXR0ZWQoJGV2ZW50KVwiPjwvY2NkLWxpbmtlZC1jYXNlcy1jaGVjay15b3VyLWFuc3dlcnM+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -1,5 +1,5 @@
1
1
  import { Component } from '@angular/core';
2
- import { FormArray, FormControl, UntypedFormGroup } from '@angular/forms';
2
+ import { FormArray, FormControl, FormGroup } from '@angular/forms';
3
3
  import { AbstractFieldWriteComponent } from '../base-field/abstract-field-write.component';
4
4
  import * as i0 from "@angular/core";
5
5
  export class WriteOrderSummaryFieldComponent extends AbstractFieldWriteComponent {
@@ -9,7 +9,7 @@ export class WriteOrderSummaryFieldComponent extends AbstractFieldWriteComponent
9
9
  and has to be built manually.
10
10
  */
11
11
  ngOnInit() {
12
- const orderSummaryGroup = this.registerControl(new UntypedFormGroup({}), true);
12
+ const orderSummaryGroup = this.registerControl(new FormGroup({}), true);
13
13
  const paymentReference = new FormControl(this.caseField.value.PaymentReference);
14
14
  orderSummaryGroup.addControl('PaymentReference', paymentReference);
15
15
  const paymentTotal = new FormControl(this.caseField.value.PaymentTotal);
@@ -21,12 +21,12 @@ export class WriteOrderSummaryFieldComponent extends AbstractFieldWriteComponent
21
21
  orderSummaryGroup.addControl('Fees', feesArray);
22
22
  }
23
23
  getFeeValue(feeValue) {
24
- const feeGroup = new UntypedFormGroup({});
24
+ const feeGroup = new FormGroup({});
25
25
  feeGroup.addControl('FeeCode', new FormControl(feeValue.FeeCode));
26
26
  feeGroup.addControl('FeeAmount', new FormControl(feeValue.FeeAmount));
27
27
  feeGroup.addControl('FeeDescription', new FormControl(feeValue.FeeDescription));
28
28
  feeGroup.addControl('FeeVersion', new FormControl(feeValue.FeeVersion));
29
- const feeValueGroup = new UntypedFormGroup({});
29
+ const feeValueGroup = new FormGroup({});
30
30
  feeValueGroup.addControl('value', feeGroup);
31
31
  return feeValueGroup;
32
32
  }
@@ -41,4 +41,4 @@ WriteOrderSummaryFieldComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ t
41
41
  type: Component,
42
42
  args: [{ selector: 'ccd-write-order-summary-field', template: "<ccd-read-order-summary-field [caseField]=\"caseField\"></ccd-read-order-summary-field>\n" }]
43
43
  }], null, null); })();
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3JpdGUtb3JkZXItc3VtbWFyeS1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvcGFsZXR0ZS9vcmRlci1zdW1tYXJ5L3dyaXRlLW9yZGVyLXN1bW1hcnktZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvb3JkZXItc3VtbWFyeS93cml0ZS1vcmRlci1zdW1tYXJ5LWZpZWxkLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDOztBQU0zRixNQUFNLE9BQU8sK0JBQWdDLFNBQVEsMkJBQTJCO0lBRTlFOzs7O01BSUU7SUFDSyxRQUFRO1FBQ2IsTUFBTSxpQkFBaUIsR0FBcUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLGdCQUFnQixDQUFDLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBcUIsQ0FBQztRQUNySCxNQUFNLGdCQUFnQixHQUFnQixJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzdGLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxrQkFBa0IsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ25FLE1BQU0sWUFBWSxHQUFnQixJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNyRixpQkFBaUIsQ0FBQyxVQUFVLENBQUMsY0FBYyxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQzNELE1BQU0sU0FBUyxHQUFjLElBQUksU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUN4QyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDOUMsQ0FBQyxDQUFDLENBQUM7UUFDSCxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFTyxXQUFXLENBQUMsUUFBUTtRQUMxQixNQUFNLFFBQVEsR0FBRyxJQUFJLGdCQUFnQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFFLElBQUksV0FBVyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQ2xFLFFBQVEsQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLElBQUksV0FBVyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1FBQ3RFLFFBQVEsQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxXQUFXLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7UUFDaEYsUUFBUSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsSUFBSSxXQUFXLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFDeEUsTUFBTSxhQUFhLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMvQyxhQUFhLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztRQUM1QyxPQUFPLGFBQWEsQ0FBQztJQUN2QixDQUFDOzttVEE3QlUsK0JBQStCLFNBQS9CLCtCQUErQjtrRkFBL0IsK0JBQStCO1FDUjVDLGtEQUFxRjs7UUFBdkQseUNBQXVCOzt1RkRReEMsK0JBQStCO2NBSjNDLFNBQVM7MkJBQ0UsK0JBQStCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1BcnJheSwgRm9ybUNvbnRyb2wsIFVudHlwZWRGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBYnN0cmFjdEZpZWxkV3JpdGVDb21wb25lbnQgfSBmcm9tICcuLi9iYXNlLWZpZWxkL2Fic3RyYWN0LWZpZWxkLXdyaXRlLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NjZC13cml0ZS1vcmRlci1zdW1tYXJ5LWZpZWxkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3dyaXRlLW9yZGVyLXN1bW1hcnktZmllbGQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgV3JpdGVPcmRlclN1bW1hcnlGaWVsZENvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0RmllbGRXcml0ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgLypcbiAgICBUaGVzZSBhcmUgaW1wbGVtZW50ZWQgbWFudWFsbHkgcmF0aGVyIHRoYW4gdXNpbmcgV3JpdGVDb21wbGV4RmllbGRDb21wb25lbnQuIFRoZSByZWFzb25cbiAgICBpcyBiZWNhdXNlIHRoZSB2aWV3IGlzIHJlYWRvbmx5IHRoZSB0cmVlIG9mIGZvcm0gY29udHJvbHMgaXMgbm90IGJlaW5nIGJ1aWx0IGF1dG9tYXRpY2FsbHlcbiAgICBhbmQgaGFzIHRvIGJlIGJ1aWx0IG1hbnVhbGx5LlxuICAqL1xuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgY29uc3Qgb3JkZXJTdW1tYXJ5R3JvdXA6IFVudHlwZWRGb3JtR3JvdXAgPSB0aGlzLnJlZ2lzdGVyQ29udHJvbChuZXcgVW50eXBlZEZvcm1Hcm91cCh7fSksIHRydWUpIGFzIFVudHlwZWRGb3JtR3JvdXA7XG4gICAgY29uc3QgcGF5bWVudFJlZmVyZW5jZTogRm9ybUNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2wodGhpcy5jYXNlRmllbGQudmFsdWUuUGF5bWVudFJlZmVyZW5jZSk7XG4gICAgb3JkZXJTdW1tYXJ5R3JvdXAuYWRkQ29udHJvbCgnUGF5bWVudFJlZmVyZW5jZScsIHBheW1lbnRSZWZlcmVuY2UpO1xuICAgIGNvbnN0IHBheW1lbnRUb3RhbDogRm9ybUNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2wodGhpcy5jYXNlRmllbGQudmFsdWUuUGF5bWVudFRvdGFsKTtcbiAgICBvcmRlclN1bW1hcnlHcm91cC5hZGRDb250cm9sKCdQYXltZW50VG90YWwnLCBwYXltZW50VG90YWwpO1xuICAgIGNvbnN0IGZlZXNBcnJheTogRm9ybUFycmF5ID0gbmV3IEZvcm1BcnJheShbXSk7XG4gICAgdGhpcy5jYXNlRmllbGQudmFsdWUuRmVlcy5mb3JFYWNoKChmZWUpID0+IHtcbiAgICAgIGZlZXNBcnJheS5wdXNoKHRoaXMuZ2V0RmVlVmFsdWUoZmVlLnZhbHVlKSk7XG4gICAgfSk7XG4gICAgb3JkZXJTdW1tYXJ5R3JvdXAuYWRkQ29udHJvbCgnRmVlcycsIGZlZXNBcnJheSk7XG4gIH1cblxuICBwcml2YXRlIGdldEZlZVZhbHVlKGZlZVZhbHVlKTogVW50eXBlZEZvcm1Hcm91cCB7XG4gICAgY29uc3QgZmVlR3JvdXAgPSBuZXcgVW50eXBlZEZvcm1Hcm91cCh7fSk7XG4gICAgZmVlR3JvdXAuYWRkQ29udHJvbCgnRmVlQ29kZScsIG5ldyBGb3JtQ29udHJvbChmZWVWYWx1ZS5GZWVDb2RlKSk7XG4gICAgZmVlR3JvdXAuYWRkQ29udHJvbCgnRmVlQW1vdW50JywgbmV3IEZvcm1Db250cm9sKGZlZVZhbHVlLkZlZUFtb3VudCkpO1xuICAgIGZlZUdyb3VwLmFkZENvbnRyb2woJ0ZlZURlc2NyaXB0aW9uJywgbmV3IEZvcm1Db250cm9sKGZlZVZhbHVlLkZlZURlc2NyaXB0aW9uKSk7XG4gICAgZmVlR3JvdXAuYWRkQ29udHJvbCgnRmVlVmVyc2lvbicsIG5ldyBGb3JtQ29udHJvbChmZWVWYWx1ZS5GZWVWZXJzaW9uKSk7XG4gICAgY29uc3QgZmVlVmFsdWVHcm91cCA9IG5ldyBVbnR5cGVkRm9ybUdyb3VwKHt9KTtcbiAgICBmZWVWYWx1ZUdyb3VwLmFkZENvbnRyb2woJ3ZhbHVlJywgZmVlR3JvdXApO1xuICAgIHJldHVybiBmZWVWYWx1ZUdyb3VwO1xuICB9XG5cbn1cbiIsIjxjY2QtcmVhZC1vcmRlci1zdW1tYXJ5LWZpZWxkIFtjYXNlRmllbGRdPVwiY2FzZUZpZWxkXCI+PC9jY2QtcmVhZC1vcmRlci1zdW1tYXJ5LWZpZWxkPlxuIl19
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3JpdGUtb3JkZXItc3VtbWFyeS1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jY2QtY2FzZS11aS10b29sa2l0L3NyYy9saWIvc2hhcmVkL2NvbXBvbmVudHMvcGFsZXR0ZS9vcmRlci1zdW1tYXJ5L3dyaXRlLW9yZGVyLXN1bW1hcnktZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2NkLWNhc2UtdWktdG9vbGtpdC9zcmMvbGliL3NoYXJlZC9jb21wb25lbnRzL3BhbGV0dGUvb3JkZXItc3VtbWFyeS93cml0ZS1vcmRlci1zdW1tYXJ5LWZpZWxkLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQzs7QUFNM0YsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLDJCQUEyQjtJQUU5RTs7OztNQUlFO0lBQ0ssUUFBUTtRQUNiLE1BQU0saUJBQWlCLEdBQWMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRSxJQUFJLENBQWMsQ0FBQztRQUNoRyxNQUFNLGdCQUFnQixHQUFnQixJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzdGLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxrQkFBa0IsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ25FLE1BQU0sWUFBWSxHQUFnQixJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNyRixpQkFBaUIsQ0FBQyxVQUFVLENBQUMsY0FBYyxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQzNELE1BQU0sU0FBUyxHQUFjLElBQUksU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUN4QyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDOUMsQ0FBQyxDQUFDLENBQUM7UUFDSCxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFTyxXQUFXLENBQUMsUUFBUTtRQUMxQixNQUFNLFFBQVEsR0FBRyxJQUFJLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNuQyxRQUFRLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRSxJQUFJLFdBQVcsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUNsRSxRQUFRLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxJQUFJLFdBQVcsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUN0RSxRQUFRLENBQUMsVUFBVSxDQUFDLGdCQUFnQixFQUFFLElBQUksV0FBVyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO1FBQ2hGLFFBQVEsQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLElBQUksV0FBVyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBQ3hFLE1BQU0sYUFBYSxHQUFHLElBQUksU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3hDLGFBQWEsQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzVDLE9BQU8sYUFBYSxDQUFDO0lBQ3ZCLENBQUM7O21UQTdCVSwrQkFBK0IsU0FBL0IsK0JBQStCO2tGQUEvQiwrQkFBK0I7UUNSNUMsa0RBQXFGOztRQUF2RCx5Q0FBdUI7O3VGRFF4QywrQkFBK0I7Y0FKM0MsU0FBUzsyQkFDRSwrQkFBK0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUFycmF5LCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQWJzdHJhY3RGaWVsZFdyaXRlQ29tcG9uZW50IH0gZnJvbSAnLi4vYmFzZS1maWVsZC9hYnN0cmFjdC1maWVsZC13cml0ZS5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjY2Qtd3JpdGUtb3JkZXItc3VtbWFyeS1maWVsZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi93cml0ZS1vcmRlci1zdW1tYXJ5LWZpZWxkLmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFdyaXRlT3JkZXJTdW1tYXJ5RmllbGRDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdEZpZWxkV3JpdGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIC8qXG4gICAgVGhlc2UgYXJlIGltcGxlbWVudGVkIG1hbnVhbGx5IHJhdGhlciB0aGFuIHVzaW5nIFdyaXRlQ29tcGxleEZpZWxkQ29tcG9uZW50LiBUaGUgcmVhc29uXG4gICAgaXMgYmVjYXVzZSB0aGUgdmlldyBpcyByZWFkb25seSB0aGUgdHJlZSBvZiBmb3JtIGNvbnRyb2xzIGlzIG5vdCBiZWluZyBidWlsdCBhdXRvbWF0aWNhbGx5XG4gICAgYW5kIGhhcyB0byBiZSBidWlsdCBtYW51YWxseS5cbiAgKi9cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IG9yZGVyU3VtbWFyeUdyb3VwOiBGb3JtR3JvdXAgPSB0aGlzLnJlZ2lzdGVyQ29udHJvbChuZXcgRm9ybUdyb3VwKHt9KSwgdHJ1ZSkgYXMgRm9ybUdyb3VwO1xuICAgIGNvbnN0IHBheW1lbnRSZWZlcmVuY2U6IEZvcm1Db250cm9sID0gbmV3IEZvcm1Db250cm9sKHRoaXMuY2FzZUZpZWxkLnZhbHVlLlBheW1lbnRSZWZlcmVuY2UpO1xuICAgIG9yZGVyU3VtbWFyeUdyb3VwLmFkZENvbnRyb2woJ1BheW1lbnRSZWZlcmVuY2UnLCBwYXltZW50UmVmZXJlbmNlKTtcbiAgICBjb25zdCBwYXltZW50VG90YWw6IEZvcm1Db250cm9sID0gbmV3IEZvcm1Db250cm9sKHRoaXMuY2FzZUZpZWxkLnZhbHVlLlBheW1lbnRUb3RhbCk7XG4gICAgb3JkZXJTdW1tYXJ5R3JvdXAuYWRkQ29udHJvbCgnUGF5bWVudFRvdGFsJywgcGF5bWVudFRvdGFsKTtcbiAgICBjb25zdCBmZWVzQXJyYXk6IEZvcm1BcnJheSA9IG5ldyBGb3JtQXJyYXkoW10pO1xuICAgIHRoaXMuY2FzZUZpZWxkLnZhbHVlLkZlZXMuZm9yRWFjaCgoZmVlKSA9PiB7XG4gICAgICBmZWVzQXJyYXkucHVzaCh0aGlzLmdldEZlZVZhbHVlKGZlZS52YWx1ZSkpO1xuICAgIH0pO1xuICAgIG9yZGVyU3VtbWFyeUdyb3VwLmFkZENvbnRyb2woJ0ZlZXMnLCBmZWVzQXJyYXkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGZWVWYWx1ZShmZWVWYWx1ZSk6IEZvcm1Hcm91cCB7XG4gICAgY29uc3QgZmVlR3JvdXAgPSBuZXcgRm9ybUdyb3VwKHt9KTtcbiAgICBmZWVHcm91cC5hZGRDb250cm9sKCdGZWVDb2RlJywgbmV3IEZvcm1Db250cm9sKGZlZVZhbHVlLkZlZUNvZGUpKTtcbiAgICBmZWVHcm91cC5hZGRDb250cm9sKCdGZWVBbW91bnQnLCBuZXcgRm9ybUNvbnRyb2woZmVlVmFsdWUuRmVlQW1vdW50KSk7XG4gICAgZmVlR3JvdXAuYWRkQ29udHJvbCgnRmVlRGVzY3JpcHRpb24nLCBuZXcgRm9ybUNvbnRyb2woZmVlVmFsdWUuRmVlRGVzY3JpcHRpb24pKTtcbiAgICBmZWVHcm91cC5hZGRDb250cm9sKCdGZWVWZXJzaW9uJywgbmV3IEZvcm1Db250cm9sKGZlZVZhbHVlLkZlZVZlcnNpb24pKTtcbiAgICBjb25zdCBmZWVWYWx1ZUdyb3VwID0gbmV3IEZvcm1Hcm91cCh7fSk7XG4gICAgZmVlVmFsdWVHcm91cC5hZGRDb250cm9sKCd2YWx1ZScsIGZlZUdyb3VwKTtcbiAgICByZXR1cm4gZmVlVmFsdWVHcm91cDtcbiAgfVxuXG59XG4iLCI8Y2NkLXJlYWQtb3JkZXItc3VtbWFyeS1maWVsZCBbY2FzZUZpZWxkXT1cImNhc2VGaWVsZFwiPjwvY2NkLXJlYWQtb3JkZXItc3VtbWFyeS1maWVsZD5cbiJdfQ==