@sumaris-net/ngx-components 2.7.0-rc4 → 2.7.0-rc5

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 (184) hide show
  1. package/esm2022/src/app/admin/services/filter/person.filter.mjs +1 -1
  2. package/esm2022/src/app/admin/services/person.service.mjs +2 -2
  3. package/esm2022/src/app/admin/services/validator/person.validator.mjs +1 -1
  4. package/esm2022/src/app/admin/users/users.mjs +3 -3
  5. package/esm2022/src/app/core/about/about.modal.mjs +1 -1
  6. package/esm2022/src/app/core/account/account.page.mjs +1 -1
  7. package/esm2022/src/app/core/account/new-token.modal.mjs +1 -1
  8. package/esm2022/src/app/core/account/token.table.mjs +1 -1
  9. package/esm2022/src/app/core/auth/auth.form.mjs +1 -1
  10. package/esm2022/src/app/core/auth/auth.modal.mjs +1 -1
  11. package/esm2022/src/app/core/form/entity/editor.class.mjs +1 -1
  12. package/esm2022/src/app/core/form/entity/entity-editor-modal.class.mjs +1 -1
  13. package/esm2022/src/app/core/form/entity/entity-editor.class.mjs +3 -3
  14. package/esm2022/src/app/core/form/form.class.mjs +1 -1
  15. package/esm2022/src/app/core/form/form.utils.mjs +1 -1
  16. package/esm2022/src/app/core/form/list/list.form.mjs +1 -1
  17. package/esm2022/src/app/core/form/properties/properties.form.mjs +1 -1
  18. package/esm2022/src/app/core/form/properties/properties.table.mjs +1 -1
  19. package/esm2022/src/app/core/form/properties/testing/properties-form.test.mjs +1 -1
  20. package/esm2022/src/app/core/form/text-popover/testing/text-popover.testing.mjs +1 -1
  21. package/esm2022/src/app/core/form/text-popover/text-popover.component.mjs +1 -1
  22. package/esm2022/src/app/core/graphql/graphql.service.mjs +1 -1
  23. package/esm2022/src/app/core/graphql/graphql.utils.mjs +1 -1
  24. package/esm2022/src/app/core/home/home.mjs +3 -3
  25. package/esm2022/src/app/core/install/install-upgrade-card.component.mjs +1 -1
  26. package/esm2022/src/app/core/menu/menu.component.mjs +3 -3
  27. package/esm2022/src/app/core/menu/menu.model.mjs +1 -1
  28. package/esm2022/src/app/core/menu/menu.service.mjs +1 -1
  29. package/esm2022/src/app/core/menu/sub-menu-tab.directive.mjs +1 -1
  30. package/esm2022/src/app/core/peer/select-peer.modal.mjs +1 -1
  31. package/esm2022/src/app/core/register/register-confirm.page.mjs +3 -3
  32. package/esm2022/src/app/core/register/register.form.mjs +1 -1
  33. package/esm2022/src/app/core/register/register.modal.mjs +1 -1
  34. package/esm2022/src/app/core/services/account.service.mjs +1 -1
  35. package/esm2022/src/app/core/services/auth-guard.service.mjs +1 -1
  36. package/esm2022/src/app/core/services/base-entity-service.class.mjs +1 -1
  37. package/esm2022/src/app/core/services/base-graphql-service.class.mjs +1 -1
  38. package/esm2022/src/app/core/services/base58.mjs +1 -1
  39. package/esm2022/src/app/core/services/config.service.mjs +1 -1
  40. package/esm2022/src/app/core/services/errors.mjs +3 -3
  41. package/esm2022/src/app/core/services/local-settings.service.mjs +1 -1
  42. package/esm2022/src/app/core/services/model/account.model.mjs +1 -1
  43. package/esm2022/src/app/core/services/model/config.model.mjs +1 -1
  44. package/esm2022/src/app/core/services/model/entity.decorators.mjs +1 -1
  45. package/esm2022/src/app/core/services/model/entity.model.mjs +1 -1
  46. package/esm2022/src/app/core/services/model/filter.model.mjs +1 -1
  47. package/esm2022/src/app/core/services/model/person.model.mjs +1 -1
  48. package/esm2022/src/app/core/services/model/referential.model.mjs +3 -3
  49. package/esm2022/src/app/core/services/model/token.model.mjs +1 -1
  50. package/esm2022/src/app/core/services/model/tree-item-entity.model.mjs +1 -1
  51. package/esm2022/src/app/core/services/network.service.mjs +1 -1
  52. package/esm2022/src/app/core/services/network.types.mjs +1 -1
  53. package/esm2022/src/app/core/services/network.utils.mjs +1 -1
  54. package/esm2022/src/app/core/services/platform.service.mjs +2 -2
  55. package/esm2022/src/app/core/services/storage/entities-storage.service.mjs +1 -1
  56. package/esm2022/src/app/core/services/storage/entity-store.class.mjs +1 -1
  57. package/esm2022/src/app/core/services/testing/referential.validator.mjs +1 -1
  58. package/esm2022/src/app/core/services/validator/account.validator.mjs +1 -1
  59. package/esm2022/src/app/core/services/validator/local-settings.validator.mjs +1 -1
  60. package/esm2022/src/app/core/services/validator/user-token.validator.mjs +1 -1
  61. package/esm2022/src/app/core/settings/settings.page.mjs +2 -2
  62. package/esm2022/src/app/core/table/actions-column.component.mjs +1 -1
  63. package/esm2022/src/app/core/table/async-table.class.mjs +1 -1
  64. package/esm2022/src/app/core/table/entities-async-table-datasource.class.mjs +1 -1
  65. package/esm2022/src/app/core/table/entities-table-datasource.class.mjs +2 -2
  66. package/esm2022/src/app/core/table/memory-table.class.mjs +1 -1
  67. package/esm2022/src/app/core/table/table.class.mjs +1 -1
  68. package/esm2022/src/app/core/table/table.utils.mjs +1 -1
  69. package/esm2022/src/app/core/table/testing/table.testing.mjs +1 -1
  70. package/esm2022/src/app/core/table/testing/table2.testing.mjs +1 -1
  71. package/esm2022/src/app/shared/alerts.mjs +1 -1
  72. package/esm2022/src/app/shared/audio/audio.mjs +1 -1
  73. package/esm2022/src/app/shared/capacitor/keyboard.mjs +1 -1
  74. package/esm2022/src/app/shared/dates.mjs +1 -1
  75. package/esm2022/src/app/shared/directives/autofocus.directive.mjs +1 -1
  76. package/esm2022/src/app/shared/directives/autotitle.directive.mjs +1 -1
  77. package/esm2022/src/app/shared/directives/drag-and-drop.directive.mjs +1 -1
  78. package/esm2022/src/app/shared/directives/ng-var.directive.mjs +1 -1
  79. package/esm2022/src/app/shared/directives/resizable/resizable.component.mjs +1 -1
  80. package/esm2022/src/app/shared/events.mjs +1 -1
  81. package/esm2022/src/app/shared/file/csv.utils.mjs +1 -1
  82. package/esm2022/src/app/shared/file/file.service.mjs +1 -1
  83. package/esm2022/src/app/shared/file/file.utils.mjs +1 -1
  84. package/esm2022/src/app/shared/file/images.utils.mjs +1 -1
  85. package/esm2022/src/app/shared/file/json.utils.mjs +1 -1
  86. package/esm2022/src/app/shared/file/uri.utils.mjs +1 -1
  87. package/esm2022/src/app/shared/form/field.component.mjs +1 -1
  88. package/esm2022/src/app/shared/forms.mjs +1 -1
  89. package/esm2022/src/app/shared/functions.mjs +1 -1
  90. package/esm2022/src/app/shared/geolocation/geolocation.utils.mjs +1 -1
  91. package/esm2022/src/app/shared/gesture/gesture-config.mjs +2 -2
  92. package/esm2022/src/app/shared/graph/colors.utils.mjs +1 -1
  93. package/esm2022/src/app/shared/graph/graph-colors.mjs +8 -8
  94. package/esm2022/src/app/shared/guard/component-dirty.guard.mjs +1 -1
  95. package/esm2022/src/app/shared/hotkeys/hotkeys.service.mjs +1 -1
  96. package/esm2022/src/app/shared/http/http.utils.mjs +1 -1
  97. package/esm2022/src/app/shared/image/gallery/image-gallery.component.mjs +1 -1
  98. package/esm2022/src/app/shared/image/image.service.mjs +1 -1
  99. package/esm2022/src/app/shared/inputs.mjs +1 -1
  100. package/esm2022/src/app/shared/interceptors/progess.interceptor.mjs +1 -1
  101. package/esm2022/src/app/shared/logging/logger.model.mjs +1 -1
  102. package/esm2022/src/app/shared/logging/logging-service.class.mjs +1 -1
  103. package/esm2022/src/app/shared/material/autocomplete/material.autocomplete.config.mjs +1 -1
  104. package/esm2022/src/app/shared/material/autocomplete/material.autocomplete.mjs +1 -1
  105. package/esm2022/src/app/shared/material/autocomplete/material.autocomplete.utils.mjs +1 -1
  106. package/esm2022/src/app/shared/material/autocomplete/testing/autocomplete.test.mjs +2 -2
  107. package/esm2022/src/app/shared/material/badge/badge.directive.mjs +1 -1
  108. package/esm2022/src/app/shared/material/boolean/material-boolean.mjs +1 -1
  109. package/esm2022/src/app/shared/material/boolean/testing/boolean.test.page.mjs +1 -1
  110. package/esm2022/src/app/shared/material/chips/material.chips.mjs +1 -1
  111. package/esm2022/src/app/shared/material/chips/testing/chips.test.mjs +2 -2
  112. package/esm2022/src/app/shared/material/datetime/material.date.mjs +1 -1
  113. package/esm2022/src/app/shared/material/datetime/material.dateshort.mjs +1 -1
  114. package/esm2022/src/app/shared/material/datetime/material.datetime.mjs +1 -1
  115. package/esm2022/src/app/shared/material/datetime/testing/mat-date-time.test.mjs +2 -2
  116. package/esm2022/src/app/shared/material/datetime/testing/mat-date.test.mjs +2 -2
  117. package/esm2022/src/app/shared/material/datetime/testing/mat-dateshort.test.mjs +2 -2
  118. package/esm2022/src/app/shared/material/duration/duration.utils.mjs +1 -1
  119. package/esm2022/src/app/shared/material/duration/material.duration.mjs +1 -1
  120. package/esm2022/src/app/shared/material/duration/testing/mat-duration.test.mjs +2 -2
  121. package/esm2022/src/app/shared/material/latlong/latlong.utils.mjs +1 -1
  122. package/esm2022/src/app/shared/material/latlong/material.latlong.mjs +1 -1
  123. package/esm2022/src/app/shared/material/latlong/testing/latlong.test.mjs +1 -1
  124. package/esm2022/src/app/shared/material/material.module.mjs +5 -5
  125. package/esm2022/src/app/shared/material/numpad/numpad.append-to-input.directive.mjs +1 -1
  126. package/esm2022/src/app/shared/material/numpad/numpad.component.mjs +1 -1
  127. package/esm2022/src/app/shared/material/numpad/numpad.container.mjs +1 -1
  128. package/esm2022/src/app/shared/material/numpad/numpad.directive.mjs +1 -1
  129. package/esm2022/src/app/shared/material/paginator/material.paginator-i18n.mjs +1 -1
  130. package/esm2022/src/app/shared/material/swipe/material.swipe.mjs +1 -1
  131. package/esm2022/src/app/shared/material/swipe/testing/swipe.test.mjs +1 -1
  132. package/esm2022/src/app/shared/material/testing/common.test.mjs +2 -2
  133. package/esm2022/src/app/shared/named-filter/named-filter-selector.component.mjs +1 -1
  134. package/esm2022/src/app/shared/named-filter/named-filter.model.mjs +1 -1
  135. package/esm2022/src/app/shared/named-filter/named-filter.service.mjs +1 -1
  136. package/esm2022/src/app/shared/observables.mjs +1 -1
  137. package/esm2022/src/app/shared/pipes/arrays.pipe.mjs +1 -1
  138. package/esm2022/src/app/shared/pipes/colors.pipe.mjs +1 -1
  139. package/esm2022/src/app/shared/pipes/date-diff-duration.pipe.mjs +1 -1
  140. package/esm2022/src/app/shared/pipes/file-size.pipe.mjs +1 -1
  141. package/esm2022/src/app/shared/pipes/form.pipes.mjs +1 -1
  142. package/esm2022/src/app/shared/pipes/highlight.pipe.mjs +1 -1
  143. package/esm2022/src/app/shared/pipes/maskito.pipe.mjs +1 -1
  144. package/esm2022/src/app/shared/pipes/math.pipes.mjs +1 -1
  145. package/esm2022/src/app/shared/pipes/number-format.pipe.mjs +1 -1
  146. package/esm2022/src/app/shared/pipes/property.pipes.mjs +1 -1
  147. package/esm2022/src/app/shared/platforms.mjs +1 -1
  148. package/esm2022/src/app/shared/services/job.utils.mjs +1 -1
  149. package/esm2022/src/app/shared/services/memory-entity-service.class.mjs +3 -3
  150. package/esm2022/src/app/shared/services/progress-bar.service.mjs +1 -1
  151. package/esm2022/src/app/shared/services/startable-observable-service.class.mjs +1 -1
  152. package/esm2022/src/app/shared/services/startable-service.class.mjs +1 -1
  153. package/esm2022/src/app/shared/services/translate-context.service.mjs +1 -1
  154. package/esm2022/src/app/shared/services.mjs +2 -2
  155. package/esm2022/src/app/shared/shared-routing.module.mjs +1 -1
  156. package/esm2022/src/app/shared/storage/storage-explorer.component.mjs +1 -1
  157. package/esm2022/src/app/shared/storage/storage.service.mjs +1 -1
  158. package/esm2022/src/app/shared/testing/observable.test.mjs +1 -1
  159. package/esm2022/src/app/shared/toast/toast.testing.mjs +2 -2
  160. package/esm2022/src/app/shared/toast/toasts.mjs +1 -1
  161. package/esm2022/src/app/shared/toolbar/toolbar.mjs +1 -1
  162. package/esm2022/src/app/shared/upload-file/testing/upload-file.testing.mjs +1 -1
  163. package/esm2022/src/app/shared/upload-file/upload-file-popover.component.mjs +1 -1
  164. package/esm2022/src/app/shared/upload-file/upload-file.component.mjs +1 -1
  165. package/esm2022/src/app/shared/validator/form-error-adapter.class.mjs +1 -1
  166. package/esm2022/src/app/shared/validator/validators.mjs +3 -3
  167. package/esm2022/src/app/shared/version/versions.mjs +1 -1
  168. package/esm2022/src/app/social/job/progression/job-progression.icon.mjs +1 -1
  169. package/esm2022/src/app/social/job/progression/job-progression.list.mjs +1 -1
  170. package/esm2022/src/app/social/job/testing/job-progression.testing.service.mjs +1 -1
  171. package/esm2022/src/app/social/message/message.form.mjs +1 -1
  172. package/esm2022/src/app/social/message/message.modal.mjs +1 -1
  173. package/esm2022/src/app/social/message/message.service.mjs +1 -1
  174. package/esm2022/src/app/social/user-event/notification/user-event-notification.icon.mjs +1 -1
  175. package/esm2022/src/app/social/user-event/notification/user-event-notification.list.mjs +1 -1
  176. package/esm2022/src/app/social/user-event/testing/user-event.testing.mjs +1 -1
  177. package/esm2022/src/app/social/user-event/testing/user-event.testing.model.mjs +1 -1
  178. package/esm2022/src/app/social/user-event/testing/user-event.testing.service.mjs +1 -1
  179. package/esm2022/src/app/social/user-event/user-event.service.mjs +1 -1
  180. package/esm2022/src/environments/environment.loader.mjs +1 -1
  181. package/esm2022/src/environments/environment.mjs +3 -3
  182. package/fesm2022/sumaris-net.ngx-components.mjs +45 -45
  183. package/fesm2022/sumaris-net.ngx-components.mjs.map +1 -1
  184. package/package.json +6 -6
@@ -248,4 +248,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImpor
248
248
  }], ctorParameters: () => [{ type: i1.Platform }, { type: i2.AudioManagement, decorators: [{
249
249
  type: Optional
250
250
  }] }] });
