@sbb-esta/lyne-elements-dev 5.0.0-next.2-dev.1778141158 → 5.0.0-next.2-dev.1778145833

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 (270) hide show
  1. package/custom-elements.json +6481 -6474
  2. package/development/accordion.component-Bvx-b38W.js +1 -1
  3. package/development/action-group.component-DZkXqIbQ.js +1 -1
  4. package/development/alert-group.component-w5PbU_4C.js +1 -1
  5. package/development/alert.component-DxzF0FOi.js +1 -1
  6. package/development/autocomplete/autocomplete.component.js +1 -1
  7. package/development/autocomplete-base-element-DZx53PO1.js +1 -1
  8. package/development/block-link-common-CoZgcEBY.js +1 -1
  9. package/development/breadcrumb-group.component-BUBfl6LV.js +1 -1
  10. package/development/breadcrumb.component-D6Cd2FPo.js +1 -1
  11. package/development/button/accent-button/accent-button.component.js +1 -1
  12. package/development/button/accent-button-link/accent-button-link.component.js +1 -1
  13. package/development/button/accent-button-static/accent-button-static.component.js +1 -1
  14. package/development/button/button/button.component.js +1 -1
  15. package/development/button/button-link/button-link.component.js +1 -1
  16. package/development/button/button-static/button-static.component.js +1 -1
  17. package/development/button/mini-button/mini-button.component.js +1 -1
  18. package/development/button/secondary-button/secondary-button.component.js +1 -1
  19. package/development/button/secondary-button-link/secondary-button-link.component.js +1 -1
  20. package/development/button/secondary-button-static/secondary-button-static.component.js +1 -1
  21. package/development/button/transparent-button/transparent-button.component.js +1 -1
  22. package/development/button/transparent-button-link/transparent-button-link.component.js +1 -1
  23. package/development/button/transparent-button-static/transparent-button-static.component.js +1 -1
  24. package/development/button-common-DZUBRwwD.js +1 -1
  25. package/development/calendar/calendar-month/calendar-month.component.js +1 -1
  26. package/development/calendar/calendar-weekday/calendar-weekday.component.js +1 -1
  27. package/development/calendar/calendar-weeknumber/calendar-weeknumber.component.js +1 -1
  28. package/development/calendar/calendar-year/calendar-year.component.js +1 -1
  29. package/development/calendar-cell-base-element-mWRSDeWc.js +1 -1
  30. package/development/calendar-day.component-BHvdRxll.js +1 -1
  31. package/development/calendar.component-CjlcDyS5.js +1 -1
  32. package/development/card/card-button/card-button.component.js +1 -1
  33. package/development/card/card-link/card-link.component.js +1 -1
  34. package/development/card-action-common-zS5iNz23.js +1 -1
  35. package/development/card-badge.component-CEfJdJBs.js +1 -1
  36. package/development/card.component-CL2gHoyP.js +1 -1
  37. package/development/carousel-item.component-B_0wdIAu.js +1 -1
  38. package/development/carousel-list.component-DpDh5tqB.js +1 -1
  39. package/development/carousel.component-ClWvnZ8s.js +1 -1
  40. package/development/checkbox-common-C3Ekixul.js +1 -1
  41. package/development/checkbox-group/checkbox-group.component.js +1 -1
  42. package/development/checkbox-panel/checkbox-panel.component.js +1 -1
  43. package/development/checkbox.component-D6BR8e7w.js +1 -1
  44. package/development/chip-group.component-DThvmmnh.js +1 -1
  45. package/development/chip-label.component-DHHNtvTt.js +1 -1
  46. package/development/chip.component-Uuf3tGFz.js +1 -1
  47. package/development/clock.component-DcM1WFTN.js +1 -1
  48. package/development/compact-paginator.component-Dyj5CulS.js +1 -1
  49. package/development/container.component-D1Qgp4HW.js +1 -1
  50. package/development/core/a11y/arrow-navigation.js +1 -1
  51. package/development/core/a11y/fake-event-detection.js +1 -1
  52. package/development/core/a11y/focus-trap-controller.js +1 -1
  53. package/development/core/a11y/focus-visible-within-controller.js +1 -1
  54. package/development/core/a11y/input-modality-detector.js +1 -1
  55. package/development/core/a11y/interactivity-checker.js +1 -1
  56. package/development/core/a11y/live-announcer.js +1 -1
  57. package/development/core/base-elements/action-base-element.js +1 -1
  58. package/development/core/base-elements/button-base-element.js +1 -1
  59. package/development/core/base-elements/link-base-element.js +1 -1
  60. package/development/core/base-elements/open-close-base-element.js +1 -1
  61. package/development/core/config/config.js +1 -1
  62. package/development/core/controllers/escapable-overlay-controller.js +1 -1
  63. package/development/core/controllers/id-reference-controller.js +1 -1
  64. package/development/core/controllers/inert-controller.js +1 -1
  65. package/development/core/controllers/language-controller.js +1 -1
  66. package/development/core/controllers/media-matchers-controller.js +1 -1
  67. package/development/core/controllers/overlay-position-controller.js +1 -1
  68. package/development/core/controllers/property-watcher-controller.js +1 -1
  69. package/development/core/datetime/date-adapter.js +1 -1
  70. package/development/core/datetime/native-date-adapter.js +1 -1
  71. package/development/core/datetime/temporal-date-adapter.js +1 -1
  72. package/development/core/decorators/force-type.js +1 -1
  73. package/development/core/decorators/get-override.js +1 -1
  74. package/development/core/decorators/handle-distinct-change.js +1 -1
  75. package/development/core/decorators/host-attributes.js +1 -1
  76. package/development/core/decorators/id-reference.js +1 -1
  77. package/development/core/decorators/omit-empty-converter.js +1 -1
  78. package/development/core/decorators/plain-date.js +1 -1
  79. package/development/core/dom/animation.js +1 -1
  80. package/development/core/dom/contains-pierce-shadow-dom.js +1 -1
  81. package/development/core/dom/lean-context.js +1 -1
  82. package/development/core/dom/platform.js +1 -1
  83. package/development/core/dom/queue-dom-content-loaded.js +1 -1
  84. package/development/core/dom/scroll.js +1 -1
  85. package/development/core/dom/set-or-remove-attribute.js +1 -1
  86. package/development/core/eventing/composed-path-has-attribute.js +1 -1
  87. package/development/core/eventing/event-target.js +1 -1
  88. package/development/core/eventing/form-element-handlers.js +1 -1
  89. package/development/core/eventing/forward-event.js +1 -1
  90. package/development/core/eventing/is-event-prevented.js +1 -1
  91. package/development/core/eventing/throttle.js +1 -1
  92. package/development/core/i18n/i18n.js +1 -1
  93. package/development/core/mixins/animation-complete-mixin.js +1 -1
  94. package/development/core/mixins/disabled-mixin.js +1 -1
  95. package/development/core/mixins/form-associated-checkbox-mixin.js +1 -1
  96. package/development/core/mixins/form-associated-input-mixin.js +1 -1
  97. package/development/core/mixins/form-associated-mixin.js +1 -1
  98. package/development/core/mixins/form-associated-radio-button-mixin.js +1 -1
  99. package/development/core/mixins/named-slot-list-mixin.js +1 -1
  100. package/development/core/mixins/negative-mixin.js +1 -1
  101. package/development/core/mixins/readonly-mixin.js +1 -1
  102. package/development/core/mixins/required-mixin.js +1 -1
  103. package/development/core/mixins/selection-panel-mixin.js +1 -1
  104. package/development/core/mixins/update-scheduler-mixin.js +1 -1
  105. package/development/core/overlay/overlay-option-panel.js +1 -1
  106. package/development/core/overlay/overlay-outside-pointer-event-listener.js +1 -1
  107. package/development/core/overlay/overlay-trigger-attributes.js +1 -1
  108. package/development/core/overlay/position.js +1 -1
  109. package/development/core/testing/event-spy.js +1 -1
  110. package/development/core/testing/mocha-extensions.js +1 -1
  111. package/development/core/testing/wait-for-condition.js +1 -1
  112. package/development/core/testing/wait-for-image-ready.js +1 -1
  113. package/development/core/testing/wait-for-render.js +1 -1
  114. package/development/date-input.component-HxRyCudr.js +1 -1
  115. package/development/datepicker/datepicker/datepicker.component.js +1 -1
  116. package/development/datepicker/datepicker-next-day/datepicker-next-day.component.js +1 -1
  117. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +1 -1
  118. package/development/datepicker/datepicker-toggle/datepicker-toggle.component.js +1 -1
  119. package/development/datepicker-button-BAT1ebzJ.js +1 -1
  120. package/development/dialog-actions.component-e0ZTTUin.js +1 -1
  121. package/development/dialog-close-button.component-Idc00dB9.js +1 -1
  122. package/development/dialog-content.component-CThU7Z8A.js +1 -1
  123. package/development/dialog-title.component-0uNsUR2C.js +1 -1
  124. package/development/dialog.component-AItB8ixG.js +1 -1
  125. package/development/divider.component-Ck_0vISe.js +1 -1
  126. package/development/element-BAsBayf5.js +1 -1
  127. package/development/error.component-WCkiwM7_.js +1 -1
  128. package/development/expansion-panel-content.component-BUbiseFP.js +1 -1
  129. package/development/expansion-panel-header.component-CQFSwrqu.js +1 -1
  130. package/development/expansion-panel.component-BVdylpqi.js +1 -1
  131. package/development/file-selector/file-selector/file-selector.component.js +1 -1
  132. package/development/file-selector-common-Da0KNfDP.js +1 -1
  133. package/development/file-selector-dropzone.component-Bdcau18t.js +1 -1
  134. package/development/flip-card-details.component-BYv_W66a.js +1 -1
  135. package/development/flip-card-summary.component-C-US77Nw.js +1 -1
  136. package/development/flip-card.component-DujrPKzU.js +1 -1
  137. package/development/footer.component-K2bWizjw.js +1 -1
  138. package/development/form-field/form-field-clear/form-field-clear.component.js +1 -1
  139. package/development/form-field/form-field-text-counter/form-field-text-counter.component.js +1 -1
  140. package/development/form-field.component-_lnIpJF5.js +1 -1
  141. package/development/header/header-button/header-button.component.js +1 -1
  142. package/development/header/header-link/header-link.component.js +1 -1
  143. package/development/header-action-common-CQ1CaaBd.js +1 -1
  144. package/development/header-environment.component-CIyxQwkQ.js +1 -1
  145. package/development/header.component-BX1rKPa_.js +1 -1
  146. package/development/hint.component-BB9QLGGx.js +1 -1
  147. package/development/icon/icon-name-mixin.js +1 -1
  148. package/development/icon/icon-request.js +1 -1
  149. package/development/icon/icon-validate.js +1 -1
  150. package/development/icon/icon.component.js +1 -1
  151. package/development/icon-base-DrBHy9BT.js +1 -1
  152. package/development/icon-sidebar/icon-sidebar-button/icon-sidebar-button.component.js +1 -1
  153. package/development/icon-sidebar/icon-sidebar-link/icon-sidebar-link.component.js +1 -1
  154. package/development/icon-sidebar-container.component-CM94Spwy.js +1 -1
  155. package/development/icon-sidebar-content.component-BP9W5ZxR.js +1 -1
  156. package/development/icon-sidebar.component-B68P2aNh.js +1 -1
  157. package/development/image.component-EfSMgHI_.js +1 -1
  158. package/development/inline-link-common-gmt6yz3v.js +1 -1
  159. package/development/journey-header.component-CA4juz9x.js +1 -1
  160. package/development/lead-container.component-C_mFeq1B.js +1 -1
  161. package/development/link/block-link/block-link.component.js +1 -1
  162. package/development/link/block-link-button/block-link-button.component.js +1 -1
  163. package/development/link/block-link-static/block-link-static.component.js +1 -1
  164. package/development/link/link/link.component.js +1 -1
  165. package/development/link/link-button/link-button.component.js +1 -1
  166. package/development/link/link-static/link-static.component.js +1 -1
  167. package/development/link-common-2RGn9Qz_.js +1 -1
  168. package/development/link-list-anchor.component-Csb-FOQL.js +1 -1
  169. package/development/link-list-base-QADBTZCN.js +1 -1
  170. package/development/link-list.component-CKVU3Gsr.js +1 -1
  171. package/development/loading-indicator-circle.component-Cfjw5vyz.js +1 -1
  172. package/development/loading-indicator.component-By2VaLCf.js +1 -1
  173. package/development/logo.component-DYKgAgq0.js +1 -1
  174. package/development/map-container.component-D0UVTolK.js +1 -1
  175. package/development/menu/menu-button/menu-button.component.js +1 -1
  176. package/development/menu/menu-link/menu-link.component.js +1 -1
  177. package/development/menu-action-common-DRXQc85Y.js +1 -1
  178. package/development/menu.component-Cv9wRj4H.js +1 -1
  179. package/development/message.component-CdO5GyE2.js +1 -1
  180. package/development/mini-button-group.component-Bg-etiu1.js +1 -1
  181. package/development/mini-button-link.component-kpRsi8I2.js +1 -1
  182. package/development/mini-calendar-day.component-BLkJ12Bw.js +1 -1
  183. package/development/mini-calendar-month.component-D8XjjLmN.js +1 -1
  184. package/development/mini-calendar.component-BOk8JovO.js +1 -1
  185. package/development/navigation/navigation-button/navigation-button.component.js +1 -1
  186. package/development/navigation/navigation-link/navigation-link.component.js +1 -1
  187. package/development/navigation-action-common-CGy4K8q-.js +1 -1
  188. package/development/navigation-list.component-DrdbtDRs.js +1 -1
  189. package/development/navigation-marker.component-fB05cjtE.js +1 -1
  190. package/development/navigation-section.component-iaypc6yQ.js +1 -1
  191. package/development/navigation.component-CqNkBvEs.js +1 -1
  192. package/development/notification.component-D0rkSF3p.js +1 -1
  193. package/development/optgroup-base-element-Cq8DMPk9.js +1 -1
  194. package/development/option/optgroup/optgroup.component.js +1 -1
  195. package/development/option/option/option-base-element.js +1 -1
  196. package/development/option-hint.component-B4PxB3BW.js +1 -1
  197. package/development/option.component-CV6cZnJe.js +1 -1
  198. package/development/overlay/overlay-base-element.js +1 -1
  199. package/development/overlay.component-rFmitc_r.js +1 -1
  200. package/development/paginator/common/paginator-common.js +1 -1
  201. package/development/paginator.component-DIuiY7It.js +1 -1
  202. package/development/panel-mixin-CFz9-K_8.js +1 -1
  203. package/development/popover.component-Bvbf4NyI.js +1 -1
  204. package/development/radio-button-common-tC_l-WdB.js +1 -1
  205. package/development/radio-button-group/radio-button-group.component.js +1 -1
  206. package/development/radio-button-panel/radio-button-panel.component.js +1 -1
  207. package/development/radio-button.component-3BV31Fkc.js +1 -1
  208. package/development/select.component-VODtrUee.js +1 -1
  209. package/development/selection-action-panel.component-ClpKsc-Z.js +1 -1
  210. package/development/selection-expansion-panel.component-CTCVJiug.js +1 -1
  211. package/development/selection-group-base-element-RafKyWXP.js +1 -1
  212. package/development/sidebar-close-button.component-D_grme_h.js +1 -1
  213. package/development/sidebar-container.component-C_cu3Vfy.js +1 -1
  214. package/development/sidebar-content.component-CbYPeaaz.js +1 -1
  215. package/development/sidebar-title.component-BFqfnG6B.js +1 -1
  216. package/development/sidebar.component-DcVKyd9R.js +1 -1
  217. package/development/signet.component-NdFqUZK9.js +1 -1
  218. package/development/skiplink-list.component-ppyytKn2.js +1 -1
  219. package/development/slider.component-k8g6G0j9.js +1 -1
  220. package/development/status.component-CtTNDvLl.js +1 -1
  221. package/development/step-label.component-BpuNDWKl.js +1 -1
  222. package/development/{step.component-Di2fT-VG.js → step.component-HU8Ji1Pu.js} +11 -2
  223. package/development/stepper/step/step.component.d.ts +1 -0
  224. package/development/stepper/step/step.component.d.ts.map +1 -1
  225. package/development/stepper/step/step.component.js +1 -1
  226. package/development/stepper.component-BnCUoYv6.js +1 -1
  227. package/development/stepper.js +1 -1
  228. package/development/stepper.pure.js +1 -1
  229. package/development/sticky-bar.component-BrSBKlh-.js +1 -1
  230. package/development/tab-group.component-o1F-M_-2.js +1 -1
  231. package/development/tab-label.component-CPaKKeox.js +1 -1
  232. package/development/tab-nav-bar.component-3uXgOman.js +1 -1
  233. package/development/tab.component-DxZtEaTP.js +1 -1
  234. package/development/table-wrapper.component-Ba6NpQu1.js +1 -1
  235. package/development/tag-group.component-CYL62Umh.js +1 -1
  236. package/development/tag.component-D5DYXQ3i.js +1 -1
  237. package/development/teaser-hero.component-DrdkFx5X.js +1 -1
  238. package/development/teaser-panel.component-WSXbBzCq.js +1 -1
  239. package/development/teaser-product/teaser-product-static/teaser-product-static.component.js +1 -1
  240. package/development/teaser-product-common-B8a-KHTi.js +1 -1
  241. package/development/teaser-product.component-gHjSaG6c.js +1 -1
  242. package/development/teaser.component-B8kQNF6g.js +1 -1
  243. package/development/time-input.component-Bc4Sfu-1.js +1 -1
  244. package/development/timetable-form-details.component-DacESFsP.js +1 -1
  245. package/development/timetable-form-field.component-DWCb4SY0.js +1 -1
  246. package/development/timetable-form-swap-button.component-DGCpV2_y.js +1 -1
  247. package/development/timetable-form.component-CtRlKR7e.js +1 -1
  248. package/development/timetable-occupancy-icon.component-uaabLEC5.js +1 -1
  249. package/development/timetable-occupancy.component-DKWki5pG.js +1 -1
  250. package/development/title-base-fg03gSOD.js +1 -1
  251. package/development/title.component-B1Uq-Ctr.js +1 -1
  252. package/development/toast.component-DeQSxWdf.js +1 -1
  253. package/development/toggle-check.component-BUYj49gP.js +1 -1
  254. package/development/toggle-option.component-heU6pMCB.js +1 -1
  255. package/development/toggle.component-DndGyA1x.js +1 -1
  256. package/development/tooltip.component-BjOgv29e.js +1 -1
  257. package/development/train/train-formation-orientation-mixin.js +1 -1
  258. package/development/train/train-wagon/train-wagon.component.js +1 -1
  259. package/development/train/train-wagon-button/train-wagon-button.component.js +1 -1
  260. package/development/train/train-wagon-link/train-wagon-link.component.js +1 -1
  261. package/development/train-blocked-passage.component-2TuSqbDg.js +1 -1
  262. package/development/train-formation.component-BYB03zX5.js +1 -1
  263. package/development/train-wagon-common-C-0fI1r2.js +1 -1
  264. package/development/train.component-BDG8SlCc.js +1 -1
  265. package/development/visual-checkbox.component-Dzdm0TH-.js +1 -1
  266. package/package.json +2 -2
  267. package/{step.component-KiTfzfTj.js → step.component-Djot0mhi.js} +6 -2
  268. package/stepper/step/step.component.js +1 -1
  269. package/stepper.js +1 -1
  270. package/stepper.pure.js +1 -1
