nuxeo-development-framework 3.8.1 → 3.8.3

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 (311) hide show
  1. package/bundles/nuxeo-development-framework.umd.js +32267 -31027
  2. package/bundles/nuxeo-development-framework.umd.js.map +1 -1
  3. package/esm2015/lib/components/activities-log/activities-log/activities-log.service.js +2 -2
  4. package/esm2015/lib/components/attachment-item/attachment-item/attachment-item.component.js +2 -2
  5. package/esm2015/lib/components/comments/components/comment-item/comment-item.component.js +2 -2
  6. package/esm2015/lib/components/comments/components/comments-dashlet/comments-dashlet.component.js +2 -2
  7. package/esm2015/lib/components/comments/components/comments-list/comments-list.component.js +1 -1
  8. package/esm2015/lib/components/comments/components/edit-delete-modal/edit-delete-modal.component.js +2 -2
  9. package/esm2015/lib/components/comments/services/comment-api.service.js +3 -3
  10. package/esm2015/lib/components/correspondence-relation/components/correspondence-relation/correspondence-relation.component.js +3 -3
  11. package/esm2015/lib/components/correspondence-relation/components/correspondence-relation-list/correspondence-relation-list.component.js +2 -2
  12. package/esm2015/lib/components/correspondence-relation/components/versions/versions.component.js +2 -2
  13. package/esm2015/lib/components/correspondence-relation/services/correspondence-realation.service.js +3 -3
  14. package/esm2015/lib/components/correspondence-relation/services/viewer-files.service.js +3 -3
  15. package/esm2015/lib/components/create-entity/create-entity/create-entity.component.js +2 -2
  16. package/esm2015/lib/components/cts-tags/components/correspondence-tags/correspondence-tags.component.js +2 -2
  17. package/esm2015/lib/components/cts-tags/services/tags-api.service.js +2 -2
  18. package/esm2015/lib/components/custom-toastr/components/custom-toastr/custom-toastr.component.js +6 -6
  19. package/esm2015/lib/components/custom-toastr/interfaces/toast-type.interface.js +1 -1
  20. package/esm2015/lib/components/custom-toastr/services/custom-toastr.service.js +23 -11
  21. package/esm2015/lib/components/documents/components/attachments-list/attachments-list.component.js +2 -2
  22. package/esm2015/lib/components/documents/components/document-list/documents-list.component.js +2 -2
  23. package/esm2015/lib/components/documents/services/document-templates.service.js +3 -3
  24. package/esm2015/lib/components/documents/services/documents.service.js +3 -3
  25. package/esm2015/lib/components/dynamic-chart/dynamic-chart/dynamic-chart.component.js +2 -2
  26. package/esm2015/lib/components/dynamic-chart/services/chart-data.service.js +2 -2
  27. package/esm2015/lib/components/dynamic-filter/dynamic-filter/dynamic-filter.component.js +2 -2
  28. package/esm2015/lib/components/dynamic-form/components/dynamic-form/form-builder.service.js +2 -2
  29. package/esm2015/lib/components/dynamic-form/components/dynamic-form-dateitem/dynamic-form-dateitem.component.js +3 -3
  30. package/esm2015/lib/components/dynamic-form/components/dynamic-form-dateitem/owlDateTimeIntl.js +2 -2
  31. package/esm2015/lib/components/dynamic-form/components/dynamic-form-department/dynamic-form-department.component.js +2 -2
  32. package/esm2015/lib/components/dynamic-form/components/dynamic-form-department/services/department-api.service.js +5 -5
  33. package/esm2015/lib/components/dynamic-form/components/dynamic-form-department/services/department-management.service.js +3 -3
  34. package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-users/dynamic-form-select-users.component.js +2 -2
  35. package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-users/services/user-api.service.js +2 -2
  36. package/esm2015/lib/components/dynamic-form/components/dynamic-form-treeview-select/dropdown-treeview-select-i18n.js +2 -2
  37. package/esm2015/lib/components/dynamic-form/components/dynamic-form-treeview-select/dropdown-treeview-select.component.js +4 -4
  38. package/esm2015/lib/components/dynamic-form/components/dynamic-form-viewer/dynamic-form-viewer.component.js +2 -2
  39. package/esm2015/lib/components/dynamic-form/services/dynamic-form-update.service.js +2 -2
  40. package/esm2015/lib/components/dynamic-search/dynamic-search/dynamic-search.component.js +2 -2
  41. package/esm2015/lib/components/dynamic-table/dynamic-table/dynamic-table.component.js +3 -3
  42. package/esm2015/lib/components/dynamic-view/custom-document-viewer/custom-document-viewer.component.js +3 -3
  43. package/esm2015/lib/components/dynamic-view/custom-pp-viewer/custom-pp-viewer.component.js +3 -3
  44. package/esm2015/lib/components/dynamic-view/cutome-voc-viewer/cutome-voc-viewer.component.js +2 -2
  45. package/esm2015/lib/components/dynamic-view/date-viewer/date-viewer.component.js +2 -2
  46. package/esm2015/lib/components/dynamic-view/department-viewer/department-viewer.component.js +2 -2
  47. package/esm2015/lib/components/file-manger/components/clipboard/clipboard.component.js +2 -2
  48. package/esm2015/lib/components/file-manger/components/create-modal/create-modal.component.js +4 -4
  49. package/esm2015/lib/components/file-manger/components/folder-modal/folder-modal.component.js +2 -2
  50. package/esm2015/lib/components/file-manger/components/scan-modal/scan-modal.component.js +4 -4
  51. package/esm2015/lib/components/file-manger/components/share-dialog/share-dialog.component.js +5 -5
  52. package/esm2015/lib/components/file-manger/components/sidepanel/sidepanel.component.js +4 -4
  53. package/esm2015/lib/components/file-manger/components/update-modal/update-modal.component.js +3 -3
  54. package/esm2015/lib/components/file-manger/directives/file-grid-infinite-scroll.directive.js +78 -0
  55. package/esm2015/lib/components/file-manger/file-manager.abstract.js +459 -301
  56. package/esm2015/lib/components/file-manger/file-manger.module.js +10 -5
  57. package/esm2015/lib/components/file-manger/models/file-manager-config.model.js +7 -0
  58. package/esm2015/lib/components/file-manger/models/index.js +4 -0
  59. package/esm2015/lib/components/file-manger/models/pagination-payload.mode.js +2 -0
  60. package/esm2015/lib/components/file-manger/models/pagination-response.model.js +6 -0
  61. package/esm2015/lib/components/latest-activity/services/activity-log.service.js +3 -3
  62. package/esm2015/lib/components/mutiple-dynamic-form-viewer/multiple-dynamic-form-viewer/multiple-dynamic-form-viewer.component.js +2 -2
  63. package/esm2015/lib/components/notifications/components/base-list-notfications.component.js +154 -0
  64. package/esm2015/lib/components/notifications/components/base-notifications.component.js +35 -0
  65. package/esm2015/lib/components/notifications/components/index.js +7 -0
  66. package/esm2015/lib/components/notifications/components/notification-item/get-icon.pipe.js +44 -0
  67. package/esm2015/lib/components/notifications/components/notification-item/notification-item.component.js +41 -129
  68. package/esm2015/lib/components/notifications/components/notification-source-select/notification-source-select.component.js +34 -0
  69. package/esm2015/lib/components/notifications/components/notification-status-toggle/notification-status-toggle.component.js +26 -0
  70. package/esm2015/lib/components/notifications/components/notifications-button/notifications-button.component.js +75 -165
  71. package/esm2015/lib/components/notifications/components/notifications-date-select/notifications-date-select.component.js +59 -0
  72. package/esm2015/lib/components/notifications/components/notifications-list/notifications-list.component.js +53 -175
  73. package/esm2015/lib/components/notifications/components/notifications-list/options.js +24 -0
  74. package/esm2015/lib/components/notifications/components/notifications-list-actions/notifications-list-actions.component.js +43 -0
  75. package/esm2015/lib/components/notifications/components/notifications-settings/check-if-subscribed.pipe.js +28 -0
  76. package/esm2015/lib/components/notifications/components/notifications-settings/notifications-settings.adapter.js +30 -0
  77. package/esm2015/lib/components/notifications/components/notifications-settings/notifications-settings.component.js +163 -0
  78. package/esm2015/lib/components/notifications/components/notifications-sidebar/notifications-sidebar-content.js +28 -0
  79. package/esm2015/lib/components/notifications/components/notifications-sidebar/notifications-sidebar.component.js +158 -0
  80. package/esm2015/lib/components/notifications/constants/date.js +8 -0
  81. package/esm2015/lib/components/notifications/constants/index.js +5 -0
  82. package/esm2015/lib/components/notifications/constants/pagination.js +5 -0
  83. package/esm2015/lib/components/notifications/constants/panel.js +5 -0
  84. package/esm2015/lib/components/notifications/constants/status.js +10 -0
  85. package/esm2015/lib/components/notifications/containers/index.js +3 -0
  86. package/esm2015/lib/components/notifications/containers/notifications-list-container/notifications-list-container.component.js +98 -0
  87. package/esm2015/lib/components/notifications/containers/notifications-list-container/options.js +18 -0
  88. package/esm2015/lib/components/notifications/containers/notifications-settings-container/notifications-settings-container.component.js +67 -0
  89. package/esm2015/lib/components/notifications/directives/button.directive.js +28 -0
  90. package/esm2015/lib/components/notifications/directives/index.js +3 -0
  91. package/esm2015/lib/components/notifications/directives/notification.directive.js +28 -0
  92. package/esm2015/lib/components/notifications/index.js +2 -0
  93. package/esm2015/lib/components/notifications/models/common.js +2 -0
  94. package/esm2015/lib/components/notifications/models/index.js +11 -0
  95. package/esm2015/lib/components/notifications/models/notification-definition.model.js +2 -0
  96. package/esm2015/lib/components/notifications/models/notification-options.js +2 -0
  97. package/esm2015/lib/components/notifications/models/notification-setting.presenter.js +2 -0
  98. package/esm2015/lib/components/notifications/models/notification-subscription.model.js +2 -0
  99. package/esm2015/lib/components/notifications/models/notification.model.js +2 -0
  100. package/esm2015/lib/components/notifications/models/notifications-list-options.js +3 -0
  101. package/esm2015/lib/components/notifications/models/paging-response.model.js +2 -0
  102. package/esm2015/lib/components/notifications/models/params.model.js +2 -0
  103. package/esm2015/lib/components/notifications/models/vocabularies.js +2 -0
  104. package/esm2015/lib/components/notifications/notifications.module.js +80 -46
  105. package/esm2015/lib/components/notifications/public-api.js +9 -0
  106. package/esm2015/lib/components/notifications/services/index.js +2 -0
  107. package/esm2015/lib/components/notifications/services/listener.service.js +19 -0
  108. package/esm2015/lib/components/notifications/services/notifications.service.js +155 -0
  109. package/esm2015/lib/components/notifications/services/params.service.js +31 -0
  110. package/esm2015/lib/components/notifications/services/response.service.js +65 -0
  111. package/esm2015/lib/components/notifications/utilities/index.js +2 -0
  112. package/esm2015/lib/components/notifications/utilities/response.adapter.js +12 -0
  113. package/esm2015/lib/components/pdf-tron/pdftron/pdftron.component.js +3 -3
  114. package/esm2015/lib/components/permissions/add-permissions-dialog/add-permissions-dialog.component.js +2 -2
  115. package/esm2015/lib/components/permissions/permission.service.js +2 -2
  116. package/esm2015/lib/components/permissions/permissions/permissions.component.js +3 -3
  117. package/esm2015/lib/components/select-users-by-department/select-users-by-departments/department-management.service.js +2 -2
  118. package/esm2015/lib/components/table/dynamic-column/dynamic-column.component.js +2 -2
  119. package/esm2015/lib/components/table/table/table.component.js +3 -3
  120. package/esm2015/lib/components/{notifications → toasts}/components/notification-toast/notification-toast.component.js +8 -12
  121. package/esm2015/lib/components/toasts/index.js +2 -0
  122. package/esm2015/lib/components/toasts/public-api.js +3 -0
  123. package/esm2015/lib/components/toasts/toasts.module.js +19 -0
  124. package/esm2015/lib/components/vocabulary/services/vocabulary-api.service.js +2 -2
  125. package/esm2015/lib/components/vocabulary/translated-vocabulary-select/translated-vocabulary-select.component.js +2 -2
  126. package/esm2015/lib/core/adapters/adapter.service.js +1 -1
  127. package/esm2015/lib/core/core.module.js +1 -1
  128. package/esm2015/lib/core/env/env-manager.js +1 -1
  129. package/esm2015/lib/core/env/index.js +1 -1
  130. package/esm2015/lib/core/models/api-response.model.js +2 -0
  131. package/esm2015/lib/core/models/automation-response.model.js +2 -0
  132. package/esm2015/lib/core/models/base-response.models.js +2 -0
  133. package/esm2015/lib/core/models/index.js +5 -0
  134. package/esm2015/lib/core/services/callApi/call-api.service.js +1 -1
  135. package/esm2015/lib/core/services/extension/action.extensions.js +1 -1
  136. package/esm2015/lib/core/services/extension/component-register.service.js +1 -1
  137. package/esm2015/lib/core/services/extension/extenion-utils.js +1 -1
  138. package/esm2015/lib/core/services/extension/extension-element.js +1 -1
  139. package/esm2015/lib/core/services/extension/extension-loader.service.js +1 -1
  140. package/esm2015/lib/core/services/extension/extension.service.js +1 -1
  141. package/esm2015/lib/core/services/initialization/initialization.service.js +1 -1
  142. package/esm2015/lib/core/services/nuxeo/nuxeo.service.js +3 -3
  143. package/esm2015/lib/core/services/translation/translation.service.js +3 -3
  144. package/esm2015/lib/core/utilities/moment-date-adapter.js +1 -1
  145. package/esm2015/lib/core/utilities/utility.service.js +1 -1
  146. package/esm2015/lib/directive/app-has-role/app-has-role.directive.js +2 -2
  147. package/esm2015/lib/directive/permissions/evaluators.service.js +2 -2
  148. package/esm2015/lib/directive/permissions/permissions.directive.js +2 -2
  149. package/esm2015/lib/directive/rtl/set-dir-rtl.directive.js +2 -2
  150. package/esm2015/lib/directive/rtl/set-rtl.directive.js +2 -2
  151. package/esm2015/lib/shared-services/dynamic-form.service.js +2 -2
  152. package/esm2015/lib/shared-services/file-manager.service.js +456 -222
  153. package/esm2015/lib/shared-services/global-admin.service.js +1 -1
  154. package/esm2015/lib/shared-services/mainfolder.service.js +3 -3
  155. package/esm2015/lib/shared-services/publishing-document.service.js +3 -3
  156. package/esm2015/lib/shared-services/recently-viewed.service.js +3 -3
  157. package/esm2015/lib/shared-services/shared-docs.service.js +3 -3
  158. package/esm2015/lib/shared-services/upload-file.service.js +2 -2
  159. package/esm2015/lib/shared-services/upload-managment.service.js +2 -2
  160. package/esm2015/lib/shared-services/user.service.js +3 -3
  161. package/esm2015/public-api.js +145 -149
  162. package/fesm2015/nuxeo-development-framework.js +24280 -23143
  163. package/fesm2015/nuxeo-development-framework.js.map +1 -1
  164. package/lib/components/activities-log/activities-log/activities-log.service.d.ts +1 -1
  165. package/lib/components/attachment-item/attachment-item/attachment-item.component.d.ts +1 -1
  166. package/lib/components/comments/components/comment-item/comment-item.component.d.ts +1 -1
  167. package/lib/components/comments/components/comments-dashlet/comments-dashlet.component.d.ts +1 -1
  168. package/lib/components/comments/components/edit-delete-modal/edit-delete-modal.component.d.ts +1 -1
  169. package/lib/components/comments/services/comment-api.service.d.ts +2 -2
  170. package/lib/components/correspondence-relation/components/correspondence-relation/correspondence-relation.component.d.ts +2 -2
  171. package/lib/components/correspondence-relation/components/correspondence-relation-list/correspondence-relation-list.component.d.ts +1 -1
  172. package/lib/components/correspondence-relation/components/versions/versions.component.d.ts +1 -1
  173. package/lib/components/correspondence-relation/services/correspondence-realation.service.d.ts +2 -2
  174. package/lib/components/correspondence-relation/services/viewer-files.service.d.ts +2 -2
  175. package/lib/components/create-entity/create-entity/create-entity.component.d.ts +1 -1
  176. package/lib/components/cts-tags/components/correspondence-tags/correspondence-tags.component.d.ts +1 -1
  177. package/lib/components/cts-tags/services/tags-api.service.d.ts +1 -1
  178. package/lib/components/custom-toastr/components/custom-toastr/custom-toastr.component.d.ts +1 -1
  179. package/lib/components/custom-toastr/interfaces/toast-type.interface.d.ts +1 -1
  180. package/lib/components/custom-toastr/services/custom-toastr.service.d.ts +8 -4
  181. package/lib/components/documents/components/attachments-list/attachments-list.component.d.ts +1 -1
  182. package/lib/components/documents/components/document-list/documents-list.component.d.ts +1 -1
  183. package/lib/components/documents/services/document-templates.service.d.ts +2 -2
  184. package/lib/components/documents/services/documents.service.d.ts +2 -2
  185. package/lib/components/dynamic-chart/dynamic-chart/dynamic-chart.component.d.ts +1 -1
  186. package/lib/components/dynamic-chart/services/chart-data.service.d.ts +1 -1
  187. package/lib/components/dynamic-filter/dynamic-filter/dynamic-filter.component.d.ts +1 -1
  188. package/lib/components/dynamic-form/components/dynamic-form/form-builder.service.d.ts +1 -1
  189. package/lib/components/dynamic-form/components/dynamic-form-dateitem/dynamic-form-dateitem.component.d.ts +1 -1
  190. package/lib/components/dynamic-form/components/dynamic-form-dateitem/owlDateTimeIntl.d.ts +1 -1
  191. package/lib/components/dynamic-form/components/dynamic-form-department/dynamic-form-department.component.d.ts +1 -1
  192. package/lib/components/dynamic-form/components/dynamic-form-department/services/department-api.service.d.ts +4 -4
  193. package/lib/components/dynamic-form/components/dynamic-form-department/services/department-management.service.d.ts +2 -2
  194. package/lib/components/dynamic-form/components/dynamic-form-select-users/dynamic-form-select-users.component.d.ts +1 -1
  195. package/lib/components/dynamic-form/components/dynamic-form-select-users/services/user-api.service.d.ts +1 -1
  196. package/lib/components/dynamic-form/components/dynamic-form-treeview-select/dropdown-treeview-select-i18n.d.ts +1 -1
  197. package/lib/components/dynamic-form/components/dynamic-form-treeview-select/dropdown-treeview-select.component.d.ts +3 -3
  198. package/lib/components/dynamic-form/components/dynamic-form-viewer/dynamic-form-viewer.component.d.ts +1 -1
  199. package/lib/components/dynamic-form/services/dynamic-form-update.service.d.ts +1 -1
  200. package/lib/components/dynamic-search/dynamic-search/dynamic-search.component.d.ts +1 -1
  201. package/lib/components/dynamic-table/dynamic-table/dynamic-table.component.d.ts +2 -2
  202. package/lib/components/dynamic-view/custom-document-viewer/custom-document-viewer.component.d.ts +2 -2
  203. package/lib/components/dynamic-view/custom-pp-viewer/custom-pp-viewer.component.d.ts +2 -2
  204. package/lib/components/dynamic-view/cutome-voc-viewer/cutome-voc-viewer.component.d.ts +1 -1
  205. package/lib/components/dynamic-view/date-viewer/date-viewer.component.d.ts +1 -1
  206. package/lib/components/dynamic-view/department-viewer/department-viewer.component.d.ts +1 -1
  207. package/lib/components/file-manger/components/clipboard/clipboard.component.d.ts +1 -1
  208. package/lib/components/file-manger/components/create-modal/create-modal.component.d.ts +3 -3
  209. package/lib/components/file-manger/components/folder-modal/folder-modal.component.d.ts +1 -1
  210. package/lib/components/file-manger/components/scan-modal/scan-modal.component.d.ts +3 -3
  211. package/lib/components/file-manger/components/share-dialog/share-dialog.component.d.ts +3 -3
  212. package/lib/components/file-manger/components/sidepanel/sidepanel.component.d.ts +2 -2
  213. package/lib/components/file-manger/components/update-modal/update-modal.component.d.ts +2 -2
  214. package/lib/components/file-manger/directives/file-grid-infinite-scroll.directive.d.ts +12 -0
  215. package/lib/components/file-manger/file-manager.abstract.d.ts +20 -8
  216. package/lib/components/file-manger/file-manger.module.d.ts +37 -36
  217. package/lib/components/file-manger/models/file-manager-config.model.d.ts +8 -0
  218. package/lib/components/file-manger/models/index.d.ts +3 -0
  219. package/lib/components/file-manger/models/pagination-payload.mode.d.ts +3 -0
  220. package/lib/components/file-manger/models/pagination-response.model.d.ts +30 -0
  221. package/lib/components/latest-activity/services/activity-log.service.d.ts +2 -2
  222. package/lib/components/mutiple-dynamic-form-viewer/multiple-dynamic-form-viewer/multiple-dynamic-form-viewer.component.d.ts +1 -1
  223. package/lib/components/notifications/components/base-list-notfications.component.d.ts +40 -0
  224. package/lib/components/notifications/components/base-notifications.component.d.ts +20 -0
  225. package/lib/components/notifications/components/index.d.ts +6 -0
  226. package/lib/components/notifications/components/notification-item/get-icon.pipe.d.ts +8 -0
  227. package/lib/components/notifications/components/notification-item/notification-item.component.d.ts +21 -22
  228. package/lib/components/notifications/components/notification-source-select/notification-source-select.component.d.ts +12 -0
  229. package/lib/components/notifications/components/notification-status-toggle/notification-status-toggle.component.d.ts +8 -0
  230. package/lib/components/notifications/components/notifications-button/notifications-button.component.d.ts +29 -30
  231. package/lib/components/notifications/components/notifications-date-select/notifications-date-select.component.d.ts +19 -0
  232. package/lib/components/notifications/components/notifications-list/notifications-list.component.d.ts +15 -54
  233. package/lib/components/notifications/components/notifications-list/options.d.ts +2 -0
  234. package/lib/components/notifications/components/notifications-list-actions/notifications-list-actions.component.d.ts +15 -0
  235. package/lib/components/notifications/components/notifications-settings/check-if-subscribed.pipe.d.ts +8 -0
  236. package/lib/components/notifications/components/notifications-settings/notifications-settings.adapter.d.ts +3 -0
  237. package/lib/components/notifications/components/notifications-settings/notifications-settings.component.d.ts +40 -0
  238. package/lib/components/notifications/components/notifications-sidebar/notifications-sidebar-content.d.ts +9 -0
  239. package/lib/components/notifications/components/notifications-sidebar/notifications-sidebar.component.d.ts +43 -0
  240. package/lib/components/notifications/constants/date.d.ts +7 -0
  241. package/lib/components/notifications/constants/index.d.ts +4 -0
  242. package/lib/components/notifications/constants/pagination.d.ts +4 -0
  243. package/lib/components/notifications/constants/panel.d.ts +4 -0
  244. package/lib/components/notifications/constants/status.d.ts +9 -0
  245. package/lib/components/notifications/containers/index.d.ts +2 -0
  246. package/lib/components/notifications/containers/notifications-list-container/notifications-list-container.component.d.ts +27 -0
  247. package/lib/components/notifications/containers/notifications-list-container/options.d.ts +2 -0
  248. package/lib/components/notifications/containers/notifications-settings-container/notifications-settings-container.component.d.ts +22 -0
  249. package/lib/components/notifications/directives/button.directive.d.ts +9 -0
  250. package/lib/components/notifications/directives/index.d.ts +2 -0
  251. package/lib/components/notifications/directives/notification.directive.d.ts +9 -0
  252. package/lib/components/notifications/index.d.ts +1 -0
  253. package/lib/components/notifications/models/common.d.ts +64 -0
  254. package/lib/components/notifications/models/index.d.ts +10 -0
  255. package/lib/components/notifications/models/notification-definition.model.d.ts +17 -0
  256. package/lib/components/notifications/models/notification-options.d.ts +7 -0
  257. package/lib/components/notifications/models/notification-setting.presenter.d.ts +24 -0
  258. package/lib/components/notifications/models/notification-subscription.model.d.ts +13 -0
  259. package/lib/components/notifications/models/notification.model.d.ts +16 -0
  260. package/lib/components/notifications/models/notifications-list-options.d.ts +34 -0
  261. package/lib/components/notifications/models/paging-response.model.d.ts +12 -0
  262. package/lib/components/notifications/models/params.model.d.ts +6 -0
  263. package/lib/components/notifications/models/vocabularies.d.ts +12 -0
  264. package/lib/components/notifications/notifications.module.d.ts +32 -16
  265. package/lib/components/notifications/public-api.d.ts +8 -0
  266. package/lib/components/notifications/services/index.d.ts +1 -0
  267. package/lib/components/notifications/services/listener.service.d.ts +8 -0
  268. package/lib/components/notifications/services/notifications.service.d.ts +55 -0
  269. package/lib/components/notifications/services/params.service.d.ts +19 -0
  270. package/lib/components/notifications/services/response.service.d.ts +19 -0
  271. package/lib/components/notifications/utilities/index.d.ts +1 -0
  272. package/lib/components/notifications/utilities/response.adapter.d.ts +3 -0
  273. package/lib/components/pdf-tron/pdftron/pdftron.component.d.ts +2 -2
  274. package/lib/components/permissions/add-permissions-dialog/add-permissions-dialog.component.d.ts +1 -1
  275. package/lib/components/permissions/permission.service.d.ts +1 -1
  276. package/lib/components/permissions/permissions/permissions.component.d.ts +2 -2
  277. package/lib/components/select-users-by-department/select-users-by-departments/department-management.service.d.ts +1 -1
  278. package/lib/components/table/dynamic-column/dynamic-column.component.d.ts +1 -1
  279. package/lib/components/table/table/table.component.d.ts +2 -2
  280. package/lib/components/{notifications → toasts}/components/notification-toast/notification-toast.component.d.ts +2 -4
  281. package/lib/components/toasts/index.d.ts +1 -0
  282. package/lib/components/toasts/public-api.d.ts +2 -0
  283. package/lib/components/toasts/toasts.module.d.ts +8 -0
  284. package/lib/components/vocabulary/services/vocabulary-api.service.d.ts +1 -1
  285. package/lib/components/vocabulary/translated-vocabulary-select/translated-vocabulary-select.component.d.ts +1 -1
  286. package/lib/core/models/api-response.model.d.ts +24 -0
  287. package/lib/core/models/automation-response.model.d.ts +24 -0
  288. package/lib/core/models/base-response.models.d.ts +12 -0
  289. package/lib/core/models/index.d.ts +4 -0
  290. package/lib/core/services/nuxeo/nuxeo.service.d.ts +1 -1
  291. package/lib/core/services/translation/translation.service.d.ts +3 -3
  292. package/lib/directive/app-has-role/app-has-role.directive.d.ts +1 -1
  293. package/lib/directive/permissions/evaluators.service.d.ts +1 -1
  294. package/lib/directive/permissions/permissions.directive.d.ts +1 -1
  295. package/lib/directive/rtl/set-dir-rtl.directive.d.ts +1 -1
  296. package/lib/directive/rtl/set-rtl.directive.d.ts +1 -1
  297. package/lib/shared-services/dynamic-form.service.d.ts +1 -1
  298. package/lib/shared-services/file-manager.service.d.ts +27 -19
  299. package/lib/shared-services/mainfolder.service.d.ts +2 -2
  300. package/lib/shared-services/publishing-document.service.d.ts +2 -2
  301. package/lib/shared-services/recently-viewed.service.d.ts +2 -2
  302. package/lib/shared-services/shared-docs.service.d.ts +2 -2
  303. package/lib/shared-services/upload-file.service.d.ts +1 -1
  304. package/lib/shared-services/upload-managment.service.d.ts +1 -1
  305. package/lib/shared-services/user.service.d.ts +2 -2
  306. package/package.json +1 -1
  307. package/public-api.d.ts +139 -143
  308. package/esm2015/lib/components/notifications/components/notification-options/notification-options.component.js +0 -22
  309. package/esm2015/lib/components/notifications/notifications.service.js +0 -358
  310. package/lib/components/notifications/components/notification-options/notification-options.component.d.ts +0 -10
  311. package/lib/components/notifications/notifications.service.d.ts +0 -87
@@ -7,7 +7,7 @@ import { Cacheable } from 'ts-cacheable';
7
7
  import * as i0 from "@angular/core";
8
8
  import * as i1 from "./services/user-api.service";
9
9
  import * as i2 from "@ngx-translate/core";
10
- import * as i3 from "../../../../Core/services/translation/translation.service";
10
+ import * as i3 from "../../../../core/services/translation/translation.service";
11
11
  import * as i4 from "@angular/forms";
12
12
  import * as i5 from "@ng-select/ng-select";
13
13
  import * as i6 from "../../../avatar/avatar/avatar.component";
@@ -323,4 +323,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
323
323
  }], onSelectItems: [{
324
324
  type: Output
325
325
  }], getUsersSuggestions: [] } });