251
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaW8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NoYXJlZC9hdWRpby9hdWRpby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFFLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDbkUsT0FBTyxFQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQ3JELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDOUQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGlCQUFpQixDQUFDOzs7O0FBYTFDLE1BQU0sYUFBYSxHQUFZO0lBQzdCLEVBQUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsNEJBQTRCLEVBQUUsU0FBUyxFQUFFLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsRUFBQztJQUN6RixFQUFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsU0FBUyxFQUFFLCtCQUErQixFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUM7SUFDckYsRUFBQyxPQUFPLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSw2QkFBNkIsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFDO0lBQ2xGLEVBQUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFNBQVMsRUFBRSxvQ0FBb0MsRUFBRSxTQUFTLEVBQUUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUFDO0NBQzVHLENBQUM7QUFFRixNQUFNLHlCQUF5QixHQUFvQztJQUNqRSxTQUFTLEVBQUcsZUFBZSxDQUFDLFNB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IE9wdGlvbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7UGxhdGZvcm19IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcbmltcG9ydCB7QXVkaW9NYW5hZ2VtZW50fSBmcm9tICdAaW9uaWMtbmF0aXZlL2F1ZGlvLW1hbmFnZW1lbnQvbmd4JztcbmltcG9ydCB7aXNOaWwsIHNsZWVwLCB0b0Jvb2xlYW59IGZyb20gJy4uL2Z1bmN0aW9ucyc7XG5pbXBvcnQge1N0YXJ0YWJsZVNlcnZpY2V9IGZyb20gJy4uL3NlcnZpY2VzL3N0YXJ0YWJsZS1zZXJ2aWNlLmNsYXNzJztcbmltcG9ydCB7SGFwdGljc30gZnJvbSAnQGNhcGFjaXRvci9oYXB0aWNzJztcbmltcG9ydCB7TmF0aXZlQXVkaW99IGZyb20gJ0BjYXBhY2l0b3ItY29tbXVuaXR5L25hdGl2ZS1hdWRpbyc7XG5pbXBvcnQge0NhcGFjaXRvcn0gZnJvbSAnQGNhcGFjaXRvci9jb3JlJztcblxuZXhwb3J0IHR5cGUgQXVkaW9UeXBlID0gJ2h0bWw1JyB8ICduYXRpdmUnO1xuZXhwb3J0IGludGVyZmFjZSBTb3VuZCB7XG4gIGFzc2V0SWQ6IHN0cmluZzsgLy8gdW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIGZpbGVcbiAgYXNzZXRQYXRoOiBzdHJpbmc7IC8vICByZWxhdGl2ZSBwYXRoIG9mIHRoZSBmaWxlIG9yIGFic29sdXRlIHVybCAoZmlsZTovLylcbiAgdm9sdW1lPzogbnVtYmVyOyAvLyBTb3VuZCB2b2x1bWVcbiAgaXNVcmw/OiBib29sZWFuOyAvLyBwYXNzIHRydWUgaWYgYXNzZXRQYXRoIGlzIGEgYGZpbGU6Ly9gIHVybFxuICB0aW1lPzogbnVtYmVyOyAvLyBzb3VuZCBzZWVrIHRpbWVcbiAgYXVkaW9DaGFubmVsTnVtPzogbnVtYmVyOyAvLyBudW1iZXIgb2YgYXVkaW8gY2hhbm5lbHNcbiAgdmlicmF0aW9uPzogbnVtYmVyfG51bWJlcltdOyAvLyBTaG91bGQgdmlicmF0ZSA/IHNldCBkdXJhdGlvblxufVxuXG5jb25zdCBTWVNURU1fU09VTkRTOiBTb3VuZFtdID0gW1xuICB7YXNzZXRJZDogJ3N0YXJ0dXAnLCBhc3NldFBhdGg6ICdhc3NldHMvYXVkaW8vdW5mYS1waW5nLm1wMycsIHZpYnJhdGlvbjogWzMwMCwgMjUwLCA3NTBdfSxcbiAge2Fzc2V0SWQ6ICdiZWVwLWNvbmZpcm0nLCBhc3NldFBhdGg6ICdhc3NldHMvYXVkaW8vYmVlcC1jb25maXJtLm1wMycsIHZpYnJhdGlvbjogMjUwfSxcbiAge2Fzc2V0SWQ6ICdiZWVwLWVycm9yJywgYXNzZXRQYXRoOiAnYXNzZXRzL2F1ZGlvL2JlZXAtZXJyb3IubXAzJywgdmlicmF0aW9uOiAxMDAwfSxcbiAge2Fzc2V0SWQ6ICdiZWVwLW5vdGlmaWNhdGlvbicsIGFzc2V0UGF0aDogJ2Fzc2V0cy9hdWRpby9iZWVwLW5vdGlmaWNhdGlvbi5tcDMnLCB2aWJyYXRpb246IFs0NTAsIDE1MCwgNDUwXX1cbl07XG5cbmNvbnN0IERFRkFVTFRfQVVESU9fTU9ERV9SRVRVUk46IEF1ZGlvTWFuYWdlbWVudC5BdWRpb01vZGVSZXR1cm4gPSB7XG4gIGF1ZGlvTW9kZTogIEF1ZGlvTWFuYWdlbWVudC5BdWRpb01vZGUuTk9STUFMLFxuICBsYWJlbDogJ05vcm1hbCdcbn07XG5cbmZ1bmN0aW9uIGF1ZGlvTW9kZVRvU3RyaW5nKG1vZGU6IEF1ZGlvTWFuYWdlbWVudC5BdWRpb01vZGUpIHtcbiAgc3dpdGNoIChtb2RlKSB7XG4gICAgY2FzZSBBdWRpb01hbmFnZW1lbnQuQXVkaW9Nb2RlLlNJTEVOVDogcmV0dXJuICdTaWxlbnQnO1xuICAgIGNhc2UgQXVkaW9NYW5hZ2VtZW50LkF1ZGlvTW9kZS5OT1JNQUw6IHJldHVybiAnTm9ybWFsJztcbiAgICBjYXNlIEF1ZGlvTWFuYWdlbWVudC5BdWRpb01vZGUuVklCUkFURTogcmV0dXJuICdWaWJyYXRlJztcbiAgfVxufVxuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBBdWRpb1Byb3ZpZGVyIGV4dGVuZHMgU3RhcnRhYmxlU2VydmljZTx2b2lkPiB7XG5cblxuICBwcml2YXRlIF9hdWRpb1R5cGU6IEF1ZGlvVHlwZTtcbiAgcHJpdmF0ZSBfYXVkaW9Nb2RlOiBBdWRpb01hbmFnZW1lbnQuQXVkaW9Nb2RlID0gQXVkaW9NYW5hZ2VtZW50LkF1ZGlvTW9kZS5OT1JNQUw7XG4gIHByaXZhdGUgX2Fzc2V0UGF0aFByZWZpeCA9ICcnO1xuXG4gIHByaXZhdGUgX3ByZWxvYWRlZFNvdW5kczoge1tpZDogc3RyaW5nXTogU291bmR9ID0ge307XG4gIHByaXZhdGUgX2h0bWxBdWRpb0NhY2hlOiB7W2lkOiBzdHJpbmddOiBIVE1MQXVkaW9FbGVtZW50fSA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBwbGF0Zm9ybTogUGxhdGZvcm0sXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBhdWRpb01hbmFnZW1lbnQ6IEF1ZGlvTWFuYWdlbWVudFxuICApIHtcbiAgICBzdXBlcihwbGF0Zm9ybSk7XG4gICAgY29uc29sZS5pbmZvKGBbYXVkaW9dIENyZWF0ZSBhdWRpbyBwcm92aWRlcmApO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIG5nT25TdGFydCgpOiBQcm9taXNlPHZvaWQ+IHtcblxuICAgIGNvbnN0IGNvcmRvdmEgPSB0aGlzLnBsYXRmb3JtLmlzKCdjb3Jkb3ZhJyk7XG4gICAgdGhpcy5fYXNzZXRQYXRoUHJlZml4ID0gY29yZG92YSA/ICdwdWJsaWMvJyA6ICcnO1xuICAgIHRoaXMuX2F1ZGlvVHlwZSA9IGNvcmRvdmEgJiYgQ2FwYWNpdG9yLmlzUGx1Z2luQXZhaWxhYmxlKCdOYXRpdmVBdWRpbycpID8gJ25hdGl2ZScgOiAnaHRtbDUnO1xuICAgIGNvbnNvbGUuaW5mbyhgW2F1ZGlvXSBTdGFydGluZyBhdWRpbyBwcm92aWRlciB7JHt0aGlzLl9hdWRpb1R5cGV9fS4uLmApO1xuXG4gICAgLy8gTGlzdGVuIGF1ZGlvIG1vZGUgY2hhbmdlZFxuICAgIGlmIChjb3Jkb3ZhICYmIHRoaXMuYXVkaW9NYW5hZ2VtZW50KSB7XG4gICAgICBhd2FpdCB0aGlzLnJlYWRBdWRpb01vZGUoKTtcbiAgICB9XG5cbiAgICAvLyBQcmUtbG9hZGluZyBzeXN0ZW0gc291bmRzXG4gICAgY29uc29sZS5kZWJ1ZygnW2F1ZGlvXSBQcmVsb2FkaW5nIGF1ZGlvIHNvdW5kcy4uLicpO1xuICAgIGxldCBlcnJvckNvdW50ID0gMDtcbiAgICBhd2FpdCBQcm9taXNlLmFsbChTWVNURU1fU09VTkRTLm1hcChzID0+IHtcbiAgICAgIC8vIERpc2FibGUgdmlicmF0aW9uIGluIEhUTUwgNSBtb2RlXG4gICAgICBpZiAodGhpcy5fYXVkaW9UeXBlID09PSAnaHRtbDUnKSBzLnZpYnJhdGlvbiA9IHVuZGVmaW5lZDtcbiAgICAgIHJldHVybiB0aGlzLnByZWxvYWQocylcbiAgICAgICAgLmNhdGNoKF8gPT4gZXJyb3JDb3VudCsrKTtcbiAgICB9KSk7XG5cbiAgICBpZiAoZXJyb3JDb3VudCA+IDApIHtcbiAgICAgIGNvbnNvbGUud2FybignW2F1ZGlvXSBQcmVsb2FkaW5nIGF1ZGlvIHNvdW5kcyBbT0tdIHdpdGggJHtlcnJvckNvdW50fSBlcnJvcnMgZHVyaW5nIHByZWxvYWQuJyk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgY29uc29sZS5kZWJ1ZygnW2F1ZGlvXSBQcmVsb2FkaW5nIGF1ZGlvIHNvdW5kcyBbT0tdJyk7XG4gICAgfVxuICB9XG5cbiAgcGxheUJlZXBDb25maXJtKCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMucGxheSgnYmVlcC1jb25maXJtJywge1xuICAgICAgLy8gVmlicmF0ZSBvbmx5IGlmIGluIHZpYnJhdGlvbiBtb2RlXG4gICAgICB2aWJyYXRlOiB0aGlzLl9hdWRpb01vZGUgPT09IEF1ZGlvTWFuYWdlbWVudC5BdWRpb01vZGUuVklCUkFURVxuICAgIH0pO1xuICB9XG5cbiAgcGxheUJlZXBFcnJvcigpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLnBsYXkoJ2JlZXAtZXJyb3InLCB7XG4gICAgICAvLyBBbHdheXMgdmlicmF0ZSAod2lsbCBza2lwIHZpYnJhdGlvbiBpZiBzaWxlbnQgbW9kZSlcbiAgICAgIHZpYnJhdGU6IHRydWVcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIHBsYXlCZWVwTm90aWZpY2F0aW9uKCk6IFByb21pc2U8YW55PiB7XG4gICAgYXdhaXQgdGhpcy5wbGF5KCdiZWVwLW5vdGlmaWNhdGlvbicse1xuICAgICAgdmlicmF0ZTogdGhpcy5fYXVkaW9Nb2RlID09PSBBdWRpb01hbmFnZW1lbnQuQXVkaW9Nb2RlLlZJQlJBVEVcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIHBsYXlTdGFydHVwU291bmQoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5wbGF5KCdzdGFydHVwJyk7XG4gIH1cblxuXG4gIGFzeW5jIHByZWxvYWQoc291bmQ6IFNvdW5kKSB7XG4gICAgaWYgKCFzb3VuZD8uYXNzZXRJZCkgcmV0dXJuOyAvLyBTa2lwXG4gICAgaWYgKHRoaXMuX3ByZWxvYWRlZFNvdW5kc1tzb3VuZC5hc3NldElkXSkgcmV0dXJuOyAvLyBBbHJlYWR5IHByZWxvYWRlZFxuICAgIGlmIChpc05pbCh0aGlzLl9hdWRpb1R5cGUpKSBhd2FpdCB0aGlzLnJlYWR5KCk7XG5cbiAgICBjb25zdCBhc3NldFBhdGggPSAodGhpcy5fYXNzZXRQYXRoUHJlZml4IHx8ICcnKSArIHNvdW5kLmFzc2V0UGF0aDtcbiAgICBjb25zb2xlLmluZm8oYFthdWRpb10gUHJlbG9hZGluZyBzb3VuZCAnJHtzb3VuZC5hc3NldElkfScsIGZyb20gZmlsZSAnJHthc3NldFBhdGh9Jy4uLmApO1xuXG4gICAgdHJ5IHtcbiAgICAgIGlmICh0aGlzLl9hdWRpb1R5cGUgPT09ICduYXRpdmUnKSB7XG4gICAgICAgIHRoaXMuX3ByZWxvYWRlZFNvdW5kc1tzb3VuZC5hc3NldElkXSA9IHNvdW5kO1xuICAgICAgICBhd2FpdCBOYXRpdmVBdWRpby5wcmVsb2FkKHtcbiAgICAgICAgICBhdWRpb0NoYW5uZWxOdW06IDEsXG4gICAgICAgICAgaXNVcmw6IGZhbHNlLFxuICAgICAgICAgIC4uLnNvdW5kLFxuICAgICAgICAgIGFzc2V0UGF0aFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIGVsc2Uge1xuICAgICAgICB0aGlzLl9odG1sQXVkaW9DYWNoZVtzb3VuZC5hc3NldElkXSA9ICBuZXcgQXVkaW8oYXNzZXRQYXRoKTtcbiAgICAgICAgdGhpcy5fcHJlbG9hZGVkU291bmRzW3NvdW5kLmFzc2V0SWRdID0gc291bmQ7XG4gICAgICB9XG5cbiAgICAgIC8vIEFkZCB0byBtYXBcbiAgICAgIGNvbnNvbGUuaW5mbyhgW2F1ZGlvXSBQcmVsb2FkaW5nIHNvdW5kICcke3NvdW5kLmFzc2V0SWR9JyBbT0tdYCk7XG4gICAgfVxuICAgIGNhdGNoIChlcnIpIHtcbiAgICAgIGNvbnN0IGVycm9yTXNnID0gZXJyPy5tZXNzYWdlIHx8IGVycjtcbiAgICAgIGlmIChlcnJvck1zZyA9PT0gJ0F1ZGlvIEFzc2V0IGFscmVhZHkgZXhpc3RzJykge1xuICAgICAgICBjb25zb2xlLmluZm8oYFthdWRpb10gUHJlbG9hZGluZyBzb3VuZCAnJHtzb3VuZC5hc3NldElkfSc6IFNraXBwZWQgKCR7ZXJyb3JNc2d9KWApO1xuICAgICAgfVxuICAgICAgZWxzZSB7XG4gICAgICAgIHRoaXMuX3ByZWxvYWRlZFNvdW5kc1tzb3VuZC5hc3NldElkXSA9IG51bGw7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoYFthdWRpb10gVW5hYmxlIHRvIHByZWxvYWQgc291bmQgJyR7c291bmQuYXNzZXRJZH0nLCBmcm9tIGZpbGUgJyR7YXNzZXRQYXRofSc6ICR7ZXJyb3JNc2d9XFxuJHtlcnI/Lm9yaWdpbmFsU3RhY2t8fCcnfWApO1xuICAgICAgICB0aHJvdyBlcnI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgcGxheShhc3NldElkOiBzdHJpbmcsIG9wdHM/OiB7dmlicmF0ZT86IGJvb2xlYW47IHZpYnJhdGlvbj86IG51bWJlcnxudW1iZXJbXX0pIHtcblxuICAgIC8vIE1ha2Ugc3VyZSBwcm92aWRlciBpcyByZWFkeVxuICAgIGlmICghdGhpcy5zdGFydGVkKSBhd2FpdCB0aGlzLnJlYWR5KCk7XG5cbiAgICBjb25zdCBzb3VuZCA9IHRoaXMuX3ByZWxvYWRlZFNvdW5kc1thc3NldElkXTtcbiAgICBpZiAoIXNvdW5kKSB7XG4gICAgICB0aHJvdyBFcnJvcihgVW5hYmxlIHRvIGZpbmQgc291bmQgJyR7YXNzZXRJZH0nLiBQbGVhc2UgY2FsbCBwcmVsb2FkKCkgYmVmb3JlIHBsYXlpbmcgYSBzb3VuZC5gKTtcbiAgICB9XG5cbiAgICAvLyBJZiBzaWxlbnQ6IHNraXBcbiAgICBpZiAodGhpcy5fYXVkaW9Nb2RlID09PSBBdWRpb01hbmFnZW1lbnQuQXVkaW9Nb2RlLlNJTEVOVCkgcmV0dXJuO1xuXG4gICAgY29uc3QgcHJvbWlzZXM6IFByb21pc2U8YW55PltdID0gW107XG5cbiAgICAvLyBOb3JtYWwgbW9kZSA9IGNhbiBwbGF5IHRoZSBzb3VuZFxuICAgIGlmICh0aGlzLl9hdWRpb01vZGUgPT09IEF1ZGlvTWFuYWdlbWVudC5BdWRpb01vZGUuTk9STUFMKSB7XG4gICAgICAvLyBVc2UgbmF0aXZlIGF1ZGlvXG4gICAgICBpZiAodGhpcy5fYXVkaW9UeXBlID09PSAnbmF0aXZlJykge1xuICAgICAgICBwcm9taXNlcy5wdXNoKE5hdGl2ZUF1ZGlvLnBsYXkoe1xuICAgICAgICAgIGFzc2V0SWQ6IHNvdW5kLmFzc2V0SWQsXG4gICAgICAgICAgdGltZTogKHNvdW5kLnRpbWUgfHwgMClcbiAgICAgICAgfSkpO1xuICAgICAgfVxuICAgICAgLy8gT3IgSFRNTCA1IGF1ZGlvXG4gICAgICBlbHNlIHtcbiAgICAgICAgY29uc3QgYXVkaW8gPSB0aGlzLl9odG1sQXVkaW9DYWNoZVthc3NldElkXSB8fCBuZXcgQXVkaW8oc291bmQuYXNzZXRQYXRoKTtcbiAgICAgICAgcHJvbWlzZXMucHVzaChhdWRpby5wbGF5KCkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFZpYnJhdGUgbW9kZTogYnkgZGVmYXVsdCBtYWtlIHZpYnJhdGlvbiBpcyBlbmFibGVcbiAgICBlbHNlIGlmIChpc05pbChzb3VuZC52aWJyYXRpb24pICYmIGlzTmlsKG9wdHMgJiYgb3B0cy52aWJyYXRlKSkge1xuICAgICAgb3B0cyA9IG9wdHMgfHwge307XG4gICAgICBvcHRzLnZpYnJhdGUgPSB0cnVlO1xuICAgIH1cblxuICAgIC8vIERvIHZpYnJhdGlvbiAoaWYgc291bmQgYXMgZGVmYXVsdCB2aWJyYXRpb24sIG9yIGlmIHVzZXIgYXNrIGZvciBpdClcbiAgICBpZiAodG9Cb29sZWFuKG9wdHM/LnZpYnJhdGUsICEhc291bmQudmlicmF0aW9uKSkge1xuICAgICAgcHJvbWlzZXMucHVzaCh0aGlzLnZpYnJhdGUob3B0cyAmJiBvcHRzLnZpYnJhdGlvbiB8fCBzb3VuZC52aWJyYXRpb24pKTtcbiAgICB9XG5cbiAgICByZXR1cm4gKHByb21pc2VzLmxlbmd0aCA9PT0gMSA/IHByb21pc2VzWzBdIDogUHJvbWlzZS5hbGwocHJvbWlzZXMpKVxuICAgICAgLmNhdGNoKGVyciA9PiB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoYFthdWRpb10gRXJyb3Igd2hpbGUgcGxheWluZyBhdWRpbyBzb3VuZCAnJHthc3NldElkfSc6ICR7ZXJyICYmIGVyci5tZXNzYWdlIHx8IGVycn1gLCBlcnIpO1xuICAgICAgfSk7XG4gIH1cblxuICBhc3luYyB1bmxvYWQoYXNzZXRJZDogc3RyaW5nKSB7XG4gICAgaWYgKGlzTmlsKHRoaXMuX2F1ZGlvVHlwZSkpIGF3YWl0IHRoaXMucmVhZHkoKTtcblxuICAgIC8vIFJlbW92ZSBmcm9tIG1hcFxuICAgIHRoaXMuX3ByZWxvYWRlZFNvdW5kc1thc3NldElkXSA9IHVuZGVmaW5lZDtcblxuICAgIC8vIE5hdGl2ZSB1bmxvYWRcbiAgICBpZiAodGhpcy5fYXVkaW9UeXBlID09PSAnbmF0aXZlJykge1xuICAgICAgdHJ5IHtcbiAgICAgICAgYXdhaXQgTmF0aXZlQXVkaW8udW5sb2FkKHthc3NldElkfSk7XG4gICAgICB9XG4gICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoYFthdWRpb10gVW5hYmxlIHRvIHVubG9hZCBhdWRpbyAnJHthc3NldElkfSc6ICR7ZXJyICYmIGVyci5tZXNzYWdlIHx8IGVycn1gLCBlcnIpO1xuICAgICAgfVxuICAgIH1cbiAgICAvLyBIVE1MNSBhdWRpbyB1bmxvYWRcbiAgICBlbHNlIHtcbiAgICAgIHRoaXMuX2h0bWxBdWRpb0NhY2hlW2Fzc2V0SWRdLnJlbW92ZSgpO1xuICAgICAgdGhpcy5faHRtbEF1ZGlvQ2FjaGVbYXNzZXRJZF0gPSB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqIEBwYXJhbSBkdXJhdGlvbiBEdXJhdGlvbiBvZiB0aGUgdmlicmF0aW9uIGluIG1pbGxpc2Vjb25kcy5cbiAgICovXG4gIGFzeW5jIHZpYnJhdGUoZHVyYXRpb24/OiBudW1iZXJ8bnVtYmVyW10pIHtcbiAgICBpZiAoIXRoaXMuc3RhcnRlZCkgYXdhaXQgdGhpcy5yZWFkeSgpO1xuICAgIGlmIChBcnJheS5pc0FycmF5KGR1cmF0aW9uKSkge1xuICAgICAgaWYgKHRoaXMuX2RlYnVnKSBjb25zb2xlLmRlYnVnKCdbYXVkaW9dIFZpYnJhdGU6ICcgKyBKU09OLnN0cmluZ2lmeShkdXJhdGlvbikpO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkdXJhdGlvbi5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCB0aW1lID0gZHVyYXRpb25baV07XG4gICAgICAgIGNvbnN0IHNpbGVudCA9IGkgJSAyICE9PSAwO1xuICAgICAgICBpZiAoc2lsZW50KSB7XG4gICAgICAgICAgaWYgKHRoaXMuX2RlYnVnKSBjb25zb2xlLmRlYnVnKCdbYXVkaW9dIHNpbGVudCBkdXJpbmcgJyArIHRpbWUpO1xuICAgICAgICAgIGF3YWl0IHNsZWVwKHRpbWUpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgIGlmICh0aGlzLl9kZWJ1ZykgY29uc29sZS5kZWJ1ZygnW2F1ZGlvXSB2aWJyYXRlIGR1cmluZyAnICsgdGltZSk7XG4gICAgICAgICAgYXdhaXQgUHJvbWlzZS5hbGwoW1xuICAgICAgICAgICAgSGFwdGljcy52aWJyYXRlKHtkdXJhdGlvbjogdGltZX0pLFxuICAgICAgICAgICAgc2xlZXAodGltZSlcbiAgICAgICAgICBdKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIGlmICh0aGlzLl9kZWJ1ZykgY29uc29sZS5kZWJ1ZygnW2F1ZGlvXSB2aWJyYXRlIGR1cmluZyAnICsgZHVyYXRpb24pO1xuICAgICAgYXdhaXQgSGFwdGljcy52aWJyYXRlKHtkdXJhdGlvbn0pO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIHNldEF1ZGlvTW9kZShtb2RlOiBBdWRpb01hbmFnZW1lbnQuQXVkaW9Nb2RlKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnNvbGUuaW5mbyhgW2F1ZGlvXSBDaGFuZ2luZyBhdWRpbyBtb2RlIHRvIHske2F1ZGlvTW9kZVRvU3RyaW5nKG1vZGUpfX1gKTtcbiAgICAgIGF3YWl0IHRoaXMuYXVkaW9NYW5hZ2VtZW50LnNldEF1ZGlvTW9kZShtb2RlKTtcbiAgICAgIHRoaXMuX2F1ZGlvTW9kZSA9IG1vZGU7XG4gICAgfVxuICAgIGNhdGNoKGVycikge1xuICAgICAgY29uc29sZS5lcnJvcihgW2F1ZGlvXSBFcnJvciB3aGlsZSBjaGFuZ2luZyBhdWRpbyBtb2RlIHRvIHske2F1ZGlvTW9kZVRvU3RyaW5nKG1vZGUpfX06ICR7ZXJyPy5tZXNzYWdlIHx8IGVycn1gLCBlcnIpO1xuICAgICAgLy8gQ29udGludWVcbiAgICB9XG4gIH1cblxuICAvKiAtLSBwcm90ZWN0ZWQgbWV0aG9kcyAgLS0gKi9cblxuICBwcm90ZWN0ZWQgYXN5bmMgcmVhZEF1ZGlvTW9kZSgpIHtcbiAgICBsZXQgdmFsdWUgPSBhd2FpdCB0aGlzLmF1ZGlvTWFuYWdlbWVudC5nZXRBdWRpb01vZGUoKTtcbiAgICB2YWx1ZSA9IHtcbiAgICAgIC4uLkRFRkFVTFRfQVVESU9fTU9ERV9SRVRVUk4sXG4gICAgICAuLi52YWx1ZVxuICAgIH07XG4gICAgY29uc29sZS5kZWJ1ZyhgW2F1ZGlvXSBEZXRlY3RlZCBhdWRpbyBtb2RlIHtsYWJlbDogJyR7dmFsdWUubGFiZWx9JywgYXVkaW9Nb2RlOiAke3ZhbHVlLmF1ZGlvTW9kZX19YCk7XG4gICAgdGhpcy5fYXVkaW9Nb2RlID0gdmFsdWUuYXVkaW9Nb2RlO1xuICB9XG5cbn1cbiJdfQ==
251
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXVkaW8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NoYXJlZC9hdWRpby9hdWRpby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFFLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDbkUsT0FBTyxFQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQ3JELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDOUQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGlCQUFpQixDQUFDOzs7O0FBYTFDLE1BQU0sYUFBYSxHQUFZO0lBQzdCLEVBQUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsNEJBQTRCLEVBQUUsU0FBUyxFQUFFLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsRUFBQztJQUN6RixFQUFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsU0FBUyxFQUFFLCtCQUErQixFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUM7SUFDckYsRUFBQyxPQUFPLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSw2QkFBNkIsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFDO0lBQ2xGLEVBQUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFNBQVMsRUFBRSxvQ0FBb0MsRUFBRSxTQUFTLEVBQUUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUFDO0NBQzVHLENBQUM7QUFFRixNQUFNLHlCQUF5QixHQUFvQztJQUNqRSxTQUFTLEVBQUcsZUFBZSxDQUFDLFNB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QUMsS0FBSyxDQUFDLHdDQUF3QyxLQUFLLENBQUMsS0FBSyxpQkFBaUIsS0FBSyxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7UUFDdEcsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDO0lBQ3BDLENBQUM7dUdBMU9VLGFBQWE7MkdBQWIsYUFBYSxjQURELE1BQU07OzJGQUNsQixhQUFhO2tCQUR6QixVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQzs7MEJBYTNCLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGUsIE9wdGlvbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7UGxhdGZvcm19IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcbmltcG9ydCB7QXVkaW9NYW5hZ2VtZW50fSBmcm9tICdAaW9uaWMtbmF0aXZlL2F1ZGlvLW1hbmFnZW1lbnQvbmd4JztcbmltcG9ydCB7aXNOaWwsIHNsZWVwLCB0b0Jvb2xlYW59IGZyb20gJy4uL2Z1bmN0aW9ucyc7XG5pbXBvcnQge1N0YXJ0YWJsZVNlcnZpY2V9IGZyb20gJy4uL3NlcnZpY2VzL3N0YXJ0YWJsZS1zZXJ2aWNlLmNsYXNzJztcbmltcG9ydCB7SGFwdGljc30gZnJvbSAnQGNhcGFjaXRvci9oYXB0aWNzJztcbmltcG9ydCB7TmF0aXZlQXVkaW99IGZyb20gJ0BjYXBhY2l0b3ItY29tbXVuaXR5L25hdGl2ZS1hdWRpbyc7XG5pbXBvcnQge0NhcGFjaXRvcn0gZnJvbSAnQGNhcGFjaXRvci9jb3JlJztcblxuZXhwb3J0IHR5cGUgQXVkaW9UeXBlID0gJ2h0bWw1JyB8ICduYXRpdmUnO1xuZXhwb3J0IGludGVyZmFjZSBTb3VuZCB7XG4gIGFzc2V0SWQ6IHN0cmluZzsgLy8gdW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIGZpbGVcbiAgYXNzZXRQYXRoOiBzdHJpbmc7IC8vICByZWxhdGl2ZSBwYXRoIG9mIHRoZSBmaWxlIG9yIGFic29sdXRlIHVybCAoZmlsZTovLylcbiAgdm9sdW1lPzogbnVtYmVyOyAvLyBTb3VuZCB2b2x1bWVcbiAgaXNVcmw/OiBib29sZWFuOyAvLyBwYXNzIHRydWUgaWYgYXNzZXRQYXRoIGlzIGEgYGZpbGU6Ly9gIHVybFxuICB0aW1lPzogbnVtYmVyOyAvLyBzb3VuZCBzZWVrIHRpbWVcbiAgYXVkaW9DaGFubmVsTnVtPzogbnVtYmVyOyAvLyBudW1iZXIgb2YgYXVkaW8gY2hhbm5lbHNcbiAgdmlicmF0aW9uPzogbnVtYmVyfG51bWJlcltdOyAvLyBTaG91bGQgdmlicmF0ZSA/IHNldCBkdXJhdGlvblxufVxuXG5jb25zdCBTWVNURU1fU09VTkRTOiBTb3VuZFtdID0gW1xuICB7YXNzZXRJZDogJ3N0YXJ0dXAnLCBhc3NldFBhdGg6ICdhc3NldHMvYXVkaW8vdW5mYS1waW5nLm1wMycsIHZpYnJhdGlvbjogWzMwMCwgMjUwLCA3NTBdfSxcbiAge2Fzc2V0SWQ6ICdiZWVwLWNvbmZpcm0nLCBhc3NldFBhdGg6ICdhc3NldHMvYXVkaW8vYmVlcC1jb25maXJtLm1wMycsIHZpYnJhdGlvbjogMjUwfSxcbiAge2Fzc2V0SWQ6ICdiZWVwLWVycm9yJywgYXNzZXRQYXRoOiAnYXNzZXRzL2F1ZGlvL2JlZXAtZXJyb3IubXAzJywgdmlicmF0aW9uOiAxMDAwfSxcbiAge2Fzc2V0SWQ6ICdiZWVwLW5vdGlmaWNhdGlvbicsIGFzc2V0UGF0aDogJ2Fzc2V0cy9hdWRpby9iZWVwLW5vdGlmaWNhdGlvbi5tcDMnLCB2aWJyYXRpb246IFs0NTAsIDE1MCwgNDUwXX1cbl07XG5cbmNvbnN0IERFRkFVTFRfQVVESU9fTU9ERV9SRVRVUk46IEF1ZGlvTWFuYWdlbWVudC5BdWRpb01vZGVSZXR1cm4gPSB7XG4gIGF1ZGlvTW9kZTogIEF1ZGlvTWFuYWdlbWVudC5BdWRpb01vZGUuTk9STUFMLFxuICBsYWJlbDogJ05vcm1hbCdcbn07XG5cbmZ1bmN0aW9uIGF1ZGlvTW9kZVRvU3RyaW5nKG1vZGU6IEF1ZGlvTWFuYWdlbWVudC5BdWRpb01vZGUpIHtcbiAgc3dpdGNoIChtb2RlKSB7XG4gICAgY2FzZSBBdWRpb01hbmFnZW1lbnQuQXVkaW9Nb2RlLlNJTEVOVDogcmV0dXJuICdTaWxlbnQnO1xuICAgIGNhc2UgQXVkaW9NYW5hZ2VtZW50LkF1ZGlvTW9kZS5OT1JNQUw6IHJldHVybiAnTm9ybWFsJztcbiAgICBjYXNlIEF1ZGlvTWFuYWdlbWVudC5BdWRpb01vZGUuVklCUkFURTogcmV0dXJuICdWaWJyYXRlJztcbiAgfVxufVxuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBBdWRpb1Byb3ZpZGVyIGV4dGVuZHMgU3RhcnRhYmxlU2VydmljZTx2b2lkPiB7XG5cblxuICBwcml2YXRlIF9hdWRpb1R5cGU6IEF1ZGlvVHlwZTtcbiAgcHJpdmF0ZSBfYXVkaW9Nb2RlOiBBdWRpb01hbmFnZW1lbnQuQXVkaW9Nb2RlID0gQXVkaW9NYW5hZ2VtZW50LkF1ZGlvTW9kZS5OT1JNQUw7XG4gIHByaXZhdGUgX2Fzc2V0UGF0aFByZWZpeCA9ICcnO1xuXG4gIHByaXZhdGUgX3ByZWxvYWRlZFNvdW5kczoge1tpZDogc3RyaW5nXTogU291bmR9ID0ge307XG4gIHByaXZhdGUgX2h0bWxBdWRpb0NhY2hlOiB7W2lkOiBzdHJpbmddOiBIVE1MQXVkaW9FbGVtZW50fSA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBwbGF0Zm9ybTogUGxhdGZvcm0sXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBhdWRpb01hbmFnZW1lbnQ6IEF1ZGlvTWFuYWdlbWVudFxuICApIHtcbiAgICBzdXBlcihwbGF0Zm9ybSk7XG4gICAgY29uc29sZS5pbmZvKGBbYXVkaW9dIENyZWF0ZSBhdWRpbyBwcm92aWRlcmApO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIG5nT25TdGFydCgpOiBQcm9taXNlPHZvaWQ+IHtcblxuICAgIGNvbnN0IGNvcmRvdmEgPSB0aGlzLnBsYXRmb3JtLmlzKCdjb3Jkb3ZhJyk7XG4gICAgdGhpcy5fYXNzZXRQYXRoUHJlZml4ID0gY29yZG92YSA/ICdwdWJsaWMvJyA6ICcnO1xuICAgIHRoaXMuX2F1ZGlvVHlwZSA9IGNvcmRvdmEgJiYgQ2FwYWNpdG9yLmlzUGx1Z2luQXZhaWxhYmxlKCdOYXRpdmVBdWRpbycpID8gJ25hdGl2ZScgOiAnaHRtbDUnO1xuICAgIGNvbnNvbGUuaW5mbyhgW2F1ZGlvXSBTdGFydGluZyBhdWRpbyBwcm92aWRlciB7JHt0aGlzLl9hdWRpb1R5cGV9fS4uLmApO1xuXG4gICAgLy8gTGlzdGVuIGF1ZGlvIG1vZGUgY2hhbmdlZFxuICAgIGlmIChjb3Jkb3ZhICYmIHRoaXMuYXVkaW9NYW5hZ2VtZW50KSB7XG4gICAgICBhd2FpdCB0aGlzLnJlYWRBdWRpb01vZGUoKTtcbiAgICB9XG5cbiAgICAvLyBQcmUtbG9hZGluZyBzeXN0ZW0gc291bmRzXG4gICAgY29uc29sZS5kZWJ1ZygnW2F1ZGlvXSBQcmVsb2FkaW5nIGF1ZGlvIHNvdW5kcy4uLicpO1xuICAgIGxldCBlcnJvckNvdW50ID0gMDtcbiAgICBhd2FpdCBQcm9taXNlLmFsbChTWVNURU1fU09VTkRTLm1hcChzID0+IHtcbiAgICAgIC8vIERpc2FibGUgdmlicmF0aW9uIGluIEhUTUwgNSBtb2RlXG4gICAgICBpZiAodGhpcy5fYXVkaW9UeXBlID09PSAnaHRtbDUnKSBzLnZpYnJhdGlvbiA9IHVuZGVmaW5lZDtcbiAgICAgIHJldHVybiB0aGlzLnByZWxvYWQocylcbiAgICAgICAgLmNhdGNoKF8gPT4gZXJyb3JDb3VudCsrKTtcbiAgICB9KSk7XG5cbiAgICBpZiAoZXJyb3JDb3VudCA+IDApIHtcbiAgICAgIGNvbnNvbGUud2FybignW2F1ZGlvXSBQcmVsb2FkaW5nIGF1ZGlvIHNvdW5kcyBbT0tdIHdpdGggJHtlcnJvckNvdW50fSBlcnJvcnMgZHVyaW5nIHByZWxvYWQuJyk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgY29uc29sZS5kZWJ1ZygnW2F1ZGlvXSBQcmVsb2FkaW5nIGF1ZGlvIHNvdW5kcyBbT0tdJyk7XG4gICAgfVxuICB9XG5cbiAgcGxheUJlZXBDb25maXJtKCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMucGxheSgnYmVlcC1jb25maXJtJywge1xuICAgICAgLy8gVmlicmF0ZSBvbmx5IGlmIGluIHZpYnJhdGlvbiBtb2RlXG4gICAgICB2aWJyYXRlOiB0aGlzLl9hdWRpb01vZGUgPT09IEF1ZGlvTWFuYWdlbWVudC5BdWRpb01vZGUuVklCUkFURVxuICAgIH0pO1xuICB9XG5cbiAgcGxheUJlZXBFcnJvcigpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLnBsYXkoJ2JlZXAtZXJyb3InLCB7XG4gICAgICAvLyBBbHdheXMgdmlicmF0ZSAod2lsbCBza2lwIHZpYnJhdGlvbiBpZiBzaWxlbnQgbW9kZSlcbiAgICAgIHZpYnJhdGU6IHRydWVcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIHBsYXlCZWVwTm90aWZpY2F0aW9uKCk6IFByb21pc2U8YW55PiB7XG4gICAgYXdhaXQgdGhpcy5wbGF5KCdiZWVwLW5vdGlmaWNhdGlvbicse1xuICAgICAgdmlicmF0ZTogdGhpcy5fYXVkaW9Nb2RlID09PSBBdWRpb01hbmFnZW1lbnQuQXVkaW9Nb2RlLlZJQlJBVEVcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIHBsYXlTdGFydHVwU291bmQoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5wbGF5KCdzdGFydHVwJyk7XG4gIH1cblxuXG4gIGFzeW5jIHByZWxvYWQoc291bmQ6IFNvdW5kKSB7XG4gICAgaWYgKCFzb3VuZD8uYXNzZXRJZCkgcmV0dXJuOyAvLyBTa2lwXG4gICAgaWYgKHRoaXMuX3ByZWxvYWRlZFNvdW5kc1tzb3VuZC5hc3NldElkXSkgcmV0dXJuOyAvLyBBbHJlYWR5IHByZWxvYWRlZFxuICAgIGlmIChpc05pbCh0aGlzLl9hdWRpb1R5cGUpKSBhd2FpdCB0aGlzLnJlYWR5KCk7XG5cbiAgICBjb25zdCBhc3NldFBhdGggPSAodGhpcy5fYXNzZXRQYXRoUHJlZml4IHx8ICcnKSArIHNvdW5kLmFzc2V0UGF0aDtcbiAgICBjb25zb2xlLmluZm8oYFthdWRpb10gUHJlbG9hZGluZyBzb3VuZCAnJHtzb3VuZC5hc3NldElkfScsIGZyb20gZmlsZSAnJHthc3NldFBhdGh9Jy4uLmApO1xuXG4gICAgdHJ5IHtcbiAgICAgIGlmICh0aGlzLl9hdWRpb1R5cGUgPT09ICduYXRpdmUnKSB7XG4gICAgICAgIHRoaXMuX3ByZWxvYWRlZFNvdW5kc1tzb3VuZC5hc3NldElkXSA9IHNvdW5kO1xuICAgICAgICBhd2FpdCBOYXRpdmVBdWRpby5wcmVsb2FkKHtcbiAgICAgICAgICBhdWRpb0NoYW5uZWxOdW06IDEsXG4gICAgICAgICAgaXNVcmw6IGZhbHNlLFxuICAgICAgICAgIC4uLnNvdW5kLFxuICAgICAgICAgIGFzc2V0UGF0aFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIGVsc2Uge1xuICAgICAgICB0aGlzLl9odG1sQXVkaW9DYWNoZVtzb3VuZC5hc3NldElkXSA9ICBuZXcgQXVkaW8oYXNzZXRQYXRoKTtcbiAgICAgICAgdGhpcy5fcHJlbG9hZGVkU291bmRzW3NvdW5kLmFzc2V0SWRdID0gc291bmQ7XG4gICAgICB9XG5cbiAgICAgIC8vIEFkZCB0byBtYXBcbiAgICAgIGNvbnNvbGUuaW5mbyhgW2F1ZGlvXSBQcmVsb2FkaW5nIHNvdW5kICcke3NvdW5kLmFzc2V0SWR9JyBbT0tdYCk7XG4gICAgfVxuICAgIGNhdGNoIChlcnIpIHtcbiAgICAgIGNvbnN0IGVycm9yTXNnID0gZXJyPy5tZXNzYWdlIHx8IGVycjtcbiAgICAgIGlmIChlcnJvck1zZyA9PT0gJ0F1ZGlvIEFzc2V0IGFscmVhZHkgZXhpc3RzJykge1xuICAgICAgICBjb25zb2xlLmluZm8oYFthdWRpb10gUHJlbG9hZGluZyBzb3VuZCAnJHtzb3VuZC5hc3NldElkfSc6IFNraXBwZWQgKCR7ZXJyb3JNc2d9KWApO1xuICAgICAgfVxuICAgICAgZWxzZSB7XG4gICAgICAgIHRoaXMuX3ByZWxvYWRlZFNvdW5kc1tzb3VuZC5hc3NldElkXSA9IG51bGw7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoYFthdWRpb10gVW5hYmxlIHRvIHByZWxvYWQgc291bmQgJyR7c291bmQuYXNzZXRJZH0nLCBmcm9tIGZpbGUgJyR7YXNzZXRQYXRofSc6ICR7ZXJyb3JNc2d9XFxuJHtlcnI/Lm9yaWdpbmFsU3RhY2t8fCcnfWApO1xuICAgICAgICB0aHJvdyBlcnI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgcGxheShhc3NldElkOiBzdHJpbmcsIG9wdHM/OiB7dmlicmF0ZT86IGJvb2xlYW47IHZpYnJhdGlvbj86IG51bWJlcnxudW1iZXJbXX0pIHtcblxuICAgIC8vIE1ha2Ugc3VyZSBwcm92aWRlciBpcyByZWFkeVxuICAgIGlmICghdGhpcy5zdGFydGVkKSBhd2FpdCB0aGlzLnJlYWR5KCk7XG5cbiAgICBjb25zdCBzb3VuZCA9IHRoaXMuX3ByZWxvYWRlZFNvdW5kc1thc3NldElkXTtcbiAgICBpZiAoIXNvdW5kKSB7XG4gICAgICB0aHJvdyBFcnJvcihgVW5hYmxlIHRvIGZpbmQgc291bmQgJyR7YXNzZXRJZH0nLiBQbGVhc2UgY2FsbCBwcmVsb2FkKCkgYmVmb3JlIHBsYXlpbmcgYSBzb3VuZC5gKTtcbiAgICB9XG5cbiAgICAvLyBJZiBzaWxlbnQ6IHNraXBcbiAgICBpZiAodGhpcy5fYXVkaW9Nb2RlID09PSBBdWRpb01hbmFnZW1lbnQuQXVkaW9Nb2RlLlNJTEVOVCkgcmV0dXJuO1xuXG4gICAgY29uc3QgcHJvbWlzZXM6IFByb21pc2U8YW55PltdID0gW107XG5cbiAgICAvLyBOb3JtYWwgbW9kZSA9IGNhbiBwbGF5IHRoZSBzb3VuZFxuICAgIGlmICh0aGlzLl9hdWRpb01vZGUgPT09IEF1ZGlvTWFuYWdlbWVudC5BdWRpb01vZGUuTk9STUFMKSB7XG4gICAgICAvLyBVc2UgbmF0aXZlIGF1ZGlvXG4gICAgICBpZiAodGhpcy5fYXVkaW9UeXBlID09PSAnbmF0aXZlJykge1xuICAgICAgICBwcm9taXNlcy5wdXNoKE5hdGl2ZUF1ZGlvLnBsYXkoe1xuICAgICAgICAgIGFzc2V0SWQ6IHNvdW5kLmFzc2V0SWQsXG4gICAgICAgICAgdGltZTogKHNvdW5kLnRpbWUgfHwgMClcbiAgICAgICAgfSkpO1xuICAgICAgfVxuICAgICAgLy8gT3IgSFRNTCA1IGF1ZGlvXG4gICAgICBlbHNlIHtcbiAgICAgICAgY29uc3QgYXVkaW8gPSB0aGlzLl9odG1sQXVkaW9DYWNoZVthc3NldElkXSB8fCBuZXcgQXVkaW8oc291bmQuYXNzZXRQYXRoKTtcbiAgICAgICAgcHJvbWlzZXMucHVzaChhdWRpby5wbGF5KCkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFZpYnJhdGUgbW9kZTogYnkgZGVmYXVsdCBtYWtlIHZpYnJhdGlvbiBpcyBlbmFibGVcbiAgICBlbHNlIGlmIChpc05pbChzb3VuZC52aWJyYXRpb24pICYmIGlzTmlsKG9wdHMgJiYgb3B0cy52aWJyYXRlKSkge1xuICAgICAgb3B0cyA9IG9wdHMgfHwge307XG4gICAgICBvcHRzLnZpYnJhdGUgPSB0cnVlO1xuICAgIH1cblxuICAgIC8vIERvIHZpYnJhdGlvbiAoaWYgc291bmQgYXMgZGVmYXVsdCB2aWJyYXRpb24sIG9yIGlmIHVzZXIgYXNrIGZvciBpdClcbiAgICBpZiAodG9Cb29sZWFuKG9wdHM/LnZpYnJhdGUsICEhc291bmQudmlicmF0aW9uKSkge1xuICAgICAgcHJvbWlzZXMucHVzaCh0aGlzLnZpYnJhdGUob3B0cyAmJiBvcHRzLnZpYnJhdGlvbiB8fCBzb3VuZC52aWJyYXRpb24pKTtcbiAgICB9XG5cbiAgICByZXR1cm4gKHByb21pc2VzLmxlbmd0aCA9PT0gMSA/IHByb21pc2VzWzBdIDogUHJvbWlzZS5hbGwocHJvbWlzZXMpKVxuICAgICAgLmNhdGNoKGVyciA9PiB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoYFthdWRpb10gRXJyb3Igd2hpbGUgcGxheWluZyBhdWRpbyBzb3VuZCAnJHthc3NldElkfSc6ICR7ZXJyICYmIGVyci5tZXNzYWdlIHx8IGVycn1gLCBlcnIpO1xuICAgICAgfSk7XG4gIH1cblxuICBhc3luYyB1bmxvYWQoYXNzZXRJZDogc3RyaW5nKSB7XG4gICAgaWYgKGlzTmlsKHRoaXMuX2F1ZGlvVHlwZSkpIGF3YWl0IHRoaXMucmVhZHkoKTtcblxuICAgIC8vIFJlbW92ZSBmcm9tIG1hcFxuICAgIHRoaXMuX3ByZWxvYWRlZFNvdW5kc1thc3NldElkXSA9IHVuZGVmaW5lZDtcblxuICAgIC8vIE5hdGl2ZSB1bmxvYWRcbiAgICBpZiAodGhpcy5fYXVkaW9UeXBlID09PSAnbmF0aXZlJykge1xuICAgICAgdHJ5IHtcbiAgICAgICAgYXdhaXQgTmF0aXZlQXVkaW8udW5sb2FkKHthc3NldElkfSk7XG4gICAgICB9XG4gICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoYFthdWRpb10gVW5hYmxlIHRvIHVubG9hZCBhdWRpbyAnJHthc3NldElkfSc6ICR7ZXJyICYmIGVyci5tZXNzYWdlIHx8IGVycn1gLCBlcnIpO1xuICAgICAgfVxuICAgIH1cbiAgICAvLyBIVE1MNSBhdWRpbyB1bmxvYWRcbiAgICBlbHNlIHtcbiAgICAgIHRoaXMuX2h0bWxBdWRpb0NhY2hlW2Fzc2V0SWRdLnJlbW92ZSgpO1xuICAgICAgdGhpcy5faHRtbEF1ZGlvQ2FjaGVbYXNzZXRJZF0gPSB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqIEBwYXJhbSBkdXJhdGlvbiBEdXJhdGlvbiBvZiB0aGUgdmlicmF0aW9uIGluIG1pbGxpc2Vjb25kcy5cbiAgICovXG4gIGFzeW5jIHZpYnJhdGUoZHVyYXRpb24/OiBudW1iZXJ8bnVtYmVyW10pIHtcbiAgICBpZiAoIXRoaXMuc3RhcnRlZCkgYXdhaXQgdGhpcy5yZWFkeSgpO1xuICAgIGlmIChBcnJheS5pc0FycmF5KGR1cmF0aW9uKSkge1xuICAgICAgaWYgKHRoaXMuX2RlYnVnKSBjb25zb2xlLmRlYnVnKCdbYXVkaW9dIFZpYnJhdGU6ICcgKyBKU09OLnN0cmluZ2lmeShkdXJhdGlvbikpO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkdXJhdGlvbi5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCB0aW1lID0gZHVyYXRpb25baV07XG4gICAgICAgIGNvbnN0IHNpbGVudCA9IGkgJSAyICE9PSAwO1xuICAgICAgICBpZiAoc2lsZW50KSB7XG4gICAgICAgICAgaWYgKHRoaXMuX2RlYnVnKSBjb25zb2xlLmRlYnVnKCdbYXVkaW9dIHNpbGVudCBkdXJpbmcgJyArIHRpbWUpO1xuICAgICAgICAgIGF3YWl0IHNsZWVwKHRpbWUpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgIGlmICh0aGlzLl9kZWJ1ZykgY29uc29sZS5kZWJ1ZygnW2F1ZGlvXSB2aWJyYXRlIGR1cmluZyAnICsgdGltZSk7XG4gICAgICAgICAgYXdhaXQgUHJvbWlzZS5hbGwoW1xuICAgICAgICAgICAgSGFwdGljcy52aWJyYXRlKHtkdXJhdGlvbjogdGltZX0pLFxuICAgICAgICAgICAgc2xlZXAodGltZSlcbiAgICAgICAgICBdKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIGlmICh0aGlzLl9kZWJ1ZykgY29uc29sZS5kZWJ1ZygnW2F1ZGlvXSB2aWJyYXRlIGR1cmluZyAnICsgZHVyYXRpb24pO1xuICAgICAgYXdhaXQgSGFwdGljcy52aWJyYXRlKHtkdXJhdGlvbn0pO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIHNldEF1ZGlvTW9kZShtb2RlOiBBdWRpb01hbmFnZW1lbnQuQXVkaW9Nb2RlKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnNvbGUuaW5mbyhgW2F1ZGlvXSBDaGFuZ2luZyBhdWRpbyBtb2RlIHRvIHske2F1ZGlvTW9kZVRvU3RyaW5nKG1vZGUpfX1gKTtcbiAgICAgIGF3YWl0IHRoaXMuYXVkaW9NYW5hZ2VtZW50LnNldEF1ZGlvTW9kZShtb2RlKTtcbiAgICAgIHRoaXMuX2F1ZGlvTW9kZSA9IG1vZGU7XG4gICAgfVxuICAgIGNhdGNoKGVycikge1xuICAgICAgY29uc29sZS5lcnJvcihgW2F1ZGlvXSBFcnJvciB3aGlsZSBjaGFuZ2luZyBhdWRpbyBtb2RlIHRvIHske2F1ZGlvTW9kZVRvU3RyaW5nKG1vZGUpfX06ICR7ZXJyPy5tZXNzYWdlIHx8IGVycn1gLCBlcnIpO1xuICAgICAgLy8gQ29udGludWVcbiAgICB9XG4gIH1cblxuICAvKiAtLSBwcm90ZWN0ZWQgbWV0aG9kcyAgLS0gKi9cblxuICBwcm90ZWN0ZWQgYXN5bmMgcmVhZEF1ZGlvTW9kZSgpIHtcbiAgICBsZXQgdmFsdWUgPSBhd2FpdCB0aGlzLmF1ZGlvTWFuYWdlbWVudC5nZXRBdWRpb01vZGUoKTtcbiAgICB2YWx1ZSA9IHtcbiAgICAgIC4uLkRFRkFVTFRfQVVESU9fTU9ERV9SRVRVUk4sXG4gICAgICAuLi52YWx1ZVxuICAgIH07XG4gICAgY29uc29sZS5kZWJ1ZyhgW2F1ZGlvXSBEZXRlY3RlZCBhdWRpbyBtb2RlIHtsYWJlbDogJyR7dmFsdWUubGFiZWx9JywgYXVkaW9Nb2RlOiAke3ZhbHVlLmF1ZGlvTW9kZX19YCk7XG4gICAgdGhpcy5fYXVkaW9Nb2RlID0gdmFsdWUuYXVkaW9Nb2RlO1xuICB9XG5cbn1cbiJdfQ==
@@ -39,4 +39,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImpor
39
39
  type: Injectable,