@@ -203,4 +203,4 @@ var SbbOverlayElement = (() => {
203
203
  //#endregion
204
204
  export { SbbOverlayElement as t };
205
205
 
206
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS5jb21wb25lbnQtckZtaXRjX3IuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL292ZXJsYXkvb3ZlcmxheS5zY3NzP2lubGluZSIsIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9vdmVybGF5L292ZXJsYXkuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJy4uL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbjpob3N0IHtcbiAgLS1fc2JiLW92ZXJsYXktcGFkZGluZy1ibG9jazogY2FsYyhcbiAgICB2YXIoLS1zYmItc3BhY2luZy1maXhlZC0xNHgpICsgdmFyKC0tc2JiLXNwYWNpbmctcmVzcG9uc2l2ZS1sKVxuICApO1xuICAtLXNiYi1vdmVybGF5LWFuaW1hdGlvbi1kdXJhdGlvbjogdmFyKFxuICAgIC0tc2JiLWRpc2FibGUtYW5pbWF0aW9uLWR1cmF0aW9uLFxuICAgIHZhcigtLXNiYi1hbmltYXRpb24tZHVyYXRpb24tNngpXG4gICk7XG5cbiAgZGlzcGxheTogdmFyKC0tc2JiLW92ZXJsYXktZGlzcGxheSk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgaW5zZXQ6IHZhcigtLXNiYi1vdmVybGF5LWluc2V0KTtcbiAgei1pbmRleDogdmFyKC0tc2JiLW92ZXJsYXktei1pbmRleCwgdmFyKC0tc2JiLW92ZXJsYXktZGVmYXVsdC16LWluZGV4KSk7XG59XG5cbjpob3N0KDppcyg6c3RhdGUoc3RhdGUtb3BlbmluZyksIDpzdGF0ZShzdGF0ZS1vcGVuZWQpLCA6c3RhdGUoc3RhdGUtY2xvc2luZykpKSB7XG4gIC0tc2JiLW92ZXJsYXktZGlzcGxheTogYmxvY2s7XG4gIC0tc2JiLW92ZXJsYXktY29udGFpbmVyLWRpc3BsYXk6IGZsZXg7XG59XG5cbjpob3N0KDppcyg6c3RhdGUoc3RhdGUtb3BlbmluZyksIDpzdGF0ZShzdGF0ZS1vcGVuZWQpKSkge1xuICAtLXNiYi1vdmVybGF5LXBvaW50ZXItZXZlbnRzOiBhbGw7XG59XG5cbjpob3N0KFtuZWdhdGl2ZV0pIHtcbiAgLS1zYmItZm9jdXMtb3V0bGluZS1jb2xvcjogdmFyKC0tc2JiLWZvY3VzLW91dGxpbmUtY29sb3ItZGFyayk7XG4gIC0tc2JiLW92ZXJsYXktY29sb3I6IHZhcigtLXNiYi1jb2xvci0xLW5lZ2F0aXZlKTtcbiAgLS1zYmItb3ZlcmxheS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItYmFja2dyb3VuZC1jb2xvci0zLW5lZ2F0aXZlKTtcbn1cblxuOmhvc3QoOm5vdCg6c3RhdGUoc3RhdGUtY2xvc2VkKSkpIHtcbiAgLS1zYmItb3ZlcmxheS1pbnNldDogMDtcbn1cblxuLnNiYi1vdmVybGF5X19jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItb3ZlcmxheS1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgcG9pbnRlci1ldmVudHM6IHZhcigtLXNiYi1vdmVybGF5LXBvaW50ZXItZXZlbnRzKTtcbiAgZGlzcGxheTogdmFyKC0tc2JiLW92ZXJsYXktY29udGFpbmVyLWRpc3BsYXkpO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGluc2V0OiB2YXIoLS1zYmItb3ZlcmxheS1pbnNldCk7XG5cbiAgOmhvc3QoOmlzKDpzdGF0ZShzdGF0ZS1vcGVuaW5nKSwgOnN0YXRlKHN0YXRlLW9wZW5lZCksIDpzdGF0ZShzdGF0ZS1jbG9zaW5nKSkpICYge1xuICAgIGFuaW1hdGlvbjoge1xuICAgICAgbmFtZTogb3BlbjtcbiAgICAgIGR1cmF0aW9uOiB2YXIoLS1zYmItb3ZlcmxheS1hbmltYXRpb24tZHVyYXRpb24pO1xuICAgICAgdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zYmItb3ZlcmxheS1hbmltYXRpb24tZWFzaW5nKTtcbiAgICB9XG4gIH1cblxuICA6aG9zdCg6c3RhdGUoc3RhdGUtY2xvc2luZykpICYge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBjbG9zZTtcbiAgfVxufVxuXG4uc2JiLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0LWlubGluZTogMDtcbiAgbWFyZ2luOiBhdXRvO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGhlaWdodDogdmFyKC0tc2JiLW92ZXJsYXktaGVpZ2h0KTtcbiAgY29sb3I6IHZhcigtLXNiYi1vdmVybGF5LWNvbG9yKTtcblxuICA6aG9zdCg6aXMoOnN0YXRlKHN0YXRlLW9wZW5pbmcpLCA6c3RhdGUoc3RhdGUtb3BlbmVkKSwgOnN0YXRlKHN0YXRlLWNsb3NpbmcpKSkgJiB7XG4gICAgYW5pbWF0aW9uOiB7XG4gICAgICBuYW1lOiBvcGVuLW1vdmUtaW47XG4gICAgICBkdXJhdGlvbjogdmFyKC0tc2JiLW92ZXJsYXktYW5pbWF0aW9uLWR1cmF0aW9uKTtcbiAgICAgIHRpbWluZy1mdW5jdGlvbjogdmFyKC0tc2JiLW92ZXJsYXktYW5pbWF0aW9uLWVhc2luZyk7XG4gICAgfVxuICB9XG5cbiAgOmhvc3QoOnN0YXRlKHN0YXRlLWNsb3NpbmcpKSAmIHtcbiAgICBhbmltYXRpb24tbmFtZTogY2xvc2UtbW92ZS1vdXQ7XG4gIH1cbn1cblxuLnNiYi1vdmVybGF5X193cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogdmFyKC0tc2JiLW92ZXJsYXktaGVpZ2h0KTtcbiAgb3V0bGluZTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuXG4gIEBpbmNsdWRlIHNiYi5tcSgkZnJvbTogbGFyZ2UpIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIGluc2V0LWJsb2NrLXN0YXJ0OiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG4uc2JiLW92ZXJsYXlfX2hlYWRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQtaW5saW5lLXN0YXJ0OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiB2YXIoLS1zYmItc3BhY2luZy1yZXNwb25zaXZlLXhzKTtcbiAgcGFkZGluZy1ibG9jay1lbmQ6IDA7XG4gIHotaW5kZXg6IDE7XG5cbiAgKiB7XG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgfVxufVxuXG4uc2JiLW92ZXJsYXlfX2Nsb3NlIHtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogYXV0bztcbn1cblxuLnNiYi1vdmVybGF5X19jb250ZW50IHtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuLnNiYi1vdmVybGF5X19jb250ZW50LWNvbnRhaW5lciB7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLV9zYmItb3ZlcmxheS1wYWRkaW5nLWJsb2NrKTtcbn1cblxuLy8gSXQgaXMgbmVjZXNzYXJ5IHRvIHVzZSBhbmltYXRpb25zIHdpdGgga2V5ZnJhbWVzIGluc3RlYWQgb2YgdHJhbnNpdGlvbnMgaW4gb3JkZXIgbm90IHRvIGFsdGVyXG4vLyB0aGUgZGVmYXVsdCBgZGlzcGxheTogYmxvY2tgIG9mIHRoZSBtb2RhbCBvdGhlcndpc2UgaXQgY2F1c2VzIHNldmVyYWwgcHJvYmxlbXMsXG4vLyBlc3BlY2lhbGx5IGZvciBhY2Nlc3NpYmlsaXR5LlxuQGtleWZyYW1lcyBvcGVuIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgb3Blbi1tb3ZlLWluIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTR4KSk7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGNsb3NlIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgY2xvc2UtbW92ZS1vdXQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSh2YXIoLS1zYmItc3BhY2luZy1maXhlZC00eCkpO1xuICB9XG59XG4iLCJpbXBvcnQgeyB0eXBlIENTU1Jlc3VsdEdyb3VwLCB0eXBlIFByb3BlcnR5VmFsdWVzLCB0eXBlIFRlbXBsYXRlUmVzdWx0LCB1bnNhZmVDU1MgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyByZWYgfSBmcm9tICdsaXQvZGlyZWN0aXZlcy9yZWYuanMnO1xuaW1wb3J0IHsgaHRtbCB9IGZyb20gJ2xpdC9zdGF0aWMtaHRtbC5qcyc7XG5cbmltcG9ydCB7IFNiYlNlY29uZGFyeUJ1dHRvbkVsZW1lbnQgfSBmcm9tICcuLi9idXR0b24ucHVyZS50cyc7XG5pbXBvcnQgeyBTYmJDb250YWluZXJFbGVtZW50IH0gZnJvbSAnLi4vY29udGFpbmVyLnB1cmUudHMnO1xuaW1wb3J0IHtcbiAgZm9yY2VUeXBlLFxuICBmb3J3YXJkRXZlbnQsXG4gIGkxOG5DbG9zZURpYWxvZyxcbiAgaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24sXG4gIHR5cGUgU2JiRWxlbWVudFR5cGUsXG4gIHR5cGUgU2JiT3ZlcmxheUNsb3NlRXZlbnREZXRhaWxzLFxuICBzY3JvbGxiYXJTdHlsZXMsXG59IGZyb20gJy4uL2NvcmUudHMnO1xuXG5pbXBvcnQge1xuICBvdmVybGF5UmVmcyxcbiAgU2JiT3ZlcmxheUJhc2VFbGVtZW50LFxuICBTYmJPdmVybGF5Q2xvc2VFdmVudCxcbn0gZnJvbSAnLi9vdmVybGF5LWJhc2UtZWxlbWVudC50cyc7XG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9vdmVybGF5LnNjc3M/aW5saW5lJztcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBhbiBpbnRlcmFjdGl2ZSBvdmVybGF5IGVsZW1lbnQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBwcm92aWRlIGEgY29udGVudCBmb3IgdGhlIG92ZXJsYXkuXG4gKiBAY3NzcHJvcCBbLS1zYmItb3ZlcmxheS16LWluZGV4PXZhcigtLXNiYi1vdmVybGF5LWRlZmF1bHQtei1pbmRleCldIC0gVG8gc3BlY2lmeSBhIGN1c3RvbSBzdGFjayBvcmRlcixcbiAqIHRoZSBgei1pbmRleGAgY2FuIGJlIG92ZXJyaWRkZW4gYnkgZGVmaW5pbmcgdGhpcyBDU1MgdmFyaWFibGUuIFRoZSBkZWZhdWx0IGB6LWluZGV4YCBvZiB0aGVcbiAqIGNvbXBvbmVudCBpcyBzZXQgdG8gYHZhcigtLXNiYi1vdmVybGF5LWRlZmF1bHQtei1pbmRleClgIHdpdGggYSB2YWx1ZSBvZiBgMTAwMGAuXG4gKi9cbmV4cG9ydCBjbGFzcyBTYmJPdmVybGF5RWxlbWVudCBleHRlbmRzIFNiYk92ZXJsYXlCYXNlRWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItb3ZlcmxheSc7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgZWxlbWVudERlcGVuZGVuY2llczogU2JiRWxlbWVudFR5cGVbXSA9IFtcbiAgICBTYmJTZWNvbmRhcnlCdXR0b25FbGVtZW50LFxuICAgIFNiYkNvbnRhaW5lckVsZW1lbnQsXG4gIF07XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtzY3JvbGxiYXJTdHlsZXMsIHVuc2FmZUNTUyhzdHlsZSldO1xuXG4gIC8vIFRPRE86IGZpeCB1c2luZyAuLi5zdXBlci5ldmVudHMgcmVxdWlyZXM6IGh0dHBzOi8vZ2l0aHViLmNvbS9zYmItZGVzaWduLXN5c3RlbXMvbHluZS1jb21wb25lbnRzL2lzc3Vlcy8yNjAwXG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZXZlbnRzID0ge1xuICAgIGJlZm9yZW9wZW46ICdiZWZvcmVvcGVuJyxcbiAgICBvcGVuOiAnb3BlbicsXG4gICAgYmVmb3JlY2xvc2U6ICdiZWZvcmVjbG9zZScsXG4gICAgY2xvc2U6ICdjbG9zZScsXG4gIH0gYXMgY29uc3Q7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gYWxsb3cgdGhlIG92ZXJsYXkgY29udGVudCB0byBzdHJldGNoIHRvIGZ1bGwgd2lkdGguXG4gICAqIEJ5IGRlZmF1bHQsIHRoZSBjb250ZW50IGhhcyB0aGUgYXBwcm9wcmlhdGUgcGFnZSBzaXplLlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUsIHR5cGU6IEJvb2xlYW4gfSlcbiAgcHVibGljIGFjY2Vzc29yIGV4cGFuZGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIFRoaXMgd2lsbCBiZSBmb3J3YXJkZWQgYXMgYXJpYS1sYWJlbCB0byB0aGUgY2xvc2UgYnV0dG9uIGVsZW1lbnQuICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdhY2Nlc3NpYmlsaXR5LWNsb3NlLWxhYmVsJyB9KVxuICBwdWJsaWMgYWNjZXNzb3IgYWNjZXNzaWJpbGl0eUNsb3NlTGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gIHByb3RlY3RlZCBjbG9zZUF0dHJpYnV0ZTogc3RyaW5nID0gJ3NiYi1vdmVybGF5LWNsb3NlJztcbiAgcHJpdmF0ZSBfb3ZlcmxheUNvbnRlbnRFbGVtZW50OiBIVE1MRWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIC8vIElmIHRoZSBjb21wb25lbnQgaXMgYWxyZWFkeSBvcGVuIG9uIGZpcnN0VXBkYXRlLCBhbm5vdW5jZSB0aGUgdGl0bGVcbiAgICBpZiAodGhpcy5pc09wZW4pIHtcbiAgICAgIHRoaXMuc2V0QXJpYUxpdmVSZWZDb250ZW50KCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGlzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc1plcm9BbmltYXRpb25EdXJhdGlvbih0aGlzLCAnLS1zYmItb3ZlcmxheS1hbmltYXRpb24tZHVyYXRpb24nKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVPcGVuaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGUgPSAnb3BlbmVkJztcbiAgICB0aGlzLmluZXJ0Q29udHJvbGxlci5hY3RpdmF0ZSgpO1xuICAgIHRoaXMuZm9jdXNUcmFwQ29udHJvbGxlci5mb2N1c0luaXRpYWxFbGVtZW50KCk7XG4gICAgLy8gVXNlIHRpbWVvdXQgdG8gcmVhZCBsYWJlbCBhZnRlciBmb2N1c2VkIGVsZW1lbnRcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuc2V0QXJpYUxpdmVSZWZDb250ZW50KHRoaXMuYWNjZXNzaWJpbGl0eUxhYmVsKSk7XG4gICAgdGhpcy5mb2N1c1RyYXBDb250cm9sbGVyLmVuYWJsZWQgPSB0cnVlO1xuICAgIHRoaXMuZGlzcGF0Y2hPcGVuRXZlbnQoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBoYW5kbGVDbG9zaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuX292ZXJsYXlDb250ZW50RWxlbWVudD8uc2Nyb2xsVG8oMCwgMCk7XG4gICAgdGhpcy5zdGF0ZSA9ICdjbG9zZWQnO1xuICAgIHRoaXMuaGlkZVBvcG92ZXI/LigpO1xuICAgIHRoaXMuaW5lcnRDb250cm9sbGVyLmRlYWN0aXZhdGUoKTtcbiAgICBpZiAoIXRoaXMuc2tpcEZvY3VzUmVzdG9yYXRpb24pIHtcbiAgICAgIC8vIE1hbnVhbGx5IGZvY3VzIGxhc3QgZm9jdXNlZCBlbGVtZW50XG4gICAgICB0aGlzLmxhc3RGb2N1c2VkRWxlbWVudD8uZm9jdXMoKTtcbiAgICB9XG4gICAgdGhpcy5vcGVuT3ZlcmxheUNvbnRyb2xsZXI/LmFib3J0KCk7XG4gICAgdGhpcy5mb2N1c1RyYXBDb250cm9sbGVyLmVuYWJsZWQgPSBmYWxzZTtcbiAgICB0aGlzLnJlbW92ZUluc3RhbmNlRnJvbUdsb2JhbENvbGxlY3Rpb24oKTtcbiAgICAvLyBFbmFibGUgc2Nyb2xsaW5nIGZvciBjb250ZW50IGJlbG93IHRoZSBvdmVybGF5IGlmIG5vIG92ZXJsYXkgaXMgb3BlblxuICAgIGlmICghb3ZlcmxheVJlZnMubGVuZ3RoKSB7XG4gICAgICB0aGlzLnNjcm9sbEhhbmRsZXIuZW5hYmxlU2Nyb2xsKCk7XG4gICAgfVxuICAgIHRoaXMuZXNjYXBhYmxlT3ZlcmxheUNvbnRyb2xsZXIuZGlzY29ubmVjdCgpO1xuICAgIHRoaXMuZGlzcGF0Y2hDbG9zZUV2ZW50KHtcbiAgICAgIHJldHVyblZhbHVlOiB0aGlzLnJldHVyblZhbHVlLFxuICAgICAgY2xvc2VUYXJnZXQ6IHRoaXMub3ZlcmxheUNsb3NlRWxlbWVudCxcbiAgICB9KTtcbiAgfVxuXG4gIC8vIFRPRE86IHJlbW92ZSBwYXJhbWV0ZXIgYGRldGFpbGBcbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGRpc3BhdGNoQmVmb3JlQ2xvc2VFdmVudChfZGV0YWlsPzogU2JiT3ZlcmxheUNsb3NlRXZlbnREZXRhaWxzKTogYm9vbGVhbiB7XG4gICAgLyoqIEB0eXBlIHtTYmJPdmVybGF5Q2xvc2VFdmVudH0gRW1pdHMgd2hlbmV2ZXIgdGhlIGNvbXBvbmVudCBiZWdpbnMgdGhlIGNsb3NpbmcgdHJhbnNpdGlvbi4gQ2FuIGJlIGNhbmNlbGVkLiAqL1xuICAgIHJldHVybiB0aGlzLmRpc3BhdGNoRXZlbnQoXG4gICAgICBuZXcgU2JiT3ZlcmxheUNsb3NlRXZlbnQoJ2JlZm9yZWNsb3NlJywge1xuICAgICAgICBjYW5jZWxhYmxlOiB0cnVlLFxuICAgICAgICBjbG9zZUF0dHJpYnV0ZTogdGhpcy5jbG9zZUF0dHJpYnV0ZSxcbiAgICAgICAgY2xvc2VUYXJnZXQ6IHRoaXMub3ZlcmxheUNsb3NlRWxlbWVudCxcbiAgICAgICAgcmVzdWx0OiB0aGlzLnJldHVyblZhbHVlLFxuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIC8vIFRPRE86IHJlbW92ZSBwYXJhbWV0ZXIgYGRldGFpbGBcbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGRpc3BhdGNoQ2xvc2VFdmVudChfZGV0YWlsPzogU2JiT3ZlcmxheUNsb3NlRXZlbnREZXRhaWxzKTogYm9vbGVhbiB7XG4gICAgLyoqIEB0eXBlIHtTYmJPdmVybGF5Q2xvc2VFdmVudH0gRW1pdHMgd2hlbmV2ZXIgdGhlIGNvbXBvbmVudCBpcyBjbG9zZWQuICovXG4gICAgcmV0dXJuIHRoaXMuZGlzcGF0Y2hFdmVudChcbiAgICAgIG5ldyBTYmJPdmVybGF5Q2xvc2VFdmVudCgnY2xvc2UnLCB7XG4gICAgICAgIGNsb3NlQXR0cmlidXRlOiB0aGlzLmNsb3NlQXR0cmlidXRlLFxuICAgICAgICBjbG9zZVRhcmdldDogdGhpcy5vdmVybGF5Q2xvc2VFbGVtZW50LFxuICAgICAgICByZXN1bHQ6IHRoaXMucmV0dXJuVmFsdWUsXG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLW92ZXJsYXlfX2NvbnRhaW5lclwiIEBhbmltYXRpb25lbmQ9JHt0aGlzLm9uT3ZlcmxheUFuaW1hdGlvbkVuZH0+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItb3ZlcmxheVwiPlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIEBjbGljaz0keyhldmVudDogRXZlbnQpID0+IHRoaXMuY2xvc2VPblNiYk92ZXJsYXlDbG9zZUNsaWNrKGV2ZW50KX1cbiAgICAgICAgICAgIGNsYXNzPVwic2JiLW92ZXJsYXlfX3dyYXBwZXJcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItb3ZlcmxheV9faGVhZGVyXCI+XG4gICAgICAgICAgICAgIDxzYmItc2Vjb25kYXJ5LWJ1dHRvblxuICAgICAgICAgICAgICAgIGNsYXNzPVwic2JiLW92ZXJsYXlfX2Nsb3NlXCJcbiAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPVwiJHt0aGlzLmFjY2Vzc2liaWxpdHlDbG9zZUxhYmVsIHx8XG4gICAgICAgICAgICAgICAgaTE4bkNsb3NlRGlhbG9nW3RoaXMubGFuZ3VhZ2UuY3VycmVudF19XCJcbiAgICAgICAgICAgICAgICA/bmVnYXRpdmU9JHt0aGlzLm5lZ2F0aXZlfVxuICAgICAgICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICAgICAgICBpY29uLW5hbWU9XCJjcm9zcy1zbWFsbFwiXG4gICAgICAgICAgICAgICAgc2JiLW92ZXJsYXktY2xvc2VcbiAgICAgICAgICAgICAgPjwvc2JiLXNlY29uZGFyeS1idXR0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgY2xhc3M9XCJzYmItb3ZlcmxheV9fY29udGVudCAke3RoaXMubmVnYXRpdmVcbiAgICAgICAgICAgICAgICA/ICdzYmItc2Nyb2xsYmFyLW5lZ2F0aXZlJ1xuICAgICAgICAgICAgICAgIDogJ3NiYi1zY3JvbGxiYXInfVwiXG4gICAgICAgICAgICAgICR7cmVmKChlbD86IEVsZW1lbnQpID0+ICh0aGlzLl9vdmVybGF5Q29udGVudEVsZW1lbnQgPSBlbCBhcyBIVE1MRGl2RWxlbWVudCkpfVxuICAgICAgICAgICAgICBAc2Nyb2xsPSR7KGU6IEV2ZW50KSA9PiBmb3J3YXJkRXZlbnQoZSwgZG9jdW1lbnQpfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8c2JiLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgIGNsYXNzPVwic2JiLW92ZXJsYXlfX2NvbnRlbnQtY29udGFpbmVyXCJcbiAgICAgICAgICAgICAgICA/ZXhwYW5kZWQ9JHt0aGlzLmV4cGFuZGVkfVxuICAgICAgICAgICAgICAgIGNvbG9yPVwidHJhbnNwYXJlbnRcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgICAgICAgICA8L3NiYi1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXNjcmVlbi1yZWFkZXItb25seVwiIGFyaWEtbGl2ZT1cInBvbGl0ZVwiPjwvc3Bhbj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItb3ZlcmxheSc6IFNiYk92ZXJsYXlFbGVtZW50O1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQ2dDYSwyQkFBaUI7bUJBQVM7Ozs7Ozs7Y0FBMUIsMEJBQTBCLFlBQXFCOzs7QUFzQjFDLFNBQUEsNEJBQUEsa0JBQUEsTUFBQSx3QkFBb0IsTUFBSztBQUt6QixTQUFBLDRDQUFBLGtCQUFBLE1BQUEsNEJBQUEsRUFBQSxrQkFBQSxNQUFBLHVDQUFrQyxHQUFFO0FBRTFDLFFBQUEsa0JBQWMsa0JBQUEsTUFBQSwyQ0FBQSxFQUFXO0FBQzNCLFFBQUEseUJBQTZD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
206
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS5jb21wb25lbnQtckZtaXRjX3IuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL292ZXJsYXkvb3ZlcmxheS5zY3NzP2lubGluZSIsIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9vdmVybGF5L292ZXJsYXkuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJy4uL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbjpob3N0IHtcbiAgLS1fc2JiLW92ZXJsYXktcGFkZGluZy1ibG9jazogY2FsYyhcbiAgICB2YXIoLS1zYmItc3BhY2luZy1maXhlZC0xNHgpICsgdmFyKC0tc2JiLXNwYWNpbmctcmVzcG9uc2l2ZS1sKVxuICApO1xuICAtLXNiYi1vdmVybGF5LWFuaW1hdGlvbi1kdXJhdGlvbjogdmFyKFxuICAgIC0tc2JiLWRpc2FibGUtYW5pbWF0aW9uLWR1cmF0aW9uLFxuICAgIHZhcigtLXNiYi1hbmltYXRpb24tZHVyYXRpb24tNngpXG4gICk7XG5cbiAgZGlzcGxheTogdmFyKC0tc2JiLW92ZXJsYXktZGlzcGxheSk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgaW5zZXQ6IHZhcigtLXNiYi1vdmVybGF5LWluc2V0KTtcbiAgei1pbmRleDogdmFyKC0tc2JiLW92ZXJsYXktei1pbmRleCwgdmFyKC0tc2JiLW92ZXJsYXktZGVmYXVsdC16LWluZGV4KSk7XG59XG5cbjpob3N0KDppcyg6c3RhdGUoc3RhdGUtb3BlbmluZyksIDpzdGF0ZShzdGF0ZS1vcGVuZWQpLCA6c3RhdGUoc3RhdGUtY2xvc2luZykpKSB7XG4gIC0tc2JiLW92ZXJsYXktZGlzcGxheTogYmxvY2s7XG4gIC0tc2JiLW92ZXJsYXktY29udGFpbmVyLWRpc3BsYXk6IGZsZXg7XG59XG5cbjpob3N0KDppcyg6c3RhdGUoc3RhdGUtb3BlbmluZyksIDpzdGF0ZShzdGF0ZS1vcGVuZWQpKSkge1xuICAtLXNiYi1vdmVybGF5LXBvaW50ZXItZXZlbnRzOiBhbGw7XG59XG5cbjpob3N0KFtuZWdhdGl2ZV0pIHtcbiAgLS1zYmItZm9jdXMtb3V0bGluZS1jb2xvcjogdmFyKC0tc2JiLWZvY3VzLW91dGxpbmUtY29sb3ItZGFyayk7XG4gIC0tc2JiLW92ZXJsYXktY29sb3I6IHZhcigtLXNiYi1jb2xvci0xLW5lZ2F0aXZlKTtcbiAgLS1zYmItb3ZlcmxheS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItYmFja2dyb3VuZC1jb2xvci0zLW5lZ2F0aXZlKTtcbn1cblxuOmhvc3QoOm5vdCg6c3RhdGUoc3RhdGUtY2xvc2VkKSkpIHtcbiAgLS1zYmItb3ZlcmxheS1pbnNldDogMDtcbn1cblxuLnNiYi1vdmVybGF5X19jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItb3ZlcmxheS1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgcG9pbnRlci1ldmVudHM6IHZhcigtLXNiYi1vdmVybGF5LXBvaW50ZXItZXZlbnRzKTtcbiAgZGlzcGxheTogdmFyKC0tc2JiLW92ZXJsYXktY29udGFpbmVyLWRpc3BsYXkpO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGluc2V0OiB2YXIoLS1zYmItb3ZlcmxheS1pbnNldCk7XG5cbiAgOmhvc3QoOmlzKDpzdGF0ZShzdGF0ZS1vcGVuaW5nKSwgOnN0YXRlKHN0YXRlLW9wZW5lZCksIDpzdGF0ZShzdGF0ZS1jbG9zaW5nKSkpICYge1xuICAgIGFuaW1hdGlvbjoge1xuICAgICAgbmFtZTogb3BlbjtcbiAgICAgIGR1cmF0aW9uOiB2YXIoLS1zYmItb3ZlcmxheS1hbmltYXRpb24tZHVyYXRpb24pO1xuICAgICAgdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zYmItb3ZlcmxheS1hbmltYXRpb24tZWFzaW5nKTtcbiAgICB9XG4gIH1cblxuICA6aG9zdCg6c3RhdGUoc3RhdGUtY2xvc2luZykpICYge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBjbG9zZTtcbiAgfVxufVxuXG4uc2JiLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0LWlubGluZTogMDtcbiAgbWFyZ2luOiBhdXRvO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGhlaWdodDogdmFyKC0tc2JiLW92ZXJsYXktaGVpZ2h0KTtcbiAgY29sb3I6IHZhcigtLXNiYi1vdmVybGF5LWNvbG9yKTtcblxuICA6aG9zdCg6aXMoOnN0YXRlKHN0YXRlLW9wZW5pbmcpLCA6c3RhdGUoc3RhdGUtb3BlbmVkKSwgOnN0YXRlKHN0YXRlLWNsb3NpbmcpKSkgJiB7XG4gICAgYW5pbWF0aW9uOiB7XG4gICAgICBuYW1lOiBvcGVuLW1vdmUtaW47XG4gICAgICBkdXJhdGlvbjogdmFyKC0tc2JiLW92ZXJsYXktYW5pbWF0aW9uLWR1cmF0aW9uKTtcbiAgICAgIHRpbWluZy1mdW5jdGlvbjogdmFyKC0tc2JiLW92ZXJsYXktYW5pbWF0aW9uLWVhc2luZyk7XG4gICAgfVxuICB9XG5cbiAgOmhvc3QoOnN0YXRlKHN0YXRlLWNsb3NpbmcpKSAmIHtcbiAgICBhbmltYXRpb24tbmFtZTogY2xvc2UtbW92ZS1vdXQ7XG4gIH1cbn1cblxuLnNiYi1vdmVybGF5X193cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogdmFyKC0tc2JiLW92ZXJsYXktaGVpZ2h0KTtcbiAgb3V0bGluZTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuXG4gIEBpbmNsdWRlIHNiYi5tcSgkZnJvbTogbGFyZ2UpIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIGluc2V0LWJsb2NrLXN0YXJ0OiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG4uc2JiLW92ZXJsYXlfX2hlYWRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQtaW5saW5lLXN0YXJ0OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiB2YXIoLS1zYmItc3BhY2luZy1yZXNwb25zaXZlLXhzKTtcbiAgcGFkZGluZy1ibG9jay1lbmQ6IDA7XG4gIHotaW5kZXg6IDE7XG5cbiAgKiB7XG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgfVxufVxuXG4uc2JiLW92ZXJsYXlfX2Nsb3NlIHtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogYXV0bztcbn1cblxuLnNiYi1vdmVybGF5X19jb250ZW50IHtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuLnNiYi1vdmVybGF5X19jb250ZW50LWNvbnRhaW5lciB7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLV9zYmItb3ZlcmxheS1wYWRkaW5nLWJsb2NrKTtcbn1cblxuLy8gSXQgaXMgbmVjZXNzYXJ5IHRvIHVzZSBhbmltYXRpb25zIHdpdGgga2V5ZnJhbWVzIGluc3RlYWQgb2YgdHJhbnNpdGlvbnMgaW4gb3JkZXIgbm90IHRvIGFsdGVyXG4vLyB0aGUgZGVmYXVsdCBgZGlzcGxheTogYmxvY2tgIG9mIHRoZSBtb2RhbCBvdGhlcndpc2UgaXQgY2F1c2VzIHNldmVyYWwgcHJvYmxlbXMsXG4vLyBlc3BlY2lhbGx5IGZvciBhY2Nlc3NpYmlsaXR5LlxuQGtleWZyYW1lcyBvcGVuIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgb3Blbi1tb3ZlLWluIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTR4KSk7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGNsb3NlIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgY2xvc2UtbW92ZS1vdXQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSh2YXIoLS1zYmItc3BhY2luZy1maXhlZC00eCkpO1xuICB9XG59XG4iLCJpbXBvcnQgeyB0eXBlIENTU1Jlc3VsdEdyb3VwLCB0eXBlIFByb3BlcnR5VmFsdWVzLCB0eXBlIFRlbXBsYXRlUmVzdWx0LCB1bnNhZmVDU1MgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyByZWYgfSBmcm9tICdsaXQvZGlyZWN0aXZlcy9yZWYuanMnO1xuaW1wb3J0IHsgaHRtbCB9IGZyb20gJ2xpdC9zdGF0aWMtaHRtbC5qcyc7XG5cbmltcG9ydCB7IFNiYlNlY29uZGFyeUJ1dHRvbkVsZW1lbnQgfSBmcm9tICcuLi9idXR0b24ucHVyZS50cyc7XG5pbXBvcnQgeyBTYmJDb250YWluZXJFbGVtZW50IH0gZnJvbSAnLi4vY29udGFpbmVyLnB1cmUudHMnO1xuaW1wb3J0IHtcbiAgZm9yY2VUeXBlLFxuICBmb3J3YXJkRXZlbnQsXG4gIGkxOG5DbG9zZURpYWxvZyxcbiAgaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24sXG4gIHR5cGUgU2JiRWxlbWVudFR5cGUsXG4gIHR5cGUgU2JiT3ZlcmxheUNsb3NlRXZlbnREZXRhaWxzLFxuICBzY3JvbGxiYXJTdHlsZXMsXG59IGZyb20gJy4uL2NvcmUudHMnO1xuXG5pbXBvcnQge1xuICBvdmVybGF5UmVmcyxcbiAgU2JiT3ZlcmxheUJhc2VFbGVtZW50LFxuICBTYmJPdmVybGF5Q2xvc2VFdmVudCxcbn0gZnJvbSAnLi9vdmVybGF5LWJhc2UtZWxlbWVudC50cyc7XG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9vdmVybGF5LnNjc3M/aW5saW5lJztcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBhbiBpbnRlcmFjdGl2ZSBvdmVybGF5IGVsZW1lbnQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBwcm92aWRlIGEgY29udGVudCBmb3IgdGhlIG92ZXJsYXkuXG4gKiBAY3NzcHJvcCBbLS1zYmItb3ZlcmxheS16LWluZGV4PXZhcigtLXNiYi1vdmVybGF5LWRlZmF1bHQtei1pbmRleCldIC0gVG8gc3BlY2lmeSBhIGN1c3RvbSBzdGFjayBvcmRlcixcbiAqIHRoZSBgei1pbmRleGAgY2FuIGJlIG92ZXJyaWRkZW4gYnkgZGVmaW5pbmcgdGhpcyBDU1MgdmFyaWFibGUuIFRoZSBkZWZhdWx0IGB6LWluZGV4YCBvZiB0aGVcbiAqIGNvbXBvbmVudCBpcyBzZXQgdG8gYHZhcigtLXNiYi1vdmVybGF5LWRlZmF1bHQtei1pbmRleClgIHdpdGggYSB2YWx1ZSBvZiBgMTAwMGAuXG4gKi9cbmV4cG9ydCBjbGFzcyBTYmJPdmVybGF5RWxlbWVudCBleHRlbmRzIFNiYk92ZXJsYXlCYXNlRWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItb3ZlcmxheSc7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgZWxlbWVudERlcGVuZGVuY2llczogU2JiRWxlbWVudFR5cGVbXSA9IFtcbiAgICBTYmJTZWNvbmRhcnlCdXR0b25FbGVtZW50LFxuICAgIFNiYkNvbnRhaW5lckVsZW1lbnQsXG4gIF07XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtzY3JvbGxiYXJTdHlsZXMsIHVuc2FmZUNTUyhzdHlsZSldO1xuXG4gIC8vIFRPRE86IGZpeCB1c2luZyAuLi5zdXBlci5ldmVudHMgcmVxdWlyZXM6IGh0dHBzOi8vZ2l0aHViLmNvbS9zYmItZGVzaWduLXN5c3RlbXMvbHluZS1jb21wb25lbnRzL2lzc3Vlcy8yNjAwXG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZXZlbnRzID0ge1xuICAgIGJlZm9yZW9wZW46ICdiZWZvcmVvcGVuJyxcbiAgICBvcGVuOiAnb3BlbicsXG4gICAgYmVmb3JlY2xvc2U6ICdiZWZvcmVjbG9zZScsXG4gICAgY2xvc2U6ICdjbG9zZScsXG4gIH0gYXMgY29uc3Q7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gYWxsb3cgdGhlIG92ZXJsYXkgY29udGVudCB0byBzdHJldGNoIHRvIGZ1bGwgd2lkdGguXG4gICAqIEJ5IGRlZmF1bHQsIHRoZSBjb250ZW50IGhhcyB0aGUgYXBwcm9wcmlhdGUgcGFnZSBzaXplLlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUsIHR5cGU6IEJvb2xlYW4gfSlcbiAgcHVibGljIGFjY2Vzc29yIGV4cGFuZGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIFRoaXMgd2lsbCBiZSBmb3J3YXJkZWQgYXMgYXJpYS1sYWJlbCB0byB0aGUgY2xvc2UgYnV0dG9uIGVsZW1lbnQuICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdhY2Nlc3NpYmlsaXR5LWNsb3NlLWxhYmVsJyB9KVxuICBwdWJsaWMgYWNjZXNzb3IgYWNjZXNzaWJpbGl0eUNsb3NlTGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gIHByb3RlY3RlZCBjbG9zZUF0dHJpYnV0ZTogc3RyaW5nID0gJ3NiYi1vdmVybGF5LWNsb3NlJztcbiAgcHJpdmF0ZSBfb3ZlcmxheUNvbnRlbnRFbGVtZW50OiBIVE1MRWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIC8vIElmIHRoZSBjb21wb25lbnQgaXMgYWxyZWFkeSBvcGVuIG9uIGZpcnN0VXBkYXRlLCBhbm5vdW5jZSB0aGUgdGl0bGVcbiAgICBpZiAodGhpcy5pc09wZW4pIHtcbiAgICAgIHRoaXMuc2V0QXJpYUxpdmVSZWZDb250ZW50KCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGlzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc1plcm9BbmltYXRpb25EdXJhdGlvbih0aGlzLCAnLS1zYmItb3ZlcmxheS1hbmltYXRpb24tZHVyYXRpb24nKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVPcGVuaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGUgPSAnb3BlbmVkJztcbiAgICB0aGlzLmluZXJ0Q29udHJvbGxlci5hY3RpdmF0ZSgpO1xuICAgIHRoaXMuZm9jdXNUcmFwQ29udHJvbGxlci5mb2N1c0luaXRpYWxFbGVtZW50KCk7XG4gICAgLy8gVXNlIHRpbWVvdXQgdG8gcmVhZCBsYWJlbCBhZnRlciBmb2N1c2VkIGVsZW1lbnRcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuc2V0QXJpYUxpdmVSZWZDb250ZW50KHRoaXMuYWNjZXNzaWJpbGl0eUxhYmVsKSk7XG4gICAgdGhpcy5mb2N1c1RyYXBDb250cm9sbGVyLmVuYWJsZWQgPSB0cnVlO1xuICAgIHRoaXMuZGlzcGF0Y2hPcGVuRXZlbnQoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBoYW5kbGVDbG9zaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuX292ZXJsYXlDb250ZW50RWxlbWVudD8uc2Nyb2xsVG8oMCwgMCk7XG4gICAgdGhpcy5zdGF0ZSA9ICdjbG9zZWQnO1xuICAgIHRoaXMuaGlkZVBvcG92ZXI/LigpO1xuICAgIHRoaXMuaW5lcnRDb250cm9sbGVyLmRlYWN0aXZhdGUoKTtcbiAgICBpZiAoIXRoaXMuc2tpcEZvY3VzUmVzdG9yYXRpb24pIHtcbiAgICAgIC8vIE1hbnVhbGx5IGZvY3VzIGxhc3QgZm9jdXNlZCBlbGVtZW50XG4gICAgICB0aGlzLmxhc3RGb2N1c2VkRWxlbWVudD8uZm9jdXMoKTtcbiAgICB9XG4gICAgdGhpcy5vcGVuT3ZlcmxheUNvbnRyb2xsZXI/LmFib3J0KCk7XG4gICAgdGhpcy5mb2N1c1RyYXBDb250cm9sbGVyLmVuYWJsZWQgPSBmYWxzZTtcbiAgICB0aGlzLnJlbW92ZUluc3RhbmNlRnJvbUdsb2JhbENvbGxlY3Rpb24oKTtcbiAgICAvLyBFbmFibGUgc2Nyb2xsaW5nIGZvciBjb250ZW50IGJlbG93IHRoZSBvdmVybGF5IGlmIG5vIG92ZXJsYXkgaXMgb3BlblxuICAgIGlmICghb3ZlcmxheVJlZnMubGVuZ3RoKSB7XG4gICAgICB0aGlzLnNjcm9sbEhhbmRsZXIuZW5hYmxlU2Nyb2xsKCk7XG4gICAgfVxuICAgIHRoaXMuZXNjYXBhYmxlT3ZlcmxheUNvbnRyb2xsZXIuZGlzY29ubmVjdCgpO1xuICAgIHRoaXMuZGlzcGF0Y2hDbG9zZUV2ZW50KHtcbiAgICAgIHJldHVyblZhbHVlOiB0aGlzLnJldHVyblZhbHVlLFxuICAgICAgY2xvc2VUYXJnZXQ6IHRoaXMub3ZlcmxheUNsb3NlRWxlbWVudCxcbiAgICB9KTtcbiAgfVxuXG4gIC8vIFRPRE86IHJlbW92ZSBwYXJhbWV0ZXIgYGRldGFpbGBcbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGRpc3BhdGNoQmVmb3JlQ2xvc2VFdmVudChfZGV0YWlsPzogU2JiT3ZlcmxheUNsb3NlRXZlbnREZXRhaWxzKTogYm9vbGVhbiB7XG4gICAgLyoqIEB0eXBlIHtTYmJPdmVybGF5Q2xvc2VFdmVudH0gRW1pdHMgd2hlbmV2ZXIgdGhlIGNvbXBvbmVudCBiZWdpbnMgdGhlIGNsb3NpbmcgdHJhbnNpdGlvbi4gQ2FuIGJlIGNhbmNlbGVkLiAqL1xuICAgIHJldHVybiB0aGlzLmRpc3BhdGNoRXZlbnQoXG4gICAgICBuZXcgU2JiT3ZlcmxheUNsb3NlRXZlbnQoJ2JlZm9yZWNsb3NlJywge1xuICAgICAgICBjYW5jZWxhYmxlOiB0cnVlLFxuICAgICAgICBjbG9zZUF0dHJpYnV0ZTogdGhpcy5jbG9zZUF0dHJpYnV0ZSxcbiAgICAgICAgY2xvc2VUYXJnZXQ6IHRoaXMub3ZlcmxheUNsb3NlRWxlbWVudCxcbiAgICAgICAgcmVzdWx0OiB0aGlzLnJldHVyblZhbHVlLFxuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIC8vIFRPRE86IHJlbW92ZSBwYXJhbWV0ZXIgYGRldGFpbGBcbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGRpc3BhdGNoQ2xvc2VFdmVudChfZGV0YWlsPzogU2JiT3ZlcmxheUNsb3NlRXZlbnREZXRhaWxzKTogYm9vbGVhbiB7XG4gICAgLyoqIEB0eXBlIHtTYmJPdmVybGF5Q2xvc2VFdmVudH0gRW1pdHMgd2hlbmV2ZXIgdGhlIGNvbXBvbmVudCBpcyBjbG9zZWQuICovXG4gICAgcmV0dXJuIHRoaXMuZGlzcGF0Y2hFdmVudChcbiAgICAgIG5ldyBTYmJPdmVybGF5Q2xvc2VFdmVudCgnY2xvc2UnLCB7XG4gICAgICAgIGNsb3NlQXR0cmlidXRlOiB0aGlzLmNsb3NlQXR0cmlidXRlLFxuICAgICAgICBjbG9zZVRhcmdldDogdGhpcy5vdmVybGF5Q2xvc2VFbGVtZW50LFxuICAgICAgICByZXN1bHQ6IHRoaXMucmV0dXJuVmFsdWUsXG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLW92ZXJsYXlfX2NvbnRhaW5lclwiIEBhbmltYXRpb25lbmQ9JHt0aGlzLm9uT3ZlcmxheUFuaW1hdGlvbkVuZH0+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItb3ZlcmxheVwiPlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIEBjbGljaz0keyhldmVudDogRXZlbnQpID0+IHRoaXMuY2xvc2VPblNiYk92ZXJsYXlDbG9zZUNsaWNrKGV2ZW50KX1cbiAgICAgICAgICAgIGNsYXNzPVwic2JiLW92ZXJsYXlfX3dyYXBwZXJcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItb3ZlcmxheV9faGVhZGVyXCI+XG4gICAgICAgICAgICAgIDxzYmItc2Vjb25kYXJ5LWJ1dHRvblxuICAgICAgICAgICAgICAgIGNsYXNzPVwic2JiLW92ZXJsYXlfX2Nsb3NlXCJcbiAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPVwiJHt0aGlzLmFjY2Vzc2liaWxpdHlDbG9zZUxhYmVsIHx8XG4gICAgICAgICAgICAgICAgaTE4bkNsb3NlRGlhbG9nW3RoaXMubGFuZ3VhZ2UuY3VycmVudF19XCJcbiAgICAgICAgICAgICAgICA/bmVnYXRpdmU9JHt0aGlzLm5lZ2F0aXZlfVxuICAgICAgICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICAgICAgICBpY29uLW5hbWU9XCJjcm9zcy1zbWFsbFwiXG4gICAgICAgICAgICAgICAgc2JiLW92ZXJsYXktY2xvc2VcbiAgICAgICAgICAgICAgPjwvc2JiLXNlY29uZGFyeS1idXR0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgY2xhc3M9XCJzYmItb3ZlcmxheV9fY29udGVudCAke3RoaXMubmVnYXRpdmVcbiAgICAgICAgICAgICAgICA/ICdzYmItc2Nyb2xsYmFyLW5lZ2F0aXZlJ1xuICAgICAgICAgICAgICAgIDogJ3NiYi1zY3JvbGxiYXInfVwiXG4gICAgICAgICAgICAgICR7cmVmKChlbD86IEVsZW1lbnQpID0+ICh0aGlzLl9vdmVybGF5Q29udGVudEVsZW1lbnQgPSBlbCBhcyBIVE1MRGl2RWxlbWVudCkpfVxuICAgICAgICAgICAgICBAc2Nyb2xsPSR7KGU6IEV2ZW50KSA9PiBmb3J3YXJkRXZlbnQoZSwgZG9jdW1lbnQpfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8c2JiLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgIGNsYXNzPVwic2JiLW92ZXJsYXlfX2NvbnRlbnQtY29udGFpbmVyXCJcbiAgICAgICAgICAgICAgICA/ZXhwYW5kZWQ9JHt0aGlzLmV4cGFuZGVkfVxuICAgICAgICAgICAgICAgIGNvbG9yPVwidHJhbnNwYXJlbnRcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgICAgICAgICA8L3NiYi1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXNjcmVlbi1yZWFkZXItb25seVwiIGFyaWEtbGl2ZT1cInBvbGl0ZVwiPjwvc3Bhbj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItb3ZlcmxheSc6IFNiYk92ZXJsYXlFbGVtZW50O1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQ2dDYSwyQkFBaUI7bUJBQVM7Ozs7Ozs7Y0FBMUIsMEJBQTBCLFlBQXFCOzs7R0FzQjFDLEtBQUEsNkJBQUEsa0JBQUEsTUFBQSx3QkFBb0IsTUFBSztHQUt6QixLQUFBLDZDQUFBLGtCQUFBLE1BQUEsNEJBQUEsRUFBQSxrQkFBQSxNQUFBLHVDQUFrQyxHQUFFO0dBRTFDLEtBQUEsa0JBQWMsa0JBQUEsTUFBQSwyQ0FBQSxFQUFXO0dBQzNCLEtBQUEseUJBQTZD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
@@ -405,4 +405,4 @@ var SbbPaginatorCommonElementMixin = (superClass) => {
405
405
  //#endregion
406
406
  export { SbbPaginatorCommonElementMixin };
407
407
 
408
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdG9yLWNvbW1vbi5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvcGFnaW5hdG9yL2NvbW1vbi9wYWdpbmF0b3ItY29tbW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHR5cGUgQ1NTUmVzdWx0R3JvdXAsIGh0bWwsIHR5cGUgUHJvcGVydHlWYWx1ZXMsIHR5cGUgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IFNiYk1pbmlCdXR0b25FbGVtZW50LCBTYmJNaW5pQnV0dG9uR3JvdXBFbGVtZW50IH0gZnJvbSAnLi4vLi4vYnV0dG9uLnB1cmUudHMnO1xuaW1wb3J0IHtcbiAgdHlwZSBBYnN0cmFjdENvbnN0cnVjdG9yLFxuICBmb3JjZVR5cGUsXG4gIGkxOG5OZXh0UGFnZSxcbiAgaTE4blBhZ2UsXG4gIGkxOG5QYWdpbmF0b3JTZWxlY3RlZCxcbiAgaTE4blByZXZpb3VzUGFnZSxcbiAgaXNMZWFuLFxuICBTYmJEaXNhYmxlZE1peGluLFxuICB0eXBlIFNiYkVsZW1lbnQsXG4gIHR5cGUgU2JiRWxlbWVudENvbnN0cnVjdG9yLFxuICB0eXBlIFNiYkVsZW1lbnRUeXBlLFxuICBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IsXG4gIFNiYkxhbmd1YWdlQ29udHJvbGxlcixcbiAgU2JiTmVnYXRpdmVNaXhpbixcbiAgc2NyZWVuUmVhZGVyT25seVN0eWxlcyxcbn0gZnJvbSAnLi4vLi4vY29yZS50cyc7XG5pbXBvcnQgeyBTYmJEaXZpZGVyRWxlbWVudCB9IGZyb20gJy4uLy4uL2RpdmlkZXIucHVyZS50cyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2JiUGFnaW5hdG9yUGFnZUV2ZW50RGV0YWlscyB7XG4gIGxlbmd0aDogbnVtYmVyO1xuICBwYWdlU2l6ZTogbnVtYmVyO1xuICBwYWdlSW5kZXg6IG51bWJlcjtcbiAgcHJldmlvdXNQYWdlSW5kZXg6IG51bWJlcjtcbn1cblxuZXhwb3J0IGRlY2xhcmUgYWJzdHJhY3QgY2xhc3MgU2JiUGFnaW5hdG9yQ29tbW9uRWxlbWVudE1peGluVHlwZSBleHRlbmRzIFNiYk5lZ2F0aXZlTWl4aW4oXG4gIFNiYkRpc2FibGVkTWl4aW4oU2JiRWxlbWVudCksXG4pIHtcbiAgcHVibGljIGFjY2Vzc29yIGxlbmd0aDogbnVtYmVyO1xuICBwdWJsaWMgYWNjZXNzb3IgcGFnZVNpemU6IG51bWJlcjtcbiAgcHVibGljIGFjY2Vzc29yIHBhZ2VJbmRleDogbnVtYmVyO1xuICBwdWJsaWMgYWNjZXNzb3IgcGFnZXJQb3NpdGlvbjogJ3N0YXJ0JyB8ICdlbmQnO1xuICBwdWJsaWMgYWNjZXNzb3Igc2l6ZTogJ20nIHwgJ3MnO1xuICBwdWJsaWMgYWNjZXNzb3IgYWNjZXNzaWJpbGl0eVBhZ2VMYWJlbDogc3RyaW5nO1xuICBwdWJsaWMgYWNjZXNzb3IgYWNjZXNzaWJpbGl0eVByZXZpb3VzUGFnZUxhYmVsOiBzdHJpbmc7XG4gIHB1YmxpYyBhY2Nlc3NvciBhY2Nlc3NpYmlsaXR5TmV4dFBhZ2VMYWJlbDogc3RyaW5nO1xuICBwdWJsaWMgbmV4dFBhZ2UoKTogdm9pZDtcbiAgcHVibGljIHByZXZpb3VzUGFnZSgpOiB2b2lkO1xuICBwdWJsaWMgZmlyc3RQYWdlKCk6IHZvaWQ7XG4gIHB1YmxpYyBsYXN0UGFnZSgpOiB2b2lkO1xuICBwdWJsaWMgc2VsZWN0UGFnZShpbmRleDogbnVtYmVyKTogdm9pZDtcbiAgcHVibGljIGhhc1ByZXZpb3VzUGFnZSgpOiBib29sZWFuO1xuICBwdWJsaWMgaGFzTmV4dFBhZ2UoKTogYm9vbGVhbjtcbiAgcHVibGljIG51bWJlck9mUGFnZXMoKTogbnVtYmVyO1xuICBwcm90ZWN0ZWQgbGFuZ3VhZ2U6IFNiYkxhbmd1YWdlQ29udHJvbGxlcjtcbiAgcHJvdGVjdGVkIGVtaXRQYWdlRXZlbnQocHJldmlvdXNQYWdlSW5kZXg6IG51bWJlciwgcGFnZUluZGV4PzogbnVtYmVyKTogdm9pZDtcbiAgcHJvdGVjdGVkIHJlbmRlclByZXZOZXh0QnV0dG9ucygpOiBUZW1wbGF0ZVJlc3VsdDtcbiAgcHJvdGVjdGVkIGFic3RyYWN0IHJlbmRlclBhZ2luYXRvcigpOiBUZW1wbGF0ZVJlc3VsdDtcbn1cblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuZXhwb3J0IGNvbnN0IFNiYlBhZ2luYXRvckNvbW1vbkVsZW1lbnRNaXhpbiA9IDxcbiAgVCBleHRlbmRzIEFic3RyYWN0Q29uc3RydWN0b3I8U2JiRWxlbWVudD4gJiBTYmJFbGVtZW50Q29uc3RydWN0b3IsXG4+KFxuICBzdXBlckNsYXNzOiBULFxuKTogQWJzdHJhY3RDb25zdHJ1Y3RvcjxTYmJQYWdpbmF0b3JDb21tb25FbGVtZW50TWl4aW5UeXBlPiAmIFQgPT4ge1xuICBhYnN0cmFjdCBjbGFzcyBTYmJQYWdpbmF0b3JDb21tb25FbGVtZW50XG4gICAgZXh0ZW5kcyBTYmJOZWdhdGl2ZU1peGluKFNiYkRpc2FibGVkTWl4aW4oc3VwZXJDbGFzcykpXG4gICAgaW1wbGVtZW50cyBQYXJ0aWFsPFNiYlBhZ2luYXRvckNvbW1vbkVsZW1lbnRNaXhpblR5cGU+XG4gIHtcbiAgICBwdWJsaWMgc3RhdGljIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbc2NyZWVuUmVhZGVyT25seVN0eWxlc107XG4gICAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBlbGVtZW50RGVwZW5kZW5jaWVzOiBTYmJFbGVtZW50VHlwZVtdID0gW1xuICAgICAgU2JiTWluaUJ1dHRvbkdyb3VwRWxlbWVudCxcbiAgICAgIFNiYk1pbmlCdXR0b25FbGVtZW50LFxuICAgICAgU2JiRGl2aWRlckVsZW1lbnQsXG4gICAgXTtcblxuICAgIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcm9sZSA9ICdncm91cCc7XG5cbiAgICAvKiogVG90YWwgbnVtYmVyIG9mIGl0ZW1zLiAqL1xuICAgIEBmb3JjZVR5cGUoKVxuICAgIEBwcm9wZXJ0eSh7IHR5cGU6IE51bWJlciB9KVxuICAgIHB1YmxpYyBhY2Nlc3NvciBsZW5ndGg6IG51bWJlciA9IDA7XG5cbiAgICAvKiogTnVtYmVyIG9mIGl0ZW1zIHBlciBwYWdlLiAqL1xuICAgIEBmb3JjZVR5cGUoKVxuICAgIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3BhZ2Utc2l6ZScsIHR5cGU6IE51bWJlciB9KVxuICAgIHB1YmxpYyBhY2Nlc3NvciBwYWdlU2l6ZTogbnVtYmVyID0gMTA7XG5cbiAgICAvKiogQ3VycmVudCBwYWdlIGluZGV4LiAqL1xuICAgIEBmb3JjZVR5cGUoKVxuICAgIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3BhZ2UtaW5kZXgnLCB0eXBlOiBOdW1iZXIgfSlcbiAgICBwdWJsaWMgYWNjZXNzb3IgcGFnZUluZGV4OiBudW1iZXIgPSAwO1xuXG4gICAgLyoqIFBvc2l0aW9uIG9mIHRoZSBwcmV2L25leHQgYnV0dG9ucy4gKi9cbiAgICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdwYWdlci1wb3NpdGlvbicsIHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIGFjY2Vzc29yIHBhZ2VyUG9zaXRpb246XG4gICAgICB8ICdzdGFydCdcbiAgICAgIHwgJ2VuZCcgPSAnc3RhcnQnO1xuXG4gICAgLyoqXG4gICAgICogU2l6ZSB2YXJpYW50LCBlaXRoZXIgbSBvciBzLlxuICAgICAqIEBkZWZhdWx0ICdtJyAvICdzJyAobGVhbilcbiAgICAgKi9cbiAgICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBhY2Nlc3NvciBzaXplOiAnbScgfCAncycgPSBpc0xlYW4oKSA/ICdzJyA6ICdtJztcblxuICAgIC8qKlxuICAgICAqIEFjY2Vzc2liaWxpdHkgbGFiZWwgZm9yIHRoZSBwYWdlLiBEZWZhdWx0cyB0byBgcGFnZWAuXG4gICAgICogQ2FuIGJlIHNldCBmb3IgY2FzZXMgbGlrZSBhIGNhcm91c2VsLCB3aGVyZSBgc2xpZGVgIG9yIGBpbWFnZWAgZml0cyBiZXR0ZXIuXG4gICAgICovXG4gICAgQGZvcmNlVHlwZSgpXG4gICAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYWNjZXNzaWJpbGl0eS1wYWdlLWxhYmVsJyB9KVxuICAgIHB1YmxpYyBhY2Nlc3NvciBhY2Nlc3NpYmlsaXR5UGFnZUxhYmVsOiBzdHJpbmcgPSAnJztcblxuICAgIC8qKlxuICAgICAqIEFjY2Vzc2liaWxpdHkgbGFiZWwgZm9yIHRoZSBwcmV2aW91cyBwYWdlLiBEZWZhdWx0cyB0byBgcHJldmlvdXMgcGFnZWAuXG4gICAgICogQ2FuIGJlIHNldCBmb3IgY2FzZXMgbGlrZSBhIGNhcm91c2VsLCB3aGVyZSBgc2xpZGVgIG9yIGBpbWFnZWAgZml0cyBiZXR0ZXIuXG4gICAgICovXG4gICAgQGZvcmNlVHlwZSgpXG4gICAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYWNjZXNzaWJpbGl0eS1wcmV2aW91cy1wYWdlLWxhYmVsJyB9KVxuICAgIHB1YmxpYyBhY2Nlc3NvciBhY2Nlc3NpYmlsaXR5UHJldmlvdXNQYWdlTGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gICAgLyoqXG4gICAgICogQWNjZXNzaWJpbGl0eSBsYWJlbCBmb3IgdGhlIG5leHQgcGFnZS4gRGVmYXVsdHMgdG8gYG5leHQgcGFnZWAuXG4gICAgICogQ2FuIGJlIHNldCBmb3IgY2FzZXMgbGlrZSBhIGNhcm91c2VsLCB3aGVyZSBgc2xpZGVgIG9yIGBpbWFnZWAgZml0cyBiZXR0ZXIuXG4gICAgICovXG4gICAgQGZvcmNlVHlwZSgpXG4gICAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYWNjZXNzaWJpbGl0eS1uZXh0LXBhZ2UtbGFiZWwnIH0pXG4gICAgcHVibGljIGFjY2Vzc29yIGFjY2Vzc2liaWxpdHlOZXh0UGFnZUxhYmVsOiBzdHJpbmcgPSAnJztcblxuICAgIHByb3RlY3RlZCBsYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IHJlbmRlclBhZ2luYXRvcigpOiBUZW1wbGF0ZVJlc3VsdDtcblxuICAgIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG4gICAgICBsZXQgcHJldlBhZ2VJbmRleDogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG5cbiAgICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2xlbmd0aCcpICYmIHRoaXMubGVuZ3RoICE9PSBjaGFuZ2VkUHJvcGVydGllcy5nZXQoJ2xlbmd0aCcpKSB7XG4gICAgICAgIHRoaXMubGVuZ3RoID0gaXNOYU4odGhpcy5sZW5ndGgpIHx8IHRoaXMubGVuZ3RoIDwgMCA/IDAgOiB0aGlzLmxlbmd0aDtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIElmIHRoZSBwYWdlSW5kZXggY2hhbmdlcywgaXQncyBhZGRlZCBpbiB0aGUgY2hhbmdlZFByb3BlcnRpZXMgbWFwXG4gICAgICAgICAqIGFuZCBoYW5kbGVkIGluIHRoZSBwYWdlSW5kZXggbG9naWMgYmVsb3csIGVtaXR0aW5nIHRoZSBwYWdlIGV2ZW50LlxuICAgICAgICAgKiBJZiB0aGUgcGFnZUluZGV4IGRvZXNuJ3QgY2hhbmdlIHRoZXJlJ3Mgbm8gbmVlZCB0byBlbWl0LlxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5wYWdlSW5kZXggPSB0aGlzLl9jb2VyY2VQYWdlSW5kZXhJblJhbmdlKHRoaXMucGFnZUluZGV4KTtcbiAgICAgIH1cblxuICAgICAgaWYgKFxuICAgICAgICBjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ3BhZ2VTaXplJykgJiZcbiAgICAgICAgdGhpcy5wYWdlU2l6ZSAhPT0gY2hhbmdlZFByb3BlcnRpZXMuZ2V0KCdwYWdlU2l6ZScpXG4gICAgICApIHtcbiAgICAgICAgY29uc3QgcHJldmlvdXNQYWdlU2l6ZSA9IGNoYW5nZWRQcm9wZXJ0aWVzLmdldCgncGFnZVNpemUnKTtcbiAgICAgICAgdGhpcy5wYWdlU2l6ZSA9IGlzTmFOKHRoaXMucGFnZVNpemUpIHx8IHRoaXMucGFnZVNpemUgPCAwID8gMCA6IHRoaXMucGFnZVNpemU7XG4gICAgICAgIC8vIEN1cnJlbnQgcGFnZSBuZWVkcyB0byBiZSB1cGRhdGVkIHRvIHJlZmxlY3QgdGhlIG5ldyBwYWdlIHNpemUuXG4gICAgICAgIC8vIE5hdmlnYXRlIHRvIHRoZSBwYWdlIGNvbnRhaW5pbmcgdGhlIHByZXZpb3VzIHBhZ2UncyBmaXJzdCBpdGVtLlxuICAgICAgICAvLyBJZiB0aGUgcGFnZUluZGV4IGNoYW5nZXMgaW4gdGhlIHNhbWUgdXBkYXRlIGN5Y2xlLCB3ZSBzaG91bGRuJ3QgYWRqdXN0IGl0LlxuICAgICAgICBpZiAocHJldmlvdXNQYWdlU2l6ZSAmJiAhY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdwYWdlSW5kZXgnKSkge1xuICAgICAgICAgIHRoaXMucGFnZUluZGV4ID0gTWF0aC5mbG9vcigodGhpcy5wYWdlSW5kZXggKiBwcmV2aW91c1BhZ2VTaXplKSAvIHRoaXMucGFnZVNpemUpIHx8IDA7XG4gICAgICAgIH1cbiAgICAgICAgLyoqXG4gICAgICAgICAqIElmIHRoZSBwYWdlSW5kZXggY2hhbmdlcywgaXQncyBhZGRlZCBpbiB0aGUgY2hhbmdlZFByb3BlcnRpZXMgbWFwLFxuICAgICAgICAgKiBhbmQgdGhpcyBsaW5lIGlzIHVzZWxlc3MsIHNpbmNlIHRoZSBjb3JyZWN0IHZhbHVlIHdpbGwgYmUgY2FsY3VsYXRlZCBpbiB0aGUgbG9naWMgYmVsb3c7XG4gICAgICAgICAqIGlmIHRoZSBwYWdlSW5kZXggZG9lc24ndCBjaGFuZ2UgKGUuZy4gY2hhbmdlIHBhZ2VTaXplIGF0IHBhZ2VJbmRleCAwKSwgdGhlIHByZXZQYWdlSW5kZXggYW5kIHBhZ2VJbmRleCBhcmUgdGhlIHNhbWUuXG4gICAgICAgICAqIEluIGJvdGggY2FzZSB0aGUgcGFnZSBldmVudCBtdXN0IGJlIHRyaWdnZXJlZCB0byBhbGxvdyBjb25zdW1lcnMgdG8gcmV0cmlldmUgdGhlIGNvcnJlY3QgZGF0YS5cbiAgICAgICAgICovXG4gICAgICAgIHByZXZQYWdlSW5kZXggPSB0aGlzLnBhZ2VJbmRleDtcbiAgICAgIH1cblxuICAgICAgaWYgKFxuICAgICAgICBjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ3BhZ2VJbmRleCcpICYmXG4gICAgICAgIHRoaXMucGFnZUluZGV4ICE9PSBjaGFuZ2VkUHJvcGVydGllcy5nZXQoJ3BhZ2VJbmRleCcpXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5wYWdlSW5kZXggPSB0aGlzLl9jb2VyY2VQYWdlSW5kZXhJblJhbmdlKHRoaXMucGFnZUluZGV4KTtcbiAgICAgICAgcHJldlBhZ2VJbmRleCA9IGNoYW5nZWRQcm9wZXJ0aWVzLmdldCgncGFnZUluZGV4JykhO1xuICAgICAgfVxuXG4gICAgICBpZiAocHJldlBhZ2VJbmRleCAhPT0gbnVsbCkge1xuICAgICAgICB0aGlzLl9lbWl0UGFnZUV2ZW50KHByZXZQYWdlSW5kZXgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBvdmVycmlkZSB1cGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgICAgc3VwZXIudXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICAgIC8vIFRvIHJlbGlhYmx5IGFubm91bmNlIHBhZ2UgY2hhbmdlLCB3ZSBoYXZlIHRvIHNldCB0aGUgbGFiZWwgaW4gdXBkYXRlZCgpIChhIHRpY2sgbGF0ZXIgdGhhbiB0aGUgb3RoZXIgY2hhbmdlcykuXG4gICAgICB0aGlzLnNoYWRvd1Jvb3QhLnF1ZXJ5U2VsZWN0b3IoJy5zYmItc2NyZWVuLXJlYWRlci1vbmx5I3N0YXR1cycpIS50ZXh0Q29udGVudCA9XG4gICAgICAgIHRoaXMuX2N1cnJlbnRQYWdlTGFiZWwoKTtcbiAgICB9XG5cbiAgICAvKiogRXZhbHVhdGUgYHBhZ2VJbmRleGAgYnkgZXhjbHVkaW5nIGVkZ2UgY2FzZXMuICovXG4gICAgcHJpdmF0ZSBfY29lcmNlUGFnZUluZGV4SW5SYW5nZShwYWdlSW5kZXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgICByZXR1cm4gTWF0aC5tYXgoXG4gICAgICAgIE1hdGgubWluKE1hdGgubWF4KGlzTmFOKHBhZ2VJbmRleCkgPyAwIDogcGFnZUluZGV4LCAwKSwgdGhpcy5udW1iZXJPZlBhZ2VzKCkgLSAxKSxcbiAgICAgICAgMCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfY3VycmVudFBhZ2VMYWJlbCgpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIGAke3RoaXMuYWNjZXNzaWJpbGl0eVBhZ2VMYWJlbCA/IHRoaXMuYWNjZXNzaWJpbGl0eVBhZ2VMYWJlbCA6IGkxOG5QYWdlW3RoaXMubGFuZ3VhZ2UuY3VycmVudF19ICR7dGhpcy5wYWdlSW5kZXggKyAxfSAke2kxOG5QYWdpbmF0b3JTZWxlY3RlZFt0aGlzLmxhbmd1YWdlLmN1cnJlbnRdfS5gO1xuICAgIH1cblxuICAgIC8qKiBBZHZhbmNlcyB0byB0aGUgbmV4dCBwYWdlIGlmIGl0IGV4aXN0cy4gKi9cbiAgICBwdWJsaWMgbmV4dFBhZ2UoKTogdm9pZCB7XG4gICAgICB0aGlzLnBhZ2VJbmRleCA9IHRoaXMucGFnZUluZGV4ICsgMTtcbiAgICB9XG5cbiAgICAvKiogTW92ZSBiYWNrIHRvIHRoZSBwcmV2aW91cyBwYWdlIGlmIGl0IGV4aXN0cy4gKi9cbiAgICBwdWJsaWMgcHJldmlvdXNQYWdlKCk6IHZvaWQge1xuICAgICAgdGhpcy5wYWdlSW5kZXggPSB0aGlzLnBhZ2VJbmRleCAtIDE7XG4gICAgfVxuXG4gICAgLyoqIE1vdmUgdG8gdGhlIGZpcnN0IHBhZ2UgaWYgbm90IGFscmVhZHkgdGhlcmUuICovXG4gICAgcHVibGljIGZpcnN0UGFnZSgpOiB2b2lkIHtcbiAgICAgIHRoaXMucGFnZUluZGV4ID0gMDtcbiAgICB9XG5cbiAgICAvKiogTW92ZSB0byB0aGUgbGFzdCBwYWdlIGlmIG5vdCBhbHJlYWR5IHRoZXJlLiAqL1xuICAgIHB1YmxpYyBsYXN0UGFnZSgpOiB2b2lkIHtcbiAgICAgIHRoaXMucGFnZUluZGV4ID0gdGhpcy5udW1iZXJPZlBhZ2VzKCkgLSAxO1xuICAgIH1cblxuICAgIC8qKiBNb3ZlIHRvIGEgc3BlY2lmaWMgcGFnZSBpbmRleC4gKi9cbiAgICBwdWJsaWMgc2VsZWN0UGFnZShpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICB0aGlzLnBhZ2VJbmRleCA9IGluZGV4O1xuICAgIH1cblxuICAgIC8qKiBXaGV0aGVyIHRoZXJlIGlzIGEgcHJldmlvdXMgcGFnZS4gKi9cbiAgICBwdWJsaWMgaGFzUHJldmlvdXNQYWdlKCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHRoaXMucGFnZUluZGV4ID49IDEgJiYgdGhpcy5wYWdlU2l6ZSAhPT0gMDtcbiAgICB9XG5cbiAgICAvKiogV2hldGhlciB0aGVyZSBpcyBhIG5leHQgcGFnZS4gKi9cbiAgICBwdWJsaWMgaGFzTmV4dFBhZ2UoKTogYm9vbGVhbiB7XG4gICAgICBjb25zdCBtYXhQYWdlSW5kZXggPSB0aGlzLm51bWJlck9mUGFnZXMoKSAtIDE7XG4gICAgICByZXR1cm4gdGhpcy5wYWdlSW5kZXggPCBtYXhQYWdlSW5kZXggJiYgdGhpcy5wYWdlU2l6ZSAhPT0gMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDYWxjdWxhdGVzIHRoZSBjdXJyZW50IG51bWJlciBvZiBwYWdlcyBiYXNlZCBvbiB0aGUgYGxlbmd0aGAgYW5kIHRoZSBgcGFnZVNpemVgO1xuICAgICAqIHZhbHVlIG11c3QgYmUgcm91bmRlZCB1cCAoZS5nLiBgbGVuZ3RoID0gMjFgIGFuZCBgcGFnZVNpemUgPSAxMGAgbWVhbnMgMyBwYWdlcykuXG4gICAgICovXG4gICAgcHVibGljIG51bWJlck9mUGFnZXMoKTogbnVtYmVyIHtcbiAgICAgIHJldHVybiB0aGlzLnBhZ2VTaXplID8gTWF0aC5jZWlsKHRoaXMubGVuZ3RoIC8gdGhpcy5wYWdlU2l6ZSkgOiAwO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2VtaXRQYWdlRXZlbnQocHJldmlvdXNQYWdlSW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgaWYgKHRoaXMuaGFzVXBkYXRlZCkge1xuICAgICAgICAvKipcbiAgICAgICAgICogQHR5cGUge0N1c3RvbUV2ZW50PFNiYlBhZ2luYXRvclBhZ2VFdmVudERldGFpbHM+fVxuICAgICAgICAgKiBUaGUgcGFnZSBldmVudCBpcyBkaXNwYXRjaGVkIHdoZW4gdGhlIHBhZ2UgaW5kZXgsIGxlbmd0aCBvciBwYWdlIHNpemUgY2hhbmdlcy5cbiAgICAgICAgICovXG4gICAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudChcbiAgICAgICAgICBuZXcgQ3VzdG9tRXZlbnQ8U2JiUGFnaW5hdG9yUGFnZUV2ZW50RGV0YWlscz4oJ3BhZ2UnLCB7XG4gICAgICAgICAgICBidWJibGVzOiB0cnVlLFxuICAgICAgICAgICAgY29tcG9zZWQ6IHRydWUsXG4gICAgICAgICAgICBkZXRhaWw6IHtcbiAgICAgICAgICAgICAgcHJldmlvdXNQYWdlSW5kZXgsXG4gICAgICAgICAgICAgIHBhZ2VJbmRleDogdGhpcy5wYWdlSW5kZXgsXG4gICAgICAgICAgICAgIGxlbmd0aDogdGhpcy5sZW5ndGgsXG4gICAgICAgICAgICAgIHBhZ2VTaXplOiB0aGlzLnBhZ2VTaXplLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgcmVuZGVyUHJldk5leHRCdXR0b25zKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICAgIHJldHVybiBodG1sYFxuICAgICAgICA8c2JiLW1pbmktYnV0dG9uLWdyb3VwID9uZWdhdGl2ZT0ke3RoaXMubmVnYXRpdmV9IHNpemU9JHt0aGlzLnNpemUgPT09ICdzJyA/ICdzJyA6ICdsJ30+XG4gICAgICAgICAgPHNiYi1taW5pLWJ1dHRvblxuICAgICAgICAgICAgaWQ9XCJzYmItcGFnaW5hdG9yLXByZXYtcGFnZVwiXG4gICAgICAgICAgICBhcmlhLWxhYmVsPSR7dGhpcy5hY2Nlc3NpYmlsaXR5UHJldmlvdXNQYWdlTGFiZWxcbiAgICAgICAgICAgICAgPyB0aGlzLmFjY2Vzc2liaWxpdHlQcmV2aW91c1BhZ2VMYWJlbFxuICAgICAgICAgICAgICA6IGkxOG5QcmV2aW91c1BhZ2VbdGhpcy5sYW5ndWFnZS5jdXJyZW50XX1cbiAgICAgICAgICAgIGljb24tbmFtZT1cImNoZXZyb24tc21hbGwtbGVmdC1zbWFsbFwiXG4gICAgICAgICAgICA/ZGlzYWJsZWQ9JHt0aGlzLmRpc2FibGVkIHx8ICF0aGlzLmhhc1ByZXZpb3VzUGFnZSgpfVxuICAgICAgICAgICAgQGNsaWNrPSR7KCkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLnByZXZpb3VzUGFnZSgpO1xuICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgIXRoaXMuaGFzUHJldmlvdXNQYWdlKCkgJiZcbiAgICAgICAgICAgICAgICBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IubW9zdFJlY2VudE1vZGFsaXR5ID09PSAna2V5Ym9hcmQnXG4gICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2hhZG93Um9vdD8uZ2V0RWxlbWVudEJ5SWQoJ3NiYi1wYWdpbmF0b3ItbmV4dC1wYWdlJykhLmZvY3VzKCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPjwvc2JiLW1pbmktYnV0dG9uPlxuICAgICAgICAgIDxzYmItZGl2aWRlciBvcmllbnRhdGlvbj1cInZlcnRpY2FsXCI+PC9zYmItZGl2aWRlcj5cbiAgICAgICAgICA8c2JiLW1pbmktYnV0dG9uXG4gICAgICAgICAgICBpZD1cInNiYi1wYWdpbmF0b3ItbmV4dC1wYWdlXCJcbiAgICAgICAgICAgIGFyaWEtbGFiZWw9JHt0aGlzLmFjY2Vzc2liaWxpdHlOZXh0UGFnZUxhYmVsXG4gICAgICAgICAgICAgID8gdGhpcy5hY2Nlc3NpYmlsaXR5TmV4dFBhZ2VMYWJlbFxuICAgICAgICAgICAgICA6IGkxOG5OZXh0UGFnZVt0aGlzLmxhbmd1YWdlLmN1cnJlbnRdfVxuICAgICAgICAgICAgaWNvbi1uYW1lPVwiY2hldnJvbi1zbWFsbC1yaWdodC1zbWFsbFwiXG4gICAgICAgICAgICA/ZGlzYWJsZWQ9JHt0aGlzLmRpc2FibGVkIHx8ICF0aGlzLmhhc05leHRQYWdlKCl9XG4gICAgICAgICAgICBAY2xpY2s9JHsoKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMubmV4dFBhZ2UoKTtcbiAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICF0aGlzLmhhc05leHRQYWdlKCkgJiZcbiAgICAgICAgICAgICAgICBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IubW9zdFJlY2VudE1vZGFsaXR5ID09PSAna2V5Ym9hcmQnXG4gICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2hhZG93Um9vdD8uZ2V0RWxlbWVudEJ5SWQoJ3NiYi1wYWdpbmF0b3ItcHJldi1wYWdlJykhLmZvY3VzKCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPjwvc2JiLW1pbmktYnV0dG9uPlxuICAgICAgICA8L3NiYi1taW5pLWJ1dHRvbi1ncm91cD5cbiAgICAgIGA7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgICByZXR1cm4gaHRtbGBcbiAgICAgICAgJHt0aGlzLnJlbmRlclBhZ2luYXRvcigpfVxuICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1zY3JlZW4tcmVhZGVyLW9ubHlcIiBpZD1cInN0YXR1c1wiIHJvbGU9XCJzdGF0dXNcIj48L3NwYW4+XG4gICAgICBgO1xuICAgIH1cbiAgfVxuICByZXR1cm4gU2JiUGFnaW5hdG9yQ29tbW9uRWxlbWVudCBhcyB1bmtub3duIGFzIEFic3RyYWN0Q29uc3RydWN0b3I8U2JiUGFnaW5hdG9yQ29tbW9uRWxlbWVudE1peGluVHlwZT4gJlxuICAgIFQ7XG59O1xuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudEV2ZW50TWFwIHtcbiAgICBwYWdlOiBDdXN0b21FdmVudDxTYmJQYWdpbmF0b3JQYWdlRXZlbnREZXRhaWxzPjtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBd0RBLElBQWEsa0NBR1gsZUFDK0Q7QUF5UC9ELGVBeFB3QztvQkFDOUIsaUJBQWlCLGlCQUFpQixXQUFXLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7ZUFEekMsa0NBQ0wsWUFBOEM7OztBQWV0QyxVQUFBLDBCQUFBLGtCQUFBLE1BQUEsc0JBQWlCLEVBQUM7QUFLbEIsVUFBQSw2QkFBQSxrQkFBQSxNQUFBLDBCQUFBLEVBQUEsa0JBQUEsTUFBQSx3QkFBbUIsR0FBRTtBQUtyQixVQUFBLDhCQUFBLGtCQUFBLE1BQUEsNEJBQUEsRUFBQSxrQkFBQSxNQUFBLHlCQUFvQixFQUFDO0FBR3FDLFVBQUEsa0NBQUEsa0JBQUEsTUFBQSw2QkFBQSxFQUFBLGtCQUFBLE1BQUEsNkJBRTlELFFBQU87QUFNMEIsVUFBQSx5QkFBQSxrQkFBQSxNQUFBLGlDQUFBLEVBQUEsa0JBQUEsTUFBQSxvQkFBa0IsUUFBUSxHQUFHLE1BQU0sSUFBRztBQVFuRSxVQUFBLDJDQUFBLGtCQUFBLE1BQUEsd0JBQUEsRUFBQSxrQkFBQSxNQUFBLHNDQUFpQyxHQUFFO0FBUW5DLFVBQUEsbURBQUEsa0JBQUEsTUFBQSwwQ0FBQSxFQUFBLGtCQUFBLE1BQUEsOENBQXlDLEdBQUU7QUFRM0MsVUFBQSwrQ0FBQSxrQkFBQSxNQUFBLGtEQUFBLEVBQUEsa0JBQUEsTUFBQSwwQ0FBcUMsR0FBRTtBQUU3QyxTQUFBLFlBQVEsa0JBQUEsTUFBQSw4Q0FBQSxFQUFH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
408
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdG9yLWNvbW1vbi5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvcGFnaW5hdG9yL2NvbW1vbi9wYWdpbmF0b3ItY29tbW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHR5cGUgQ1NTUmVzdWx0R3JvdXAsIGh0bWwsIHR5cGUgUHJvcGVydHlWYWx1ZXMsIHR5cGUgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IFNiYk1pbmlCdXR0b25FbGVtZW50LCBTYmJNaW5pQnV0dG9uR3JvdXBFbGVtZW50IH0gZnJvbSAnLi4vLi4vYnV0dG9uLnB1cmUudHMnO1xuaW1wb3J0IHtcbiAgdHlwZSBBYnN0cmFjdENvbnN0cnVjdG9yLFxuICBmb3JjZVR5cGUsXG4gIGkxOG5OZXh0UGFnZSxcbiAgaTE4blBhZ2UsXG4gIGkxOG5QYWdpbmF0b3JTZWxlY3RlZCxcbiAgaTE4blByZXZpb3VzUGFnZSxcbiAgaXNMZWFuLFxuICBTYmJEaXNhYmxlZE1peGluLFxuICB0eXBlIFNiYkVsZW1lbnQsXG4gIHR5cGUgU2JiRWxlbWVudENvbnN0cnVjdG9yLFxuICB0eXBlIFNiYkVsZW1lbnRUeXBlLFxuICBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IsXG4gIFNiYkxhbmd1YWdlQ29udHJvbGxlcixcbiAgU2JiTmVnYXRpdmVNaXhpbixcbiAgc2NyZWVuUmVhZGVyT25seVN0eWxlcyxcbn0gZnJvbSAnLi4vLi4vY29yZS50cyc7XG5pbXBvcnQgeyBTYmJEaXZpZGVyRWxlbWVudCB9IGZyb20gJy4uLy4uL2RpdmlkZXIucHVyZS50cyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2JiUGFnaW5hdG9yUGFnZUV2ZW50RGV0YWlscyB7XG4gIGxlbmd0aDogbnVtYmVyO1xuICBwYWdlU2l6ZTogbnVtYmVyO1xuICBwYWdlSW5kZXg6IG51bWJlcjtcbiAgcHJldmlvdXNQYWdlSW5kZXg6IG51bWJlcjtcbn1cblxuZXhwb3J0IGRlY2xhcmUgYWJzdHJhY3QgY2xhc3MgU2JiUGFnaW5hdG9yQ29tbW9uRWxlbWVudE1peGluVHlwZSBleHRlbmRzIFNiYk5lZ2F0aXZlTWl4aW4oXG4gIFNiYkRpc2FibGVkTWl4aW4oU2JiRWxlbWVudCksXG4pIHtcbiAgcHVibGljIGFjY2Vzc29yIGxlbmd0aDogbnVtYmVyO1xuICBwdWJsaWMgYWNjZXNzb3IgcGFnZVNpemU6IG51bWJlcjtcbiAgcHVibGljIGFjY2Vzc29yIHBhZ2VJbmRleDogbnVtYmVyO1xuICBwdWJsaWMgYWNjZXNzb3IgcGFnZXJQb3NpdGlvbjogJ3N0YXJ0JyB8ICdlbmQnO1xuICBwdWJsaWMgYWNjZXNzb3Igc2l6ZTogJ20nIHwgJ3MnO1xuICBwdWJsaWMgYWNjZXNzb3IgYWNjZXNzaWJpbGl0eVBhZ2VMYWJlbDogc3RyaW5nO1xuICBwdWJsaWMgYWNjZXNzb3IgYWNjZXNzaWJpbGl0eVByZXZpb3VzUGFnZUxhYmVsOiBzdHJpbmc7XG4gIHB1YmxpYyBhY2Nlc3NvciBhY2Nlc3NpYmlsaXR5TmV4dFBhZ2VMYWJlbDogc3RyaW5nO1xuICBwdWJsaWMgbmV4dFBhZ2UoKTogdm9pZDtcbiAgcHVibGljIHByZXZpb3VzUGFnZSgpOiB2b2lkO1xuICBwdWJsaWMgZmlyc3RQYWdlKCk6IHZvaWQ7XG4gIHB1YmxpYyBsYXN0UGFnZSgpOiB2b2lkO1xuICBwdWJsaWMgc2VsZWN0UGFnZShpbmRleDogbnVtYmVyKTogdm9pZDtcbiAgcHVibGljIGhhc1ByZXZpb3VzUGFnZSgpOiBib29sZWFuO1xuICBwdWJsaWMgaGFzTmV4dFBhZ2UoKTogYm9vbGVhbjtcbiAgcHVibGljIG51bWJlck9mUGFnZXMoKTogbnVtYmVyO1xuICBwcm90ZWN0ZWQgbGFuZ3VhZ2U6IFNiYkxhbmd1YWdlQ29udHJvbGxlcjtcbiAgcHJvdGVjdGVkIGVtaXRQYWdlRXZlbnQocHJldmlvdXNQYWdlSW5kZXg6IG51bWJlciwgcGFnZUluZGV4PzogbnVtYmVyKTogdm9pZDtcbiAgcHJvdGVjdGVkIHJlbmRlclByZXZOZXh0QnV0dG9ucygpOiBUZW1wbGF0ZVJlc3VsdDtcbiAgcHJvdGVjdGVkIGFic3RyYWN0IHJlbmRlclBhZ2luYXRvcigpOiBUZW1wbGF0ZVJlc3VsdDtcbn1cblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuZXhwb3J0IGNvbnN0IFNiYlBhZ2luYXRvckNvbW1vbkVsZW1lbnRNaXhpbiA9IDxcbiAgVCBleHRlbmRzIEFic3RyYWN0Q29uc3RydWN0b3I8U2JiRWxlbWVudD4gJiBTYmJFbGVtZW50Q29uc3RydWN0b3IsXG4+KFxuICBzdXBlckNsYXNzOiBULFxuKTogQWJzdHJhY3RDb25zdHJ1Y3RvcjxTYmJQYWdpbmF0b3JDb21tb25FbGVtZW50TWl4aW5UeXBlPiAmIFQgPT4ge1xuICBhYnN0cmFjdCBjbGFzcyBTYmJQYWdpbmF0b3JDb21tb25FbGVtZW50XG4gICAgZXh0ZW5kcyBTYmJOZWdhdGl2ZU1peGluKFNiYkRpc2FibGVkTWl4aW4oc3VwZXJDbGFzcykpXG4gICAgaW1wbGVtZW50cyBQYXJ0aWFsPFNiYlBhZ2luYXRvckNvbW1vbkVsZW1lbnRNaXhpblR5cGU+XG4gIHtcbiAgICBwdWJsaWMgc3RhdGljIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbc2NyZWVuUmVhZGVyT25seVN0eWxlc107XG4gICAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBlbGVtZW50RGVwZW5kZW5jaWVzOiBTYmJFbGVtZW50VHlwZVtdID0gW1xuICAgICAgU2JiTWluaUJ1dHRvbkdyb3VwRWxlbWVudCxcbiAgICAgIFNiYk1pbmlCdXR0b25FbGVtZW50LFxuICAgICAgU2JiRGl2aWRlckVsZW1lbnQsXG4gICAgXTtcblxuICAgIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcm9sZSA9ICdncm91cCc7XG5cbiAgICAvKiogVG90YWwgbnVtYmVyIG9mIGl0ZW1zLiAqL1xuICAgIEBmb3JjZVR5cGUoKVxuICAgIEBwcm9wZXJ0eSh7IHR5cGU6IE51bWJlciB9KVxuICAgIHB1YmxpYyBhY2Nlc3NvciBsZW5ndGg6IG51bWJlciA9IDA7XG5cbiAgICAvKiogTnVtYmVyIG9mIGl0ZW1zIHBlciBwYWdlLiAqL1xuICAgIEBmb3JjZVR5cGUoKVxuICAgIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3BhZ2Utc2l6ZScsIHR5cGU6IE51bWJlciB9KVxuICAgIHB1YmxpYyBhY2Nlc3NvciBwYWdlU2l6ZTogbnVtYmVyID0gMTA7XG5cbiAgICAvKiogQ3VycmVudCBwYWdlIGluZGV4LiAqL1xuICAgIEBmb3JjZVR5cGUoKVxuICAgIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3BhZ2UtaW5kZXgnLCB0eXBlOiBOdW1iZXIgfSlcbiAgICBwdWJsaWMgYWNjZXNzb3IgcGFnZUluZGV4OiBudW1iZXIgPSAwO1xuXG4gICAgLyoqIFBvc2l0aW9uIG9mIHRoZSBwcmV2L25leHQgYnV0dG9ucy4gKi9cbiAgICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdwYWdlci1wb3NpdGlvbicsIHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIGFjY2Vzc29yIHBhZ2VyUG9zaXRpb246XG4gICAgICB8ICdzdGFydCdcbiAgICAgIHwgJ2VuZCcgPSAnc3RhcnQnO1xuXG4gICAgLyoqXG4gICAgICogU2l6ZSB2YXJpYW50LCBlaXRoZXIgbSBvciBzLlxuICAgICAqIEBkZWZhdWx0ICdtJyAvICdzJyAobGVhbilcbiAgICAgKi9cbiAgICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBhY2Nlc3NvciBzaXplOiAnbScgfCAncycgPSBpc0xlYW4oKSA/ICdzJyA6ICdtJztcblxuICAgIC8qKlxuICAgICAqIEFjY2Vzc2liaWxpdHkgbGFiZWwgZm9yIHRoZSBwYWdlLiBEZWZhdWx0cyB0byBgcGFnZWAuXG4gICAgICogQ2FuIGJlIHNldCBmb3IgY2FzZXMgbGlrZSBhIGNhcm91c2VsLCB3aGVyZSBgc2xpZGVgIG9yIGBpbWFnZWAgZml0cyBiZXR0ZXIuXG4gICAgICovXG4gICAgQGZvcmNlVHlwZSgpXG4gICAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYWNjZXNzaWJpbGl0eS1wYWdlLWxhYmVsJyB9KVxuICAgIHB1YmxpYyBhY2Nlc3NvciBhY2Nlc3NpYmlsaXR5UGFnZUxhYmVsOiBzdHJpbmcgPSAnJztcblxuICAgIC8qKlxuICAgICAqIEFjY2Vzc2liaWxpdHkgbGFiZWwgZm9yIHRoZSBwcmV2aW91cyBwYWdlLiBEZWZhdWx0cyB0byBgcHJldmlvdXMgcGFnZWAuXG4gICAgICogQ2FuIGJlIHNldCBmb3IgY2FzZXMgbGlrZSBhIGNhcm91c2VsLCB3aGVyZSBgc2xpZGVgIG9yIGBpbWFnZWAgZml0cyBiZXR0ZXIuXG4gICAgICovXG4gICAgQGZvcmNlVHlwZSgpXG4gICAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYWNjZXNzaWJpbGl0eS1wcmV2aW91cy1wYWdlLWxhYmVsJyB9KVxuICAgIHB1YmxpYyBhY2Nlc3NvciBhY2Nlc3NpYmlsaXR5UHJldmlvdXNQYWdlTGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gICAgLyoqXG4gICAgICogQWNjZXNzaWJpbGl0eSBsYWJlbCBmb3IgdGhlIG5leHQgcGFnZS4gRGVmYXVsdHMgdG8gYG5leHQgcGFnZWAuXG4gICAgICogQ2FuIGJlIHNldCBmb3IgY2FzZXMgbGlrZSBhIGNhcm91c2VsLCB3aGVyZSBgc2xpZGVgIG9yIGBpbWFnZWAgZml0cyBiZXR0ZXIuXG4gICAgICovXG4gICAgQGZvcmNlVHlwZSgpXG4gICAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYWNjZXNzaWJpbGl0eS1uZXh0LXBhZ2UtbGFiZWwnIH0pXG4gICAgcHVibGljIGFjY2Vzc29yIGFjY2Vzc2liaWxpdHlOZXh0UGFnZUxhYmVsOiBzdHJpbmcgPSAnJztcblxuICAgIHByb3RlY3RlZCBsYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IHJlbmRlclBhZ2luYXRvcigpOiBUZW1wbGF0ZVJlc3VsdDtcblxuICAgIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG4gICAgICBsZXQgcHJldlBhZ2VJbmRleDogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG5cbiAgICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2xlbmd0aCcpICYmIHRoaXMubGVuZ3RoICE9PSBjaGFuZ2VkUHJvcGVydGllcy5nZXQoJ2xlbmd0aCcpKSB7XG4gICAgICAgIHRoaXMubGVuZ3RoID0gaXNOYU4odGhpcy5sZW5ndGgpIHx8IHRoaXMubGVuZ3RoIDwgMCA/IDAgOiB0aGlzLmxlbmd0aDtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIElmIHRoZSBwYWdlSW5kZXggY2hhbmdlcywgaXQncyBhZGRlZCBpbiB0aGUgY2hhbmdlZFByb3BlcnRpZXMgbWFwXG4gICAgICAgICAqIGFuZCBoYW5kbGVkIGluIHRoZSBwYWdlSW5kZXggbG9naWMgYmVsb3csIGVtaXR0aW5nIHRoZSBwYWdlIGV2ZW50LlxuICAgICAgICAgKiBJZiB0aGUgcGFnZUluZGV4IGRvZXNuJ3QgY2hhbmdlIHRoZXJlJ3Mgbm8gbmVlZCB0byBlbWl0LlxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5wYWdlSW5kZXggPSB0aGlzLl9jb2VyY2VQYWdlSW5kZXhJblJhbmdlKHRoaXMucGFnZUluZGV4KTtcbiAgICAgIH1cblxuICAgICAgaWYgKFxuICAgICAgICBjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ3BhZ2VTaXplJykgJiZcbiAgICAgICAgdGhpcy5wYWdlU2l6ZSAhPT0gY2hhbmdlZFByb3BlcnRpZXMuZ2V0KCdwYWdlU2l6ZScpXG4gICAgICApIHtcbiAgICAgICAgY29uc3QgcHJldmlvdXNQYWdlU2l6ZSA9IGNoYW5nZWRQcm9wZXJ0aWVzLmdldCgncGFnZVNpemUnKTtcbiAgICAgICAgdGhpcy5wYWdlU2l6ZSA9IGlzTmFOKHRoaXMucGFnZVNpemUpIHx8IHRoaXMucGFnZVNpemUgPCAwID8gMCA6IHRoaXMucGFnZVNpemU7XG4gICAgICAgIC8vIEN1cnJlbnQgcGFnZSBuZWVkcyB0byBiZSB1cGRhdGVkIHRvIHJlZmxlY3QgdGhlIG5ldyBwYWdlIHNpemUuXG4gICAgICAgIC8vIE5hdmlnYXRlIHRvIHRoZSBwYWdlIGNvbnRhaW5pbmcgdGhlIHByZXZpb3VzIHBhZ2UncyBmaXJzdCBpdGVtLlxuICAgICAgICAvLyBJZiB0aGUgcGFnZUluZGV4IGNoYW5nZXMgaW4gdGhlIHNhbWUgdXBkYXRlIGN5Y2xlLCB3ZSBzaG91bGRuJ3QgYWRqdXN0IGl0LlxuICAgICAgICBpZiAocHJldmlvdXNQYWdlU2l6ZSAmJiAhY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdwYWdlSW5kZXgnKSkge1xuICAgICAgICAgIHRoaXMucGFnZUluZGV4ID0gTWF0aC5mbG9vcigodGhpcy5wYWdlSW5kZXggKiBwcmV2aW91c1BhZ2VTaXplKSAvIHRoaXMucGFnZVNpemUpIHx8IDA7XG4gICAgICAgIH1cbiAgICAgICAgLyoqXG4gICAgICAgICAqIElmIHRoZSBwYWdlSW5kZXggY2hhbmdlcywgaXQncyBhZGRlZCBpbiB0aGUgY2hhbmdlZFByb3BlcnRpZXMgbWFwLFxuICAgICAgICAgKiBhbmQgdGhpcyBsaW5lIGlzIHVzZWxlc3MsIHNpbmNlIHRoZSBjb3JyZWN0IHZhbHVlIHdpbGwgYmUgY2FsY3VsYXRlZCBpbiB0aGUgbG9naWMgYmVsb3c7XG4gICAgICAgICAqIGlmIHRoZSBwYWdlSW5kZXggZG9lc24ndCBjaGFuZ2UgKGUuZy4gY2hhbmdlIHBhZ2VTaXplIGF0IHBhZ2VJbmRleCAwKSwgdGhlIHByZXZQYWdlSW5kZXggYW5kIHBhZ2VJbmRleCBhcmUgdGhlIHNhbWUuXG4gICAgICAgICAqIEluIGJvdGggY2FzZSB0aGUgcGFnZSBldmVudCBtdXN0IGJlIHRyaWdnZXJlZCB0byBhbGxvdyBjb25zdW1lcnMgdG8gcmV0cmlldmUgdGhlIGNvcnJlY3QgZGF0YS5cbiAgICAgICAgICovXG4gICAgICAgIHByZXZQYWdlSW5kZXggPSB0aGlzLnBhZ2VJbmRleDtcbiAgICAgIH1cblxuICAgICAgaWYgKFxuICAgICAgICBjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ3BhZ2VJbmRleCcpICYmXG4gICAgICAgIHRoaXMucGFnZUluZGV4ICE9PSBjaGFuZ2VkUHJvcGVydGllcy5nZXQoJ3BhZ2VJbmRleCcpXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5wYWdlSW5kZXggPSB0aGlzLl9jb2VyY2VQYWdlSW5kZXhJblJhbmdlKHRoaXMucGFnZUluZGV4KTtcbiAgICAgICAgcHJldlBhZ2VJbmRleCA9IGNoYW5nZWRQcm9wZXJ0aWVzLmdldCgncGFnZUluZGV4JykhO1xuICAgICAgfVxuXG4gICAgICBpZiAocHJldlBhZ2VJbmRleCAhPT0gbnVsbCkge1xuICAgICAgICB0aGlzLl9lbWl0UGFnZUV2ZW50KHByZXZQYWdlSW5kZXgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBvdmVycmlkZSB1cGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgICAgc3VwZXIudXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICAgIC8vIFRvIHJlbGlhYmx5IGFubm91bmNlIHBhZ2UgY2hhbmdlLCB3ZSBoYXZlIHRvIHNldCB0aGUgbGFiZWwgaW4gdXBkYXRlZCgpIChhIHRpY2sgbGF0ZXIgdGhhbiB0aGUgb3RoZXIgY2hhbmdlcykuXG4gICAgICB0aGlzLnNoYWRvd1Jvb3QhLnF1ZXJ5U2VsZWN0b3IoJy5zYmItc2NyZWVuLXJlYWRlci1vbmx5I3N0YXR1cycpIS50ZXh0Q29udGVudCA9XG4gICAgICAgIHRoaXMuX2N1cnJlbnRQYWdlTGFiZWwoKTtcbiAgICB9XG5cbiAgICAvKiogRXZhbHVhdGUgYHBhZ2VJbmRleGAgYnkgZXhjbHVkaW5nIGVkZ2UgY2FzZXMuICovXG4gICAgcHJpdmF0ZSBfY29lcmNlUGFnZUluZGV4SW5SYW5nZShwYWdlSW5kZXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgICByZXR1cm4gTWF0aC5tYXgoXG4gICAgICAgIE1hdGgubWluKE1hdGgubWF4KGlzTmFOKHBhZ2VJbmRleCkgPyAwIDogcGFnZUluZGV4LCAwKSwgdGhpcy5udW1iZXJPZlBhZ2VzKCkgLSAxKSxcbiAgICAgICAgMCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfY3VycmVudFBhZ2VMYWJlbCgpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIGAke3RoaXMuYWNjZXNzaWJpbGl0eVBhZ2VMYWJlbCA/IHRoaXMuYWNjZXNzaWJpbGl0eVBhZ2VMYWJlbCA6IGkxOG5QYWdlW3RoaXMubGFuZ3VhZ2UuY3VycmVudF19ICR7dGhpcy5wYWdlSW5kZXggKyAxfSAke2kxOG5QYWdpbmF0b3JTZWxlY3RlZFt0aGlzLmxhbmd1YWdlLmN1cnJlbnRdfS5gO1xuICAgIH1cblxuICAgIC8qKiBBZHZhbmNlcyB0byB0aGUgbmV4dCBwYWdlIGlmIGl0IGV4aXN0cy4gKi9cbiAgICBwdWJsaWMgbmV4dFBhZ2UoKTogdm9pZCB7XG4gICAgICB0aGlzLnBhZ2VJbmRleCA9IHRoaXMucGFnZUluZGV4ICsgMTtcbiAgICB9XG5cbiAgICAvKiogTW92ZSBiYWNrIHRvIHRoZSBwcmV2aW91cyBwYWdlIGlmIGl0IGV4aXN0cy4gKi9cbiAgICBwdWJsaWMgcHJldmlvdXNQYWdlKCk6IHZvaWQge1xuICAgICAgdGhpcy5wYWdlSW5kZXggPSB0aGlzLnBhZ2VJbmRleCAtIDE7XG4gICAgfVxuXG4gICAgLyoqIE1vdmUgdG8gdGhlIGZpcnN0IHBhZ2UgaWYgbm90IGFscmVhZHkgdGhlcmUuICovXG4gICAgcHVibGljIGZpcnN0UGFnZSgpOiB2b2lkIHtcbiAgICAgIHRoaXMucGFnZUluZGV4ID0gMDtcbiAgICB9XG5cbiAgICAvKiogTW92ZSB0byB0aGUgbGFzdCBwYWdlIGlmIG5vdCBhbHJlYWR5IHRoZXJlLiAqL1xuICAgIHB1YmxpYyBsYXN0UGFnZSgpOiB2b2lkIHtcbiAgICAgIHRoaXMucGFnZUluZGV4ID0gdGhpcy5udW1iZXJPZlBhZ2VzKCkgLSAxO1xuICAgIH1cblxuICAgIC8qKiBNb3ZlIHRvIGEgc3BlY2lmaWMgcGFnZSBpbmRleC4gKi9cbiAgICBwdWJsaWMgc2VsZWN0UGFnZShpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICB0aGlzLnBhZ2VJbmRleCA9IGluZGV4O1xuICAgIH1cblxuICAgIC8qKiBXaGV0aGVyIHRoZXJlIGlzIGEgcHJldmlvdXMgcGFnZS4gKi9cbiAgICBwdWJsaWMgaGFzUHJldmlvdXNQYWdlKCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHRoaXMucGFnZUluZGV4ID49IDEgJiYgdGhpcy5wYWdlU2l6ZSAhPT0gMDtcbiAgICB9XG5cbiAgICAvKiogV2hldGhlciB0aGVyZSBpcyBhIG5leHQgcGFnZS4gKi9cbiAgICBwdWJsaWMgaGFzTmV4dFBhZ2UoKTogYm9vbGVhbiB7XG4gICAgICBjb25zdCBtYXhQYWdlSW5kZXggPSB0aGlzLm51bWJlck9mUGFnZXMoKSAtIDE7XG4gICAgICByZXR1cm4gdGhpcy5wYWdlSW5kZXggPCBtYXhQYWdlSW5kZXggJiYgdGhpcy5wYWdlU2l6ZSAhPT0gMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDYWxjdWxhdGVzIHRoZSBjdXJyZW50IG51bWJlciBvZiBwYWdlcyBiYXNlZCBvbiB0aGUgYGxlbmd0aGAgYW5kIHRoZSBgcGFnZVNpemVgO1xuICAgICAqIHZhbHVlIG11c3QgYmUgcm91bmRlZCB1cCAoZS5nLiBgbGVuZ3RoID0gMjFgIGFuZCBgcGFnZVNpemUgPSAxMGAgbWVhbnMgMyBwYWdlcykuXG4gICAgICovXG4gICAgcHVibGljIG51bWJlck9mUGFnZXMoKTogbnVtYmVyIHtcbiAgICAgIHJldHVybiB0aGlzLnBhZ2VTaXplID8gTWF0aC5jZWlsKHRoaXMubGVuZ3RoIC8gdGhpcy5wYWdlU2l6ZSkgOiAwO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2VtaXRQYWdlRXZlbnQocHJldmlvdXNQYWdlSW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgaWYgKHRoaXMuaGFzVXBkYXRlZCkge1xuICAgICAgICAvKipcbiAgICAgICAgICogQHR5cGUge0N1c3RvbUV2ZW50PFNiYlBhZ2luYXRvclBhZ2VFdmVudERldGFpbHM+fVxuICAgICAgICAgKiBUaGUgcGFnZSBldmVudCBpcyBkaXNwYXRjaGVkIHdoZW4gdGhlIHBhZ2UgaW5kZXgsIGxlbmd0aCBvciBwYWdlIHNpemUgY2hhbmdlcy5cbiAgICAgICAgICovXG4gICAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudChcbiAgICAgICAgICBuZXcgQ3VzdG9tRXZlbnQ8U2JiUGFnaW5hdG9yUGFnZUV2ZW50RGV0YWlscz4oJ3BhZ2UnLCB7XG4gICAgICAgICAgICBidWJibGVzOiB0cnVlLFxuICAgICAgICAgICAgY29tcG9zZWQ6IHRydWUsXG4gICAgICAgICAgICBkZXRhaWw6IHtcbiAgICAgICAgICAgICAgcHJldmlvdXNQYWdlSW5kZXgsXG4gICAgICAgICAgICAgIHBhZ2VJbmRleDogdGhpcy5wYWdlSW5kZXgsXG4gICAgICAgICAgICAgIGxlbmd0aDogdGhpcy5sZW5ndGgsXG4gICAgICAgICAgICAgIHBhZ2VTaXplOiB0aGlzLnBhZ2VTaXplLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgcmVuZGVyUHJldk5leHRCdXR0b25zKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICAgIHJldHVybiBodG1sYFxuICAgICAgICA8c2JiLW1pbmktYnV0dG9uLWdyb3VwID9uZWdhdGl2ZT0ke3RoaXMubmVnYXRpdmV9IHNpemU9JHt0aGlzLnNpemUgPT09ICdzJyA/ICdzJyA6ICdsJ30+XG4gICAgICAgICAgPHNiYi1taW5pLWJ1dHRvblxuICAgICAgICAgICAgaWQ9XCJzYmItcGFnaW5hdG9yLXByZXYtcGFnZVwiXG4gICAgICAgICAgICBhcmlhLWxhYmVsPSR7dGhpcy5hY2Nlc3NpYmlsaXR5UHJldmlvdXNQYWdlTGFiZWxcbiAgICAgICAgICAgICAgPyB0aGlzLmFjY2Vzc2liaWxpdHlQcmV2aW91c1BhZ2VMYWJlbFxuICAgICAgICAgICAgICA6IGkxOG5QcmV2aW91c1BhZ2VbdGhpcy5sYW5ndWFnZS5jdXJyZW50XX1cbiAgICAgICAgICAgIGljb24tbmFtZT1cImNoZXZyb24tc21hbGwtbGVmdC1zbWFsbFwiXG4gICAgICAgICAgICA/ZGlzYWJsZWQ9JHt0aGlzLmRpc2FibGVkIHx8ICF0aGlzLmhhc1ByZXZpb3VzUGFnZSgpfVxuICAgICAgICAgICAgQGNsaWNrPSR7KCkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLnByZXZpb3VzUGFnZSgpO1xuICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgIXRoaXMuaGFzUHJldmlvdXNQYWdlKCkgJiZcbiAgICAgICAgICAgICAgICBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IubW9zdFJlY2VudE1vZGFsaXR5ID09PSAna2V5Ym9hcmQnXG4gICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2hhZG93Um9vdD8uZ2V0RWxlbWVudEJ5SWQoJ3NiYi1wYWdpbmF0b3ItbmV4dC1wYWdlJykhLmZvY3VzKCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPjwvc2JiLW1pbmktYnV0dG9uPlxuICAgICAgICAgIDxzYmItZGl2aWRlciBvcmllbnRhdGlvbj1cInZlcnRpY2FsXCI+PC9zYmItZGl2aWRlcj5cbiAgICAgICAgICA8c2JiLW1pbmktYnV0dG9uXG4gICAgICAgICAgICBpZD1cInNiYi1wYWdpbmF0b3ItbmV4dC1wYWdlXCJcbiAgICAgICAgICAgIGFyaWEtbGFiZWw9JHt0aGlzLmFjY2Vzc2liaWxpdHlOZXh0UGFnZUxhYmVsXG4gICAgICAgICAgICAgID8gdGhpcy5hY2Nlc3NpYmlsaXR5TmV4dFBhZ2VMYWJlbFxuICAgICAgICAgICAgICA6IGkxOG5OZXh0UGFnZVt0aGlzLmxhbmd1YWdlLmN1cnJlbnRdfVxuICAgICAgICAgICAgaWNvbi1uYW1lPVwiY2hldnJvbi1zbWFsbC1yaWdodC1zbWFsbFwiXG4gICAgICAgICAgICA/ZGlzYWJsZWQ9JHt0aGlzLmRpc2FibGVkIHx8ICF0aGlzLmhhc05leHRQYWdlKCl9XG4gICAgICAgICAgICBAY2xpY2s9JHsoKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMubmV4dFBhZ2UoKTtcbiAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICF0aGlzLmhhc05leHRQYWdlKCkgJiZcbiAgICAgICAgICAgICAgICBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IubW9zdFJlY2VudE1vZGFsaXR5ID09PSAna2V5Ym9hcmQnXG4gICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2hhZG93Um9vdD8uZ2V0RWxlbWVudEJ5SWQoJ3NiYi1wYWdpbmF0b3ItcHJldi1wYWdlJykhLmZvY3VzKCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPjwvc2JiLW1pbmktYnV0dG9uPlxuICAgICAgICA8L3NiYi1taW5pLWJ1dHRvbi1ncm91cD5cbiAgICAgIGA7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgICByZXR1cm4gaHRtbGBcbiAgICAgICAgJHt0aGlzLnJlbmRlclBhZ2luYXRvcigpfVxuICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1zY3JlZW4tcmVhZGVyLW9ubHlcIiBpZD1cInN0YXR1c1wiIHJvbGU9XCJzdGF0dXNcIj48L3NwYW4+XG4gICAgICBgO1xuICAgIH1cbiAgfVxuICByZXR1cm4gU2JiUGFnaW5hdG9yQ29tbW9uRWxlbWVudCBhcyB1bmtub3duIGFzIEFic3RyYWN0Q29uc3RydWN0b3I8U2JiUGFnaW5hdG9yQ29tbW9uRWxlbWVudE1peGluVHlwZT4gJlxuICAgIFQ7XG59O1xuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudEV2ZW50TWFwIHtcbiAgICBwYWdlOiBDdXN0b21FdmVudDxTYmJQYWdpbmF0b3JQYWdlRXZlbnREZXRhaWxzPjtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBd0RBLElBQWEsa0NBR1gsZUFDK0Q7Q0F5UC9ELGNBeFB3QztvQkFDOUIsaUJBQWlCLGlCQUFpQixXQUFXLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7ZUFEekMsa0NBQ0wsWUFBOEM7OztJQWV0QyxLQUFBLDJCQUFBLGtCQUFBLE1BQUEsc0JBQWlCLEVBQUM7SUFLbEIsS0FBQSw4QkFBQSxrQkFBQSxNQUFBLDBCQUFBLEVBQUEsa0JBQUEsTUFBQSx3QkFBbUIsR0FBRTtJQUtyQixLQUFBLCtCQUFBLGtCQUFBLE1BQUEsNEJBQUEsRUFBQSxrQkFBQSxNQUFBLHlCQUFvQixFQUFDO0lBR3FDLEtBQUEsbUNBQUEsa0JBQUEsTUFBQSw2QkFBQSxFQUFBLGtCQUFBLE1BQUEsNkJBRTlELFFBQU87SUFNMEIsS0FBQSwwQkFBQSxrQkFBQSxNQUFBLGlDQUFBLEVBQUEsa0JBQUEsTUFBQSxvQkFBa0IsUUFBUSxHQUFHLE1BQU0sSUFBRztJQVFuRSxLQUFBLDRDQUFBLGtCQUFBLE1BQUEsd0JBQUEsRUFBQSxrQkFBQSxNQUFBLHNDQUFpQyxHQUFFO0lBUW5DLEtBQUEsb0RBQUEsa0JBQUEsTUFBQSwwQ0FBQSxFQUFBLGtCQUFBLE1BQUEsOENBQXlDLEdBQUU7SUFRM0MsS0FBQSxnREFBQSxrQkFBQSxNQUFBLGtEQUFBLEVBQUEsa0JBQUEsTUFBQSwwQ0FBcUMsR0FBRTtJQUU3QyxLQUFBLFlBQVEsa0JBQUEsTUFBQSw4Q0FBQSxFQUFHLElBQUksc0JBQXNCLEtBQUs7Ozs7MEJBakRuRCxXQUFXLEVBQ1gsU0FBUyxFQUFFLE1BQU0sUUFBUSxDQUFDLENBQUE7NEJBSTFCLFdBQVcsRUFDWCxTQUFTO0tBQUUsV0FBVztLQUFhLE1BQU07S0FBUSxDQUFDLENBQUE7NkJBSWxELFdBQVcsRUFDWCxTQUFTO0tBQUUsV0FBVztLQUFjLE1BQU07S0FBUSxDQUFDLENBQUE7aUNBSW5ELFNBQVM7S0FBRSxXQUFXO0tBQWtCLFNBQVM7S0FBTSxDQUFDLENBQUE7d0JBUXhELFNBQVMsRUFBRSxTQUFTLE1BQU0sQ0FBQyxDQUFBOzBDQU0zQixXQUFXLEVBQ1gsU0FBUyxFQUFFLFdBQVcsNEJBQTRCLENBQUMsQ0FBQTtrREFPbkQsV0FBVyxFQUNYLFNBQVMsRUFBRSxXQUFXLHFDQUFxQyxDQUFDLENBQUE7OENBTzVELFdBQVcsRUFDWCxTQUFTLEVBQUUsV0FBVyxpQ0FBaUMsQ0FBQyxDQUFBO0lBNUN6RCxhQUFBLE1BQUEsTUFBQSxvQkFBQTtLQUFBLE1BQUE7S0FBQSxNQUFBO0tBQUEsUUFBQTtLQUFBLFNBQUE7S0FBQSxRQUFBO01BQUEsTUFBQSxRQUFBLFlBQUE7TUFBQSxNQUFBLFFBQUEsSUFBZ0I7TUFBTSxNQUFBLEtBQUEsVUFBQTtPQUFBLElBQU4sU0FBTTs7TUFBQTtLQUFBLFVBQUE7S0FBQSxFQUFBLHNCQUFBLDBCQUFBO0lBS3RCLGFBQUEsTUFBQSxNQUFBLHNCQUFBO0tBQUEsTUFBQTtLQUFBLE1BQUE7S0FBQSxRQUFBO0tBQUEsU0FBQTtLQUFBLFFBQUE7TUFBQSxNQUFBLFFBQUEsY0FBQTtNQUFBLE1BQUEsUUFBQSxJQUFnQjtNQUFRLE1BQUEsS0FBQSxVQUFBO09BQUEsSUFBUixXQUFROztNQUFBO0tBQUEsVUFBQTtLQUFBLEVBQUEsd0JBQUEsNEJBQUE7SUFLeEIsYUFBQSxNQUFBLE1BQUEsdUJBQUE7S0FBQSxNQUFBO0tBQUEsTUFBQTtLQUFBLFFBQUE7S0FBQSxTQUFBO0tBQUEsUUFBQTtNQUFBLE1BQUEsUUFBQSxlQUFBO01BQUEsTUFBQSxRQUFBLElBQWdCO01BQVMsTUFBQSxLQUFBLFVBQUE7T0FBQSxJQUFULFlBQVM7O01BQUE7S0FBQSxVQUFBO0tBQUEsRUFBQSx5QkFBQSw2QkFBQTtJQUdpQyxhQUFBLE1BQUEsTUFBQSwyQkFBQTtLQUFBLE1BQUE7S0FBQSxNQUFBO0tBQUEsUUFBQTtLQUFBLFNBQUE7S0FBQSxRQUFBO01BQUEsTUFBQSxRQUFBLG1CQUFBO01BQUEsTUFBQSxRQUFBLElBQWdCO01BQWEsTUFBQSxLQUFBLFVBQUE7T0FBQSxJQUFiLGdCQUFhOztNQUFBO0tBQUEsVUFBQTtLQUFBLEVBQUEsNkJBQUEsaUNBQUE7SUFRMUQsYUFBQSxNQUFBLE1BQUEsa0JBQUE7S0FBQSxNQUFBO0tBQUEsTUFBQTtLQUFBLFFBQUE7S0FBQSxTQUFBO0tBQUEsUUFBQTtNQUFBLE1BQUEsUUFBQSxVQUFBO01BQUEsTUFBQSxRQUFBLElBQWdCO01BQUksTUFBQSxLQUFBLFVBQUE7T0FBQSxJQUFKLE9BQUk7O01BQUE7S0FBQSxVQUFBO0tBQUEsRUFBQSxvQkFBQSx3QkFBQTtJQVFqRCxhQUFBLE1BQUEsTUFBQSxvQ0FBQTtLQUFBLE1BQUE7S0FBQSxNQUFBO0tBQUEsUUFBQTtLQUFBLFNBQUE7S0FBQSxRQUFBO01BQUEsTUFBQSxRQUFBLDRCQUFBO01BQUEsTUFBQSxRQUFBLElBQWdCO01BQXNCLE1BQUEsS0FBQSxVQUFBO09BQUEsSUFBdEIseUJBQXNCOztNQUFBO0tBQUEsVUFBQTtLQUFBLEVBQUEsc0NBQUEsMENBQUE7SUFRdEMsYUFBQSxNQUFBLE1BQUEsNENBQUE7S0FBQSxNQUFBO0tBQUEsTUFBQTtLQUFBLFFBQUE7S0FBQSxTQUFBO0tBQUEsUUFBQTtNQUFBLE1BQUEsUUFBQSxvQ0FBQTtNQUFBLE1BQUEsUUFBQSxJQUFnQjtNQUE4QixNQUFBLEtBQUEsVUFBQTtPQUFBLElBQTlCLGlDQUE4Qjs7TUFBQTtLQUFBLFVBQUE7S0FBQSxFQUFBLDhDQUFBLGtEQUFBO0lBUTlDLGFBQUEsTUFBQSxNQUFBLHdDQUFBO0tBQUEsTUFBQTtLQUFBLE1BQUE7S0FBQSxRQUFBO0tBQUEsU0FBQTtLQUFBLFFBQUE7TUFBQSxNQUFBLFFBQUEsZ0NBQUE7TUFBQSxNQUFBLFFBQUEsSUFBZ0I7TUFBMEIsTUFBQSxLQUFBLFVBQUE7T0FBQSxJQUExQiw2QkFBMEI7O01BQUE7S0FBQSxVQUFBO0tBQUEsRUFBQSwwQ0FBQSw4Q0FBQTs7Ozs7Ozs7O0lBekQ1QixLQUFBLFNBQXlCLENBQUMsdUJBQXVCOzs7SUFDeEMsS0FBQSxzQkFBd0M7S0FDN0Q7S0FDQTtLQUNBO0tBQ0Q7OztJQUVzQixLQUFBLE9BQU87O0dBSzlCOztHQUFBLElBQWdCLFNBQU07SUFBQSxPQUFBLEtBQUE7O0dBQXRCLElBQWdCLE9BQU0sT0FBQTtJQUFBLEtBQUEsMkJBQUE7O0dBS3RCOztHQUFBLElBQWdCLFdBQVE7SUFBQSxPQUFBLEtBQUE7O0dBQXhCLElBQWdCLFNBQVEsT0FBQTtJQUFBLEtBQUEsNkJBQUE7O0dBS3hCOztHQUFBLElBQWdCLFlBQVM7SUFBQSxPQUFBLEtBQUE7O0dBQXpCLElBQWdCLFVBQVMsT0FBQTtJQUFBLEtBQUEsOEJBQUE7O0dBR2lDOztHQUFBLElBQWdCLGdCQUFhO0lBQUEsT0FBQSxLQUFBOztHQUE3QixJQUFnQixjQUFhLE9BQUE7SUFBQSxLQUFBLGtDQUFBOztHQVExRDs7Ozs7R0FBQSxJQUFnQixPQUFJO0lBQUEsT0FBQSxLQUFBOztHQUFwQixJQUFnQixLQUFJLE9BQUE7SUFBQSxLQUFBLHlCQUFBOztHQVFqRDs7Ozs7R0FBQSxJQUFnQix5QkFBc0I7SUFBQSxPQUFBLEtBQUE7O0dBQXRDLElBQWdCLHVCQUFzQixPQUFBO0lBQUEsS0FBQSwyQ0FBQTs7R0FRdEM7Ozs7O0dBQUEsSUFBZ0IsaUNBQThCO0lBQUEsT0FBQSxLQUFBOztHQUE5QyxJQUFnQiwrQkFBOEIsT0FBQTtJQUFBLEtBQUEsbURBQUE7O0dBUTlDOzs7OztHQUFBLElBQWdCLDZCQUEwQjtJQUFBLE9BQUEsS0FBQTs7R0FBMUMsSUFBZ0IsMkJBQTBCLE9BQUE7SUFBQSxLQUFBLCtDQUFBOztHQUt2QixXQUFXLG1CQUF1QztJQUNuRSxNQUFNLFdBQVcsa0JBQWtCO0lBQ25DLElBQUksZ0JBQStCO0lBRW5DLElBQUksa0JBQWtCLElBQUksU0FBUyxJQUFJLEtBQUssV0FBVyxrQkFBa0IsSUFBSSxTQUFTLEVBQUU7S0FDdEYsS0FBSyxTQUFTLE1BQU0sS0FBSyxPQUFPLElBQUksS0FBSyxTQUFTLElBQUksSUFBSSxLQUFLOzs7Ozs7S0FNL0QsS0FBSyxZQUFZLEtBQUssd0JBQXdCLEtBQUssVUFBVTs7SUFHL0QsSUFDRSxrQkFBa0IsSUFBSSxXQUFXLElBQ2pDLEtBQUssYUFBYSxrQkFBa0IsSUFBSSxXQUFXLEVBQ25EO0tBQ0EsTUFBTSxtQkFBbUIsa0JBQWtCLElBQUksV0FBVztLQUMxRCxLQUFLLFdBQVcsTUFBTSxLQUFLLFNBQVMsSUFBSSxLQUFLLFdBQVcsSUFBSSxJQUFJLEtBQUs7S0FJckUsSUFBSSxvQkFBb0IsQ0FBQyxrQkFBa0IsSUFBSSxZQUFZLEVBQ3pELEtBQUssWUFBWSxLQUFLLE1BQU8sS0FBSyxZQUFZLG1CQUFvQixLQUFLLFNBQVMsSUFBSTs7Ozs7OztLQVF0RixnQkFBZ0IsS0FBSzs7SUFHdkIsSUFDRSxrQkFBa0IsSUFBSSxZQUFZLElBQ2xDLEtBQUssY0FBYyxrQkFBa0IsSUFBSSxZQUFZLEVBQ3JEO0tBQ0EsS0FBSyxZQUFZLEtBQUssd0JBQXdCLEtBQUssVUFBVTtLQUM3RCxnQkFBZ0Isa0JBQWtCLElBQUksWUFBYTs7SUFHckQsSUFBSSxrQkFBa0IsTUFDcEIsS0FBSyxlQUFlLGNBQWM7O0dBSW5CLFFBQVEsbUJBQXVDO0lBQ2hFLE1BQU0sUUFBUSxrQkFBa0I7SUFHaEMsS0FBSyxXQUFZLGNBQWMsaUNBQWtDLENBQUMsY0FDaEUsS0FBSyxtQkFBbUI7OztHQUlwQix3QkFBd0IsV0FBaUI7SUFDL0MsT0FBTyxLQUFLLElBQ1YsS0FBSyxJQUFJLEtBQUssSUFBSSxNQUFNLFVBQVUsR0FBRyxJQUFJLFdBQVcsRUFBRSxFQUFFLEtBQUssZUFBZSxHQUFHLEVBQUUsRUFDakYsRUFDRDs7R0FHSyxvQkFBaUI7SUFDdkIsT0FBTyxHQUFHLEtBQUsseUJBQXlCLEtBQUsseUJBQXlCLFNBQVMsS0FBSyxTQUFTLFNBQVEsR0FBSSxLQUFLLFlBQVksRUFBQyxHQUFJLHNCQUFzQixLQUFLLFNBQVMsU0FBUTs7O0dBSXRLLFdBQVE7SUFDYixLQUFLLFlBQVksS0FBSyxZQUFZOzs7R0FJN0IsZUFBWTtJQUNqQixLQUFLLFlBQVksS0FBSyxZQUFZOzs7R0FJN0IsWUFBUztJQUNkLEtBQUssWUFBWTs7O0dBSVosV0FBUTtJQUNiLEtBQUssWUFBWSxLQUFLLGVBQWUsR0FBRzs7O0dBSW5DLFdBQVcsT0FBYTtJQUM3QixLQUFLLFlBQVk7OztHQUlaLGtCQUFlO0lBQ3BCLE9BQU8sS0FBSyxhQUFhLEtBQUssS0FBSyxhQUFhOzs7R0FJM0MsY0FBVztJQUNoQixNQUFNLGVBQWUsS0FBSyxlQUFlLEdBQUc7SUFDNUMsT0FBTyxLQUFLLFlBQVksZ0JBQWdCLEtBQUssYUFBYTs7Ozs7O0dBT3JELGdCQUFhO0lBQ2xCLE9BQU8sS0FBSyxXQUFXLEtBQUssS0FBSyxLQUFLLFNBQVMsS0FBSyxTQUFTLEdBQUc7O0dBRzFELGVBQWUsbUJBQXlCO0lBQzlDLElBQUksS0FBSzs7Ozs7SUFLUCxLQUFLLGNBQ0gsSUFBSSxZQUEwQyxRQUFRO0tBQ3BELFNBQVM7S0FDVCxVQUFVO0tBQ1YsUUFBUTtNQUNOO01BQ0EsV0FBVyxLQUFLO01BQ2hCLFFBQVEsS0FBSztNQUNiLFVBQVUsS0FBSzs7S0FFbEIsQ0FBQyxDQUNIOztHQUlLLHdCQUFxQjtJQUM3QixPQUFPLElBQUk7MkNBQzBCLEtBQUssU0FBUSxRQUFTLEtBQUssU0FBUyxNQUFNLE1BQU0sSUFBRzs7O3lCQUdyRSxLQUFLLGlDQUNkLEtBQUssaUNBQ0wsaUJBQWlCLEtBQUssU0FBUyxTQUFBOzt3QkFFdkIsS0FBSyxZQUFZLENBQUMsS0FBSyxpQkFBaUIsQ0FBQTsyQkFDdEM7S0FDWixLQUFLLGNBQWM7S0FDbkIsSUFDRSxDQUFDLEtBQUssaUJBQWlCLElBQ3ZCLHlCQUF5Qix1QkFBdUIsWUFFaEQsS0FBSyxZQUFZLGVBQWUsMEJBQTJCLENBQUMsT0FBTzs7Ozs7O3lCQU8xRCxLQUFLLDZCQUNkLEtBQUssNkJBQ0wsYUFBYSxLQUFLLFNBQVMsU0FBQTs7d0JBRW5CLEtBQUssWUFBWSxDQUFDLEtBQUssYUFBYSxDQUFBOzJCQUNsQztLQUNaLEtBQUssVUFBVTtLQUNmLElBQ0UsQ0FBQyxLQUFLLGFBQWEsSUFDbkIseUJBQXlCLHVCQUF1QixZQUVoRCxLQUFLLFlBQVksZUFBZSwwQkFBMkIsQ0FBQyxPQUFPOzs7Ozs7R0FRNUQsU0FBTTtJQUN2QixPQUFPLElBQUk7VUFDUCxLQUFLLGlCQUFpQixDQUFBOzs7OztLQUt2QiJ9
@@ -258,4 +258,4 @@ var SbbPaginatorElement = (() => {
258
258
  //#endregion
259
259
  export { SbbPaginatorElement as t };
260
260
 
261
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdG9yLmNvbXBvbmVudC1ESXVpWTdJdC5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvcGFnaW5hdG9yL3BhZ2luYXRvci9wYWdpbmF0b3Iuc2Nzcz9pbmxpbmUiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvcGFnaW5hdG9yL3BhZ2luYXRvci9wYWdpbmF0b3IuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJy4uLy4uL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbjpob3N0IHtcbiAgLS1zYmItcGFnaW5hdG9yLWFuaW1hdGlvbi1kdXJhdGlvbjogdmFyKFxuICAgIC0tc2JiLWRpc2FibGUtYW5pbWF0aW9uLWR1cmF0aW9uLFxuICAgIHZhcigtLXNiYi1hbmltYXRpb24tZHVyYXRpb24tMngpXG4gICk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgLy8gUHJldmVudCBpbmZsdWVuY2UgZnJvbSBjb25zdW1lci1zZXQgbGluZS1oZWlnaHRcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXNiYi10eXBvLWxpbmUtaGVpZ2h0LXRleHQpO1xufVxuXG46aG9zdChbc2l6ZT0ncyddKSB7XG4gIC0tc2JiLXBhZ2luYXRvci1oZWlnaHQ6IHZhcigtLXNiYi1zaXplLWVsZW1lbnQteHMpO1xufVxuXG46aG9zdChbc2l6ZT0nbSddKSB7XG4gIC0tc2JiLXBhZ2luYXRvci1oZWlnaHQ6IHZhcigtLXNiYi1zaXplLWVsZW1lbnQtbSk7XG59XG5cbjpob3N0KFtuZWdhdGl2ZV0pIHtcbiAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtY29sb3I6IHZhcigtLXNiYi1jb2xvci01KTtcbiAgLS1zYmItZm9jdXMtb3V0bGluZS1jb2xvcjogdmFyKC0tc2JiLWZvY3VzLW91dGxpbmUtY29sb3ItZGFyayk7XG59XG5cbjpob3N0KFtwYWdlci1wb3NpdGlvbj0nZW5kJ10pIHtcbiAgLS1zYmItcGFnaW5hdG9yLWp1c3RpZnktY29udGVudDogZW5kO1xuICAtLXNiYi1wYWdpbmF0b3Itd3JhcHBpbmctZ3JvdXAtd3JhcDogd3JhcDtcbiAgLS1zYmItcGFnaW5hdG9yLXdyYXA6IHdyYXAtcmV2ZXJzZTtcbn1cblxuLnNiYi1wYWdpbmF0b3IsXG4uc2JiLXBhZ2luYXRvcl9fd3JhcHBpbmctZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTN4KSB2YXIoLS1zYmItc3BhY2luZy1maXhlZC02eCk7XG4gIGp1c3RpZnktY29udGVudDogdmFyKC0tc2JiLXBhZ2luYXRvci1qdXN0aWZ5LWNvbnRlbnQsIHN0YXJ0KTtcbn1cblxuLnNiYi1wYWdpbmF0b3Ige1xuICBmbGV4LXdyYXA6IHZhcigtLXNiYi1wYWdpbmF0b3Itd3JhcCwgd3JhcCk7XG4gIG1pbi1oZWlnaHQ6IHZhcigtLXNiYi1wYWdpbmF0b3ItaGVpZ2h0KTtcbn1cblxuLnNiYi1wYWdpbmF0b3JfX3dyYXBwaW5nLWdyb3VwIHtcbiAgZmxleC13cmFwOiB2YXIoLS1zYmItcGFnaW5hdG9yLXdyYXBwaW5nLWdyb3VwLXdyYXAsIHdyYXAtcmV2ZXJzZSk7XG59XG5cbi5zYmItcGFnaW5hdG9yX19wYWdlLXNpemUtb3B0aW9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc2JiLXNwYWNpbmctZml4ZWQtMngpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjb2xvcjogdmFyKC0tc2JiLXBhZ2luYXRvci1wYWdlLWNvbG9yKTtcbiAgZm9udC1zaXplOiB2YXIoLS1zYmItcGFnaW5hdG9yLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1zYmItdHlwby1sZXR0ZXItc3BhY2luZy10ZXh0KTtcblxuICAvLyBSZWFwcGx5IHBhcnQgb2YgdGhlIGdsb2JhbCBmb3JtLWZpZWxkIGNzcyB0aGF0IGRvZXMgbm90IHBpZXJjZSB0aGUgc2hhZG93IERPTS5cbiAgc2JiLXNlbGVjdCB7XG4gICAgY29sb3I6IHZhcigtLXNiYi1mb3JtLWZpZWxkLXRleHQtY29sb3IpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc2JiLWZvcm0tZmllbGQtaW5wdXQtdGV4dC1zaXplKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tc2JiLXR5cG8tbGV0dGVyLXNwYWNpbmctdGV4dCk7XG4gICAgcGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1zYmItZm9ybS1maWVsZC1zZWxlY3QtaW5saW5lLXBhZGRpbmctZW5kKTtcbiAgfVxufVxuXG4uc2JiLXBhZ2luYXRvcl9fcGFnZXMge1xuICBAaW5jbHVkZSBzYmIubGlzdC1yZXNldDtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zYmItc3BhY2luZy1maXhlZC0xeCk7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc2JiLXBhZ2luYXRvcl9fcGFnZS0tZWxsaXBzaXMsXG4uc2JiLXBhZ2luYXRvcl9fcGFnZS0tbnVtYmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IHZhcigtLXNiYi1wYWdpbmF0b3ItZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXNiYi10eXBvLWxldHRlci1zcGFjaW5nLXRleHQpO1xuICBjb2xvcjogdmFyKC0tc2JiLXBhZ2luYXRvci1wYWdlLWNvbG9yKTtcbn1cblxuLnNiYi1wYWdpbmF0b3JfX3BhZ2UtLWVsbGlwc2lzLWl0ZW0sXG4uc2JiLXBhZ2luYXRvcl9fcGFnZS0tbnVtYmVyLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IHZhcigtLXNiYi1zaXplLWVsZW1lbnQteHhzKTtcbiAgaGVpZ2h0OiB2YXIoLS1zYmItc2l6ZS1lbGVtZW50LXh4cyk7XG59XG5cbi5zYmItcGFnaW5hdG9yX19wYWdlLS1udW1iZXItaXRlbSB7XG4gIEBpbmNsdWRlIHNiYi5idXR0b24tcmVzZXQ7XG5cbiAgZm9udC1mYW1pbHk6IHZhcigtLXNiYi10eXBvLWZvbnQtZmFtaWx5KTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXNiYi10eXBvLWxldHRlci1zcGFjaW5nLXRleHQpO1xuICBmb250LXNpemU6IHZhcigtLXNiYi1wYWdpbmF0b3ItZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXNiYi10eXBvLWxpbmUtaGVpZ2h0LXRleHQpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogdmFyKC0tc2JiLXBhZ2luYXRvci1wYWdlLWN1cnNvcik7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbiAgY29sb3I6IHZhcigtLXNiYi1wYWdpbmF0b3ItcGFnZS1jb2xvcik7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXNiYi1wYWdpbmF0b3ItYW5pbWF0aW9uLWR1cmF0aW9uKSB2YXIoLS1zYmItcGFnaW5hdG9yLWFuaW1hdGlvbi1lYXNpbmcpO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1wYWdpbmF0b3ItcGFnZS1iYWNrZ3JvdW5kLWNvbG9yLCB0cmFuc3BhcmVudCk7XG4gICAgYm9yZGVyOiB2YXIoLS1zYmItcGFnaW5hdG9yLXBhZ2UtYm9yZGVyLXdpZHRoKSB2YXIoLS1zYmItcGFnaW5hdG9yLXBhZ2UtYm9yZGVyLXN0eWxlLCBub25lKVxuICAgICAgdmFyKC0tc2JiLXBhZ2luYXRvci1wYWdlLWJvcmRlci1jb2xvciwgbm9uZSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tc2JiLWJvcmRlci1yYWRpdXMtaW5maW5pdHkpO1xuICAgIGluc2V0OiB2YXIoLS1zYmItcGFnaW5hdG9yLXBhZ2UtaW5zZXQsIDApO1xuICAgIHRyYW5zaXRpb246IHtcbiAgICAgIHByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yLCBib3JkZXIsIGluc2V0O1xuICAgICAgZHVyYXRpb246IHZhcigtLXNiYi1wYWdpbmF0b3ItYW5pbWF0aW9uLWR1cmF0aW9uKTtcbiAgICAgIHRpbWluZy1mdW5jdGlvbjogdmFyKC0tc2JiLXBhZ2luYXRvci1hbmltYXRpb24tZWFzaW5nKTtcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBzYmIuZm9jdXMtb3V0bGluZTtcblxuICAgICAgb3V0bGluZS1vZmZzZXQ6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMngpO1xuICAgIH1cbiAgfVxuXG4gICZbZGF0YS1zZWxlY3RlZF0ge1xuICAgIEBpbmNsdWRlIHNiYi50ZXh0LS1ib2xkO1xuXG4gICAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtY29sb3I6IHZhcigtLXNiYi1jb2xvci0zKTtcbiAgICAtLXNiYi1wYWdpbmF0b3ItcGFnZS1ib3JkZXItd2lkdGg6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMngpO1xuICAgIC0tc2JiLXBhZ2luYXRvci1wYWdlLWJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtYm9yZGVyLWNvbG9yOiB2YXIoLS1zYmItYm9yZGVyLWNvbG9yLTIpO1xuXG4gICAgOmhvc3QoW25lZ2F0aXZlXSkgJiB7XG4gICAgICAtLXNiYi1wYWdpbmF0b3ItcGFnZS1jb2xvcjogdmFyKC0tc2JiLWNvbG9yLTMtbmVnYXRpdmUpO1xuICAgICAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtYm9yZGVyLWNvbG9yOiB2YXIoLS1zYmItYm9yZGVyLWNvbG9yLTItbmVnYXRpdmUpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIHNiYi5pZi1mb3JjZWQtY29sb3JzIHtcbiAgICAgIC0tc2JiLXBhZ2luYXRvci1wYWdlLWJvcmRlci1jb2xvcjogSGlnaGxpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtY29sb3I6IHZhcigtLXNiYi1jb2xvci01KTtcbiAgICAtLXNiYi1wYWdpbmF0b3ItcGFnZS1ib3JkZXItc3R5bGU6IGRhc2hlZDtcbiAgICAtLXNiYi1wYWdpbmF0b3ItcGFnZS1ib3JkZXItY29sb3I6IHZhcigtLXNiYi1ib3JkZXItY29sb3ItNSk7XG4gICAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLWJhY2tncm91bmQtY29sb3ItMyk7XG4gICAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtY3Vyc29yOiB2YXIoLS1zYmItY3Vyc29yLWRlZmF1bHQpO1xuXG4gICAgJjpub3QoW2RhdGEtc2VsZWN0ZWRdKSB7XG4gICAgICAtLXNiYi1wYWdpbmF0b3ItcGFnZS1ib3JkZXItd2lkdGg6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMXgpO1xuICAgIH1cblxuICAgIDpob3N0KFtuZWdhdGl2ZV0pICYge1xuICAgICAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtY29sb3I6IHZhcigtLXNiYi1jb2xvci01KTtcbiAgICAgIC0tc2JiLXBhZ2luYXRvci1wYWdlLWJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTMtbmVnYXRpdmUpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIHNiYi5pZi1mb3JjZWQtY29sb3JzIHtcbiAgICAgIC0tc2JiLXBhZ2luYXRvci1wYWdlLWJvcmRlci1jb2xvcjogR3JheVRleHQ7XG4gICAgICAtLXNiYi1wYWdpbmF0b3ItcGFnZS1jb2xvcjogR3JheVRleHQ7XG4gICAgICAtLXNiYi1wYWdpbmF0b3ItcGFnZS1iYWNrZ3JvdW5kLWNvbG9yOiBDYW52YXM7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpob3ZlciB7XG4gICAgQGluY2x1ZGUgc2JiLmhvdmVyLW1xKCRob3ZlcjogdHJ1ZSkge1xuICAgICAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLWJhY2tncm91bmQtY29sb3ItMyk7XG4gICAgICAtLXNiYi1wYWdpbmF0b3ItcGFnZS1pbnNldDogY2FsYyh2YXIoLS1zYmItYm9yZGVyLXdpZHRoLTJ4KSAqIC0xKTtcbiAgICAgIC0tc2JiLXBhZ2luYXRvci10cmFuc2xhdGUteS1jb250ZW50LWhvdmVyOiAje3NiYi5weC10by1yZW0tYnVpbGQoLTEpfTtcblxuICAgICAgOmhvc3QoW25lZ2F0aXZlXSkgJiB7XG4gICAgICAgIC0tc2JiLXBhZ2luYXRvci1wYWdlLWJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTMtbmVnYXRpdmUpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBzYmIuaWYtZm9yY2VkLWNvbG9ycyB7XG4gICAgICAgIC0tc2JiLXBhZ2luYXRvci1wYWdlLWJhY2tncm91bmQtY29sb3I6IEhpZ2hsaWdodCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6YWN0aXZlIHtcbiAgICAtLXNiYi1wYWdpbmF0b3ItcGFnZS1jb2xvcjogdmFyKC0tc2JiLWNvbG9yLTMpO1xuICAgIC0tc2JiLXBhZ2luYXRvci1wYWdlLWJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTQpO1xuICAgIC0tc2JiLXBhZ2luYXRvci1wYWdlLWluc2V0OiAwO1xuICAgIC0tc2JiLXBhZ2luYXRvci10cmFuc2xhdGUteS1jb250ZW50LWhvdmVyOiAwO1xuXG4gICAgOmhvc3QoW25lZ2F0aXZlXSkgJiB7XG4gICAgICAtLXNiYi1wYWdpbmF0b3ItcGFnZS1jb2xvcjogdmFyKC0tc2JiLWNvbG9yLTMtbmVnYXRpdmUpO1xuICAgICAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLWJhY2tncm91bmQtY29sb3ItNC1uZWdhdGl2ZSk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgc2JiLmlmLWZvcmNlZC1jb2xvcnMge1xuICAgICAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtYmFja2dyb3VuZC1jb2xvcjogSGlnaGxpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi5zYmItcGFnaW5hdG9yX19wYWdlLS1udW1iZXItaXRlbS1sYWJlbCB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS1zYmItcGFnaW5hdG9yLWFuaW1hdGlvbi1kdXJhdGlvbilcbiAgICB2YXIoLS1zYmItcGFnaW5hdG9yLWFuaW1hdGlvbi1lYXNpbmcpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkodmFyKC0tc2JiLXBhZ2luYXRvci10cmFuc2xhdGUteS1jb250ZW50LWhvdmVyLCAje3NiYi5weC10by1yZW0tYnVpbGQoMCl9KSk7XG59XG4iLCJpbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBub3RoaW5nLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxuICB1bnNhZmVDU1MsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IHJlcGVhdCB9IGZyb20gJ2xpdC9kaXJlY3RpdmVzL3JlcGVhdC5qcyc7XG5cbmltcG9ydCB7XG4gIGZvcmNlVHlwZSxcbiAgaTE4bkl0ZW1zUGVyUGFnZSxcbiAgaTE4blBhZ2UsXG4gIFNiYkVsZW1lbnQsXG4gIHR5cGUgU2JiRWxlbWVudFR5cGUsXG4gIHNiYklucHV0TW9kYWxpdHlEZXRlY3Rvcixcbn0gZnJvbSAnLi4vLi4vY29yZS50cyc7XG5pbXBvcnQgeyBTYmJGb3JtRmllbGRFbGVtZW50IH0gZnJvbSAnLi4vLi4vZm9ybS1maWVsZC5wdXJlLnRzJztcbmltcG9ydCB7IFNiYk9wdGlvbkVsZW1lbnQgfSBmcm9tICcuLi8uLi9vcHRpb24ucHVyZS50cyc7XG5pbXBvcnQgeyBTYmJTZWxlY3RFbGVtZW50IH0gZnJvbSAnLi4vLi4vc2VsZWN0LnB1cmUudHMnO1xuaW1wb3J0IHsgU2JiUGFnaW5hdG9yQ29tbW9uRWxlbWVudE1peGluIH0gZnJvbSAnLi4vY29tbW9uL3BhZ2luYXRvci1jb21tb24udHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9wYWdpbmF0b3Iuc2Nzcz9pbmxpbmUnO1xuXG5jb25zdCBNQVhfUEFHRV9OVU1CRVJTX0RJU1BMQVlFRCA9IDM7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYSBwYWdpbmF0b3IgY29tcG9uZW50LlxuICovXG5leHBvcnQgY2xhc3MgU2JiUGFnaW5hdG9yRWxlbWVudCBleHRlbmRzIFNiYlBhZ2luYXRvckNvbW1vbkVsZW1lbnRNaXhpbihTYmJFbGVtZW50KSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItcGFnaW5hdG9yJztcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBlbGVtZW50RGVwZW5kZW5jaWVzOiBTYmJFbGVtZW50VHlwZVtdID0gW1xuICAgIFNiYkZvcm1GaWVsZEVsZW1lbnQsXG4gICAgU2JiU2VsZWN0RWxlbWVudCxcbiAgICBTYmJPcHRpb25FbGVtZW50LFxuICBdO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbdW5zYWZlQ1NTKHN0eWxlKV07XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZXZlbnRzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICAgIHBhZ2U6ICdwYWdlJyxcbiAgfSBhcyBjb25zdDtcblxuICAvKiogVGhlIGF2YWlsYWJsZSBgcGFnZVNpemVgIGNob2ljZXMuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3BhZ2Utc2l6ZS1vcHRpb25zJywgdHlwZTogQXJyYXkgfSlcbiAgcHVibGljIGFjY2Vzc29yIHBhZ2VTaXplT3B0aW9uczogbnVtYmVyW10gPSBbXTtcblxuICAvKipcbiAgICogUG9zaXRpb24gb2YgdGhlIHByZXYvbmV4dCBidXR0b25zOiBpZiBgcGFnZVNpemVPcHRpb25zYCBpcyBzZXQsXG4gICAqIHRoZSBzYmItc2VsZWN0IGZvciB0aGUgcGFnZVNpemUgY2hhbmdlIHdpbGwgYmUgcG9zaXRpb25lZCBvcHBvc2l0ZWx5LCB3aXRoIHRoZSBwYWdlIG51bWJlcnMgYWx3YXlzIGluIHRoZSBjZW50ZXIuXG4gICAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdwYWdlci1wb3NpdGlvbicsIHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIG92ZXJyaWRlIGFjY2Vzc29yIHBhZ2VyUG9zaXRpb246XG4gICAgfCAnc3RhcnQnXG4gICAgfCAnZW5kJyA9ICdzdGFydCc7XG5cbiAgLyoqXG4gICAqIEFjY2Vzc2liaWxpdHkgbGFiZWwgZm9yIHRoZSBpdGVtcyBwZXIgcGFnZS4gRGVmYXVsdHMgdG8gYEl0ZW1zIHBlciBwYWdlLmAuXG4gICAqIENhbiBiZSBzZXQgZm9yIGNhc2VzIGxpa2UgYSBjYXJvdXNlbCwgd2hlcmUgYHNsaWRlYCBvciBgaW1hZ2VgIGZpdHMgYmV0dGVyLlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2FjY2Vzc2liaWxpdHktaXRlbXMtcGVyLXBhZ2UtbGFiZWwnIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBhY2Nlc3NpYmlsaXR5SXRlbXNQZXJQYWdlTGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gIHByaXZhdGUgX21hcmtGb3JGb2N1cyA9IGZhbHNlO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB1cGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLnVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgLyoqIFRhYiBuYXZpZ2F0aW9uIGNhbiBmb3JjZSBhIHJlcmVuZGVyIHdoZW4gZWxsaXBzaXMgZWxlbWVudHMgbmVlZCB0byBiZSBkaXNwbGF5ZWQ7IHRoZSBmb2N1cyBtdXN0IHN0YXkgb24gdGhlIGNvcnJlY3QgZWxlbWVudC4gKi9cbiAgICBpZiAodGhpcy5fbWFya0ZvckZvY3VzKSB7XG4gICAgICBjb25zdCBmb2N1c0VsZW1lbnQgPSB0aGlzLl9nZXRWaXNpYmxlUGFnZXMoKS5maW5kKFxuICAgICAgICAoZSkgPT4gdGhpcy5wYWdlSW5kZXggPT09ICtlLmdldEF0dHJpYnV0ZSgnZGF0YS1pbmRleCcpISxcbiAgICAgICk7XG4gICAgICBpZiAoZm9jdXNFbGVtZW50KSB7XG4gICAgICAgIChmb2N1c0VsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLmZvY3VzKCk7XG4gICAgICB9XG4gICAgICB0aGlzLl9tYXJrRm9yRm9jdXMgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvKiogUmV0dXJucyB0aGUgZGlzcGxheWVkIHBhZ2UgZWxlbWVudHMuICovXG4gIHByaXZhdGUgX2dldFZpc2libGVQYWdlcygpOiBFbGVtZW50W10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuc2hhZG93Um9vdCEucXVlcnlTZWxlY3RvckFsbCgnLnNiYi1wYWdpbmF0b3JfX3BhZ2UtLW51bWJlci1pdGVtJykpO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGN1bGF0ZSB0aGUgcGFnZXMgc2V0IGJhc2VkIG9uIHRoZSBmb2xsb3dpbmcgcnVsZXM6XG4gICAqICAtIHRoZSBmaXJzdCBwYWdlIG11c3QgYWx3YXlzIGJlIHZpc2libGU7XG4gICAqICAtIHRoZSBsYXN0IHBhZ2UgbXVzdCBhbHdheXMgYmUgdmlzaWJsZTtcbiAgICogIC0gaWYgdGhlcmUgYXJlIG1vcmUgdGhhbiBgTUFYX1BBR0VfTlVNQkVSU19ESVNQTEFZRURgIG90aGVyIHBhZ2VzLCBlbGxpcHNpcyBidXR0b24gbXVzdCBiZSB1c2VkLlxuICAgKi9cbiAgcHJpdmF0ZSBfZ2V0VmlzaWJsZVBhZ2VzSW5kZXgoKTogKG51bWJlciB8ICdlbGxpcHNpcycpW10ge1xuICAgIGNvbnN0IHRvdGFsUGFnZXM6IG51bWJlciA9IHRoaXMubnVtYmVyT2ZQYWdlcygpO1xuICAgIGNvbnN0IGN1cnJlbnRQYWdlSW5kZXg6IG51bWJlciA9IHRoaXMucGFnZUluZGV4O1xuXG4gICAgaWYgKHRvdGFsUGFnZXMgPD0gTUFYX1BBR0VfTlVNQkVSU19ESVNQTEFZRUQgKyAyKSB7XG4gICAgICByZXR1cm4gdGhpcy5fcmFuZ2UodG90YWxQYWdlcyk7XG4gICAgfSBlbHNlIGlmIChjdXJyZW50UGFnZUluZGV4IDwgTUFYX1BBR0VfTlVNQkVSU19ESVNQTEFZRUQpIHtcbiAgICAgIHJldHVybiBbLi4udGhpcy5fcmFuZ2UoTUFYX1BBR0VfTlVNQkVSU19ESVNQTEFZRUQgKyAxKSwgJ2VsbGlwc2lzJywgdG90YWxQYWdlcyAtIDFdO1xuICAgIH0gZWxzZSBpZiAoY3VycmVudFBhZ2VJbmRleCA+PSB0b3RhbFBhZ2VzIC0gTUFYX1BBR0VfTlVNQkVSU19ESVNQTEFZRUQpIHtcbiAgICAgIHJldHVybiBbXG4gICAgICAgIDAsXG4gICAgICAgICdlbGxpcHNpcycsXG4gICAgICAgIC4uLnRoaXMuX3JhbmdlKE1BWF9QQUdFX05VTUJFUlNfRElTUExBWUVEICsgMSwgdG90YWxQYWdlcyAtIDEgLSBNQVhfUEFHRV9OVU1CRVJTX0RJU1BMQVlFRCksXG4gICAgICBdO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gW1xuICAgICAgICAwLFxuICAgICAgICAnZWxsaXBzaXMnLFxuICAgICAgICBjdXJyZW50UGFnZUluZGV4IC0gMSxcbiAgICAgICAgY3VycmVudFBhZ2VJbmRleCxcbiAgICAgICAgY3VycmVudFBhZ2VJbmRleCArIDEsXG4gICAgICAgICdlbGxpcHNpcycsXG4gICAgICAgIHRvdGFsUGFnZXMgLSAxLFxuICAgICAgXTtcbiAgICB9XG4gIH1cblxuICAvKiogQ3JlYXRlcyBhbiBhcnJheSBvZiBjb25zZWN1dGl2ZSBudW1iZXJzIGdpdmVuIHRoZSBsZW5ndGggYW5kIHRoZSBzdGFydGluZyB2YWx1ZS4gKi9cbiAgcHJpdmF0ZSBfcmFuZ2UobGVuZ3RoOiBudW1iZXIsIG9mZnNldDogbnVtYmVyID0gMCk6IG51bWJlcltdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh7IGxlbmd0aCB9LCAoXywgaykgPT4gayArIG9mZnNldCk7XG4gIH1cblxuICBwcml2YXRlIF9vblBhZ2VOdW1iZXJDbGljayhpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RQYWdlKGluZGV4KTtcblxuICAgIC8vIFdoZW4gdGhlIHBhZ2UgaXMgY2hhbmdlZCwgdGhlIG5ldyBjdXJyZW50IHBhZ2UgbWlnaHQgY2hhbmdlIGl0cyBwb3NpdGlvbi5cbiAgICAvLyBBZnRlciB0aGUgcmVuZGVyLCB3ZSBuZWVkIHRvIGVuc3VyZSB0aGF0IHRoZSBmb2N1cyBzdGF5cyBvbiB0aGUgc2VsZWN0ZWQgcGFnZS5cbiAgICB0aGlzLl9tYXJrRm9yRm9jdXMgPSBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IubW9zdFJlY2VudE1vZGFsaXR5ID09PSAna2V5Ym9hcmQnO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVuZGVySXRlbVBlclBhZ2VUZW1wbGF0ZSgpOiBUZW1wbGF0ZVJlc3VsdCB8IHR5cGVvZiBub3RoaW5nIHtcbiAgICByZXR1cm4gdGhpcy5wYWdlU2l6ZU9wdGlvbnMgJiYgdGhpcy5wYWdlU2l6ZU9wdGlvbnMubGVuZ3RoID4gMFxuICAgICAgPyBodG1sYFxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItcGFnaW5hdG9yX19wYWdlLXNpemUtb3B0aW9uc1wiPlxuICAgICAgICAgICAgPGxhYmVsIGZvcj1cInNlbGVjdFwiXG4gICAgICAgICAgICAgID4ke3RoaXMuYWNjZXNzaWJpbGl0eUl0ZW1zUGVyUGFnZUxhYmVsXG4gICAgICAgICAgICAgICAgPyB0aGlzLmFjY2Vzc2liaWxpdHlJdGVtc1BlclBhZ2VMYWJlbFxuICAgICAgICAgICAgICAgIDogaTE4bkl0ZW1zUGVyUGFnZVt0aGlzLmxhbmd1YWdlLmN1cnJlbnRdfTwvbGFiZWxcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDxzYmItZm9ybS1maWVsZFxuICAgICAgICAgICAgICBib3JkZXJsZXNzXG4gICAgICAgICAgICAgIHdpZHRoPVwiY29sbGFwc2VcIlxuICAgICAgICAgICAgICA/bmVnYXRpdmU9JHt0aGlzLm5lZ2F0aXZlfVxuICAgICAgICAgICAgICBzaXplPSR7dGhpcy5zaXplIHx8IG5vdGhpbmd9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxzYmItc2VsZWN0XG4gICAgICAgICAgICAgICAgaWQ9XCJzZWxlY3RcIlxuICAgICAgICAgICAgICAgID9kaXNhYmxlZD0ke3RoaXMuZGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgdmFsdWU9JHt0aGlzLnBhZ2VTaXplT3B0aW9ucz8uZmluZCgoZSkgPT4gZSA9PT0gdGhpcy5wYWdlU2l6ZSkgPz9cbiAgICAgICAgICAgICAgICB0aGlzLnBhZ2VTaXplT3B0aW9ucyFbMF19XG4gICAgICAgICAgICAgICAgQGNoYW5nZT0keyhlOiBFdmVudCkgPT5cbiAgICAgICAgICAgICAgICAgICh0aGlzLnBhZ2VTaXplID0gKygoZS50YXJnZXQgYXMgU2JiU2VsZWN0RWxlbWVudCkudmFsdWUgYXMgc3RyaW5nKSl9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAke3JlcGVhdChcbiAgICAgICAgICAgICAgICAgIHRoaXMucGFnZVNpemVPcHRpb25zISxcbiAgICAgICAgICAgICAgICAgIChlbGVtZW50KSA9PiBodG1sYDxzYmItb3B0aW9uIHZhbHVlPSR7ZWxlbWVudH0+JHtlbGVtZW50fTwvc2JiLW9wdGlvbj5gLFxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvc2JiLXNlbGVjdD5cbiAgICAgICAgICAgIDwvc2JiLWZvcm0tZmllbGQ+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIGBcbiAgICAgIDogbm90aGluZztcbiAgfVxuXG4gIHByaXZhdGUgX3JlbmRlclBhZ2VOdW1iZXJzKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDx1bCBjbGFzcz1cInNiYi1wYWdpbmF0b3JfX3BhZ2VzXCI+XG4gICAgICAgICR7cmVwZWF0KFxuICAgICAgICAgIHRoaXMuX2dldFZpc2libGVQYWdlc0luZGV4KCksXG4gICAgICAgICAgKGl0ZW06IG51bWJlciB8ICdlbGxpcHNpcycpOiBUZW1wbGF0ZVJlc3VsdCA9PlxuICAgICAgICAgICAgaXRlbSA9PT0gJ2VsbGlwc2lzJ1xuICAgICAgICAgICAgICA/IGh0bWxgXG4gICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9XCJzYmItcGFnaW5hdG9yX19wYWdlLS1lbGxpcHNpc1wiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1wYWdpbmF0b3JfX3BhZ2UtLWVsbGlwc2lzLWl0ZW1cIj7igKY8L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgIGBcbiAgICAgICAgICAgICAgOiBodG1sYFxuICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwic2JiLXBhZ2luYXRvcl9fcGFnZS0tbnVtYmVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICA/ZGF0YS1zZWxlY3RlZD0ke3RoaXMucGFnZUluZGV4ID09PSBpdGVtfVxuICAgICAgICAgICAgICAgICAgICAgID9kaXNhYmxlZD0ke3RoaXMuZGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzYmItcGFnaW5hdG9yX19wYWdlLS1udW1iZXItaXRlbVwiXG4gICAgICAgICAgICAgICAgICAgICAgZGF0YS1pbmRleD0ke2l0ZW19XG4gICAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD1cIiR7dGhpcy5hY2Nlc3NpYmlsaXR5UGFnZUxhYmVsXG4gICAgICAgICAgICAgICAgICAgICAgICA/IHRoaXMuYWNjZXNzaWJpbGl0eVBhZ2VMYWJlbFxuICAgICAgICAgICAgICAgICAgICAgICAgOiBpMThuUGFnZVt0aGlzLmxhbmd1YWdlLmN1cnJlbnRdfSAke2l0ZW0gKyAxfVwiXG4gICAgICAgICAgICAgICAgICAgICAgYXJpYS1jdXJyZW50PSR7dGhpcy5wYWdlSW5kZXggPT09IGl0ZW0gPyAndHJ1ZScgOiBub3RoaW5nfVxuICAgICAgICAgICAgICAgICAgICAgIEBjbGljaz0keygpID0+IHRoaXMuX29uUGFnZU51bWJlckNsaWNrKGl0ZW0pfVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItcGFnaW5hdG9yX19wYWdlLS1udW1iZXItaXRlbS1sYWJlbFwiPiR7aXRlbSArIDF9PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgYCxcbiAgICAgICAgKX1cbiAgICAgIDwvdWw+XG4gICAgYDtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXJQYWdpbmF0b3IoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1wYWdpbmF0b3JcIj5cbiAgICAgICAgJHtcbiAgICAgICAgICB0aGlzLnBhZ2VyUG9zaXRpb24gPT09ICdzdGFydCdcbiAgICAgICAgICAgID8gaHRtbGA8c3BhbiBjbGFzcz1cInNiYi1wYWdpbmF0b3JfX3dyYXBwaW5nLWdyb3VwXCI+XG4gICAgICAgICAgICAgICAgICAke3RoaXMucmVuZGVyUHJldk5leHRCdXR0b25zKCl9ICR7dGhpcy5fcmVuZGVyUGFnZU51bWJlcnMoKX1cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgJHt0aGlzLl9yZW5kZXJJdGVtUGVyUGFnZVRlbXBsYXRlKCl9YFxuICAgICAgICAgICAgOiBodG1sYCR7dGhpcy5fcmVuZGVySXRlbVBlclBhZ2VUZW1wbGF0ZSgpfVxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXBhZ2luYXRvcl9fd3JhcHBpbmctZ3JvdXBcIj5cbiAgICAgICAgICAgICAgICAgICR7dGhpcy5fcmVuZGVyUGFnZU51bWJlcnMoKX0gJHt0aGlzLnJlbmRlclByZXZOZXh0QnV0dG9ucygpfVxuICAgICAgICAgICAgICAgIDwvc3Bhbj5gXG4gICAgICAgIH08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItcGFnaW5hdG9yJzogU2JiUGFnaW5hdG9yRWxlbWVudDtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FDMEJBLElBQU0sNkJBQTZCOzs7O0lBS3RCLDZCQUFtQjttQkFBUywrQkFBK0IsV0FBVzs7Ozs7Ozs7OztjQUF0RSw0QkFBNEIsWUFBMEM7OztBQWNqRSxTQUFBLG1DQUFBLGtCQUFBLE1BQUEsK0JBQTRCLEVBQUUsQ0FBQTtBQU1xQyxTQUFBLGtDQUFBLGtCQUFBLE1BQUEsbUNBQUEsRUFBQSxrQkFBQSxNQUFBLDZCQUV2RSxRQUFPO0FBUUgsU0FBQSxtREFBQSxrQkFBQSxNQUFBLGlDQUFBLEVBQUEsa0JBQUEsTUFBQSw4Q0FBeUMsR0FBRTtBQUVuRCxRQUFBLGlCQUFhLGtCQUFBLE1BQUEsa0RBQUEsRUFBRzs7OztrQ0FuQnZCLFNBQVM7SUFBRSxXQUFXO0lBQXFCLE1BQU07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
261
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdG9yLmNvbXBvbmVudC1ESXVpWTdJdC5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvcGFnaW5hdG9yL3BhZ2luYXRvci9wYWdpbmF0b3Iuc2Nzcz9pbmxpbmUiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvcGFnaW5hdG9yL3BhZ2luYXRvci9wYWdpbmF0b3IuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJy4uLy4uL2NvcmUvc3R5bGVzJyBhcyBzYmI7XG5cbjpob3N0IHtcbiAgLS1zYmItcGFnaW5hdG9yLWFuaW1hdGlvbi1kdXJhdGlvbjogdmFyKFxuICAgIC0tc2JiLWRpc2FibGUtYW5pbWF0aW9uLWR1cmF0aW9uLFxuICAgIHZhcigtLXNiYi1hbmltYXRpb24tZHVyYXRpb24tMngpXG4gICk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgLy8gUHJldmVudCBpbmZsdWVuY2UgZnJvbSBjb25zdW1lci1zZXQgbGluZS1oZWlnaHRcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXNiYi10eXBvLWxpbmUtaGVpZ2h0LXRleHQpO1xufVxuXG46aG9zdChbc2l6ZT0ncyddKSB7XG4gIC0tc2JiLXBhZ2luYXRvci1oZWlnaHQ6IHZhcigtLXNiYi1zaXplLWVsZW1lbnQteHMpO1xufVxuXG46aG9zdChbc2l6ZT0nbSddKSB7XG4gIC0tc2JiLXBhZ2luYXRvci1oZWlnaHQ6IHZhcigtLXNiYi1zaXplLWVsZW1lbnQtbSk7XG59XG5cbjpob3N0KFtuZWdhdGl2ZV0pIHtcbiAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtY29sb3I6IHZhcigtLXNiYi1jb2xvci01KTtcbiAgLS1zYmItZm9jdXMtb3V0bGluZS1jb2xvcjogdmFyKC0tc2JiLWZvY3VzLW91dGxpbmUtY29sb3ItZGFyayk7XG59XG5cbjpob3N0KFtwYWdlci1wb3NpdGlvbj0nZW5kJ10pIHtcbiAgLS1zYmItcGFnaW5hdG9yLWp1c3RpZnktY29udGVudDogZW5kO1xuICAtLXNiYi1wYWdpbmF0b3Itd3JhcHBpbmctZ3JvdXAtd3JhcDogd3JhcDtcbiAgLS1zYmItcGFnaW5hdG9yLXdyYXA6IHdyYXAtcmV2ZXJzZTtcbn1cblxuLnNiYi1wYWdpbmF0b3IsXG4uc2JiLXBhZ2luYXRvcl9fd3JhcHBpbmctZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTN4KSB2YXIoLS1zYmItc3BhY2luZy1maXhlZC02eCk7XG4gIGp1c3RpZnktY29udGVudDogdmFyKC0tc2JiLXBhZ2luYXRvci1qdXN0aWZ5LWNvbnRlbnQsIHN0YXJ0KTtcbn1cblxuLnNiYi1wYWdpbmF0b3Ige1xuICBmbGV4LXdyYXA6IHZhcigtLXNiYi1wYWdpbmF0b3Itd3JhcCwgd3JhcCk7XG4gIG1pbi1oZWlnaHQ6IHZhcigtLXNiYi1wYWdpbmF0b3ItaGVpZ2h0KTtcbn1cblxuLnNiYi1wYWdpbmF0b3JfX3dyYXBwaW5nLWdyb3VwIHtcbiAgZmxleC13cmFwOiB2YXIoLS1zYmItcGFnaW5hdG9yLXdyYXBwaW5nLWdyb3VwLXdyYXAsIHdyYXAtcmV2ZXJzZSk7XG59XG5cbi5zYmItcGFnaW5hdG9yX19wYWdlLXNpemUtb3B0aW9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc2JiLXNwYWNpbmctZml4ZWQtMngpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjb2xvcjogdmFyKC0tc2JiLXBhZ2luYXRvci1wYWdlLWNvbG9yKTtcbiAgZm9udC1zaXplOiB2YXIoLS1zYmItcGFnaW5hdG9yLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1zYmItdHlwby1sZXR0ZXItc3BhY2luZy10ZXh0KTtcblxuICAvLyBSZWFwcGx5IHBhcnQgb2YgdGhlIGdsb2JhbCBmb3JtLWZpZWxkIGNzcyB0aGF0IGRvZXMgbm90IHBpZXJjZSB0aGUgc2hhZG93IERPTS5cbiAgc2JiLXNlbGVjdCB7XG4gICAgY29sb3I6IHZhcigtLXNiYi1mb3JtLWZpZWxkLXRleHQtY29sb3IpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc2JiLWZvcm0tZmllbGQtaW5wdXQtdGV4dC1zaXplKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tc2JiLXR5cG8tbGV0dGVyLXNwYWNpbmctdGV4dCk7XG4gICAgcGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1zYmItZm9ybS1maWVsZC1zZWxlY3QtaW5saW5lLXBhZGRpbmctZW5kKTtcbiAgfVxufVxuXG4uc2JiLXBhZ2luYXRvcl9fcGFnZXMge1xuICBAaW5jbHVkZSBzYmIubGlzdC1yZXNldDtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zYmItc3BhY2luZy1maXhlZC0xeCk7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc2JiLXBhZ2luYXRvcl9fcGFnZS0tZWxsaXBzaXMsXG4uc2JiLXBhZ2luYXRvcl9fcGFnZS0tbnVtYmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IHZhcigtLXNiYi1wYWdpbmF0b3ItZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXNiYi10eXBvLWxldHRlci1zcGFjaW5nLXRleHQpO1xuICBjb2xvcjogdmFyKC0tc2JiLXBhZ2luYXRvci1wYWdlLWNvbG9yKTtcbn1cblxuLnNiYi1wYWdpbmF0b3JfX3BhZ2UtLWVsbGlwc2lzLWl0ZW0sXG4uc2JiLXBhZ2luYXRvcl9fcGFnZS0tbnVtYmVyLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IHZhcigtLXNiYi1zaXplLWVsZW1lbnQteHhzKTtcbiAgaGVpZ2h0OiB2YXIoLS1zYmItc2l6ZS1lbGVtZW50LXh4cyk7XG59XG5cbi5zYmItcGFnaW5hdG9yX19wYWdlLS1udW1iZXItaXRlbSB7XG4gIEBpbmNsdWRlIHNiYi5idXR0b24tcmVzZXQ7XG5cbiAgZm9udC1mYW1pbHk6IHZhcigtLXNiYi10eXBvLWZvbnQtZmFtaWx5KTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXNiYi10eXBvLWxldHRlci1zcGFjaW5nLXRleHQpO1xuICBmb250LXNpemU6IHZhcigtLXNiYi1wYWdpbmF0b3ItZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXNiYi10eXBvLWxpbmUtaGVpZ2h0LXRleHQpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogdmFyKC0tc2JiLXBhZ2luYXRvci1wYWdlLWN1cnNvcik7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbiAgY29sb3I6IHZhcigtLXNiYi1wYWdpbmF0b3ItcGFnZS1jb2xvcik7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXNiYi1wYWdpbmF0b3ItYW5pbWF0aW9uLWR1cmF0aW9uKSB2YXIoLS1zYmItcGFnaW5hdG9yLWFuaW1hdGlvbi1lYXNpbmcpO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1wYWdpbmF0b3ItcGFnZS1iYWNrZ3JvdW5kLWNvbG9yLCB0cmFuc3BhcmVudCk7XG4gICAgYm9yZGVyOiB2YXIoLS1zYmItcGFnaW5hdG9yLXBhZ2UtYm9yZGVyLXdpZHRoKSB2YXIoLS1zYmItcGFnaW5hdG9yLXBhZ2UtYm9yZGVyLXN0eWxlLCBub25lKVxuICAgICAgdmFyKC0tc2JiLXBhZ2luYXRvci1wYWdlLWJvcmRlci1jb2xvciwgbm9uZSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tc2JiLWJvcmRlci1yYWRpdXMtaW5maW5pdHkpO1xuICAgIGluc2V0OiB2YXIoLS1zYmItcGFnaW5hdG9yLXBhZ2UtaW5zZXQsIDApO1xuICAgIHRyYW5zaXRpb246IHtcbiAgICAgIHByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yLCBib3JkZXIsIGluc2V0O1xuICAgICAgZHVyYXRpb246IHZhcigtLXNiYi1wYWdpbmF0b3ItYW5pbWF0aW9uLWR1cmF0aW9uKTtcbiAgICAgIHRpbWluZy1mdW5jdGlvbjogdmFyKC0tc2JiLXBhZ2luYXRvci1hbmltYXRpb24tZWFzaW5nKTtcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBzYmIuZm9jdXMtb3V0bGluZTtcblxuICAgICAgb3V0bGluZS1vZmZzZXQ6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMngpO1xuICAgIH1cbiAgfVxuXG4gICZbZGF0YS1zZWxlY3RlZF0ge1xuICAgIEBpbmNsdWRlIHNiYi50ZXh0LS1ib2xkO1xuXG4gICAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtY29sb3I6IHZhcigtLXNiYi1jb2xvci0zKTtcbiAgICAtLXNiYi1wYWdpbmF0b3ItcGFnZS1ib3JkZXItd2lkdGg6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMngpO1xuICAgIC0tc2JiLXBhZ2luYXRvci1wYWdlLWJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtYm9yZGVyLWNvbG9yOiB2YXIoLS1zYmItYm9yZGVyLWNvbG9yLTIpO1xuXG4gICAgOmhvc3QoW25lZ2F0aXZlXSkgJiB7XG4gICAgICAtLXNiYi1wYWdpbmF0b3ItcGFnZS1jb2xvcjogdmFyKC0tc2JiLWNvbG9yLTMtbmVnYXRpdmUpO1xuICAgICAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtYm9yZGVyLWNvbG9yOiB2YXIoLS1zYmItYm9yZGVyLWNvbG9yLTItbmVnYXRpdmUpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIHNiYi5pZi1mb3JjZWQtY29sb3JzIHtcbiAgICAgIC0tc2JiLXBhZ2luYXRvci1wYWdlLWJvcmRlci1jb2xvcjogSGlnaGxpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtY29sb3I6IHZhcigtLXNiYi1jb2xvci01KTtcbiAgICAtLXNiYi1wYWdpbmF0b3ItcGFnZS1ib3JkZXItc3R5bGU6IGRhc2hlZDtcbiAgICAtLXNiYi1wYWdpbmF0b3ItcGFnZS1ib3JkZXItY29sb3I6IHZhcigtLXNiYi1ib3JkZXItY29sb3ItNSk7XG4gICAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLWJhY2tncm91bmQtY29sb3ItMyk7XG4gICAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtY3Vyc29yOiB2YXIoLS1zYmItY3Vyc29yLWRlZmF1bHQpO1xuXG4gICAgJjpub3QoW2RhdGEtc2VsZWN0ZWRdKSB7XG4gICAgICAtLXNiYi1wYWdpbmF0b3ItcGFnZS1ib3JkZXItd2lkdGg6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMXgpO1xuICAgIH1cblxuICAgIDpob3N0KFtuZWdhdGl2ZV0pICYge1xuICAgICAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtY29sb3I6IHZhcigtLXNiYi1jb2xvci01KTtcbiAgICAgIC0tc2JiLXBhZ2luYXRvci1wYWdlLWJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTMtbmVnYXRpdmUpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIHNiYi5pZi1mb3JjZWQtY29sb3JzIHtcbiAgICAgIC0tc2JiLXBhZ2luYXRvci1wYWdlLWJvcmRlci1jb2xvcjogR3JheVRleHQ7XG4gICAgICAtLXNiYi1wYWdpbmF0b3ItcGFnZS1jb2xvcjogR3JheVRleHQ7XG4gICAgICAtLXNiYi1wYWdpbmF0b3ItcGFnZS1iYWNrZ3JvdW5kLWNvbG9yOiBDYW52YXM7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpob3ZlciB7XG4gICAgQGluY2x1ZGUgc2JiLmhvdmVyLW1xKCRob3ZlcjogdHJ1ZSkge1xuICAgICAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLWJhY2tncm91bmQtY29sb3ItMyk7XG4gICAgICAtLXNiYi1wYWdpbmF0b3ItcGFnZS1pbnNldDogY2FsYyh2YXIoLS1zYmItYm9yZGVyLXdpZHRoLTJ4KSAqIC0xKTtcbiAgICAgIC0tc2JiLXBhZ2luYXRvci10cmFuc2xhdGUteS1jb250ZW50LWhvdmVyOiAje3NiYi5weC10by1yZW0tYnVpbGQoLTEpfTtcblxuICAgICAgOmhvc3QoW25lZ2F0aXZlXSkgJiB7XG4gICAgICAgIC0tc2JiLXBhZ2luYXRvci1wYWdlLWJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTMtbmVnYXRpdmUpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBzYmIuaWYtZm9yY2VkLWNvbG9ycyB7XG4gICAgICAgIC0tc2JiLXBhZ2luYXRvci1wYWdlLWJhY2tncm91bmQtY29sb3I6IEhpZ2hsaWdodCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6YWN0aXZlIHtcbiAgICAtLXNiYi1wYWdpbmF0b3ItcGFnZS1jb2xvcjogdmFyKC0tc2JiLWNvbG9yLTMpO1xuICAgIC0tc2JiLXBhZ2luYXRvci1wYWdlLWJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTQpO1xuICAgIC0tc2JiLXBhZ2luYXRvci1wYWdlLWluc2V0OiAwO1xuICAgIC0tc2JiLXBhZ2luYXRvci10cmFuc2xhdGUteS1jb250ZW50LWhvdmVyOiAwO1xuXG4gICAgOmhvc3QoW25lZ2F0aXZlXSkgJiB7XG4gICAgICAtLXNiYi1wYWdpbmF0b3ItcGFnZS1jb2xvcjogdmFyKC0tc2JiLWNvbG9yLTMtbmVnYXRpdmUpO1xuICAgICAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLWJhY2tncm91bmQtY29sb3ItNC1uZWdhdGl2ZSk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgc2JiLmlmLWZvcmNlZC1jb2xvcnMge1xuICAgICAgLS1zYmItcGFnaW5hdG9yLXBhZ2UtYmFja2dyb3VuZC1jb2xvcjogSGlnaGxpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi5zYmItcGFnaW5hdG9yX19wYWdlLS1udW1iZXItaXRlbS1sYWJlbCB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS1zYmItcGFnaW5hdG9yLWFuaW1hdGlvbi1kdXJhdGlvbilcbiAgICB2YXIoLS1zYmItcGFnaW5hdG9yLWFuaW1hdGlvbi1lYXNpbmcpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkodmFyKC0tc2JiLXBhZ2luYXRvci10cmFuc2xhdGUteS1jb250ZW50LWhvdmVyLCAje3NiYi5weC10by1yZW0tYnVpbGQoMCl9KSk7XG59XG4iLCJpbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBub3RoaW5nLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxuICB1bnNhZmVDU1MsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IHJlcGVhdCB9IGZyb20gJ2xpdC9kaXJlY3RpdmVzL3JlcGVhdC5qcyc7XG5cbmltcG9ydCB7XG4gIGZvcmNlVHlwZSxcbiAgaTE4bkl0ZW1zUGVyUGFnZSxcbiAgaTE4blBhZ2UsXG4gIFNiYkVsZW1lbnQsXG4gIHR5cGUgU2JiRWxlbWVudFR5cGUsXG4gIHNiYklucHV0TW9kYWxpdHlEZXRlY3Rvcixcbn0gZnJvbSAnLi4vLi4vY29yZS50cyc7XG5pbXBvcnQgeyBTYmJGb3JtRmllbGRFbGVtZW50IH0gZnJvbSAnLi4vLi4vZm9ybS1maWVsZC5wdXJlLnRzJztcbmltcG9ydCB7IFNiYk9wdGlvbkVsZW1lbnQgfSBmcm9tICcuLi8uLi9vcHRpb24ucHVyZS50cyc7XG5pbXBvcnQgeyBTYmJTZWxlY3RFbGVtZW50IH0gZnJvbSAnLi4vLi4vc2VsZWN0LnB1cmUudHMnO1xuaW1wb3J0IHsgU2JiUGFnaW5hdG9yQ29tbW9uRWxlbWVudE1peGluIH0gZnJvbSAnLi4vY29tbW9uL3BhZ2luYXRvci1jb21tb24udHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9wYWdpbmF0b3Iuc2Nzcz9pbmxpbmUnO1xuXG5jb25zdCBNQVhfUEFHRV9OVU1CRVJTX0RJU1BMQVlFRCA9IDM7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYSBwYWdpbmF0b3IgY29tcG9uZW50LlxuICovXG5leHBvcnQgY2xhc3MgU2JiUGFnaW5hdG9yRWxlbWVudCBleHRlbmRzIFNiYlBhZ2luYXRvckNvbW1vbkVsZW1lbnRNaXhpbihTYmJFbGVtZW50KSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItcGFnaW5hdG9yJztcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBlbGVtZW50RGVwZW5kZW5jaWVzOiBTYmJFbGVtZW50VHlwZVtdID0gW1xuICAgIFNiYkZvcm1GaWVsZEVsZW1lbnQsXG4gICAgU2JiU2VsZWN0RWxlbWVudCxcbiAgICBTYmJPcHRpb25FbGVtZW50LFxuICBdO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbdW5zYWZlQ1NTKHN0eWxlKV07XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZXZlbnRzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICAgIHBhZ2U6ICdwYWdlJyxcbiAgfSBhcyBjb25zdDtcblxuICAvKiogVGhlIGF2YWlsYWJsZSBgcGFnZVNpemVgIGNob2ljZXMuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3BhZ2Utc2l6ZS1vcHRpb25zJywgdHlwZTogQXJyYXkgfSlcbiAgcHVibGljIGFjY2Vzc29yIHBhZ2VTaXplT3B0aW9uczogbnVtYmVyW10gPSBbXTtcblxuICAvKipcbiAgICogUG9zaXRpb24gb2YgdGhlIHByZXYvbmV4dCBidXR0b25zOiBpZiBgcGFnZVNpemVPcHRpb25zYCBpcyBzZXQsXG4gICAqIHRoZSBzYmItc2VsZWN0IGZvciB0aGUgcGFnZVNpemUgY2hhbmdlIHdpbGwgYmUgcG9zaXRpb25lZCBvcHBvc2l0ZWx5LCB3aXRoIHRoZSBwYWdlIG51bWJlcnMgYWx3YXlzIGluIHRoZSBjZW50ZXIuXG4gICAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdwYWdlci1wb3NpdGlvbicsIHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIG92ZXJyaWRlIGFjY2Vzc29yIHBhZ2VyUG9zaXRpb246XG4gICAgfCAnc3RhcnQnXG4gICAgfCAnZW5kJyA9ICdzdGFydCc7XG5cbiAgLyoqXG4gICAqIEFjY2Vzc2liaWxpdHkgbGFiZWwgZm9yIHRoZSBpdGVtcyBwZXIgcGFnZS4gRGVmYXVsdHMgdG8gYEl0ZW1zIHBlciBwYWdlLmAuXG4gICAqIENhbiBiZSBzZXQgZm9yIGNhc2VzIGxpa2UgYSBjYXJvdXNlbCwgd2hlcmUgYHNsaWRlYCBvciBgaW1hZ2VgIGZpdHMgYmV0dGVyLlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2FjY2Vzc2liaWxpdHktaXRlbXMtcGVyLXBhZ2UtbGFiZWwnIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBhY2Nlc3NpYmlsaXR5SXRlbXNQZXJQYWdlTGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gIHByaXZhdGUgX21hcmtGb3JGb2N1cyA9IGZhbHNlO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB1cGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLnVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgLyoqIFRhYiBuYXZpZ2F0aW9uIGNhbiBmb3JjZSBhIHJlcmVuZGVyIHdoZW4gZWxsaXBzaXMgZWxlbWVudHMgbmVlZCB0byBiZSBkaXNwbGF5ZWQ7IHRoZSBmb2N1cyBtdXN0IHN0YXkgb24gdGhlIGNvcnJlY3QgZWxlbWVudC4gKi9cbiAgICBpZiAodGhpcy5fbWFya0ZvckZvY3VzKSB7XG4gICAgICBjb25zdCBmb2N1c0VsZW1lbnQgPSB0aGlzLl9nZXRWaXNpYmxlUGFnZXMoKS5maW5kKFxuICAgICAgICAoZSkgPT4gdGhpcy5wYWdlSW5kZXggPT09ICtlLmdldEF0dHJpYnV0ZSgnZGF0YS1pbmRleCcpISxcbiAgICAgICk7XG4gICAgICBpZiAoZm9jdXNFbGVtZW50KSB7XG4gICAgICAgIChmb2N1c0VsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLmZvY3VzKCk7XG4gICAgICB9XG4gICAgICB0aGlzLl9tYXJrRm9yRm9jdXMgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvKiogUmV0dXJucyB0aGUgZGlzcGxheWVkIHBhZ2UgZWxlbWVudHMuICovXG4gIHByaXZhdGUgX2dldFZpc2libGVQYWdlcygpOiBFbGVtZW50W10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuc2hhZG93Um9vdCEucXVlcnlTZWxlY3RvckFsbCgnLnNiYi1wYWdpbmF0b3JfX3BhZ2UtLW51bWJlci1pdGVtJykpO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGN1bGF0ZSB0aGUgcGFnZXMgc2V0IGJhc2VkIG9uIHRoZSBmb2xsb3dpbmcgcnVsZXM6XG4gICAqICAtIHRoZSBmaXJzdCBwYWdlIG11c3QgYWx3YXlzIGJlIHZpc2libGU7XG4gICAqICAtIHRoZSBsYXN0IHBhZ2UgbXVzdCBhbHdheXMgYmUgdmlzaWJsZTtcbiAgICogIC0gaWYgdGhlcmUgYXJlIG1vcmUgdGhhbiBgTUFYX1BBR0VfTlVNQkVSU19ESVNQTEFZRURgIG90aGVyIHBhZ2VzLCBlbGxpcHNpcyBidXR0b24gbXVzdCBiZSB1c2VkLlxuICAgKi9cbiAgcHJpdmF0ZSBfZ2V0VmlzaWJsZVBhZ2VzSW5kZXgoKTogKG51bWJlciB8ICdlbGxpcHNpcycpW10ge1xuICAgIGNvbnN0IHRvdGFsUGFnZXM6IG51bWJlciA9IHRoaXMubnVtYmVyT2ZQYWdlcygpO1xuICAgIGNvbnN0IGN1cnJlbnRQYWdlSW5kZXg6IG51bWJlciA9IHRoaXMucGFnZUluZGV4O1xuXG4gICAgaWYgKHRvdGFsUGFnZXMgPD0gTUFYX1BBR0VfTlVNQkVSU19ESVNQTEFZRUQgKyAyKSB7XG4gICAgICByZXR1cm4gdGhpcy5fcmFuZ2UodG90YWxQYWdlcyk7XG4gICAgfSBlbHNlIGlmIChjdXJyZW50UGFnZUluZGV4IDwgTUFYX1BBR0VfTlVNQkVSU19ESVNQTEFZRUQpIHtcbiAgICAgIHJldHVybiBbLi4udGhpcy5fcmFuZ2UoTUFYX1BBR0VfTlVNQkVSU19ESVNQTEFZRUQgKyAxKSwgJ2VsbGlwc2lzJywgdG90YWxQYWdlcyAtIDFdO1xuICAgIH0gZWxzZSBpZiAoY3VycmVudFBhZ2VJbmRleCA+PSB0b3RhbFBhZ2VzIC0gTUFYX1BBR0VfTlVNQkVSU19ESVNQTEFZRUQpIHtcbiAgICAgIHJldHVybiBbXG4gICAgICAgIDAsXG4gICAgICAgICdlbGxpcHNpcycsXG4gICAgICAgIC4uLnRoaXMuX3JhbmdlKE1BWF9QQUdFX05VTUJFUlNfRElTUExBWUVEICsgMSwgdG90YWxQYWdlcyAtIDEgLSBNQVhfUEFHRV9OVU1CRVJTX0RJU1BMQVlFRCksXG4gICAgICBdO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gW1xuICAgICAgICAwLFxuICAgICAgICAnZWxsaXBzaXMnLFxuICAgICAgICBjdXJyZW50UGFnZUluZGV4IC0gMSxcbiAgICAgICAgY3VycmVudFBhZ2VJbmRleCxcbiAgICAgICAgY3VycmVudFBhZ2VJbmRleCArIDEsXG4gICAgICAgICdlbGxpcHNpcycsXG4gICAgICAgIHRvdGFsUGFnZXMgLSAxLFxuICAgICAgXTtcbiAgICB9XG4gIH1cblxuICAvKiogQ3JlYXRlcyBhbiBhcnJheSBvZiBjb25zZWN1dGl2ZSBudW1iZXJzIGdpdmVuIHRoZSBsZW5ndGggYW5kIHRoZSBzdGFydGluZyB2YWx1ZS4gKi9cbiAgcHJpdmF0ZSBfcmFuZ2UobGVuZ3RoOiBudW1iZXIsIG9mZnNldDogbnVtYmVyID0gMCk6IG51bWJlcltdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh7IGxlbmd0aCB9LCAoXywgaykgPT4gayArIG9mZnNldCk7XG4gIH1cblxuICBwcml2YXRlIF9vblBhZ2VOdW1iZXJDbGljayhpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RQYWdlKGluZGV4KTtcblxuICAgIC8vIFdoZW4gdGhlIHBhZ2UgaXMgY2hhbmdlZCwgdGhlIG5ldyBjdXJyZW50IHBhZ2UgbWlnaHQgY2hhbmdlIGl0cyBwb3NpdGlvbi5cbiAgICAvLyBBZnRlciB0aGUgcmVuZGVyLCB3ZSBuZWVkIHRvIGVuc3VyZSB0aGF0IHRoZSBmb2N1cyBzdGF5cyBvbiB0aGUgc2VsZWN0ZWQgcGFnZS5cbiAgICB0aGlzLl9tYXJrRm9yRm9jdXMgPSBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IubW9zdFJlY2VudE1vZGFsaXR5ID09PSAna2V5Ym9hcmQnO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVuZGVySXRlbVBlclBhZ2VUZW1wbGF0ZSgpOiBUZW1wbGF0ZVJlc3VsdCB8IHR5cGVvZiBub3RoaW5nIHtcbiAgICByZXR1cm4gdGhpcy5wYWdlU2l6ZU9wdGlvbnMgJiYgdGhpcy5wYWdlU2l6ZU9wdGlvbnMubGVuZ3RoID4gMFxuICAgICAgPyBodG1sYFxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItcGFnaW5hdG9yX19wYWdlLXNpemUtb3B0aW9uc1wiPlxuICAgICAgICAgICAgPGxhYmVsIGZvcj1cInNlbGVjdFwiXG4gICAgICAgICAgICAgID4ke3RoaXMuYWNjZXNzaWJpbGl0eUl0ZW1zUGVyUGFnZUxhYmVsXG4gICAgICAgICAgICAgICAgPyB0aGlzLmFjY2Vzc2liaWxpdHlJdGVtc1BlclBhZ2VMYWJlbFxuICAgICAgICAgICAgICAgIDogaTE4bkl0ZW1zUGVyUGFnZVt0aGlzLmxhbmd1YWdlLmN1cnJlbnRdfTwvbGFiZWxcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDxzYmItZm9ybS1maWVsZFxuICAgICAgICAgICAgICBib3JkZXJsZXNzXG4gICAgICAgICAgICAgIHdpZHRoPVwiY29sbGFwc2VcIlxuICAgICAgICAgICAgICA/bmVnYXRpdmU9JHt0aGlzLm5lZ2F0aXZlfVxuICAgICAgICAgICAgICBzaXplPSR7dGhpcy5zaXplIHx8IG5vdGhpbmd9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxzYmItc2VsZWN0XG4gICAgICAgICAgICAgICAgaWQ9XCJzZWxlY3RcIlxuICAgICAgICAgICAgICAgID9kaXNhYmxlZD0ke3RoaXMuZGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgdmFsdWU9JHt0aGlzLnBhZ2VTaXplT3B0aW9ucz8uZmluZCgoZSkgPT4gZSA9PT0gdGhpcy5wYWdlU2l6ZSkgPz9cbiAgICAgICAgICAgICAgICB0aGlzLnBhZ2VTaXplT3B0aW9ucyFbMF19XG4gICAgICAgICAgICAgICAgQGNoYW5nZT0keyhlOiBFdmVudCkgPT5cbiAgICAgICAgICAgICAgICAgICh0aGlzLnBhZ2VTaXplID0gKygoZS50YXJnZXQgYXMgU2JiU2VsZWN0RWxlbWVudCkudmFsdWUgYXMgc3RyaW5nKSl9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAke3JlcGVhdChcbiAgICAgICAgICAgICAgICAgIHRoaXMucGFnZVNpemVPcHRpb25zISxcbiAgICAgICAgICAgICAgICAgIChlbGVtZW50KSA9PiBodG1sYDxzYmItb3B0aW9uIHZhbHVlPSR7ZWxlbWVudH0+JHtlbGVtZW50fTwvc2JiLW9wdGlvbj5gLFxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvc2JiLXNlbGVjdD5cbiAgICAgICAgICAgIDwvc2JiLWZvcm0tZmllbGQ+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIGBcbiAgICAgIDogbm90aGluZztcbiAgfVxuXG4gIHByaXZhdGUgX3JlbmRlclBhZ2VOdW1iZXJzKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDx1bCBjbGFzcz1cInNiYi1wYWdpbmF0b3JfX3BhZ2VzXCI+XG4gICAgICAgICR7cmVwZWF0KFxuICAgICAgICAgIHRoaXMuX2dldFZpc2libGVQYWdlc0luZGV4KCksXG4gICAgICAgICAgKGl0ZW06IG51bWJlciB8ICdlbGxpcHNpcycpOiBUZW1wbGF0ZVJlc3VsdCA9PlxuICAgICAgICAgICAgaXRlbSA9PT0gJ2VsbGlwc2lzJ1xuICAgICAgICAgICAgICA/IGh0bWxgXG4gICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9XCJzYmItcGFnaW5hdG9yX19wYWdlLS1lbGxpcHNpc1wiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1wYWdpbmF0b3JfX3BhZ2UtLWVsbGlwc2lzLWl0ZW1cIj7igKY8L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgIGBcbiAgICAgICAgICAgICAgOiBodG1sYFxuICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwic2JiLXBhZ2luYXRvcl9fcGFnZS0tbnVtYmVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICA/ZGF0YS1zZWxlY3RlZD0ke3RoaXMucGFnZUluZGV4ID09PSBpdGVtfVxuICAgICAgICAgICAgICAgICAgICAgID9kaXNhYmxlZD0ke3RoaXMuZGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzYmItcGFnaW5hdG9yX19wYWdlLS1udW1iZXItaXRlbVwiXG4gICAgICAgICAgICAgICAgICAgICAgZGF0YS1pbmRleD0ke2l0ZW19XG4gICAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD1cIiR7dGhpcy5hY2Nlc3NpYmlsaXR5UGFnZUxhYmVsXG4gICAgICAgICAgICAgICAgICAgICAgICA/IHRoaXMuYWNjZXNzaWJpbGl0eVBhZ2VMYWJlbFxuICAgICAgICAgICAgICAgICAgICAgICAgOiBpMThuUGFnZVt0aGlzLmxhbmd1YWdlLmN1cnJlbnRdfSAke2l0ZW0gKyAxfVwiXG4gICAgICAgICAgICAgICAgICAgICAgYXJpYS1jdXJyZW50PSR7dGhpcy5wYWdlSW5kZXggPT09IGl0ZW0gPyAndHJ1ZScgOiBub3RoaW5nfVxuICAgICAgICAgICAgICAgICAgICAgIEBjbGljaz0keygpID0+IHRoaXMuX29uUGFnZU51bWJlckNsaWNrKGl0ZW0pfVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItcGFnaW5hdG9yX19wYWdlLS1udW1iZXItaXRlbS1sYWJlbFwiPiR7aXRlbSArIDF9PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgYCxcbiAgICAgICAgKX1cbiAgICAgIDwvdWw+XG4gICAgYDtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXJQYWdpbmF0b3IoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1wYWdpbmF0b3JcIj5cbiAgICAgICAgJHtcbiAgICAgICAgICB0aGlzLnBhZ2VyUG9zaXRpb24gPT09ICdzdGFydCdcbiAgICAgICAgICAgID8gaHRtbGA8c3BhbiBjbGFzcz1cInNiYi1wYWdpbmF0b3JfX3dyYXBwaW5nLWdyb3VwXCI+XG4gICAgICAgICAgICAgICAgICAke3RoaXMucmVuZGVyUHJldk5leHRCdXR0b25zKCl9ICR7dGhpcy5fcmVuZGVyUGFnZU51bWJlcnMoKX1cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgJHt0aGlzLl9yZW5kZXJJdGVtUGVyUGFnZVRlbXBsYXRlKCl9YFxuICAgICAgICAgICAgOiBodG1sYCR7dGhpcy5fcmVuZGVySXRlbVBlclBhZ2VUZW1wbGF0ZSgpfVxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXBhZ2luYXRvcl9fd3JhcHBpbmctZ3JvdXBcIj5cbiAgICAgICAgICAgICAgICAgICR7dGhpcy5fcmVuZGVyUGFnZU51bWJlcnMoKX0gJHt0aGlzLnJlbmRlclByZXZOZXh0QnV0dG9ucygpfVxuICAgICAgICAgICAgICAgIDwvc3Bhbj5gXG4gICAgICAgIH08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItcGFnaW5hdG9yJzogU2JiUGFnaW5hdG9yRWxlbWVudDtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FDMEJBLElBQU0sNkJBQTZCOzs7O0lBS3RCLDZCQUFtQjttQkFBUywrQkFBK0IsV0FBVzs7Ozs7Ozs7OztjQUF0RSw0QkFBNEIsWUFBMEM7OztHQWNqRSxLQUFBLG9DQUFBLGtCQUFBLE1BQUEsK0JBQTRCLEVBQUUsQ0FBQTtHQU1xQyxLQUFBLG1DQUFBLGtCQUFBLE1BQUEsbUNBQUEsRUFBQSxrQkFBQSxNQUFBLDZCQUV2RSxRQUFPO0dBUUgsS0FBQSxvREFBQSxrQkFBQSxNQUFBLGlDQUFBLEVBQUEsa0JBQUEsTUFBQSw4Q0FBeUMsR0FBRTtHQUVuRCxLQUFBLGlCQUFhLGtCQUFBLE1BQUEsa0RBQUEsRUFBRzs7OztrQ0FuQnZCLFNBQVM7SUFBRSxXQUFXO0lBQXFCLE1BQU07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
@@ -152,4 +152,4 @@ var SbbPanelMixin = (superClass) => {
152
152
  //#endregion
153
153
  export { SbbPanelMixin as t };
154
154
 
155
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWwtbWl4aW4tQ0Z6OS1LXzguanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvbWl4aW5zL3BhbmVsLWNvbW1vbi5zY3NzP2lubGluZSIsIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9jb3JlL21peGlucy9wYW5lbC1taXhpbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJAdXNlICcuLi9zdHlsZXMnIGFzIHNiYjtcblxuOmhvc3Qge1xuICAtLXNiYi1zZWxlY3Rpb24tcGFuZWwtYmFja2dyb3VuZDogdmFyKFxuICAgIC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1pbm5lci1iYWNrZ3JvdW5kLFxuICAgIHZhcigtLXNiYi1zZWxlY3Rpb24tcGFuZWwtYmFja2dyb3VuZC1kZWZhdWx0KVxuICApO1xuICAtLXNiYi1zZWxlY3Rpb24tcGFuZWwtYm9yZGVyLXdpZHRoOiB2YXIoXG4gICAgLS1zYmItc2VsZWN0aW9uLXBhbmVsLWlubmVyLWJvcmRlci13aWR0aCxcbiAgICB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWJvcmRlci13aWR0aC1kZWZhdWx0KVxuICApO1xuICAtLXNiYi1zZWxlY3Rpb24tcGFuZWwtYW5pbWF0aW9uLWR1cmF0aW9uOiB2YXIoXG4gICAgLS1zYmItZGlzYWJsZS1hbmltYXRpb24tZHVyYXRpb24sXG4gICAgdmFyKC0tc2JiLWFuaW1hdGlvbi1kdXJhdGlvbi00eClcbiAgKTtcblxuICBkaXNwbGF5OiBibG9jaztcblxuICAvLyBVc2UgIWltcG9ydGFudCBoZXJlIHRvIG5vdCBpbnRlcmZlcmUgd2l0aCBGaXJlZm94IGZvY3VzIHJpbmcgZGVmaW5pdGlvblxuICAvLyB3aGljaCBhcHBlYXJzIGluIG5vcm1hbGl6ZSBDU1Mgb2Ygc2V2ZXJhbCBmcmFtZXdvcmtzLlxuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbjpob3N0KFtzaXplPSd4cyddKSB7XG4gIC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1jaGVja2JveC1kaW1lbnNpb246IHZhcigtLXNiYi1jaGVja2JveC1kaW1lbnNpb24teHMpO1xuICAtLXNiYi1zZWxlY3Rpb24tcGFuZWwtaW5wdXQtcGFkZGluZzogdmFyKC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1pbnB1dC1wYWRkaW5nLWJsb2NrLXhzKVxuICAgIHZhcigtLXNiYi1zZWxlY3Rpb24tcGFuZWwtaW5wdXQtcGFkZGluZy1pbmxpbmUteHMpO1xufVxuXG46aG9zdChbc2l6ZT0ncyddKSB7XG4gIC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1jaGVja2JveC1kaW1lbnNpb246IHZhcigtLXNiYi1jaGVja2JveC1kaW1lbnNpb24tcyk7XG4gIC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1pbnB1dC1wYWRkaW5nOiB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWlucHV0LXBhZGRpbmctYmxvY2stcylcbiAgICB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWlucHV0LXBhZGRpbmctaW5saW5lLXMpO1xufVxuXG46aG9zdChbc2l6ZT0nbSddKSB7XG4gIC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1jaGVja2JveC1kaW1lbnNpb246IHZhcigtLXNiYi1jaGVja2JveC1kaW1lbnNpb24tbSk7XG4gIC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1pbnB1dC1wYWRkaW5nOiB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWlucHV0LXBhZGRpbmctYmxvY2stbSlcbiAgICB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWlucHV0LXBhZGRpbmctaW5saW5lLW0pO1xufVxuXG46aG9zdChbY29sb3I9J21pbGsnXSkge1xuICAtLXNiYi1zZWxlY3Rpb24tcGFuZWwtYmFja2dyb3VuZDogdmFyKFxuICAgIC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1pbm5lci1iYWNrZ3JvdW5kLFxuICAgIHZhcigtLXNiYi1zZWxlY3Rpb24tcGFuZWwtYmFja2dyb3VuZC1taWxrKVxuICApO1xufVxuXG46aG9zdChbYm9yZGVybGVzc106bm90KDpzdGF0ZShjaGVja2VkKSkpIHtcbiAgLS1zYmItc2VsZWN0aW9uLXBhbmVsLWJvcmRlci1jb2xvcjogdmFyKC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1ib3JkZXItY29sb3ItYm9yZGVybGVzcyk7XG59XG5cbjpob3N0KDppcyg6c3RhdGUoY2hlY2tlZCkpOm5vdCg6ZGlzYWJsZWQsIFtkaXNhYmxlZF0pKSB7XG4gIC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1ib3JkZXItY29sb3I6IHZhcigtLXNiYi1zZWxlY3Rpb24tcGFuZWwtYm9yZGVyLWNvbG9yLWNoZWNrZWQpO1xuICAtLXNiYi1zZWxlY3Rpb24tcGFuZWwtYm9yZGVyLXdpZHRoOiB2YXIoXG4gICAgLS1zYmItc2VsZWN0aW9uLXBhbmVsLWlubmVyLWJvcmRlci13aWR0aCxcbiAgICB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWJvcmRlci13aWR0aC1jaGVja2VkKVxuICApO1xufVxuXG46aG9zdCg6aXMoOmRpc2FibGVkLCBbZGlzYWJsZWRdKSkge1xuICAtLXNiYi1zZWxlY3Rpb24tcGFuZWwtY3Vyc29yOiB2YXIoLS1zYmItY3Vyc29yLWRlZmF1bHQpO1xufVxuXG4uc2JiLXNlbGVjdGlvbi1wYW5lbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjdXJzb3I6IHZhcigtLXNiYi1zZWxlY3Rpb24tcGFuZWwtY3Vyc29yKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWJvcmRlci1yYWRpdXMpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWJvcmRlci13aWR0aClcbiAgICB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWJvcmRlci1jb2xvcik7XG4gIHBhZGRpbmc6IHZhcigtLXNiYi1zZWxlY3Rpb24tcGFuZWwtaW5wdXQtcGFkZGluZyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1zZWxlY3Rpb24tcGFuZWwtYmFja2dyb3VuZCk7XG5cbiAgLy8gQWxsb3cgdGhlIHBhbmVsIHRvIGdyb3cgaW4gaGVpZ2h0LCBlLmcuIGluIGZsZXggY29udGV4dDtcbiAgaGVpZ2h0OiAxMDAlO1xuXG4gIHRyYW5zaXRpb246IHtcbiAgICBkdXJhdGlvbjogdmFyKC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1hbmltYXRpb24tZHVyYXRpb24pO1xuICAgIHRpbWluZy1mdW5jdGlvbjogdmFyKC0tc2JiLWFuaW1hdGlvbi1lYXNpbmcpO1xuICAgIHByb3BlcnR5OiBib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gRm9yIGhpZ2ggY29udHJhc3QgbW9kZSB3ZSBuZWVkIGEgcmVhbCBib3JkZXJcbiAgQGluY2x1ZGUgc2JiLmlmLWZvcmNlZC1jb2xvcnMge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBpbnNldDogMDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgYm9yZGVyOiB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1ib3JkZXItY29sb3IpO1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICA6aG9zdCg6Zm9jdXMtdmlzaWJsZSkgJiB7XG4gICAgQGluY2x1ZGUgc2JiLmZvY3VzLW91dGxpbmU7XG4gIH1cbn1cblxuLnNiYi1zZWxlY3Rpb24tcGFuZWxfX2JhZGdlIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWJvcmRlci1yYWRpdXMpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5zbG90W25hbWU9J3N1ZmZpeCddIHtcbiAgY29sb3I6IHZhcigtLXNiYi1zZWxlY3Rpb24tcGFuZWwtc3VmZml4LWNvbG9yKTtcbn1cblxuc2xvdFtuYW1lPSdzdWJ0ZXh0J10ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHZhcigtLXNiYi1zZWxlY3Rpb24tcGFuZWwtc3VidGV4dC1jb2xvcik7XG4gIHBhZGRpbmctaW5saW5lLXN0YXJ0OiBjYWxjKFxuICAgIHZhcigtLXNiYi1zZWxlY3Rpb24tcGFuZWwtY2hlY2tib3gtZGltZW5zaW9uKSArIHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTJ4KVxuICApO1xuXG4gIDpob3N0KDpub3QoOnN0YXRlKHNsb3R0ZWQtc3VidGV4dCkpKSAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCJpbXBvcnQgeyB0eXBlIENTU1Jlc3VsdEdyb3VwLCB0eXBlIExpdEVsZW1lbnQsIHVuc2FmZUNTUyB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHR5cGUgeyBTYmJDaGVja2JveFNpemUgfSBmcm9tICcuLi8uLi9jaGVja2JveC9jb21tb24vY2hlY2tib3gtY29tbW9uLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiQ2hlY2tib3hHcm91cEVsZW1lbnQgfSBmcm9tICcuLi8uLi9jaGVja2JveC1ncm91cC5wdXJlLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiUmFkaW9CdXR0b25TaXplIH0gZnJvbSAnLi4vLi4vcmFkaW8tYnV0dG9uL2NvbW1vbi9yYWRpby1idXR0b24tY29tbW9uLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiUmFkaW9CdXR0b25Hcm91cEVsZW1lbnQgfSBmcm9tICcuLi8uLi9yYWRpby1idXR0b24tZ3JvdXAucHVyZS50cyc7XG5pbXBvcnQgeyBmb3JjZVR5cGUgfSBmcm9tICcuLi9kZWNvcmF0b3JzL2ZvcmNlLXR5cGUudHMnO1xuaW1wb3J0IHsgZ2V0T3ZlcnJpZGUgfSBmcm9tICcuLi9kZWNvcmF0b3JzL2dldC1vdmVycmlkZS50cyc7XG5pbXBvcnQgeyBpc0xlYW4gfSBmcm9tICcuLi9kb20vbGVhbi1jb250ZXh0LnRzJztcblxuaW1wb3J0IHR5cGUgeyBBYnN0cmFjdENvbnN0cnVjdG9yIH0gZnJvbSAnLi9jb25zdHJ1Y3Rvci50cyc7XG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9wYW5lbC1jb21tb24uc2Nzcz9pbmxpbmUnO1xuXG5pbnRlcmZhY2UgU2JiUGFuZWxXaXRoR3JvdXAge1xuICBncm91cDogU2JiQ2hlY2tib3hHcm91cEVsZW1lbnQgfCBTYmJSYWRpb0J1dHRvbkdyb3VwRWxlbWVudCB8IG51bGw7XG59XG5cbmV4cG9ydCBkZWNsYXJlIGNsYXNzIFNiYlBhbmVsTWl4aW5UeXBlIHtcbiAgcHVibGljIGFjY2Vzc29yIGNvbG9yOiAnd2hpdGUnIHwgJ21pbGsnO1xuICBwdWJsaWMgYWNjZXNzb3IgYm9yZGVybGVzczogYm9vbGVhbjtcbiAgcHVibGljIGFjY2Vzc29yIGV4cGFuc2lvblN0YXRlOiBzdHJpbmc7XG4gIHB1YmxpYyBhY2Nlc3NvciBzaXplOiBTYmJDaGVja2JveFNpemUgfCBTYmJSYWRpb0J1dHRvblNpemU7XG59XG5cbi8qKlxuICogTWl4aW4gZm9yIGNvbW1vbiBwYW5lbCBiZWhhdmlvcnNcbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuZXhwb3J0IGNvbnN0IFNiYlBhbmVsTWl4aW4gPSA8VCBleHRlbmRzIEFic3RyYWN0Q29uc3RydWN0b3I8TGl0RWxlbWVudCAmIFNiYlBhbmVsV2l0aEdyb3VwPj4oXG4gIHN1cGVyQ2xhc3M6IFQsXG4pOiBBYnN0cmFjdENvbnN0cnVjdG9yPFNiYlBhbmVsTWl4aW5UeXBlPiAmIFQgPT4ge1xuICBhYnN0cmFjdCBjbGFzcyBTYmJQYW5lbEVsZW1lbnQgZXh0ZW5kcyBzdXBlckNsYXNzIGltcGxlbWVudHMgU2JiUGFuZWxNaXhpblR5cGUge1xuICAgIHB1YmxpYyBzdGF0aWMgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFt1bnNhZmVDU1Moc3R5bGUpXTtcblxuICAgIC8qKiBUaGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgcGFuZWwuICovXG4gICAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgYWNjZXNzb3IgY29sb3I6ICd3aGl0ZScgfCAnbWlsaycgPSAnd2hpdGUnO1xuXG4gICAgLyoqIFdoZXRoZXIgdGhlIHVuc2VsZWN0ZWQgcGFuZWwgaGFzIGEgYm9yZGVyLiAqL1xuICAgIEBmb3JjZVR5cGUoKVxuICAgIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUsIHR5cGU6IEJvb2xlYW4gfSlcbiAgICBwdWJsaWMgYWNjZXNzb3IgYm9yZGVybGVzczogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgLyoqIEBpbnRlcm5hbCB1c2VkIGZvciBhY2Nlc3NpYmlsaXR5IGxhYmVsIHdoZW4gaW4gZXhwYW5zaW9uIHBhbmVsICovXG4gICAgQGZvcmNlVHlwZSgpXG4gICAgQHByb3BlcnR5KClcbiAgICBwdWJsaWMgYWNjZXNzb3IgZXhwYW5zaW9uU3RhdGU6IHN0cmluZyA9ICcnO1xuXG4gICAgLyoqXG4gICAgICogU2l6ZSB2YXJpYW50LCBlaXRoZXIgeHMsIHMgb3IgbS5cbiAgICAgKiBAZGVmYXVsdCAnbScgLyAneHMnIChsZWFuKVxuICAgICAqL1xuICAgIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSlcbiAgICBAZ2V0T3ZlcnJpZGUoKHA6IFNiYlBhbmVsRWxlbWVudCwgdikgPT4gcC5ncm91cD8uc2l6ZSA/PyB2KVxuICAgIHB1YmxpYyBhY2Nlc3NvciBzaXplOiBTYmJDaGVja2JveFNpemUgfCBTYmJSYWRpb0J1dHRvblNpemUgPSBpc0xlYW4oKSA/ICd4cycgOiAnbSc7XG5cbiAgICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuXG4gICAgICAvLyBUT0RPOiBBbmFseXplIGFuZCBvcHRpbWl6ZWQgbWF5YmUgd2l0aCBQcm9wZXJ0eVdhdGNoZXIgb3IgbGl0IGNvbnRleHRcbiAgICAgIC8qKiBAaW50ZXJuYWwgKi9cbiAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ3BhbmVsY29ubmVjdGVkJywgeyBidWJibGVzOiB0cnVlIH0pKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gU2JiUGFuZWxFbGVtZW50IGFzIEFic3RyYWN0Q29uc3RydWN0b3I8U2JiUGFuZWxNaXhpblR5cGU+ICYgVDtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUM2QkEsSUFBYSxpQkFDWCxlQUM4QztBQWtDOUMsZUFqQzhCO29CQUFTOzs7Ozs7Ozs7Ozs7O2VBQXhCLHdCQUF3QixZQUFVOzs7eUJBSTlDLFNBQVMsRUFBRSxTQUFTLE1BQU0sQ0FBQyxDQUFBOzhCQUczQixXQUFXLEVBQ1gsU0FBUztLQUFFLFNBQVM7S0FBTSxNQUFNO0tBQVMsQ0FBQyxDQUFBO2tDQUkxQyxXQUFXLEVBQ1gsVUFBVSxDQUFBO3dCQU9WLFNBQVMsRUFBRSxTQUFTLE1BQU0sQ0FBQyxFQUMzQixhQUFhLEdBQW9CLE1BQU0sRUFBRSxPQUFPLFFBQVEsRUFBRSxDQUFBO0FBakI5QixpQkFBQSxNQUFBLE1BQUEsbUJBQUE7S0FBQSxNQUFBO0tBQUEsTUFBQTtLQUFBLFFBQUE7S0FBQSxTQUFBO0tBQUEsUUFBQTtNQUFBLE1BQUEsUUFBQSxXQUFBO01BQUEsTUFBQSxRQUFBLElBQWdCO01BQUssTUFBQSxLQUFBLFVBQUE7QUFBQSxXQUFMLFFBQUs7O01BQUE7S0FBQSxVQUFBO0tBQUEsRUFBQSxxQkFBQSx5QkFBQTtBQUtsRCxpQkFBQSxNQUFBLE1BQUEsd0JBQUE7S0FBQSxNQUFBO0tBQUEsTUFBQTtLQUFBLFFBQUE7S0FBQSxTQUFBO0tBQUEsUUFBQTtNQUFBLE1BQUEsUUFBQSxnQkFBQTtNQUFBLE1BQUEsUUFBQSxJQUFnQjtNQUFVLE1BQUEsS0FBQSxVQUFBO0FBQUEsV0FBVixhQUFVOztNQUFBO0tBQUEsVUFBQTtLQUFBLEVBQUEsMEJBQUEsOEJBQUE7QUFLMUIsaUJBQUEsTUFBQSxNQUFBLDRCQUFBO0tBQUEsTUFBQTtLQUFBLE1BQUE7S0FBQSxRQUFBO0tBQUEsU0FBQTtLQUFBLFFBQUE7TUFBQSxNQUFBLFFBQUEsb0JBQUE7TUFBQSxNQUFBLFFBQUEsSUFBZ0I7TUFBYyxNQUFBLEtBQUEsVUFBQTtBQUFBLFdBQWQsaUJBQWM7O01BQUE7S0FBQSxVQUFBO0tBQUEsRUFBQSw4QkFBQSxrQ0FBQTtBQVE5QixpQkFBQSxNQUFBLE1BQUEsa0JBQUE7S0FBQSxNQUFBO0tBQUEsTUFBQTtLQUFBLFFBQUE7S0FBQSxTQUFBO0tBQUEsUUFBQTtNQUFBLE1BQUEsUUFBQSxVQUFBO01BQUEsTUFBQSxRQUFBLElBQWdCO01BQUksTUFBQSxLQUFBLFVBQUE7QUFBQSxXQUFKLE9BQUk7O01BQUE7S0FBQSxVQUFBO0tBQUEsRUFBQSxvQkFBQSx3QkFBQTs7Ozs7Ozs7O0FBckJOLFNBQUEsU0FBeUIsQ0FBQyxVQUFVLHFCQUFNLENBQUM7O0dBRzVCLDBCQUFBLGtCQUFBLE1BQUEscUJBQTBDLFFBQU87O0dBQWpELElBQWdCLFFBQUs7QUFBQSxXQUFBLE1BQUE7O0dBQXJCLElBQWdCLE1BQUssT0FBQTtBQUFBLFVBQUEseUJBQUE7O0dBS2xELGdDQUFBLGtCQUFBLE1BQUEseUJBQUEsRUFBQSxrQkFBQSxNQUFBLDBCQUFzQyxNQUFLOztHQUEzQyxJQUFnQixhQUFVO0FBQUEsV0FBQSxNQUFBOztHQUExQixJQUFnQixXQUFVLE9BQUE7QUFBQSxVQUFBLDhCQUFBOztHQUsxQixvQ0FBQSxrQkFBQSxNQUFBLDhCQUFBLEVBQUEsa0JBQUEsTUFBQSw4QkFBeUMsR0FBRTs7R0FBM0MsSUFBZ0IsaUJBQWM7QUFBQSxXQUFBLE1BQUE7O0dBQTlCLElBQWdCLGVBQWMsT0FBQTtBQUFBLFVBQUEsa0NBQUE7O0dBUTlCLDBCQUFBLGtCQUFBLE1BQUEsa0NBQUEsRUFBQSxrQkFBQSxNQUFBLG9CQUE2RCxRQUFRLEdBQUcsT0FBTyxJQUFHOzs7OztHQUFsRixJQUFnQixPQUFJO0FBQUEsV0FBQSxNQUFBOztHQUFwQixJQUFnQixLQUFJLE9BQUE7QUFBQSxVQUFBLHdCQUFBOztHQUVKLG9CQUFpQjtBQUMvQixVQUFNLG1CQUFtQjs7QUFJekIsU0FBSyxjQUFjLElBQUksTUFBTSxrQkFBa0IsRUFBRSxTQUFTLE1BQU0sQ0FBQyxDQUFDOzs7Ozs7O0tBSS9EIn0=
155
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWwtbWl4aW4tQ0Z6OS1LXzguanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvbWl4aW5zL3BhbmVsLWNvbW1vbi5zY3NzP2lubGluZSIsIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9jb3JlL21peGlucy9wYW5lbC1taXhpbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJAdXNlICcuLi9zdHlsZXMnIGFzIHNiYjtcblxuOmhvc3Qge1xuICAtLXNiYi1zZWxlY3Rpb24tcGFuZWwtYmFja2dyb3VuZDogdmFyKFxuICAgIC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1pbm5lci1iYWNrZ3JvdW5kLFxuICAgIHZhcigtLXNiYi1zZWxlY3Rpb24tcGFuZWwtYmFja2dyb3VuZC1kZWZhdWx0KVxuICApO1xuICAtLXNiYi1zZWxlY3Rpb24tcGFuZWwtYm9yZGVyLXdpZHRoOiB2YXIoXG4gICAgLS1zYmItc2VsZWN0aW9uLXBhbmVsLWlubmVyLWJvcmRlci13aWR0aCxcbiAgICB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWJvcmRlci13aWR0aC1kZWZhdWx0KVxuICApO1xuICAtLXNiYi1zZWxlY3Rpb24tcGFuZWwtYW5pbWF0aW9uLWR1cmF0aW9uOiB2YXIoXG4gICAgLS1zYmItZGlzYWJsZS1hbmltYXRpb24tZHVyYXRpb24sXG4gICAgdmFyKC0tc2JiLWFuaW1hdGlvbi1kdXJhdGlvbi00eClcbiAgKTtcblxuICBkaXNwbGF5OiBibG9jaztcblxuICAvLyBVc2UgIWltcG9ydGFudCBoZXJlIHRvIG5vdCBpbnRlcmZlcmUgd2l0aCBGaXJlZm94IGZvY3VzIHJpbmcgZGVmaW5pdGlvblxuICAvLyB3aGljaCBhcHBlYXJzIGluIG5vcm1hbGl6ZSBDU1Mgb2Ygc2V2ZXJhbCBmcmFtZXdvcmtzLlxuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbjpob3N0KFtzaXplPSd4cyddKSB7XG4gIC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1jaGVja2JveC1kaW1lbnNpb246IHZhcigtLXNiYi1jaGVja2JveC1kaW1lbnNpb24teHMpO1xuICAtLXNiYi1zZWxlY3Rpb24tcGFuZWwtaW5wdXQtcGFkZGluZzogdmFyKC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1pbnB1dC1wYWRkaW5nLWJsb2NrLXhzKVxuICAgIHZhcigtLXNiYi1zZWxlY3Rpb24tcGFuZWwtaW5wdXQtcGFkZGluZy1pbmxpbmUteHMpO1xufVxuXG46aG9zdChbc2l6ZT0ncyddKSB7XG4gIC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1jaGVja2JveC1kaW1lbnNpb246IHZhcigtLXNiYi1jaGVja2JveC1kaW1lbnNpb24tcyk7XG4gIC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1pbnB1dC1wYWRkaW5nOiB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWlucHV0LXBhZGRpbmctYmxvY2stcylcbiAgICB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWlucHV0LXBhZGRpbmctaW5saW5lLXMpO1xufVxuXG46aG9zdChbc2l6ZT0nbSddKSB7XG4gIC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1jaGVja2JveC1kaW1lbnNpb246IHZhcigtLXNiYi1jaGVja2JveC1kaW1lbnNpb24tbSk7XG4gIC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1pbnB1dC1wYWRkaW5nOiB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWlucHV0LXBhZGRpbmctYmxvY2stbSlcbiAgICB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWlucHV0LXBhZGRpbmctaW5saW5lLW0pO1xufVxuXG46aG9zdChbY29sb3I9J21pbGsnXSkge1xuICAtLXNiYi1zZWxlY3Rpb24tcGFuZWwtYmFja2dyb3VuZDogdmFyKFxuICAgIC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1pbm5lci1iYWNrZ3JvdW5kLFxuICAgIHZhcigtLXNiYi1zZWxlY3Rpb24tcGFuZWwtYmFja2dyb3VuZC1taWxrKVxuICApO1xufVxuXG46aG9zdChbYm9yZGVybGVzc106bm90KDpzdGF0ZShjaGVja2VkKSkpIHtcbiAgLS1zYmItc2VsZWN0aW9uLXBhbmVsLWJvcmRlci1jb2xvcjogdmFyKC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1ib3JkZXItY29sb3ItYm9yZGVybGVzcyk7XG59XG5cbjpob3N0KDppcyg6c3RhdGUoY2hlY2tlZCkpOm5vdCg6ZGlzYWJsZWQsIFtkaXNhYmxlZF0pKSB7XG4gIC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1ib3JkZXItY29sb3I6IHZhcigtLXNiYi1zZWxlY3Rpb24tcGFuZWwtYm9yZGVyLWNvbG9yLWNoZWNrZWQpO1xuICAtLXNiYi1zZWxlY3Rpb24tcGFuZWwtYm9yZGVyLXdpZHRoOiB2YXIoXG4gICAgLS1zYmItc2VsZWN0aW9uLXBhbmVsLWlubmVyLWJvcmRlci13aWR0aCxcbiAgICB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWJvcmRlci13aWR0aC1jaGVja2VkKVxuICApO1xufVxuXG46aG9zdCg6aXMoOmRpc2FibGVkLCBbZGlzYWJsZWRdKSkge1xuICAtLXNiYi1zZWxlY3Rpb24tcGFuZWwtY3Vyc29yOiB2YXIoLS1zYmItY3Vyc29yLWRlZmF1bHQpO1xufVxuXG4uc2JiLXNlbGVjdGlvbi1wYW5lbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjdXJzb3I6IHZhcigtLXNiYi1zZWxlY3Rpb24tcGFuZWwtY3Vyc29yKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWJvcmRlci1yYWRpdXMpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWJvcmRlci13aWR0aClcbiAgICB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWJvcmRlci1jb2xvcik7XG4gIHBhZGRpbmc6IHZhcigtLXNiYi1zZWxlY3Rpb24tcGFuZWwtaW5wdXQtcGFkZGluZyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1zZWxlY3Rpb24tcGFuZWwtYmFja2dyb3VuZCk7XG5cbiAgLy8gQWxsb3cgdGhlIHBhbmVsIHRvIGdyb3cgaW4gaGVpZ2h0LCBlLmcuIGluIGZsZXggY29udGV4dDtcbiAgaGVpZ2h0OiAxMDAlO1xuXG4gIHRyYW5zaXRpb246IHtcbiAgICBkdXJhdGlvbjogdmFyKC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1hbmltYXRpb24tZHVyYXRpb24pO1xuICAgIHRpbWluZy1mdW5jdGlvbjogdmFyKC0tc2JiLWFuaW1hdGlvbi1lYXNpbmcpO1xuICAgIHByb3BlcnR5OiBib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gRm9yIGhpZ2ggY29udHJhc3QgbW9kZSB3ZSBuZWVkIGEgcmVhbCBib3JkZXJcbiAgQGluY2x1ZGUgc2JiLmlmLWZvcmNlZC1jb2xvcnMge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBpbnNldDogMDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgYm9yZGVyOiB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1ib3JkZXItY29sb3IpO1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tc2JiLXNlbGVjdGlvbi1wYW5lbC1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICA6aG9zdCg6Zm9jdXMtdmlzaWJsZSkgJiB7XG4gICAgQGluY2x1ZGUgc2JiLmZvY3VzLW91dGxpbmU7XG4gIH1cbn1cblxuLnNiYi1zZWxlY3Rpb24tcGFuZWxfX2JhZGdlIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1zYmItc2VsZWN0aW9uLXBhbmVsLWJvcmRlci1yYWRpdXMpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5zbG90W25hbWU9J3N1ZmZpeCddIHtcbiAgY29sb3I6IHZhcigtLXNiYi1zZWxlY3Rpb24tcGFuZWwtc3VmZml4LWNvbG9yKTtcbn1cblxuc2xvdFtuYW1lPSdzdWJ0ZXh0J10ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHZhcigtLXNiYi1zZWxlY3Rpb24tcGFuZWwtc3VidGV4dC1jb2xvcik7XG4gIHBhZGRpbmctaW5saW5lLXN0YXJ0OiBjYWxjKFxuICAgIHZhcigtLXNiYi1zZWxlY3Rpb24tcGFuZWwtY2hlY2tib3gtZGltZW5zaW9uKSArIHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTJ4KVxuICApO1xuXG4gIDpob3N0KDpub3QoOnN0YXRlKHNsb3R0ZWQtc3VidGV4dCkpKSAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCJpbXBvcnQgeyB0eXBlIENTU1Jlc3VsdEdyb3VwLCB0eXBlIExpdEVsZW1lbnQsIHVuc2FmZUNTUyB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHR5cGUgeyBTYmJDaGVja2JveFNpemUgfSBmcm9tICcuLi8uLi9jaGVja2JveC9jb21tb24vY2hlY2tib3gtY29tbW9uLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiQ2hlY2tib3hHcm91cEVsZW1lbnQgfSBmcm9tICcuLi8uLi9jaGVja2JveC1ncm91cC5wdXJlLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiUmFkaW9CdXR0b25TaXplIH0gZnJvbSAnLi4vLi4vcmFkaW8tYnV0dG9uL2NvbW1vbi9yYWRpby1idXR0b24tY29tbW9uLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiUmFkaW9CdXR0b25Hcm91cEVsZW1lbnQgfSBmcm9tICcuLi8uLi9yYWRpby1idXR0b24tZ3JvdXAucHVyZS50cyc7XG5pbXBvcnQgeyBmb3JjZVR5cGUgfSBmcm9tICcuLi9kZWNvcmF0b3JzL2ZvcmNlLXR5cGUudHMnO1xuaW1wb3J0IHsgZ2V0T3ZlcnJpZGUgfSBmcm9tICcuLi9kZWNvcmF0b3JzL2dldC1vdmVycmlkZS50cyc7XG5pbXBvcnQgeyBpc0xlYW4gfSBmcm9tICcuLi9kb20vbGVhbi1jb250ZXh0LnRzJztcblxuaW1wb3J0IHR5cGUgeyBBYnN0cmFjdENvbnN0cnVjdG9yIH0gZnJvbSAnLi9jb25zdHJ1Y3Rvci50cyc7XG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9wYW5lbC1jb21tb24uc2Nzcz9pbmxpbmUnO1xuXG5pbnRlcmZhY2UgU2JiUGFuZWxXaXRoR3JvdXAge1xuICBncm91cDogU2JiQ2hlY2tib3hHcm91cEVsZW1lbnQgfCBTYmJSYWRpb0J1dHRvbkdyb3VwRWxlbWVudCB8IG51bGw7XG59XG5cbmV4cG9ydCBkZWNsYXJlIGNsYXNzIFNiYlBhbmVsTWl4aW5UeXBlIHtcbiAgcHVibGljIGFjY2Vzc29yIGNvbG9yOiAnd2hpdGUnIHwgJ21pbGsnO1xuICBwdWJsaWMgYWNjZXNzb3IgYm9yZGVybGVzczogYm9vbGVhbjtcbiAgcHVibGljIGFjY2Vzc29yIGV4cGFuc2lvblN0YXRlOiBzdHJpbmc7XG4gIHB1YmxpYyBhY2Nlc3NvciBzaXplOiBTYmJDaGVja2JveFNpemUgfCBTYmJSYWRpb0J1dHRvblNpemU7XG59XG5cbi8qKlxuICogTWl4aW4gZm9yIGNvbW1vbiBwYW5lbCBiZWhhdmlvcnNcbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuZXhwb3J0IGNvbnN0IFNiYlBhbmVsTWl4aW4gPSA8VCBleHRlbmRzIEFic3RyYWN0Q29uc3RydWN0b3I8TGl0RWxlbWVudCAmIFNiYlBhbmVsV2l0aEdyb3VwPj4oXG4gIHN1cGVyQ2xhc3M6IFQsXG4pOiBBYnN0cmFjdENvbnN0cnVjdG9yPFNiYlBhbmVsTWl4aW5UeXBlPiAmIFQgPT4ge1xuICBhYnN0cmFjdCBjbGFzcyBTYmJQYW5lbEVsZW1lbnQgZXh0ZW5kcyBzdXBlckNsYXNzIGltcGxlbWVudHMgU2JiUGFuZWxNaXhpblR5cGUge1xuICAgIHB1YmxpYyBzdGF0aWMgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFt1bnNhZmVDU1Moc3R5bGUpXTtcblxuICAgIC8qKiBUaGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgcGFuZWwuICovXG4gICAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgYWNjZXNzb3IgY29sb3I6ICd3aGl0ZScgfCAnbWlsaycgPSAnd2hpdGUnO1xuXG4gICAgLyoqIFdoZXRoZXIgdGhlIHVuc2VsZWN0ZWQgcGFuZWwgaGFzIGEgYm9yZGVyLiAqL1xuICAgIEBmb3JjZVR5cGUoKVxuICAgIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUsIHR5cGU6IEJvb2xlYW4gfSlcbiAgICBwdWJsaWMgYWNjZXNzb3IgYm9yZGVybGVzczogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgLyoqIEBpbnRlcm5hbCB1c2VkIGZvciBhY2Nlc3NpYmlsaXR5IGxhYmVsIHdoZW4gaW4gZXhwYW5zaW9uIHBhbmVsICovXG4gICAgQGZvcmNlVHlwZSgpXG4gICAgQHByb3BlcnR5KClcbiAgICBwdWJsaWMgYWNjZXNzb3IgZXhwYW5zaW9uU3RhdGU6IHN0cmluZyA9ICcnO1xuXG4gICAgLyoqXG4gICAgICogU2l6ZSB2YXJpYW50LCBlaXRoZXIgeHMsIHMgb3IgbS5cbiAgICAgKiBAZGVmYXVsdCAnbScgLyAneHMnIChsZWFuKVxuICAgICAqL1xuICAgIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSlcbiAgICBAZ2V0T3ZlcnJpZGUoKHA6IFNiYlBhbmVsRWxlbWVudCwgdikgPT4gcC5ncm91cD8uc2l6ZSA/PyB2KVxuICAgIHB1YmxpYyBhY2Nlc3NvciBzaXplOiBTYmJDaGVja2JveFNpemUgfCBTYmJSYWRpb0J1dHRvblNpemUgPSBpc0xlYW4oKSA/ICd4cycgOiAnbSc7XG5cbiAgICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuXG4gICAgICAvLyBUT0RPOiBBbmFseXplIGFuZCBvcHRpbWl6ZWQgbWF5YmUgd2l0aCBQcm9wZXJ0eVdhdGNoZXIgb3IgbGl0IGNvbnRleHRcbiAgICAgIC8qKiBAaW50ZXJuYWwgKi9cbiAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ3BhbmVsY29ubmVjdGVkJywgeyBidWJibGVzOiB0cnVlIH0pKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gU2JiUGFuZWxFbGVtZW50IGFzIEFic3RyYWN0Q29uc3RydWN0b3I8U2JiUGFuZWxNaXhpblR5cGU+ICYgVDtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUM2QkEsSUFBYSxpQkFDWCxlQUM4QztDQWtDOUMsY0FqQzhCO29CQUFTOzs7Ozs7Ozs7Ozs7O2VBQXhCLHdCQUF3QixZQUFVOzs7eUJBSTlDLFNBQVMsRUFBRSxTQUFTLE1BQU0sQ0FBQyxDQUFBOzhCQUczQixXQUFXLEVBQ1gsU0FBUztLQUFFLFNBQVM7S0FBTSxNQUFNO0tBQVMsQ0FBQyxDQUFBO2tDQUkxQyxXQUFXLEVBQ1gsVUFBVSxDQUFBO3dCQU9WLFNBQVMsRUFBRSxTQUFTLE1BQU0sQ0FBQyxFQUMzQixhQUFhLEdBQW9CLE1BQU0sRUFBRSxPQUFPLFFBQVEsRUFBRSxDQUFBO0lBakI5QixhQUFBLE1BQUEsTUFBQSxtQkFBQTtLQUFBLE1BQUE7S0FBQSxNQUFBO0tBQUEsUUFBQTtLQUFBLFNBQUE7S0FBQSxRQUFBO01BQUEsTUFBQSxRQUFBLFdBQUE7TUFBQSxNQUFBLFFBQUEsSUFBZ0I7TUFBSyxNQUFBLEtBQUEsVUFBQTtPQUFBLElBQUwsUUFBSzs7TUFBQTtLQUFBLFVBQUE7S0FBQSxFQUFBLHFCQUFBLHlCQUFBO0lBS2xELGFBQUEsTUFBQSxNQUFBLHdCQUFBO0tBQUEsTUFBQTtLQUFBLE1BQUE7S0FBQSxRQUFBO0tBQUEsU0FBQTtLQUFBLFFBQUE7TUFBQSxNQUFBLFFBQUEsZ0JBQUE7TUFBQSxNQUFBLFFBQUEsSUFBZ0I7TUFBVSxNQUFBLEtBQUEsVUFBQTtPQUFBLElBQVYsYUFBVTs7TUFBQTtLQUFBLFVBQUE7S0FBQSxFQUFBLDBCQUFBLDhCQUFBO0lBSzFCLGFBQUEsTUFBQSxNQUFBLDRCQUFBO0tBQUEsTUFBQTtLQUFBLE1BQUE7S0FBQSxRQUFBO0tBQUEsU0FBQTtLQUFBLFFBQUE7TUFBQSxNQUFBLFFBQUEsb0JBQUE7TUFBQSxNQUFBLFFBQUEsSUFBZ0I7TUFBYyxNQUFBLEtBQUEsVUFBQTtPQUFBLElBQWQsaUJBQWM7O01BQUE7S0FBQSxVQUFBO0tBQUEsRUFBQSw4QkFBQSxrQ0FBQTtJQVE5QixhQUFBLE1BQUEsTUFBQSxrQkFBQTtLQUFBLE1BQUE7S0FBQSxNQUFBO0tBQUEsUUFBQTtLQUFBLFNBQUE7S0FBQSxRQUFBO01BQUEsTUFBQSxRQUFBLFVBQUE7TUFBQSxNQUFBLFFBQUEsSUFBZ0I7TUFBSSxNQUFBLEtBQUEsVUFBQTtPQUFBLElBQUosT0FBSTs7TUFBQTtLQUFBLFVBQUE7S0FBQSxFQUFBLG9CQUFBLHdCQUFBOzs7Ozs7Ozs7SUFyQk4sS0FBQSxTQUF5QixDQUFDLFVBQVUscUJBQU0sQ0FBQzs7R0FHNUIsMEJBQUEsa0JBQUEsTUFBQSxxQkFBMEMsUUFBTzs7R0FBakQsSUFBZ0IsUUFBSztJQUFBLE9BQUEsS0FBQTs7R0FBckIsSUFBZ0IsTUFBSyxPQUFBO0lBQUEsS0FBQSwwQkFBQTs7R0FLbEQsZ0NBQUEsa0JBQUEsTUFBQSx5QkFBQSxFQUFBLGtCQUFBLE1BQUEsMEJBQXNDLE1BQUs7O0dBQTNDLElBQWdCLGFBQVU7SUFBQSxPQUFBLEtBQUE7O0dBQTFCLElBQWdCLFdBQVUsT0FBQTtJQUFBLEtBQUEsK0JBQUE7O0dBSzFCLG9DQUFBLGtCQUFBLE1BQUEsOEJBQUEsRUFBQSxrQkFBQSxNQUFBLDhCQUF5QyxHQUFFOztHQUEzQyxJQUFnQixpQkFBYztJQUFBLE9BQUEsS0FBQTs7R0FBOUIsSUFBZ0IsZUFBYyxPQUFBO0lBQUEsS0FBQSxtQ0FBQTs7R0FROUIsMEJBQUEsa0JBQUEsTUFBQSxrQ0FBQSxFQUFBLGtCQUFBLE1BQUEsb0JBQTZELFFBQVEsR0FBRyxPQUFPLElBQUc7Ozs7O0dBQWxGLElBQWdCLE9BQUk7SUFBQSxPQUFBLEtBQUE7O0dBQXBCLElBQWdCLEtBQUksT0FBQTtJQUFBLEtBQUEseUJBQUE7O0dBRUosb0JBQWlCO0lBQy9CLE1BQU0sbUJBQW1COztJQUl6QixLQUFLLGNBQWMsSUFBSSxNQUFNLGtCQUFrQixFQUFFLFNBQVMsTUFBTSxDQUFDLENBQUM7Ozs7Ozs7S0FJL0QifQ==