326
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLXNlbGVjdC11c2Vycy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS1zZWxlY3QtdXNlcnMvZHluYW1pYy1mb3JtLXNlbGVjdC11c2Vycy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS1zZWxlY3QtdXNlcnMvZHluYW1pYy1mb3JtLXNlbGVjdC11c2Vycy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLFFBQVEsRUFDUixNQUFNLEVBQ04sSUFBSSxFQUVKLFNBQVMsRUFDVCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFTdkIsT0FBTyxFQUFrQixPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0MsT0FBTyxFQUVMLFlBQVksRUFDWixvQkFBb0IsRUFDcEIsU0FBUyxFQUNULEdBQUcsR0FDSixNQUFNLGdCQUFnQixDQUFDO0FBR3hCLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7Ozs7Ozs7Ozs7OztBQUN6Qzs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQztBQU9yQixNQUFNLE9BQU8sK0JBQStCO0lBa0UxQyxZQUNVLGNBQTRDLEVBQzdDLFNBQTJCLEVBQzFCLFdBQStCLEVBQ1os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LEVBQUUsNENBQTRDO29CQUN6RCxTQUFTLEVBQUUsQ0FBQyw0Q0FBNEMsQ0FBQztvQkFDekQsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7aUJBQ3RDOzswQkF1RUksSUFBSTs7MEJBQUksUUFBUTs0Q0FuRWEsaUJBQWlCO3NCQUFoRCxTQUFTO3VCQUFDLG1CQUFtQjtnQkFNckIsU0FBUztzQkFBakIsS0FBSztnQkFFSyxTQUFTO3NCQUFqQixLQUFLO2dCQUVDLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUcsV0FBVztzQkFBbkIsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBRUcsYUFBYTtzQkFBckIsS0FBSztnQkFFRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBRUcsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUVHLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVHLE1BQU07c0JBQWQsS0FBSztnQkFFSSxhQUFhO3NCQUF0QixNQUFNO2dCQWlPUCxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT25DaGFuZ2VzLFxyXG4gIE9uRGVzdHJveSxcclxuICBPcHRpb25hbCxcclxuICBPdXRwdXQsXHJcbiAgU2VsZixcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICBBYnN0cmFjdENvbnRyb2wsXHJcbiAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXHJcbiAgRm9ybUNvbnRyb2wsXHJcbiAgTmdDb250cm9sLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTmdTZWxlY3RDb21wb25lbnQgfSBmcm9tICdAbmctc2VsZWN0L25nLXNlbGVjdCc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtcclxuICBjYXRjaEVycm9yLFxyXG4gIGRlYm91bmNlVGltZSxcclxuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcclxuICBzd2l0Y2hNYXAsXHJcbiAgdGFwLFxyXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vQ29yZS9zZXJ2aWNlcy90cmFuc2xhdGlvbi90cmFuc2xhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVXNlcnNJbkRlcGFydG1lbnRzQXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvdXNlci1hcGkuc2VydmljZSc7XHJcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcclxuaW1wb3J0IHsgQ2FjaGVhYmxlIH0gZnJvbSAndHMtY2FjaGVhYmxlJztcclxuLyoqXHJcbiAqIFVzZXJzIGRyb3Bkb3duIGlucHV0IGludGVncmF0ZWQgd2l0aCB1c2VycyBBUEksXHJcbiAqIHRoYXQgY2FuIGJlIHVzZWQgaW5zaWRlIHJlYWN0aXZlIG9yIHRlbXBsYXRlIGRyaXZlbiBmb3Jtc1xyXG4gKiBAdGl0bGVcclxuICogVXNlcnMgZHJvcGRvd25cclxuICogQGV4YW1wbGVcclxuICogPGN0cy1keW5hbWljLWZvcm0tc2VsZWN0LXVzZXJzXHJcbiAqICAgICBmb3JtQ29udHJvbE5hbWU9XCJjb250cm9sTmFtZVwiXHJcbiAqICAgICBbYmluZFZhbHVlXT1cImJpbmRUb1Byb3BlcnR5XCJcclxuICogICAgIFtiaW5kTGFiZWxdPVwiJ2JpbmRUb0xhYmVsJ1wiXHJcbiAqICAgICBbc2VhcmNoYWJsZV09XCJ0cnVlXCJcclxuICogICAgIFtsYWJlbF09XCInUEFUSC5UTy5UUkFOU0xBVElPTidcIlxyXG4gKiAgICAgW2RlcHRUaXRsZV09XCInYWxsJ1wiXHJcbiAqICAgPjwvY3RzLWR5bmFtaWMtZm9ybS1zZWxlY3QtdXNlcnM+XHJcbiAqL1xyXG5jb25zdCBtaW51dGUgPSA2MDAwMDtcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjdHMtZHluYW1pYy1mb3JtLXNlbGVjdC11c2VycycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2R5bmFtaWMtZm9ybS1zZWxlY3QtdXNlcnMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2R5bmFtaWMtZm9ybS1zZWxlY3QtdXNlcnMuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRHluYW1pY0Zvcm1TZWxlY3RVc2Vyc0NvbXBvbmVudFxyXG4gIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIENvbnRyb2xWYWx1ZUFjY2Vzc29yXHJcbntcclxuICBAVmlld0NoaWxkKCduZ1NlbGVjdENvbXBvbmVudCcpIG5nU2VsZWN0Q29tcG9uZW50OiBOZ1NlbGVjdENvbXBvbmVudDtcclxuICBzZWxlY3Rpb25zdHJnOiBzdHJpbmc7XHJcbiAgZGF0YSA9IFtdO1xyXG4gIGFsbFVzZXJzOiBib29sZWFuO1xyXG4gIHVzZXJOYW1lSW5wdXQkID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpO1xyXG4gIC8qKiBmaWx0ZXIgdXNlcnMgYnkgZGVwYXJ0bWVudCAoZGVwYXJ0bWVudE5hbWUgfCBhbGwpICovXHJcbiAgQElucHV0KCkgZGVwdFRpdGxlOiBzdHJpbmc7XHJcbiAgICAvKiogZmlsdGVyIHVzZXJzIGJ5IGdyb3VwIG5hbWUgPT4gdGhpcyB3aWxsIHJlcGxjZSBkZXAgdGl0bGUgKi9cclxuICAgIEBJbnB1dCgpIGdyb3VwTmFtZTogc3RyaW5nO1xyXG4gIC8qKiBGaWVsZCBMYWJlbCAqL1xyXG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmc7XHJcbiAgLyoqIEJpbmQgdmFsdWUgdG8gb2JqZWN0IHByb3BlcnR5ICovXHJcbiAgQElucHV0KCkgYmluZFZhbHVlO1xyXG4gIC8qKiBCaW5kIGxhYmVsIHRvIG9iamVjdCBwcm9wZXJ0eSAqL1xyXG4gIEBJbnB1dCgpIGJpbmRMYWJlbDtcclxuICAvKiogUGxhY2Vob2xkZXIgdGV4dCAqL1xyXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyO1xyXG4gIC8qKiBDYW4gc2VsZWN0IG11bHRpcGxlICovXHJcbiAgQElucHV0KCkgbXVsdGlwbGUgPSBmYWxzZTtcclxuICAvKiogaXMgZHJvcGRvd24gc2VhcmNoYWJsZSAqL1xyXG4gIEBJbnB1dCgpIHNlYXJjaGFibGUgPSBmYWxzZTtcclxuICAvKiogc2hvdWxkIGNsb3NlIGRyb3Bkb3duIG9uIHZhbHVlIHNlbGVjdGlvbiAqL1xyXG4gIEBJbnB1dCgpIGNsb3NlT25TZWxlY3QgPSB0cnVlO1xyXG4gIC8qKiBzaG91bGQgaGlkZSBzZWxlY3RlZCBpdGVtcyAqL1xyXG4gIEBJbnB1dCgpIGhpZGVTZWxlY3RlZEl0ZW1zID0gZmFsc2U7XHJcbiAgLyoqIFByZSBTZWxlY3RlZCB2YWx1ZXMgKi9cclxuICBASW5wdXQoKSBwcmVTZWxlY3RlZFZhbHVlcztcclxuICAvKiogZmxhZ2UgdG8gdXNlIHByZXNlbGVjdGVkIHZhbHVlcyBvciBub3QgKi9cclxuICBASW5wdXQoKSB1c2VQcmVTZWxlY3RlZFZhbHVlID0gZmFsc2U7XHJcbiAgLyoqIGlzIERpc2FibGVkICovXHJcbiAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcclxuICAvKiogTGlzdCBvZiB1c2VybmFtZXMgdGhhdCBzaG91bGQgYmUgZXhsdWRlZCAgKi9cclxuICBASW5wdXQoKSBmaWx0ZXI6IHN0cmluZ1tdID0gW107XHJcbiAgLyoqIGV2ZW50IGVtaXR0ZWQgd2hlbiBpdGVtIGlzIHNlbGVjdGVkICovXHJcbiAgQE91dHB1dCgpIG9uU2VsZWN0SXRlbXMgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgbG9hZGluZyA9IGZhbHNlO1xyXG4gIHNlbGVjdGlvbjtcclxuICBidWZmZXIgPSBbXTtcclxuICBidWZmZXJTaXplID0gMTAwMDtcclxuICBudW1iZXJPZkl0ZW1zRnJvbUVuZEJlZm9yZUZldGNoaW5nTW9yZSA9IDEwO1xyXG4gIHN1ZmZpeDtcclxuXHJcbiAgcHJvcGFnYXRlQ2hhbmdlOiBhbnkgPSAoKSA9PiB7fTtcclxuICB2YWxpZGF0ZUZuOiBhbnkgPSAoKSA9PiB7fTtcclxuXHJcbiAgcHVibGljIG9uVG91Y2hlZDogYW55ID0gKCkgPT4ge1xyXG4gICAgLypFbXB0eSovXHJcbiAgfTtcclxuICBwYWdlSW5kZXg6IG51bWJlciA9IDA7XHJcbiAgaXNOZXh0UGFnZUF2YWlsYWJsZTogYm9vbGVhbjtcclxuICBwdWJsaWMgZ2V0IGludmFsaWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5jb250cm9sID8gdGhpcy5jb250cm9sLmludmFsaWQgOiBmYWxzZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgc2hvd0Vycm9yKCk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKCF0aGlzLmNvbnRyb2wpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHsgZGlydHksIHRvdWNoZWQgfSA9IHRoaXMuY29udHJvbDtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5pbnZhbGlkID8gZGlydHkgfHwgdG91Y2hlZCA6IGZhbHNlO1xyXG4gIH1cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgdXNlckFwaVNlcnZpY2U6IFVzZXJzSW5EZXBhcnRtZW50c0FwaVNlcnZpY2UsXHJcbiAgICBwdWJsaWMgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGlvbjogVHJhbnNsYXRpb25TZXJ2aWNlLFxyXG4gICAgQFNlbGYoKSBAT3B0aW9uYWwoKSBwdWJsaWMgY29udHJvbDogTmdDb250cm9sXHJcbiAgKSB7XHJcbiAgICBpZiAodGhpcy5jb250cm9sKSB7XHJcbiAgICAgIHRoaXMuY29udHJvbC52YWx1ZUFjY2Vzc29yID0gdGhpcztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGVtaXRTZWxlY3Rpb24oZXZlbnQpIHtcclxuICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0aW9uc3RyZyA9IGAke3RoaXMuc2VsZWN0aW9uLmxlbmd0aH0gJHt0aGlzLnN1ZmZpeH1gO1xyXG4gICAgfVxyXG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodGhpcy5zZWxlY3Rpb24pO1xyXG4gICAgdGhpcy5vblNlbGVjdEl0ZW1zLmVtaXQoZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgb25TY3JvbGxUb0VuZCgpIHtcclxuICAgIHRoaXMuZmV0Y2hNb3JlKCk7XHJcbiAgICArK3RoaXMucGFnZUluZGV4O1xyXG4gICAgaWYgKHRoaXMuaXNOZXh0UGFnZUF2YWlsYWJsZSAmJiB0aGlzLmFsbFVzZXJzKSB7XHJcbiAgICAgIHRoaXMuZ2V0RGVwYXJ0bWVudHModGhpcy5wYWdlSW5kZXgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmZXRjaE1vcmUoKSB7XHJcbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG4gICAgY29uc3QgbGVuID0gdGhpcy5idWZmZXIubGVuZ3RoO1xyXG4gICAgY29uc3QgbW9yZSA9IHRoaXMuZGF0YS5zbGljZShsZW4sIHRoaXMuYnVmZmVyU2l6ZSArIGxlbik7XHJcbiAgICB0aGlzLmJ1ZmZlciA9IHRoaXMuZGF0YS5jb25jYXQobW9yZSk7XHJcbiAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICB9XHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKChjaGFuZ2VzLmRlcHRUaXRsZSAmJiAhY2hhbmdlcy5kZXB0VGl0bGU/LmZpcnN0Q2hhbmdlKSB8fCAoY2hhbmdlcy5ncm91cE5hbWUgJiYgIWNoYW5nZXMuZ3JvdXBOYW1lPy5maXJzdENoYW5nZSkpIHtcclxuICAgICAgdGhpcy5kYXRhID0gW107XHJcbiAgICAgIHRoaXMuYnVmZmVyID0gW107XHJcbiAgICAgIHRoaXMuZ2V0RGVwYXJ0bWVudHMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5hbGxVc2VycyA9IHRoaXMuZGVwdFRpdGxlID09PSAnYWxsJyA/IHRydWUgOiBmYWxzZTtcclxuICAgIHRoaXMuc2VsZWN0aW9uID0gdGhpcy5tdWx0aXBsZSA/IFtdIDogdW5kZWZpbmVkO1xyXG4gICAgaWYgKHRoaXMuYWxsVXNlcnMpIHtcclxuICAgICAgdGhpcy5sb2FkVXNlcnMoKTtcclxuICAgIH1cclxuICAgIHRoaXMuZ2V0RGVwYXJ0bWVudHMoKTtcclxuICAgIHRoaXMudHJhbnNsYXRpb24uaXNBcmFiaWMuc3Vic2NyaWJlKChhcikgPT4ge1xyXG4gICAgICBhclxyXG4gICAgICAgID8gKHRoaXMuc3VmZml4ID0gJ9mF2LPYqtiu2K/ZhSDYqtmFINil2K7YqtmK2KfYsdmHJylcclxuICAgICAgICA6ICh0aGlzLnN1ZmZpeCA9ICdVc2VycyBTZWxlY3RlZCcpO1xyXG4gICAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0aW9uc3RyZyA9IGAke3RoaXMuc2VsZWN0aW9uLmxlbmd0aH0gJHt0aGlzLnN1ZmZpeH1gO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldERlcGFydG1lbnRzKHBhZ2UgPSAwKSB7XHJcbiAgICBpZih0aGlzLmdyb3VwTmFtZSl7XHJcbiAgICAgIHRoaXMudXNlckFwaVNlcnZpY2UuZ2V0VXNlcnNVbmRlckNlcnRhaW5Hcm91cCh0aGlzLmdyb3VwTmFtZSkuc3Vic2NyaWJlKGRhdGEgPT4ge1xyXG4gICAgICAgIGxldCBuZXdEYXRhID0gdGhpcy5jb25zdHJ1Y3RVc2VyQXJyYXkoXHJcbiAgICAgICAgICBkYXRhLnVzZXJzLFxyXG4gICAgICAgICAgJ3Byb3BlcnRpZXMudXNlcm5hbWUnXHJcbiAgICAgICAgKTtcclxuICAgICAgICB0aGlzLmRhdGEgPSB0aGlzLmRhdGEuY29uY2F0KG5ld0RhdGEpO1xyXG4gICAgICAgIHRoaXMuaXNOZXh0UGFnZUF2YWlsYWJsZSA9IGRhdGEuaXNOZXh0UGFnZUF2YWlsYWJsZTtcclxuICAgICAgICB0aGlzLmJ1ZmZlciA9ICh0aGlzLmRhdGEgfHwgW10pLnNsaWNlKDAsIHRoaXMuYnVmZmVyU2l6ZSk7XHJcbiAgICAgICAgdGhpcy5idWZmZXIubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICBpdGVtLmlzU2VsZWN0ZWQgPSBmYWxzZTtcclxuICAgICAgICB9KTtcclxuICAgICAgfSlcclxuICAgIH1lbHNlIGlmICh0aGlzLmRlcHRUaXRsZSkge1xyXG4gICAgICBpZiAodGhpcy5hbGxVc2Vycykge1xyXG4gICAgICAgIHRoaXMuZ2V0QWxsVXNlcnMocGFnZSkuc3Vic2NyaWJlKChkYXRhKSA9PiB7XHJcbiAgICAgICAgICBsZXQgbmV3RGF0YSA9IHRoaXMuY29uc3RydWN0VXNlckFycmF5KGRhdGEuZW50cmllcywgJ2lkJyk7XHJcbiAgICAgICAgICB0aGlzLmRhdGEgPSB0aGlzLmRhdGEuY29uY2F0KG5ld0RhdGEpO1xyXG4gICAgICAgICAgdGhpcy5pc05leHRQYWdlQXZhaWxhYmxlID0gZGF0YS5pc05leHRQYWdlQXZhaWxhYmxlO1xyXG4gICAgICAgICAgdGhpcy5idWZmZXIgPSAodGhpcy5kYXRhIHx8IFtdKS5zbGljZSgwLCB0aGlzLmJ1ZmZlclNpemUpO1xyXG4gICAgICAgICAgdGhpcy5idWZmZXIubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgIGl0ZW0uaXNTZWxlY3RlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTsgLy8gZm9yIGxvYWRpbmcgc3Bpbm5lclxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuZ2V0Q3RzVXNlcnModGhpcy5kZXB0VGl0bGUpLnN1YnNjcmliZSgoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgbGV0IG5ld0RhdGEgPSB0aGlzLmNvbnN0cnVjdFVzZXJBcnJheShcclxuICAgICAgICAgICAgZGF0YS51c2VycyxcclxuICAgICAgICAgICAgJ3Byb3BlcnRpZXMudXNlcm5hbWUnXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgICAgdGhpcy5kYXRhID0gdGhpcy5kYXRhLmNvbmNhdChuZXdEYXRhKTtcclxuICAgICAgICAgIHRoaXMuaXNOZXh0UGFnZUF2YWlsYWJsZSA9IGRhdGEuaXNOZXh0UGFnZUF2YWlsYWJsZTtcclxuICAgICAgICAgIHRoaXMuYnVmZmVyID0gKHRoaXMuZGF0YSB8fCBbXSkuc2xpY2UoMCwgdGhpcy5idWZmZXJTaXplKTtcclxuICAgICAgICAgIHRoaXMuYnVmZmVyLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgICBpdGVtLmlzU2VsZWN0ZWQgPSBmYWxzZTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIGdldEFsbFVzZXJzKHBhZ2UgPSAwKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLnVzZXJBcGlTZXJ2aWNlLmdldEFsbFVzZXJzKHtcclxuICAgICAgY3VycmVudFBhZ2VJbmRleDogcGFnZSxcclxuICAgICAgcGFnZVNpemU6IDIwLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGxvYWRVc2VycygpIHtcclxuICAgIHRoaXMudXNlck5hbWVJbnB1dCRcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgZGVib3VuY2VUaW1lKDIwMCksXHJcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcclxuICAgICAgICB0YXAoKCkgPT4gKHRoaXMubG9hZGluZyA9IHRydWUpKSxcclxuICAgICAgICBzd2l0Y2hNYXAoKHRlcm0pID0+IHtcclxuICAgICAgICAgIGlmICh0ZXJtICYmIHRlcm0ubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmdldFVzZXJzU3VnZ2VzdGlvbnModGVybSk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRBbGxVc2VycygpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZShcclxuICAgICAgICAoZGF0YTogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAoZGF0YS5lbnRyaWVzLmxlbmd0aCkge1xyXG4gICAgICAgICAgICBsZXQgbmV3RGF0YSA9IHRoaXMuY29uc3RydWN0VXNlckFycmF5KGRhdGEuZW50cmllcywgJ2lkJyk7XHJcbiAgICAgICAgICAgIHRoaXMuYnVmZmVyID0gKG5ld0RhdGEgfHwgW10pLnNsaWNlKDAsIHRoaXMuYnVmZmVyU2l6ZSk7XHJcbiAgICAgICAgICAgIHRoaXMuaXNOZXh0UGFnZUF2YWlsYWJsZSA9IGRhdGEuaXNOZXh0UGFnZUF2YWlsYWJsZTtcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmJ1ZmZlciA9IFtdO1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIChlcnIpID0+IHtcclxuICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5idWZmZXIgPSBbXTtcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgfVxyXG4gIFxyXG4gIHdyaXRlVmFsdWUodmFsdWUpIHtcclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLnNlbGVjdGlvbiA9IHZhbHVlO1xyXG4gICAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0aW9uc3RyZyA9IGAke3RoaXMuc2VsZWN0aW9uLmxlbmd0aH0gJHt0aGlzLnN1ZmZpeH1gO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNlbGVjdGlvbiA9IG51bGw7XHJcbiAgICAgIHRoaXMuc2VsZWN0aW9uc3RyZyA9IG51bGxcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbXBhcmVGbihpdGVtLCBzZWxlY3RlZCkge1xyXG4gICAgY29uc29sZS5sb2coXCJpdGVtIDFcIiwgaXRlbSk7XHJcbiAgICBjb25zb2xlLmxvZyhcIkl0ZW0gMlwiLCBzZWxlY3RlZCk7XHJcbiAgICByZXR1cm4gaXRlbS5pZCA9PT0gc2VsZWN0ZWQuaWQ7XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuKSB7XHJcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSkge1xyXG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcclxuICB9XHJcblxyXG4gIHZhbGlkYXRlKGM6IEZvcm1Db250cm9sKSB7XHJcbiAgICByZXR1cm4gdGhpcy52YWxpZGF0ZUZuKGMpO1xyXG4gIH1cclxuICBpc1JlcXVpcmVkKCkge1xyXG4gICAgaWYgKCF0aGlzLmNvbnRyb2wgfHwgIXRoaXMuY29udHJvbC5jb250cm9sLnZhbGlkYXRvcikge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgdmFsaWRhdG9yID0gdGhpcy5jb250cm9sLmNvbnRyb2wudmFsaWRhdG9yKHt9IGFzIEFic3RyYWN0Q29udHJvbCk7XHJcbiAgICByZXR1cm4gdmFsaWRhdG9yICYmIHZhbGlkYXRvci5yZXF1aXJlZDtcclxuICB9XHJcbiAgaGFzRXJyb3JzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuc2hvd0Vycm9yO1xyXG4gIH1cclxuXHJcbiAgLy8gQENhY2hlYWJsZSh7XHJcbiAgLy8gICBtYXhDYWNoZUNvdW50OiAxMDAwLFxyXG4gIC8vICAgbWF4QWdlOiAyMDAwMCxcclxuICAvLyB9KVxyXG5cclxuICBnZXRDdHNVc2VycyhkZXB0VGl0bGUpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMudXNlckFwaVNlcnZpY2UuZ2V0Q3RzVXNlcnMoZGVwdFRpdGxlKTtcclxuICB9XHJcblxyXG4gIEBDYWNoZWFibGUoe1xyXG4gICAgbWF4Q2FjaGVDb3VudDogMTAwMCxcclxuICAgIG1heEFnZTogNSAqIG1pbnV0ZSxcclxuICB9KVxyXG4gIGdldFVzZXJzU3VnZ2VzdGlvbnModGVybSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy51c2VyQXBpU2VydmljZS5nZXRVc2Vyc1N1Z2dlc3Rpb25zKHRlcm0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjb25zdHJ1Y3RVc2VyQXJyYXkoZGF0YSwgZmlsdGVyVmFsdWU6IHN0cmluZykge1xyXG4gICAgbGV0IENvbnN0cnVjdGVkRGF0YTogYW55W107XHJcbiAgICBDb25zdHJ1Y3RlZERhdGEgPSB0aGlzLmluc2VydEZVbGxOYW1lKGRhdGEpO1xyXG4gICAgQ29uc3RydWN0ZWREYXRhID0gdGhpcy5maWx0ZXJVc2VycyhkYXRhLCBmaWx0ZXJWYWx1ZSk7XHJcbiAgICByZXR1cm4gQ29uc3RydWN0ZWREYXRhO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpbnNlcnRGVWxsTmFtZShkYXRhKSB7XHJcbiAgICByZXR1cm4gZGF0YS5tYXAoKHVzZXIpID0+IHtcclxuICAgICAgdXNlci5mdWxsTmFtZSA9IGAke3VzZXIucHJvcGVydGllcz8uZmlyc3ROYW1lfSAke3VzZXIucHJvcGVydGllcz8ubGFzdE5hbWV9YDtcclxuICAgIH0pO1xyXG4gIH1cclxuICBwcml2YXRlIGZpbHRlclVzZXJzKGRhdGEsIHBhdGg6IHN0cmluZykge1xyXG4gICAgbGV0IGZpbHRlckRhdGEgPSBkYXRhLmZpbHRlcigodXNlcikgPT4ge1xyXG4gICAgICBjb25zdCBpbmNsdWRlZEluRmlsdGVyID1cclxuICAgICAgICB0aGlzLmZpbHRlci5pbmNsdWRlcyhfLmdldCh1c2VyLCBwYXRoKSkgfHxcclxuICAgICAgICBfLmdldCh1c2VyLCBwYXRoKSA9PT0gJ0FkbWluaXN0cmF0b3InO1xyXG4gICAgICByZXR1cm4gIWluY2x1ZGVkSW5GaWx0ZXI7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBmaWx0ZXJEYXRhO1xyXG4gIH1cclxuXHJcbiAgZ2V0VXNlcnNVbmRlckNlcnRhaW5Hcm91cCgpe1xyXG5cclxuICB9XHJcbiAgcmVzZXQoKSB7XHJcbiAgICB0aGlzLm5nU2VsZWN0Q29tcG9uZW50LmhhbmRsZUNsZWFyQ2xpY2soKTtcclxuICB9XHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnVzZXJOYW1lSW5wdXQkLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJsYWJlbFwiPlxyXG4gIDxkaXY+XHJcbiAgICA8bGFiZWwgY2xhc3M9XCJzZWxlY3QtbGFiZWxcIlxyXG4gICAgICA+e3sgbGFiZWwgfCB0cmFuc2xhdGVcclxuICAgICAgfX08c3BhbiAqbmdJZj1cImlzUmVxdWlyZWQoKVwiIGNsYXNzPVwidGV4dC1kYW5nZXIgbS0xXCI+Kjwvc3Bhbj48L2xhYmVsXHJcbiAgICA+XHJcbiAgPC9kaXY+XHJcbjwvbmctY29udGFpbmVyPlxyXG48ZGl2IGNsYXNzPVwidXNlci1zZWxlY3RcIiBbbmdDbGFzc109XCJ7ICdtdWx0aXBsZS13cmFwcGVyJzogbXVsdGlwbGUgfVwiIFNldFJ0bD5cclxuICA8bmctc2VsZWN0XHJcbiAgICAjbmdTZWxlY3RDb21wb25lbnRcclxuICAgIFtpdGVtc109XCJidWZmZXJcIlxyXG4gICAgW2JpbmRMYWJlbF09XCJiaW5kTGFiZWxcIlxyXG4gICAgW3BsYWNlaG9sZGVyXT1cIlxyXG4gICAgICBtdWx0aXBsZSAmJiAoc2VsZWN0aW9uICYmIHNlbGVjdGlvbi5sZW5ndGggPiAwKSA/IHNlbGVjdGlvbnN0cmcgOiBwbGFjZWhvbGRlclxyXG4gICAgXCJcclxuICAgIFttdWx0aXBsZV09XCJtdWx0aXBsZVwiXHJcbiAgICBbc2VhcmNoYWJsZV09XCJzZWFyY2hhYmxlXCJcclxuICAgIFtjbG9zZU9uU2VsZWN0XT1cImNsb3NlT25TZWxlY3RcIlxyXG4gICAgW2hpZGVTZWxlY3RlZF09XCJoaWRlU2VsZWN0ZWRJdGVtc1wiXHJcbiAgICBbbG9hZGluZ109XCJsb2FkaW5nXCJcclxuICAgIChzY3JvbGxUb0VuZCk9XCJvblNjcm9sbFRvRW5kKClcIlxyXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgIFt0eXBlYWhlYWRdPVwidXNlck5hbWVJbnB1dCRcIlxyXG4gICAgW2NvbXBhcmVXaXRoXT1cImNvbXBhcmVGblwiXHJcbiAgICBbKG5nTW9kZWwpXT1cInNlbGVjdGlvblwiXHJcbiAgICAoY2hhbmdlKT1cImVtaXRTZWxlY3Rpb24oJGV2ZW50KVwiXHJcbiAgPlxyXG4gICAgPG5nLXRlbXBsYXRlIG5nLWxhYmVsLXRtcCBsZXQtaXRlbT1cIml0ZW1cIiBsZXQtY2xlYXI9XCJjbGVhclwiPlxyXG4gICAgICA8c3BhblxyXG4gICAgICAgIHN0eWxlPVwiXHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIGNvbHVtbi1nYXA6IDRweDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPGRpdiBzdHlsZT1cIndpZHRoOiAzMHB4OyBoZWlnaHQ6IDMwcHhcIj5cclxuICAgICAgICAgIDxjdHMtYXZhdGFyIFt1c2VyXT1cIml0ZW1cIj48L2N0cy1hdmF0YXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInVzZXItbmFtZVwiPlxyXG4gICAgICAgICAge3sgaXRlbT8uaWQgPT09ICdzeXN0ZW0nID8gKCdTWVNURU1fQURNSU4nIHwgdHJhbnNsYXRlKSA6IGl0ZW0/LnByb3BlcnRpZXM/LmZpcnN0TmFtZSArIFwiIFwiICtpdGVtPy5wcm9wZXJ0aWVzPy5sYXN0TmFtZSB9fVxyXG5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdj5cclxuICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgIGNsYXNzPVwibmctdmFsdWUtaWNvbiByaWdodFwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJjbGVhcihpdGVtKVwiXHJcbiAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgID7Dlzwvc3BhblxyXG4gICAgICAgICAgPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L3NwYW4+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgIDxuZy10ZW1wbGF0ZVxyXG4gICAgICBuZy1vcHRpb24tdG1wXHJcbiAgICAgIGxldC1pdGVtPVwiaXRlbVwiXHJcbiAgICAgIGxldC1pdGVtJD1cIml0ZW0kXCJcclxuICAgICAgbGV0LWluZGV4PVwiaW5kZXhcIlxyXG4gICAgPlxyXG4gICAgICA8c3BhblxyXG4gICAgICAgIHN0eWxlPVwiXHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIGNvbHVtbi1nYXA6IDRweDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPG1hdC1jaGVja2JveFxyXG4gICAgICAgICAgKm5nSWY9XCJtdWx0aXBsZVwiXHJcbiAgICAgICAgICBpZD1cIml0ZW0te3sgaW5kZXggfX1cIlxyXG4gICAgICAgICAgW25nTW9kZWxdPVwiaXRlbSQuc2VsZWN0ZWRcIlxyXG4gICAgICAgICAgKGNsaWNrKT1cIihmYWxzZSlcIlxyXG4gICAgICAgID48L21hdC1jaGVja2JveD5cclxuICAgICAgICA8ZGl2IHN0eWxlPVwid2lkdGg6IDMwcHg7IGhlaWdodDogMzBweFwiPlxyXG4gICAgICAgICAgPGN0cy1hdmF0YXIgW3VzZXJdPVwiaXRlbVwiPjwvY3RzLWF2YXRhcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAge3sgaXRlbT8uaWQgPT09ICdzeXN0ZW0nID8gKCdTWVNURU1fQURNSU4nIHwgdHJhbnNsYXRlKSA6IGl0ZW0/LnByb3BlcnRpZXM/LmZpcnN0TmFtZSArIFwiIFwiICtpdGVtPy5wcm9wZXJ0aWVzPy5sYXN0TmFtZSB9fVxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2PjwvZGl2PlxyXG4gICAgICA8L3NwYW4+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gIDwvbmctc2VsZWN0PlxyXG48L2Rpdj5cclxuPG1hdC1lcnJvclxyXG4gIFthdHRyLmRhdGEtYXV0b21hdGlvbi1pZF09XCInY2FyZC10ZXh0aXRlbS1lcnJvci0nXCJcclxuICBjbGFzcz1cImFwcC10ZXh0aXRlbS1lZGl0YWJsZS1lcnJvclwiXHJcbiAgKm5nSWY9XCJoYXNFcnJvcnMoKVwiXHJcbj5cclxuICA8dWw+XHJcbiAgICA8bGkgKm5nSWY9XCJjb250cm9sLmVycm9ycy5yZXF1aXJlZFwiPlxyXG4gICAgICB7eyBcIlZBTElEQVRPUlMuUkVRVUlSRURcIiB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgPC9saT5cclxuICA8L3VsPlxyXG48L21hdC1lcnJvcj5cclxuIl19
326
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLXNlbGVjdC11c2Vycy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS1zZWxlY3QtdXNlcnMvZHluYW1pYy1mb3JtLXNlbGVjdC11c2Vycy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS1zZWxlY3QtdXNlcnMvZHluYW1pYy1mb3JtLXNlbGVjdC11c2Vycy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLFFBQVEsRUFDUixNQUFNLEVBQ04sSUFBSSxFQUVKLFNBQVMsRUFDVCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFTdkIsT0FBTyxFQUFrQixPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0MsT0FBTyxFQUVMLFlBQVksRUFDWixvQkFBb0IsRUFDcEIsU0FBUyxFQUNULEdBQUcsR0FDSixNQUFNLGdCQUFnQixDQUFDO0FBR3hCLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7Ozs7Ozs7Ozs7OztBQUN6Qzs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQztBQU9yQixNQUFNLE9BQU8sK0JBQStCO0lBa0UxQyxZQUNVLGNBQTRDLEVBQzdDLFNBQTJCLEVBQzFCLFdBQStCLEVBQ1os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LEVBQUUsNENBQTRDO29CQUN6RCxTQUFTLEVBQUUsQ0FBQyw0Q0FBNEMsQ0FBQztvQkFDekQsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7aUJBQ3RDOzswQkF1RUksSUFBSTs7MEJBQUksUUFBUTs0Q0FuRWEsaUJBQWlCO3NCQUFoRCxTQUFTO3VCQUFDLG1CQUFtQjtnQkFNckIsU0FBUztzQkFBakIsS0FBSztnQkFFSyxTQUFTO3NCQUFqQixLQUFLO2dCQUVDLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUcsV0FBVztzQkFBbkIsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBRUcsYUFBYTtzQkFBckIsS0FBSztnQkFFRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBRUcsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUVHLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVHLE1BQU07c0JBQWQsS0FBSztnQkFFSSxhQUFhO3NCQUF0QixNQUFNO2dCQWlPUCxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT25DaGFuZ2VzLFxyXG4gIE9uRGVzdHJveSxcclxuICBPcHRpb25hbCxcclxuICBPdXRwdXQsXHJcbiAgU2VsZixcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICBBYnN0cmFjdENvbnRyb2wsXHJcbiAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXHJcbiAgRm9ybUNvbnRyb2wsXHJcbiAgTmdDb250cm9sLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTmdTZWxlY3RDb21wb25lbnQgfSBmcm9tICdAbmctc2VsZWN0L25nLXNlbGVjdCc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtcclxuICBjYXRjaEVycm9yLFxyXG4gIGRlYm91bmNlVGltZSxcclxuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcclxuICBzd2l0Y2hNYXAsXHJcbiAgdGFwLFxyXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy90cmFuc2xhdGlvbi90cmFuc2xhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVXNlcnNJbkRlcGFydG1lbnRzQXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvdXNlci1hcGkuc2VydmljZSc7XHJcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcclxuaW1wb3J0IHsgQ2FjaGVhYmxlIH0gZnJvbSAndHMtY2FjaGVhYmxlJztcclxuLyoqXHJcbiAqIFVzZXJzIGRyb3Bkb3duIGlucHV0IGludGVncmF0ZWQgd2l0aCB1c2VycyBBUEksXHJcbiAqIHRoYXQgY2FuIGJlIHVzZWQgaW5zaWRlIHJlYWN0aXZlIG9yIHRlbXBsYXRlIGRyaXZlbiBmb3Jtc1xyXG4gKiBAdGl0bGVcclxuICogVXNlcnMgZHJvcGRvd25cclxuICogQGV4YW1wbGVcclxuICogPGN0cy1keW5hbWljLWZvcm0tc2VsZWN0LXVzZXJzXHJcbiAqICAgICBmb3JtQ29udHJvbE5hbWU9XCJjb250cm9sTmFtZVwiXHJcbiAqICAgICBbYmluZFZhbHVlXT1cImJpbmRUb1Byb3BlcnR5XCJcclxuICogICAgIFtiaW5kTGFiZWxdPVwiJ2JpbmRUb0xhYmVsJ1wiXHJcbiAqICAgICBbc2VhcmNoYWJsZV09XCJ0cnVlXCJcclxuICogICAgIFtsYWJlbF09XCInUEFUSC5UTy5UUkFOU0xBVElPTidcIlxyXG4gKiAgICAgW2RlcHRUaXRsZV09XCInYWxsJ1wiXHJcbiAqICAgPjwvY3RzLWR5bmFtaWMtZm9ybS1zZWxlY3QtdXNlcnM+XHJcbiAqL1xyXG5jb25zdCBtaW51dGUgPSA2MDAwMDtcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjdHMtZHluYW1pYy1mb3JtLXNlbGVjdC11c2VycycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2R5bmFtaWMtZm9ybS1zZWxlY3QtdXNlcnMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2R5bmFtaWMtZm9ybS1zZWxlY3QtdXNlcnMuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRHluYW1pY0Zvcm1TZWxlY3RVc2Vyc0NvbXBvbmVudFxyXG4gIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIENvbnRyb2xWYWx1ZUFjY2Vzc29yXHJcbntcclxuICBAVmlld0NoaWxkKCduZ1NlbGVjdENvbXBvbmVudCcpIG5nU2VsZWN0Q29tcG9uZW50OiBOZ1NlbGVjdENvbXBvbmVudDtcclxuICBzZWxlY3Rpb25zdHJnOiBzdHJpbmc7XHJcbiAgZGF0YSA9IFtdO1xyXG4gIGFsbFVzZXJzOiBib29sZWFuO1xyXG4gIHVzZXJOYW1lSW5wdXQkID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpO1xyXG4gIC8qKiBmaWx0ZXIgdXNlcnMgYnkgZGVwYXJ0bWVudCAoZGVwYXJ0bWVudE5hbWUgfCBhbGwpICovXHJcbiAgQElucHV0KCkgZGVwdFRpdGxlOiBzdHJpbmc7XHJcbiAgICAvKiogZmlsdGVyIHVzZXJzIGJ5IGdyb3VwIG5hbWUgPT4gdGhpcyB3aWxsIHJlcGxjZSBkZXAgdGl0bGUgKi9cclxuICAgIEBJbnB1dCgpIGdyb3VwTmFtZTogc3RyaW5nO1xyXG4gIC8qKiBGaWVsZCBMYWJlbCAqL1xyXG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmc7XHJcbiAgLyoqIEJpbmQgdmFsdWUgdG8gb2JqZWN0IHByb3BlcnR5ICovXHJcbiAgQElucHV0KCkgYmluZFZhbHVlO1xyXG4gIC8qKiBCaW5kIGxhYmVsIHRvIG9iamVjdCBwcm9wZXJ0eSAqL1xyXG4gIEBJbnB1dCgpIGJpbmRMYWJlbDtcclxuICAvKiogUGxhY2Vob2xkZXIgdGV4dCAqL1xyXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyO1xyXG4gIC8qKiBDYW4gc2VsZWN0IG11bHRpcGxlICovXHJcbiAgQElucHV0KCkgbXVsdGlwbGUgPSBmYWxzZTtcclxuICAvKiogaXMgZHJvcGRvd24gc2VhcmNoYWJsZSAqL1xyXG4gIEBJbnB1dCgpIHNlYXJjaGFibGUgPSBmYWxzZTtcclxuICAvKiogc2hvdWxkIGNsb3NlIGRyb3Bkb3duIG9uIHZhbHVlIHNlbGVjdGlvbiAqL1xyXG4gIEBJbnB1dCgpIGNsb3NlT25TZWxlY3QgPSB0cnVlO1xyXG4gIC8qKiBzaG91bGQgaGlkZSBzZWxlY3RlZCBpdGVtcyAqL1xyXG4gIEBJbnB1dCgpIGhpZGVTZWxlY3RlZEl0ZW1zID0gZmFsc2U7XHJcbiAgLyoqIFByZSBTZWxlY3RlZCB2YWx1ZXMgKi9cclxuICBASW5wdXQoKSBwcmVTZWxlY3RlZFZhbHVlcztcclxuICAvKiogZmxhZ2UgdG8gdXNlIHByZXNlbGVjdGVkIHZhbHVlcyBvciBub3QgKi9cclxuICBASW5wdXQoKSB1c2VQcmVTZWxlY3RlZFZhbHVlID0gZmFsc2U7XHJcbiAgLyoqIGlzIERpc2FibGVkICovXHJcbiAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcclxuICAvKiogTGlzdCBvZiB1c2VybmFtZXMgdGhhdCBzaG91bGQgYmUgZXhsdWRlZCAgKi9cclxuICBASW5wdXQoKSBmaWx0ZXI6IHN0cmluZ1tdID0gW107XHJcbiAgLyoqIGV2ZW50IGVtaXR0ZWQgd2hlbiBpdGVtIGlzIHNlbGVjdGVkICovXHJcbiAgQE91dHB1dCgpIG9uU2VsZWN0SXRlbXMgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgbG9hZGluZyA9IGZhbHNlO1xyXG4gIHNlbGVjdGlvbjtcclxuICBidWZmZXIgPSBbXTtcclxuICBidWZmZXJTaXplID0gMTAwMDtcclxuICBudW1iZXJPZkl0ZW1zRnJvbUVuZEJlZm9yZUZldGNoaW5nTW9yZSA9IDEwO1xyXG4gIHN1ZmZpeDtcclxuXHJcbiAgcHJvcGFnYXRlQ2hhbmdlOiBhbnkgPSAoKSA9PiB7fTtcclxuICB2YWxpZGF0ZUZuOiBhbnkgPSAoKSA9PiB7fTtcclxuXHJcbiAgcHVibGljIG9uVG91Y2hlZDogYW55ID0gKCkgPT4ge1xyXG4gICAgLypFbXB0eSovXHJcbiAgfTtcclxuICBwYWdlSW5kZXg6IG51bWJlciA9IDA7XHJcbiAgaXNOZXh0UGFnZUF2YWlsYWJsZTogYm9vbGVhbjtcclxuICBwdWJsaWMgZ2V0IGludmFsaWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5jb250cm9sID8gdGhpcy5jb250cm9sLmludmFsaWQgOiBmYWxzZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgc2hvd0Vycm9yKCk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKCF0aGlzLmNvbnRyb2wpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHsgZGlydHksIHRvdWNoZWQgfSA9IHRoaXMuY29udHJvbDtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5pbnZhbGlkID8gZGlydHkgfHwgdG91Y2hlZCA6IGZhbHNlO1xyXG4gIH1cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgdXNlckFwaVNlcnZpY2U6IFVzZXJzSW5EZXBhcnRtZW50c0FwaVNlcnZpY2UsXHJcbiAgICBwdWJsaWMgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGlvbjogVHJhbnNsYXRpb25TZXJ2aWNlLFxyXG4gICAgQFNlbGYoKSBAT3B0aW9uYWwoKSBwdWJsaWMgY29udHJvbDogTmdDb250cm9sXHJcbiAgKSB7XHJcbiAgICBpZiAodGhpcy5jb250cm9sKSB7XHJcbiAgICAgIHRoaXMuY29udHJvbC52YWx1ZUFjY2Vzc29yID0gdGhpcztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGVtaXRTZWxlY3Rpb24oZXZlbnQpIHtcclxuICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0aW9uc3RyZyA9IGAke3RoaXMuc2VsZWN0aW9uLmxlbmd0aH0gJHt0aGlzLnN1ZmZpeH1gO1xyXG4gICAgfVxyXG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodGhpcy5zZWxlY3Rpb24pO1xyXG4gICAgdGhpcy5vblNlbGVjdEl0ZW1zLmVtaXQoZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgb25TY3JvbGxUb0VuZCgpIHtcclxuICAgIHRoaXMuZmV0Y2hNb3JlKCk7XHJcbiAgICArK3RoaXMucGFnZUluZGV4O1xyXG4gICAgaWYgKHRoaXMuaXNOZXh0UGFnZUF2YWlsYWJsZSAmJiB0aGlzLmFsbFVzZXJzKSB7XHJcbiAgICAgIHRoaXMuZ2V0RGVwYXJ0bWVudHModGhpcy5wYWdlSW5kZXgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmZXRjaE1vcmUoKSB7XHJcbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG4gICAgY29uc3QgbGVuID0gdGhpcy5idWZmZXIubGVuZ3RoO1xyXG4gICAgY29uc3QgbW9yZSA9IHRoaXMuZGF0YS5zbGljZShsZW4sIHRoaXMuYnVmZmVyU2l6ZSArIGxlbik7XHJcbiAgICB0aGlzLmJ1ZmZlciA9IHRoaXMuZGF0YS5jb25jYXQobW9yZSk7XHJcbiAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICB9XHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKChjaGFuZ2VzLmRlcHRUaXRsZSAmJiAhY2hhbmdlcy5kZXB0VGl0bGU/LmZpcnN0Q2hhbmdlKSB8fCAoY2hhbmdlcy5ncm91cE5hbWUgJiYgIWNoYW5nZXMuZ3JvdXBOYW1lPy5maXJzdENoYW5nZSkpIHtcclxuICAgICAgdGhpcy5kYXRhID0gW107XHJcbiAgICAgIHRoaXMuYnVmZmVyID0gW107XHJcbiAgICAgIHRoaXMuZ2V0RGVwYXJ0bWVudHMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5hbGxVc2VycyA9IHRoaXMuZGVwdFRpdGxlID09PSAnYWxsJyA/IHRydWUgOiBmYWxzZTtcclxuICAgIHRoaXMuc2VsZWN0aW9uID0gdGhpcy5tdWx0aXBsZSA/IFtdIDogdW5kZWZpbmVkO1xyXG4gICAgaWYgKHRoaXMuYWxsVXNlcnMpIHtcclxuICAgICAgdGhpcy5sb2FkVXNlcnMoKTtcclxuICAgIH1cclxuICAgIHRoaXMuZ2V0RGVwYXJ0bWVudHMoKTtcclxuICAgIHRoaXMudHJhbnNsYXRpb24uaXNBcmFiaWMuc3Vic2NyaWJlKChhcikgPT4ge1xyXG4gICAgICBhclxyXG4gICAgICAgID8gKHRoaXMuc3VmZml4ID0gJ9mF2LPYqtiu2K/ZhSDYqtmFINil2K7YqtmK2KfYsdmHJylcclxuICAgICAgICA6ICh0aGlzLnN1ZmZpeCA9ICdVc2VycyBTZWxlY3RlZCcpO1xyXG4gICAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0aW9uc3RyZyA9IGAke3RoaXMuc2VsZWN0aW9uLmxlbmd0aH0gJHt0aGlzLnN1ZmZpeH1gO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldERlcGFydG1lbnRzKHBhZ2UgPSAwKSB7XHJcbiAgICBpZih0aGlzLmdyb3VwTmFtZSl7XHJcbiAgICAgIHRoaXMudXNlckFwaVNlcnZpY2UuZ2V0VXNlcnNVbmRlckNlcnRhaW5Hcm91cCh0aGlzLmdyb3VwTmFtZSkuc3Vic2NyaWJlKGRhdGEgPT4ge1xyXG4gICAgICAgIGxldCBuZXdEYXRhID0gdGhpcy5jb25zdHJ1Y3RVc2VyQXJyYXkoXHJcbiAgICAgICAgICBkYXRhLnVzZXJzLFxyXG4gICAgICAgICAgJ3Byb3BlcnRpZXMudXNlcm5hbWUnXHJcbiAgICAgICAgKTtcclxuICAgICAgICB0aGlzLmRhdGEgPSB0aGlzLmRhdGEuY29uY2F0KG5ld0RhdGEpO1xyXG4gICAgICAgIHRoaXMuaXNOZXh0UGFnZUF2YWlsYWJsZSA9IGRhdGEuaXNOZXh0UGFnZUF2YWlsYWJsZTtcclxuICAgICAgICB0aGlzLmJ1ZmZlciA9ICh0aGlzLmRhdGEgfHwgW10pLnNsaWNlKDAsIHRoaXMuYnVmZmVyU2l6ZSk7XHJcbiAgICAgICAgdGhpcy5idWZmZXIubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICBpdGVtLmlzU2VsZWN0ZWQgPSBmYWxzZTtcclxuICAgICAgICB9KTtcclxuICAgICAgfSlcclxuICAgIH1lbHNlIGlmICh0aGlzLmRlcHRUaXRsZSkge1xyXG4gICAgICBpZiAodGhpcy5hbGxVc2Vycykge1xyXG4gICAgICAgIHRoaXMuZ2V0QWxsVXNlcnMocGFnZSkuc3Vic2NyaWJlKChkYXRhKSA9PiB7XHJcbiAgICAgICAgICBsZXQgbmV3RGF0YSA9IHRoaXMuY29uc3RydWN0VXNlckFycmF5KGRhdGEuZW50cmllcywgJ2lkJyk7XHJcbiAgICAgICAgICB0aGlzLmRhdGEgPSB0aGlzLmRhdGEuY29uY2F0KG5ld0RhdGEpO1xyXG4gICAgICAgICAgdGhpcy5pc05leHRQYWdlQXZhaWxhYmxlID0gZGF0YS5pc05leHRQYWdlQXZhaWxhYmxlO1xyXG4gICAgICAgICAgdGhpcy5idWZmZXIgPSAodGhpcy5kYXRhIHx8IFtdKS5zbGljZSgwLCB0aGlzLmJ1ZmZlclNpemUpO1xyXG4gICAgICAgICAgdGhpcy5idWZmZXIubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgIGl0ZW0uaXNTZWxlY3RlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTsgLy8gZm9yIGxvYWRpbmcgc3Bpbm5lclxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuZ2V0Q3RzVXNlcnModGhpcy5kZXB0VGl0bGUpLnN1YnNjcmliZSgoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgbGV0IG5ld0RhdGEgPSB0aGlzLmNvbnN0cnVjdFVzZXJBcnJheShcclxuICAgICAgICAgICAgZGF0YS51c2VycyxcclxuICAgICAgICAgICAgJ3Byb3BlcnRpZXMudXNlcm5hbWUnXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgICAgdGhpcy5kYXRhID0gdGhpcy5kYXRhLmNvbmNhdChuZXdEYXRhKTtcclxuICAgICAgICAgIHRoaXMuaXNOZXh0UGFnZUF2YWlsYWJsZSA9IGRhdGEuaXNOZXh0UGFnZUF2YWlsYWJsZTtcclxuICAgICAgICAgIHRoaXMuYnVmZmVyID0gKHRoaXMuZGF0YSB8fCBbXSkuc2xpY2UoMCwgdGhpcy5idWZmZXJTaXplKTtcclxuICAgICAgICAgIHRoaXMuYnVmZmVyLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgICBpdGVtLmlzU2VsZWN0ZWQgPSBmYWxzZTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIGdldEFsbFVzZXJzKHBhZ2UgPSAwKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLnVzZXJBcGlTZXJ2aWNlLmdldEFsbFVzZXJzKHtcclxuICAgICAgY3VycmVudFBhZ2VJbmRleDogcGFnZSxcclxuICAgICAgcGFnZVNpemU6IDIwLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGxvYWRVc2VycygpIHtcclxuICAgIHRoaXMudXNlck5hbWVJbnB1dCRcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgZGVib3VuY2VUaW1lKDIwMCksXHJcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcclxuICAgICAgICB0YXAoKCkgPT4gKHRoaXMubG9hZGluZyA9IHRydWUpKSxcclxuICAgICAgICBzd2l0Y2hNYXAoKHRlcm0pID0+IHtcclxuICAgICAgICAgIGlmICh0ZXJtICYmIHRlcm0ubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmdldFVzZXJzU3VnZ2VzdGlvbnModGVybSk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRBbGxVc2VycygpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZShcclxuICAgICAgICAoZGF0YTogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAoZGF0YS5lbnRyaWVzLmxlbmd0aCkge1xyXG4gICAgICAgICAgICBsZXQgbmV3RGF0YSA9IHRoaXMuY29uc3RydWN0VXNlckFycmF5KGRhdGEuZW50cmllcywgJ2lkJyk7XHJcbiAgICAgICAgICAgIHRoaXMuYnVmZmVyID0gKG5ld0RhdGEgfHwgW10pLnNsaWNlKDAsIHRoaXMuYnVmZmVyU2l6ZSk7XHJcbiAgICAgICAgICAgIHRoaXMuaXNOZXh0UGFnZUF2YWlsYWJsZSA9IGRhdGEuaXNOZXh0UGFnZUF2YWlsYWJsZTtcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmJ1ZmZlciA9IFtdO1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIChlcnIpID0+IHtcclxuICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5idWZmZXIgPSBbXTtcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgfVxyXG4gIFxyXG4gIHdyaXRlVmFsdWUodmFsdWUpIHtcclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLnNlbGVjdGlvbiA9IHZhbHVlO1xyXG4gICAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0aW9uc3RyZyA9IGAke3RoaXMuc2VsZWN0aW9uLmxlbmd0aH0gJHt0aGlzLnN1ZmZpeH1gO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNlbGVjdGlvbiA9IG51bGw7XHJcbiAgICAgIHRoaXMuc2VsZWN0aW9uc3RyZyA9IG51bGxcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbXBhcmVGbihpdGVtLCBzZWxlY3RlZCkge1xyXG4gICAgY29uc29sZS5sb2coXCJpdGVtIDFcIiwgaXRlbSk7XHJcbiAgICBjb25zb2xlLmxvZyhcIkl0ZW0gMlwiLCBzZWxlY3RlZCk7XHJcbiAgICByZXR1cm4gaXRlbS5pZCA9PT0gc2VsZWN0ZWQuaWQ7XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuKSB7XHJcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSkge1xyXG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcclxuICB9XHJcblxyXG4gIHZhbGlkYXRlKGM6IEZvcm1Db250cm9sKSB7XHJcbiAgICByZXR1cm4gdGhpcy52YWxpZGF0ZUZuKGMpO1xyXG4gIH1cclxuICBpc1JlcXVpcmVkKCkge1xyXG4gICAgaWYgKCF0aGlzLmNvbnRyb2wgfHwgIXRoaXMuY29udHJvbC5jb250cm9sLnZhbGlkYXRvcikge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgdmFsaWRhdG9yID0gdGhpcy5jb250cm9sLmNvbnRyb2wudmFsaWRhdG9yKHt9IGFzIEFic3RyYWN0Q29udHJvbCk7XHJcbiAgICByZXR1cm4gdmFsaWRhdG9yICYmIHZhbGlkYXRvci5yZXF1aXJlZDtcclxuICB9XHJcbiAgaGFzRXJyb3JzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuc2hvd0Vycm9yO1xyXG4gIH1cclxuXHJcbiAgLy8gQENhY2hlYWJsZSh7XHJcbiAgLy8gICBtYXhDYWNoZUNvdW50OiAxMDAwLFxyXG4gIC8vICAgbWF4QWdlOiAyMDAwMCxcclxuICAvLyB9KVxyXG5cclxuICBnZXRDdHNVc2VycyhkZXB0VGl0bGUpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMudXNlckFwaVNlcnZpY2UuZ2V0Q3RzVXNlcnMoZGVwdFRpdGxlKTtcclxuICB9XHJcblxyXG4gIEBDYWNoZWFibGUoe1xyXG4gICAgbWF4Q2FjaGVDb3VudDogMTAwMCxcclxuICAgIG1heEFnZTogNSAqIG1pbnV0ZSxcclxuICB9KVxyXG4gIGdldFVzZXJzU3VnZ2VzdGlvbnModGVybSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy51c2VyQXBpU2VydmljZS5nZXRVc2Vyc1N1Z2dlc3Rpb25zKHRlcm0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjb25zdHJ1Y3RVc2VyQXJyYXkoZGF0YSwgZmlsdGVyVmFsdWU6IHN0cmluZykge1xyXG4gICAgbGV0IENvbnN0cnVjdGVkRGF0YTogYW55W107XHJcbiAgICBDb25zdHJ1Y3RlZERhdGEgPSB0aGlzLmluc2VydEZVbGxOYW1lKGRhdGEpO1xyXG4gICAgQ29uc3RydWN0ZWREYXRhID0gdGhpcy5maWx0ZXJVc2VycyhkYXRhLCBmaWx0ZXJWYWx1ZSk7XHJcbiAgICByZXR1cm4gQ29uc3RydWN0ZWREYXRhO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpbnNlcnRGVWxsTmFtZShkYXRhKSB7XHJcbiAgICByZXR1cm4gZGF0YS5tYXAoKHVzZXIpID0+IHtcclxuICAgICAgdXNlci5mdWxsTmFtZSA9IGAke3VzZXIucHJvcGVydGllcz8uZmlyc3ROYW1lfSAke3VzZXIucHJvcGVydGllcz8ubGFzdE5hbWV9YDtcclxuICAgIH0pO1xyXG4gIH1cclxuICBwcml2YXRlIGZpbHRlclVzZXJzKGRhdGEsIHBhdGg6IHN0cmluZykge1xyXG4gICAgbGV0IGZpbHRlckRhdGEgPSBkYXRhLmZpbHRlcigodXNlcikgPT4ge1xyXG4gICAgICBjb25zdCBpbmNsdWRlZEluRmlsdGVyID1cclxuICAgICAgICB0aGlzLmZpbHRlci5pbmNsdWRlcyhfLmdldCh1c2VyLCBwYXRoKSkgfHxcclxuICAgICAgICBfLmdldCh1c2VyLCBwYXRoKSA9PT0gJ0FkbWluaXN0cmF0b3InO1xyXG4gICAgICByZXR1cm4gIWluY2x1ZGVkSW5GaWx0ZXI7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBmaWx0ZXJEYXRhO1xyXG4gIH1cclxuXHJcbiAgZ2V0VXNlcnNVbmRlckNlcnRhaW5Hcm91cCgpe1xyXG5cclxuICB9XHJcbiAgcmVzZXQoKSB7XHJcbiAgICB0aGlzLm5nU2VsZWN0Q29tcG9uZW50LmhhbmRsZUNsZWFyQ2xpY2soKTtcclxuICB9XHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnVzZXJOYW1lSW5wdXQkLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJsYWJlbFwiPlxyXG4gIDxkaXY+XHJcbiAgICA8bGFiZWwgY2xhc3M9XCJzZWxlY3QtbGFiZWxcIlxyXG4gICAgICA+e3sgbGFiZWwgfCB0cmFuc2xhdGVcclxuICAgICAgfX08c3BhbiAqbmdJZj1cImlzUmVxdWlyZWQoKVwiIGNsYXNzPVwidGV4dC1kYW5nZXIgbS0xXCI+Kjwvc3Bhbj48L2xhYmVsXHJcbiAgICA+XHJcbiAgPC9kaXY+XHJcbjwvbmctY29udGFpbmVyPlxyXG48ZGl2IGNsYXNzPVwidXNlci1zZWxlY3RcIiBbbmdDbGFzc109XCJ7ICdtdWx0aXBsZS13cmFwcGVyJzogbXVsdGlwbGUgfVwiIFNldFJ0bD5cclxuICA8bmctc2VsZWN0XHJcbiAgICAjbmdTZWxlY3RDb21wb25lbnRcclxuICAgIFtpdGVtc109XCJidWZmZXJcIlxyXG4gICAgW2JpbmRMYWJlbF09XCJiaW5kTGFiZWxcIlxyXG4gICAgW3BsYWNlaG9sZGVyXT1cIlxyXG4gICAgICBtdWx0aXBsZSAmJiAoc2VsZWN0aW9uICYmIHNlbGVjdGlvbi5sZW5ndGggPiAwKSA/IHNlbGVjdGlvbnN0cmcgOiBwbGFjZWhvbGRlclxyXG4gICAgXCJcclxuICAgIFttdWx0aXBsZV09XCJtdWx0aXBsZVwiXHJcbiAgICBbc2VhcmNoYWJsZV09XCJzZWFyY2hhYmxlXCJcclxuICAgIFtjbG9zZU9uU2VsZWN0XT1cImNsb3NlT25TZWxlY3RcIlxyXG4gICAgW2hpZGVTZWxlY3RlZF09XCJoaWRlU2VsZWN0ZWRJdGVtc1wiXHJcbiAgICBbbG9hZGluZ109XCJsb2FkaW5nXCJcclxuICAgIChzY3JvbGxUb0VuZCk9XCJvblNjcm9sbFRvRW5kKClcIlxyXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgIFt0eXBlYWhlYWRdPVwidXNlck5hbWVJbnB1dCRcIlxyXG4gICAgW2NvbXBhcmVXaXRoXT1cImNvbXBhcmVGblwiXHJcbiAgICBbKG5nTW9kZWwpXT1cInNlbGVjdGlvblwiXHJcbiAgICAoY2hhbmdlKT1cImVtaXRTZWxlY3Rpb24oJGV2ZW50KVwiXHJcbiAgPlxyXG4gICAgPG5nLXRlbXBsYXRlIG5nLWxhYmVsLXRtcCBsZXQtaXRlbT1cIml0ZW1cIiBsZXQtY2xlYXI9XCJjbGVhclwiPlxyXG4gICAgICA8c3BhblxyXG4gICAgICAgIHN0eWxlPVwiXHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIGNvbHVtbi1nYXA6IDRweDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPGRpdiBzdHlsZT1cIndpZHRoOiAzMHB4OyBoZWlnaHQ6IDMwcHhcIj5cclxuICAgICAgICAgIDxjdHMtYXZhdGFyIFt1c2VyXT1cIml0ZW1cIj48L2N0cy1hdmF0YXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInVzZXItbmFtZVwiPlxyXG4gICAgICAgICAge3sgaXRlbT8uaWQgPT09ICdzeXN0ZW0nID8gKCdTWVNURU1fQURNSU4nIHwgdHJhbnNsYXRlKSA6IGl0ZW0/LnByb3BlcnRpZXM/LmZpcnN0TmFtZSArIFwiIFwiICtpdGVtPy5wcm9wZXJ0aWVzPy5sYXN0TmFtZSB9fVxyXG5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdj5cclxuICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgIGNsYXNzPVwibmctdmFsdWUtaWNvbiByaWdodFwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJjbGVhcihpdGVtKVwiXHJcbiAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgID7Dlzwvc3BhblxyXG4gICAgICAgICAgPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L3NwYW4+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgIDxuZy10ZW1wbGF0ZVxyXG4gICAgICBuZy1vcHRpb24tdG1wXHJcbiAgICAgIGxldC1pdGVtPVwiaXRlbVwiXHJcbiAgICAgIGxldC1pdGVtJD1cIml0ZW0kXCJcclxuICAgICAgbGV0LWluZGV4PVwiaW5kZXhcIlxyXG4gICAgPlxyXG4gICAgICA8c3BhblxyXG4gICAgICAgIHN0eWxlPVwiXHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIGNvbHVtbi1nYXA6IDRweDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPG1hdC1jaGVja2JveFxyXG4gICAgICAgICAgKm5nSWY9XCJtdWx0aXBsZVwiXHJcbiAgICAgICAgICBpZD1cIml0ZW0te3sgaW5kZXggfX1cIlxyXG4gICAgICAgICAgW25nTW9kZWxdPVwiaXRlbSQuc2VsZWN0ZWRcIlxyXG4gICAgICAgICAgKGNsaWNrKT1cIihmYWxzZSlcIlxyXG4gICAgICAgID48L21hdC1jaGVja2JveD5cclxuICAgICAgICA8ZGl2IHN0eWxlPVwid2lkdGg6IDMwcHg7IGhlaWdodDogMzBweFwiPlxyXG4gICAgICAgICAgPGN0cy1hdmF0YXIgW3VzZXJdPVwiaXRlbVwiPjwvY3RzLWF2YXRhcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAge3sgaXRlbT8uaWQgPT09ICdzeXN0ZW0nID8gKCdTWVNURU1fQURNSU4nIHwgdHJhbnNsYXRlKSA6IGl0ZW0/LnByb3BlcnRpZXM/LmZpcnN0TmFtZSArIFwiIFwiICtpdGVtPy5wcm9wZXJ0aWVzPy5sYXN0TmFtZSB9fVxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2PjwvZGl2PlxyXG4gICAgICA8L3NwYW4+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gIDwvbmctc2VsZWN0PlxyXG48L2Rpdj5cclxuPG1hdC1lcnJvclxyXG4gIFthdHRyLmRhdGEtYXV0b21hdGlvbi1pZF09XCInY2FyZC10ZXh0aXRlbS1lcnJvci0nXCJcclxuICBjbGFzcz1cImFwcC10ZXh0aXRlbS1lZGl0YWJsZS1lcnJvclwiXHJcbiAgKm5nSWY9XCJoYXNFcnJvcnMoKVwiXHJcbj5cclxuICA8dWw+XHJcbiAgICA8bGkgKm5nSWY9XCJjb250cm9sLmVycm9ycy5yZXF1aXJlZFwiPlxyXG4gICAgICB7eyBcIlZBTElEQVRPUlMuUkVRVUlSRURcIiB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgPC9saT5cclxuICA8L3VsPlxyXG48L21hdC1lcnJvcj5cclxuIl19
@@ -2,7 +2,7 @@ import { Injectable } from '@angular/core';
2
2
  import { from } from 'rxjs';