40
40
  args: [{ providedIn: 'root' }]
41
41
  }], ctorParameters: () => [{ type: i1.Platform }] });
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NoYXJlZC9jYXBhY2l0b3Iva2V5Ym9hcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsU0FBUyxFQUF1QixNQUFNLGlCQUFpQixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLFdBQVcsQ0FBQztBQUMzQyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDN0MsT0FBTyxFQUFDLGVBQWUsRUFBYSxNQUFNLE1BQU0sQ0FBQzs7O0FBSWpELE1BQU0sT0FBTyxlQUFlO0lBaUJOO0lBZlosT0FBTyxHQUFHLEtBQUssQ0FBQztJQUNoQixlQUFlLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7SUFDdEQsU0FBUyxDQUF5QjtJQUUxQyxJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzdDLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDO0lBQ3BDLENBQUM7SUFDRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVELFlBQW9CLFFBQWtCO1FBQWxCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDcEMsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRU8sS0FBSyxDQUFDLElBQUk7UUFDaEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxTQUFTLENBQUMsaUJBQWlCLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDdkcsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxTQUFTLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDO2dCQUNqQyxRQUFRLENBQUMsV0FBVyxDQUFDLGtCQUFrQixFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUMvRSxRQUFRLENBQUMsV0FBVyxDQUFDLGlCQUFpQixFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ2hGLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQzt1R0E3QlUsZUFBZTsyR0FBZixlQUFlLGNBREgsTUFBTTs7MkZBQ2xCLGVBQWU7a0JBRDNCLFVBQVU7bUJBQUMsRUFBQyxVQUFVLEVBQUUsTUFBTSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q2FwYWNpdG9yLCBQbHVnaW5MaXN0ZW5lckhhbmRsZX0gZnJvbSAnQGNhcGFjaXRvci9jb3JlJztcbmltcG9ydCB7Q2FwYWNpdG9yUGx1Z2luc30gZnJvbSAnLi9wbHVnaW5zJztcbmltcG9ydCB7S2V5Ym9hcmR9IGZyb20gJ0BjYXBhY2l0b3Iva2V5Ym9hcmQnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtQbGF0Zm9ybX0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBLZXlib2FyZFNlcnZpY2Uge1xuXG4gIHByaXZhdGUgX2VuYWJsZSA9IGZhbHNlO1xuICBwcml2YXRlIF92aXNpYmxlU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwcml2YXRlIF9oYW5kbGVyczogUGx1Z2luTGlzdGVuZXJIYW5kbGVbXTtcblxuICBnZXQgdmlzaWJsZVN1YmplY3QoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuX3Zpc2libGVTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgZ2V0IHZpc2libGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3Zpc2libGVTdWJqZWN0LnZhbHVlO1xuICB9XG4gIGdldCBlbmFibGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2VuYWJsZTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcGxhdGZvcm06IFBsYXRmb3JtKSB7XG4gICAgcGxhdGZvcm0ucmVhZHkoKS50aGVuKCgpID0+IHRoaXMuaW5pdCgpKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgaW5pdCgpIHtcbiAgICB0aGlzLl9lbmFibGUgPSB0aGlzLnBsYXRmb3JtLmlzKCdjYXBhY2l0b3InKSAmJiBDYXBhY2l0b3IuaXNQbHVnaW5BdmFpbGFibGUoQ2FwYWNpdG9yUGx1Z2lucy5LZXlib2FyZCk7XG4gICAgaWYgKHRoaXMuX2VuYWJsZSkge1xuICAgICAgdGhpcy5faGFuZGxlcnMgPSBhd2FpdCBQcm9taXNlLmFsbChbXG4gICAgICAgIEtleWJvYXJkLmFkZExpc3RlbmVyKCdrZXlib2FyZFdpbGxTaG93JywgKCkgPT4gdGhpcy5fdmlzaWJsZVN1YmplY3QubmV4dCh0cnVlKSksXG4gICAgICAgIEtleWJvYXJkLmFkZExpc3RlbmVyKCdrZXlib2FyZERpZEhpZGUnLCAoKSA9PiB0aGlzLl92aXNpYmxlU3ViamVjdC5uZXh0KGZhbHNlKSlcbiAgICAgIF0pO1xuICAgIH1cbiAgfVxuXG59XG4iXX0=
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NoYXJlZC9jYXBhY2l0b3Iva2V5Ym9hcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsU0FBUyxFQUF1QixNQUFNLGlCQUFpQixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLFdBQVcsQ0FBQztBQUMzQyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDN0MsT0FBTyxFQUFDLGVBQWUsRUFBYSxNQUFNLE1BQU0sQ0FBQzs7O0FBSWpELE1BQU0sT0FBTyxlQUFlO0lBaUJOO0lBZlosT0FBTyxHQUFHLEtBQUssQ0FBQztJQUNoQixlQUFlLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7SUFDdEQsU0FBUyxDQUF5QjtJQUUxQyxJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzdDLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDO0lBQ3BDLENBQUM7SUFDRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVELFlBQW9CLFFBQWtCO1FBQWxCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDcEMsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRU8sS0FBSyxDQUFDLElBQUk7UUFDaEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxTQUFTLENBQUMsaUJBQWlCLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDdkcsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUM7Z0JBQ2pDLFFBQVEsQ0FBQyxXQUFXLENBQUMsa0JBQWtCLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQy9FLFFBQVEsQ0FBQyxXQUFXLENBQUMsaUJBQWlCLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDaEYsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7dUdBN0JVLGVBQWU7MkdBQWYsZUFBZSxjQURILE1BQU07OzJGQUNsQixlQUFlO2tCQUQzQixVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NhcGFjaXRvciwgUGx1Z2luTGlzdGVuZXJIYW5kbGV9IGZyb20gJ0BjYXBhY2l0b3IvY29yZSc7XG5pbXBvcnQge0NhcGFjaXRvclBsdWdpbnN9IGZyb20gJy4vcGx1Z2lucyc7XG5pbXBvcnQge0tleWJvYXJkfSBmcm9tICdAY2FwYWNpdG9yL2tleWJvYXJkJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7UGxhdGZvcm19IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcblxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgS2V5Ym9hcmRTZXJ2aWNlIHtcblxuICBwcml2YXRlIF9lbmFibGUgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfdmlzaWJsZVN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHJpdmF0ZSBfaGFuZGxlcnM6IFBsdWdpbkxpc3RlbmVySGFuZGxlW107XG5cbiAgZ2V0IHZpc2libGVTdWJqZWN0KCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLl92aXNpYmxlU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCB2aXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl92aXNpYmxlU3ViamVjdC52YWx1ZTtcbiAgfVxuICBnZXQgZW5hYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9lbmFibGU7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHBsYXRmb3JtOiBQbGF0Zm9ybSkge1xuICAgIHBsYXRmb3JtLnJlYWR5KCkudGhlbigoKSA9PiB0aGlzLmluaXQoKSk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGluaXQoKSB7XG4gICAgdGhpcy5fZW5hYmxlID0gdGhpcy5wbGF0Zm9ybS5pcygnY2FwYWNpdG9yJykgJiYgQ2FwYWNpdG9yLmlzUGx1Z2luQXZhaWxhYmxlKENhcGFjaXRvclBsdWdpbnMuS2V5Ym9hcmQpO1xuICAgIGlmICh0aGlzLl9lbmFibGUpIHtcbiAgICAgIHRoaXMuX2hhbmRsZXJzID0gYXdhaXQgUHJvbWlzZS5hbGwoW1xuICAgICAgICBLZXlib2FyZC5hZGRMaXN0ZW5lcigna2V5Ym9hcmRXaWxsU2hvdycsICgpID0+IHRoaXMuX3Zpc2libGVTdWJqZWN0Lm5leHQodHJ1ZSkpLFxuICAgICAgICBLZXlib2FyZC5hZGRMaXN0ZW5lcigna2V5Ym9hcmREaWRIaWRlJywgKCkgPT4gdGhpcy5fdmlzaWJsZVN1YmplY3QubmV4dChmYWxzZSkpXG4gICAgICBdKTtcbiAgICB9XG4gIH1cblxufVxuIl19
@@ -146,4 +146,4 @@ export function toDuration(value, unit) {
146
146
  }
147
147
  return duration;
148
148
  }
149
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NoYXJlZC9kYXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVksUUFBUSxFQUFzQixNQUFNLFFBQVEsQ0FBQztBQUNoRSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsWUFBWSxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBQzlFLE9BQU8sS0FBSyxjQUFjLE1BQU0sUUFBUSxDQUFDO0FBQ3pDLE9BQU8sS0FBSyxnQkFBZ0IsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sV0FBVyxDQUFDO0FBRXpDLCtFQUErRTtBQUMvRSxNQUFNLE1BQU0sR0FBRyxjQUFjLENBQXdCLGNBQWMsQ0FBQyxDQUFDO0FBQ3JFLE1BQU0sUUFBUSxHQUFHLGNBQWMsQ0FBMEIsZ0JBQWdCLENBQUMsQ0FBQztBQUUzRSxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxHQUFHLENBQUM7QUFDdkMsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsR0FBRyxDQUFDO0FBQzFDLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLFlBQVksQ0FBQztBQUVwRCxNQUFNLE9BQU8sU0FBUztJQUVwQixNQUFNLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztJQUN2QixNQUFNLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUUzQixNQUFNLENBQUMsZUFBZSxHQUFHLGVBQWUsQ0FBQztJQUN6QyxNQUFNLENBQUMsaUJBQWlCLEdBQUcsaUJBQWlCLENBQUM7SUFDN0MsTUFBTSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7SUFFL0IsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFhLEVBQUUsS0FBYTtRQUNyQyxPQUFPLEtBQUssSUFBSSxDQUFDLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFD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Y0FBYztJQUNkLElBQUksUUFBUSxDQUFDLFlBQVksRUFBRSxJQUFJLEdBQUcsRUFBRTtRQUNsQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksR0FBRyxRQUFRLENBQUMsWUFBWSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7S0FDcEQ7SUFDRCxXQUFXO0lBQ1gsSUFBSSxRQUFRLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxFQUFFO1FBQzVCLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLFFBQVEsQ0FBQyxPQUFPLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztLQUM1QztJQUVELE9BQU8sUUFBUSxDQUFDO0FBQ2xCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEdXJhdGlvbiwgaXNNb21lbnQsIE1vbWVudCwgdW5pdE9mVGltZSB9IGZyb20gJ21vbWVudCc7XG5pbXBvcnQge0RBVEVfSVNPX1BBVFRFUk4sIERBVEVfTUFUQ0hfUkVHRVhQLCBEQVRFX1BBVFRFUk59IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCAqIGFzIG1vbWVudEltcG9ydGVkIGZyb20gJ21vbWVudCc7XG5pbXBvcnQgKiBhcyBtb21lbnRUWkltcG9ydGVkIGZyb20gJ21vbWVudC10aW1lem9uZSc7XG5pbXBvcnQge3Vud3JhcEVTTW9kdWxlfSBmcm9tICcuL21vZHVsZXMnO1xuXG4vLyAvLyBXb3JrYXJvdW5kIGZvciBpc3N1ZSBodHRwczovL2dpdGh1Yi5jb20vbmctcGFja2Fnci9uZy1wYWNrYWdyL2lzc3Vlcy8yMjE1XG5jb25zdCBtb21lbnQgPSB1bndyYXBFU01vZHVsZTx0eXBlb2YgbW9tZW50SW1wb3J0ZWQ+KG1vbWVudEltcG9ydGVkKTtcbmNvbnN0IG1vbWVudFRaID0gdW53cmFwRVNNb2R1bGU8dHlwZW9mIG1vbWVudFRaSW1wb3J0ZWQ+KG1vbWVudFRaSW1wb3J0ZWQpO1xuXG5leHBvcnQgY29uc3QgREFURV9VTklYX1RJTUVTVEFNUCA9ICdYJztcbmV4cG9ydCBjb25zdCBEQVRFX1VOSVhfTVNfVElNRVNUQU1QID0gJ3gnO1xuZXhwb3J0IGNvbnN0IE1PTUVOVF9OT19USU1FX1BST1BFUlRZID0gJ19oYXNOb1RpbWUnO1xuXG5leHBvcnQgY2xhc3MgRGF0ZVV0aWxzIHtcblxuICBzdGF0aWMgbW9tZW50ID0gbW9tZW50O1xuICBzdGF0aWMgbW9tZW50VFogPSBtb21lbnRUWjtcblxuICBzdGF0aWMgdG9EYXRlSVNPU3RyaW5nID0gdG9EYXRlSVNPU3RyaW5nO1xuICBzdGF0aWMgZnJvbURhdGVJU09TdHJpbmcgPSBmcm9tRGF0ZUlTT1N0cmluZztcbiAgc3RhdGljIHRvRHVyYXRpb24gPSB0b0R1cmF0aW9uO1xuXG4gIHN0YXRpYyBtaW4oZGF0ZTE6IE1vbWVudCwgZGF0ZTI6IE1vbWVudCk6IE1vbWVudCB7XG4gICAgcmV0dXJuIGRhdGUxICYmICghZGF0ZTIgfHwgZGF0ZTEuaXNTYW1lT3JCZWZvcmUoZGF0ZTIpKSA/IGRhdGUxIDogZGF0ZTI7XG4gIH1cblxuICBzdGF0aWMgbWF4KGRhdGUxOiBNb21lbnR8IHN0cmluZywgZGF0ZTI6IE1vbWVudHwgc3RyaW5nKTogTW9tZW50IHtcbiAgICBjb25zdCBkMSA9IGZyb21EYXRlSVNPU3RyaW5nKGRhdGUxKTtcbiAgICBjb25zdCBkMiA9IGZyb21EYXRlSVNPU3RyaW5nKGRhdGUyKTtcbiAgICByZXR1cm4gZDEgJiYgKCFkMiB8fCBkMS5pc1NhbWVPckFmdGVyKGQyKSkgPyBkMSA6IGQyO1xuICB9XG5cbiAgc3RhdGljIGVxdWFscyhkYXRlMTogTW9tZW50IHwgc3RyaW5nLCBkYXRlMjogTW9tZW50IHwgc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIERhdGVVdGlscy5pc1NhbWUoZGF0ZTEsIGRhdGUyKTtcbiAgfVxuXG4gIHN0YXRpYyBpc1NhbWUoZGF0ZTE6IE1vbWVudCB8IHN0cmluZywgZGF0ZTI6IE1vbWVudCB8IHN0cmluZywgZ3JhbnVsYXJpdHk/OiB1bml0T2ZUaW1lLlN0YXJ0T2YpOiBib29sZWFuIHtcbiAgICBjb25zdCBkMSA9IGZyb21EYXRlSVNPU3RyaW5nKGRhdGUxKTtcbiAgICBjb25zdCBkMiA9IGZyb21EYXRlSVNPU3RyaW5nKGRhdGUyKTtcbiAgICByZXR1cm4gKCFkMSAmJiAhZDIpIHx8IChkMSAmJiBkMS5pc1NhbWUoZDIsIGdyYW51bGFyaXR5KSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgY29weSBvZiBhIGRhdGUsIHdpdGhvdXQgdGltZSBmaWVsZHMgKGFsd2F5cyByZXR1cm4gYSBuZXcgTW9tZW50IG9iamVjdCwgb3IgdW5kZWZpbmVkKS5cbiAgICogU2FtZSBpbXBsZW1lbnRhdGlvbiBhcyB0aGUgSmF2YSBjbGFzcyBEYXRlcy5yZXNldFRpbWUoKSAoc2VlIGFueSBTVU1BUmlTIGxpa2UgUG9kKVxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWVcbiAgICogQHBhcmFtIHRpbWV6b25lIGEgdGltZXpvbmUgKHNlZSBodHRwczovL21vbWVudGpzLmNvbS90aW1lem9uZS8pXG4gICAqIEBwYXJhbSBrZWVwTG9jYWxUaW1lIGlmIHRydWUsIG9ubHkgdGhlIHRpbWV6b25lIChhbmQgb2Zmc2V0KSBpcyB1cGRhdGVkLCBrZWVwaW5nIHRoZSBsb2NhbCB0aW1lIHNhbWUuIENvbnNlcXVlbnRseSwgaXQgd2lsbCBub3cgcG9pbnQgdG8gYSBkaWZmZXJlbnQgcG9pbnQgaW4gdGltZSBpZiB0aGUgb2Zmc2V0IGhhcyBjaGFuZ2VkLlxuICAgKi9cbiAgc3RhdGljIHJlc2V0VGltZSh2YWx1ZTogTW9tZW50fHN0cmluZywgdGltZXpvbmU/OiBzdHJpbmcsIGtlZXBMb2NhbFRpbWU/OiBib29sZWFuKTogTW9tZW50IHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoIXZhbHVlKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIGNvbnN0IGRhdGUgPSBmcm9tRGF0ZUlTT1N0cmluZyh2YWx1ZSk7XG4gICAgLy8gTm8gdGltZXpvbmVcbiAgICBpZiAoIXRpbWV6b25lKSB7XG4gICAgICByZXR1cm4gZGF0ZS5jbG9uZSgpLnN0YXJ0T2YoJ2RheScpO1xuICAgIH1cbiAgICAvLyBVc2UgdGltZXpvbmVcbiAgICByZXR1cm4gZGF0ZS5jbG9uZSgpIC8vIGNsb25lIHRoZSBvcmlnaW5hbCBkYXRlXG4gICAgICAudHoodGltZXpvbmUsIGtlZXBMb2NhbFRpbWUpXG4gICAgICAuc3RhcnRPZignZGF5Jyk7XG4gIH1cblxuICBzdGF0aWMgbWFya05vVGltZSh2YWx1ZTogTW9tZW50KTogTW9tZW50IHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoIXZhbHVlKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIHZhbHVlW01PTUVOVF9OT19USU1FX1BST1BFUlRZXSA9IHRydWU7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgc3RhdGljIG1hcmtUaW1lKHZhbHVlOiBNb21lbnQpOiBNb21lbnQgfCB1bmRlZmluZWQge1xuICAgIGlmICghdmFsdWUpIHJldHVybiB1bmRlZmluZWQ7XG4gICAgZGVsZXRlIHZhbHVlW01PTUVOVF9OT19USU1FX1BST1BFUlRZXTtcbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBzdGF0aWMgaXNOb1RpbWUodmFsdWU6IE1vbWVudCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB2YWx1ZT8uW01PTUVOVF9OT19USU1FX1BST1BFUlRZXSA9PT0gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUZXN0IGlmIGEgZGF0ZSBpcyBvbiB0aGUgZ2l2ZW4gZGF5IG9mIHdlZWtcbiAgICpcbiAgICogQHBhcmFtIGRhdGVcbiAgICogQHBhcmFtIHdlZWtkYXlcbiAgICogQHBhcmFtIHRpbWV6b25lXG4gICAqL1xuICBzdGF0aWMgaXNBdERheShkYXRlOiBzdHJpbmd8TW9tZW50LCB3ZWVrZGF5OiBudW1iZXIsIHRpbWV6b25lPzogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgbGV0IG1vbWVudERhdGUgPSBkYXRlICYmIGZyb21EYXRlSVNPU3RyaW5nKGRhdGUpO1xuICAgIGlmICghbW9tZW50RGF0ZSkgcmV0dXJuIG51bGw7XG4gICAgaWYgKHRpbWV6b25lKSBtb21lbnREYXRlID0gbW9tZW50RGF0ZS5jbG9uZSgpLnR6KHRpbWV6b25lKS5zdGFydE9mKCdkYXknKTtcbiAgICByZXR1cm4gbW9tZW50RGF0ZS5kYXkoKSA9PT0gd2Vla2RheTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdG9EYXRlSVNPU3RyaW5nKHZhbHVlOiBhbnkpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICBpZiAoIXZhbHVlKSByZXR1cm4gdW5kZWZpbmVkO1xuXG4gIC8vIEFscmVhZHkgYSB2YWxpZCBJU08gZGF0ZSB0aW1lIHN0cmluZyAod2l0aG91dCB0aW1lem9uZSk6IHVzZSBpdFxuICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJ1xuICAgICYmIHZhbHVlLmluZGV4T2YoJysnKSA9PT0gLTFcbiAgICAmJiB2YWx1ZS5sYXN0SW5kZXhPZignWicpID09PSB2YWx1ZS5sZW5ndGggLSAxKSB7XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cbiAgLy8gTWFrZSBzdXJlIHRvIGhhdmUgYSBNb21lbnQgb2JqZWN0XG4gIGNvbnN0IGRhdGUgPSBmcm9tRGF0ZUlTT1N0cmluZyh2YWx1ZSk7XG4gIGlmICghZGF0ZSkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgcmV0dXJuIERhdGVVdGlscy5pc05vVGltZShkYXRlKVxuICAgID8gZGF0ZS50b0lTT1N0cmluZyh0cnVlIC8qIGltcG9ydGFudCAhICovKS5zdWJzdHJpbmcoMCwgMTApXG4gICAgOiBkYXRlLnRvSVNPU3RyaW5nKCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmcm9tRGF0ZUlTT1N0cmluZyh2YWx1ZTogYW55KTogTW9tZW50IHwgdW5kZWZpbmVkIHtcbiAgLy8gQWxyZWFkeSBhIG1vbWVudCBvYmplY3Q6IHVzZSBpdFxuICBpZiAoIXZhbHVlIHx8IGlzTW9tZW50KHZhbHVlKSkgcmV0dXJuIHZhbHVlO1xuXG4gIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmICEhdmFsdWUubWF0Y2goREFURV9NQVRDSF9SRUdFWFApKSB7XG4gICAgLy8gUGFyc2UgdGhlIGlucHV0IHZhbHVlLCBhcyBhIGRhdGUgb25seVxuICAgIGNvbnN0IGRhdGVPbmx5OiBNb21lbnQgPSBEYXRlVXRpbHMubW9tZW50KHZhbHVlLCBEQVRFX1BBVFRFUk4sIHRydWUpO1xuICAgIHJldHVybiBEYXRlVXRpbHMubWFya05vVGltZShkYXRlT25seSk7XG4gIH1cblxuICAvLyBQYXJzZSB0aGUgaW5wdXQgdmFsdWUsIGFzIGEgSVNPIGRhdGUgdGltZVxuICBjb25zdCBkYXRlOiBNb21lbnQgPSBEYXRlVXRpbHMubW9tZW50KHZhbHVlLCBEQVRFX0lTT19QQVRURVJOKTtcbiAgaWYgKGRhdGUuaXNWYWxpZCgpKSByZXR1cm4gZGF0ZTtcblxuICAvLyBOb3QgdmFsaWQ6IHRyeWluZyB0byBjb252ZXJ0IGZyb20gdW5peCB0aW1lc3RhbXBcbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICBjb25zb2xlLndhcm4oJ1dyb25nIGRhdGUgZm9ybWF0IC0gVHJ5aW5nIHRvIGNvbnZlcnQgZnJvbSBsb2NhbCB0aW1lOiAnICsgdmFsdWUpO1xuICAgIGlmICh2YWx1ZS5sZW5ndGggPT09IDEwKSB7XG4gICAgICByZXR1cm4gRGF0ZVV0aWxzLm1vbWVudCh2YWx1ZSwgREFURV9VTklYX1RJTUVTVEFNUCk7XG4gICAgfVxuICAgIGVsc2UgaWYgKHZhbHVlLmxlbmd0aCA9PT0gMTMpIHtcbiAgICAgIHJldHVybiBEYXRlVXRpbHMubW9tZW50KHZhbHVlLCBEQVRFX1VOSVhfTVNfVElNRVNUQU1QKTtcbiAgICB9XG4gIH1cblxuICBjb25zb2xlLndhcm4oJ1VuYWJsZSB0byBwYXJzZSBkYXRlOiAnICsgdmFsdWUpO1xuICByZXR1cm4gdW5kZWZpbmVkO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZnJvbVVuaXhUaW1lc3RhbXAodGltZUluU2VjOiBudW1iZXIpIHtcbiAgcmV0dXJuIERhdGVVdGlscy5tb21lbnQodGltZUluU2VjLCBEQVRFX1VOSVhfVElNRVNUQU1QKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBmcm9tVW5peE1zVGltZXN0YW1wKHRpbWVJbk1zOiBudW1iZXIpIHtcbiAgcmV0dXJuIERhdGVVdGlscy5tb21lbnQodGltZUluTXMsIERBVEVfVU5JWF9NU19USU1FU1RBTVApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdG9EdXJhdGlvbih2YWx1ZTogbnVtYmVyLCB1bml0PzogdW5pdE9mVGltZS5EdXJhdGlvbkNvbnN0cnVjdG9yKTogRHVyYXRpb24ge1xuICBpZiAoIXZhbHVlKSByZXR1cm4gdW5kZWZpbmVkO1xuXG4gIGNvbnN0IGR1cmF0aW9uID0gRGF0ZVV0aWxzLm1vbWVudC5kdXJhdGlvbih2YWx1ZSwgdW5pdCk7XG5cbiAgLy8gZml4IDk5MCsgbXNcbiAgaWYgKGR1cmF0aW9uLm1pbGxpc2Vjb25kcygpID49IDk5MCkge1xuICAgIGR1cmF0aW9uLmFkZCgxMDAwIC0gZHVyYXRpb24ubWlsbGlzZWNvbmRzKCksICdtcycpO1xuICB9XG4gIC8vIGZpeCA1OSBzXG4gIGlmIChkdXJhdGlvbi5zZWNvbmRzKCkgPj0gNTkpIHtcbiAgICBkdXJhdGlvbi5hZGQoNjAgLSBkdXJhdGlvbi5zZWNvbmRzKCksICdzJyk7XG4gIH1cblxuICByZXR1cm4gZHVyYXRpb247XG59XG4iXX0=
149
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NoYXJlZC9kYXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVksUUFBUSxFQUFzQixNQUFNLFFBQVEsQ0FBQztBQUNoRSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsWUFBWSxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBQzlFLE9BQU8sS0FBSyxjQUFjLE1BQU0sUUFBUSxDQUFDO0FBQ3pDLE9BQU8sS0FBSyxnQkFBZ0IsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sV0FBVyxDQUFDO0FBRXpDLCtFQUErRTtBQUMvRSxNQUFNLE1BQU0sR0FBRyxjQUFjLENBQXdCLGNBQWMsQ0FBQyxDQUFDO0FBQ3JFLE1BQU0sUUFBUSxHQUFHLGNBQWMsQ0FBMEIsZ0JBQWdCLENBQUMsQ0FBQztBQUUzRSxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxHQUFHLENBQUM7QUFDdkMsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsR0FBRyxDQUFDO0FBQzFDLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLFlBQVksQ0FBQztBQUVwRCxNQUFNLE9BQU8sU0FBUztJQUVwQixNQUFNLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztJQUN2QixNQUFNLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUUzQixNQUFNLENBQUMsZUFBZSxHQUFHLGVBQWUsQ0FBQztJQUN6QyxNQUFNLENBQUMsaUJBQWlCLEdBQUcsaUJBQWlCLENBQUM7SUFDN0MsTUFBTSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7SUFFL0IsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFhLEVBQUUsS0FBYTtRQUNyQyxPQUFPLEtBQUssSUFBSSxDQUFDLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFD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QUFTLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFFeEQsY0FBYztJQUNkLElBQUksUUFBUSxDQUFDLFlBQVksRUFBRSxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ25DLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQyxZQUFZLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBQ0QsV0FBVztJQUNYLElBQUksUUFBUSxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDO1FBQzdCLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLFFBQVEsQ0FBQyxPQUFPLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IER1cmF0aW9uLCBpc01vbWVudCwgTW9tZW50LCB1bml0T2ZUaW1lIH0gZnJvbSAnbW9tZW50JztcbmltcG9ydCB7REFURV9JU09fUEFUVEVSTiwgREFURV9NQVRDSF9SRUdFWFAsIERBVEVfUEFUVEVSTn0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0ICogYXMgbW9tZW50SW1wb3J0ZWQgZnJvbSAnbW9tZW50JztcbmltcG9ydCAqIGFzIG1vbWVudFRaSW1wb3J0ZWQgZnJvbSAnbW9tZW50LXRpbWV6b25lJztcbmltcG9ydCB7dW53cmFwRVNNb2R1bGV9IGZyb20gJy4vbW9kdWxlcyc7XG5cbi8vIC8vIFdvcmthcm91bmQgZm9yIGlzc3VlIGh0dHBzOi8vZ2l0aHViLmNvbS9uZy1wYWNrYWdyL25nLXBhY2thZ3IvaXNzdWVzLzIyMTVcbmNvbnN0IG1vbWVudCA9IHVud3JhcEVTTW9kdWxlPHR5cGVvZiBtb21lbnRJbXBvcnRlZD4obW9tZW50SW1wb3J0ZWQpO1xuY29uc3QgbW9tZW50VFogPSB1bndyYXBFU01vZHVsZTx0eXBlb2YgbW9tZW50VFpJbXBvcnRlZD4obW9tZW50VFpJbXBvcnRlZCk7XG5cbmV4cG9ydCBjb25zdCBEQVRFX1VOSVhfVElNRVNUQU1QID0gJ1gnO1xuZXhwb3J0IGNvbnN0IERBVEVfVU5JWF9NU19USU1FU1RBTVAgPSAneCc7XG5leHBvcnQgY29uc3QgTU9NRU5UX05PX1RJTUVfUFJPUEVSVFkgPSAnX2hhc05vVGltZSc7XG5cbmV4cG9ydCBjbGFzcyBEYXRlVXRpbHMge1xuXG4gIHN0YXRpYyBtb21lbnQgPSBtb21lbnQ7XG4gIHN0YXRpYyBtb21lbnRUWiA9IG1vbWVudFRaO1xuXG4gIHN0YXRpYyB0b0RhdGVJU09TdHJpbmcgPSB0b0RhdGVJU09TdHJpbmc7XG4gIHN0YXRpYyBmcm9tRGF0ZUlTT1N0cmluZyA9IGZyb21EYXRlSVNPU3RyaW5nO1xuICBzdGF0aWMgdG9EdXJhdGlvbiA9IHRvRHVyYXRpb247XG5cbiAgc3RhdGljIG1pbihkYXRlMTogTW9tZW50LCBkYXRlMjogTW9tZW50KTogTW9tZW50IHtcbiAgICByZXR1cm4gZGF0ZTEgJiYgKCFkYXRlMiB8fCBkYXRlMS5pc1NhbWVPckJlZm9yZShkYXRlMikpID8gZGF0ZTEgOiBkYXRlMjtcbiAgfVxuXG4gIHN0YXRpYyBtYXgoZGF0ZTE6IE1vbWVudHwgc3RyaW5nLCBkYXRlMjogTW9tZW50fCBzdHJpbmcpOiBNb21lbnQge1xuICAgIGNvbnN0IGQxID0gZnJvbURhdGVJU09TdHJpbmcoZGF0ZTEpO1xuICAgIGNvbnN0IGQyID0gZnJvbURhdGVJU09TdHJpbmcoZGF0ZTIpO1xuICAgIHJldHVybiBkMSAmJiAoIWQyIHx8IGQxLmlzU2FtZU9yQWZ0ZXIoZDIpKSA/IGQxIDogZDI7XG4gIH1cblxuICBzdGF0aWMgZXF1YWxzKGRhdGUxOiBNb21lbnQgfCBzdHJpbmcsIGRhdGUyOiBNb21lbnQgfCBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gRGF0ZVV0aWxzLmlzU2FtZShkYXRlMSwgZGF0ZTIpO1xuICB9XG5cbiAgc3RhdGljIGlzU2FtZShkYXRlMTogTW9tZW50IHwgc3RyaW5nLCBkYXRlMjogTW9tZW50IHwgc3RyaW5nLCBncmFudWxhcml0eT86IHVuaXRPZlRpbWUuU3RhcnRPZik6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGQxID0gZnJvbURhdGVJU09TdHJpbmcoZGF0ZTEpO1xuICAgIGNvbnN0IGQyID0gZnJvbURhdGVJU09TdHJpbmcoZGF0ZTIpO1xuICAgIHJldHVybiAoIWQxICYmICFkMikgfHwgKGQxICYmIGQxLmlzU2FtZShkMiwgZ3JhbnVsYXJpdHkpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBjb3B5IG9mIGEgZGF0ZSwgd2l0aG91dCB0aW1lIGZpZWxkcyAoYWx3YXlzIHJldHVybiBhIG5ldyBNb21lbnQgb2JqZWN0LCBvciB1bmRlZmluZWQpLlxuICAgKiBTYW1lIGltcGxlbWVudGF0aW9uIGFzIHRoZSBKYXZhIGNsYXNzIERhdGVzLnJlc2V0VGltZSgpIChzZWUgYW55IFNVTUFSaVMgbGlrZSBQb2QpXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZVxuICAgKiBAcGFyYW0gdGltZXpvbmUgYSB0aW1lem9uZSAoc2VlIGh0dHBzOi8vbW9tZW50anMuY29tL3RpbWV6b25lLylcbiAgICogQHBhcmFtIGtlZXBMb2NhbFRpbWUgaWYgdHJ1ZSwgb25seSB0aGUgdGltZXpvbmUgKGFuZCBvZmZzZXQpIGlzIHVwZGF0ZWQsIGtlZXBpbmcgdGhlIGxvY2FsIHRpbWUgc2FtZS4gQ29uc2VxdWVudGx5LCBpdCB3aWxsIG5vdyBwb2ludCB0byBhIGRpZmZlcmVudCBwb2ludCBpbiB0aW1lIGlmIHRoZSBvZmZzZXQgaGFzIGNoYW5nZWQuXG4gICAqL1xuICBzdGF0aWMgcmVzZXRUaW1lKHZhbHVlOiBNb21lbnR8c3RyaW5nLCB0aW1lem9uZT86IHN0cmluZywga2VlcExvY2FsVGltZT86IGJvb2xlYW4pOiBNb21lbnQgfCB1bmRlZmluZWQge1xuICAgIGlmICghdmFsdWUpIHJldHVybiB1bmRlZmluZWQ7XG4gICAgY29uc3QgZGF0ZSA9IGZyb21EYXRlSVNPU3RyaW5nKHZhbHVlKTtcbiAgICAvLyBObyB0aW1lem9uZVxuICAgIGlmICghdGltZXpvbmUpIHtcbiAgICAgIHJldHVybiBkYXRlLmNsb25lKCkuc3RhcnRPZignZGF5Jyk7XG4gICAgfVxuICAgIC8vIFVzZSB0aW1lem9uZVxuICAgIHJldHVybiBkYXRlLmNsb25lKCkgLy8gY2xvbmUgdGhlIG9yaWdpbmFsIGRhdGVcbiAgICAgIC50eih0aW1lem9uZSwga2VlcExvY2FsVGltZSlcbiAgICAgIC5zdGFydE9mKCdkYXknKTtcbiAgfVxuXG4gIHN0YXRpYyBtYXJrTm9UaW1lKHZhbHVlOiBNb21lbnQpOiBNb21lbnQgfCB1bmRlZmluZWQge1xuICAgIGlmICghdmFsdWUpIHJldHVybiB1bmRlZmluZWQ7XG4gICAgdmFsdWVbTU9NRU5UX05PX1RJTUVfUFJPUEVSVFldID0gdHJ1ZTtcbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBzdGF0aWMgbWFya1RpbWUodmFsdWU6IE1vbWVudCk6IE1vbWVudCB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCF2YWx1ZSkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICBkZWxldGUgdmFsdWVbTU9NRU5UX05PX1RJTUVfUFJPUEVSVFldO1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIHN0YXRpYyBpc05vVGltZSh2YWx1ZTogTW9tZW50KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHZhbHVlPy5bTU9NRU5UX05PX1RJTUVfUFJPUEVSVFldID09PSB0cnVlO1xuICB9XG5cbiAgLyoqXG4gICAqIFRlc3QgaWYgYSBkYXRlIGlzIG9uIHRoZSBnaXZlbiBkYXkgb2Ygd2Vla1xuICAgKlxuICAgKiBAcGFyYW0gZGF0ZVxuICAgKiBAcGFyYW0gd2Vla2RheVxuICAgKiBAcGFyYW0gdGltZXpvbmVcbiAgICovXG4gIHN0YXRpYyBpc0F0RGF5KGRhdGU6IHN0cmluZ3xNb21lbnQsIHdlZWtkYXk6IG51bWJlciwgdGltZXpvbmU/OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBsZXQgbW9tZW50RGF0ZSA9IGRhdGUgJiYgZnJvbURhdGVJU09TdHJpbmcoZGF0ZSk7XG4gICAgaWYgKCFtb21lbnREYXRlKSByZXR1cm4gbnVsbDtcbiAgICBpZiAodGltZXpvbmUpIG1vbWVudERhdGUgPSBtb21lbnREYXRlLmNsb25lKCkudHoodGltZXpvbmUpLnN0YXJ0T2YoJ2RheScpO1xuICAgIHJldHVybiBtb21lbnREYXRlLmRheSgpID09PSB3ZWVrZGF5O1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0b0RhdGVJU09TdHJpbmcodmFsdWU6IGFueSk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIGlmICghdmFsdWUpIHJldHVybiB1bmRlZmluZWQ7XG5cbiAgLy8gQWxyZWFkeSBhIHZhbGlkIElTTyBkYXRlIHRpbWUgc3RyaW5nICh3aXRob3V0IHRpbWV6b25lKTogdXNlIGl0XG4gIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnXG4gICAgJiYgdmFsdWUuaW5kZXhPZignKycpID09PSAtMVxuICAgICYmIHZhbHVlLmxhc3RJbmRleE9mKCdaJykgPT09IHZhbHVlLmxlbmd0aCAtIDEpIHtcblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuICAvLyBNYWtlIHN1cmUgdG8gaGF2ZSBhIE1vbWVudCBvYmplY3RcbiAgY29uc3QgZGF0ZSA9IGZyb21EYXRlSVNPU3RyaW5nKHZhbHVlKTtcbiAgaWYgKCFkYXRlKSByZXR1cm4gdW5kZWZpbmVkO1xuICByZXR1cm4gRGF0ZVV0aWxzLmlzTm9UaW1lKGRhdGUpXG4gICAgPyBkYXRlLnRvSVNPU3RyaW5nKHRydWUgLyogaW1wb3J0YW50ICEgKi8pLnN1YnN0cmluZygwLCAxMClcbiAgICA6IGRhdGUudG9JU09TdHJpbmcoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZyb21EYXRlSVNPU3RyaW5nKHZhbHVlOiBhbnkpOiBNb21lbnQgfCB1bmRlZmluZWQge1xuICAvLyBBbHJlYWR5IGEgbW9tZW50IG9iamVjdDogdXNlIGl0XG4gIGlmICghdmFsdWUgfHwgaXNNb21lbnQodmFsdWUpKSByZXR1cm4gdmFsdWU7XG5cbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgJiYgISF2YWx1ZS5tYXRjaChEQVRFX01BVENIX1JFR0VYUCkpIHtcbiAgICAvLyBQYXJzZSB0aGUgaW5wdXQgdmFsdWUsIGFzIGEgZGF0ZSBvbmx5XG4gICAgY29uc3QgZGF0ZU9ubHk6IE1vbWVudCA9IERhdGVVdGlscy5tb21lbnQodmFsdWUsIERBVEVfUEFUVEVSTiwgdHJ1ZSk7XG4gICAgcmV0dXJuIERhdGVVdGlscy5tYXJrTm9UaW1lKGRhdGVPbmx5KTtcbiAgfVxuXG4gIC8vIFBhcnNlIHRoZSBpbnB1dCB2YWx1ZSwgYXMgYSBJU08gZGF0ZSB0aW1lXG4gIGNvbnN0IGRhdGU6IE1vbWVudCA9IERhdGVVdGlscy5tb21lbnQodmFsdWUsIERBVEVfSVNPX1BBVFRFUk4pO1xuICBpZiAoZGF0ZS5pc1ZhbGlkKCkpIHJldHVybiBkYXRlO1xuXG4gIC8vIE5vdCB2YWxpZDogdHJ5aW5nIHRvIGNvbnZlcnQgZnJvbSB1bml4IHRpbWVzdGFtcFxuICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgIGNvbnNvbGUud2FybignV3JvbmcgZGF0ZSBmb3JtYXQgLSBUcnlpbmcgdG8gY29udmVydCBmcm9tIGxvY2FsIHRpbWU6ICcgKyB2YWx1ZSk7XG4gICAgaWYgKHZhbHVlLmxlbmd0aCA9PT0gMTApIHtcbiAgICAgIHJldHVybiBEYXRlVXRpbHMubW9tZW50KHZhbHVlLCBEQVRFX1VOSVhfVElNRVNUQU1QKTtcbiAgICB9XG4gICAgZWxzZSBpZiAodmFsdWUubGVuZ3RoID09PSAxMykge1xuICAgICAgcmV0dXJuIERhdGVVdGlscy5tb21lbnQodmFsdWUsIERBVEVfVU5JWF9NU19USU1FU1RBTVApO1xuICAgIH1cbiAgfVxuXG4gIGNvbnNvbGUud2FybignVW5hYmxlIHRvIHBhcnNlIGRhdGU6ICcgKyB2YWx1ZSk7XG4gIHJldHVybiB1bmRlZmluZWQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmcm9tVW5peFRpbWVzdGFtcCh0aW1lSW5TZWM6IG51bWJlcikge1xuICByZXR1cm4gRGF0ZVV0aWxzLm1vbWVudCh0aW1lSW5TZWMsIERBVEVfVU5JWF9USU1FU1RBTVApO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGZyb21Vbml4TXNUaW1lc3RhbXAodGltZUluTXM6IG51bWJlcikge1xuICByZXR1cm4gRGF0ZVV0aWxzLm1vbWVudCh0aW1lSW5NcywgREFURV9VTklYX01TX1RJTUVTVEFNUCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0b0R1cmF0aW9uKHZhbHVlOiBudW1iZXIsIHVuaXQ/OiB1bml0T2ZUaW1lLkR1cmF0aW9uQ29uc3RydWN0b3IpOiBEdXJhdGlvbiB7XG4gIGlmICghdmFsdWUpIHJldHVybiB1bmRlZmluZWQ7XG5cbiAgY29uc3QgZHVyYXRpb24gPSBEYXRlVXRpbHMubW9tZW50LmR1cmF0aW9uKHZhbHVlLCB1bml0KTtcblxuICAvLyBmaXggOTkwKyBtc1xuICBpZiAoZHVyYXRpb24ubWlsbGlzZWNvbmRzKCkgPj0gOTkwKSB7XG4gICAgZHVyYXRpb24uYWRkKDEwMDAgLSBkdXJhdGlvbi5taWxsaXNlY29uZHMoKSwgJ21zJyk7XG4gIH1cbiAgLy8gZml4IDU5IHNcbiAgaWYgKGR1cmF0aW9uLnNlY29uZHMoKSA+PSA1OSkge1xuICAgIGR1cmF0aW9uLmFkZCg2MCAtIGR1cmF0aW9uLnNlY29uZHMoKSwgJ3MnKTtcbiAgfVxuXG4gIHJldHVybiBkdXJhdGlvbjtcbn1cbiJdfQ==
@@ -95,4 +95,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImpor
95
95
  ]
