@tuki-io/tuki-widgets 0.0.219-dev.2 → 0.0.219-dev.22

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 (207) hide show
  1. package/README.md +24 -24
  2. package/esm2020/contact-center/cc-readiness/cc-readiness.module.mjs +1 -1
  3. package/esm2020/contact-center/cc-readiness/cc-readiness.service.mjs +1 -1
  4. package/esm2020/contact-center/cc-readiness/widgets/licences-requirement/licences-requirement.component.mjs +3 -3
  5. package/esm2020/di2mt/widgets/site-upgrade/progress-bar/progress-bar.component.mjs +3 -3
  6. package/esm2020/di2mt/widgets/site-upgrade/site-upgrade-data-table/site-upgrade-data-table.component.mjs +2 -2
  7. package/esm2020/di2mt/widgets/upgrade-overview/cards/pending-activation-users/pending-activation-users.component.mjs +17 -17
  8. package/esm2020/lib/widgets.component.mjs +9 -9
  9. package/esm2020/lib/widgets.module.mjs +1 -1
  10. package/esm2020/lib/widgets.service.mjs +1 -1
  11. package/esm2020/public-api.mjs +1 -1
  12. package/esm2020/shared/public-api.mjs +4 -0
  13. package/esm2020/shared/src/ui/material.module.mjs +188 -0
  14. package/esm2020/shared/src/ui/shared.module.mjs +36 -0
  15. package/esm2020/shared/src/ui/tk-page-section/tk-page-section.component.mjs +13 -0
  16. package/esm2020/shared/src/ui/tk-page-section-row/tk-page-section-row.component.mjs +13 -0
  17. package/esm2020/shared/src/ui/ui.module.mjs +37 -0
  18. package/esm2020/shared/tuki-io-tuki-widgets-shared.mjs +5 -0
  19. package/esm2020/user-creation/src/app.constants.mjs +1 -1
  20. package/esm2020/user-creation/src/classes/notification.mjs +1 -1
  21. package/esm2020/user-creation/src/classes/site.mjs +1 -1
  22. package/esm2020/user-creation/src/environments/environment.mjs +1 -1
  23. package/esm2020/user-creation/src/interfaces/user-creation-wizard.interfaces.mjs +1 -1
  24. package/esm2020/user-creation/src/shared/components/notification/notification.component.mjs +3 -3
  25. package/esm2020/user-creation/src/shared/pipes/truncate.pipe.mjs +1 -1
  26. package/esm2020/user-creation/src/shared/services/notification.service.mjs +1 -1
  27. package/esm2020/user-creation/src/shared/services/user-creation-api.service.mjs +1 -1
  28. package/esm2020/user-creation/src/shared/services/utils.mjs +1 -1
  29. package/esm2020/user-creation/src/utils/app-loader/app-loader.mjs +3 -3
  30. package/esm2020/user-creation/src/utils/build-savable-end-user.mjs +1 -1
  31. package/esm2020/user-creation/src/utils/device-default-prefix.mjs +19 -2
  32. package/esm2020/user-creation/src/utils/device-name-dynamic-tokens.mjs +4 -0
  33. package/esm2020/user-creation/src/utils/device-name-validation.mjs +1 -1
  34. package/esm2020/user-creation/src/utils/model.mjs +1 -1
  35. package/esm2020/user-creation/src/utils/parse-device-name-rule.mjs +6 -3
  36. package/esm2020/user-creation/src/widgets/user-creation-wizard/components/user-details-step/user-details-step.component.mjs +60 -13
  37. package/esm2020/user-creation/src/widgets/user-creation-wizard/user-creation-wizard.component.mjs +3 -3
  38. package/esm2020/user-creation/src/widgets/user-creation-wizard/user-creation-wizard.service.mjs +13 -9
  39. package/esm2020/user-device-manage/public-api.mjs +1 -1
  40. package/esm2020/user-device-manage/src/app.constants.mjs +1 -1
  41. package/esm2020/user-device-manage/src/classes/device.mjs +1 -1
  42. package/esm2020/user-device-manage/src/classes/deviceProfile.mjs +1 -1
  43. package/esm2020/user-device-manage/src/classes/line-association-interface.mjs +1 -1
  44. package/esm2020/user-device-manage/src/classes/line-association.mjs +1 -1
  45. package/esm2020/user-device-manage/src/classes/line-call-info-display.mjs +1 -1
  46. package/esm2020/user-device-manage/src/classes/line-directory.mjs +1 -1
  47. package/esm2020/user-device-manage/src/classes/line.mjs +1 -1
  48. package/esm2020/user-device-manage/src/classes/notification.mjs +1 -1
  49. package/esm2020/user-device-manage/src/classes/recording-options.mjs +1 -1
  50. package/esm2020/user-device-manage/src/classes/simplified-user.mjs +1 -1
  51. package/esm2020/user-device-manage/src/classes/site-defaults.mjs +1 -1
  52. package/esm2020/user-device-manage/src/classes/translation-pattern.mjs +1 -1
  53. package/esm2020/user-device-manage/src/classes/types.mjs +1 -1
  54. package/esm2020/user-device-manage/src/common-functions.mjs +1 -1
  55. package/esm2020/user-device-manage/src/confirm-dialog/info-dialog.component.mjs +3 -3
  56. package/esm2020/user-device-manage/src/device-associated-line/associated-line-row/associated-line-row.component.mjs +3 -3
  57. package/esm2020/user-device-manage/src/device-associated-line/device-associated-line-details-box/device-associated-line-details-box.component.mjs +3 -3
  58. package/esm2020/user-device-manage/src/device-associated-line/device-associated-line-extension/device-associated-line-extension.component.mjs +3 -3
  59. package/esm2020/user-device-manage/src/device-associated-line/device-associated-line.component.mjs +1 -1
  60. package/esm2020/user-device-manage/src/device-info/device-info.component.mjs +3 -3
  61. package/esm2020/user-device-manage/src/device-manage-widget.component.mjs +2 -2
  62. package/esm2020/user-device-manage/src/environments/environment.mjs +1 -1
  63. package/esm2020/user-device-manage/src/interseptors/auth.interceptor.mjs +1 -1
  64. package/esm2020/user-device-manage/src/lazy-loading-select/lazy-loading-select.component.mjs +3 -3
  65. package/esm2020/user-device-manage/src/material.module.mjs +1 -1
  66. package/esm2020/user-device-manage/src/notifications/notification.component.mjs +3 -3
  67. package/esm2020/user-device-manage/src/pipes/mac-address.pipe.mjs +1 -1
  68. package/esm2020/user-device-manage/src/services/api.service.mjs +1 -1
  69. package/esm2020/user-device-manage/src/services/device.service.mjs +1 -1
  70. package/esm2020/user-device-manage/src/services/dns.service.mjs +1 -1
  71. package/esm2020/user-device-manage/src/services/line.service.mjs +1 -1
  72. package/esm2020/user-device-manage/src/services/notification.service.mjs +1 -1
  73. package/esm2020/user-device-manage/src/services/removeKynFromIBM.service.mjs +1 -1
  74. package/esm2020/user-device-manage/src/services/site-settings.service.mjs +1 -1
  75. package/esm2020/user-device-manage/src/services/sorting-utils.service.mjs +1 -1
  76. package/esm2020/user-device-manage/src/services/user.service.mjs +1 -1
  77. package/esm2020/user-device-manage/src/services/utils.service.mjs +1 -1
  78. package/esm2020/user-device-manage/src/services/validation.service.mjs +1 -1
  79. package/esm2020/user-device-manage/src/user-device-manage.module.mjs +1 -4
  80. package/esm2020/user-device-manage/src/utils/app-loader/app-loader.mjs +3 -3
  81. package/esm2020/user-manage/public-api.mjs +1 -1
  82. package/esm2020/user-manage/src/app.constants.mjs +1 -1
  83. package/esm2020/user-manage/src/classes/device.mjs +1 -1
  84. package/esm2020/user-manage/src/classes/line-association-interface.mjs +1 -1
  85. package/esm2020/user-manage/src/classes/line-association.mjs +1 -1
  86. package/esm2020/user-manage/src/classes/line-call-info-display.mjs +1 -1
  87. package/esm2020/user-manage/src/classes/line-directory.mjs +1 -1
  88. package/esm2020/user-manage/src/classes/line.mjs +1 -1
  89. package/esm2020/user-manage/src/classes/notification.mjs +1 -1
  90. package/esm2020/user-manage/src/classes/pagination.mjs +1 -1
  91. package/esm2020/user-manage/src/classes/recording-options.mjs +1 -1
  92. package/esm2020/user-manage/src/classes/simplified-user.mjs +2 -1
  93. package/esm2020/user-manage/src/classes/table-data.mjs +1 -1
  94. package/esm2020/user-manage/src/classes/translation-pattern.mjs +1 -1
  95. package/esm2020/user-manage/src/classes/user-list.mjs +1 -1
  96. package/esm2020/user-manage/src/common-functions.mjs +1 -1
  97. package/esm2020/user-manage/src/device-list/device-list.component.mjs +7 -4
  98. package/esm2020/user-manage/src/device-list/device-row/device-row.component.mjs +4 -3
  99. package/esm2020/user-manage/src/environments/environment.mjs +1 -1
  100. package/esm2020/user-manage/src/interseptors/auth.interceptor.mjs +1 -1
  101. package/esm2020/user-manage/src/lazy-loading-select/lazy-loading-select.component.mjs +3 -3
  102. package/esm2020/user-manage/src/material.module.mjs +1 -1
  103. package/esm2020/user-manage/src/notifications/notification.component.mjs +3 -3
  104. package/esm2020/user-manage/src/removeKynFromIBM.service.mjs +1 -1
  105. package/esm2020/user-manage/src/services/api.service.mjs +1 -1
  106. package/esm2020/user-manage/src/services/dns.service.mjs +1 -1
  107. package/esm2020/user-manage/src/services/line.service.mjs +1 -1
  108. package/esm2020/user-manage/src/services/notification.service.mjs +1 -1
  109. package/esm2020/user-manage/src/services/removeKynFromIBM.service.mjs +1 -1
  110. package/esm2020/user-manage/src/services/site-settings.service.mjs +1 -1
  111. package/esm2020/user-manage/src/services/sorting-utils.service.mjs +1 -1
  112. package/esm2020/user-manage/src/services/user.service.mjs +17 -12
  113. package/esm2020/user-manage/src/services/utils.service.mjs +1 -1
  114. package/esm2020/user-manage/src/user-calling/user-calling-extension/user-calling-extension.component.mjs +3 -3
  115. package/esm2020/user-manage/src/user-calling/user-calling.component.mjs +12 -7
  116. package/esm2020/user-manage/src/user-info/user-info.component.mjs +3 -3
  117. package/esm2020/user-manage/src/user-manage-widget.component.mjs +21 -11
  118. package/esm2020/user-manage/src/user-manage.module.mjs +7 -3
  119. package/esm2020/user-manage/src/utils/app-loader/app-loader.mjs +3 -3
  120. package/esm2020/user-manage/src/utils/pagination/pagination.component.mjs +3 -3
  121. package/esm2020/users-list/public-api.mjs +1 -1
  122. package/esm2020/users-list/src/app.constants.mjs +3 -1
  123. package/esm2020/users-list/src/classes/app-location.mjs +1 -1
  124. package/esm2020/users-list/src/classes/device.mjs +1 -1
  125. package/esm2020/users-list/src/classes/line.mjs +1 -1
  126. package/esm2020/users-list/src/classes/move-user.mjs +1 -1
  127. package/esm2020/users-list/src/classes/notification.mjs +1 -1
  128. package/esm2020/users-list/src/classes/simlified-user.mjs +1 -1
  129. package/esm2020/users-list/src/classes/table-data.mjs +1 -1
  130. package/esm2020/users-list/src/classes/user-list.mjs +2 -1
  131. package/esm2020/users-list/src/components/table-toolbar/table-toolbar.component.mjs +3 -3
  132. package/esm2020/users-list/src/move-user-wizard/move-user-stepper/device-move-user/device-move-user-wizard.component.mjs +3 -3
  133. package/esm2020/users-list/src/move-user-wizard/move-user-stepper/device-move-user-tab/devices-move-user-wizard-tab.component.mjs +3 -3
  134. package/esm2020/users-list/src/move-user-wizard/move-user-stepper/move-user-stepper.component.mjs +14 -3
  135. package/esm2020/users-list/src/move-user-wizard/move-user-wizard.component.mjs +5 -3
  136. package/esm2020/users-list/src/services/api-webex.service.mjs +1 -1
  137. package/esm2020/users-list/src/services/api.service.mjs +1 -1
  138. package/esm2020/users-list/src/services/dns.service.mjs +1 -1
  139. package/esm2020/users-list/src/services/events-communication.service.mjs +1 -1
  140. package/esm2020/users-list/src/services/notification.service.mjs +1 -1
  141. package/esm2020/users-list/src/services/removeKynFromIBM.service.mjs +1 -1
  142. package/esm2020/users-list/src/services/site-settings.service.mjs +1 -1
  143. package/esm2020/users-list/src/services/user.service.mjs +8 -1
  144. package/esm2020/users-list/src/user-list-confirm-dialog/user-list-confirm-dialog.component.mjs +3 -3
  145. package/esm2020/users-list/src/users-list.component.mjs +118 -22
  146. package/esm2020/users-list/src/utils/app-loader/app-loader.mjs +3 -3
  147. package/esm2020/users-list/src/utils/common-functions.mjs +1 -1
  148. package/esm2020/users-list/src/utils/notifications/notification.component.mjs +3 -3
  149. package/esm2020/users-list/src/utils/utils.service.mjs +1 -1
  150. package/fesm2015/tuki-io-tuki-widgets-contact-center.mjs +2 -2
  151. package/fesm2015/tuki-io-tuki-widgets-contact-center.mjs.map +1 -1
  152. package/fesm2015/tuki-io-tuki-widgets-di2mt.mjs +20 -20
  153. package/fesm2015/tuki-io-tuki-widgets-di2mt.mjs.map +1 -1
  154. package/fesm2015/tuki-io-tuki-widgets-shared.mjs +280 -0
  155. package/fesm2015/tuki-io-tuki-widgets-shared.mjs.map +1 -0
  156. package/fesm2015/tuki-io-tuki-widgets-user-creation.mjs +109 -33
  157. package/fesm2015/tuki-io-tuki-widgets-user-creation.mjs.map +1 -1
  158. package/fesm2015/tuki-io-tuki-widgets-user-device-manage.mjs +18 -31
  159. package/fesm2015/tuki-io-tuki-widgets-user-device-manage.mjs.map +1 -1
  160. package/fesm2015/tuki-io-tuki-widgets-user-manage.mjs +75 -45
  161. package/fesm2015/tuki-io-tuki-widgets-user-manage.mjs.map +1 -1
  162. package/fesm2015/tuki-io-tuki-widgets-users-list.mjs +157 -37
  163. package/fesm2015/tuki-io-tuki-widgets-users-list.mjs.map +1 -1
  164. package/fesm2015/tuki-io-tuki-widgets.mjs +8 -8
  165. package/fesm2015/tuki-io-tuki-widgets.mjs.map +1 -1
  166. package/fesm2020/tuki-io-tuki-widgets-contact-center.mjs +2 -2
  167. package/fesm2020/tuki-io-tuki-widgets-contact-center.mjs.map +1 -1
  168. package/fesm2020/tuki-io-tuki-widgets-di2mt.mjs +20 -20
  169. package/fesm2020/tuki-io-tuki-widgets-di2mt.mjs.map +1 -1
  170. package/fesm2020/tuki-io-tuki-widgets-shared.mjs +280 -0
  171. package/fesm2020/tuki-io-tuki-widgets-shared.mjs.map +1 -0
  172. package/fesm2020/tuki-io-tuki-widgets-user-creation.mjs +102 -29
  173. package/fesm2020/tuki-io-tuki-widgets-user-creation.mjs.map +1 -1
  174. package/fesm2020/tuki-io-tuki-widgets-user-device-manage.mjs +18 -31
  175. package/fesm2020/tuki-io-tuki-widgets-user-device-manage.mjs.map +1 -1
  176. package/fesm2020/tuki-io-tuki-widgets-user-manage.mjs +71 -43
  177. package/fesm2020/tuki-io-tuki-widgets-user-manage.mjs.map +1 -1
  178. package/fesm2020/tuki-io-tuki-widgets-users-list.mjs +156 -37
  179. package/fesm2020/tuki-io-tuki-widgets-users-list.mjs.map +1 -1
  180. package/fesm2020/tuki-io-tuki-widgets.mjs +8 -8
  181. package/fesm2020/tuki-io-tuki-widgets.mjs.map +1 -1
  182. package/package.json +9 -1
  183. package/shared/index.d.ts +5 -0
  184. package/shared/public-api.d.ts +3 -0
  185. package/shared/src/ui/material.module.d.ts +28 -0
  186. package/shared/src/ui/shared.module.d.ts +10 -0
  187. package/{user-device-manage/src/shared/tk-page-section/page-section.component.d.ts → shared/src/ui/tk-page-section/tk-page-section.component.d.ts} +1 -1
  188. package/shared/src/ui/tk-page-section-row/tk-page-section-row.component.d.ts +6 -0
  189. package/shared/src/ui/ui.module.d.ts +11 -0
  190. package/user-creation/src/utils/device-default-prefix.d.ts +7 -2
  191. package/user-creation/src/utils/device-name-dynamic-tokens.d.ts +1 -0
  192. package/user-creation/src/utils/parse-device-name-rule.d.ts +1 -0
  193. package/user-creation/src/widgets/user-creation-wizard/components/user-details-step/user-details-step.component.d.ts +2 -0
  194. package/user-device-manage/src/user-device-manage.module.d.ts +9 -10
  195. package/user-manage/src/classes/simplified-user.d.ts +7 -0
  196. package/user-manage/src/device-list/device-list.component.d.ts +2 -0
  197. package/user-manage/src/services/user.service.d.ts +1 -0
  198. package/user-manage/src/user-calling/user-calling.component.d.ts +3 -2
  199. package/user-manage/src/user-manage-widget.component.d.ts +1 -0
  200. package/user-manage/src/user-manage.module.d.ts +2 -1
  201. package/users-list/src/app.constants.d.ts +2 -0
  202. package/users-list/src/classes/user-list.d.ts +4 -0
  203. package/users-list/src/move-user-wizard/move-user-stepper/move-user-stepper.component.d.ts +3 -1
  204. package/users-list/src/move-user-wizard/move-user-wizard.component.d.ts +2 -1
  205. package/users-list/src/services/user.service.d.ts +1 -0
  206. package/users-list/src/users-list.component.d.ts +6 -1
  207. package/esm2020/user-device-manage/src/shared/tk-page-section/page-section.component.mjs +0 -13
@@ -196,4 +196,4 @@ export class Voicemail {
196
196
  return getSavableData(this, nonSavableData);
197
197
  }
198
198
  }
199
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1jcmVhdGlvbi13aXphcmQuaW50ZXJmYWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy9pbnRlcmZhY2VzL3VzZXItY3JlYXRpb24td2l6YXJkLmludGVyZmFjZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBeUloRCxrREFBa0Q7QUFDbEQscUJBQXFCO0FBQ3JCLHdCQUF3QjtBQUN4Qix1QkFBdUI7QUFDdkIseUJBQXlCO0FBQ3pCLG9CQUFvQjtBQUNwQixxQkFBcUI7QUFDckIseUJBQXlCO0FBQ3pCLDhCQUE4QjtBQUM5Qix5QkFBeUI7QUFDekIsMkJBQTJCO0FBQzNCLDBCQUEwQjtBQUMxQiwwQkFBMEI7QUFDMUIsOEJBQThCO0FBQzlCLCtCQUErQjtBQUMvQiw0QkFBNEI7QUFDNUIsMkNBQTJDO0FBQzNDLHlDQUF5QztBQUN6QywwQkFBMEI7QUFDMUIsNEJBQTRCO0FBQzVCLG1DQUFtQztBQUNuQyx3QkFBd0I7QUFDeEIsNkJBQTZCO0FBQzdCLDhCQUE4QjtBQUM5QiwwQkFBMEI7QUFDMUIsMkJBQTJCO0FBQzNCLHdDQUF3QztBQUN4QyxtQ0FBbUM7QUFDbkMsNENBQTRDO0FBQzVDLGlDQUFpQztBQUNqQyxxQkFBcUI7QUFDckIsbUJBQW1CO0FBQ25CLDBCQUEwQjtBQUMxQix5QkFBeUI7QUFDekIsc0NBQXNDO0FBQ3RDLDhCQUE4QjtBQUM5QixtQ0FBbUM7QUFDbkMsd0JBQXdCO0FBQ3hCLG9CQUFvQjtBQUNwQixzQkFBc0I7QUFDdEIsc0JBQXNCO0FBQ3RCLDRDQUE0QztBQUM1Qyx3Q0FBd0M7QUFDeEMsbUJBQW1CO0FBQ25CLDBCQUEwQjtBQUMxQix1QkFBdUI7QUFDdkIsZ0NBQWdDO0FBQ2hDLHVCQUF1QjtBQUN2QiwwQkFBMEI7QUFD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QVcsRUFBRSxDQUFDO1FBQ3ZCLG1CQUFjLEdBQVcsRUFBRSxDQUFDO1FBQzVCLGlCQUFZLEdBQVcsRUFBRSxDQUFDO1FBVzFCLGNBQVMsR0FBVSxFQUFFLENBQUM7UUFFdEIsUUFBRyxHQUFXLEVBQUUsQ0FBQztRQUNqQixtQkFBbUI7UUFDbkIsNkJBQXdCLEdBQVcsQ0FBQyxDQUFDO1FBR25DLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxTQUFTLEVBQUU7WUFDdEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDeEIsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNwRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO2FBQ3hDO1lBQ0QsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO2dCQUNsQixpREFBaUQ7Z0JBQ2pELDBHQUEwRzthQUMzRztTQUNGO2FBQU07WUFDTCxJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsY0FBYyxHQUFHLEVBQUUsQ0FBQztTQUMxQjtJQUNILENBQUM7SUFFRCxjQUFjO1FBQ1osTUFBTSxjQUFjLEdBQUcsQ0FBQyxXQUFXLEVBQUUscUJBQXFCLEVBQUUsMEJBQTBCLENBQUMsQ0FBQztRQUN4RixPQUFPLGNBQWMsQ0FBQyxJQUFJLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDOUMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0U2F2YWJsZURhdGEgfSBmcm9tICcuLi91dGlscy9tb2RlbCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGRhcFVzZXJSb3cge1xuICAgIHVzZXJJZDogc3RyaW5nO1xuICAgIGZpcnN0TmFtZTogc3RyaW5nO1xuICAgIGxhc3ROYW1lOiBzdHJpbmc7XG4gICAgZW1haWw6IHN0cmluZztcbn1cblxuZXhwb3J0IHR5cGUgTGRhcFF1ZXJ5VHlwZSA9ICd1c2VySWQnIHwgJ2ZpcnN0TmFtZScgfCAnbGFzdE5hbWUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE92ZXJ2aWV3VXNlclJvdyBleHRlbmRzIExkYXBVc2VyUm93IHtcbiAgICB1c2VyVGVtcGxhdGU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPdmVydmlld0xpbmVSb3cge1xuICAgIG51bWJlcjogc3RyaW5nO1xuICAgIGRpZDogc3RyaW5nO1xuICAgIHJvdXRlUGFydGl0aW9uTmFtZTogc3RyaW5nO1xuICAgIGNzczogc3RyaW5nO1xuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT3ZlcnZpZXdEZXZpY2VSb3cge1xuICAgIG5hbWU6IHN0cmluZztcbiAgICBkZXZpY2VUeXBlOiBzdHJpbmc7XG4gICAgbGluZXM6IHN0cmluZztcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBVc2VyQ3JlYXRpb25UeXBlID0gJ0NVQ00nIHwgJ01UJztcblxuZXhwb3J0IGludGVyZmFjZSBVc2VyRGV0YWlsc0Zvcm0ge1xuICAgIHVzZXJJZDogc3RyaW5nO1xuICAgIGZpcnN0TmFtZTogc3RyaW5nO1xuICAgIGxhc3ROYW1lOiBzdHJpbmc7XG4gICAgZW1haWw6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVc2VyRGV0YWlsc0xpbmVGb3JtVmFsdWUge1xuICAgIGxpbmVOdW1iZXI6IHN0cmluZztcbiAgICBudW1iZXI6IHN0cmluZztcbiAgICByb3V0ZVBhcnRpdGlvbjogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVzZXJEZXRhaWxzRGV2aWNlRm9ybVZhbHVlIHtcbiAgICBkZXZpY2VUeXBlOiBzdHJpbmc7XG4gICAgcHJvdG9jb2w6IHN0cmluZztcbiAgICBidXR0b25UZW1wbGF0ZTogc3RyaW5nO1xuICAgIG5hbWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVc2VyRGV0YWlsc0Zvcm1WYWx1ZSB7XG4gICAgdXNlcklkOiBzdHJpbmc7XG4gICAgZmlyc3ROYW1lOiBzdHJpbmc7XG4gICAgbGFzdE5hbWU6IHN0cmluZztcbiAgICBlbWFpbDogc3RyaW5nO1xuICAgIGxpbmVzOiBVc2VyRGV0YWlsc0xpbmVGb3JtVmFsdWVbXTtcbiAgICBkZXZpY2VzOiBVc2VyRGV0YWlsc0RldmljZUZvcm1WYWx1ZVtdO1xuICAgIGRldmljZVByb2ZpbGVzOiBVc2VyRGV0YWlsc0RldmljZUZvcm1WYWx1ZVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpbmVPcHRpb24ge1xuICAgIG51bWJlcjogc3RyaW5nO1xuICAgIGRpZDogc3RyaW5nO1xuICAgIGNzczogc3RyaW5nO1xuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VsZWN0ZWRMaW5lUm93IHtcbiAgICBsaW5lTnVtYmVyOiBzdHJpbmcgfCBudWxsO1xuICAgIHJvdXRlUGFydGl0aW9uTmFtZTogc3RyaW5nIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEZXZpY2VFbnRyeSB7XG4gICAgZGV2aWNlVHlwZTogc3RyaW5nO1xuICAgIHByb3RvY29sOiBzdHJpbmc7XG4gICAgYnV0dG9uVGVtcGxhdGU6IHN0cmluZztcbiAgICBuYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGVtcGxhdGVMaW5lTGlrZSB7XG4gICAgZGlyZWN0b3J5TnVtYmVyPzoge1xuICAgICAgICBkaXJlY3RvcnlOdW1iZXI/OiBzdHJpbmc7XG4gICAgICAgIHJvdXRlUGFydGl0aW9uTmFtZT86IHN0cmluZyB8IG51bGw7XG4gICAgICAgIHRlbXBsYXRlRGlyZWN0b3J5TnVtYmVyPzogc3RyaW5nIHwgbnVsbDtcbiAgICB9O1xuICAgIGRlc2NyaXB0aW9uPzogc3RyaW5nIHwgbnVsbDtcbiAgICBjYWxsaW5nU2VhcmNoU3BhY2U/OiBzdHJpbmcgfCB7IG5hbWU/OiBzdHJpbmcgfCBudWxsIH0gfCBudWxsO1xuICAgIGRpZFBhdHRlcm5zPzogQXJyYXk8eyBwYXR0ZXJuPzogc3RyaW5nIHwgbnVsbCB9PiB8IG51bGw7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGVtcGxhdGVEZXZpY2VMaWtlIHtcbiAgICBkZXZpY2VUeXBlPzogc3RyaW5nIHwgbnVsbDtcbiAgICBwcm90b2NvbD86IHN0cmluZyB8IG51bGw7XG4gICAgYnV0dG9uVGVtcGxhdGU/OiBzdHJpbmcgfCBudWxsO1xuICAgIG5hbWU/OiBzdHJpbmcgfCBudWxsO1xuICAgIGxpbmVBc3NvY2lhdGlvbnM/OiBBcnJheTx7XG4gICAgICAgIGxvZ01pc3NlZENhbGw/OiBib29sZWFuIHwgc3RyaW5nIHwgbnVsbDtcbiAgICAgICAgZGlyZWN0b3J5TnVtYmVyPzoge1xuICAgICAgICAgICAgZGlyZWN0b3J5TnVtYmVyPzogc3RyaW5nO1xuICAgICAgICAgICAgcm91dGVQYXJ0aXRpb25OYW1lPzogc3RyaW5nIHwgbnVsbDtcbiAgICAgICAgICAgIHRlbXBsYXRlRGlyZWN0b3J5TnVtYmVyPzogc3RyaW5nIHwgbnVsbDtcbiAgICAgICAgfSB8IG51bGw7XG4gICAgfT47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGVtcGxhdGVFbmRVc2VyTGlrZSB7XG4gICAgdXNlcmlkPzogc3RyaW5nIHwgbnVsbDtcbiAgICBmaXJzdE5hbWU/OiBzdHJpbmcgfCBudWxsO1xuICAgIGxhc3ROYW1lPzogc3RyaW5nIHwgbnVsbDtcbiAgICBlbWFpbD86IHN0cmluZyB8IG51bGw7XG4gICAgbGluZXM/OiBUZW1wbGF0ZUxpbmVMaWtlW10gfCBudWxsO1xuICAgIGRldmljZXM/OiBUZW1wbGF0ZURldmljZUxpa2VbXSB8IG51bGw7XG59XG5cblxuZXhwb3J0IGludGVyZmFjZSBVc2VyVGVtcGxhdGVJbnRlcmZhY2Uge1xuICBpZDogbnVtYmVyO1xuICBuYW1lOiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gIGNyZWF0ZU9yVXBsb2FkOiBzdHJpbmcgfCBudWxsO1xuICB1c2VyVGVtcGxhdGVTZXR0aW5nczogVXNlclRlbXBsYXRlU2V0dGluZ1tdO1xuICBjdXN0b21lcklkOiBudW1iZXI7XG4gIHVzZXJSZXF1aXJlZEZpZWxkczogc3RyaW5nW107XG4gIGRldmljZVJlcXVpcmVkRmllbGRzOiBzdHJpbmdbXTtcbiAgdWRwUmVxdWlyZWRGaWVsZHM6IHN0cmluZ1tdO1xuICBsaW5lUmVxdWlyZWRGaWVsZHM6IHN0cmluZ1tdO1xuICBlbmRVc2VyOiBFbmRVc2VySW50ZXJmYWNlO1xuICB0eXBlOiBzdHJpbmc7XG4gIGdsb2JhbFRlbXBsYXRlOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVzZXJUZW1wbGF0ZVNldHRpbmcge1xuICAvLyBBZGQgZmllbGRzIGlmIG5lZWRlZFxufVxuXG4vLyBleHBvcnQgY2xhc3MgVXNlciBpbXBsZW1lbnRzIEVuZFVzZXJJbnRlcmZhY2Uge1xuLy8gICB1c2VyaWQ/OiBzdHJpbmc7XG4vLyAgIGZpcnN0TmFtZT86IHN0cmluZztcbi8vICAgbGFzdE5hbWU/OiBzdHJpbmc7XG4vLyAgIG1pZGRsZU5hbWU/OiBzdHJpbmc7XG4vLyAgIGVtYWlsPzogc3RyaW5nO1xuLy8gICBkb21haW4/OiBzdHJpbmc7XG4vLyAgIGRlcGFydG1lbnQ/OiBzdHJpbmc7XG4vLyAgIHRlbGVwaG9uZU51bWJlcj86IHN0cmluZztcbi8vICAgaG9tZU51bWJlcj86IHN0cmluZztcbi8vICAgbW9iaWxlTnVtYmVyPzogc3RyaW5nO1xuLy8gICBwYWdlck51bWJlcj86IHN0cmluZztcbi8vICAgZGlzcGxheU5hbWU/OiBzdHJpbmc7XG4vLyAgIGxkYXBJbnRlZ3JhdGVkPzogYm9vbGVhbjtcbi8vICAgc3BhcmtMaWNlbnNlczogQXJyYXk8YW55Pjtcbi8vICAgZXh0ZW5zaW9uTW9iaWxpdHk6IGFueTtcbi8vICAgc2luZ2xlTnVtYmVyUmVhY2g/OiBTaW5nbGVOdW1iZXJSZWFjaDtcbi8vICAgcHJpbWFyeUxpbmVSZWZlcmVuY2U6IExpbmVEaXJlY3Rvcnk7XG4vLyAgIHZvaWNlbWFpbDogVm9pY2VtYWlsO1xuLy8gICBkZXZpY2VzOiBBcnJheTxEZXZpY2U+O1xuLy8gICBkZXZpY2VQcm9maWxlczogQXJyYXk8RGV2aWNlPjtcbi8vICAgbGluZXM6IEFycmF5PExpbmU+O1xuLy8gICBmZWF0dXJlczogQXJyYXk8c3RyaW5nPjtcbi8vICAgdWNTZXJ2aWNlUHJvZmlsZTogc3RyaW5nO1xuLy8gICBzdWJzY3JpYmVDc3M6IHN0cmluZztcbi8vICAgcHJlc2VuY2VHcm91cDogc3RyaW5nO1xuLy8gICBhbGxvd0RldmljZUNvbnRyb2xGcm9tQ3RpOiBib29sZWFuO1xuLy8gICBlbmFibGVDcm9zc0NsdXN0ZXJFbTogYm9vbGVhbjtcbi8vICAgZW5hYmxlVXNlclRvSG9zdENvbmZlcmVuY2VOb3c6IGJvb2xlYW47XG4vLyAgIGF0dGVuZGVlc0FjY2Vzc0NvZGU6IHN0cmluZztcbi8vICAgbWFuYWdlcjogc3RyaW5nO1xuLy8gICB0aXRsZTogc3RyaW5nO1xuLy8gICBhc3NvY2lhdGVkUGM6IHN0cmluZztcbi8vICAgdXNlclByb2ZpbGU6IHN0cmluZztcbi8vICAgZW5hYmxlTW9iaWxlVm9pY2VBY2Nlc3M6IGJvb2xlYW47XG4vLyAgIG1scHBVc2VySWROdW1iZXI6IHN0cmluZztcbi8vICAgbWxwcFByZWNlZGVuY2VQYXR0ZXJuOiBzdHJpbmc7XG4vLyAgIHVzZXJMb2NhbGU6IHN0cmluZztcbi8vICAgc2l0ZUlkOiBudW1iZXI7XG4vLyAgIHNpdGVOYW1lOiBzdHJpbmc7XG4vLyAgIGxvY2F0aW9uOiBzdHJpbmc7XG4vLyAgIGxpbmVBcHBlYXJhbmNlczogQXJyYXk8TGluZUFwcGVhcmFuY2U+O1xuLy8gICBtZWV0TWVzOiBBcnJheTxNZWV0TWVDb25mZXJlbmNpbmc+O1xuLy8gICB0b2tlbjogc3RyaW5nO1xuLy8gICBtbHBwUGFzc3dvcmQ6IHN0cmluZztcbi8vICAgcGFzc3dvcmQ/OiBzdHJpbmc7XG4vLyAgIGRpZ2VzdENyZWRlbnRpYWxzPzogc3RyaW5nO1xuLy8gICBuZXdVc2VyaWQ6IHN0cmluZztcbi8vICAgaG9tZUNsdXN0ZXI6IGJvb2xlYW47XG4vLyAgIGRpcmVjdG9yeVVyaTogc3RyaW5nO1xuLy8gICBjcmVhdGVVc2VyTW9kZTogYm9vbGVhbjtcbi8vICAgcGluOiBzdHJpbmc7XG4vLyAgIG1pZ3JhdGlvblZtVW5jaGFuZ2VkOiBib29sZWFuO1xuLy8gICBtaWdyYXRpb25JbVBVbmNoYW5nZWQ6IGJvb2xlYW47XG4vLyAgIHRlbGVjb21NYW5hZ2VyUnVsZTogYm9vbGVhbjtcbi8vICAgdXNlclRlbXBsYXRlVWRwRGV2aWNlVHlwZXNSdWxlczogVWRwRGV2aWNlVHlwZXNSdWxlW107XG4vLyAgIGRlbGV0ZWRVc2VyVGVtcGxhdGVVZHBEZXZpY2VUeXBlc1J1bGVzOiBVZHBEZXZpY2VUeXBlc1J1bGVbXTtcbi8vICAgaGFzTW9kaWZpZWRDYWNoZSA9IGZhbHNlO1xuXG4vLyAgIHZtT25seVVzZXI/OiBib29sZWFuO1xuXG4vLyAgIGNvbnN0cnVjdG9yKHVzZXI6IEVuZFVzZXJJbnRlcmZhY2UsIGRldmljZXNTdGF0ZXMgPSBudWxsLCBkZXZpY2VQcm9maWxlc1N0YXRlcyA9IG51bGwsIGxpbmVzU3RhdGVzID0gbnVsbCkge1xuLy8gICAgIE9iamVjdC5hc3NpZ24odGhpcywgdXNlciB8fCB7fSk7XG4vLyAgICAgdGhpcy5leHRlbnNpb25Nb2JpbGl0eSA9IG5ldyBFeHRlbnNpb25Nb2JpbGl0eSh0aGlzLmV4dGVuc2lvbk1vYmlsaXR5KTtcbi8vICAgICB0aGlzLnNpbmdsZU51bWJlclJlYWNoID0gbmV3IFNpbmdsZU51bWJlclJlYWNoKHRoaXMuc2luZ2xlTnVtYmVyUmVhY2gpO1xuLy8gICAgIHRoaXMucHJpbWFyeUxpbmVSZWZlcmVuY2UgPSBuZXcgTGluZURpcmVjdG9yeSh0aGlzLnByaW1hcnlMaW5lUmVmZXJlbmNlKTtcbi8vICAgICB0aGlzLnZvaWNlbWFpbCA9IG5ldyBWb2ljZW1haWwodGhpcy52b2ljZW1haWwpO1xuLy8gICAgIHRoaXMuZGV2aWNlcyA9ICF0aGlzLmRldmljZXMgPyBbXSA6IHRoaXMuZGV2aWNlcy5tYXAoZGV2aWNlID0+IG5ldyBEZXZpY2UoZGV2aWNlKSk7XG4vLyAgICAgdGhpcy51c2VyVGVtcGxhdGVVZHBEZXZpY2VUeXBlc1J1bGVzID0gIXRoaXMudXNlclRlbXBsYXRlVWRwRGV2aWNlVHlwZXNSdWxlcyA/IFtdIDogdGhpcy51c2VyVGVtcGxhdGVVZHBEZXZpY2VUeXBlc1J1bGVzLm1hcChydWxlID0+IG5ldyBVZHBEZXZpY2VUeXBlc1J1bGUocnVsZSkpO1xuLy8gICAgIHRoaXMuZGV2aWNlUHJvZmlsZXMgPSAhdGhpcy5kZXZpY2VQcm9maWxlcyA/IFtdIDogdGhpcy5kZXZpY2VQcm9maWxlc1xuLy8gICAgICAgLm1hcChkZXZpY2UgPT4gbmV3IERldmljZShkZXZpY2UsIGFwcFZhbGlkYXRvcnMsIERldmljZUtpbmQuZGV2aWNlUHJvZmlsZSkpO1xuLy8gICAgIHRoaXMubGluZXMgPSAhdGhpcy5saW5lcyA/IFtdIDogdGhpcy5saW5lcy5tYXAobGluZSA9PiBuZXcgTGluZShsaW5lKSk7XG4vLyAgICAgdGhpcy5saW5lQXBwZWFyYW5jZXMgPSAhdGhpcy5saW5lQXBwZWFyYW5jZXMgPyBbXSA6IHRoaXMubGluZUFwcGVhcmFuY2VzLm1hcChsaW5lQXBwZWFyYW5jZSA9PiBuZXcgTGluZUFwcGVhcmFuY2UobGluZUFwcGVhcmFuY2UpKTtcbi8vICAgICB0aGlzLm1lZXRNZXMgPSAhdGhpcy5tZWV0TWVzID8gW10gOiB0aGlzLm1lZXRNZXMubWFwKG1lZXRNZSA9PiBuZXcgTWVldE1lQ29uZmVyZW5jaW5nKG1lZXRNZSkpO1xuLy8gICAgIHRoaXMuc3BhcmtMaWNlbnNlcyA9ICF0aGlzLnNwYXJrTGljZW5zZXMgPyBbXSA6IHRoaXMuc3BhcmtMaWNlbnNlcy5tYXAoc3BhcmsgPT4gbmV3IFNwYXJrKHNwYXJrKSk7XG4vLyAgICAgdGhpcy5mZWF0dXJlcyA9IHRoaXMuZmVhdHVyZXMgfHwgW107XG4vLyAgICAgdGhpcy5wYXNzd29yZCA9IG51bGw7XG4vLyAgICAgdGhpcy5kaWdlc3RDcmVkZW50aWFscyA9IG51bGw7XG4vLyAgICAgdGhpcy5kZWxldGVkVXNlclRlbXBsYXRlVWRwRGV2aWNlVHlwZXNSdWxlcyA9IFtdO1xuLy8gICB9XG5cbi8vICAgZ2V0U2F2YWJsZURhdGEoKSB7XG4vLyAgICAgY29uc3QgZXhjbHVkZWRGaWVsZHM6IHN0cmluZ1tdID0gWydmb3JtJywgJ2VkaXRNb2RlJCcsICd2aWV3TW9kZScsICd0b2tlbicsICdoYXNNb2RpZmllZENhY2hlJywgJ2RlbGV0ZWRVc2VyVGVtcGxhdGVVZHBEZXZpY2VUeXBlc1J1bGVzJ107XG4vLyAgICAgcmV0dXJuIGdldFNhdmFibGVEYXRhKHRoaXMsIGV4Y2x1ZGVkRmllbGRzKTtcbi8vICAgfVxuLy8gfVxuXG5leHBvcnQgY2xhc3MgRW5kVXNlciBpbXBsZW1lbnRzIFBhcnRpYWw8RW5kVXNlckludGVyZmFjZT4ge1xuICBsaW5lczogTGluZUludGVyZmFjZVtdID0gW107XG4gIHZvaWNlbWFpbDogVm9pY2VtYWlsO1xuICBjb25zdHJ1Y3Rvcihpbml0PzogRW5kVXNlckludGVyZmFjZSkge1xuICAgIE9iamVjdC5hc3NpZ24odGhpcywgaW5pdCB8fCB7fSk7XG4gICAgdGhpcy52b2ljZW1haWwgPSBuZXcgVm9pY2VtYWlsKGluaXQ/LnZvaWNlbWFpbCk7XG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBFbmRVc2VySW50ZXJmYWNlIHtcbiAgdXNlcmlkPzogc3RyaW5nIHwgbnVsbDtcbiAgZW1haWw/OiBzdHJpbmcgfCBudWxsO1xuICBmaXJzdE5hbWU/OiBzdHJpbmcgfCBudWxsO1xuICBsYXN0TmFtZT86IHN0cmluZyB8IG51bGw7XG4gIGRvbWFpbj86IHN0cmluZyB8IG51bGw7XG4gIGN1c3RvbWVySWQ/OiBudW1iZXIgfCBudWxsO1xuICBkZXBhcnRtZW50Pzogc3RyaW5nIHwgbnVsbDtcbiAgdXNlclByb2ZpbGU/OiBzdHJpbmcgfCBudWxsO1xuICBtYW5hZ2VyPzogc3RyaW5nIHwgbnVsbDtcbiAgZW5hYmxlTW9iaWxlVm9pY2VBY2Nlc3M/OiBib29sZWFuIHwgbnVsbDtcbiAgYXNzb2NpYXRlZFBjPzogc3RyaW5nIHwgbnVsbDtcbiAgdXNlckxvY2FsZT86IHN0cmluZyB8IG51bGw7XG4gIGRpZ2VzdENyZWRlbnRpYWxzPzogc3RyaW5nIHwgbnVsbDtcbiAgbWlkZGxlTmFtZT86IHN0cmluZyB8IG51bGw7XG4gIHRpdGxlPzogc3RyaW5nIHwgbnVsbDtcbiAgdGVsZXBob25lTnVtYmVyPzogc3RyaW5nIHwgbnVsbDtcbiAgaG9tZU51bWJlcj86IHN0cmluZyB8IG51bGw7XG4gIG1vYmlsZU51bWJlcj86IHN0cmluZyB8IG51bGw7XG4gIHBhZ2VyTnVtYmVyPzogc3RyaW5nIHwgbnVsbDtcbiAgZGlzcGxheU5hbWU/OiBzdHJpbmcgfCBudWxsO1xuICBkaXJlY3RvcnlVcmk/OiBzdHJpbmcgfCBudWxsO1xuICBwcmVzZW5jZUdyb3VwPzogc3RyaW5nIHwgbnVsbDtcbiAgc3Vic2NyaWJlQ3NzPzogc3RyaW5nIHwgbnVsbDtcbiAgYWxsb3dEZXZpY2VDb250cm9sRnJvbUN0aT86IGJvb2xlYW4gfCBudWxsO1xuICBlbmFibGVDcm9zc0NsdXN0ZXJFbT86IGJvb2xlYW4gfCBudWxsO1xuICBtbHBwVXNlcklkTnVtYmVyPzogc3RyaW5nIHwgbnVsbDtcbiAgbWxwcFByZWNlZGVuY2VQYXR0ZXJuPzogc3RyaW5nIHwgbnVsbDtcbiAgY3JlYXRlVXNlck1vZGU/OiBib29sZWFuO1xuICBlbmFibGVNb2JpbGl0eT86IGJvb2xlYW4gfCBudWxsO1xuICBkZXZpY2VzPzogRGV2aWNlSW50ZXJmYWNlW107XG4gIGRldmljZVByb2ZpbGVzPzogRGV2aWNlSW50ZXJmYWNlW107XG4gIGxpbmVzOiBMaW5lSW50ZXJmYWNlW107XG4gIHNpbmdsZU51bWJlclJlYWNoPzoge1xuICAgIGFzc29jaWF0ZWRMaW5lcz86IExpbmVJbnRlcmZhY2VbXSB8IG51bGw7XG4gICAgcmVtb3RlRGVzdGluYXRpb25zPzoge1xuICAgICAgbGluZUFzc29jaWF0aW9ucz86IExpbmVJbnRlcmZhY2VbXSB8IG51bGw7XG4gICAgfVtdIHwgbnVsbDtcbiAgICByZW1vdGVEZXN0aW5hdGlvblByb2ZpbGVOYW1lPzogc3RyaW5nIHwgbnVsbDtcbiAgfSB8IG51bGw7XG4gIHByaW1hcnlMaW5lUmVmZXJlbmNlPzogdW5rbm93biB8IG51bGw7XG4gIHZvaWNlbWFpbD86IFZvaWNlbWFpbDtcbiAgZmVhdHVyZXM/OiBGZWF0dXJlW107XG4gIG1pZ3JhdGlvblZtVW5jaGFuZ2VkPzogYm9vbGVhbiB8IG51bGw7XG4gIG1pZ3JhdGlvbkltUFVuY2hhbmdlZD86IGJvb2xlYW4gfCBudWxsO1xuICB1Y1NlcnZpY2VQcm9maWxlPzogc3RyaW5nIHwgbnVsbDtcbiAgdGVsZWNvbU1hbmFnZXJSdWxlPzogYm9vbGVhbjtcbiAgdXNlclRlbXBsYXRlVWRwRGV2aWNlVHlwZXNSdWxlcz86IFVzZXJUZW1wbGF0ZVVkcERldmljZVR5cGVzUnVsZVtdO1xuICBsZGFwSW50ZWdyYXRlZD86IGJvb2xlYW4gfCBudWxsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhbGxJbmZvRGlzcGxheSB7XG4gIGNhbGxlck5hbWU/OiBzdHJpbmcgfCBudWxsO1xuICBjYWxsZXJOdW1iZXI/OiBzdHJpbmcgfCBudWxsO1xuICByZWRpcmVjdGVkTnVtYmVyPzogc3RyaW5nIHwgbnVsbDtcbiAgZGlhbGVkTnVtYmVyPzogc3RyaW5nIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaWRQYXR0ZXJuIHtcbiAgY2FsbGVkUGFydHlUcmFuc2Zvcm1hdGlvbk1hc2s/OiBzdHJpbmcgfCBudWxsO1xuICBwYXR0ZXJuPzogc3RyaW5nIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcm90b2NvbFNwZWNpZmljRGVmYXVsdHMge1xuICBidXR0b25UZW1wbGF0ZXM6IHN0cmluZ1tdO1xuICBzZWN1cml0eVByb2ZpbGVzOiBzdHJpbmdbXTtcbiAgc3VwcG9ydGVkRXhwYW5zaW9uTW9kdWxlczogc3RyaW5nW107XG4gIHN1cHBvcnRzU29mdGtleVRlbXBsYXRlczogYm9vbGVhbjtcbiAgc3VwcG9ydHNCTEY6IGJvb2xlYW47XG4gIHN1cHBvcnRzRU06IGJvb2xlYW47XG4gIHN1cHBvcnRzTXVsdGlwbGVDYWxsRGlzcGxheTogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEZXZpY2VEZWZhdWx0c0ludGVyZmFjZSB7XG4gIGRldmljZVR5cGU6IHN0cmluZztcbiAgZGV2aWNlTmFtZVJlZ2V4OiBzdHJpbmc7XG4gIGRldmljZU5hbWVFeHBsYWluZWQ6IHN0cmluZztcbiAgbmV0d29ya0xvY2FsZXM6IHN0cmluZ1tdO1xuICBwcm90b2NvbFByb3RvY29sU3BlY2lmaWNEZWZhdWx0OiBSZWNvcmQ8c3RyaW5nLCBQcm90b2NvbFNwZWNpZmljRGVmYXVsdHM+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERldmljZUludGVyZmFjZSB7XG4gIGRldmljZVR5cGU6IHN0cmluZyB8IG51bGw7XG4gIHByb3RvY29sOiBzdHJpbmcgfCBudWxsO1xuICBuYW1lOiBzdHJpbmcgfCBudWxsO1xuICBuZXdOYW1lOiBzdHJpbmcgfCBudWxsO1xuICBwcmVmaXg6IHN0cmluZyB8IG51bGw7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nIHwgbnVsbDtcbiAgYnV0dG9uVGVtcGxhdGU6IHN0cmluZyB8IG51bGw7XG4gIGxvY2F0aW9uOiBzdHJpbmcgfCBudWxsO1xuICBkZXZpY2VQb29sTmFtZTogc3RyaW5nIHwgbnVsbDtcbiAgc29mdGtleVRlbXBsYXRlOiBzdHJpbmcgfCBudWxsO1xuICBlbnRpdHlDaGFuZ2VUeXBlOiBzdHJpbmcgfCBudWxsO1xuICBjcmVhdGVEZXZpY2VNb2RlPzogYm9vbGVhbjtcbiAgY2FsbGluZ1NlYXJjaFNwYWNlTmFtZTogc3RyaW5nIHwgbnVsbDtcbiAgY29tbW9uUGhvbmVDb25maWdOYW1lOiBzdHJpbmcgfCBudWxsO1xuICBzZWN1cml0eVByb2ZpbGU6IHN0cmluZyB8IG51bGw7XG4gIHVzZXJMb2NhbGU6IHN0cmluZyB8IG51bGw7XG4gIG5ldHdvcmtMb2NhbGU6IHN0cmluZyB8IG51bGw7XG4gIGVuYWJsZWRFeHRlbnNpb25Nb2JpbGl0eTogYm9vbGVhbiB8IG51bGw7XG4gIGZpcnN0RXhwYW5zaW9uTW9kdWxlOiBzdHJpbmcgfCBudWxsO1xuICBzZWNvbmRFeHBhbnNpb25Nb2R1bGU6IHN0cmluZyB8IG51bGw7XG4gIHdpdGhVZHA6IGJvb2xlYW47XG4gIGxpbmVBc3NvY2lhdGlvbnM6IExpbmVBc3NvY2lhdGlvbltdO1xuICBzaXBQcm9maWxlOiBzdHJpbmcgfCBudWxsO1xuICBzdWJzY3JpYmVDYWxsaW5nU2VhcmNoU3BhY2VOYW1lOiBzdHJpbmcgfCBudWxsO1xuICBleHRyYU9wdGlvbnM6IERldmljZUV4dHJhT3B0aW9ucztcbiAgdXNlckRldmljZVR5cGU6IHN0cmluZyB8IG51bGw7XG4gIGJ1aWx0SW5CcmlkZ2U6IHN0cmluZyB8IG51bGw7XG4gIHNlcnZpY2VzOiBTZXJ2aWNlW107XG4gIHNwZWVkRGlhbHM6IFNwZWVkRGlhbFtdO1xuICBidXN5TGFtcEZpZWxkczogQnVzeUxhbXBGaWVsZFtdO1xuICB3ZWJleFVVSUQ6IHN0cmluZyB8IG51bGw7XG4gIHBraWQ6IHN0cmluZyB8IG51bGw7XG4gIGRldmljZURlZmF1bHRzPzogRGV2aWNlRGVmYXVsdHNJbnRlcmZhY2UgfCBudWxsO1xuICBuYW1lVmFsaWRhdGlvblJlZ2V4Pzogc3RyaW5nIHwgbnVsbDtcbiAgbmFtZVZhbGlkYXRpb25DYXB0aW9uPzogc3RyaW5nIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaW5lQXNzb2NpYXRpb24ge1xuICBsaW5lUGtpZDogc3RyaW5nIHwgbnVsbDtcbiAgaW5kZXg6IG51bWJlcjtcbiAgcG9zaXRpb246IHN0cmluZyB8IG51bGw7XG4gIGRpcmVjdG9yeU51bWJlcjogRGlyZWN0b3J5TnVtYmVyO1xuICBlMTY0TWFzazogc3RyaW5nIHwgbnVsbDtcbiAgdGV4dExhYmVsOiBzdHJpbmcgfCBudWxsO1xuICBkaXNwbGF5TGFiZWw6IHN0cmluZyB8IG51bGw7XG4gIGRpc3BsYXlMYWJlbEFzY2lpOiBzdHJpbmcgfCBudWxsO1xuICBtYXhOdW1iZXJPZkNhbGxzOiBudW1iZXIgfCBudWxsO1xuICBidXN5VHJpZ2dlcjogbnVtYmVyIHwgbnVsbDtcbiAgcmVjb3JkaW5nT3B0aW9uOiBzdHJpbmcgfCBudWxsO1xuICByZWNvcmRpbmdQcm9maWxlOiBzdHJpbmcgfCBudWxsO1xuICByZWNvcmRpbmdNZWRpYVNvdXJjZTogc3RyaW5nIHwgbnVsbDtcbiAgdmlzdWFsTVdJOiBib29sZWFuIHwgbnVsbDtcbiAgYXVkaWJsZU1XSTogYm9vbGVhbiB8IG51bGw7XG4gIHJpbmdTZXR0aW5nX2lkbGU6IHN0cmluZyB8IG51bGw7XG4gIHJpbmdTZXR0aW5nX2FjdGl2ZTogc3RyaW5nIHwgbnVsbDtcbiAgcGlja3VwQUFTX2lkbGU6IHN0cmluZyB8IG51bGw7XG4gIHBpY2t1cEFBU19hY3RpdmU6IHN0cmluZyB8IG51bGw7XG4gIG1vbml0b3JDU1M6IHN0cmluZyB8IG51bGw7XG4gIGxvZ01pc3NlZENhbGw6IGJvb2xlYW4gfCBzdHJpbmcgfCBudWxsO1xuICBjYWxsSW5mb0Rpc3BsYXk6IENhbGxJbmZvRGlzcGxheSB8IHN0cmluZyB8IG51bGw7XG4gIGxpbmVMb2NhbElkOiBzdHJpbmc7XG4gIGRpZFBhdHRlcm46IERpZFBhdHRlcm4gfCBzdHJpbmcgfCBudWxsO1xuICBlbnRpdHlDaGFuZ2VUeXBlPzogc3RyaW5nIHwgbnVsbDtcbiAgc2hhcmVkRGV2aWNlczogU2hhcmVkRGV2aWNlW107XG4gIHNoYXJlZFVzZXJzOiBTaGFyZWRVc2VyW107XG4gIG93bmVyVXNlcklkOiBzdHJpbmdbXTtcbiAgYXNzb2NpYXRlZDogYm9vbGVhbjtcbiAgcGF0dGVyblVzYWdlOiBzdHJpbmcgfCBudWxsO1xuICBhbGVydGluZ05hbWU6IHN0cmluZyB8IG51bGw7XG4gIHBvcHVsYXRlV2l0aERpZDogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXJlY3RvcnlOdW1iZXIge1xuICAvLyBkaXJlY3RvcnlOdW1iZXI6IHN0cmluZyB8IG51bGw7XG4gIC8vIHJvdXRlUGFydGl0aW9uTmFtZTogc3RyaW5nIHwgbnVsbDtcbiAgLy8gcGtpZDogc3RyaW5nIHwgbnVsbDtcbiAgLy8gZG5UeXBlOiBzdHJpbmcgfCBudWxsO1xuICAvLyBzdWJUeXBlOiBzdHJpbmcgfCBudWxsO1xuXG4gIGRpcmVjdG9yeU51bWJlcjogc3RyaW5nO1xuICB0ZW1wbGF0ZURpcmVjdG9yeU51bWJlcj86IHN0cmluZztcbiAgcm91dGVQYXJ0aXRpb25OYW1lOiBzdHJpbmc7XG4gIHBraWQ/OiBzdHJpbmcgfCBudWxsO1xuICBkblR5cGU/OiBzdHJpbmcgfCBudWxsO1xuICBzdWJUeXBlPzogc3RyaW5nIHwgbnVsbDtcbiAgZGlzcGxheVZhbHVlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERldmljZUV4dHJhT3B0aW9ucyB7XG4gIG1lZGlhUmVzb3VyY2VHcm91cExpc3Q6IHN0cmluZyB8IG51bGw7XG4gIHVzZXJIb2xkTU9IQXVkaW9Tb3VyY2VJZDogc3RyaW5nIHwgbnVsbDtcbiAgdXNlckhvbGRNT0hBdWRpb1NvdXJjZU5hbWU6IHN0cmluZyB8IG51bGw7XG4gIG5ldHdvcmtNT0hBdWRpb1NvdXJjZUlkOiBzdHJpbmcgfCBudWxsO1xuICBuZXR3b3JrTU9IQXVkaW9Tb3VyY2VOYW1lOiBzdHJpbmcgfCBudWxsO1xuICBhYXJDc3M6IHN0cmluZyB8IG51bGw7XG4gIGFhckdyb3VwOiBzdHJpbmcgfCBudWxsO1xuICBwcml2YWN5OiBzdHJpbmcgfCBudWxsO1xuICBkZXZpY2VNb2JpbGl0eU1vZGU6IHN0cmluZyB8IG51bGw7XG4gIG1vYmlsaXR5VXNlcklkOiBzdHJpbmcgfCBudWxsO1xuICBwaG9uZVBlcnNvbmFsaXphdGlvbjogc3RyaW5nIHwgbnVsbDtcbiAgc2VydmljZXNQcm92aXNpb25pbmc6IHN0cmluZyB8IG51bGw7XG4gIHBob25lTG9hZE5hbWU6IHN0cmluZyB8IG51bGw7XG4gIHBob25lSWRsZUJMRkFsZXJ0U2V0dGluZzogc3RyaW5nIHwgbnVsbDtcbiAgcGhvbmVCdXN5QkxGQWxlcnRTZXR0aW5nOiBzdHJpbmcgfCBudWxsO1xuICB1c2VUcnVzdGVkUmVsYXlQb2ludDogYm9vbGVhbiB8IG51bGw7XG4gIGFsd2F5c1VzZVByaW1lTGluZTogYm9vbGVhbiB8IG51bGw7XG4gIGFsd2F5c1VzZVByaW1lTGluZUZvclZvaWNlTWVzc2FnZTogYm9vbGVhbiB8IG51bGw7XG4gIGdlb2xvY2F0aW9uOiBzdHJpbmcgfCBudWxsO1xuICBpZ25vcmVQcmVzZW50YXRpb25JbmRpY2F0b3JzOiBib29sZWFuIHwgbnVsbDtcbiAgbG9nZ2VkSW50b0h1bnRHcm91cDogYm9vbGVhbiB8IG51bGw7XG4gIGVuYWJsZWRFeHRlbnNpb25Nb2JpbGl0eTogYm9vbGVhbiB8IG51bGw7XG4gIHJlbW90ZURldmljZTogc3RyaW5nIHwgbnVsbDtcbiAgcHJvdGVjdGVkRGV2aWNlOiBib29sZWFuIHwgbnVsbDtcbiAgaG90bGluZURldmljZTogYm9vbGVhbjtcbiAgY29tbW9uRGV2aWNlQ29uZmlnTmFtZTogc3RyaW5nIHwgbnVsbDtcbiAgdXNlRGV2aWNlUG9vbENncG5JbmdyZXNzRE46IGJvb2xlYW4gfCBudWxsO1xuICBjZ3BuSW5ncmVzc0ROOiBzdHJpbmcgfCBudWxsO1xuICB1c2VEZXZpY2VQb29sQ2dwblRyYW5zZm9ybUNzczogYm9vbGVhbiB8IG51bGw7XG4gIGNncG5UcmFuc2Zvcm1hdGlvbkNzczogc3RyaW5nIHwgbnVsbDtcbiAgcGFja2V0Q2FwdHVyZU1vZGU6IHN0cmluZyB8IG51bGw7XG4gIHBhY2tldENhcHR1cmVEdXJhdGlvbjogbnVtYmVyIHwgbnVsbDtcbiAgYmxmUHJlc2VuY2VHcm91cDogc3RyaW5nIHwgbnVsbDtcbiAgc2lwRGlhbFJ1bGVzOiBzdHJpbmcgfCBudWxsO1xuICBtdHBQcmVmZXJyZWRPcmlnaW5hdGluZ0NvZGVjOiBzdHJpbmcgfCBudWxsO1xuICByZXJvdXRlQ3NzOiBzdHJpbmcgfCBudWxsO1xuICBzdWJzY3JpYmVDc3M6IHN0cmluZyB8IG51bGw7XG4gIGRpZ2VzdFVzZXI6IHN0cmluZyB8IG51bGw7XG4gIG10cFJlcXVpcmVkOiBib29sZWFuIHwgbnVsbDtcbiAgdW5hdHRlbmRlZFBvcnQ6IGJvb2xlYW4gfCBudWxsO1xuICByZXF1aXJlRHRtZlJlY2VwdGlvbjogYm9vbGVhbiB8IG51bGw7XG4gIGluZm9ybWF0aW9uVXJsOiBzdHJpbmcgfCBudWxsO1xuICBkaXJlY3RvcnlVcmw6IHN0cmluZyB8IG51bGw7XG4gIG1lc3NhZ2VzVXJsOiBzdHJpbmcgfCBudWxsO1xuICBzZXJ2aWNlc1VybDogc3RyaW5nIHwgbnVsbDtcbiAgYXV0aGVudGljYXRpb25Vcmw6IHN0cmluZyB8IG51bGw7XG4gIHByb3h5U2VydmVyVXJsOiBzdHJpbmcgfCBudWxsO1xuICBpZGxlVXJsOiBzdHJpbmcgfCBudWxsO1xuICBpZGxlVGltZW91dDogbnVtYmVyIHwgbnVsbDtcbiAgc2VjdXJlQXV0aGVudGljYXRpb25Vcmw6IHN0cmluZyB8IG51bGw7XG4gIHNlY3VyZURpcmVjdG9yeVVybDogc3RyaW5nIHwgbnVsbDtcbiAgc2VjdXJlSWRsZVVybDogc3RyaW5nIHwgbnVsbDtcbiAgc2VjdXJlSW5mb3JtYXRpb25Vcmw6IHN0cmluZyB8IG51bGw7XG4gIHNlY3VyZU1lc3NhZ2VVcmw6IHN0cmluZyB8IG51bGw7XG4gIHNlY3VyZVNlcnZpY2VzVXJsOiBzdHJpbmcgfCBudWxsO1xuICBtbHBwRG9tYWluOiBzdHJpbmcgfCBudWxsO1xuICBtbHBwSW5kaWNhdGlvbjogc3RyaW5nIHwgbnVsbDtcbiAgbWxwcFByZWVtcHRpb246IHN0cmluZyB8IG51bGw7XG4gIGNvbmZpZGVudGlhbEFjY2Vzc01vZGU6IHN0cmluZyB8IG51bGw7XG4gIGNvbmZpZGVudGlhbEFjY2Vzc0xldmVsOiBzdHJpbmcgfCBudWxsO1xuICBjb25maWRlbnRpYWxBY2Nlc3NMZXZlbE5hbWU6IHN0cmluZyB8IG51bGw7XG4gIGRvTm90RGlzdHVyYjogYm9vbGVhbiB8IG51bGw7XG4gIGRuZE9wdGlvbjogc3RyaW5nIHwgbnVsbDtcbiAgZG5kSW5jb21pbmdDYWxsQWxlcnQ6IHN0cmluZyB8IG51bGw7XG4gIGRpc2FibGVTcGVha2VycGhvbmU6IGJvb2xlYW4gfCBudWxsO1xuICBkaXNhYmxlU3BlYWtlcnBob25lQW5kSGVhZHNldDogYm9vbGVhbiB8IG51bGw7XG4gIGZvcndhcmRpbmdEZWxheTogbnVtYmVyIHwgbnVsbDtcbiAgcGNQb3J0OiBib29sZWFuIHwgbnVsbDtcbiAgc2V0dGluZ3NBY2Nlc3M6IHN0cmluZyB8IG51bGw7XG4gIGdyYXR1aXRvdXNBUlA6IGJvb2xlYW4gfCBudWxsO1xuICBwY1ZvaWNlVmxhbkFjY2Vzczogc3RyaW5nIHwgbnVsbDtcbiAgdmlkZW9DYXBhYmlsaXRpZXM6IHN0cmluZyB8IG51bGw7XG4gIHdlYkFjY2VzczogYm9vbGVhbiB8IG51bGw7XG4gIGRheXNEaXNwbGF5Tm90QWN0aXZlOiBudW1iZXIgfCBudWxsO1xuICBkaXNwbGF5T25UaW1lOiBzdHJpbmcgfCBudWxsO1xuICBkaXNwbGF5T25EdXJhdGlvbjogbnVtYmVyIHwgbnVsbDtcbiAgZGlzcGxheUlkbGVUaW1lb3V0OiBudW1iZXIgfCBudWxsO1xuICB3aXJlbGVzc0hlYWRzZXRIb29rc3dpdGNoQ29udHJvbDogYm9vbGVhbiB8IG51bGw7XG4gIG1pblJpbmdWb2x1bWU6IG51bWJlciB8IG51bGw7XG4gIHNob3dBbGxDYWxsc09uUEw6IGJvb2xlYW4gfCBudWxsO1xuICBsaW5lTW9kZTogc3RyaW5nIHwgbnVsbDtcbiAgbGF0ZW50Q2FwYWJpbGl0eVJlZ2lzdHJhdGlvbjogYm9vbGVhbiB8IG51bGw7XG4gIGFjdGlvbmFibGVBbGVydDogYm9vbGVhbiB8IG51bGw7XG4gIHJldmVydFRvQWxsQ2FsbHM6IGJvb2xlYW4gfCBudWxsO1xuICB3aWRlYmFuZEhlYWRzZXRVSUNvbnRyb2w6IGJvb2xlYW4gfCBudWxsO1xuICB3aWRlYmFuZEhlYWRzZXQ6IGJvb2xlYW4gfCBudWxsO1xuICBhdXRoZW50aWNhdGlvbjgwMjogYm9vbGVhbiB8IG51bGw7XG4gIHNwYW5Ub1BjUG9ydDogYm9vbGVhbiB8IG51bGw7XG4gIGhlYWRzZXRNb25pdG9yOiBib29sZWFuIHwgbnVsbDtcbiAgaGVhZHNldFJlY29yZGluZzogYm9vbGVhbiB8IG51bGw7XG4gIHVwZGF0ZWRGaWVsZHM6IHN0cmluZ1tdO1xuICBlbmFibGVDZHBTd1BvcnQ6IGJvb2xlYW4gfCBudWxsO1xuICBlbmFibGVDZHBQY1BvcnQ6IGJvb2xlYW4gfCBudWxsO1xuICBlbmFibGVMbGRwUGNQb3J0OiBib29sZWFuIHwgbnVsbDtcbiAgZGVmYXVsdFdhbGxwYXBlckZpbGU6IHN0cmluZyB8IG51bGw7XG4gIGFuYWxvZ0dhdGV3YXlQb3J0SW5mb3JtYXRpb246IHN0cmluZyB8IG51bGw7XG4gIGxvYWRTZXJ2ZXI6IHN0cmluZyB8IG51bGw7XG4gIHBlZXJGaXJtd2FyZVNoYXJpbmc6IHN0cmluZyB8IG51bGw7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGluZUludGVyZmFjZSB7XG4gIGRpcmVjdG9yeU51bWJlcjogRGlyZWN0b3J5TnVtYmVyO1xuICBjYWxsaW5nU2VhcmNoU3BhY2U6IHN0cmluZyB8IG51bGw7XG4gIGRlc2NyaXB0aW9uOiBzdHJpbmcgfCBudWxsO1xuICBsb2NhbElkOiBzdHJpbmc7XG4gIGVudGl0eUNoYW5nZVR5cGU6IHN0cmluZyB8IG51bGw7XG4gIGFsZXJ0aW5nTmFtZTogc3RyaW5nIHwgbnVsbDtcbiAgYXNjaWlBbGVydGluZ05hbWU6IHN0cmluZyB8IG51bGw7XG4gIGNhbGxGb3J3YXJkQWxsOiBDYWxsRm9yd2FyZDtcbiAgY2FsbEZvcndhcmRBbGxTZWNvbmRhcnlDU1M6IENhbGxGb3J3YXJkO1xuICBjYWxsRm9yd2FyZEJ1c3lJbnRlcm5hbDogQ2FsbEZvcndhcmQ7XG4gIGNhbGxGb3J3YXJkQnVzeUV4dGVybmFsOiBDYWxsRm9yd2FyZDtcbiAgY2FsbEZvcndhcmROb0Fuc3dlckludGVybmFsOiBDYWxsRm9yd2FyZDtcbiAgY2FsbEZvcndhcmROb0Fuc3dlckV4dGVybmFsOiBDYWxsRm9yd2FyZDtcbiAgY2FsbEZvcndhcmROb0NvdmVyYWdlSW50ZXJuYWw6IENhbGxGb3J3YXJkO1xuICBjYWxsRm9yd2FyZE5vQ292ZXJhZ2VFeHRlcm5hbDogQ2FsbEZvcndhcmQ7XG4gIGNhbGxGb3J3YXJkT25DVElGYWlsdXJlOiBDYWxsRm9yd2FyZDtcbiAgY2FsbEZvcndhcmRVbnJlZ2lzdGVyZWRJbnRlcm5hbDogQ2FsbEZvcndhcmQ7XG4gIGNhbGxGb3J3YXJkVW5yZWdpc3RlcmVkRXh0ZXJuYWw6IENhbGxGb3J3YXJkO1xuICB2b2ljZU1haWxQcm9maWxlOiBzdHJpbmcgfCBudWxsO1xuICBub0Fuc3dlclJpbmdEdXJhdGlvbjogbnVtYmVyIHwgbnVsbDtcbiAgYXV0b0Fuc3dlcjogc3RyaW5nIHwgbnVsbDtcbiAgY2FsbFBpY2t1cEdyb3VwOiBzdHJpbmcgfCBudWxsO1xuICBhYXJTZXR0aW5nczogQWFyU2V0dGluZ3M7XG4gIHBhcmtNb25pdG9yaW5nSW50ZXJuYWw6IHN0cmluZyB8IG51bGw7XG4gIHBhcmtNb25pdG9yaW5nRXh0ZXJuYWw6IHN0cmluZyB8IG51bGw7XG4gIHVyZ2VudFByaW9yaXR5OiBzdHJpbmcgfCBudWxsO1xuICBibGZQcmVzZW5jZUdyb3VwOiBzdHJpbmcgfCBudWxsO1xuICB1c2VySG9sZE1PSEF1ZGlvU291cmNlSWQ6IHN0cmluZyB8IG51bGw7XG4gIHVzZXJIb2xkTU9IQXVkaW9Tb3VyY2VOYW1lOiBzdHJpbmcgfCBudWxsO1xuICBuZXR3b3JrTU9IQXVkaW9Tb3VyY2VJZDogc3RyaW5nIHwgbnVsbDtcbiAgbmV0d29ya01PSEF1ZGlvU291cmNlTmFtZTogc3RyaW5nIHwgbnVsbDtcbiAgcmVqZWN0QW5vbnltb3VzQ2FsbDogYm9vbGVhbiB8IG51bGw7XG4gIGVudGVycHJpc2VBbHROdW06IHN0cmluZyB8IG51bGw7XG4gIGUxNjRBbHROdW06IHN0cmluZyB8IG51bGw7XG4gIGRpcmVjdG9yeVVyaXM6IHN0cmluZ1tdO1xuICBjYWxsRm9yd2FyZEFsdGVybmF0ZVBhcnR5OiBDYWxsRm9yd2FyZDtcbiAgbWxwcE5vQW5zd2VyUmluZ0R1cmF0aW9uOiBudW1iZXIgfCBudWxsO1xuICBjb25maWRlbnRpYWxBY2Nlc3NNb2RlOiBzdHJpbmcgfCBudWxsO1xuICBjb25maWRlbnRpYWxBY2Nlc3NMZXZlbDogc3RyaW5nIHwgbnVsbDtcbiAgY29uZmlkZW50aWFsQWNjZXNzTGV2ZWxOYW1lOiBzdHJpbmcgfCBudWxsO1xuICBjYWxsQ29udHJvbEFnZW50UHJvZmlsZTogc3RyaW5nIHwgbnVsbDtcbiAgaG9sZFJldmVyc2lvblJpbmdEdXJhdGlvbjogbnVtYmVyIHwgbnVsbDtcbiAgaG9sZFJldmVyc2lvbk5vdGlmaWNhdGlvbkludGVydmFsOiBudW1iZXIgfCBudWxsO1xuICBwYXJ0eUVudHJhbmNlVG9uZTogc3RyaW5nIHwgbnVsbDtcbiAgcHN0bkZhaWxvdmVyOiBzdHJpbmcgfCBudWxsO1xuICBuZXdUb1VzZXI6IGJvb2xlYW4gfCBudWxsO1xuICBkaWRQYXR0ZXJuczogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2FsbEZvcndhcmQge1xuICBmb3J3YXJkVG9Wb2ljZU1haWw6IGJvb2xlYW4gfCBudWxsO1xuICBkZXN0aW5hdGlvbjogc3RyaW5nIHwgbnVsbDtcbiAgY2FsbGluZ1NlYXJjaFNwYWNlOiBzdHJpbmcgfCBudWxsO1xuICBkdXJhdGlvbjogbnVtYmVyIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBYXJTZXR0aW5ncyB7XG4gIGFhckRlc3RpbmF0aW9uTWFzazogc3RyaW5nIHwgbnVsbDtcbiAgYWFyR3JvdXA6IHN0cmluZyB8IG51bGw7XG4gIGFhclZvaWNlTWFpbEVuYWJsZWQ6IGJvb2xlYW4gfCBudWxsO1xuICBhYXJLZWVwQ2FsbEhpc3Rvcnk6IGJvb2xlYW4gfCBudWxsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERldmljZVByb2ZpbGUge1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZlYXR1cmUge1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVzZXJUZW1wbGF0ZVVkcERldmljZVR5cGVzUnVsZSB7XG4gIGlkOiBudW1iZXI7XG4gIG9yaWdpbmFsRGV2aWNlVHlwZTogc3RyaW5nO1xuICBwcm90b2NvbDogc3RyaW5nO1xuICBuZXdEZXZpY2VUeXBlOiBzdHJpbmc7XG4gIG9yaWdpbk5ld0RldmljZVR5cGU6IHN0cmluZztcbiAgZW50aXR5Q2hhbmdlVHlwZTogc3RyaW5nO1xuICBuZXdQcm90b2NvbDogc3RyaW5nO1xuICBpc1RlbXBsYXRlUnVsZTogYm9vbGVhbjtcbiAgbG9jYWxJZDogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNoYXJlZERldmljZSB7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2hhcmVkVXNlciB7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VydmljZSB7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3BlZWREaWFsIHtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCdXN5TGFtcEZpZWxkIHtcbn1cblxuZXhwb3J0IGVudW0gRG5SYW5nZVR5cGUge1xuICBleHRlbnNpb24gPSAnRVhURU5TSU9OJyxcbiAgY3BnID0gJ0NQRycsXG4gIGNhbGxwYXJrID0gJ0NBTExQQVJLJyxcbiAgaHVudGdyb3VwID0gJ0hVTlRHUk9VUCcsXG4gIG1lZXRtZSA9ICdNRUVUTUUnLFxuICBkaWQgPSAnRElEJ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERuUmFuZ2VJbnRlcmZhY2Uge1xuICBmcm9tOiBzdHJpbmc7XG4gIHRvOiBzdHJpbmc7XG4gIHByZWZpeDogc3RyaW5nO1xuICByb3V0ZVBhcnRpdGlvbjogc3RyaW5nO1xuICBkblR5cGU6IERuUmFuZ2VUeXBlO1xuICB0ZW1wSWR4OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXZhaWxhYmxlUGhvbmVOdW1iZXJSYW5nZUludGVyZmFjZSB7XG4gIHBob25lTnVtYmVyUmFuZ2U6IERuUmFuZ2VJbnRlcmZhY2U7XG4gIHVzZWROdW1iZXJzOiBzdHJpbmdbXTtcbiAgcmVxdWVzdGVkTnVtYmVyOiBzdHJpbmc7XG4gIHVuVXNlZE51bWJlcnNXaXRoRGlkczogYW55W107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXZhaWxhYmxlUmFuZ2VJbnRlcmZhY2Uge1xuICBhdmFpbGFibGVOdW1iZXJMaXN0OiBBdmFpbGFibGVQaG9uZU51bWJlclJhbmdlSW50ZXJmYWNlW107XG59XG5cbmV4cG9ydCBlbnVtIFVzZXJWaWV3VHlwZSB7XG4gIGRldGFpbHMgPSAwLFxuICBkZXZpY2VzID0gMSxcbiAgbGluZXMgPSAyLFxuICBzbnIgPSAzLFxuICBmZWF0dXJlcyA9IDQsXG4gIG92ZXJ2aWV3ID0gNVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpc3RVc2VySW50ZXJmYWNlIHtcbiAgdXNlcmlkOiBzdHJpbmc7XG4gIGZpcnN0TmFtZT86IHN0cmluZztcbiAgbGFzdE5hbWU/OiBzdHJpbmc7XG4gIGVtYWlsPzogc3RyaW5nO1xuICB0ZWxlcGhvbmVOdW1iZXI/OiBzdHJpbmc7XG4gIHZpZXdNb2RlPzogVXNlclZpZXdUeXBlO1xuICBkZXZpY2VzOiBEZXZpY2VJbnRlcmZhY2VbXTtcbiAgZGV2aWNlUHJvZmlsZXM6IERldmljZUludGVyZmFjZVtdO1xuICBsaW5lcz86IExpbmVJbnRlcmZhY2VbXTtcbiAgc2l0ZUlkPzogbnVtYmVyO1xuICBzaXRlTmFtZT86IHN0cmluZztcbiAgY2hlY2tlZD86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGRhcFVzZXJzVGFibGVSZXNwb25zZSB7XG4gIHRvdGFsOiBudW1iZXI7XG4gIHBhZ2VEYXRhOiBMaXN0VXNlckludGVyZmFjZVtdO1xufVxuXG4vLyBleHBvcnQgY2xhc3MgRXh0ZW5zaW9uTW9iaWxpdHkgaW1wbGVtZW50cyBFeHRlbnNpb25Nb2JpbGl0eUludGVyZmFjZSB7XG4vLyAgIGRldmljZVR5cGU6IHN0cmluZyA9ICcnO1xuLy8gICBkZXZpY2VQcm9maWxlTmFtZTogc3RyaW5nID0gJyc7XG4vLyAgIGJ1dHRvblRlbXBsYXRlOiBzdHJpbmcgPSAnJztcbi8vICAgc2VydmljZXM6IHN0cmluZ1tdID0gW107XG4vLyAgIHByb3RvY29sOiBzdHJpbmcgPSAnJztcbi8vICAgdXNlckxvY2FsZTogc3RyaW5nID0gJyc7XG4vLyAgIGxpbmVBc3NvY2lhdGlvbnM6IExpbmVBc3NvY2lhdGlvbltdID0gW107XG4vLyAgIHNwZWVkRGlhbHM6IFNwZWVkRGlhbFtdID0gW107XG5cbi8vICAgY29uc3RydWN0b3IoZXh0ZW5zaW9uTW9iaWxpdHk6IEV4dGVuc2lvbk1vYmlsaXR5SW50ZXJmYWNlKSB7XG4vLyAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBleHRlbnNpb25Nb2JpbGl0eSB8fCB7fSk7XG4vLyAgIH1cblxuLy8gICBnZXRTYXZhYmxlRGF0YSgpIHtcbi8vICAgICByZXR1cm4gZ2V0U2F2YWJsZURhdGEodGhpcyk7XG4vLyAgIH1cblxuLy8gfVxuLy8gZXhwb3J0IGNsYXNzIEV4dGVuc2lvbk1vYmlsaXR5SW50ZXJmYWNlIHtcbi8vICAgZGV2aWNlVHlwZT86IHN0cmluZztcbi8vICAgZGV2aWNlUHJvZmlsZU5hbWU/OiBzdHJpbmc7XG4vLyAgIGJ1dHRvblRlbXBsYXRlPzogc3RyaW5nO1xuLy8gICBzZXJ2aWNlcz86IHN0cmluZ1tdO1xuLy8gICBwcm90b2NvbD86IHN0cmluZztcbi8vICAgdXNlckxvY2FsZT86IHN0cmluZztcbi8vICAgbGluZUFzc29jaWF0aW9uczogTGluZUFzc29jaWF0aW9uW10gPSBbXTtcbi8vICAgc3BlZWREaWFsczogU3BlZWREaWFsW10gPSBbXTtcblxuLy8gICBjb25zdHJ1Y3RvcihleHRlbnNpb25Nb2JpbGl0eTogRXh0ZW5zaW9uTW9iaWxpdHlJbnRlcmZhY2UpIHtcbi8vICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGV4dGVuc2lvbk1vYmlsaXR5IHx8IHt9KTtcbi8vICAgICAgIHRoaXMuc3BlZWREaWFscy5tYXAoZGlhbCA9PiBuZXcgU3BlZWREaWFsKGRpYWwsIGZhbHNlKSk7XG4vLyAgIH1cblxuLy8gICBnZXRTYXZhYmxlRGF0YSgpIHtcbi8vICAgICByZXR1cm4gZ2V0U2F2YWJsZURhdGEodGhpcyk7XG4vLyAgIH1cblxuLy8gfVxuXG4vLyBleHBvcnQgaW50ZXJmYWNlIFNpbmdsZU51bWJlclJlYWNoSW50ZXJmYWNlIHtcbi8vICAgcmVtb3RlRGVzdGluYXRpb25Qcm9maWxlTmFtZTogc3RyaW5nO1xuLy8gICByZW1vdGVEZXN0aW5hdGlvbnM/OiBSZW1vdGVEZXN0aW5hdGlvbkludGVyZmFjZVtdO1xuLy8gICBkZXZpY2VQb29sPzogc3RyaW5nO1xuLy8gICBjc3M/OiBzdHJpbmc7XG4vLyAgIHJlcm91dGVDc3M/OiBzdHJpbmc7XG4vLyB9XG5cbi8vIGV4cG9ydCBpbnRlcmZhY2UgUmVtb3RlRGVzdGluYXRpb25JbnRlcmZhY2Uge1xuLy8gICBuYW1lOiBzdHJpbmc7XG4vLyAgIGRlc3RpbmF0aW9uOiBzdHJpbmc7XG4vLyAgIGFuc3dlclRvb1Nvb25UaW1lcjogbnVtYmVyO1xuLy8gICBhbnN3ZXJUb29MYXRlVGltZXI6IG51bWJlcjtcbi8vICAgZGVsYXlCZWZvcmVSaW5naW5nQ2VsbDogbnVtYmVyO1xuLy8gICBsaW5lQXNzb2NpYXRpb25zOiBMaW5lRGlyZWN0b3J5SW50ZXJmYWNlW107XG4vLyAgIHNuclZvaWNlbWFpbFBvbGljeT86IHN0cmluZztcbi8vICAgZW5hYmxlTW92ZVRvTW9iaWxlPzogYm9vbGVhbjtcbi8vICAgcmluZ1NjaGVkdWxlPzogUmluZ1NjaGVkdWxlSW50ZXJmYWNlO1xuLy8gICB0b2RFcnJvcj86IGJvb2xlYW47XG4vLyAgIGVuYWJsZVNpbmdsZU51bWJlclJlYWNoPzogYm9vbGVhbjtcbi8vIH1cblxuLy8gZXhwb3J0IGludGVyZmFjZSBTaW5nbGVOdW1iZXJSZWFjaEludGVyZmFjZSB7XG4vLyAgIHJlbW90ZURlc3RpbmF0aW9uUHJvZmlsZU5hbWU6IHN0cmluZztcbi8vICAgcmVtb3RlRGVzdGluYXRpb25zPzogUmVtb3RlRGVzdGluYXRpb25JbnRlcmZhY2VbXTtcbi8vICAgZGV2aWNlUG9vbD86IHN0cmluZztcbi8vICAgY3NzPzogc3RyaW5nO1xuLy8gICByZXJvdXRlQ3NzPzogc3RyaW5nO1xuLy8gfVxuXG5cbmV4cG9ydCBjbGFzcyBWb2ljZW1haWwgaW1wbGVtZW50cyBQYXJ0aWFsPFZvaWNlbWFpbEludGVyZmFjZT4ge1xuICBjYWxsSGFuZGxlck9iamVjdElkPzogc3RyaW5nO1xuICBleHRlbnNpb246IHN0cmluZyA9ICcnO1xuICB2bVVzZXJUZW1wbGF0ZTogc3RyaW5nID0gJyc7XG4gIGVtYWlsQWRkcmVzczogc3RyaW5nID0gJyc7XG4gIHZtUGFzc3dvcmQ/OiBhbnk7XG4gIHZtTWFpbGJveD86IGFueTtcbiAgdm1VbmlmaWVkTWVzc2FnaW5nQWNjb3VudD86IGFueVtdO1xuICBub3RpZmljYXRpb25EZXZpY2VzPzogYW55W107XG4gIGFsdGVybmF0ZUV4dGVuc2lvbnM/OiBhbnlbXTtcbiAgbGFuZ3VhZ2U/OiBhbnk7XG4gIG1lc3NhZ2VBY3Rpb25zPzogYW55O1xuICBjYWxsZXJJbnB1dD86IGFueTtcbiAgd2ViQXBwUGFzc3dvcmRTZXR0aW5ncz86IGFueTtcbiAgdm1QYXNzd29yZFNldHRpbmdzPzogYW55O1xuICBncmVldGluZ3M6IGFueVtdID0gW107XG4gIHBraWQ/OiBzdHJpbmc7XG4gIHBpbjogc3RyaW5nID0gJyc7XG4gIC8vIG5vbi1zYXZhYmxlIGRhdGFcbiAgY2hhbmdlRXh0ZW5zaW9uQnlOZXdMaW5lOiBudW1iZXIgPSAwO1xuXG4gIGNvbnN0cnVjdG9yKHZtPzogVm9pY2VtYWlsSW50ZXJmYWNlKSB7XG4gICAgaWYgKHZtICYmIHZtLmV4dGVuc2lvbikge1xuICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCB2bSk7XG4gICAgICBpZiAodGhpcy5leHRlbnNpb24gJiYgdGhpcy5leHRlbnNpb24uc3RhcnRzV2l0aCgnKycpKSB7XG4gICAgICAgIHRoaXMuZXh0ZW5zaW9uID0gJ1xcXFwnICsgdGhpcy5leHRlbnNpb247XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5leHRlbnNpb24pIHtcbiAgICAgICAgLy8gdGhpcy5ub3RpZmljYXRpb25EZXZpY2VzID0gdGhpcy5pbml0RGV2aWNlcygpO1xuICAgICAgICAvLyB0aGlzLmdyZWV0aW5ncyA9ICF0aGlzLmdyZWV0aW5ncyA/IFtdIDogdGhpcy5ncmVldGluZ3MubWFwKGdyZWV0aW5ncyA9PiBuZXcgR3JlZXRpbmdEZXRhaWwoZ3JlZXRpbmdzKSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZXh0ZW5zaW9uID0gJyc7XG4gICAgICB0aGlzLnZtVXNlclRlbXBsYXRlID0gJyc7XG4gICAgfVxuICB9XG5cbiAgZ2V0U2F2YWJsZURhdGEoKSB7XG4gICAgY29uc3Qgbm9uU2F2YWJsZURhdGEgPSBbJ3ZtTWFpbGJveCcsICdub3RpZmljYXRpb25EZXZpY2VzJywgJ2NoYW5nZUV4dGVuc2lvbkJ5TmV3TGluZSddO1xuICAgIHJldHVybiBnZXRTYXZhYmxlRGF0YSh0aGlzLCBub25TYXZhYmxlRGF0YSk7XG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBWb2ljZW1haWxJbnRlcmZhY2Uge1xuICBjYWxsSGFuZGxlck9iamVjdElkPzogc3RyaW5nO1xuICBleHRlbnNpb246IHN0cmluZztcbiAgdm1Vc2VyVGVtcGxhdGU/OiBzdHJpbmc7XG4gIHZtUGFzc3dvcmQ/OiBhbnk7XG4gIHZtTWFpbGJveD86IGFueTtcbiAgdm1VbmlmaWVkTWVzc2FnaW5nQWNjb3VudD86IGFueVtdO1xuICBub3RpZmljYXRpb25EZXZpY2VzPzogYW55W107XG4gIGFsdGVybmF0ZUV4dGVuc2lvbnM/OiBhbnlbXTtcbiAgbGFuZ3VhZ2U/OiBhbnk7XG4gIG1lc3NhZ2VBY3Rpb25zPzogYW55O1xuICB3ZWJBcHBQYXNzd29yZD86IGFueTtcbiAgdm1QYXNzd29yZFNldHRpbmdzPzogYW55O1xuICBwa2lkPzogc3RyaW5nO1xufSJdfQ==
199
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1jcmVhdGlvbi13aXphcmQuaW50ZXJmYWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy9pbnRlcmZhY2VzL3VzZXItY3JlYXRpb24td2l6YXJkLmludGVyZmFjZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBeUloRCxrREFBa0Q7QUFDbEQscUJBQXFCO0FBQ3JCLHdCQUF3QjtBQUN4Qix1QkFBdUI7QUFDdkIseUJBQXlCO0FBQ3pCLG9CQUFvQjtBQUNwQixxQkFBcUI7QUFDckIseUJBQXlCO0FBQ3pCLDhCQUE4QjtBQUM5Qix5QkFBeUI7QUFDekIsMkJBQTJCO0FBQzNCLDBCQUEwQjtBQUMxQiwwQkFBMEI7QUFDMUIsOEJBQThCO0FBQzlCLCtCQUErQjtBQUMvQiw0QkFBNEI7QUFDNUIsMkNBQTJDO0FBQzNDLHlDQUF5QztBQUN6QywwQkFBMEI7QUFDMUIsNEJBQTRCO0FBQzVCLG1DQUFtQztBQUNuQyx3QkFBd0I7QUFDeEIsNkJBQTZCO0FBQzdCLDhCQUE4QjtBQUM5QiwwQkFBMEI7QUFDMUIsMkJBQTJCO0FBQzNCLHdDQUF3QztBQUN4QyxtQ0FBbUM7QUFDbkMsNENBQTRDO0FBQzVDLGlDQUFpQztBQUNqQyxxQkFBcUI7QUFDckIsbUJBQW1CO0FBQ25CLDBCQUEwQjtBQUMxQix5QkFBeUI7QUFDekIsc0NBQXNDO0FBQ3RDLDhCQUE4QjtBQUM5QixtQ0FBbUM7QUFDbkMsd0JBQXdCO0FBQ3hCLG9CQUFvQjtBQUNwQixzQkFBc0I7QUFDdEIsc0JBQXNCO0FBQ3RCLDRDQUE0QztBQUM1Qyx3Q0FBd0M7QUFDeEMsbUJBQW1CO0FBQ25CLDBCQUEwQjtBQUMxQix1QkFBdUI7QUFDdkIsZ0NBQWdDO0FBQ2hDLHVCQUF1QjtBQUN2QiwwQkFBMEI7QUFD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QVcsRUFBRSxDQUFDO1FBQ3ZCLG1CQUFjLEdBQVcsRUFBRSxDQUFDO1FBQzVCLGlCQUFZLEdBQVcsRUFBRSxDQUFDO1FBVzFCLGNBQVMsR0FBVSxFQUFFLENBQUM7UUFFdEIsUUFBRyxHQUFXLEVBQUUsQ0FBQztRQUNqQixtQkFBbUI7UUFDbkIsNkJBQXdCLEdBQVcsQ0FBQyxDQUFDO1FBR25DLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxTQUFTLEVBQUU7WUFDdEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDeEIsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNwRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO2FBQ3hDO1lBQ0QsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO2dCQUNsQixpREFBaUQ7Z0JBQ2pELDBHQUEwRzthQUMzRztTQUNGO2FBQU07WUFDTCxJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsY0FBYyxHQUFHLEVBQUUsQ0FBQztTQUMxQjtJQUNILENBQUM7SUFFRCxjQUFjO1FBQ1osTUFBTSxjQUFjLEdBQUcsQ0FBQyxXQUFXLEVBQUUscUJBQXFCLEVBQUUsMEJBQTBCLENBQUMsQ0FBQztRQUN4RixPQUFPLGNBQWMsQ0FBQyxJQUFJLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDOUMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0U2F2YWJsZURhdGEgfSBmcm9tICcuLi91dGlscy9tb2RlbCc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIExkYXBVc2VyUm93IHtcclxuICAgIHVzZXJJZDogc3RyaW5nO1xyXG4gICAgZmlyc3ROYW1lOiBzdHJpbmc7XHJcbiAgICBsYXN0TmFtZTogc3RyaW5nO1xyXG4gICAgZW1haWw6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgTGRhcFF1ZXJ5VHlwZSA9ICd1c2VySWQnIHwgJ2ZpcnN0TmFtZScgfCAnbGFzdE5hbWUnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBPdmVydmlld1VzZXJSb3cgZXh0ZW5kcyBMZGFwVXNlclJvdyB7XHJcbiAgICB1c2VyVGVtcGxhdGU6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBPdmVydmlld0xpbmVSb3cge1xyXG4gICAgbnVtYmVyOiBzdHJpbmc7XHJcbiAgICBkaWQ6IHN0cmluZztcclxuICAgIHJvdXRlUGFydGl0aW9uTmFtZTogc3RyaW5nO1xyXG4gICAgY3NzOiBzdHJpbmc7XHJcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIE92ZXJ2aWV3RGV2aWNlUm93IHtcclxuICAgIG5hbWU6IHN0cmluZztcclxuICAgIGRldmljZVR5cGU6IHN0cmluZztcclxuICAgIGxpbmVzOiBzdHJpbmc7XHJcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBVc2VyQ3JlYXRpb25UeXBlID0gJ0NVQ00nIHwgJ01UJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVXNlckRldGFpbHNGb3JtIHtcclxuICAgIHVzZXJJZDogc3RyaW5nO1xyXG4gICAgZmlyc3ROYW1lOiBzdHJpbmc7XHJcbiAgICBsYXN0TmFtZTogc3RyaW5nO1xyXG4gICAgZW1haWw6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBVc2VyRGV0YWlsc0xpbmVGb3JtVmFsdWUge1xyXG4gICAgbGluZU51bWJlcjogc3RyaW5nO1xyXG4gICAgbnVtYmVyOiBzdHJpbmc7XHJcbiAgICByb3V0ZVBhcnRpdGlvbjogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFVzZXJEZXRhaWxzRGV2aWNlRm9ybVZhbHVlIHtcclxuICAgIGRldmljZVR5cGU6IHN0cmluZztcclxuICAgIHByb3RvY29sOiBzdHJpbmc7XHJcbiAgICBidXR0b25UZW1wbGF0ZTogc3RyaW5nO1xyXG4gICAgbmFtZTogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFVzZXJEZXRhaWxzRm9ybVZhbHVlIHtcclxuICAgIHVzZXJJZDogc3RyaW5nO1xyXG4gICAgZmlyc3ROYW1lOiBzdHJpbmc7XHJcbiAgICBsYXN0TmFtZTogc3RyaW5nO1xyXG4gICAgZW1haWw6IHN0cmluZztcclxuICAgIGxpbmVzOiBVc2VyRGV0YWlsc0xpbmVGb3JtVmFsdWVbXTtcclxuICAgIGRldmljZXM6IFVzZXJEZXRhaWxzRGV2aWNlRm9ybVZhbHVlW107XHJcbiAgICBkZXZpY2VQcm9maWxlczogVXNlckRldGFpbHNEZXZpY2VGb3JtVmFsdWVbXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBMaW5lT3B0aW9uIHtcclxuICAgIG51bWJlcjogc3RyaW5nO1xyXG4gICAgZGlkOiBzdHJpbmc7XHJcbiAgICBjc3M6IHN0cmluZztcclxuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU2VsZWN0ZWRMaW5lUm93IHtcclxuICAgIGxpbmVOdW1iZXI6IHN0cmluZyB8IG51bGw7XHJcbiAgICByb3V0ZVBhcnRpdGlvbk5hbWU6IHN0cmluZyB8IG51bGw7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRGV2aWNlRW50cnkge1xyXG4gICAgZGV2aWNlVHlwZTogc3RyaW5nO1xyXG4gICAgcHJvdG9jb2w6IHN0cmluZztcclxuICAgIGJ1dHRvblRlbXBsYXRlOiBzdHJpbmc7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVGVtcGxhdGVMaW5lTGlrZSB7XHJcbiAgICBkaXJlY3RvcnlOdW1iZXI/OiB7XHJcbiAgICAgICAgZGlyZWN0b3J5TnVtYmVyPzogc3RyaW5nO1xyXG4gICAgICAgIHJvdXRlUGFydGl0aW9uTmFtZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICAgICAgdGVtcGxhdGVEaXJlY3RvcnlOdW1iZXI/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgfTtcclxuICAgIGRlc2NyaXB0aW9uPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGNhbGxpbmdTZWFyY2hTcGFjZT86IHN0cmluZyB8IHsgbmFtZT86IHN0cmluZyB8IG51bGwgfSB8IG51bGw7XHJcbiAgICBkaWRQYXR0ZXJucz86IEFycmF5PHsgcGF0dGVybj86IHN0cmluZyB8IG51bGwgfT4gfCBudWxsO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRlbXBsYXRlRGV2aWNlTGlrZSB7XHJcbiAgICBkZXZpY2VUeXBlPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHByb3RvY29sPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGJ1dHRvblRlbXBsYXRlPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIG5hbWU/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgbGluZUFzc29jaWF0aW9ucz86IEFycmF5PHtcclxuICAgICAgICBsb2dNaXNzZWRDYWxsPzogYm9vbGVhbiB8IHN0cmluZyB8IG51bGw7XHJcbiAgICAgICAgZGlyZWN0b3J5TnVtYmVyPzoge1xyXG4gICAgICAgICAgICBkaXJlY3RvcnlOdW1iZXI/OiBzdHJpbmc7XHJcbiAgICAgICAgICAgIHJvdXRlUGFydGl0aW9uTmFtZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICAgICAgICAgIHRlbXBsYXRlRGlyZWN0b3J5TnVtYmVyPzogc3RyaW5nIHwgbnVsbDtcclxuICAgICAgICB9IHwgbnVsbDtcclxuICAgIH0+O1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRlbXBsYXRlRW5kVXNlckxpa2Uge1xyXG4gICAgdXNlcmlkPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIGZpcnN0TmFtZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBsYXN0TmFtZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBlbWFpbD86IHN0cmluZyB8IG51bGw7XHJcbiAgICBsaW5lcz86IFRlbXBsYXRlTGluZUxpa2VbXSB8IG51bGw7XHJcbiAgICBkZXZpY2VzPzogVGVtcGxhdGVEZXZpY2VMaWtlW10gfCBudWxsO1xyXG59XHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBVc2VyVGVtcGxhdGVJbnRlcmZhY2Uge1xyXG4gIGlkOiBudW1iZXI7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgY3JlYXRlT3JVcGxvYWQ6IHN0cmluZyB8IG51bGw7XHJcbiAgdXNlclRlbXBsYXRlU2V0dGluZ3M6IFVzZXJUZW1wbGF0ZVNldHRpbmdbXTtcclxuICBjdXN0b21lcklkOiBudW1iZXI7XHJcbiAgdXNlclJlcXVpcmVkRmllbGRzOiBzdHJpbmdbXTtcclxuICBkZXZpY2VSZXF1aXJlZEZpZWxkczogc3RyaW5nW107XHJcbiAgdWRwUmVxdWlyZWRGaWVsZHM6IHN0cmluZ1tdO1xyXG4gIGxpbmVSZXF1aXJlZEZpZWxkczogc3RyaW5nW107XHJcbiAgZW5kVXNlcjogRW5kVXNlckludGVyZmFjZTtcclxuICB0eXBlOiBzdHJpbmc7XHJcbiAgZ2xvYmFsVGVtcGxhdGU6IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVXNlclRlbXBsYXRlU2V0dGluZyB7XHJcbiAgLy8gQWRkIGZpZWxkcyBpZiBuZWVkZWRcclxufVxyXG5cclxuLy8gZXhwb3J0IGNsYXNzIFVzZXIgaW1wbGVtZW50cyBFbmRVc2VySW50ZXJmYWNlIHtcclxuLy8gICB1c2VyaWQ/OiBzdHJpbmc7XHJcbi8vICAgZmlyc3ROYW1lPzogc3RyaW5nO1xyXG4vLyAgIGxhc3ROYW1lPzogc3RyaW5nO1xyXG4vLyAgIG1pZGRsZU5hbWU/OiBzdHJpbmc7XHJcbi8vICAgZW1haWw/OiBzdHJpbmc7XHJcbi8vICAgZG9tYWluPzogc3RyaW5nO1xyXG4vLyAgIGRlcGFydG1lbnQ/OiBzdHJpbmc7XHJcbi8vICAgdGVsZXBob25lTnVtYmVyPzogc3RyaW5nO1xyXG4vLyAgIGhvbWVOdW1iZXI/OiBzdHJpbmc7XHJcbi8vICAgbW9iaWxlTnVtYmVyPzogc3RyaW5nO1xyXG4vLyAgIHBhZ2VyTnVtYmVyPzogc3RyaW5nO1xyXG4vLyAgIGRpc3BsYXlOYW1lPzogc3RyaW5nO1xyXG4vLyAgIGxkYXBJbnRlZ3JhdGVkPzogYm9vbGVhbjtcclxuLy8gICBzcGFya0xpY2Vuc2VzOiBBcnJheTxhbnk+O1xyXG4vLyAgIGV4dGVuc2lvbk1vYmlsaXR5OiBhbnk7XHJcbi8vICAgc2luZ2xlTnVtYmVyUmVhY2g/OiBTaW5nbGVOdW1iZXJSZWFjaDtcclxuLy8gICBwcmltYXJ5TGluZVJlZmVyZW5jZTogTGluZURpcmVjdG9yeTtcclxuLy8gICB2b2ljZW1haWw6IFZvaWNlbWFpbDtcclxuLy8gICBkZXZpY2VzOiBBcnJheTxEZXZpY2U+O1xyXG4vLyAgIGRldmljZVByb2ZpbGVzOiBBcnJheTxEZXZpY2U+O1xyXG4vLyAgIGxpbmVzOiBBcnJheTxMaW5lPjtcclxuLy8gICBmZWF0dXJlczogQXJyYXk8c3RyaW5nPjtcclxuLy8gICB1Y1NlcnZpY2VQcm9maWxlOiBzdHJpbmc7XHJcbi8vICAgc3Vic2NyaWJlQ3NzOiBzdHJpbmc7XHJcbi8vICAgcHJlc2VuY2VHcm91cDogc3RyaW5nO1xyXG4vLyAgIGFsbG93RGV2aWNlQ29udHJvbEZyb21DdGk6IGJvb2xlYW47XHJcbi8vICAgZW5hYmxlQ3Jvc3NDbHVzdGVyRW06IGJvb2xlYW47XHJcbi8vICAgZW5hYmxlVXNlclRvSG9zdENvbmZlcmVuY2VOb3c6IGJvb2xlYW47XHJcbi8vICAgYXR0ZW5kZWVzQWNjZXNzQ29kZTogc3RyaW5nO1xyXG4vLyAgIG1hbmFnZXI6IHN0cmluZztcclxuLy8gICB0aXRsZTogc3RyaW5nO1xyXG4vLyAgIGFzc29jaWF0ZWRQYzogc3RyaW5nO1xyXG4vLyAgIHVzZXJQcm9maWxlOiBzdHJpbmc7XHJcbi8vICAgZW5hYmxlTW9iaWxlVm9pY2VBY2Nlc3M6IGJvb2xlYW47XHJcbi8vICAgbWxwcFVzZXJJZE51bWJlcjogc3RyaW5nO1xyXG4vLyAgIG1scHBQcmVjZWRlbmNlUGF0dGVybjogc3RyaW5nO1xyXG4vLyAgIHVzZXJMb2NhbGU6IHN0cmluZztcclxuLy8gICBzaXRlSWQ6IG51bWJlcjtcclxuLy8gICBzaXRlTmFtZTogc3RyaW5nO1xyXG4vLyAgIGxvY2F0aW9uOiBzdHJpbmc7XHJcbi8vICAgbGluZUFwcGVhcmFuY2VzOiBBcnJheTxMaW5lQXBwZWFyYW5jZT47XHJcbi8vICAgbWVldE1lczogQXJyYXk8TWVldE1lQ29uZmVyZW5jaW5nPjtcclxuLy8gICB0b2tlbjogc3RyaW5nO1xyXG4vLyAgIG1scHBQYXNzd29yZDogc3RyaW5nO1xyXG4vLyAgIHBhc3N3b3JkPzogc3RyaW5nO1xyXG4vLyAgIGRpZ2VzdENyZWRlbnRpYWxzPzogc3RyaW5nO1xyXG4vLyAgIG5ld1VzZXJpZDogc3RyaW5nO1xyXG4vLyAgIGhvbWVDbHVzdGVyOiBib29sZWFuO1xyXG4vLyAgIGRpcmVjdG9yeVVyaTogc3RyaW5nO1xyXG4vLyAgIGNyZWF0ZVVzZXJNb2RlOiBib29sZWFuO1xyXG4vLyAgIHBpbjogc3RyaW5nO1xyXG4vLyAgIG1pZ3JhdGlvblZtVW5jaGFuZ2VkOiBib29sZWFuO1xyXG4vLyAgIG1pZ3JhdGlvbkltUFVuY2hhbmdlZDogYm9vbGVhbjtcclxuLy8gICB0ZWxlY29tTWFuYWdlclJ1bGU6IGJvb2xlYW47XHJcbi8vICAgdXNlclRlbXBsYXRlVWRwRGV2aWNlVHlwZXNSdWxlczogVWRwRGV2aWNlVHlwZXNSdWxlW107XHJcbi8vICAgZGVsZXRlZFVzZXJUZW1wbGF0ZVVkcERldmljZVR5cGVzUnVsZXM6IFVkcERldmljZVR5cGVzUnVsZVtdO1xyXG4vLyAgIGhhc01vZGlmaWVkQ2FjaGUgPSBmYWxzZTtcclxuXHJcbi8vICAgdm1Pbmx5VXNlcj86IGJvb2xlYW47XHJcblxyXG4vLyAgIGNvbnN0cnVjdG9yKHVzZXI6IEVuZFVzZXJJbnRlcmZhY2UsIGRldmljZXNTdGF0ZXMgPSBudWxsLCBkZXZpY2VQcm9maWxlc1N0YXRlcyA9IG51bGwsIGxpbmVzU3RhdGVzID0gbnVsbCkge1xyXG4vLyAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCB1c2VyIHx8IHt9KTtcclxuLy8gICAgIHRoaXMuZXh0ZW5zaW9uTW9iaWxpdHkgPSBuZXcgRXh0ZW5zaW9uTW9iaWxpdHkodGhpcy5leHRlbnNpb25Nb2JpbGl0eSk7XHJcbi8vICAgICB0aGlzLnNpbmdsZU51bWJlclJlYWNoID0gbmV3IFNpbmdsZU51bWJlclJlYWNoKHRoaXMuc2luZ2xlTnVtYmVyUmVhY2gpO1xyXG4vLyAgICAgdGhpcy5wcmltYXJ5TGluZVJlZmVyZW5jZSA9IG5ldyBMaW5lRGlyZWN0b3J5KHRoaXMucHJpbWFyeUxpbmVSZWZlcmVuY2UpO1xyXG4vLyAgICAgdGhpcy52b2ljZW1haWwgPSBuZXcgVm9pY2VtYWlsKHRoaXMudm9pY2VtYWlsKTtcclxuLy8gICAgIHRoaXMuZGV2aWNlcyA9ICF0aGlzLmRldmljZXMgPyBbXSA6IHRoaXMuZGV2aWNlcy5tYXAoZGV2aWNlID0+IG5ldyBEZXZpY2UoZGV2aWNlKSk7XHJcbi8vICAgICB0aGlzLnVzZXJUZW1wbGF0ZVVkcERldmljZVR5cGVzUnVsZXMgPSAhdGhpcy51c2VyVGVtcGxhdGVVZHBEZXZpY2VUeXBlc1J1bGVzID8gW10gOiB0aGlzLnVzZXJUZW1wbGF0ZVVkcERldmljZVR5cGVzUnVsZXMubWFwKHJ1bGUgPT4gbmV3IFVkcERldmljZVR5cGVzUnVsZShydWxlKSk7XHJcbi8vICAgICB0aGlzLmRldmljZVByb2ZpbGVzID0gIXRoaXMuZGV2aWNlUHJvZmlsZXMgPyBbXSA6IHRoaXMuZGV2aWNlUHJvZmlsZXNcclxuLy8gICAgICAgLm1hcChkZXZpY2UgPT4gbmV3IERldmljZShkZXZpY2UsIGFwcFZhbGlkYXRvcnMsIERldmljZUtpbmQuZGV2aWNlUHJvZmlsZSkpO1xyXG4vLyAgICAgdGhpcy5saW5lcyA9ICF0aGlzLmxpbmVzID8gW10gOiB0aGlzLmxpbmVzLm1hcChsaW5lID0+IG5ldyBMaW5lKGxpbmUpKTtcclxuLy8gICAgIHRoaXMubGluZUFwcGVhcmFuY2VzID0gIXRoaXMubGluZUFwcGVhcmFuY2VzID8gW10gOiB0aGlzLmxpbmVBcHBlYXJhbmNlcy5tYXAobGluZUFwcGVhcmFuY2UgPT4gbmV3IExpbmVBcHBlYXJhbmNlKGxpbmVBcHBlYXJhbmNlKSk7XHJcbi8vICAgICB0aGlzLm1lZXRNZXMgPSAhdGhpcy5tZWV0TWVzID8gW10gOiB0aGlzLm1lZXRNZXMubWFwKG1lZXRNZSA9PiBuZXcgTWVldE1lQ29uZmVyZW5jaW5nKG1lZXRNZSkpO1xyXG4vLyAgICAgdGhpcy5zcGFya0xpY2Vuc2VzID0gIXRoaXMuc3BhcmtMaWNlbnNlcyA/IFtdIDogdGhpcy5zcGFya0xpY2Vuc2VzLm1hcChzcGFyayA9PiBuZXcgU3Bhcmsoc3BhcmspKTtcclxuLy8gICAgIHRoaXMuZmVhdHVyZXMgPSB0aGlzLmZlYXR1cmVzIHx8IFtdO1xyXG4vLyAgICAgdGhpcy5wYXNzd29yZCA9IG51bGw7XHJcbi8vICAgICB0aGlzLmRpZ2VzdENyZWRlbnRpYWxzID0gbnVsbDtcclxuLy8gICAgIHRoaXMuZGVsZXRlZFVzZXJUZW1wbGF0ZVVkcERldmljZVR5cGVzUnVsZXMgPSBbXTtcclxuLy8gICB9XHJcblxyXG4vLyAgIGdldFNhdmFibGVEYXRhKCkge1xyXG4vLyAgICAgY29uc3QgZXhjbHVkZWRGaWVsZHM6IHN0cmluZ1tdID0gWydmb3JtJywgJ2VkaXRNb2RlJCcsICd2aWV3TW9kZScsICd0b2tlbicsICdoYXNNb2RpZmllZENhY2hlJywgJ2RlbGV0ZWRVc2VyVGVtcGxhdGVVZHBEZXZpY2VUeXBlc1J1bGVzJ107XHJcbi8vICAgICByZXR1cm4gZ2V0U2F2YWJsZURhdGEodGhpcywgZXhjbHVkZWRGaWVsZHMpO1xyXG4vLyAgIH1cclxuLy8gfVxyXG5cclxuZXhwb3J0IGNsYXNzIEVuZFVzZXIgaW1wbGVtZW50cyBQYXJ0aWFsPEVuZFVzZXJJbnRlcmZhY2U+IHtcclxuICBsaW5lczogTGluZUludGVyZmFjZVtdID0gW107XHJcbiAgdm9pY2VtYWlsOiBWb2ljZW1haWw7XHJcbiAgY29uc3RydWN0b3IoaW5pdD86IEVuZFVzZXJJbnRlcmZhY2UpIHtcclxuICAgIE9iamVjdC5hc3NpZ24odGhpcywgaW5pdCB8fCB7fSk7XHJcbiAgICB0aGlzLnZvaWNlbWFpbCA9IG5ldyBWb2ljZW1haWwoaW5pdD8udm9pY2VtYWlsKTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRW5kVXNlckludGVyZmFjZSB7XHJcbiAgdXNlcmlkPzogc3RyaW5nIHwgbnVsbDtcclxuICBlbWFpbD86IHN0cmluZyB8IG51bGw7XHJcbiAgZmlyc3ROYW1lPzogc3RyaW5nIHwgbnVsbDtcclxuICBsYXN0TmFtZT86IHN0cmluZyB8IG51bGw7XHJcbiAgZG9tYWluPzogc3RyaW5nIHwgbnVsbDtcclxuICBjdXN0b21lcklkPzogbnVtYmVyIHwgbnVsbDtcclxuICBkZXBhcnRtZW50Pzogc3RyaW5nIHwgbnVsbDtcclxuICB1c2VyUHJvZmlsZT86IHN0cmluZyB8IG51bGw7XHJcbiAgbWFuYWdlcj86IHN0cmluZyB8IG51bGw7XHJcbiAgZW5hYmxlTW9iaWxlVm9pY2VBY2Nlc3M/OiBib29sZWFuIHwgbnVsbDtcclxuICBhc3NvY2lhdGVkUGM/OiBzdHJpbmcgfCBudWxsO1xyXG4gIHVzZXJMb2NhbGU/OiBzdHJpbmcgfCBudWxsO1xyXG4gIGRpZ2VzdENyZWRlbnRpYWxzPzogc3RyaW5nIHwgbnVsbDtcclxuICBtaWRkbGVOYW1lPzogc3RyaW5nIHwgbnVsbDtcclxuICB0aXRsZT86IHN0cmluZyB8IG51bGw7XHJcbiAgdGVsZXBob25lTnVtYmVyPzogc3RyaW5nIHwgbnVsbDtcclxuICBob21lTnVtYmVyPzogc3RyaW5nIHwgbnVsbDtcclxuICBtb2JpbGVOdW1iZXI/OiBzdHJpbmcgfCBudWxsO1xyXG4gIHBhZ2VyTnVtYmVyPzogc3RyaW5nIHwgbnVsbDtcclxuICBkaXNwbGF5TmFtZT86IHN0cmluZyB8IG51bGw7XHJcbiAgZGlyZWN0b3J5VXJpPzogc3RyaW5nIHwgbnVsbDtcclxuICBwcmVzZW5jZUdyb3VwPzogc3RyaW5nIHwgbnVsbDtcclxuICBzdWJzY3JpYmVDc3M/OiBzdHJpbmcgfCBudWxsO1xyXG4gIGFsbG93RGV2aWNlQ29udHJvbEZyb21DdGk/OiBib29sZWFuIHwgbnVsbDtcclxuICBlbmFibGVDcm9zc0NsdXN0ZXJFbT86IGJvb2xlYW4gfCBudWxsO1xyXG4gIG1scHBVc2VySWROdW1iZXI/OiBzdHJpbmcgfCBudWxsO1xyXG4gIG1scHBQcmVjZWRlbmNlUGF0dGVybj86IHN0cmluZyB8IG51bGw7XHJcbiAgY3JlYXRlVXNlck1vZGU/OiBib29sZWFuO1xyXG4gIGVuYWJsZU1vYmlsaXR5PzogYm9vbGVhbiB8IG51bGw7XHJcbiAgZGV2aWNlcz86IERldmljZUludGVyZmFjZVtdO1xyXG4gIGRldmljZVByb2ZpbGVzPzogRGV2aWNlSW50ZXJmYWNlW107XHJcbiAgbGluZXM6IExpbmVJbnRlcmZhY2VbXTtcclxuICBzaW5nbGVOdW1iZXJSZWFjaD86IHtcclxuICAgIGFzc29jaWF0ZWRMaW5lcz86IExpbmVJbnRlcmZhY2VbXSB8IG51bGw7XHJcbiAgICByZW1vdGVEZXN0aW5hdGlvbnM/OiB7XHJcbiAgICAgIGxpbmVBc3NvY2lhdGlvbnM/OiBMaW5lSW50ZXJmYWNlW10gfCBudWxsO1xyXG4gICAgfVtdIHwgbnVsbDtcclxuICAgIHJlbW90ZURlc3RpbmF0aW9uUHJvZmlsZU5hbWU/OiBzdHJpbmcgfCBudWxsO1xyXG4gIH0gfCBudWxsO1xyXG4gIHByaW1hcnlMaW5lUmVmZXJlbmNlPzogdW5rbm93biB8IG51bGw7XHJcbiAgdm9pY2VtYWlsPzogVm9pY2VtYWlsO1xyXG4gIGZlYXR1cmVzPzogRmVhdHVyZVtdO1xyXG4gIG1pZ3JhdGlvblZtVW5jaGFuZ2VkPzogYm9vbGVhbiB8IG51bGw7XHJcbiAgbWlncmF0aW9uSW1QVW5jaGFuZ2VkPzogYm9vbGVhbiB8IG51bGw7XHJcbiAgdWNTZXJ2aWNlUHJvZmlsZT86IHN0cmluZyB8IG51bGw7XHJcbiAgdGVsZWNvbU1hbmFnZXJSdWxlPzogYm9vbGVhbjtcclxuICB1c2VyVGVtcGxhdGVVZHBEZXZpY2VUeXBlc1J1bGVzPzogVXNlclRlbXBsYXRlVWRwRGV2aWNlVHlwZXNSdWxlW107XHJcbiAgbGRhcEludGVncmF0ZWQ/OiBib29sZWFuIHwgbnVsbDtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDYWxsSW5mb0Rpc3BsYXkge1xyXG4gIGNhbGxlck5hbWU/OiBzdHJpbmcgfCBudWxsO1xyXG4gIGNhbGxlck51bWJlcj86IHN0cmluZyB8IG51bGw7XHJcbiAgcmVkaXJlY3RlZE51bWJlcj86IHN0cmluZyB8IG51bGw7XHJcbiAgZGlhbGVkTnVtYmVyPzogc3RyaW5nIHwgbnVsbDtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBEaWRQYXR0ZXJuIHtcclxuICBjYWxsZWRQYXJ0eVRyYW5zZm9ybWF0aW9uTWFzaz86IHN0cmluZyB8IG51bGw7XHJcbiAgcGF0dGVybj86IHN0cmluZyB8IG51bGw7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUHJvdG9jb2xTcGVjaWZpY0RlZmF1bHRzIHtcclxuICBidXR0b25UZW1wbGF0ZXM6IHN0cmluZ1tdO1xyXG4gIHNlY3VyaXR5UHJvZmlsZXM6IHN0cmluZ1tdO1xyXG4gIHN1cHBvcnRlZEV4cGFuc2lvbk1vZHVsZXM6IHN0cmluZ1tdO1xyXG4gIHN1cHBvcnRzU29mdGtleVRlbXBsYXRlczogYm9vbGVhbjtcclxuICBzdXBwb3J0c0JMRjogYm9vbGVhbjtcclxuICBzdXBwb3J0c0VNOiBib29sZWFuO1xyXG4gIHN1cHBvcnRzTXVsdGlwbGVDYWxsRGlzcGxheTogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBEZXZpY2VEZWZhdWx0c0ludGVyZmFjZSB7XHJcbiAgZGV2aWNlVHlwZTogc3RyaW5nO1xyXG4gIGRldmljZU5hbWVSZWdleDogc3RyaW5nO1xyXG4gIGRldmljZU5hbWVFeHBsYWluZWQ6IHN0cmluZztcclxuICBuZXR3b3JrTG9jYWxlczogc3RyaW5nW107XHJcbiAgcHJvdG9jb2xQcm90b2NvbFNwZWNpZmljRGVmYXVsdDogUmVjb3JkPHN0cmluZywgUHJvdG9jb2xTcGVjaWZpY0RlZmF1bHRzPjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBEZXZpY2VJbnRlcmZhY2Uge1xyXG4gIGRldmljZVR5cGU6IHN0cmluZyB8IG51bGw7XHJcbiAgcHJvdG9jb2w6IHN0cmluZyB8IG51bGw7XHJcbiAgbmFtZTogc3RyaW5nIHwgbnVsbDtcclxuICBuZXdOYW1lOiBzdHJpbmcgfCBudWxsO1xyXG4gIHByZWZpeDogc3RyaW5nIHwgbnVsbDtcclxuICBkZXNjcmlwdGlvbj86IHN0cmluZyB8IG51bGw7XHJcbiAgYnV0dG9uVGVtcGxhdGU6IHN0cmluZyB8IG51bGw7XHJcbiAgbG9jYXRpb246IHN0cmluZyB8IG51bGw7XHJcbiAgZGV2aWNlUG9vbE5hbWU6IHN0cmluZyB8IG51bGw7XHJcbiAgc29mdGtleVRlbXBsYXRlOiBzdHJpbmcgfCBudWxsO1xyXG4gIGVudGl0eUNoYW5nZVR5cGU6IHN0cmluZyB8IG51bGw7XHJcbiAgY3JlYXRlRGV2aWNlTW9kZT86IGJvb2xlYW47XHJcbiAgY2FsbGluZ1NlYXJjaFNwYWNlTmFtZTogc3RyaW5nIHwgbnVsbDtcclxuICBjb21tb25QaG9uZUNvbmZpZ05hbWU6IHN0cmluZyB8IG51bGw7XHJcbiAgc2VjdXJpdHlQcm9maWxlOiBzdHJpbmcgfCBudWxsO1xyXG4gIHVzZXJMb2NhbGU6IHN0cmluZyB8IG51bGw7XHJcbiAgbmV0d29ya0xvY2FsZTogc3RyaW5nIHwgbnVsbDtcclxuICBlbmFibGVkRXh0ZW5zaW9uTW9iaWxpdHk6IGJvb2xlYW4gfCBudWxsO1xyXG4gIGZpcnN0RXhwYW5zaW9uTW9kdWxlOiBzdHJpbmcgfCBudWxsO1xyXG4gIHNlY29uZEV4cGFuc2lvbk1vZHVsZTogc3RyaW5nIHwgbnVsbDtcclxuICB3aXRoVWRwOiBib29sZWFuO1xyXG4gIGxpbmVBc3NvY2lhdGlvbnM6IExpbmVBc3NvY2lhdGlvbltdO1xyXG4gIHNpcFByb2ZpbGU6IHN0cmluZyB8IG51bGw7XHJcbiAgc3Vic2NyaWJlQ2FsbGluZ1NlYXJjaFNwYWNlTmFtZTogc3RyaW5nIHwgbnVsbDtcclxuICBleHRyYU9wdGlvbnM6IERldmljZUV4dHJhT3B0aW9ucztcclxuICB1c2VyRGV2aWNlVHlwZTogc3RyaW5nIHwgbnVsbDtcclxuICBidWlsdEluQnJpZGdlOiBzdHJpbmcgfCBudWxsO1xyXG4gIHNlcnZpY2VzOiBTZXJ2aWNlW107XHJcbiAgc3BlZWREaWFsczogU3BlZWREaWFsW107XHJcbiAgYnVzeUxhbXBGaWVsZHM6IEJ1c3lMYW1wRmllbGRbXTtcclxuICB3ZWJleFVVSUQ6IHN0cmluZyB8IG51bGw7XHJcbiAgcGtpZDogc3RyaW5nIHwgbnVsbDtcclxuICBkZXZpY2VEZWZhdWx0cz86IERldmljZURlZmF1bHRzSW50ZXJmYWNlIHwgbnVsbDtcclxuICBuYW1lVmFsaWRhdGlvblJlZ2V4Pzogc3RyaW5nIHwgbnVsbDtcclxuICBuYW1lVmFsaWRhdGlvbkNhcHRpb24/OiBzdHJpbmcgfCBudWxsO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIExpbmVBc3NvY2lhdGlvbiB7XHJcbiAgbGluZVBraWQ6IHN0cmluZyB8IG51bGw7XHJcbiAgaW5kZXg6IG51bWJlcjtcclxuICBwb3NpdGlvbjogc3RyaW5nIHwgbnVsbDtcclxuICBkaXJlY3RvcnlOdW1iZXI6IERpcmVjdG9yeU51bWJlcjtcclxuICBlMTY0TWFzazogc3RyaW5nIHwgbnVsbDtcclxuICB0ZXh0TGFiZWw6IHN0cmluZyB8IG51bGw7XHJcbiAgZGlzcGxheUxhYmVsOiBzdHJpbmcgfCBudWxsO1xyXG4gIGRpc3BsYXlMYWJlbEFzY2lpOiBzdHJpbmcgfCBudWxsO1xyXG4gIG1heE51bWJlck9mQ2FsbHM6IG51bWJlciB8IG51bGw7XHJcbiAgYnVzeVRyaWdnZXI6IG51bWJlciB8IG51bGw7XHJcbiAgcmVjb3JkaW5nT3B0aW9uOiBzdHJpbmcgfCBudWxsO1xyXG4gIHJlY29yZGluZ1Byb2ZpbGU6IHN0cmluZyB8IG51bGw7XHJcbiAgcmVjb3JkaW5nTWVkaWFTb3VyY2U6IHN0cmluZyB8IG51bGw7XHJcbiAgdmlzdWFsTVdJOiBib29sZWFuIHwgbnVsbDtcclxuICBhdWRpYmxlTVdJOiBib29sZWFuIHwgbnVsbDtcclxuICByaW5nU2V0dGluZ19pZGxlOiBzdHJpbmcgfCBudWxsO1xyXG4gIHJpbmdTZXR0aW5nX2FjdGl2ZTogc3RyaW5nIHwgbnVsbDtcclxuICBwaWNrdXBBQVNfaWRsZTogc3RyaW5nIHwgbnVsbDtcclxuICBwaWNrdXBBQVNfYWN0aXZlOiBzdHJpbmcgfCBudWxsO1xyXG4gIG1vbml0b3JDU1M6IHN0cmluZyB8IG51bGw7XHJcbiAgbG9nTWlzc2VkQ2FsbDogYm9vbGVhbiB8IHN0cmluZyB8IG51bGw7XHJcbiAgY2FsbEluZm9EaXNwbGF5OiBDYWxsSW5mb0Rpc3BsYXkgfCBzdHJpbmcgfCBudWxsO1xyXG4gIGxpbmVMb2NhbElkOiBzdHJpbmc7XHJcbiAgZGlkUGF0dGVybjogRGlkUGF0dGVybiB8IHN0cmluZyB8IG51bGw7XHJcbiAgZW50aXR5Q2hhbmdlVHlwZT86IHN0cmluZyB8IG51bGw7XHJcbiAgc2hhcmVkRGV2aWNlczogU2hhcmVkRGV2aWNlW107XHJcbiAgc2hhcmVkVXNlcnM6IFNoYXJlZFVzZXJbXTtcclxuICBvd25lclVzZXJJZDogc3RyaW5nW107XHJcbiAgYXNzb2NpYXRlZDogYm9vbGVhbjtcclxuICBwYXR0ZXJuVXNhZ2U6IHN0cmluZyB8IG51bGw7XHJcbiAgYWxlcnRpbmdOYW1lOiBzdHJpbmcgfCBudWxsO1xyXG4gIHBvcHVsYXRlV2l0aERpZDogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBEaXJlY3RvcnlOdW1iZXIge1xyXG4gIC8vIGRpcmVjdG9yeU51bWJlcjogc3RyaW5nIHwgbnVsbDtcclxuICAvLyByb3V0ZVBhcnRpdGlvbk5hbWU6IHN0cmluZyB8IG51bGw7XHJcbiAgLy8gcGtpZDogc3RyaW5nIHwgbnVsbDtcclxuICAvLyBkblR5cGU6IHN0cmluZyB8IG51bGw7XHJcbiAgLy8gc3ViVHlwZTogc3RyaW5nIHwgbnVsbDtcclxuXHJcbiAgZGlyZWN0b3J5TnVtYmVyOiBzdHJpbmc7XHJcbiAgdGVtcGxhdGVEaXJlY3RvcnlOdW1iZXI/OiBzdHJpbmc7XHJcbiAgcm91dGVQYXJ0aXRpb25OYW1lOiBzdHJpbmc7XHJcbiAgcGtpZD86IHN0cmluZyB8IG51bGw7XHJcbiAgZG5UeXBlPzogc3RyaW5nIHwgbnVsbDtcclxuICBzdWJUeXBlPzogc3RyaW5nIHwgbnVsbDtcclxuICBkaXNwbGF5VmFsdWU/OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRGV2aWNlRXh0cmFPcHRpb25zIHtcclxuICBtZWRpYVJlc291cmNlR3JvdXBMaXN0OiBzdHJpbmcgfCBudWxsO1xyXG4gIHVzZXJIb2xkTU9IQXVkaW9Tb3VyY2VJZDogc3RyaW5nIHwgbnVsbDtcclxuICB1c2VySG9sZE1PSEF1ZGlvU291cmNlTmFtZTogc3RyaW5nIHwgbnVsbDtcclxuICBuZXR3b3JrTU9IQXVkaW9Tb3VyY2VJZDogc3RyaW5nIHwgbnVsbDtcclxuICBuZXR3b3JrTU9IQXVkaW9Tb3VyY2VOYW1lOiBzdHJpbmcgfCBudWxsO1xyXG4gIGFhckNzczogc3RyaW5nIHwgbnVsbDtcclxuICBhYXJHcm91cDogc3RyaW5nIHwgbnVsbDtcclxuICBwcml2YWN5OiBzdHJpbmcgfCBudWxsO1xyXG4gIGRldmljZU1vYmlsaXR5TW9kZTogc3RyaW5nIHwgbnVsbDtcclxuICBtb2JpbGl0eVVzZXJJZDogc3RyaW5nIHwgbnVsbDtcclxuICBwaG9uZVBlcnNvbmFsaXphdGlvbjogc3RyaW5nIHwgbnVsbDtcclxuICBzZXJ2aWNlc1Byb3Zpc2lvbmluZzogc3RyaW5nIHwgbnVsbDtcclxuICBwaG9uZUxvYWROYW1lOiBzdHJpbmcgfCBudWxsO1xyXG4gIHBob25lSWRsZUJMRkFsZXJ0U2V0dGluZzogc3RyaW5nIHwgbnVsbDtcclxuICBwaG9uZUJ1c3lCTEZBbGVydFNldHRpbmc6IHN0cmluZyB8IG51bGw7XHJcbiAgdXNlVHJ1c3RlZFJlbGF5UG9pbnQ6IGJvb2xlYW4gfCBudWxsO1xyXG4gIGFsd2F5c1VzZVByaW1lTGluZTogYm9vbGVhbiB8IG51bGw7XHJcbiAgYWx3YXlzVXNlUHJpbWVMaW5lRm9yVm9pY2VNZXNzYWdlOiBib29sZWFuIHwgbnVsbDtcclxuICBnZW9sb2NhdGlvbjogc3RyaW5nIHwgbnVsbDtcclxuICBpZ25vcmVQcmVzZW50YXRpb25JbmRpY2F0b3JzOiBib29sZWFuIHwgbnVsbDtcclxuICBsb2dnZWRJbnRvSHVudEdyb3VwOiBib29sZWFuIHwgbnVsbDtcclxuICBlbmFibGVkRXh0ZW5zaW9uTW9iaWxpdHk6IGJvb2xlYW4gfCBudWxsO1xyXG4gIHJlbW90ZURldmljZTogc3RyaW5nIHwgbnVsbDtcclxuICBwcm90ZWN0ZWREZXZpY2U6IGJvb2xlYW4gfCBudWxsO1xyXG4gIGhvdGxpbmVEZXZpY2U6IGJvb2xlYW47XHJcbiAgY29tbW9uRGV2aWNlQ29uZmlnTmFtZTogc3RyaW5nIHwgbnVsbDtcclxuICB1c2VEZXZpY2VQb29sQ2dwbkluZ3Jlc3NETjogYm9vbGVhbiB8IG51bGw7XHJcbiAgY2dwbkluZ3Jlc3NETjogc3RyaW5nIHwgbnVsbDtcclxuICB1c2VEZXZpY2VQb29sQ2dwblRyYW5zZm9ybUNzczogYm9vbGVhbiB8IG51bGw7XHJcbiAgY2dwblRyYW5zZm9ybWF0aW9uQ3NzOiBzdHJpbmcgfCBudWxsO1xyXG4gIHBhY2tldENhcHR1cmVNb2RlOiBzdHJpbmcgfCBudWxsO1xyXG4gIHBhY2tldENhcHR1cmVEdXJhdGlvbjogbnVtYmVyIHwgbnVsbDtcclxuICBibGZQcmVzZW5jZUdyb3VwOiBzdHJpbmcgfCBudWxsO1xyXG4gIHNpcERpYWxSdWxlczogc3RyaW5nIHwgbnVsbDtcclxuICBtdHBQcmVmZXJyZWRPcmlnaW5hdGluZ0NvZGVjOiBzdHJpbmcgfCBudWxsO1xyXG4gIHJlcm91dGVDc3M6IHN0cmluZyB8IG51bGw7XHJcbiAgc3Vic2NyaWJlQ3NzOiBzdHJpbmcgfCBudWxsO1xyXG4gIGRpZ2VzdFVzZXI6IHN0cmluZyB8IG51bGw7XHJcbiAgbXRwUmVxdWlyZWQ6IGJvb2xlYW4gfCBudWxsO1xyXG4gIHVuYXR0ZW5kZWRQb3J0OiBib29sZWFuIHwgbnVsbDtcclxuICByZXF1aXJlRHRtZlJlY2VwdGlvbjogYm9vbGVhbiB8IG51bGw7XHJcbiAgaW5mb3JtYXRpb25Vcmw6IHN0cmluZyB8IG51bGw7XHJcbiAgZGlyZWN0b3J5VXJsOiBzdHJpbmcgfCBudWxsO1xyXG4gIG1lc3NhZ2VzVXJsOiBzdHJpbmcgfCBudWxsO1xyXG4gIHNlcnZpY2VzVXJsOiBzdHJpbmcgfCBudWxsO1xyXG4gIGF1dGhlbnRpY2F0aW9uVXJsOiBzdHJpbmcgfCBudWxsO1xyXG4gIHByb3h5U2VydmVyVXJsOiBzdHJpbmcgfCBudWxsO1xyXG4gIGlkbGVVcmw6IHN0cmluZyB8IG51bGw7XHJcbiAgaWRsZVRpbWVvdXQ6IG51bWJlciB8IG51bGw7XHJcbiAgc2VjdXJlQXV0aGVudGljYXRpb25Vcmw6IHN0cmluZyB8IG51bGw7XHJcbiAgc2VjdXJlRGlyZWN0b3J5VXJsOiBzdHJpbmcgfCBudWxsO1xyXG4gIHNlY3VyZUlkbGVVcmw6IHN0cmluZyB8IG51bGw7XHJcbiAgc2VjdXJlSW5mb3JtYXRpb25Vcmw6IHN0cmluZyB8IG51bGw7XHJcbiAgc2VjdXJlTWVzc2FnZVVybDogc3RyaW5nIHwgbnVsbDtcclxuICBzZWN1cmVTZXJ2aWNlc1VybDogc3RyaW5nIHwgbnVsbDtcclxuICBtbHBwRG9tYWluOiBzdHJpbmcgfCBudWxsO1xyXG4gIG1scHBJbmRpY2F0aW9uOiBzdHJpbmcgfCBudWxsO1xyXG4gIG1scHBQcmVlbXB0aW9uOiBzdHJpbmcgfCBudWxsO1xyXG4gIGNvbmZpZGVudGlhbEFjY2Vzc01vZGU6IHN0cmluZyB8IG51bGw7XHJcbiAgY29uZmlkZW50aWFsQWNjZXNzTGV2ZWw6IHN0cmluZyB8IG51bGw7XHJcbiAgY29uZmlkZW50aWFsQWNjZXNzTGV2ZWxOYW1lOiBzdHJpbmcgfCBudWxsO1xyXG4gIGRvTm90RGlzdHVyYjogYm9vbGVhbiB8IG51bGw7XHJcbiAgZG5kT3B0aW9uOiBzdHJpbmcgfCBudWxsO1xyXG4gIGRuZEluY29taW5nQ2FsbEFsZXJ0OiBzdHJpbmcgfCBudWxsO1xyXG4gIGRpc2FibGVTcGVha2VycGhvbmU6IGJvb2xlYW4gfCBudWxsO1xyXG4gIGRpc2FibGVTcGVha2VycGhvbmVBbmRIZWFkc2V0OiBib29sZWFuIHwgbnVsbDtcclxuICBmb3J3YXJkaW5nRGVsYXk6IG51bWJlciB8IG51bGw7XHJcbiAgcGNQb3J0OiBib29sZWFuIHwgbnVsbDtcclxuICBzZXR0aW5nc0FjY2Vzczogc3RyaW5nIHwgbnVsbDtcclxuICBncmF0dWl0b3VzQVJQOiBib29sZWFuIHwgbnVsbDtcclxuICBwY1ZvaWNlVmxhbkFjY2Vzczogc3RyaW5nIHwgbnVsbDtcclxuICB2aWRlb0NhcGFiaWxpdGllczogc3RyaW5nIHwgbnVsbDtcclxuICB3ZWJBY2Nlc3M6IGJvb2xlYW4gfCBudWxsO1xyXG4gIGRheXNEaXNwbGF5Tm90QWN0aXZlOiBudW1iZXIgfCBudWxsO1xyXG4gIGRpc3BsYXlPblRpbWU6IHN0cmluZyB8IG51bGw7XHJcbiAgZGlzcGxheU9uRHVyYXRpb246IG51bWJlciB8IG51bGw7XHJcbiAgZGlzcGxheUlkbGVUaW1lb3V0OiBudW1iZXIgfCBudWxsO1xyXG4gIHdpcmVsZXNzSGVhZHNldEhvb2tzd2l0Y2hDb250cm9sOiBib29sZWFuIHwgbnVsbDtcclxuICBtaW5SaW5nVm9sdW1lOiBudW1iZXIgfCBudWxsO1xyXG4gIHNob3dBbGxDYWxsc09uUEw6IGJvb2xlYW4gfCBudWxsO1xyXG4gIGxpbmVNb2RlOiBzdHJpbmcgfCBudWxsO1xyXG4gIGxhdGVudENhcGFiaWxpdHlSZWdpc3RyYXRpb246IGJvb2xlYW4gfCBudWxsO1xyXG4gIGFjdGlvbmFibGVBbGVydDogYm9vbGVhbiB8IG51bGw7XHJcbiAgcmV2ZXJ0VG9BbGxDYWxsczogYm9vbGVhbiB8IG51bGw7XHJcbiAgd2lkZWJhbmRIZWFkc2V0VUlDb250cm9sOiBib29sZWFuIHwgbnVsbDtcclxuICB3aWRlYmFuZEhlYWRzZXQ6IGJvb2xlYW4gfCBudWxsO1xyXG4gIGF1dGhlbnRpY2F0aW9uODAyOiBib29sZWFuIHwgbnVsbDtcclxuICBzcGFuVG9QY1BvcnQ6IGJvb2xlYW4gfCBudWxsO1xyXG4gIGhlYWRzZXRNb25pdG9yOiBib29sZWFuIHwgbnVsbDtcclxuICBoZWFkc2V0UmVjb3JkaW5nOiBib29sZWFuIHwgbnVsbDtcclxuICB1cGRhdGVkRmllbGRzOiBzdHJpbmdbXTtcclxuICBlbmFibGVDZHBTd1BvcnQ6IGJvb2xlYW4gfCBudWxsO1xyXG4gIGVuYWJsZUNkcFBjUG9ydDogYm9vbGVhbiB8IG51bGw7XHJcbiAgZW5hYmxlTGxkcFBjUG9ydDogYm9vbGVhbiB8IG51bGw7XHJcbiAgZGVmYXVsdFdhbGxwYXBlckZpbGU6IHN0cmluZyB8IG51bGw7XHJcbiAgYW5hbG9nR2F0ZXdheVBvcnRJbmZvcm1hdGlvbjogc3RyaW5nIHwgbnVsbDtcclxuICBsb2FkU2VydmVyOiBzdHJpbmcgfCBudWxsO1xyXG4gIHBlZXJGaXJtd2FyZVNoYXJpbmc6IHN0cmluZyB8IG51bGw7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTGluZUludGVyZmFjZSB7XHJcbiAgZGlyZWN0b3J5TnVtYmVyOiBEaXJlY3RvcnlOdW1iZXI7XHJcbiAgY2FsbGluZ1NlYXJjaFNwYWNlOiBzdHJpbmcgfCBudWxsO1xyXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmcgfCBudWxsO1xyXG4gIGxvY2FsSWQ6IHN0cmluZztcclxuICBlbnRpdHlDaGFuZ2VUeXBlOiBzdHJpbmcgfCBudWxsO1xyXG4gIGFsZXJ0aW5nTmFtZTogc3RyaW5nIHwgbnVsbDtcclxuICBhc2NpaUFsZXJ0aW5nTmFtZTogc3RyaW5nIHwgbnVsbDtcclxuICBjYWxsRm9yd2FyZEFsbDogQ2FsbEZvcndhcmQ7XHJcbiAgY2FsbEZvcndhcmRBbGxTZWNvbmRhcnlDU1M6IENhbGxGb3J3YXJkO1xyXG4gIGNhbGxGb3J3YXJkQnVzeUludGVybmFsOiBDYWxsRm9yd2FyZDtcclxuICBjYWxsRm9yd2FyZEJ1c3lFeHRlcm5hbDogQ2FsbEZvcndhcmQ7XHJcbiAgY2FsbEZvcndhcmROb0Fuc3dlckludGVybmFsOiBDYWxsRm9yd2FyZDtcclxuICBjYWxsRm9yd2FyZE5vQW5zd2VyRXh0ZXJuYWw6IENhbGxGb3J3YXJkO1xyXG4gIGNhbGxGb3J3YXJkTm9Db3ZlcmFnZUludGVybmFsOiBDYWxsRm9yd2FyZDtcclxuICBjYWxsRm9yd2FyZE5vQ292ZXJhZ2VFeHRlcm5hbDogQ2FsbEZvcndhcmQ7XHJcbiAgY2FsbEZvcndhcmRPbkNUSUZhaWx1cmU6IENhbGxGb3J3YXJkO1xyXG4gIGNhbGxGb3J3YXJkVW5yZWdpc3RlcmVkSW50ZXJuYWw6IENhbGxGb3J3YXJkO1xyXG4gIGNhbGxGb3J3YXJkVW5yZWdpc3RlcmVkRXh0ZXJuYWw6IENhbGxGb3J3YXJkO1xyXG4gIHZvaWNlTWFpbFByb2ZpbGU6IHN0cmluZyB8IG51bGw7XHJcbiAgbm9BbnN3ZXJSaW5nRHVyYXRpb246IG51bWJlciB8IG51bGw7XHJcbiAgYXV0b0Fuc3dlcjogc3RyaW5nIHwgbnVsbDtcclxuICBjYWxsUGlja3VwR3JvdXA6IHN0cmluZyB8IG51bGw7XHJcbiAgYWFyU2V0dGluZ3M6IEFhclNldHRpbmdzO1xyXG4gIHBhcmtNb25pdG9yaW5nSW50ZXJuYWw6IHN0cmluZyB8IG51bGw7XHJcbiAgcGFya01vbml0b3JpbmdFeHRlcm5hbDogc3RyaW5nIHwgbnVsbDtcclxuICB1cmdlbnRQcmlvcml0eTogc3RyaW5nIHwgbnVsbDtcclxuICBibGZQcmVzZW5jZUdyb3VwOiBzdHJpbmcgfCBudWxsO1xyXG4gIHVzZXJIb2xkTU9IQXVkaW9Tb3VyY2VJZDogc3RyaW5nIHwgbnVsbDtcclxuICB1c2VySG9sZE1PSEF1ZGlvU291cmNlTmFtZTogc3RyaW5nIHwgbnVsbDtcclxuICBuZXR3b3JrTU9IQXVkaW9Tb3VyY2VJZDogc3RyaW5nIHwgbnVsbDtcclxuICBuZXR3b3JrTU9IQXVkaW9Tb3VyY2VOYW1lOiBzdHJpbmcgfCBudWxsO1xyXG4gIHJlamVjdEFub255bW91c0NhbGw6IGJvb2xlYW4gfCBudWxsO1xyXG4gIGVudGVycHJpc2VBbHROdW06IHN0cmluZyB8IG51bGw7XHJcbiAgZTE2NEFsdE51bTogc3RyaW5nIHwgbnVsbDtcclxuICBkaXJlY3RvcnlVcmlzOiBzdHJpbmdbXTtcclxuICBjYWxsRm9yd2FyZEFsdGVybmF0ZVBhcnR5OiBDYWxsRm9yd2FyZDtcclxuICBtbHBwTm9BbnN3ZXJSaW5nRHVyYXRpb246IG51bWJlciB8IG51bGw7XHJcbiAgY29uZmlkZW50aWFsQWNjZXNzTW9kZTogc3RyaW5nIHwgbnVsbDtcclxuICBjb25maWRlbnRpYWxBY2Nlc3NMZXZlbDogc3RyaW5nIHwgbnVsbDtcclxuICBjb25maWRlbnRpYWxBY2Nlc3NMZXZlbE5hbWU6IHN0cmluZyB8IG51bGw7XHJcbiAgY2FsbENvbnRyb2xBZ2VudFByb2ZpbGU6IHN0cmluZyB8IG51bGw7XHJcbiAgaG9sZFJldmVyc2lvblJpbmdEdXJhdGlvbjogbnVtYmVyIHwgbnVsbDtcclxuICBob2xkUmV2ZXJzaW9uTm90aWZpY2F0aW9uSW50ZXJ2YWw6IG51bWJlciB8IG51bGw7XHJcbiAgcGFydHlFbnRyYW5jZVRvbmU6IHN0cmluZyB8IG51bGw7XHJcbiAgcHN0bkZhaWxvdmVyOiBzdHJpbmcgfCBudWxsO1xyXG4gIG5ld1RvVXNlcjogYm9vbGVhbiB8IG51bGw7XHJcbiAgZGlkUGF0dGVybnM6IHN0cmluZ1tdO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENhbGxGb3J3YXJkIHtcclxuICBmb3J3YXJkVG9Wb2ljZU1haWw6IGJvb2xlYW4gfCBudWxsO1xyXG4gIGRlc3RpbmF0aW9uOiBzdHJpbmcgfCBudWxsO1xyXG4gIGNhbGxpbmdTZWFyY2hTcGFjZTogc3RyaW5nIHwgbnVsbDtcclxuICBkdXJhdGlvbjogbnVtYmVyIHwgbnVsbDtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBYXJTZXR0aW5ncyB7XHJcbiAgYWFyRGVzdGluYXRpb25NYXNrOiBzdHJpbmcgfCBudWxsO1xyXG4gIGFhckdyb3VwOiBzdHJpbmcgfCBudWxsO1xyXG4gIGFhclZvaWNlTWFpbEVuYWJsZWQ6IGJvb2xlYW4gfCBudWxsO1xyXG4gIGFhcktlZXBDYWxsSGlzdG9yeTogYm9vbGVhbiB8IG51bGw7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRGV2aWNlUHJvZmlsZSB7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRmVhdHVyZSB7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVXNlclRlbXBsYXRlVWRwRGV2aWNlVHlwZXNSdWxlIHtcclxuICBpZDogbnVtYmVyO1xyXG4gIG9yaWdpbmFsRGV2aWNlVHlwZTogc3RyaW5nO1xyXG4gIHByb3RvY29sOiBzdHJpbmc7XHJcbiAgbmV3RGV2aWNlVHlwZTogc3RyaW5nO1xyXG4gIG9yaWdpbk5ld0RldmljZVR5cGU6IHN0cmluZztcclxuICBlbnRpdHlDaGFuZ2VUeXBlOiBzdHJpbmc7XHJcbiAgbmV3UHJvdG9jb2w6IHN0cmluZztcclxuICBpc1RlbXBsYXRlUnVsZTogYm9vbGVhbjtcclxuICBsb2NhbElkOiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU2hhcmVkRGV2aWNlIHtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTaGFyZWRVc2VyIHtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTZXJ2aWNlIHtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTcGVlZERpYWwge1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEJ1c3lMYW1wRmllbGQge1xyXG59XHJcblxyXG5leHBvcnQgZW51bSBEblJhbmdlVHlwZSB7XHJcbiAgZXh0ZW5zaW9uID0gJ0VYVEVOU0lPTicsXHJcbiAgY3BnID0gJ0NQRycsXHJcbiAgY2FsbHBhcmsgPSAnQ0FMTFBBUksnLFxyXG4gIGh1bnRncm91cCA9ICdIVU5UR1JPVVAnLFxyXG4gIG1lZXRtZSA9ICdNRUVUTUUnLFxyXG4gIGRpZCA9ICdESUQnXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRG5SYW5nZUludGVyZmFjZSB7XHJcbiAgZnJvbTogc3RyaW5nO1xyXG4gIHRvOiBzdHJpbmc7XHJcbiAgcHJlZml4OiBzdHJpbmc7XHJcbiAgcm91dGVQYXJ0aXRpb246IHN0cmluZztcclxuICBkblR5cGU6IERuUmFuZ2VUeXBlO1xyXG4gIHRlbXBJZHg6IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBdmFpbGFibGVQaG9uZU51bWJlclJhbmdlSW50ZXJmYWNlIHtcclxuICBwaG9uZU51bWJlclJhbmdlOiBEblJhbmdlSW50ZXJmYWNlO1xyXG4gIHVzZWROdW1iZXJzOiBzdHJpbmdbXTtcclxuICByZXF1ZXN0ZWROdW1iZXI6IHN0cmluZztcclxuICB1blVzZWROdW1iZXJzV2l0aERpZHM6IGFueVtdO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEF2YWlsYWJsZVJhbmdlSW50ZXJmYWNlIHtcclxuICBhdmFpbGFibGVOdW1iZXJMaXN0OiBBdmFpbGFibGVQaG9uZU51bWJlclJhbmdlSW50ZXJmYWNlW107XHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFVzZXJWaWV3VHlwZSB7XHJcbiAgZGV0YWlscyA9IDAsXHJcbiAgZGV2aWNlcyA9IDEsXHJcbiAgbGluZXMgPSAyLFxyXG4gIHNuciA9IDMsXHJcbiAgZmVhdHVyZXMgPSA0LFxyXG4gIG92ZXJ2aWV3ID0gNVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIExpc3RVc2VySW50ZXJmYWNlIHtcclxuICB1c2VyaWQ6IHN0cmluZztcclxuICBmaXJzdE5hbWU/OiBzdHJpbmc7XHJcbiAgbGFzdE5hbWU/OiBzdHJpbmc7XHJcbiAgZW1haWw/OiBzdHJpbmc7XHJcbiAgdGVsZXBob25lTnVtYmVyPzogc3RyaW5nO1xyXG4gIHZpZXdNb2RlPzogVXNlclZpZXdUeXBlO1xyXG4gIGRldmljZXM6IERldmljZUludGVyZmFjZVtdO1xyXG4gIGRldmljZVByb2ZpbGVzOiBEZXZpY2VJbnRlcmZhY2VbXTtcclxuICBsaW5lcz86IExpbmVJbnRlcmZhY2VbXTtcclxuICBzaXRlSWQ/OiBudW1iZXI7XHJcbiAgc2l0ZU5hbWU/OiBzdHJpbmc7XHJcbiAgY2hlY2tlZD86IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTGRhcFVzZXJzVGFibGVSZXNwb25zZSB7XHJcbiAgdG90YWw6IG51bWJlcjtcclxuICBwYWdlRGF0YTogTGlzdFVzZXJJbnRlcmZhY2VbXTtcclxufVxyXG5cclxuLy8gZXhwb3J0IGNsYXNzIEV4dGVuc2lvbk1vYmlsaXR5IGltcGxlbWVudHMgRXh0ZW5zaW9uTW9iaWxpdHlJbnRlcmZhY2Uge1xyXG4vLyAgIGRldmljZVR5cGU6IHN0cmluZyA9ICcnO1xyXG4vLyAgIGRldmljZVByb2ZpbGVOYW1lOiBzdHJpbmcgPSAnJztcclxuLy8gICBidXR0b25UZW1wbGF0ZTogc3RyaW5nID0gJyc7XHJcbi8vICAgc2VydmljZXM6IHN0cmluZ1tdID0gW107XHJcbi8vICAgcHJvdG9jb2w6IHN0cmluZyA9ICcnO1xyXG4vLyAgIHVzZXJMb2NhbGU6IHN0cmluZyA9ICcnO1xyXG4vLyAgIGxpbmVBc3NvY2lhdGlvbnM6IExpbmVBc3NvY2lhdGlvbltdID0gW107XHJcbi8vICAgc3BlZWREaWFsczogU3BlZWREaWFsW10gPSBbXTtcclxuXHJcbi8vICAgY29uc3RydWN0b3IoZXh0ZW5zaW9uTW9iaWxpdHk6IEV4dGVuc2lvbk1vYmlsaXR5SW50ZXJmYWNlKSB7XHJcbi8vICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGV4dGVuc2lvbk1vYmlsaXR5IHx8IHt9KTtcclxuLy8gICB9XHJcblxyXG4vLyAgIGdldFNhdmFibGVEYXRhKCkge1xyXG4vLyAgICAgcmV0dXJuIGdldFNhdmFibGVEYXRhKHRoaXMpO1xyXG4vLyAgIH1cclxuXHJcbi8vIH1cclxuLy8gZXhwb3J0IGNsYXNzIEV4dGVuc2lvbk1vYmlsaXR5SW50ZXJmYWNlIHtcclxuLy8gICBkZXZpY2VUeXBlPzogc3RyaW5nO1xyXG4vLyAgIGRldmljZVByb2ZpbGVOYW1lPzogc3RyaW5nO1xyXG4vLyAgIGJ1dHRvblRlbXBsYXRlPzogc3RyaW5nO1xyXG4vLyAgIHNlcnZpY2VzPzogc3RyaW5nW107XHJcbi8vICAgcHJvdG9jb2w/OiBzdHJpbmc7XHJcbi8vICAgdXNlckxvY2FsZT86IHN0cmluZztcclxuLy8gICBsaW5lQXNzb2NpYXRpb25zOiBMaW5lQXNzb2NpYXRpb25bXSA9IFtdO1xyXG4vLyAgIHNwZWVkRGlhbHM6IFNwZWVkRGlhbFtdID0gW107XHJcblxyXG4vLyAgIGNvbnN0cnVjdG9yKGV4dGVuc2lvbk1vYmlsaXR5OiBFeHRlbnNpb25Nb2JpbGl0eUludGVyZmFjZSkge1xyXG4vLyAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBleHRlbnNpb25Nb2JpbGl0eSB8fCB7fSk7XHJcbi8vICAgICAgIHRoaXMuc3BlZWREaWFscy5tYXAoZGlhbCA9PiBuZXcgU3BlZWREaWFsKGRpYWwsIGZhbHNlKSk7XHJcbi8vICAgfVxyXG5cclxuLy8gICBnZXRTYXZhYmxlRGF0YSgpIHtcclxuLy8gICAgIHJldHVybiBnZXRTYXZhYmxlRGF0YSh0aGlzKTtcclxuLy8gICB9XHJcblxyXG4vLyB9XHJcblxyXG4vLyBleHBvcnQgaW50ZXJmYWNlIFNpbmdsZU51bWJlclJlYWNoSW50ZXJmYWNlIHtcclxuLy8gICByZW1vdGVEZXN0aW5hdGlvblByb2ZpbGVOYW1lOiBzdHJpbmc7XHJcbi8vICAgcmVtb3RlRGVzdGluYXRpb25zPzogUmVtb3RlRGVzdGluYXRpb25JbnRlcmZhY2VbXTtcclxuLy8gICBkZXZpY2VQb29sPzogc3RyaW5nO1xyXG4vLyAgIGNzcz86IHN0cmluZztcclxuLy8gICByZXJvdXRlQ3NzPzogc3RyaW5nO1xyXG4vLyB9XHJcblxyXG4vLyBleHBvcnQgaW50ZXJmYWNlIFJlbW90ZURlc3RpbmF0aW9uSW50ZXJmYWNlIHtcclxuLy8gICBuYW1lOiBzdHJpbmc7XHJcbi8vICAgZGVzdGluYXRpb246IHN0cmluZztcclxuLy8gICBhbnN3ZXJUb29Tb29uVGltZXI6IG51bWJlcjtcclxuLy8gICBhbnN3ZXJUb29MYXRlVGltZXI6IG51bWJlcjtcclxuLy8gICBkZWxheUJlZm9yZVJpbmdpbmdDZWxsOiBudW1iZXI7XHJcbi8vICAgbGluZUFzc29jaWF0aW9uczogTGluZURpcmVjdG9yeUludGVyZmFjZVtdO1xyXG4vLyAgIHNuclZvaWNlbWFpbFBvbGljeT86IHN0cmluZztcclxuLy8gICBlbmFibGVNb3ZlVG9Nb2JpbGU/OiBib29sZWFuO1xyXG4vLyAgIHJpbmdTY2hlZHVsZT86IFJpbmdTY2hlZHVsZUludGVyZmFjZTtcclxuLy8gICB0b2RFcnJvcj86IGJvb2xlYW47XHJcbi8vICAgZW5hYmxlU2luZ2xlTnVtYmVyUmVhY2g/OiBib29sZWFuO1xyXG4vLyB9XHJcblxyXG4vLyBleHBvcnQgaW50ZXJmYWNlIFNpbmdsZU51bWJlclJlYWNoSW50ZXJmYWNlIHtcclxuLy8gICByZW1vdGVEZXN0aW5hdGlvblByb2ZpbGVOYW1lOiBzdHJpbmc7XHJcbi8vICAgcmVtb3RlRGVzdGluYXRpb25zPzogUmVtb3RlRGVzdGluYXRpb25JbnRlcmZhY2VbXTtcclxuLy8gICBkZXZpY2VQb29sPzogc3RyaW5nO1xyXG4vLyAgIGNzcz86IHN0cmluZztcclxuLy8gICByZXJvdXRlQ3NzPzogc3RyaW5nO1xyXG4vLyB9XHJcblxyXG5cclxuZXhwb3J0IGNsYXNzIFZvaWNlbWFpbCBpbXBsZW1lbnRzIFBhcnRpYWw8Vm9pY2VtYWlsSW50ZXJmYWNlPiB7XHJcbiAgY2FsbEhhbmRsZXJPYmplY3RJZD86IHN0cmluZztcclxuICBleHRlbnNpb246IHN0cmluZyA9ICcnO1xyXG4gIHZtVXNlclRlbXBsYXRlOiBzdHJpbmcgPSAnJztcclxuICBlbWFpbEFkZHJlc3M6IHN0cmluZyA9ICcnO1xyXG4gIHZtUGFzc3dvcmQ/OiBhbnk7XHJcbiAgdm1NYWlsYm94PzogYW55O1xyXG4gIHZtVW5pZmllZE1lc3NhZ2luZ0FjY291bnQ/OiBhbnlbXTtcclxuICBub3RpZmljYXRpb25EZXZpY2VzPzogYW55W107XHJcbiAgYWx0ZXJuYXRlRXh0ZW5zaW9ucz86IGFueVtdO1xyXG4gIGxhbmd1YWdlPzogYW55O1xyXG4gIG1lc3NhZ2VBY3Rpb25zPzogYW55O1xyXG4gIGNhbGxlcklucHV0PzogYW55O1xyXG4gIHdlYkFwcFBhc3N3b3JkU2V0dGluZ3M/OiBhbnk7XHJcbiAgdm1QYXNzd29yZFNldHRpbmdzPzogYW55O1xyXG4gIGdyZWV0aW5nczogYW55W10gPSBbXTtcclxuICBwa2lkPzogc3RyaW5nO1xyXG4gIHBpbjogc3RyaW5nID0gJyc7XHJcbiAgLy8gbm9uLXNhdmFibGUgZGF0YVxyXG4gIGNoYW5nZUV4dGVuc2lvbkJ5TmV3TGluZTogbnVtYmVyID0gMDtcclxuXHJcbiAgY29uc3RydWN0b3Iodm0/OiBWb2ljZW1haWxJbnRlcmZhY2UpIHtcclxuICAgIGlmICh2bSAmJiB2bS5leHRlbnNpb24pIHtcclxuICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCB2bSk7XHJcbiAgICAgIGlmICh0aGlzLmV4dGVuc2lvbiAmJiB0aGlzLmV4dGVuc2lvbi5zdGFydHNXaXRoKCcrJykpIHtcclxuICAgICAgICB0aGlzLmV4dGVuc2lvbiA9ICdcXFxcJyArIHRoaXMuZXh0ZW5zaW9uO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLmV4dGVuc2lvbikge1xyXG4gICAgICAgIC8vIHRoaXMubm90aWZpY2F0aW9uRGV2aWNlcyA9IHRoaXMuaW5pdERldmljZXMoKTtcclxuICAgICAgICAvLyB0aGlzLmdyZWV0aW5ncyA9ICF0aGlzLmdyZWV0aW5ncyA/IFtdIDogdGhpcy5ncmVldGluZ3MubWFwKGdyZWV0aW5ncyA9PiBuZXcgR3JlZXRpbmdEZXRhaWwoZ3JlZXRpbmdzKSk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZXh0ZW5zaW9uID0gJyc7XHJcbiAgICAgIHRoaXMudm1Vc2VyVGVtcGxhdGUgPSAnJztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldFNhdmFibGVEYXRhKCkge1xyXG4gICAgY29uc3Qgbm9uU2F2YWJsZURhdGEgPSBbJ3ZtTWFpbGJveCcsICdub3RpZmljYXRpb25EZXZpY2VzJywgJ2NoYW5nZUV4dGVuc2lvbkJ5TmV3TGluZSddO1xyXG4gICAgcmV0dXJuIGdldFNhdmFibGVEYXRhKHRoaXMsIG5vblNhdmFibGVEYXRhKTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVm9pY2VtYWlsSW50ZXJmYWNlIHtcclxuICBjYWxsSGFuZGxlck9iamVjdElkPzogc3RyaW5nO1xyXG4gIGV4dGVuc2lvbjogc3RyaW5nO1xyXG4gIHZtVXNlclRlbXBsYXRlPzogc3RyaW5nO1xyXG4gIHZtUGFzc3dvcmQ/OiBhbnk7XHJcbiAgdm1NYWlsYm94PzogYW55O1xyXG4gIHZtVW5pZmllZE1lc3NhZ2luZ0FjY291bnQ/OiBhbnlbXTtcclxuICBub3RpZmljYXRpb25EZXZpY2VzPzogYW55W107XHJcbiAgYWx0ZXJuYXRlRXh0ZW5zaW9ucz86IGFueVtdO1xyXG4gIGxhbmd1YWdlPzogYW55O1xyXG4gIG1lc3NhZ2VBY3Rpb25zPzogYW55O1xyXG4gIHdlYkFwcFBhc3N3b3JkPzogYW55O1xyXG4gIHZtUGFzc3dvcmRTZXR0aW5ncz86IGFueTtcclxuICBwa2lkPzogc3RyaW5nO1xyXG59Il19
@@ -30,9 +30,9 @@ export class NotificationsComponent {
30
30
  }
31
31
  }
32
32
  NotificationsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NotificationsComponent, deps: [{ token: i1.NotificationService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
33
- NotificationsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: NotificationsComponent, selector: "app-notification", ngImport: i0, template: "\n\n<div class=\"notification-block\" role=\"alert\" aria-live=\"assertive\">\n <div class=\"notification\"\n *ngFor=\"let notification of list\"\n [ngClass]=\"{'error': notification.isError(), 'success': notification.isSuccess()}\">\n\n <div class=\"flex-box\">\n <div class=\"notification-icons-block\">\n <i *ngIf=\"notification.isError()\" class=\"fa fa-exclamation-triangle\"></i>\n <i *ngIf=\"notification.isWarning()\" class=\"fa fa-hand-paper-o\"></i>\n <i *ngIf=\"notification.isSuccess()\" class=\"fa fa-check\"></i>\n <i *ngIf=\"notification.isInfo()\" class=\"fa fa-info-circle\"></i>\n </div>\n <div *ngIf=\"!isReadMore\" class=\"message-block\">\n {{notification.message | truncate:[93]}}\n </div>\n <div *ngIf=\"isReadMore\" class=\"message-block\">\n {{notification.message}}\n </div>\n </div>\n <div class=\"read-more-error link clickable\" *ngIf=\"notification.message && notification.message.length > 93\"\n (click)=\"readMore()\">{{(isReadMore ? 'Collapse' : 'Read More')}}</div>\n <button\n class=\"close\"\n mat-icon-button\n (click)=\"removeNotification(notification)\">\n <img class=\"notification-icon-close\" src=\"assets/icons/close_icon_modal.svg\" alt=\"\">\n </button>\n </div>\n</div>\n\n", styles: ["@import\"https://fonts.googleapis.com/css?family=Poppins:400,100,200,300,500,600,800,700,900\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400&display=swap\";.notification-block{right:10px;top:80px;position:absolute;z-index:100}.notification-block .read-more-error{margin:10px 13px 3px 0;text-align:right}.notification-block .notification{padding:15px 0 10px 10px;margin-bottom:18px;color:#333;border-radius:3px;border-top:1.5px solid #e5e1cd;background:#fcf8e3;box-shadow:0 8px 12px #091e4226,0 0 1px #091e424f;width:368px;position:relative}.notification-block .notification .message-block{font-size:14px;font-family:Poppins,Poppins,sans-serif!important;word-break:break-word;width:270px}.notification-block .notification .notification-icon-close{height:24px}.notification-block .notification.error{background:#FFE9E9;border-top:1.5px solid #E16D6D}.notification-block .notification.success{background:#e3f4dc;border-top:1.5px solid #b3d692}.notification-block .notification .fa-exclamation-triangle{color:#e16d6d!important}.notification-block .notification .fa-check{color:#a0c37f!important}.notification-block .notification .fa-info-circle,.notification-block .notification .fa-hand-paper-o{color:#bdb89e!important}.notification-block .notification .fa{font-size:20px}.notification-block .notification .close{position:absolute;top:2px;right:-5px}.notification-block .notification .close .fa{font-size:14px}.notification-block .notification .fa{margin:0;color:inherit}@media screen and (max-width: 600px){.notification-block{width:50%;min-width:150px}}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "pipe", type: i4.TruncatePipe, name: "truncate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
33
+ NotificationsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: NotificationsComponent, selector: "app-notification", ngImport: i0, template: "\r\n\r\n<div class=\"notification-block\" role=\"alert\" aria-live=\"assertive\">\r\n <div class=\"notification\"\r\n *ngFor=\"let notification of list\"\r\n [ngClass]=\"{'error': notification.isError(), 'success': notification.isSuccess()}\">\r\n\r\n <div class=\"flex-box\">\r\n <div class=\"notification-icons-block\">\r\n <i *ngIf=\"notification.isError()\" class=\"fa fa-exclamation-triangle\"></i>\r\n <i *ngIf=\"notification.isWarning()\" class=\"fa fa-hand-paper-o\"></i>\r\n <i *ngIf=\"notification.isSuccess()\" class=\"fa fa-check\"></i>\r\n <i *ngIf=\"notification.isInfo()\" class=\"fa fa-info-circle\"></i>\r\n </div>\r\n <div *ngIf=\"!isReadMore\" class=\"message-block\">\r\n {{notification.message | truncate:[93]}}\r\n </div>\r\n <div *ngIf=\"isReadMore\" class=\"message-block\">\r\n {{notification.message}}\r\n </div>\r\n </div>\r\n <div class=\"read-more-error link clickable\" *ngIf=\"notification.message && notification.message.length > 93\"\r\n (click)=\"readMore()\">{{(isReadMore ? 'Collapse' : 'Read More')}}</div>\r\n <button\r\n class=\"close\"\r\n mat-icon-button\r\n (click)=\"removeNotification(notification)\">\r\n <img class=\"notification-icon-close\" src=\"assets/icons/close_icon_modal.svg\" alt=\"\">\r\n </button>\r\n </div>\r\n</div>\r\n\r\n", styles: ["@import\"https://fonts.googleapis.com/css?family=Poppins:400,100,200,300,500,600,800,700,900\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400&display=swap\";.notification-block{right:10px;top:80px;position:absolute;z-index:100}.notification-block .read-more-error{margin:10px 13px 3px 0;text-align:right}.notification-block .notification{padding:15px 0 10px 10px;margin-bottom:18px;color:#333;border-radius:3px;border-top:1.5px solid #e5e1cd;background:#fcf8e3;box-shadow:0 8px 12px #091e4226,0 0 1px #091e424f;width:368px;position:relative}.notification-block .notification .message-block{font-size:14px;font-family:Poppins,Poppins,sans-serif!important;word-break:break-word;width:270px}.notification-block .notification .notification-icon-close{height:24px}.notification-block .notification.error{background:#FFE9E9;border-top:1.5px solid #E16D6D}.notification-block .notification.success{background:#e3f4dc;border-top:1.5px solid #b3d692}.notification-block .notification .fa-exclamation-triangle{color:#e16d6d!important}.notification-block .notification .fa-check{color:#a0c37f!important}.notification-block .notification .fa-info-circle,.notification-block .notification .fa-hand-paper-o{color:#bdb89e!important}.notification-block .notification .fa{font-size:20px}.notification-block .notification .close{position:absolute;top:2px;right:-5px}.notification-block .notification .close .fa{font-size:14px}.notification-block .notification .fa{margin:0;color:inherit}@media screen and (max-width: 600px){.notification-block{width:50%;min-width:150px}}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "pipe", type: i4.TruncatePipe, name: "truncate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
34
34
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NotificationsComponent, decorators: [{
35
35
  type: Component,
36
- args: [{ selector: 'app-notification', changeDetection: ChangeDetectionStrategy.OnPush, template: "\n\n<div class=\"notification-block\" role=\"alert\" aria-live=\"assertive\">\n <div class=\"notification\"\n *ngFor=\"let notification of list\"\n [ngClass]=\"{'error': notification.isError(), 'success': notification.isSuccess()}\">\n\n <div class=\"flex-box\">\n <div class=\"notification-icons-block\">\n <i *ngIf=\"notification.isError()\" class=\"fa fa-exclamation-triangle\"></i>\n <i *ngIf=\"notification.isWarning()\" class=\"fa fa-hand-paper-o\"></i>\n <i *ngIf=\"notification.isSuccess()\" class=\"fa fa-check\"></i>\n <i *ngIf=\"notification.isInfo()\" class=\"fa fa-info-circle\"></i>\n </div>\n <div *ngIf=\"!isReadMore\" class=\"message-block\">\n {{notification.message | truncate:[93]}}\n </div>\n <div *ngIf=\"isReadMore\" class=\"message-block\">\n {{notification.message}}\n </div>\n </div>\n <div class=\"read-more-error link clickable\" *ngIf=\"notification.message && notification.message.length > 93\"\n (click)=\"readMore()\">{{(isReadMore ? 'Collapse' : 'Read More')}}</div>\n <button\n class=\"close\"\n mat-icon-button\n (click)=\"removeNotification(notification)\">\n <img class=\"notification-icon-close\" src=\"assets/icons/close_icon_modal.svg\" alt=\"\">\n </button>\n </div>\n</div>\n\n", styles: ["@import\"https://fonts.googleapis.com/css?family=Poppins:400,100,200,300,500,600,800,700,900\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400&display=swap\";.notification-block{right:10px;top:80px;position:absolute;z-index:100}.notification-block .read-more-error{margin:10px 13px 3px 0;text-align:right}.notification-block .notification{padding:15px 0 10px 10px;margin-bottom:18px;color:#333;border-radius:3px;border-top:1.5px solid #e5e1cd;background:#fcf8e3;box-shadow:0 8px 12px #091e4226,0 0 1px #091e424f;width:368px;position:relative}.notification-block .notification .message-block{font-size:14px;font-family:Poppins,Poppins,sans-serif!important;word-break:break-word;width:270px}.notification-block .notification .notification-icon-close{height:24px}.notification-block .notification.error{background:#FFE9E9;border-top:1.5px solid #E16D6D}.notification-block .notification.success{background:#e3f4dc;border-top:1.5px solid #b3d692}.notification-block .notification .fa-exclamation-triangle{color:#e16d6d!important}.notification-block .notification .fa-check{color:#a0c37f!important}.notification-block .notification .fa-info-circle,.notification-block .notification .fa-hand-paper-o{color:#bdb89e!important}.notification-block .notification .fa{font-size:20px}.notification-block .notification .close{position:absolute;top:2px;right:-5px}.notification-block .notification .close .fa{font-size:14px}.notification-block .notification .fa{margin:0;color:inherit}@media screen and (max-width: 600px){.notification-block{width:50%;min-width:150px}}\n"] }]
36
+ args: [{ selector: 'app-notification', changeDetection: ChangeDetectionStrategy.OnPush, template: "\r\n\r\n<div class=\"notification-block\" role=\"alert\" aria-live=\"assertive\">\r\n <div class=\"notification\"\r\n *ngFor=\"let notification of list\"\r\n [ngClass]=\"{'error': notification.isError(), 'success': notification.isSuccess()}\">\r\n\r\n <div class=\"flex-box\">\r\n <div class=\"notification-icons-block\">\r\n <i *ngIf=\"notification.isError()\" class=\"fa fa-exclamation-triangle\"></i>\r\n <i *ngIf=\"notification.isWarning()\" class=\"fa fa-hand-paper-o\"></i>\r\n <i *ngIf=\"notification.isSuccess()\" class=\"fa fa-check\"></i>\r\n <i *ngIf=\"notification.isInfo()\" class=\"fa fa-info-circle\"></i>\r\n </div>\r\n <div *ngIf=\"!isReadMore\" class=\"message-block\">\r\n {{notification.message | truncate:[93]}}\r\n </div>\r\n <div *ngIf=\"isReadMore\" class=\"message-block\">\r\n {{notification.message}}\r\n </div>\r\n </div>\r\n <div class=\"read-more-error link clickable\" *ngIf=\"notification.message && notification.message.length > 93\"\r\n (click)=\"readMore()\">{{(isReadMore ? 'Collapse' : 'Read More')}}</div>\r\n <button\r\n class=\"close\"\r\n mat-icon-button\r\n (click)=\"removeNotification(notification)\">\r\n <img class=\"notification-icon-close\" src=\"assets/icons/close_icon_modal.svg\" alt=\"\">\r\n </button>\r\n </div>\r\n</div>\r\n\r\n", styles: ["@import\"https://fonts.googleapis.com/css?family=Poppins:400,100,200,300,500,600,800,700,900\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400&display=swap\";.notification-block{right:10px;top:80px;position:absolute;z-index:100}.notification-block .read-more-error{margin:10px 13px 3px 0;text-align:right}.notification-block .notification{padding:15px 0 10px 10px;margin-bottom:18px;color:#333;border-radius:3px;border-top:1.5px solid #e5e1cd;background:#fcf8e3;box-shadow:0 8px 12px #091e4226,0 0 1px #091e424f;width:368px;position:relative}.notification-block .notification .message-block{font-size:14px;font-family:Poppins,Poppins,sans-serif!important;word-break:break-word;width:270px}.notification-block .notification .notification-icon-close{height:24px}.notification-block .notification.error{background:#FFE9E9;border-top:1.5px solid #E16D6D}.notification-block .notification.success{background:#e3f4dc;border-top:1.5px solid #b3d692}.notification-block .notification .fa-exclamation-triangle{color:#e16d6d!important}.notification-block .notification .fa-check{color:#a0c37f!important}.notification-block .notification .fa-info-circle,.notification-block .notification .fa-hand-paper-o{color:#bdb89e!important}.notification-block .notification .fa{font-size:20px}.notification-block .notification .close{position:absolute;top:2px;right:-5px}.notification-block .notification .close .fa{font-size:14px}.notification-block .notification .fa{margin:0;color:inherit}@media screen and (max-width: 600px){.notification-block{width:50%;min-width:150px}}\n"] }]
37
37
  }], ctorParameters: function () { return [{ type: i1.NotificationService }, { type: i0.ChangeDetectorRef }]; } });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy9zaGFyZWQvY29tcG9uZW50cy9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy9zaGFyZWQvY29tcG9uZW50cy9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBcUIsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBV3pHLE1BQU0sT0FBTyxzQkFBc0I7SUFLakMsWUFDUyxtQkFBd0MsRUFDdkMsR0FBc0I7UUFEdkIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN2QyxRQUFHLEdBQUgsR0FBRyxDQUFtQjtJQUVoQyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDckMsQ0FBQztJQUVNLGtCQUFrQixDQUFDLFlBQTBCO1FBQ2xELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVPLG1CQUFtQjtRQUN6QixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVU7YUFDeEQsU0FBUyxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUU7WUFDdkIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7WUFDakIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7O29IQWpDVSxzQkFBc0I7d0dBQXRCLHNCQUFzQix3RENYbkMsczBDQWdDQTs0RkRyQmEsc0JBQXNCO2tCQU5sQyxTQUFTOytCQUNFLGtCQUFrQixtQkFHWCx1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE5vdGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvc2VydmljZXMvbm90aWZpY2F0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uIH0gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9ub3RpZmljYXRpb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtbm90aWZpY2F0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL25vdGlmaWNhdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL25vdGlmaWNhdGlvbi5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBOb3RpZmljYXRpb25zQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwdWJsaWMgbGlzdCE6IE5vdGlmaWNhdGlvbltdO1xuICBwdWJsaWMgaXNSZWFkTW9yZSE6IGJvb2xlYW47XG4gIHByaXZhdGUgbGlzdFN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgbm90aWZpY2F0aW9uU2VydmljZTogTm90aWZpY2F0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmxpc3RDaGFuZ2VTdWJzY3JpYmUoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMubGlzdFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHVibGljIHJlYWRNb3JlKCk6IHZvaWQge1xuICAgIHRoaXMuaXNSZWFkTW9yZSA9ICF0aGlzLmlzUmVhZE1vcmU7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlTm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbjogTm90aWZpY2F0aW9uKTogdm9pZCB7XG4gICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnJlbW92ZShub3RpZmljYXRpb24pO1xuICB9XG5cbiAgcHJpdmF0ZSBsaXN0Q2hhbmdlU3Vic2NyaWJlKCk6IHZvaWQge1xuICAgIHRoaXMubGlzdFN1YnNjcmlwdGlvbiA9IHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5saXN0Q2hhbmdlXG4gICAgICAuc3Vic2NyaWJlKChsaXN0OiBhbnkpID0+IHtcbiAgICAgICAgdGhpcy5saXN0ID0gbGlzdDtcbiAgICAgICAgdGhpcy5yZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfSk7XG4gIH1cbn1cbiIsIlxuXG48ZGl2IGNsYXNzPVwibm90aWZpY2F0aW9uLWJsb2NrXCIgcm9sZT1cImFsZXJ0XCIgYXJpYS1saXZlPVwiYXNzZXJ0aXZlXCI+XG4gIDxkaXYgY2xhc3M9XCJub3RpZmljYXRpb25cIlxuICAgICAgICpuZ0Zvcj1cImxldCBub3RpZmljYXRpb24gb2YgbGlzdFwiXG4gICAgICAgW25nQ2xhc3NdPVwieydlcnJvcic6IG5vdGlmaWNhdGlvbi5pc0Vycm9yKCksICdzdWNjZXNzJzogbm90aWZpY2F0aW9uLmlzU3VjY2VzcygpfVwiPlxuXG4gICAgPGRpdiBjbGFzcz1cImZsZXgtYm94XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibm90aWZpY2F0aW9uLWljb25zLWJsb2NrXCI+XG4gICAgICAgIDxpICpuZ0lmPVwibm90aWZpY2F0aW9uLmlzRXJyb3IoKVwiIGNsYXNzPVwiZmEgZmEtZXhjbGFtYXRpb24tdHJpYW5nbGVcIj48L2k+XG4gICAgICAgIDxpICpuZ0lmPVwibm90aWZpY2F0aW9uLmlzV2FybmluZygpXCIgY2xhc3M9XCJmYSBmYS1oYW5kLXBhcGVyLW9cIj48L2k+XG4gICAgICAgIDxpICpuZ0lmPVwibm90aWZpY2F0aW9uLmlzU3VjY2VzcygpXCIgY2xhc3M9XCJmYSBmYS1jaGVja1wiPjwvaT5cbiAgICAgICAgPGkgKm5nSWY9XCJub3RpZmljYXRpb24uaXNJbmZvKClcIiBjbGFzcz1cImZhIGZhLWluZm8tY2lyY2xlXCI+PC9pPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiIWlzUmVhZE1vcmVcIiBjbGFzcz1cIm1lc3NhZ2UtYmxvY2tcIj5cbiAgICAgICAge3tub3RpZmljYXRpb24ubWVzc2FnZSB8IHRydW5jYXRlOls5M119fVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiaXNSZWFkTW9yZVwiIGNsYXNzPVwibWVzc2FnZS1ibG9ja1wiPlxuICAgICAgICB7e25vdGlmaWNhdGlvbi5tZXNzYWdlfX1cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJyZWFkLW1vcmUtZXJyb3IgbGluayBjbGlja2FibGVcIiAqbmdJZj1cIm5vdGlmaWNhdGlvbi5tZXNzYWdlICYmIG5vdGlmaWNhdGlvbi5tZXNzYWdlLmxlbmd0aCA+IDkzXCJcbiAgICAgICAgIChjbGljayk9XCJyZWFkTW9yZSgpXCI+e3soaXNSZWFkTW9yZSA/ICdDb2xsYXBzZScgOiAnUmVhZCBNb3JlJyl9fTwvZGl2PlxuICAgIDxidXR0b25cbiAgICAgIGNsYXNzPVwiY2xvc2VcIlxuICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAoY2xpY2spPVwicmVtb3ZlTm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbilcIj5cbiAgICAgIDxpbWcgY2xhc3M9XCJub3RpZmljYXRpb24taWNvbi1jbG9zZVwiIHNyYz1cImFzc2V0cy9pY29ucy9jbG9zZV9pY29uX21vZGFsLnN2Z1wiIGFsdD1cIlwiPlxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG4iXX0=
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy9zaGFyZWQvY29tcG9uZW50cy9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy9zaGFyZWQvY29tcG9uZW50cy9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBcUIsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBV3pHLE1BQU0sT0FBTyxzQkFBc0I7SUFLakMsWUFDUyxtQkFBd0MsRUFDdkMsR0FBc0I7UUFEdkIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN2QyxRQUFHLEdBQUgsR0FBRyxDQUFtQjtJQUVoQyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDckMsQ0FBQztJQUVNLGtCQUFrQixDQUFDLFlBQTBCO1FBQ2xELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVPLG1CQUFtQjtRQUN6QixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVU7YUFDeEQsU0FBUyxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUU7WUFDdkIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7WUFDakIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7O29IQWpDVSxzQkFBc0I7d0dBQXRCLHNCQUFzQix3RENYbkMsczRDQWdDQTs0RkRyQmEsc0JBQXNCO2tCQU5sQyxTQUFTOytCQUNFLGtCQUFrQixtQkFHWCx1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3NlcnZpY2VzL25vdGlmaWNhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTm90aWZpY2F0aW9uIH0gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9ub3RpZmljYXRpb24nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtbm90aWZpY2F0aW9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbm90aWZpY2F0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9ub3RpZmljYXRpb24uY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTm90aWZpY2F0aW9uc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBwdWJsaWMgbGlzdCE6IE5vdGlmaWNhdGlvbltdO1xyXG4gIHB1YmxpYyBpc1JlYWRNb3JlITogYm9vbGVhbjtcclxuICBwcml2YXRlIGxpc3RTdWJzY3JpcHRpb24hOiBTdWJzY3JpcHRpb247XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIG5vdGlmaWNhdGlvblNlcnZpY2U6IE5vdGlmaWNhdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcclxuICApIHtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5saXN0Q2hhbmdlU3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMubGlzdFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlYWRNb3JlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5pc1JlYWRNb3JlID0gIXRoaXMuaXNSZWFkTW9yZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZW1vdmVOb3RpZmljYXRpb24obm90aWZpY2F0aW9uOiBOb3RpZmljYXRpb24pOiB2b2lkIHtcclxuICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5yZW1vdmUobm90aWZpY2F0aW9uKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgbGlzdENoYW5nZVN1YnNjcmliZSgpOiB2b2lkIHtcclxuICAgIHRoaXMubGlzdFN1YnNjcmlwdGlvbiA9IHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5saXN0Q2hhbmdlXHJcbiAgICAgIC5zdWJzY3JpYmUoKGxpc3Q6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMubGlzdCA9IGxpc3Q7XHJcbiAgICAgICAgdGhpcy5yZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiXHJcblxyXG48ZGl2IGNsYXNzPVwibm90aWZpY2F0aW9uLWJsb2NrXCIgcm9sZT1cImFsZXJ0XCIgYXJpYS1saXZlPVwiYXNzZXJ0aXZlXCI+XHJcbiAgPGRpdiBjbGFzcz1cIm5vdGlmaWNhdGlvblwiXHJcbiAgICAgICAqbmdGb3I9XCJsZXQgbm90aWZpY2F0aW9uIG9mIGxpc3RcIlxyXG4gICAgICAgW25nQ2xhc3NdPVwieydlcnJvcic6IG5vdGlmaWNhdGlvbi5pc0Vycm9yKCksICdzdWNjZXNzJzogbm90aWZpY2F0aW9uLmlzU3VjY2VzcygpfVwiPlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJmbGV4LWJveFwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibm90aWZpY2F0aW9uLWljb25zLWJsb2NrXCI+XHJcbiAgICAgICAgPGkgKm5nSWY9XCJub3RpZmljYXRpb24uaXNFcnJvcigpXCIgY2xhc3M9XCJmYSBmYS1leGNsYW1hdGlvbi10cmlhbmdsZVwiPjwvaT5cclxuICAgICAgICA8aSAqbmdJZj1cIm5vdGlmaWNhdGlvbi5pc1dhcm5pbmcoKVwiIGNsYXNzPVwiZmEgZmEtaGFuZC1wYXBlci1vXCI+PC9pPlxyXG4gICAgICAgIDxpICpuZ0lmPVwibm90aWZpY2F0aW9uLmlzU3VjY2VzcygpXCIgY2xhc3M9XCJmYSBmYS1jaGVja1wiPjwvaT5cclxuICAgICAgICA8aSAqbmdJZj1cIm5vdGlmaWNhdGlvbi5pc0luZm8oKVwiIGNsYXNzPVwiZmEgZmEtaW5mby1jaXJjbGVcIj48L2k+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwiIWlzUmVhZE1vcmVcIiBjbGFzcz1cIm1lc3NhZ2UtYmxvY2tcIj5cclxuICAgICAgICB7e25vdGlmaWNhdGlvbi5tZXNzYWdlIHwgdHJ1bmNhdGU6WzkzXX19XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwiaXNSZWFkTW9yZVwiIGNsYXNzPVwibWVzc2FnZS1ibG9ja1wiPlxyXG4gICAgICAgIHt7bm90aWZpY2F0aW9uLm1lc3NhZ2V9fVxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInJlYWQtbW9yZS1lcnJvciBsaW5rIGNsaWNrYWJsZVwiICpuZ0lmPVwibm90aWZpY2F0aW9uLm1lc3NhZ2UgJiYgbm90aWZpY2F0aW9uLm1lc3NhZ2UubGVuZ3RoID4gOTNcIlxyXG4gICAgICAgICAoY2xpY2spPVwicmVhZE1vcmUoKVwiPnt7KGlzUmVhZE1vcmUgPyAnQ29sbGFwc2UnIDogJ1JlYWQgTW9yZScpfX08L2Rpdj5cclxuICAgIDxidXR0b25cclxuICAgICAgY2xhc3M9XCJjbG9zZVwiXHJcbiAgICAgIG1hdC1pY29uLWJ1dHRvblxyXG4gICAgICAoY2xpY2spPVwicmVtb3ZlTm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbilcIj5cclxuICAgICAgPGltZyBjbGFzcz1cIm5vdGlmaWNhdGlvbi1pY29uLWNsb3NlXCIgc3JjPVwiYXNzZXRzL2ljb25zL2Nsb3NlX2ljb25fbW9kYWwuc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICA8L2J1dHRvbj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcblxyXG4iXX0=
@@ -27,4 +27,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
27
27
  name: 'truncate'
28
28
  }]
29
29
  }] });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1bmNhdGUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy9zaGFyZWQvcGlwZXMvdHJ1bmNhdGUucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLHVCQUF1QixFQUFFLHNCQUFzQixFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBS3ZHLE1BQU0sT0FBTyxZQUFZO0lBRXZCLFNBQVMsQ0FBQyxLQUF5QixFQUFFLElBQVk7UUFDL0MsSUFBRyxDQUFDLEtBQUssRUFBRTtZQUNULE9BQU8sRUFBRSxDQUFDO1NBQ1g7UUFDRCxJQUFJLElBQUksRUFBRTtZQUNSLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDM0QsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1lBQ2hELE9BQU8sS0FBSyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1NBQ3pFO1FBQ0QsSUFBSSxLQUFLLENBQUMsTUFBTSxJQUFJLHVCQUF1QixFQUFFO1lBQzNDLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFDRCxNQUFNLFdBQVcsR0FBRyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxzQkFBc0IsQ0FBQyxDQUFDLENBQUM7UUFDckcsTUFBTSxRQUFRLEdBQUcsV0FBVyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQztRQUM1RyxPQUFPLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxHQUFHLEtBQUssQ0FBQztJQUM5QyxDQUFDOzswR0FqQlUsWUFBWTt3R0FBWixZQUFZOzRGQUFaLFlBQVk7a0JBSHhCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLFVBQVU7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ1VUVElOR19TWU1CT0xTLCBCUkVBRENSVU1CX0xFTkdUSF9MSU1JVCwgREVGQVVMVF9DVVRUSU5HX0xFTkdUSCB9IGZyb20gJy4uLy4uL2FwcC5jb25zdGFudHMnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICd0cnVuY2F0ZSdcbn0pXG5leHBvcnQgY2xhc3MgVHJ1bmNhdGVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG5cbiAgdHJhbnNmb3JtKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQsIGFyZ3M/OiBhbnlbXSk6IHN0cmluZyB7XG4gICAgaWYoIXZhbHVlKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuICAgIGlmIChhcmdzKSB7XG4gICAgICBjb25zdCBsaW1pdCA9IGFyZ3MubGVuZ3RoID4gMCA/IHBhcnNlSW50KGFyZ3NbMF0sIDEwKSA6IDIwO1xuICAgICAgY29uc3QgdHJhaWwgPSBhcmdzLmxlbmd0aCA+IDEgPyBhcmdzWzFdIDogJy4uLic7XG4gICAgICByZXR1cm4gdmFsdWUubGVuZ3RoID4gbGltaXQgPyB2YWx1ZS5zdWJzdHJpbmcoMCwgbGltaXQpICsgdHJhaWwgOiB2YWx1ZTtcbiAgICB9XG4gICAgaWYgKHZhbHVlLmxlbmd0aCA8PSBCUkVBRENSVU1CX0xFTkdUSF9MSU1JVCkge1xuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cbiAgICBjb25zdCBmb3VuZFN5bWJvbCA9IENVVFRJTkdfU1lNQk9MUy5maW5kKChzeW1ib2wpID0+IHZhbHVlLmluY2x1ZGVzKHN5bWJvbCwgREVGQVVMVF9DVVRUSU5HX0xFTkdUSCkpO1xuICAgIGNvbnN0IGN1dEluZGV4ID0gZm91bmRTeW1ib2wgPyB2YWx1ZS5pbmRleE9mKGZvdW5kU3ltYm9sLCBERUZBVUxUX0NVVFRJTkdfTEVOR1RIKSA6IEJSRUFEQ1JVTUJfTEVOR1RIX0xJTUlUO1xuICAgIHJldHVybiB2YWx1ZS5zdWJzdHJpbmcoMCwgY3V0SW5kZXgpICsgJy4uLic7XG4gIH1cblxufVxuIl19
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1bmNhdGUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy9zaGFyZWQvcGlwZXMvdHJ1bmNhdGUucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLHVCQUF1QixFQUFFLHNCQUFzQixFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBS3ZHLE1BQU0sT0FBTyxZQUFZO0lBRXZCLFNBQVMsQ0FBQyxLQUF5QixFQUFFLElBQVk7UUFDL0MsSUFBRyxDQUFDLEtBQUssRUFBRTtZQUNULE9BQU8sRUFBRSxDQUFDO1NBQ1g7UUFDRCxJQUFJLElBQUksRUFBRTtZQUNSLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDM0QsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1lBQ2hELE9BQU8sS0FBSyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1NBQ3pFO1FBQ0QsSUFBSSxLQUFLLENBQUMsTUFBTSxJQUFJLHVCQUF1QixFQUFFO1lBQzNDLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFDRCxNQUFNLFdBQVcsR0FBRyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxzQkFBc0IsQ0FBQyxDQUFDLENBQUM7UUFDckcsTUFBTSxRQUFRLEdBQUcsV0FBVyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQztRQUM1RyxPQUFPLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxHQUFHLEtBQUssQ0FBQztJQUM5QyxDQUFDOzswR0FqQlUsWUFBWTt3R0FBWixZQUFZOzRGQUFaLFlBQVk7a0JBSHhCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLFVBQVU7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDVVRUSU5HX1NZTUJPTFMsIEJSRUFEQ1JVTUJfTEVOR1RIX0xJTUlULCBERUZBVUxUX0NVVFRJTkdfTEVOR1RIIH0gZnJvbSAnLi4vLi4vYXBwLmNvbnN0YW50cyc7XHJcblxyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ3RydW5jYXRlJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJ1bmNhdGVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcblxyXG4gIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkLCBhcmdzPzogYW55W10pOiBzdHJpbmcge1xyXG4gICAgaWYoIXZhbHVlKSB7XHJcbiAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxuICAgIGlmIChhcmdzKSB7XHJcbiAgICAgIGNvbnN0IGxpbWl0ID0gYXJncy5sZW5ndGggPiAwID8gcGFyc2VJbnQoYXJnc1swXSwgMTApIDogMjA7XHJcbiAgICAgIGNvbnN0IHRyYWlsID0gYXJncy5sZW5ndGggPiAxID8gYXJnc1sxXSA6ICcuLi4nO1xyXG4gICAgICByZXR1cm4gdmFsdWUubGVuZ3RoID4gbGltaXQgPyB2YWx1ZS5zdWJzdHJpbmcoMCwgbGltaXQpICsgdHJhaWwgOiB2YWx1ZTtcclxuICAgIH1cclxuICAgIGlmICh2YWx1ZS5sZW5ndGggPD0gQlJFQURDUlVNQl9MRU5HVEhfTElNSVQpIHtcclxuICAgICAgcmV0dXJuIHZhbHVlO1xyXG4gICAgfVxyXG4gICAgY29uc3QgZm91bmRTeW1ib2wgPSBDVVRUSU5HX1NZTUJPTFMuZmluZCgoc3ltYm9sKSA9PiB2YWx1ZS5pbmNsdWRlcyhzeW1ib2wsIERFRkFVTFRfQ1VUVElOR19MRU5HVEgpKTtcclxuICAgIGNvbnN0IGN1dEluZGV4ID0gZm91bmRTeW1ib2wgPyB2YWx1ZS5pbmRleE9mKGZvdW5kU3ltYm9sLCBERUZBVUxUX0NVVFRJTkdfTEVOR1RIKSA6IEJSRUFEQ1JVTUJfTEVOR1RIX0xJTUlUO1xyXG4gICAgcmV0dXJuIHZhbHVlLnN1YnN0cmluZygwLCBjdXRJbmRleCkgKyAnLi4uJztcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
@@ -59,4 +59,4 @@ NotificationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0",
59
59
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: NotificationService, decorators: [{
60
60
  type: Injectable
61
61
  }], ctorParameters: function () { return []; } });
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvdXNlci1jcmVhdGlvbi9zcmMvc2hhcmVkL3NlcnZpY2VzL25vdGlmaWNhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBQy9CLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQztBQUMxQixNQUFNLHdCQUF3QixHQUFHLDZEQUE2RCxDQUFDO0FBQy9GLE1BQU0sZ0JBQWdCLEdBQUcsa0JBQWtCLENBQUM7QUFHNUMsTUFBTSxPQUFPLG1CQUFtQjtJQU85QjtRQUxPLGVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBRTFCLFFBQUcsR0FBRyxDQUFDLENBQUM7UUFDUixTQUFJLEdBQW1CLEVBQUUsQ0FBQztJQUlsQyxDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQWUsRUFBRSxHQUFZO1FBQ2pDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsT0FBTyxDQUFDLE9BQWUsRUFBRSxHQUFZO1FBQ25DLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELE9BQU8sQ0FBQyxPQUFlLEVBQUUsR0FBWTtRQUNuQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELElBQUksQ0FBQyxPQUFlLEVBQUUsR0FBWTtRQUNoQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUNPLE1BQU0sQ0FBQyxJQUFZLEVBQUUsT0FBZSxFQUFFLEdBQVk7UUFDeEQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFlLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLEtBQUssT0FBTyxDQUFDLENBQUM7UUFDekUsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3BCO1FBQ0QsTUFBTSxZQUFZLEdBQUcsSUFBSSxZQUFZLENBQUM7WUFDcEMsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLEdBQUc7WUFDZCxJQUFJLEVBQUUsT0FBTyxFQUFFLEdBQUc7U0FDbkIsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxZQUFZLENBQUMsR0FBRyxHQUFHLENBQUMsRUFBRTtZQUN4QixZQUFZLENBQUMsT0FBTyxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsRUFBRSxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDNUY7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxZQUEwQixFQUFFLElBQWM7UUFDL0MsSUFBSSxDQUFDLElBQUksSUFBSSxZQUFZLENBQUMsT0FBTyxFQUFFO1lBQ2pDLHlDQUF5QztZQUN6QyxhQUFhLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ3JDO1FBQ0QsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRU8sMEJBQTBCO1FBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDbkMsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLEtBQUssd0JBQXdCLElBQUksQ0FBQyxDQUFDLE9BQU8sS0FBSyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzVHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsQyxDQUFDOztpSEF6RFUsbUJBQW1CO3FIQUFuQixtQkFBbUI7NEZBQW5CLG1CQUFtQjtrQkFEL0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5vdGlmaWNhdGlvbiB9IGZyb20gJy4uLy4uL2NsYXNzZXMvbm90aWZpY2F0aW9uJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmNvbnN0IFNVQ0NFU1NfVElNRSA9IDUwMDA7XG5jb25zdCBJTkFDVElWRV9TRVNTSU9OX01FU1NBR0UgPSAnWW91ciBzZXNzaW9uIHdhcyBsb3N0IGR1ZSB0byBpbmFjdGl2aXR5LiBQbGVhc2UgbG9naW4gYWdhaW4nO1xuY29uc3QgSU5BQ1RJVkVfU0VTU0lPTiA9ICdTRVNTSU9OX0lOQUNUSVZFJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE5vdGlmaWNhdGlvblNlcnZpY2Uge1xuXG4gIHB1YmxpYyBsaXN0Q2hhbmdlID0gbmV3IFN1YmplY3QoKTtcblxuICBwcml2YXRlIG1heCA9IDA7XG4gIHByaXZhdGUgbGlzdDogTm90aWZpY2F0aW9uW10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgKSB7XG4gIH1cblxuICBlcnJvcihtZXNzYWdlOiBzdHJpbmcsIHR0bD86IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMubm90aWZ5KCdlcnJvcicsIG1lc3NhZ2UsIHR0bCk7XG4gIH1cblxuICBzdWNjZXNzKG1lc3NhZ2U6IHN0cmluZywgdHRsPzogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5ub3RpZnkoJ3N1Y2Nlc3MnLCBtZXNzYWdlLCAoIXR0bCkgPyBTVUNDRVNTX1RJTUUgOiB0dGwpO1xuICB9XG5cbiAgd2FybmluZyhtZXNzYWdlOiBzdHJpbmcsIHR0bD86IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMubm90aWZ5KCd3YXJuaW5nJywgbWVzc2FnZSwgdHRsKTtcbiAgfVxuXG4gIGluZm8obWVzc2FnZTogc3RyaW5nLCB0dGw/OiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLm5vdGlmeSgnaW5mbycsIG1lc3NhZ2UsIHR0bCk7XG4gIH1cbiAgcHJpdmF0ZSBub3RpZnkodHlwZTogc3RyaW5nLCBtZXNzYWdlOiBzdHJpbmcsIHR0bD86IG51bWJlcik6IHZvaWQge1xuICAgIGNvbnN0IGZvdW5kID0gdGhpcy5saXN0LmZpbmQoKG46IE5vdGlmaWNhdGlvbikgPT4gbi5tZXNzYWdlID09PSBtZXNzYWdlKTtcbiAgICBpZiAoZm91bmQpIHtcbiAgICAgIHRoaXMucmVtb3ZlKGZvdW5kKTtcbiAgICB9XG4gICAgY29uc3Qgbm90aWZpY2F0aW9uID0gbmV3IE5vdGlmaWNhdGlvbih7XG4gICAgICBpZDogKyt0aGlzLm1heCxcbiAgICAgIHR5cGUsIG1lc3NhZ2UsIHR0bFxuICAgIH0pO1xuICAgIGlmIChub3RpZmljYXRpb24udHRsID4gMCkge1xuICAgICAgbm90aWZpY2F0aW9uLnRpbWVySWQgPSBzZXRUaW1lb3V0KCgpID0+IHRoaXMucmVtb3ZlKG5vdGlmaWNhdGlvbiwgdHJ1ZSksIG5vdGlmaWNhdGlvbi50dGwpO1xuICAgIH1cbiAgICB0aGlzLmxpc3QucHVzaChub3RpZmljYXRpb24pO1xuICAgIHRoaXMubGlzdENoYW5nZS5uZXh0KHRoaXMubGlzdCk7XG4gIH1cblxuICByZW1vdmUobm90aWZpY2F0aW9uOiBOb3RpZmljYXRpb24sIGF1dG8/OiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKCFhdXRvICYmIG5vdGlmaWNhdGlvbi50aW1lcklkKSB7XG4gICAgICAvLyBjbGVhciB0aW1lb3V0IGluIGNhc2Ugb2YgbWFudWFsIHJlbW92ZVxuICAgICAgY2xlYXJJbnRlcnZhbChub3RpZmljYXRpb24udGltZXJJZCk7XG4gICAgfVxuICAgIHRoaXMubGlzdCA9IHRoaXMubGlzdC5maWx0ZXIobiA9PiBuLmlkICE9PSBub3RpZmljYXRpb24uaWQpO1xuICAgIHRoaXMubGlzdENoYW5nZS5uZXh0KHRoaXMubGlzdCk7XG4gIH1cblxuICBwcml2YXRlIHJlbW92ZUluYWN0aXZlU2Vzc2lvbkVycm9yKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5saXN0IHx8ICF0aGlzLmxpc3QubGVuZ3RoKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMubGlzdCA9IHRoaXMubGlzdC5maWx0ZXIobiA9PiBuLm1lc3NhZ2UgIT09IElOQUNUSVZFX1NFU1NJT05fTUVTU0FHRSAmJiBuLm1lc3NhZ2UgIT09IElOQUNUSVZFX1NFU1NJT04pO1xuICAgIHRoaXMubGlzdENoYW5nZS5uZXh0KHRoaXMubGlzdCk7XG4gIH1cblxufVxuIl19
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvdXNlci1jcmVhdGlvbi9zcmMvc2hhcmVkL3NlcnZpY2VzL25vdGlmaWNhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBQy9CLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQztBQUMxQixNQUFNLHdCQUF3QixHQUFHLDZEQUE2RCxDQUFDO0FBQy9GLE1BQU0sZ0JBQWdCLEdBQUcsa0JBQWtCLENBQUM7QUFHNUMsTUFBTSxPQUFPLG1CQUFtQjtJQU85QjtRQUxPLGVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBRTFCLFFBQUcsR0FBRyxDQUFDLENBQUM7UUFDUixTQUFJLEdBQW1CLEVBQUUsQ0FBQztJQUlsQyxDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQWUsRUFBRSxHQUFZO1FBQ2pDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsT0FBTyxDQUFDLE9BQWUsRUFBRSxHQUFZO1FBQ25DLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELE9BQU8sQ0FBQyxPQUFlLEVBQUUsR0FBWTtRQUNuQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELElBQUksQ0FBQyxPQUFlLEVBQUUsR0FBWTtRQUNoQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUNPLE1BQU0sQ0FBQyxJQUFZLEVBQUUsT0FBZSxFQUFFLEdBQVk7UUFDeEQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFlLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLEtBQUssT0FBTyxDQUFDLENBQUM7UUFDekUsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3BCO1FBQ0QsTUFBTSxZQUFZLEdBQUcsSUFBSSxZQUFZLENBQUM7WUFDcEMsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLEdBQUc7WUFDZCxJQUFJLEVBQUUsT0FBTyxFQUFFLEdBQUc7U0FDbkIsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxZQUFZLENBQUMsR0FBRyxHQUFHLENBQUMsRUFBRTtZQUN4QixZQUFZLENBQUMsT0FBTyxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsRUFBRSxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDNUY7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxZQUEwQixFQUFFLElBQWM7UUFDL0MsSUFBSSxDQUFDLElBQUksSUFBSSxZQUFZLENBQUMsT0FBTyxFQUFFO1lBQ2pDLHlDQUF5QztZQUN6QyxhQUFhLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ3JDO1FBQ0QsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRU8sMEJBQTBCO1FBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDbkMsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLEtBQUssd0JBQXdCLElBQUksQ0FBQyxDQUFDLE9BQU8sS0FBSyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzVHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsQyxDQUFDOztpSEF6RFUsbUJBQW1CO3FIQUFuQixtQkFBbUI7NEZBQW5CLG1CQUFtQjtrQkFEL0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTm90aWZpY2F0aW9uIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmNvbnN0IFNVQ0NFU1NfVElNRSA9IDUwMDA7XHJcbmNvbnN0IElOQUNUSVZFX1NFU1NJT05fTUVTU0FHRSA9ICdZb3VyIHNlc3Npb24gd2FzIGxvc3QgZHVlIHRvIGluYWN0aXZpdHkuIFBsZWFzZSBsb2dpbiBhZ2Fpbic7XHJcbmNvbnN0IElOQUNUSVZFX1NFU1NJT04gPSAnU0VTU0lPTl9JTkFDVElWRSc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBOb3RpZmljYXRpb25TZXJ2aWNlIHtcclxuXHJcbiAgcHVibGljIGxpc3RDaGFuZ2UgPSBuZXcgU3ViamVjdCgpO1xyXG5cclxuICBwcml2YXRlIG1heCA9IDA7XHJcbiAgcHJpdmF0ZSBsaXN0OiBOb3RpZmljYXRpb25bXSA9IFtdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICApIHtcclxuICB9XHJcblxyXG4gIGVycm9yKG1lc3NhZ2U6IHN0cmluZywgdHRsPzogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLm5vdGlmeSgnZXJyb3InLCBtZXNzYWdlLCB0dGwpO1xyXG4gIH1cclxuXHJcbiAgc3VjY2VzcyhtZXNzYWdlOiBzdHJpbmcsIHR0bD86IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5ub3RpZnkoJ3N1Y2Nlc3MnLCBtZXNzYWdlLCAoIXR0bCkgPyBTVUNDRVNTX1RJTUUgOiB0dGwpO1xyXG4gIH1cclxuXHJcbiAgd2FybmluZyhtZXNzYWdlOiBzdHJpbmcsIHR0bD86IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5ub3RpZnkoJ3dhcm5pbmcnLCBtZXNzYWdlLCB0dGwpO1xyXG4gIH1cclxuXHJcbiAgaW5mbyhtZXNzYWdlOiBzdHJpbmcsIHR0bD86IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5ub3RpZnkoJ2luZm8nLCBtZXNzYWdlLCB0dGwpO1xyXG4gIH1cclxuICBwcml2YXRlIG5vdGlmeSh0eXBlOiBzdHJpbmcsIG1lc3NhZ2U6IHN0cmluZywgdHRsPzogbnVtYmVyKTogdm9pZCB7XHJcbiAgICBjb25zdCBmb3VuZCA9IHRoaXMubGlzdC5maW5kKChuOiBOb3RpZmljYXRpb24pID0+IG4ubWVzc2FnZSA9PT0gbWVzc2FnZSk7XHJcbiAgICBpZiAoZm91bmQpIHtcclxuICAgICAgdGhpcy5yZW1vdmUoZm91bmQpO1xyXG4gICAgfVxyXG4gICAgY29uc3Qgbm90aWZpY2F0aW9uID0gbmV3IE5vdGlmaWNhdGlvbih7XHJcbiAgICAgIGlkOiArK3RoaXMubWF4LFxyXG4gICAgICB0eXBlLCBtZXNzYWdlLCB0dGxcclxuICAgIH0pO1xyXG4gICAgaWYgKG5vdGlmaWNhdGlvbi50dGwgPiAwKSB7XHJcbiAgICAgIG5vdGlmaWNhdGlvbi50aW1lcklkID0gc2V0VGltZW91dCgoKSA9PiB0aGlzLnJlbW92ZShub3RpZmljYXRpb24sIHRydWUpLCBub3RpZmljYXRpb24udHRsKTtcclxuICAgIH1cclxuICAgIHRoaXMubGlzdC5wdXNoKG5vdGlmaWNhdGlvbik7XHJcbiAgICB0aGlzLmxpc3RDaGFuZ2UubmV4dCh0aGlzLmxpc3QpO1xyXG4gIH1cclxuXHJcbiAgcmVtb3ZlKG5vdGlmaWNhdGlvbjogTm90aWZpY2F0aW9uLCBhdXRvPzogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgaWYgKCFhdXRvICYmIG5vdGlmaWNhdGlvbi50aW1lcklkKSB7XHJcbiAgICAgIC8vIGNsZWFyIHRpbWVvdXQgaW4gY2FzZSBvZiBtYW51YWwgcmVtb3ZlXHJcbiAgICAgIGNsZWFySW50ZXJ2YWwobm90aWZpY2F0aW9uLnRpbWVySWQpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5saXN0ID0gdGhpcy5saXN0LmZpbHRlcihuID0+IG4uaWQgIT09IG5vdGlmaWNhdGlvbi5pZCk7XHJcbiAgICB0aGlzLmxpc3RDaGFuZ2UubmV4dCh0aGlzLmxpc3QpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZW1vdmVJbmFjdGl2ZVNlc3Npb25FcnJvcigpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5saXN0IHx8ICF0aGlzLmxpc3QubGVuZ3RoKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMubGlzdCA9IHRoaXMubGlzdC5maWx0ZXIobiA9PiBuLm1lc3NhZ2UgIT09IElOQUNUSVZFX1NFU1NJT05fTUVTU0FHRSAmJiBuLm1lc3NhZ2UgIT09IElOQUNUSVZFX1NFU1NJT04pO1xyXG4gICAgdGhpcy5saXN0Q2hhbmdlLm5leHQodGhpcy5saXN0KTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
@@ -113,4 +113,4 @@ UserCreationApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0
113
113
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UserCreationApiService, decorators: [{
114
114
  type: Injectable
115
115
  }], ctorParameters: function () { return []; } });
116
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1jcmVhdGlvbi1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy9zaGFyZWQvc2VydmljZXMvdXNlci1jcmVhdGlvbi1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQWMsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBR3ZFLDhDQUE4QztBQUM5QyxPQUFPLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFHaEQsTUFBTSxPQUFPLHNCQUFzQjtJQVdqQztRQVRRLGNBQVMsR0FBVyxFQUFFLENBQUM7UUFDZCxzQkFBaUIsR0FBRyxJQUFJLGVBQWUsQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUNyRCxlQUFVLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBRWxELDBCQUFxQixHQUFHLElBQUksZUFBZSxDQUEwQixFQUFFLENBQUMsQ0FBQztRQUMxRSxtQkFBYyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUVuRSxlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRXhCLENBQUM7SUFFVixZQUFZO0lBRW5CLENBQUM7SUFFTSwwQkFBMEIsQ0FBQyxVQUFrQjtRQUNsRCxNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsbUNBQW1DLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUMvRixPQUFP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QUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNqSCxDQUFDO0lBRU0sZ0JBQWdCLENBQUMsSUFBUyxFQUFFLFVBQWtCLEVBQUUsTUFBYztRQUNuRSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyw2QkFBNkIsRUFBRSxJQUFJLEVBQUUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ25ILENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxNQUFjLEVBQUUsVUFBa0I7UUFDekQsTUFBTSxXQUFXLEdBQUcsa0JBQWtCLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDbkQsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FDMUIsR0FBRyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsV0FBVyxDQUFDLENBQ25GLENBQUM7SUFDSixDQUFDOztvSEE3SFUsc0JBQXNCO3dIQUF0QixzQkFBc0I7NEZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGZvcmtKb2luLCBtYXAsIE9ic2VydmFibGUsIHRhcCB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBTaXRlLCBTaXRlRGVmYXVsdHMsIFNpdGVJbnRlcmZhY2UsIFNpdGVUZW1wbGF0ZUludGVyZmFjZSB9IGZyb20gXCIuLi8uLi9jbGFzc2VzL3NpdGVcIjtcbmltcG9ydCB7IERldmljZURlZmF1bHRzSW50ZXJmYWNlLCBVc2VyVGVtcGxhdGVJbnRlcmZhY2UgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy91c2VyLWNyZWF0aW9uLXdpemFyZC5pbnRlcmZhY2VzXCI7XG4vLyBpbXBvcnQgeyBBUElTZXJ2aWNlIH0gZnJvbSBcIi4vYXBpLnNlcnZpY2VcIjtcbmltcG9ydCB7IEFQSSwgTUFYX0lOVEVHRVIgfSBmcm9tIFwiLi4vLi4vYXBwLmNvbnN0YW50c1wiO1xuaW1wb3J0IHsgQVBJU2VydmljZSB9IGZyb20gXCIuLi9hcGkvYXBpLnNlcnZpY2VcIjtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFVzZXJDcmVhdGlvbkFwaVNlcnZpY2Uge1xuXG4gIHByaXZhdGUgX2FsbFNpdGVzOiBTaXRlW10gPSBbXTtcbiAgcHJpdmF0ZSByZWFkb25seSBzaXRlc0xpc3RTdWJqZWN0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U2l0ZVtdPihbXSk7XG4gIHB1YmxpYyByZWFkb25seSBzaXRlc0xpc3QkID0gdGhpcy5zaXRlc0xpc3RTdWJqZWN0JC5hc09ic2VydmFibGUoKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHRlbXBsYXRlc0xpc3RTdWJqZWN0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VXNlclRlbXBsYXRlSW50ZXJmYWNlW10+KFtdKTtcbiAgcHVibGljIHJlYWRvbmx5IHRlbXBsYXRlc0xpc3QkID0gdGhpcy50ZW1wbGF0ZXNMaXN0U3ViamVjdCQuYXNPYnNlcnZhYmxlKCk7XG5cbiAgcHJpdmF0ZSBhcGlTZXJ2aWNlID0gaW5qZWN0KEFQSVNlcnZpY2UpO1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgcHVibGljIGdldFNpdGVzTGlzdCgpIHtcblxuICB9XG5cbiAgcHVibGljIGNoZWNrQ29udHJvbEh1YkludGVncmF0aW9uKGN1c3RvbWVySWQ6IHN0cmluZykge1xuICAgIGNvbnN0IFVSTCA9IEFQSS5XRUJFWF9DSEVDS19DT05UUk9MX0hVQl9JTlRFR1JBVElPTi5yZXBsYWNlKCc6Y3VzdG9tZXJJZCcsIFN0cmluZyhjdXN0b21lcklkKSk7XG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5mZXRjaChVUkwpO1xuICAgIC8vIC5waXBlKHRoaXMuaGFuZGxlRXJyb3IodHJ1ZSwgdHJ1ZSkpO1xuICB9XG5cbiAgcHVibGljIGdldEFsbEN1c3RvbWVyU2l0ZXMoY3VzdG9tZXJJZDogc3RyaW5nLCBvbmx5U2l0ZXNXaXRoTG9jYXRpb24/OiBib29sZWFuKTogT2JzZXJ2YWJsZTxTaXRlW10+IHtcbiAgICBjb25zdCBwYXJhbXM6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7fTtcbiAgICBpZiAob25seVNpdGVzV2l0aExvY2F0aW9uKSB7XG4gICAgICBwYXJhbXNbJ29ubHlTaXRlc1dpdGhMb2NhdGlvbiddID0gJ3RydWUnO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmZldGNoUGFnaW5hdGlvbihBUEkuU0lURVMucmVwbGFjZSgnOmN1c3RvbWVySWQnLCBTdHJpbmcoY3VzdG9tZXJJZCkpLCBNQVhfSU5URUdFUiwgMCwgcGFyYW1zLCBmYWxzZSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKHJlczogYW55KSA9PiB7XG4gICAgICAgICAgLy8gdGhpcy5fYWxsU2l0ZXMgPSBbXTtcbiAgICAgICAgICAvLyBpZiAocmVzLnBhZ2VEYXRhICYmIHJlcy5wYWdlRGF0YS5sZW5ndGgpIHtcbiAgICAgICAgICAvLyB0aGlzLmFzc2lnbkFsbFNpdGVzKGN1c3RvbWVySWQsIHJlcy5wYWdlRGF0YSk7XG4gICAgICAgICAgLy8gfVxuICAgICAgICAgIC8vIHRoaXMuYWxsQ3VzdG9tZXJTaXRlcyQubmV4dCh0cnVlKTtcbiAgICAgICAgICAvLyByZXR1cm4gdGhpcy5fYWxsU2l0ZXM7XG4gICAgICAgICAgdGhpcy5zaXRlc0xpc3RTdWJqZWN0JC5uZXh0KFsuLi5yZXMucGFnZURhdGFdKTtcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAvLyAgIC5waXBlKHRoaXMuaGFuZGxlRXJyb3IodHJ1ZSkpO1xuICB9XG5cbiAgcHVibGljIGdldFNpdGVBbGxEYXRhKHNpdGVJZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAvLyB0aGlzLmRhdGFQZW5kaW5nID0gdHJ1ZTtcbiAgICByZXR1cm4gZm9ya0pvaW4oW1xuICAgICAgdGhpcy5nZXRTaXRlKHNpdGVJZCksXG4gICAgICB0aGlzLmdldFNpdGVEZWZhdWx0cyhzaXRlSWQsIGZhbHNlKSxcbiAgICAgIC8vIHRoaXMuZ2V0RGV2aWNlVHlwZXMoc2l0ZUlkKSxcbiAgICAgIC8vIHRoaXMuZ2V0Vm9pY2VNYWlsVXNlclRlbXBsYXRlcyhzaXRlSWQpXG4gICAgXSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0U2l0ZShzaXRlSWQ6IG51bWJlciwgaXNFZGl0PzogYm9vbGVhbik6IE9ic2VydmFibGU8U2l0ZUludGVyZmFjZT4ge1xuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZmV0Y2goQVBJLlNJVEUucmVwbGFjZSgnOnNpdGVJZCcsIFN0cmluZyhzaXRlSWQpKSwgbnVsbCwgZmFsc2UpO1xuICB9XG5cbiAgcHVibGljIGdldERldmljZVR5cGVzKHNpdGVJZDogbnVtYmVyIHwgc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmdbXT4ge1xuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZmV0Y2goQVBJLkRFVklDRV9UWVBFUy5yZXBsYWNlKCc6c2l0ZUlkJywgU3RyaW5nKHNpdGVJZCkpLCBudWxsLCB0cnVlKVxuICAgIC8vICAgLnBpcGUoXG4gICAgLy8gICAgIG1hcCgodHlwZXM6IHN0cmluZ1tdKSA9PiB7XG4gICAgLy8gICAgICAgICAvLyB0aGlzLmRldmljZVR5cGVzID0gdHlwZXMpXG4gICAgLy8gICAgIH0pXG4gICAgLy8gKTtcbiAgICAvLyAgIC5waXBlKHRoaXMuaGFuZGxlRXJyb3IoZmFsc2UsIHRydWUpKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRTaXRlRGVmYXVsdHMoc2l0ZUlkOiBudW1iZXIsIGRpcmVjdEFjY2VzczogYm9vbGVhbiwgc2hhcmVkTGluZVNpdGVJZHM/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFNpdGVEZWZhdWx0cz4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IHsgZGlyZWN0QWNjZXNzOiBkaXJlY3RBY2Nlc3MgfTtcbiAgICAvLyBpZiAoc2hhcmVkTGluZVNpdGVJZHMpIHtcbiAgICAvLyAgIHBhcmFtc1snc2hhcmVkTGluZVNpdGVJZHMnXSA9IHNoYXJlZExpbmVTaXRlSWRzO1xuICAgIC8vIH1cbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmZldGNoKEFQSS5TSVRFX1NFVFRJTkdTLnJlcGxhY2UoJzpzaXRlSWQnLCBTdHJpbmcoc2l0ZUlkKSksIHBhcmFtcylcbiAgICAvLyAgIC5waXBlKG1hcCgoc2l0ZURlZmF1bHRzOiBTaXRlVGVtcGxhdGVJbnRlcmZhY2UpID0+IHtcbiAgICAvLyAgICAgLy8gdGhpcy5zaXRlRGVmYXVsdHMgPSBuZXcgU2l0ZURlZmF1bHRzKHNpdGVEZWZhdWx0cywgISFzaGFyZWRMaW5lU2l0ZUlkcyk7XG4gICAgLy8gICAgIC8vIGNvbnN0IGNvcGllZFNpdGVEZWZhdWx0cyA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoc2l0ZURlZmF1bHRzKSk7XG4gICAgLy8gICAgIC8vIHRoaXMub3JpZ2luYWxTaXRlRGVmYXVsdHMgPSBuZXcgU2l0ZURlZmF1bHRzKGNvcGllZFNpdGVEZWZhdWx0cywgISFzaGFyZWRMaW5lU2l0ZUlkcyk7XG4gICAgLy8gICB9KSk7XG4gICAgLy8gICAucGlwZSh0aGlzLmhhbmRsZUVycm9yKHRydWUsIHRydWUpKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRWb2ljZU1haWxVc2VyVGVtcGxhdGVzKHNpdGVJZDogbnVtYmVyKSB7XG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5mZXRjaChBUEkuVk1fVVNFUl9URU1QTEFURVMucmVwbGFjZSgnOnNpdGVJZCcsIFN0cmluZyhzaXRlSWQpKSwgbnVsbCwgdHJ1ZSlcbiAgICAgIC5waXBlKG1hcCgodGVtcGxhdGVzOiBzdHJpbmdbXSkgPT4ge1xuICAgICAgICAvLyB0aGlzLnZvaWNlTWFpbFRlbXBsYXRlcyA9IHRlbXBsYXRlcztcbiAgICAgIH0pKTtcbiAgICAvLyAgIC5waXBlKHRoaXMuaGFuZGxlRXJyb3IoZmFsc2UsIHRydWUpKTtcbiAgfVxuXG4gIHB1YmxpYyBmZXRjaEFsbFVzZXJUZW1wbGF0ZXMoc2l0ZUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPFVzZXJUZW1wbGF0ZUludGVyZmFjZVtdPiB7XG4gICAgY29uc3QgcGFyYW1zID0ge1xuICAgICAgc2l0ZUlkOiBzaXRlSWQsXG4gICAgfTtcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmZldGNoKEFQSS5VU0VSX1RFTVBMQVRFU19VUExPQURfTElTVCwgcGFyYW1zKVxuICAgICAgLnBpcGUodGFwKChyZXN1bHQ6IFVzZXJUZW1wbGF0ZUludGVyZmFjZVtdKSA9PiB7XG4gICAgICAgIHRoaXMudGVtcGxhdGVzTGlzdFN1YmplY3QkLm5leHQocmVzdWx0KTtcbiAgICAgIH0pKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRVc2VyVGVtcGxhdGVUb2tlbihpZDogc3RyaW5nLCBjdXN0b21lcklkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZmV0Y2goQVBJLlVTRVJfVEVNUExBVEVfVE9LRU4ucmVwbGFjZSgnOmN1c3RvbWVySWQnLCBjdXN0b21lcklkKS5yZXBsYWNlKCc6aWQnLCBpZCkpXG4gICAgLy8gLnBpcGUodGhpcy5oYW5kbGVFcnJvcihmYWxzZSwgdHJ1ZSkpO1xuICB9XG5cbiAgcHVibGljIGdldEF2YWlsYWJsZURuSW5SYW5nZXMoc2l0ZUlkOiBzdHJpbmcsIHBhcmFtczogYW55KTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmZldGNoKEFQSS5BVkFJTEFCTEVfRE5fSU5fUkFOR0VTLnJlcGxhY2UoJzpzaXRlSWQnLCBzaXRlSWQpLCBwYXJhbXMpO1xuICB9XG5cbiAgcHVibGljIGdldExkYXBVc2VycyhzaXRlSWQ6IHN0cmluZywgcGFyYW1zOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZmV0Y2goQVBJLkxEQVBfVVNFUlMucmVwbGFjZSgnOnNpdGVJZCcsIHNpdGVJZCksIHBhcmFtcyk7XG4gIH1cblxuICBwdWJsaWMgY2hlY2tVc2VySWRFeGlzdGluZyhzaXRlSWQ6IHN0cmluZywgdXNlcklkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZmV0Y2goQVBJLlVTRVJfQ0hFQ0tfSURfRVhJU1RJTkcucmVwbGFjZSgnOnNpdGVJZCcsIHNpdGVJZCkucmVwbGFjZSgnOnVzZXJJZCcsIHVzZXJJZCkpO1xuICB9XG5cbiAgcHVibGljIHNhdmVUZW1wbGF0ZVVzZXIodXNlcjogYW55LCB0ZW1wbGF0ZUlkOiBzdHJpbmcsIHNpdGVJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnBvc3QoQVBJLkNSRUFURV9ORVdfVVNFUl9GUk9NX1RFTVBMQVRFLCB1c2VyLCB7IHNpdGVJZDogc2l0ZUlkLCB0ZW1wbGF0ZUlkOiB0ZW1wbGF0ZUlkIH0pO1xuICB9XG5cbiAgcHVibGljIGdldERldmljZURlZmF1bHRzKHNpdGVJZDogc3RyaW5nLCBkZXZpY2VUeXBlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPERldmljZURlZmF1bHRzSW50ZXJmYWNlPiB7XG4gICAgY29uc3QgZW5jb2RlZFR5cGUgPSBlbmNvZGVVUklDb21wb25lbnQoZGV2aWNlVHlwZSk7XG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5mZXRjaChcbiAgICAgIEFQSS5ERVZJQ0VfREVGQVVMVFMucmVwbGFjZSgnOnNpdGVJZCcsIHNpdGVJZCkucmVwbGFjZSgnOmRldmljZVR5cGUnLCBlbmNvZGVkVHlwZSlcbiAgICApO1xuICB9XG59XG4iXX0=
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1jcmVhdGlvbi1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy9zaGFyZWQvc2VydmljZXMvdXNlci1jcmVhdGlvbi1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQWMsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBR3ZFLDhDQUE4QztBQUM5QyxPQUFPLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFHaEQsTUFBTSxPQUFPLHNCQUFzQjtJQVdqQztRQVRRLGNBQVMsR0FBVyxFQUFFLENBQUM7UUFDZCxzQkFBaUIsR0FBRyxJQUFJLGVBQWUsQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUNyRCxlQUFVLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBRWxELDBCQUFxQixHQUFHLElBQUksZUFBZSxDQUEwQixFQUFFLENBQUMsQ0FBQztRQUMxRSxtQkFBYyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUVuRSxlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRXhCLENBQUM7SUFFVixZQUFZO0lBRW5CLENBQUM7SUFFTSwwQkFBMEIsQ0FBQyxVQUFrQjtRQUNsRCxNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsbUNBQW1DLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUMvRixPQUFP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QUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNqSCxDQUFDO0lBRU0sZ0JBQWdCLENBQUMsSUFBUyxFQUFFLFVBQWtCLEVBQUUsTUFBYztRQUNuRSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyw2QkFBNkIsRUFBRSxJQUFJLEVBQUUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ25ILENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxNQUFjLEVBQUUsVUFBa0I7UUFDekQsTUFBTSxXQUFXLEdBQUcsa0JBQWtCLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDbkQsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FDMUIsR0FBRyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsV0FBVyxDQUFDLENBQ25GLENBQUM7SUFDSixDQUFDOztvSEE3SFUsc0JBQXNCO3dIQUF0QixzQkFBc0I7NEZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZm9ya0pvaW4sIG1hcCwgT2JzZXJ2YWJsZSwgdGFwIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgU2l0ZSwgU2l0ZURlZmF1bHRzLCBTaXRlSW50ZXJmYWNlLCBTaXRlVGVtcGxhdGVJbnRlcmZhY2UgfSBmcm9tIFwiLi4vLi4vY2xhc3Nlcy9zaXRlXCI7XHJcbmltcG9ydCB7IERldmljZURlZmF1bHRzSW50ZXJmYWNlLCBVc2VyVGVtcGxhdGVJbnRlcmZhY2UgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy91c2VyLWNyZWF0aW9uLXdpemFyZC5pbnRlcmZhY2VzXCI7XHJcbi8vIGltcG9ydCB7IEFQSVNlcnZpY2UgfSBmcm9tIFwiLi9hcGkuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBBUEksIE1BWF9JTlRFR0VSIH0gZnJvbSBcIi4uLy4uL2FwcC5jb25zdGFudHNcIjtcclxuaW1wb3J0IHsgQVBJU2VydmljZSB9IGZyb20gXCIuLi9hcGkvYXBpLnNlcnZpY2VcIjtcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIFVzZXJDcmVhdGlvbkFwaVNlcnZpY2Uge1xyXG5cclxuICBwcml2YXRlIF9hbGxTaXRlczogU2l0ZVtdID0gW107XHJcbiAgcHJpdmF0ZSByZWFkb25seSBzaXRlc0xpc3RTdWJqZWN0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U2l0ZVtdPihbXSk7XHJcbiAgcHVibGljIHJlYWRvbmx5IHNpdGVzTGlzdCQgPSB0aGlzLnNpdGVzTGlzdFN1YmplY3QkLmFzT2JzZXJ2YWJsZSgpO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IHRlbXBsYXRlc0xpc3RTdWJqZWN0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VXNlclRlbXBsYXRlSW50ZXJmYWNlW10+KFtdKTtcclxuICBwdWJsaWMgcmVhZG9ubHkgdGVtcGxhdGVzTGlzdCQgPSB0aGlzLnRlbXBsYXRlc0xpc3RTdWJqZWN0JC5hc09ic2VydmFibGUoKTtcclxuXHJcbiAgcHJpdmF0ZSBhcGlTZXJ2aWNlID0gaW5qZWN0KEFQSVNlcnZpY2UpO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBwdWJsaWMgZ2V0U2l0ZXNMaXN0KCkge1xyXG5cclxuICB9XHJcblxyXG4gIHB1YmxpYyBjaGVja0NvbnRyb2xIdWJJbnRlZ3JhdGlvbihjdXN0b21lcklkOiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IFVSTCA9IEFQSS5XRUJFWF9DSEVDS19DT05UUk9MX0hVQl9JTlRFR1JBVElPTi5yZXBsYWNlKCc6Y3VzdG9tZXJJZCcsIFN0cmluZyhjdXN0b21lcklkKSk7XHJcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmZldGNoKFVSTCk7XHJcbiAgICAvLyAucGlwZSh0aGlzLmhhbmRsZUVycm9yKHRydWUsIHRydWUpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRBbGxDdXN0b21lclNpdGVzKGN1c3RvbWVySWQ6IHN0cmluZywgb25seVNpdGVzV2l0aExvY2F0aW9uPzogYm9vbGVhbik6IE9ic2VydmFibGU8U2l0ZVtdPiB7XHJcbiAgICBjb25zdCBwYXJhbXM6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7fTtcclxuICAgIGlmIChvbmx5U2l0ZXNXaXRoTG9jYXRpb24pIHtcclxuICAgICAgcGFyYW1zWydvbmx5U2l0ZXNXaXRoTG9jYXRpb24nXSA9ICd0cnVlJztcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZmV0Y2hQYWdpbmF0aW9uKEFQSS5TSVRFUy5yZXBsYWNlKCc6Y3VzdG9tZXJJZCcsIFN0cmluZyhjdXN0b21lcklkKSksIE1BWF9JTlRFR0VSLCAwLCBwYXJhbXMsIGZhbHNlKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICB0YXAoKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICAvLyB0aGlzLl9hbGxTaXRlcyA9IFtdO1xyXG4gICAgICAgICAgLy8gaWYgKHJlcy5wYWdlRGF0YSAmJiByZXMucGFnZURhdGEubGVuZ3RoKSB7XHJcbiAgICAgICAgICAvLyB0aGlzLmFzc2lnbkFsbFNpdGVzKGN1c3RvbWVySWQsIHJlcy5wYWdlRGF0YSk7XHJcbiAgICAgICAgICAvLyB9XHJcbiAgICAgICAgICAvLyB0aGlzLmFsbEN1c3RvbWVyU2l0ZXMkLm5leHQodHJ1ZSk7XHJcbiAgICAgICAgICAvLyByZXR1cm4gdGhpcy5fYWxsU2l0ZXM7XHJcbiAgICAgICAgICB0aGlzLnNpdGVzTGlzdFN1YmplY3QkLm5leHQoWy4uLnJlcy5wYWdlRGF0YV0pO1xyXG4gICAgICAgIH0pXHJcbiAgICAgIClcclxuICAgIC8vICAgLnBpcGUodGhpcy5oYW5kbGVFcnJvcih0cnVlKSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U2l0ZUFsbERhdGEoc2l0ZUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgLy8gdGhpcy5kYXRhUGVuZGluZyA9IHRydWU7XHJcbiAgICByZXR1cm4gZm9ya0pvaW4oW1xyXG4gICAgICB0aGlzLmdldFNpdGUoc2l0ZUlkKSxcclxuICAgICAgdGhpcy5nZXRTaXRlRGVmYXVsdHMoc2l0ZUlkLCBmYWxzZSksXHJcbiAgICAgIC8vIHRoaXMuZ2V0RGV2aWNlVHlwZXMoc2l0ZUlkKSxcclxuICAgICAgLy8gdGhpcy5nZXRWb2ljZU1haWxVc2VyVGVtcGxhdGVzKHNpdGVJZClcclxuICAgIF0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFNpdGUoc2l0ZUlkOiBudW1iZXIsIGlzRWRpdD86IGJvb2xlYW4pOiBPYnNlcnZhYmxlPFNpdGVJbnRlcmZhY2U+IHtcclxuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZmV0Y2goQVBJLlNJVEUucmVwbGFjZSgnOnNpdGVJZCcsIFN0cmluZyhzaXRlSWQpKSwgbnVsbCwgZmFsc2UpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldERldmljZVR5cGVzKHNpdGVJZDogbnVtYmVyIHwgc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmdbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5mZXRjaChBUEkuREVWSUNFX1RZUEVTLnJlcGxhY2UoJzpzaXRlSWQnLCBTdHJpbmcoc2l0ZUlkKSksIG51bGwsIHRydWUpXHJcbiAgICAvLyAgIC5waXBlKFxyXG4gICAgLy8gICAgIG1hcCgodHlwZXM6IHN0cmluZ1tdKSA9PiB7XHJcbiAgICAvLyAgICAgICAgIC8vIHRoaXMuZGV2aWNlVHlwZXMgPSB0eXBlcylcclxuICAgIC8vICAgICB9KVxyXG4gICAgLy8gKTtcclxuICAgIC8vICAgLnBpcGUodGhpcy5oYW5kbGVFcnJvcihmYWxzZSwgdHJ1ZSkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFNpdGVEZWZhdWx0cyhzaXRlSWQ6IG51bWJlciwgZGlyZWN0QWNjZXNzOiBib29sZWFuLCBzaGFyZWRMaW5lU2l0ZUlkcz86IHN0cmluZyk6IE9ic2VydmFibGU8U2l0ZURlZmF1bHRzPiB7XHJcbiAgICBjb25zdCBwYXJhbXMgPSB7IGRpcmVjdEFjY2VzczogZGlyZWN0QWNjZXNzIH07XHJcbiAgICAvLyBpZiAoc2hhcmVkTGluZVNpdGVJZHMpIHtcclxuICAgIC8vICAgcGFyYW1zWydzaGFyZWRMaW5lU2l0ZUlkcyddID0gc2hhcmVkTGluZVNpdGVJZHM7XHJcbiAgICAvLyB9XHJcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmZldGNoKEFQSS5TSVRFX1NFVFRJTkdTLnJlcGxhY2UoJzpzaXRlSWQnLCBTdHJpbmcoc2l0ZUlkKSksIHBhcmFtcylcclxuICAgIC8vICAgLnBpcGUobWFwKChzaXRlRGVmYXVsdHM6IFNpdGVUZW1wbGF0ZUludGVyZmFjZSkgPT4ge1xyXG4gICAgLy8gICAgIC8vIHRoaXMuc2l0ZURlZmF1bHRzID0gbmV3IFNpdGVEZWZhdWx0cyhzaXRlRGVmYXVsdHMsICEhc2hhcmVkTGluZVNpdGVJZHMpO1xyXG4gICAgLy8gICAgIC8vIGNvbnN0IGNvcGllZFNpdGVEZWZhdWx0cyA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoc2l0ZURlZmF1bHRzKSk7XHJcbiAgICAvLyAgICAgLy8gdGhpcy5vcmlnaW5hbFNpdGVEZWZhdWx0cyA9IG5ldyBTaXRlRGVmYXVsdHMoY29waWVkU2l0ZURlZmF1bHRzLCAhIXNoYXJlZExpbmVTaXRlSWRzKTtcclxuICAgIC8vICAgfSkpO1xyXG4gICAgLy8gICAucGlwZSh0aGlzLmhhbmRsZUVycm9yKHRydWUsIHRydWUpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRWb2ljZU1haWxVc2VyVGVtcGxhdGVzKHNpdGVJZDogbnVtYmVyKSB7XHJcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmZldGNoKEFQSS5WTV9VU0VSX1RFTVBMQVRFUy5yZXBsYWNlKCc6c2l0ZUlkJywgU3RyaW5nKHNpdGVJZCkpLCBudWxsLCB0cnVlKVxyXG4gICAgICAucGlwZShtYXAoKHRlbXBsYXRlczogc3RyaW5nW10pID0+IHtcclxuICAgICAgICAvLyB0aGlzLnZvaWNlTWFpbFRlbXBsYXRlcyA9IHRlbXBsYXRlcztcclxuICAgICAgfSkpO1xyXG4gICAgLy8gICAucGlwZSh0aGlzLmhhbmRsZUVycm9yKGZhbHNlLCB0cnVlKSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZmV0Y2hBbGxVc2VyVGVtcGxhdGVzKHNpdGVJZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxVc2VyVGVtcGxhdGVJbnRlcmZhY2VbXT4ge1xyXG4gICAgY29uc3QgcGFyYW1zID0ge1xyXG4gICAgICBzaXRlSWQ6IHNpdGVJZCxcclxuICAgIH07XHJcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmZldGNoKEFQSS5VU0VSX1RFTVBMQVRFU19VUExPQURfTElTVCwgcGFyYW1zKVxyXG4gICAgICAucGlwZSh0YXAoKHJlc3VsdDogVXNlclRlbXBsYXRlSW50ZXJmYWNlW10pID0+IHtcclxuICAgICAgICB0aGlzLnRlbXBsYXRlc0xpc3RTdWJqZWN0JC5uZXh0KHJlc3VsdCk7XHJcbiAgICAgIH0pKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRVc2VyVGVtcGxhdGVUb2tlbihpZDogc3RyaW5nLCBjdXN0b21lcklkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5mZXRjaChBUEkuVVNFUl9URU1QTEFURV9UT0tFTi5yZXBsYWNlKCc6Y3VzdG9tZXJJZCcsIGN1c3RvbWVySWQpLnJlcGxhY2UoJzppZCcsIGlkKSlcclxuICAgIC8vIC5waXBlKHRoaXMuaGFuZGxlRXJyb3IoZmFsc2UsIHRydWUpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRBdmFpbGFibGVEbkluUmFuZ2VzKHNpdGVJZDogc3RyaW5nLCBwYXJhbXM6IGFueSk6IGFueSB7XHJcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmZldGNoKEFQSS5BVkFJTEFCTEVfRE5fSU5fUkFOR0VTLnJlcGxhY2UoJzpzaXRlSWQnLCBzaXRlSWQpLCBwYXJhbXMpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldExkYXBVc2VycyhzaXRlSWQ6IHN0cmluZywgcGFyYW1zOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5mZXRjaChBUEkuTERBUF9VU0VSUy5yZXBsYWNlKCc6c2l0ZUlkJywgc2l0ZUlkKSwgcGFyYW1zKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjaGVja1VzZXJJZEV4aXN0aW5nKHNpdGVJZDogc3RyaW5nLCB1c2VySWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmZldGNoKEFQSS5VU0VSX0NIRUNLX0lEX0VYSVNUSU5HLnJlcGxhY2UoJzpzaXRlSWQnLCBzaXRlSWQpLnJlcGxhY2UoJzp1c2VySWQnLCB1c2VySWQpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzYXZlVGVtcGxhdGVVc2VyKHVzZXI6IGFueSwgdGVtcGxhdGVJZDogc3RyaW5nLCBzaXRlSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnBvc3QoQVBJLkNSRUFURV9ORVdfVVNFUl9GUk9NX1RFTVBMQVRFLCB1c2VyLCB7IHNpdGVJZDogc2l0ZUlkLCB0ZW1wbGF0ZUlkOiB0ZW1wbGF0ZUlkIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldERldmljZURlZmF1bHRzKHNpdGVJZDogc3RyaW5nLCBkZXZpY2VUeXBlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPERldmljZURlZmF1bHRzSW50ZXJmYWNlPiB7XHJcbiAgICBjb25zdCBlbmNvZGVkVHlwZSA9IGVuY29kZVVSSUNvbXBvbmVudChkZXZpY2VUeXBlKTtcclxuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZmV0Y2goXHJcbiAgICAgIEFQSS5ERVZJQ0VfREVGQVVMVFMucmVwbGFjZSgnOnNpdGVJZCcsIHNpdGVJZCkucmVwbGFjZSgnOmRldmljZVR5cGUnLCBlbmNvZGVkVHlwZSlcclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -16,4 +16,4 @@ export const getSavableData = (model, exclude) => {
16
16
  return result;
17
17
  }, {});
18
18
  };
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvdXNlci1jcmVhdGlvbi9zcmMvc2hhcmVkL3NlcnZpY2VzL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDLEtBQVUsRUFBRSxPQUF1QixFQUFFLEVBQUU7SUFDcEUsSUFBSSxNQUFNLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFO1FBQzdCLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUM7S0FDcEU7SUFDRCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFXLEVBQUUsR0FBRyxFQUFFLEVBQUU7UUFDeEMsSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLFlBQVksS0FBSyxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsRUFBRTtZQUNwRixNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUM7U0FDcEU7YUFBTSxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsWUFBWSxNQUFNLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLGNBQWMsRUFBRTtZQUNwRSxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQzNDO2FBQU07WUFDTCxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQzFCO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ1QsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGdldFNhdmFibGVEYXRhID0gKG1vZGVsOiBhbnksIGV4Y2x1ZGU/OiBBcnJheTxzdHJpbmc+KSA9PiB7XG4gIGxldCByZXN1bHQgPSBPYmplY3Qua2V5cyhtb2RlbCk7XG4gIGlmIChleGNsdWRlICYmIGV4Y2x1ZGUubGVuZ3RoKSB7XG4gICAgcmVzdWx0ID0gcmVzdWx0LmZpbHRlcihrZXkgPT4gIWV4Y2x1ZGUuc29tZShpdGVtID0+IGl0ZW0gPT09IGtleSkpO1xuICB9XG4gIHJldHVybiByZXN1bHQucmVkdWNlKChyZXN1bHQ6IGFueSwga2V5KSA9PiB7XG4gICAgaWYgKG1vZGVsW2tleV0gaW5zdGFuY2VvZiBBcnJheSAmJiBtb2RlbFtrZXldLmxlbmd0aCAmJiBtb2RlbFtrZXldWzBdLmdldFNhdmFibGVEYXRhKSB7XG4gICAgICByZXN1bHRba2V5XSA9IG1vZGVsW2tleV0ubWFwKChpdGVtOiBhbnkpID0+IGl0ZW0uZ2V0U2F2YWJsZURhdGEoKSk7XG4gICAgfSBlbHNlIGlmIChtb2RlbFtrZXldIGluc3RhbmNlb2YgT2JqZWN0ICYmIG1vZGVsW2tleV0uZ2V0U2F2YWJsZURhdGEpIHtcbiAgICAgIHJlc3VsdFtrZXldID0gbW9kZWxba2V5XS5nZXRTYXZhYmxlRGF0YSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXN1bHRba2V5XSA9IG1vZGVsW2tleV07XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH0sIHt9KTtcbn07Il19
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvdXNlci1jcmVhdGlvbi9zcmMvc2hhcmVkL3NlcnZpY2VzL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDLEtBQVUsRUFBRSxPQUF1QixFQUFFLEVBQUU7SUFDcEUsSUFBSSxNQUFNLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFO1FBQzdCLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUM7S0FDcEU7SUFDRCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFXLEVBQUUsR0FBRyxFQUFFLEVBQUU7UUFDeEMsSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLFlBQVksS0FBSyxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsRUFBRTtZQUNwRixNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUM7U0FDcEU7YUFBTSxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsWUFBWSxNQUFNLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLGNBQWMsRUFBRTtZQUNwRSxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQzNDO2FBQU07WUFDTCxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQzFCO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ1QsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGdldFNhdmFibGVEYXRhID0gKG1vZGVsOiBhbnksIGV4Y2x1ZGU/OiBBcnJheTxzdHJpbmc+KSA9PiB7XHJcbiAgbGV0IHJlc3VsdCA9IE9iamVjdC5rZXlzKG1vZGVsKTtcclxuICBpZiAoZXhjbHVkZSAmJiBleGNsdWRlLmxlbmd0aCkge1xyXG4gICAgcmVzdWx0ID0gcmVzdWx0LmZpbHRlcihrZXkgPT4gIWV4Y2x1ZGUuc29tZShpdGVtID0+IGl0ZW0gPT09IGtleSkpO1xyXG4gIH1cclxuICByZXR1cm4gcmVzdWx0LnJlZHVjZSgocmVzdWx0OiBhbnksIGtleSkgPT4ge1xyXG4gICAgaWYgKG1vZGVsW2tleV0gaW5zdGFuY2VvZiBBcnJheSAmJiBtb2RlbFtrZXldLmxlbmd0aCAmJiBtb2RlbFtrZXldWzBdLmdldFNhdmFibGVEYXRhKSB7XHJcbiAgICAgIHJlc3VsdFtrZXldID0gbW9kZWxba2V5XS5tYXAoKGl0ZW06IGFueSkgPT4gaXRlbS5nZXRTYXZhYmxlRGF0YSgpKTtcclxuICAgIH0gZWxzZSBpZiAobW9kZWxba2V5XSBpbnN0YW5jZW9mIE9iamVjdCAmJiBtb2RlbFtrZXldLmdldFNhdmFibGVEYXRhKSB7XHJcbiAgICAgIHJlc3VsdFtrZXldID0gbW9kZWxba2V5XS5nZXRTYXZhYmxlRGF0YSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmVzdWx0W2tleV0gPSBtb2RlbFtrZXldO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9LCB7fSk7XHJcbn07Il19
@@ -6,9 +6,9 @@ export class AppLoaderComponent {
6
6
  }
7
7
  }
8
8
  AppLoaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AppLoaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
9
- AppLoaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: AppLoaderComponent, selector: "app-loader", ngImport: i0, template: "<div class=\"overlay\">\n <mat-progress-spinner\n class=\"page-spinner\"\n mode=\"indeterminate\"\n [diameter]=\"70\"\n strokeWidth=\"3\"></mat-progress-spinner>\n</div>\n", styles: [".overlay{position:fixed;width:100%;height:100%;inset:0;background-color:#fff3;z-index:200;justify-content:center;align-items:center}\n"], dependencies: [{ kind: "component", type: i1.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "diameter", "strokeWidth", "mode", "value"], exportAs: ["matProgressSpinner"] }], encapsulation: i0.ViewEncapsulation.None });
9
+ AppLoaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: AppLoaderComponent, selector: "app-loader", ngImport: i0, template: "<div class=\"overlay\">\r\n <mat-progress-spinner\r\n class=\"page-spinner\"\r\n mode=\"indeterminate\"\r\n [diameter]=\"70\"\r\n strokeWidth=\"3\"></mat-progress-spinner>\r\n</div>\r\n", styles: [".overlay{position:fixed;width:100%;height:100%;inset:0;background-color:#fff3;z-index:200;justify-content:center;align-items:center}\n"], dependencies: [{ kind: "component", type: i1.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "diameter", "strokeWidth", "mode", "value"], exportAs: ["matProgressSpinner"] }], encapsulation: i0.ViewEncapsulation.None });
10
10
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AppLoaderComponent, decorators: [{
11
11
  type: Component,
12
- args: [{ selector: 'app-loader', encapsulation: ViewEncapsulation.None, template: "<div class=\"overlay\">\n <mat-progress-spinner\n class=\"page-spinner\"\n mode=\"indeterminate\"\n [diameter]=\"70\"\n strokeWidth=\"3\"></mat-progress-spinner>\n</div>\n", styles: [".overlay{position:fixed;width:100%;height:100%;inset:0;background-color:#fff3;z-index:200;justify-content:center;align-items:center}\n"] }]
12
+ args: [{ selector: 'app-loader', encapsulation: ViewEncapsulation.None, template: "<div class=\"overlay\">\r\n <mat-progress-spinner\r\n class=\"page-spinner\"\r\n mode=\"indeterminate\"\r\n [diameter]=\"70\"\r\n strokeWidth=\"3\"></mat-progress-spinner>\r\n</div>\r\n", styles: [".overlay{position:fixed;width:100%;height:100%;inset:0;background-color:#fff3;z-index:200;justify-content:center;align-items:center}\n"] }]
13
13
  }], ctorParameters: function () { return []; } });
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWxvYWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy91dGlscy9hcHAtbG9hZGVyL2FwcC1sb2FkZXIudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvdXNlci1jcmVhdGlvbi9zcmMvdXRpbHMvYXBwLWxvYWRlci9hcHAtbG9hZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQVE3RCxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCO0lBQ0EsQ0FBQzs7Z0hBRlUsa0JBQWtCO29HQUFsQixrQkFBa0Isa0RDUi9CLDBMQU9BOzRGRENhLGtCQUFrQjtrQkFOOUIsU0FBUzsrQkFDRSxZQUFZLGlCQUdQLGlCQUFpQixDQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1sb2FkZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vYXBwLWxvYWRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2FwcC1sb2FkZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgQXBwTG9hZGVyQ29tcG9uZW50IHtcbiAgY29uc3RydWN0b3IoKSB7XG4gIH1cblxufVxuIiwiPGRpdiBjbGFzcz1cIm92ZXJsYXlcIj5cbiAgPG1hdC1wcm9ncmVzcy1zcGlubmVyXG4gICAgY2xhc3M9XCJwYWdlLXNwaW5uZXJcIlxuICAgIG1vZGU9XCJpbmRldGVybWluYXRlXCJcbiAgICBbZGlhbWV0ZXJdPVwiNzBcIlxuICAgIHN0cm9rZVdpZHRoPVwiM1wiPjwvbWF0LXByb2dyZXNzLXNwaW5uZXI+XG48L2Rpdj5cbiJdfQ==
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWxvYWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy91dGlscy9hcHAtbG9hZGVyL2FwcC1sb2FkZXIudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvdXNlci1jcmVhdGlvbi9zcmMvdXRpbHMvYXBwLWxvYWRlci9hcHAtbG9hZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQVE3RCxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCO0lBQ0EsQ0FBQzs7Z0hBRlUsa0JBQWtCO29HQUFsQixrQkFBa0Isa0RDUi9CLHdNQU9BOzRGRENhLGtCQUFrQjtrQkFOOUIsU0FBUzsrQkFDRSxZQUFZLGlCQUdQLGlCQUFpQixDQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1sb2FkZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hcHAtbG9hZGVyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9hcHAtbG9hZGVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFwcExvYWRlckNvbXBvbmVudCB7XHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwib3ZlcmxheVwiPlxyXG4gIDxtYXQtcHJvZ3Jlc3Mtc3Bpbm5lclxyXG4gICAgY2xhc3M9XCJwYWdlLXNwaW5uZXJcIlxyXG4gICAgbW9kZT1cImluZGV0ZXJtaW5hdGVcIlxyXG4gICAgW2RpYW1ldGVyXT1cIjcwXCJcclxuICAgIHN0cm9rZVdpZHRoPVwiM1wiPjwvbWF0LXByb2dyZXNzLXNwaW5uZXI+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -144,4 +144,4 @@ export function buildSavableEndUser(endUser, lines, devices, deviceProfiles, for
144
144
  }
145
145
  return user;
146
146
  }
147
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtc2F2YWJsZS1lbmQtdXNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy91dGlscy9idWlsZC1zYXZhYmxlLWVuZC11c2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHO0lBQzlCLEtBQUssRUFBRSxPQUFPO0lBQ2QsT0FBTyxFQUFFLFNBQVM7SUFDbEIsUUFBUSxFQUFFLFVBQVU7SUFDcEIsT0FBTyxFQUFFLFNBQVM7Q0FDWixDQUFDO0FBb0JYLFNBQVMsU0FBUyxDQUFJLEtBQVE7SUFDMUIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQU0sQ0FBQztBQUNsRCxDQUFDO0FBRUQsU0FBUyxrQkFBa0IsQ0FBQyxLQUFjO0lBQ3RDLElBQUksS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssTUFBTSxFQUFFO1FBQ3BDLE9BQU8sTUFBTSxDQUFDO0tBQ2pCO0lBQ0QsSUFBSSxLQUFLLEtBQUssS0FBSyxJQUFJLEtBQUssS0FBSyxPQUFPLEVBQUU7UUFDdEMsT0FBTyxPQUFPLENBQUM7S0FDbEI7SUFDRCxPQUFPLEtBQUssSUFBSSxJQUFJLElBQUksS0FBSyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDOUQsQ0FBQztBQUVELFNBQVMsZ0JBQWdCLENBQUMsS0FBYztJQUNwQyxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUU7UUFDaEIsT0FBTyxNQUFNLENBQUM7S0FDakI7SUFDRCxJQUFJLEtBQUssS0FBSyxLQUFLLEVBQUU7UUFDakIsT0FBTyxPQUFPLENBQUM7S0FDbEI7SUFDRCxPQUFPLEtBQUssSUFBSSxJQUFJLENBQUMsQ0FB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XG4gICAgRGV2aWNlSW50ZXJmYWNlLFxuICAgIEVuZFVzZXJJbnRlcmZhY2UsXG4gICAgTGluZUFzc29jaWF0aW9uLFxuICAgIExpbmVJbnRlcmZhY2UsXG4gICAgVXNlckRldGFpbHNGb3JtLFxufSBmcm9tICcuLi9pbnRlcmZhY2VzL3VzZXItY3JlYXRpb24td2l6YXJkLmludGVyZmFjZXMnO1xuXG5leHBvcnQgY29uc3QgRU5USVRZX0NIQU5HRV9UWVBFID0ge1xuICAgIEFEREVEOiAnYWRkZWQnLFxuICAgIFVQREFURUQ6ICd1cGRhdGVkJyxcbiAgICBFWElTVElORzogJ2V4aXN0aW5nJyxcbiAgICBSRU1PVkVEOiAncmVtb3ZlZCcsXG59IGFzIGNvbnN0O1xuXG5leHBvcnQgaW50ZXJmYWNlIENhbGxJbmZvRGlzcGxheVBheWxvYWQge1xuICAgIGNhbGxlck5hbWU/OiBzdHJpbmcgfCBudWxsO1xuICAgIGNhbGxlck51bWJlcj86IHN0cmluZyB8IG51bGw7XG4gICAgcmVkaXJlY3RlZE51bWJlcj86IHN0cmluZyB8IG51bGw7XG4gICAgZGlhbGVkTnVtYmVyPzogc3RyaW5nIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaWRQYXR0ZXJuUGF5bG9hZCB7XG4gICAgY2FsbGVkUGFydHlUcmFuc2Zvcm1hdGlvbk1hc2s/OiBzdHJpbmcgfCBudWxsO1xuICAgIHBhdHRlcm4/OiBzdHJpbmcgfCBudWxsO1xuICAgIFtrZXk6IHN0cmluZ106IHVua25vd247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnVpbGRTYXZhYmxlRW5kVXNlck9wdGlvbnMge1xuICAgIHJlc29sdmVEZXZpY2VOYW1lPzogKGluZGV4OiBudW1iZXIsIGRldmljZTogRGV2aWNlSW50ZXJmYWNlKSA9PiBzdHJpbmc7XG4gICAgcmVzb2x2ZURldmljZVByb2ZpbGVOYW1lPzogKGluZGV4OiBudW1iZXIsIGRldmljZTogRGV2aWNlSW50ZXJmYWNlKSA9PiBzdHJpbmc7XG59XG5cbmZ1bmN0aW9uIGRlZXBDbG9uZTxUPih2YWx1ZTogVCk6IFQge1xuICAgIHJldHVybiBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHZhbHVlKSkgYXMgVDtcbn1cblxuZnVuY3Rpb24gdG9BcGlCb29sZWFuU3RyaW5nKHZhbHVlOiB1bmtub3duKTogc3RyaW5nIHtcbiAgICBpZiAodmFsdWUgPT09IHRydWUgfHwgdmFsdWUgPT09ICd0cnVlJykge1xuICAgICAgICByZXR1cm4gJ3RydWUnO1xuICAgIH1cbiAgICBpZiAodmFsdWUgPT09IGZhbHNlIHx8IHZhbHVlID09PSAnZmFsc2UnKSB7XG4gICAgICAgIHJldHVybiAnZmFsc2UnO1xuICAgIH1cbiAgICByZXR1cm4gdmFsdWUgPT0gbnVsbCB8fCB2YWx1ZSA9PT0gJycgPyAnJyA6IFN0cmluZyh2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIHRvQXBpU3RyaW5nVmFsdWUodmFsdWU6IHVua25vd24pOiBzdHJpbmcge1xuICAgIGlmICh2YWx1ZSA9PT0gdHJ1ZSkge1xuICAgICAgICByZXR1cm4gJ3RydWUnO1xuICAgIH1cbiAgICBpZiAodmFsdWUgPT09IGZhbHNlKSB7XG4gICAgICAgIHJldHVybiAnZmFsc2UnO1xuICAgIH1cbiAgICByZXR1cm4gdmFsdWUgPT0gbnVsbCA/ICcnIDogU3RyaW5nKHZhbHVlKTtcbn1cblxuZnVuY3Rpb24gbm9ybWFsaXplQ2FsbEluZm9EaXNwbGF5KFxuICAgIGNhbGxJbmZvRGlzcGxheTogdW5rbm93blxuKTogQ2FsbEluZm9EaXNwbGF5UGF5bG9hZCB8IG51bGwge1xuICAgIGlmICghY2FsbEluZm9EaXNwbGF5KSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIGNhbGxJbmZvRGlzcGxheSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHBhcnNlZCA9IEpTT04ucGFyc2UoY2FsbEluZm9EaXNwbGF5KTtcbiAgICAgICAgICAgIHJldHVybiBub3JtYWxpemVDYWxsSW5mb0Rpc3BsYXkocGFyc2VkKTtcbiAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAodHlwZW9mIGNhbGxJbmZvRGlzcGxheSAhPT0gJ29iamVjdCcpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIGNvbnN0IHNvdXJjZSA9IGNhbGxJbmZvRGlzcGxheSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgICByZXR1cm4ge1xuICAgICAgICBjYWxsZXJOYW1lOiBzb3VyY2VbJ2NhbGxlck5hbWUnXSAhPSBudWxsID8gdG9BcGlCb29sZWFuU3RyaW5nKHNvdXJjZVsnY2FsbGVyTmFtZSddKSA6IG51bGwsXG4gICAgICAgIGNhbGxlck51bWJlcjogc291cmNlWydjYWxsZXJOdW1iZXInXSAhPSBudWxsID8gdG9BcGlCb29sZWFuU3RyaW5nKHNvdXJjZVsnY2FsbGVyTnVtYmVyJ10pIDogbnVsbCxcbiAgICAgICAgcmVkaXJlY3RlZE51bWJlcjogc291cmNlWydyZWRpcmVjdGVkTnVtYmVyJ10gIT0gbnVsbCA/IHRvQXBpQm9vbGVhblN0cmluZyhzb3VyY2VbJ3JlZGlyZWN0ZWROdW1iZXInXSkgOiBudWxsLFxuICAgICAgICBkaWFsZWROdW1iZXI6IHNvdXJjZVsnZGlhbGVkTnVtYmVyJ10gIT0gbnVsbCA/IHRvQXBpQm9vbGVhblN0cmluZyhzb3VyY2VbJ2RpYWxlZE51bWJlciddKSA6IG51bGwsXG4gICAgfTtcbn1cblxuZnVuY3Rpb24gbm9ybWFsaXplRGlkUGF0dGVybihcbiAgICBkaWRQYXR0ZXJuOiB1bmtub3duLFxuICAgIGxpbmU/OiBMaW5lSW50ZXJmYWNlLFxuICAgIGRpcmVjdG9yeU51bWJlcj86IHN0cmluZ1xuKTogRGlkUGF0dGVyblBheWxvYWQgfCBudWxsIHtcbiAgICBpZiAoZGlkUGF0dGVybiAmJiB0eXBlb2YgZGlkUGF0dGVybiA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgcmV0dXJuIGRpZFBhdHRlcm4gYXMgRGlkUGF0dGVyblBheWxvYWQ7XG4gICAgfVxuICAgIGlmICh0eXBlb2YgZGlkUGF0dGVybiA9PT0gJ3N0cmluZycgJiYgZGlkUGF0dGVybi50cmltKCkpIHtcbiAgICAgICAgcmV0dXJuIHsgY2FsbGVkUGFydHlUcmFuc2Zvcm1hdGlvbk1hc2s6IGRpZFBhdHRlcm4gfTtcbiAgICB9XG4gICAgY29uc3QgZG4gPSBkaXJlY3RvcnlOdW1iZXIgfHwgbGluZT8uZGlyZWN0b3J5TnVtYmVyPy5kaXJlY3RvcnlOdW1iZXI7XG4gICAgaWYgKGRuKSB7XG4gICAgICAgIHJldHVybiB7IGNhbGxlZFBhcnR5VHJhbnNmb3JtYXRpb25NYXNrOiBkbiB9O1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbn1cblxuZnVuY3Rpb24gbm9ybWFsaXplRGlyZWN0b3J5TnVtYmVyKFxuICAgIGRpcmVjdG9yeU51bWJlcjogTGluZUFzc29jaWF0aW9uWydkaXJlY3RvcnlOdW1iZXInXVxuKTogTGluZUFzc29jaWF0aW9uWydkaXJlY3RvcnlOdW1iZXInXSB7XG4gICAgY29uc3QgeyBkaXNwbGF5VmFsdWU6IF9kaXNwbGF5VmFsdWUsIC4uLnJlc3QgfSA9IGRpcmVjdG9yeU51bWJlcjtcbiAgICByZXR1cm4ge1xuICAgICAgICBkaXJlY3RvcnlOdW1iZXI6IHJlc3QuZGlyZWN0b3J5TnVtYmVyID8/ICcnLFxuICAgICAgICByb3V0ZVBhcnRpdGlvbk5hbWU6IHJlc3Qucm91dGVQYXJ0aXRpb25OYW1lID8/ICcnLFxuICAgICAgICB0ZW1wbGF0ZURpcmVjdG9yeU51bWJlcjogcmVzdC50ZW1wbGF0ZURpcmVjdG9yeU51bWJlcixcbiAgICAgICAgcGtpZDogcmVzdC5wa2lkIHx8IG51bGwsXG4gICAgICAgIGRuVHlwZTogcmVzdC5kblR5cGUgfHwgbnVsbCxcbiAgICAgICAgc3ViVHlwZTogcmVzdC5zdWJUeXBlID8/IG51bGwsXG4gICAgfTtcbn1cblxuZnVuY3Rpb24gcHJlcGFyZUxpbmVBc3NvY2lhdGlvbihcbiAgICBhc3NvY2lhdGlvbjogTGluZUFzc29jaWF0aW9uLFxuICAgIGxpbmU/OiBMaW5lSW50ZXJmYWNlXG4pOiBMaW5lQXNzb2NpYXRpb24ge1xuICAgIGNvbnN0IHByZXBhcmVkID0gZGVlcENsb25lKGFzc29jaWF0aW9uKTtcbiAgICBjb25zdCBsaW5lRG4gPSBsaW5lPy5kaXJlY3RvcnlOdW1iZXI7XG5cbiAgICBpZiAobGluZURuKSB7XG4gICAgICAgIHByZXBhcmVkLmRpcmVjdG9yeU51bWJlciA9IHtcbiAgICAgICAgICAgIC4uLnByZXBhcmVkLmRpcmVjdG9yeU51bWJlcixcbiAgICAgICAgICAgIGRpcmVjdG9yeU51bWJlcjogbGluZURuLmRpcmVjdG9yeU51bWJlciB8fCAnJyxcbiAgICAgICAgICAgIHJvdXRlUGFydGl0aW9uTmFtZTogbGluZURuLnJvdXRlUGFydGl0aW9uTmFtZSB8fCAnJyxcbiAgICAgICAgICAgIHRlbXBsYXRlRGlyZWN0b3J5TnVtYmVyOlxuICAgICAgICAgICAgICAgIGxpbmVEbi50ZW1wbGF0ZURpcmVjdG9yeU51bWJlciA/P1xuICAgICAgICAgICAgICAgIHByZXBhcmVkLmRpcmVjdG9yeU51bWJlcj8udGVtcGxhdGVEaXJlY3RvcnlOdW1iZXIsXG4gICAgICAgIH0gYXMgTGluZUFzc29jaWF0aW9uWydkaXJlY3RvcnlOdW1iZXInXTtcbiAgICB9XG5cbiAgICBwcmVwYXJlZC5kaXJlY3RvcnlOdW1iZXIgPSBub3JtYWxpemVEaXJlY3RvcnlOdW1iZXIocHJlcGFyZWQuZGlyZWN0b3J5TnVtYmVyKTtcbiAgICBwcmVwYXJlZC5lbnRpdHlDaGFuZ2VUeXBlID0gcHJlcGFyZWQuZW50aXR5Q2hhbmdlVHlwZSB8fCBFTlRJVFlfQ0hBTkdFX1RZUEUuQURERUQ7XG4gICAgcHJlcGFyZWQubG9nTWlzc2VkQ2FsbCA9IHRvQXBpQm9vbGVhblN0cmluZyhwcmVwYXJlZC5sb2dNaXNzZWRDYWxsKSBhcyB1bmtub3duIGFzIExpbmVBc3NvY2lhdGlvblsnbG9nTWlzc2VkQ2FsbCddIHx8ICdmYWxzZSc7XG4gICAgcHJlcGFyZWQuY2FsbEluZm9EaXNwbGF5ID0gbm9ybWFsaXplQ2FsbEluZm9EaXNwbGF5KHByZXBhcmVkLmNhbGxJbmZvRGlzcGxheSkgYXMgdW5rbm93biBhcyBMaW5lQXNzb2NpYXRpb25bJ2NhbGxJbmZvRGlzcGxheSddO1xuICAgIHByZXBhcmVkLmRpZFBhdHRlcm4gPSBub3JtYWxpemVEaWRQYXR0ZXJuKFxuICAgICAgICBwcmVwYXJlZC5kaWRQYXR0ZXJuLFxuICAgICAgICBsaW5lLFxuICAgICAgICBwcmVwYXJlZC5kaXJlY3RvcnlOdW1iZXI/LmRpcmVjdG9yeU51bWJlclxuICAgICkgYXMgdW5rbm93biBhcyBMaW5lQXNzb2NpYXRpb25bJ2RpZFBhdHRlcm4nXTtcbiAgICBwcmVwYXJlZC52aXN1YWxNV0kgPSB0b0FwaVN0cmluZ1ZhbHVlKHByZXBhcmVkLnZpc3VhbE1XSSkgYXMgdW5rbm93biBhcyBMaW5lQXNzb2NpYXRpb25bJ3Zpc3VhbE1XSSddO1xuICAgIHByZXBhcmVkLmF1ZGlibGVNV0kgPSB0b0FwaVN0cmluZ1ZhbHVlKHByZXBhcmVkLmF1ZGlibGVNV0kpIGFzIHVua25vd24gYXMgTGluZUFzc29jaWF0aW9uWydhdWRpYmxlTVdJJ107XG4gICAgcHJlcGFyZWQuYXNzb2NpYXRlZCA9IHByZXBhcmVkLmFzc29jaWF0ZWQgPz8gdHJ1ZTtcblxuICAgIHJldHVybiBwcmVwYXJlZDtcbn1cblxuZnVuY3Rpb24gcHJlcGFyZUxpbmUobGluZTogTGluZUludGVyZmFjZSk6IExpbmVJbnRlcmZhY2Uge1xuICAgIGNvbnN0IHByZXBhcmVkID0gZGVlcENsb25lKGxpbmUpO1xuICAgIHByZXBhcmVkLmVudGl0eUNoYW5nZVR5cGUgPSBwcmVwYXJlZC5lbnRpdHlDaGFuZ2VUeXBlIHx8IEVOVElUWV9DSEFOR0VfVFlQRS5BRERFRDtcbiAgICBpZiAocHJlcGFyZWQuZGlyZWN0b3J5TnVtYmVyKSB7XG4gICAgICAgIHByZXBhcmVkLmRpcmVjdG9yeU51bWJlciA9IG5vcm1hbGl6ZURpcmVjdG9yeU51bWJlcihwcmVwYXJlZC5kaXJlY3RvcnlOdW1iZXIpO1xuICAgIH1cbiAgICByZXR1cm4gcHJlcGFyZWQ7XG59XG5cbmZ1bmN0aW9uIHN5bmNEZXZpY2VMaW5lQXNzb2NpYXRpb25zKGRldmljZTogRGV2aWNlSW50ZXJmYWNlLCBsaW5lczogTGluZUludGVyZmFjZVtdKTogdm9pZCB7XG4gICAgZGV2aWNlLmxpbmVBc3NvY2lhdGlvbnMgPSAoZGV2aWNlLmxpbmVBc3NvY2lhdGlvbnMgfHwgW10pLm1hcCgoYXNzb2NpYXRpb24sIGluZGV4KSA9PlxuICAgICAgICBwcmVwYXJlTGluZUFzc29jaWF0aW9uKGFzc29jaWF0aW9uLCBsaW5lc1tpbmRleF0pXG4gICAgKTtcbn1cblxuZnVuY3Rpb24gcHJlcGFyZURldmljZUZvclNhdmUoXG4gICAgZGV2aWNlOiBEZXZpY2VJbnRlcmZhY2UsXG4gICAgdXNlcklkOiBzdHJpbmcsXG4gICAgbGluZXM6IExpbmVJbnRlcmZhY2VbXSxcbiAgICBkZXZpY2VOYW1lOiBzdHJpbmdcbik6IERldmljZUludGVyZmFjZSB7XG4gICAgY29uc3QgcHJlcGFyZWQgPSBkZWVwQ2xvbmUoZGV2aWNlKTtcbiAgICBjb25zdCByZXNvbHZlZE5hbWUgPSBkZXZpY2VOYW1lLnRyaW0oKTtcblxuICAgIHByZXBhcmVkLm5hbWUgPSByZXNvbHZlZE5hbWU7XG4gICAgcHJlcGFyZWQubmV3TmFtZSA9IHJlc29sdmVkTmFtZTtcbiAgICBwcmVwYXJlZC5lbnRpdHlDaGFuZ2VUeXBlID0gcHJlcGFyZWQuZW50aXR5Q2hhbmdlVHlwZSB8fCBFTlRJVFlfQ0hBTkdFX1RZUEUuQURERUQ7XG4gICAgcHJlcGFyZWQuY3JlYXRlRGV2aWNlTW9kZSA9IHByZXBhcmVkLmNyZWF0ZURldmljZU1vZGUgPz8gZmFsc2U7XG5cbiAgICBpZiAocHJlcGFyZWQuZXh0cmFPcHRpb25zKSB7XG4gICAgICAgIHByZXBhcmVkLmV4dHJhT3B0aW9ucy5tb2JpbGl0eVVzZXJJZCA9IHVzZXJJZDtcbiAgICB9XG5cbiAgICBzeW5jRGV2aWNlTGluZUFzc29jaWF0aW9ucyhwcmVwYXJlZCwgbGluZXMpO1xuICAgIHJldHVybiBwcmVwYXJlZDtcbn1cblxuZnVuY3Rpb24gcmVzb2x2ZVByaW1hcnlMaW5lUmVmZXJlbmNlKHVzZXI6IEVuZFVzZXJJbnRlcmZhY2UpOiB1bmtub3duIHwgbnVsbCB7XG4gICAgY29uc3QgZmlyc3REZXZpY2VBc3NvY2lhdGlvbiA9IHVzZXIuZGV2aWNlcz8uWzBdPy5saW5lQXNzb2NpYXRpb25zPy5bMF0/LmRpcmVjdG9yeU51bWJlcjtcbiAgICBpZiAoZmlyc3REZXZpY2VBc3NvY2lhdGlvbikge1xuICAgICAgICByZXR1cm4gZmlyc3REZXZpY2VBc3NvY2lhdGlvbjtcbiAgICB9XG4gICAgY29uc3QgZmlyc3RMaW5lRG4gPSB1c2VyLmxpbmVzPy5bMF0/LmRpcmVjdG9yeU51bWJlcjtcbiAgICByZXR1cm4gZmlyc3RMaW5lRG4gPz8gbnVsbDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkU2F2YWJsZUVuZFVzZXIoXG4gICAgZW5kVXNlcjogRW5kVXNlckludGVyZmFjZSxcbiAgICBsaW5lczogTGluZUludGVyZmFjZVtdLFxuICAgIGRldmljZXM6IERldmljZUludGVyZmFjZVtdLFxuICAgIGRldmljZVByb2ZpbGVzOiBEZXZpY2VJbnRlcmZhY2VbXSxcbiAgICBmb3JtOiBVc2VyRGV0YWlsc0Zvcm0sXG4gICAgb3B0aW9uczogQnVpbGRTYXZhYmxlRW5kVXNlck9wdGlvbnMgPSB7fVxuKTogRW5kVXNlckludGVyZmFjZSB7XG4gICAgY29uc3QgdXNlciA9IGRlZXBDbG9uZShlbmRVc2VyKTtcblxuICAgIHVzZXIudXNlcmlkID0gZm9ybS51c2VySWQgfHwgdXNlci51c2VyaWQgfHwgJyc7XG4gICAgdXNlci5maXJzdE5hbWUgPSBmb3JtLmZpcnN0TmFtZSB8fCB1c2VyLmZpcnN0TmFtZSB8fCAnJztcbiAgICB1c2VyLmxhc3ROYW1lID0gZm9ybS5sYXN0TmFtZSB8fCB1c2VyLmxhc3ROYW1lIHx8ICcnO1xuICAgIHVzZXIuZW1haWwgPSBmb3JtLmVtYWlsIHx8IHVzZXIuZW1haWwgfHwgJyc7XG4gICAgdXNlci5jcmVhdGVVc2VyTW9kZSA9IGZhbHNlO1xuXG4gICAgdXNlci5saW5lcyA9IChsaW5lcyB8fCBbXSkubWFwKGxpbmUgPT4gcHJlcGFyZUxpbmUobGluZSkpO1xuICAgIHVzZXIuZGV2aWNlcyA9IChkZXZpY2VzIHx8IFtdKS5tYXAoKGRldmljZSwgaW5kZXgpID0+XG4gICAgICAgIHByZXBhcmVEZXZpY2VGb3JTYXZlKFxuICAgICAgICAgICAgZGV2aWNlLFxuICAgICAgICAgICAgdXNlci51c2VyaWQgfHwgJycsXG4gICAgICAgICAgICB1c2VyLmxpbmVzLFxuICAgICAgICAgICAgb3B0aW9ucy5yZXNvbHZlRGV2aWNlTmFtZT8uKGluZGV4LCBkZXZpY2UpID8/IGRldmljZS5uYW1lID8/IGRldmljZS5uZXdOYW1lID8/ICcnXG4gICAgICAgIClcbiAgICApO1xuICAgIHVzZXIuZGV2aWNlUHJvZmlsZXMgPSAoZGV2aWNlUHJvZmlsZXMgfHwgW10pLm1hcCgocHJvZmlsZSwgaW5kZXgpID0+XG4gICAgICAgIHByZXBhcmVEZXZpY2VGb3JTYXZlKFxuICAgICAgICAgICAgcHJvZmlsZSxcbiAgICAgICAgICAgIHVzZXIudXNlcmlkIHx8ICcnLFxuICAgICAgICAgICAgdXNlci5saW5lcyxcbiAgICAgICAgICAgIG9wdGlvbnMucmVzb2x2ZURldmljZVByb2ZpbGVOYW1lPy4oaW5kZXgsIHByb2ZpbGUpID8/IHByb2ZpbGUubmFtZSA/PyBwcm9maWxlLm5ld05hbWUgPz8gJydcbiAgICAgICAgKVxuICAgICk7XG5cbiAgICB1c2VyLnByaW1hcnlMaW5lUmVmZXJlbmNlID0gcmVzb2x2ZVByaW1hcnlMaW5lUmVmZXJlbmNlKHVzZXIpO1xuXG4gICAgY29uc3Qgc25yID0gdXNlci5zaW5nbGVOdW1iZXJSZWFjaCBhcyB7IHJlbW90ZURlc3RpbmF0aW9uUHJvZmlsZU5hbWU/OiBzdHJpbmcgfCBudWxsIH0gfCBudWxsIHwgdW5kZWZpbmVkO1xuICAgIGlmIChzbnIgJiYgIXNuci5yZW1vdGVEZXN0aW5hdGlvblByb2ZpbGVOYW1lKSB7XG4gICAgICAgIHVzZXIuc2luZ2xlTnVtYmVyUmVhY2ggPSBudWxsIGFzIEVuZFVzZXJJbnRlcmZhY2VbJ3NpbmdsZU51bWJlclJlYWNoJ107XG4gICAgfVxuXG4gICAgcmV0dXJuIHVzZXI7XG59XG4iXX0=
147
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtc2F2YWJsZS1lbmQtdXNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy91dGlscy9idWlsZC1zYXZhYmxlLWVuZC11c2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHO0lBQzlCLEtBQUssRUFBRSxPQUFPO0lBQ2QsT0FBTyxFQUFFLFNBQVM7SUFDbEIsUUFBUSxFQUFFLFVBQVU7SUFDcEIsT0FBTyxFQUFFLFNBQVM7Q0FDWixDQUFDO0FBb0JYLFNBQVMsU0FBUyxDQUFJLEtBQVE7SUFDMUIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQU0sQ0FBQztBQUNsRCxDQUFDO0FBRUQsU0FBUyxrQkFBa0IsQ0FBQyxLQUFjO0lBQ3RDLElBQUksS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssTUFBTSxFQUFFO1FBQ3BDLE9BQU8sTUFBTSxDQUFDO0tBQ2pCO0lBQ0QsSUFBSSxLQUFLLEtBQUssS0FBSyxJQUFJLEtBQUssS0FBSyxPQUFPLEVBQUU7UUFDdEMsT0FBTyxPQUFPLENBQUM7S0FDbEI7SUFDRCxPQUFPLEtBQUssSUFBSSxJQUFJLElBQUksS0FBSyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDOUQsQ0FBQztBQUVELFNBQVMsZ0JBQWdCLENBQUMsS0FBYztJQUNwQyxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUU7UUFDaEIsT0FBTyxNQUFNLENBQUM7S0FDakI7SUFDRCxJQUFJLEtBQUssS0FBSyxLQUFLLEVBQUU7UUFDakIsT0FBTyxPQUFPLENBQUM7S0FDbEI7SUFDRCxPQUFPLEtBQUssSUFBSSxJQUFJLENBQUMsQ0FB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XHJcbiAgICBEZXZpY2VJbnRlcmZhY2UsXHJcbiAgICBFbmRVc2VySW50ZXJmYWNlLFxyXG4gICAgTGluZUFzc29jaWF0aW9uLFxyXG4gICAgTGluZUludGVyZmFjZSxcclxuICAgIFVzZXJEZXRhaWxzRm9ybSxcclxufSBmcm9tICcuLi9pbnRlcmZhY2VzL3VzZXItY3JlYXRpb24td2l6YXJkLmludGVyZmFjZXMnO1xyXG5cclxuZXhwb3J0IGNvbnN0IEVOVElUWV9DSEFOR0VfVFlQRSA9IHtcclxuICAgIEFEREVEOiAnYWRkZWQnLFxyXG4gICAgVVBEQVRFRDogJ3VwZGF0ZWQnLFxyXG4gICAgRVhJU1RJTkc6ICdleGlzdGluZycsXHJcbiAgICBSRU1PVkVEOiAncmVtb3ZlZCcsXHJcbn0gYXMgY29uc3Q7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENhbGxJbmZvRGlzcGxheVBheWxvYWQge1xyXG4gICAgY2FsbGVyTmFtZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBjYWxsZXJOdW1iZXI/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgcmVkaXJlY3RlZE51bWJlcj86IHN0cmluZyB8IG51bGw7XHJcbiAgICBkaWFsZWROdW1iZXI/OiBzdHJpbmcgfCBudWxsO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIERpZFBhdHRlcm5QYXlsb2FkIHtcclxuICAgIGNhbGxlZFBhcnR5VHJhbnNmb3JtYXRpb25NYXNrPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHBhdHRlcm4/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgW2tleTogc3RyaW5nXTogdW5rbm93bjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBCdWlsZFNhdmFibGVFbmRVc2VyT3B0aW9ucyB7XHJcbiAgICByZXNvbHZlRGV2aWNlTmFtZT86IChpbmRleDogbnVtYmVyLCBkZXZpY2U6IERldmljZUludGVyZmFjZSkgPT4gc3RyaW5nO1xyXG4gICAgcmVzb2x2ZURldmljZVByb2ZpbGVOYW1lPzogKGluZGV4OiBudW1iZXIsIGRldmljZTogRGV2aWNlSW50ZXJmYWNlKSA9PiBzdHJpbmc7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGRlZXBDbG9uZTxUPih2YWx1ZTogVCk6IFQge1xyXG4gICAgcmV0dXJuIEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodmFsdWUpKSBhcyBUO1xyXG59XHJcblxyXG5mdW5jdGlvbiB0b0FwaUJvb2xlYW5TdHJpbmcodmFsdWU6IHVua25vd24pOiBzdHJpbmcge1xyXG4gICAgaWYgKHZhbHVlID09PSB0cnVlIHx8IHZhbHVlID09PSAndHJ1ZScpIHtcclxuICAgICAgICByZXR1cm4gJ3RydWUnO1xyXG4gICAgfVxyXG4gICAgaWYgKHZhbHVlID09PSBmYWxzZSB8fCB2YWx1ZSA9PT0gJ2ZhbHNlJykge1xyXG4gICAgICAgIHJldHVybiAnZmFsc2UnO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHZhbHVlID09IG51bGwgfHwgdmFsdWUgPT09ICcnID8gJycgOiBTdHJpbmcodmFsdWUpO1xyXG59XHJcblxyXG5mdW5jdGlvbiB0b0FwaVN0cmluZ1ZhbHVlKHZhbHVlOiB1bmtub3duKTogc3RyaW5nIHtcclxuICAgIGlmICh2YWx1ZSA9PT0gdHJ1ZSkge1xyXG4gICAgICAgIHJldHVybiAndHJ1ZSc7XHJcbiAgICB9XHJcbiAgICBpZiAodmFsdWUgPT09IGZhbHNlKSB7XHJcbiAgICAgICAgcmV0dXJuICdmYWxzZSc7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdmFsdWUgPT0gbnVsbCA/ICcnIDogU3RyaW5nKHZhbHVlKTtcclxufVxyXG5cclxuZnVuY3Rpb24gbm9ybWFsaXplQ2FsbEluZm9EaXNwbGF5KFxyXG4gICAgY2FsbEluZm9EaXNwbGF5OiB1bmtub3duXHJcbik6IENhbGxJbmZvRGlzcGxheVBheWxvYWQgfCBudWxsIHtcclxuICAgIGlmICghY2FsbEluZm9EaXNwbGF5KSB7XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgICBpZiAodHlwZW9mIGNhbGxJbmZvRGlzcGxheSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICBjb25zdCBwYXJzZWQgPSBKU09OLnBhcnNlKGNhbGxJbmZvRGlzcGxheSk7XHJcbiAgICAgICAgICAgIHJldHVybiBub3JtYWxpemVDYWxsSW5mb0Rpc3BsYXkocGFyc2VkKTtcclxuICAgICAgICB9IGNhdGNoIHtcclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgaWYgKHR5cGVvZiBjYWxsSW5mb0Rpc3BsYXkgIT09ICdvYmplY3QnKSB7XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgICBjb25zdCBzb3VyY2UgPSBjYWxsSW5mb0Rpc3BsYXkgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj47XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIGNhbGxlck5hbWU6IHNvdXJjZVsnY2FsbGVyTmFtZSddICE9IG51bGwgPyB0b0FwaUJvb2xlYW5TdHJpbmcoc291cmNlWydjYWxsZXJOYW1lJ10pIDogbnVsbCxcclxuICAgICAgICBjYWxsZXJOdW1iZXI6IHNvdXJjZVsnY2FsbGVyTnVtYmVyJ10gIT0gbnVsbCA/IHRvQXBpQm9vbGVhblN0cmluZyhzb3VyY2VbJ2NhbGxlck51bWJlciddKSA6IG51bGwsXHJcbiAgICAgICAgcmVkaXJlY3RlZE51bWJlcjogc291cmNlWydyZWRpcmVjdGVkTnVtYmVyJ10gIT0gbnVsbCA/IHRvQXBpQm9vbGVhblN0cmluZyhzb3VyY2VbJ3JlZGlyZWN0ZWROdW1iZXInXSkgOiBudWxsLFxyXG4gICAgICAgIGRpYWxlZE51bWJlcjogc291cmNlWydkaWFsZWROdW1iZXInXSAhPSBudWxsID8gdG9BcGlCb29sZWFuU3RyaW5nKHNvdXJjZVsnZGlhbGVkTnVtYmVyJ10pIDogbnVsbCxcclxuICAgIH07XHJcbn1cclxuXHJcbmZ1bmN0aW9uIG5vcm1hbGl6ZURpZFBhdHRlcm4oXHJcbiAgICBkaWRQYXR0ZXJuOiB1bmtub3duLFxyXG4gICAgbGluZT86IExpbmVJbnRlcmZhY2UsXHJcbiAgICBkaXJlY3RvcnlOdW1iZXI/OiBzdHJpbmdcclxuKTogRGlkUGF0dGVyblBheWxvYWQgfCBudWxsIHtcclxuICAgIGlmIChkaWRQYXR0ZXJuICYmIHR5cGVvZiBkaWRQYXR0ZXJuID09PSAnb2JqZWN0Jykge1xyXG4gICAgICAgIHJldHVybiBkaWRQYXR0ZXJuIGFzIERpZFBhdHRlcm5QYXlsb2FkO1xyXG4gICAgfVxyXG4gICAgaWYgKHR5cGVvZiBkaWRQYXR0ZXJuID09PSAnc3RyaW5nJyAmJiBkaWRQYXR0ZXJuLnRyaW0oKSkge1xyXG4gICAgICAgIHJldHVybiB7IGNhbGxlZFBhcnR5VHJhbnNmb3JtYXRpb25NYXNrOiBkaWRQYXR0ZXJuIH07XHJcbiAgICB9XHJcbiAgICBjb25zdCBkbiA9IGRpcmVjdG9yeU51bWJlciB8fCBsaW5lPy5kaXJlY3RvcnlOdW1iZXI/LmRpcmVjdG9yeU51bWJlcjtcclxuICAgIGlmIChkbikge1xyXG4gICAgICAgIHJldHVybiB7IGNhbGxlZFBhcnR5VHJhbnNmb3JtYXRpb25NYXNrOiBkbiB9O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIG5vcm1hbGl6ZURpcmVjdG9yeU51bWJlcihcclxuICAgIGRpcmVjdG9yeU51bWJlcjogTGluZUFzc29jaWF0aW9uWydkaXJlY3RvcnlOdW1iZXInXVxyXG4pOiBMaW5lQXNzb2NpYXRpb25bJ2RpcmVjdG9yeU51bWJlciddIHtcclxuICAgIGNvbnN0IHsgZGlzcGxheVZhbHVlOiBfZGlzcGxheVZhbHVlLCAuLi5yZXN0IH0gPSBkaXJlY3RvcnlOdW1iZXI7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIGRpcmVjdG9yeU51bWJlcjogcmVzdC5kaXJlY3RvcnlOdW1iZXIgPz8gJycsXHJcbiAgICAgICAgcm91dGVQYXJ0aXRpb25OYW1lOiByZXN0LnJvdXRlUGFydGl0aW9uTmFtZSA/PyAnJyxcclxuICAgICAgICB0ZW1wbGF0ZURpcmVjdG9yeU51bWJlcjogcmVzdC50ZW1wbGF0ZURpcmVjdG9yeU51bWJlcixcclxuICAgICAgICBwa2lkOiByZXN0LnBraWQgfHwgbnVsbCxcclxuICAgICAgICBkblR5cGU6IHJlc3QuZG5UeXBlIHx8IG51bGwsXHJcbiAgICAgICAgc3ViVHlwZTogcmVzdC5zdWJUeXBlID8/IG51bGwsXHJcbiAgICB9O1xyXG59XHJcblxyXG5mdW5jdGlvbiBwcmVwYXJlTGluZUFzc29jaWF0aW9uKFxyXG4gICAgYXNzb2NpYXRpb246IExpbmVBc3NvY2lhdGlvbixcclxuICAgIGxpbmU/OiBMaW5lSW50ZXJmYWNlXHJcbik6IExpbmVBc3NvY2lhdGlvbiB7XHJcbiAgICBjb25zdCBwcmVwYXJlZCA9IGRlZXBDbG9uZShhc3NvY2lhdGlvbik7XHJcbiAgICBjb25zdCBsaW5lRG4gPSBsaW5lPy5kaXJlY3RvcnlOdW1iZXI7XHJcblxyXG4gICAgaWYgKGxpbmVEbikge1xyXG4gICAgICAgIHByZXBhcmVkLmRpcmVjdG9yeU51bWJlciA9IHtcclxuICAgICAgICAgICAgLi4ucHJlcGFyZWQuZGlyZWN0b3J5TnVtYmVyLFxyXG4gICAgICAgICAgICBkaXJlY3RvcnlOdW1iZXI6IGxpbmVEbi5kaXJlY3RvcnlOdW1iZXIgfHwgJycsXHJcbiAgICAgICAgICAgIHJvdXRlUGFydGl0aW9uTmFtZTogbGluZURuLnJvdXRlUGFydGl0aW9uTmFtZSB8fCAnJyxcclxuICAgICAgICAgICAgdGVtcGxhdGVEaXJlY3RvcnlOdW1iZXI6XHJcbiAgICAgICAgICAgICAgICBsaW5lRG4udGVtcGxhdGVEaXJlY3RvcnlOdW1iZXIgPz9cclxuICAgICAgICAgICAgICAgIHByZXBhcmVkLmRpcmVjdG9yeU51bWJlcj8udGVtcGxhdGVEaXJlY3RvcnlOdW1iZXIsXHJcbiAgICAgICAgfSBhcyBMaW5lQXNzb2NpYXRpb25bJ2RpcmVjdG9yeU51bWJlciddO1xyXG4gICAgfVxyXG5cclxuICAgIHByZXBhcmVkLmRpcmVjdG9yeU51bWJlciA9IG5vcm1hbGl6ZURpcmVjdG9yeU51bWJlcihwcmVwYXJlZC5kaXJlY3RvcnlOdW1iZXIpO1xyXG4gICAgcHJlcGFyZWQuZW50aXR5Q2hhbmdlVHlwZSA9IHByZXBhcmVkLmVudGl0eUNoYW5nZVR5cGUgfHwgRU5USVRZX0NIQU5HRV9UWVBFLkFEREVEO1xyXG4gICAgcHJlcGFyZWQubG9nTWlzc2VkQ2FsbCA9IHRvQXBpQm9vbGVhblN0cmluZyhwcmVwYXJlZC5sb2dNaXNzZWRDYWxsKSBhcyB1bmtub3duIGFzIExpbmVBc3NvY2lhdGlvblsnbG9nTWlzc2VkQ2FsbCddIHx8ICdmYWxzZSc7XHJcbiAgICBwcmVwYXJlZC5jYWxsSW5mb0Rpc3BsYXkgPSBub3JtYWxpemVDYWxsSW5mb0Rpc3BsYXkocHJlcGFyZWQuY2FsbEluZm9EaXNwbGF5KSBhcyB1bmtub3duIGFzIExpbmVBc3NvY2lhdGlvblsnY2FsbEluZm9EaXNwbGF5J107XHJcbiAgICBwcmVwYXJlZC5kaWRQYXR0ZXJuID0gbm9ybWFsaXplRGlkUGF0dGVybihcclxuICAgICAgICBwcmVwYXJlZC5kaWRQYXR0ZXJuLFxyXG4gICAgICAgIGxpbmUsXHJcbiAgICAgICAgcHJlcGFyZWQuZGlyZWN0b3J5TnVtYmVyPy5kaXJlY3RvcnlOdW1iZXJcclxuICAgICkgYXMgdW5rbm93biBhcyBMaW5lQXNzb2NpYXRpb25bJ2RpZFBhdHRlcm4nXTtcclxuICAgIHByZXBhcmVkLnZpc3VhbE1XSSA9IHRvQXBpU3RyaW5nVmFsdWUocHJlcGFyZWQudmlzdWFsTVdJKSBhcyB1bmtub3duIGFzIExpbmVBc3NvY2lhdGlvblsndmlzdWFsTVdJJ107XHJcbiAgICBwcmVwYXJlZC5hdWRpYmxlTVdJID0gdG9BcGlTdHJpbmdWYWx1ZShwcmVwYXJlZC5hdWRpYmxlTVdJKSBhcyB1bmtub3duIGFzIExpbmVBc3NvY2lhdGlvblsnYXVkaWJsZU1XSSddO1xyXG4gICAgcHJlcGFyZWQuYXNzb2NpYXRlZCA9IHByZXBhcmVkLmFzc29jaWF0ZWQgPz8gdHJ1ZTtcclxuXHJcbiAgICByZXR1cm4gcHJlcGFyZWQ7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHByZXBhcmVMaW5lKGxpbmU6IExpbmVJbnRlcmZhY2UpOiBMaW5lSW50ZXJmYWNlIHtcclxuICAgIGNvbnN0IHByZXBhcmVkID0gZGVlcENsb25lKGxpbmUpO1xyXG4gICAgcHJlcGFyZWQuZW50aXR5Q2hhbmdlVHlwZSA9IHByZXBhcmVkLmVudGl0eUNoYW5nZVR5cGUgfHwgRU5USVRZX0NIQU5HRV9UWVBFLkFEREVEO1xyXG4gICAgaWYgKHByZXBhcmVkLmRpcmVjdG9yeU51bWJlcikge1xyXG4gICAgICAgIHByZXBhcmVkLmRpcmVjdG9yeU51bWJlciA9IG5vcm1hbGl6ZURpcmVjdG9yeU51bWJlcihwcmVwYXJlZC5kaXJlY3RvcnlOdW1iZXIpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHByZXBhcmVkO1xyXG59XHJcblxyXG5mdW5jdGlvbiBzeW5jRGV2aWNlTGluZUFzc29jaWF0aW9ucyhkZXZpY2U6IERldmljZUludGVyZmFjZSwgbGluZXM6IExpbmVJbnRlcmZhY2VbXSk6IHZvaWQge1xyXG4gICAgZGV2aWNlLmxpbmVBc3NvY2lhdGlvbnMgPSAoZGV2aWNlLmxpbmVBc3NvY2lhdGlvbnMgfHwgW10pLm1hcCgoYXNzb2NpYXRpb24sIGluZGV4KSA9PlxyXG4gICAgICAgIHByZXBhcmVMaW5lQXNzb2NpYXRpb24oYXNzb2NpYXRpb24sIGxpbmVzW2luZGV4XSlcclxuICAgICk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHByZXBhcmVEZXZpY2VGb3JTYXZlKFxyXG4gICAgZGV2aWNlOiBEZXZpY2VJbnRlcmZhY2UsXHJcbiAgICB1c2VySWQ6IHN0cmluZyxcclxuICAgIGxpbmVzOiBMaW5lSW50ZXJmYWNlW10sXHJcbiAgICBkZXZpY2VOYW1lOiBzdHJpbmdcclxuKTogRGV2aWNlSW50ZXJmYWNlIHtcclxuICAgIGNvbnN0IHByZXBhcmVkID0gZGVlcENsb25lKGRldmljZSk7XHJcbiAgICBjb25zdCByZXNvbHZlZE5hbWUgPSBkZXZpY2VOYW1lLnRyaW0oKTtcclxuXHJcbiAgICBwcmVwYXJlZC5uYW1lID0gcmVzb2x2ZWROYW1lO1xyXG4gICAgcHJlcGFyZWQubmV3TmFtZSA9IHJlc29sdmVkTmFtZTtcclxuICAgIHByZXBhcmVkLmVudGl0eUNoYW5nZVR5cGUgPSBwcmVwYXJlZC5lbnRpdHlDaGFuZ2VUeXBlIHx8IEVOVElUWV9DSEFOR0VfVFlQRS5BRERFRDtcclxuICAgIHByZXBhcmVkLmNyZWF0ZURldmljZU1vZGUgPSBwcmVwYXJlZC5jcmVhdGVEZXZpY2VNb2RlID8/IGZhbHNlO1xyXG5cclxuICAgIGlmIChwcmVwYXJlZC5leHRyYU9wdGlvbnMpIHtcclxuICAgICAgICBwcmVwYXJlZC5leHRyYU9wdGlvbnMubW9iaWxpdHlVc2VySWQgPSB1c2VySWQ7XHJcbiAgICB9XHJcblxyXG4gICAgc3luY0RldmljZUxpbmVBc3NvY2lhdGlvbnMocHJlcGFyZWQsIGxpbmVzKTtcclxuICAgIHJldHVybiBwcmVwYXJlZDtcclxufVxyXG5cclxuZnVuY3Rpb24gcmVzb2x2ZVByaW1hcnlMaW5lUmVmZXJlbmNlKHVzZXI6IEVuZFVzZXJJbnRlcmZhY2UpOiB1bmtub3duIHwgbnVsbCB7XHJcbiAgICBjb25zdCBmaXJzdERldmljZUFzc29jaWF0aW9uID0gdXNlci5kZXZpY2VzPy5bMF0/LmxpbmVBc3NvY2lhdGlvbnM/LlswXT8uZGlyZWN0b3J5TnVtYmVyO1xyXG4gICAgaWYgKGZpcnN0RGV2aWNlQXNzb2NpYXRpb24pIHtcclxuICAgICAgICByZXR1cm4gZmlyc3REZXZpY2VBc3NvY2lhdGlvbjtcclxuICAgIH1cclxuICAgIGNvbnN0IGZpcnN0TGluZURuID0gdXNlci5saW5lcz8uWzBdPy5kaXJlY3RvcnlOdW1iZXI7XHJcbiAgICByZXR1cm4gZmlyc3RMaW5lRG4gPz8gbnVsbDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkU2F2YWJsZUVuZFVzZXIoXHJcbiAgICBlbmRVc2VyOiBFbmRVc2VySW50ZXJmYWNlLFxyXG4gICAgbGluZXM6IExpbmVJbnRlcmZhY2VbXSxcclxuICAgIGRldmljZXM6IERldmljZUludGVyZmFjZVtdLFxyXG4gICAgZGV2aWNlUHJvZmlsZXM6IERldmljZUludGVyZmFjZVtdLFxyXG4gICAgZm9ybTogVXNlckRldGFpbHNGb3JtLFxyXG4gICAgb3B0aW9uczogQnVpbGRTYXZhYmxlRW5kVXNlck9wdGlvbnMgPSB7fVxyXG4pOiBFbmRVc2VySW50ZXJmYWNlIHtcclxuICAgIGNvbnN0IHVzZXIgPSBkZWVwQ2xvbmUoZW5kVXNlcik7XHJcblxyXG4gICAgdXNlci51c2VyaWQgPSBmb3JtLnVzZXJJZCB8fCB1c2VyLnVzZXJpZCB8fCAnJztcclxuICAgIHVzZXIuZmlyc3ROYW1lID0gZm9ybS5maXJzdE5hbWUgfHwgdXNlci5maXJzdE5hbWUgfHwgJyc7XHJcbiAgICB1c2VyLmxhc3ROYW1lID0gZm9ybS5sYXN0TmFtZSB8fCB1c2VyLmxhc3ROYW1lIHx8ICcnO1xyXG4gICAgdXNlci5lbWFpbCA9IGZvcm0uZW1haWwgfHwgdXNlci5lbWFpbCB8fCAnJztcclxuICAgIHVzZXIuY3JlYXRlVXNlck1vZGUgPSBmYWxzZTtcclxuXHJcbiAgICB1c2VyLmxpbmVzID0gKGxpbmVzIHx8IFtdKS5tYXAobGluZSA9PiBwcmVwYXJlTGluZShsaW5lKSk7XHJcbiAgICB1c2VyLmRldmljZXMgPSAoZGV2aWNlcyB8fCBbXSkubWFwKChkZXZpY2UsIGluZGV4KSA9PlxyXG4gICAgICAgIHByZXBhcmVEZXZpY2VGb3JTYXZlKFxyXG4gICAgICAgICAgICBkZXZpY2UsXHJcbiAgICAgICAgICAgIHVzZXIudXNlcmlkIHx8ICcnLFxyXG4gICAgICAgICAgICB1c2VyLmxpbmVzLFxyXG4gICAgICAgICAgICBvcHRpb25zLnJlc29sdmVEZXZpY2VOYW1lPy4oaW5kZXgsIGRldmljZSkgPz8gZGV2aWNlLm5hbWUgPz8gZGV2aWNlLm5ld05hbWUgPz8gJydcclxuICAgICAgICApXHJcbiAgICApO1xyXG4gICAgdXNlci5kZXZpY2VQcm9maWxlcyA9IChkZXZpY2VQcm9maWxlcyB8fCBbXSkubWFwKChwcm9maWxlLCBpbmRleCkgPT5cclxuICAgICAgICBwcmVwYXJlRGV2aWNlRm9yU2F2ZShcclxuICAgICAgICAgICAgcHJvZmlsZSxcclxuICAgICAgICAgICAgdXNlci51c2VyaWQgfHwgJycsXHJcbiAgICAgICAgICAgIHVzZXIubGluZXMsXHJcbiAgICAgICAgICAgIG9wdGlvbnMucmVzb2x2ZURldmljZVByb2ZpbGVOYW1lPy4oaW5kZXgsIHByb2ZpbGUpID8/IHByb2ZpbGUubmFtZSA/PyBwcm9maWxlLm5ld05hbWUgPz8gJydcclxuICAgICAgICApXHJcbiAgICApO1xyXG5cclxuICAgIHVzZXIucHJpbWFyeUxpbmVSZWZlcmVuY2UgPSByZXNvbHZlUHJpbWFyeUxpbmVSZWZlcmVuY2UodXNlcik7XHJcblxyXG4gICAgY29uc3Qgc25yID0gdXNlci5zaW5nbGVOdW1iZXJSZWFjaCBhcyB7IHJlbW90ZURlc3RpbmF0aW9uUHJvZmlsZU5hbWU/OiBzdHJpbmcgfCBudWxsIH0gfCBudWxsIHwgdW5kZWZpbmVkO1xyXG4gICAgaWYgKHNuciAmJiAhc25yLnJlbW90ZURlc3RpbmF0aW9uUHJvZmlsZU5hbWUpIHtcclxuICAgICAgICB1c2VyLnNpbmdsZU51bWJlclJlYWNoID0gbnVsbCBhcyBFbmRVc2VySW50ZXJmYWNlWydzaW5nbGVOdW1iZXJSZWFjaCddO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB1c2VyO1xyXG59XHJcbiJdfQ==
@@ -1,13 +1,30 @@
1
1
  /** Matches device types like `Cisco 8851`. */
2
2
  export const CISCO_DIGIT_DEVICE_TYPE_PATTERN = /^Cisco\s+\d+$/i;
3
3
  export const DEFAULT_SEP_DEVICE_PREFIX = 'SEP';
4
- export function applyDefaultDevicePrefixIfMissing(device) {
4
+ /**
5
+ * Extracts a literal prefix from `deviceNameExplained` patterns such as
6
+ * `SEP[mac]`, `TCT[0-9A-Z._-]{1,12}`, or `[A-Z0-9]{1,15}` (no prefix).
7
+ */
8
+ export function extractDevicePrefixFromNameExplained(deviceNameExplained) {
9
+ const explained = deviceNameExplained?.trim() ?? '';
10
+ if (!explained) {
11
+ return null;
12
+ }
13
+ const match = explained.match(/^([A-Za-z]+)\[/);
14
+ return match?.[1] ?? null;
15
+ }
16
+ export function applyDefaultDevicePrefixIfMissing(device, defaults) {
5
17
  if (device.prefix?.trim()) {
6
18
  return;
7
19
  }
20
+ const prefixFromDefaults = extractDevicePrefixFromNameExplained(defaults.deviceNameExplained);
21
+ if (prefixFromDefaults) {
22
+ device.prefix = prefixFromDefaults;
23
+ return;
24
+ }
8
25
  const deviceType = device.deviceType?.trim() ?? '';
9
26
  if (CISCO_DIGIT_DEVICE_TYPE_PATTERN.test(deviceType)) {
10
27
  device.prefix = DEFAULT_SEP_DEVICE_PREFIX;
11
28
  }
12
29
  }
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLWRlZmF1bHQtcHJlZml4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXItY3JlYXRpb24vc3JjL3V0aWxzL2RldmljZS1kZWZhdWx0LXByZWZpeC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSw4Q0FBOEM7QUFDOUMsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQUcsZ0JBQWdCLENBQUM7QUFFaEUsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsS0FBSyxDQUFDO0FBRS9DLE1BQU0sVUFBVSxpQ0FBaUMsQ0FBQyxNQUFzRDtJQUNwRyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLEVBQUU7UUFDdkIsT0FBTztLQUNWO0lBRUQsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDbkQsSUFBSSwrQkFBK0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7UUFDbEQsTUFBTSxDQUFDLE1BQU0sR0FBRyx5QkFBeUIsQ0FBQztLQUM3QztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZXZpY2VJbnRlcmZhY2UgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3VzZXItY3JlYXRpb24td2l6YXJkLmludGVyZmFjZXMnO1xuXG4vKiogTWF0Y2hlcyBkZXZpY2UgdHlwZXMgbGlrZSBgQ2lzY28gODg1MWAuICovXG5leHBvcnQgY29uc3QgQ0lTQ09fRElHSVRfREVWSUNFX1RZUEVfUEFUVEVSTiA9IC9eQ2lzY29cXHMrXFxkKyQvaTtcblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfU0VQX0RFVklDRV9QUkVGSVggPSAnU0VQJztcblxuZXhwb3J0IGZ1bmN0aW9uIGFwcGx5RGVmYXVsdERldmljZVByZWZpeElmTWlzc2luZyhkZXZpY2U6IFBpY2s8RGV2aWNlSW50ZXJmYWNlLCAncHJlZml4JyB8ICdkZXZpY2VUeXBlJz4pOiB2b2lkIHtcbiAgICBpZiAoZGV2aWNlLnByZWZpeD8udHJpbSgpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBkZXZpY2VUeXBlID0gZGV2aWNlLmRldmljZVR5cGU/LnRyaW0oKSA/PyAnJztcbiAgICBpZiAoQ0lTQ09fRElHSVRfREVWSUNFX1RZUEVfUEFUVEVSTi50ZXN0KGRldmljZVR5cGUpKSB7XG4gICAgICAgIGRldmljZS5wcmVmaXggPSBERUZBVUxUX1NFUF9ERVZJQ0VfUFJFRklYO1xuICAgIH1cbn1cbiJdfQ==
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLWRlZmF1bHQtcHJlZml4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXItY3JlYXRpb24vc3JjL3V0aWxzL2RldmljZS1kZWZhdWx0LXByZWZpeC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSw4Q0FBOEM7QUFDOUMsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQUcsZ0JBQWdCLENBQUM7QUFFaEUsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsS0FBSyxDQUFDO0FBRS9DOzs7R0FHRztBQUNILE1BQU0sVUFBVSxvQ0FBb0MsQ0FBQyxtQkFBOEM7SUFDL0YsTUFBTSxTQUFTLEdBQUcsbUJBQW1CLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDO0lBQ3BELElBQUksQ0FBQyxTQUFTLEVBQUU7UUFDWixPQUFPLElBQUksQ0FBQztLQUNmO0lBRUQsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ2hELE9BQU8sS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDO0FBQzlCLENBQUM7QUFFRCxNQUFNLFVBQVUsaUNBQWlDLENBQUMsTUFBc0QsRUFBRSxRQUFpQztJQUN2SSxJQUFJLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLEVBQUU7UUFDdkIsT0FBTztLQUNWO0lBRUQsTUFBTSxrQkFBa0IsR0FBRyxvQ0FBb0MsQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUM5RixJQUFJLGtCQUFrQixFQUFFO1FBQ3BCLE1BQU0sQ0FBQyxNQUFNLEdBQUcsa0JBQWtCLENBQUM7UUFDbkMsT0FBTztLQUNWO0lBRUQsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDbkQsSUFBSSwrQkFBK0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7UUFDbEQsTUFBTSxDQUFDLE1BQU0sR0FBRyx5QkFBeUIsQ0FBQztLQUM3QztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZXZpY2VEZWZhdWx0c0ludGVyZmFjZSwgRGV2aWNlSW50ZXJmYWNlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy91c2VyLWNyZWF0aW9uLXdpemFyZC5pbnRlcmZhY2VzJztcclxuXHJcbi8qKiBNYXRjaGVzIGRldmljZSB0eXBlcyBsaWtlIGBDaXNjbyA4ODUxYC4gKi9cclxuZXhwb3J0IGNvbnN0IENJU0NPX0RJR0lUX0RFVklDRV9UWVBFX1BBVFRFUk4gPSAvXkNpc2NvXFxzK1xcZCskL2k7XHJcblxyXG5leHBvcnQgY29uc3QgREVGQVVMVF9TRVBfREVWSUNFX1BSRUZJWCA9ICdTRVAnO1xyXG5cclxuLyoqXHJcbiAqIEV4dHJhY3RzIGEgbGl0ZXJhbCBwcmVmaXggZnJvbSBgZGV2aWNlTmFtZUV4cGxhaW5lZGAgcGF0dGVybnMgc3VjaCBhc1xyXG4gKiBgU0VQW21hY11gLCBgVENUWzAtOUEtWi5fLV17MSwxMn1gLCBvciBgW0EtWjAtOV17MSwxNX1gIChubyBwcmVmaXgpLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGV4dHJhY3REZXZpY2VQcmVmaXhGcm9tTmFtZUV4cGxhaW5lZChkZXZpY2VOYW1lRXhwbGFpbmVkOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICBjb25zdCBleHBsYWluZWQgPSBkZXZpY2VOYW1lRXhwbGFpbmVkPy50cmltKCkgPz8gJyc7XHJcbiAgICBpZiAoIWV4cGxhaW5lZCkge1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IG1hdGNoID0gZXhwbGFpbmVkLm1hdGNoKC9eKFtBLVphLXpdKylcXFsvKTtcclxuICAgIHJldHVybiBtYXRjaD8uWzFdID8/IG51bGw7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBhcHBseURlZmF1bHREZXZpY2VQcmVmaXhJZk1pc3NpbmcoZGV2aWNlOiBQaWNrPERldmljZUludGVyZmFjZSwgJ3ByZWZpeCcgfCAnZGV2aWNlVHlwZSc+LCBkZWZhdWx0czogRGV2aWNlRGVmYXVsdHNJbnRlcmZhY2UpOiB2b2lkIHtcclxuICAgIGlmIChkZXZpY2UucHJlZml4Py50cmltKCkpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgcHJlZml4RnJvbURlZmF1bHRzID0gZXh0cmFjdERldmljZVByZWZpeEZyb21OYW1lRXhwbGFpbmVkKGRlZmF1bHRzLmRldmljZU5hbWVFeHBsYWluZWQpO1xyXG4gICAgaWYgKHByZWZpeEZyb21EZWZhdWx0cykge1xyXG4gICAgICAgIGRldmljZS5wcmVmaXggPSBwcmVmaXhGcm9tRGVmYXVsdHM7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGRldmljZVR5cGUgPSBkZXZpY2UuZGV2aWNlVHlwZT8udHJpbSgpID8/ICcnO1xyXG4gICAgaWYgKENJU0NPX0RJR0lUX0RFVklDRV9UWVBFX1BBVFRFUk4udGVzdChkZXZpY2VUeXBlKSkge1xyXG4gICAgICAgIGRldmljZS5wcmVmaXggPSBERUZBVUxUX1NFUF9ERVZJQ0VfUFJFRklYO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,4 @@
1
+ export function deviceNameHasDynamicTokens(name) {
2
+ return /\[DN\]|\[LN\]|\[FN\]/i.test(name ?? '');
3
+ }
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLW5hbWUtZHluYW1pYy10b2tlbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvdXNlci1jcmVhdGlvbi9zcmMvdXRpbHMvZGV2aWNlLW5hbWUtZHluYW1pYy10b2tlbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLDBCQUEwQixDQUFDLElBQStCO0lBQ3RFLE9BQU8sdUJBQXVCLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQztBQUNwRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIGRldmljZU5hbWVIYXNEeW5hbWljVG9rZW5zKG5hbWU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAvXFxbRE5cXF18XFxbTE5cXF18XFxbRk5cXF0vaS50ZXN0KG5hbWUgPz8gJycpO1xyXG59XHJcbiJdfQ==
@@ -20,4 +20,4 @@ export function deviceNameValidator(options) {
20
20
  return null;
21
21
  };
22
22
  }
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLW5hbWUtdmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy91dGlscy9kZXZpY2UtbmFtZS12YWxpZGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxPQUFtQztJQUNuRSxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUN6RCxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMvQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRTtZQUNoQyxPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsSUFBSTtZQUNBLE1BQU0sSUFBSSxHQUFHLElBQUksTUFBTSxDQUFDLE9BQU8sT0FBTyxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUM7WUFDbEQsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ2pCLE9BQU87b0JBQ0gsVUFBVSxFQUFFO3dCQUNSLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxLQUFLO3FCQUM1QztpQkFDSixDQUFDO2FBQ0w7U0FDSjtRQUFDLE1BQU07WUFDSixPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQyxDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGV2aWNlTmFtZVZhbGlkYXRvck9wdGlvbnMge1xuICAgIHJlZ2V4OiBzdHJpbmc7XG4gICAgY2FwdGlvbj86IHN0cmluZyB8IG51bGw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZXZpY2VOYW1lVmFsaWRhdG9yKG9wdGlvbnM6IERldmljZU5hbWVWYWxpZGF0b3JPcHRpb25zKTogVmFsaWRhdG9yRm4ge1xuICAgIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xuICAgICAgICBjb25zdCByYXcgPSBTdHJpbmcoY29udHJvbC52YWx1ZSA/PyAnJykudHJpbSgpO1xuICAgICAgICBpZiAoIXJhdyB8fCAhb3B0aW9ucy5yZWdleD8udHJpbSgpKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCBydWxlID0gbmV3IFJlZ0V4cChgXig/OiR7b3B0aW9ucy5yZWdleH0pJGApO1xuICAgICAgICAgICAgaWYgKCFydWxlLnRlc3QocmF3KSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIGRldmljZU5hbWU6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhcHRpb246IG9wdGlvbnMuY2FwdGlvbiB8fCBvcHRpb25zLnJlZ2V4LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9O1xufVxuIl19
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLW5hbWUtdmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy91dGlscy9kZXZpY2UtbmFtZS12YWxpZGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxPQUFtQztJQUNuRSxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUN6RCxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMvQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRTtZQUNoQyxPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsSUFBSTtZQUNBLE1BQU0sSUFBSSxHQUFHLElBQUksTUFBTSxDQUFDLE9BQU8sT0FBTyxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUM7WUFDbEQsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ2pCLE9BQU87b0JBQ0gsVUFBVSxFQUFFO3dCQUNSLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxLQUFLO3FCQUM1QztpQkFDSixDQUFDO2FBQ0w7U0FDSjtRQUFDLE1BQU07WUFDSixPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQyxDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIERldmljZU5hbWVWYWxpZGF0b3JPcHRpb25zIHtcclxuICAgIHJlZ2V4OiBzdHJpbmc7XHJcbiAgICBjYXB0aW9uPzogc3RyaW5nIHwgbnVsbDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGRldmljZU5hbWVWYWxpZGF0b3Iob3B0aW9uczogRGV2aWNlTmFtZVZhbGlkYXRvck9wdGlvbnMpOiBWYWxpZGF0b3JGbiB7XHJcbiAgICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcclxuICAgICAgICBjb25zdCByYXcgPSBTdHJpbmcoY29udHJvbC52YWx1ZSA/PyAnJykudHJpbSgpO1xyXG4gICAgICAgIGlmICghcmF3IHx8ICFvcHRpb25zLnJlZ2V4Py50cmltKCkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICBjb25zdCBydWxlID0gbmV3IFJlZ0V4cChgXig/OiR7b3B0aW9ucy5yZWdleH0pJGApO1xyXG4gICAgICAgICAgICBpZiAoIXJ1bGUudGVzdChyYXcpKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGRldmljZU5hbWU6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2FwdGlvbjogb3B0aW9ucy5jYXB0aW9uIHx8IG9wdGlvbnMucmVnZXgsXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9IGNhdGNoIHtcclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgIH07XHJcbn1cclxuIl19