3
3
  import { catchError } from 'rxjs/operators';
4
4
  import * as i0 from "@angular/core";
5
- import * as i1 from "../../../../../Core/services/nuxeo/nuxeo.service";
5
+ import * as i1 from "../../../../../core/services/nuxeo/nuxeo.service";
6
6
  import * as i2 from "../../../../../shared-services/global-admin.service";
7
7
  /** @ignore */
8
8
  export class UsersInDepartmentsApiService {
@@ -61,4 +61,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
61
61
  providedIn: 'root',
62
62
  }]
63
63
  }], ctorParameters: function () { return [{ type: i1.NuxeoService }, { type: i2.GlobalAdminService }]; } });
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZHluYW1pYy1mb3JtL2NvbXBvbmVudHMvZHluYW1pYy1mb3JtLXNlbGVjdC11c2Vycy9zZXJ2aWNlcy91c2VyLWFwaS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLElBQUksRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFLNUMsY0FBYztBQUlkLE1BQU0sT0FBTyw0QkFBNEI7SUFDdkMsWUFBb0IsWUFBMEIsRUFBVyxXQUFnQztRQUFyRSxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUFXLGdCQUFXLEdBQVgsV0FBVyxDQUFxQjtJQUFHLENBQUM7SUFDN0YsV0FBVyxDQUFDLE1BQU0sR0FBRyxFQUFFO1FBQ3JCLE9BQU8sSUFBSSxDQUNULElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVzthQUMxQixPQUFPLENBQUMsYUFBYSxDQUFDO2FBQ3RCLFdBQVcsaUJBQUcsQ0FBQyxFQUFFLEdBQUcsSUFBSyxNQUFNLEVBQUc7YUFDbEMsR0FBRyxFQUFFLENBQ1QsQ0FBQyxJQUFJLENBQ0osVUFBVSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDakIsTUFBTSxHQUFHLENBQUM7UUFDWixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUNELG1CQUFtQixDQUFDLFFBQWdCLEVBQUUsTUFBTSxHQUFHLEVBQUU7UUFDL0MsT0FBTyxJQUFJLENBQ1QsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXO2FBQzFCLE9BQU8sQ0FBQyxhQUFhLENBQUM7YUFDdEIsV0FBVyxpQkFBRyxDQUFDLEVBQUUsUUFBUSxJQUFLLE1BQU0sRUFBRzthQUN2QyxHQUFHLEVBQUUsQ0FDVCxDQUFDLElBQUksQ0FDSixVQUFVLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNqQixNQUFNLEdBQUcsQ0FBQztRQUNaLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBQ0QsV0FBVyxDQUFDLFNBQVMsRUFBRSxNQUFNLEdBQUcsRUFBRTtRQUNoQyxJQUFJLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDZixJQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFDO1lBQ2hDLEtBQUssR0FBRyxVQUFVLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxhQUFhLFNBQVMsRUFBRSxDQUFBO1NBQ3hFO2FBQUssSUFBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFDO1lBQ2pHLEtBQUssR0FBRyxVQUFVLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxhQUFhLFNBQVMsRUFBRSxDQUFBO1NBQ2pHO2FBQUk7WUFDSCxLQUFLLEdBQUcsWUFBWSxTQUFTLEVBQUUsQ0FBQTtTQUNoQztRQUNELE9BQU8sSUFBSSxDQUNULElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVzthQUMxQixPQUFPLENBQUMsNkJBQTZCLEtBQUssRUFBRSxDQUFDO2FBQzdDLFdBQVcsaUJBQUcsQ0FBQyxFQUFFLEdBQUcsSUFBSyxNQUFNLEVBQUc7YUFDbEMsR0FBRyxFQUFFLENBQ1QsQ0FBQyxJQUFJLENBQ0osVUFBVSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDakIsTUFBTSxHQUFHLENBQUM7UUFDWixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVELHlCQUF5QixDQUFDLEtBQUssRUFBRSxNQUFNLEdBQUcsRUFBRTtRQUMxQyxPQUFPLElBQUksQ0FDVCxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVc7YUFDMUIsT0FBTyxDQUFDLDZCQUE2QixLQUFLLEVBQUUsQ0FBQzthQUM3QyxXQUFXLGlCQUFHLENBQUMsRUFBRSxHQUFHLElBQUssTUFBTSxFQUFHO2FBQ2xDLEdBQUcsRUFBRSxDQUNULENBQUMsSUFBSSxDQUNKLFVBQVUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ2pCLE1BQU0sR0FBRyxDQUFDO1FBQ1osQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7OzBIQTFEVSw0QkFBNEI7OEhBQTVCLDRCQUE0QixjQUYzQixNQUFNOzRGQUVQLDRCQUE0QjtrQkFIeEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgTnV4ZW9TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vQ29yZS9zZXJ2aWNlcy9udXhlby9udXhlby5zZXJ2aWNlJztcclxuaW1wb3J0IHsgR2xvYmFsQWRtaW5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2hhcmVkLXNlcnZpY2VzL2dsb2JhbC1hZG1pbi5zZXJ2aWNlJztcclxuXHJcblxyXG4vKiogQGlnbm9yZSAqL1xyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVXNlcnNJbkRlcGFydG1lbnRzQXBpU2VydmljZSB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBudXhlb1NlcnZpY2U6IE51eGVvU2VydmljZSAsIHByaXZhdGUgZ2xvYmFsQWRtaW4gOiBHbG9iYWxBZG1pblNlcnZpY2UpIHt9XHJcbiAgZ2V0QWxsVXNlcnMocGFyYW1zID0ge30pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIGZyb20oXHJcbiAgICAgIHRoaXMubnV4ZW9TZXJ2aWNlLm51eGVvQ2xpZW50XHJcbiAgICAgICAgLnJlcXVlc3QoJ3VzZXIvc2VhcmNoJylcclxuICAgICAgICAucXVlcnlQYXJhbXMoeyBxOiAnKicsIC4uLnBhcmFtcyB9KVxyXG4gICAgICAgIC5nZXQoKVxyXG4gICAgKS5waXBlKFxyXG4gICAgICBjYXRjaEVycm9yKChlcnIpID0+IHtcclxuICAgICAgICB0aHJvdyBlcnI7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuICBnZXRVc2Vyc1N1Z2dlc3Rpb25zKHVzZXJuYW1lOiBzdHJpbmcsIHBhcmFtcyA9IHt9KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiBmcm9tKFxyXG4gICAgICB0aGlzLm51eGVvU2VydmljZS5udXhlb0NsaWVudFxyXG4gICAgICAgIC5yZXF1ZXN0KCd1c2VyL3NlYXJjaCcpXHJcbiAgICAgICAgLnF1ZXJ5UGFyYW1zKHsgcTogdXNlcm5hbWUsIC4uLnBhcmFtcyB9KVxyXG4gICAgICAgIC5nZXQoKVxyXG4gICAgKS5waXBlKFxyXG4gICAgICBjYXRjaEVycm9yKChlcnIpID0+IHtcclxuICAgICAgICB0aHJvdyBlcnI7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuICBnZXRDdHNVc2VycyhkZXB0VGl0bGUsIHBhcmFtcyA9IHt9KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBncm91cCA9ICcnO1xyXG4gICAgaWYodGhpcy5nbG9iYWxBZG1pbi5pc0dsb2JhbEFkbWluKXtcclxuICAgICAgZ3JvdXAgPSBgdGVuYW50XyR7dGhpcy5nbG9iYWxBZG1pbi5hY3RpdmVUZW5hbnR9X2N0c19yb2xlXyR7ZGVwdFRpdGxlfWBcclxuICAgIH1lbHNlIGlmKCF0aGlzLmdsb2JhbEFkbWluLmlzR2xvYmFsQWRtaW4gJiYgdGhpcy5udXhlb1NlcnZpY2UubnV4ZW9DbGllbnQudXNlci5wcm9wZXJ0aWVzLnRlbmFudElkKXtcclxuICAgICAgZ3JvdXAgPSBgdGVuYW50XyR7dGhpcy5udXhlb1NlcnZpY2UubnV4ZW9DbGllbnQudXNlci5wcm9wZXJ0aWVzLnRlbmFudElkfV9jdHNfcm9sZV8ke2RlcHRUaXRsZX1gXHJcbiAgICB9ZWxzZXtcclxuICAgICAgZ3JvdXAgPSBgY3RzX3JvbGVfJHtkZXB0VGl0bGV9YFxyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZyb20oXHJcbiAgICAgIHRoaXMubnV4ZW9TZXJ2aWNlLm51eGVvQ2xpZW50XHJcbiAgICAgICAgLnJlcXVlc3QoYGdyb3VwLW1lbWJlcnMvYWxsLW1lbWJlcnMvJHtncm91cH1gKVxyXG4gICAgICAgIC5xdWVyeVBhcmFtcyh7IHE6ICcqJywgLi4ucGFyYW1zIH0pXHJcbiAgICAgICAgLmdldCgpXHJcbiAgICApLnBpcGUoXHJcbiAgICAgIGNhdGNoRXJyb3IoKGVycikgPT4ge1xyXG4gICAgICAgIHRocm93IGVycjtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRVc2Vyc1VuZGVyQ2VydGFpbkdyb3VwKGdyb3VwLCBwYXJhbXMgPSB7fSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gZnJvbShcclxuICAgICAgdGhpcy5udXhlb1NlcnZpY2UubnV4ZW9DbGllbnRcclxuICAgICAgICAucmVxdWVzdChgZ3JvdXAtbWVtYmVycy9hbGwtbWVtYmVycy8ke2dyb3VwfWApXHJcbiAgICAgICAgLnF1ZXJ5UGFyYW1zKHsgcTogJyonLCAuLi5wYXJhbXMgfSlcclxuICAgICAgICAuZ2V0KClcclxuICAgICkucGlwZShcclxuICAgICAgY2F0Y2hFcnJvcigoZXJyKSA9PiB7XHJcbiAgICAgICAgdGhyb3cgZXJyO1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG59XHJcblxyXG5cclxuLy8gLnJlcXVlc3QoYGN0c19yb2xlXyR7ZGVwdFRpdGxlfWApXHJcbiJdfQ==
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZHluYW1pYy1mb3JtL2NvbXBvbmVudHMvZHluYW1pYy1mb3JtLXNlbGVjdC11c2Vycy9zZXJ2aWNlcy91c2VyLWFwaS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLElBQUksRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFLNUMsY0FBYztBQUlkLE1BQU0sT0FBTyw0QkFBNEI7SUFDdkMsWUFBb0IsWUFBMEIsRUFBVyxXQUFnQztRQUFyRSxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUFXLGdCQUFXLEdBQVgsV0FBVyxDQUFxQjtJQUFHLENBQUM7SUFDN0YsV0FBVyxDQUFDLE1BQU0sR0FBRyxFQUFFO1FBQ3JCLE9BQU8sSUFBSSxDQUNULElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVzthQUMxQixPQUFPLENBQUMsYUFBYSxDQUFDO2FBQ3RCLFdBQVcsaUJBQUcsQ0FBQyxFQUFFLEdBQUcsSUFBSyxNQUFNLEVBQUc7YUFDbEMsR0FBRyxFQUFFLENBQ1QsQ0FBQyxJQUFJLENBQ0osVUFBVSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDakIsTUFBTSxHQUFHLENBQUM7UUFDWixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUNELG1CQUFtQixDQUFDLFFBQWdCLEVBQUUsTUFBTSxHQUFHLEVBQUU7UUFDL0MsT0FBTyxJQUFJLENBQ1QsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXO2FBQzFCLE9BQU8sQ0FBQyxhQUFhLENBQUM7YUFDdEIsV0FBVyxpQkFBRyxDQUFDLEVBQUUsUUFBUSxJQUFLLE1BQU0sRUFBRzthQUN2QyxHQUFHLEVBQUUsQ0FDVCxDQUFDLElBQUksQ0FDSixVQUFVLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNqQixNQUFNLEdBQUcsQ0FBQztRQUNaLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBQ0QsV0FBVyxDQUFDLFNBQVMsRUFBRSxNQUFNLEdBQUcsRUFBRTtRQUNoQyxJQUFJLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDZixJQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFDO1lBQ2hDLEtBQUssR0FBRyxVQUFVLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxhQUFhLFNBQVMsRUFBRSxDQUFBO1NBQ3hFO2FBQUssSUFBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFDO1lBQ2pHLEtBQUssR0FBRyxVQUFVLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxhQUFhLFNBQVMsRUFBRSxDQUFBO1NBQ2pHO2FBQUk7WUFDSCxLQUFLLEdBQUcsWUFBWSxTQUFTLEVBQUUsQ0FBQTtTQUNoQztRQUNELE9BQU8sSUFBSSxDQUNULElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVzthQUMxQixPQUFPLENBQUMsNkJBQTZCLEtBQUssRUFBRSxDQUFDO2FBQzdDLFdBQVcsaUJBQUcsQ0FBQyxFQUFFLEdBQUcsSUFBSyxNQUFNLEVBQUc7YUFDbEMsR0FBRyxFQUFFLENBQ1QsQ0FBQyxJQUFJLENBQ0osVUFBVSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDakIsTUFBTSxHQUFHLENBQUM7UUFDWixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVELHlCQUF5QixDQUFDLEtBQUssRUFBRSxNQUFNLEdBQUcsRUFBRTtRQUMxQyxPQUFPLElBQUksQ0FDVCxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVc7YUFDMUIsT0FBTyxDQUFDLDZCQUE2QixLQUFLLEVBQUUsQ0FBQzthQUM3QyxXQUFXLGlCQUFHLENBQUMsRUFBRSxHQUFHLElBQUssTUFBTSxFQUFHO2FBQ2xDLEdBQUcsRUFBRSxDQUNULENBQUMsSUFBSSxDQUNKLFVBQVUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ2pCLE1BQU0sR0FBRyxDQUFDO1FBQ1osQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7OzBIQTFEVSw0QkFBNEI7OEhBQTVCLDRCQUE0QixjQUYzQixNQUFNOzRGQUVQLDRCQUE0QjtrQkFIeEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgTnV4ZW9TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy9udXhlby9udXhlby5zZXJ2aWNlJztcclxuaW1wb3J0IHsgR2xvYmFsQWRtaW5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2hhcmVkLXNlcnZpY2VzL2dsb2JhbC1hZG1pbi5zZXJ2aWNlJztcclxuXHJcblxyXG4vKiogQGlnbm9yZSAqL1xyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVXNlcnNJbkRlcGFydG1lbnRzQXBpU2VydmljZSB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBudXhlb1NlcnZpY2U6IE51eGVvU2VydmljZSAsIHByaXZhdGUgZ2xvYmFsQWRtaW4gOiBHbG9iYWxBZG1pblNlcnZpY2UpIHt9XHJcbiAgZ2V0QWxsVXNlcnMocGFyYW1zID0ge30pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIGZyb20oXHJcbiAgICAgIHRoaXMubnV4ZW9TZXJ2aWNlLm51eGVvQ2xpZW50XHJcbiAgICAgICAgLnJlcXVlc3QoJ3VzZXIvc2VhcmNoJylcclxuICAgICAgICAucXVlcnlQYXJhbXMoeyBxOiAnKicsIC4uLnBhcmFtcyB9KVxyXG4gICAgICAgIC5nZXQoKVxyXG4gICAgKS5waXBlKFxyXG4gICAgICBjYXRjaEVycm9yKChlcnIpID0+IHtcclxuICAgICAgICB0aHJvdyBlcnI7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuICBnZXRVc2Vyc1N1Z2dlc3Rpb25zKHVzZXJuYW1lOiBzdHJpbmcsIHBhcmFtcyA9IHt9KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiBmcm9tKFxyXG4gICAgICB0aGlzLm51eGVvU2VydmljZS5udXhlb0NsaWVudFxyXG4gICAgICAgIC5yZXF1ZXN0KCd1c2VyL3NlYXJjaCcpXHJcbiAgICAgICAgLnF1ZXJ5UGFyYW1zKHsgcTogdXNlcm5hbWUsIC4uLnBhcmFtcyB9KVxyXG4gICAgICAgIC5nZXQoKVxyXG4gICAgKS5waXBlKFxyXG4gICAgICBjYXRjaEVycm9yKChlcnIpID0+IHtcclxuICAgICAgICB0aHJvdyBlcnI7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuICBnZXRDdHNVc2VycyhkZXB0VGl0bGUsIHBhcmFtcyA9IHt9KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBncm91cCA9ICcnO1xyXG4gICAgaWYodGhpcy5nbG9iYWxBZG1pbi5pc0dsb2JhbEFkbWluKXtcclxuICAgICAgZ3JvdXAgPSBgdGVuYW50XyR7dGhpcy5nbG9iYWxBZG1pbi5hY3RpdmVUZW5hbnR9X2N0c19yb2xlXyR7ZGVwdFRpdGxlfWBcclxuICAgIH1lbHNlIGlmKCF0aGlzLmdsb2JhbEFkbWluLmlzR2xvYmFsQWRtaW4gJiYgdGhpcy5udXhlb1NlcnZpY2UubnV4ZW9DbGllbnQudXNlci5wcm9wZXJ0aWVzLnRlbmFudElkKXtcclxuICAgICAgZ3JvdXAgPSBgdGVuYW50XyR7dGhpcy5udXhlb1NlcnZpY2UubnV4ZW9DbGllbnQudXNlci5wcm9wZXJ0aWVzLnRlbmFudElkfV9jdHNfcm9sZV8ke2RlcHRUaXRsZX1gXHJcbiAgICB9ZWxzZXtcclxuICAgICAgZ3JvdXAgPSBgY3RzX3JvbGVfJHtkZXB0VGl0bGV9YFxyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZyb20oXHJcbiAgICAgIHRoaXMubnV4ZW9TZXJ2aWNlLm51eGVvQ2xpZW50XHJcbiAgICAgICAgLnJlcXVlc3QoYGdyb3VwLW1lbWJlcnMvYWxsLW1lbWJlcnMvJHtncm91cH1gKVxyXG4gICAgICAgIC5xdWVyeVBhcmFtcyh7IHE6ICcqJywgLi4ucGFyYW1zIH0pXHJcbiAgICAgICAgLmdldCgpXHJcbiAgICApLnBpcGUoXHJcbiAgICAgIGNhdGNoRXJyb3IoKGVycikgPT4ge1xyXG4gICAgICAgIHRocm93IGVycjtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRVc2Vyc1VuZGVyQ2VydGFpbkdyb3VwKGdyb3VwLCBwYXJhbXMgPSB7fSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gZnJvbShcclxuICAgICAgdGhpcy5udXhlb1NlcnZpY2UubnV4ZW9DbGllbnRcclxuICAgICAgICAucmVxdWVzdChgZ3JvdXAtbWVtYmVycy9hbGwtbWVtYmVycy8ke2dyb3VwfWApXHJcbiAgICAgICAgLnF1ZXJ5UGFyYW1zKHsgcTogJyonLCAuLi5wYXJhbXMgfSlcclxuICAgICAgICAuZ2V0KClcclxuICAgICkucGlwZShcclxuICAgICAgY2F0Y2hFcnJvcigoZXJyKSA9PiB7XHJcbiAgICAgICAgdGhyb3cgZXJyO1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG59XHJcblxyXG5cclxuLy8gLnJlcXVlc3QoYGN0c19yb2xlXyR7ZGVwdFRpdGxlfWApXHJcbiJdfQ==
@@ -3,7 +3,7 @@ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
3
  import { Injectable } from "@angular/core";