96
96
  }]
97
97
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.KeyboardService }] });
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2ZvY3VzLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL2RpcmVjdGl2ZXMvYXV0b2ZvY3VzLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsT0FBTyxFQUFtQixTQUFTLEVBQWtELE1BQU0sZUFBZSxDQUFDO0FBQzNHLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDdEMsT0FBTyxFQUFlLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQzs7O0FBR3pDLHlGQUF5RjtBQUN6Rix5RkFBeUY7QUFFekYsTUFBTSxnQkFBZ0IsR0FBRyxHQUFHLENBQUM7QUFTN0IsTUFBTSxPQUFPLGtCQUFrQjtJQVVWO0lBQ0E7SUFUWixrQkFBa0IsQ0FBTTtJQUN4QixVQUFVLENBQVM7SUFFVCxPQUFPLENBQVU7SUFDMUIsTUFBTSxHQUFpQixJQUFJLENBQUM7SUFFcEMsd0NBQXdDO0lBQ3hDLFlBQ21CLFdBQXVCLEVBQ3ZCLFFBQXlCO1FBRHpCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBRTFDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDbkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxnQkFBZ0IsQ0FBQztRQUNuQyxJQUFJLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsb0VBQW9FO0lBQ3BFLGtCQUFrQjtRQUVoQiw0RUFBNEU7UUFDNUUsK0VBQStFO1FBQy9FLDZFQUE2RTtRQUM3RSxpRkFBaUY7UUFDakYsSUFBSyxJQUFJLENBQUMsa0JBQWtCLEtBQUssRUFBRSxFQUFFO1lBQ25DLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUNwQjtJQUNILENBQUM7SUFFRCwwREFBMEQ7SUFDMUQsV0FBVyxDQUFFLE9BQXNCO1FBRWpDLDBFQUEwRTtRQUMxRSx5RUFBeUU7UUFDekUsNEVBQTRFO1FBQzVFLElBQUssQ0FBQyxPQUFPLENBQUMsY0FBYyxJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFFLE9BQU0sQ0FBRSxJQUFJLENBQUMsVUFBVSxDQUFFLEtBQUssUUFBUSxDQUFFLEVBQUc7WUFFbEcseURBQXlEO1lBQ3pELElBQUssS0FBSyxDQUFFLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFFLEVBQUc7Z0JBQ2pELElBQUksQ0FBQyxVQUFVLEdBQUcsZ0JBQWdCLENBQUM7YUFDcEM7U0FDRjtRQUVELDRFQUE0RTtRQUM1RSxnRkFBZ0Y7UUFDaEYsNkVBQTZFO1FBQzdFLElBQUssT0FBTyxDQUFDLFlBQVksSUFBSSxPQUFPLENBQUMsa0JBQWtCLEVBQUc7WUFFeEQsSUFBSSxJQUFJLENBQUMsa0JBQWtCO2dCQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQzs7Z0JBQzNDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUNuQjtJQUNILENBQUM7SUFFRCwyREFBMkQ7SUFDM0QsV0FBVztRQUNULElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNmLENBQUM7SUFFRCw4QkFBOEI7SUFFOUIsd0VBQXdFO0lBQ2hFLFdBQVc7UUFFakIsc0NBQXNDO1FBQ3RDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPO1lBQUUsT0FBTztRQUVsQywrRUFBK0U7UUFDL0UsK0VBQStFO1FBQy9FLDBCQUEwQjtRQUMxQixJQUFLLElBQUksQ0FBQyxNQUFNO1lBQUksT0FBTztRQUUzQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO2FBQ2pDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQ2YsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNiLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO2FBQ3hDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsdUVBQXVFO0lBQy9ELEtBQUs7UUFDWCxJQUFJLENBQUMsTUFBTSxFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO0lBQ3JCLENBQUM7dUdBdEZVLGtCQUFrQjsyRkFBbEIsa0JBQWtCOzsyRkFBbEIsa0JBQWtCO2tCQVA5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxrQ0FBa0M7b0JBQzVDLE1BQU0sRUFBRTt3QkFDTixrQ0FBa0M7d0JBQ2xDLDRCQUE0QjtxQkFDN0I7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBJbXBvcnQgdGhlIGNvcmUgYW5ndWxhciBzZXJ2aWNlcy5cbmltcG9ydCB7QWZ0ZXJDb250ZW50SW5pdCwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgU2ltcGxlQ2hhbmdlc30gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2lzTW9iaWxlfSBmcm9tICcuLi9wbGF0Zm9ybXMnO1xuaW1wb3J0IHtTdWJzY3JpcHRpb24sIHRpbWVyfSBmcm9tICdyeGpzJztcbmltcG9ydCB7S2V5Ym9hcmRTZXJ2aWNlfSBmcm9tICcuLi9jYXBhY2l0b3Iva2V5Ym9hcmQnO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAvL1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLy9cblxuY29uc3QgQkFTRV9USU1FUl9ERUxBWSA9IDEwMDtcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2F1dG9mb2N1c10sIGlucHV0W2FwcEF1dG9mb2N1c10nLFxuICBpbnB1dHM6IFtcbiAgICAnc2hvdWxkRm9jdXNFbGVtZW50OiBhcHBBdXRvZm9jdXMnLFxuICAgICd0aW1lckRlbGF5OiBhdXRvZm9jdXNEZWxheSdcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBBdXRvZm9jdXNEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG5cbiAgcHVibGljIHNob3VsZEZvY3VzRWxlbWVudDogYW55O1xuICBwdWJsaWMgdGltZXJEZWxheTogbnVtYmVyO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX21vYmlsZTogYm9vbGVhbjtcbiAgcHJpdmF0ZSBfdGltZXI6IFN1YnNjcmlwdGlvbiA9IG51bGw7XG5cbiAgLy8gSSBpbml0aWFsaXplIHRoZSBhdXRvZm9jdXMgZGlyZWN0aXZlLlxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkga2V5Ym9hcmQ6IEtleWJvYXJkU2VydmljZSkge1xuXG4gICAgdGhpcy5zaG91bGRGb2N1c0VsZW1lbnQgPSAnJztcbiAgICB0aGlzLl90aW1lciA9IG51bGw7XG4gICAgdGhpcy50aW1lckRlbGF5ID0gQkFTRV9USU1FUl9ERUxBWTtcbiAgICB0aGlzLl9tb2JpbGUgPSBpc01vYmlsZSh3aW5kb3cpO1xuICB9XG5cbiAgLy8gSSBnZXQgY2FsbGVkIG9uY2UgYWZ0ZXIgdGhlIGNvbnRlbnRzIGhhdmUgYmVlbiBmdWxseSBpbml0aWFsaXplZC5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuXG4gICAgLy8gQmVjYXVzZSB0aGlzIGRpcmVjdGl2ZSBjYW4gYWN0IG9uIHRoZSBzdGFuZC1vbmx5IFwiYXV0b2ZvY3VzXCIgYXR0cmlidXRlIG9yXG4gICAgLy8gdGhlIG1vcmUgc3BlY2lhbGl6ZWQgXCJhcHBBdXRvZm9jdXNcIiBwcm9wZXJ0eSwgd2UgbmVlZCB0byBjaGVjayB0byBzZWUgaWYgdGhlXG4gICAgLy8gXCJzaG91bGRGb2N1c0VsZW1lbnRcIiBpbnB1dCBwcm9wZXJ0eSBpcyB0aGUgZW1wdHkgc3RyaW5nLiBUaGlzIHdpbGwgc2lnbmlmeVxuICAgIC8vIHRoYXQgdGhlIGZvY3VzIGl0IG5vdCBiZWluZyBkYXRhLWRyaXZlbiBhbmQgc2hvdWxkIGJlIHBlcmZvcm1lZCBhdXRvbWF0aWNhbGx5LlxuICAgIGlmICggdGhpcy5zaG91bGRGb2N1c0VsZW1lbnQgPT09ICcnKSB7XG4gICAgICB0aGlzLl9zdGFydEZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgLy8gSSBnZXQgY2FsbGVkIGV2ZXJ5IHRpbWUgdGhlIGlucHV0IGJpbmRpbmdzIGFyZSB1cGRhdGVkLlxuICBuZ09uQ2hhbmdlcyggY2hhbmdlczogU2ltcGxlQ2hhbmdlcyApIHtcblxuICAgIC8vIElmIHRoZSB0aW1lciBkZWxheSBpcyBiZWluZyBwYXNzZWQtaW4gYXMgYSBzdHJpbmcgKGllLCBzb21lb25lIGlzIHVzaW5nXG4gICAgLy8gYXR0cmlidXRlLWlucHV0IHN5bnRheCwgbm90IHByb3BlcnR5LWlucHV0IHN5bnRheCksIGxldCdzIGNvYWxlc2NlIHRoZVxuICAgIC8vIGF0dHJpYnV0ZSB0byBhIG51bWVyaWMgdmFsdWUgc28gdGhhdCBvdXIgdHlwZS1hbm5vdGF0aW9ucyBhcmUgY29uc2lzdGVudC5cbiAgICBpZiAoIChjaGFuZ2VzLmF1dG9mb2N1c0RlbGF5IHx8IGNoYW5nZXMudGltZXJEZWxheSkgJiYgKCB0eXBlb2YoIHRoaXMudGltZXJEZWxheSApICE9PSAnbnVtYmVyJyApICkge1xuXG4gICAgICAvLyBJZiB0aGUgY29hbGVzY2UgZmFpbHMsIGp1c3QgZmFsbC1iYWNrIHRvIGEgc2FuZSB2YWx1ZS5cbiAgICAgIGlmICggaXNOYU4oIHRoaXMudGltZXJEZWxheSA9ICt0aGlzLnRpbWVyRGVsYXkgKSApIHtcbiAgICAgICAgdGhpcy50aW1lckRlbGF5ID0gQkFTRV9USU1FUl9ERUxBWTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJZiB0aGUgZm9jdXMgaW5wdXQgaXMgYmVpbmcgZGF0YS1kcml2ZW4sIHRoZW4gd2UgZWl0aGVyIG5lZWQgdG8gc3RhcnQgdGhlXG4gICAgLy8gZm9jdXMgd29ya2Zsb3cgaWYgZm9jdXMgaXMgcmVxdWlyZWQ7IG9yLCBjbGVhciBhbnkgZXhpc3Rpbmcgd29ya2Zsb3cgaWYgZm9jdXNcbiAgICAvLyBpcyBubyBsb25nZXIgcmVxdWlyZWQgKHNvIHRoYXQgd2UgZG9uJ3Qgc3RlYWwgZm9jdXMgZnJvbSBhbm90aGVyIGVsZW1lbnQpLlxuICAgIGlmICggY2hhbmdlcy5hcHBBdXRvZm9jdXMgfHwgY2hhbmdlcy5zaG91bGRGb2N1c0VsZW1lbnQgKSB7XG5cbiAgICAgIGlmICh0aGlzLnNob3VsZEZvY3VzRWxlbWVudCkgdGhpcy5fc3RhcnRGb2N1cygpO1xuICAgICAgZWxzZSB0aGlzLl9zdG9wKCk7XG4gICAgfVxuICB9XG5cbiAgLy8gSSBnZXQgY2FsbGVkIG9uY2Ugd2hlbiB0aGUgZGlyZWN0aXZlIGlzIGJlaW5nIHVubW91bnRlZC5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fc3RvcCgpO1xuICB9XG5cbiAgLyogLS0tIHByaXZhdGUgZnVuY3Rpb25zIC0tICovXG5cbiAgLy8gSSBzdGFydCB0aGUgdGltZXItYmFzZWQgd29ya2Zsb3cgdGhhdCB3aWxsIGZvY3VzIHRoZSBjdXJyZW50IGVsZW1lbnQuXG4gIHByaXZhdGUgX3N0YXJ0Rm9jdXMoKSB7XG5cbiAgICAvLyBTa2lwIGZvY3VzIHdoZW4ga2V5Ym9hcmQgaXMgdmlzaWJsZVxuICAgIGlmICh0aGlzLmtleWJvYXJkLnZpc2libGUpIHJldHVybjtcblxuICAgIC8vIElmIHRoZXJlIGlzIGFscmVhZHkgYSB0aW1lciBydW5uaW5nIGZvciB0aGlzIGVsZW1lbnQsIGp1c3QgbGV0IGl0IHBsYXkgb3V0IC1cbiAgICAvLyByZXNldHRpbmcgaXQgYXQgdGhpcyBwb2ludCB3aWxsIG9ubHkgcHVzaC1vdXQgdGhlIHRpbWUgYXQgd2hpY2ggdGhlIGZvY3VzIGlzXG4gICAgLy8gYXBwbGllZCB0byB0aGUgZWxlbWVudC5cbiAgICBpZiAoIHRoaXMuX3RpbWVyICkgIHJldHVybjtcblxuICAgIHRoaXMuX3RpbWVyID0gdGltZXIodGhpcy50aW1lckRlbGF5KVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLl90aW1lcikge1xuICAgICAgICAgIHRoaXMuX3N0b3AoKTtcbiAgICAgICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICAvLyBJIHN0b3AgdGhlIHRpbWVyLWJhc2VkIHdvcmtmbG93LCBwcmV2ZW50aW5nIGZvY3VzIGZyb20gdGFraW5nIHBsYWNlLlxuICBwcml2YXRlIF9zdG9wKCkge1xuICAgIHRoaXMuX3RpbWVyPy51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuX3RpbWVyID0gbnVsbDtcbiAgfVxuXG59XG4iXX0=
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2ZvY3VzLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL2RpcmVjdGl2ZXMvYXV0b2ZvY3VzLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsT0FBTyxFQUFtQixTQUFTLEVBQWtELE1BQU0sZUFBZSxDQUFDO0FBQzNHLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDdEMsT0FBTyxFQUFlLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQzs7O0FBR3pDLHlGQUF5RjtBQUN6Rix5RkFBeUY7QUFFekYsTUFBTSxnQkFBZ0IsR0FBRyxHQUFHLENBQUM7QUFTN0IsTUFBTSxPQUFPLGtCQUFrQjtJQVVWO0lBQ0E7SUFUWixrQkFBa0IsQ0FBTTtJQUN4QixVQUFVLENBQVM7SUFFVCxPQUFPLENBQVU7SUFDMUIsTUFBTSxHQUFpQixJQUFJLENBQUM7SUFFcEMsd0NBQXdDO0lBQ3hDLFlBQ21CLFdBQXVCLEVBQ3ZCLFFBQXlCO1FBRHpCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBRTFDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDbkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxnQkFBZ0IsQ0FBQztRQUNuQyxJQUFJLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsb0VBQW9FO0lBQ3BFLGtCQUFrQjtRQUVoQiw0RUFBNEU7UUFDNUUsK0VBQStFO1FBQy9FLDZFQUE2RTtRQUM3RSxpRkFBaUY7UUFDakYsSUFBSyxJQUFJLENBQUMsa0JBQWtCLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDcEMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3JCLENBQUM7SUFDSCxDQUFDO0lBRUQsMERBQTBEO0lBQzFELFdBQVcsQ0FBRSxPQUFzQjtRQUVqQywwRUFBMEU7UUFDMUUseUVBQXlFO1FBQ3pFLDRFQUE0RTtRQUM1RSxJQUFLLENBQUMsT0FBTyxDQUFDLGNBQWMsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBRSxPQUFNLENBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBRSxLQUFLLFFBQVEsQ0FBRSxFQUFHLENBQUM7WUFFbkcseURBQXlEO1lBQ3pELElBQUssS0FBSyxDQUFFLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFFLEVBQUcsQ0FBQztnQkFDbEQsSUFBSSxDQUFDLFVBQVUsR0FBRyxnQkFBZ0IsQ0FBQztZQUNyQyxDQUFDO1FBQ0gsQ0FBQztRQUVELDRFQUE0RTtRQUM1RSxnRkFBZ0Y7UUFDaEYsNkVBQTZFO1FBQzdFLElBQUssT0FBTyxDQUFDLFlBQVksSUFBSSxPQUFPLENBQUMsa0JBQWtCLEVBQUcsQ0FBQztZQUV6RCxJQUFJLElBQUksQ0FBQyxrQkFBa0I7Z0JBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDOztnQkFDM0MsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3BCLENBQUM7SUFDSCxDQUFDO0lBRUQsMkRBQTJEO0lBQzNELFdBQVc7UUFDVCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDZixDQUFDO0lBRUQsOEJBQThCO0lBRTlCLHdFQUF3RTtJQUNoRSxXQUFXO1FBRWpCLHNDQUFzQztRQUN0QyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTztZQUFFLE9BQU87UUFFbEMsK0VBQStFO1FBQy9FLCtFQUErRTtRQUMvRSwwQkFBMEI7UUFDMUIsSUFBSyxJQUFJLENBQUMsTUFBTTtZQUFJLE9BQU87UUFFM0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQzthQUNqQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQ2hCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDYixJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUN6QyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsdUVBQXVFO0lBQy9ELEtBQUs7UUFDWCxJQUFJLENBQUMsTUFBTSxFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO0lBQ3JCLENBQUM7dUdBdEZVLGtCQUFrQjsyRkFBbEIsa0JBQWtCOzsyRkFBbEIsa0JBQWtCO2tCQVA5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxrQ0FBa0M7b0JBQzVDLE1BQU0sRUFBRTt3QkFDTixrQ0FBa0M7d0JBQ2xDLDRCQUE0QjtxQkFDN0I7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBJbXBvcnQgdGhlIGNvcmUgYW5ndWxhciBzZXJ2aWNlcy5cbmltcG9ydCB7QWZ0ZXJDb250ZW50SW5pdCwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgU2ltcGxlQ2hhbmdlc30gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2lzTW9iaWxlfSBmcm9tICcuLi9wbGF0Zm9ybXMnO1xuaW1wb3J0IHtTdWJzY3JpcHRpb24sIHRpbWVyfSBmcm9tICdyeGpzJztcbmltcG9ydCB7S2V5Ym9hcmRTZXJ2aWNlfSBmcm9tICcuLi9jYXBhY2l0b3Iva2V5Ym9hcmQnO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAvL1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLy9cblxuY29uc3QgQkFTRV9USU1FUl9ERUxBWSA9IDEwMDtcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2F1dG9mb2N1c10sIGlucHV0W2FwcEF1dG9mb2N1c10nLFxuICBpbnB1dHM6IFtcbiAgICAnc2hvdWxkRm9jdXNFbGVtZW50OiBhcHBBdXRvZm9jdXMnLFxuICAgICd0aW1lckRlbGF5OiBhdXRvZm9jdXNEZWxheSdcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBBdXRvZm9jdXNEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG5cbiAgcHVibGljIHNob3VsZEZvY3VzRWxlbWVudDogYW55O1xuICBwdWJsaWMgdGltZXJEZWxheTogbnVtYmVyO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX21vYmlsZTogYm9vbGVhbjtcbiAgcHJpdmF0ZSBfdGltZXI6IFN1YnNjcmlwdGlvbiA9IG51bGw7XG5cbiAgLy8gSSBpbml0aWFsaXplIHRoZSBhdXRvZm9jdXMgZGlyZWN0aXZlLlxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkga2V5Ym9hcmQ6IEtleWJvYXJkU2VydmljZSkge1xuXG4gICAgdGhpcy5zaG91bGRGb2N1c0VsZW1lbnQgPSAnJztcbiAgICB0aGlzLl90aW1lciA9IG51bGw7XG4gICAgdGhpcy50aW1lckRlbGF5ID0gQkFTRV9USU1FUl9ERUxBWTtcbiAgICB0aGlzLl9tb2JpbGUgPSBpc01vYmlsZSh3aW5kb3cpO1xuICB9XG5cbiAgLy8gSSBnZXQgY2FsbGVkIG9uY2UgYWZ0ZXIgdGhlIGNvbnRlbnRzIGhhdmUgYmVlbiBmdWxseSBpbml0aWFsaXplZC5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuXG4gICAgLy8gQmVjYXVzZSB0aGlzIGRpcmVjdGl2ZSBjYW4gYWN0IG9uIHRoZSBzdGFuZC1vbmx5IFwiYXV0b2ZvY3VzXCIgYXR0cmlidXRlIG9yXG4gICAgLy8gdGhlIG1vcmUgc3BlY2lhbGl6ZWQgXCJhcHBBdXRvZm9jdXNcIiBwcm9wZXJ0eSwgd2UgbmVlZCB0byBjaGVjayB0byBzZWUgaWYgdGhlXG4gICAgLy8gXCJzaG91bGRGb2N1c0VsZW1lbnRcIiBpbnB1dCBwcm9wZXJ0eSBpcyB0aGUgZW1wdHkgc3RyaW5nLiBUaGlzIHdpbGwgc2lnbmlmeVxuICAgIC8vIHRoYXQgdGhlIGZvY3VzIGl0IG5vdCBiZWluZyBkYXRhLWRyaXZlbiBhbmQgc2hvdWxkIGJlIHBlcmZvcm1lZCBhdXRvbWF0aWNhbGx5LlxuICAgIGlmICggdGhpcy5zaG91bGRGb2N1c0VsZW1lbnQgPT09ICcnKSB7XG4gICAgICB0aGlzLl9zdGFydEZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgLy8gSSBnZXQgY2FsbGVkIGV2ZXJ5IHRpbWUgdGhlIGlucHV0IGJpbmRpbmdzIGFyZSB1cGRhdGVkLlxuICBuZ09uQ2hhbmdlcyggY2hhbmdlczogU2ltcGxlQ2hhbmdlcyApIHtcblxuICAgIC8vIElmIHRoZSB0aW1lciBkZWxheSBpcyBiZWluZyBwYXNzZWQtaW4gYXMgYSBzdHJpbmcgKGllLCBzb21lb25lIGlzIHVzaW5nXG4gICAgLy8gYXR0cmlidXRlLWlucHV0IHN5bnRheCwgbm90IHByb3BlcnR5LWlucHV0IHN5bnRheCksIGxldCdzIGNvYWxlc2NlIHRoZVxuICAgIC8vIGF0dHJpYnV0ZSB0byBhIG51bWVyaWMgdmFsdWUgc28gdGhhdCBvdXIgdHlwZS1hbm5vdGF0aW9ucyBhcmUgY29uc2lzdGVudC5cbiAgICBpZiAoIChjaGFuZ2VzLmF1dG9mb2N1c0RlbGF5IHx8IGNoYW5nZXMudGltZXJEZWxheSkgJiYgKCB0eXBlb2YoIHRoaXMudGltZXJEZWxheSApICE9PSAnbnVtYmVyJyApICkge1xuXG4gICAgICAvLyBJZiB0aGUgY29hbGVzY2UgZmFpbHMsIGp1c3QgZmFsbC1iYWNrIHRvIGEgc2FuZSB2YWx1ZS5cbiAgICAgIGlmICggaXNOYU4oIHRoaXMudGltZXJEZWxheSA9ICt0aGlzLnRpbWVyRGVsYXkgKSApIHtcbiAgICAgICAgdGhpcy50aW1lckRlbGF5ID0gQkFTRV9USU1FUl9ERUxBWTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJZiB0aGUgZm9jdXMgaW5wdXQgaXMgYmVpbmcgZGF0YS1kcml2ZW4sIHRoZW4gd2UgZWl0aGVyIG5lZWQgdG8gc3RhcnQgdGhlXG4gICAgLy8gZm9jdXMgd29ya2Zsb3cgaWYgZm9jdXMgaXMgcmVxdWlyZWQ7IG9yLCBjbGVhciBhbnkgZXhpc3Rpbmcgd29ya2Zsb3cgaWYgZm9jdXNcbiAgICAvLyBpcyBubyBsb25nZXIgcmVxdWlyZWQgKHNvIHRoYXQgd2UgZG9uJ3Qgc3RlYWwgZm9jdXMgZnJvbSBhbm90aGVyIGVsZW1lbnQpLlxuICAgIGlmICggY2hhbmdlcy5hcHBBdXRvZm9jdXMgfHwgY2hhbmdlcy5zaG91bGRGb2N1c0VsZW1lbnQgKSB7XG5cbiAgICAgIGlmICh0aGlzLnNob3VsZEZvY3VzRWxlbWVudCkgdGhpcy5fc3RhcnRGb2N1cygpO1xuICAgICAgZWxzZSB0aGlzLl9zdG9wKCk7XG4gICAgfVxuICB9XG5cbiAgLy8gSSBnZXQgY2FsbGVkIG9uY2Ugd2hlbiB0aGUgZGlyZWN0aXZlIGlzIGJlaW5nIHVubW91bnRlZC5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fc3RvcCgpO1xuICB9XG5cbiAgLyogLS0tIHByaXZhdGUgZnVuY3Rpb25zIC0tICovXG5cbiAgLy8gSSBzdGFydCB0aGUgdGltZXItYmFzZWQgd29ya2Zsb3cgdGhhdCB3aWxsIGZvY3VzIHRoZSBjdXJyZW50IGVsZW1lbnQuXG4gIHByaXZhdGUgX3N0YXJ0Rm9jdXMoKSB7XG5cbiAgICAvLyBTa2lwIGZvY3VzIHdoZW4ga2V5Ym9hcmQgaXMgdmlzaWJsZVxuICAgIGlmICh0aGlzLmtleWJvYXJkLnZpc2libGUpIHJldHVybjtcblxuICAgIC8vIElmIHRoZXJlIGlzIGFscmVhZHkgYSB0aW1lciBydW5uaW5nIGZvciB0aGlzIGVsZW1lbnQsIGp1c3QgbGV0IGl0IHBsYXkgb3V0IC1cbiAgICAvLyByZXNldHRpbmcgaXQgYXQgdGhpcyBwb2ludCB3aWxsIG9ubHkgcHVzaC1vdXQgdGhlIHRpbWUgYXQgd2hpY2ggdGhlIGZvY3VzIGlzXG4gICAgLy8gYXBwbGllZCB0byB0aGUgZWxlbWVudC5cbiAgICBpZiAoIHRoaXMuX3RpbWVyICkgIHJldHVybjtcblxuICAgIHRoaXMuX3RpbWVyID0gdGltZXIodGhpcy50aW1lckRlbGF5KVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLl90aW1lcikge1xuICAgICAgICAgIHRoaXMuX3N0b3AoKTtcbiAgICAgICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICAvLyBJIHN0b3AgdGhlIHRpbWVyLWJhc2VkIHdvcmtmbG93LCBwcmV2ZW50aW5nIGZvY3VzIGZyb20gdGFraW5nIHBsYWNlLlxuICBwcml2YXRlIF9zdG9wKCkge1xuICAgIHRoaXMuX3RpbWVyPy51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuX3RpbWVyID0gbnVsbDtcbiAgfVxuXG59XG4iXX0=
@@ -29,4 +29,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImpor
29
29
  type: Inject,