4
4
  import { DefaultTreeviewI18n, } from "ngx-treeview";
5
5
  import * as i0 from "@angular/core";
6
- import * as i1 from "../../../../Core/services/translation/translation.service";
6
+ import * as i1 from "../../../../core/services/translation/translation.service";
7
7
  /** @ignore */
8
8
  export class DropdownTreeviewSelectI18n extends DefaultTreeviewI18n {
9
9
  constructor(translation) {
@@ -76,4 +76,4 @@ DropdownTreeviewSelectI18n.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12
76
76
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DropdownTreeviewSelectI18n, decorators: [{
77
77
  type: Injectable
78
78
  }], ctorParameters: function () { return [{ type: i1.TranslationService }]; } });
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tdHJlZXZpZXctc2VsZWN0LWkxOG4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS10cmVldmlldy1zZWxlY3QvZHJvcGRvd24tdHJlZXZpZXctc2VsZWN0LWkxOG4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFHTCxtQkFBbUIsR0FDcEIsTUFBTSxjQUFjLENBQUM7OztBQUd0QixjQUFjO0FBRWQsTUFBTSxPQUFPLDBCQUEyQixTQUFRLG1CQUFtQjtJQU1qRSxZQUFvQixXQUErQjtRQUNqRCxLQUFLLEVBQUUsQ0FBQztRQURVLGdCQUFXLEdBQVgsV0FBVyxDQUFvQjtRQUxuRCx1REFBNEIsRUFBRSxFQUFDO0lBTy9CLENBQUM7SUFORCxtQkFBbUIsQ0FBQyxXQUFtQjtRQUNyQyx1QkFBQSxJQUFJLGdEQUFxQixXQUFXLE1BQUEsQ0FBQztJQUN2QyxDQUFDO0lBUUQsSUFBSSxZQUFZLENBQUMsS0FBbUI7UUFDbEMsSUFBSSxDQUFDLG9CQUFvQixHQUFHLEtBQUssQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUM7SUFDbkMsQ0FBQztJQUVELGVBQWU7SUFDZixJQUFJLGVBQWUsQ0FBQyxLQUFhO1FBQy9CLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxLQUFLLENBQUM7SUFDdkMsQ0FBQztJQUNELElBQUksZUFBZTtRQUNqQixPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQztJQUN0QyxDQUFDO0lBQ0Qsb0JBQW9CLENBQUMsR0FBRyxHQUFHLElBQUk7UUFDN0IsSUFBSSxXQUFXLENBQUM7UUFDaEIsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNSLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO2dCQUM3QyxNQUFNO29CQUNKLENBQUMsQ0FBQyxDQUFDLFdBQVcsR0FBRyx3QkFBd0IsQ0FBQztvQkFDMUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxHQUFHLGlDQUFpQyxDQUFDLENBQUM7WUFDeEQsQ0FBQyxDQUFDLENBQUM7U0FDSjthQUFNO1lBQ0wsV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQzdDO1FBQ0QsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztJQUNELE9BQU8sQ0FBQyxTQUE0QjtRQUNsQyxJQUFJLFdBQVcsQ0FBQztRQUNoQixJQUFJLE1BQU0sQ0FBQztRQUVYLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQzdDLElBQUksdUJBQUEsSUFBSSxvREFBa0I7Z0JBQ3hCLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyx1QkFBQSxJQUFJLG9EQUFrQixDQUFDLENBQUM7aUJBQzVEO2dCQUNILE1BQU07b0JBQ0osQ0FBQyxDQUFDLENBQUMsV0FBVyxHQUFHLHFCQUFxQixDQUFDO29CQUN2QyxDQUFDLENBQUMsQ0FBQyxXQUFXLEdBQUcsMEJBQTBCLENBQUMsQ0FBQzthQUNoRDtZQUVELE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEdBQUcsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxHQUFHLHNCQUFzQixDQUFDLENBQUM7UUFDekUsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLElBQUksQ0FBQyxvQkFBb0I7WUFDOUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJO1lBQ2hDLENBQUMsQ0FBQyxJQUFJLENBQUMsdUJBQXVCO2dCQUM5QixDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsdUJBQXVCLElBQUksTUFBTSxFQUFFO2dCQUM3QyxDQUFDLENBQUMsV0FBVyxDQUFDO0lBQ2xCLENBQUM7SUFDRCx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsSUFBSTtRQUNsQyxJQUFJLFVBQWtCLENBQUM7UUFFdkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDN0MsTUFBTTtnQkFDSixDQUFDLENBQUMsQ0FBQyxVQUFVLEdBQUcseUJBQXlCLENBQUM7Z0JBQzFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsR0FBRyxxQkFBcUIsQ0FBQyxDQUFDO1FBQzNDLENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQzs7O3dIQXhFVSwwQkFBMEI7NEhBQTFCLDBCQUEwQjs0RkFBMUIsMEJBQTBCO2tCQUR0QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7XHJcbiAgVHJlZXZpZXdJdGVtLFxyXG4gIFRyZWV2aWV3U2VsZWN0aW9uLFxyXG4gIERlZmF1bHRUcmVldmlld0kxOG4sXHJcbn0gZnJvbSBcIm5neC10cmVldmlld1wiO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vLi4vQ29yZS9zZXJ2aWNlcy90cmFuc2xhdGlvbi90cmFuc2xhdGlvbi5zZXJ2aWNlXCI7XHJcblxyXG4vKiogQGlnbm9yZSAqL1xyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBEcm9wZG93blRyZWV2aWV3U2VsZWN0STE4biBleHRlbmRzIERlZmF1bHRUcmVldmlld0kxOG4ge1xyXG4gICNkZWZhdWx0U2VsZWN0aW9uOiBzdHJpbmcgPSBcIlwiO1xyXG4gIHNldERlZmF1bHRTZWxlY3Rpb24oZGVmYXVsdFRleHQ6IHN0cmluZykge1xyXG4gICAgdGhpcy4jZGVmYXVsdFNlbGVjdGlvbiA9IGRlZmF1bHRUZXh0O1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGlvbjogVHJhbnNsYXRpb25TZXJ2aWNlKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuICBwcml2YXRlIGludGVybmFsU2VsZWN0ZWRJdGVtOiBUcmVldmlld0l0ZW07XHJcbiAgcHJpdmF0ZSBpbnRlcm5hbFNlbGVjdGlvbkxlbmd0aDogbnVtYmVyO1xyXG5cclxuICBzZXQgc2VsZWN0ZWRJdGVtKHZhbHVlOiBUcmVldmlld0l0ZW0pIHtcclxuICAgIHRoaXMuaW50ZXJuYWxTZWxlY3RlZEl0ZW0gPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIGdldCBzZWxlY3RlZEl0ZW0oKTogVHJlZXZpZXdJdGVtIHtcclxuICAgIHJldHVybiB0aGlzLmludGVybmFsU2VsZWN0ZWRJdGVtO1xyXG4gIH1cclxuXHJcbiAgLy8gZm9yIG11bHRpcGxlXHJcbiAgc2V0IHNlbGVjdGlvbkxlbmd0aCh2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICB0aGlzLmludGVybmFsU2VsZWN0aW9uTGVuZ3RoID0gdmFsdWU7XHJcbiAgfVxyXG4gIGdldCBzZWxlY3Rpb25MZW5ndGgoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLmludGVybmFsU2VsZWN0aW9uTGVuZ3RoO1xyXG4gIH1cclxuICBnZXRGaWx0ZXJQbGFjZWhvbGRlcih2YWwgPSBudWxsKTogc3RyaW5nIHtcclxuICAgIGxldCBwbGFjZUhvbGRlcjtcclxuICAgIGlmICghdmFsKSB7XHJcbiAgICAgIHRoaXMudHJhbnNsYXRpb24uaXNBcmFiaWMuc3Vic2NyaWJlKChhcmFiaWMpID0+IHtcclxuICAgICAgICBhcmFiaWNcclxuICAgICAgICAgID8gKHBsYWNlSG9sZGVyID0gXCLYo9iv2K7ZhCDYsdmF2LIg2KfZhNmC2LPZhSDZhNmE2KrYtdmB2YrYqVwiKVxyXG4gICAgICAgICAgOiAocGxhY2VIb2xkZXIgPSBcIlR5cGUgRGVwYXJ0bWVudCBDb2RlIFRvIEZpbHRlciBcIik7XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcGxhY2VIb2xkZXIgPSB0aGlzLnRyYW5zbGF0aW9uLmluc3RhbnQodmFsKTtcclxuICAgIH1cclxuICAgIHJldHVybiBwbGFjZUhvbGRlcjtcclxuICB9XHJcbiAgZ2V0VGV4dChzZWxlY3Rpb246IFRyZWV2aWV3U2VsZWN0aW9uKTogc3RyaW5nIHtcclxuICAgIGxldCBwbGFjZUhvbGRlcjtcclxuICAgIGxldCBzdWZmaXg7XHJcblxyXG4gICAgdGhpcy50cmFuc2xhdGlvbi5pc0FyYWJpYy5zdWJzY3JpYmUoKGFyYWJpYykgPT4ge1xyXG4gICAgICBpZiAodGhpcy4jZGVmYXVsdFNlbGVjdGlvbilcclxuICAgICAgICBwbGFjZUhvbGRlciA9IHRoaXMudHJhbnNsYXRpb24uaW5zdGFudCh0aGlzLiNkZWZhdWx0U2VsZWN0aW9uKTtcclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgYXJhYmljXHJcbiAgICAgICAgICA/IChwbGFjZUhvbGRlciA9IFwi2KfZhNix2KzYp9ihINil2K7YqtmK2KfYsSDYp9mE2YLYs9mFXCIpXHJcbiAgICAgICAgICA6IChwbGFjZUhvbGRlciA9IFwiUGxlYXNlIHNlbGVjdCBEZXBhcnRtZW50XCIpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBhcmFiaWMgPyAoc3VmZml4ID0gXCLYo9mC2LPYp9mFINmF2K7Yqtin2LHYqVwiKSA6IChzdWZmaXggPSBcIkRlcGFydG1lbnRzIFNlbGVjdGVkXCIpO1xyXG4gICAgfSk7XHJcbiAgICBcclxuICAgIHJldHVybiB0aGlzLmludGVybmFsU2VsZWN0ZWRJdGVtXHJcbiAgICAgID8gdGhpcy5pbnRlcm5hbFNlbGVjdGVkSXRlbS50ZXh0XHJcbiAgICAgIDogdGhpcy5pbnRlcm5hbFNlbGVjdGlvbkxlbmd0aFxyXG4gICAgICA/IGAke3RoaXMuaW50ZXJuYWxTZWxlY3Rpb25MZW5ndGh9ICR7c3VmZml4fWBcclxuICAgICAgOiBwbGFjZUhvbGRlcjtcclxuICB9XHJcbiAgZ2V0RmlsdGVyTm9JdGVtc0ZvdW5kVGV4dCh2YWwgPSBudWxsKTogc3RyaW5nIHtcclxuICAgIGxldCBub0l0ZW1UZXh0OiBzdHJpbmc7XHJcblxyXG4gICAgdGhpcy50cmFuc2xhdGlvbi5pc0FyYWJpYy5zdWJzY3JpYmUoKGFyYWJpYykgPT4ge1xyXG4gICAgICBhcmFiaWNcclxuICAgICAgICA/IChub0l0ZW1UZXh0ID0gXCLZhNmFINmK2KrZhSDYp9mE2LnYq9mI2LEg2LnZhNmJINmG2KrYp9im2KxcIilcclxuICAgICAgICA6IChub0l0ZW1UZXh0ID0gXCJObyBpdGVtcyB3ZXJlIGZvdW5kXCIpO1xyXG4gICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIG5vSXRlbVRleHQ7XHJcbiAgfVxyXG59XHJcbiJdfQ==
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tdHJlZXZpZXctc2VsZWN0LWkxOG4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS10cmVldmlldy1zZWxlY3QvZHJvcGRvd24tdHJlZXZpZXctc2VsZWN0LWkxOG4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFHTCxtQkFBbUIsR0FDcEIsTUFBTSxjQUFjLENBQUM7OztBQUd0QixjQUFjO0FBRWQsTUFBTSxPQUFPLDBCQUEyQixTQUFRLG1CQUFtQjtJQU1qRSxZQUFvQixXQUErQjtRQUNqRCxLQUFLLEVBQUUsQ0FBQztRQURVLGdCQUFXLEdBQVgsV0FBVyxDQUFvQjtRQUxuRCx1REFBNEIsRUFBRSxFQUFDO0lBTy9CLENBQUM7SUFORCxtQkFBbUIsQ0FBQyxXQUFtQjtRQUNyQyx1QkFBQSxJQUFJLGdEQUFxQixXQUFXLE1BQUEsQ0FBQztJQUN2QyxDQUFDO0lBUUQsSUFBSSxZQUFZLENBQUMsS0FBbUI7UUFDbEMsSUFBSSxDQUFDLG9CQUFvQixHQUFHLEtBQUssQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUM7SUFDbkMsQ0FBQztJQUVELGVBQWU7SUFDZixJQUFJLGVBQWUsQ0FBQyxLQUFhO1FBQy9CLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxLQUFLLENBQUM7SUFDdkMsQ0FBQztJQUNELElBQUksZUFBZTtRQUNqQixPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQztJQUN0QyxDQUFDO0lBQ0Qsb0JBQW9CLENBQUMsR0FBRyxHQUFHLElBQUk7UUFDN0IsSUFBSSxXQUFXLENBQUM7UUFDaEIsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNSLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO2dCQUM3QyxNQUFNO29CQUNKLENBQUMsQ0FBQyxDQUFDLFdBQVcsR0FBRyx3QkFBd0IsQ0FBQztvQkFDMUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxHQUFHLGlDQUFpQyxDQUFDLENBQUM7WUFDeEQsQ0FBQyxDQUFDLENBQUM7U0FDSjthQUFNO1lBQ0wsV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQzdDO1FBQ0QsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztJQUNELE9BQU8sQ0FBQyxTQUE0QjtRQUNsQyxJQUFJLFdBQVcsQ0FBQztRQUNoQixJQUFJLE1BQU0sQ0FBQztRQUVYLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQzdDLElBQUksdUJBQUEsSUFBSSxvREFBa0I7Z0JBQ3hCLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyx1QkFBQSxJQUFJLG9EQUFrQixDQUFDLENBQUM7aUJBQzVEO2dCQUNILE1BQU07b0JBQ0osQ0FBQyxDQUFDLENBQUMsV0FBVyxHQUFHLHFCQUFxQixDQUFDO29CQUN2QyxDQUFDLENBQUMsQ0FBQyxXQUFXLEdBQUcsMEJBQTBCLENBQUMsQ0FBQzthQUNoRDtZQUVELE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEdBQUcsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxHQUFHLHNCQUFzQixDQUFDLENBQUM7UUFDekUsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLElBQUksQ0FBQyxvQkFBb0I7WUFDOUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJO1lBQ2hDLENBQUMsQ0FBQyxJQUFJLENBQUMsdUJBQXVCO2dCQUM5QixDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsdUJBQXVCLElBQUksTUFBTSxFQUFFO2dCQUM3QyxDQUFDLENBQUMsV0FBVyxDQUFDO0lBQ2xCLENBQUM7SUFDRCx5QkFBeUIsQ0FBQyxHQUFHLEdBQUcsSUFBSTtRQUNsQyxJQUFJLFVBQWtCLENBQUM7UUFFdkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDN0MsTUFBTTtnQkFDSixDQUFDLENBQUMsQ0FBQyxVQUFVLEdBQUcseUJBQXlCLENBQUM7Z0JBQzFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsR0FBRyxxQkFBcUIsQ0FBQyxDQUFDO1FBQzNDLENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQzs7O3dIQXhFVSwwQkFBMEI7NEhBQTFCLDBCQUEwQjs0RkFBMUIsMEJBQTBCO2tCQUR0QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7XHJcbiAgVHJlZXZpZXdJdGVtLFxyXG4gIFRyZWV2aWV3U2VsZWN0aW9uLFxyXG4gIERlZmF1bHRUcmVldmlld0kxOG4sXHJcbn0gZnJvbSBcIm5neC10cmVldmlld1wiO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy90cmFuc2xhdGlvbi90cmFuc2xhdGlvbi5zZXJ2aWNlXCI7XHJcblxyXG4vKiogQGlnbm9yZSAqL1xyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBEcm9wZG93blRyZWV2aWV3U2VsZWN0STE4biBleHRlbmRzIERlZmF1bHRUcmVldmlld0kxOG4ge1xyXG4gICNkZWZhdWx0U2VsZWN0aW9uOiBzdHJpbmcgPSBcIlwiO1xyXG4gIHNldERlZmF1bHRTZWxlY3Rpb24oZGVmYXVsdFRleHQ6IHN0cmluZykge1xyXG4gICAgdGhpcy4jZGVmYXVsdFNlbGVjdGlvbiA9IGRlZmF1bHRUZXh0O1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGlvbjogVHJhbnNsYXRpb25TZXJ2aWNlKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuICBwcml2YXRlIGludGVybmFsU2VsZWN0ZWRJdGVtOiBUcmVldmlld0l0ZW07XHJcbiAgcHJpdmF0ZSBpbnRlcm5hbFNlbGVjdGlvbkxlbmd0aDogbnVtYmVyO1xyXG5cclxuICBzZXQgc2VsZWN0ZWRJdGVtKHZhbHVlOiBUcmVldmlld0l0ZW0pIHtcclxuICAgIHRoaXMuaW50ZXJuYWxTZWxlY3RlZEl0ZW0gPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIGdldCBzZWxlY3RlZEl0ZW0oKTogVHJlZXZpZXdJdGVtIHtcclxuICAgIHJldHVybiB0aGlzLmludGVybmFsU2VsZWN0ZWRJdGVtO1xyXG4gIH1cclxuXHJcbiAgLy8gZm9yIG11bHRpcGxlXHJcbiAgc2V0IHNlbGVjdGlvbkxlbmd0aCh2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICB0aGlzLmludGVybmFsU2VsZWN0aW9uTGVuZ3RoID0gdmFsdWU7XHJcbiAgfVxyXG4gIGdldCBzZWxlY3Rpb25MZW5ndGgoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLmludGVybmFsU2VsZWN0aW9uTGVuZ3RoO1xyXG4gIH1cclxuICBnZXRGaWx0ZXJQbGFjZWhvbGRlcih2YWwgPSBudWxsKTogc3RyaW5nIHtcclxuICAgIGxldCBwbGFjZUhvbGRlcjtcclxuICAgIGlmICghdmFsKSB7XHJcbiAgICAgIHRoaXMudHJhbnNsYXRpb24uaXNBcmFiaWMuc3Vic2NyaWJlKChhcmFiaWMpID0+IHtcclxuICAgICAgICBhcmFiaWNcclxuICAgICAgICAgID8gKHBsYWNlSG9sZGVyID0gXCLYo9iv2K7ZhCDYsdmF2LIg2KfZhNmC2LPZhSDZhNmE2KrYtdmB2YrYqVwiKVxyXG4gICAgICAgICAgOiAocGxhY2VIb2xkZXIgPSBcIlR5cGUgRGVwYXJ0bWVudCBDb2RlIFRvIEZpbHRlciBcIik7XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcGxhY2VIb2xkZXIgPSB0aGlzLnRyYW5zbGF0aW9uLmluc3RhbnQodmFsKTtcclxuICAgIH1cclxuICAgIHJldHVybiBwbGFjZUhvbGRlcjtcclxuICB9XHJcbiAgZ2V0VGV4dChzZWxlY3Rpb246IFRyZWV2aWV3U2VsZWN0aW9uKTogc3RyaW5nIHtcclxuICAgIGxldCBwbGFjZUhvbGRlcjtcclxuICAgIGxldCBzdWZmaXg7XHJcblxyXG4gICAgdGhpcy50cmFuc2xhdGlvbi5pc0FyYWJpYy5zdWJzY3JpYmUoKGFyYWJpYykgPT4ge1xyXG4gICAgICBpZiAodGhpcy4jZGVmYXVsdFNlbGVjdGlvbilcclxuICAgICAgICBwbGFjZUhvbGRlciA9IHRoaXMudHJhbnNsYXRpb24uaW5zdGFudCh0aGlzLiNkZWZhdWx0U2VsZWN0aW9uKTtcclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgYXJhYmljXHJcbiAgICAgICAgICA/IChwbGFjZUhvbGRlciA9IFwi2KfZhNix2KzYp9ihINil2K7YqtmK2KfYsSDYp9mE2YLYs9mFXCIpXHJcbiAgICAgICAgICA6IChwbGFjZUhvbGRlciA9IFwiUGxlYXNlIHNlbGVjdCBEZXBhcnRtZW50XCIpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBhcmFiaWMgPyAoc3VmZml4ID0gXCLYo9mC2LPYp9mFINmF2K7Yqtin2LHYqVwiKSA6IChzdWZmaXggPSBcIkRlcGFydG1lbnRzIFNlbGVjdGVkXCIpO1xyXG4gICAgfSk7XHJcbiAgICBcclxuICAgIHJldHVybiB0aGlzLmludGVybmFsU2VsZWN0ZWRJdGVtXHJcbiAgICAgID8gdGhpcy5pbnRlcm5hbFNlbGVjdGVkSXRlbS50ZXh0XHJcbiAgICAgIDogdGhpcy5pbnRlcm5hbFNlbGVjdGlvbkxlbmd0aFxyXG4gICAgICA/IGAke3RoaXMuaW50ZXJuYWxTZWxlY3Rpb25MZW5ndGh9ICR7c3VmZml4fWBcclxuICAgICAgOiBwbGFjZUhvbGRlcjtcclxuICB9XHJcbiAgZ2V0RmlsdGVyTm9JdGVtc0ZvdW5kVGV4dCh2YWwgPSBudWxsKTogc3RyaW5nIHtcclxuICAgIGxldCBub0l0ZW1UZXh0OiBzdHJpbmc7XHJcblxyXG4gICAgdGhpcy50cmFuc2xhdGlvbi5pc0FyYWJpYy5zdWJzY3JpYmUoKGFyYWJpYykgPT4ge1xyXG4gICAgICBhcmFiaWNcclxuICAgICAgICA/IChub0l0ZW1UZXh0ID0gXCLZhNmFINmK2KrZhSDYp9mE2LnYq9mI2LEg2LnZhNmJINmG2KrYp9im2KxcIilcclxuICAgICAgICA6IChub0l0ZW1UZXh0ID0gXCJObyBpdGVtcyB3ZXJlIGZvdW5kXCIpO1xyXG4gICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIG5vSXRlbVRleHQ7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -6,11 +6,11 @@ import { takeUntil } from "rxjs/operators";
6
6
  import { DropdownTreeviewSelectI18n } from "./dropdown-treeview-select-i18n";
7
7
  import * as i0 from "@angular/core";
8
8
  import * as i1 from "ngx-treeview";
9
- import * as i2 from "../../../../Core/services/translation/translation.service";
9
+ import * as i2 from "../../../../core/services/translation/translation.service";
10
10
  import * as i3 from "../dynamic-form-department/services/department-api.service";
11
11
  import * as i4 from "../dynamic-form-department/services/department-management.service";
12
- import * as i5 from "../../../../Core/services/roles/roles.service";
13
- import * as i6 from "../../../../Core/services/nuxeo/nuxeo.service";
12
+ import * as i5 from "../../../../core/services/roles/roles.service";
13
+ import * as i6 from "../../../../core/services/nuxeo/nuxeo.service";
14
14
  import * as i7 from "../../../../shared-services/global-admin.service";
15
15
  import * as i8 from "@angular/material/checkbox";
16
16
  import * as i9 from "@angular/common";
@@ -328,4 +328,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
328
328
  type: ViewChild,
329
329
  args: [DropdownTreeviewComponent, { static: false }]
330
330
  }] } });
331
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tdHJlZXZpZXctc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZHluYW1pYy1mb3JtL2NvbXBvbmVudHMvZHluYW1pYy1mb3JtLXRyZWV2aWV3LXNlbGVjdC9kcm9wZG93bi10cmVldmlldy1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9keW5hbWljLWZvcm0vY29tcG9uZW50cy9keW5hbWljLWZvcm0tdHJlZXZpZXctc2VsZWN0L2R5bmFtaWMtZm9ybS10cmVldmlldy1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEVBRVQsaUJBQWlCLEdBR2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDL0IsT0FBTyxFQUNMLFlBQVksRUFFWixjQUFjLEVBQ2QseUJBQXlCLEVBQ3pCLGNBQWMsR0FDZixNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBQUUsT0FBTyxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUM3QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJM0MsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBSTdFOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQVFILE1BQU0sT0FBTyx1QkFBdUI7SUFvRGxDLGlFQUFpRTtJQUVqRSxZQUNTLElBQWtCLEVBQ2pCLFdB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VCxRQUFRLEVBQUUsa0NBQWtDO29CQUM1QyxXQUFXLEVBQUUsK0NBQStDO29CQUM1RCxTQUFTLEVBQUUsQ0FBQywrQ0FBK0MsQ0FBQztvQkFDNUQsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsMEJBQTBCLEVBQUUsQ0FBQztpQkFDN0U7d1NBVUMsUUFBUTtzQkFEUCxLQUFLO2dCQUlOLHFCQUFxQjtzQkFEcEIsS0FBSztnQkFHRyxNQUFNO3NCQUFkLEtBQUs7Z0JBRUcsS0FBSztzQkFBYixLQUFLO2dCQUVHLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVJLFdBQVc7c0JBQXBCLE1BQU07Z0JBRUcsV0FBVztzQkFBcEIsTUFBTTtnQkFFRSxhQUFhO3NCQUFyQixLQUFLO2dCQUVHLHVCQUF1QjtzQkFBL0IsS0FBSztnQkFFRyxzQkFBc0I7c0JBQTlCLEtBQUs7Z0JBRUssWUFBWTtzQkFBcEIsS0FBSztnQkFFQyxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBRUcsZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVJLHlCQUF5QjtzQkFBbEMsS0FBSztnQkFDSSxhQUFhO3NCQUF0QixNQUFNO2dCQUVQLHlCQUF5QjtzQkFEeEIsU0FBUzt1QkFBQyx5QkFBeUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIFZpZXdDaGlsZCxcclxuICBPbkNoYW5nZXMsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgT25Jbml0LFxyXG4gIE9uRGVzdHJveSxcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBpc05pbCB9IGZyb20gXCJsb2Rhc2hcIjtcclxuaW1wb3J0IHtcclxuICBUcmVldmlld0kxOG4sXHJcbiAgVHJlZXZpZXdJdGVtLFxyXG4gIFRyZWV2aWV3Q29uZmlnLFxyXG4gIERyb3Bkb3duVHJlZXZpZXdDb21wb25lbnQsXHJcbiAgVHJlZXZpZXdIZWxwZXIsXHJcbn0gZnJvbSBcIm5neC10cmVldmlld1wiO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuaW1wb3J0IHsgVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSBcIi4uLy4uLy4uLy4uL0NvcmUvc2VydmljZXMvdHJhbnNsYXRpb24vdHJhbnNsYXRpb24uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBEZXBhcnRtZW50TWFuYWdlbWVudFNlcnZpY2UgfSBmcm9tIFwiLi4vZHluYW1pYy1mb3JtLWRlcGFydG1lbnQvc2VydmljZXMvZGVwYXJ0bWVudC1tYW5hZ2VtZW50LnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgRGVwYXJ0bWVudEFwaVNlcnZpY2UgfSBmcm9tIFwiLi4vZHluYW1pYy1mb3JtLWRlcGFydG1lbnQvc2VydmljZXMvZGVwYXJ0bWVudC1hcGkuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBEcm9wZG93blRyZWV2aWV3U2VsZWN0STE4biB9IGZyb20gXCIuL2Ryb3Bkb3duLXRyZWV2aWV3LXNlbGVjdC1pMThuXCI7XHJcbmltcG9ydCB7IFJvbGVzU2VydmljZSB9IGZyb20gXCIuLi8uLi8uLi8uLi9Db3JlL3NlcnZpY2VzL3JvbGVzL3JvbGVzLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgTnV4ZW9TZXJ2aWNlIH0gZnJvbSBcIi4uLy4uLy4uLy4uL0NvcmUvc2VydmljZXMvbnV4ZW8vbnV4ZW8uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBHbG9iYWxBZG1pblNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vLi4vc2hhcmVkLXNlcnZpY2VzL2dsb2JhbC1hZG1pbi5zZXJ2aWNlXCI7XHJcbi8qKlxyXG4gKiBBIHRyZWUgdmlldyBzZWxlY3RvciBjb21wb25lbnQgdGhhdCBjYW4gYmUgdXNlZCBpbiByZWFjdGl2ZSBhbmQgdGVtcGxhdGUgZHJpdmVuIGZvcm1zLFxyXG4gKiBpdCBjYW4gYmUgYSBmbGF0IHRyZWUgb3IgYSBkcm9wZG93blxyXG4gKiBAdGl0bGVcclxuICogVHJlZSB2aWV3IHNlbGVjdG9yXHJcbiAqXHJcbiAqIEBleGFtcGxlXHJcbiAqIDxhcHAtZHluYW1pYy1mb3JtLXRyZWV2aWV3LXNlbGVjdFxyXG4gKiBbdHJlZXZpZXddPVwiZmFsc2VcIlxyXG4gKiBbbXVsdGlwbGVdPVwiZmFsc2VcIlxyXG4gKiBbaXRlbXNdPVwiaXRlbXNUcmVlXCJcclxuICogKHZhbHVlQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXHJcbiAqIFsodmFsdWUpXT1cInNlbGVjdGVkVmFsdWVcIlxyXG4gKiA+XHJcbiAqIDwvYXBwLWR5bmFtaWMtZm9ybS10cmVldmlldy1zZWxlY3Q+XHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJhcHAtZHluYW1pYy1mb3JtLXRyZWV2aWV3LXNlbGVjdFwiLFxyXG4gIHRlbXBsYXRlVXJsOiBcIi4vZHluYW1pYy1mb3JtLXRyZWV2aWV3LXNlbGVjdC5jb21wb25lbnQuaHRtbFwiLFxyXG4gIHN0eWxlVXJsczogW1wiLi9keW5hbWljLWZvcm0tdHJlZXZpZXctc2VsZWN0LmNvbXBvbmVudC5zY3NzXCJdLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBUcmVldmlld0kxOG4sIHVzZUNsYXNzOiBEcm9wZG93blRyZWV2aWV3U2VsZWN0STE4biB9XSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyZWV2aWV3U2VsZWN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XHJcbiAgbXVsdGlwbGVTZWxlY3Rpb24gPSBbXTtcclxuICBzZWxlY3RlZEl0ZW07XHJcbiAgc2VsZWN0ZWRQYXJlbnRXaXRoQ2hpbGQgPSBbXTtcclxuICBzaG93UGx1cyA9IGZhbHNlO1xyXG4gIHByZVNlbGVjdGVkID0gW107XHJcbiAgbXlEZXBhcnRtZW50OiBhbnk7XHJcbiAgLyoqIGlzIHRyZWUgVmlldyBvciBkcm9wZG93biB2aWV3ICovXHJcbiAgQElucHV0KClcclxuICB0cmVldmlldyA9IGZhbHNlO1xyXG4gIC8qKiB1c2UgdHJlZSB2aWV3IGluc2lkZSBmb3JtICovXHJcbiAgQElucHV0KClcclxuICB0cmVlVmlld0FzRm9ybUNvbnRyb2wgPSBmYWxzZTtcclxuICAvKiogQ29uZmlnIG9iamVjdCAqL1xyXG4gIEBJbnB1dCgpIGNvbmZpZzogVHJlZXZpZXdDb25maWc7XHJcbiAgLyoqIEl0ZW1zIHRyZWUgKi9cclxuICBASW5wdXQoKSBpdGVtczogVHJlZXZpZXdJdGVtW107XHJcbiAgLyoqIFNlbGVjdGVkIHZhbHVlICovXHJcbiAgQElucHV0KCkgdmFsdWU6IGFueTtcclxuICAvKiogY2FuIHNlbGVjdCBtdWx0aXBsZSAqL1xyXG4gIEBJbnB1dCgpIG11bHRpcGxlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgLyoqIGV2ZW50IGVtaXR0ZWQgb24gdmFsdWUgY2hhbmdlICovXHJcbiAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgLyoqIGV2ZW50IGVtaXR0ZWQgb24gcGx1cyBidXR0b24gY2xpY2tlZCAoZm9yIGRlcGFydG1lbnQgbWFuYWdlbWVudCkgKi9cclxuICBAT3V0cHV0KCkgcGx1c0NsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICAvKiogZXZlbnQgZW1pdHRlZCBvbiBwbHVzIGJ1dHRvbiBjbGlja2VkIChmb3IgZGVwYXJ0bWVudCBtYW5hZ2VtZW50KSAqL1xyXG4gIEBJbnB1dCgpIGRlZmF1bHRTZWxlY3QgPSBmYWxzZTtcclxuLyoqIGN1c3RvbSBwYWdlIHByb3ZpZGVyIHRvIGdldCBkZXBhcnRtZW50IG5lc3RlZCB0cmVlIGZyb20gaXQgY2FuIGJlIHBhc3NlZCBmcm9tIG91dHNpZGUgb3Igbm90IHBhc3NlZCBhbmQgdXNlIHRoZSBkZWZ1bHRlIHZhbHVlICovXHJcbiAgQElucHV0KCkgcHBfZGVwYXJ0bWVudE5lc3RlZFRyZWU7IFxyXG4gIC8qKiB1c2Ugb3V0c2lkZSBjdXN0b20gZnVuY3Rpb24gaW5zdGVhZCBvZiB0aGUgaW5lciBmdW5jdGlvbiAgKi9cclxuICBASW5wdXQoKSB1c2VDdXN0b21BZGRFZGl0QWN0aW9uID0gZmFsc2U7XHJcbiAgICAvKiogY3VzdG9tIHByZWZpeCB0byBiZSB1c2VkIGZvciBhZGFwdGluZyBkYXRhIGNvbWluZyBmcm9tIGFwaSAqL1xyXG4gICAgQElucHV0KCkgY3VzdG9tUHJlZml4O1xyXG4gIC8qKiBjdXN0b20gcGFyZW50IHByb3BlcnR5IG5hbWUgdG8gYmUgcGFzc2VkIGZyb20gb3V0c2lkZSB0aGUgY29tcG9uZW50ICovXHJcbiAgQElucHV0KCkgY3VzdG9tUGFyZW50UHJvcGVydHk7XHJcbiAgQElucHV0KCkgcGxhY2Vob2xkZXI7XHJcbiAgQElucHV0KCkgZGVmYXVsdFNlbGVjdGlvbjogc3RyaW5nO1xyXG4gIC8qKiBkaXNwbGF5IGlucHV0IERlcFR5cGVlIGluIGFkZCBkaWFsb2cgb2YgZGVwYXJ0ZW1lbnQgKi9cclxuICBASW5wdXQoKSBkaXNwbGF5RGVwVHlwZWU7XHJcbiAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0ICgpIGRpc3BsYXlJc0FsbG93UmVjRXh0ZXJuYWw7XHJcbiAgQE91dHB1dCgpIGFjdGlvbkNsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAVmlld0NoaWxkKERyb3Bkb3duVHJlZXZpZXdDb21wb25lbnQsIHsgc3RhdGljOiBmYWxzZSB9KVxyXG4gIGRyb3Bkb3duVHJlZXZpZXdDb21wb25lbnQ6IERyb3Bkb3duVHJlZXZpZXdDb21wb25lbnQ7XHJcbiAgZmlsdGVyVGV4dDogc3RyaW5nO1xyXG4gIGFyYWJpYyA9IGZhbHNlO1xyXG4gIGxhbmd1YWdlU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcbiAgb25EZXN0cm95JDogU3ViamVjdDxib29sZWFuPiA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XHJcblxyXG4gIHByaXZhdGUgZHJvcGRvd25UcmVldmlld1NlbGVjdEkxOG46IERyb3Bkb3duVHJlZXZpZXdTZWxlY3RJMThuO1xyXG5cclxuICAvLyB0aGlzIGNvbXBvbmVudCBpcyB1c2VkIGluIHR3byBwbGFjZXMgdGhlIGZsYWcgaXMgdGhpcy50cmVldmlld1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBpMThuOiBUcmVldmlld0kxOG4sXHJcbiAgICBwcml2YXRlIHRyYW5zbGF0aW9uOiBUcmFuc2xhdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGRlcGFydG1lbnRBcGlTZXJ2aWNlOiBEZXBhcnRtZW50QXBpU2VydmljZSxcclxuICAgIHByaXZhdGUgZGVwYXJ0bWVudE1hbmFnbWVudDogRGVwYXJ0bWVudE1hbmFnZW1lbnRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByb2xlc1NlcnZpY2U6IFJvbGVzU2VydmljZSxcclxuICAgIHByaXZhdGUgbnV4ZW9TZXJ2aWNlOiBOdXhlb1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIGdsb2JhbEFkbWluIDogR2xvYmFsQWRtaW5TZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICB0aGlzLmNvbmZpZyA9IFRyZWV2aWV3Q29uZmlnLmNyZWF0ZSh7XHJcbiAgICAgIGhhc0FsbENoZWNrQm94OiBmYWxzZSxcclxuICAgICAgaGFzQ29sbGFwc2VFeHBhbmQ6IGZhbHNlLFxyXG4gICAgICBoYXNGaWx0ZXI6IHRydWUsXHJcbiAgICAgIG1heEhlaWdodDogMjAwLFxyXG4gICAgICBkZWNvdXBsZUNoaWxkRnJvbVBhcmVudDogdHJ1ZSxcclxuICAgIH0pO1xyXG4gICAgdGhpcy5kcm9wZG93blRyZWV2aWV3U2VsZWN0STE4biA9IGkxOG4gYXMgRHJvcGRvd25UcmVldmlld1NlbGVjdEkxOG47XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuZHJvcGRvd25UcmVldmlld1NlbGVjdEkxOG4uc2V0RGVmYXVsdFNlbGVjdGlvbih0aGlzLmRlZmF1bHRTZWxlY3Rpb24pO1xyXG4gICAgdGhpcy50cmFuc2xhdGlvbi5pc0FyYWJpY1xyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgICAgdGhpcy5hcmFiaWMgPSByZXM7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLm9uRGVzdHJveSQuY29tcGxldGUoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuaXRlbXMgJiYgdGhpcy50cmVldmlldykge1xyXG4gICAgICB0aGlzLnVwZGF0ZVNlbGVjdGVkSXRlbSgpO1xyXG4gICAgfVxyXG4gICAgaWYgKCF0aGlzLnRyZWV2aWV3ICYmICF0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgIC8vIHRoaXMuIGZ1bmN0aW9uIGlzIHRvIHNldCB1aSB3aXRoIHByZSBzZWxlY3RlZCB2YWx1ZVxyXG4gICAgICAvLyBkZWxheSB0byBtYWtlIHN1cmUgdGhhdCBwYWdlIGdldCB0aGUgdmFsdWUgYW5kIHNlbmQgaXQgdG8gaGVyZVxyXG4gICAgICAvLyB3ZSB1c2UgdGhlIHZhbHVlIHNlbnQgdG8gaGVyZSBhbmQgc2VhcmNoIGZvciBpdHMgaXRlbSBvbiBvdXIgaXRlbXMgYW5kIHNldCBpdCBhcyB0aGUgc2VsZWN0ZWQgaXRlbVxyXG4gICAgICB0aGlzLml0ZW1zLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgIHRoaXMuc2V0UHJlU2VsZXRlZEl0ZW0oaXRlbSwgdGhpcy52YWx1ZSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgaWYgKFxyXG4gICAgICAhdGhpcy50cmVldmlldyAmJlxyXG4gICAgICB0aGlzLm11bHRpcGxlICYmXHJcbiAgICAgIHRoaXMudmFsdWUgJiZcclxuICAgICAgdGhpcy52YWx1ZS5sZW5ndGggPiAwXHJcbiAgICApIHtcclxuICAgICAgLy8gdGhpcy5wcmVTZWxlY3RlZCA9IHRoaXMudmFsdWU7XHJcbiAgICAgIHRoaXMubXVsdGlwbGVTZWxlY3Rpb24gPSB0aGlzLnZhbHVlO1xyXG4gICAgICB0aGlzLmRyb3Bkb3duVHJlZXZpZXdTZWxlY3RJMThuLnNlbGVjdGlvbkxlbmd0aCA9XHJcbiAgICAgICAgdGhpcy5tdWx0aXBsZVNlbGVjdGlvbi5sZW5ndGg7XHJcbiAgICAgIHRoaXMuZHJvcGRvd25UcmVldmlld0NvbXBvbmVudC5vblNlbGVjdGVkQ2hhbmdlKFtcclxuICAgICAgICB0aGlzLm11bHRpcGxlU2VsZWN0aW9uLmxlbmd0aCxcclxuICAgICAgXSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRQcmVTZWxldGVkSXRlbShpdGVtLCBjb21wYXJlV2l0aFZhbHVlKSB7XHJcbiAgICBpZiAoKGl0ZW0udmFsdWUgPT09IGNvbXBhcmVXaXRoVmFsdWUpIHx8IChpdGVtLnZhbHVlLnRpdGxlID09PSBjb21wYXJlV2l0aFZhbHVlKSkge1xyXG4gICAgICB0aGlzLnNlbGVjdChpdGVtKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKGl0ZW0uaW50ZXJuYWxDaGlsZHJlbikge1xyXG4gICAgICAgIGl0ZW0uaW50ZXJuYWxDaGlsZHJlbi5tYXAoKGNoaWxkKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnNldFByZVNlbGV0ZWRJdGVtKGNoaWxkLCBjb21wYXJlV2l0aFZhbHVlKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgc2VsZWN0RGVmYXVsdCgpIHtcclxuICAgIGxldCBvcHRpb24gPSB7XHJcbiAgICAgICdpc0dsb2JhbEFkbWluJyA6IHRoaXMuZ2xvYmFsQWRtaW4uaXNHbG9iYWxBZG1pbixcclxuICAgICAgJ2FjdGl2ZVRlbmFudCcgOiB0aGlzLmdsb2JhbEFkbWluLmFjdGl2ZVRlbmFudCxcclxuICAgICAgJ3RlbmFudElkJzogdGhpcy5udXhlb1NlcnZpY2UubnV4ZW9DbGllbnQudXNlci5wcm9wZXJ0aWVzLnRlbmFudElkXHJcbiAgICB9O1xyXG4gICAgdGhpcy5teURlcGFydG1lbnQgPSB0aGlzLnJvbGVzU2VydmljZS5nZXRVc2VyRGVwYXJ0bWVudChcclxuICAgICAgdGhpcy5udXhlb1NlcnZpY2UubnV4ZW9DbGllbnQudXNlcixcclxuICAgICAgJ2N0c19yb2xlXycsXHJcbiAgICAgIG9wdGlvblxyXG4gICAgKTtcclxuICAgIHRoaXMuaXRlbXMubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgIHRoaXMuc2V0UHJlU2VsZXRlZEl0ZW0oaXRlbSwgdGhpcy5teURlcGFydG1lbnQpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG4gIHNlbGVjdChpdGVtOiBUcmVldmlld0l0ZW0pOiB2b2lkIHtcclxuICAgIC8vIGlmICghaXRlbS5jaGlsZHJlbikge1xyXG4gICAgdGhpcy5zZWxlY3RJdGVtKGl0ZW0pO1xyXG4gICAgLy8gfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB1cGRhdGVTZWxlY3RlZEl0ZW0oKTogdm9pZCB7XHJcbiAgICBpZiAoIWlzTmlsKHRoaXMuaXRlbXMpKSB7XHJcbiAgICAgIGNvbnN0IHNlbGVjdGVkSXRlbSA9IFRyZWV2aWV3SGVscGVyLmZpbmRJdGVtSW5MaXN0KFxyXG4gICAgICAgIHRoaXMuaXRlbXMsXHJcbiAgICAgICAgdGhpcy52YWx1ZVxyXG4gICAgICApO1xyXG4gICAgICB0aGlzLnNlbGVjdEl0ZW0oc2VsZWN0ZWRJdGVtKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2VsZWN0SXRlbShpdGVtOiBUcmVldmlld0l0ZW0pOiB2b2lkIHtcclxuICAgIGRvY3VtZW50LmJvZHkuY2xpY2soKTtcclxuICAgIGlmICh0aGlzLmRyb3Bkb3duVHJlZXZpZXdTZWxlY3RJMThuLnNlbGVjdGVkSXRlbSAhPT0gaXRlbSkge1xyXG4gICAgICB0aGlzLmRyb3Bkb3duVHJlZXZpZXdTZWxlY3RJMThuLnNlbGVjdGVkSXRlbSA9IGl0ZW07XHJcbiAgICAgIGlmICh0aGlzLmRyb3Bkb3duVHJlZXZpZXdDb21wb25lbnQpIHtcclxuICAgICAgICB0aGlzLmRyb3Bkb3duVHJlZXZpZXdDb21wb25lbnQub25TZWxlY3RlZENoYW5nZShbaXRlbV0pO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoaXRlbSkge1xyXG4gICAgICAgIGlmICh0aGlzLnRyZWV2aWV3KSB7XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbSA9IGl0ZW0udmFsdWU7XHJcbiAgICAgICAgICAvLyB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQoaXRlbS52YWx1ZS50aXRsZSk7XHJcbiAgICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQoaXRlbSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdChpdGVtLnZhbHVlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgc2VsZWN0TXVsdGlwbGUoZSwgaXRlbTogVHJlZXZpZXdJdGVtKSB7XHJcbiAgICB0aGlzLnNlbGVjdGVkUGFyZW50V2l0aENoaWxkID0gW107XHJcbiAgICB0aGlzLmdldENoaWxkZXJuVmFsdWVzKGl0ZW0pO1xyXG4gICAgaWYgKGUpIHtcclxuICAgICAgdGhpcy5tdWx0aXBsZVNlbGVjdGlvbiA9IHRoaXMubXVsdGlwbGVTZWxlY3Rpb24uY29uY2F0KFxyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRQYXJlbnRXaXRoQ2hpbGRcclxuICAgICAgKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMubXVsdGlwbGVTZWxlY3Rpb24gPSB0aGlzLm11bHRpcGxlU2VsZWN0aW9uLmZpbHRlcigoZSkgPT4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkUGFyZW50V2l0aENoaWxkLmluZGV4T2YoZSkgPCAwO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmRyb3Bkb3duVHJlZXZpZXdTZWxlY3RJMThuLnNlbGVjdGlvbkxlbmd0aCA9XHJcbiAgICAgIHRoaXMubXVsdGlwbGVTZWxlY3Rpb24ubGVuZ3RoO1xyXG4gICAgdGhpcy5kcm9wZG93blRyZWV2aWV3Q29tcG9uZW50Lm9uU2VsZWN0ZWRDaGFuZ2UoW1xyXG4gICAgICB0aGlzLm11bHRpcGxlU2VsZWN0aW9uLmxlbmd0aCxcclxuICAgIF0pO1xyXG4gICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHRoaXMubXVsdGlwbGVTZWxlY3Rpb24pO1xyXG4gIH1cclxuICBnZXRDaGlsZGVyblZhbHVlcyhpdGVtOiBUcmVldmlld0l0ZW0pIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRQYXJlbnRXaXRoQ2hpbGQucHVzaChpdGVtLnZhbHVlKTtcclxuICAgIGlmIChpdGVtLmNoaWxkcmVuKSB7XHJcbiAgICAgIGl0ZW0uY2hpbGRyZW4uZm9yRWFjaCgoaXRlbSkgPT4ge1xyXG4gICAgICAgIHRoaXMuZ2V0Q2hpbGRlcm5WYWx1ZXMoaXRlbSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHJldHVybjtcclxuICB9XHJcblxyXG4gIG9uUGx1c0NsaWNrZWQoZTogTW91c2VFdmVudCwgaXRlbTogVHJlZXZpZXdJdGVtKTogdm9pZCB7XHJcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgaWYgKGl0ZW0pIHtcclxuICAgICAgdGhpcy5wbHVzQ2xpY2tlZC5lbWl0KGl0ZW0udmFsdWUudWlkKTtcclxuICAgIH1cclxuICB9XHJcbiAgLyoqXHJcbiAgICpcclxuICAgKiBAcGFyYW0gZSAgY2xpY2sgZXZlbnRcclxuICAgKiBAcGFyYW0gYWN0aW9uIG5hbWUgb2YgYWN0aW9uIChhZGQgLCB1cGRhdGUpXHJcbiAgICogQHBhcmFtIGl0ZW0gVHJlZXZpZXdJdGVtXHJcbiAgICovXHJcbiAgb25BY3Rpb24oZTogTW91c2VFdmVudCwgYWN0aW9uOiBzdHJpbmcsIGl0ZW06IFRyZWV2aWV3SXRlbSkge1xyXG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIGlmIChpdGVtKSB7XHJcbiAgICAgIGlmIChhY3Rpb24gPT09IFwiYWRkXCIpIHtcclxuICAgICAgICAvLyBlbWl0IGFjdGlvbiB0byBvdXRzaWRlIHRvIGV4ZWN1dGUgZnVuY3Rpb24gZnJvbSBvdXRzaWRlIHRoZSBjb21wb25lbnQgXHJcbiAgICAgICAgaWYodGhpcy51c2VDdXN0b21BZGRFZGl0QWN0aW9uKXtcclxuICAgICAgICAgIHRoaXMuYWN0aW9uQ2xpY2tlZC5lbWl0KHtcclxuICAgICAgICAgICAgYWN0aW9uIDogYWN0aW9uLFxyXG4gICAgICAgICAgICBpdGVtIDogaXRlbVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICB0aGlzLmRlcGFydG1lbnRNYW5hZ21lbnRcclxuICAgICAgICAgICAgLm9wZW5Gb3JtRGlhbG9nKGl0ZW0udmFsdWUudWlkLCBmYWxzZSx0aGlzLmRpc3BsYXlJc0FsbG93UmVjRXh0ZXJuYWwsdGhpcy5kaXNwbGF5RGVwVHlwZWUsIGl0ZW0udmFsdWUudGl0bGUsIGl0ZW0pXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICAgICAgICAgIGlmIChyZXMpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlKGl0ZW0pO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChhY3Rpb24gPT09IFwidXBkYXRlXCIpIHtcclxuICAgICAgICBpZih0aGlzLnVzZUN1c3RvbUFkZEVkaXRBY3Rpb24pe1xyXG4gICAgICAgIC8vIGVtaXQgYWN0aW9uIHRvIG91dHNpZGUgdG8gZXhlY3V0ZSBmdW5jdGlvbiBmcm9tIG91dHNpZGUgdGhlIGNvbXBvbmVudCBcclxuICAgICAgICAgIHRoaXMuYWN0aW9uQ2xpY2tlZC5lbWl0KHtcclxuICAgICAgICAgICAgYWN0aW9uIDogYWN0aW9uLFxyXG4gICAgICAgICAgICBpdGVtIDogaXRlbVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICB0aGlzLmRlcGFydG1lbnRNYW5hZ21lbnRcclxuICAgICAgICAgICAgLm9wZW5Gb3JtRGlhbG9nKGl0ZW0udmFsdWUudWlkLCB0cnVlLHRoaXMuZGlzcGxheUlzQWxsb3dSZWNFeHRlcm5hbCx0aGlzLmRpc3BsYXlEZXBUeXBlZSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgICAgICAgICAgLy8gdGhpcy51cGRhdGUoaXRlbSk7XHJcbiAgICAgICAgICAgICAgdGhpcy5kZXBhcnRtZW50QXBpU2VydmljZS5nZXREZXBhcnRtZW50VHJlZSgpLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLml0ZW1zID0gdGhpcy5kZXBhcnRtZW50QXBpU2VydmljZS5yZWN1cnNpdmVGaWxsKFxyXG4gICAgICAgICAgICAgICAgICByZXMuZW50cmllcyAsIFxyXG4gICAgICAgICAgICAgICAgICB1bmRlZmluZWQgLCBcclxuICAgICAgICAgICAgICAgICAgdW5kZWZpbmVkICwgXHJcbiAgICAgICAgICAgICAgICAgIHVuZGVmaW5lZCAsIFxyXG4gICAgICAgICAgICAgICAgICB0aGlzLmN1c3RvbVByZWZpeCk7XHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICAvKipcclxuICAgKmR1ZSB0byB0aGUgYnVzaW5lc3MgcmVxdWlyZW1lbnRzIHdoaWNoIHN0YXRlZCB0aGF0IG1vcmUgdGhhbiAzIGxldmVscyB3aWxsIGV4aXN0ZWQgdGhlIGN1cnJlbnQgYXBpIHN1cHBvcnQgb25seSAzIGxldmVscyBzbyAqd2UgaGF2ZSB0byBpbmplY3QgMyBuZXcgbGV2ZWxzIG9uIGVhY2ggdHJlZSBlbmRcclxuICAgKiBAcGFyYW0gaXRlbSBUcmVldmlld0l0ZW1cclxuICAgKi9cclxuICBvbkNvbGxhcHNlZChpdGVtOiBUcmVldmlld0l0ZW0pIHtcclxuICAgIGl0ZW0uY29sbGFwc2VkID0gIWl0ZW0uY29sbGFwc2VkO1xyXG4gICAgaWYgKGl0ZW0udmFsdWUubGV2ZWwgPT09IDIpIHtcclxuICAgICAgdGhpcy5kZXBhcnRtZW50QXBpU2VydmljZVxyXG4gICAgICAgIC5nZXREZXBhcnRtZW50TmVzdGVkVHJlZShcclxuICAgICAgICAgIGl0ZW0udmFsdWUudGl0bGUgLCBcclxuICAgICAgICAgIHRoaXMucHBfZGVwYXJ0bWVudE5lc3RlZFRyZWUgPyB0aGlzLnBwX2RlcGFydG1lbnROZXN0ZWRUcmVlIDogJ1BQX0RlcGFydG1lbnQnLFxyXG4gICAgICAgICAgdGhpcy5jdXN0b21QYXJlbnRQcm9wZXJ0eSlcclxuICAgICAgICAuc3Vic2NyaWJlKFxyXG4gICAgICAgICAgKHJlcykgPT4ge1xyXG4gICAgICAgICAgICBpdGVtLmNoaWxkcmVuID0gdGhpcy5kZXBhcnRtZW50QXBpU2VydmljZS5yZWN1cnNpdmVGaWxsKFxyXG4gICAgICAgICAgICAgIHJlcy5lbnRyaWVzICwgXHJcbiAgICAgICAgICAgICAgdW5kZWZpbmVkICwgXHJcbiAgICAgICAgICAgICAgdW5kZWZpbmVkICwgXHJcbiAgICAgICAgICAgICAgdW5kZWZpbmVkICwgXHJcbiAgICAgICAgICAgICAgdGhpcy5jdXN0b21QcmVmaXhcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAoZXJyKSA9PiB7fVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqZHVlIHRvIHRoZSBidXNpbmVzcyByZXF1aXJlbWVudHMgd2hpY2ggc3RhdGVkIHRoYXQgbW9yZSB0aGFuIDMgbGV2ZWxzIHdpbGwgZXhpc3RlZCB0aGUgY3VycmVudCBhcGkgc3VwcG9ydCBvbmx5IDMgbGV2ZWxzIHNvICp3ZSBoYXZlIHRvIGluamVjdCAzIG5ldyBsZXZlbHMgb24gZWFjaCB0cmVlIGVuZFxyXG4gICAqIEBwYXJhbSBpdGVtIFRyZWV2aWV3SXRlbVxyXG4gICAqL1xyXG4gIHVwZGF0ZShpdGVtKSB7XHJcbiAgICB0aGlzLmRlcGFydG1lbnRBcGlTZXJ2aWNlXHJcbiAgICAgIC5nZXREZXBhcnRtZW50TmVzdGVkVHJlZShcclxuICAgICAgICBpdGVtLnZhbHVlLnRpdGxlICwgXHJcbiAgICAgICAgdGhpcy5wcF9kZXBhcnRtZW50TmVzdGVkVHJlZSA/IHRoaXMucHBfZGVwYXJ0bWVudE5lc3RlZFRyZWUgOiAnUFBfRGVwYXJ0bWVudCcsXHJcbiAgICAgICAgdGhpcy5jdXN0b21QYXJlbnRQcm9wZXJ0eSlcclxuICAgICAgLnN1YnNjcmliZShcclxuICAgICAgICAoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgaXRlbS5jaGlsZHJlbiA9IHRoaXMuZGVwYXJ0bWVudEFwaVNlcnZpY2UucmVjdXJzaXZlRmlsbChcclxuICAgICAgICAgICAgZGF0YS5lbnRyaWVzLFxyXG4gICAgICAgICAgICAwLFxyXG4gICAgICAgICAgICB0cnVlLFxyXG4gICAgICAgICAgICB0cnVlLFxyXG4gICAgICAgICAgICB0aGlzLmN1c3RvbVByZWZpeFxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIChlcnIpID0+IHt9XHJcbiAgICAgICk7XHJcbiAgfVxyXG59XHJcbiIsIjxuZy10ZW1wbGF0ZVxyXG4gICNpdGVtVGVtcGxhdGVcclxuICBsZXQtaXRlbT1cIml0ZW1cIlxyXG4gIGxldC1vbkNvbGxhcHNlRXhwYW5kPVwib25Db2xsYXBzZUV4cGFuZFwiXHJcbiAgbGV0LW9uQ2hlY2tlZENoYW5nZT1cIm9uQ2hlY2tlZENoYW5nZVwiXHJcbj5cclxuICA8IS0tIHNpbmdsZSAtLT5cclxuICA8ZGl2ICpuZ0lmPVwiIXRyZWV2aWV3ICYmICFtdWx0aXBsZVwiPlxyXG4gICAgPGRpdlxyXG4gICAgICBjbGFzcz1cInRleHQtbm93cmFwIHJvdy1pdGVtXCJcclxuICAgICAgW25nQ2xhc3NdPVwieyBhY3RpdmU6IGl0ZW0udmFsdWUgPT09IHRoaXMudmFsdWUgfVwiXHJcbiAgICA+XHJcbiAgICAgIDxpXHJcbiAgICAgICAgKm5nSWY9XCJpdGVtLmNoaWxkcmVuXCJcclxuICAgICAgICAoY2xpY2spPVwib25Db2xsYXBzZUV4cGFuZCgpXCJcclxuICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxyXG4gICAgICAgIFtuZ1N3aXRjaF09XCJpdGVtLmNvbGxhcHNlZFwiXHJcbiAgICAgID5cclxuICAgICAgICA8c3BhblxyXG4gICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cInRydWVcIlxyXG4gICAgICAgICAgY2xhc3M9XCJiaSBiaS1jYXJldC17eyBhcmFiaWMgPyAnbGVmdCcgOiAncmlnaHQnIH19LWZpbGwgY2FyZXQtaWNvblwiXHJcbiAgICAgICAgPjwvc3Bhbj5cclxuICAgICAgICA8c3BhblxyXG4gICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cImZhbHNlXCJcclxuICAgICAgICAgIGNsYXNzPVwiYmkgYmktY2FyZXQtZG93bi1maWxsIGNhcmV0LWljb25cIlxyXG4gICAgICAgID48L3NwYW4+XHJcbiAgICAgIDwvaT5cclxuICAgICAgPCEtLSA8bGFiZWwgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsXCIgKGNsaWNrKT1cInNlbGVjdChpdGVtKVwiPnt7XHJcbiAgICAgICAgaXRlbS50ZXh0XHJcbiAgICAgIH19PC9sYWJlbD4gLS0+XHJcbiAgICAgIDxsYWJlbCAqbmdJZj1cIml0ZW0uZGlzYWJsZWRcIiBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWxcIj57e1xyXG4gICAgICAgIGl0ZW0udGV4dFxyXG4gICAgICB9fTwvbGFiZWw+XHJcbiAgICAgIDxsYWJlbCAqbmdJZj1cIiFpdGVtLmRpc2FibGVkXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsXCIgKGNsaWNrKT1cInNlbGVjdChpdGVtKVwiPnt7XHJcbiAgICAgICAgaXRlbS50ZXh0XHJcbiAgICAgIH19PC9sYWJlbD5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDwhLS0gTXVsdGlwbGUgLS0+XHJcbiAgPGRpdiAqbmdJZj1cIiF0cmVldmlldyAmJiBtdWx0aXBsZVwiPlxyXG4gICAgPGRpdlxyXG4gICAgICBjbGFzcz1cInRleHQtbm93cmFwIHJvdy1pdGVtXCJcclxuICAgICAgW25nQ2xhc3NdPVwieyBhY3RpdmU6IGl0ZW0udmFsdWUgPT09IHRoaXMudmFsdWUgfVwiXHJcbiAgICA+XHJcbiAgICAgIDxpXHJcbiAgICAgICAgKm5nSWY9XCJpdGVtLmNoaWxkcmVuXCJcclxuICAgICAgICAoY2xpY2spPVwib25Db2xsYXBzZUV4cGFuZCgpXCJcclxuICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxyXG4gICAgICAgIFtuZ1N3aXRjaF09XCJpdGVtLmNvbGxhcHNlZFwiXHJcbiAgICAgID5cclxuICAgICAgICA8c3BhblxyXG4gICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cInRydWVcIlxyXG4gICAgICAgICAgY2xhc3M9XCJiaSBiaS1jYXJldC17eyBhcmFiaWMgPyAnbGVmdCcgOiAncmlnaHQnIH19LWZpbGwgY2FyZXQtaWNvblwiXHJcbiAgICAgICAgPjwvc3Bhbj5cclxuICAgICAgICA8c3BhblxyXG4gICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cImZhbHNlXCJcclxuICAgICAgICAgIGNsYXNzPVwiYmkgYmktY2FyZXQtZG93bi1maWxsIGNhcmV0LWljb25cIlxyXG4gICAgICAgID48L3NwYW4+XHJcbiAgICAgIDwvaT5cclxuICAgICAgPCEtLSA8aW5wdXRcclxuICAgICAgICBjbGFzcz1cIm11bHRpcGxlLWNoZWNrQm94XCJcclxuICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxyXG4gICAgICAgIFtjaGVja2VkXT1cIm11bHRpcGxlU2VsZWN0aW9uLmluY2x1ZGVzKGl0ZW0udmFsdWUpXCJcclxuICAgICAgICAoY2hhbmdlKT1cInNlbGVjdE11bHRpcGxlKCRldmVudC50YXJnZXQuY2hlY2tlZCwgaXRlbSlcIlxyXG4gICAgICAvPlxyXG5cclxuICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbFwiPnt7IGl0ZW0udGV4dCB9fTwvbGFiZWw+IC0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibXVsdGlwbGUtdHJlZXZpZXdcIj5cclxuICAgICAgICA8bWF0LWNoZWNrYm94XHJcbiAgICAgICAgICBbY2hlY2tlZF09XCJtdWx0aXBsZVNlbGVjdGlvbi5pbmNsdWRlcyhpdGVtLnZhbHVlKVwiXHJcbiAgICAgICAgICAoY2hhbmdlKT1cInNlbGVjdE11bHRpcGxlKCRldmVudC5jaGVja2VkLCBpdGVtKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPHNwYW4+IHt7IGl0ZW0udGV4dCB9fSA8L3NwYW4+XHJcbiAgICAgICAgPC9tYXQtY2hlY2tib3g+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbiAgPCEtLSB0cmVlVmlldyAtLT5cclxuICA8ZGl2ICpuZ0lmPVwidHJlZXZpZXcgJiYgIXRyZWVWaWV3QXNGb3JtQ29udHJvbFwiIGNsYXNzPVwidHJlZS12aWV3LWNvbnRhaW5lclwiPlxyXG4gICAgPGRpdlxyXG4gICAgICAobW91c2VlbnRlcik9XCJob3ZlckZpZWxkLnN0eWxlLmRpc3BsYXkgPSAnZmxleCdcIlxyXG4gICAgICAobW91c2VsZWF2ZSk9XCJob3ZlckZpZWxkLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSdcIlxyXG4gICAgICBjbGFzcz1cInRleHQtbm93cmFwIHJvdy1pdGVtIHRyZWV2aWV3LXJvd1wiXHJcbiAgICAgIFtuZ0NsYXNzXT1cInsgc2VsZWN0ZWQ6IGl0ZW0udmFsdWUgPT0gc2VsZWN0ZWRJdGVtIH1cIlxyXG4gICAgPlxyXG4gICAgICA8aVxyXG4gICAgICAgICpuZ0lmPVwiaXRlbS5jaGlsZHJlblwiXHJcbiAgICAgICAgKGNsaWNrKT1cIm9uQ29sbGFwc2VkKGl0ZW0pXCJcclxuICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxyXG4gICAgICAgIFtuZ1N3aXRjaF09XCJpdGVtLmNvbGxhcHNlZFwiXHJcbiAgICAgID5cclxuICAgICAgICA8c3BhblxyXG4gICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cInRydWVcIlxyXG4gICAgICAgICAgY2xhc3M9XCJiaSBiaS1jYXJldC17eyBhcmFiaWMgPyAnbGVmdCcgOiAncmlnaHQnIH19LWZpbGwgY2FyZXQtaWNvblwiXHJcbiAgICAgICAgPjwvc3Bhbj5cclxuXHJcbiAgICAgICAgPHNwYW5cclxuICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCJmYWxzZVwiXHJcbiAgICAgICAgICBjbGFzcz1cImJpIGJpLWNhcmV0LWRvd24tZmlsbCBjYXJldC1pY29uXCJcclxuICAgICAgICA+PC9zcGFuPlxyXG4gICAgICA8L2k+XHJcbiAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwtdHJlZXZpZXdcIiAoY2xpY2spPVwic2VsZWN0KGl0ZW0pXCJcclxuICAgICAgICA+e3sgaXRlbS50ZXh0IH19XHJcbiAgICAgICAgPHNwYW4gI2hvdmVyRmllbGQgY2xhc3M9XCJob3ZlckZpZWxkXCI+XHJcbiAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgbWF0VG9vbHRpcD1cInt7ICdkZXBhcnRtZW50X21hbmFnZW1lbnQuZm9ybS5lZGl0JyB8IHRyYW5zbGF0ZSB9fVwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJvbkFjdGlvbigkZXZlbnQsICd1cGRhdGUnLCBpdGVtKVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxsaSBjbGFzcz1cImJpIGJpLXBlbmNpbFwiPjwvbGk+XHJcbiAgICAgICAgICA8L3NwYW4+XHJcblxyXG4gICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJ7e1xyXG4gICAgICAgICAgICAgICdkZXBhcnRtZW50X21hbmFnZW1lbnQuZm9ybS50b29sVGlwX21lc3NhZ2UnIHwgdHJhbnNsYXRlXHJcbiAgICAgICAgICAgIH19XCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uQWN0aW9uKCRldmVudCwgJ2FkZCcsIGl0ZW0pXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGxpIGNsYXNzPVwiYmkgYmktcGx1c1wiPjwvbGk+XHJcbiAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgPC9zcGFuPlxyXG4gICAgICA8L2xhYmVsPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbiAgICA8IS0tIHRyZWVWaWV3IGFzIGZvcm0gY29udHJvbCAtLT5cclxuICAgIDxkaXYgKm5nSWY9XCJ0cmVldmlldyAmJiB0cmVlVmlld0FzRm9ybUNvbnRyb2xcIiBjbGFzcz1cInRyZWUtdmlldy1jb250YWluZXJcIj5cclxuICAgICAgPGRpdlxyXG4gICAgICAgIGNsYXNzPVwidGV4dC1ub3dyYXAgcm93LWl0ZW0gdHJlZXZpZXctcm93LWZvcm0tY29udHJvbFwiXHJcbiAgICAgICAgW25nQ2xhc3NdPVwieyAnc2VsZWN0ZWQtZm9ybS1jb250cm9sJzogaXRlbS52YWx1ZSA9PSBzZWxlY3RlZEl0ZW0gfVwiXHJcbiAgICAgID5cclxuICAgICAgICA8aVxyXG4gICAgICAgICAgKm5nSWY9XCJpdGVtLmNoaWxkcmVuXCJcclxuICAgICAgICAgIChjbGljayk9XCJvbkNvbGxhcHNlZChpdGVtKVwiXHJcbiAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxyXG4gICAgICAgICAgW25nU3dpdGNoXT1cIml0ZW0uY29sbGFwc2VkXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiYmkgYmktY2FyZXQte3sgYXJhYmljID8gJ2xlZnQnIDogJ3JpZ2h0JyB9fS1maWxsIGNhcmV0LWljb25cIlxyXG4gICAgICAgICAgPjwvc3Bhbj5cclxuICBcclxuICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCJmYWxzZVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiYmkgYmktY2FyZXQtZG93bi1maWxsIGNhcmV0LWljb25cIlxyXG4gICAgICAgICAgPjwvc3Bhbj5cclxuICAgICAgICA8L2k+XHJcbiAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbC10cmVldmlld1wiIChjbGljayk9XCJzZWxlY3QoaXRlbSlcIlxyXG4gICAgICAgICAgPnt7IGl0ZW0udGV4dCB9fVxyXG4gICAgICAgIDwvbGFiZWw+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcbjxuZy10ZW1wbGF0ZVxyXG4gICNoZWFkZXJUZW1wbGF0ZVxyXG4gIGxldC1jb25maWc9XCJjb25maWdcIlxyXG4gIGxldC1pdGVtPVwiaXRlbVwiXHJcbiAgbGV0LW9uQ29sbGFwc2VFeHBhbmQ9XCJvbkNvbGxhcHNlRXhwYW5kXCJcclxuICBsZXQtb25DaGVja2VkQ2hhbmdlPVwib25DaGVja2VkQ2hhbmdlXCJcclxuICBsZXQtb25GaWx0ZXJUZXh0Q2hhbmdlPVwib25GaWx0ZXJUZXh0Q2hhbmdlXCJcclxuPlxyXG4gIDxkaXYgKm5nSWY9XCJjb25maWcuaGFzRmlsdGVyXCIgY2xhc3M9XCJyb3cgcm93LWZpbHRlclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbC0xMlwiPlxyXG4gICAgICA8aW5wdXRcclxuICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXHJcbiAgICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJpMThuLmdldEZpbHRlclBsYWNlaG9sZGVyKHBsYWNlaG9sZGVyKVwiXHJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJmaWx0ZXJUZXh0XCJcclxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvbkZpbHRlclRleHRDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgIC8+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2ICpuZ0lmPVwiY29uZmlnLmhhc0FsbENoZWNrQm94IHx8IGNvbmZpZy5oYXNDb2xsYXBzZUV4cGFuZFwiIGNsYXNzPVwicm93XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sLTEyXCI+XHJcbiAgICAgIDxsYWJlbCAqbmdJZj1cImNvbmZpZy5oYXNBbGxDaGVja0JveFwiIChjbGljayk9XCJzZWxlY3QoaXRlbSlcIj5cclxuICAgICAgICA8c3Ryb25nPnt7IGkxOG4uZ2V0QWxsQ2hlY2tib3hUZXh0KCkgfX08L3N0cm9uZz5cclxuICAgICAgPC9sYWJlbD5cclxuICAgICAgPGxhYmVsXHJcbiAgICAgICAgKm5nSWY9XCJjb25maWcuaGFzQ29sbGFwc2VFeHBhbmRcIlxyXG4gICAgICAgIGNsYXNzPVwiZmxvYXQtcmlnaHRcIlxyXG4gICAgICAgIChjbGljayk9XCJvbkNvbGxhcHNlRXhwYW5kKClcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPGlcclxuICAgICAgICAgIFt0aXRsZV09XCJpMThuLmdldFRvb2x0aXBDb2xsYXBzZUV4cGFuZFRleHQoaXRlbS5jb2xsYXBzZWQpXCJcclxuICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXHJcbiAgICAgICAgICBbbmdTd2l0Y2hdPVwiaXRlbS5jb2xsYXBzZWRcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxzcGFuICpuZ1N3aXRjaENhc2U9XCJ0cnVlXCIgY2xhc3M9XCJiaSBiaS1hcnJvd3MtYW5nbGUtZXhwYW5kXCI+PC9zcGFuPlxyXG4gICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cImZhbHNlXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJiaSBiaS1hcnJvd3MtYW5nbGUtY29udHJhY3RcIlxyXG4gICAgICAgICAgPjwvc3Bhbj5cclxuICAgICAgICA8L2k+XHJcbiAgICAgIDwvbGFiZWw+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8YSAqbmdJZj1cImRlZmF1bHRTZWxlY3RcIiBjbGFzcz1cInNlbGVjdC1kZWZhdWx0XCIgKGNsaWNrKT1cInNlbGVjdERlZmF1bHQoKVwiPnt7J2RlcGFydG1lbnRfbWFuYWdlbWVudC5zZWxlY3REZWZhdWx0J3wgdHJhbnNsYXRlfX08L2E+XHJcbiAgPGRpdiAqbmdJZj1cImNvbmZpZy5oYXNEaXZpZGVyXCIgY2xhc3M9XCJkcm9wZG93bi1kaXZpZGVyXCIgW25nQ2xhc3NdPVwieydkcm9wZG93bi1kaXZpZGVyLW5vTWFyZ2luJzogZGVmYXVsdFNlbGVjdH1cIj48L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy1jb250YWluZXIgKm5nSWY9XCIhdHJlZXZpZXcgJiYgIW11bHRpcGxlXCI+XHJcbiAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLXdyYXBwZXJcIj5cclxuICAgIDxuZ3gtZHJvcGRvd24tdHJlZXZpZXdcclxuICAgICAgW2NvbmZpZ109XCJjb25maWdcIlxyXG4gICAgICBbaGVhZGVyVGVtcGxhdGVdPVwiaGVhZGVyVGVtcGxhdGVcIlxyXG4gICAgICBbaXRlbXNdPVwiaXRlbXNcIlxyXG4gICAgICBbaXRlbVRlbXBsYXRlXT1cIml0ZW1UZW1wbGF0ZVwiXHJcbiAgICA+XHJcbiAgPC9uZ3gtZHJvcGRvd24tdHJlZXZpZXc+XHJcbiAgPGRpdiBjbGFzcz1cImRpc2FibGUtZWZmZWN0XCIgKm5nSWY9XCJkaXNhYmxlZFwiPjwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L25nLWNvbnRhaW5lcj5cclxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIiF0cmVldmlldyAmJiBtdWx0aXBsZVwiPlxyXG4gIDxkaXYgY2xhc3M9XCJtdWx0aXBsZS10cmVlLXZpZXcgZHJvcGRvd24td3JhcHBlclwiPlxyXG4gICAgPG5neC1kcm9wZG93bi10cmVldmlld1xyXG4gICAgICBbY29uZmlnXT1cImNvbmZpZ1wiXHJcbiAgICAgIFtpdGVtc109XCJpdGVtc1wiXHJcbiAgICAgIFtpdGVtVGVtcGxhdGVdPVwiaXRlbVRlbXBsYXRlXCJcclxuICAgID5cclxuICAgIDwvbmd4LWRyb3Bkb3duLXRyZWV2aWV3PlxyXG4gIDxkaXYgY2xhc3M9XCJkaXNhYmxlLWVmZmVjdFwiICpuZ0lmPVwiZGlzYWJsZWRcIj48L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9uZy1jb250YWluZXI+XHJcblxyXG48bmctY29udGFpbmVyICpuZ0lmPVwidHJlZXZpZXcgJiYgIXRyZWVWaWV3QXNGb3JtQ29udHJvbFwiPlxyXG4gIDxkaXYgY2xhc3M9XCJ0cmVlLXZpZXdcIj5cclxuICAgIDxuZ3gtdHJlZXZpZXdcclxuICAgICAgW2NvbmZpZ109XCJjb25maWdcIlxyXG4gICAgICBbaGVhZGVyVGVtcGxhdGVdPVwiaGVhZGVyVGVtcGxhdGVcIlxyXG4gICAgICBbaXRlbXNdPVwiaXRlbXNcIlxyXG4gICAgICBbaXRlbVRlbXBsYXRlXT1cIml0ZW1UZW1wbGF0ZVwiXHJcbiAgICA+XHJcbiAgICA8L25neC10cmVldmlldz5cclxuICA8L2Rpdj5cclxuPC9uZy1jb250YWluZXI+XHJcbjxuZy1jb250YWluZXIgKm5nSWY9XCJ0cmVldmlldyAmJiB0cmVlVmlld0FzRm9ybUNvbnRyb2xcIj5cclxuICA8ZGl2IGNsYXNzPVwidHJlZS12aWV3LWZvcm0tY29udHJvbFwiPlxyXG4gICAgPG5neC10cmVldmlld1xyXG4gICAgICBbY29uZmlnXT1cImNvbmZpZ1wiXHJcbiAgICAgIFtoZWFkZXJUZW1wbGF0ZV09XCJoZWFkZXJUZW1wbGF0ZVwiXHJcbiAgICAgIFtpdGVtc109XCJpdGVtc1wiXHJcbiAgICAgIFtpdGVtVGVtcGxhdGVdPVwiaXRlbVRlbXBsYXRlXCJcclxuICAgID5cclxuICAgIDwvbmd4LXRyZWV2aWV3PlxyXG4gIDwvZGl2PlxyXG48L25nLWNvbnRhaW5lcj5cclxuIl19
331
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tdHJlZXZpZXctc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZHluYW1pYy1mb3JtL2NvbXBvbmVudHMvZHluYW1pYy1mb3JtLXRyZWV2aWV3LXNlbGVjdC9kcm9wZG93bi10cmVldmlldy1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9keW5hbWljLWZvcm0vY29tcG9uZW50cy9keW5hbWljLWZvcm0tdHJlZXZpZXctc2VsZWN0L2R5bmFtaWMtZm9ybS10cmVldmlldy1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEVBRVQsaUJBQWlCLEdBR2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDL0IsT0FBTyxFQUNMLFlBQVksRUFFWixjQUFjLEVBQ2QseUJBQXlCLEVBQ3pCLGNBQWMsR0FDZixNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBQUUsT0FBTyxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUM3QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJM0MsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBSTdFOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQVFILE1BQU0sT0FBTyx1QkFBdUI7SUFvRGxDLGlFQUFpRTtJQUVqRSxZQUNTLElBQWtCLEVBQ2pCLFdB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VCxRQUFRLEVBQUUsa0NBQWtDO29CQUM1QyxXQUFXLEVBQUUsK0NBQStDO29CQUM1RCxTQUFTLEVBQUUsQ0FBQywrQ0FBK0MsQ0FBQztvQkFDNUQsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsMEJBQTBCLEVBQUUsQ0FBQztpQkFDN0U7d1NBVUMsUUFBUTtzQkFEUCxLQUFLO2dCQUlOLHFCQUFxQjtzQkFEcEIsS0FBSztnQkFHRyxNQUFNO3NCQUFkLEtBQUs7Z0JBRUcsS0FBSztzQkFBYixLQUFLO2dCQUVHLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVJLFdBQVc7c0JBQXBCLE1BQU07Z0JBRUcsV0FBVztzQkFBcEIsTUFBTTtnQkFFRSxhQUFhO3NCQUFyQixLQUFLO2dCQUVHLHVCQUF1QjtzQkFBL0IsS0FBSztnQkFFRyxzQkFBc0I7c0JBQTlCLEtBQUs7Z0JBRUssWUFBWTtzQkFBcEIsS0FBSztnQkFFQyxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBRUcsZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVJLHlCQUF5QjtzQkFBbEMsS0FBSztnQkFDSSxhQUFhO3NCQUF0QixNQUFNO2dCQUVQLHlCQUF5QjtzQkFEeEIsU0FBUzt1QkFBQyx5QkFBeUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIFZpZXdDaGlsZCxcclxuICBPbkNoYW5nZXMsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgT25Jbml0LFxyXG4gIE9uRGVzdHJveSxcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBpc05pbCB9IGZyb20gXCJsb2Rhc2hcIjtcclxuaW1wb3J0IHtcclxuICBUcmVldmlld0kxOG4sXHJcbiAgVHJlZXZpZXdJdGVtLFxyXG4gIFRyZWV2aWV3Q29uZmlnLFxyXG4gIERyb3Bkb3duVHJlZXZpZXdDb21wb25lbnQsXHJcbiAgVHJlZXZpZXdIZWxwZXIsXHJcbn0gZnJvbSBcIm5neC10cmVldmlld1wiO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuaW1wb3J0IHsgVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSBcIi4uLy4uLy4uLy4uL2NvcmUvc2VydmljZXMvdHJhbnNsYXRpb24vdHJhbnNsYXRpb24uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBEZXBhcnRtZW50TWFuYWdlbWVudFNlcnZpY2UgfSBmcm9tIFwiLi4vZHluYW1pYy1mb3JtLWRlcGFydG1lbnQvc2VydmljZXMvZGVwYXJ0bWVudC1tYW5hZ2VtZW50LnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgRGVwYXJ0bWVudEFwaVNlcnZpY2UgfSBmcm9tIFwiLi4vZHluYW1pYy1mb3JtLWRlcGFydG1lbnQvc2VydmljZXMvZGVwYXJ0bWVudC1hcGkuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBEcm9wZG93blRyZWV2aWV3U2VsZWN0STE4biB9IGZyb20gXCIuL2Ryb3Bkb3duLXRyZWV2aWV3LXNlbGVjdC1pMThuXCI7XHJcbmltcG9ydCB7IFJvbGVzU2VydmljZSB9IGZyb20gXCIuLi8uLi8uLi8uLi9jb3JlL3NlcnZpY2VzL3JvbGVzL3JvbGVzLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgTnV4ZW9TZXJ2aWNlIH0gZnJvbSBcIi4uLy4uLy4uLy4uL2NvcmUvc2VydmljZXMvbnV4ZW8vbnV4ZW8uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBHbG9iYWxBZG1pblNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vLi4vc2hhcmVkLXNlcnZpY2VzL2dsb2JhbC1hZG1pbi5zZXJ2aWNlXCI7XHJcbi8qKlxyXG4gKiBBIHRyZWUgdmlldyBzZWxlY3RvciBjb21wb25lbnQgdGhhdCBjYW4gYmUgdXNlZCBpbiByZWFjdGl2ZSBhbmQgdGVtcGxhdGUgZHJpdmVuIGZvcm1zLFxyXG4gKiBpdCBjYW4gYmUgYSBmbGF0IHRyZWUgb3IgYSBkcm9wZG93blxyXG4gKiBAdGl0bGVcclxuICogVHJlZSB2aWV3IHNlbGVjdG9yXHJcbiAqXHJcbiAqIEBleGFtcGxlXHJcbiAqIDxhcHAtZHluYW1pYy1mb3JtLXRyZWV2aWV3LXNlbGVjdFxyXG4gKiBbdHJlZXZpZXddPVwiZmFsc2VcIlxyXG4gKiBbbXVsdGlwbGVdPVwiZmFsc2VcIlxyXG4gKiBbaXRlbXNdPVwiaXRlbXNUcmVlXCJcclxuICogKHZhbHVlQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXHJcbiAqIFsodmFsdWUpXT1cInNlbGVjdGVkVmFsdWVcIlxyXG4gKiA+XHJcbiAqIDwvYXBwLWR5bmFtaWMtZm9ybS10cmVldmlldy1zZWxlY3Q+XHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJhcHAtZHluYW1pYy1mb3JtLXRyZWV2aWV3LXNlbGVjdFwiLFxyXG4gIHRlbXBsYXRlVXJsOiBcIi4vZHluYW1pYy1mb3JtLXRyZWV2aWV3LXNlbGVjdC5jb21wb25lbnQuaHRtbFwiLFxyXG4gIHN0eWxlVXJsczogW1wiLi9keW5hbWljLWZvcm0tdHJlZXZpZXctc2VsZWN0LmNvbXBvbmVudC5zY3NzXCJdLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBUcmVldmlld0kxOG4sIHVzZUNsYXNzOiBEcm9wZG93blRyZWV2aWV3U2VsZWN0STE4biB9XSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyZWV2aWV3U2VsZWN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XHJcbiAgbXVsdGlwbGVTZWxlY3Rpb24gPSBbXTtcclxuICBzZWxlY3RlZEl0ZW07XHJcbiAgc2VsZWN0ZWRQYXJlbnRXaXRoQ2hpbGQgPSBbXTtcclxuICBzaG93UGx1cyA9IGZhbHNlO1xyXG4gIHByZVNlbGVjdGVkID0gW107XHJcbiAgbXlEZXBhcnRtZW50OiBhbnk7XHJcbiAgLyoqIGlzIHRyZWUgVmlldyBvciBkcm9wZG93biB2aWV3ICovXHJcbiAgQElucHV0KClcclxuICB0cmVldmlldyA9IGZhbHNlO1xyXG4gIC8qKiB1c2UgdHJlZSB2aWV3IGluc2lkZSBmb3JtICovXHJcbiAgQElucHV0KClcclxuICB0cmVlVmlld0FzRm9ybUNvbnRyb2wgPSBmYWxzZTtcclxuICAvKiogQ29uZmlnIG9iamVjdCAqL1xyXG4gIEBJbnB1dCgpIGNvbmZpZzogVHJlZXZpZXdDb25maWc7XHJcbiAgLyoqIEl0ZW1zIHRyZWUgKi9cclxuICBASW5wdXQoKSBpdGVtczogVHJlZXZpZXdJdGVtW107XHJcbiAgLyoqIFNlbGVjdGVkIHZhbHVlICovXHJcbiAgQElucHV0KCkgdmFsdWU6IGFueTtcclxuICAvKiogY2FuIHNlbGVjdCBtdWx0aXBsZSAqL1xyXG4gIEBJbnB1dCgpIG11bHRpcGxlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgLyoqIGV2ZW50IGVtaXR0ZWQgb24gdmFsdWUgY2hhbmdlICovXHJcbiAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgLyoqIGV2ZW50IGVtaXR0ZWQgb24gcGx1cyBidXR0b24gY2xpY2tlZCAoZm9yIGRlcGFydG1lbnQgbWFuYWdlbWVudCkgKi9cclxuICBAT3V0cHV0KCkgcGx1c0NsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICAvKiogZXZlbnQgZW1pdHRlZCBvbiBwbHVzIGJ1dHRvbiBjbGlja2VkIChmb3IgZGVwYXJ0bWVudCBtYW5hZ2VtZW50KSAqL1xyXG4gIEBJbnB1dCgpIGRlZmF1bHRTZWxlY3QgPSBmYWxzZTtcclxuLyoqIGN1c3RvbSBwYWdlIHByb3ZpZGVyIHRvIGdldCBkZXBhcnRtZW50IG5lc3RlZCB0cmVlIGZyb20gaXQgY2FuIGJlIHBhc3NlZCBmcm9tIG91dHNpZGUgb3Igbm90IHBhc3NlZCBhbmQgdXNlIHRoZSBkZWZ1bHRlIHZhbHVlICovXHJcbiAgQElucHV0KCkgcHBfZGVwYXJ0bWVudE5lc3RlZFRyZWU7IFxyXG4gIC8qKiB1c2Ugb3V0c2lkZSBjdXN0b20gZnVuY3Rpb24gaW5zdGVhZCBvZiB0aGUgaW5lciBmdW5jdGlvbiAgKi9cclxuICBASW5wdXQoKSB1c2VDdXN0b21BZGRFZGl0QWN0aW9uID0gZmFsc2U7XHJcbiAgICAvKiogY3VzdG9tIHByZWZpeCB0byBiZSB1c2VkIGZvciBhZGFwdGluZyBkYXRhIGNvbWluZyBmcm9tIGFwaSAqL1xyXG4gICAgQElucHV0KCkgY3VzdG9tUHJlZml4O1xyXG4gIC8qKiBjdXN0b20gcGFyZW50IHByb3BlcnR5IG5hbWUgdG8gYmUgcGFzc2VkIGZyb20gb3V0c2lkZSB0aGUgY29tcG9uZW50ICovXHJcbiAgQElucHV0KCkgY3VzdG9tUGFyZW50UHJvcGVydHk7XHJcbiAgQElucHV0KCkgcGxhY2Vob2xkZXI7XHJcbiAgQElucHV0KCkgZGVmYXVsdFNlbGVjdGlvbjogc3RyaW5nO1xyXG4gIC8qKiBkaXNwbGF5IGlucHV0IERlcFR5cGVlIGluIGFkZCBkaWFsb2cgb2YgZGVwYXJ0ZW1lbnQgKi9cclxuICBASW5wdXQoKSBkaXNwbGF5RGVwVHlwZWU7XHJcbiAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0ICgpIGRpc3BsYXlJc0FsbG93UmVjRXh0ZXJuYWw7XHJcbiAgQE91dHB1dCgpIGFjdGlvbkNsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAVmlld0NoaWxkKERyb3Bkb3duVHJlZXZpZXdDb21wb25lbnQsIHsgc3RhdGljOiBmYWxzZSB9KVxyXG4gIGRyb3Bkb3duVHJlZXZpZXdDb21wb25lbnQ6IERyb3Bkb3duVHJlZXZpZXdDb21wb25lbnQ7XHJcbiAgZmlsdGVyVGV4dDogc3RyaW5nO1xyXG4gIGFyYWJpYyA9IGZhbHNlO1xyXG4gIGxhbmd1YWdlU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcbiAgb25EZXN0cm95JDogU3ViamVjdDxib29sZWFuPiA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XHJcblxyXG4gIHByaXZhdGUgZHJvcGRvd25UcmVldmlld1NlbGVjdEkxOG46IERyb3Bkb3duVHJlZXZpZXdTZWxlY3RJMThuO1xyXG5cclxuICAvLyB0aGlzIGNvbXBvbmVudCBpcyB1c2VkIGluIHR3byBwbGFjZXMgdGhlIGZsYWcgaXMgdGhpcy50cmVldmlld1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBpMThuOiBUcmVldmlld0kxOG4sXHJcbiAgICBwcml2YXRlIHRyYW5zbGF0aW9uOiBUcmFuc2xhdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGRlcGFydG1lbnRBcGlTZXJ2aWNlOiBEZXBhcnRtZW50QXBpU2VydmljZSxcclxuICAgIHByaXZhdGUgZGVwYXJ0bWVudE1hbmFnbWVudDogRGVwYXJ0bWVudE1hbmFnZW1lbnRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByb2xlc1NlcnZpY2U6IFJvbGVzU2VydmljZSxcclxuICAgIHByaXZhdGUgbnV4ZW9TZXJ2aWNlOiBOdXhlb1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIGdsb2JhbEFkbWluIDogR2xvYmFsQWRtaW5TZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICB0aGlzLmNvbmZpZyA9IFRyZWV2aWV3Q29uZmlnLmNyZWF0ZSh7XHJcbiAgICAgIGhhc0FsbENoZWNrQm94OiBmYWxzZSxcclxuICAgICAgaGFzQ29sbGFwc2VFeHBhbmQ6IGZhbHNlLFxyXG4gICAgICBoYXNGaWx0ZXI6IHRydWUsXHJcbiAgICAgIG1heEhlaWdodDogMjAwLFxyXG4gICAgICBkZWNvdXBsZUNoaWxkRnJvbVBhcmVudDogdHJ1ZSxcclxuICAgIH0pO1xyXG4gICAgdGhpcy5kcm9wZG93blRyZWV2aWV3U2VsZWN0STE4biA9IGkxOG4gYXMgRHJvcGRvd25UcmVldmlld1NlbGVjdEkxOG47XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuZHJvcGRvd25UcmVldmlld1NlbGVjdEkxOG4uc2V0RGVmYXVsdFNlbGVjdGlvbih0aGlzLmRlZmF1bHRTZWxlY3Rpb24pO1xyXG4gICAgdGhpcy50cmFuc2xhdGlvbi5pc0FyYWJpY1xyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgICAgdGhpcy5hcmFiaWMgPSByZXM7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLm9uRGVzdHJveSQuY29tcGxldGUoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuaXRlbXMgJiYgdGhpcy50cmVldmlldykge1xyXG4gICAgICB0aGlzLnVwZGF0ZVNlbGVjdGVkSXRlbSgpO1xyXG4gICAgfVxyXG4gICAgaWYgKCF0aGlzLnRyZWV2aWV3ICYmICF0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgIC8vIHRoaXMuIGZ1bmN0aW9uIGlzIHRvIHNldCB1aSB3aXRoIHByZSBzZWxlY3RlZCB2YWx1ZVxyXG4gICAgICAvLyBkZWxheSB0byBtYWtlIHN1cmUgdGhhdCBwYWdlIGdldCB0aGUgdmFsdWUgYW5kIHNlbmQgaXQgdG8gaGVyZVxyXG4gICAgICAvLyB3ZSB1c2UgdGhlIHZhbHVlIHNlbnQgdG8gaGVyZSBhbmQgc2VhcmNoIGZvciBpdHMgaXRlbSBvbiBvdXIgaXRlbXMgYW5kIHNldCBpdCBhcyB0aGUgc2VsZWN0ZWQgaXRlbVxyXG4gICAgICB0aGlzLml0ZW1zLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgIHRoaXMuc2V0UHJlU2VsZXRlZEl0ZW0oaXRlbSwgdGhpcy52YWx1ZSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgaWYgKFxyXG4gICAgICAhdGhpcy50cmVldmlldyAmJlxyXG4gICAgICB0aGlzLm11bHRpcGxlICYmXHJcbiAgICAgIHRoaXMudmFsdWUgJiZcclxuICAgICAgdGhpcy52YWx1ZS5sZW5ndGggPiAwXHJcbiAgICApIHtcclxuICAgICAgLy8gdGhpcy5wcmVTZWxlY3RlZCA9IHRoaXMudmFsdWU7XHJcbiAgICAgIHRoaXMubXVsdGlwbGVTZWxlY3Rpb24gPSB0aGlzLnZhbHVlO1xyXG4gICAgICB0aGlzLmRyb3Bkb3duVHJlZXZpZXdTZWxlY3RJMThuLnNlbGVjdGlvbkxlbmd0aCA9XHJcbiAgICAgICAgdGhpcy5tdWx0aXBsZVNlbGVjdGlvbi5sZW5ndGg7XHJcbiAgICAgIHRoaXMuZHJvcGRvd25UcmVldmlld0NvbXBvbmVudC5vblNlbGVjdGVkQ2hhbmdlKFtcclxuICAgICAgICB0aGlzLm11bHRpcGxlU2VsZWN0aW9uLmxlbmd0aCxcclxuICAgICAgXSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRQcmVTZWxldGVkSXRlbShpdGVtLCBjb21wYXJlV2l0aFZhbHVlKSB7XHJcbiAgICBpZiAoKGl0ZW0udmFsdWUgPT09IGNvbXBhcmVXaXRoVmFsdWUpIHx8IChpdGVtLnZhbHVlLnRpdGxlID09PSBjb21wYXJlV2l0aFZhbHVlKSkge1xyXG4gICAgICB0aGlzLnNlbGVjdChpdGVtKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKGl0ZW0uaW50ZXJuYWxDaGlsZHJlbikge1xyXG4gICAgICAgIGl0ZW0uaW50ZXJuYWxDaGlsZHJlbi5tYXAoKGNoaWxkKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnNldFByZVNlbGV0ZWRJdGVtKGNoaWxkLCBjb21wYXJlV2l0aFZhbHVlKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgc2VsZWN0RGVmYXVsdCgpIHtcclxuICAgIGxldCBvcHRpb24gPSB7XHJcbiAgICAgICdpc0dsb2JhbEFkbWluJyA6IHRoaXMuZ2xvYmFsQWRtaW4uaXNHbG9iYWxBZG1pbixcclxuICAgICAgJ2FjdGl2ZVRlbmFudCcgOiB0aGlzLmdsb2JhbEFkbWluLmFjdGl2ZVRlbmFudCxcclxuICAgICAgJ3RlbmFudElkJzogdGhpcy5udXhlb1NlcnZpY2UubnV4ZW9DbGllbnQudXNlci5wcm9wZXJ0aWVzLnRlbmFudElkXHJcbiAgICB9O1xyXG4gICAgdGhpcy5teURlcGFydG1lbnQgPSB0aGlzLnJvbGVzU2VydmljZS5nZXRVc2VyRGVwYXJ0bWVudChcclxuICAgICAgdGhpcy5udXhlb1NlcnZpY2UubnV4ZW9DbGllbnQudXNlcixcclxuICAgICAgJ2N0c19yb2xlXycsXHJcbiAgICAgIG9wdGlvblxyXG4gICAgKTtcclxuICAgIHRoaXMuaXRlbXMubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgIHRoaXMuc2V0UHJlU2VsZXRlZEl0ZW0oaXRlbSwgdGhpcy5teURlcGFydG1lbnQpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG4gIHNlbGVjdChpdGVtOiBUcmVldmlld0l0ZW0pOiB2b2lkIHtcclxuICAgIC8vIGlmICghaXRlbS5jaGlsZHJlbikge1xyXG4gICAgdGhpcy5zZWxlY3RJdGVtKGl0ZW0pO1xyXG4gICAgLy8gfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB1cGRhdGVTZWxlY3RlZEl0ZW0oKTogdm9pZCB7XHJcbiAgICBpZiAoIWlzTmlsKHRoaXMuaXRlbXMpKSB7XHJcbiAgICAgIGNvbnN0IHNlbGVjdGVkSXRlbSA9IFRyZWV2aWV3SGVscGVyLmZpbmRJdGVtSW5MaXN0KFxyXG4gICAgICAgIHRoaXMuaXRlbXMsXHJcbiAgICAgICAgdGhpcy52YWx1ZVxyXG4gICAgICApO1xyXG4gICAgICB0aGlzLnNlbGVjdEl0ZW0oc2VsZWN0ZWRJdGVtKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2VsZWN0SXRlbShpdGVtOiBUcmVldmlld0l0ZW0pOiB2b2lkIHtcclxuICAgIGRvY3VtZW50LmJvZHkuY2xpY2soKTtcclxuICAgIGlmICh0aGlzLmRyb3Bkb3duVHJlZXZpZXdTZWxlY3RJMThuLnNlbGVjdGVkSXRlbSAhPT0gaXRlbSkge1xyXG4gICAgICB0aGlzLmRyb3Bkb3duVHJlZXZpZXdTZWxlY3RJMThuLnNlbGVjdGVkSXRlbSA9IGl0ZW07XHJcbiAgICAgIGlmICh0aGlzLmRyb3Bkb3duVHJlZXZpZXdDb21wb25lbnQpIHtcclxuICAgICAgICB0aGlzLmRyb3Bkb3duVHJlZXZpZXdDb21wb25lbnQub25TZWxlY3RlZENoYW5nZShbaXRlbV0pO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoaXRlbSkge1xyXG4gICAgICAgIGlmICh0aGlzLnRyZWV2aWV3KSB7XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbSA9IGl0ZW0udmFsdWU7XHJcbiAgICAgICAgICAvLyB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQoaXRlbS52YWx1ZS50aXRsZSk7XHJcbiAgICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQoaXRlbSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdChpdGVtLnZhbHVlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgc2VsZWN0TXVsdGlwbGUoZSwgaXRlbTogVHJlZXZpZXdJdGVtKSB7XHJcbiAgICB0aGlzLnNlbGVjdGVkUGFyZW50V2l0aENoaWxkID0gW107XHJcbiAgICB0aGlzLmdldENoaWxkZXJuVmFsdWVzKGl0ZW0pO1xyXG4gICAgaWYgKGUpIHtcclxuICAgICAgdGhpcy5tdWx0aXBsZVNlbGVjdGlvbiA9IHRoaXMubXVsdGlwbGVTZWxlY3Rpb24uY29uY2F0KFxyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRQYXJlbnRXaXRoQ2hpbGRcclxuICAgICAgKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMubXVsdGlwbGVTZWxlY3Rpb24gPSB0aGlzLm11bHRpcGxlU2VsZWN0aW9uLmZpbHRlcigoZSkgPT4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkUGFyZW50V2l0aENoaWxkLmluZGV4T2YoZSkgPCAwO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmRyb3Bkb3duVHJlZXZpZXdTZWxlY3RJMThuLnNlbGVjdGlvbkxlbmd0aCA9XHJcbiAgICAgIHRoaXMubXVsdGlwbGVTZWxlY3Rpb24ubGVuZ3RoO1xyXG4gICAgdGhpcy5kcm9wZG93blRyZWV2aWV3Q29tcG9uZW50Lm9uU2VsZWN0ZWRDaGFuZ2UoW1xyXG4gICAgICB0aGlzLm11bHRpcGxlU2VsZWN0aW9uLmxlbmd0aCxcclxuICAgIF0pO1xyXG4gICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHRoaXMubXVsdGlwbGVTZWxlY3Rpb24pO1xyXG4gIH1cclxuICBnZXRDaGlsZGVyblZhbHVlcyhpdGVtOiBUcmVldmlld0l0ZW0pIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRQYXJlbnRXaXRoQ2hpbGQucHVzaChpdGVtLnZhbHVlKTtcclxuICAgIGlmIChpdGVtLmNoaWxkcmVuKSB7XHJcbiAgICAgIGl0ZW0uY2hpbGRyZW4uZm9yRWFjaCgoaXRlbSkgPT4ge1xyXG4gICAgICAgIHRoaXMuZ2V0Q2hpbGRlcm5WYWx1ZXMoaXRlbSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHJldHVybjtcclxuICB9XHJcblxyXG4gIG9uUGx1c0NsaWNrZWQoZTogTW91c2VFdmVudCwgaXRlbTogVHJlZXZpZXdJdGVtKTogdm9pZCB7XHJcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgaWYgKGl0ZW0pIHtcclxuICAgICAgdGhpcy5wbHVzQ2xpY2tlZC5lbWl0KGl0ZW0udmFsdWUudWlkKTtcclxuICAgIH1cclxuICB9XHJcbiAgLyoqXHJcbiAgICpcclxuICAgKiBAcGFyYW0gZSAgY2xpY2sgZXZlbnRcclxuICAgKiBAcGFyYW0gYWN0aW9uIG5hbWUgb2YgYWN0aW9uIChhZGQgLCB1cGRhdGUpXHJcbiAgICogQHBhcmFtIGl0ZW0gVHJlZXZpZXdJdGVtXHJcbiAgICovXHJcbiAgb25BY3Rpb24oZTogTW91c2VFdmVudCwgYWN0aW9uOiBzdHJpbmcsIGl0ZW06IFRyZWV2aWV3SXRlbSkge1xyXG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIGlmIChpdGVtKSB7XHJcbiAgICAgIGlmIChhY3Rpb24gPT09IFwiYWRkXCIpIHtcclxuICAgICAgICAvLyBlbWl0IGFjdGlvbiB0byBvdXRzaWRlIHRvIGV4ZWN1dGUgZnVuY3Rpb24gZnJvbSBvdXRzaWRlIHRoZSBjb21wb25lbnQgXHJcbiAgICAgICAgaWYodGhpcy51c2VDdXN0b21BZGRFZGl0QWN0aW9uKXtcclxuICAgICAgICAgIHRoaXMuYWN0aW9uQ2xpY2tlZC5lbWl0KHtcclxuICAgICAgICAgICAgYWN0aW9uIDogYWN0aW9uLFxyXG4gICAgICAgICAgICBpdGVtIDogaXRlbVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICB0aGlzLmRlcGFydG1lbnRNYW5hZ21lbnRcclxuICAgICAgICAgICAgLm9wZW5Gb3JtRGlhbG9nKGl0ZW0udmFsdWUudWlkLCBmYWxzZSx0aGlzLmRpc3BsYXlJc0FsbG93UmVjRXh0ZXJuYWwsdGhpcy5kaXNwbGF5RGVwVHlwZWUsIGl0ZW0udmFsdWUudGl0bGUsIGl0ZW0pXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICAgICAgICAgIGlmIChyZXMpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlKGl0ZW0pO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChhY3Rpb24gPT09IFwidXBkYXRlXCIpIHtcclxuICAgICAgICBpZih0aGlzLnVzZUN1c3RvbUFkZEVkaXRBY3Rpb24pe1xyXG4gICAgICAgIC8vIGVtaXQgYWN0aW9uIHRvIG91dHNpZGUgdG8gZXhlY3V0ZSBmdW5jdGlvbiBmcm9tIG91dHNpZGUgdGhlIGNvbXBvbmVudCBcclxuICAgICAgICAgIHRoaXMuYWN0aW9uQ2xpY2tlZC5lbWl0KHtcclxuICAgICAgICAgICAgYWN0aW9uIDogYWN0aW9uLFxyXG4gICAgICAgICAgICBpdGVtIDogaXRlbVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICB0aGlzLmRlcGFydG1lbnRNYW5hZ21lbnRcclxuICAgICAgICAgICAgLm9wZW5Gb3JtRGlhbG9nKGl0ZW0udmFsdWUudWlkLCB0cnVlLHRoaXMuZGlzcGxheUlzQWxsb3dSZWNFeHRlcm5hbCx0aGlzLmRpc3BsYXlEZXBUeXBlZSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgICAgICAgICAgLy8gdGhpcy51cGRhdGUoaXRlbSk7XHJcbiAgICAgICAgICAgICAgdGhpcy5kZXBhcnRtZW50QXBpU2VydmljZS5nZXREZXBhcnRtZW50VHJlZSgpLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLml0ZW1zID0gdGhpcy5kZXBhcnRtZW50QXBpU2VydmljZS5yZWN1cnNpdmVGaWxsKFxyXG4gICAgICAgICAgICAgICAgICByZXMuZW50cmllcyAsIFxyXG4gICAgICAgICAgICAgICAgICB1bmRlZmluZWQgLCBcclxuICAgICAgICAgICAgICAgICAgdW5kZWZpbmVkICwgXHJcbiAgICAgICAgICAgICAgICAgIHVuZGVmaW5lZCAsIFxyXG4gICAgICAgICAgICAgICAgICB0aGlzLmN1c3RvbVByZWZpeCk7XHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICAvKipcclxuICAgKmR1ZSB0byB0aGUgYnVzaW5lc3MgcmVxdWlyZW1lbnRzIHdoaWNoIHN0YXRlZCB0aGF0IG1vcmUgdGhhbiAzIGxldmVscyB3aWxsIGV4aXN0ZWQgdGhlIGN1cnJlbnQgYXBpIHN1cHBvcnQgb25seSAzIGxldmVscyBzbyAqd2UgaGF2ZSB0byBpbmplY3QgMyBuZXcgbGV2ZWxzIG9uIGVhY2ggdHJlZSBlbmRcclxuICAgKiBAcGFyYW0gaXRlbSBUcmVldmlld0l0ZW1cclxuICAgKi9cclxuICBvbkNvbGxhcHNlZChpdGVtOiBUcmVldmlld0l0ZW0pIHtcclxuICAgIGl0ZW0uY29sbGFwc2VkID0gIWl0ZW0uY29sbGFwc2VkO1xyXG4gICAgaWYgKGl0ZW0udmFsdWUubGV2ZWwgPT09IDIpIHtcclxuICAgICAgdGhpcy5kZXBhcnRtZW50QXBpU2VydmljZVxyXG4gICAgICAgIC5nZXREZXBhcnRtZW50TmVzdGVkVHJlZShcclxuICAgICAgICAgIGl0ZW0udmFsdWUudGl0bGUgLCBcclxuICAgICAgICAgIHRoaXMucHBfZGVwYXJ0bWVudE5lc3RlZFRyZWUgPyB0aGlzLnBwX2RlcGFydG1lbnROZXN0ZWRUcmVlIDogJ1BQX0RlcGFydG1lbnQnLFxyXG4gICAgICAgICAgdGhpcy5jdXN0b21QYXJlbnRQcm9wZXJ0eSlcclxuICAgICAgICAuc3Vic2NyaWJlKFxyXG4gICAgICAgICAgKHJlcykgPT4ge1xyXG4gICAgICAgICAgICBpdGVtLmNoaWxkcmVuID0gdGhpcy5kZXBhcnRtZW50QXBpU2VydmljZS5yZWN1cnNpdmVGaWxsKFxyXG4gICAgICAgICAgICAgIHJlcy5lbnRyaWVzICwgXHJcbiAgICAgICAgICAgICAgdW5kZWZpbmVkICwgXHJcbiAgICAgICAgICAgICAgdW5kZWZpbmVkICwgXHJcbiAgICAgICAgICAgICAgdW5kZWZpbmVkICwgXHJcbiAgICAgICAgICAgICAgdGhpcy5jdXN0b21QcmVmaXhcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAoZXJyKSA9PiB7fVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqZHVlIHRvIHRoZSBidXNpbmVzcyByZXF1aXJlbWVudHMgd2hpY2ggc3RhdGVkIHRoYXQgbW9yZSB0aGFuIDMgbGV2ZWxzIHdpbGwgZXhpc3RlZCB0aGUgY3VycmVudCBhcGkgc3VwcG9ydCBvbmx5IDMgbGV2ZWxzIHNvICp3ZSBoYXZlIHRvIGluamVjdCAzIG5ldyBsZXZlbHMgb24gZWFjaCB0cmVlIGVuZFxyXG4gICAqIEBwYXJhbSBpdGVtIFRyZWV2aWV3SXRlbVxyXG4gICAqL1xyXG4gIHVwZGF0ZShpdGVtKSB7XHJcbiAgICB0aGlzLmRlcGFydG1lbnRBcGlTZXJ2aWNlXHJcbiAgICAgIC5nZXREZXBhcnRtZW50TmVzdGVkVHJlZShcclxuICAgICAgICBpdGVtLnZhbHVlLnRpdGxlICwgXHJcbiAgICAgICAgdGhpcy5wcF9kZXBhcnRtZW50TmVzdGVkVHJlZSA/IHRoaXMucHBfZGVwYXJ0bWVudE5lc3RlZFRyZWUgOiAnUFBfRGVwYXJ0bWVudCcsXHJcbiAgICAgICAgdGhpcy5jdXN0b21QYXJlbnRQcm9wZXJ0eSlcclxuICAgICAgLnN1YnNjcmliZShcclxuICAgICAgICAoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgaXRlbS5jaGlsZHJlbiA9IHRoaXMuZGVwYXJ0bWVudEFwaVNlcnZpY2UucmVjdXJzaXZlRmlsbChcclxuICAgICAgICAgICAgZGF0YS5lbnRyaWVzLFxyXG4gICAgICAgICAgICAwLFxyXG4gICAgICAgICAgICB0cnVlLFxyXG4gICAgICAgICAgICB0cnVlLFxyXG4gICAgICAgICAgICB0aGlzLmN1c3RvbVByZWZpeFxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIChlcnIpID0+IHt9XHJcbiAgICAgICk7XHJcbiAgfVxyXG59XHJcbiIsIjxuZy10ZW1wbGF0ZVxyXG4gICNpdGVtVGVtcGxhdGVcclxuICBsZXQtaXRlbT1cIml0ZW1cIlxyXG4gIGxldC1vbkNvbGxhcHNlRXhwYW5kPVwib25Db2xsYXBzZUV4cGFuZFwiXHJcbiAgbGV0LW9uQ2hlY2tlZENoYW5nZT1cIm9uQ2hlY2tlZENoYW5nZVwiXHJcbj5cclxuICA8IS0tIHNpbmdsZSAtLT5cclxuICA8ZGl2ICpuZ0lmPVwiIXRyZWV2aWV3ICYmICFtdWx0aXBsZVwiPlxyXG4gICAgPGRpdlxyXG4gICAgICBjbGFzcz1cInRleHQtbm93cmFwIHJvdy1pdGVtXCJcclxuICAgICAgW25nQ2xhc3NdPVwieyBhY3RpdmU6IGl0ZW0udmFsdWUgPT09IHRoaXMudmFsdWUgfVwiXHJcbiAgICA+XHJcbiAgICAgIDxpXHJcbiAgICAgICAgKm5nSWY9XCJpdGVtLmNoaWxkcmVuXCJcclxuICAgICAgICAoY2xpY2spPVwib25Db2xsYXBzZUV4cGFuZCgpXCJcclxuICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxyXG4gICAgICAgIFtuZ1N3aXRjaF09XCJpdGVtLmNvbGxhcHNlZFwiXHJcbiAgICAgID5cclxuICAgICAgICA8c3BhblxyXG4gICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cInRydWVcIlxyXG4gICAgICAgICAgY2xhc3M9XCJiaSBiaS1jYXJldC17eyBhcmFiaWMgPyAnbGVmdCcgOiAncmlnaHQnIH19LWZpbGwgY2FyZXQtaWNvblwiXHJcbiAgICAgICAgPjwvc3Bhbj5cclxuICAgICAgICA8c3BhblxyXG4gICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cImZhbHNlXCJcclxuICAgICAgICAgIGNsYXNzPVwiYmkgYmktY2FyZXQtZG93bi1maWxsIGNhcmV0LWljb25cIlxyXG4gICAgICAgID48L3NwYW4+XHJcbiAgICAgIDwvaT5cclxuICAgICAgPCEtLSA8bGFiZWwgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsXCIgKGNsaWNrKT1cInNlbGVjdChpdGVtKVwiPnt7XHJcbiAgICAgICAgaXRlbS50ZXh0XHJcbiAgICAgIH19PC9sYWJlbD4gLS0+XHJcbiAgICAgIDxsYWJlbCAqbmdJZj1cIml0ZW0uZGlzYWJsZWRcIiBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWxcIj57e1xyXG4gICAgICAgIGl0ZW0udGV4dFxyXG4gICAgICB9fTwvbGFiZWw+XHJcbiAgICAgIDxsYWJlbCAqbmdJZj1cIiFpdGVtLmRpc2FibGVkXCIgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsXCIgKGNsaWNrKT1cInNlbGVjdChpdGVtKVwiPnt7XHJcbiAgICAgICAgaXRlbS50ZXh0XHJcbiAgICAgIH19PC9sYWJlbD5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDwhLS0gTXVsdGlwbGUgLS0+XHJcbiAgPGRpdiAqbmdJZj1cIiF0cmVldmlldyAmJiBtdWx0aXBsZVwiPlxyXG4gICAgPGRpdlxyXG4gICAgICBjbGFzcz1cInRleHQtbm93cmFwIHJvdy1pdGVtXCJcclxuICAgICAgW25nQ2xhc3NdPVwieyBhY3RpdmU6IGl0ZW0udmFsdWUgPT09IHRoaXMudmFsdWUgfVwiXHJcbiAgICA+XHJcbiAgICAgIDxpXHJcbiAgICAgICAgKm5nSWY9XCJpdGVtLmNoaWxkcmVuXCJcclxuICAgICAgICAoY2xpY2spPVwib25Db2xsYXBzZUV4cGFuZCgpXCJcclxuICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxyXG4gICAgICAgIFtuZ1N3aXRjaF09XCJpdGVtLmNvbGxhcHNlZFwiXHJcbiAgICAgID5cclxuICAgICAgICA8c3BhblxyXG4gICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cInRydWVcIlxyXG4gICAgICAgICAgY2xhc3M9XCJiaSBiaS1jYXJldC17eyBhcmFiaWMgPyAnbGVmdCcgOiAncmlnaHQnIH19LWZpbGwgY2FyZXQtaWNvblwiXHJcbiAgICAgICAgPjwvc3Bhbj5cclxuICAgICAgICA8c3BhblxyXG4gICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cImZhbHNlXCJcclxuICAgICAgICAgIGNsYXNzPVwiYmkgYmktY2FyZXQtZG93bi1maWxsIGNhcmV0LWljb25cIlxyXG4gICAgICAgID48L3NwYW4+XHJcbiAgICAgIDwvaT5cclxuICAgICAgPCEtLSA8aW5wdXRcclxuICAgICAgICBjbGFzcz1cIm11bHRpcGxlLWNoZWNrQm94XCJcclxuICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxyXG4gICAgICAgIFtjaGVja2VkXT1cIm11bHRpcGxlU2VsZWN0aW9uLmluY2x1ZGVzKGl0ZW0udmFsdWUpXCJcclxuICAgICAgICAoY2hhbmdlKT1cInNlbGVjdE11bHRpcGxlKCRldmVudC50YXJnZXQuY2hlY2tlZCwgaXRlbSlcIlxyXG4gICAgICAvPlxyXG5cclxuICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbFwiPnt7IGl0ZW0udGV4dCB9fTwvbGFiZWw+IC0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibXVsdGlwbGUtdHJlZXZpZXdcIj5cclxuICAgICAgICA8bWF0LWNoZWNrYm94XHJcbiAgICAgICAgICBbY2hlY2tlZF09XCJtdWx0aXBsZVNlbGVjdGlvbi5pbmNsdWRlcyhpdGVtLnZhbHVlKVwiXHJcbiAgICAgICAgICAoY2hhbmdlKT1cInNlbGVjdE11bHRpcGxlKCRldmVudC5jaGVja2VkLCBpdGVtKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPHNwYW4+IHt7IGl0ZW0udGV4dCB9fSA8L3NwYW4+XHJcbiAgICAgICAgPC9tYXQtY2hlY2tib3g+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbiAgPCEtLSB0cmVlVmlldyAtLT5cclxuICA8ZGl2ICpuZ0lmPVwidHJlZXZpZXcgJiYgIXRyZWVWaWV3QXNGb3JtQ29udHJvbFwiIGNsYXNzPVwidHJlZS12aWV3LWNvbnRhaW5lclwiPlxyXG4gICAgPGRpdlxyXG4gICAgICAobW91c2VlbnRlcik9XCJob3ZlckZpZWxkLnN0eWxlLmRpc3BsYXkgPSAnZmxleCdcIlxyXG4gICAgICAobW91c2VsZWF2ZSk9XCJob3ZlckZpZWxkLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSdcIlxyXG4gICAgICBjbGFzcz1cInRleHQtbm93cmFwIHJvdy1pdGVtIHRyZWV2aWV3LXJvd1wiXHJcbiAgICAgIFtuZ0NsYXNzXT1cInsgc2VsZWN0ZWQ6IGl0ZW0udmFsdWUgPT0gc2VsZWN0ZWRJdGVtIH1cIlxyXG4gICAgPlxyXG4gICAgICA8aVxyXG4gICAgICAgICpuZ0lmPVwiaXRlbS5jaGlsZHJlblwiXHJcbiAgICAgICAgKGNsaWNrKT1cIm9uQ29sbGFwc2VkKGl0ZW0pXCJcclxuICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxyXG4gICAgICAgIFtuZ1N3aXRjaF09XCJpdGVtLmNvbGxhcHNlZFwiXHJcbiAgICAgID5cclxuICAgICAgICA8c3BhblxyXG4gICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cInRydWVcIlxyXG4gICAgICAgICAgY2xhc3M9XCJiaSBiaS1jYXJldC17eyBhcmFiaWMgPyAnbGVmdCcgOiAncmlnaHQnIH19LWZpbGwgY2FyZXQtaWNvblwiXHJcbiAgICAgICAgPjwvc3Bhbj5cclxuXHJcbiAgICAgICAgPHNwYW5cclxuICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCJmYWxzZVwiXHJcbiAgICAgICAgICBjbGFzcz1cImJpIGJpLWNhcmV0LWRvd24tZmlsbCBjYXJldC1pY29uXCJcclxuICAgICAgICA+PC9zcGFuPlxyXG4gICAgICA8L2k+XHJcbiAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwtdHJlZXZpZXdcIiAoY2xpY2spPVwic2VsZWN0KGl0ZW0pXCJcclxuICAgICAgICA+e3sgaXRlbS50ZXh0IH19XHJcbiAgICAgICAgPHNwYW4gI2hvdmVyRmllbGQgY2xhc3M9XCJob3ZlckZpZWxkXCI+XHJcbiAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgbWF0VG9vbHRpcD1cInt7ICdkZXBhcnRtZW50X21hbmFnZW1lbnQuZm9ybS5lZGl0JyB8IHRyYW5zbGF0ZSB9fVwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJvbkFjdGlvbigkZXZlbnQsICd1cGRhdGUnLCBpdGVtKVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxsaSBjbGFzcz1cImJpIGJpLXBlbmNpbFwiPjwvbGk+XHJcbiAgICAgICAgICA8L3NwYW4+XHJcblxyXG4gICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJ7e1xyXG4gICAgICAgICAgICAgICdkZXBhcnRtZW50X21hbmFnZW1lbnQuZm9ybS50b29sVGlwX21lc3NhZ2UnIHwgdHJhbnNsYXRlXHJcbiAgICAgICAgICAgIH19XCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uQWN0aW9uKCRldmVudCwgJ2FkZCcsIGl0ZW0pXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGxpIGNsYXNzPVwiYmkgYmktcGx1c1wiPjwvbGk+XHJcbiAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgPC9zcGFuPlxyXG4gICAgICA8L2xhYmVsPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbiAgICA8IS0tIHRyZWVWaWV3IGFzIGZvcm0gY29udHJvbCAtLT5cclxuICAgIDxkaXYgKm5nSWY9XCJ0cmVldmlldyAmJiB0cmVlVmlld0FzRm9ybUNvbnRyb2xcIiBjbGFzcz1cInRyZWUtdmlldy1jb250YWluZXJcIj5cclxuICAgICAgPGRpdlxyXG4gICAgICAgIGNsYXNzPVwidGV4dC1ub3dyYXAgcm93LWl0ZW0gdHJlZXZpZXctcm93LWZvcm0tY29udHJvbFwiXHJcbiAgICAgICAgW25nQ2xhc3NdPVwieyAnc2VsZWN0ZWQtZm9ybS1jb250cm9sJzogaXRlbS52YWx1ZSA9PSBzZWxlY3RlZEl0ZW0gfVwiXHJcbiAgICAgID5cclxuICAgICAgICA8aVxyXG4gICAgICAgICAgKm5nSWY9XCJpdGVtLmNoaWxkcmVuXCJcclxuICAgICAgICAgIChjbGljayk9XCJvbkNvbGxhcHNlZChpdGVtKVwiXHJcbiAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxyXG4gICAgICAgICAgW25nU3dpdGNoXT1cIml0ZW0uY29sbGFwc2VkXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiYmkgYmktY2FyZXQte3sgYXJhYmljID8gJ2xlZnQnIDogJ3JpZ2h0JyB9fS1maWxsIGNhcmV0LWljb25cIlxyXG4gICAgICAgICAgPjwvc3Bhbj5cclxuICBcclxuICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCJmYWxzZVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiYmkgYmktY2FyZXQtZG93bi1maWxsIGNhcmV0LWljb25cIlxyXG4gICAgICAgICAgPjwvc3Bhbj5cclxuICAgICAgICA8L2k+XHJcbiAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbC10cmVldmlld1wiIChjbGljayk9XCJzZWxlY3QoaXRlbSlcIlxyXG4gICAgICAgICAgPnt7IGl0ZW0udGV4dCB9fVxyXG4gICAgICAgIDwvbGFiZWw+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcbjxuZy10ZW1wbGF0ZVxyXG4gICNoZWFkZXJUZW1wbGF0ZVxyXG4gIGxldC1jb25maWc9XCJjb25maWdcIlxyXG4gIGxldC1pdGVtPVwiaXRlbVwiXHJcbiAgbGV0LW9uQ29sbGFwc2VFeHBhbmQ9XCJvbkNvbGxhcHNlRXhwYW5kXCJcclxuICBsZXQtb25DaGVja2VkQ2hhbmdlPVwib25DaGVja2VkQ2hhbmdlXCJcclxuICBsZXQtb25GaWx0ZXJUZXh0Q2hhbmdlPVwib25GaWx0ZXJUZXh0Q2hhbmdlXCJcclxuPlxyXG4gIDxkaXYgKm5nSWY9XCJjb25maWcuaGFzRmlsdGVyXCIgY2xhc3M9XCJyb3cgcm93LWZpbHRlclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbC0xMlwiPlxyXG4gICAgICA8aW5wdXRcclxuICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXHJcbiAgICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJpMThuLmdldEZpbHRlclBsYWNlaG9sZGVyKHBsYWNlaG9sZGVyKVwiXHJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJmaWx0ZXJUZXh0XCJcclxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvbkZpbHRlclRleHRDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgIC8+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2ICpuZ0lmPVwiY29uZmlnLmhhc0FsbENoZWNrQm94IHx8IGNvbmZpZy5oYXNDb2xsYXBzZUV4cGFuZFwiIGNsYXNzPVwicm93XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sLTEyXCI+XHJcbiAgICAgIDxsYWJlbCAqbmdJZj1cImNvbmZpZy5oYXNBbGxDaGVja0JveFwiIChjbGljayk9XCJzZWxlY3QoaXRlbSlcIj5cclxuICAgICAgICA8c3Ryb25nPnt7IGkxOG4uZ2V0QWxsQ2hlY2tib3hUZXh0KCkgfX08L3N0cm9uZz5cclxuICAgICAgPC9sYWJlbD5cclxuICAgICAgPGxhYmVsXHJcbiAgICAgICAgKm5nSWY9XCJjb25maWcuaGFzQ29sbGFwc2VFeHBhbmRcIlxyXG4gICAgICAgIGNsYXNzPVwiZmxvYXQtcmlnaHRcIlxyXG4gICAgICAgIChjbGljayk9XCJvbkNvbGxhcHNlRXhwYW5kKClcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPGlcclxuICAgICAgICAgIFt0aXRsZV09XCJpMThuLmdldFRvb2x0aXBDb2xsYXBzZUV4cGFuZFRleHQoaXRlbS5jb2xsYXBzZWQpXCJcclxuICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXHJcbiAgICAgICAgICBbbmdTd2l0Y2hdPVwiaXRlbS5jb2xsYXBzZWRcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxzcGFuICpuZ1N3aXRjaENhc2U9XCJ0cnVlXCIgY2xhc3M9XCJiaSBiaS1hcnJvd3MtYW5nbGUtZXhwYW5kXCI+PC9zcGFuPlxyXG4gICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cImZhbHNlXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJiaSBiaS1hcnJvd3MtYW5nbGUtY29udHJhY3RcIlxyXG4gICAgICAgICAgPjwvc3Bhbj5cclxuICAgICAgICA8L2k+XHJcbiAgICAgIDwvbGFiZWw+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8YSAqbmdJZj1cImRlZmF1bHRTZWxlY3RcIiBjbGFzcz1cInNlbGVjdC1kZWZhdWx0XCIgKGNsaWNrKT1cInNlbGVjdERlZmF1bHQoKVwiPnt7J2RlcGFydG1lbnRfbWFuYWdlbWVudC5zZWxlY3REZWZhdWx0J3wgdHJhbnNsYXRlfX08L2E+XHJcbiAgPGRpdiAqbmdJZj1cImNvbmZpZy5oYXNEaXZpZGVyXCIgY2xhc3M9XCJkcm9wZG93bi1kaXZpZGVyXCIgW25nQ2xhc3NdPVwieydkcm9wZG93bi1kaXZpZGVyLW5vTWFyZ2luJzogZGVmYXVsdFNlbGVjdH1cIj48L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy1jb250YWluZXIgKm5nSWY9XCIhdHJlZXZpZXcgJiYgIW11bHRpcGxlXCI+XHJcbiAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLXdyYXBwZXJcIj5cclxuICAgIDxuZ3gtZHJvcGRvd24tdHJlZXZpZXdcclxuICAgICAgW2NvbmZpZ109XCJjb25maWdcIlxyXG4gICAgICBbaGVhZGVyVGVtcGxhdGVdPVwiaGVhZGVyVGVtcGxhdGVcIlxyXG4gICAgICBbaXRlbXNdPVwiaXRlbXNcIlxyXG4gICAgICBbaXRlbVRlbXBsYXRlXT1cIml0ZW1UZW1wbGF0ZVwiXHJcbiAgICA+XHJcbiAgPC9uZ3gtZHJvcGRvd24tdHJlZXZpZXc+XHJcbiAgPGRpdiBjbGFzcz1cImRpc2FibGUtZWZmZWN0XCIgKm5nSWY9XCJkaXNhYmxlZFwiPjwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L25nLWNvbnRhaW5lcj5cclxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIiF0cmVldmlldyAmJiBtdWx0aXBsZVwiPlxyXG4gIDxkaXYgY2xhc3M9XCJtdWx0aXBsZS10cmVlLXZpZXcgZHJvcGRvd24td3JhcHBlclwiPlxyXG4gICAgPG5neC1kcm9wZG93bi10cmVldmlld1xyXG4gICAgICBbY29uZmlnXT1cImNvbmZpZ1wiXHJcbiAgICAgIFtpdGVtc109XCJpdGVtc1wiXHJcbiAgICAgIFtpdGVtVGVtcGxhdGVdPVwiaXRlbVRlbXBsYXRlXCJcclxuICAgID5cclxuICAgIDwvbmd4LWRyb3Bkb3duLXRyZWV2aWV3PlxyXG4gIDxkaXYgY2xhc3M9XCJkaXNhYmxlLWVmZmVjdFwiICpuZ0lmPVwiZGlzYWJsZWRcIj48L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9uZy1jb250YWluZXI+XHJcblxyXG48bmctY29udGFpbmVyICpuZ0lmPVwidHJlZXZpZXcgJiYgIXRyZWVWaWV3QXNGb3JtQ29udHJvbFwiPlxyXG4gIDxkaXYgY2xhc3M9XCJ0cmVlLXZpZXdcIj5cclxuICAgIDxuZ3gtdHJlZXZpZXdcclxuICAgICAgW2NvbmZpZ109XCJjb25maWdcIlxyXG4gICAgICBbaGVhZGVyVGVtcGxhdGVdPVwiaGVhZGVyVGVtcGxhdGVcIlxyXG4gICAgICBbaXRlbXNdPVwiaXRlbXNcIlxyXG4gICAgICBbaXRlbVRlbXBsYXRlXT1cIml0ZW1UZW1wbGF0ZVwiXHJcbiAgICA+XHJcbiAgICA8L25neC10cmVldmlldz5cclxuICA8L2Rpdj5cclxuPC9uZy1jb250YWluZXI+XHJcbjxuZy1jb250YWluZXIgKm5nSWY9XCJ0cmVldmlldyAmJiB0cmVlVmlld0FzRm9ybUNvbnRyb2xcIj5cclxuICA8ZGl2IGNsYXNzPVwidHJlZS12aWV3LWZvcm0tY29udHJvbFwiPlxyXG4gICAgPG5neC10cmVldmlld1xyXG4gICAgICBbY29uZmlnXT1cImNvbmZpZ1wiXHJcbiAgICAgIFtoZWFkZXJUZW1wbGF0ZV09XCJoZWFkZXJUZW1wbGF0ZVwiXHJcbiAgICAgIFtpdGVtc109XCJpdGVtc1wiXHJcbiAgICAgIFtpdGVtVGVtcGxhdGVdPVwiaXRlbVRlbXBsYXRlXCJcclxuICAgID5cclxuICAgIDwvbmd4LXRyZWV2aWV3PlxyXG4gIDwvZGl2PlxyXG48L25nLWNvbnRhaW5lcj5cclxuIl19
@@ -2,7 +2,7 @@ import { Component, Input } from '@angular/core';
2
2
  import { Utils } from 'formiojs';