30
30
  args: [ElementRef]
31
31
  }] }] });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b3RpdGxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL2RpcmVjdGl2ZXMvYXV0b3RpdGxlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUVuRixNQUFNLGtCQUFrQixHQUFHLENBQUMsV0FBVyxFQUFFLFdBQVcsQ0FBQyxDQUFDO0FBS3RELE1BQU0sT0FBTyxrQkFBa0I7SUFHb0I7SUFGaEMsT0FBTyxDQUFjO0lBRXRDLFlBQWlELFVBQW1DO1FBQW5DLGVBQVUsR0FBVixVQUFVLENBQXlCO1FBQ2xGLHVCQUF1QjtRQUN2QixJQUFJLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxXQUFXLEVBQUUsQ0FBQyxFQUFFO1lBQ2hGLElBQUksQ0FBQyxPQUFPLEdBQUcsVUFBVSxDQUFDLGFBQWEsQ0FBQztTQUN6QztJQUNILENBQUM7SUFFRCxxQkFBcUI7UUFDbkIsNEJBQTRCO1FBQzVCLElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRTtZQUNuRSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQztTQUMvQztJQUNILENBQUM7dUdBZlUsa0JBQWtCLGtCQUdULFVBQVU7MkZBSG5CLGtCQUFrQjs7MkZBQWxCLGtCQUFrQjtrQkFIOUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2lCQUMzQjs7MEJBSWMsTUFBTTsyQkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJDb250ZW50Q2hlY2tlZCwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuY29uc3QgY29tcGF0aWJsZVRhZ05hbWVzID0gWydpb24tbGFiZWwnLCAnbWF0LWxhYmVsJ107XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1thcHBBdXRvVGl0bGVdJyxcbn0pXG5leHBvcnQgY2xhc3MgQXV0b1RpdGxlRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJDb250ZW50Q2hlY2tlZCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudDogSFRNTEVsZW1lbnQ7XG5cbiAgY29uc3RydWN0b3IoQEluamVjdChFbGVtZW50UmVmKSBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KSB7XG4gICAgLy8gQ2hlY2sgY29tcGF0aWJsZSB0YWdcbiAgICBpZiAoY29tcGF0aWJsZVRhZ05hbWVzLmluY2x1ZGVzKGVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC50YWdOYW1lPy50b0xvd2VyQ2FzZSgpKSkge1xuICAgICAgdGhpcy5lbGVtZW50ID0gZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50Q2hlY2tlZCgpOiB2b2lkIHtcbiAgICAvLyBVcGRhdGUgdGl0bGUgaWYgZGlmZmVyZW50XG4gICAgaWYgKHRoaXMuZWxlbWVudCAmJiB0aGlzLmVsZW1lbnQudGl0bGUgIT09IHRoaXMuZWxlbWVudC50ZXh0Q29udGVudCkge1xuICAgICAgdGhpcy5lbGVtZW50LnRpdGxlID0gdGhpcy5lbGVtZW50LnRleHRDb250ZW50O1xuICAgIH1cbiAgfVxufVxuIl19
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b3RpdGxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL2RpcmVjdGl2ZXMvYXV0b3RpdGxlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUVuRixNQUFNLGtCQUFrQixHQUFHLENBQUMsV0FBVyxFQUFFLFdBQVcsQ0FBQyxDQUFDO0FBS3RELE1BQU0sT0FBTyxrQkFBa0I7SUFHb0I7SUFGaEMsT0FBTyxDQUFjO0lBRXRDLFlBQWlELFVBQW1DO1FBQW5DLGVBQVUsR0FBVixVQUFVLENBQXlCO1FBQ2xGLHVCQUF1QjtRQUN2QixJQUFJLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxXQUFXLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDakYsSUFBSSxDQUFDLE9BQU8sR0FBRyxVQUFVLENBQUMsYUFBYSxDQUFDO1FBQzFDLENBQUM7SUFDSCxDQUFDO0lBRUQscUJBQXFCO1FBQ25CLDRCQUE0QjtRQUM1QixJQUFJLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNwRSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQztRQUNoRCxDQUFDO0lBQ0gsQ0FBQzt1R0FmVSxrQkFBa0Isa0JBR1QsVUFBVTsyRkFIbkIsa0JBQWtCOzsyRkFBbEIsa0JBQWtCO2tCQUg5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7aUJBQzNCOzswQkFJYyxNQUFNOzJCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlckNvbnRlbnRDaGVja2VkLCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5jb25zdCBjb21wYXRpYmxlVGFnTmFtZXMgPSBbJ2lvbi1sYWJlbCcsICdtYXQtbGFiZWwnXTtcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2FwcEF1dG9UaXRsZV0nLFxufSlcbmV4cG9ydCBjbGFzcyBBdXRvVGl0bGVEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRDaGVja2VkIHtcbiAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50OiBIVE1MRWxlbWVudDtcblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4pIHtcbiAgICAvLyBDaGVjayBjb21wYXRpYmxlIHRhZ1xuICAgIGlmIChjb21wYXRpYmxlVGFnTmFtZXMuaW5jbHVkZXMoZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnRhZ05hbWU/LnRvTG93ZXJDYXNlKCkpKSB7XG4gICAgICB0aGlzLmVsZW1lbnQgPSBlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRDaGVja2VkKCk6IHZvaWQge1xuICAgIC8vIFVwZGF0ZSB0aXRsZSBpZiBkaWZmZXJlbnRcbiAgICBpZiAodGhpcy5lbGVtZW50ICYmIHRoaXMuZWxlbWVudC50aXRsZSAhPT0gdGhpcy5lbGVtZW50LnRleHRDb250ZW50KSB7XG4gICAgICB0aGlzLmVsZW1lbnQudGl0bGUgPSB0aGlzLmVsZW1lbnQudGV4dENvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -49,4 +49,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImpor
49
49
  type: HostListener,
50
50
  args: ['drop', ['$event']]
51
51
  }] } });
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1hbmQtZHJvcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NoYXJlZC9kaXJlY3RpdmVzL2RyYWctYW5kLWRyb3AuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNGLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxjQUFjLENBQUM7O0FBVzdDLE1BQU0sT0FBTyxvQkFBb0I7SUFFQSxRQUFRLENBQVU7SUFFdkMsV0FBVyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7SUFFbkQsb0JBQW9CO0lBRXBCLFVBQVUsQ0FBQyxLQUFZO1FBQ3JCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7SUFDdkIsQ0FBQztJQUVELHFCQUFxQjtJQUVkLFdBQVcsQ0FBQyxLQUFZO1FBQzdCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDeEIsQ0FBQztJQUVELGdCQUFnQjtJQUVULE1BQU0sQ0FBQyxLQUFnQjtRQUM1QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxZQUFZLEVBQUUsS0FBSyxDQUFDO1FBRXhDLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzlCO0lBQ0gsQ0FBQzt1R0FqQ1Usb0JBQW9COzJGQUFwQixvQkFBb0I7OzJGQUFwQixvQkFBb0I7a0JBSGhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtpQkFDN0I7OEJBR2dDLFFBQVE7c0JBQXRDLFdBQVc7dUJBQUMsZ0JBQWdCO2dCQUVuQixXQUFXO3NCQUFwQixNQUFNO2dCQUlQLFVBQVU7c0JBRFQsWUFBWTt1QkFBQyxVQUFVLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBUzdCLFdBQVc7c0JBRGpCLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVM5QixNQUFNO3NCQURaLFlBQVk7dUJBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBIb3N0TGlzdGVuZXIsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtpc05vdEVtcHR5QXJyYXl9IGZyb20gJy4uL2Z1bmN0aW9ucyc7XG5cbmludGVyZmFjZSBEcm9wRXZlbnQgZXh0ZW5kcyBFdmVudCB7XG4gIGRhdGFUcmFuc2Zlcj86IHtcbiAgICBmaWxlcz86IEZpbGVbXTtcbiAgfTtcbn1cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2FwcERyYWdBbmREcm9wXScsXG59KVxuZXhwb3J0IGNsYXNzIERyYWdBbmREcm9wRGlyZWN0aXZlIHtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZpbGVvdmVyJykgZmlsZU92ZXI6IGJvb2xlYW47XG5cbiAgQE91dHB1dCgpIGZpbGVEcm9wcGVkID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlW10+KCk7XG5cbiAgLy8gRHJhZ292ZXIgbGlzdGVuZXJcbiAgQEhvc3RMaXN0ZW5lcignZHJhZ292ZXInLCBbJyRldmVudCddKVxuICBvbkRyYWdPdmVyKGV2ZW50OiBFdmVudCkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5maWxlT3ZlciA9IHRydWU7XG4gIH1cblxuICAvLyBEcmFnbGVhdmUgbGlzdGVuZXJcbiAgQEhvc3RMaXN0ZW5lcignZHJhZ2xlYXZlJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uRHJhZ0xlYXZlKGV2ZW50OiBFdmVudCkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5maWxlT3ZlciA9IGZhbHNlO1xuICB9XG5cbiAgLy8gRHJvcCBsaXN0ZW5lclxuICBASG9zdExpc3RlbmVyKCdkcm9wJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uZHJvcChldmVudDogRHJvcEV2ZW50KSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmZpbGVPdmVyID0gZmFsc2U7XG4gICAgY29uc3QgZmlsZXMgPSBldmVudC5kYXRhVHJhbnNmZXI/LmZpbGVzO1xuXG4gICAgaWYgKGlzTm90RW1wdHlBcnJheShmaWxlcykpIHtcbiAgICAgIHRoaXMuZmlsZURyb3BwZWQuZW1pdChmaWxlcyk7XG4gICAgfVxuICB9XG59XG4iXX0=
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1hbmQtZHJvcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NoYXJlZC9kaXJlY3RpdmVzL2RyYWctYW5kLWRyb3AuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNGLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxjQUFjLENBQUM7O0FBVzdDLE1BQU0sT0FBTyxvQkFBb0I7SUFFQSxRQUFRLENBQVU7SUFFdkMsV0FBVyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7SUFFbkQsb0JBQW9CO0lBRXBCLFVBQVUsQ0FBQyxLQUFZO1FBQ3JCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7SUFDdkIsQ0FBQztJQUVELHFCQUFxQjtJQUVkLFdBQVcsQ0FBQyxLQUFZO1FBQzdCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDeEIsQ0FBQztJQUVELGdCQUFnQjtJQUVULE1BQU0sQ0FBQyxLQUFnQjtRQUM1QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxZQUFZLEVBQUUsS0FBSyxDQUFDO1FBRXhDLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDM0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDL0IsQ0FBQztJQUNILENBQUM7dUdBakNVLG9CQUFvQjsyRkFBcEIsb0JBQW9COzsyRkFBcEIsb0JBQW9CO2tCQUhoQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxrQkFBa0I7aUJBQzdCOzhCQUdnQyxRQUFRO3NCQUF0QyxXQUFXO3VCQUFDLGdCQUFnQjtnQkFFbkIsV0FBVztzQkFBcEIsTUFBTTtnQkFJUCxVQUFVO3NCQURULFlBQVk7dUJBQUMsVUFBVSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVM3QixXQUFXO3NCQURqQixZQUFZO3VCQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFTOUIsTUFBTTtzQkFEWixZQUFZO3VCQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSG9zdExpc3RlbmVyLCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7aXNOb3RFbXB0eUFycmF5fSBmcm9tICcuLi9mdW5jdGlvbnMnO1xuXG5pbnRlcmZhY2UgRHJvcEV2ZW50IGV4dGVuZHMgRXZlbnQge1xuICBkYXRhVHJhbnNmZXI/OiB7XG4gICAgZmlsZXM/OiBGaWxlW107XG4gIH07XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1thcHBEcmFnQW5kRHJvcF0nLFxufSlcbmV4cG9ydCBjbGFzcyBEcmFnQW5kRHJvcERpcmVjdGl2ZSB7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5maWxlb3ZlcicpIGZpbGVPdmVyOiBib29sZWFuO1xuXG4gIEBPdXRwdXQoKSBmaWxlRHJvcHBlZCA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsZVtdPigpO1xuXG4gIC8vIERyYWdvdmVyIGxpc3RlbmVyXG4gIEBIb3N0TGlzdGVuZXIoJ2RyYWdvdmVyJywgWyckZXZlbnQnXSlcbiAgb25EcmFnT3ZlcihldmVudDogRXZlbnQpIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMuZmlsZU92ZXIgPSB0cnVlO1xuICB9XG5cbiAgLy8gRHJhZ2xlYXZlIGxpc3RlbmVyXG4gIEBIb3N0TGlzdGVuZXIoJ2RyYWdsZWF2ZScsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbkRyYWdMZWF2ZShldmVudDogRXZlbnQpIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMuZmlsZU92ZXIgPSBmYWxzZTtcbiAgfVxuXG4gIC8vIERyb3AgbGlzdGVuZXJcbiAgQEhvc3RMaXN0ZW5lcignZHJvcCcsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbmRyb3AoZXZlbnQ6IERyb3BFdmVudCkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5maWxlT3ZlciA9IGZhbHNlO1xuICAgIGNvbnN0IGZpbGVzID0gZXZlbnQuZGF0YVRyYW5zZmVyPy5maWxlcztcblxuICAgIGlmIChpc05vdEVtcHR5QXJyYXkoZmlsZXMpKSB7XG4gICAgICB0aGlzLmZpbGVEcm9wcGVkLmVtaXQoZmlsZXMpO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -30,4 +30,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImpor
30
30
  }], ctorParameters: () => [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }], propDecorators: { ngVar: [{
31
31
  type: Input
32
32
  }] } });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctdmFyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL2RpcmVjdGl2ZXMvbmctdmFyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBZ0MsTUFBTSxlQUFlLENBQUM7O0FBSzlFLE1BQU0sT0FBTyxjQUFjO0lBdUJmO0lBQ0E7SUF0QlYsSUFDSSxLQUFLLENBQUMsT0FBZ0I7UUFDeEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDO1FBRXRELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2pCLElBQUksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDOUQsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7U0FDckI7SUFDSCxDQUFDO0lBRU8sT0FBTyxHQUdYO1FBQ0YsU0FBUyxFQUFFLElBQUk7UUFDZixLQUFLLEVBQUUsSUFBSTtLQUNaLENBQUM7SUFFTSxPQUFPLEdBQUcsS0FBSyxDQUFDO0lBRXhCLFlBQ1UsV0FBNkIsRUFDN0IsS0FBdUI7UUFEdkIsZ0JBQVcsR0FBWCxXQUFXLENBQWtCO1FBQzdCLFVBQUssR0FBTCxLQUFLLENBQWtCO0lBQzlCLENBQUM7dUdBekJPLGNBQWM7MkZBQWQsY0FBYzs7MkZBQWQsY0FBYztrQkFIMUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsU0FBUztpQkFDcEI7K0dBSUssS0FBSztzQkFEUixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIElucHV0LCBUZW1wbGF0ZVJlZiwgVmlld0NvbnRhaW5lclJlZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tuZ1Zhcl0nLFxufSlcbmV4cG9ydCBjbGFzcyBOZ1ZhckRpcmVjdGl2ZSB7XG5cbiAgQElucHV0KClcbiAgc2V0IG5nVmFyKGNvbnRleHQ6IHVua25vd24pIHtcbiAgICB0aGlzLmNvbnRleHQuJGltcGxpY2l0ID0gdGhpcy5jb250ZXh0Lm5nVmFyID0gY29udGV4dDtcblxuICAgIGlmICghdGhpcy5oYXNWaWV3KSB7XG4gICAgICB0aGlzLnZjUmVmLmNyZWF0ZUVtYmVkZGVkVmlldyh0aGlzLnRlbXBsYXRlUmVmLCB0aGlzLmNvbnRleHQpO1xuICAgICAgdGhpcy5oYXNWaWV3ID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNvbnRleHQ6IHtcbiAgICAkaW1wbGljaXQ6IHVua25vd247XG4gICAgbmdWYXI6IHVua25vd247XG4gIH0gPSB7XG4gICAgJGltcGxpY2l0OiBudWxsLFxuICAgIG5nVmFyOiBudWxsLFxuICB9O1xuXG4gIHByaXZhdGUgaGFzVmlldyA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4sXG4gICAgcHJpdmF0ZSB2Y1JlZjogVmlld0NvbnRhaW5lclJlZlxuICApIHt9XG59XG4iXX0=
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctdmFyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL2RpcmVjdGl2ZXMvbmctdmFyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBZ0MsTUFBTSxlQUFlLENBQUM7O0FBSzlFLE1BQU0sT0FBTyxjQUFjO0lBdUJmO0lBQ0E7SUF0QlYsSUFDSSxLQUFLLENBQUMsT0FBZ0I7UUFDeEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDO1FBRXRELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUM5RCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUN0QixDQUFDO0lBQ0gsQ0FBQztJQUVPLE9BQU8sR0FHWDtRQUNGLFNBQVMsRUFBRSxJQUFJO1FBQ2YsS0FBSyxFQUFFLElBQUk7S0FDWixDQUFDO0lBRU0sT0FBTyxHQUFHLEtBQUssQ0FBQztJQUV4QixZQUNVLFdBQTZCLEVBQzdCLEtBQXVCO1FBRHZCLGdCQUFXLEdBQVgsV0FBVyxDQUFrQjtRQUM3QixVQUFLLEdBQUwsS0FBSyxDQUFrQjtJQUM5QixDQUFDO3VHQXpCTyxjQUFjOzJGQUFkLGNBQWM7OzJGQUFkLGNBQWM7a0JBSDFCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFNBQVM7aUJBQ3BCOytHQUlLLEtBQUs7c0JBRFIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBJbnB1dCwgVGVtcGxhdGVSZWYsIFZpZXdDb250YWluZXJSZWZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbbmdWYXJdJyxcbn0pXG5leHBvcnQgY2xhc3MgTmdWYXJEaXJlY3RpdmUge1xuXG4gIEBJbnB1dCgpXG4gIHNldCBuZ1Zhcihjb250ZXh0OiB1bmtub3duKSB7XG4gICAgdGhpcy5jb250ZXh0LiRpbXBsaWNpdCA9IHRoaXMuY29udGV4dC5uZ1ZhciA9IGNvbnRleHQ7XG5cbiAgICBpZiAoIXRoaXMuaGFzVmlldykge1xuICAgICAgdGhpcy52Y1JlZi5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy50ZW1wbGF0ZVJlZiwgdGhpcy5jb250ZXh0KTtcbiAgICAgIHRoaXMuaGFzVmlldyA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjb250ZXh0OiB7XG4gICAgJGltcGxpY2l0OiB1bmtub3duO1xuICAgIG5nVmFyOiB1bmtub3duO1xuICB9ID0ge1xuICAgICRpbXBsaWNpdDogbnVsbCxcbiAgICBuZ1ZhcjogbnVsbCxcbiAgfTtcblxuICBwcml2YXRlIGhhc1ZpZXcgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+LFxuICAgIHByaXZhdGUgdmNSZWY6IFZpZXdDb250YWluZXJSZWZcbiAgKSB7fVxufVxuIl19
@@ -59,4 +59,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImpor
59
59
  type: HostBinding,
60
60
  args: ['style.max-width']