3
3
  import * as i0 from "@angular/core";
4
4
  import * as i1 from "@ngx-translate/core";
5
- import * as i2 from "../../../../Core/services/translation/translation.service";
5
+ import * as i2 from "../../../../core/services/translation/translation.service";
6
6
  import * as i3 from "../../../../configuration/app-config.service";
7
7
  import * as i4 from "@angular/common";
8
8
  import * as i5 from "../../../../pipes/localized-date.pipe";
@@ -51,4 +51,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
51
51
  }], classType: [{
52
52
  type: Input
53
53
  }] } });
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLXZpZXdlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS12aWV3ZXIvZHluYW1pYy1mb3JtLXZpZXdlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS12aWV3ZXIvZHluYW1pYy1mb3JtLXZpZXdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sVUFBVSxDQUFDOzs7Ozs7O0FBVWpDLE1BQU0sT0FBTywwQkFBMEI7SUFVckMsWUFBcUIsU0FBMkIsRUFBVSxXQUFnQyxFQUFXLGFBQWdDO1FBQWhILGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQXFCO1FBQVcsa0JBQWEsR0FBYixhQUFhLENBQW1CO1FBUnJJLFNBQUksR0FBUSxFQUFFLENBQUM7UUFFZixTQUFJLEdBQVEsSUFBSSxDQUFDO1FBRWpCLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFDakIsU0FBSSxHQUFHLEVBQUUsQ0FBQztRQUNWLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFJYixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLHdCQUF3QixDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLHdCQUF3QixDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQTtJQUM3SixDQUFDO0lBRUgsUUFBUTtRQUNOLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUN4QyxJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBRTtZQUNyQixNQUFNLFlBQVksR0FBRyxFQUFFLENBQUM7WUFDeEIsTUFBTSxjQUFjLEdBQUcsRUFBRSxDQUFDO1lBQzFCLEtBQUssQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxJQUFJLEVBQUUsRUFBRTtnQkFDL0MsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7b0JBQ2IsT0FBTyxFQUFHLElBQUksQ0FBQyxPQUFPO29CQUN0QixPQUFPLEVBQUcsSUFBSSxDQUFDLEtBQUs7b0JBQ3BCLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtvQkFDakMsS0FBSyxFQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUM7b0JBQ3BELElBQUksRUFBRyxJQUFJLENBQUMsSUFBSTtpQkFDakIsQ0FBQyxDQUFBO1lBRU4sQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQTtJQUVKLENBQUM7O3dIQWhDVSwwQkFBMEI7NEdBQTFCLDBCQUEwQiwrSENYdkMsKzNDQTRCQTs0RkRqQmEsMEJBQTBCO2tCQUx0QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx5QkFBeUI7b0JBQ25DLFdBQVcsRUFBRSxzQ0FBc0M7b0JBQ25ELFNBQVMsRUFBRSxDQUFDLHNDQUFzQyxDQUFDO2lCQUNwRDt1S0FHQyxJQUFJO3NCQURILEtBQUs7Z0JBR04sSUFBSTtzQkFESCxLQUFLO2dCQUdOLFNBQVM7c0JBRFIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBVdGlscyB9IGZyb20gJ2Zvcm1pb2pzJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9Db3JlL3NlcnZpY2VzL3RyYW5zbGF0aW9uL3RyYW5zbGF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBcHBDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29uZmlndXJhdGlvbi9hcHAtY29uZmlnLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjdHMtZHluYW1pYy1mb3JtLXZpZXdlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2R5bmFtaWMtZm9ybS12aWV3ZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2R5bmFtaWMtZm9ybS12aWV3ZXIuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRHluYW1pY0Zvcm1WaWV3ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpXHJcbiAgZm9ybTogYW55ID0ge307XHJcbiAgQElucHV0KClcclxuICBkYXRhOiBhbnkgPSBudWxsO1xyXG4gIEBJbnB1dCgpXHJcbiAgY2xhc3NUeXBlID0gbnVsbDtcclxuICBsaXN0ID0gW107XHJcbiAgaXNBcmFiaWMgPSBmYWxzZTtcclxuICBkYXRlRm9tcmF0ZTtcclxuICBjb25zdHJ1Y3RvciggcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsIHByaXZhdGUgdHJhbnNsYXRpb24gOiBUcmFuc2xhdGlvblNlcnZpY2UgLCBwcml2YXRlIGNvbmZpZ1NlcnZpY2UgOiBBcHBDb25maWdTZXJ2aWNlXHJcbiAgICApIHsgXHJcbiAgICAgIHRoaXMuZGF0ZUZvbXJhdGUgPSB0aGlzLmNvbmZpZ1NlcnZpY2UubXlDb25maWd1cmF0aW9uWydkeW5hbWljRm9ybURhdGVGb3JtYXRlJ10gPyB0aGlzLmNvbmZpZ1NlcnZpY2UubXlDb25maWd1cmF0aW9uWydkeW5hbWljRm9ybURhdGVGb3JtYXRlJ10gOiAnZGQgTU1NIHknXHJcbiAgICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2xhdGlvbi5pc0FyYWJpYy5zdWJzY3JpYmUocmVzID0+IHtcclxuICAgICAgdGhpcy5pc0FyYWJpYyA9IHJlcyA7XHJcbiAgICAgIGNvbnN0IHRyYW5zbGF0aW9ucyA9IHt9O1xyXG4gICAgICBjb25zdCB0cmFuc2xhdGlvbnNBciA9IHt9O1xyXG4gICAgICBVdGlscy5lYWNoQ29tcG9uZW50KHRoaXMuZm9ybS5jb21wb25lbnRzLCAoY29tcCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5saXN0LnB1c2goe1xyXG4gICAgICAgICAgICBsYWJlbEFyIDogY29tcC5sYWJlbEFyLFxyXG4gICAgICAgICAgICBsYWJlbEVuIDogY29tcC5sYWJlbCxcclxuICAgICAgICAgICAgY3VzdG9tT3B0aW9uczogY29tcC5jdXN0b21PcHRpb25zLFxyXG4gICAgICAgICAgICB2YWx1ZSA6IHRoaXMuZGF0YVt0aGlzLmZvcm0ucHJlZml4ICsgJzonICsgY29tcC5rZXldLFxyXG4gICAgICAgICAgICB0eXBlIDogY29tcC50eXBlXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgIFxyXG4gICAgICB9KTtcclxuICAgIH0pXHJcbiAgXHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJkeW5hbWljLWZpZWxkcy12YWx1ZXNcIj5cclxuICA8ZGl2IGNsYXNzPVwiZmllbGRzLXRpdGxlXCI+XHJcbiAgICB7eyBcIkNSRUFURS5DT1JSRVNQX0ZPUk1fVklFV0VSXCIgfCB0cmFuc2xhdGUgfX1cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwidmFsdWVzLXdyYXBwZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJteC0xIG1iLTIgY2xhc3MtdHlwZS10aXRsZVwiICpuZ0lmPVwiY2xhc3NUeXBlXCI+e3tcInZvY2FidWxhcnkuVk9DX0NvcnJlc3BvbmRlbmNlQ2xhc3MuXCIgKyBjbGFzc1R5cGUgfFxyXG4gICAgICB0cmFuc2xhdGV9fTwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInNpbmdsZS1maWVsZC12YWx1ZVwiICpuZ0Zvcj1cImxldCBpdGVtIG9mIGxpc3RcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInRpdGxlXCIgKm5nSWY9XCIhaXNBcmFiaWNcIj57eyBpdGVtLmxhYmVsRW4gfX08L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cInRpdGxlXCIgKm5nSWY9XCJpc0FyYWJpY1wiPnt7IGl0ZW0ubGFiZWxBciB9fTwvZGl2PlxyXG4gICAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJpdGVtPy50eXBlXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3ZvY2FidWxhcnknXCI+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJpdGVtLnZhbHVlIT11bmRlZmluZWRcIiBjbGFzcz1cInZhbHVlXCI+e3sgJ3ZvY2FidWxhcnkuJyArIGl0ZW0uY3VzdG9tT3B0aW9ucy52b2NJZCArICcuJyArIGl0ZW0udmFsdWUgfCB0cmFuc2xhdGV9fTwvZGl2PiAgICBcclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCIndG9nZ2xlJ1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidmFsdWVcIj57eyAnJyArIGl0ZW0udmFsdWUgfCB0cmFuc2xhdGV9fTwvZGl2PiAgICBcclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInY3VzdG9tZGF0ZSdcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2YWx1ZVwiPnt7IGl0ZW0udmFsdWUgfCBsb2NhbGl6ZWREYXRlIDogZGF0ZUZvbXJhdGUgOiAoaXNBcmFiaWM/ICdhci1BUicgOiAnZW4tVVMnKX19PC9kaXY+ICAgIFxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaERlZmF1bHQ+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2YWx1ZVwiPnt7IGl0ZW0udmFsdWV9fTwvZGl2PiAgICBcclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIFxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLXZpZXdlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS12aWV3ZXIvZHluYW1pYy1mb3JtLXZpZXdlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS12aWV3ZXIvZHluYW1pYy1mb3JtLXZpZXdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sVUFBVSxDQUFDOzs7Ozs7O0FBVWpDLE1BQU0sT0FBTywwQkFBMEI7SUFVckMsWUFBcUIsU0FBMkIsRUFBVSxXQUFnQyxFQUFXLGFBQWdDO1FBQWhILGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQXFCO1FBQVcsa0JBQWEsR0FBYixhQUFhLENBQW1CO1FBUnJJLFNBQUksR0FBUSxFQUFFLENBQUM7UUFFZixTQUFJLEdBQVEsSUFBSSxDQUFDO1FBRWpCLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFDakIsU0FBSSxHQUFHLEVBQUUsQ0FBQztRQUNWLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFJYixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLHdCQUF3QixDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLHdCQUF3QixDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQTtJQUM3SixDQUFDO0lBRUgsUUFBUTtRQUNOLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUN4QyxJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBRTtZQUNyQixNQUFNLFlBQVksR0FBRyxFQUFFLENBQUM7WUFDeEIsTUFBTSxjQUFjLEdBQUcsRUFBRSxDQUFDO1lBQzFCLEtBQUssQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxJQUFJLEVBQUUsRUFBRTtnQkFDL0MsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7b0JBQ2IsT0FBTyxFQUFHLElBQUksQ0FBQyxPQUFPO29CQUN0QixPQUFPLEVBQUcsSUFBSSxDQUFDLEtBQUs7b0JBQ3BCLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtvQkFDakMsS0FBSyxFQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUM7b0JBQ3BELElBQUksRUFBRyxJQUFJLENBQUMsSUFBSTtpQkFDakIsQ0FBQyxDQUFBO1lBRU4sQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQTtJQUVKLENBQUM7O3dIQWhDVSwwQkFBMEI7NEdBQTFCLDBCQUEwQiwrSENYdkMsKzNDQTRCQTs0RkRqQmEsMEJBQTBCO2tCQUx0QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx5QkFBeUI7b0JBQ25DLFdBQVcsRUFBRSxzQ0FBc0M7b0JBQ25ELFNBQVMsRUFBRSxDQUFDLHNDQUFzQyxDQUFDO2lCQUNwRDt1S0FHQyxJQUFJO3NCQURILEtBQUs7Z0JBR04sSUFBSTtzQkFESCxLQUFLO2dCQUdOLFNBQVM7c0JBRFIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBVdGlscyB9IGZyb20gJ2Zvcm1pb2pzJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL3NlcnZpY2VzL3RyYW5zbGF0aW9uL3RyYW5zbGF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBcHBDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29uZmlndXJhdGlvbi9hcHAtY29uZmlnLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjdHMtZHluYW1pYy1mb3JtLXZpZXdlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2R5bmFtaWMtZm9ybS12aWV3ZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2R5bmFtaWMtZm9ybS12aWV3ZXIuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRHluYW1pY0Zvcm1WaWV3ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpXHJcbiAgZm9ybTogYW55ID0ge307XHJcbiAgQElucHV0KClcclxuICBkYXRhOiBhbnkgPSBudWxsO1xyXG4gIEBJbnB1dCgpXHJcbiAgY2xhc3NUeXBlID0gbnVsbDtcclxuICBsaXN0ID0gW107XHJcbiAgaXNBcmFiaWMgPSBmYWxzZTtcclxuICBkYXRlRm9tcmF0ZTtcclxuICBjb25zdHJ1Y3RvciggcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsIHByaXZhdGUgdHJhbnNsYXRpb24gOiBUcmFuc2xhdGlvblNlcnZpY2UgLCBwcml2YXRlIGNvbmZpZ1NlcnZpY2UgOiBBcHBDb25maWdTZXJ2aWNlXHJcbiAgICApIHsgXHJcbiAgICAgIHRoaXMuZGF0ZUZvbXJhdGUgPSB0aGlzLmNvbmZpZ1NlcnZpY2UubXlDb25maWd1cmF0aW9uWydkeW5hbWljRm9ybURhdGVGb3JtYXRlJ10gPyB0aGlzLmNvbmZpZ1NlcnZpY2UubXlDb25maWd1cmF0aW9uWydkeW5hbWljRm9ybURhdGVGb3JtYXRlJ10gOiAnZGQgTU1NIHknXHJcbiAgICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2xhdGlvbi5pc0FyYWJpYy5zdWJzY3JpYmUocmVzID0+IHtcclxuICAgICAgdGhpcy5pc0FyYWJpYyA9IHJlcyA7XHJcbiAgICAgIGNvbnN0IHRyYW5zbGF0aW9ucyA9IHt9O1xyXG4gICAgICBjb25zdCB0cmFuc2xhdGlvbnNBciA9IHt9O1xyXG4gICAgICBVdGlscy5lYWNoQ29tcG9uZW50KHRoaXMuZm9ybS5jb21wb25lbnRzLCAoY29tcCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5saXN0LnB1c2goe1xyXG4gICAgICAgICAgICBsYWJlbEFyIDogY29tcC5sYWJlbEFyLFxyXG4gICAgICAgICAgICBsYWJlbEVuIDogY29tcC5sYWJlbCxcclxuICAgICAgICAgICAgY3VzdG9tT3B0aW9uczogY29tcC5jdXN0b21PcHRpb25zLFxyXG4gICAgICAgICAgICB2YWx1ZSA6IHRoaXMuZGF0YVt0aGlzLmZvcm0ucHJlZml4ICsgJzonICsgY29tcC5rZXldLFxyXG4gICAgICAgICAgICB0eXBlIDogY29tcC50eXBlXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgIFxyXG4gICAgICB9KTtcclxuICAgIH0pXHJcbiAgXHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJkeW5hbWljLWZpZWxkcy12YWx1ZXNcIj5cclxuICA8ZGl2IGNsYXNzPVwiZmllbGRzLXRpdGxlXCI+XHJcbiAgICB7eyBcIkNSRUFURS5DT1JSRVNQX0ZPUk1fVklFV0VSXCIgfCB0cmFuc2xhdGUgfX1cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwidmFsdWVzLXdyYXBwZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJteC0xIG1iLTIgY2xhc3MtdHlwZS10aXRsZVwiICpuZ0lmPVwiY2xhc3NUeXBlXCI+e3tcInZvY2FidWxhcnkuVk9DX0NvcnJlc3BvbmRlbmNlQ2xhc3MuXCIgKyBjbGFzc1R5cGUgfFxyXG4gICAgICB0cmFuc2xhdGV9fTwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInNpbmdsZS1maWVsZC12YWx1ZVwiICpuZ0Zvcj1cImxldCBpdGVtIG9mIGxpc3RcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInRpdGxlXCIgKm5nSWY9XCIhaXNBcmFiaWNcIj57eyBpdGVtLmxhYmVsRW4gfX08L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cInRpdGxlXCIgKm5nSWY9XCJpc0FyYWJpY1wiPnt7IGl0ZW0ubGFiZWxBciB9fTwvZGl2PlxyXG4gICAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJpdGVtPy50eXBlXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3ZvY2FidWxhcnknXCI+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJpdGVtLnZhbHVlIT11bmRlZmluZWRcIiBjbGFzcz1cInZhbHVlXCI+e3sgJ3ZvY2FidWxhcnkuJyArIGl0ZW0uY3VzdG9tT3B0aW9ucy52b2NJZCArICcuJyArIGl0ZW0udmFsdWUgfCB0cmFuc2xhdGV9fTwvZGl2PiAgICBcclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCIndG9nZ2xlJ1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidmFsdWVcIj57eyAnJyArIGl0ZW0udmFsdWUgfCB0cmFuc2xhdGV9fTwvZGl2PiAgICBcclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInY3VzdG9tZGF0ZSdcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2YWx1ZVwiPnt7IGl0ZW0udmFsdWUgfCBsb2NhbGl6ZWREYXRlIDogZGF0ZUZvbXJhdGUgOiAoaXNBcmFiaWM/ICdhci1BUicgOiAnZW4tVVMnKX19PC9kaXY+ICAgIFxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaERlZmF1bHQ+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2YWx1ZVwiPnt7IGl0ZW0udmFsdWV9fTwvZGl2PiAgICBcclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIFxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -2,7 +2,7 @@ import { Injectable } from '@angular/core';
2
2
  import { Subject } from 'rxjs';
3
3
  import { catchError, map } from 'rxjs/operators';
4
4
  import * as i0 from "@angular/core";
5
- import * as i1 from "../../../Core/services/callApi/call-api.service";
5
+ import * as i1 from "../../../core/services/callApi/call-api.service";
6
6
  export function transformKeyToObject(key, value) {
7
7
  const objectLevels = key.split('.').reverse();
8
8
  return objectLevels.reduce((previousValue, currentValue) => {
@@ -80,4 +80,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
80
80
  providedIn: 'root'
81
81
  }]
82
82
  }], ctorParameters: function () { return [{ type: i1.CallApiService }]; } });
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLXVwZGF0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9keW5hbWljLWZvcm0vc2VydmljZXMvZHluYW1pYy1mb3JtLXVwZGF0ZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFhakQsTUFBTSxVQUFVLG9CQUFvQixDQUFDLEdBQVcsRUFBRSxLQUFLO0lBQ3JELE1BQU0sWUFBWSxHQUFhLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7SUFFeEQsT0FBTyxZQUFZLENBQUMsTUFBTSxDQUFLLENBQUMsYUFBYSxFQUFFLFlBQVksRUFBRSxFQUFFO1FBQzdELE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQyxFQUFFLGFBQWEsRUFBRSxDQUFDO0lBQzNDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztBQUNaLENBQUM7QUFLRCxNQUFNLE9BQU8sd0JBQXdCO0lBTW5DLFlBQXFCLE9BQXVCO1FBQXZCLFlBQU8sR0FBUCxPQUFPLENBQWdCO1FBSjVDLGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQXNCLENBQUM7UUFDakQsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBcUIsQ0FBQztRQUNoRCxjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUcxQixDQUFDO0lBRUQsTUFBTSxDQUFDLFFBQWtDLEVBQUUsUUFBYTtRQUN0RCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQztZQUNyQixNQUFNLEVBQUUsUUFBUTtZQUNoQixPQUFPLEVBQUUsb0JBQW9CLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUM7U0FDdEQsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7WUFDbEIsTUFBTSxFQUFFLFFBQVE7WUFDaEIsT0FBTyxFQUFFLFFBQVE7U0FDbEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELFFBQVEsQ0FBQyxRQUFrQyxFQUFFLFFBQWE7UUFDeEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7WUFDbEIsTUFBTSxFQUFFLFFBQVE7WUFDaEIsT0FBTyxFQUFFLFFBQVE7U0FDbEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELE9BQU8sQ0FBQyxRQUFrQztRQUN4QyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQztZQUNyQixNQUFNLEVBQUUsUUFBUTtTQUNqQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsMkJBQTJCLENBQUMsWUFBWSxFQUFHLE1BQU0sRUFBRyxHQUFHLEVBQUcsb0JBQW9CLEVBQUcsZ0JBQWdCO1FBQ2hHLE9BQVEsSUFBSSxDQUFDLE9BQU87YUFDaEIsS0FBSyxpQkFFRixZQUFZLEVBQUUsWUFBWSxJQUN2QixNQUFNLEdBRVg7WUFDRSxPQUFPLEVBQUU7Z0JBQ1AsZ0JBQWdCLEVBQUUsZ0JBQWdCO2FBQ25DO1NBQ0YsQ0FDRjthQUNBLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRTtZQUNoQixJQUFJLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDakIsSUFBRyxZQUFZLElBQUUsaUNBQWlDLEVBQUM7Z0JBQ2pELElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7b0JBQ3hCLE9BQU8sQ0FBQyxJQUFJLENBQUM7d0JBQ1gsc0JBQXNCO3dCQUN0QixLQUFLLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQzt3QkFDN0ssRUFBRSxFQUFFLElBQUksQ0FBQyxHQUFHO3dCQUNaLE1BQU0sRUFBRSxJQUFJLENBQUMsS0FBSzt3QkFDbEIsTUFBTSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsc0JBQXNCLENBQUM7d0JBQy9DLE9BQU8sRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQztxQkFDekMsQ0FBQyxDQUFDO2dCQUNMLENBQUMsQ0FBQyxDQUFDO2FBQ0o7aUJBQUk7Z0JBQ0gsSUFBSSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLG9CQUFvQixDQUFDLENBQUM7Z0JBQy9ELGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtvQkFDcEMsT0FBTyxDQUFDLElBQUksQ0FBQzt3QkFDYixLQUFLLEVBQUcsSUFBSSxDQUFDLEdBQUc7cUJBQ2YsQ0FBQyxDQUFDO2dCQUNMLENBQUMsQ0FBQyxDQUFDO2FBQ0o7WUFDRCxPQUFPLE9BQU8sQ0FBQztRQUNqQixDQUFDLENBQUMsRUFDRixVQUFVLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNqQixNQUFNLEdBQUcsQ0FBQztRQUNaLENBQUMsQ0FBQyxDQUNILENBQUE7SUFFTCxDQUFDOztzSEF6RVUsd0JBQXdCOzBIQUF4Qix3QkFBd0IsY0FGdkIsTUFBTTs0RkFFUCx3QkFBd0I7a0JBSHBDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgRHluYW1pY0Zvcm1CYXNlSXRlbU1vZGVsIH0gZnJvbSAnLi4vbW9kZWxzL2R5bmFtaWMtZm9ybS5tb2RlbHMnO1xyXG5pbXBvcnQgeyBDYWxsQXBpU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL0NvcmUvc2VydmljZXMvY2FsbEFwaS9jYWxsLWFwaS5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVXBkYXRlTm90aWZpY2F0aW9uIHtcclxuICB0YXJnZXQ6IGFueTtcclxuICBjaGFuZ2VkOiBhbnk7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ2xpY2tOb3RpZmljYXRpb24ge1xyXG4gIHRhcmdldDogYW55O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtS2V5VG9PYmplY3Qoa2V5OiBzdHJpbmcsIHZhbHVlKTogT2JqZWN0IHtcclxuICBjb25zdCBvYmplY3RMZXZlbHM6IHN0cmluZ1tdID0ga2V5LnNwbGl0KCcuJykucmV2ZXJzZSgpO1xyXG5cclxuICByZXR1cm4gb2JqZWN0TGV2ZWxzLnJlZHVjZTx7fT4oKHByZXZpb3VzVmFsdWUsIGN1cnJlbnRWYWx1ZSkgPT4ge1xyXG4gICAgcmV0dXJuIHsgW2N1cnJlbnRWYWx1ZV06IHByZXZpb3VzVmFsdWUgfTtcclxuICB9LCB2YWx1ZSk7XHJcbn1cclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIER5bmFtaWNGb3JtVXBkYXRlU2VydmljZSB7XHJcblxyXG4gIGl0ZW1VcGRhdGVkJCA9IG5ldyBTdWJqZWN0PFVwZGF0ZU5vdGlmaWNhdGlvbj4oKTtcclxuICBpdGVtQ2xpY2tlZCQgPSBuZXcgU3ViamVjdDxDbGlja05vdGlmaWNhdGlvbj4oKTtcclxuICB2YWxpZGF0ZSQgPSBuZXcgU3ViamVjdCgpO1xyXG5cclxuICBjb25zdHJ1Y3RvciggcHJpdmF0ZSBjYWxsQXBpOiBDYWxsQXBpU2VydmljZSl7XHJcbiAgfVxyXG5cclxuICB1cGRhdGUocHJvcGVydHk6IER5bmFtaWNGb3JtQmFzZUl0ZW1Nb2RlbCwgbmV3VmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5pdGVtVXBkYXRlZCQubmV4dCh7XHJcbiAgICAgIHRhcmdldDogcHJvcGVydHksXHJcbiAgICAgIGNoYW5nZWQ6IHRyYW5zZm9ybUtleVRvT2JqZWN0KHByb3BlcnR5LmtleSwgbmV3VmFsdWUpXHJcbiAgICB9KTtcclxuICAgIHRoaXMudmFsaWRhdGUkLm5leHQoe1xyXG4gICAgICB0YXJnZXQ6IHByb3BlcnR5LFxyXG4gICAgICBjaGFuZ2VkOiBuZXdWYWx1ZVxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIHZhbGlkYXRlKHByb3BlcnR5OiBEeW5hbWljRm9ybUJhc2VJdGVtTW9kZWwsIG5ld1ZhbHVlOiBhbnkpIHtcclxuICAgIHRoaXMudmFsaWRhdGUkLm5leHQoe1xyXG4gICAgICB0YXJnZXQ6IHByb3BlcnR5LFxyXG4gICAgICBjaGFuZ2VkOiBuZXdWYWx1ZVxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIGNsaWNrZWQocHJvcGVydHk6IER5bmFtaWNGb3JtQmFzZUl0ZW1Nb2RlbCkge1xyXG4gICAgdGhpcy5pdGVtQ2xpY2tlZCQubmV4dCh7XHJcbiAgICAgIHRhcmdldDogcHJvcGVydHlcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0VGV4dEJveFN1Z2dlc3Rpb25SZXN1bHRzKHBhZ2VQcm92aWRlciAsIHBhcmFtcyAsIGtleSAsIGF1dG9Db21wbGV0ZVZhbHVlS2V5ICwgY3VzdG9tUHJvcGVydGllcyl7XHJcbiAgIHJldHVybiAgdGhpcy5jYWxsQXBpXHJcbiAgICAgIC5xdWVyeShcclxuICAgICAgICB7XHJcbiAgICAgICAgICBwYWdlUHJvdmlkZXI6IHBhZ2VQcm92aWRlcixcclxuICAgICAgICAgIC4uLnBhcmFtcyxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICAgICAgXCJYLU5YcHJvcGVydGllc1wiOiBjdXN0b21Qcm9wZXJ0aWVzLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9XHJcbiAgICAgIClcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgbWFwKChkYXRhOiBhbnkpID0+IHtcclxuICAgICAgICAgIGxldCByZXN1bHRzID0gW107XHJcbiAgICAgICAgICBpZihwYWdlUHJvdmlkZXI9PVwiUFBfQ29ycmVzcG9uZGVuY2VfUmVsYXRpb25TZWFjaFwiKXtcclxuICAgICAgICAgICAgZGF0YS5lbnRyaWVzLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgICAgIHJlc3VsdHMucHVzaCh7XHJcbiAgICAgICAgICAgICAgICAvLyAgdGl0bGU6IGl0ZW0udGl0bGUsXHJcbiAgICAgICAgICAgICAgICB0aXRsZTogaXRlbS5wcm9wZXJ0aWVzW1wiY29ycjpyZWZlcmVuY2VOdW1iZXJcIl0gIT09IG51bGwgPyBpdGVtLnByb3BlcnRpZXNbXCJjb3JyOnJlZmVyZW5jZU51bWJlclwiXSArIFwiIC0gXCIgKyBpdGVtLnByb3BlcnRpZXNbXCJjb3JyOnN1YmplY3RcIl0gOiBpdGVtLnByb3BlcnRpZXNbXCJjb3JyOnN1YmplY3RcIl0sXHJcbiAgICAgICAgICAgICAgICBpZDogaXRlbS51aWQsXHJcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IGl0ZW0udGl0bGUsXHJcbiAgICAgICAgICAgICAgICBudW1iZXI6IGl0ZW0ucHJvcGVydGllc1tcImNvcnI6cmVmZXJlbmNlTnVtYmVyXCJdLFxyXG4gICAgICAgICAgICAgICAgc3ViamVjdDogaXRlbS5wcm9wZXJ0aWVzW1wiY29ycjpzdWJqZWN0XCJdXHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICAgIGxldCBteUludGVybmFsUmVzdWx0ID0gZGF0YS5hZ2dyZWdhdGlvbnNbYXV0b0NvbXBsZXRlVmFsdWVLZXldO1xyXG4gICAgICAgICAgICBteUludGVybmFsUmVzdWx0LmJ1Y2tldHMubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgICAgcmVzdWx0cy5wdXNoKHtcclxuICAgICAgICAgICAgICB0aXRsZSA6IGl0ZW0ua2V5XHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgcmV0dXJuIHJlc3VsdHM7XHJcbiAgICAgICAgfSksXHJcbiAgICAgICAgY2F0Y2hFcnJvcigoZXJyKSA9PiB7XHJcbiAgICAgICAgICB0aHJvdyBlcnI7XHJcbiAgICAgICAgfSlcclxuICAgICAgKVxyXG4gICAgICBcclxuICB9XHJcblxyXG59XHJcblxyXG5cclxuXHJcbiJdfQ==
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLXVwZGF0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9keW5hbWljLWZvcm0vc2VydmljZXMvZHluYW1pYy1mb3JtLXVwZGF0ZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFhakQsTUFBTSxVQUFVLG9CQUFvQixDQUFDLEdBQVcsRUFBRSxLQUFLO0lBQ3JELE1BQU0sWUFBWSxHQUFhLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7SUFFeEQsT0FBTyxZQUFZLENBQUMsTUFBTSxDQUFLLENBQUMsYUFBYSxFQUFFLFlBQVksRUFBRSxFQUFFO1FBQzdELE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQyxFQUFFLGFBQWEsRUFBRSxDQUFDO0lBQzNDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztBQUNaLENBQUM7QUFLRCxNQUFNLE9BQU8sd0JBQXdCO0lBTW5DLFlBQXFCLE9BQXVCO1FBQXZCLFlBQU8sR0FBUCxPQUFPLENBQWdCO1FBSjVDLGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQXNCLENBQUM7UUFDakQsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBcUIsQ0FBQztRQUNoRCxjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUcxQixDQUFDO0lBRUQsTUFBTSxDQUFDLFFBQWtDLEVBQUUsUUFBYTtRQUN0RCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQztZQUNyQixNQUFNLEVBQUUsUUFBUTtZQUNoQixPQUFPLEVBQUUsb0JBQW9CLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUM7U0FDdEQsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7WUFDbEIsTUFBTSxFQUFFLFFBQVE7WUFDaEIsT0FBTyxFQUFFLFFBQVE7U0FDbEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELFFBQVEsQ0FBQyxRQUFrQyxFQUFFLFFBQWE7UUFDeEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7WUFDbEIsTUFBTSxFQUFFLFFBQVE7WUFDaEIsT0FBTyxFQUFFLFFBQVE7U0FDbEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELE9BQU8sQ0FBQyxRQUFrQztRQUN4QyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQztZQUNyQixNQUFNLEVBQUUsUUFBUTtTQUNqQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsMkJBQTJCLENBQUMsWUFBWSxFQUFHLE1BQU0sRUFBRyxHQUFHLEVBQUcsb0JBQW9CLEVBQUcsZ0JBQWdCO1FBQ2hHLE9BQVEsSUFBSSxDQUFDLE9BQU87YUFDaEIsS0FBSyxpQkFFRixZQUFZLEVBQUUsWUFBWSxJQUN2QixNQUFNLEdBRVg7WUFDRSxPQUFPLEVBQUU7Z0JBQ1AsZ0JBQWdCLEVBQUUsZ0JBQWdCO2FBQ25DO1NBQ0YsQ0FDRjthQUNBLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRTtZQUNoQixJQUFJLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDakIsSUFBRyxZQUFZLElBQUUsaUNBQWlDLEVBQUM7Z0JBQ2pELElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7b0JBQ3hCLE9BQU8sQ0FBQyxJQUFJLENBQUM7d0JBQ1gsc0JBQXNCO3dCQUN0QixLQUFLLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQzt3QkFDN0ssRUFBRSxFQUFFLElBQUksQ0FBQyxHQUFHO3dCQUNaLE1BQU0sRUFBRSxJQUFJLENBQUMsS0FBSzt3QkFDbEIsTUFBTSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsc0JBQXNCLENBQUM7d0JBQy9DLE9BQU8sRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQztxQkFDekMsQ0FBQyxDQUFDO2dCQUNMLENBQUMsQ0FBQyxDQUFDO2FBQ0o7aUJBQUk7Z0JBQ0gsSUFBSSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLG9CQUFvQixDQUFDLENBQUM7Z0JBQy9ELGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtvQkFDcEMsT0FBTyxDQUFDLElBQUksQ0FBQzt3QkFDYixLQUFLLEVBQUcsSUFBSSxDQUFDLEdBQUc7cUJBQ2YsQ0FBQyxDQUFDO2dCQUNMLENBQUMsQ0FBQyxDQUFDO2FBQ0o7WUFDRCxPQUFPLE9BQU8sQ0FBQztRQUNqQixDQUFDLENBQUMsRUFDRixVQUFVLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNqQixNQUFNLEdBQUcsQ0FBQztRQUNaLENBQUMsQ0FBQyxDQUNILENBQUE7SUFFTCxDQUFDOztzSEF6RVUsd0JBQXdCOzBIQUF4Qix3QkFBd0IsY0FGdkIsTUFBTTs0RkFFUCx3QkFBd0I7a0JBSHBDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgRHluYW1pY0Zvcm1CYXNlSXRlbU1vZGVsIH0gZnJvbSAnLi4vbW9kZWxzL2R5bmFtaWMtZm9ybS5tb2RlbHMnO1xyXG5pbXBvcnQgeyBDYWxsQXBpU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2NvcmUvc2VydmljZXMvY2FsbEFwaS9jYWxsLWFwaS5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVXBkYXRlTm90aWZpY2F0aW9uIHtcclxuICB0YXJnZXQ6IGFueTtcclxuICBjaGFuZ2VkOiBhbnk7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ2xpY2tOb3RpZmljYXRpb24ge1xyXG4gIHRhcmdldDogYW55O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtS2V5VG9PYmplY3Qoa2V5OiBzdHJpbmcsIHZhbHVlKTogT2JqZWN0IHtcclxuICBjb25zdCBvYmplY3RMZXZlbHM6IHN0cmluZ1tdID0ga2V5LnNwbGl0KCcuJykucmV2ZXJzZSgpO1xyXG5cclxuICByZXR1cm4gb2JqZWN0TGV2ZWxzLnJlZHVjZTx7fT4oKHByZXZpb3VzVmFsdWUsIGN1cnJlbnRWYWx1ZSkgPT4ge1xyXG4gICAgcmV0dXJuIHsgW2N1cnJlbnRWYWx1ZV06IHByZXZpb3VzVmFsdWUgfTtcclxuICB9LCB2YWx1ZSk7XHJcbn1cclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIER5bmFtaWNGb3JtVXBkYXRlU2VydmljZSB7XHJcblxyXG4gIGl0ZW1VcGRhdGVkJCA9IG5ldyBTdWJqZWN0PFVwZGF0ZU5vdGlmaWNhdGlvbj4oKTtcclxuICBpdGVtQ2xpY2tlZCQgPSBuZXcgU3ViamVjdDxDbGlja05vdGlmaWNhdGlvbj4oKTtcclxuICB2YWxpZGF0ZSQgPSBuZXcgU3ViamVjdCgpO1xyXG5cclxuICBjb25zdHJ1Y3RvciggcHJpdmF0ZSBjYWxsQXBpOiBDYWxsQXBpU2VydmljZSl7XHJcbiAgfVxyXG5cclxuICB1cGRhdGUocHJvcGVydHk6IER5bmFtaWNGb3JtQmFzZUl0ZW1Nb2RlbCwgbmV3VmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5pdGVtVXBkYXRlZCQubmV4dCh7XHJcbiAgICAgIHRhcmdldDogcHJvcGVydHksXHJcbiAgICAgIGNoYW5nZWQ6IHRyYW5zZm9ybUtleVRvT2JqZWN0KHByb3BlcnR5LmtleSwgbmV3VmFsdWUpXHJcbiAgICB9KTtcclxuICAgIHRoaXMudmFsaWRhdGUkLm5leHQoe1xyXG4gICAgICB0YXJnZXQ6IHByb3BlcnR5LFxyXG4gICAgICBjaGFuZ2VkOiBuZXdWYWx1ZVxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIHZhbGlkYXRlKHByb3BlcnR5OiBEeW5hbWljRm9ybUJhc2VJdGVtTW9kZWwsIG5ld1ZhbHVlOiBhbnkpIHtcclxuICAgIHRoaXMudmFsaWRhdGUkLm5leHQoe1xyXG4gICAgICB0YXJnZXQ6IHByb3BlcnR5LFxyXG4gICAgICBjaGFuZ2VkOiBuZXdWYWx1ZVxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIGNsaWNrZWQocHJvcGVydHk6IER5bmFtaWNGb3JtQmFzZUl0ZW1Nb2RlbCkge1xyXG4gICAgdGhpcy5pdGVtQ2xpY2tlZCQubmV4dCh7XHJcbiAgICAgIHRhcmdldDogcHJvcGVydHlcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0VGV4dEJveFN1Z2dlc3Rpb25SZXN1bHRzKHBhZ2VQcm92aWRlciAsIHBhcmFtcyAsIGtleSAsIGF1dG9Db21wbGV0ZVZhbHVlS2V5ICwgY3VzdG9tUHJvcGVydGllcyl7XHJcbiAgIHJldHVybiAgdGhpcy5jYWxsQXBpXHJcbiAgICAgIC5xdWVyeShcclxuICAgICAgICB7XHJcbiAgICAgICAgICBwYWdlUHJvdmlkZXI6IHBhZ2VQcm92aWRlcixcclxuICAgICAgICAgIC4uLnBhcmFtcyxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICAgICAgXCJYLU5YcHJvcGVydGllc1wiOiBjdXN0b21Qcm9wZXJ0aWVzLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9XHJcbiAgICAgIClcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgbWFwKChkYXRhOiBhbnkpID0+IHtcclxuICAgICAgICAgIGxldCByZXN1bHRzID0gW107XHJcbiAgICAgICAgICBpZihwYWdlUHJvdmlkZXI9PVwiUFBfQ29ycmVzcG9uZGVuY2VfUmVsYXRpb25TZWFjaFwiKXtcclxuICAgICAgICAgICAgZGF0YS5lbnRyaWVzLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgICAgIHJlc3VsdHMucHVzaCh7XHJcbiAgICAgICAgICAgICAgICAvLyAgdGl0bGU6IGl0ZW0udGl0bGUsXHJcbiAgICAgICAgICAgICAgICB0aXRsZTogaXRlbS5wcm9wZXJ0aWVzW1wiY29ycjpyZWZlcmVuY2VOdW1iZXJcIl0gIT09IG51bGwgPyBpdGVtLnByb3BlcnRpZXNbXCJjb3JyOnJlZmVyZW5jZU51bWJlclwiXSArIFwiIC0gXCIgKyBpdGVtLnByb3BlcnRpZXNbXCJjb3JyOnN1YmplY3RcIl0gOiBpdGVtLnByb3BlcnRpZXNbXCJjb3JyOnN1YmplY3RcIl0sXHJcbiAgICAgICAgICAgICAgICBpZDogaXRlbS51aWQsXHJcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IGl0ZW0udGl0bGUsXHJcbiAgICAgICAgICAgICAgICBudW1iZXI6IGl0ZW0ucHJvcGVydGllc1tcImNvcnI6cmVmZXJlbmNlTnVtYmVyXCJdLFxyXG4gICAgICAgICAgICAgICAgc3ViamVjdDogaXRlbS5wcm9wZXJ0aWVzW1wiY29ycjpzdWJqZWN0XCJdXHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICAgIGxldCBteUludGVybmFsUmVzdWx0ID0gZGF0YS5hZ2dyZWdhdGlvbnNbYXV0b0NvbXBsZXRlVmFsdWVLZXldO1xyXG4gICAgICAgICAgICBteUludGVybmFsUmVzdWx0LmJ1Y2tldHMubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgICAgcmVzdWx0cy5wdXNoKHtcclxuICAgICAgICAgICAgICB0aXRsZSA6IGl0ZW0ua2V5XHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgcmV0dXJuIHJlc3VsdHM7XHJcbiAgICAgICAgfSksXHJcbiAgICAgICAgY2F0Y2hFcnJvcigoZXJyKSA9PiB7XHJcbiAgICAgICAgICB0aHJvdyBlcnI7XHJcbiAgICAgICAgfSlcclxuICAgICAgKVxyXG4gICAgICBcclxuICB9XHJcblxyXG59XHJcblxyXG5cclxuXHJcbiJdfQ==