61
61
  }] } });
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXphYmxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL2RpcmVjdGl2ZXMvcmVzaXphYmxlL3Jlc2l6YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NoYXJlZC9kaXJlY3RpdmVzL3Jlc2l6YWJsZS9yZXNpemFibGUudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFTOUYsTUFBTSxPQUFPLGtCQUFrQjtJQWVXO0lBZC9CLFNBQVMsQ0FBVTtJQUNsQixXQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztJQUduRCxLQUFLLEdBQWtCLElBQUksQ0FBQztJQUc1QixRQUFRLEdBQWtCLElBQUksQ0FBQztJQUcvQixRQUFRLEdBQWtCLElBQUksQ0FBQztJQUV2QixLQUFLLEdBQUcsS0FBSyxDQUFDO0lBRXRCLFlBQXdDLFNBQXVCO1FBQXZCLGNBQVMsR0FBVCxTQUFTLENBQWM7SUFBRyxDQUFDO0lBRW5FLFFBQVEsQ0FBQyxLQUFhLEVBQUUsSUFBNkI7UUFDbkQsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTO1lBQUUsT0FBTztRQUM1QixJQUFJLElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDaEQsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLEdBQUcsSUFBSSxDQUFDO1FBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxHQUFHLElBQUksQ0FBQztRQUM3QixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDN0IsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQzNCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzlCO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxJQUE2QjtRQUNqQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVM7WUFBRSxPQUFPO1FBQzVCLElBQUksSUFBSSxDQUFDLEtBQUs7WUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUMzQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUNsQztJQUNILENBQUM7dUdBckNVLGtCQUFrQjsyRkFBbEIsa0JBQWtCLGlRQ1QvQixrT0FNQTs7MkZER2Esa0JBQWtCO2tCQU45QixTQUFTOytCQUVFLGVBQWU7OzBCQW1CWixRQUFRO3lDQWRaLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0ksV0FBVztzQkFBcEIsTUFBTTtnQkFHUCxLQUFLO3NCQURKLFdBQVc7dUJBQUMsYUFBYTtnQkFJMUIsUUFBUTtzQkFEUCxXQUFXO3VCQUFDLGlCQUFpQjtnQkFJOUIsUUFBUTtzQkFEUCxXQUFXO3VCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9wdGlvbmFsLCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdENvbHVtbkRlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYmxlJztcblxuQENvbXBvbmVudCh7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAndGhbcmVzaXphYmxlXScsXG4gIHRlbXBsYXRlVXJsOiAnLi9yZXNpemFibGUudGVtcGxhdGUuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Jlc2l6YWJsZS5zdHlsZS5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFJlc2l6YWJsZUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHJlc2l6YWJsZTogYm9vbGVhbjtcbiAgQE91dHB1dCgpIHNpemVDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS53aWR0aCcpXG4gIHdpZHRoOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLm1pbi13aWR0aCcpXG4gIG1pbldpZHRoOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLm1heC13aWR0aCcpXG4gIG1heFdpZHRoOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIGRlYnVnID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgcHVibGljIHJlYWRvbmx5IGNvbHVtbkRlZjogTWF0Q29sdW1uRGVmKSB7fVxuXG4gIG9uUmVzaXplKHdpZHRoOiBudW1iZXIsIG9wdHM/OiB7IGVtaXRFdmVudDogYm9vbGVhbiB9KSB7XG4gICAgaWYgKCF0aGlzLnJlc2l6YWJsZSkgcmV0dXJuO1xuICAgIGlmICh0aGlzLmRlYnVnKSBjb25zb2xlLmluZm8oYHJlc2l6ZToke3dpZHRofWApO1xuICAgIHRoaXMud2lkdGggPSB3aWR0aCArICdweCc7XG4gICAgdGhpcy5taW5XaWR0aCA9IHdpZHRoICsgJ3B4JztcbiAgICB0aGlzLm1heFdpZHRoID0gd2lkdGggKyAncHgnO1xuICAgIGlmICghb3B0cyB8fCBvcHRzLmVtaXRFdmVudCkge1xuICAgICAgdGhpcy5zaXplQ2hhbmdlZC5lbWl0KHdpZHRoKTtcbiAgICB9XG4gIH1cblxuICBvbkZpdChvcHRzPzogeyBlbWl0RXZlbnQ6IGJvb2xlYW4gfSkge1xuICAgIGlmICghdGhpcy5yZXNpemFibGUpIHJldHVybjtcbiAgICBpZiAodGhpcy5kZWJ1ZykgY29uc29sZS5pbmZvKCdmaXQnKTtcbiAgICB0aGlzLndpZHRoID0gJ2F1dG8nO1xuICAgIHRoaXMubWluV2lkdGggPSBudWxsO1xuICAgIHRoaXMubWF4V2lkdGggPSBudWxsO1xuICAgIGlmICghb3B0cyB8fCBvcHRzLmVtaXRFdmVudCkge1xuICAgICAgdGhpcy5zaXplQ2hhbmdlZC5lbWl0KHVuZGVmaW5lZCk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxuICA8ZGl2IGNsYXNzPVwiY29udGVudFwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJiYXJcIiBbY2xhc3MuY2RrLXZpc3VhbGx5LWhpZGRlbl09XCIhcmVzaXphYmxlXCIgKHJlc2l6YWJsZSk9XCJvblJlc2l6ZSgkZXZlbnQpXCIgKGZpdCk9XCJvbkZpdCgpXCI+PC9kaXY+XG48L2Rpdj5cbiJdfQ==
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXphYmxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL2RpcmVjdGl2ZXMvcmVzaXphYmxlL3Jlc2l6YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NoYXJlZC9kaXJlY3RpdmVzL3Jlc2l6YWJsZS9yZXNpemFibGUudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFTOUYsTUFBTSxPQUFPLGtCQUFrQjtJQWVXO0lBZC9CLFNBQVMsQ0FBVTtJQUNsQixXQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztJQUduRCxLQUFLLEdBQWtCLElBQUksQ0FBQztJQUc1QixRQUFRLEdBQWtCLElBQUksQ0FBQztJQUcvQixRQUFRLEdBQWtCLElBQUksQ0FBQztJQUV2QixLQUFLLEdBQUcsS0FBSyxDQUFDO0lBRXRCLFlBQXdDLFNBQXVCO1FBQXZCLGNBQVMsR0FBVCxTQUFTLENBQWM7SUFBRyxDQUFDO0lBRW5FLFFBQVEsQ0FBQyxLQUFhLEVBQUUsSUFBNkI7UUFDbkQsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTO1lBQUUsT0FBTztRQUM1QixJQUFJLElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDaEQsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLEdBQUcsSUFBSSxDQUFDO1FBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxHQUFHLElBQUksQ0FBQztRQUM3QixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDN0IsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDNUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDL0IsQ0FBQztJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsSUFBNkI7UUFDakMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTO1lBQUUsT0FBTztRQUM1QixJQUFJLElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwQyxJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztRQUNwQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztRQUNyQixJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUM1QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNuQyxDQUFDO0lBQ0gsQ0FBQzt1R0FyQ1Usa0JBQWtCOzJGQUFsQixrQkFBa0IsaVFDVC9CLGtPQU1BOzsyRkRHYSxrQkFBa0I7a0JBTjlCLFNBQVM7K0JBRUUsZUFBZTs7MEJBbUJaLFFBQVE7eUNBZFosU0FBUztzQkFBakIsS0FBSztnQkFDSSxXQUFXO3NCQUFwQixNQUFNO2dCQUdQLEtBQUs7c0JBREosV0FBVzt1QkFBQyxhQUFhO2dCQUkxQixRQUFRO3NCQURQLFdBQVc7dUJBQUMsaUJBQWlCO2dCQUk5QixRQUFRO3NCQURQLFdBQVc7dUJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT3B0aW9uYWwsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0Q29sdW1uRGVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFibGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICd0aFtyZXNpemFibGVdJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Jlc2l6YWJsZS50ZW1wbGF0ZS5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcmVzaXphYmxlLnN0eWxlLnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgUmVzaXphYmxlQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcmVzaXphYmxlOiBib29sZWFuO1xuICBAT3V0cHV0KCkgc2l6ZUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLndpZHRoJylcbiAgd2lkdGg6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIEBIb3N0QmluZGluZygnc3R5bGUubWluLXdpZHRoJylcbiAgbWluV2lkdGg6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIEBIb3N0QmluZGluZygnc3R5bGUubWF4LXdpZHRoJylcbiAgbWF4V2lkdGg6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIHByaXZhdGUgZGVidWcgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBwdWJsaWMgcmVhZG9ubHkgY29sdW1uRGVmOiBNYXRDb2x1bW5EZWYpIHt9XG5cbiAgb25SZXNpemUod2lkdGg6IG51bWJlciwgb3B0cz86IHsgZW1pdEV2ZW50OiBib29sZWFuIH0pIHtcbiAgICBpZiAoIXRoaXMucmVzaXphYmxlKSByZXR1cm47XG4gICAgaWYgKHRoaXMuZGVidWcpIGNvbnNvbGUuaW5mbyhgcmVzaXplOiR7d2lkdGh9YCk7XG4gICAgdGhpcy53aWR0aCA9IHdpZHRoICsgJ3B4JztcbiAgICB0aGlzLm1pbldpZHRoID0gd2lkdGggKyAncHgnO1xuICAgIHRoaXMubWF4V2lkdGggPSB3aWR0aCArICdweCc7XG4gICAgaWYgKCFvcHRzIHx8IG9wdHMuZW1pdEV2ZW50KSB7XG4gICAgICB0aGlzLnNpemVDaGFuZ2VkLmVtaXQod2lkdGgpO1xuICAgIH1cbiAgfVxuXG4gIG9uRml0KG9wdHM/OiB7IGVtaXRFdmVudDogYm9vbGVhbiB9KSB7XG4gICAgaWYgKCF0aGlzLnJlc2l6YWJsZSkgcmV0dXJuO1xuICAgIGlmICh0aGlzLmRlYnVnKSBjb25zb2xlLmluZm8oJ2ZpdCcpO1xuICAgIHRoaXMud2lkdGggPSAnYXV0byc7XG4gICAgdGhpcy5taW5XaWR0aCA9IG51bGw7XG4gICAgdGhpcy5tYXhXaWR0aCA9IG51bGw7XG4gICAgaWYgKCFvcHRzIHx8IG9wdHMuZW1pdEV2ZW50KSB7XG4gICAgICB0aGlzLnNpemVDaGFuZ2VkLmVtaXQodW5kZWZpbmVkKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XG4gIDxkaXYgY2xhc3M9XCJjb250ZW50XCI+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImJhclwiIFtjbGFzcy5jZGstdmlzdWFsbHktaGlkZGVuXT1cIiFyZXNpemFibGVcIiAocmVzaXphYmxlKT1cIm9uUmVzaXplKCRldmVudClcIiAoZml0KT1cIm9uRml0KClcIj48L2Rpdj5cbjwvZGl2PlxuIl19
@@ -62,4 +62,4 @@ export function fromScrollEndEvent(element, threshold, dueTime) {
62
62
  return fromEvent(element, 'scroll')
63
63
  .pipe(filter(() => isEnd()));
64
64
  }
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zaGFyZWQvZXZlbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWMsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQVN4QyxNQUFNLFVBQVUseUJBQXlCO0lBQ3ZDLE9BQU8sSUFBSSxZQUFZLENBQXFCLElBQUksQ0FBQyxDQUFDO0FBQ3BELENBQUM7QUFFRCxNQUFNLFVBQVUsa0JBQWtCLENBQXFCLFNBQWlCLEVBQ2xCLE9BQStCLEVBQy9CLE9BQTRCO0lBR2hGLE1BQU0sTUFBTSxHQUE0QjtRQUN0QyxHQUFHLENBQUMsT0FBTyxFQUFFLE1BQU0sSUFBSSxFQUFFLENBQUM7UUFDMUIsR0FBRyxPQUFPO0tBQ1gsQ0FBQztJQUNGLE9BQU8sSUFBSSxXQUFXLENBQTZCLFNBQVMsRUFBRSxFQUFDLE1BQU0sRUFBQyxDQUFDLENBQUM7QUFDMUUsQ0FBQztBQUVELE1BQU0sVUFBVSxnQkFBZ0IsQ0FBb0IsT0FBeUMsRUFDMUMsU0FBaUIsRUFDakIsT0FBNEI7SUFDN0UsT0FBTyxJQUFJLE9BQU8sQ0FBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtRQUN4QyxNQUFNLEtBQUssR0FBRyxrQkFBa0IsQ0FBQyxTQUFTLEVBQUU7WUFDMUMsT0FBTyxFQUFFLE9BQU87WUFDaEIsS0FBSyxFQUFFLE1BQU07U0FDZCxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ1osT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0QixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFNRDs7Ozs7Ozs7Ozs7R0FXRztBQUNILE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxPQUFvQixFQUFFLFNBQWtCLEVBQUUsT0FBZ0I7SUFFM0YsU0FBUyxHQUFHLFNBQVMsSUFBSSxLQUFLLENBQUM7SUFDL0IsSUFBSSxLQUFvQixDQUFDO0lBRXpCLDBCQUEwQjtJQUMxQixJQUFJLFNBQVMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDM0IsTUFBTSxjQUFjLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUM7UUFDaEYsS0FBSyxHQUFHLEdBQUcsRUFBRTtZQUNYLE1BQU0sV0FBVyxHQUFHLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUM7WUFDMUYsT0FBTyxXQUFXLEdBQUcsY0FBYyxDQUFDO1FBQ3RDLENBQUMsQ0FBQztLQUNIO0lBRUQsc0JBQXNCO1NBQ2pCLElBQUksU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUNqQyxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3ZFLEtBQUssR0FBRyxHQUFHLEVBQUU7WUFDWCxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsWUFBWSxHQUFHLENBQUMsT0FBTyxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDbkYsT0FBTyxRQUFRLEdBQUcsV0FBVyxDQUFDO1FBQ2hDLENBQUMsQ0FBQztLQUNIO1NBQ0k7UUFDSCxNQUFNLElBQUksS0FBSyxDQUFDLHVFQUF1RSxDQUFDLENBQUM7S0FDMUY7SUFFRCxtRkFBbUY7SUFDbkYsSUFBSSxPQUFPLEdBQUcsQ0FBQyxFQUFFO1FBQ2YsT0FBTyxLQUFLLENBQ1YsU0FBUyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsRUFDNUIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUNmO2FBQ0UsSUFBSSxDQUNILE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUN0QixDQUFDO0tBQ0w7SUFFRCxPQUFPLFNBQVMsQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDO1NBQ2hDLElBQUksQ0FDSCxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FDdEIsQ0FBQztBQUNOLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZyb21FdmVudCwgbWVyZ2UsIE9ic2VydmFibGUsIHRpbWVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvbWlzZUV2ZW50UGF5bG9hZDxSID0gYW55PiB7XG4gIHN1Y2Nlc3M6ICh2YWx1ZT86IFIpID0+IHZvaWQ7XG4gIGVycm9yOiAocmVhc29uPzogYW55KSA9PiB2b2lkO1xufVxuXG5leHBvcnQgdHlwZSBQcm9taXNlRXZlbnQ8UiA9IGFueSwgRCA9IHZvaWQ+ID0gQ3VzdG9tRXZlbnQ8UHJvbWlzZUV2ZW50UGF5bG9hZDxSPiAmIEQ+O1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlUHJvbWlzZUV2ZW50RW1pdHRlcjxSID0gYW55LCBEID0gdm9pZD4oKTogRXZlbnRFbWl0dGVyPFByb21pc2VFdmVudDxSLCBEPj4ge1xuICByZXR1cm4gbmV3IEV2ZW50RW1pdHRlcjxQcm9taXNlRXZlbnQ8UiwgRD4+KHRydWUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlUHJvbWlzZUV2ZW50PFQgPSB2b2lkLCBEID0gdm9pZD4oZXZlbnRUeXBlOiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9taXNlOiBQcm9taXNlRXZlbnRQYXlsb2FkPFQ+LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5pdEFyZz86IEN1c3RvbUV2ZW50SW5pdDxEPlxuICApOiBQcm9taXNlRXZlbnQ8VCwgRD4ge1xuXG4gIGNvbnN0IGRldGFpbCA9IDxQcm9taXNlRXZlbnRQYXlsb2FkICYgRD57XG4gICAgLi4uKGluaXRBcmc/LmRldGFpbCB8fCB7fSksXG4gICAgLi4ucHJvbWlzZVxuICB9O1xuICByZXR1cm4gbmV3IEN1c3RvbUV2ZW50PFByb21pc2VFdmVudFBheWxvYWQ8VD4gJiBEPihldmVudFR5cGUsIHtkZXRhaWx9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGVtaXRQcm9taXNlRXZlbnQ8VCA9IGFueSwgRCA9IHZvaWQ+KGVtaXR0ZXI6IEV2ZW50RW1pdHRlcjxQcm9taXNlRXZlbnQ8VCwgRD4+LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnRUeXBlOiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbml0QXJnPzogQ3VzdG9tRXZlbnRJbml0PEQ+KTogUHJvbWlzZTxUPiB7XG4gIHJldHVybiBuZXcgUHJvbWlzZTxUPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgY29uc3QgZXZlbnQgPSBjcmVhdGVQcm9taXNlRXZlbnQoZXZlbnRUeXBlLCB7XG4gICAgICBzdWNjZXNzOiByZXNvbHZlLFxuICAgICAgZXJyb3I6IHJlamVjdFxuICAgIH0sIGluaXRBcmcpO1xuICAgIGVtaXR0ZXIuZW1pdChldmVudCk7XG4gIH0pO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbXBsZXRhYmxlRXZlbnQgZXh0ZW5kcyBFdmVudCB7XG4gIHRhcmdldDogRXZlbnRUYXJnZXQgJiB7IGNvbXBsZXRlPzogKCkgPT4gdm9pZCB9O1xufVxuXG4vKipcbiAqIExpc3RlbiBlbmQgb2Ygc2Nyb2xsLlxuICogPHA+XG4gKiAgIFRoZSB0aHJlc2hvbGQgZGlzdGFuY2UgZnJvbSB0aGUgYm90dG9tIG9mIHRoZSBjb250ZW50IHRvIGNhbGwgdGhlIGluZmluaXRlIG91dHB1dCBldmVudCB3aGVuIHNjcm9sbGVkLlxuICogICBUaGUgdGhyZXNob2xkIHZhbHVlIGNhbiBiZSBlaXRoZXIgYSBwZXJjZW50LCBvciBpbiBwaXhlbHMuXG4gKiAgIEZvciBleGFtcGxlLCB1c2UgdGhlIHZhbHVlIG9mIDEwJSBmb3IgdGhlIGluZmluaXRlIG91dHB1dCBldmVudCB0byBnZXQgY2FsbGVkIHdoZW4gdGhlIHVzZXIgaGFzIHNjcm9sbGVkXG4gKiAgIDEwJSBmcm9tIHRoZSBib3R0b20gb2YgdGhlIHBhZ2UuIFVzZSB0aGUgdmFsdWUgMTAwcHggd2hlbiB0aGUgc2Nyb2xsIGlzIHdpdGhpbiAxMDAgcGl4ZWxzIGZyb20gdGhlIGJvdHRvbSBvZiB0aGUgcGFnZS5cbiAqIDwvcD5cbiAqXG4gKiBAcGFyYW0gZWxlbWVudFxuICogQHBhcmFtIHRocmVzaG9sZCBkZWZhdWx0IHRvICcxNSUnXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tU2Nyb2xsRW5kRXZlbnQoZWxlbWVudDogSFRNTEVsZW1lbnQsIHRocmVzaG9sZD86IHN0cmluZywgZHVlVGltZT86IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XG5cbiAgdGhyZXNob2xkID0gdGhyZXNob2xkIHx8ICcxNSUnO1xuICBsZXQgaXNFbmQ6ICgpID0+IGJvb2xlYW47XG5cbiAgLy8gTGlzdGVuIHVzaW5nIHBlcmNlbnRhZ2VcbiAgaWYgKHRocmVzaG9sZC5lbmRzV2l0aCgnJScpKSB7XG4gICAgY29uc3QgdGhyZXNob2xkUmF0aW8gPSBwYXJzZUludCh0aHJlc2hvbGQuc2xpY2UoMCwgdGhyZXNob2xkLmxlbmd0aCAtIDEpKSAvIDEwMDtcbiAgICBpc0VuZCA9ICgpID0+IHtcbiAgICAgIGNvbnN0IGVuZFBvc1JhdGlvID0gMSAtIChlbGVtZW50LnNjcm9sbFRvcCArIGVsZW1lbnQub2Zmc2V0SGVpZ2h0KSAvIGVsZW1lbnQuc2Nyb2xsSGVpZ2h0O1xuICAgICAgcmV0dXJuIGVuZFBvc1JhdGlvIDwgdGhyZXNob2xkUmF0aW87XG4gICAgfTtcbiAgfVxuXG4gIC8vIExpc3RlbiB1c2luZyBwaXhlbHNcbiAgZWxzZSBpZiAodGhyZXNob2xkLmVuZHNXaXRoKCdweCcpKSB7XG4gICAgY29uc3QgdGhyZXNob2xkUHggPSBwYXJzZUludCh0aHJlc2hvbGQuc2xpY2UoMCwgdGhyZXNob2xkLmxlbmd0aCAtIDIpKTtcbiAgICBpc0VuZCA9ICgpID0+IHtcbiAgICAgIGNvbnN0IGVuZFBvc1B4ID0gZWxlbWVudC5zY3JvbGxIZWlnaHQgLSAoZWxlbWVudC5zY3JvbGxUb3AgKyBlbGVtZW50Lm9mZnNldEhlaWdodCk7XG4gICAgICByZXR1cm4gZW5kUG9zUHggPCB0aHJlc2hvbGRQeDtcbiAgICB9O1xuICB9XG4gIGVsc2Uge1xuICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBhcmd1bWVudCBcXCd0aHJlc2hvbGRcXCcuIEV4cGVjdGVkIHZhbHVlIHVuaXQ6IFxcJ3B4XFwnIG9yIFxcJyVcXCcgJyk7XG4gIH1cblxuICAvLyBDaGVjayBib3R0b20gcmVhY2gsIGV2ZW4gaWYgTk8gc2Nyb2xsIGV2ZW50IChlLmcuIHdoZW4gYWxyZWFkeSByZWFjaCB0aGUgYm90dG9tKVxuICBpZiAoZHVlVGltZSA+IDApIHtcbiAgICByZXR1cm4gbWVyZ2UoXG4gICAgICBmcm9tRXZlbnQoZWxlbWVudCwgJ3Njcm9sbCcpLFxuICAgICAgdGltZXIoZHVlVGltZSlcbiAgICApXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKCgpID0+IGlzRW5kKCkpXG4gICAgICApO1xuICB9XG5cbiAgcmV0dXJuIGZyb21FdmVudChlbGVtZW50LCAnc2Nyb2xsJylcbiAgICAucGlwZShcbiAgICAgIGZpbHRlcigoKSA9PiBpc0VuZCgpKVxuICAgICk7XG59XG4iXX0=
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zaGFyZWQvZXZlbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWMsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQVN4QyxNQUFNLFVBQVUseUJBQXlCO0lBQ3ZDLE9BQU8sSUFBSSxZQUFZLENBQXFCLElBQUksQ0FBQyxDQUFDO0FBQ3BELENBQUM7QUFFRCxNQUFNLFVBQVUsa0JBQWtCLENBQXFCLFNBQWlCLEVBQ2xCLE9BQStCLEVBQy9CLE9BQTRCO0lBR2hGLE1BQU0sTUFBTSxHQUE0QjtRQUN0QyxHQUFHLENBQUMsT0FBTyxFQUFFLE1BQU0sSUFBSSxFQUFFLENBQUM7UUFDMUIsR0FBRyxPQUFPO0tBQ1gsQ0FBQztJQUNGLE9BQU8sSUFBSSxXQUFXLENBQTZCLFNBQVMsRUFBRSxFQUFDLE1BQU0sRUFBQyxDQUFDLENBQUM7QUFDMUUsQ0FBQztBQUVELE1BQU0sVUFBVSxnQkFBZ0IsQ0FBb0IsT0FBeUMsRUFDMUMsU0FBaUIsRUFDakIsT0FBNEI7SUFDN0UsT0FBTyxJQUFJLE9BQU8sQ0FBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtRQUN4QyxNQUFNLEtBQUssR0FBRyxrQkFBa0IsQ0FBQyxTQUFTLEVBQUU7WUFDMUMsT0FBTyxFQUFFLE9BQU87WUFDaEIsS0FBSyxFQUFFLE1BQU07U0FDZCxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ1osT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0QixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFNRDs7Ozs7Ozs7Ozs7R0FXRztBQUNILE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxPQUFvQixFQUFFLFNBQWtCLEVBQUUsT0FBZ0I7SUFFM0YsU0FBUyxHQUFHLFNBQVMsSUFBSSxLQUFLLENBQUM7SUFDL0IsSUFBSSxLQUFvQixDQUFDO0lBRXpCLDBCQUEwQjtJQUMxQixJQUFJLFNBQVMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUM1QixNQUFNLGNBQWMsR0FBRyxRQUFRLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQztRQUNoRixLQUFLLEdBQUcsR0FBRyxFQUFFO1lBQ1gsTUFBTSxXQUFXLEdBQUcsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQztZQUMxRixPQUFPLFdBQVcsR0FBRyxjQUFjLENBQUM7UUFDdEMsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVELHNCQUFzQjtTQUNqQixJQUFJLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUNsQyxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3ZFLEtBQUssR0FBRyxHQUFHLEVBQUU7WUFDWCxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsWUFBWSxHQUFHLENBQUMsT0FBTyxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDbkYsT0FBTyxRQUFRLEdBQUcsV0FBVyxDQUFDO1FBQ2hDLENBQUMsQ0FBQztJQUNKLENBQUM7U0FDSSxDQUFDO1FBQ0osTUFBTSxJQUFJLEtBQUssQ0FBQyx1RUFBdUUsQ0FBQyxDQUFDO0lBQzNGLENBQUM7SUFFRCxtRkFBbUY7SUFDbkYsSUFBSSxPQUFPLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDaEIsT0FBTyxLQUFLLENBQ1YsU0FBUyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsRUFDNUIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUNmO2FBQ0UsSUFBSSxDQUNILE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUN0QixDQUFDO0lBQ04sQ0FBQztJQUVELE9BQU8sU0FBUyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUM7U0FDaEMsSUFBSSxDQUNILE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUN0QixDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBtZXJnZSwgT2JzZXJ2YWJsZSwgdGltZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuZXhwb3J0IGludGVyZmFjZSBQcm9taXNlRXZlbnRQYXlsb2FkPFIgPSBhbnk+IHtcbiAgc3VjY2VzczogKHZhbHVlPzogUikgPT4gdm9pZDtcbiAgZXJyb3I6IChyZWFzb24/OiBhbnkpID0+IHZvaWQ7XG59XG5cbmV4cG9ydCB0eXBlIFByb21pc2VFdmVudDxSID0gYW55LCBEID0gdm9pZD4gPSBDdXN0b21FdmVudDxQcm9taXNlRXZlbnRQYXlsb2FkPFI+ICYgRD47XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVQcm9taXNlRXZlbnRFbWl0dGVyPFIgPSBhbnksIEQgPSB2b2lkPigpOiBFdmVudEVtaXR0ZXI8UHJvbWlzZUV2ZW50PFIsIEQ+PiB7XG4gIHJldHVybiBuZXcgRXZlbnRFbWl0dGVyPFByb21pc2VFdmVudDxSLCBEPj4odHJ1ZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVQcm9taXNlRXZlbnQ8VCA9IHZvaWQsIEQgPSB2b2lkPihldmVudFR5cGU6IHN0cmluZyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb21pc2U6IFByb21pc2VFdmVudFBheWxvYWQ8VD4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbml0QXJnPzogQ3VzdG9tRXZlbnRJbml0PEQ+XG4gICk6IFByb21pc2VFdmVudDxULCBEPiB7XG5cbiAgY29uc3QgZGV0YWlsID0gPFByb21pc2VFdmVudFBheWxvYWQgJiBEPntcbiAgICAuLi4oaW5pdEFyZz8uZGV0YWlsIHx8IHt9KSxcbiAgICAuLi5wcm9taXNlXG4gIH07XG4gIHJldHVybiBuZXcgQ3VzdG9tRXZlbnQ8UHJvbWlzZUV2ZW50UGF5bG9hZDxUPiAmIEQ+KGV2ZW50VHlwZSwge2RldGFpbH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZW1pdFByb21pc2VFdmVudDxUID0gYW55LCBEID0gdm9pZD4oZW1pdHRlcjogRXZlbnRFbWl0dGVyPFByb21pc2VFdmVudDxULCBEPj4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudFR5cGU6IHN0cmluZyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluaXRBcmc/OiBDdXN0b21FdmVudEluaXQ8RD4pOiBQcm9taXNlPFQ+IHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlPFQ+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICBjb25zdCBldmVudCA9IGNyZWF0ZVByb21pc2VFdmVudChldmVudFR5cGUsIHtcbiAgICAgIHN1Y2Nlc3M6IHJlc29sdmUsXG4gICAgICBlcnJvcjogcmVqZWN0XG4gICAgfSwgaW5pdEFyZyk7XG4gICAgZW1pdHRlci5lbWl0KGV2ZW50KTtcbiAgfSk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29tcGxldGFibGVFdmVudCBleHRlbmRzIEV2ZW50IHtcbiAgdGFyZ2V0OiBFdmVudFRhcmdldCAmIHsgY29tcGxldGU/OiAoKSA9PiB2b2lkIH07XG59XG5cbi8qKlxuICogTGlzdGVuIGVuZCBvZiBzY3JvbGwuXG4gKiA8cD5cbiAqICAgVGhlIHRocmVzaG9sZCBkaXN0YW5jZSBmcm9tIHRoZSBib3R0b20gb2YgdGhlIGNvbnRlbnQgdG8gY2FsbCB0aGUgaW5maW5pdGUgb3V0cHV0IGV2ZW50IHdoZW4gc2Nyb2xsZWQuXG4gKiAgIFRoZSB0aHJlc2hvbGQgdmFsdWUgY2FuIGJlIGVpdGhlciBhIHBlcmNlbnQsIG9yIGluIHBpeGVscy5cbiAqICAgRm9yIGV4YW1wbGUsIHVzZSB0aGUgdmFsdWUgb2YgMTAlIGZvciB0aGUgaW5maW5pdGUgb3V0cHV0IGV2ZW50IHRvIGdldCBjYWxsZWQgd2hlbiB0aGUgdXNlciBoYXMgc2Nyb2xsZWRcbiAqICAgMTAlIGZyb20gdGhlIGJvdHRvbSBvZiB0aGUgcGFnZS4gVXNlIHRoZSB2YWx1ZSAxMDBweCB3aGVuIHRoZSBzY3JvbGwgaXMgd2l0aGluIDEwMCBwaXhlbHMgZnJvbSB0aGUgYm90dG9tIG9mIHRoZSBwYWdlLlxuICogPC9wPlxuICpcbiAqIEBwYXJhbSBlbGVtZW50XG4gKiBAcGFyYW0gdGhyZXNob2xkIGRlZmF1bHQgdG8gJzE1JSdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZyb21TY3JvbGxFbmRFdmVudChlbGVtZW50OiBIVE1MRWxlbWVudCwgdGhyZXNob2xkPzogc3RyaW5nLCBkdWVUaW1lPzogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcblxuICB0aHJlc2hvbGQgPSB0aHJlc2hvbGQgfHwgJzE1JSc7XG4gIGxldCBpc0VuZDogKCkgPT4gYm9vbGVhbjtcblxuICAvLyBMaXN0ZW4gdXNpbmcgcGVyY2VudGFnZVxuICBpZiAodGhyZXNob2xkLmVuZHNXaXRoKCclJykpIHtcbiAgICBjb25zdCB0aHJlc2hvbGRSYXRpbyA9IHBhcnNlSW50KHRocmVzaG9sZC5zbGljZSgwLCB0aHJlc2hvbGQubGVuZ3RoIC0gMSkpIC8gMTAwO1xuICAgIGlzRW5kID0gKCkgPT4ge1xuICAgICAgY29uc3QgZW5kUG9zUmF0aW8gPSAxIC0gKGVsZW1lbnQuc2Nyb2xsVG9wICsgZWxlbWVudC5vZmZzZXRIZWlnaHQpIC8gZWxlbWVudC5zY3JvbGxIZWlnaHQ7XG4gICAgICByZXR1cm4gZW5kUG9zUmF0aW8gPCB0aHJlc2hvbGRSYXRpbztcbiAgICB9O1xuICB9XG5cbiAgLy8gTGlzdGVuIHVzaW5nIHBpeGVsc1xuICBlbHNlIGlmICh0aHJlc2hvbGQuZW5kc1dpdGgoJ3B4JykpIHtcbiAgICBjb25zdCB0aHJlc2hvbGRQeCA9IHBhcnNlSW50KHRocmVzaG9sZC5zbGljZSgwLCB0aHJlc2hvbGQubGVuZ3RoIC0gMikpO1xuICAgIGlzRW5kID0gKCkgPT4ge1xuICAgICAgY29uc3QgZW5kUG9zUHggPSBlbGVtZW50LnNjcm9sbEhlaWdodCAtIChlbGVtZW50LnNjcm9sbFRvcCArIGVsZW1lbnQub2Zmc2V0SGVpZ2h0KTtcbiAgICAgIHJldHVybiBlbmRQb3NQeCA8IHRocmVzaG9sZFB4O1xuICAgIH07XG4gIH1cbiAgZWxzZSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGFyZ3VtZW50IFxcJ3RocmVzaG9sZFxcJy4gRXhwZWN0ZWQgdmFsdWUgdW5pdDogXFwncHhcXCcgb3IgXFwnJVxcJyAnKTtcbiAgfVxuXG4gIC8vIENoZWNrIGJvdHRvbSByZWFjaCwgZXZlbiBpZiBOTyBzY3JvbGwgZXZlbnQgKGUuZy4gd2hlbiBhbHJlYWR5IHJlYWNoIHRoZSBib3R0b20pXG4gIGlmIChkdWVUaW1lID4gMCkge1xuICAgIHJldHVybiBtZXJnZShcbiAgICAgIGZyb21FdmVudChlbGVtZW50LCAnc2Nyb2xsJyksXG4gICAgICB0aW1lcihkdWVUaW1lKVxuICAgIClcbiAgICAgIC5waXBlKFxuICAgICAgICBmaWx0ZXIoKCkgPT4gaXNFbmQoKSlcbiAgICAgICk7XG4gIH1cblxuICByZXR1cm4gZnJvbUV2ZW50KGVsZW1lbnQsICdzY3JvbGwnKVxuICAgIC5waXBlKFxuICAgICAgZmlsdGVyKCgpID0+IGlzRW5kKCkpXG4gICAgKTtcbn1cbiJdfQ==
@@ -69,4 +69,4 @@ export class CsvUtils {
69
69
  });
70
70
  }
71
71
  }
72
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3N2LnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zaGFyZWQvZmlsZS9jc3YudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFZLFlBQVksRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDeEMsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUV0QyxVQUFVO0FBQ1YsTUFBTSxPQUFPLFFBQVE7SUFFbkIsTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFjLEVBQ2QsSUFNQztRQUNuQixJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU07WUFBRSxPQUFPLENBQUMsZ0JBQWdCO1FBRW5ELHNCQUFzQjtRQUN0QixNQUFNLFNBQVMsR0FBRyxJQUFJLEVBQUUsU0FBUyxJQUFJLEdBQUcsQ0FBQztRQUN6QyxNQUFNLGlCQUFpQixHQUFHLElBQUksTUFBTSxDQUFDLE1BQU0sR0FBRSxTQUFTLEdBQUUsUUFBUSxDQUFDLENBQUM7UUFDbEUsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNsQyxNQUFNLE9BQU8sR0FBRyxJQUFJLEVBQUUsT0FBTyxJQUFJLElBQUksQ0FBQztRQUN0QyxNQUFNLFdBQVc7UUFDZixhQUFhO1FBQ2IsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxJQUFJO1lBQzlCLFlBQVk7WUFDWixJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcs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QUMsYUFBYSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsa0JBQWtCO2FBQzNFLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNWLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxtQkFBbUI7aUJBQ3BFLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsd0JBQXdCO2lCQUN2RSxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLDBCQUEwQjtpQkFDcEUsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyx1QkFBdUI7YUFDakU7WUFDRCxPQUFPLEtBQUssQ0FBQztRQUNmLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZmlsdGVyLCBtYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7SHR0cEV2ZW50VHlwZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtGaWxlRXZlbnQsIEZpbGVSZXNwb25zZX0gZnJvbSAnLi4vdXBsb2FkLWZpbGUvdXBsb2FkLWZpbGUubW9kZWwnO1xuaW1wb3J0IHtGaWxlc1V0aWxzfSBmcm9tICcuL2ZpbGUudXRpbHMnO1xuaW1wb3J0IHtpc05vdE5pbH0gZnJvbSAnLi4vZnVuY3Rpb25zJztcblxuLy9AZHluYW1pY1xuZXhwb3J0IGNsYXNzIENzdlV0aWxzIHtcblxuICBzdGF0aWMgZXhwb3J0VG9GaWxlKHJvd3M6IG9iamVjdFtdLFxuICAgICAgICAgICAgICAgICAgICAgIG9wdHM/OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxlbmFtZT86IHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcnM/OiBzdHJpbmdbXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlcGFyYXRvcj86IHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgICAgIGVuY29kaW5nPzogc3RyaW5nO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT86IHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgICB9KSB7XG4gICAgaWYgKCFyb3dzIHx8ICFyb3dzLmxlbmd0aCkgcmV0dXJuOyAvLyBTa2lwIGlmIGVtcHR5XG5cbiAgICAvLyBDcmVhdGUgdGV4dCBjb250ZW50XG4gICAgY29uc3Qgc2VwYXJhdG9yID0gb3B0cz8uc2VwYXJhdG9yIHx8ICcsJztcbiAgICBjb25zdCBwcm90ZWN0Q2VsbFJlZ2V4cCA9IG5ldyBSZWdFeHAoJy8oXCJ8Jysgc2VwYXJhdG9yICsnfFxcbikvZycpO1xuICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhyb3dzWzBdKTtcbiAgICBjb25zdCBoZWFkZXJzID0gb3B0cz8uaGVhZGVycyB8fCBrZXlzO1xuICAgIGNvbnN0IHRleHRDb250ZW50ID1cbiAgICAgIC8vIEhlYWRlciByb3dcbiAgICAgIGhlYWRlcnMuam9pbihzZXBhcmF0b3IpICsgJ1xcbicgK1xuICAgICAgLy8gRGF0YSByb3dzXG4gICAgICByb3dzLm1hcChyb3cgPT4ga2V5cy5tYXAoayA9PiB7XG4gICAgICAgICAgY29uc3QgY2VsbCA9IHJvd1trXSA9PT0gbnVsbCB8fCByb3dba10gPT09IHVuZGVmaW5lZCA/ICcnIDogcm93W2tdO1xuICAgICAgICAgIGxldCBjZWxsU3RyOiBzdHJpbmcgPSBjZWxsIGluc3RhbmNlb2YgRGF0ZVxuICAgICAgICAgICAgPyBjZWxsLnRvTG9jYWxlU3RyaW5nKClcbiAgICAgICAgICAgIDogY2VsbC50b1N0cmluZygpLnJlcGxhY2UoL1wiL2csICdcIlwiJyk7XG4gICAgICAgICAgaWYgKHByb3RlY3RDZWxsUmVnZXhwLnRlc3QoY2VsbFN0cikpIHtcbiAgICAgICAgICAgIGNlbGxTdHIgPSBgXCIke2NlbGxTdHJ9XCJgO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gY2VsbFN0cjtcbiAgICAgICAgfSkuam9pbihzZXBhcmF0b3IpKS5qb2luKCdcXG4nKTtcblxuICAgIC8vIFdyaXRlIHRvIGZpbGVcbiAgICBGaWxlc1V0aWxzLndyaXRlVGV4dFRvRmlsZShcbiAgICAgIHRleHRDb250ZW50LCB7XG4gICAgICAgIHR5cGU6ICd0ZXh0L2NzdicsXG4gICAgICAgIGZpbGVuYW1lOiAnZXhwb3J0LmNzdicsXG4gICAgICAgIC4uLm9wdHMsXG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIHN0YXRpYyBwYXJzZUZpbGUoZmlsZTogRmlsZSwgb3B0cz86IHtzZXBhcmF0b3I/OiBzdHJpbmc7IGVuY29kaW5nPzogc3RyaW5nfSk6IE9ic2VydmFibGU8RmlsZUV2ZW50PHN0cmluZ1tdW10+PiB7XG4gICAgcmV0dXJuIEZpbGVzVXRpbHMucmVhZEFzVGV4dChmaWxlLCBvcHRzPy5lbmNvZGluZylcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoZSA9PiB7XG4gICAgICAgICAgaWYgKGUudHlwZSA9PT0gSHR0cEV2ZW50VHlwZS5VcGxvYWRQcm9ncmVzcykge1xuICAgICAgICAgICAgY29uc3QgbG9hZGVkID0gTWF0aC5yb3VuZChlLmxvYWRlZCAqIDAuOCk7XG4gICAgICAgICAgICByZXR1cm4gey4uLmUsIGxvYWRlZH07XG4gICAgICAgICAgfVxuICAgICAgICAgIGVsc2UgaWYgKGUgaW5zdGFuY2VvZiBGaWxlUmVzcG9uc2Upe1xuICAgICAgICAgICAgY29uc3QgYm9keSA9IGUuYm9keTtcbiAgICAgICAgICAgIGNvbnN0IGRhdGEgPSBDc3ZVdGlscy5wYXJzZUNTVihib2R5LCBvcHRzKTtcbiAgICAgICAgICAgIHJldHVybiBuZXcgRmlsZVJlc3BvbnNlPHN0cmluZ1tdW10+KHtib2R5OiBkYXRhfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgICAgZmlsdGVyKGlzTm90TmlsKVxuICAgICAgKTtcbiAgfVxuXG4gIHN0YXRpYyBwYXJzZUNTVihib2R5OiBzdHJpbmcsIG9wdHM/OiB7c2VwYXJhdG9yPzogc3RyaW5nOyBza2lwRW1wdHlMaW5lPzogYm9vbGVhbn0pOiBzdHJpbmdbXVtdIHtcbiAgICBjb25zdCBzZXBhcmF0b3IgPSBvcHRzPy5zZXBhcmF0b3IgfHwgJywnO1xuICAgIGNvbnN0IHNraXBFbXB0eUxpbmUgPSAhb3B0cyB8fCBvcHRzLnNraXBFbXB0eUxpbmUgIT09IGZhbHNlO1xuXG4gICAgLy8gUHJvdGVjdCBzcGVjaWFsIGNoYXJhY3RlcnMgKHF1b3RlIGFuZCAvbilcbiAgICBib2R5ID0gYm9keS5yZXBsYWNlKCdcIlwiJywgJzxxdW90ZT4nKSAvLyBQcm90ZWN0IGRvdWJsZSBxdW90ZVxuICAgICAgLnJlcGxhY2UoLyhcIlteXFxuXCJdKylcXG5cXHI/L2dtLCAnXCIkMTxicj4nKSAvLyBQcm90ZWN0IFxcbiBpbnNpZGUgYSBxdW90ZWQgZXhwcmVzc2lvblxuICAgICAgLnJlcGxhY2UoL1xcblxcci9nbSwgJ1xcbicpOyAvLyBXaW5kb3dzIENSXG5cbiAgICBjb25zdCBoZWFkZXJBbmRSb3dzID0gYm9keS5zcGxpdCgnXFxuJywgMik7XG4gICAgY29uc3QgaGVhZGVycyA9IGhlYWRlckFuZFJvd3NbMF0uc3BsaXQoc2VwYXJhdG9yKTtcblxuICAgIHJldHVybiBib2R5LnNwbGl0KCdcXG4nKSAvLyBzcGxpdCBpbnRvIHJvd3NcbiAgICAgIC5maWx0ZXIobGluZSA9PiAhc2tpcEVtcHR5TGluZSB8fCBsaW5lLnRyaW0oKS5sZW5ndGggPiAwKSAvLyBTa2lwIGVtcHR5IGxpbmVcbiAgICAgIC5tYXAobGluZSA9PiB7XG4gICAgICAgIGNvbnN0IGNlbGxzID0gbGluZS5zcGxpdChzZXBhcmF0b3IsIGhlYWRlcnMubGVuZ3RoKSAvLyBzcGxpdCBpbnRvIGNlbGxzXG4gICAgICAgICAgLm1hcChjZWxsID0+IGNlbGwucmVwbGFjZSgvXlwiKFteXCJdKilcIiQvLCAnJDEnKSkgLy8gQ2xlYW4gdHJhaWxpbmcgcXVvdGVzXG4gICAgICAgICAgLm1hcChjZWxsID0+IGNlbGwucmVwbGFjZSgnPHF1b3RlPicsICdcIicpKSAvLyByZXN0b3JlIHByb3RlY3RlZCBxdW90ZVxuICAgICAgICAgIC5tYXAoY2VsbCA9PiBjZWxsLnJlcGxhY2UoJzxicj4nLCAnXFxuJykpIC8vIHJlc3RvcmUgcHJvdGVjdGVkIGJyXG4gICAgICAgIDtcbiAgICAgICAgcmV0dXJuIGNlbGxzO1xuICAgICAgfSk7XG4gIH1cbn1cbiJdfQ==
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3N2LnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zaGFyZWQvZmlsZS9jc3YudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFZLFlBQVksRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDeEMsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUV0QyxVQUFVO0FBQ1YsTUFBTSxPQUFPLFFBQVE7SUFFbkIsTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFjLEVBQ2QsSUFNQztRQUNuQixJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU07WUFBRSxPQUFPLENBQUMsZ0JBQWdCO1FBRW5ELHNCQUFzQjtRQUN0QixNQUFNLFNBQVMsR0FBRyxJQUFJLEVBQUUsU0FBUyxJQUFJLEdBQUcsQ0FBQztRQUN6QyxNQUFNLGlCQUFpQixHQUFHLElBQUksTUFBTSxDQUFDLE1BQU0sR0FBRSxTQUFTLEdBQUUsUUFBUSxDQUFDLENBQUM7UUFDbEUsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNsQyxNQUFNLE9BQU8sR0FBRyxJQUFJLEVBQUUsT0FBTyxJQUFJLElBQUksQ0FBQztRQUN0QyxNQUFNLFdBQVc7UUFDZixhQUFhO1FBQ2IsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxJQUFJO1lBQzlCLFlBQVk7WUFDWixJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcs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QU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsa0JBQWtCO2FBQzNFLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNWLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxtQkFBbUI7aUJBQ3BFLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsd0JBQXdCO2lCQUN2RSxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLDBCQUEwQjtpQkFDcEUsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyx1QkFBdUI7YUFDakU7WUFDRCxPQUFPLEtBQUssQ0FBQztRQUNmLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZmlsdGVyLCBtYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7SHR0cEV2ZW50VHlwZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtGaWxlRXZlbnQsIEZpbGVSZXNwb25zZX0gZnJvbSAnLi4vdXBsb2FkLWZpbGUvdXBsb2FkLWZpbGUubW9kZWwnO1xuaW1wb3J0IHtGaWxlc1V0aWxzfSBmcm9tICcuL2ZpbGUudXRpbHMnO1xuaW1wb3J0IHtpc05vdE5pbH0gZnJvbSAnLi4vZnVuY3Rpb25zJztcblxuLy9AZHluYW1pY1xuZXhwb3J0IGNsYXNzIENzdlV0aWxzIHtcblxuICBzdGF0aWMgZXhwb3J0VG9GaWxlKHJvd3M6IG9iamVjdFtdLFxuICAgICAgICAgICAgICAgICAgICAgIG9wdHM/OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxlbmFtZT86IHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcnM/OiBzdHJpbmdbXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlcGFyYXRvcj86IHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgICAgIGVuY29kaW5nPzogc3RyaW5nO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT86IHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgICB9KSB7XG4gICAgaWYgKCFyb3dzIHx8ICFyb3dzLmxlbmd0aCkgcmV0dXJuOyAvLyBTa2lwIGlmIGVtcHR5XG5cbiAgICAvLyBDcmVhdGUgdGV4dCBjb250ZW50XG4gICAgY29uc3Qgc2VwYXJhdG9yID0gb3B0cz8uc2VwYXJhdG9yIHx8ICcsJztcbiAgICBjb25zdCBwcm90ZWN0Q2VsbFJlZ2V4cCA9IG5ldyBSZWdFeHAoJy8oXCJ8Jysgc2VwYXJhdG9yICsnfFxcbikvZycpO1xuICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhyb3dzWzBdKTtcbiAgICBjb25zdCBoZWFkZXJzID0gb3B0cz8uaGVhZGVycyB8fCBrZXlzO1xuICAgIGNvbnN0IHRleHRDb250ZW50ID1cbiAgICAgIC8vIEhlYWRlciByb3dcbiAgICAgIGhlYWRlcnMuam9pbihzZXBhcmF0b3IpICsgJ1xcbicgK1xuICAgICAgLy8gRGF0YSByb3dzXG4gICAgICByb3dzLm1hcChyb3cgPT4ga2V5cy5tYXAoayA9PiB7XG4gICAgICAgICAgY29uc3QgY2VsbCA9IHJvd1trXSA9PT0gbnVsbCB8fCByb3dba10gPT09IHVuZGVmaW5lZCA/ICcnIDogcm93W2tdO1xuICAgICAgICAgIGxldCBjZWxsU3RyOiBzdHJpbmcgPSBjZWxsIGluc3RhbmNlb2YgRGF0ZVxuICAgICAgICAgICAgPyBjZWxsLnRvTG9jYWxlU3RyaW5nKClcbiAgICAgICAgICAgIDogY2VsbC50b1N0cmluZygpLnJlcGxhY2UoL1wiL2csICdcIlwiJyk7XG4gICAgICAgICAgaWYgKHByb3RlY3RDZWxsUmVnZXhwLnRlc3QoY2VsbFN0cikpIHtcbiAgICAgICAgICAgIGNlbGxTdHIgPSBgXCIke2NlbGxTdHJ9XCJgO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gY2VsbFN0cjtcbiAgICAgICAgfSkuam9pbihzZXBhcmF0b3IpKS5qb2luKCdcXG4nKTtcblxuICAgIC8vIFdyaXRlIHRvIGZpbGVcbiAgICBGaWxlc1V0aWxzLndyaXRlVGV4dFRvRmlsZShcbiAgICAgIHRleHRDb250ZW50LCB7XG4gICAgICAgIHR5cGU6ICd0ZXh0L2NzdicsXG4gICAgICAgIGZpbGVuYW1lOiAnZXhwb3J0LmNzdicsXG4gICAgICAgIC4uLm9wdHMsXG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIHN0YXRpYyBwYXJzZUZpbGUoZmlsZTogRmlsZSwgb3B0cz86IHtzZXBhcmF0b3I/OiBzdHJpbmc7IGVuY29kaW5nPzogc3RyaW5nfSk6IE9ic2VydmFibGU8RmlsZUV2ZW50PHN0cmluZ1tdW10+PiB7XG4gICAgcmV0dXJuIEZpbGVzVXRpbHMucmVhZEFzVGV4dChmaWxlLCBvcHRzPy5lbmNvZGluZylcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoZSA9PiB7XG4gICAgICAgICAgaWYgKGUudHlwZSA9PT0gSHR0cEV2ZW50VHlwZS5VcGxvYWRQcm9ncmVzcykge1xuICAgICAgICAgICAgY29uc3QgbG9hZGVkID0gTWF0aC5yb3VuZChlLmxvYWRlZCAqIDAuOCk7XG4gICAgICAgICAgICByZXR1cm4gey4uLmUsIGxvYWRlZH07XG4gICAgICAgICAgfVxuICAgICAgICAgIGVsc2UgaWYgKGUgaW5zdGFuY2VvZiBGaWxlUmVzcG9uc2Upe1xuICAgICAgICAgICAgY29uc3QgYm9keSA9IGUuYm9keTtcbiAgICAgICAgICAgIGNvbnN0IGRhdGEgPSBDc3ZVdGlscy5wYXJzZUNTVihib2R5LCBvcHRzKTtcbiAgICAgICAgICAgIHJldHVybiBuZXcgRmlsZVJlc3BvbnNlPHN0cmluZ1tdW10+KHtib2R5OiBkYXRhfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgICAgZmlsdGVyKGlzTm90TmlsKVxuICAgICAgKTtcbiAgfVxuXG4gIHN0YXRpYyBwYXJzZUNTVihib2R5OiBzdHJpbmcsIG9wdHM/OiB7c2VwYXJhdG9yPzogc3RyaW5nOyBza2lwRW1wdHlMaW5lPzogYm9vbGVhbn0pOiBzdHJpbmdbXVtdIHtcbiAgICBjb25zdCBzZXBhcmF0b3IgPSBvcHRzPy5zZXBhcmF0b3IgfHwgJywnO1xuICAgIGNvbnN0IHNraXBFbXB0eUxpbmUgPSAhb3B0cyB8fCBvcHRzLnNraXBFbXB0eUxpbmUgIT09IGZhbHNlO1xuXG4gICAgLy8gUHJvdGVjdCBzcGVjaWFsIGNoYXJhY3RlcnMgKHF1b3RlIGFuZCAvbilcbiAgICBib2R5ID0gYm9keS5yZXBsYWNlKCdcIlwiJywgJzxxdW90ZT4nKSAvLyBQcm90ZWN0IGRvdWJsZSBxdW90ZVxuICAgICAgLnJlcGxhY2UoLyhcIlteXFxuXCJdKylcXG5cXHI/L2dtLCAnXCIkMTxicj4nKSAvLyBQcm90ZWN0IFxcbiBpbnNpZGUgYSBxdW90ZWQgZXhwcmVzc2lvblxuICAgICAgLnJlcGxhY2UoL1xcblxcci9nbSwgJ1xcbicpOyAvLyBXaW5kb3dzIENSXG5cbiAgICBjb25zdCBoZWFkZXJBbmRSb3dzID0gYm9keS5zcGxpdCgnXFxuJywgMik7XG4gICAgY29uc3QgaGVhZGVycyA9IGhlYWRlckFuZFJvd3NbMF0uc3BsaXQoc2VwYXJhdG9yKTtcblxuICAgIHJldHVybiBib2R5LnNwbGl0KCdcXG4nKSAvLyBzcGxpdCBpbnRvIHJvd3NcbiAgICAgIC5maWx0ZXIobGluZSA9PiAhc2tpcEVtcHR5TGluZSB8fCBsaW5lLnRyaW0oKS5sZW5ndGggPiAwKSAvLyBTa2lwIGVtcHR5IGxpbmVcbiAgICAgIC5tYXAobGluZSA9PiB7XG4gICAgICAgIGNvbnN0IGNlbGxzID0gbGluZS5zcGxpdChzZXBhcmF0b3IsIGhlYWRlcnMubGVuZ3RoKSAvLyBzcGxpdCBpbnRvIGNlbGxzXG4gICAgICAgICAgLm1hcChjZWxsID0+IGNlbGwucmVwbGFjZSgvXlwiKFteXCJdKilcIiQvLCAnJDEnKSkgLy8gQ2xlYW4gdHJhaWxpbmcgcXVvdGVzXG4gICAgICAgICAgLm1hcChjZWxsID0+IGNlbGwucmVwbGFjZSgnPHF1b3RlPicsICdcIicpKSAvLyByZXN0b3JlIHByb3RlY3RlZCBxdW90ZVxuICAgICAgICAgIC5tYXAoY2VsbCA9PiBjZWxsLnJlcGxhY2UoJzxicj4nLCAnXFxuJykpIC8vIHJlc3RvcmUgcHJvdGVjdGVkIGJyXG4gICAgICAgIDtcbiAgICAgICAgcmV0dXJuIGNlbGxzO1xuICAgICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -119,4 +119,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImpor
119
119
  type: Inject,
120
120
  args: [ENVIRONMENT]
121
121
  }] }] });
122
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zaGFyZWQvZmlsZS9maWxlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3hDLE9BQU8sRUFBQyxXQUFXLEVBQXFCLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0QsT0FBTyxFQUFDLGFBQWEsRUFBRSxrQkFBa0IsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ2pFLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDcEUsT0FBTyxFQUFDLEVBQUUsSUFBSSxNQUFNLEVBQUMsTUFBTSxNQUFNLENBQUM7Ozs7QUFVbEMsTUFBTSxPQUFPLFdBQVc7SUFjWjtJQUdBO0lBQ3VCO0lBaEJoQixNQUFNLENBQVU7SUFDekIsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUVqQixlQUFlLENBQVM7SUFFaEMsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxLQUFLLENBQUM7UUFDYixnQ0FBZ0M7UUFDaEMsbUNBQW1DO0lBQ3JDLENBQUM7SUFFRCxZQUNVLFFBQWtCO0lBQzFCLGlDQUFpQztJQUNqQyxpQ0FBaUM7SUFDekIsSUFBZ0IsRUFDTyxXQUFXO1FBSmxDLGFBQVEsR0FBUixRQUFRLENBQVU7UUFHbEIsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNPLGdCQUFXLEdBQVgsV0FBVyxDQUFBO1FBRTFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDO1FBRXRDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELFNBQVMsQ0FBQyxPQUFpQixFQUFFLElBRTVCO1FBQ0MsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO1FBRXZFLGtGQUFrRjtRQUNsRiw0R0FBNEc7UUFFNUcsTUFBTSxhQUFhLEdBQUcsQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsRUFBQyxHQUFHLElBQUksRUFBQyxDQUFDLENBQUMsQ0FBQztRQUM1RixPQUFPLGFBQWEsQ0FBUyxhQUFhLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRUQsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFlLEVBQUUsSUFFN0I7UUFFRCxJQUFJLFVBQVUsR0FBRyxJQUFJLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUU1RixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLG9DQUFvQyxDQUFDO1FBQy9ELE1BQU0sR0FBRyxHQUFHLEtBQUssSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDaEMsSUFBSSxLQUFLO1lBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQywwQkFBMEIsT0FBTyxVQUFVLFVBQVUsS0FBSyxDQUFDLENBQUM7UUFFckYsb0JBQW9CO1FBQ3BCLE1BQU0sY0FBYyxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDaEQsSUFBSSxjQUFjLEtBQUssQ0FBQyxDQUFDO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxlQUFlLEdBQUcsT0FBTyxDQUFDLENBQUM7UUFDdEUsTUFBTSxRQUFRLEdBQUcsY0FBYyxHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsSUFBSSxPQUFPLENBQUMsU0FBUyxDQUFDLGNBQWMsR0FBRyxDQUFDLENBQUMsSUFBSSxNQUFNLEVBQUUsQ0FBQztRQUc1RyxnQ0FBZ0M7UUFDaEMsSUFBSSxVQUFVLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUNyRCxPQUFPLENBQUMsSUFBSSxDQUFDLG1DQUFtQyxPQUFPLDBCQUEwQixDQUFDLENBQUM7WUFDbkYsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLGVBQWUsR0FBRyxRQUFRLENBQUM7WUFDdkQsSUFBSTtnQkFDRixNQUFNLElBQUksR0FBUyxNQUFNLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRTtvQkFDakUsT0FBTyxFQUFFLE1BQU07b0JBQ2YsWUFBWSxFQUFFLE1BQU07b0JBQ3BCLGNBQWMsRUFBRSxLQUFLO2lCQUN0QixDQUFDLENBQUMsQ0FBQztnQkFDSixPQUFPLENBQUMsS0FBSyxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFFbkQsbUZBQW1GO2dCQUVuRiw2RUFBNkU7Z0JBQzdFLHNEQUFzRDtnQkFDdEQsSUFBSSxLQUFLO29CQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUMsMEJBQTBCLE9BQU8sVUFBVSxVQUFVLFlBQVksSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLEdBQUcsSUFBSSxDQUFDLENBQUM7Z0JBQ2hILE9BQU8sY0FBYyxDQUFDO2FBQ3ZCO1lBQ0QsT0FBTyxHQUFHLEVBQUU7Z0JBQ1YsT0FBTyxDQUFDLEtBQUssQ0FBQywrQkFBK0IsT0FBTyxLQUFLLEdBQUcsSUFBSSxHQUFHLENBQUMsT0FBTyxJQUFJLEdBQUcsRUFBRSxDQUFDLENBQUM7Z0JBRXRGLGtDQUFrQztnQkFDbEMsVUFBVSxHQUFHLFNBQVMsQ0FBQzthQUN4QjtTQUNGO1FBRUQsSUFBSSxVQUFVLEtBQUssU0FBUyxFQUFFO1lBQzVCLDhDQUE4QztZQUM5QyxNQUFNLE9BQU8sR0FBRyxNQUFNLFdBQVcsQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDdEUsSUFBSSxLQUFLO2dCQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUMsMEJBQTBCLE9BQU8sVUFBVSxVQUFVLFlBQVksSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLEdBQUcsSUFBSSxDQUFDLENBQUM7WUFDaEgsT0FBTyxPQUFPLENBQUM7U0FDaEI7UUFFRCxvQkFBb0I7UUFDcEIsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVELDZCQUE2QjtJQUVuQixLQUFLO1FBRWIscUJBQXFCO1FBQ3JCLElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQ3pCLGlGQUFpRjtZQUNqRixnR0FBZ0c7WUFDaEcsbUVBQW1FO1lBRW5FLGdFQUFnRTtZQUNoRSxxQkFBcUI7WUFDckIsa0VBQWtFO1lBQ2xFLCtEQUErRDtZQUMvRCxPQUFPO1lBQ1Asb0JBQW9CO1lBQ3BCLDZJQUE2STtZQUM3SSxzREFBc0Q7WUFDdEQsUUFBUTtTQUNUO1FBRUQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7SUFDdkIsQ0FBQzt1R0FqSFUsV0FBVyxvRUFrQlosV0FBVzsyR0FsQlYsV0FBVyxjQVBWLE1BQU07OzJGQU9QLFdBQVc7a0JBUnZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07b0JBQ2xCLElBQUksRUFBRTt3QkFDSixRQUFRO3dCQUNSLFVBQVU7d0JBQ1YsV0FBVztxQkFDWjtpQkFDRjs7MEJBbUJJLE1BQU07MkJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0LCBJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7UGxhdGZvcm19IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcbmltcG9ydCB7SW1hZ2VzVXRpbHMsIEltYWdlUmVzaXplT3B0aW9uc30gZnJvbSAnLi9pbWFnZXMudXRpbHMnO1xuaW1wb3J0IHtjaGFpblByb21pc2VzLCBmaXJzdE5vdE5pbFByb21pc2V9IGZyb20gJy4uL29ic2VydmFibGVzJztcbmltcG9ydCB7SHR0cENsaWVudH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtFTlZJUk9OTUVOVH0gZnJvbSAnLi4vLi4vLi4vZW52aXJvbm1lbnRzL2Vudmlyb25tZW50LmNsYXNzJztcbmltcG9ydCB7djQgYXMgdXVpZHY0fSBmcm9tICd1dWlkJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG4gIGRlcHM6IFtcbiAgICBQbGF0Zm9ybSxcbiAgICBIdHRwQ2xpZW50LFxuICAgIEVOVklST05NRU5UXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRmlsZVNlcnZpY2Uge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2RlYnVnOiBib29sZWFuO1xuICBwcml2YXRlIF9zdGFydGVkID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBfaW1hZ2VEaXJlY3Rvcnk6IHN0cmluZztcblxuICBnZXQgY2FuVXNlRmlsZVN5c3RlbSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gICAgLy8gRklYTUU6IHNlZW1zIG5vdCB3b3JraW5nIHdlbGxcbiAgICAvL3JldHVybiAhIXRoaXMuZmlsZS5kYXRhRGlyZWN0b3J5O1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBwbGF0Zm9ybTogUGxhdGZvcm0sXG4gICAgLy9wcml2YXRlIHRyYW5zZmVyOiBGaWxlVHJhbnNmZXIsXG4gICAgLy9AT3B0aW9uYWwoKSBwcml2YXRlIGZpbGU6IEZpbGUsXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIEBJbmplY3QoRU5WSVJPTk1FTlQpIHByb3RlY3RlZCBlbnZpcm9ubWVudCkge1xuXG4gICAgdGhpcy5fZGVidWcgPSAhZW52aXJvbm1lbnQucHJvZHVjdGlvbjtcblxuICAgIHBsYXRmb3JtLnJlYWR5KCkudGhlbigoKSA9PiB0aGlzLnN0YXJ0KCkpO1xuICB9XG5cbiAgZ2V0SW1hZ2VzKHNvdXJjZXM6IHN0cmluZ1tdLCBvcHRzPzogSW1hZ2VSZXNpemVPcHRpb25zICYge1xuICAgIG91dHB1dFR5cGU/OiAnZmlsZVVybCcgfCAnZGF0YVVybCc7XG4gIH0pOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgaWYgKCF0aGlzLl9zdGFydGVkKSB0aHJvdyBuZXcgRXJyb3IoJ1BsYXRmb3JtIG11c3QgYmUgc3RhcnRlZCBmaXJzdCEnKTtcblxuICAgIC8vY29uc3QgZmlsZVRyYW5zZmVyID0gdGhpcy5jYW5Vc2VGaWxlU3lzdGVtID8gdGhpcy50cmFuc2Zlci5jcmVhdGUoKSA6IHVuZGVmaW5lZDtcbiAgICAvL2NvbnN0IGpvYnNGYWN0b3JpZXMgPSAoc291cmNlcyB8fCBbXSkubWFwKHNvdXJjZSA9PiAoKSA9PiB0aGlzLmdldEltYWdlKHNvdXJjZSwgey4uLm9wdHMsIGZpbGVUcmFuc2Zlcn0pKTtcblxuICAgIGNvbnN0IGpvYnNGYWN0b3JpZXMgPSAoc291cmNlcyB8fCBbXSkubWFwKHNvdXJjZSA9PiAoKSA9PiB0aGlzLmdldEltYWdlKHNvdXJjZSwgey4uLm9wdHN9KSk7XG4gICAgcmV0dXJuIGNoYWluUHJvbWlzZXM8c3RyaW5nPihqb2JzRmFjdG9yaWVzKTtcbiAgfVxuXG4gIGFzeW5jIGdldEltYWdlKGZpbGVVcmw6IHN0cmluZywgb3B0cz86IEltYWdlUmVzaXplT3B0aW9ucyAmIHtcbiAgICBvdXRwdXRUeXBlPzogJ2ZpbGVVcmwnIHwgJ2RhdGFVcmwnO1xuICAgIH0pOiBQcm9taXNlPHN0cmluZz4ge1xuXG4gICAgbGV0IG91dHB1dFR5cGUgPSBvcHRzICYmIG9wdHMub3V0cHV0VHlwZSB8fCAodGhpcy5jYW5Vc2VGaWxlU3lzdGVtID8gJ2ZpbGVVcmwnIDogJ2RhdGFVcmwnKTtcblxuICAgIGNvbnN0IGRlYnVnID0gdGhpcy5fZGVidWcgLyomJiAoIW9wdHMgfHwgIW9wdHMuZmlsZVRyYW5zZmVyKSovO1xuICAgIGNvbnN0IG5vdyA9IGRlYnVnICYmIERhdGUubm93KCk7XG4gICAgaWYgKGRlYnVnKSBjb25zb2xlLmRlYnVnKGBbZmlsZV0gRmV0Y2hpbmcgaW1hZ2UgeyR7ZmlsZVVybH19IGludG8gJHtvdXRwdXRUeXBlfS4uLmApO1xuXG4gICAgLy8gUmVhZCB0aGUgZmlsZW5hbWVcbiAgICBjb25zdCBsYXN0U2xhc2hJbmRleCA9IGZpbGVVcmwubGFzdEluZGV4T2YoJy8nKTtcbiAgICBpZiAobGFzdFNsYXNoSW5kZXggPT09IC0xKSB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgVVJMOiAnICsgZmlsZVVybCk7XG4gICAgY29uc3QgZmlsZU5hbWUgPSBsYXN0U2xhc2hJbmRleCA8IChmaWxlVXJsLmxlbmd0aCAtIDEpICYmIGZpbGVVcmwuc3Vic3RyaW5nKGxhc3RTbGFzaEluZGV4ICsgMSkgfHwgdXVpZHY0KCk7XG5cblxuICAgIC8vIERvd25sb2FkIGludG8gdGhlIGZpbGUgc3lzdGVtXG4gICAgaWYgKG91dHB1dFR5cGUgPT09ICdmaWxlVXJsJyAmJiB0aGlzLmNhblVzZUZpbGVTeXN0ZW0pIHtcbiAgICAgIGNvbnNvbGUud2FybihgV0FSTjogW2ZpbGVdIERvd25sb2FkaW5nIGltYWdlIHske2ZpbGVVcmx9fSBpbiBsb2NhbCBmaWxlc3lzdGVtLi4uYCk7XG4gICAgICBjb25zdCB0YXJnZXRGaWxlUGF0aCA9IHRoaXMuX2ltYWdlRGlyZWN0b3J5ICsgZmlsZU5hbWU7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBibG9iOiBCbG9iID0gYXdhaXQgZmlyc3ROb3ROaWxQcm9taXNlKHRoaXMuaHR0cC5nZXQoZmlsZVVybCwge1xuICAgICAgICAgIG9ic2VydmU6ICdib2R5JyxcbiAgICAgICAgICByZXNwb25zZVR5cGU6ICdibG9iJyxcbiAgICAgICAgICByZXBvcnRQcm9ncmVzczogZmFsc2VcbiAgICAgICAgfSkpO1xuICAgICAgICBjb25zb2xlLmRlYnVnKCdbZmlsZV0gR2V0dGluZyBibG9iIDonICsgYmxvYi50eXBlKTtcblxuICAgICAgICAvL2F3YWl0IHRoaXMuZmlsZS53cml0ZUZpbGUodGhpcy5faW1hZ2VEaXJlY3RvcnksIGZpbGVOYW1lLCBibG9iLCB7cmVwbGFjZTogdHJ1ZX0pO1xuXG4gICAgICAgIC8vY29uc3QgZmlsZVRyYW5zZmVyID0gKG9wdHMgJiYgb3B0cy5maWxlVHJhbnNmZXIpIHx8IHRoaXMudHJhbnNmZXIuY3JlYXRlKCk7XG4gICAgICAgIC8vYXdhaXQgZmlsZVRyYW5zZmVyLmRvd25sb2FkKHNvdXJjZSwgdGFyZ2V0RmlsZVBhdGgpO1xuICAgICAgICBpZiAoZGVidWcpIGNvbnNvbGUuZGVidWcoYFtmaWxlXSBGZXRjaGluZyBpbWFnZSB7JHtmaWxlVXJsfX0gaW50byAke291dHB1dFR5cGV9IFtPS10gaW4gJHtEYXRlLm5vdygpIC0gbm93fW1zYCk7XG4gICAgICAgIHJldHVybiB0YXJnZXRGaWxlUGF0aDtcbiAgICAgIH1cbiAgICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihgW2ZpbGVdIEVycm9yIHdoaWxlIGRvd25sb2FkICR7ZmlsZVVybH06ICR7ZXJyICYmIGVyci5tZXNzYWdlIHx8IGVycn1gKTtcblxuICAgICAgICAvLyBDb250aW51ZSAoZmFsbGJhY2sgdG8gZGF0YSBVcmwpXG4gICAgICAgIG91dHB1dFR5cGUgPSAnZGF0YVVybCc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKG91dHB1dFR5cGUgPT09ICdkYXRhVXJsJykge1xuICAgICAgLy8gR2V0IGFzIGRhdGEgdXJsIChlLmcuICdkYXRhOmltYWdlL3BuZzouLi4nKVxuICAgICAgY29uc3QgZGF0YVVybCA9IGF3YWl0IEltYWdlc1V0aWxzLnJlYWRBbmRSZXNpemVGcm9tVXJsKGZpbGVVcmwsIG9wdHMpO1xuICAgICAgaWYgKGRlYnVnKSBjb25zb2xlLmRlYnVnKGBbZmlsZV0gRmV0Y2hpbmcgaW1hZ2UgeyR7ZmlsZVVybH19IGludG8gJHtvdXRwdXRUeXBlfSBbT0tdIGluICR7RGF0ZS5ub3coKSAtIG5vd31tc2ApO1xuICAgICAgcmV0dXJuIGRhdGFVcmw7XG4gICAgfVxuXG4gICAgLy8gS2VlcCBvcmlnaW5hbCBVUkxcbiAgICByZXR1cm4gZmlsZVVybDtcbiAgfVxuXG4gIC8qIC0tIHByb3RlY3RlZCBtZXRob2RzIC0tICovXG5cbiAgcHJvdGVjdGVkIHN0YXJ0KCkge1xuXG4gICAgLy8gRmlsZSBzeXN0ZW0gZXhpc3RzXG4gICAgaWYgKHRoaXMuY2FuVXNlRmlsZVN5c3RlbSkge1xuICAgICAgLy9jb25zb2xlLmluZm8oXCJbZmlsZV0gQXBwbGljYXRpb24gZGlyZWN0b3J5OiBcIiwgdGhpcy5maWxlLmFwcGxpY2F0aW9uRGlyZWN0b3J5KTtcbiAgICAgIC8vY29uc29sZS5pbmZvKFwiW2ZpbGVdIEFwcGxpY2F0aW9uIHN0b3JhZ2UgZGlyZWN0b3J5OiBcIiwgdGhpcy5maWxlLmFwcGxpY2F0aW9uU3RvcmFnZURpcmVjdG9yeSk7XG4gICAgICAvL2NvbnNvbGUuaW5mbyhcIltmaWxlXSBEYXRhIGRpcmVjdG9yeTogXCIsIHRoaXMuZmlsZS5kYXRhRGlyZWN0b3J5KTtcblxuICAgICAgLy8gdGhpcy5maWxlLmNyZWF0ZURpcih0aGlzLmZpbGUuZGF0YURpcmVjdG9yeSwgJ2ltYWdlcycsIGZhbHNlKVxuICAgICAgLy8gICAudGhlbigoZGlyKSA9PiB7XG4gICAgICAvLyAgICAgdGhpcy5faW1hZ2VEaXJlY3RvcnkgPSB0aGlzLmZpbGUuZGF0YURpcmVjdG9yeSArICdpbWFnZXMvJztcbiAgICAgIC8vICAgICBjb25zb2xlLmluZm8oXCJbZmlsZV0gSW1hZ2VzIGRpcmVjdG9yeTogXCIsIGRpci5mdWxsUGF0aCk7XG4gICAgICAvLyAgIH0pXG4gICAgICAvLyAgIC5jYXRjaChlcnIgPT4ge1xuICAgICAgLy8gICAgIGNvbnNvbGUuZXJyb3IoXCJbZmlsZV0gQ2Fubm90IGNyZWF0ZSB0aGUgaW1hZ2VzIGRpcmVjdG9yeTogXCIgKyAodGhpcy5maWxlLmRhdGFEaXJlY3RvcnkgKyAnaW1hZ2VzLyA6ICcgKyAoZXJyICYmIGVyci5tZXNzYWdlIHx8IGVycikpKTtcbiAgICAgIC8vICAgICB0aGlzLl9pbWFnZURpcmVjdG9yeSA9IHRoaXMuZmlsZS5kYXRhRGlyZWN0b3J5O1xuICAgICAgLy8gICB9KTtcbiAgICB9XG5cbiAgICB0aGlzLl9zdGFydGVkID0gdHJ1ZTtcbiAgfVxuXG59XG4iXX0=
122
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zaGFyZWQvZmlsZS9maWxlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3hDLE9BQU8sRUFBQyxXQUFXLEVBQXFCLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0QsT0FBTyxFQUFDLGFBQWEsRUFBRSxrQkFBa0IsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ2pFLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDcEUsT0FBTyxFQUFDLEVBQUUsSUFBSSxNQUFNLEVBQUMsTUFBTSxNQUFNLENBQUM7Ozs7QUFVbEMsTUFBTSxPQUFPLFdBQVc7SUFjWjtJQUdBO0lBQ3VCO0lBaEJoQixNQUFNLENBQVU7SUFDekIsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUVqQixlQUFlLENBQVM7SUFFaEMsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxLQUFLLENBQUM7UUFDYixnQ0FBZ0M7UUFDaEMsbUNBQW1DO0lBQ3JDLENBQUM7SUFFRCxZQUNVLFFBQWtCO0lBQzFCLGlDQUFpQztJQUNqQyxpQ0FBaUM7SUFDekIsSUFBZ0IsRUFDTyxXQUFXO1FBSmxDLGFBQVEsR0FBUixRQUFRLENBQVU7UUFHbEIsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNPLGdCQUFXLEdBQVgsV0FBVyxDQUFBO1FBRTFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDO1FBRXRDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFB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RUQsSUFBSSxVQUFVLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDN0IsOENBQThDO1lBQzlDLE1BQU0sT0FBTyxHQUFHLE1BQU0sV0FBVyxDQUFDLG9CQUFvQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztZQUN0RSxJQUFJLEtBQUs7Z0JBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQywwQkFBMEIsT0FBTyxVQUFVLFVBQVUsWUFBWSxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQztZQUNoSCxPQUFPLE9BQU8sQ0FBQztRQUNqQixDQUFDO1FBRUQsb0JBQW9CO1FBQ3BCLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRCw2QkFBNkI7SUFFbkIsS0FBSztRQUViLHFCQUFxQjtRQUNyQixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQzFCLGlGQUFpRjtZQUNqRixnR0FBZ0c7WUFDaEcsbUVBQW1FO1lBRW5FLGdFQUFnRTtZQUNoRSxxQkFBcUI7WUFDckIsa0VBQWtFO1lBQ2xFLCtEQUErRDtZQUMvRCxPQUFPO1lBQ1Asb0JBQW9CO1lBQ3BCLDZJQUE2STtZQUM3SSxzREFBc0Q7WUFDdEQsUUFBUTtRQUNWLENBQUM7UUFFRCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztJQUN2QixDQUFDO3VHQWpIVSxXQUFXLG9FQWtCWixXQUFXOzJHQWxCVixXQUFXLGNBUFYsTUFBTTs7MkZBT1AsV0FBVztrQkFSdkIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtvQkFDbEIsSUFBSSxFQUFFO3dCQUNKLFFBQVE7d0JBQ1IsVUFBVTt3QkFDVixXQUFXO3FCQUNaO2lCQUNGOzswQkFtQkksTUFBTTsyQkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3QsIEluamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtQbGF0Zm9ybX0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuaW1wb3J0IHtJbWFnZXNVdGlscywgSW1hZ2VSZXNpemVPcHRpb25zfSBmcm9tICcuL2ltYWdlcy51dGlscyc7XG5pbXBvcnQge2NoYWluUHJvbWlzZXMsIGZpcnN0Tm90TmlsUHJvbWlzZX0gZnJvbSAnLi4vb2JzZXJ2YWJsZXMnO1xuaW1wb3J0IHtIdHRwQ2xpZW50fSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge0VOVklST05NRU5UfSBmcm9tICcuLi8uLi8uLi9lbnZpcm9ubWVudHMvZW52aXJvbm1lbnQuY2xhc3MnO1xuaW1wb3J0IHt2NCBhcyB1dWlkdjR9IGZyb20gJ3V1aWQnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290JyxcbiAgZGVwczogW1xuICAgIFBsYXRmb3JtLFxuICAgIEh0dHBDbGllbnQsXG4gICAgRU5WSVJPTk1FTlRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBGaWxlU2VydmljZSB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfZGVidWc6IGJvb2xlYW47XG4gIHByaXZhdGUgX3N0YXJ0ZWQgPSBmYWxzZTtcblxuICBwcml2YXRlIF9pbWFnZURpcmVjdG9yeTogc3RyaW5nO1xuXG4gIGdldCBjYW5Vc2VGaWxlU3lzdGVtKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBmYWxzZTtcbiAgICAvLyBGSVhNRTogc2VlbXMgbm90IHdvcmtpbmcgd2VsbFxuICAgIC8vcmV0dXJuICEhdGhpcy5maWxlLmRhdGFEaXJlY3Rvcnk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHBsYXRmb3JtOiBQbGF0Zm9ybSxcbiAgICAvL3ByaXZhdGUgdHJhbnNmZXI6IEZpbGVUcmFuc2ZlcixcbiAgICAvL0BPcHRpb25hbCgpIHByaXZhdGUgZmlsZTogRmlsZSxcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgQEluamVjdChFTlZJUk9OTUVOVCkgcHJvdGVjdGVkIGVudmlyb25tZW50KSB7XG5cbiAgICB0aGlzLl9kZWJ1ZyA9ICFlbnZpcm9ubWVudC5wcm9kdWN0aW9uO1xuXG4gICAgcGxhdGZvcm0ucmVhZHkoKS50aGVuKCgpID0+IHRoaXMuc3RhcnQoKSk7XG4gIH1cblxuICBnZXRJbWFnZXMoc291cmNlczogc3RyaW5nW10sIG9wdHM/OiBJbWFnZVJlc2l6ZU9wdGlvbnMgJiB7XG4gICAgb3V0cHV0VHlwZT86ICdmaWxlVXJsJyB8ICdkYXRhVXJsJztcbiAgfSk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgICBpZiAoIXRoaXMuX3N0YXJ0ZWQpIHRocm93IG5ldyBFcnJvcignUGxhdGZvcm0gbXVzdCBiZSBzdGFydGVkIGZpcnN0IScpO1xuXG4gICAgLy9jb25zdCBmaWxlVHJhbnNmZXIgPSB0aGlzLmNhblVzZUZpbGVTeXN0ZW0gPyB0aGlzLnRyYW5zZmVyLmNyZWF0ZSgpIDogdW5kZWZpbmVkO1xuICAgIC8vY29uc3Qgam9ic0ZhY3RvcmllcyA9IChzb3VyY2VzIHx8IFtdKS5tYXAoc291cmNlID0+ICgpID0+IHRoaXMuZ2V0SW1hZ2Uoc291cmNlLCB7Li4ub3B0cywgZmlsZVRyYW5zZmVyfSkpO1xuXG4gICAgY29uc3Qgam9ic0ZhY3RvcmllcyA9IChzb3VyY2VzIHx8IFtdKS5tYXAoc291cmNlID0+ICgpID0+IHRoaXMuZ2V0SW1hZ2Uoc291cmNlLCB7Li4ub3B0c30pKTtcbiAgICByZXR1cm4gY2hhaW5Qcm9taXNlczxzdHJpbmc+KGpvYnNGYWN0b3JpZXMpO1xuICB9XG5cbiAgYXN5bmMgZ2V0SW1hZ2UoZmlsZVVybDogc3RyaW5nLCBvcHRzPzogSW1hZ2VSZXNpemVPcHRpb25zICYge1xuICAgIG91dHB1dFR5cGU/OiAnZmlsZVVybCcgfCAnZGF0YVVybCc7XG4gICAgfSk6IFByb21pc2U8c3RyaW5nPiB7XG5cbiAgICBsZXQgb3V0cHV0VHlwZSA9IG9wdHMgJiYgb3B0cy5vdXRwdXRUeXBlIHx8ICh0aGlzLmNhblVzZUZpbGVTeXN0ZW0gPyAnZmlsZVVybCcgOiAnZGF0YVVybCcpO1xuXG4gICAgY29uc3QgZGVidWcgPSB0aGlzLl9kZWJ1ZyAvKiYmICghb3B0cyB8fCAhb3B0cy5maWxlVHJhbnNmZXIpKi87XG4gICAgY29uc3Qgbm93ID0gZGVidWcgJiYgRGF0ZS5ub3coKTtcbiAgICBpZiAoZGVidWcpIGNvbnNvbGUuZGVidWcoYFtmaWxlXSBGZXRjaGluZyBpbWFnZSB7JHtmaWxlVXJsfX0gaW50byAke291dHB1dFR5cGV9Li4uYCk7XG5cbiAgICAvLyBSZWFkIHRoZSBmaWxlbmFtZVxuICAgIGNvbnN0IGxhc3RTbGFzaEluZGV4ID0gZmlsZVVybC5sYXN0SW5kZXhPZignLycpO1xuICAgIGlmIChsYXN0U2xhc2hJbmRleCA9PT0gLTEpIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBVUkw6ICcgKyBmaWxlVXJsKTtcbiAgICBjb25zdCBmaWxlTmFtZSA9IGxhc3RTbGFzaEluZGV4IDwgKGZpbGVVcmwubGVuZ3RoIC0gMSkgJiYgZmlsZVVybC5zdWJzdHJpbmcobGFzdFNsYXNoSW5kZXggKyAxKSB8fCB1dWlkdjQoKTtcblxuXG4gICAgLy8gRG93bmxvYWQgaW50byB0aGUgZmlsZSBzeXN0ZW1cbiAgICBpZiAob3V0cHV0VHlwZSA9PT0gJ2ZpbGVVcmwnICYmIHRoaXMuY2FuVXNlRmlsZVN5c3RlbSkge1xuICAgICAgY29uc29sZS53YXJuKGBXQVJOOiBbZmlsZV0gRG93bmxvYWRpbmcgaW1hZ2UgeyR7ZmlsZVVybH19IGluIGxvY2FsIGZpbGVzeXN0ZW0uLi5gKTtcbiAgICAgIGNvbnN0IHRhcmdldEZpbGVQYXRoID0gdGhpcy5faW1hZ2VEaXJlY3RvcnkgKyBmaWxlTmFtZTtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGJsb2I6IEJsb2IgPSBhd2FpdCBmaXJzdE5vdE5pbFByb21pc2UodGhpcy5odHRwLmdldChmaWxlVXJsLCB7XG4gICAgICAgICAgb2JzZXJ2ZTogJ2JvZHknLFxuICAgICAgICAgIHJlc3BvbnNlVHlwZTogJ2Jsb2InLFxuICAgICAgICAgIHJlcG9ydFByb2dyZXNzOiBmYWxzZVxuICAgICAgICB9KSk7XG4gICAgICAgIGNvbnNvbGUuZGVidWcoJ1tmaWxlXSBHZXR0aW5nIGJsb2IgOicgKyBibG9iLnR5cGUpO1xuXG4gICAgICAgIC8vYXdhaXQgdGhpcy5maWxlLndyaXRlRmlsZSh0aGlzLl9pbWFnZURpcmVjdG9yeSwgZmlsZU5hbWUsIGJsb2IsIHtyZXBsYWNlOiB0cnVlfSk7XG5cbiAgICAgICAgLy9jb25zdCBmaWxlVHJhbnNmZXIgPSAob3B0cyAmJiBvcHRzLmZpbGVUcmFuc2ZlcikgfHwgdGhpcy50cmFuc2Zlci5jcmVhdGUoKTtcbiAgICAgICAgLy9hd2FpdCBmaWxlVHJhbnNmZXIuZG93bmxvYWQoc291cmNlLCB0YXJnZXRGaWxlUGF0aCk7XG4gICAgICAgIGlmIChkZWJ1ZykgY29uc29sZS5kZWJ1ZyhgW2ZpbGVdIEZldGNoaW5nIGltYWdlIHske2ZpbGVVcmx9fSBpbnRvICR7b3V0cHV0VHlwZX0gW09LXSBpbiAke0RhdGUubm93KCkgLSBub3d9bXNgKTtcbiAgICAgICAgcmV0dXJuIHRhcmdldEZpbGVQYXRoO1xuICAgICAgfVxuICAgICAgY2F0Y2ggKGVycikge1xuICAgICAgICBjb25zb2xlLmVycm9yKGBbZmlsZV0gRXJyb3Igd2hpbGUgZG93bmxvYWQgJHtmaWxlVXJsfTogJHtlcnIgJiYgZXJyLm1lc3NhZ2UgfHwgZXJyfWApO1xuXG4gICAgICAgIC8vIENvbnRpbnVlIChmYWxsYmFjayB0byBkYXRhIFVybClcbiAgICAgICAgb3V0cHV0VHlwZSA9ICdkYXRhVXJsJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAob3V0cHV0VHlwZSA9PT0gJ2RhdGFVcmwnKSB7XG4gICAgICAvLyBHZXQgYXMgZGF0YSB1cmwgKGUuZy4gJ2RhdGE6aW1hZ2UvcG5nOi4uLicpXG4gICAgICBjb25zdCBkYXRhVXJsID0gYXdhaXQgSW1hZ2VzVXRpbHMucmVhZEFuZFJlc2l6ZUZyb21VcmwoZmlsZVVybCwgb3B0cyk7XG4gICAgICBpZiAoZGVidWcpIGNvbnNvbGUuZGVidWcoYFtmaWxlXSBGZXRjaGluZyBpbWFnZSB7JHtmaWxlVXJsfX0gaW50byAke291dHB1dFR5cGV9IFtPS10gaW4gJHtEYXRlLm5vdygpIC0gbm93fW1zYCk7XG4gICAgICByZXR1cm4gZGF0YVVybDtcbiAgICB9XG5cbiAgICAvLyBLZWVwIG9yaWdpbmFsIFVSTFxuICAgIHJldHVybiBmaWxlVXJsO1xuICB9XG5cbiAgLyogLS0gcHJvdGVjdGVkIG1ldGhvZHMgLS0gKi9cblxuICBwcm90ZWN0ZWQgc3RhcnQoKSB7XG5cbiAgICAvLyBGaWxlIHN5c3RlbSBleGlzdHNcbiAgICBpZiAodGhpcy5jYW5Vc2VGaWxlU3lzdGVtKSB7XG4gICAgICAvL2NvbnNvbGUuaW5mbyhcIltmaWxlXSBBcHBsaWNhdGlvbiBkaXJlY3Rvcnk6IFwiLCB0aGlzLmZpbGUuYXBwbGljYXRpb25EaXJlY3RvcnkpO1xuICAgICAgLy9jb25zb2xlLmluZm8oXCJbZmlsZV0gQXBwbGljYXRpb24gc3RvcmFnZSBkaXJlY3Rvcnk6IFwiLCB0aGlzLmZpbGUuYXBwbGljYXRpb25TdG9yYWdlRGlyZWN0b3J5KTtcbiAgICAgIC8vY29uc29sZS5pbmZvKFwiW2ZpbGVdIERhdGEgZGlyZWN0b3J5OiBcIiwgdGhpcy5maWxlLmRhdGFEaXJlY3RvcnkpO1xuXG4gICAgICAvLyB0aGlzLmZpbGUuY3JlYXRlRGlyKHRoaXMuZmlsZS5kYXRhRGlyZWN0b3J5LCAnaW1hZ2VzJywgZmFsc2UpXG4gICAgICAvLyAgIC50aGVuKChkaXIpID0+IHtcbiAgICAgIC8vICAgICB0aGlzLl9pbWFnZURpcmVjdG9yeSA9IHRoaXMuZmlsZS5kYXRhRGlyZWN0b3J5ICsgJ2ltYWdlcy8nO1xuICAgICAgLy8gICAgIGNvbnNvbGUuaW5mbyhcIltmaWxlXSBJbWFnZXMgZGlyZWN0b3J5OiBcIiwgZGlyLmZ1bGxQYXRoKTtcbiAgICAgIC8vICAgfSlcbiAgICAgIC8vICAgLmNhdGNoKGVyciA9PiB7XG4gICAgICAvLyAgICAgY29uc29sZS5lcnJvcihcIltmaWxlXSBDYW5ub3QgY3JlYXRlIHRoZSBpbWFnZXMgZGlyZWN0b3J5OiBcIiArICh0aGlzLmZpbGUuZGF0YURpcmVjdG9yeSArICdpbWFnZXMvIDogJyArIChlcnIgJiYgZXJyLm1lc3NhZ2UgfHwgZXJyKSkpO1xuICAgICAgLy8gICAgIHRoaXMuX2ltYWdlRGlyZWN0b3J5ID0gdGhpcy5maWxlLmRhdGFEaXJlY3Rvcnk7XG4gICAgICAvLyAgIH0pO1xuICAgIH1cblxuICAgIHRoaXMuX3N0YXJ0ZWQgPSB0cnVlO1xuICB9XG5cbn1cbiJdfQ==
@@ -110,4 +110,4 @@ export class FilesUtils {
110
110
  return uri.substring(lastSlashIndex + 1);
111
111
  }
112
112
  }
113
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL2ZpbGUvZmlsZS51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVksWUFBWSxFQUFhLE1BQU0sa0NBQWtDLENBQUM7QUFDckYsT0FBTyxFQUFDLGlCQUFpQixFQUEyQixNQUFNLDhDQUE4QyxDQUFDO0FBR3pHLE9BQU8sRUFBYSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDekMsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRW5ELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFFMUMsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDckMsV0FBVyxFQUFFLHlDQUF5QztDQUN2RCxDQUFDLENBQUM7QUFHSCxNQUFNLE9BQU8sVUFBVTtJQUVyQixNQUFNLENBQUMsYUFBYSxHQUFHLElBQUksVUFBVSxDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWTtJQUV2RSxNQUFNLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFJLGlCQUFvQyxFQUN2QyxLQUFZLEVBQ1osSUFBaUM7UUFDOUQsTUFBTSxLQUFLLEdBQUcsTUFBTSxpQkFBaUIsQ0FBQyxNQUFNLENBQUM7WUFDM0MsU0FBUyxFQUFFLGlCQUFpQjtZQUM1QixjQUFjLEVBQUUsSUFBSTtZQUNwQixlQUFlLEVBQUUsS0FBSztZQUN0QixhQUFhLEVBQUUsS0FBSztZQUNwQixLQUFLO1lBQ0wsV0FBVyxFQUFFLElBQUk7WUFDakIsUUFBUSxFQUFFLGVBQWU7U0FDMUIsQ0FBQyxDQUFDO1FBRUgsTUFBTSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDdEIsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUs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Q0FBQyxDQUFDO2dCQUMvQixJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFDeEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDO2dCQUNqQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDaEMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNiLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ2pDO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsTUFBTSxDQUFDLGtCQUFrQixDQUFDLEdBQVc7UUFDbkMsTUFBTSxjQUFjLEdBQUcsR0FBRyxFQUFFLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM3QyxJQUFJLGNBQWMsS0FBSyxDQUFDLENBQUMsSUFBSSxjQUFjLEtBQUssR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO1FBQ3RILE9BQU8sR0FBRyxDQUFDLFNBQVMsQ0FBQyxjQUFjLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDM0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RmlsZUV2ZW50LCBGaWxlUmVzcG9uc2UsIFVwbG9hZEZpbGV9IGZyb20gJy4uL3VwbG9hZC1maWxlL3VwbG9hZC1maWxlLm1vZGVsJztcbmltcG9ydCB7VXBsb2FkRmlsZVBvcG92ZXIsIFVwbG9hZEZpbGVQb3BvdmVyT3B0aW9uc30gZnJvbSAnLi4vdXBsb2FkLWZpbGUvdXBsb2FkLWZpbGUtcG9wb3Zlci5jb21wb25lbnQnO1xuXG5pbXBvcnQge1BvcG92ZXJDb250cm9sbGVyfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XG5pbXBvcnQge09ic2VydmFibGUsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtIdHRwRXZlbnRUeXBlfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge092ZXJsYXlFdmVudERldGFpbH0gZnJvbSAnQGlvbmljL2NvcmUnO1xuaW1wb3J0IHtpc05pbE9yQmxhbmt9IGZyb20gJy4uL2Z1bmN0aW9ucyc7XG5cbmV4cG9ydCBjb25zdCBNaW1lVHlwZXMgPSBPYmplY3QuZnJlZXplKHtcbiAgQU5EUk9JRF9BUEs6ICdhcHBsaWNhdGlvbi92bmQuYW5kcm9pZC5wYWNrYWdlLWFyY2hpdmUnXG59KTtcblxuXG5leHBvcnQgY2xhc3MgRmlsZXNVdGlscyB7XG5cbiAgc3RhdGljIFVURjhfQk9NX0NIQVIgPSBuZXcgVWludDhBcnJheShbMHhFRiwgMHhCQiwgMHhCRl0pOyAvLyBVVEYtOCBCT01cblxuICBzdGF0aWMgYXN5bmMgc2hvd1VwbG9hZFBvcG92ZXI8VD4ocG9wb3ZlckNvbnRyb2xsZXI6IFBvcG92ZXJDb250cm9sbGVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQ6IEV2ZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0czogVXBsb2FkRmlsZVBvcG92ZXJPcHRpb25zPFQ+KTogUHJvbWlzZTxPdmVybGF5RXZlbnREZXRhaWw8VXBsb2FkRmlsZTxUPltdPj4ge1xuICAgIGNvbnN0IG1vZGFsID0gYXdhaXQgcG9wb3ZlckNvbnRyb2xsZXIuY3JlYXRlKHtcbiAgICAgIGNvbXBvbmVudDogVXBsb2FkRmlsZVBvcG92ZXIsXG4gICAgICBjb21wb25lbnRQcm9wczogb3B0cyxcbiAgICAgIGJhY2tkcm9wRGlzbWlzczogZmFsc2UsXG4gICAgICBrZXlib2FyZENsb3NlOiBmYWxzZSxcbiAgICAgIGV2ZW50LFxuICAgICAgdHJhbnNsdWNlbnQ6IHRydWUsXG4gICAgICBjc3NDbGFzczogJ3BvcG92ZXItbGFyZ2UnLFxuICAgIH0pO1xuXG4gICAgYXdhaXQgbW9kYWwucHJlc2VudCgpO1xuICAgIGNvbnN0IHsgZGF0YSwgcm9sZSB9ID0gYXdhaXQgbW9kYWwub25EaWREaXNtaXNzKCk7XG4gICAgcmV0dXJuIHtcbiAgICAgIHJvbGUsXG4gICAgICBkYXRhOiBkYXRhID8gZGF0YSBhcyBVcGxvYWRGaWxlPFQ+W10gOiB1bmRlZmluZWRcbiAgICB9O1xuICB9XG5cbiAgc3RhdGljIHJlYWRBc1RleHQoZmlsZTogRmlsZSwgZW5jb2Rpbmc/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPEZpbGVFdmVudDxzdHJpbmc+PiB7XG5cbiAgICBjb25zdCAkcHJvZ3Jlc3MgPSBuZXcgU3ViamVjdDxGaWxlRXZlbnQ8c3RyaW5nPj4oKTtcbiAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xuICAgIGVuY29kaW5nID0gKGVuY29kaW5nIHx8ICdVVEYtOCcpLnRvTG93ZXJDYXNlKCk7XG5cbiAgICAvLyBMaXN0ZW4gcHJvZ3Jlc3NcbiAgICByZWFkZXIub25wcm9ncmVzcyA9IChlOiBQcm9ncmVzc0V2ZW50KSA9PiB7XG4gICAgICBjb25zdCB0b3RhbCA9IGUudG90YWwgfHwgMTtcbiAgICAgIGNvbnN0IGxvYWRlZCA9IGUudG90YWwgfHwgMDtcbiAgICAgIGlmIChsb2FkZWQgPCB0b3RhbCkgJHByb2dyZXNzLm5leHQoe3R5cGU6IEh0dHBFdmVudFR5cGUuVXBsb2FkUHJvZ3Jlc3MsIGxvYWRlZCwgdG90YWx9KTtcbiAgICB9O1xuXG4gICAgLy8gTGlzdGVuIGVuZFxuICAgIHJlYWRlci5vbmxvYWRlbmQgPSAoXykgPT4ge1xuICAgICAgY29uc3QgYm9keSA9IHJlYWRlci5yZXN1bHQ7XG4gICAgICBpZiAodHlwZW9mIGJvZHkgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICRwcm9ncmVzcy5uZXh0KG5ldyBGaWxlUmVzcG9uc2Uoe2JvZHl9KSk7XG4gICAgICAgICRwcm9ncmVzcy5jb21wbGV0ZSgpO1xuICAgICAgfVxuICAgICAgZWxzZSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoYENhbm5vdCByZWFkIGZpbGUgJyR7ZmlsZS5uYW1lfScgYXMgdGV4dGApO1xuICAgICAgICAkcHJvZ3Jlc3MuZXJyb3IoYENhbm5vdCByZWFkIGZpbGUgYXMgdGV4dGApO1xuICAgICAgfVxuICAgIH07XG5cbiAgICAvLyBMaXN0ZW4gZXJyb3JcbiAgICByZWFkZXIub25lcnJvciA9IChldmVudDogUHJvZ3Jlc3NFdmVudCkgPT4ge1xuICAgICAgY29uc29sZS5lcnJvcignW2ZpbGVzXSBFcnJvciB3aGlsZSByZWFkaW5nIGZpbGU6JywgZXZlbnQpO1xuICAgICAgJHByb2dyZXNzLmVycm9yKGV2ZW50KTtcbiAgICB9O1xuXG4gICAgLy8gU3RhcnQgcmVhZGluZyB0aGUgZmlsZVxuICAgIHJlYWRlci5yZWFkQXNUZXh0KGZpbGUsIGVuY29kaW5nKTtcblxuICAgIHJldHVybiAkcHJvZ3Jlc3MuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBzdGF0aWMgd3JpdGVUZXh0VG9GaWxlKGNvbnRlbnQ6IHN0cmluZyxcbiAgICAgICAgICAgICAgICAgICAgICAgICBvcHRzPzoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZW5hbWU/OiBzdHJpbmc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBlbmNvZGluZz86IHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU/OiBzdHJpbmc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgfSkge1xuICAgIGlmIChpc05pbE9yQmxhbmsoY29udGVudCkpIHJldHVybjsgLy8gU2tpcCBpZiBlbXB0eVxuXG4gICAgY29uc3QgZmlsZW5hbWUgPSBvcHRzPy5maWxlbmFtZSB8fCAnZXhwb3J0LnR4dCc7XG4gICAgY29uc3QgY2hhcnNldCA9IChvcHRzPy5lbmNvZGluZyB8fCAndXRmLTgnKS50b0xvd2VyQ2FzZSgpO1xuICAgIGNvbnN0IHR5cGUgPSBvcHRzPy50eXBlIHx8ICd0ZXh0L3BsYWluJztcbiAgICBjb25zdCBibG9iID0gbmV3IEJsb2IoKGNoYXJzZXQgPT09ICd1dGYtOCcpXG4gICAgICAgIC8vIEFkZCBVVEYtOCBCT00gY2hhcmFjdGVyXG4gICAgICAgID8gW0ZpbGVzVXRpbHMuVVRGOF9CT01fQ0hBUiwgY29udGVudF1cbiAgICAgICAgLy8gTm9uIFVURi04IGNoYXJzZXRcbiAgICAgICAgOiBbY29udGVudF0sXG4gICAgICB7IHR5cGU6IGAke3R5cGV9O2NoYXJzZXQ9JHtjaGFyc2V0fTtgIH0pO1xuICAgIGlmICgobmF2aWdhdG9yIGFzIGFueSkubXNTYXZlQmxvYikgeyAvLyBJRSAxMCtcbiAgICAgIChuYXZpZ2F0b3IgYXMgYW55KS5tc1NhdmVCbG9iKGJsb2IsIGZpbGVuYW1lKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgbGluayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTtcbiAgICAgIGlmIChsaW5rLmRvd25sb2FkICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgLy8gQnJvd3NlcnMgdGhhdCBzdXBwb3J0IEhUTUw1IGRvd25sb2FkIGF0dHJpYnV0ZVxuICAgICAgICBjb25zdCB1cmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpO1xuICAgICAgICBsaW5rLnNldEF0dHJpYnV0ZSgnaHJlZicsIHVybCk7XG4gICAgICAgIGxpbmsuc2V0QXR0cmlidXRlKCdkb3dubG9hZCcsIGZpbGVuYW1lKTtcbiAgICAgICAgbGluay5zdHlsZS52aXNpYmlsaXR5ID0gJ2hpZGRlbic7XG4gICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQobGluayk7XG4gICAgICAgIGxpbmsuY2xpY2soKTtcbiAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChsaW5rKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBzdGF0aWMgZG93bmxvYWRVcmkodXJpOiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgICAgICBmaWxlbmFtZT86IHN0cmluZykge1xuICAgIGlmICgobmF2aWdhdG9yIGFzIGFueSkubXNMYXVuY2hVcmkpIHsgLy8gSUUgMTArXG4gICAgICAobmF2aWdhdG9yIGFzIGFueSkubXNMYXVuY2hVcmkodXJpKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICBmaWxlbmFtZSA9IGZpbGVuYW1lIHx8IHRoaXMuZ2V0RmlsZW5hbWVGcm9tVXJpKHVyaSk7XG4gICAgICBjb25zdCBsaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xuICAgICAgaWYgKGxpbmsuZG93bmxvYWQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAvLyBCcm93c2VycyB0aGF0IHN1cHBvcnQgSFRNTDUgZG93bmxvYWQgYXR0cmlidXRlXG4gICAgICAgIGxpbmsuc2V0QXR0cmlidXRlKCdocmVmJywgdXJpKTtcbiAgICAgICAgbGluay5zZXRBdHRyaWJ1dGUoJ2Rvd25sb2FkJywgZmlsZW5hbWUpO1xuICAgICAgICBsaW5rLnN0eWxlLnZpc2liaWxpdHkgPSAnaGlkZGVuJztcbiAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsaW5rKTtcbiAgICAgICAgbGluay5jbGljaygpO1xuICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGxpbmspO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHN0YXRpYyBnZXRGaWxlbmFtZUZyb21VcmkodXJpOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IGxhc3RTbGFzaEluZGV4ID0gdXJpPy5sYXN0SW5kZXhPZignLycpO1xuICAgIGlmIChsYXN0U2xhc2hJbmRleCA9PT0gLTEgfHwgbGFzdFNsYXNoSW5kZXggPT09IHVyaS5sZW5ndGggLSAxKSB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgVVJJIGZvcm1hdC4gTm8gc2xhc2ggZm91bmQnKTtcbiAgICByZXR1cm4gdXJpLnN1YnN0cmluZyhsYXN0U2xhc2hJbmRleCArIDEpO1xuICB9XG59XG5cbiJdfQ==
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL2ZpbGUvZmlsZS51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVksWUFBWSxFQUFhLE1BQU0sa0NBQWtDLENBQUM7QUFDckYsT0FBTyxFQUFDLGlCQUFpQixFQUEyQixNQUFNLDhDQUE4QyxDQUFDO0FBR3pHLE9BQU8sRUFBYSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDekMsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRW5ELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFFMUMsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDckMsV0FBVyxFQUFFLHlDQUF5QztDQUN2RCxDQUFDLENBQUM7QUFHSCxNQUFNLE9BQU8sVUFBVTtJQUVyQixNQUFNLENBQUMsYUFBYSxHQUFHLElBQUksVUFBVSxDQUFDLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWTtJQUV2RSxNQUFNLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFJLGlCQUFvQyxFQUN2QyxLQUFZLEVBQ1osSUFBaUM7UUFDOUQsTUFBTSxLQUFLLEdBQUcsTUFBTSxpQkFBaUIsQ0FBQyxNQUFNLENBQUM7WUFDM0MsU0FBUyxFQUFFLGlCQUFpQjtZQUM1QixjQUFjLEVBQUUsSUFBSTtZQUNwQixlQUFlLEVBQUUsS0FBSztZQUN0QixhQUFhLEVBQUUsS0FBSztZQUNwQixLQUFLO1lBQ0wsV0FBVyxFQUFFLElBQUk7WUFDakIsUUFBUSxFQUFFLGVBQWU7U0FDMUIsQ0FBQyxDQUFDO1FBRUgsTUFBTSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDdEIsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUs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QUFTLEVBQUUsQ0FBQztnQkFDaEMsaURBQWlEO2dCQUNqRCxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDL0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7Z0JBQ3hDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxHQUFHLFFBQVEsQ0FBQztnQkFDakMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDYixRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNsQyxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxNQUFNLENBQUMsa0JBQWtCLENBQUMsR0FBVztRQUNuQyxNQUFNLGNBQWMsR0FBRyxHQUFHLEVBQUUsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzdDLElBQUksY0FBYyxLQUFLLENBQUMsQ0FBQyxJQUFJLGNBQWMsS0FBSyxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUM7WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7UUFDdEgsT0FBTyxHQUFHLENBQUMsU0FBUyxDQUFDLGNBQWMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUMzQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtGaWxlRXZlbnQsIEZpbGVSZXNwb25zZSwgVXBsb2FkRmlsZX0gZnJvbSAnLi4vdXBsb2FkLWZpbGUvdXBsb2FkLWZpbGUubW9kZWwnO1xuaW1wb3J0IHtVcGxvYWRGaWxlUG9wb3ZlciwgVXBsb2FkRmlsZVBvcG92ZXJPcHRpb25zfSBmcm9tICcuLi91cGxvYWQtZmlsZS91cGxvYWQtZmlsZS1wb3BvdmVyLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7UG9wb3ZlckNvbnRyb2xsZXJ9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0h0dHBFdmVudFR5cGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7T3ZlcmxheUV2ZW50RGV0YWlsfSBmcm9tICdAaW9uaWMvY29yZSc7XG5pbXBvcnQge2lzTmlsT3JCbGFua30gZnJvbSAnLi4vZnVuY3Rpb25zJztcblxuZXhwb3J0IGNvbnN0IE1pbWVUeXBlcyA9IE9iamVjdC5mcmVlemUoe1xuICBBTkRST0lEX0FQSzogJ2FwcGxpY2F0aW9uL3ZuZC5hbmRyb2lkLnBhY2thZ2UtYXJjaGl2ZSdcbn0pO1xuXG5cbmV4cG9ydCBjbGFzcyBGaWxlc1V0aWxzIHtcblxuICBzdGF0aWMgVVRGOF9CT01fQ0hBUiA9IG5ldyBVaW50OEFycmF5KFsweEVGLCAweEJCLCAweEJGXSk7IC8vIFVURi04IEJPTVxuXG4gIHN0YXRpYyBhc3luYyBzaG93VXBsb2FkUG9wb3ZlcjxUPihwb3BvdmVyQ29udHJvbGxlcjogUG9wb3ZlckNvbnRyb2xsZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudDogRXZlbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRzOiBVcGxvYWRGaWxlUG9wb3Zlck9wdGlvbnM8VD4pOiBQcm9taXNlPE92ZXJsYXlFdmVudERldGFpbDxVcGxvYWRGaWxlPFQ+W10+PiB7XG4gICAgY29uc3QgbW9kYWwgPSBhd2FpdCBwb3BvdmVyQ29udHJvbGxlci5jcmVhdGUoe1xuICAgICAgY29tcG9uZW50OiBVcGxvYWRGaWxlUG9wb3ZlcixcbiAgICAgIGNvbXBvbmVudFByb3BzOiBvcHRzLFxuICAgICAgYmFja2Ryb3BEaXNtaXNzOiBmYWxzZSxcbiAgICAgIGtleWJvYXJkQ2xvc2U6IGZhbHNlLFxuICAgICAgZXZlbnQsXG4gICAgICB0cmFuc2x1Y2VudDogdHJ1ZSxcbiAgICAgIGNzc0NsYXNzOiAncG9wb3Zlci1sYXJnZScsXG4gICAgfSk7XG5cbiAgICBhd2FpdCBtb2RhbC5wcmVzZW50KCk7XG4gICAgY29uc3QgeyBkYXRhLCByb2xlIH0gPSBhd2FpdCBtb2RhbC5vbkRpZERpc21pc3MoKTtcbiAgICByZXR1cm4ge1xuICAgICAgcm9sZSxcbiAgICAgIGRhdGE6IGRhdGEgPyBkYXRhIGFzIFVwbG9hZEZpbGU8VD5bXSA6IHVuZGVmaW5lZFxuICAgIH07XG4gIH1cblxuICBzdGF0aWMgcmVhZEFzVGV4dChmaWxlOiBGaWxlLCBlbmNvZGluZz86IHN0cmluZyk6IE9ic2VydmFibGU8RmlsZUV2ZW50PHN0cmluZz4+IHtcblxuICAgIGNvbnN0ICRwcm9ncmVzcyA9IG5ldyBTdWJqZWN0PEZpbGVFdmVudDxzdHJpbmc+PigpO1xuICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XG4gICAgZW5jb2RpbmcgPSAoZW5jb2RpbmcgfHwgJ1VURi04JykudG9Mb3dlckNhc2UoKTtcblxuICAgIC8vIExpc3RlbiBwcm9ncmVzc1xuICAgIHJlYWRlci5vbnByb2dyZXNzID0gKGU6IFByb2dyZXNzRXZlbnQpID0+IHtcbiAgICAgIGNvbnN0IHRvdGFsID0gZS50b3RhbCB8fCAxO1xuICAgICAgY29uc3QgbG9hZGVkID0gZS50b3RhbCB8fCAwO1xuICAgICAgaWYgKGxvYWRlZCA8IHRvdGFsKSAkcHJvZ3Jlc3MubmV4dCh7dHlwZTogSHR0cEV2ZW50VHlwZS5VcGxvYWRQcm9ncmVzcywgbG9hZGVkLCB0b3RhbH0pO1xuICAgIH07XG5cbiAgICAvLyBMaXN0ZW4gZW5kXG4gICAgcmVhZGVyLm9ubG9hZGVuZCA9IChfKSA9PiB7XG4gICAgICBjb25zdCBib2R5ID0gcmVhZGVyLnJlc3VsdDtcbiAgICAgIGlmICh0eXBlb2YgYm9keSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgJHByb2dyZXNzLm5leHQobmV3IEZpbGVSZXNwb25zZSh7Ym9keX0pKTtcbiAgICAgICAgJHByb2dyZXNzLmNvbXBsZXRlKCk7XG4gICAgICB9XG4gICAgICBlbHNlIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihgQ2Fubm90IHJlYWQgZmlsZSAnJHtmaWxlLm5hbWV9JyBhcyB0ZXh0YCk7XG4gICAgICAgICRwcm9ncmVzcy5lcnJvcihgQ2Fubm90IHJlYWQgZmlsZSBhcyB0ZXh0YCk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIC8vIExpc3RlbiBlcnJvclxuICAgIHJlYWRlci5vbmVycm9yID0gKGV2ZW50OiBQcm9ncmVzc0V2ZW50KSA9PiB7XG4gICAgICBjb25zb2xlLmVycm9yKCdbZmlsZXNdIEVycm9yIHdoaWxlIHJlYWRpbmcgZmlsZTonLCBldmVudCk7XG4gICAgICAkcHJvZ3Jlc3MuZXJyb3IoZXZlbnQpO1xuICAgIH07XG5cbiAgICAvLyBTdGFydCByZWFkaW5nIHRoZSBmaWxlXG4gICAgcmVhZGVyLnJlYWRBc1RleHQoZmlsZSwgZW5jb2RpbmcpO1xuXG4gICAgcmV0dXJuICRwcm9ncmVzcy5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHN0YXRpYyB3cml0ZVRleHRUb0ZpbGUoY29udGVudDogc3RyaW5nLFxuICAgICAgICAgICAgICAgICAgICAgICAgIG9wdHM/OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlbmFtZT86IHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuY29kaW5nPzogc3RyaW5nO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT86IHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgICAgICB9KSB7XG4gICAgaWYgKGlzTmlsT3JCbGFuayhjb250ZW50KSkgcmV0dXJuOyAvLyBTa2lwIGlmIGVtcHR5XG5cbiAgICBjb25zdCBmaWxlbmFtZSA9IG9wdHM/LmZpbGVuYW1lIHx8ICdleHBvcnQudHh0JztcbiAgICBjb25zdCBjaGFyc2V0ID0gKG9wdHM/LmVuY29kaW5nIHx8ICd1dGYtOCcpLnRvTG93ZXJDYXNlKCk7XG4gICAgY29uc3QgdHlwZSA9IG9wdHM/LnR5cGUgfHwgJ3RleHQvcGxhaW4nO1xuICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYigoY2hhcnNldCA9PT0gJ3V0Zi04JylcbiAgICAgICAgLy8gQWRkIFVURi04IEJPTSBjaGFyYWN0ZXJcbiAgICAgICAgPyBbRmlsZXNVdGlscy5VVEY4X0JPTV9DSEFSLCBjb250ZW50XVxuICAgICAgICAvLyBOb24gVVRGLTggY2hhcnNldFxuICAgICAgICA6IFtjb250ZW50XSxcbiAgICAgIHsgdHlwZTogYCR7dHlwZX07Y2hhcnNldD0ke2NoYXJzZXR9O2AgfSk7XG4gICAgaWYgKChuYXZpZ2F0b3IgYXMgYW55KS5tc1NhdmVCbG9iKSB7IC8vIElFIDEwK1xuICAgICAgKG5hdmlnYXRvciBhcyBhbnkpLm1zU2F2ZUJsb2IoYmxvYiwgZmlsZW5hbWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBsaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xuICAgICAgaWYgKGxpbmsuZG93bmxvYWQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAvLyBCcm93c2VycyB0aGF0IHN1cHBvcnQgSFRNTDUgZG93bmxvYWQgYXR0cmlidXRlXG4gICAgICAgIGNvbnN0IHVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7XG4gICAgICAgIGxpbmsuc2V0QXR0cmlidXRlKCdocmVmJywgdXJsKTtcbiAgICAgICAgbGluay5zZXRBdHRyaWJ1dGUoJ2Rvd25sb2FkJywgZmlsZW5hbWUpO1xuICAgICAgICBsaW5rLnN0eWxlLnZpc2liaWxpdHkgPSAnaGlkZGVuJztcbiAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsaW5rKTtcbiAgICAgICAgbGluay5jbGljaygpO1xuICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGxpbmspO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHN0YXRpYyBkb3dubG9hZFVyaSh1cmk6IHN0cmluZyxcbiAgICAgICAgICAgICAgICAgICAgIGZpbGVuYW1lPzogc3RyaW5nKSB7XG4gICAgaWYgKChuYXZpZ2F0b3IgYXMgYW55KS5tc0xhdW5jaFVyaSkgeyAvLyBJRSAxMCtcbiAgICAgIChuYXZpZ2F0b3IgYXMgYW55KS5tc0xhdW5jaFVyaSh1cmkpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIGZpbGVuYW1lID0gZmlsZW5hbWUgfHwgdGhpcy5nZXRGaWxlbmFtZUZyb21VcmkodXJpKTtcbiAgICAgIGNvbnN0IGxpbmsgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gICAgICBpZiAobGluay5kb3dubG9hZCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIC8vIEJyb3dzZXJzIHRoYXQgc3VwcG9ydCBIVE1MNSBkb3dubG9hZCBhdHRyaWJ1dGVcbiAgICAgICAgbGluay5zZXRBdHRyaWJ1dGUoJ2hyZWYnLCB1cmkpO1xuICAgICAgICBsaW5rLnNldEF0dHJpYnV0ZSgnZG93bmxvYWQnLCBmaWxlbmFtZSk7XG4gICAgICAgIGxpbmsuc3R5bGUudmlzaWJpbGl0eSA9ICdoaWRkZW4nO1xuICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGxpbmspO1xuICAgICAgICBsaW5rLmNsaWNrKCk7XG4gICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQobGluayk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgc3RhdGljIGdldEZpbGVuYW1lRnJvbVVyaSh1cmk6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3QgbGFzdFNsYXNoSW5kZXggPSB1cmk/Lmxhc3RJbmRleE9mKCcvJyk7XG4gICAgaWYgKGxhc3RTbGFzaEluZGV4ID09PSAtMSB8fCBsYXN0U2xhc2hJbmRleCA9PT0gdXJpLmxlbmd0aCAtIDEpIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBVUkkgZm9ybWF0LiBObyBzbGFzaCBmb3VuZCcpO1xuICAgIHJldHVybiB1cmkuc3Vic3RyaW5nKGxhc3RTbGFzaEluZGV4ICsgMSk7XG4gIH1cbn1cblxuIl19