@sbb-esta/lyne-elements-dev 4.7.0-dev.1773755030 → 4.7.0-dev.1773817331

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 (943) hide show
  1. package/{block-link-common-D4aizuV-.js → block-link-common-BMTrbSfi.js} +1 -1
  2. package/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +1 -1
  3. package/breadcrumb/breadcrumb-group.js +1 -1
  4. package/{breadcrumb-group.component-BA8KK3Om.js → breadcrumb-group.component-CfUyO1sI.js} +1 -1
  5. package/breadcrumb.js +1 -1
  6. package/breadcrumb.pure.js +1 -1
  7. package/checkbox/checkbox.component.js +2 -2
  8. package/checkbox/checkbox.js +2 -2
  9. package/checkbox/common/checkbox-common.js +1 -1
  10. package/checkbox/common.js +1 -1
  11. package/checkbox-group/checkbox-group.component.js +20 -2
  12. package/checkbox-group.js +1 -1
  13. package/checkbox-group.pure.js +1 -1
  14. package/{checkbox.component-CJcC5JnN.js → checkbox.component-Bazdxs9R.js} +1 -1
  15. package/checkbox.js +3 -3
  16. package/checkbox.pure.js +2 -2
  17. package/chip/chip/chip.component.js +1 -1
  18. package/chip/chip-group/chip-group.component.js +1 -1
  19. package/chip/chip-group.js +1 -1
  20. package/chip/chip.js +1 -1
  21. package/chip-label/chip-label.component.js +1 -1
  22. package/chip-label.js +1 -1
  23. package/chip-label.pure.js +1 -1
  24. package/chip.js +2 -2
  25. package/chip.pure.js +2 -2
  26. package/clock/clock.component.js +1 -1
  27. package/clock.js +1 -1
  28. package/clock.pure.js +1 -1
  29. package/container/container/container.component.js +1 -1
  30. package/container/container.js +1 -1
  31. package/container/sticky-bar/sticky-bar.component.js +1 -1
  32. package/container/sticky-bar.js +1 -1
  33. package/container.js +2 -2
  34. package/container.pure.js +2 -2
  35. package/core/base-elements/selection-group-base-element.js +2 -0
  36. package/core/base-elements.js +2 -1
  37. package/core/controllers/media-matchers-controller.js +1 -1
  38. package/core/styles/core.scss +2 -6
  39. package/core.css +33 -117
  40. package/custom-elements.json +749 -160
  41. package/date-input/date-input.component.js +1 -1
  42. package/date-input.js +1 -1
  43. package/date-input.pure.js +1 -1
  44. package/datepicker/common/datepicker-button.js +1 -1
  45. package/datepicker/common.js +1 -1
  46. package/datepicker/datepicker/datepicker.component.js +1 -1
  47. package/datepicker/datepicker.js +1 -1
  48. package/datepicker.js +2 -2
  49. package/datepicker.pure.js +2 -2
  50. package/development/{block-link-common-FvD8So7p.js → block-link-common-CjBLu4BU.js} +2 -2
  51. package/development/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +1 -1
  52. package/development/breadcrumb/breadcrumb-group.js +1 -1
  53. package/development/breadcrumb-group.component-zU06d9ni.js +279 -0
  54. package/development/breadcrumb.js +1 -1
  55. package/development/breadcrumb.pure.js +1 -1
  56. package/development/checkbox/checkbox.component.js +2 -2
  57. package/development/checkbox/checkbox.js +2 -2
  58. package/development/checkbox/common/checkbox-common.js +1 -1
  59. package/development/checkbox/common.js +1 -1
  60. package/development/{checkbox-common-DD7r8g0_.js → checkbox-common-DOS4FkuG.js} +1 -1
  61. package/development/checkbox-group/checkbox-group.component.d.ts +8 -23
  62. package/development/checkbox-group/checkbox-group.component.d.ts.map +1 -1
  63. package/development/checkbox-group/checkbox-group.component.js +33 -1
  64. package/development/checkbox-group.js +1 -1
  65. package/development/checkbox-group.pure.js +1 -1
  66. package/development/{checkbox.component-B43Akyck.js → checkbox.component-DBtj7z07.js} +2 -2
  67. package/development/checkbox.js +3 -3
  68. package/development/checkbox.pure.js +2 -2
  69. package/development/chip/chip/chip.component.js +1 -1
  70. package/development/chip/chip-group/chip-group.component.js +1 -1
  71. package/development/chip/chip-group.js +1 -1
  72. package/development/chip/chip.js +1 -1
  73. package/development/{chip-group.component-DzCCcoOw.js → chip-group.component-BIJlU5Dp.js} +1 -1
  74. package/development/chip-label/chip-label.component.js +1 -1
  75. package/development/{chip-label.component-jN_Fulv_.js → chip-label.component-DOCHCxBi.js} +1 -1
  76. package/development/chip-label.js +1 -1
  77. package/development/chip-label.pure.js +1 -1
  78. package/development/{chip.component-Bn7ffNEr.js → chip.component-D6OL8r_Q.js} +1 -1
  79. package/development/chip.js +2 -2
  80. package/development/chip.pure.js +2 -2
  81. package/development/clock/clock.component.js +1 -1
  82. package/development/{clock.component-btjeVAaa.js → clock.component-DPIVt4d3.js} +1 -1
  83. package/development/clock.js +1 -1
  84. package/development/clock.pure.js +1 -1
  85. package/development/{compact-paginator.component-CCDP0TMd.js → compact-paginator.component-BSTPWGJx.js} +1 -1
  86. package/development/container/container/container.component.js +1 -1
  87. package/development/container/container.js +1 -1
  88. package/development/container/sticky-bar/sticky-bar.component.js +1 -1
  89. package/development/container/sticky-bar.js +1 -1
  90. package/development/{container.component-CVm8-HZ4.js → container.component-Co2L3KBb.js} +1 -1
  91. package/development/container.js +2 -2
  92. package/development/container.pure.js +2 -2
  93. package/development/core/base-elements/selection-group-base-element.d.ts +35 -0
  94. package/development/core/base-elements/selection-group-base-element.d.ts.map +1 -0
  95. package/development/core/base-elements/selection-group-base-element.js +2 -0
  96. package/development/core/base-elements.d.ts +1 -0
  97. package/development/core/base-elements.d.ts.map +1 -1
  98. package/development/core/base-elements.js +2 -1
  99. package/development/core/controllers/media-matchers-controller.js +1 -1
  100. package/development/date-input/date-input.component.js +1 -1
  101. package/development/{date-input.component-CqsEOZfb.js → date-input.component-D6__znuy.js} +1 -1
  102. package/development/date-input.js +1 -1
  103. package/development/date-input.pure.js +1 -1
  104. package/development/datepicker/common/datepicker-button.js +1 -1
  105. package/development/datepicker/common.js +1 -1
  106. package/development/datepicker/datepicker/datepicker.component.js +1 -1
  107. package/development/datepicker/datepicker.js +1 -1
  108. package/development/{datepicker-button-BORzfDaA.js → datepicker-button-vHP0D4yV.js} +1 -1
  109. package/development/{datepicker.component-CuFtPZg9.js → datepicker.component-DW6eq3pC.js} +1 -1
  110. package/development/datepicker.js +2 -2
  111. package/development/datepicker.pure.js +2 -2
  112. package/development/dialog/dialog/dialog.component.js +1 -1
  113. package/development/dialog/dialog-actions/dialog-actions.component.js +1 -1
  114. package/development/dialog/dialog-actions.js +1 -1
  115. package/development/dialog/dialog-close-button/dialog-close-button.component.js +1 -1
  116. package/development/dialog/dialog-close-button.js +1 -1
  117. package/development/dialog/dialog-content/dialog-content.component.js +1 -1
  118. package/development/dialog/dialog-content.js +1 -1
  119. package/development/dialog/dialog-title/dialog-title.component.js +1 -1
  120. package/development/dialog/dialog-title.js +1 -1
  121. package/development/dialog/dialog.js +1 -1
  122. package/development/{dialog-actions.component-Mbx-Bs3t.js → dialog-actions.component-TcOhbHSS.js} +1 -1
  123. package/development/{dialog-close-button.component-B1dPHPy2.js → dialog-close-button.component-Yi7NNtQe.js} +1 -1
  124. package/development/{dialog-content.component-qP09Yo_N.js → dialog-content.component-CzwHSsCD.js} +1 -1
  125. package/development/{dialog-title.component-B4u2w8h5.js → dialog-title.component-BjJxddme.js} +1 -1
  126. package/development/{dialog.component-DaM1FSHB.js → dialog.component-CjR644v5.js} +1 -1
  127. package/development/dialog.js +5 -5
  128. package/development/dialog.pure.js +5 -5
  129. package/development/divider/divider.component.js +1 -1
  130. package/development/{divider.component-Ddzlu6Fw.js → divider.component-D04zdHFf.js} +1 -1
  131. package/development/divider.js +1 -1
  132. package/development/divider.pure.js +1 -1
  133. package/development/{error.component-C76eZnXo.js → error.component-DCeTb_sQ.js} +1 -1
  134. package/development/expansion-panel/expansion-panel/expansion-panel.component.js +1 -1
  135. package/development/expansion-panel/expansion-panel-content/expansion-panel-content.component.js +1 -1
  136. package/development/expansion-panel/expansion-panel-content.js +1 -1
  137. package/development/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +1 -1
  138. package/development/expansion-panel/expansion-panel-header.js +1 -1
  139. package/development/expansion-panel/expansion-panel.js +1 -1
  140. package/development/{expansion-panel-content.component-DTZk3ZKL.js → expansion-panel-content.component-P1BVKaUQ.js} +1 -1
  141. package/development/{expansion-panel-header.component-C7ymZCux.js → expansion-panel-header.component-BQaFPmqq.js} +1 -1
  142. package/development/{expansion-panel.component-xUWTKeaC.js → expansion-panel.component-sNQCAll-.js} +1 -1
  143. package/development/expansion-panel.js +3 -3
  144. package/development/expansion-panel.pure.js +3 -3
  145. package/development/file-selector/common/file-selector-common.js +1 -1
  146. package/development/file-selector/common.js +1 -1
  147. package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.js +1 -1
  148. package/development/file-selector/file-selector-dropzone.js +1 -1
  149. package/development/{file-selector-common-qMfAccOd.js → file-selector-common-4VE7Af0W.js} +1 -1
  150. package/development/{file-selector-dropzone.component-HDUIUSQI.js → file-selector-dropzone.component-COoDZxcq.js} +1 -1
  151. package/development/file-selector.js +2 -2
  152. package/development/file-selector.pure.js +2 -2
  153. package/development/flip-card/flip-card/flip-card.component.js +1 -1
  154. package/development/flip-card/flip-card-details/flip-card-details.component.js +1 -1
  155. package/development/flip-card/flip-card-details.js +1 -1
  156. package/development/flip-card/flip-card-summary/flip-card-summary.component.js +1 -1
  157. package/development/flip-card/flip-card-summary.js +1 -1
  158. package/development/flip-card/flip-card.js +1 -1
  159. package/development/{flip-card-details.component-BilGh5Yb.js → flip-card-details.component-DZqd1icn.js} +1 -1
  160. package/development/{flip-card-summary.component-DDDnvs_c.js → flip-card-summary.component-CTvT-hNh.js} +1 -1
  161. package/development/{flip-card.component-CdRzb7IT.js → flip-card.component-CUQYeHRg.js} +1 -1
  162. package/development/flip-card.js +3 -3
  163. package/development/flip-card.pure.js +3 -3
  164. package/development/footer/footer.component.js +1 -1
  165. package/development/{footer.component-C057PwF1.js → footer.component-CLU7iVUY.js} +1 -1
  166. package/development/footer.js +1 -1
  167. package/development/footer.pure.js +1 -1
  168. package/development/form-field/error/error.component.js +1 -1
  169. package/development/form-field/error.js +1 -1
  170. package/development/form-field/form-field/form-field.component.js +1 -1
  171. package/development/form-field/form-field.js +1 -1
  172. package/development/{form-field.component-D4dQ8sCh.js → form-field.component-DoPHu1Yf.js} +1 -1
  173. package/development/form-field.js +2 -2
  174. package/development/form-field.pure.js +2 -2
  175. package/development/header/common/header-action-common.js +1 -1
  176. package/development/header/common.js +1 -1
  177. package/development/header/header/header.component.js +1 -1
  178. package/development/header/header-environment/header-environment.component.js +1 -1
  179. package/development/header/header-environment.js +1 -1
  180. package/development/header/header.js +1 -1
  181. package/development/{header-action-common-Dff8K0RB.js → header-action-common-BPwn9nFN.js} +1 -1
  182. package/development/{header-environment.component-DYnJkxCZ.js → header-environment.component-JltjpGKu.js} +1 -1
  183. package/development/{header.component-DYls7wGO.js → header.component-DEw_zC-n.js} +1 -1
  184. package/development/header.js +3 -3
  185. package/development/header.pure.js +3 -3
  186. package/development/icon/icon-base.js +1 -1
  187. package/development/icon/icon-name-mixin.js +1 -1
  188. package/development/icon/icon.component.js +1 -1
  189. package/development/{icon-base-CcQCgmqX.js → icon-base-DaK86P0U.js} +1 -1
  190. package/development/icon-sidebar/icon-sidebar/icon-sidebar.component.js +1 -1
  191. package/development/icon-sidebar/icon-sidebar-container/icon-sidebar-container.component.js +1 -1
  192. package/development/icon-sidebar/icon-sidebar-container.js +1 -1
  193. package/development/icon-sidebar/icon-sidebar-content/icon-sidebar-content.component.js +1 -1
  194. package/development/icon-sidebar/icon-sidebar-content.js +1 -1
  195. package/development/icon-sidebar/icon-sidebar.js +1 -1
  196. package/development/{icon-sidebar-container.component-BJHjpF-Q.js → icon-sidebar-container.component-6k5VwVGK.js} +1 -1
  197. package/development/{icon-sidebar-content.component-C2wreczL.js → icon-sidebar-content.component-ISXOClFX.js} +1 -1
  198. package/development/{icon-sidebar.component-PcmjRlDp.js → icon-sidebar.component-DFDKX2cD.js} +1 -1
  199. package/development/icon-sidebar.js +3 -3
  200. package/development/icon-sidebar.pure.js +3 -3
  201. package/development/icon.js +1 -1
  202. package/development/icon.pure.js +1 -1
  203. package/development/image/image.component.js +1 -1
  204. package/development/{image.component-fvsSR3Df.js → image.component-BSJf5qRL.js} +2 -2
  205. package/development/image.js +1 -1
  206. package/development/image.pure.js +1 -1
  207. package/development/{inline-link-common-CyTcO5MN.js → inline-link-common-FwpAjkCL.js} +2 -2
  208. package/development/journey-header/journey-header.component.js +1 -1
  209. package/development/{journey-header.component-BB8WYOqH.js → journey-header.component-D1iaZBcw.js} +1 -1
  210. package/development/journey-header.js +1 -1
  211. package/development/journey-header.pure.js +1 -1
  212. package/development/lead-container/lead-container.component.js +1 -1
  213. package/development/{lead-container.component-BGf8oqw7.js → lead-container.component-BPGSdIND.js} +1 -1
  214. package/development/lead-container.js +1 -1
  215. package/development/lead-container.pure.js +1 -1
  216. package/development/link/common/block-link-common.js +2 -2
  217. package/development/link/common/inline-link-common.js +2 -2
  218. package/development/link/common/link-common.js +1 -1
  219. package/development/link/common.js +3 -3
  220. package/development/{link-common-5ob2nFyv.js → link-common-CrLiKO3x.js} +1 -1
  221. package/development/link-list/common/link-list-base.js +1 -1
  222. package/development/link-list/common.js +1 -1
  223. package/development/link-list/link-list-anchor.js +2 -2
  224. package/development/link-list/link-list.component.js +2 -2
  225. package/development/link-list/link-list.js +2 -2
  226. package/development/link-list-anchor/link-list-anchor.component.js +1 -1
  227. package/development/{link-list-anchor.component-rAMp5_jH.js → link-list-anchor.component-CMwxD7at.js} +1 -1
  228. package/development/link-list-anchor.js +1 -1
  229. package/development/link-list-anchor.pure.js +1 -1
  230. package/development/{link-list-base-DxYNcAX7.js → link-list-base-BchLGP8G.js} +1 -1
  231. package/development/{link-list.component-DD6UjlwD.js → link-list.component-B3l5PRJl.js} +2 -2
  232. package/development/link-list.js +3 -3
  233. package/development/link-list.pure.js +2 -2
  234. package/development/link.js +3 -3
  235. package/development/link.pure.js +3 -3
  236. package/development/loading-indicator/loading-indicator.component.js +1 -1
  237. package/development/loading-indicator-circle/loading-indicator-circle.component.js +1 -1
  238. package/development/{loading-indicator-circle.component-CS32gPvE.js → loading-indicator-circle.component-BJRSfYOI.js} +1 -1
  239. package/development/loading-indicator-circle.js +1 -1
  240. package/development/loading-indicator-circle.pure.js +1 -1
  241. package/development/{loading-indicator.component-CTRZkUdX.js → loading-indicator.component-DolzcY0K.js} +1 -1
  242. package/development/loading-indicator.js +1 -1
  243. package/development/loading-indicator.pure.js +1 -1
  244. package/development/logo/logo.component.js +1 -1
  245. package/development/{logo.component-Cp-EyVpA.js → logo.component-iu5iL8wQ.js} +1 -1
  246. package/development/logo.js +1 -1
  247. package/development/logo.pure.js +1 -1
  248. package/development/map-container/map-container.component.js +1 -1
  249. package/development/{map-container.component-BEAIuo5H.js → map-container.component-DMF2oulu.js} +1 -1
  250. package/development/map-container.js +1 -1
  251. package/development/map-container.pure.js +1 -1
  252. package/development/menu/common/menu-action-common.js +1 -1
  253. package/development/menu/common.js +1 -1
  254. package/development/menu/menu/menu.component.js +1 -1
  255. package/development/menu/menu.js +1 -1
  256. package/development/{menu-action-common-CyBv0NwR.js → menu-action-common-BTOi6wCg.js} +1 -1
  257. package/development/{menu.component-GHJHhE9D.js → menu.component-Dt6ilHX4.js} +1 -1
  258. package/development/menu.js +2 -2
  259. package/development/menu.pure.js +2 -2
  260. package/development/message/message.component.js +1 -1
  261. package/development/{message.component-uv9eI2gl.js → message.component-cyOtXMuM.js} +1 -1
  262. package/development/message.js +1 -1
  263. package/development/message.pure.js +1 -1
  264. package/development/mini-calendar/mini-calendar/mini-calendar.component.js +1 -1
  265. package/development/mini-calendar/mini-calendar-day/mini-calendar-day.component.js +1 -1
  266. package/development/mini-calendar/mini-calendar-day.js +1 -1
  267. package/development/mini-calendar/mini-calendar-month/mini-calendar-month.component.js +1 -1
  268. package/development/mini-calendar/mini-calendar-month.js +1 -1
  269. package/development/mini-calendar/mini-calendar.js +1 -1
  270. package/development/{mini-calendar-day.component-DdjlUG0k.js → mini-calendar-day.component-B5SWuVZl.js} +1 -1
  271. package/development/{mini-calendar-month.component-BjxmoYz6.js → mini-calendar-month.component-Diq4my2u.js} +1 -1
  272. package/development/{mini-calendar.component-B38J84Gg.js → mini-calendar.component-O44l8sfI.js} +1 -1
  273. package/development/mini-calendar.js +3 -3
  274. package/development/mini-calendar.pure.js +3 -3
  275. package/development/navigation/common/navigation-action-common.js +1 -1
  276. package/development/navigation/common.js +1 -1
  277. package/development/navigation/navigation/navigation.component.js +1 -1
  278. package/development/navigation/navigation-list/navigation-list.component.js +1 -1
  279. package/development/navigation/navigation-list.js +1 -1
  280. package/development/navigation/navigation-marker/navigation-marker.component.js +1 -1
  281. package/development/navigation/navigation-marker.js +1 -1
  282. package/development/navigation/navigation-section/navigation-section.component.js +1 -1
  283. package/development/navigation/navigation-section.js +1 -1
  284. package/development/navigation/navigation.js +1 -1
  285. package/development/{navigation-action-common-saGbvoji.js → navigation-action-common-CA2aDyJ4.js} +1 -1
  286. package/development/{navigation-list.component-AFM4omXQ.js → navigation-list.component-Dz0JLuKb.js} +1 -1
  287. package/development/{navigation-marker.component-BvC73IoI.js → navigation-marker.component-DzRg3INl.js} +1 -1
  288. package/development/{navigation-section.component-B-6XU2X5.js → navigation-section.component-DnSkQA4r.js} +1 -1
  289. package/development/{navigation.component-_gUhpPyO.js → navigation.component-DZ3EQfeI.js} +1 -1
  290. package/development/navigation.js +5 -5
  291. package/development/navigation.pure.js +5 -5
  292. package/development/notification/notification.component.js +1 -1
  293. package/development/{notification.component-BT3ZQhUI.js → notification.component-D1xrOQdE.js} +1 -1
  294. package/development/notification.js +1 -1
  295. package/development/notification.pure.js +1 -1
  296. package/development/{optgroup-base-element-CjwAXrC5.js → optgroup-base-element-DVLTejtg.js} +1 -1
  297. package/development/option/optgroup/optgroup-base-element.js +1 -1
  298. package/development/option/optgroup/optgroup.component.js +1 -1
  299. package/development/option/optgroup.js +1 -1
  300. package/development/option/option/option.component.js +1 -1
  301. package/development/option/option-hint/option-hint.component.js +1 -1
  302. package/development/option/option-hint.js +1 -1
  303. package/development/option/option.js +1 -1
  304. package/development/{option-hint.component-CHS5Z_sK.js → option-hint.component-w-UQdEdu.js} +1 -1
  305. package/development/{option.component-BvOsW8Gn.js → option.component-BPN2WTiI.js} +1 -1
  306. package/development/option.js +3 -3
  307. package/development/option.pure.js +3 -3
  308. package/development/overlay/overlay.component.js +1 -1
  309. package/development/{overlay.component-RS_v3xaA.js → overlay.component-Btd42clm.js} +1 -1
  310. package/development/overlay.js +1 -1
  311. package/development/overlay.pure.js +1 -1
  312. package/development/paginator/compact-paginator/compact-paginator.component.js +1 -1
  313. package/development/paginator/compact-paginator.js +1 -1
  314. package/development/paginator/paginator/paginator.component.js +1 -1
  315. package/development/paginator/paginator.js +1 -1
  316. package/development/{paginator.component-cRqJW9bc.js → paginator.component-DT-sZuFS.js} +1 -1
  317. package/development/paginator.js +2 -2
  318. package/development/paginator.pure.js +2 -2
  319. package/development/popover/popover.component.js +1 -1
  320. package/development/{popover.component-BujfGgbD.js → popover.component-CLwOes_-.js} +1 -1
  321. package/development/popover.js +1 -1
  322. package/development/popover.pure.js +1 -1
  323. package/development/radio-button/common/radio-button-common.js +1 -1
  324. package/development/radio-button/common.js +1 -1
  325. package/development/radio-button/radio-button.component.js +2 -2
  326. package/development/radio-button/radio-button.js +2 -2
  327. package/development/{radio-button-common-CjbP9yKf.js → radio-button-common-CsjMvmAn.js} +1 -1
  328. package/development/radio-button-group/radio-button-group.component.d.ts +10 -31
  329. package/development/radio-button-group/radio-button-group.component.d.ts.map +1 -1
  330. package/development/radio-button-group/radio-button-group.component.js +185 -1
  331. package/development/radio-button-group.js +1 -1
  332. package/development/radio-button-group.pure.js +1 -1
  333. package/development/{radio-button.component-CVATlwTb.js → radio-button.component-BTnHGixs.js} +2 -2
  334. package/development/radio-button.js +3 -3
  335. package/development/radio-button.pure.js +2 -2
  336. package/development/{sbb-tokens-Dajio3u-.js → sbb-tokens-Lrm4nvNH.js} +1 -1
  337. package/development/screen-reader-only/screen-reader-only.component.js +1 -1
  338. package/development/{screen-reader-only.component-D-KOAjrF.js → screen-reader-only.component-Btj8mc2x.js} +1 -1
  339. package/development/screen-reader-only.js +1 -1
  340. package/development/screen-reader-only.pure.js +1 -1
  341. package/development/select/select.component.js +1 -1
  342. package/development/{select.component-DyF5Tw3J.js → select.component-DJV8Tjcw.js} +1 -1
  343. package/development/select.js +1 -1
  344. package/development/select.pure.js +1 -1
  345. package/development/selection-action-panel/selection-action-panel.component.js +1 -1
  346. package/development/selection-action-panel.component-B3pNvpeD.js +134 -0
  347. package/development/selection-action-panel.js +1 -1
  348. package/development/selection-action-panel.pure.js +1 -1
  349. package/development/selection-expansion-panel/selection-expansion-panel.component.js +1 -1
  350. package/development/selection-expansion-panel.component-B9v1yqif.js +326 -0
  351. package/development/selection-expansion-panel.js +1 -1
  352. package/development/selection-expansion-panel.pure.js +1 -1
  353. package/development/selection-group-base-element-DrTO_80I.js +220 -0
  354. package/development/sidebar/common/styles.js +1 -1
  355. package/development/sidebar/common.js +1 -1
  356. package/development/sidebar/sidebar/sidebar.component.js +1 -1
  357. package/development/sidebar/sidebar-close-button/sidebar-close-button.component.js +1 -1
  358. package/development/sidebar/sidebar-close-button.js +1 -1
  359. package/development/sidebar/sidebar-container/sidebar-container.component.js +1 -1
  360. package/development/sidebar/sidebar-container.js +1 -1
  361. package/development/sidebar/sidebar-content/sidebar-content.component.js +1 -1
  362. package/development/sidebar/sidebar-content.js +1 -1
  363. package/development/sidebar/sidebar-title/sidebar-title.component.js +1 -1
  364. package/development/sidebar/sidebar-title.js +1 -1
  365. package/development/sidebar/sidebar.js +1 -1
  366. package/development/{sidebar-close-button.component-j4wY_hAt.js → sidebar-close-button.component-DYl0czc_.js} +1 -1
  367. package/development/{sidebar-container.component-CToGMqKH.js → sidebar-container.component-f4gR6uPU.js} +1 -1
  368. package/development/{sidebar-content.component-s3GsQtNv.js → sidebar-content.component-B70pf9tH.js} +1 -1
  369. package/development/{sidebar-title.component-Htm_hqKX.js → sidebar-title.component-RStE_x3R.js} +1 -1
  370. package/development/{sidebar.component-Ct6TAsph.js → sidebar.component-BDUew-xS.js} +1 -1
  371. package/development/sidebar.js +5 -5
  372. package/development/sidebar.pure.js +5 -5
  373. package/development/signet/signet.component.js +1 -1
  374. package/development/{signet.component-COqrcZqk.js → signet.component-B9nY5tTL.js} +1 -1
  375. package/development/signet.js +1 -1
  376. package/development/signet.pure.js +1 -1
  377. package/development/skiplink-list/skiplink-list.component.js +1 -1
  378. package/development/{skiplink-list.component-_SDkIoHp.js → skiplink-list.component-BvbnZ24-.js} +1 -1
  379. package/development/skiplink-list.js +1 -1
  380. package/development/skiplink-list.pure.js +1 -1
  381. package/development/slider/slider.component.js +1 -1
  382. package/development/{slider.component-B7EFECZk.js → slider.component-w_WtVNx-.js} +1 -1
  383. package/development/slider.js +1 -1
  384. package/development/slider.pure.js +1 -1
  385. package/development/status/status.component.js +1 -1
  386. package/development/{status.component-CE3e9OIO.js → status.component-CD4RXPEj.js} +1 -1
  387. package/development/status.js +1 -1
  388. package/development/status.pure.js +1 -1
  389. package/development/{step-label.component-BH28AI5Z.js → step-label.component-DbdXrY05.js} +1 -1
  390. package/development/{step.component-WY7qdrR8.js → step.component-BZ8GnSvF.js} +1 -1
  391. package/development/stepper/step/step.component.js +1 -1
  392. package/development/stepper/step-label/step-label.component.js +1 -1
  393. package/development/stepper/step-label.js +1 -1
  394. package/development/stepper/step.js +1 -1
  395. package/development/stepper/stepper/stepper.component.js +1 -1
  396. package/development/stepper/stepper.js +1 -1
  397. package/development/{stepper.component-D1tAcpWs.js → stepper.component-C20566P1.js} +1 -1
  398. package/development/stepper.js +3 -3
  399. package/development/stepper.pure.js +3 -3
  400. package/development/{sticky-bar.component-BlgfxSRo.js → sticky-bar.component-DxDHpEgX.js} +1 -1
  401. package/development/{styles-CYlzu-f2.js → styles-BlQUk9lF.js} +1 -1
  402. package/development/{styles-CIZBf9Yc.js → styles-TKvcDQkA.js} +1 -1
  403. package/development/{tab-group.component-DZPKWjI7.js → tab-group.component-C6jlhxvZ.js} +1 -1
  404. package/development/{tab-label.component-BJgr4u6Z.js → tab-label.component-C0qpk3p_.js} +1 -1
  405. package/development/{tab-nav-bar.component-rNmuMIsv.js → tab-nav-bar.component-CbZKhBxs.js} +1 -1
  406. package/development/{tab.component-C8jaB2_O.js → tab.component-DvEZBqQ6.js} +1 -1
  407. package/development/table/table-wrapper/table-wrapper.component.js +1 -1
  408. package/development/table/table-wrapper.js +1 -1
  409. package/development/{table-wrapper.component-6WtB_fHq.js → table-wrapper.component-lmWguT_t.js} +1 -1
  410. package/development/table.js +1 -1
  411. package/development/table.pure.js +1 -1
  412. package/development/tabs/common/styles.js +1 -1
  413. package/development/tabs/common.js +1 -1
  414. package/development/tabs/tab/tab.component.js +1 -1
  415. package/development/tabs/tab-group/tab-group.component.js +1 -1
  416. package/development/tabs/tab-group.js +1 -1
  417. package/development/tabs/tab-label/tab-label.component.js +1 -1
  418. package/development/tabs/tab-label.js +1 -1
  419. package/development/tabs/tab-nav-bar/tab-nav-bar.component.js +1 -1
  420. package/development/tabs/tab-nav-bar.js +1 -1
  421. package/development/tabs/tab.js +1 -1
  422. package/development/tabs.js +5 -5
  423. package/development/tabs.pure.js +5 -5
  424. package/development/tag/tag/tag.component.js +1 -1
  425. package/development/tag/tag-group/tag-group.component.js +1 -1
  426. package/development/tag/tag-group.js +1 -1
  427. package/development/tag/tag.js +1 -1
  428. package/development/{tag-group.component-C-EXr8Rq.js → tag-group.component-BW1vj2rN.js} +1 -1
  429. package/development/{tag.component-B7RY4cfx.js → tag.component-Cfx7YNV5.js} +1 -1
  430. package/development/tag.js +2 -2
  431. package/development/tag.pure.js +2 -2
  432. package/development/teaser/teaser.component.js +1 -1
  433. package/development/teaser-hero/teaser-hero.component.js +1 -1
  434. package/development/{teaser-hero.component-5vVIZZ9L.js → teaser-hero.component-sUhYQXkN.js} +1 -1
  435. package/development/teaser-hero.js +1 -1
  436. package/development/teaser-hero.pure.js +1 -1
  437. package/development/teaser-product/common/teaser-product-common.js +1 -1
  438. package/development/teaser-product/common.js +1 -1
  439. package/development/teaser-product/teaser-product/teaser-product.component.js +1 -1
  440. package/development/teaser-product/teaser-product.js +1 -1
  441. package/development/{teaser-product-common-DgnRgO6O.js → teaser-product-common-zgX2CF41.js} +1 -1
  442. package/development/{teaser-product.component-BsdU2W2T.js → teaser-product.component-w8Vjh-RN.js} +1 -1
  443. package/development/teaser-product.js +2 -2
  444. package/development/teaser-product.pure.js +2 -2
  445. package/development/{teaser.component-CsbKS91J.js → teaser.component-BI1diIhL.js} +1 -1
  446. package/development/teaser.js +1 -1
  447. package/development/teaser.pure.js +1 -1
  448. package/development/time-input/time-input.component.js +1 -1
  449. package/development/{time-input.component-Cf6cXrIN.js → time-input.component-B15eaxBr.js} +1 -1
  450. package/development/time-input.js +1 -1
  451. package/development/time-input.pure.js +1 -1
  452. package/development/timetable-form/timetable-form/timetable-form.component.js +1 -1
  453. package/development/timetable-form/timetable-form-details/timetable-form-details.component.js +1 -1
  454. package/development/timetable-form/timetable-form-details.js +1 -1
  455. package/development/timetable-form/timetable-form-field/timetable-form-field.component.js +1 -1
  456. package/development/timetable-form/timetable-form-field.js +1 -1
  457. package/development/timetable-form/timetable-form-swap-button/timetable-form-swap-button.component.js +1 -1
  458. package/development/timetable-form/timetable-form-swap-button.js +1 -1
  459. package/development/timetable-form/timetable-form.js +1 -1
  460. package/development/{timetable-form-details.component-B--aGycf.js → timetable-form-details.component-Bz6nsJEp.js} +1 -1
  461. package/development/{timetable-form-field.component-9jwIZzIm.js → timetable-form-field.component-BQHwNBP_.js} +1 -1
  462. package/development/{timetable-form-swap-button.component-Ne1-XwSf.js → timetable-form-swap-button.component-C111nH5V.js} +1 -1
  463. package/development/{timetable-form.component-BYHhDRXE.js → timetable-form.component-BwcJd7mP.js} +1 -1
  464. package/development/timetable-form.js +4 -4
  465. package/development/timetable-form.pure.js +4 -4
  466. package/development/timetable-occupancy/timetable-occupancy.component.js +1 -1
  467. package/development/timetable-occupancy-icon/timetable-occupancy-icon.component.js +1 -1
  468. package/development/{timetable-occupancy-icon.component-BbW73Fqd.js → timetable-occupancy-icon.component-BbPiOTqO.js} +1 -1
  469. package/development/timetable-occupancy-icon.js +1 -1
  470. package/development/timetable-occupancy-icon.pure.js +1 -1
  471. package/development/{timetable-occupancy.component-C3nWG5Vg.js → timetable-occupancy.component-COJQPJ-O.js} +1 -1
  472. package/development/timetable-occupancy.js +1 -1
  473. package/development/timetable-occupancy.pure.js +1 -1
  474. package/development/title/title-base.js +1 -1
  475. package/development/title/title.component.js +2 -2
  476. package/development/{title-base-BUQgNaUI.js → title-base-DNSaV9Ar.js} +1 -1
  477. package/development/{title.component-DgFvxLIt.js → title.component-BY1lm4Z7.js} +2 -2
  478. package/development/title.js +2 -2
  479. package/development/title.pure.js +2 -2
  480. package/development/toast/toast.component.js +1 -1
  481. package/development/{toast.component-Csifrfnq.js → toast.component-TMMY3vo-.js} +1 -1
  482. package/development/toast.js +1 -1
  483. package/development/toast.pure.js +1 -1
  484. package/development/toggle/toggle/toggle.component.js +1 -1
  485. package/development/toggle/toggle-option/toggle-option.component.js +1 -1
  486. package/development/toggle/toggle-option.js +1 -1
  487. package/development/toggle/toggle.js +1 -1
  488. package/development/toggle-check/toggle-check.component.js +1 -1
  489. package/development/{toggle-check.component-CEYmGCDZ.js → toggle-check.component-eyni_u24.js} +1 -1
  490. package/development/toggle-check.js +1 -1
  491. package/development/toggle-check.pure.js +1 -1
  492. package/development/{toggle-option.component--wHdeFI6.js → toggle-option.component-Cerp56FA.js} +1 -1
  493. package/development/{toggle.component-CGNDEU9B.js → toggle.component-9bozw9C0.js} +1 -1
  494. package/development/toggle.js +2 -2
  495. package/development/toggle.pure.js +2 -2
  496. package/development/tooltip/tooltip.component.js +1 -1
  497. package/development/{tooltip.component-D16wi4nX.js → tooltip.component-DpeuOb4p.js} +1 -1
  498. package/development/tooltip.js +1 -1
  499. package/development/tooltip.pure.js +1 -1
  500. package/development/train/train/train.component.js +1 -1
  501. package/development/train/train-blocked-passage/train-blocked-passage.component.js +1 -1
  502. package/development/train/train-blocked-passage.js +1 -1
  503. package/development/train/train-formation/train-formation.component.js +1 -1
  504. package/development/train/train-formation.js +1 -1
  505. package/development/train/train-wagon/train-wagon.component.js +1 -1
  506. package/development/train/train-wagon.js +1 -1
  507. package/development/train/train.js +1 -1
  508. package/development/{train-blocked-passage.component-CYnTeq7k.js → train-blocked-passage.component-YA9rV23T.js} +1 -1
  509. package/development/{train-formation.component-QmoA0u6E.js → train-formation.component-Bh2Cx4if.js} +1 -1
  510. package/development/{train-wagon.component-CWlRDq-Z.js → train-wagon.component-DQ12gCZf.js} +1 -1
  511. package/development/{train.component-DcMyi7HP.js → train.component-DW4vZtEt.js} +1 -1
  512. package/development/train.js +4 -4
  513. package/development/train.pure.js +4 -4
  514. package/development/visual-checkbox/visual-checkbox.component.js +1 -1
  515. package/development/{visual-checkbox.component-DtEIq9rH.js → visual-checkbox.component-CA6AKLbO.js} +1 -1
  516. package/development/visual-checkbox.js +1 -1
  517. package/development/visual-checkbox.pure.js +1 -1
  518. package/dialog/dialog/dialog.component.js +1 -1
  519. package/dialog/dialog-actions/dialog-actions.component.js +1 -1
  520. package/dialog/dialog-actions.js +1 -1
  521. package/dialog/dialog-close-button/dialog-close-button.component.js +1 -1
  522. package/dialog/dialog-close-button.js +1 -1
  523. package/dialog/dialog-content/dialog-content.component.js +1 -1
  524. package/dialog/dialog-content.js +1 -1
  525. package/dialog/dialog-title/dialog-title.component.js +1 -1
  526. package/dialog/dialog-title.js +1 -1
  527. package/dialog/dialog.js +1 -1
  528. package/dialog.js +5 -5
  529. package/dialog.pure.js +5 -5
  530. package/divider/divider.component.js +1 -1
  531. package/divider.js +1 -1
  532. package/divider.pure.js +1 -1
  533. package/expansion-panel/expansion-panel/expansion-panel.component.js +1 -1
  534. package/expansion-panel/expansion-panel-content/expansion-panel-content.component.js +1 -1
  535. package/expansion-panel/expansion-panel-content.js +1 -1
  536. package/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +1 -1
  537. package/expansion-panel/expansion-panel-header.js +1 -1
  538. package/expansion-panel/expansion-panel.js +1 -1
  539. package/expansion-panel.js +3 -3
  540. package/expansion-panel.pure.js +3 -3
  541. package/file-selector/common/file-selector-common.js +1 -1
  542. package/file-selector/common.js +1 -1
  543. package/file-selector/file-selector-dropzone/file-selector-dropzone.component.js +1 -1
  544. package/file-selector/file-selector-dropzone.js +1 -1
  545. package/file-selector.js +2 -2
  546. package/file-selector.pure.js +2 -2
  547. package/flip-card/flip-card/flip-card.component.js +1 -1
  548. package/flip-card/flip-card-details/flip-card-details.component.js +1 -1
  549. package/flip-card/flip-card-details.js +1 -1
  550. package/flip-card/flip-card-summary/flip-card-summary.component.js +1 -1
  551. package/flip-card/flip-card-summary.js +1 -1
  552. package/flip-card/flip-card.js +1 -1
  553. package/flip-card.js +3 -3
  554. package/flip-card.pure.js +3 -3
  555. package/footer/footer.component.js +1 -1
  556. package/footer.js +1 -1
  557. package/footer.pure.js +1 -1
  558. package/form-field/error/error.component.js +1 -1
  559. package/form-field/error.js +1 -1
  560. package/form-field/form-field/form-field.component.js +1 -1
  561. package/form-field/form-field.js +1 -1
  562. package/form-field.js +2 -2
  563. package/form-field.pure.js +2 -2
  564. package/header/common/header-action-common.js +1 -1
  565. package/header/common.js +1 -1
  566. package/header/header/header.component.js +1 -1
  567. package/header/header-environment/header-environment.component.js +1 -1
  568. package/header/header-environment.js +1 -1
  569. package/header/header.js +1 -1
  570. package/header.js +3 -3
  571. package/header.pure.js +3 -3
  572. package/icon/icon-base.js +1 -1
  573. package/icon/icon-name-mixin.js +1 -1
  574. package/icon/icon.component.js +1 -1
  575. package/icon-sidebar/icon-sidebar/icon-sidebar.component.js +1 -1
  576. package/icon-sidebar/icon-sidebar-container/icon-sidebar-container.component.js +1 -1
  577. package/icon-sidebar/icon-sidebar-container.js +1 -1
  578. package/icon-sidebar/icon-sidebar-content/icon-sidebar-content.component.js +1 -1
  579. package/icon-sidebar/icon-sidebar-content.js +1 -1
  580. package/icon-sidebar/icon-sidebar.js +1 -1
  581. package/icon-sidebar.js +3 -3
  582. package/icon-sidebar.pure.js +3 -3
  583. package/icon.js +1 -1
  584. package/icon.pure.js +1 -1
  585. package/image/image.component.js +1 -1
  586. package/{image.component-Cq2t-XZu.js → image.component-BcOwT7-U.js} +1 -1
  587. package/image.js +1 -1
  588. package/image.pure.js +1 -1
  589. package/{inline-link-common-Dgdi7qpI.js → inline-link-common-DANB-hT-.js} +1 -1
  590. package/journey-header/journey-header.component.js +1 -1
  591. package/journey-header.js +1 -1
  592. package/journey-header.pure.js +1 -1
  593. package/lead-container/lead-container.component.js +1 -1
  594. package/lead-container.js +1 -1
  595. package/lead-container.pure.js +1 -1
  596. package/link/common/block-link-common.js +2 -2
  597. package/link/common/inline-link-common.js +2 -2
  598. package/link/common/link-common.js +1 -1
  599. package/link/common.js +3 -3
  600. package/link-list/common/link-list-base.js +1 -1
  601. package/link-list/common.js +1 -1
  602. package/link-list/link-list-anchor.js +2 -2
  603. package/link-list/link-list.component.js +2 -2
  604. package/link-list/link-list.js +2 -2
  605. package/link-list-anchor/link-list-anchor.component.js +1 -1
  606. package/link-list-anchor.js +1 -1
  607. package/link-list-anchor.pure.js +1 -1
  608. package/{link-list.component-9ndHNGPS.js → link-list.component-C8zrqHYc.js} +1 -1
  609. package/link-list.js +3 -3
  610. package/link-list.pure.js +2 -2
  611. package/link.js +3 -3
  612. package/link.pure.js +3 -3
  613. package/loading-indicator/loading-indicator.component.js +1 -1
  614. package/loading-indicator-circle/loading-indicator-circle.component.js +1 -1
  615. package/loading-indicator-circle.js +1 -1
  616. package/loading-indicator-circle.pure.js +1 -1
  617. package/loading-indicator.js +1 -1
  618. package/loading-indicator.pure.js +1 -1
  619. package/logo/logo.component.js +1 -1
  620. package/logo.js +1 -1
  621. package/logo.pure.js +1 -1
  622. package/map-container/map-container.component.js +1 -1
  623. package/map-container.js +1 -1
  624. package/map-container.pure.js +1 -1
  625. package/menu/common/menu-action-common.js +1 -1
  626. package/menu/common.js +1 -1
  627. package/menu/menu/menu.component.js +1 -1
  628. package/menu/menu.js +1 -1
  629. package/menu.js +2 -2
  630. package/menu.pure.js +2 -2
  631. package/message/message.component.js +1 -1
  632. package/message.js +1 -1
  633. package/message.pure.js +1 -1
  634. package/mini-calendar/mini-calendar/mini-calendar.component.js +1 -1
  635. package/mini-calendar/mini-calendar-day/mini-calendar-day.component.js +1 -1
  636. package/mini-calendar/mini-calendar-day.js +1 -1
  637. package/mini-calendar/mini-calendar-month/mini-calendar-month.component.js +1 -1
  638. package/mini-calendar/mini-calendar-month.js +1 -1
  639. package/mini-calendar/mini-calendar.js +1 -1
  640. package/mini-calendar.js +3 -3
  641. package/mini-calendar.pure.js +3 -3
  642. package/navigation/common/navigation-action-common.js +1 -1
  643. package/navigation/common.js +1 -1
  644. package/navigation/navigation/navigation.component.js +1 -1
  645. package/navigation/navigation-list/navigation-list.component.js +1 -1
  646. package/navigation/navigation-list.js +1 -1
  647. package/navigation/navigation-marker/navigation-marker.component.js +1 -1
  648. package/navigation/navigation-marker.js +1 -1
  649. package/navigation/navigation-section/navigation-section.component.js +1 -1
  650. package/navigation/navigation-section.js +1 -1
  651. package/navigation/navigation.js +1 -1
  652. package/navigation.js +5 -5
  653. package/navigation.pure.js +5 -5
  654. package/notification/notification.component.js +1 -1
  655. package/notification.js +1 -1
  656. package/notification.pure.js +1 -1
  657. package/off-brand-theme.css +33 -117
  658. package/option/optgroup/optgroup-base-element.js +1 -1
  659. package/option/optgroup/optgroup.component.js +1 -1
  660. package/option/optgroup.js +1 -1
  661. package/option/option/option.component.js +1 -1
  662. package/option/option-hint/option-hint.component.js +1 -1
  663. package/option/option-hint.js +1 -1
  664. package/option/option.js +1 -1
  665. package/option.js +3 -3
  666. package/option.pure.js +3 -3
  667. package/overlay/overlay.component.js +1 -1
  668. package/overlay.js +1 -1
  669. package/overlay.pure.js +1 -1
  670. package/package.json +2 -2
  671. package/paginator/compact-paginator/compact-paginator.component.js +1 -1
  672. package/paginator/compact-paginator.js +1 -1
  673. package/paginator/paginator/paginator.component.js +1 -1
  674. package/paginator/paginator.js +1 -1
  675. package/paginator.js +2 -2
  676. package/paginator.pure.js +2 -2
  677. package/popover/popover.component.js +1 -1
  678. package/popover.js +1 -1
  679. package/popover.pure.js +1 -1
  680. package/radio-button/common/radio-button-common.js +1 -1
  681. package/radio-button/common.js +1 -1
  682. package/radio-button/radio-button.component.js +2 -2
  683. package/radio-button/radio-button.js +2 -2
  684. package/radio-button-group/radio-button-group.component.js +126 -2
  685. package/radio-button-group.js +1 -1
  686. package/radio-button-group.pure.js +1 -1
  687. package/{radio-button.component-B5b5OhBw.js → radio-button.component-CVPy3eQi.js} +1 -1
  688. package/radio-button.js +3 -3
  689. package/radio-button.pure.js +2 -2
  690. package/safety-theme.css +33 -117
  691. package/screen-reader-only/screen-reader-only.component.js +1 -1
  692. package/screen-reader-only.js +1 -1
  693. package/screen-reader-only.pure.js +1 -1
  694. package/select/select.component.js +1 -1
  695. package/select.js +1 -1
  696. package/select.pure.js +1 -1
  697. package/selection-action-panel/selection-action-panel.component.js +1 -1
  698. package/selection-action-panel.component-QfR2kPeM.js +35 -0
  699. package/selection-action-panel.js +1 -1
  700. package/selection-action-panel.pure.js +1 -1
  701. package/selection-expansion-panel/selection-expansion-panel.component.js +1 -1
  702. package/{selection-expansion-panel.component-ChMYCw38.js → selection-expansion-panel.component-BQw9icBM.js} +1 -1
  703. package/selection-expansion-panel.js +1 -1
  704. package/selection-expansion-panel.pure.js +1 -1
  705. package/selection-group-base-element-Bd6na8dT.js +113 -0
  706. package/sidebar/common/styles.js +1 -1
  707. package/sidebar/common.js +1 -1
  708. package/sidebar/sidebar/sidebar.component.js +1 -1
  709. package/sidebar/sidebar-close-button/sidebar-close-button.component.js +1 -1
  710. package/sidebar/sidebar-close-button.js +1 -1
  711. package/sidebar/sidebar-container/sidebar-container.component.js +1 -1
  712. package/sidebar/sidebar-container.js +1 -1
  713. package/sidebar/sidebar-content/sidebar-content.component.js +1 -1
  714. package/sidebar/sidebar-content.js +1 -1
  715. package/sidebar/sidebar-title/sidebar-title.component.js +1 -1
  716. package/sidebar/sidebar-title.js +1 -1
  717. package/sidebar/sidebar.js +1 -1
  718. package/sidebar.js +5 -5
  719. package/sidebar.pure.js +5 -5
  720. package/signet/signet.component.js +1 -1
  721. package/signet.js +1 -1
  722. package/signet.pure.js +1 -1
  723. package/skiplink-list/skiplink-list.component.js +1 -1
  724. package/skiplink-list.js +1 -1
  725. package/skiplink-list.pure.js +1 -1
  726. package/slider/slider.component.js +1 -1
  727. package/slider.js +1 -1
  728. package/slider.pure.js +1 -1
  729. package/standard-theme.css +33 -117
  730. package/status/status.component.js +1 -1
  731. package/status.js +1 -1
  732. package/status.pure.js +1 -1
  733. package/stepper/step/step.component.js +1 -1
  734. package/stepper/step-label/step-label.component.js +1 -1
  735. package/stepper/step-label.js +1 -1
  736. package/stepper/step.js +1 -1
  737. package/stepper/stepper/stepper.component.js +1 -1
  738. package/stepper/stepper.js +1 -1
  739. package/stepper.js +3 -3
  740. package/stepper.pure.js +3 -3
  741. package/table/table-wrapper/table-wrapper.component.js +1 -1
  742. package/table/table-wrapper.js +1 -1
  743. package/table.js +1 -1
  744. package/table.pure.js +1 -1
  745. package/tabs/common/styles.js +1 -1
  746. package/tabs/common.js +1 -1
  747. package/tabs/tab/tab.component.js +1 -1
  748. package/tabs/tab-group/tab-group.component.js +1 -1
  749. package/tabs/tab-group.js +1 -1
  750. package/tabs/tab-label/tab-label.component.js +1 -1
  751. package/tabs/tab-label.js +1 -1
  752. package/tabs/tab-nav-bar/tab-nav-bar.component.js +1 -1
  753. package/tabs/tab-nav-bar.js +1 -1
  754. package/tabs/tab.js +1 -1
  755. package/tabs.js +5 -5
  756. package/tabs.pure.js +5 -5
  757. package/tag/tag/tag.component.js +1 -1
  758. package/tag/tag-group/tag-group.component.js +1 -1
  759. package/tag/tag-group.js +1 -1
  760. package/tag/tag.js +1 -1
  761. package/tag.js +2 -2
  762. package/tag.pure.js +2 -2
  763. package/teaser/teaser.component.js +1 -1
  764. package/teaser-hero/teaser-hero.component.js +1 -1
  765. package/teaser-hero.js +1 -1
  766. package/teaser-hero.pure.js +1 -1
  767. package/teaser-product/common/teaser-product-common.js +1 -1
  768. package/teaser-product/common.js +1 -1
  769. package/teaser-product/teaser-product/teaser-product.component.js +1 -1
  770. package/teaser-product/teaser-product.js +1 -1
  771. package/teaser-product.js +2 -2
  772. package/teaser-product.pure.js +2 -2
  773. package/teaser.js +1 -1
  774. package/teaser.pure.js +1 -1
  775. package/time-input/time-input.component.js +1 -1
  776. package/time-input.js +1 -1
  777. package/time-input.pure.js +1 -1
  778. package/timetable-form/timetable-form/timetable-form.component.js +1 -1
  779. package/timetable-form/timetable-form-details/timetable-form-details.component.js +1 -1
  780. package/timetable-form/timetable-form-details.js +1 -1
  781. package/timetable-form/timetable-form-field/timetable-form-field.component.js +1 -1
  782. package/timetable-form/timetable-form-field.js +1 -1
  783. package/timetable-form/timetable-form-swap-button/timetable-form-swap-button.component.js +1 -1
  784. package/timetable-form/timetable-form-swap-button.js +1 -1
  785. package/timetable-form/timetable-form.js +1 -1
  786. package/timetable-form.js +4 -4
  787. package/timetable-form.pure.js +4 -4
  788. package/timetable-occupancy/timetable-occupancy.component.js +1 -1
  789. package/timetable-occupancy-icon/timetable-occupancy-icon.component.js +1 -1
  790. package/timetable-occupancy-icon.js +1 -1
  791. package/timetable-occupancy-icon.pure.js +1 -1
  792. package/timetable-occupancy.js +1 -1
  793. package/timetable-occupancy.pure.js +1 -1
  794. package/title/title-base.js +1 -1
  795. package/title/title.component.js +2 -2
  796. package/{title.component-DNBy2mIm.js → title.component-DafVwymI.js} +1 -1
  797. package/title.js +2 -2
  798. package/title.pure.js +2 -2
  799. package/toast/toast.component.js +1 -1
  800. package/toast.js +1 -1
  801. package/toast.pure.js +1 -1
  802. package/toggle/toggle/toggle.component.js +1 -1
  803. package/toggle/toggle-option/toggle-option.component.js +1 -1
  804. package/toggle/toggle-option.js +1 -1
  805. package/toggle/toggle.js +1 -1
  806. package/toggle-check/toggle-check.component.js +1 -1
  807. package/toggle-check.js +1 -1
  808. package/toggle-check.pure.js +1 -1
  809. package/toggle.js +2 -2
  810. package/toggle.pure.js +2 -2
  811. package/tooltip/tooltip.component.js +1 -1
  812. package/tooltip.js +1 -1
  813. package/tooltip.pure.js +1 -1
  814. package/train/train/train.component.js +1 -1
  815. package/train/train-blocked-passage/train-blocked-passage.component.js +1 -1
  816. package/train/train-blocked-passage.js +1 -1
  817. package/train/train-formation/train-formation.component.js +1 -1
  818. package/train/train-formation.js +1 -1
  819. package/train/train-wagon/train-wagon.component.js +1 -1
  820. package/train/train-wagon.js +1 -1
  821. package/train/train.js +1 -1
  822. package/train.js +4 -4
  823. package/train.pure.js +4 -4
  824. package/visual-checkbox/visual-checkbox.component.js +1 -1
  825. package/visual-checkbox.js +1 -1
  826. package/visual-checkbox.pure.js +1 -1
  827. package/checkbox-group.component-CNAwwaS0.js +0 -146
  828. package/development/breadcrumb-group.component-DjsoMTPI.js +0 -278
  829. package/development/checkbox-group.component-CRZO7CEc.js +0 -265
  830. package/development/radio-button-group.component-5jDkRqSJ.js +0 -404
  831. package/development/selection-action-panel.component-elyz1Xsb.js +0 -134
  832. package/development/selection-expansion-panel.component-hL2jyaAT.js +0 -326
  833. package/radio-button-group.component-Cf8r6Whf.js +0 -232
  834. package/selection-action-panel.component-_kh6l2sj.js +0 -35
  835. /package/{checkbox-common-D9htxWLZ.js → checkbox-common-J-7Y966k.js} +0 -0
  836. /package/{chip-group.component-D2AZqL3m.js → chip-group.component-CbruCoHR.js} +0 -0
  837. /package/{chip-label.component-DBN4jfW7.js → chip-label.component-D9AZdMSJ.js} +0 -0
  838. /package/{chip.component-BNOs8T6O.js → chip.component-DMB36gvC.js} +0 -0
  839. /package/{clock.component-DDaWbXHW.js → clock.component-gZJy4AU4.js} +0 -0
  840. /package/{compact-paginator.component-BxSy5YXY.js → compact-paginator.component-BK7xj9tc.js} +0 -0
  841. /package/{container.component-DXFIvseq.js → container.component-C-jpJN2k.js} +0 -0
  842. /package/{date-input.component-zZtnd9Og.js → date-input.component-Da-aS3jt.js} +0 -0
  843. /package/{datepicker-button-C1TrzFl-.js → datepicker-button-Dk2UQkPN.js} +0 -0
  844. /package/{datepicker.component-cmdnlVgf.js → datepicker.component-DUVgoAGU.js} +0 -0
  845. /package/{dialog-actions.component-B4JYi2Ym.js → dialog-actions.component-QvbasYxg.js} +0 -0
  846. /package/{dialog-close-button.component-BtxXASCn.js → dialog-close-button.component-CeZrvBtz.js} +0 -0
  847. /package/{dialog-content.component-CNhoC-NZ.js → dialog-content.component-bHJNAgKn.js} +0 -0
  848. /package/{dialog-title.component-C8Jsbuqt.js → dialog-title.component-BDHYjDn0.js} +0 -0
  849. /package/{dialog.component-BHsekf9B.js → dialog.component-CIPresmM.js} +0 -0
  850. /package/{divider.component-DFw-P_dA.js → divider.component-B99DkxCv.js} +0 -0
  851. /package/{error.component-DL9hm4i9.js → error.component-DTYppqRY.js} +0 -0
  852. /package/{expansion-panel-content.component-CbWIxgH4.js → expansion-panel-content.component-DCl4nQ8V.js} +0 -0
  853. /package/{expansion-panel-header.component-CxLeXeGi.js → expansion-panel-header.component-jc1Ty5jz.js} +0 -0
  854. /package/{expansion-panel.component-Bs4icI9T.js → expansion-panel.component-CGss5cPS.js} +0 -0
  855. /package/{file-selector-common-C-gZH55c.js → file-selector-common-C--h0Yj2.js} +0 -0
  856. /package/{file-selector-dropzone.component-LHNtOZPr.js → file-selector-dropzone.component-BFlkqlsq.js} +0 -0
  857. /package/{flip-card-details.component-CiiCNjd2.js → flip-card-details.component-BOVK7F1U.js} +0 -0
  858. /package/{flip-card-summary.component-nO7zKRiB.js → flip-card-summary.component-DVa7wF7x.js} +0 -0
  859. /package/{flip-card.component-uSdokrC9.js → flip-card.component-5pxuwGAv.js} +0 -0
  860. /package/{footer.component-Cdsiwn4D.js → footer.component-C-mSrCud.js} +0 -0
  861. /package/{form-field.component-CZzQYOSP.js → form-field.component-CWj6jfYZ.js} +0 -0
  862. /package/{header-action-common-C2YPvOxq.js → header-action-common-W_j0KPr-.js} +0 -0
  863. /package/{header-environment.component-KqUmsOPQ.js → header-environment.component-DduyZo6W.js} +0 -0
  864. /package/{header.component-BssLZ6b7.js → header.component-DW23EnaO.js} +0 -0
  865. /package/{icon-base-BYJzaEDb.js → icon-base-C2VxpriZ.js} +0 -0
  866. /package/{icon-sidebar-container.component-BcoT4uhN.js → icon-sidebar-container.component-BGhKzy4e.js} +0 -0
  867. /package/{icon-sidebar-content.component-toRpXgxi.js → icon-sidebar-content.component-Ck5kHeMx.js} +0 -0
  868. /package/{icon-sidebar.component-B5xCvDvj.js → icon-sidebar.component-D3vOnYrs.js} +0 -0
  869. /package/{journey-header.component-CR8AO0b2.js → journey-header.component-CjXBxEor.js} +0 -0
  870. /package/{lead-container.component-CXKHfBiS.js → lead-container.component-D9VzZCQa.js} +0 -0
  871. /package/{link-common-CYxyP4XZ.js → link-common-akQv_-UR.js} +0 -0
  872. /package/{link-list-anchor.component--u5j_aqv.js → link-list-anchor.component-Qm7h2mHK.js} +0 -0
  873. /package/{link-list-base-CzFYpTOG.js → link-list-base-CrpC5D4u.js} +0 -0
  874. /package/{loading-indicator-circle.component-CfbXpYX6.js → loading-indicator-circle.component-DfjVqe7n.js} +0 -0
  875. /package/{loading-indicator.component-CoU9mwN8.js → loading-indicator.component-DkYs30Nf.js} +0 -0
  876. /package/{logo.component-nxragzaC.js → logo.component-CdZe8lrB.js} +0 -0
  877. /package/{map-container.component-C2W_7Xiw.js → map-container.component-C_wbi6WL.js} +0 -0
  878. /package/{menu-action-common-BcB_Tyvl.js → menu-action-common-BCV8hNkz.js} +0 -0
  879. /package/{menu.component-BdqUbvww.js → menu.component-_ncuRAqx.js} +0 -0
  880. /package/{message.component-DbmXg6DI.js → message.component-DDMr1IXM.js} +0 -0
  881. /package/{mini-calendar-day.component-D5HlCTH0.js → mini-calendar-day.component-Tj7wlWj7.js} +0 -0
  882. /package/{mini-calendar-month.component-CGAOxDtz.js → mini-calendar-month.component-DTod_RRs.js} +0 -0
  883. /package/{mini-calendar.component-_YJbFi4P.js → mini-calendar.component-BCDHUUZG.js} +0 -0
  884. /package/{navigation-action-common-Dcb95pqU.js → navigation-action-common-D_-gGOYm.js} +0 -0
  885. /package/{navigation-list.component-BhV-uAfU.js → navigation-list.component-DnB7FrKG.js} +0 -0
  886. /package/{navigation-marker.component-CIUu5VVZ.js → navigation-marker.component-B7hmb9iS.js} +0 -0
  887. /package/{navigation-section.component-DwEXj603.js → navigation-section.component-C86pkDLG.js} +0 -0
  888. /package/{navigation.component-BYqJ9Cqt.js → navigation.component-BzgTWUiD.js} +0 -0
  889. /package/{notification.component-DA7sZ3m4.js → notification.component-Cor1vQGU.js} +0 -0
  890. /package/{optgroup-base-element-DWKHCat8.js → optgroup-base-element-C8LeifgF.js} +0 -0
  891. /package/{option-hint.component-Goyhv5ss.js → option-hint.component-kPdwK61Z.js} +0 -0
  892. /package/{option.component-uzmmREt4.js → option.component-DF9ZTj12.js} +0 -0
  893. /package/{overlay.component-r0Rp_b-3.js → overlay.component-CAN3BK7B.js} +0 -0
  894. /package/{paginator.component-D_fV260x.js → paginator.component-CsSs5q4D.js} +0 -0
  895. /package/{popover.component-CktV5oiV.js → popover.component-eBpmXakQ.js} +0 -0
  896. /package/{radio-button-common-CCQ3bJPI.js → radio-button-common-QHPueQrm.js} +0 -0
  897. /package/{sbb-tokens-BJzKBCf8.js → sbb-tokens-BtASsKhQ.js} +0 -0
  898. /package/{screen-reader-only.component-B06hVxPg.js → screen-reader-only.component-DEOirlKo.js} +0 -0
  899. /package/{select.component-BZbDGrv8.js → select.component-CsIiislt.js} +0 -0
  900. /package/{sidebar-close-button.component-B9QGnQLs.js → sidebar-close-button.component-D0JS2p5L.js} +0 -0
  901. /package/{sidebar-container.component-BW24Ap9F.js → sidebar-container.component-BFxFShTF.js} +0 -0
  902. /package/{sidebar-content.component-DSTp9Iu6.js → sidebar-content.component-M7FGd8SF.js} +0 -0
  903. /package/{sidebar-title.component-COjEsAkk.js → sidebar-title.component-BfjxBPpH.js} +0 -0
  904. /package/{sidebar.component-C2YYQj-Q.js → sidebar.component-zRpWDGKR.js} +0 -0
  905. /package/{signet.component-CixiIpLj.js → signet.component-Kwdy4Uor.js} +0 -0
  906. /package/{skiplink-list.component-CINJgt_l.js → skiplink-list.component-BRJk6HvC.js} +0 -0
  907. /package/{slider.component-BhtuB-8p.js → slider.component-CLNsu212.js} +0 -0
  908. /package/{status.component-BZ8zajOL.js → status.component-CmLdUn37.js} +0 -0
  909. /package/{step-label.component-COJYo-MI.js → step-label.component-DTkviH8Q.js} +0 -0
  910. /package/{step.component-BIOQdZVR.js → step.component-eKVtXlT4.js} +0 -0
  911. /package/{stepper.component-D2vhtDCy.js → stepper.component-yWCQtYWc.js} +0 -0
  912. /package/{sticky-bar.component-CYCOEGz7.js → sticky-bar.component-BqZVKHc7.js} +0 -0
  913. /package/{styles-uZGSPqgK.js → styles-CsBiCI23.js} +0 -0
  914. /package/{styles-DpIXFSVm.js → styles-DYZWSKeo.js} +0 -0
  915. /package/{tab-group.component-nprcnwFB.js → tab-group.component-DE4H3_H4.js} +0 -0
  916. /package/{tab-label.component-BeLuYRBg.js → tab-label.component-BnxPGws1.js} +0 -0
  917. /package/{tab-nav-bar.component-Du1JyNtu.js → tab-nav-bar.component-n5TiTWxE.js} +0 -0
  918. /package/{tab.component-D8Rz05Fo.js → tab.component-BrIEFDxk.js} +0 -0
  919. /package/{table-wrapper.component-DkaL4T5V.js → table-wrapper.component-CoqozurQ.js} +0 -0
  920. /package/{tag-group.component-CW6Z9-P6.js → tag-group.component-DiIp6zS1.js} +0 -0
  921. /package/{tag.component-CvZpvIuw.js → tag.component-CfK6JwsO.js} +0 -0
  922. /package/{teaser-hero.component-Dolg4-Yz.js → teaser-hero.component-DjodzcX_.js} +0 -0
  923. /package/{teaser-product-common-q2IZHbkr.js → teaser-product-common-DkumwiRA.js} +0 -0
  924. /package/{teaser-product.component-DVdyKe6h.js → teaser-product.component-DiOhM_rU.js} +0 -0
  925. /package/{teaser.component-BO50F7ky.js → teaser.component-C7sJLVMk.js} +0 -0
  926. /package/{time-input.component-ChWhDF5l.js → time-input.component-DT1BOC8m.js} +0 -0
  927. /package/{timetable-form-details.component-Du6WPn3y.js → timetable-form-details.component-DI5Mr8-O.js} +0 -0
  928. /package/{timetable-form-field.component-Cb3FYKL7.js → timetable-form-field.component-2kEWygEC.js} +0 -0
  929. /package/{timetable-form-swap-button.component-ByQDf7oy.js → timetable-form-swap-button.component-BGP-OsHD.js} +0 -0
  930. /package/{timetable-form.component-BqokC_4S.js → timetable-form.component-BqdKekNM.js} +0 -0
  931. /package/{timetable-occupancy-icon.component-BhXQSFZR.js → timetable-occupancy-icon.component-ZrzpXaeV.js} +0 -0
  932. /package/{timetable-occupancy.component-DnaQ0TIW.js → timetable-occupancy.component-DMztYVmj.js} +0 -0
  933. /package/{title-base-D4nE41tH.js → title-base-BDYkc8fG.js} +0 -0
  934. /package/{toast.component-B9Gm8Kls.js → toast.component-DbILctK5.js} +0 -0
  935. /package/{toggle-check.component-BcxMe5Zi.js → toggle-check.component-CPewUjOg.js} +0 -0
  936. /package/{toggle-option.component-DvdEjT2c.js → toggle-option.component-NMfqwd12.js} +0 -0
  937. /package/{toggle.component-Lnj5TugJ.js → toggle.component-D1n5S5ev.js} +0 -0
  938. /package/{tooltip.component-DGG7Da2h.js → tooltip.component-X45T6iQH.js} +0 -0
  939. /package/{train-blocked-passage.component-Dz7lD_V1.js → train-blocked-passage.component-RIMoX91U.js} +0 -0
  940. /package/{train-formation.component-CGTqQgp7.js → train-formation.component-B17tc6cx.js} +0 -0
  941. /package/{train-wagon.component-BW-JxcK6.js → train-wagon.component-bGA2a-0M.js} +0 -0
  942. /package/{train.component-B_Nlu8Kh.js → train.component-V6FLqC82.js} +0 -0
  943. /package/{visual-checkbox.component-bB_pG0vn.js → visual-checkbox.component-eajUDpKu.js} +0 -0
@@ -635,4 +635,4 @@ var SbbMenuElement = (() => {
635
635
  //#endregion
636
636
  export { SbbMenuElement as t };
637
637
 
638
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQtR0hKSGhFOUQuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL21lbnUvbWVudS9tZW51LnNjc3M/bGl0JmlubGluZSIsIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9tZW51L21lbnUvbWVudS5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiQHVzZSAnLi4vLi4vY29yZS9zdHlsZXMnIGFzIHNiYjtcblxuOmhvc3Qge1xuICAvLyBXZSB1c2UgdGhpcyBydWxlIHRvIG1ha2UgdGhlIGlubmVyIGNvbnRhaW5lciBlbGVtZW50IHRvIGFwcGVhciBhcyBpZiBpdCB3ZXJlIGFcbiAgLy8gZGlyZWN0IGNoaWxkIG9mIHRoZSBob3N0J3MgcGFyZW50IGVsZW1lbnQuIFRoaXMgaXMgdXNlZnVsIGJlY2F1c2UgdGhlIGhvc3RcbiAgLy8gc2hvdWxkIGJlIGlnbm9yZWQgd2hlbiB1c2luZyBDU1MgZ3JpZCBvciBzaW1pbGFyIGxheW91dCB0ZWNobmlxdWVzLlxuICBkaXNwbGF5OiBjb250ZW50cztcblxuICAtLXNiYi1tZW51LXBvc2l0aW9uLXg6IDA7XG4gIC0tc2JiLW1lbnUtcG9zaXRpb24teTogMDtcbiAgLS1zYmItbWVudS1hbmltYXRpb24tZHVyYXRpb246IHZhcihcbiAgICAtLXNiYi1kaXNhYmxlLWFuaW1hdGlvbi1kdXJhdGlvbixcbiAgICB2YXIoLS1zYmItYW5pbWF0aW9uLWR1cmF0aW9uLTZ4KVxuICApO1xuICAtLXNiYi1tZW51LWFuaW1hdGlvbi1lYXNpbmc6IGVhc2U7XG4gIC0tc2JiLW1lbnUtdHJhbnNmb3JtLXk6IDEwMCU7XG4gIC0tc2JiLW1lbnUtdHJhbnNmb3JtLXg6IDAlO1xuICAtLXNiYi1tZW51LW1heC13aWR0aDogMTAwJTtcbiAgLS1zYmItbWVudS1taW4td2lkdGg6IDEwMCU7XG4gIC0tc2JiLW1lbnUtaW5zZXQ6IDAgYXV0byBhdXRvIDA7XG4gIC0tc2JiLW1lbnUtY29udGFpbmVyLWhlaWdodDogMTAwZHZoO1xuXG4gIC8vIDg1dmggaXMgbm90IGFuIGV4YWN0IHZhbHVlIGJ1dCBsb29rcyBvcHRpbWl6ZWQgZm9yIG1vYmlsZSB2aWV3LlxuICAtLXNiYi1tZW51LW1heC1oZWlnaHQ6IGNhbGMoODV2aCAtIHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTh4KSk7XG4gIC0tc2JiLW1lbnUtbWluLWhlaWdodDogI3tzYmIucHgtdG8tcmVtLWJ1aWxkKDQ4LjUpfTtcbiAgLS1zYmItbWVudS1ib3JkZXItcmFkaXVzOiB2YXIoLS1zYmItYm9yZGVyLXJhZGl1cy00eCk7XG4gIC0tc2JiLW1lbnUtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtLXNiYi1tZW51LWJhY2tkcm9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS1zYmItbWVudS1jb2xvcjogdmFyKC0tc2JiLWNvbG9yLTItaW52ZXJ0ZWQpO1xuICAtLXNiYi1tZW51LWJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTEtaW52ZXJ0ZWQpO1xuICAtLXNiYi1mb2N1cy1vdXRsaW5lLWNvbG9yOiB2YXIoLS1zYmItZm9jdXMtb3V0bGluZS1jb2xvci1kYXJrKTtcblxuICBAaW5jbHVkZSBzYmIuc2Nyb2xsYmFyLXZhcmlhYmxlcygkbmVnYXRpdmU6IHRydWUpO1xuXG4gIEBpbmNsdWRlIHNiYi5tcSgkZnJvbTogbGFyZ2UpIHtcbiAgICAtLXNiYi1tZW51LXRyYW5zZm9ybS15OiB2YXIoLS1zYmItc3BhY2luZy1maXhlZC0yeCk7XG4gICAgLS1zYmItbWVudS1tYXgtd2lkdGg6ICN7c2JiLnB4LXRvLXJlbS1idWlsZCgzMjApfTtcbiAgICAtLXNiYi1tZW51LW1pbi13aWR0aDogI3tzYmIucHgtdG8tcmVtLWJ1aWxkKDE4MCl9O1xuICAgIC0tc2JiLW1lbnUtYmFjay1idXR0b24tZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG46aG9zdCg6aXMoOnN0YXRlKHN0YXRlLW9wZW5lZCksIDpzdGF0ZShzdGF0ZS1vcGVuaW5nKSkpIHtcbiAgLS1zYmItbWVudS12aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAtLXNiYi1tZW51LWJhY2tkcm9wLWNvbG9yOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tc2JiLWNvbG9yLWJsYWNrKSAyMCUsIHRyYW5zcGFyZW50KTtcblxuICBAaW5jbHVkZSBzYmIubXEoJGZyb206IGxhcmdlKSB7XG4gICAgLS1zYmItbWVudS1iYWNrZHJvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuOmhvc3QoOm5vdCg6c3RhdGUobmVzdGVkKSkpIHtcbiAgLS1zYmItbWVudS1iYWNrLWJ1dHRvbi1kaXNwbGF5OiBub25lO1xufVxuXG46aG9zdCg6bm90KDpzdGF0ZShzdGF0ZS1jbG9zZWQpKSkge1xuICAtLXNiYi1tZW51LWluc2V0OiAwO1xufVxuXG46aG9zdCg6c3RhdGUoZGFyaykpIHtcbiAgLS1zYmItZm9jdXMtb3V0bGluZS1jb2xvcjogdmFyKC0tc2JiLWZvY3VzLW91dGxpbmUtY29sb3ItZGVmYXVsdCk7XG5cbiAgLy8gV2UgaGF2ZSB0byBlbnN1cmUgdGhhdCB0aGUgc2Nyb2xsYmFyIGlzIHZpc2libGUgaW4gZGFyayBtb2RlIHdpdGggbm9uLWRhcmsgbW9kZSB2YWx1ZXMuXG4gIC0tc2JiLXNjcm9sbGJhci1jb2xvcjogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLXNiYi1jb2xvci1ibGFjaykgMzAlLCB0cmFuc3BhcmVudCk7XG4gIC0tc2JiLXNjcm9sbGJhci1jb2xvci1ob3ZlcjogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLXNiYi1jb2xvci1ibGFjaykgNjAlLCB0cmFuc3BhcmVudCk7XG59XG5cbkBpbmNsdWRlIHNiYi5tcSgkdG86IGxhcmdlKSB7XG4gIDpob3N0KDpzdGF0ZShza2lwLWFuaW1hdGlvbikpIHtcbiAgICAtLXNiYi1tZW51LWFuaW1hdGlvbi1kdXJhdGlvbjogMG1zO1xuICB9XG5cbiAgOmhvc3QoOnN0YXRlKG5lc3RlZC1jaGlsZCkpIHtcbiAgICAtLXNiYi1tZW51LXRyYW5zZm9ybS14OiAtMTAwJTtcbiAgfVxuXG4gIDpob3N0KDpzdGF0ZShuZXN0ZWQpOmlzKDpzdGF0ZShzdGF0ZS1vcGVuaW5nKSwgOnN0YXRlKHN0YXRlLW9wZW5lZCksIDpzdGF0ZShzdGF0ZS1jbG9zaW5nKSkpIHtcbiAgICAtLXNiYi1tZW51LW9wZW4tYW5pbWF0aW9uLW5hbWU6IG9wZW4tc2lkZXdheXM7XG4gIH1cblxuICA6aG9zdCg6c3RhdGUoc3RhdGUtY2xvc2luZyk6c3RhdGUobmVzdGVkKTpub3QoOnN0YXRlKGNsb3NlLWFsbCkpKSB7XG4gICAgLS1zYmItbWVudS1jbG9zZS1hbmltYXRpb24tbmFtZTogY2xvc2Utc2lkZXdheXM7XG4gIH1cbn1cblxuOjpzbG90dGVkKDpub3Qoc2JiLW1lbnUtYnV0dG9uLCBzYmItbWVudS1saW5rLCBzYmItZGl2aWRlcikpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zYmItc3BhY2luZy1maXhlZC01eCk7XG59XG5cbnNiYi1kaXZpZGVyLFxuOjpzbG90dGVkKHNiYi1kaXZpZGVyKSB7XG4gIC0tc2JiLWRpdmlkZXItY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTQtaW52ZXJ0ZWQpO1xuXG4gIG1hcmdpbi1ibG9jazogdmFyKC0tc2JiLXNwYWNpbmctZml4ZWQtMngpO1xufVxuXG5zYmItZGl2aWRlcixcbiNzYmItbWVudV9fYmFjay1idXR0b24ge1xuICBkaXNwbGF5OiB2YXIoLS1zYmItbWVudS1iYWNrLWJ1dHRvbi1kaXNwbGF5LCBibG9jayk7XG59XG5cbi5zYmItbWVudV9fY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgaW5zZXQ6IHZhcigtLXNiYi1tZW51LWluc2V0KTtcbiAgaGVpZ2h0OiB2YXIoLS1zYmItbWVudS1jb250YWluZXItaGVpZ2h0KTtcbiAgei1pbmRleDogdmFyKC0tc2JiLW1lbnUtei1pbmRleCwgdmFyKC0tc2JiLW92ZXJsYXktZGVmYXVsdC16LWluZGV4KSk7XG5cbiAgLy8gTWVudSBiYWNrZHJvcCAob25seSB2aXNpYmxlIG9uIG1vYmlsZSlcbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICB2aXNpYmlsaXR5OiB2YXIoLS1zYmItbWVudS12aXNpYmlsaXR5KTtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBpbnNldDogdmFyKC0tc2JiLW1lbnUtaW5zZXQpO1xuICAgIGhlaWdodDogdmFyKC0tc2JiLW1lbnUtY29udGFpbmVyLWhlaWdodCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLW1lbnUtYmFja2Ryb3AtY29sb3IpO1xuICAgIHRyYW5zaXRpb246IHtcbiAgICAgIGR1cmF0aW9uOiB2YXIoLS1zYmItbWVudS1hbmltYXRpb24tZHVyYXRpb24pO1xuICAgICAgdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zYmItbWVudS1hbmltYXRpb24tZWFzaW5nKTtcbiAgICAgIHByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yLCB2aXNpYmlsaXR5O1xuICAgIH1cblxuICAgIC8vIEhpZGUgdGhlIGJhY2tkcm9wIHdoZW4gaW4gbmVzdGVkIHN0YXRlXG4gICAgOmhvc3QoOnN0YXRlKG5lc3RlZCkpICYge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLnNiYi1tZW51IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG1heC13aWR0aDogdmFyKC0tc2JiLW1lbnUtbWF4LXdpZHRoKTtcbiAgbWluLXdpZHRoOiB2YXIoLS1zYmItbWVudS1taW4td2lkdGgpO1xuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldC1pbmxpbmUtc3RhcnQ6IDA7XG4gIGluc2V0LWJsb2NrLXN0YXJ0OiB1bnNldDtcbiAgaW5zZXQtYmxvY2stZW5kOiAwO1xuICBpbnNldC1pbmxpbmUtZW5kOiB1bnNldDtcbiAgY29sb3I6IHZhcigtLXNiYi1tZW51LWNvbG9yKTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1zYmItbWVudS1ib3JkZXItcmFkaXVzKSB2YXIoLS1zYmItbWVudS1ib3JkZXItcmFkaXVzKSAwIDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1tZW51LWJhY2tncm91bmQtY29sb3IpO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2xhdGU6IHZhcigtLXNiYi1tZW51LXRyYW5zZm9ybS14KSAwO1xuXG4gIC8vIFVzZWQgd2hlbiBuYXZpZ2F0aW5nIGJhY2sgZnJvbSBuZXN0ZWQgbWVudSBpbiBtb2JpbGUgdmlld1xuICB0cmFuc2l0aW9uOiB0cmFuc2xhdGUgdmFyKC0tc2JiLW1lbnUtYW5pbWF0aW9uLWR1cmF0aW9uKTtcblxuICA6aG9zdCg6aXMoOnN0YXRlKHN0YXRlLW9wZW5pbmcpLCA6c3RhdGUoc3RhdGUtb3BlbmVkKSwgOnN0YXRlKHN0YXRlLWNsb3NpbmcpKSkgJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3BhY2l0eTogMTtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuXG4gICAgYW5pbWF0aW9uOiB7XG4gICAgICBuYW1lOiB2YXIoLS1zYmItbWVudS1vcGVuLWFuaW1hdGlvbi1uYW1lLCBvcGVuKTtcbiAgICAgIGR1cmF0aW9uOiB2YXIoLS1zYmItbWVudS1hbmltYXRpb24tZHVyYXRpb24pO1xuICAgICAgdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zYmItbWVudS1hbmltYXRpb24tZWFzaW5nKTtcbiAgICB9XG4gIH1cblxuICA6aG9zdCg6c3RhdGUoc3RhdGUtY2xvc2luZykpICYge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGFuaW1hdGlvbi1uYW1lOiB2YXIoLS1zYmItbWVudS1jbG9zZS1hbmltYXRpb24tbmFtZSwgY2xvc2UpO1xuICB9XG5cbiAgQGluY2x1ZGUgc2JiLmlmLWZvcmNlZC1jb2xvcnMge1xuICAgIG91dGxpbmU6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMXgpIHNvbGlkIENhbnZhc1RleHQ7XG4gIH1cblxuICBAaW5jbHVkZSBzYmIubXEoJGZyb206IGxhcmdlKSB7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogdW5zZXQ7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogdW5zZXQ7XG4gICAgbWF4LWhlaWdodDogZml0LWNvbnRlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tc2JiLW1lbnUtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICA6aG9zdCg6bm90KDpzdGF0ZShzdGF0ZS1jbG9zZWQpKSkgJiB7XG4gICAgICB0b3A6IHZhcigtLXNiYi1tZW51LXBvc2l0aW9uLXkpO1xuICAgICAgbGVmdDogdmFyKC0tc2JiLW1lbnUtcG9zaXRpb24teCk7XG4gICAgICBtYXgtaGVpZ2h0OiB2YXIoLS1zYmItbWVudS1tYXgtaGVpZ2h0KTtcbiAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLXNiYi1tZW51LW1pbi1oZWlnaHQpO1xuICAgIH1cbiAgfVxufVxuXG4uc2JiLW1lbnVfX2NvbnRlbnQge1xuICBAaW5jbHVkZSBzYmIuc2Nyb2xsYmFyLXJ1bGVzO1xuXG4gIG1heC1oZWlnaHQ6IHZhcigtLXNiYi1tZW51LW1heC1oZWlnaHQpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zYmItc3BhY2luZy1maXhlZC0xeCk7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBvdXRsaW5lOiBub25lO1xuXG4gIC8vIE1hcmdpbiBib3R0b20gaW4gbW9iaWxlIHZhcmlhbnRcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogdmFyKC0tc2JiLXNwYWNpbmctZml4ZWQtOHgpO1xuICB9XG5cbiAgQGluY2x1ZGUgc2JiLm1xKCRmcm9tOiBsYXJnZSkge1xuICAgIG1heC1oZWlnaHQ6IGZpdC1jb250ZW50O1xuXG4gICAgOmhvc3QoOm5vdCg6c3RhdGUoc3RhdGUtY2xvc2VkKSkpICYge1xuICAgICAgbWF4LWhlaWdodDogdmFyKC0tc2JiLW1lbnUtbWF4LWhlaWdodCk7XG4gICAgICBtaW4taGVpZ2h0OiB2YXIoLS1zYmItbWVudS1taW4taGVpZ2h0KTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG46OnNsb3R0ZWQoOmlzKDpzdGF0ZShzYmItbGluayksIDpzdGF0ZShzYmItYnV0dG9uKSkpIHtcbiAgLy8gQXMgdGhlIGJhY2tncm91bmQgdHVybnMgd2hpdGUsIHdlIG5lZWQgdG8gZW5zdXJlIHRoYXQgYnV0dG9ucyBhbmQgbGlua3MgYXJlIGRpc3BsYXllZCBpbiBwb3NpdGl2ZS5cbiAgY29sb3Itc2NoZW1lOiBvbmx5IGxpZ2h0O1xufVxuXG5Aa2V5ZnJhbWVzIG9wZW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zbGF0ZTogMCB2YXIoLS1zYmItbWVudS10cmFuc2Zvcm0teSk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2xhdGU6IDAgMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGNsb3NlIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2xhdGU6IDAgMDtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zbGF0ZTogMCB2YXIoLS1zYmItbWVudS10cmFuc2Zvcm0teSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBvcGVuLXNpZGV3YXlzIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNsYXRlOiAxMDAlIDA7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNsYXRlOiAwIDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBjbG9zZS1zaWRld2F5cyB7XG4gIGZyb20ge1xuICAgIHRyYW5zbGF0ZTogMCAwO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zbGF0ZTogMTAwJSAwO1xuICB9XG59XG4iLCJpbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBpc1NlcnZlcixcbiAgdHlwZSBQcm9wZXJ0eURlY2xhcmF0aW9uLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxufSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyByZWYgfSBmcm9tICdsaXQvZGlyZWN0aXZlcy9yZWYuanMnO1xuXG5pbXBvcnQge1xuICBnZXROZXh0RWxlbWVudEluZGV4LFxuICBpbnRlcmFjdGl2aXR5Q2hlY2tlcixcbiAgaXNBcnJvd0tleU9yUGFnZUtleXNQcmVzc2VkLFxuICBTYmJGb2N1c1RyYXBDb250cm9sbGVyLFxufSBmcm9tICcuLi8uLi9jb3JlL2ExMXkudHMnO1xuaW1wb3J0IHsgU2JiT3BlbkNsb3NlQmFzZUVsZW1lbnQgfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2UtZWxlbWVudHMudHMnO1xuaW1wb3J0IHtcbiAgU2JiRGFya01vZGVDb250cm9sbGVyLFxuICBTYmJFc2NhcGFibGVPdmVybGF5Q29udHJvbGxlcixcbiAgU2JiSW5lcnRDb250cm9sbGVyLFxuICBTYmJMYW5ndWFnZUNvbnRyb2xsZXIsXG4gIFNiYk1lZGlhTWF0Y2hlckNvbnRyb2xsZXIsXG4gIFNiYk1lZGlhUXVlcnlCcmVha3BvaW50U21hbGxBbmRCZWxvdyxcbn0gZnJvbSAnLi4vLi4vY29yZS9jb250cm9sbGVycy50cyc7XG5pbXBvcnQgeyBpZFJlZmVyZW5jZSB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy50cyc7XG5pbXBvcnQgeyBpc1plcm9BbmltYXRpb25EdXJhdGlvbiwgU2JiU2Nyb2xsSGFuZGxlciB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLnRzJztcbmltcG9ydCB7IGZvcndhcmRFdmVudCB9IGZyb20gJy4uLy4uL2NvcmUvZXZlbnRpbmcudHMnO1xuaW1wb3J0IHsgaTE4bkdvQmFjayB9IGZyb20gJy4uLy4uL2NvcmUvaTE4bi9pMThuLnRzJztcbmltcG9ydCB7IMm1c3RhdGVDb250cm9sbGVyLCB0eXBlIFNiYk5lZ2F0aXZlTWl4aW5UeXBlIH0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMudHMnO1xuaW1wb3J0IHtcbiAgZ2V0RWxlbWVudFBvc2l0aW9uLFxuICBnZXRFbGVtZW50UG9zaXRpb25Ib3Jpem9udGFsLFxuICBpc0V2ZW50T25FbGVtZW50LFxuICByZW1vdmVBcmlhT3ZlcmxheVRyaWdnZXJBdHRyaWJ1dGVzLFxuICBzZXRBcmlhT3ZlcmxheVRyaWdnZXJBdHRyaWJ1dGVzLFxufSBmcm9tICcuLi8uLi9jb3JlL292ZXJsYXkudHMnO1xuaW1wb3J0IHsgYm94U2l6aW5nU3R5bGVzIH0gZnJvbSAnLi4vLi4vY29yZS9zdHlsZXMudHMnO1xuaW1wb3J0IHsgU2JiTWVudUJ1dHRvbkVsZW1lbnQgfSBmcm9tICcuLi9tZW51LWJ1dHRvbi9tZW51LWJ1dHRvbi5jb21wb25lbnQudHMnO1xuaW1wb3J0IHR5cGUgeyBTYmJNZW51TGlua0VsZW1lbnQgfSBmcm9tICcuLi9tZW51LWxpbmsvbWVudS1saW5rLmNvbXBvbmVudC50cyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL21lbnUuc2Nzcz9saXQmaW5saW5lJztcblxuaW1wb3J0ICcuLi8uLi9kaXZpZGVyLnRzJztcblxuU2JiTWVudUJ1dHRvbkVsZW1lbnQuZGVmaW5lKCk7XG5cbmNvbnN0IE1FTlVfT0ZGU0VUID0gODtcbmNvbnN0IE5FU1RFRF9NRU5VX09GRlNFVCA9IC00O1xuY29uc3QgSU5URVJBQ1RJVkVfRUxFTUVOVFMgPSBbXG4gICdBJyxcbiAgJ0JVVFRPTicsXG4gICdTQkItQlVUVE9OJyxcbiAgJ1NCQi1CVVRUT04tTElOSycsXG4gICdTQkItTElOSycsXG4gICdTQkItQkxPQ0stTElOSycsXG4gICdTQkItTElOSy1CVVRUT04nLFxuICAnU0JCLUJMT0NLLUxJTkstQlVUVE9OJyxcbiAgJ1NCQi1NRU5VLUJVVFRPTicsXG4gICdTQkItTUVOVS1MSU5LJyxcbl07XG5cbmxldCBuZXh0SWQgPSAwO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgY29udGV4dHVhbCBtZW51IHdpdGggb25lIG9yIG1vcmUgYWN0aW9uIGVsZW1lbnQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgYHNiYi1tZW51LWJ1dHRvbmAvYHNiYi1tZW51LWxpbmtgIG9yIG90aGVyIGVsZW1lbnRzIHRvIHRoZSBtZW51LlxuICogQGNzc3Byb3AgWy0tc2JiLW1lbnUtei1pbmRleD12YXIoLS1zYmItb3ZlcmxheS1kZWZhdWx0LXotaW5kZXgpXSAtIFRvIHNwZWNpZnkgYSBjdXN0b20gc3RhY2sgb3JkZXIsXG4gKiB0aGUgYHotaW5kZXhgIGNhbiBiZSBvdmVycmlkZGVuIGJ5IGRlZmluaW5nIHRoaXMgQ1NTIHZhcmlhYmxlLiBUaGUgZGVmYXVsdCBgei1pbmRleGAgb2YgdGhlXG4gKiBjb21wb25lbnQgaXMgc2V0IHRvIGB2YXIoLS1zYmItb3ZlcmxheS1kZWZhdWx0LXotaW5kZXgpYCB3aXRoIGEgdmFsdWUgb2YgYDEwMDBgLlxuICovXG5leHBvcnQgY2xhc3MgU2JiTWVudUVsZW1lbnQgZXh0ZW5kcyBTYmJPcGVuQ2xvc2VCYXNlRWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItbWVudSc7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtib3hTaXppbmdTdHlsZXMsIHN0eWxlXTtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSByb2xlID0gJ21lbnUnO1xuXG4gIC8qKlxuICAgKiBUaGUgZWxlbWVudCB0aGF0IHdpbGwgdHJpZ2dlciB0aGUgbWVudSBvdmVybGF5LlxuICAgKlxuICAgKiBGb3IgYXR0cmlidXRlIHVzYWdlLCBwcm92aWRlIGFuIGlkIHJlZmVyZW5jZS5cbiAgICovXG4gIEBpZFJlZmVyZW5jZSgpXG4gIEBwcm9wZXJ0eSgpXG4gIHB1YmxpYyBhY2Nlc3NvciB0cmlnZ2VyOiBIVE1MRWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gIHByaXZhdGUgX21lbnUhOiBIVE1MRGl2RWxlbWVudDtcbiAgcHJpdmF0ZSBfdHJpZ2dlckVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX3RyaWdnZXJBYm9ydENvbnRyb2xsZXIhOiBBYm9ydENvbnRyb2xsZXI7XG4gIHByaXZhdGUgX2lzUG9pbnRlckRvd25FdmVudE9uTWVudTogYm9vbGVhbiA9IGZhbHNlO1xuICBwcml2YXRlIF93aW5kb3dFdmVudHNDb250cm9sbGVyITogQWJvcnRDb250cm9sbGVyO1xuICBwcml2YXRlIF9lc2NhcGFibGVPdmVybGF5Q29udHJvbGxlciA9IG5ldyBTYmJFc2NhcGFibGVPdmVybGF5Q29udHJvbGxlcih0aGlzKTtcbiAgcHJpdmF0ZSBfZm9jdXNUcmFwQ29udHJvbGxlciA9IG5ldyBTYmJGb2N1c1RyYXBDb250cm9sbGVyKHRoaXMpO1xuICBwcml2YXRlIF9zY3JvbGxIYW5kbGVyID0gbmV3IFNiYlNjcm9sbEhhbmRsZXIoKTtcbiAgcHJpdmF0ZSBfaW5lcnRDb250cm9sbGVyID0gbmV3IFNiYkluZXJ0Q29udHJvbGxlcih0aGlzKTtcbiAgcHJpdmF0ZSBfbW9iaWxlQnJlYWtwb2ludCA9IFNiYk1lZGlhUXVlcnlCcmVha3BvaW50U21hbGxBbmRCZWxvdztcbiAgcHJpdmF0ZSBfbWVkaWFNYXRjaGVyID0gbmV3IFNiYk1lZGlhTWF0Y2hlckNvbnRyb2xsZXIodGhpcywge1xuICAgIFt0aGlzLl9tb2JpbGVCcmVha3BvaW50XTogKG1hdGNoZXMpID0+IHtcbiAgICAgIGlmIChtYXRjaGVzICYmICh0aGlzLnN0YXRlID09PSAnb3BlbmluZycgfHwgdGhpcy5zdGF0ZSA9PT0gJ29wZW5lZCcpKSB7XG4gICAgICAgIHRoaXMuX3Njcm9sbEhhbmRsZXIuZGlzYWJsZVNjcm9sbCgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5fc2Nyb2xsSGFuZGxlci5lbmFibGVTY3JvbGwoKTtcbiAgICAgIH1cbiAgICB9LFxuICB9KTtcbiAgcHJpdmF0ZSBfZGFya01vZGVDb250cm9sbGVyID0gbmV3IFNiYkRhcmtNb2RlQ29udHJvbGxlcih0aGlzLCAoKSA9PiB0aGlzLl9zeW5jTmVnYXRpdmUoKSk7XG4gIHByaXZhdGUgX2xhbmd1YWdlID0gbmV3IFNiYkxhbmd1YWdlQ29udHJvbGxlcih0aGlzKTtcbiAgcHJpdmF0ZSBfbmVzdGVkTWVudTogU2JiTWVudUVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/Ligna2V5ZG93bicsIChlKSA9PiB0aGlzLl9oYW5kbGVLZXlEb3duKGUpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIHRoaXMuX2NvbmZpZ3VyZVRyaWdnZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBlc2NhcGVTdHJhdGVneSgpOiB2b2lkIHtcbiAgICB0aGlzLmNsb3NlQWxsKCk7XG4gIH1cblxuICAvKipcbiAgICogT3BlbnMgdGhlIG1lbnUgb24gdHJpZ2dlciBjbGljay5cbiAgICovXG4gIHB1YmxpYyBvcGVuKCk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgIHRoaXMuc3RhdGUgPT09ICdjbG9zaW5nJyB8fFxuICAgICAgdGhpcy5zdGF0ZSA9PT0gJ29wZW5lZCcgfHxcbiAgICAgICF0aGlzLl9tZW51IHx8XG4gICAgICAhdGhpcy5kaXNwYXRjaEJlZm9yZU9wZW5FdmVudCgpXG4gICAgKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX2lzTmVzdGVkKCkpIHtcbiAgICAgIGNvbnN0IHBhcmVudE1lbnUgPSB0aGlzLl9wYXJlbnRNZW51KCkhO1xuICAgICAgcGFyZW50TWVudS5pbnRlcm5hbHMuc3RhdGVzLmFkZCgnbmVzdGVkLWNoaWxkJyk7XG5cbiAgICAgIC8vIEluIGNhc2Ugd2UgY2hhbmdlIGJldHdlZW4gYXJyb3cga2V5IG5hdmlnYXRpb24gYW5kIG1vdXNlIG5hdmlnYXRpb24sIGl0IGNhbiBiZSB0aGF0IGFub3RoZXJcbiAgICAgIC8vIG5lc3RlZCBwYXJlbnQgbWVudSBpcyBzdGlsbCBvcGVuLiBXZSBoYXZlIHRvIGNsb3NlIGl0LlxuICAgICAgaWYgKHBhcmVudE1lbnUuX25lc3RlZE1lbnUgIT09IHRoaXMpIHtcbiAgICAgICAgcGFyZW50TWVudS5fbmVzdGVkTWVudT8uY2xvc2UoKTtcbiAgICAgIH1cbiAgICAgIHBhcmVudE1lbnUuX25lc3RlZE1lbnUgPSB0aGlzO1xuICAgIH1cblxuICAgIHRoaXMuc2hvd1BvcG92ZXI/LigpO1xuICAgIHRoaXMuc3RhdGUgPSAnb3BlbmluZyc7XG4gICAgdGhpcy5fc2V0TWVudVBvc2l0aW9uKCk7XG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQ/LnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsICd0cnVlJyk7XG5cbiAgICAvLyBGcm9tIHplcm8gdG8gbGFyZ2UsIGRpc2FibGUgc2Nyb2xsXG4gICAgaWYgKHRoaXMuX2lzTW9iaWxlKCkpIHtcbiAgICAgIHRoaXMuX3Njcm9sbEhhbmRsZXIuZGlzYWJsZVNjcm9sbCgpO1xuICAgIH1cblxuICAgIC8vIElmIHRoZSBhbmltYXRpb24gZHVyYXRpb24gaXMgemVybywgdGhlIGFuaW1hdGlvbmVuZCBldmVudCBpcyBub3QgYWx3YXlzIGZpcmVkIHJlbGlhYmx5LlxuICAgIC8vIEluIHRoaXMgY2FzZSB3ZSBkaXJlY3RseSBzZXQgdGhlIGBvcGVuZWRgIHN0YXRlLlxuICAgIGlmICh0aGlzLl9pc1plcm9BbmltYXRpb25EdXJhdGlvbigpKSB7XG4gICAgICB0aGlzLl9oYW5kbGVPcGVuaW5nKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIENsb3NlcyB0aGUgbWVudSBhbmQgYWxsIGl0cyBuZXN0ZWQgbWVudXMuICovXG4gIHB1YmxpYyBjbG9zZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9jbG9zZSgpO1xuICB9XG5cbiAgLyoqIENsb3NlcyB0aGUgbWVudSBhbmQgYWxsIHJlbGF0ZWQgbWVudXMgKG5lc3RlZCBhbmQgcGFyZW50IG1lbnVzKS4gKi9cbiAgcHVibGljIGNsb3NlQWxsKCk6IHZvaWQge1xuICAgIHRoaXMuX21haW5NZW51KCkuX2Nsb3NlKHRydWUpO1xuICB9XG5cbiAgLyoqIEBwYXJhbSBbY2xvc2VBbGw9J2ZhbHNlJ10gLSBJZiB0cnVlLCBpdCBlbnN1cmVzIGFuaW1hdGlvbnMgYXJlIGNvcnJlY3QgYnkgdG9nZ2xpbmcgc29tZSBzdGF0ZXMgd2hlbiBjbG9zaW5nIGFsbCByZWxhdGVkIG1lbnVzIGF0IG9uY2UuICovXG4gIHByaXZhdGUgX2Nsb3NlKGNsb3NlQWxsID0gZmFsc2UpOiB2b2lkIHtcbiAgICBpZiAoKHRoaXMuc3RhdGUgPT09ICdvcGVuaW5nJyAmJiAhdGhpcy5faXNOZXN0ZWQoKSkgfHwgIXRoaXMuZGlzcGF0Y2hCZWZvcmVDbG9zZUV2ZW50KCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBDbG9zZSBuZXN0ZWQgbWVudXMgZmlyc3RcbiAgICB0aGlzLl9uZXN0ZWRNZW51Py5fY2xvc2UoY2xvc2VBbGwpO1xuXG4gICAgaWYgKHRoaXMuX2lzTmVzdGVkKCkpIHtcbiAgICAgIGNvbnN0IHBhcmVudE1lbnUgPSB0aGlzLl9wYXJlbnRNZW51KCkhO1xuICAgICAgaWYgKGNsb3NlQWxsKSB7XG4gICAgICAgIHRoaXMuaW50ZXJuYWxzLnN0YXRlcy5hZGQoJ2Nsb3NlLWFsbCcpO1xuICAgICAgICBwYXJlbnRNZW51LmludGVybmFscy5zdGF0ZXMuYWRkKCdza2lwLWFuaW1hdGlvbicpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5pbnRlcm5hbHMuc3RhdGVzLmRlbGV0ZSgnY2xvc2UtYWxsJyk7XG4gICAgICAgIHBhcmVudE1lbnUuaW50ZXJuYWxzLnN0YXRlcy5kZWxldGUoJ3NraXAtYW5pbWF0aW9uJyk7XG4gICAgICB9XG4gICAgICBwYXJlbnRNZW51LmludGVybmFscy5zdGF0ZXMuZGVsZXRlKCduZXN0ZWQtY2hpbGQnKTtcbiAgICAgIHBhcmVudE1lbnUuX25lc3RlZE1lbnUgPSBudWxsO1xuICAgIH1cblxuICAgIHRoaXMuc3RhdGUgPSAnY2xvc2luZyc7XG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQ/LnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsICdmYWxzZScpO1xuXG4gICAgLy8gSWYgdGhlIGFuaW1hdGlvbiBkdXJhdGlvbiBpcyB6ZXJvLCB0aGUgYW5pbWF0aW9uZW5kIGV2ZW50IGlzIG5vdCBhbHdheXMgZmlyZWQgcmVsaWFibHkuXG4gICAgLy8gSW4gdGhpcyBjYXNlIHdlIGRpcmVjdGx5IHNldCB0aGUgYGNsb3NlZGAgc3RhdGUuXG4gICAgaWYgKHRoaXMuX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCkpIHtcbiAgICAgIHRoaXMuX2hhbmRsZUNsb3NpbmcoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9pc1plcm9BbmltYXRpb25EdXJhdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24odGhpcywgJy0tc2JiLW1lbnUtYW5pbWF0aW9uLWR1cmF0aW9uJyk7XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVPcGVuaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGUgPSAnb3BlbmVkJztcblxuICAgIGlmICghdGhpcy5faXNOZXN0ZWQoKSkge1xuICAgICAgdGhpcy5faW5lcnRDb250cm9sbGVyLmFjdGl2YXRlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX3VwZGF0ZU5lc3RlZEluZXJ0KCk7XG4gICAgfVxuICAgIHRoaXMuX2VzY2FwYWJsZU92ZXJsYXlDb250cm9sbGVyLmNvbm5lY3QoKTtcbiAgICB0aGlzLl9mb2N1c1RyYXBDb250cm9sbGVyLmZvY3VzSW5pdGlhbEVsZW1lbnQoKTtcbiAgICB0aGlzLl9mb2N1c1RyYXBDb250cm9sbGVyLmVuYWJsZWQgPSB0cnVlO1xuICAgIHRoaXMuX2F0dGFjaFdpbmRvd0V2ZW50cygpO1xuICAgIHRoaXMuZGlzcGF0Y2hPcGVuRXZlbnQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZUNsb3NpbmcoKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZSA9ICdjbG9zZWQnO1xuICAgIHRoaXMuaW50ZXJuYWxzLnN0YXRlcy5kZWxldGUoJ3NraXAtYW5pbWF0aW9uJyk7XG4gICAgdGhpcy5pbnRlcm5hbHMuc3RhdGVzLmRlbGV0ZSgnY2xvc2UtYWxsJyk7XG4gICAgdGhpcy5oaWRlUG9wb3Zlcj8uKCk7XG5cbiAgICB0aGlzLl9tZW51Py5maXJzdEVsZW1lbnRDaGlsZD8uc2Nyb2xsVG8oMCwgMCk7XG4gICAgaWYgKCF0aGlzLl9pc05lc3RlZCgpKSB7XG4gICAgICB0aGlzLl9pbmVydENvbnRyb2xsZXIuZGVhY3RpdmF0ZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl91cGRhdGVOZXN0ZWRJbmVydCgpO1xuICAgIH1cbiAgICAvLyBNYW51YWxseSBmb2N1cyBsYXN0IGZvY3VzZWQgZWxlbWVudFxuICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50Py5mb2N1cyh7XG4gICAgICAvLyBXaGVuIGluc2lkZSB0aGUgc2JiLWhlYWRlciwgd2UgcHJldmVudCB0aGUgc2Nyb2xsIHRvIGF2b2lkIHRoZSBzbmFwcGluZyB0byB0aGUgdG9wIG9mIHRoZSBwYWdlXG4gICAgICBwcmV2ZW50U2Nyb2xsOiBbJ3NiYi1oZWFkZXItYnV0dG9uJywgJ3NiYi1oZWFkZXItbGluayddLmluY2x1ZGVzKFxuICAgICAgICB0aGlzLl90cmlnZ2VyRWxlbWVudC5sb2NhbE5hbWUsXG4gICAgICApLFxuICAgIH0pO1xuICAgIHRoaXMuX2VzY2FwYWJsZU92ZXJsYXlDb250cm9sbGVyLmRpc2Nvbm5lY3QoKTtcbiAgICB0aGlzLmRpc3BhdGNoQ2xvc2VFdmVudCgpO1xuICAgIHRoaXMuX3dpbmRvd0V2ZW50c0NvbnRyb2xsZXI/LmFib3J0KCk7XG4gICAgdGhpcy5fZm9jdXNUcmFwQ29udHJvbGxlci5lbmFibGVkID0gZmFsc2U7XG5cbiAgICAvLyBTdGFydGluZyBmcm9tIGJyZWFrcG9pbnQgbGFyZ2UsIGVuYWJsZSBzY3JvbGxcbiAgICB0aGlzLl9zY3JvbGxIYW5kbGVyLmVuYWJsZVNjcm9sbCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlS2V5RG93bihldnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoIWlzQXJyb3dLZXlPclBhZ2VLZXlzUHJlc3NlZChldnQpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgY29uc3QgZW5hYmxlZEFjdGlvbnM6IEVsZW1lbnRbXSA9IEFycmF5LmZyb20oXG4gICAgICB0aGlzLnF1ZXJ5U2VsZWN0b3JBbGw8U2JiTWVudUJ1dHRvbkVsZW1lbnQgfCBTYmJNZW51TGlua0VsZW1lbnQ+KFxuICAgICAgICAnc2JiLW1lbnUtYnV0dG9uLCBzYmItbWVudS1saW5rJyxcbiAgICAgICksXG4gICAgKVxuICAgICAgLmNvbmNhdCh0aGlzLnNoYWRvd1Jvb3QhLnF1ZXJ5U2VsZWN0b3IoJ3NiYi1tZW51LWJ1dHRvbicpISlcbiAgICAgIC5maWx0ZXIoXG4gICAgICAgIChlbCkgPT4gKCFlbC5kaXNhYmxlZCB8fCBlbC5kaXNhYmxlZEludGVyYWN0aXZlKSAmJiBpbnRlcmFjdGl2aXR5Q2hlY2tlci5pc1Zpc2libGUoZWwpLFxuICAgICAgKTtcbiAgICBjb25zdCBjdXJyZW50ID0gZW5hYmxlZEFjdGlvbnMuZmluZEluZGV4KChlOiBFbGVtZW50KSA9PiBlID09PSBldnQudGFyZ2V0KTtcblxuICAgIGxldCBuZXh0SW5kZXg7XG4gICAgc3dpdGNoIChldnQua2V5KSB7XG4gICAgICBjYXNlICdBcnJvd1VwJzpcbiAgICAgIGNhc2UgJ0Fycm93RG93bic6XG4gICAgICAgIG5leHRJbmRleCA9IGdldE5leHRFbGVtZW50SW5kZXgoZXZ0LCBjdXJyZW50LCBlbmFibGVkQWN0aW9ucy5sZW5ndGgpO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnQXJyb3dMZWZ0JzpcbiAgICAgICAgaWYgKHRoaXMuX2lzTmVzdGVkKCkpIHtcbiAgICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ0Fycm93UmlnaHQnOlxuICAgICAgICBpZiAoKGV2dC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLm1hdGNoZXMoJzpzdGF0ZShzYmItbWVudS10cmlnZ2VyKScpKSB7XG4gICAgICAgICAgKGV2dC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLmNsaWNrKCk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ1BhZ2VVcCc6XG4gICAgICBjYXNlICdIb21lJzpcbiAgICAgICAgbmV4dEluZGV4ID0gMDtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ0VuZCc6XG4gICAgICBjYXNlICdQYWdlRG93bic6XG4gICAgICAgIG5leHRJbmRleCA9IGVuYWJsZWRBY3Rpb25zLmxlbmd0aCAtIDE7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIGlmIChuZXh0SW5kZXggIT09IHVuZGVmaW5lZCkge1xuICAgICAgKGVuYWJsZWRBY3Rpb25zW25leHRJbmRleF0gYXMgSFRNTEVsZW1lbnQpLmZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVtb3ZlcyB0cmlnZ2VyIGNsaWNrIGxpc3RlbmVyIG9uIHRyaWdnZXIgY2hhbmdlLlxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgY3JlYXRlUmVuZGVyUm9vdCgpOiBIVE1MRWxlbWVudCB8IERvY3VtZW50RnJhZ21lbnQge1xuICAgIGNvbnN0IHJlbmRlclJvb3QgPSBzdXBlci5jcmVhdGVSZW5kZXJSb290KCk7XG4gICAgLy8gRHVlIHRvIHRoZSBmYWN0IHRoYXQgbWVudSBjYW4gYm90aCBiZSBhIGxpc3QgYW5kIGp1c3QgYSBjb250YWluZXIsIHdlIG5lZWQgdG8gY2hlY2sgaXRzXG4gICAgLy8gc3RhdGUgYmVmb3JlIHRoZSBTYmJOYW1lZFNsb3RMaXN0TWl4aW4gaGFuZGxlcyB0aGUgc2xvdGNoYW5nZSBldmVudCwgaW4gb3JkZXIgdG8gYXZvaWRcbiAgICAvLyBpdCBpbnRlcnByZXRpbmcgdGhlIG5vbiBsaXN0IGNhc2UgYXMgYSBsaXN0LlxuICAgIHRoaXMuc2hhZG93Um9vdD8uYWRkRXZlbnRMaXN0ZW5lcignc2xvdGNoYW5nZScsICgpID0+IHRoaXMuX3N5bmNOZWdhdGl2ZSgpLCB7IGNhcHR1cmU6IHRydWUgfSk7XG4gICAgcmV0dXJuIHJlbmRlclJvb3Q7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgdGhpcy5wb3BvdmVyID0gJ21hbnVhbCc7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLmlkIHx8PSBgc2JiLW1lbnUtJHtuZXh0SWQrK31gO1xuICAgIGlmICh0aGlzLmhhc1VwZGF0ZWQpIHtcbiAgICAgIHRoaXMuX2NvbmZpZ3VyZVRyaWdnZXIoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgZGlzY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLl90cmlnZ2VyRWxlbWVudCA9IG51bGw7XG4gICAgdGhpcy5fdHJpZ2dlckFib3J0Q29udHJvbGxlcj8uYWJvcnQoKTtcbiAgICB0aGlzLl93aW5kb3dFdmVudHNDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgIHRoaXMuX3Njcm9sbEhhbmRsZXIuZW5hYmxlU2Nyb2xsKCk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgcmVxdWVzdFVwZGF0ZShcbiAgICBuYW1lPzogUHJvcGVydHlLZXksXG4gICAgb2xkVmFsdWU/OiB1bmtub3duLFxuICAgIG9wdGlvbnM/OiBQcm9wZXJ0eURlY2xhcmF0aW9uLFxuICApOiB2b2lkIHtcbiAgICBzdXBlci5yZXF1ZXN0VXBkYXRlKG5hbWUsIG9sZFZhbHVlLCBvcHRpb25zKTtcblxuICAgIGlmICghaXNTZXJ2ZXIgJiYgKCFuYW1lIHx8IG5hbWUgPT09ICd0cmlnZ2VyJykgJiYgdGhpcy5oYXNVcGRhdGVkKSB7XG4gICAgICB0aGlzLl9jb25maWd1cmVUcmlnZ2VyKCk7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2hlY2sgaWYgdGhlIHRyaWdnZXIgaXMgdmFsaWQgYW5kIGF0dGFjaCBjbGljayBldmVudCBsaXN0ZW5lcnMuXG4gIHByaXZhdGUgX2NvbmZpZ3VyZVRyaWdnZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudHJpZ2dlciA9PT0gdGhpcy5fdHJpZ2dlckVsZW1lbnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl90cmlnZ2VyQWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgIHJlbW92ZUFyaWFPdmVybGF5VHJpZ2dlckF0dHJpYnV0ZXModGhpcy5fdHJpZ2dlckVsZW1lbnQpO1xuICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50ID0gdGhpcy50cmlnZ2VyO1xuXG4gICAgaWYgKCF0aGlzLl90cmlnZ2VyRWxlbWVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHNldEFyaWFPdmVybGF5VHJpZ2dlckF0dHJpYnV0ZXModGhpcy5fdHJpZ2dlckVsZW1lbnQsICdtZW51JywgdGhpcy5pZCwgdGhpcy5zdGF0ZSk7XG4gICAgdGhpcy5fdHJpZ2dlckFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcbiAgICB0aGlzLl90cmlnZ2VyRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IHRoaXMub3BlbigpLCB7XG4gICAgICBzaWduYWw6IHRoaXMuX3RyaWdnZXJBYm9ydENvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pO1xuXG4gICAgLy8gQ29uc2lkZXIgdGhlIG1lbnUgYXMgbmVzdGVkIGlmIHRoZSB0cmlnZ2VyIGlzIGEgbWVudSBidXR0b24gb3IgbWVudSBsaW5rLlxuICAgIHRoaXMudG9nZ2xlU3RhdGUoXG4gICAgICAnbmVzdGVkJyxcbiAgICAgIFsnc2JiLW1lbnUtYnV0dG9uJywgJ3NiYi1tZW51LWxpbmsnXS5pbmNsdWRlcyh0aGlzLl90cmlnZ2VyRWxlbWVudC5sb2NhbE5hbWUpLFxuICAgICk7XG4gICAgybVzdGF0ZUNvbnRyb2xsZXIodGhpcy5fdHJpZ2dlckVsZW1lbnQpLmFkZCgnc2JiLW1lbnUtdHJpZ2dlcicpO1xuICB9XG5cbiAgcHJpdmF0ZSBfYXR0YWNoV2luZG93RXZlbnRzKCk6IHZvaWQge1xuICAgIHRoaXMuX3dpbmRvd0V2ZW50c0NvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCk7XG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgKCkgPT4gdGhpcy5fc2V0TWVudVBvc2l0aW9uKCksIHtcbiAgICAgIHBhc3NpdmU6IHRydWUsXG4gICAgICBzaWduYWw6IHRoaXMuX3dpbmRvd0V2ZW50c0NvbnRyb2xsZXIuc2lnbmFsLFxuICAgICAgLy8gV2l0aG91dCBjYXB0dXJlLCBvdGhlciBzY3JvbGwgY29udGV4dHMgd291bGQgbm90IGJ1YmJsZSB0byB0aGlzIGV2ZW50IGxpc3RlbmVyLlxuICAgICAgLy8gQ2FwdHVyZSBhbGxvd3MgdXMgdG8gcmVhY3QgdG8gYWxsIHNjcm9sbCBjb250ZXh0cyBpbiB0aGlzIERPTS5cbiAgICAgIGNhcHR1cmU6IHRydWUsXG4gICAgfSk7XG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsICgpID0+IHRoaXMuX3NldE1lbnVQb3NpdGlvbigpLCB7XG4gICAgICBwYXNzaXZlOiB0cnVlLFxuICAgICAgc2lnbmFsOiB0aGlzLl93aW5kb3dFdmVudHNDb250cm9sbGVyLnNpZ25hbCxcbiAgICB9KTtcblxuICAgIC8vIE9ubHkgdGhlIG91dGVybW9zdCBtZW51IG5lZWRzIHRvIGxpc3RlbiB0byB0aGUgYmFja2Ryb3AgY2xpY2tzXG4gICAgaWYgKCF0aGlzLl9pc05lc3RlZCgpKSB7XG4gICAgICAvLyBDbG9zZSBtZW51IG9uIGJhY2tkcm9wIGNsaWNrXG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncG9pbnRlcmRvd24nLCB0aGlzLl9wb2ludGVyRG93bkxpc3RlbmVyLCB7XG4gICAgICAgIHNpZ25hbDogdGhpcy5fd2luZG93RXZlbnRzQ29udHJvbGxlci5zaWduYWwsXG4gICAgICB9KTtcbiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdwb2ludGVydXAnLCB0aGlzLl9jbG9zZU9uQmFja2Ryb3BDbGljaywge1xuICAgICAgICBzaWduYWw6IHRoaXMuX3dpbmRvd0V2ZW50c0NvbnRyb2xsZXIuc2lnbmFsLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2xvc2UgbWVudSBhdCBhbnkgY2xpY2sgb24gYW4gaW50ZXJhY3RpdmUgZWxlbWVudCBpbnNpZGUgdGhlIDxzYmItbWVudT4gdGhhdCBidWJibGVzIHRvIHRoZSBjb250YWluZXIuXG4gIHByaXZhdGUgX2ludGVyYWN0aXZlRWxlbWVudENsaWNrKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcblxuICAgIGlmIChcbiAgICAgIElOVEVSQUNUSVZFX0VMRU1FTlRTLmluY2x1ZGVzKHRhcmdldC5ub2RlTmFtZSkgJiZcbiAgICAgICF0YXJnZXQuaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpICYmXG4gICAgICAhdGFyZ2V0Lm1hdGNoZXMoJzpzdGF0ZShzYmItbWVudS10cmlnZ2VyKScpICYmXG4gICAgICB0YXJnZXQuaWQgIT09ICdzYmItbWVudV9fYmFjay1idXR0b24nXG4gICAgKSB7XG4gICAgICB0aGlzLmNsb3NlQWxsKCk7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2hlY2sgaWYgdGhlIHBvaW50ZXJkb3duIGV2ZW50IHRhcmdldCBpcyB0cmlnZ2VyZWQgb24gdGhlIG1lbnUuXG4gIHByaXZhdGUgX3BvaW50ZXJEb3duTGlzdGVuZXIgPSAoZXZlbnQ6IFBvaW50ZXJFdmVudCk6IHZvaWQgPT4ge1xuICAgIGNvbnN0IG1lbnUgPSAoZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5jbG9zZXN0KCdzYmItbWVudScpO1xuXG4gICAgLy8gVGhlIHBvaW50ZXIgZG93biBpcyBvbiB0aGUgbWVudSBvciBvbmUgb2YgaXRzIG5lc3RlZCBtZW51cy5cbiAgICB0aGlzLl9pc1BvaW50ZXJEb3duRXZlbnRPbk1lbnUgPVxuICAgICAgaXNFdmVudE9uRWxlbWVudCh0aGlzLl9tZW51LCBldmVudCkgfHwgdGhpcy5fbmVzdGVkTWVudXMoKS5zb21lKChlbCkgPT4gbWVudSA9PT0gZWwpO1xuICB9O1xuXG4gIC8vIENsb3NlIG1lbnUgb24gYmFja2Ryb3AgY2xpY2suXG4gIHByaXZhdGUgX2Nsb3NlT25CYWNrZHJvcENsaWNrID0gKGV2ZW50OiBQb2ludGVyRXZlbnQpOiB2b2lkID0+IHtcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICAvLyBUaGUgYmFja2Ryb3AgaXMgb25seSBsaXN0ZW5lZCBvbiB0aGUgbWFpbiBtZW51IChvdXRlcm1vc3QgbWVudSkuXG4gICAgLy8gVG8gY2xvc2UuXG4gICAgLy8gLSBUaGUgcG9pbnRlciBkb3duIGFuZCB1cCBuZWVkIHRvIGJlIG91dHNpZGUgdGhlIG1lbnUuXG4gICAgLy8gLSBUaGUgdGFyZ2V0IHNob3VsZCBiZSBub3Qgb24gYSBuZXN0ZWQgbWVudVxuICAgIGlmIChcbiAgICAgICF0aGlzLl9pc1BvaW50ZXJEb3duRXZlbnRPbk1lbnUgJiZcbiAgICAgICFpc0V2ZW50T25FbGVtZW50KHRoaXMuX21lbnUsIGV2ZW50KSAmJlxuICAgICAgIXRoaXMuX25lc3RlZE1lbnVzKCkuc29tZSgoZWwpID0+IGVsID09PSB0YXJnZXQpXG4gICAgKSB7XG4gICAgICB0aGlzLmNsb3NlQWxsKCk7XG4gICAgfVxuICB9O1xuXG4gIC8qKiBDb252ZXJ0cyB0aGUgbGlua2VkIGxpc3QgaW50byBhbiBhcnJheSBvZiBTYmJNZW51RWxlbWVudC4gKi9cbiAgcHJpdmF0ZSBfbmVzdGVkTWVudXMoKTogU2JiTWVudUVsZW1lbnRbXSB7XG4gICAgY29uc3QgbWVudXM6IFNiYk1lbnVFbGVtZW50W10gPSBbXTtcbiAgICBsZXQgY3VycmVudCA9IHRoaXMuX25lc3RlZE1lbnU7XG5cbiAgICB3aGlsZSAoY3VycmVudCkge1xuICAgICAgbWVudXMucHVzaChjdXJyZW50KTtcbiAgICAgIGN1cnJlbnQgPSBjdXJyZW50Ll9uZXN0ZWRNZW51O1xuICAgIH1cblxuICAgIHJldHVybiBtZW51cztcbiAgfVxuXG4gIHByaXZhdGUgX3BhcmVudE1lbnUoKTogU2JiTWVudUVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fdHJpZ2dlckVsZW1lbnQ/LmNsb3Nlc3QoJ3NiYi1tZW51JykgPz8gbnVsbDtcbiAgfVxuXG4gIC8qKiBUaGUgb3V0ZXJtb3N0IG1lbnUuICovXG4gIHByaXZhdGUgX21haW5NZW51KCk6IFNiYk1lbnVFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5faXNOZXN0ZWQoKSA/ICh0aGlzLl9wYXJlbnRNZW51KCk/Ll9tYWluTWVudSgpID8/IHRoaXMpIDogdGhpcztcbiAgfVxuXG4gIHByaXZhdGUgX2lzTmVzdGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuX3BhcmVudE1lbnUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZU5lc3RlZEluZXJ0KCk6IHZvaWQge1xuICAgIHRoaXMuX2luZXJ0Q29udHJvbGxlci5yZXN0b3JlQWxsRXhlbXB0ZWQoKTtcbiAgICB0aGlzLl9tYWluTWVudSgpXG4gICAgICAuX25lc3RlZE1lbnVzKClcbiAgICAgIC5mb3JFYWNoKChtZW51KSA9PiB0aGlzLl9pbmVydENvbnRyb2xsZXIuZXhlbXB0KG1lbnUpKTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmIG5lc3RlZCBtZW51IHNob3VsZCBiZSBjbG9zZWQuXG4gIHByaXZhdGUgX2hhbmRsZU1vdXNlT3ZlcihldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IGVsZW1lbnQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgY29uc3QgaXNNb2JpbGUgPSB0aGlzLl9pc01vYmlsZSgpO1xuXG4gICAgLy8gQWxsIG5lc3RlZCBtZW51cyBzaG91bGQgY2xvc2UgaW4gZGVza3RvcCBtb2RlIGlmIHRoZSBjdXJzb3IgbGFuZGVkIG9uXG4gICAgLy8gYW55dGhpbmcgb3RoZXIgdGhhbiB0aGUgY29udGFpbmVyLCB0aGUgY29udGFpbmVyJ3Mgc2Nyb2xsYmFyIG9yIHRoZSB0cmlnZ2VyIGl0c2VsZlxuICAgIGlmIChcbiAgICAgICFpc01vYmlsZSAmJlxuICAgICAgdGhpcy5fbmVzdGVkTWVudSAmJlxuICAgICAgIWVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdzYmItbWVudV9fY29udGVudCcpICYmXG4gICAgICAhKGVsZW1lbnQuZ2V0QXR0cmlidXRlKCdhcmlhLWV4cGFuZGVkJykgPT09ICd0cnVlJylcbiAgICApIHtcbiAgICAgIHRoaXMuX25lc3RlZE1lbnUuY2xvc2UoKTtcbiAgICB9XG5cbiAgICBpZiAoZWxlbWVudC5tYXRjaGVzKCc6c3RhdGUoc2JiLW1lbnUtdHJpZ2dlciknKSAmJiAhaXNNb2JpbGUpIHtcbiAgICAgIGVsZW1lbnQuY2xpY2soKTtcbiAgICB9XG4gIH1cblxuICAvLyBTZXQgbWVudSBwb3NpdGlvbiAoeCwgeSkgdG8gJzAnIG9uY2UgdGhlIG1lbnUgaXMgY2xvc2VkIGFuZCB0aGUgdHJhbnNpdGlvbiBlbmRlZCB0byBwcmV2ZW50IHRoZVxuICAvLyB2aWV3cG9ydCBmcm9tIG92ZXJmbG93aW5nLiBBbmQgc2V0IHRoZSBmb2N1cyB0byB0aGUgZmlyc3QgZm9jdXNhYmxlIGVsZW1lbnQgb25jZSB0aGUgbWVudSBpcyBvcGVuLlxuICAvLyBJbiByYXJlIGNhc2VzIGl0IGNhbiBiZSB0aGF0IHRoZSBhbmltYXRpb25FbmQgZXZlbnQgaXMgdHJpZ2dlcmVkIHR3aWNlLlxuICAvLyBUbyBhdm9pZCBlbnRlcmluZyBhIGNvcnJ1cHQgc3RhdGUsIGV4aXQgd2hlbiBzdGF0ZSBpcyBub3QgZXhwZWN0ZWQuXG4gIHByaXZhdGUgX29uTWVudUFuaW1hdGlvbkVuZChldmVudDogQW5pbWF0aW9uRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICAoZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ29wZW4nIHx8IGV2ZW50LmFuaW1hdGlvbk5hbWUgPT09ICdvcGVuLXNpZGV3YXlzJykgJiZcbiAgICAgIHRoaXMuc3RhdGUgPT09ICdvcGVuaW5nJ1xuICAgICkge1xuICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgIH0gZWxzZSBpZiAoXG4gICAgICAoZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ2Nsb3NlJyB8fCBldmVudC5hbmltYXRpb25OYW1lID09PSAnY2xvc2Utc2lkZXdheXMnKSAmJlxuICAgICAgdGhpcy5zdGF0ZSA9PT0gJ2Nsb3NpbmcnXG4gICAgKSB7XG4gICAgICB0aGlzLl9oYW5kbGVDbG9zaW5nKCk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2V0IG1lbnUgcG9zaXRpb24gYW5kIG1heCBoZWlnaHQgaWYgdGhlIGJyZWFrcG9pbnQgaXMgbGFyZ2UtdWx0cmEuXG4gIHByaXZhdGUgX3NldE1lbnVQb3NpdGlvbigpOiB2b2lkIHtcbiAgICAvLyBTdGFydGluZyBmcm9tIGJyZWFrcG9pbnQgbGFyZ2VcbiAgICBpZiAodGhpcy5faXNNb2JpbGUoKSB8fCAhdGhpcy5fbWVudSB8fCAhdGhpcy5fdHJpZ2dlckVsZW1lbnQgfHwgdGhpcy5zdGF0ZSA9PT0gJ2Nsb3NpbmcnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgbWVudVBvc2l0aW9uID0gIXRoaXMuX2lzTmVzdGVkKClcbiAgICAgID8gZ2V0RWxlbWVudFBvc2l0aW9uKFxuICAgICAgICAgIHRoaXMuc2hhZG93Um9vdCEucXVlcnlTZWxlY3RvcignLnNiYi1tZW51X19jb250ZW50JykhLFxuICAgICAgICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50LFxuICAgICAgICAgIHRoaXMuc2hhZG93Um9vdCEucXVlcnlTZWxlY3RvcignLnNiYi1tZW51X19jb250YWluZXInKSEsXG4gICAgICAgICAge1xuICAgICAgICAgICAgdmVydGljYWxPZmZzZXQ6IE1FTlVfT0ZGU0VULFxuICAgICAgICAgIH0sXG4gICAgICAgIClcbiAgICAgIDogZ2V0RWxlbWVudFBvc2l0aW9uSG9yaXpvbnRhbChcbiAgICAgICAgICB0aGlzLnNoYWRvd1Jvb3QhLnF1ZXJ5U2VsZWN0b3IoJy5zYmItbWVudV9fY29udGVudCcpISxcbiAgICAgICAgICB0aGlzLl90cmlnZ2VyRWxlbWVudCxcbiAgICAgICAgICB0aGlzLnNoYWRvd1Jvb3QhLnF1ZXJ5U2VsZWN0b3IoJy5zYmItbWVudV9fY29udGFpbmVyJykhLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGhvcml6b250YWxPZmZzZXQ6IE1FTlVfT0ZGU0VULFxuICAgICAgICAgICAgdmVydGljYWxPZmZzZXQ6IE5FU1RFRF9NRU5VX09GRlNFVCxcbiAgICAgICAgICAgIGNvbnRlbnRTZWxlY3RvcjogJy5zYmItbWVudV9fY29udGVudCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgKTtcblxuICAgIHRoaXMuc3R5bGUuc2V0UHJvcGVydHkoJy0tc2JiLW1lbnUtcG9zaXRpb24teCcsIGAke21lbnVQb3NpdGlvbi5sZWZ0fXB4YCk7XG4gICAgdGhpcy5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1zYmItbWVudS1wb3NpdGlvbi15JywgYCR7bWVudVBvc2l0aW9uLnRvcH1weGApO1xuICAgIHRoaXMuc3R5bGUuc2V0UHJvcGVydHkoJy0tc2JiLW1lbnUtbWF4LWhlaWdodCcsIG1lbnVQb3NpdGlvbi5tYXhIZWlnaHQpO1xuICB9XG5cbiAgcHJpdmF0ZSBfc3luY05lZ2F0aXZlKCk6IHZvaWQge1xuICAgIC8vIExpbmtzIGFuZCBidXR0b25zIGFyZSB0aGUgbW9zdCBleHBlY3RlZCBjb250ZW50cyB3aGljaCBoYXZlIGEgbmVnYXRpdmUgcHJvcGVydHlcbiAgICB0aGlzLnF1ZXJ5U2VsZWN0b3JBbGwoJzpzdGF0ZShzYmItbGluayksIDpzdGF0ZShzYmItYnV0dG9uKScpPy5mb3JFYWNoKChlbDogRWxlbWVudCkgPT4ge1xuICAgICAgY3VzdG9tRWxlbWVudHMudXBncmFkZShlbCk7XG4gICAgICAoZWwgYXMgRWxlbWVudCAmIFNiYk5lZ2F0aXZlTWl4aW5UeXBlKS5uZWdhdGl2ZSA9ICF0aGlzLl9kYXJrTW9kZUNvbnRyb2xsZXIubWF0Y2hlcygpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNNb2JpbGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX21lZGlhTWF0Y2hlci5tYXRjaGVzKHRoaXMuX21vYmlsZUJyZWFrcG9pbnQpID8/IHRydWU7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItbWVudV9fY29udGFpbmVyXCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBAYW5pbWF0aW9uZW5kPSR7dGhpcy5fb25NZW51QW5pbWF0aW9uRW5kfVxuICAgICAgICAgIEBtb3VzZW92ZXI9JHsoZTogTW91c2VFdmVudCkgPT4gdGhpcy5faGFuZGxlTW91c2VPdmVyKGUpfVxuICAgICAgICAgIGNsYXNzPVwic2JiLW1lbnVcIlxuICAgICAgICAgICR7cmVmKChlbD86IEVsZW1lbnQpID0+ICh0aGlzLl9tZW51ID0gZWwgYXMgSFRNTERpdkVsZW1lbnQpKX1cbiAgICAgICAgPlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIEBjbGljaz0keyhldmVudDogRXZlbnQpID0+IHRoaXMuX2ludGVyYWN0aXZlRWxlbWVudENsaWNrKGV2ZW50KX1cbiAgICAgICAgICAgIEBzY3JvbGw9JHsoZTogRXZlbnQpID0+IGZvcndhcmRFdmVudChlLCBkb2N1bWVudCl9XG4gICAgICAgICAgICBjbGFzcz1cInNiYi1tZW51X19jb250ZW50XCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgICAgICA8c2JiLWRpdmlkZXI+PC9zYmItZGl2aWRlcj5cbiAgICAgICAgICAgIDxzYmItbWVudS1idXR0b25cbiAgICAgICAgICAgICAgaWQ9XCJzYmItbWVudV9fYmFjay1idXR0b25cIlxuICAgICAgICAgICAgICBAY2xpY2s9JHsoKSA9PiB0aGlzLmNsb3NlKCl9XG4gICAgICAgICAgICAgIGljb24tbmFtZT1cImNoZXZyb24tc21hbGwtbGVmdC1zbWFsbFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICR7aTE4bkdvQmFja1t0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX1cbiAgICAgICAgICAgIDwvc2JiLW1lbnUtYnV0dG9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1tZW51JzogU2JiTWVudUVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUM4Q0EscUJBQXFCLFFBQVE7QUFFN0IsSUFBTSxjQUFjO0FBQ3BCLElBQU0scUJBQXFCO0FBQzNCLElBQU0sdUJBQXVCO0NBQzNCO0NBQ0E7Q0FDQTtDQUNBO0NBQ0E7Q0FDQTtDQUNBO0NBQ0E7Q0FDQTtDQUNBO0NBQ0Q7QUFFRCxJQUFJLFNBQVM7Ozs7Ozs7OztJQVVBLHdCQUFjO21CQUFTOzs7O2NBQXZCLHVCQUF1QixZQUF1Qjs7OzBCQVV4RCxhQUFhLEVBQ2IsVUFBVSxDQUFBO0FBQ1gsZ0JBQUEsTUFBQSxNQUFBLHFCQUFBO0lBQUEsTUFBQTtJQUFBLE1BQUE7SUFBQSxRQUFBO0lBQUEsU0FBQTtJQUFBLFFBQUE7S0FBQSxNQUFBLFFBQUEsYUFBQTtLQUFBLE1BQUEsUUFBQSxJQUFnQjtLQUFPLE1BQUEsS0FBQSxVQUFBO0FBQUEsVUFBUCxVQUFPOztLQUFBO0lBQUEsVUFBQTtJQUFBLEVBQUEsdUJBQUEsMkJBQUE7Ozs7Ozs7OztBQVhTLFFBQUEsY0FBc0I7OztBQUMvQixRQUFBLFNBQXlCLENBQUMsaUJBQWlCLGFBQU07OztBQUN4QyxRQUFB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
638
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQtRHQ2aWxIWDQuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL21lbnUvbWVudS9tZW51LnNjc3M/bGl0JmlubGluZSIsIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9tZW51L21lbnUvbWVudS5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiQHVzZSAnLi4vLi4vY29yZS9zdHlsZXMnIGFzIHNiYjtcblxuOmhvc3Qge1xuICAvLyBXZSB1c2UgdGhpcyBydWxlIHRvIG1ha2UgdGhlIGlubmVyIGNvbnRhaW5lciBlbGVtZW50IHRvIGFwcGVhciBhcyBpZiBpdCB3ZXJlIGFcbiAgLy8gZGlyZWN0IGNoaWxkIG9mIHRoZSBob3N0J3MgcGFyZW50IGVsZW1lbnQuIFRoaXMgaXMgdXNlZnVsIGJlY2F1c2UgdGhlIGhvc3RcbiAgLy8gc2hvdWxkIGJlIGlnbm9yZWQgd2hlbiB1c2luZyBDU1MgZ3JpZCBvciBzaW1pbGFyIGxheW91dCB0ZWNobmlxdWVzLlxuICBkaXNwbGF5OiBjb250ZW50cztcblxuICAtLXNiYi1tZW51LXBvc2l0aW9uLXg6IDA7XG4gIC0tc2JiLW1lbnUtcG9zaXRpb24teTogMDtcbiAgLS1zYmItbWVudS1hbmltYXRpb24tZHVyYXRpb246IHZhcihcbiAgICAtLXNiYi1kaXNhYmxlLWFuaW1hdGlvbi1kdXJhdGlvbixcbiAgICB2YXIoLS1zYmItYW5pbWF0aW9uLWR1cmF0aW9uLTZ4KVxuICApO1xuICAtLXNiYi1tZW51LWFuaW1hdGlvbi1lYXNpbmc6IGVhc2U7XG4gIC0tc2JiLW1lbnUtdHJhbnNmb3JtLXk6IDEwMCU7XG4gIC0tc2JiLW1lbnUtdHJhbnNmb3JtLXg6IDAlO1xuICAtLXNiYi1tZW51LW1heC13aWR0aDogMTAwJTtcbiAgLS1zYmItbWVudS1taW4td2lkdGg6IDEwMCU7XG4gIC0tc2JiLW1lbnUtaW5zZXQ6IDAgYXV0byBhdXRvIDA7XG4gIC0tc2JiLW1lbnUtY29udGFpbmVyLWhlaWdodDogMTAwZHZoO1xuXG4gIC8vIDg1dmggaXMgbm90IGFuIGV4YWN0IHZhbHVlIGJ1dCBsb29rcyBvcHRpbWl6ZWQgZm9yIG1vYmlsZSB2aWV3LlxuICAtLXNiYi1tZW51LW1heC1oZWlnaHQ6IGNhbGMoODV2aCAtIHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTh4KSk7XG4gIC0tc2JiLW1lbnUtbWluLWhlaWdodDogI3tzYmIucHgtdG8tcmVtLWJ1aWxkKDQ4LjUpfTtcbiAgLS1zYmItbWVudS1ib3JkZXItcmFkaXVzOiB2YXIoLS1zYmItYm9yZGVyLXJhZGl1cy00eCk7XG4gIC0tc2JiLW1lbnUtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtLXNiYi1tZW51LWJhY2tkcm9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS1zYmItbWVudS1jb2xvcjogdmFyKC0tc2JiLWNvbG9yLTItaW52ZXJ0ZWQpO1xuICAtLXNiYi1tZW51LWJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTEtaW52ZXJ0ZWQpO1xuICAtLXNiYi1mb2N1cy1vdXRsaW5lLWNvbG9yOiB2YXIoLS1zYmItZm9jdXMtb3V0bGluZS1jb2xvci1kYXJrKTtcblxuICBAaW5jbHVkZSBzYmIuc2Nyb2xsYmFyLXZhcmlhYmxlcygkbmVnYXRpdmU6IHRydWUpO1xuXG4gIEBpbmNsdWRlIHNiYi5tcSgkZnJvbTogbGFyZ2UpIHtcbiAgICAtLXNiYi1tZW51LXRyYW5zZm9ybS15OiB2YXIoLS1zYmItc3BhY2luZy1maXhlZC0yeCk7XG4gICAgLS1zYmItbWVudS1tYXgtd2lkdGg6ICN7c2JiLnB4LXRvLXJlbS1idWlsZCgzMjApfTtcbiAgICAtLXNiYi1tZW51LW1pbi13aWR0aDogI3tzYmIucHgtdG8tcmVtLWJ1aWxkKDE4MCl9O1xuICAgIC0tc2JiLW1lbnUtYmFjay1idXR0b24tZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG46aG9zdCg6aXMoOnN0YXRlKHN0YXRlLW9wZW5lZCksIDpzdGF0ZShzdGF0ZS1vcGVuaW5nKSkpIHtcbiAgLS1zYmItbWVudS12aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAtLXNiYi1tZW51LWJhY2tkcm9wLWNvbG9yOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tc2JiLWNvbG9yLWJsYWNrKSAyMCUsIHRyYW5zcGFyZW50KTtcblxuICBAaW5jbHVkZSBzYmIubXEoJGZyb206IGxhcmdlKSB7XG4gICAgLS1zYmItbWVudS1iYWNrZHJvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuOmhvc3QoOm5vdCg6c3RhdGUobmVzdGVkKSkpIHtcbiAgLS1zYmItbWVudS1iYWNrLWJ1dHRvbi1kaXNwbGF5OiBub25lO1xufVxuXG46aG9zdCg6bm90KDpzdGF0ZShzdGF0ZS1jbG9zZWQpKSkge1xuICAtLXNiYi1tZW51LWluc2V0OiAwO1xufVxuXG46aG9zdCg6c3RhdGUoZGFyaykpIHtcbiAgLS1zYmItZm9jdXMtb3V0bGluZS1jb2xvcjogdmFyKC0tc2JiLWZvY3VzLW91dGxpbmUtY29sb3ItZGVmYXVsdCk7XG5cbiAgLy8gV2UgaGF2ZSB0byBlbnN1cmUgdGhhdCB0aGUgc2Nyb2xsYmFyIGlzIHZpc2libGUgaW4gZGFyayBtb2RlIHdpdGggbm9uLWRhcmsgbW9kZSB2YWx1ZXMuXG4gIC0tc2JiLXNjcm9sbGJhci1jb2xvcjogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLXNiYi1jb2xvci1ibGFjaykgMzAlLCB0cmFuc3BhcmVudCk7XG4gIC0tc2JiLXNjcm9sbGJhci1jb2xvci1ob3ZlcjogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLXNiYi1jb2xvci1ibGFjaykgNjAlLCB0cmFuc3BhcmVudCk7XG59XG5cbkBpbmNsdWRlIHNiYi5tcSgkdG86IGxhcmdlKSB7XG4gIDpob3N0KDpzdGF0ZShza2lwLWFuaW1hdGlvbikpIHtcbiAgICAtLXNiYi1tZW51LWFuaW1hdGlvbi1kdXJhdGlvbjogMG1zO1xuICB9XG5cbiAgOmhvc3QoOnN0YXRlKG5lc3RlZC1jaGlsZCkpIHtcbiAgICAtLXNiYi1tZW51LXRyYW5zZm9ybS14OiAtMTAwJTtcbiAgfVxuXG4gIDpob3N0KDpzdGF0ZShuZXN0ZWQpOmlzKDpzdGF0ZShzdGF0ZS1vcGVuaW5nKSwgOnN0YXRlKHN0YXRlLW9wZW5lZCksIDpzdGF0ZShzdGF0ZS1jbG9zaW5nKSkpIHtcbiAgICAtLXNiYi1tZW51LW9wZW4tYW5pbWF0aW9uLW5hbWU6IG9wZW4tc2lkZXdheXM7XG4gIH1cblxuICA6aG9zdCg6c3RhdGUoc3RhdGUtY2xvc2luZyk6c3RhdGUobmVzdGVkKTpub3QoOnN0YXRlKGNsb3NlLWFsbCkpKSB7XG4gICAgLS1zYmItbWVudS1jbG9zZS1hbmltYXRpb24tbmFtZTogY2xvc2Utc2lkZXdheXM7XG4gIH1cbn1cblxuOjpzbG90dGVkKDpub3Qoc2JiLW1lbnUtYnV0dG9uLCBzYmItbWVudS1saW5rLCBzYmItZGl2aWRlcikpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zYmItc3BhY2luZy1maXhlZC01eCk7XG59XG5cbnNiYi1kaXZpZGVyLFxuOjpzbG90dGVkKHNiYi1kaXZpZGVyKSB7XG4gIC0tc2JiLWRpdmlkZXItY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTQtaW52ZXJ0ZWQpO1xuXG4gIG1hcmdpbi1ibG9jazogdmFyKC0tc2JiLXNwYWNpbmctZml4ZWQtMngpO1xufVxuXG5zYmItZGl2aWRlcixcbiNzYmItbWVudV9fYmFjay1idXR0b24ge1xuICBkaXNwbGF5OiB2YXIoLS1zYmItbWVudS1iYWNrLWJ1dHRvbi1kaXNwbGF5LCBibG9jayk7XG59XG5cbi5zYmItbWVudV9fY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgaW5zZXQ6IHZhcigtLXNiYi1tZW51LWluc2V0KTtcbiAgaGVpZ2h0OiB2YXIoLS1zYmItbWVudS1jb250YWluZXItaGVpZ2h0KTtcbiAgei1pbmRleDogdmFyKC0tc2JiLW1lbnUtei1pbmRleCwgdmFyKC0tc2JiLW92ZXJsYXktZGVmYXVsdC16LWluZGV4KSk7XG5cbiAgLy8gTWVudSBiYWNrZHJvcCAob25seSB2aXNpYmxlIG9uIG1vYmlsZSlcbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICB2aXNpYmlsaXR5OiB2YXIoLS1zYmItbWVudS12aXNpYmlsaXR5KTtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBpbnNldDogdmFyKC0tc2JiLW1lbnUtaW5zZXQpO1xuICAgIGhlaWdodDogdmFyKC0tc2JiLW1lbnUtY29udGFpbmVyLWhlaWdodCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLW1lbnUtYmFja2Ryb3AtY29sb3IpO1xuICAgIHRyYW5zaXRpb246IHtcbiAgICAgIGR1cmF0aW9uOiB2YXIoLS1zYmItbWVudS1hbmltYXRpb24tZHVyYXRpb24pO1xuICAgICAgdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zYmItbWVudS1hbmltYXRpb24tZWFzaW5nKTtcbiAgICAgIHByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yLCB2aXNpYmlsaXR5O1xuICAgIH1cblxuICAgIC8vIEhpZGUgdGhlIGJhY2tkcm9wIHdoZW4gaW4gbmVzdGVkIHN0YXRlXG4gICAgOmhvc3QoOnN0YXRlKG5lc3RlZCkpICYge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLnNiYi1tZW51IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG1heC13aWR0aDogdmFyKC0tc2JiLW1lbnUtbWF4LXdpZHRoKTtcbiAgbWluLXdpZHRoOiB2YXIoLS1zYmItbWVudS1taW4td2lkdGgpO1xuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldC1pbmxpbmUtc3RhcnQ6IDA7XG4gIGluc2V0LWJsb2NrLXN0YXJ0OiB1bnNldDtcbiAgaW5zZXQtYmxvY2stZW5kOiAwO1xuICBpbnNldC1pbmxpbmUtZW5kOiB1bnNldDtcbiAgY29sb3I6IHZhcigtLXNiYi1tZW51LWNvbG9yKTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1zYmItbWVudS1ib3JkZXItcmFkaXVzKSB2YXIoLS1zYmItbWVudS1ib3JkZXItcmFkaXVzKSAwIDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1tZW51LWJhY2tncm91bmQtY29sb3IpO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2xhdGU6IHZhcigtLXNiYi1tZW51LXRyYW5zZm9ybS14KSAwO1xuXG4gIC8vIFVzZWQgd2hlbiBuYXZpZ2F0aW5nIGJhY2sgZnJvbSBuZXN0ZWQgbWVudSBpbiBtb2JpbGUgdmlld1xuICB0cmFuc2l0aW9uOiB0cmFuc2xhdGUgdmFyKC0tc2JiLW1lbnUtYW5pbWF0aW9uLWR1cmF0aW9uKTtcblxuICA6aG9zdCg6aXMoOnN0YXRlKHN0YXRlLW9wZW5pbmcpLCA6c3RhdGUoc3RhdGUtb3BlbmVkKSwgOnN0YXRlKHN0YXRlLWNsb3NpbmcpKSkgJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3BhY2l0eTogMTtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuXG4gICAgYW5pbWF0aW9uOiB7XG4gICAgICBuYW1lOiB2YXIoLS1zYmItbWVudS1vcGVuLWFuaW1hdGlvbi1uYW1lLCBvcGVuKTtcbiAgICAgIGR1cmF0aW9uOiB2YXIoLS1zYmItbWVudS1hbmltYXRpb24tZHVyYXRpb24pO1xuICAgICAgdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zYmItbWVudS1hbmltYXRpb24tZWFzaW5nKTtcbiAgICB9XG4gIH1cblxuICA6aG9zdCg6c3RhdGUoc3RhdGUtY2xvc2luZykpICYge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGFuaW1hdGlvbi1uYW1lOiB2YXIoLS1zYmItbWVudS1jbG9zZS1hbmltYXRpb24tbmFtZSwgY2xvc2UpO1xuICB9XG5cbiAgQGluY2x1ZGUgc2JiLmlmLWZvcmNlZC1jb2xvcnMge1xuICAgIG91dGxpbmU6IHZhcigtLXNiYi1ib3JkZXItd2lkdGgtMXgpIHNvbGlkIENhbnZhc1RleHQ7XG4gIH1cblxuICBAaW5jbHVkZSBzYmIubXEoJGZyb206IGxhcmdlKSB7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogdW5zZXQ7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogdW5zZXQ7XG4gICAgbWF4LWhlaWdodDogZml0LWNvbnRlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tc2JiLW1lbnUtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICA6aG9zdCg6bm90KDpzdGF0ZShzdGF0ZS1jbG9zZWQpKSkgJiB7XG4gICAgICB0b3A6IHZhcigtLXNiYi1tZW51LXBvc2l0aW9uLXkpO1xuICAgICAgbGVmdDogdmFyKC0tc2JiLW1lbnUtcG9zaXRpb24teCk7XG4gICAgICBtYXgtaGVpZ2h0OiB2YXIoLS1zYmItbWVudS1tYXgtaGVpZ2h0KTtcbiAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLXNiYi1tZW51LW1pbi1oZWlnaHQpO1xuICAgIH1cbiAgfVxufVxuXG4uc2JiLW1lbnVfX2NvbnRlbnQge1xuICBAaW5jbHVkZSBzYmIuc2Nyb2xsYmFyLXJ1bGVzO1xuXG4gIG1heC1oZWlnaHQ6IHZhcigtLXNiYi1tZW51LW1heC1oZWlnaHQpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zYmItc3BhY2luZy1maXhlZC0xeCk7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBvdXRsaW5lOiBub25lO1xuXG4gIC8vIE1hcmdpbiBib3R0b20gaW4gbW9iaWxlIHZhcmlhbnRcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogdmFyKC0tc2JiLXNwYWNpbmctZml4ZWQtOHgpO1xuICB9XG5cbiAgQGluY2x1ZGUgc2JiLm1xKCRmcm9tOiBsYXJnZSkge1xuICAgIG1heC1oZWlnaHQ6IGZpdC1jb250ZW50O1xuXG4gICAgOmhvc3QoOm5vdCg6c3RhdGUoc3RhdGUtY2xvc2VkKSkpICYge1xuICAgICAgbWF4LWhlaWdodDogdmFyKC0tc2JiLW1lbnUtbWF4LWhlaWdodCk7XG4gICAgICBtaW4taGVpZ2h0OiB2YXIoLS1zYmItbWVudS1taW4taGVpZ2h0KTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG46OnNsb3R0ZWQoOmlzKDpzdGF0ZShzYmItbGluayksIDpzdGF0ZShzYmItYnV0dG9uKSkpIHtcbiAgLy8gQXMgdGhlIGJhY2tncm91bmQgdHVybnMgd2hpdGUsIHdlIG5lZWQgdG8gZW5zdXJlIHRoYXQgYnV0dG9ucyBhbmQgbGlua3MgYXJlIGRpc3BsYXllZCBpbiBwb3NpdGl2ZS5cbiAgY29sb3Itc2NoZW1lOiBvbmx5IGxpZ2h0O1xufVxuXG5Aa2V5ZnJhbWVzIG9wZW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zbGF0ZTogMCB2YXIoLS1zYmItbWVudS10cmFuc2Zvcm0teSk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2xhdGU6IDAgMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGNsb3NlIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2xhdGU6IDAgMDtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zbGF0ZTogMCB2YXIoLS1zYmItbWVudS10cmFuc2Zvcm0teSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBvcGVuLXNpZGV3YXlzIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNsYXRlOiAxMDAlIDA7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNsYXRlOiAwIDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBjbG9zZS1zaWRld2F5cyB7XG4gIGZyb20ge1xuICAgIHRyYW5zbGF0ZTogMCAwO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zbGF0ZTogMTAwJSAwO1xuICB9XG59XG4iLCJpbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBpc1NlcnZlcixcbiAgdHlwZSBQcm9wZXJ0eURlY2xhcmF0aW9uLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxufSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyByZWYgfSBmcm9tICdsaXQvZGlyZWN0aXZlcy9yZWYuanMnO1xuXG5pbXBvcnQge1xuICBnZXROZXh0RWxlbWVudEluZGV4LFxuICBpbnRlcmFjdGl2aXR5Q2hlY2tlcixcbiAgaXNBcnJvd0tleU9yUGFnZUtleXNQcmVzc2VkLFxuICBTYmJGb2N1c1RyYXBDb250cm9sbGVyLFxufSBmcm9tICcuLi8uLi9jb3JlL2ExMXkudHMnO1xuaW1wb3J0IHsgU2JiT3BlbkNsb3NlQmFzZUVsZW1lbnQgfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2UtZWxlbWVudHMudHMnO1xuaW1wb3J0IHtcbiAgU2JiRGFya01vZGVDb250cm9sbGVyLFxuICBTYmJFc2NhcGFibGVPdmVybGF5Q29udHJvbGxlcixcbiAgU2JiSW5lcnRDb250cm9sbGVyLFxuICBTYmJMYW5ndWFnZUNvbnRyb2xsZXIsXG4gIFNiYk1lZGlhTWF0Y2hlckNvbnRyb2xsZXIsXG4gIFNiYk1lZGlhUXVlcnlCcmVha3BvaW50U21hbGxBbmRCZWxvdyxcbn0gZnJvbSAnLi4vLi4vY29yZS9jb250cm9sbGVycy50cyc7XG5pbXBvcnQgeyBpZFJlZmVyZW5jZSB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy50cyc7XG5pbXBvcnQgeyBpc1plcm9BbmltYXRpb25EdXJhdGlvbiwgU2JiU2Nyb2xsSGFuZGxlciB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLnRzJztcbmltcG9ydCB7IGZvcndhcmRFdmVudCB9IGZyb20gJy4uLy4uL2NvcmUvZXZlbnRpbmcudHMnO1xuaW1wb3J0IHsgaTE4bkdvQmFjayB9IGZyb20gJy4uLy4uL2NvcmUvaTE4bi9pMThuLnRzJztcbmltcG9ydCB7IMm1c3RhdGVDb250cm9sbGVyLCB0eXBlIFNiYk5lZ2F0aXZlTWl4aW5UeXBlIH0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMudHMnO1xuaW1wb3J0IHtcbiAgZ2V0RWxlbWVudFBvc2l0aW9uLFxuICBnZXRFbGVtZW50UG9zaXRpb25Ib3Jpem9udGFsLFxuICBpc0V2ZW50T25FbGVtZW50LFxuICByZW1vdmVBcmlhT3ZlcmxheVRyaWdnZXJBdHRyaWJ1dGVzLFxuICBzZXRBcmlhT3ZlcmxheVRyaWdnZXJBdHRyaWJ1dGVzLFxufSBmcm9tICcuLi8uLi9jb3JlL292ZXJsYXkudHMnO1xuaW1wb3J0IHsgYm94U2l6aW5nU3R5bGVzIH0gZnJvbSAnLi4vLi4vY29yZS9zdHlsZXMudHMnO1xuaW1wb3J0IHsgU2JiTWVudUJ1dHRvbkVsZW1lbnQgfSBmcm9tICcuLi9tZW51LWJ1dHRvbi9tZW51LWJ1dHRvbi5jb21wb25lbnQudHMnO1xuaW1wb3J0IHR5cGUgeyBTYmJNZW51TGlua0VsZW1lbnQgfSBmcm9tICcuLi9tZW51LWxpbmsvbWVudS1saW5rLmNvbXBvbmVudC50cyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL21lbnUuc2Nzcz9saXQmaW5saW5lJztcblxuaW1wb3J0ICcuLi8uLi9kaXZpZGVyLnRzJztcblxuU2JiTWVudUJ1dHRvbkVsZW1lbnQuZGVmaW5lKCk7XG5cbmNvbnN0IE1FTlVfT0ZGU0VUID0gODtcbmNvbnN0IE5FU1RFRF9NRU5VX09GRlNFVCA9IC00O1xuY29uc3QgSU5URVJBQ1RJVkVfRUxFTUVOVFMgPSBbXG4gICdBJyxcbiAgJ0JVVFRPTicsXG4gICdTQkItQlVUVE9OJyxcbiAgJ1NCQi1CVVRUT04tTElOSycsXG4gICdTQkItTElOSycsXG4gICdTQkItQkxPQ0stTElOSycsXG4gICdTQkItTElOSy1CVVRUT04nLFxuICAnU0JCLUJMT0NLLUxJTkstQlVUVE9OJyxcbiAgJ1NCQi1NRU5VLUJVVFRPTicsXG4gICdTQkItTUVOVS1MSU5LJyxcbl07XG5cbmxldCBuZXh0SWQgPSAwO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgY29udGV4dHVhbCBtZW51IHdpdGggb25lIG9yIG1vcmUgYWN0aW9uIGVsZW1lbnQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgYHNiYi1tZW51LWJ1dHRvbmAvYHNiYi1tZW51LWxpbmtgIG9yIG90aGVyIGVsZW1lbnRzIHRvIHRoZSBtZW51LlxuICogQGNzc3Byb3AgWy0tc2JiLW1lbnUtei1pbmRleD12YXIoLS1zYmItb3ZlcmxheS1kZWZhdWx0LXotaW5kZXgpXSAtIFRvIHNwZWNpZnkgYSBjdXN0b20gc3RhY2sgb3JkZXIsXG4gKiB0aGUgYHotaW5kZXhgIGNhbiBiZSBvdmVycmlkZGVuIGJ5IGRlZmluaW5nIHRoaXMgQ1NTIHZhcmlhYmxlLiBUaGUgZGVmYXVsdCBgei1pbmRleGAgb2YgdGhlXG4gKiBjb21wb25lbnQgaXMgc2V0IHRvIGB2YXIoLS1zYmItb3ZlcmxheS1kZWZhdWx0LXotaW5kZXgpYCB3aXRoIGEgdmFsdWUgb2YgYDEwMDBgLlxuICovXG5leHBvcnQgY2xhc3MgU2JiTWVudUVsZW1lbnQgZXh0ZW5kcyBTYmJPcGVuQ2xvc2VCYXNlRWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItbWVudSc7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtib3hTaXppbmdTdHlsZXMsIHN0eWxlXTtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSByb2xlID0gJ21lbnUnO1xuXG4gIC8qKlxuICAgKiBUaGUgZWxlbWVudCB0aGF0IHdpbGwgdHJpZ2dlciB0aGUgbWVudSBvdmVybGF5LlxuICAgKlxuICAgKiBGb3IgYXR0cmlidXRlIHVzYWdlLCBwcm92aWRlIGFuIGlkIHJlZmVyZW5jZS5cbiAgICovXG4gIEBpZFJlZmVyZW5jZSgpXG4gIEBwcm9wZXJ0eSgpXG4gIHB1YmxpYyBhY2Nlc3NvciB0cmlnZ2VyOiBIVE1MRWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gIHByaXZhdGUgX21lbnUhOiBIVE1MRGl2RWxlbWVudDtcbiAgcHJpdmF0ZSBfdHJpZ2dlckVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX3RyaWdnZXJBYm9ydENvbnRyb2xsZXIhOiBBYm9ydENvbnRyb2xsZXI7XG4gIHByaXZhdGUgX2lzUG9pbnRlckRvd25FdmVudE9uTWVudTogYm9vbGVhbiA9IGZhbHNlO1xuICBwcml2YXRlIF93aW5kb3dFdmVudHNDb250cm9sbGVyITogQWJvcnRDb250cm9sbGVyO1xuICBwcml2YXRlIF9lc2NhcGFibGVPdmVybGF5Q29udHJvbGxlciA9IG5ldyBTYmJFc2NhcGFibGVPdmVybGF5Q29udHJvbGxlcih0aGlzKTtcbiAgcHJpdmF0ZSBfZm9jdXNUcmFwQ29udHJvbGxlciA9IG5ldyBTYmJGb2N1c1RyYXBDb250cm9sbGVyKHRoaXMpO1xuICBwcml2YXRlIF9zY3JvbGxIYW5kbGVyID0gbmV3IFNiYlNjcm9sbEhhbmRsZXIoKTtcbiAgcHJpdmF0ZSBfaW5lcnRDb250cm9sbGVyID0gbmV3IFNiYkluZXJ0Q29udHJvbGxlcih0aGlzKTtcbiAgcHJpdmF0ZSBfbW9iaWxlQnJlYWtwb2ludCA9IFNiYk1lZGlhUXVlcnlCcmVha3BvaW50U21hbGxBbmRCZWxvdztcbiAgcHJpdmF0ZSBfbWVkaWFNYXRjaGVyID0gbmV3IFNiYk1lZGlhTWF0Y2hlckNvbnRyb2xsZXIodGhpcywge1xuICAgIFt0aGlzLl9tb2JpbGVCcmVha3BvaW50XTogKG1hdGNoZXMpID0+IHtcbiAgICAgIGlmIChtYXRjaGVzICYmICh0aGlzLnN0YXRlID09PSAnb3BlbmluZycgfHwgdGhpcy5zdGF0ZSA9PT0gJ29wZW5lZCcpKSB7XG4gICAgICAgIHRoaXMuX3Njcm9sbEhhbmRsZXIuZGlzYWJsZVNjcm9sbCgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5fc2Nyb2xsSGFuZGxlci5lbmFibGVTY3JvbGwoKTtcbiAgICAgIH1cbiAgICB9LFxuICB9KTtcbiAgcHJpdmF0ZSBfZGFya01vZGVDb250cm9sbGVyID0gbmV3IFNiYkRhcmtNb2RlQ29udHJvbGxlcih0aGlzLCAoKSA9PiB0aGlzLl9zeW5jTmVnYXRpdmUoKSk7XG4gIHByaXZhdGUgX2xhbmd1YWdlID0gbmV3IFNiYkxhbmd1YWdlQ29udHJvbGxlcih0aGlzKTtcbiAgcHJpdmF0ZSBfbmVzdGVkTWVudTogU2JiTWVudUVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/Ligna2V5ZG93bicsIChlKSA9PiB0aGlzLl9oYW5kbGVLZXlEb3duKGUpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIHRoaXMuX2NvbmZpZ3VyZVRyaWdnZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBlc2NhcGVTdHJhdGVneSgpOiB2b2lkIHtcbiAgICB0aGlzLmNsb3NlQWxsKCk7XG4gIH1cblxuICAvKipcbiAgICogT3BlbnMgdGhlIG1lbnUgb24gdHJpZ2dlciBjbGljay5cbiAgICovXG4gIHB1YmxpYyBvcGVuKCk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgIHRoaXMuc3RhdGUgPT09ICdjbG9zaW5nJyB8fFxuICAgICAgdGhpcy5zdGF0ZSA9PT0gJ29wZW5lZCcgfHxcbiAgICAgICF0aGlzLl9tZW51IHx8XG4gICAgICAhdGhpcy5kaXNwYXRjaEJlZm9yZU9wZW5FdmVudCgpXG4gICAgKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX2lzTmVzdGVkKCkpIHtcbiAgICAgIGNvbnN0IHBhcmVudE1lbnUgPSB0aGlzLl9wYXJlbnRNZW51KCkhO1xuICAgICAgcGFyZW50TWVudS5pbnRlcm5hbHMuc3RhdGVzLmFkZCgnbmVzdGVkLWNoaWxkJyk7XG5cbiAgICAgIC8vIEluIGNhc2Ugd2UgY2hhbmdlIGJldHdlZW4gYXJyb3cga2V5IG5hdmlnYXRpb24gYW5kIG1vdXNlIG5hdmlnYXRpb24sIGl0IGNhbiBiZSB0aGF0IGFub3RoZXJcbiAgICAgIC8vIG5lc3RlZCBwYXJlbnQgbWVudSBpcyBzdGlsbCBvcGVuLiBXZSBoYXZlIHRvIGNsb3NlIGl0LlxuICAgICAgaWYgKHBhcmVudE1lbnUuX25lc3RlZE1lbnUgIT09IHRoaXMpIHtcbiAgICAgICAgcGFyZW50TWVudS5fbmVzdGVkTWVudT8uY2xvc2UoKTtcbiAgICAgIH1cbiAgICAgIHBhcmVudE1lbnUuX25lc3RlZE1lbnUgPSB0aGlzO1xuICAgIH1cblxuICAgIHRoaXMuc2hvd1BvcG92ZXI/LigpO1xuICAgIHRoaXMuc3RhdGUgPSAnb3BlbmluZyc7XG4gICAgdGhpcy5fc2V0TWVudVBvc2l0aW9uKCk7XG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQ/LnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsICd0cnVlJyk7XG5cbiAgICAvLyBGcm9tIHplcm8gdG8gbGFyZ2UsIGRpc2FibGUgc2Nyb2xsXG4gICAgaWYgKHRoaXMuX2lzTW9iaWxlKCkpIHtcbiAgICAgIHRoaXMuX3Njcm9sbEhhbmRsZXIuZGlzYWJsZVNjcm9sbCgpO1xuICAgIH1cblxuICAgIC8vIElmIHRoZSBhbmltYXRpb24gZHVyYXRpb24gaXMgemVybywgdGhlIGFuaW1hdGlvbmVuZCBldmVudCBpcyBub3QgYWx3YXlzIGZpcmVkIHJlbGlhYmx5LlxuICAgIC8vIEluIHRoaXMgY2FzZSB3ZSBkaXJlY3RseSBzZXQgdGhlIGBvcGVuZWRgIHN0YXRlLlxuICAgIGlmICh0aGlzLl9pc1plcm9BbmltYXRpb25EdXJhdGlvbigpKSB7XG4gICAgICB0aGlzLl9oYW5kbGVPcGVuaW5nKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIENsb3NlcyB0aGUgbWVudSBhbmQgYWxsIGl0cyBuZXN0ZWQgbWVudXMuICovXG4gIHB1YmxpYyBjbG9zZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9jbG9zZSgpO1xuICB9XG5cbiAgLyoqIENsb3NlcyB0aGUgbWVudSBhbmQgYWxsIHJlbGF0ZWQgbWVudXMgKG5lc3RlZCBhbmQgcGFyZW50IG1lbnVzKS4gKi9cbiAgcHVibGljIGNsb3NlQWxsKCk6IHZvaWQge1xuICAgIHRoaXMuX21haW5NZW51KCkuX2Nsb3NlKHRydWUpO1xuICB9XG5cbiAgLyoqIEBwYXJhbSBbY2xvc2VBbGw9J2ZhbHNlJ10gLSBJZiB0cnVlLCBpdCBlbnN1cmVzIGFuaW1hdGlvbnMgYXJlIGNvcnJlY3QgYnkgdG9nZ2xpbmcgc29tZSBzdGF0ZXMgd2hlbiBjbG9zaW5nIGFsbCByZWxhdGVkIG1lbnVzIGF0IG9uY2UuICovXG4gIHByaXZhdGUgX2Nsb3NlKGNsb3NlQWxsID0gZmFsc2UpOiB2b2lkIHtcbiAgICBpZiAoKHRoaXMuc3RhdGUgPT09ICdvcGVuaW5nJyAmJiAhdGhpcy5faXNOZXN0ZWQoKSkgfHwgIXRoaXMuZGlzcGF0Y2hCZWZvcmVDbG9zZUV2ZW50KCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBDbG9zZSBuZXN0ZWQgbWVudXMgZmlyc3RcbiAgICB0aGlzLl9uZXN0ZWRNZW51Py5fY2xvc2UoY2xvc2VBbGwpO1xuXG4gICAgaWYgKHRoaXMuX2lzTmVzdGVkKCkpIHtcbiAgICAgIGNvbnN0IHBhcmVudE1lbnUgPSB0aGlzLl9wYXJlbnRNZW51KCkhO1xuICAgICAgaWYgKGNsb3NlQWxsKSB7XG4gICAgICAgIHRoaXMuaW50ZXJuYWxzLnN0YXRlcy5hZGQoJ2Nsb3NlLWFsbCcpO1xuICAgICAgICBwYXJlbnRNZW51LmludGVybmFscy5zdGF0ZXMuYWRkKCdza2lwLWFuaW1hdGlvbicpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5pbnRlcm5hbHMuc3RhdGVzLmRlbGV0ZSgnY2xvc2UtYWxsJyk7XG4gICAgICAgIHBhcmVudE1lbnUuaW50ZXJuYWxzLnN0YXRlcy5kZWxldGUoJ3NraXAtYW5pbWF0aW9uJyk7XG4gICAgICB9XG4gICAgICBwYXJlbnRNZW51LmludGVybmFscy5zdGF0ZXMuZGVsZXRlKCduZXN0ZWQtY2hpbGQnKTtcbiAgICAgIHBhcmVudE1lbnUuX25lc3RlZE1lbnUgPSBudWxsO1xuICAgIH1cblxuICAgIHRoaXMuc3RhdGUgPSAnY2xvc2luZyc7XG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQ/LnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsICdmYWxzZScpO1xuXG4gICAgLy8gSWYgdGhlIGFuaW1hdGlvbiBkdXJhdGlvbiBpcyB6ZXJvLCB0aGUgYW5pbWF0aW9uZW5kIGV2ZW50IGlzIG5vdCBhbHdheXMgZmlyZWQgcmVsaWFibHkuXG4gICAgLy8gSW4gdGhpcyBjYXNlIHdlIGRpcmVjdGx5IHNldCB0aGUgYGNsb3NlZGAgc3RhdGUuXG4gICAgaWYgKHRoaXMuX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCkpIHtcbiAgICAgIHRoaXMuX2hhbmRsZUNsb3NpbmcoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9pc1plcm9BbmltYXRpb25EdXJhdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24odGhpcywgJy0tc2JiLW1lbnUtYW5pbWF0aW9uLWR1cmF0aW9uJyk7XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVPcGVuaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGUgPSAnb3BlbmVkJztcblxuICAgIGlmICghdGhpcy5faXNOZXN0ZWQoKSkge1xuICAgICAgdGhpcy5faW5lcnRDb250cm9sbGVyLmFjdGl2YXRlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX3VwZGF0ZU5lc3RlZEluZXJ0KCk7XG4gICAgfVxuICAgIHRoaXMuX2VzY2FwYWJsZU92ZXJsYXlDb250cm9sbGVyLmNvbm5lY3QoKTtcbiAgICB0aGlzLl9mb2N1c1RyYXBDb250cm9sbGVyLmZvY3VzSW5pdGlhbEVsZW1lbnQoKTtcbiAgICB0aGlzLl9mb2N1c1RyYXBDb250cm9sbGVyLmVuYWJsZWQgPSB0cnVlO1xuICAgIHRoaXMuX2F0dGFjaFdpbmRvd0V2ZW50cygpO1xuICAgIHRoaXMuZGlzcGF0Y2hPcGVuRXZlbnQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZUNsb3NpbmcoKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZSA9ICdjbG9zZWQnO1xuICAgIHRoaXMuaW50ZXJuYWxzLnN0YXRlcy5kZWxldGUoJ3NraXAtYW5pbWF0aW9uJyk7XG4gICAgdGhpcy5pbnRlcm5hbHMuc3RhdGVzLmRlbGV0ZSgnY2xvc2UtYWxsJyk7XG4gICAgdGhpcy5oaWRlUG9wb3Zlcj8uKCk7XG5cbiAgICB0aGlzLl9tZW51Py5maXJzdEVsZW1lbnRDaGlsZD8uc2Nyb2xsVG8oMCwgMCk7XG4gICAgaWYgKCF0aGlzLl9pc05lc3RlZCgpKSB7XG4gICAgICB0aGlzLl9pbmVydENvbnRyb2xsZXIuZGVhY3RpdmF0ZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl91cGRhdGVOZXN0ZWRJbmVydCgpO1xuICAgIH1cbiAgICAvLyBNYW51YWxseSBmb2N1cyBsYXN0IGZvY3VzZWQgZWxlbWVudFxuICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50Py5mb2N1cyh7XG4gICAgICAvLyBXaGVuIGluc2lkZSB0aGUgc2JiLWhlYWRlciwgd2UgcHJldmVudCB0aGUgc2Nyb2xsIHRvIGF2b2lkIHRoZSBzbmFwcGluZyB0byB0aGUgdG9wIG9mIHRoZSBwYWdlXG4gICAgICBwcmV2ZW50U2Nyb2xsOiBbJ3NiYi1oZWFkZXItYnV0dG9uJywgJ3NiYi1oZWFkZXItbGluayddLmluY2x1ZGVzKFxuICAgICAgICB0aGlzLl90cmlnZ2VyRWxlbWVudC5sb2NhbE5hbWUsXG4gICAgICApLFxuICAgIH0pO1xuICAgIHRoaXMuX2VzY2FwYWJsZU92ZXJsYXlDb250cm9sbGVyLmRpc2Nvbm5lY3QoKTtcbiAgICB0aGlzLmRpc3BhdGNoQ2xvc2VFdmVudCgpO1xuICAgIHRoaXMuX3dpbmRvd0V2ZW50c0NvbnRyb2xsZXI/LmFib3J0KCk7XG4gICAgdGhpcy5fZm9jdXNUcmFwQ29udHJvbGxlci5lbmFibGVkID0gZmFsc2U7XG5cbiAgICAvLyBTdGFydGluZyBmcm9tIGJyZWFrcG9pbnQgbGFyZ2UsIGVuYWJsZSBzY3JvbGxcbiAgICB0aGlzLl9zY3JvbGxIYW5kbGVyLmVuYWJsZVNjcm9sbCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlS2V5RG93bihldnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoIWlzQXJyb3dLZXlPclBhZ2VLZXlzUHJlc3NlZChldnQpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgY29uc3QgZW5hYmxlZEFjdGlvbnM6IEVsZW1lbnRbXSA9IEFycmF5LmZyb20oXG4gICAgICB0aGlzLnF1ZXJ5U2VsZWN0b3JBbGw8U2JiTWVudUJ1dHRvbkVsZW1lbnQgfCBTYmJNZW51TGlua0VsZW1lbnQ+KFxuICAgICAgICAnc2JiLW1lbnUtYnV0dG9uLCBzYmItbWVudS1saW5rJyxcbiAgICAgICksXG4gICAgKVxuICAgICAgLmNvbmNhdCh0aGlzLnNoYWRvd1Jvb3QhLnF1ZXJ5U2VsZWN0b3IoJ3NiYi1tZW51LWJ1dHRvbicpISlcbiAgICAgIC5maWx0ZXIoXG4gICAgICAgIChlbCkgPT4gKCFlbC5kaXNhYmxlZCB8fCBlbC5kaXNhYmxlZEludGVyYWN0aXZlKSAmJiBpbnRlcmFjdGl2aXR5Q2hlY2tlci5pc1Zpc2libGUoZWwpLFxuICAgICAgKTtcbiAgICBjb25zdCBjdXJyZW50ID0gZW5hYmxlZEFjdGlvbnMuZmluZEluZGV4KChlOiBFbGVtZW50KSA9PiBlID09PSBldnQudGFyZ2V0KTtcblxuICAgIGxldCBuZXh0SW5kZXg7XG4gICAgc3dpdGNoIChldnQua2V5KSB7XG4gICAgICBjYXNlICdBcnJvd1VwJzpcbiAgICAgIGNhc2UgJ0Fycm93RG93bic6XG4gICAgICAgIG5leHRJbmRleCA9IGdldE5leHRFbGVtZW50SW5kZXgoZXZ0LCBjdXJyZW50LCBlbmFibGVkQWN0aW9ucy5sZW5ndGgpO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnQXJyb3dMZWZ0JzpcbiAgICAgICAgaWYgKHRoaXMuX2lzTmVzdGVkKCkpIHtcbiAgICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ0Fycm93UmlnaHQnOlxuICAgICAgICBpZiAoKGV2dC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLm1hdGNoZXMoJzpzdGF0ZShzYmItbWVudS10cmlnZ2VyKScpKSB7XG4gICAgICAgICAgKGV2dC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLmNsaWNrKCk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ1BhZ2VVcCc6XG4gICAgICBjYXNlICdIb21lJzpcbiAgICAgICAgbmV4dEluZGV4ID0gMDtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ0VuZCc6XG4gICAgICBjYXNlICdQYWdlRG93bic6XG4gICAgICAgIG5leHRJbmRleCA9IGVuYWJsZWRBY3Rpb25zLmxlbmd0aCAtIDE7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIGlmIChuZXh0SW5kZXggIT09IHVuZGVmaW5lZCkge1xuICAgICAgKGVuYWJsZWRBY3Rpb25zW25leHRJbmRleF0gYXMgSFRNTEVsZW1lbnQpLmZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVtb3ZlcyB0cmlnZ2VyIGNsaWNrIGxpc3RlbmVyIG9uIHRyaWdnZXIgY2hhbmdlLlxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgY3JlYXRlUmVuZGVyUm9vdCgpOiBIVE1MRWxlbWVudCB8IERvY3VtZW50RnJhZ21lbnQge1xuICAgIGNvbnN0IHJlbmRlclJvb3QgPSBzdXBlci5jcmVhdGVSZW5kZXJSb290KCk7XG4gICAgLy8gRHVlIHRvIHRoZSBmYWN0IHRoYXQgbWVudSBjYW4gYm90aCBiZSBhIGxpc3QgYW5kIGp1c3QgYSBjb250YWluZXIsIHdlIG5lZWQgdG8gY2hlY2sgaXRzXG4gICAgLy8gc3RhdGUgYmVmb3JlIHRoZSBTYmJOYW1lZFNsb3RMaXN0TWl4aW4gaGFuZGxlcyB0aGUgc2xvdGNoYW5nZSBldmVudCwgaW4gb3JkZXIgdG8gYXZvaWRcbiAgICAvLyBpdCBpbnRlcnByZXRpbmcgdGhlIG5vbiBsaXN0IGNhc2UgYXMgYSBsaXN0LlxuICAgIHRoaXMuc2hhZG93Um9vdD8uYWRkRXZlbnRMaXN0ZW5lcignc2xvdGNoYW5nZScsICgpID0+IHRoaXMuX3N5bmNOZWdhdGl2ZSgpLCB7IGNhcHR1cmU6IHRydWUgfSk7XG4gICAgcmV0dXJuIHJlbmRlclJvb3Q7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgdGhpcy5wb3BvdmVyID0gJ21hbnVhbCc7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLmlkIHx8PSBgc2JiLW1lbnUtJHtuZXh0SWQrK31gO1xuICAgIGlmICh0aGlzLmhhc1VwZGF0ZWQpIHtcbiAgICAgIHRoaXMuX2NvbmZpZ3VyZVRyaWdnZXIoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgZGlzY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLl90cmlnZ2VyRWxlbWVudCA9IG51bGw7XG4gICAgdGhpcy5fdHJpZ2dlckFib3J0Q29udHJvbGxlcj8uYWJvcnQoKTtcbiAgICB0aGlzLl93aW5kb3dFdmVudHNDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgIHRoaXMuX3Njcm9sbEhhbmRsZXIuZW5hYmxlU2Nyb2xsKCk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgcmVxdWVzdFVwZGF0ZShcbiAgICBuYW1lPzogUHJvcGVydHlLZXksXG4gICAgb2xkVmFsdWU/OiB1bmtub3duLFxuICAgIG9wdGlvbnM/OiBQcm9wZXJ0eURlY2xhcmF0aW9uLFxuICApOiB2b2lkIHtcbiAgICBzdXBlci5yZXF1ZXN0VXBkYXRlKG5hbWUsIG9sZFZhbHVlLCBvcHRpb25zKTtcblxuICAgIGlmICghaXNTZXJ2ZXIgJiYgKCFuYW1lIHx8IG5hbWUgPT09ICd0cmlnZ2VyJykgJiYgdGhpcy5oYXNVcGRhdGVkKSB7XG4gICAgICB0aGlzLl9jb25maWd1cmVUcmlnZ2VyKCk7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2hlY2sgaWYgdGhlIHRyaWdnZXIgaXMgdmFsaWQgYW5kIGF0dGFjaCBjbGljayBldmVudCBsaXN0ZW5lcnMuXG4gIHByaXZhdGUgX2NvbmZpZ3VyZVRyaWdnZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudHJpZ2dlciA9PT0gdGhpcy5fdHJpZ2dlckVsZW1lbnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl90cmlnZ2VyQWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgIHJlbW92ZUFyaWFPdmVybGF5VHJpZ2dlckF0dHJpYnV0ZXModGhpcy5fdHJpZ2dlckVsZW1lbnQpO1xuICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50ID0gdGhpcy50cmlnZ2VyO1xuXG4gICAgaWYgKCF0aGlzLl90cmlnZ2VyRWxlbWVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHNldEFyaWFPdmVybGF5VHJpZ2dlckF0dHJpYnV0ZXModGhpcy5fdHJpZ2dlckVsZW1lbnQsICdtZW51JywgdGhpcy5pZCwgdGhpcy5zdGF0ZSk7XG4gICAgdGhpcy5fdHJpZ2dlckFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcbiAgICB0aGlzLl90cmlnZ2VyRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IHRoaXMub3BlbigpLCB7XG4gICAgICBzaWduYWw6IHRoaXMuX3RyaWdnZXJBYm9ydENvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pO1xuXG4gICAgLy8gQ29uc2lkZXIgdGhlIG1lbnUgYXMgbmVzdGVkIGlmIHRoZSB0cmlnZ2VyIGlzIGEgbWVudSBidXR0b24gb3IgbWVudSBsaW5rLlxuICAgIHRoaXMudG9nZ2xlU3RhdGUoXG4gICAgICAnbmVzdGVkJyxcbiAgICAgIFsnc2JiLW1lbnUtYnV0dG9uJywgJ3NiYi1tZW51LWxpbmsnXS5pbmNsdWRlcyh0aGlzLl90cmlnZ2VyRWxlbWVudC5sb2NhbE5hbWUpLFxuICAgICk7XG4gICAgybVzdGF0ZUNvbnRyb2xsZXIodGhpcy5fdHJpZ2dlckVsZW1lbnQpLmFkZCgnc2JiLW1lbnUtdHJpZ2dlcicpO1xuICB9XG5cbiAgcHJpdmF0ZSBfYXR0YWNoV2luZG93RXZlbnRzKCk6IHZvaWQge1xuICAgIHRoaXMuX3dpbmRvd0V2ZW50c0NvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCk7XG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgKCkgPT4gdGhpcy5fc2V0TWVudVBvc2l0aW9uKCksIHtcbiAgICAgIHBhc3NpdmU6IHRydWUsXG4gICAgICBzaWduYWw6IHRoaXMuX3dpbmRvd0V2ZW50c0NvbnRyb2xsZXIuc2lnbmFsLFxuICAgICAgLy8gV2l0aG91dCBjYXB0dXJlLCBvdGhlciBzY3JvbGwgY29udGV4dHMgd291bGQgbm90IGJ1YmJsZSB0byB0aGlzIGV2ZW50IGxpc3RlbmVyLlxuICAgICAgLy8gQ2FwdHVyZSBhbGxvd3MgdXMgdG8gcmVhY3QgdG8gYWxsIHNjcm9sbCBjb250ZXh0cyBpbiB0aGlzIERPTS5cbiAgICAgIGNhcHR1cmU6IHRydWUsXG4gICAgfSk7XG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsICgpID0+IHRoaXMuX3NldE1lbnVQb3NpdGlvbigpLCB7XG4gICAgICBwYXNzaXZlOiB0cnVlLFxuICAgICAgc2lnbmFsOiB0aGlzLl93aW5kb3dFdmVudHNDb250cm9sbGVyLnNpZ25hbCxcbiAgICB9KTtcblxuICAgIC8vIE9ubHkgdGhlIG91dGVybW9zdCBtZW51IG5lZWRzIHRvIGxpc3RlbiB0byB0aGUgYmFja2Ryb3AgY2xpY2tzXG4gICAgaWYgKCF0aGlzLl9pc05lc3RlZCgpKSB7XG4gICAgICAvLyBDbG9zZSBtZW51IG9uIGJhY2tkcm9wIGNsaWNrXG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncG9pbnRlcmRvd24nLCB0aGlzLl9wb2ludGVyRG93bkxpc3RlbmVyLCB7XG4gICAgICAgIHNpZ25hbDogdGhpcy5fd2luZG93RXZlbnRzQ29udHJvbGxlci5zaWduYWwsXG4gICAgICB9KTtcbiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdwb2ludGVydXAnLCB0aGlzLl9jbG9zZU9uQmFja2Ryb3BDbGljaywge1xuICAgICAgICBzaWduYWw6IHRoaXMuX3dpbmRvd0V2ZW50c0NvbnRyb2xsZXIuc2lnbmFsLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2xvc2UgbWVudSBhdCBhbnkgY2xpY2sgb24gYW4gaW50ZXJhY3RpdmUgZWxlbWVudCBpbnNpZGUgdGhlIDxzYmItbWVudT4gdGhhdCBidWJibGVzIHRvIHRoZSBjb250YWluZXIuXG4gIHByaXZhdGUgX2ludGVyYWN0aXZlRWxlbWVudENsaWNrKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcblxuICAgIGlmIChcbiAgICAgIElOVEVSQUNUSVZFX0VMRU1FTlRTLmluY2x1ZGVzKHRhcmdldC5ub2RlTmFtZSkgJiZcbiAgICAgICF0YXJnZXQuaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpICYmXG4gICAgICAhdGFyZ2V0Lm1hdGNoZXMoJzpzdGF0ZShzYmItbWVudS10cmlnZ2VyKScpICYmXG4gICAgICB0YXJnZXQuaWQgIT09ICdzYmItbWVudV9fYmFjay1idXR0b24nXG4gICAgKSB7XG4gICAgICB0aGlzLmNsb3NlQWxsKCk7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2hlY2sgaWYgdGhlIHBvaW50ZXJkb3duIGV2ZW50IHRhcmdldCBpcyB0cmlnZ2VyZWQgb24gdGhlIG1lbnUuXG4gIHByaXZhdGUgX3BvaW50ZXJEb3duTGlzdGVuZXIgPSAoZXZlbnQ6IFBvaW50ZXJFdmVudCk6IHZvaWQgPT4ge1xuICAgIGNvbnN0IG1lbnUgPSAoZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5jbG9zZXN0KCdzYmItbWVudScpO1xuXG4gICAgLy8gVGhlIHBvaW50ZXIgZG93biBpcyBvbiB0aGUgbWVudSBvciBvbmUgb2YgaXRzIG5lc3RlZCBtZW51cy5cbiAgICB0aGlzLl9pc1BvaW50ZXJEb3duRXZlbnRPbk1lbnUgPVxuICAgICAgaXNFdmVudE9uRWxlbWVudCh0aGlzLl9tZW51LCBldmVudCkgfHwgdGhpcy5fbmVzdGVkTWVudXMoKS5zb21lKChlbCkgPT4gbWVudSA9PT0gZWwpO1xuICB9O1xuXG4gIC8vIENsb3NlIG1lbnUgb24gYmFja2Ryb3AgY2xpY2suXG4gIHByaXZhdGUgX2Nsb3NlT25CYWNrZHJvcENsaWNrID0gKGV2ZW50OiBQb2ludGVyRXZlbnQpOiB2b2lkID0+IHtcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICAvLyBUaGUgYmFja2Ryb3AgaXMgb25seSBsaXN0ZW5lZCBvbiB0aGUgbWFpbiBtZW51IChvdXRlcm1vc3QgbWVudSkuXG4gICAgLy8gVG8gY2xvc2UuXG4gICAgLy8gLSBUaGUgcG9pbnRlciBkb3duIGFuZCB1cCBuZWVkIHRvIGJlIG91dHNpZGUgdGhlIG1lbnUuXG4gICAgLy8gLSBUaGUgdGFyZ2V0IHNob3VsZCBiZSBub3Qgb24gYSBuZXN0ZWQgbWVudVxuICAgIGlmIChcbiAgICAgICF0aGlzLl9pc1BvaW50ZXJEb3duRXZlbnRPbk1lbnUgJiZcbiAgICAgICFpc0V2ZW50T25FbGVtZW50KHRoaXMuX21lbnUsIGV2ZW50KSAmJlxuICAgICAgIXRoaXMuX25lc3RlZE1lbnVzKCkuc29tZSgoZWwpID0+IGVsID09PSB0YXJnZXQpXG4gICAgKSB7XG4gICAgICB0aGlzLmNsb3NlQWxsKCk7XG4gICAgfVxuICB9O1xuXG4gIC8qKiBDb252ZXJ0cyB0aGUgbGlua2VkIGxpc3QgaW50byBhbiBhcnJheSBvZiBTYmJNZW51RWxlbWVudC4gKi9cbiAgcHJpdmF0ZSBfbmVzdGVkTWVudXMoKTogU2JiTWVudUVsZW1lbnRbXSB7XG4gICAgY29uc3QgbWVudXM6IFNiYk1lbnVFbGVtZW50W10gPSBbXTtcbiAgICBsZXQgY3VycmVudCA9IHRoaXMuX25lc3RlZE1lbnU7XG5cbiAgICB3aGlsZSAoY3VycmVudCkge1xuICAgICAgbWVudXMucHVzaChjdXJyZW50KTtcbiAgICAgIGN1cnJlbnQgPSBjdXJyZW50Ll9uZXN0ZWRNZW51O1xuICAgIH1cblxuICAgIHJldHVybiBtZW51cztcbiAgfVxuXG4gIHByaXZhdGUgX3BhcmVudE1lbnUoKTogU2JiTWVudUVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fdHJpZ2dlckVsZW1lbnQ/LmNsb3Nlc3QoJ3NiYi1tZW51JykgPz8gbnVsbDtcbiAgfVxuXG4gIC8qKiBUaGUgb3V0ZXJtb3N0IG1lbnUuICovXG4gIHByaXZhdGUgX21haW5NZW51KCk6IFNiYk1lbnVFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5faXNOZXN0ZWQoKSA/ICh0aGlzLl9wYXJlbnRNZW51KCk/Ll9tYWluTWVudSgpID8/IHRoaXMpIDogdGhpcztcbiAgfVxuXG4gIHByaXZhdGUgX2lzTmVzdGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuX3BhcmVudE1lbnUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZU5lc3RlZEluZXJ0KCk6IHZvaWQge1xuICAgIHRoaXMuX2luZXJ0Q29udHJvbGxlci5yZXN0b3JlQWxsRXhlbXB0ZWQoKTtcbiAgICB0aGlzLl9tYWluTWVudSgpXG4gICAgICAuX25lc3RlZE1lbnVzKClcbiAgICAgIC5mb3JFYWNoKChtZW51KSA9PiB0aGlzLl9pbmVydENvbnRyb2xsZXIuZXhlbXB0KG1lbnUpKTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmIG5lc3RlZCBtZW51IHNob3VsZCBiZSBjbG9zZWQuXG4gIHByaXZhdGUgX2hhbmRsZU1vdXNlT3ZlcihldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IGVsZW1lbnQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgY29uc3QgaXNNb2JpbGUgPSB0aGlzLl9pc01vYmlsZSgpO1xuXG4gICAgLy8gQWxsIG5lc3RlZCBtZW51cyBzaG91bGQgY2xvc2UgaW4gZGVza3RvcCBtb2RlIGlmIHRoZSBjdXJzb3IgbGFuZGVkIG9uXG4gICAgLy8gYW55dGhpbmcgb3RoZXIgdGhhbiB0aGUgY29udGFpbmVyLCB0aGUgY29udGFpbmVyJ3Mgc2Nyb2xsYmFyIG9yIHRoZSB0cmlnZ2VyIGl0c2VsZlxuICAgIGlmIChcbiAgICAgICFpc01vYmlsZSAmJlxuICAgICAgdGhpcy5fbmVzdGVkTWVudSAmJlxuICAgICAgIWVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdzYmItbWVudV9fY29udGVudCcpICYmXG4gICAgICAhKGVsZW1lbnQuZ2V0QXR0cmlidXRlKCdhcmlhLWV4cGFuZGVkJykgPT09ICd0cnVlJylcbiAgICApIHtcbiAgICAgIHRoaXMuX25lc3RlZE1lbnUuY2xvc2UoKTtcbiAgICB9XG5cbiAgICBpZiAoZWxlbWVudC5tYXRjaGVzKCc6c3RhdGUoc2JiLW1lbnUtdHJpZ2dlciknKSAmJiAhaXNNb2JpbGUpIHtcbiAgICAgIGVsZW1lbnQuY2xpY2soKTtcbiAgICB9XG4gIH1cblxuICAvLyBTZXQgbWVudSBwb3NpdGlvbiAoeCwgeSkgdG8gJzAnIG9uY2UgdGhlIG1lbnUgaXMgY2xvc2VkIGFuZCB0aGUgdHJhbnNpdGlvbiBlbmRlZCB0byBwcmV2ZW50IHRoZVxuICAvLyB2aWV3cG9ydCBmcm9tIG92ZXJmbG93aW5nLiBBbmQgc2V0IHRoZSBmb2N1cyB0byB0aGUgZmlyc3QgZm9jdXNhYmxlIGVsZW1lbnQgb25jZSB0aGUgbWVudSBpcyBvcGVuLlxuICAvLyBJbiByYXJlIGNhc2VzIGl0IGNhbiBiZSB0aGF0IHRoZSBhbmltYXRpb25FbmQgZXZlbnQgaXMgdHJpZ2dlcmVkIHR3aWNlLlxuICAvLyBUbyBhdm9pZCBlbnRlcmluZyBhIGNvcnJ1cHQgc3RhdGUsIGV4aXQgd2hlbiBzdGF0ZSBpcyBub3QgZXhwZWN0ZWQuXG4gIHByaXZhdGUgX29uTWVudUFuaW1hdGlvbkVuZChldmVudDogQW5pbWF0aW9uRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICAoZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ29wZW4nIHx8IGV2ZW50LmFuaW1hdGlvbk5hbWUgPT09ICdvcGVuLXNpZGV3YXlzJykgJiZcbiAgICAgIHRoaXMuc3RhdGUgPT09ICdvcGVuaW5nJ1xuICAgICkge1xuICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgIH0gZWxzZSBpZiAoXG4gICAgICAoZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ2Nsb3NlJyB8fCBldmVudC5hbmltYXRpb25OYW1lID09PSAnY2xvc2Utc2lkZXdheXMnKSAmJlxuICAgICAgdGhpcy5zdGF0ZSA9PT0gJ2Nsb3NpbmcnXG4gICAgKSB7XG4gICAgICB0aGlzLl9oYW5kbGVDbG9zaW5nKCk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2V0IG1lbnUgcG9zaXRpb24gYW5kIG1heCBoZWlnaHQgaWYgdGhlIGJyZWFrcG9pbnQgaXMgbGFyZ2UtdWx0cmEuXG4gIHByaXZhdGUgX3NldE1lbnVQb3NpdGlvbigpOiB2b2lkIHtcbiAgICAvLyBTdGFydGluZyBmcm9tIGJyZWFrcG9pbnQgbGFyZ2VcbiAgICBpZiAodGhpcy5faXNNb2JpbGUoKSB8fCAhdGhpcy5fbWVudSB8fCAhdGhpcy5fdHJpZ2dlckVsZW1lbnQgfHwgdGhpcy5zdGF0ZSA9PT0gJ2Nsb3NpbmcnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgbWVudVBvc2l0aW9uID0gIXRoaXMuX2lzTmVzdGVkKClcbiAgICAgID8gZ2V0RWxlbWVudFBvc2l0aW9uKFxuICAgICAgICAgIHRoaXMuc2hhZG93Um9vdCEucXVlcnlTZWxlY3RvcignLnNiYi1tZW51X19jb250ZW50JykhLFxuICAgICAgICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50LFxuICAgICAgICAgIHRoaXMuc2hhZG93Um9vdCEucXVlcnlTZWxlY3RvcignLnNiYi1tZW51X19jb250YWluZXInKSEsXG4gICAgICAgICAge1xuICAgICAgICAgICAgdmVydGljYWxPZmZzZXQ6IE1FTlVfT0ZGU0VULFxuICAgICAgICAgIH0sXG4gICAgICAgIClcbiAgICAgIDogZ2V0RWxlbWVudFBvc2l0aW9uSG9yaXpvbnRhbChcbiAgICAgICAgICB0aGlzLnNoYWRvd1Jvb3QhLnF1ZXJ5U2VsZWN0b3IoJy5zYmItbWVudV9fY29udGVudCcpISxcbiAgICAgICAgICB0aGlzLl90cmlnZ2VyRWxlbWVudCxcbiAgICAgICAgICB0aGlzLnNoYWRvd1Jvb3QhLnF1ZXJ5U2VsZWN0b3IoJy5zYmItbWVudV9fY29udGFpbmVyJykhLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGhvcml6b250YWxPZmZzZXQ6IE1FTlVfT0ZGU0VULFxuICAgICAgICAgICAgdmVydGljYWxPZmZzZXQ6IE5FU1RFRF9NRU5VX09GRlNFVCxcbiAgICAgICAgICAgIGNvbnRlbnRTZWxlY3RvcjogJy5zYmItbWVudV9fY29udGVudCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgKTtcblxuICAgIHRoaXMuc3R5bGUuc2V0UHJvcGVydHkoJy0tc2JiLW1lbnUtcG9zaXRpb24teCcsIGAke21lbnVQb3NpdGlvbi5sZWZ0fXB4YCk7XG4gICAgdGhpcy5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1zYmItbWVudS1wb3NpdGlvbi15JywgYCR7bWVudVBvc2l0aW9uLnRvcH1weGApO1xuICAgIHRoaXMuc3R5bGUuc2V0UHJvcGVydHkoJy0tc2JiLW1lbnUtbWF4LWhlaWdodCcsIG1lbnVQb3NpdGlvbi5tYXhIZWlnaHQpO1xuICB9XG5cbiAgcHJpdmF0ZSBfc3luY05lZ2F0aXZlKCk6IHZvaWQge1xuICAgIC8vIExpbmtzIGFuZCBidXR0b25zIGFyZSB0aGUgbW9zdCBleHBlY3RlZCBjb250ZW50cyB3aGljaCBoYXZlIGEgbmVnYXRpdmUgcHJvcGVydHlcbiAgICB0aGlzLnF1ZXJ5U2VsZWN0b3JBbGwoJzpzdGF0ZShzYmItbGluayksIDpzdGF0ZShzYmItYnV0dG9uKScpPy5mb3JFYWNoKChlbDogRWxlbWVudCkgPT4ge1xuICAgICAgY3VzdG9tRWxlbWVudHMudXBncmFkZShlbCk7XG4gICAgICAoZWwgYXMgRWxlbWVudCAmIFNiYk5lZ2F0aXZlTWl4aW5UeXBlKS5uZWdhdGl2ZSA9ICF0aGlzLl9kYXJrTW9kZUNvbnRyb2xsZXIubWF0Y2hlcygpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNNb2JpbGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX21lZGlhTWF0Y2hlci5tYXRjaGVzKHRoaXMuX21vYmlsZUJyZWFrcG9pbnQpID8/IHRydWU7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItbWVudV9fY29udGFpbmVyXCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBAYW5pbWF0aW9uZW5kPSR7dGhpcy5fb25NZW51QW5pbWF0aW9uRW5kfVxuICAgICAgICAgIEBtb3VzZW92ZXI9JHsoZTogTW91c2VFdmVudCkgPT4gdGhpcy5faGFuZGxlTW91c2VPdmVyKGUpfVxuICAgICAgICAgIGNsYXNzPVwic2JiLW1lbnVcIlxuICAgICAgICAgICR7cmVmKChlbD86IEVsZW1lbnQpID0+ICh0aGlzLl9tZW51ID0gZWwgYXMgSFRNTERpdkVsZW1lbnQpKX1cbiAgICAgICAgPlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIEBjbGljaz0keyhldmVudDogRXZlbnQpID0+IHRoaXMuX2ludGVyYWN0aXZlRWxlbWVudENsaWNrKGV2ZW50KX1cbiAgICAgICAgICAgIEBzY3JvbGw9JHsoZTogRXZlbnQpID0+IGZvcndhcmRFdmVudChlLCBkb2N1bWVudCl9XG4gICAgICAgICAgICBjbGFzcz1cInNiYi1tZW51X19jb250ZW50XCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgICAgICA8c2JiLWRpdmlkZXI+PC9zYmItZGl2aWRlcj5cbiAgICAgICAgICAgIDxzYmItbWVudS1idXR0b25cbiAgICAgICAgICAgICAgaWQ9XCJzYmItbWVudV9fYmFjay1idXR0b25cIlxuICAgICAgICAgICAgICBAY2xpY2s9JHsoKSA9PiB0aGlzLmNsb3NlKCl9XG4gICAgICAgICAgICAgIGljb24tbmFtZT1cImNoZXZyb24tc21hbGwtbGVmdC1zbWFsbFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICR7aTE4bkdvQmFja1t0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX1cbiAgICAgICAgICAgIDwvc2JiLW1lbnUtYnV0dG9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1tZW51JzogU2JiTWVudUVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUM4Q0EscUJBQXFCLFFBQVE7QUFFN0IsSUFBTSxjQUFjO0FBQ3BCLElBQU0scUJBQXFCO0FBQzNCLElBQU0sdUJBQXVCO0NBQzNCO0NBQ0E7Q0FDQTtDQUNBO0NBQ0E7Q0FDQTtDQUNBO0NBQ0E7Q0FDQTtDQUNBO0NBQ0Q7QUFFRCxJQUFJLFNBQVM7Ozs7Ozs7OztJQVVBLHdCQUFjO21CQUFTOzs7O2NBQXZCLHVCQUF1QixZQUF1Qjs7OzBCQVV4RCxhQUFhLEVBQ2IsVUFBVSxDQUFBO0FBQ1gsZ0JBQUEsTUFBQSxNQUFBLHFCQUFBO0lBQUEsTUFBQTtJQUFBLE1BQUE7SUFBQSxRQUFBO0lBQUEsU0FBQTtJQUFBLFFBQUE7S0FBQSxNQUFBLFFBQUEsYUFBQTtLQUFBLE1BQUEsUUFBQSxJQUFnQjtLQUFPLE1BQUEsS0FBQSxVQUFBO0FBQUEsVUFBUCxVQUFPOztLQUFBO0lBQUEsVUFBQTtJQUFBLEVBQUEsdUJBQUEsMkJBQUE7Ozs7Ozs7OztBQVhTLFFBQUEsY0FBc0I7OztBQUMvQixRQUFBLFNBQXlCLENBQUMsaUJBQWlCLGFBQU07OztBQUN4QyxRQUFB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
@@ -1,7 +1,7 @@
1
- import { t as SbbMenuActionCommonElementMixin } from "./menu-action-common-CyBv0NwR.js";
1
+ import { t as SbbMenuActionCommonElementMixin } from "./menu-action-common-BTOi6wCg.js";
2
2
  import { SbbMenuButtonElement } from "./menu/menu-button/menu-button.component.js";
3
3
  import { SbbMenuLinkElement } from "./menu/menu-link/menu-link.component.js";
4
- import { t as SbbMenuElement } from "./menu.component-GHJHhE9D.js";
4
+ import { t as SbbMenuElement } from "./menu.component-Dt6ilHX4.js";
5
5
  import "./menu.pure.js";
6
6
  //#region src/elements/menu.ts
7
7
  /** @entrypoint */
@@ -1,5 +1,5 @@
1
- import { t as SbbMenuActionCommonElementMixin } from "./menu-action-common-CyBv0NwR.js";
1
+ import { t as SbbMenuActionCommonElementMixin } from "./menu-action-common-BTOi6wCg.js";
2
2
  import { SbbMenuButtonElement } from "./menu/menu-button/menu-button.component.js";
3
3
  import { SbbMenuLinkElement } from "./menu/menu-link/menu-link.component.js";
4
- import { t as SbbMenuElement } from "./menu.component-GHJHhE9D.js";
4
+ import { t as SbbMenuElement } from "./menu.component-Dt6ilHX4.js";
5
5
  export { SbbMenuActionCommonElementMixin, SbbMenuButtonElement, SbbMenuElement, SbbMenuLinkElement };
@@ -1,2 +1,2 @@
1
- import { t as SbbMessageElement } from "../message.component-uv9eI2gl.js";
1
+ import { t as SbbMessageElement } from "../message.component-cyOtXMuM.js";
2
2
  export { SbbMessageElement };
@@ -79,4 +79,4 @@ var SbbMessageElement = class extends SbbElement {
79
79
  //#endregion
80
80
  export { SbbMessageElement as t };
81
81
 
82
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5jb21wb25lbnQtdXY5ZUkyZ2wuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL21lc3NhZ2UvbWVzc2FnZS5zY3NzP2xpdCZpbmxpbmUiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvbWVzc2FnZS9tZXNzYWdlLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJAdXNlICcuLi9jb3JlL3N0eWxlcycgYXMgc2JiO1xuXG46aG9zdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbjo6c2xvdHRlZChzYmItdGl0bGVbc2xvdD0ndGl0bGUnXSkge1xuICBtYXJnaW46IDA7XG59XG5cbjo6c2xvdHRlZChbc2xvdD0naW1hZ2UnXSkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWlubGluZTogYXV0byAhaW1wb3J0YW50OyAvLyBvdmVycmlkZXMgJy5zYmItZmlndXJlJyBtYXJnaW5cbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zYmItbWVzc2FnZS1pbWFnZS1tYXJnaW4tYmxvY2spICFpbXBvcnRhbnQ7IC8vIG92ZXJyaWRlcyAnLnNiYi1maWd1cmUnIG1hcmdpblxuICB3aWR0aDogMTAwJTtcbn1cblxuOjpzbG90dGVkKFtzbG90PSdzdWJ0aXRsZSddKSB7XG4gIGNvbG9yOiB2YXIoLS1zYmItbWVzc2FnZS1zdWJ0aXRsZS1jb2xvcik7XG4gIGZvbnQtc2l6ZTogdmFyKC0tc2JiLXRleHQtZm9udC1zaXplLXMpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tc2JiLXR5cG8tbGV0dGVyLXNwYWNpbmctdGV4dCk7XG4gIG1hcmdpbjogMDtcbn1cblxuOjpzbG90dGVkKFtzbG90PSdsZWdlbmQnXSkge1xuICBAaW5jbHVkZSBzYmIubGVnZW5kO1xuXG4gIG1hcmdpbi1ibG9jazogdmFyKC0tc2JiLW1lc3NhZ2UtbGVnZW5kLW1hcmdpbi1ibG9jayk7XG59XG5cbjo6c2xvdHRlZChbc2xvdD0nYWN0aW9uJ10pIHtcbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zYmItbWVzc2FnZS1hY3Rpb24tbWFyZ2luLWJsb2NrKTtcbn1cbiIsImltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwgfSBmcm9tICdsaXQnO1xuXG5pbXBvcnQgeyBTYmJFbGVtZW50IH0gZnJvbSAnLi4vY29yZS9iYXNlLWVsZW1lbnRzLnRzJztcbmltcG9ydCB7IGJveFNpemluZ1N0eWxlcyB9IGZyb20gJy4uL2NvcmUvc3R5bGVzLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiVGl0bGVFbGVtZW50IH0gZnJvbSAnLi4vdGl0bGUudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9tZXNzYWdlLnNjc3M/bGl0JmlubGluZSc7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYSBjb21wbGV4IG1lc3NhZ2UgY29tYmluaW5nIGEgdGl0bGUsIGFuIGltYWdlLCBhbiBhY3Rpb24gYW5kIHNvbWUgY29udGVudC5cbiAqXG4gKiBAc2xvdCBpbWFnZSAtIFVzZSB0aGlzIHNsb3QgdG8gcHJvdmlkZSBhbiBgc2JiLWltYWdlYCBjb21wb25lbnQuXG4gKiBAc2xvdCB0aXRsZSAtIFVzZSB0aGlzIHNsb3QgdG8gcHJvdmlkZSBhbiBgc2JiLXRpdGxlYC5cbiAqIEBzbG90IHN1YnRpdGxlIC0gVXNlIHRoaXMgc2xvdCB0byBwcm92aWRlIGEgc3VidGl0bGUsIG11c3QgYmUgYSBwYXJhZ3JhcGguXG4gKiBAc2xvdCBsZWdlbmQgLSBVc2UgdGhpcyBzbG90IHRvIHByb3ZpZGUgYSBsZWdlbmQsIG11c3QgYmUgYSBwYXJhZ3JhcGguXG4gKiBAc2xvdCBhY3Rpb24gLSBVc2UgdGhpcyBzbG90IHRvIHByb3ZpZGUgYW4gYHNiYi1zZWNvbmRhcnktYnV0dG9uYC5cbiAqL1xuZXhwb3J0IGNsYXNzIFNiYk1lc3NhZ2VFbGVtZW50IGV4dGVuZHMgU2JiRWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItbWVzc2FnZSc7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtib3hTaXppbmdTdHlsZXMsIHN0eWxlXTtcblxuICBwcml2YXRlIF9jb25maWd1cmVUaXRsZShldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCB0aXRsZSA9IChldmVudC50YXJnZXQgYXMgSFRNTFNsb3RFbGVtZW50KVxuICAgICAgLmFzc2lnbmVkRWxlbWVudHMoKVxuICAgICAgLmZpbmQoKGUpOiBlIGlzIFNiYlRpdGxlRWxlbWVudCA9PiBlLmxvY2FsTmFtZSA9PT0gJ3NiYi10aXRsZScpO1xuICAgIGlmICh0aXRsZSkge1xuICAgICAgY3VzdG9tRWxlbWVudHMudXBncmFkZSh0aXRsZSk7XG4gICAgICB0aXRsZS52aXN1YWxMZXZlbCA9ICc1JztcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxzbG90IG5hbWU9XCJpbWFnZVwiPjwvc2xvdD5cbiAgICAgIDxzbG90IG5hbWU9XCJ0aXRsZVwiIEBzbG90Y2hhbmdlPSR7dGhpcy5fY29uZmlndXJlVGl0bGV9Pjwvc2xvdD5cbiAgICAgIDxzbG90IG5hbWU9XCJzdWJ0aXRsZVwiPjwvc2xvdD5cbiAgICAgIDxzbG90IG5hbWU9XCJsZWdlbmRcIj48L3Nsb3Q+XG4gICAgICA8c2xvdCBuYW1lPVwiYWN0aW9uXCI+PC9zbG90PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1tZXNzYWdlJzogU2JiTWVzc2FnZUVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDa0JBLElBQWEsb0JBQWIsY0FBdUMsV0FBVTs7QUFDZixPQUFBLGNBQXNCOzs7QUFDL0IsT0FBQSxTQUF5QixDQUFDLGlCQUFpQixnQkFBTTs7Q0FFaEUsZ0JBQWdCLE9BQVk7RUFDbEMsTUFBTSxRQUFTLE1BQU0sT0FDbEIsa0JBQWtCLENBQ2xCLE1BQU0sTUFBNEIsRUFBRSxjQUFjLFlBQVk7QUFDakUsTUFBSSxPQUFPO0FBQ1Qsa0JBQWUsUUFBUSxNQUFNO0FBQzdCLFNBQU0sY0FBYzs7O0NBSUwsU0FBTTtBQUN2QixTQUFPLElBQUk7O3VDQUV3QixLQUFLLGdCQUFlIn0=
82
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5jb21wb25lbnQtY3lPdFhNdU0uanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL21lc3NhZ2UvbWVzc2FnZS5zY3NzP2xpdCZpbmxpbmUiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvbWVzc2FnZS9tZXNzYWdlLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJAdXNlICcuLi9jb3JlL3N0eWxlcycgYXMgc2JiO1xuXG46aG9zdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbjo6c2xvdHRlZChzYmItdGl0bGVbc2xvdD0ndGl0bGUnXSkge1xuICBtYXJnaW46IDA7XG59XG5cbjo6c2xvdHRlZChbc2xvdD0naW1hZ2UnXSkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWlubGluZTogYXV0byAhaW1wb3J0YW50OyAvLyBvdmVycmlkZXMgJy5zYmItZmlndXJlJyBtYXJnaW5cbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zYmItbWVzc2FnZS1pbWFnZS1tYXJnaW4tYmxvY2spICFpbXBvcnRhbnQ7IC8vIG92ZXJyaWRlcyAnLnNiYi1maWd1cmUnIG1hcmdpblxuICB3aWR0aDogMTAwJTtcbn1cblxuOjpzbG90dGVkKFtzbG90PSdzdWJ0aXRsZSddKSB7XG4gIGNvbG9yOiB2YXIoLS1zYmItbWVzc2FnZS1zdWJ0aXRsZS1jb2xvcik7XG4gIGZvbnQtc2l6ZTogdmFyKC0tc2JiLXRleHQtZm9udC1zaXplLXMpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tc2JiLXR5cG8tbGV0dGVyLXNwYWNpbmctdGV4dCk7XG4gIG1hcmdpbjogMDtcbn1cblxuOjpzbG90dGVkKFtzbG90PSdsZWdlbmQnXSkge1xuICBAaW5jbHVkZSBzYmIubGVnZW5kO1xuXG4gIG1hcmdpbi1ibG9jazogdmFyKC0tc2JiLW1lc3NhZ2UtbGVnZW5kLW1hcmdpbi1ibG9jayk7XG59XG5cbjo6c2xvdHRlZChbc2xvdD0nYWN0aW9uJ10pIHtcbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zYmItbWVzc2FnZS1hY3Rpb24tbWFyZ2luLWJsb2NrKTtcbn1cbiIsImltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwgfSBmcm9tICdsaXQnO1xuXG5pbXBvcnQgeyBTYmJFbGVtZW50IH0gZnJvbSAnLi4vY29yZS9iYXNlLWVsZW1lbnRzLnRzJztcbmltcG9ydCB7IGJveFNpemluZ1N0eWxlcyB9IGZyb20gJy4uL2NvcmUvc3R5bGVzLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiVGl0bGVFbGVtZW50IH0gZnJvbSAnLi4vdGl0bGUudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9tZXNzYWdlLnNjc3M/bGl0JmlubGluZSc7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYSBjb21wbGV4IG1lc3NhZ2UgY29tYmluaW5nIGEgdGl0bGUsIGFuIGltYWdlLCBhbiBhY3Rpb24gYW5kIHNvbWUgY29udGVudC5cbiAqXG4gKiBAc2xvdCBpbWFnZSAtIFVzZSB0aGlzIHNsb3QgdG8gcHJvdmlkZSBhbiBgc2JiLWltYWdlYCBjb21wb25lbnQuXG4gKiBAc2xvdCB0aXRsZSAtIFVzZSB0aGlzIHNsb3QgdG8gcHJvdmlkZSBhbiBgc2JiLXRpdGxlYC5cbiAqIEBzbG90IHN1YnRpdGxlIC0gVXNlIHRoaXMgc2xvdCB0byBwcm92aWRlIGEgc3VidGl0bGUsIG11c3QgYmUgYSBwYXJhZ3JhcGguXG4gKiBAc2xvdCBsZWdlbmQgLSBVc2UgdGhpcyBzbG90IHRvIHByb3ZpZGUgYSBsZWdlbmQsIG11c3QgYmUgYSBwYXJhZ3JhcGguXG4gKiBAc2xvdCBhY3Rpb24gLSBVc2UgdGhpcyBzbG90IHRvIHByb3ZpZGUgYW4gYHNiYi1zZWNvbmRhcnktYnV0dG9uYC5cbiAqL1xuZXhwb3J0IGNsYXNzIFNiYk1lc3NhZ2VFbGVtZW50IGV4dGVuZHMgU2JiRWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItbWVzc2FnZSc7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtib3hTaXppbmdTdHlsZXMsIHN0eWxlXTtcblxuICBwcml2YXRlIF9jb25maWd1cmVUaXRsZShldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCB0aXRsZSA9IChldmVudC50YXJnZXQgYXMgSFRNTFNsb3RFbGVtZW50KVxuICAgICAgLmFzc2lnbmVkRWxlbWVudHMoKVxuICAgICAgLmZpbmQoKGUpOiBlIGlzIFNiYlRpdGxlRWxlbWVudCA9PiBlLmxvY2FsTmFtZSA9PT0gJ3NiYi10aXRsZScpO1xuICAgIGlmICh0aXRsZSkge1xuICAgICAgY3VzdG9tRWxlbWVudHMudXBncmFkZSh0aXRsZSk7XG4gICAgICB0aXRsZS52aXN1YWxMZXZlbCA9ICc1JztcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxzbG90IG5hbWU9XCJpbWFnZVwiPjwvc2xvdD5cbiAgICAgIDxzbG90IG5hbWU9XCJ0aXRsZVwiIEBzbG90Y2hhbmdlPSR7dGhpcy5fY29uZmlndXJlVGl0bGV9Pjwvc2xvdD5cbiAgICAgIDxzbG90IG5hbWU9XCJzdWJ0aXRsZVwiPjwvc2xvdD5cbiAgICAgIDxzbG90IG5hbWU9XCJsZWdlbmRcIj48L3Nsb3Q+XG4gICAgICA8c2xvdCBuYW1lPVwiYWN0aW9uXCI+PC9zbG90PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1tZXNzYWdlJzogU2JiTWVzc2FnZUVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDa0JBLElBQWEsb0JBQWIsY0FBdUMsV0FBVTs7QUFDZixPQUFBLGNBQXNCOzs7QUFDL0IsT0FBQSxTQUF5QixDQUFDLGlCQUFpQixnQkFBTTs7Q0FFaEUsZ0JBQWdCLE9BQVk7RUFDbEMsTUFBTSxRQUFTLE1BQU0sT0FDbEIsa0JBQWtCLENBQ2xCLE1BQU0sTUFBNEIsRUFBRSxjQUFjLFlBQVk7QUFDakUsTUFBSSxPQUFPO0FBQ1Qsa0JBQWUsUUFBUSxNQUFNO0FBQzdCLFNBQU0sY0FBYzs7O0NBSUwsU0FBTTtBQUN2QixTQUFPLElBQUk7O3VDQUV3QixLQUFLLGdCQUFlIn0=
@@ -1,4 +1,4 @@
1
- import { t as SbbMessageElement } from "./message.component-uv9eI2gl.js";
1
+ import { t as SbbMessageElement } from "./message.component-cyOtXMuM.js";
2
2
  import "./message.pure.js";
3
3
  //#region src/elements/message.ts
4
4
  /** @entrypoint */
@@ -1,2 +1,2 @@
1
- import { t as SbbMessageElement } from "./message.component-uv9eI2gl.js";
1
+ import { t as SbbMessageElement } from "./message.component-cyOtXMuM.js";
2
2
  export { SbbMessageElement };
@@ -1,2 +1,2 @@
1
- import { t as SbbMiniCalendarElement } from "../../mini-calendar.component-B38J84Gg.js";
1
+ import { t as SbbMiniCalendarElement } from "../../mini-calendar.component-O44l8sfI.js";
2
2
  export { SbbMiniCalendarElement };
@@ -1,2 +1,2 @@
1
- import { t as SbbMiniCalendarDayElement } from "../../mini-calendar-day.component-DdjlUG0k.js";
1
+ import { t as SbbMiniCalendarDayElement } from "../../mini-calendar-day.component-B5SWuVZl.js";
2
2
  export { SbbMiniCalendarDayElement };
@@ -1,4 +1,4 @@
1
- import { t as SbbMiniCalendarDayElement } from "../mini-calendar-day.component-DdjlUG0k.js";
1
+ import { t as SbbMiniCalendarDayElement } from "../mini-calendar-day.component-B5SWuVZl.js";
2
2
  //#region src/elements/mini-calendar/mini-calendar-day.ts
3
3
  /** @entrypoint */
4
4
  SbbMiniCalendarDayElement.define();
@@ -1,2 +1,2 @@
1
- import { t as SbbMiniCalendarMonthElement } from "../../mini-calendar-month.component-BjxmoYz6.js";
1
+ import { t as SbbMiniCalendarMonthElement } from "../../mini-calendar-month.component-Diq4my2u.js";
2
2
  export { SbbMiniCalendarMonthElement };
@@ -1,4 +1,4 @@
1
- import { t as SbbMiniCalendarMonthElement } from "../mini-calendar-month.component-BjxmoYz6.js";
1
+ import { t as SbbMiniCalendarMonthElement } from "../mini-calendar-month.component-Diq4my2u.js";
2
2
  //#region src/elements/mini-calendar/mini-calendar-month.ts
3
3
  /** @entrypoint */
4
4
  SbbMiniCalendarMonthElement.define();
@@ -1,4 +1,4 @@
1
- import { t as SbbMiniCalendarElement } from "../mini-calendar.component-B38J84Gg.js";
1
+ import { t as SbbMiniCalendarElement } from "../mini-calendar.component-O44l8sfI.js";
2
2
  //#region src/elements/mini-calendar/mini-calendar.ts
3
3
  /** @entrypoint */
4
4
  SbbMiniCalendarElement.define();
@@ -210,4 +210,4 @@ var SbbMiniCalendarDayElement = (() => {
210
210
  //#endregion
211
211
  export { SbbMiniCalendarDayElement as t };
212
212
 
213
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaS1jYWxlbmRhci1kYXkuY29tcG9uZW50LURkamxVRzBrLmpzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9taW5pLWNhbGVuZGFyL21pbmktY2FsZW5kYXItZGF5L21pbmktY2FsZW5kYXItZGF5LnNjc3M/bGl0JmlubGluZSIsIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9taW5pLWNhbGVuZGFyL21pbmktY2FsZW5kYXItZGF5L21pbmktY2FsZW5kYXItZGF5LmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJAdXNlICcuLi8uLi9jb3JlL3N0eWxlcycgYXMgc2JiO1xuXG46aG9zdCB7XG4gIC0tc2JiLW1pbmktY2FsZW5kYXItZGF5LWFuaW1hdGlvbi1kdXJhdGlvbjogdmFyKFxuICAgIC0tc2JiLWRpc2FibGUtYW5pbWF0aW9uLWR1cmF0aW9uLFxuICAgIHZhcigtLXNiYi1hbmltYXRpb24tZHVyYXRpb24tMngpXG4gICk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogdmFyKC0tc2JiLW1pbmktY2FsZW5kYXItZGF5LWRpbWVuc2lvbnMpO1xuICB3aWR0aDogdmFyKC0tc2JiLW1pbmktY2FsZW5kYXItZGF5LWRpbWVuc2lvbnMpO1xuICBtYXJnaW46ICN7c2JiLnB4LXRvLXJlbS1idWlsZCgxKX07XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXNiYi1ib3JkZXItcmFkaXVzLWluZmluaXR5KTtcbiAgY29sb3I6IGxpZ2h0LWRhcmsodmFyKC0tc2JiLWNvbG9yLXN0b3JtKSwgdmFyKC0tc2JiLWNvbG9yLXNtb2tlKSk7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbn1cblxuOmhvc3QoOmhvdmVyKSB7XG4gIEBpbmNsdWRlIHNiYi5ob3Zlci1tcSgkaG92ZXI6IHRydWUpIHtcbiAgICBzY2FsZTogdmFyKC0tc2JiLW1pbmktY2FsZW5kYXItZGF5LXNjYWxlKTtcbiAgICB0cmFuc2l0aW9uOiBzY2FsZSB2YXIoLS1zYmItbWluaS1jYWxlbmRhci1kYXktYW5pbWF0aW9uLWVhc2luZylcbiAgICAgIHZhcigtLXNiYi1taW5pLWNhbGVuZGFyLWRheS1hbmltYXRpb24tZHVyYXRpb24pO1xuICB9XG59XG5cbjpob3N0KDpmb2N1cy12aXNpYmxlKSB7XG4gIEBpbmNsdWRlIHNiYi5mb2N1cy1vdXRsaW5lO1xuXG4gIG91dGxpbmUtb2Zmc2V0OiAje3NiYi5weC10by1yZW0tYnVpbGQoMil9O1xufVxuXG46aG9zdChbY29sb3I9J2NoYXJjb2FsJ10pIHtcbiAgY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTItaW52ZXJ0ZWQpO1xufVxuXG46aG9zdChbY29sb3I9J2Nsb3VkJ10pIHtcbiAgY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTQtaW52ZXJ0ZWQpO1xufVxuXG46aG9zdChbY29sb3I9J29yYW5nZSddKSB7XG4gIGNvbG9yOiB2YXIoLS1zYmItY29sb3Itb3JhbmdlLWxpZ2h0KTtcbn1cblxuOmhvc3QoW2NvbG9yPSdyZWQnXSkge1xuICBjb2xvcjogdmFyKC0tc2JiLWNvbG9yLWVycm9yKTtcbn1cblxuOmhvc3QoW2NvbG9yPSdza3knXSkge1xuICBjb2xvcjogdmFyKC0tc2JiLWNvbG9yLXNreS1saWdodCk7XG59XG5cbjpob3N0KFttYXJrZXI9J2NpcmNsZSddKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1jb2xvci0xLWludmVydGVkKTtcbiAgYm9yZGVyOiAje3NiYi5weC10by1yZW0tYnVpbGQoMSl9IHNvbGlkIGN1cnJlbnRjb2xvcjtcbn1cblxuOmhvc3QoW21hcmtlcj0ndGFyZ2V0J10pIHtcbiAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KFxuICAgIGNpcmNsZSxcbiAgICBjdXJyZW50Y29sb3IgMCUsXG4gICAgY3VycmVudGNvbG9yIDI1JSxcbiAgICB2YXIoLS1zYmItY29sb3ItMS1pbnZlcnRlZCkgMjUlLFxuICAgIHZhcigtLXNiYi1jb2xvci0xLWludmVydGVkKSA1MCUsXG4gICAgY3VycmVudGNvbG9yIDUwJSxcbiAgICBjdXJyZW50Y29sb3IgMTAwJVxuICApO1xufVxuXG46aG9zdChbbWFya2VyPSdzbGFzaCddKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAtNDVkZWcsXG4gICAgICB0cmFuc3BhcmVudCA0NSUsXG4gICAgICB2YXIoLS1zYmItY29sb3ItMS1pbnZlcnRlZCkgNDUlLFxuICAgICAgdmFyKC0tc2JiLWNvbG9yLTEtaW52ZXJ0ZWQpIDU1JSxcbiAgICAgIHRyYW5zcGFyZW50IDU1JVxuICAgICk7XG4gIH1cbn1cblxuOmhvc3QoW21hcmtlcj0nY3Jvc3MnXSkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDA7XG4gICAgYmFja2dyb3VuZC1pbWFnZTpcbiAgICAgIGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgLTQ1ZGVnLFxuICAgICAgICB0cmFuc3BhcmVudCA0NSUsXG4gICAgICAgIHZhcigtLXNiYi1jb2xvci0xLWludmVydGVkKSA0NSUsXG4gICAgICAgIHZhcigtLXNiYi1jb2xvci0xLWludmVydGVkKSA1NSUsXG4gICAgICAgIHRyYW5zcGFyZW50IDU1JVxuICAgICAgKSxcbiAgICAgIGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgNDVkZWcsXG4gICAgICAgIHRyYW5zcGFyZW50IDQ1JSxcbiAgICAgICAgdmFyKC0tc2JiLWNvbG9yLTEtaW52ZXJ0ZWQpIDQ1JSxcbiAgICAgICAgdmFyKC0tc2JiLWNvbG9yLTEtaW52ZXJ0ZWQpIDU1JSxcbiAgICAgICAgdHJhbnNwYXJlbnQgNTUlXG4gICAgICApO1xuICB9XG59XG4iLCJpbXBvcnQgeyB0eXBlIENTU1Jlc3VsdEdyb3VwLCBodG1sLCB0eXBlIFByb3BlcnR5VmFsdWVzLCB0eXBlIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBTYmJCdXR0b25CYXNlRWxlbWVudCB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS1lbGVtZW50cy50cyc7XG5pbXBvcnQgeyByZWFkQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29yZS9jb25maWcvY29uZmlnLnRzJztcbmltcG9ydCB7IHR5cGUgRGF0ZUFkYXB0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL2RhdGV0aW1lL2RhdGUtYWRhcHRlci50cyc7XG5pbXBvcnQgeyBkZWZhdWx0RGF0ZUFkYXB0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL2RhdGV0aW1lL25hdGl2ZS1kYXRlLWFkYXB0ZXIudHMnO1xuaW1wb3J0IHsgZm9yY2VUeXBlLCBvbWl0RW1wdHlDb252ZXJ0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL2RlY29yYXRvcnMudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9taW5pLWNhbGVuZGFyLWRheS5zY3NzP2xpdCZpbmxpbmUnO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgZGF5IGluIHRoZSBgc2JiLW1pbmktY2FsZW5kYXItbW9udGhgLlxuICovXG5leHBvcnQgY2xhc3MgU2JiTWluaUNhbGVuZGFyRGF5RWxlbWVudDxUID0gRGF0ZT4gZXh0ZW5kcyBTYmJCdXR0b25CYXNlRWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItbWluaS1jYWxlbmRhci1kYXknO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICBwcml2YXRlIF9kYXRlQWRhcHRlcjogRGF0ZUFkYXB0ZXI8VD4gPSByZWFkQ29uZmlnKCkuZGF0ZXRpbWU/LmRhdGVBZGFwdGVyID8/IGRlZmF1bHREYXRlQWRhcHRlcjtcblxuICAvKiogRGF0ZSBhcyBJU08gc3RyaW5nIChZWVlZLU1NLUREKSAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KClcbiAgcHVibGljIGFjY2Vzc29yIGRhdGU6IHN0cmluZyA9ICcnO1xuXG4gIC8qKiBUaGUgdHlwZSBvZiB0aGUgbWFya2VyLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSwgY29udmVydGVyOiBvbWl0RW1wdHlDb252ZXJ0ZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIG1hcmtlcjogJ3RhcmdldCcgfCAnY2lyY2xlJyB8ICdzbGFzaCcgfCAnY3Jvc3MnIHwgc3RyaW5nID0gJyc7XG5cbiAgLyoqIFRoZSBjb2xvciBvZiB0aGUgbWFya2VyLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSwgY29udmVydGVyOiBvbWl0RW1wdHlDb252ZXJ0ZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIGNvbG9yOiAnY2hhcmNvYWwnIHwgJ2Nsb3VkJyB8ICdvcmFuZ2UnIHwgJ3JlZCcgfCAnc2t5JyB8IHN0cmluZyA9ICcnO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLndpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnZGF0ZScpICYmIHRoaXMuZGF0ZSkge1xuICAgICAgdGhpcy5pbnRlcm5hbHMuYXJpYUxhYmVsID0gdGhpcy5fZGF0ZUFkYXB0ZXIuZ2V0QWNjZXNzaWJpbGl0eUZvcm1hdERhdGUodGhpcy5kYXRlKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyVGVtcGxhdGUoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1taW5pLWNhbGVuZGFyLWRheSc6IFNiYk1pbmlDYWxlbmRhckRheUVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lDY2EsbUNBQXlCO21CQUFtQjs7Ozs7Ozs7OztjQUE1QyxrQ0FBNEMsWUFBb0I7Ozt1QkFPMUUsV0FBVyxFQUNYLFVBQVUsQ0FBQTt5QkFJVixXQUFXLEVBQ1gsU0FBUztJQUFFLFNBQVM7SUFBTSxXQUFXO0lBQW9CLENBQUMsQ0FBQTt3QkFJMUQsV0FBVyxFQUNYLFNBQVM7SUFBRSxTQUFTO0lBQU0sV0FBVztJQUFvQixDQUFDLENBQUE7QUFUM0QsZ0JBQUEsTUFBQSxNQUFBLGtCQUFBO0lBQUEsTUFBQTtJQUFBLE1BQUE7SUFBQSxRQUFBO0lBQUEsU0FBQTtJQUFBLFFBQUE7S0FBQSxNQUFBLFFBQUEsVUFBQTtLQUFBLE1BQUEsUUFBQSxJQUFnQjtLQUFJLE1BQUEsS0FBQSxVQUFBO0FBQUEsVUFBSixPQUFJOztLQUFBO0lBQUEsVUFBQTtJQUFBLEVBQUEsb0JBQUEsd0JBQUE7QUFLcEIsZ0JBQUEsTUFBQSxNQUFBLG9CQUFBO0lBQUEsTUFBQTtJQUFBLE1BQUE7SUFBQSxRQUFBO0lBQUEsU0FBQTtJQUFBLFFBQUE7S0FBQSxNQUFBLFFBQUEsWUFBQTtLQUFBLE1BQUEsUUFBQSxJQUFnQjtLQUFNLE1BQUEsS0FBQSxVQUFBO0FBQUEsVUFBTixTQUFNOztLQUFBO0lBQUEsVUFBQTtJQUFBLEVBQUEsc0JBQUEsMEJBQUE7QUFLdEIsZ0JBQUEsTUFBQSxNQUFBLG1CQUFBO0lBQUEsTUFBQTtJQUFBLE1BQUE7SUFBQSxRQUFBO0lBQUEsU0FBQTtJQUFBLFFBQUE7S0FBQSxNQUFBLFFBQUEsV0FBQTtLQUFBLE1BQUEsUUFBQSxJQUFnQjtLQUFLLE1BQUEsS0FBQSxVQUFBO0FBQUEsVUFBTCxRQUFLOztLQUFBO0lBQUEsVUFBQTtJQUFBLEVBQUEscUJBQUEseUJBQUE7Ozs7Ozs7OztBQWxCVyxRQUFBLGNBQXNCOzs7QUFDL0IsUUFBQSxTQUF5Qjs7RUFPaEQ7O0VBQUEsSUFBZ0IsT0FBSTtBQUFBLFVBQUEsTUFBQTs7RUFBcEIsSUFBZ0IsS0FBSSxPQUFBO0FBQUEsU0FBQSx3QkFBQTs7RUFLcEI7O0VBQUEsSUFBZ0IsU0FBTTtBQUFBLFVBQUEsTUFBQTs7RUFBdEIsSUFBZ0IsT0FBTSxPQUFBO0FBQUEsU0FBQSwwQkFBQTs7RUFLdEI7O0VBQUEsSUFBZ0IsUUFBSztBQUFBLFVBQUEsTUFBQTs7RUFBckIsSUFBZ0IsTUFBSyxPQUFBO0FBQUEsU0FBQSx5QkFBQTs7RUFFRixXQUFXLG1CQUF1QztBQUNuRSxTQUFNLFdBQVcsa0JBQWtCO0FBRW5DLE9BQUksa0JBQWtCLElBQUksT0FBTyxJQUFJLEtBQUssS0FDeEMsTUFBSyxVQUFVLFlBQVksS0FBSyxhQUFhLDJCQUEyQixLQUFLLEtBQUs7O0VBSW5FLGlCQUFjO0FBQy9CLFVBQU8sSUFBSTs7OztBQTFCTCxRQUFBLGVBQStCLFlBQVksQ0FBQyxVQUFVLGVBQWU7QUFLN0QsU0FBQSx3QkFBQSxrQkFBQSxNQUFBLG9CQUFlLEdBQUU7QUFLakIsU0FBQSwyQkFBQSxrQkFBQSxNQUFBLHdCQUFBLEVBQUEsa0JBQUEsTUFBQSxzQkFBMkQsR0FBRTtBQUs3RCxTQUFBLDBCQUFBLGtCQUFBLE1BQUEsMEJBQUEsRUFBQSxrQkFBQSxNQUFBLHFCQUFrRSxHQUFFIn0=
213
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaS1jYWxlbmRhci1kYXkuY29tcG9uZW50LUI1U1d1VlpsLmpzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9taW5pLWNhbGVuZGFyL21pbmktY2FsZW5kYXItZGF5L21pbmktY2FsZW5kYXItZGF5LnNjc3M/bGl0JmlubGluZSIsIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9taW5pLWNhbGVuZGFyL21pbmktY2FsZW5kYXItZGF5L21pbmktY2FsZW5kYXItZGF5LmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJAdXNlICcuLi8uLi9jb3JlL3N0eWxlcycgYXMgc2JiO1xuXG46aG9zdCB7XG4gIC0tc2JiLW1pbmktY2FsZW5kYXItZGF5LWFuaW1hdGlvbi1kdXJhdGlvbjogdmFyKFxuICAgIC0tc2JiLWRpc2FibGUtYW5pbWF0aW9uLWR1cmF0aW9uLFxuICAgIHZhcigtLXNiYi1hbmltYXRpb24tZHVyYXRpb24tMngpXG4gICk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogdmFyKC0tc2JiLW1pbmktY2FsZW5kYXItZGF5LWRpbWVuc2lvbnMpO1xuICB3aWR0aDogdmFyKC0tc2JiLW1pbmktY2FsZW5kYXItZGF5LWRpbWVuc2lvbnMpO1xuICBtYXJnaW46ICN7c2JiLnB4LXRvLXJlbS1idWlsZCgxKX07XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXNiYi1ib3JkZXItcmFkaXVzLWluZmluaXR5KTtcbiAgY29sb3I6IGxpZ2h0LWRhcmsodmFyKC0tc2JiLWNvbG9yLXN0b3JtKSwgdmFyKC0tc2JiLWNvbG9yLXNtb2tlKSk7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbn1cblxuOmhvc3QoOmhvdmVyKSB7XG4gIEBpbmNsdWRlIHNiYi5ob3Zlci1tcSgkaG92ZXI6IHRydWUpIHtcbiAgICBzY2FsZTogdmFyKC0tc2JiLW1pbmktY2FsZW5kYXItZGF5LXNjYWxlKTtcbiAgICB0cmFuc2l0aW9uOiBzY2FsZSB2YXIoLS1zYmItbWluaS1jYWxlbmRhci1kYXktYW5pbWF0aW9uLWVhc2luZylcbiAgICAgIHZhcigtLXNiYi1taW5pLWNhbGVuZGFyLWRheS1hbmltYXRpb24tZHVyYXRpb24pO1xuICB9XG59XG5cbjpob3N0KDpmb2N1cy12aXNpYmxlKSB7XG4gIEBpbmNsdWRlIHNiYi5mb2N1cy1vdXRsaW5lO1xuXG4gIG91dGxpbmUtb2Zmc2V0OiAje3NiYi5weC10by1yZW0tYnVpbGQoMil9O1xufVxuXG46aG9zdChbY29sb3I9J2NoYXJjb2FsJ10pIHtcbiAgY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTItaW52ZXJ0ZWQpO1xufVxuXG46aG9zdChbY29sb3I9J2Nsb3VkJ10pIHtcbiAgY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTQtaW52ZXJ0ZWQpO1xufVxuXG46aG9zdChbY29sb3I9J29yYW5nZSddKSB7XG4gIGNvbG9yOiB2YXIoLS1zYmItY29sb3Itb3JhbmdlLWxpZ2h0KTtcbn1cblxuOmhvc3QoW2NvbG9yPSdyZWQnXSkge1xuICBjb2xvcjogdmFyKC0tc2JiLWNvbG9yLWVycm9yKTtcbn1cblxuOmhvc3QoW2NvbG9yPSdza3knXSkge1xuICBjb2xvcjogdmFyKC0tc2JiLWNvbG9yLXNreS1saWdodCk7XG59XG5cbjpob3N0KFttYXJrZXI9J2NpcmNsZSddKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1jb2xvci0xLWludmVydGVkKTtcbiAgYm9yZGVyOiAje3NiYi5weC10by1yZW0tYnVpbGQoMSl9IHNvbGlkIGN1cnJlbnRjb2xvcjtcbn1cblxuOmhvc3QoW21hcmtlcj0ndGFyZ2V0J10pIHtcbiAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KFxuICAgIGNpcmNsZSxcbiAgICBjdXJyZW50Y29sb3IgMCUsXG4gICAgY3VycmVudGNvbG9yIDI1JSxcbiAgICB2YXIoLS1zYmItY29sb3ItMS1pbnZlcnRlZCkgMjUlLFxuICAgIHZhcigtLXNiYi1jb2xvci0xLWludmVydGVkKSA1MCUsXG4gICAgY3VycmVudGNvbG9yIDUwJSxcbiAgICBjdXJyZW50Y29sb3IgMTAwJVxuICApO1xufVxuXG46aG9zdChbbWFya2VyPSdzbGFzaCddKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAtNDVkZWcsXG4gICAgICB0cmFuc3BhcmVudCA0NSUsXG4gICAgICB2YXIoLS1zYmItY29sb3ItMS1pbnZlcnRlZCkgNDUlLFxuICAgICAgdmFyKC0tc2JiLWNvbG9yLTEtaW52ZXJ0ZWQpIDU1JSxcbiAgICAgIHRyYW5zcGFyZW50IDU1JVxuICAgICk7XG4gIH1cbn1cblxuOmhvc3QoW21hcmtlcj0nY3Jvc3MnXSkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDA7XG4gICAgYmFja2dyb3VuZC1pbWFnZTpcbiAgICAgIGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgLTQ1ZGVnLFxuICAgICAgICB0cmFuc3BhcmVudCA0NSUsXG4gICAgICAgIHZhcigtLXNiYi1jb2xvci0xLWludmVydGVkKSA0NSUsXG4gICAgICAgIHZhcigtLXNiYi1jb2xvci0xLWludmVydGVkKSA1NSUsXG4gICAgICAgIHRyYW5zcGFyZW50IDU1JVxuICAgICAgKSxcbiAgICAgIGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgNDVkZWcsXG4gICAgICAgIHRyYW5zcGFyZW50IDQ1JSxcbiAgICAgICAgdmFyKC0tc2JiLWNvbG9yLTEtaW52ZXJ0ZWQpIDQ1JSxcbiAgICAgICAgdmFyKC0tc2JiLWNvbG9yLTEtaW52ZXJ0ZWQpIDU1JSxcbiAgICAgICAgdHJhbnNwYXJlbnQgNTUlXG4gICAgICApO1xuICB9XG59XG4iLCJpbXBvcnQgeyB0eXBlIENTU1Jlc3VsdEdyb3VwLCBodG1sLCB0eXBlIFByb3BlcnR5VmFsdWVzLCB0eXBlIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBTYmJCdXR0b25CYXNlRWxlbWVudCB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS1lbGVtZW50cy50cyc7XG5pbXBvcnQgeyByZWFkQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29yZS9jb25maWcvY29uZmlnLnRzJztcbmltcG9ydCB7IHR5cGUgRGF0ZUFkYXB0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL2RhdGV0aW1lL2RhdGUtYWRhcHRlci50cyc7XG5pbXBvcnQgeyBkZWZhdWx0RGF0ZUFkYXB0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL2RhdGV0aW1lL25hdGl2ZS1kYXRlLWFkYXB0ZXIudHMnO1xuaW1wb3J0IHsgZm9yY2VUeXBlLCBvbWl0RW1wdHlDb252ZXJ0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL2RlY29yYXRvcnMudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9taW5pLWNhbGVuZGFyLWRheS5zY3NzP2xpdCZpbmxpbmUnO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgZGF5IGluIHRoZSBgc2JiLW1pbmktY2FsZW5kYXItbW9udGhgLlxuICovXG5leHBvcnQgY2xhc3MgU2JiTWluaUNhbGVuZGFyRGF5RWxlbWVudDxUID0gRGF0ZT4gZXh0ZW5kcyBTYmJCdXR0b25CYXNlRWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItbWluaS1jYWxlbmRhci1kYXknO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICBwcml2YXRlIF9kYXRlQWRhcHRlcjogRGF0ZUFkYXB0ZXI8VD4gPSByZWFkQ29uZmlnKCkuZGF0ZXRpbWU/LmRhdGVBZGFwdGVyID8/IGRlZmF1bHREYXRlQWRhcHRlcjtcblxuICAvKiogRGF0ZSBhcyBJU08gc3RyaW5nIChZWVlZLU1NLUREKSAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KClcbiAgcHVibGljIGFjY2Vzc29yIGRhdGU6IHN0cmluZyA9ICcnO1xuXG4gIC8qKiBUaGUgdHlwZSBvZiB0aGUgbWFya2VyLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSwgY29udmVydGVyOiBvbWl0RW1wdHlDb252ZXJ0ZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIG1hcmtlcjogJ3RhcmdldCcgfCAnY2lyY2xlJyB8ICdzbGFzaCcgfCAnY3Jvc3MnIHwgc3RyaW5nID0gJyc7XG5cbiAgLyoqIFRoZSBjb2xvciBvZiB0aGUgbWFya2VyLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSwgY29udmVydGVyOiBvbWl0RW1wdHlDb252ZXJ0ZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIGNvbG9yOiAnY2hhcmNvYWwnIHwgJ2Nsb3VkJyB8ICdvcmFuZ2UnIHwgJ3JlZCcgfCAnc2t5JyB8IHN0cmluZyA9ICcnO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLndpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnZGF0ZScpICYmIHRoaXMuZGF0ZSkge1xuICAgICAgdGhpcy5pbnRlcm5hbHMuYXJpYUxhYmVsID0gdGhpcy5fZGF0ZUFkYXB0ZXIuZ2V0QWNjZXNzaWJpbGl0eUZvcm1hdERhdGUodGhpcy5kYXRlKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyVGVtcGxhdGUoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1taW5pLWNhbGVuZGFyLWRheSc6IFNiYk1pbmlDYWxlbmRhckRheUVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lDY2EsbUNBQXlCO21CQUFtQjs7Ozs7Ozs7OztjQUE1QyxrQ0FBNEMsWUFBb0I7Ozt1QkFPMUUsV0FBVyxFQUNYLFVBQVUsQ0FBQTt5QkFJVixXQUFXLEVBQ1gsU0FBUztJQUFFLFNBQVM7SUFBTSxXQUFXO0lBQW9CLENBQUMsQ0FBQTt3QkFJMUQsV0FBVyxFQUNYLFNBQVM7SUFBRSxTQUFTO0lBQU0sV0FBVztJQUFvQixDQUFDLENBQUE7QUFUM0QsZ0JBQUEsTUFBQSxNQUFBLGtCQUFBO0lBQUEsTUFBQTtJQUFBLE1BQUE7SUFBQSxRQUFBO0lBQUEsU0FBQTtJQUFBLFFBQUE7S0FBQSxNQUFBLFFBQUEsVUFBQTtLQUFBLE1BQUEsUUFBQSxJQUFnQjtLQUFJLE1BQUEsS0FBQSxVQUFBO0FBQUEsVUFBSixPQUFJOztLQUFBO0lBQUEsVUFBQTtJQUFBLEVBQUEsb0JBQUEsd0JBQUE7QUFLcEIsZ0JBQUEsTUFBQSxNQUFBLG9CQUFBO0lBQUEsTUFBQTtJQUFBLE1BQUE7SUFBQSxRQUFBO0lBQUEsU0FBQTtJQUFBLFFBQUE7S0FBQSxNQUFBLFFBQUEsWUFBQTtLQUFBLE1BQUEsUUFBQSxJQUFnQjtLQUFNLE1BQUEsS0FBQSxVQUFBO0FBQUEsVUFBTixTQUFNOztLQUFBO0lBQUEsVUFBQTtJQUFBLEVBQUEsc0JBQUEsMEJBQUE7QUFLdEIsZ0JBQUEsTUFBQSxNQUFBLG1CQUFBO0lBQUEsTUFBQTtJQUFBLE1BQUE7SUFBQSxRQUFBO0lBQUEsU0FBQTtJQUFBLFFBQUE7S0FBQSxNQUFBLFFBQUEsV0FBQTtLQUFBLE1BQUEsUUFBQSxJQUFnQjtLQUFLLE1BQUEsS0FBQSxVQUFBO0FBQUEsVUFBTCxRQUFLOztLQUFBO0lBQUEsVUFBQTtJQUFBLEVBQUEscUJBQUEseUJBQUE7Ozs7Ozs7OztBQWxCVyxRQUFBLGNBQXNCOzs7QUFDL0IsUUFBQSxTQUF5Qjs7RUFPaEQ7O0VBQUEsSUFBZ0IsT0FBSTtBQUFBLFVBQUEsTUFBQTs7RUFBcEIsSUFBZ0IsS0FBSSxPQUFBO0FBQUEsU0FBQSx3QkFBQTs7RUFLcEI7O0VBQUEsSUFBZ0IsU0FBTTtBQUFBLFVBQUEsTUFBQTs7RUFBdEIsSUFBZ0IsT0FBTSxPQUFBO0FBQUEsU0FBQSwwQkFBQTs7RUFLdEI7O0VBQUEsSUFBZ0IsUUFBSztBQUFBLFVBQUEsTUFBQTs7RUFBckIsSUFBZ0IsTUFBSyxPQUFBO0FBQUEsU0FBQSx5QkFBQTs7RUFFRixXQUFXLG1CQUF1QztBQUNuRSxTQUFNLFdBQVcsa0JBQWtCO0FBRW5DLE9BQUksa0JBQWtCLElBQUksT0FBTyxJQUFJLEtBQUssS0FDeEMsTUFBSyxVQUFVLFlBQVksS0FBSyxhQUFhLDJCQUEyQixLQUFLLEtBQUs7O0VBSW5FLGlCQUFjO0FBQy9CLFVBQU8sSUFBSTs7OztBQTFCTCxRQUFBLGVBQStCLFlBQVksQ0FBQyxVQUFVLGVBQWU7QUFLN0QsU0FBQSx3QkFBQSxrQkFBQSxNQUFBLG9CQUFlLEdBQUU7QUFLakIsU0FBQSwyQkFBQSxrQkFBQSxNQUFBLHdCQUFBLEVBQUEsa0JBQUEsTUFBQSxzQkFBMkQsR0FBRTtBQUs3RCxTQUFBLDBCQUFBLGtCQUFBLE1BQUEsMEJBQUEsRUFBQSxrQkFBQSxNQUFBLHFCQUFrRSxHQUFFIn0=
@@ -147,4 +147,4 @@ var SbbMiniCalendarMonthElement = (() => {
147
147
  //#endregion
148
148
  export { SbbMiniCalendarMonthElement as t };
149
149
 
150
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaS1jYWxlbmRhci1tb250aC5jb21wb25lbnQtQmp4bW9ZejYuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL21pbmktY2FsZW5kYXIvbWluaS1jYWxlbmRhci1tb250aC9taW5pLWNhbGVuZGFyLW1vbnRoLnNjc3M/bGl0JmlubGluZSIsIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9taW5pLWNhbGVuZGFyL21pbmktY2FsZW5kYXItbW9udGgvbWluaS1jYWxlbmRhci1tb250aC5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiQHVzZSAnLi4vLi4vY29yZS9zdHlsZXMnIGFzIHNiYjtcblxuOmhvc3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbjpob3N0KDpzdGF0ZShzaG93LXllYXIpKSB7XG4gIC0tc2JiLW1pbmktY2FsZW5kYXItbW9udGgtdmlzaWJpbHR5LXllYXI6IHZpc2libGU7XG59XG5cbjpob3N0KDpzdGF0ZShvcmllbnRhdGlvbi1ob3Jpem9udGFsKSkge1xuICAtLXNiYi1taW5pLWNhbGVuZGFyLW1vbnRoLWdyaWQtYXV0by1mbG93OiByb3c7XG4gIC0tc2JiLW1pbmktY2FsZW5kYXItbW9udGgtaGVpZ2h0OiAje3NiYi5weC10by1yZW0tYnVpbGQoNDgpfTtcbiAgLS1zYmItbWluaS1jYWxlbmRhci1tb250aC1ncmlkLXRlbXBsYXRlLXJvd3M6IG5vbmU7XG4gIC0tc2JiLW1pbmktY2FsZW5kYXItbW9udGgtZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTtcblxuICA6OnNsb3R0ZWQoc2JiLW1pbmktY2FsZW5kYXItZGF5OmZpcnN0LWNoaWxkKSB7XG4gICAgZ3JpZC1jb2x1bW4tc3RhcnQ6IHZhcigtLXNiYi1taW5pLWNhbGVuZGFyLW1vbnRoLW9mZnNldCk7XG4gIH1cbn1cblxuOmhvc3QoOnN0YXRlKG9yaWVudGF0aW9uLXZlcnRpY2FsKSkge1xuICAtLXNiYi1taW5pLWNhbGVuZGFyLW1vbnRoLWdyaWQtYXV0by1mbG93OiBjb2x1bW47XG4gIC0tc2JiLW1pbmktY2FsZW5kYXItbW9udGgtaGVpZ2h0OiBhdXRvO1xuICAtLXNiYi1taW5pLWNhbGVuZGFyLW1vbnRoLWdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDcsIDFmcik7XG4gIC0tc2JiLW1pbmktY2FsZW5kYXItbW9udGgtZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBub25lO1xuXG4gIDo6c2xvdHRlZChzYmItbWluaS1jYWxlbmRhci1kYXk6Zmlyc3QtY2hpbGQpIHtcbiAgICBncmlkLXJvdy1zdGFydDogdmFyKC0tc2JiLW1pbmktY2FsZW5kYXItbW9udGgtb2Zmc2V0KTtcbiAgfVxufVxuXG4uc2JiLW1pbmktY2FsZW5kYXItbW9udGgtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGhlaWdodDogdmFyKC0tc2JiLW1pbmktY2FsZW5kYXItbW9udGgtaGVpZ2h0KTtcbiAgZ3JpZC1hdXRvLWZsb3c6IHZhcigtLXNiYi1taW5pLWNhbGVuZGFyLW1vbnRoLWdyaWQtYXV0by1mbG93KTtcbiAgZ3JpZC1hdXRvLXJvd3M6ICN7c2JiLnB4LXRvLXJlbS1idWlsZCg4KX07XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogdmFyKC0tc2JiLW1pbmktY2FsZW5kYXItbW9udGgtZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zKTtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiB2YXIoLS1zYmItbWluaS1jYWxlbmRhci1tb250aC1ncmlkLXRlbXBsYXRlLXJvd3MpO1xufVxuXG4uc2JiLW1pbmktY2FsZW5kYXItbW9udGgtbGFiZWwteWVhcixcbi5zYmItbWluaS1jYWxlbmRhci1tb250aC1sYWJlbC1tb250aCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tc2JiLXRleHQtZm9udC1zaXplLXh4cyk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1zYmItdHlwby1sZXR0ZXItc3BhY2luZy10ZXh0KTtcbiAgY29sb3I6IHZhcigtLXNiYi1taW5pLWNhbGVuZGFyLW1vbnRoLWxhYmVsLWNvbG9yKTtcbn1cblxuLnNiYi1taW5pLWNhbGVuZGFyLW1vbnRoLWxhYmVsLXllYXIge1xuICB2aXNpYmlsaXR5OiB2YXIoLS1zYmItbWluaS1jYWxlbmRhci1tb250aC12aXNpYmlsdHkteWVhcik7XG59XG4iLCJpbXBvcnQgeyB0eXBlIENTU1Jlc3VsdEdyb3VwLCB0eXBlIFByb3BlcnR5VmFsdWVzLCB0eXBlIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IFNiYkVsZW1lbnQgfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2UtZWxlbWVudHMudHMnO1xuaW1wb3J0IHsgcmVhZENvbmZpZyB9IGZyb20gJy4uLy4uL2NvcmUvY29uZmlnL2NvbmZpZy50cyc7XG5pbXBvcnQgeyBTYmJQcm9wZXJ0eVdhdGNoZXJDb250cm9sbGVyIH0gZnJvbSAnLi4vLi4vY29yZS9jb250cm9sbGVycy50cyc7XG5pbXBvcnQgeyB0eXBlIERhdGVBZGFwdGVyIH0gZnJvbSAnLi4vLi4vY29yZS9kYXRldGltZS9kYXRlLWFkYXB0ZXIudHMnO1xuaW1wb3J0IHsgZGVmYXVsdERhdGVBZGFwdGVyIH0gZnJvbSAnLi4vLi4vY29yZS9kYXRldGltZS9uYXRpdmUtZGF0ZS1hZGFwdGVyLnRzJztcbmltcG9ydCB7IGZvcmNlVHlwZSB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy50cyc7XG5pbXBvcnQgdHlwZSB7IFNiYk9yaWVudGF0aW9uIH0gZnJvbSAnLi4vLi4vY29yZS9pbnRlcmZhY2VzLnRzJztcbmltcG9ydCB7IGJveFNpemluZ1N0eWxlcyB9IGZyb20gJy4uLy4uL2NvcmUvc3R5bGVzLnRzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vbWluaS1jYWxlbmRhci1tb250aC5zY3NzP2xpdCZpbmxpbmUnO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgbW9udGggaW4gdGhlIGBzYmItbWluaS1jYWxlbmRhcmAuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgYHNiYi1taW5pLWNhbGVuZGFyLWRheWAgZWxlbWVudHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBTYmJNaW5pQ2FsZW5kYXJNb250aEVsZW1lbnQ8VCA9IERhdGU+IGV4dGVuZHMgU2JiRWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItbWluaS1jYWxlbmRhci1tb250aCc7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtib3hTaXppbmdTdHlsZXMsIHN0eWxlXTtcblxuICAvKiogRGF0ZSBhcyBJU08gc3RyaW5nIChZWVlZLU1NKSAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KClcbiAgcHVibGljIGFjY2Vzc29yIGRhdGU6IHN0cmluZyA9ICcnO1xuXG4gIHByaXZhdGUgX2RhdGVBZGFwdGVyOiBEYXRlQWRhcHRlcjxUPiA9IHJlYWRDb25maWcoKS5kYXRldGltZT8uZGF0ZUFkYXB0ZXIgPz8gZGVmYXVsdERhdGVBZGFwdGVyO1xuICBwcml2YXRlIF9tb250aE5hbWVzID0gdGhpcy5fZGF0ZUFkYXB0ZXIuZ2V0TW9udGhOYW1lcygnc2hvcnQnKTtcbiAgcHJpdmF0ZSBfbW9udGhMYWJlbDogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX3llYXJMYWJlbDogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX3ByZXZpb3VzT3JpZW50YXRpb246IFNiYk9yaWVudGF0aW9uIHwgbnVsbCA9IG51bGw7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5hZGRDb250cm9sbGVyKFxuICAgICAgbmV3IFNiYlByb3BlcnR5V2F0Y2hlckNvbnRyb2xsZXIodGhpcywgKCkgPT4gdGhpcy5jbG9zZXN0KCdzYmItbWluaS1jYWxlbmRhcicpLCB7XG4gICAgICAgIG9yaWVudGF0aW9uOiAocGFyZW50KSA9PiB7XG4gICAgICAgICAgaWYgKHRoaXMuX3ByZXZpb3VzT3JpZW50YXRpb24pIHtcbiAgICAgICAgICAgIHRoaXMuaW50ZXJuYWxzLnN0YXRlcy5kZWxldGUoYG9yaWVudGF0aW9uLSR7dGhpcy5fcHJldmlvdXNPcmllbnRhdGlvbn1gKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy5fcHJldmlvdXNPcmllbnRhdGlvbiA9IHBhcmVudC5vcmllbnRhdGlvbjtcbiAgICAgICAgICBpZiAodGhpcy5fcHJldmlvdXNPcmllbnRhdGlvbikge1xuICAgICAgICAgICAgdGhpcy5pbnRlcm5hbHMuc3RhdGVzLmFkZChgb3JpZW50YXRpb24tJHt0aGlzLl9wcmV2aW91c09yaWVudGF0aW9ufWApO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdkYXRlJykgJiYgdGhpcy5kYXRlKSB7XG4gICAgICBpZiAoIXRoaXMuZGF0ZS5tYXRjaCgvXlxcZHs0fS0oMFsxLTldfDFbMC0yXSkkLykpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY29uc3Qgc3BsaXREYXRlID0gdGhpcy5kYXRlLnNwbGl0KCctJyk7XG4gICAgICBjb25zdCBkYXRlID0gdGhpcy5fZGF0ZUFkYXB0ZXIuY3JlYXRlRGF0ZSgrc3BsaXREYXRlWzBdLCArc3BsaXREYXRlWzFdLCAxKTtcbiAgICAgIGNvbnN0IG9mZnNldCA9IHRoaXMuX2RhdGVBZGFwdGVyLmdldEZpcnN0V2Vla09mZnNldChkYXRlKTtcbiAgICAgIHRoaXMuc3R5bGU/LnNldFByb3BlcnR5KCctLXNiYi1taW5pLWNhbGVuZGFyLW1vbnRoLW9mZnNldCcsIGAke29mZnNldCArIDF9YCk7XG5cbiAgICAgIHRoaXMuX21vbnRoTGFiZWwgPSBgJHt0aGlzLl9tb250aE5hbWVzWytzcGxpdERhdGVbMV0gLSAxXX0uYDtcbiAgICAgIHRoaXMuX3llYXJMYWJlbCA9IFN0cmluZyh0aGlzLl9kYXRlQWRhcHRlci5nZXRZZWFyKGRhdGUpKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItbWluaS1jYWxlbmRhci1tb250aC1sYWJlbC15ZWFyXCI+JHt0aGlzLl95ZWFyTGFiZWx9PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLW1pbmktY2FsZW5kYXItbW9udGgtd3JhcHBlclwiPlxuICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItbWluaS1jYWxlbmRhci1tb250aC1sYWJlbC1tb250aFwiPiR7dGhpcy5fbW9udGhMYWJlbH08L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItbWluaS1jYWxlbmRhci1tb250aCc6IFNiYk1pbmlDYWxlbmRhck1vbnRoRWxlbWVudDtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQ29CYSxxQ0FBMkI7bUJBQW1COzs7O2NBQTlDLG9DQUE4QyxZQUFVOzs7dUJBS2xFLFdBQVcsRUFDWCxVQUFVLENBQUE7QUFDWCxnQkFBQSxNQUFBLE1BQUEsa0JBQUE7SUFBQSxNQUFBO0lBQUEsTUFBQTtJQUFBLFFBQUE7SUFBQSxTQUFBO0lBQUEsUUFBQTtLQUFBLE1BQUEsUUFBQSxVQUFBO0tBQUEsTUFBQSxRQUFBLElBQWdCO0tBQUksTUFBQSxLQUFBLFVBQUE7QUFBQSxVQUFKLE9BQUk7O0tBQUE7SUFBQSxVQUFBO0lBQUEsRUFBQSxvQkFBQSx3QkFBQTs7Ozs7Ozs7O0FBTlksUUFBQSxjQUFzQjs7O0FBQy9CLFFBQUEsU0FBeUIsQ0FBQyxpQkFBaUIsNEJBQU07O0VBS3hFOztFQUFBLElBQWdCLE9BQUk7QUFBQSxVQUFBLE1BQUE7O0VBQXBCLElBQWdCLEtBQUksT0FBQTtBQUFBLFNBQUEsd0JBQUE7O0VBUXBCLGNBQUE7QUFDRSxVQUFPO0FBVE8sU0FBQSx3QkFBQSxrQkFBQSxNQUFBLG9CQUFlLEdBQUU7QUFFekIsUUFBQSxnQkFBWSxrQkFBQSxNQUFBLHdCQUFBLEVBQW1CLFlBQVksQ0FBQyxVQUFVLGVBQWU7QUFDckUsUUFBQSxjQUFjLEtBQUssYUFBYSxjQUFjLFFBQVE7QUFDdEQsUUFBQSxjQUE2QjtBQUM3QixRQUFBLGFBQTRCO0FBQzVCLFFBQUEsdUJBQThDO0FBSXBELFFBQUssY0FDSCxJQUFJLDZCQUE2QixZQUFZLEtBQUssUUFBUSxvQkFBb0IsRUFBRSxFQUM5RSxjQUFjLFdBQVU7QUFDdEIsUUFBSSxLQUFLLHFCQUNQLE1BQUssVUFBVSxPQUFPLE9BQU8sZUFBZSxLQUFLLHVCQUF1QjtBQUUxRSxTQUFLLHVCQUF1QixPQUFPO0FBQ25DLFFBQUksS0FBSyxxQkFDUCxNQUFLLFVBQVUsT0FBTyxJQUFJLGVBQWUsS0FBSyx1QkFBdUI7TUFHMUUsQ0FBQyxDQUNIOztFQUdnQixXQUFXLG1CQUF1QztBQUNuRSxTQUFNLFdBQVcsa0JBQWtCO0FBQ25DLE9BQUksa0JBQWtCLElBQUksT0FBTyxJQUFJLEtBQUssTUFBTTtBQUM5QyxRQUFJLENBQUMsS0FBSyxLQUFLLE1BQU0sMEJBQTBCLENBQzdDO0lBRUYsTUFBTSxZQUFZLEtBQUssS0FBSyxNQUFNLElBQUk7SUFDdEMsTUFBTSxPQUFPLEtBQUssYUFBYSxXQUFXLENBQUMsVUFBVSxJQUFJLENBQUMsVUFBVSxJQUFJLEVBQUU7SUFDMUUsTUFBTSxTQUFTLEtBQUssYUFBYSxtQkFBbUIsS0FBSztBQUN6RCxTQUFLLE9BQU8sWUFBWSxvQ0FBb0MsR0FBRyxTQUFTLElBQUk7QUFFNUUsU0FBSyxjQUFjLEdBQUcsS0FBSyxZQUFZLENBQUMsVUFBVSxLQUFLLEdBQUU7QUFDekQsU0FBSyxhQUFhLE9BQU8sS0FBSyxhQUFhLFFBQVEsS0FBSyxDQUFDOzs7RUFJMUMsU0FBTTtBQUN2QixVQUFPLElBQUk7d0RBQ3lDLEtBQUssV0FBVTs7Ozt5REFJZCxLQUFLLFlBQVcifQ==
150
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaS1jYWxlbmRhci1tb250aC5jb21wb25lbnQtRGlxNG15MnUuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL21pbmktY2FsZW5kYXIvbWluaS1jYWxlbmRhci1tb250aC9taW5pLWNhbGVuZGFyLW1vbnRoLnNjc3M/bGl0JmlubGluZSIsIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9taW5pLWNhbGVuZGFyL21pbmktY2FsZW5kYXItbW9udGgvbWluaS1jYWxlbmRhci1tb250aC5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiQHVzZSAnLi4vLi4vY29yZS9zdHlsZXMnIGFzIHNiYjtcblxuOmhvc3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbjpob3N0KDpzdGF0ZShzaG93LXllYXIpKSB7XG4gIC0tc2JiLW1pbmktY2FsZW5kYXItbW9udGgtdmlzaWJpbHR5LXllYXI6IHZpc2libGU7XG59XG5cbjpob3N0KDpzdGF0ZShvcmllbnRhdGlvbi1ob3Jpem9udGFsKSkge1xuICAtLXNiYi1taW5pLWNhbGVuZGFyLW1vbnRoLWdyaWQtYXV0by1mbG93OiByb3c7XG4gIC0tc2JiLW1pbmktY2FsZW5kYXItbW9udGgtaGVpZ2h0OiAje3NiYi5weC10by1yZW0tYnVpbGQoNDgpfTtcbiAgLS1zYmItbWluaS1jYWxlbmRhci1tb250aC1ncmlkLXRlbXBsYXRlLXJvd3M6IG5vbmU7XG4gIC0tc2JiLW1pbmktY2FsZW5kYXItbW9udGgtZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTtcblxuICA6OnNsb3R0ZWQoc2JiLW1pbmktY2FsZW5kYXItZGF5OmZpcnN0LWNoaWxkKSB7XG4gICAgZ3JpZC1jb2x1bW4tc3RhcnQ6IHZhcigtLXNiYi1taW5pLWNhbGVuZGFyLW1vbnRoLW9mZnNldCk7XG4gIH1cbn1cblxuOmhvc3QoOnN0YXRlKG9yaWVudGF0aW9uLXZlcnRpY2FsKSkge1xuICAtLXNiYi1taW5pLWNhbGVuZGFyLW1vbnRoLWdyaWQtYXV0by1mbG93OiBjb2x1bW47XG4gIC0tc2JiLW1pbmktY2FsZW5kYXItbW9udGgtaGVpZ2h0OiBhdXRvO1xuICAtLXNiYi1taW5pLWNhbGVuZGFyLW1vbnRoLWdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDcsIDFmcik7XG4gIC0tc2JiLW1pbmktY2FsZW5kYXItbW9udGgtZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBub25lO1xuXG4gIDo6c2xvdHRlZChzYmItbWluaS1jYWxlbmRhci1kYXk6Zmlyc3QtY2hpbGQpIHtcbiAgICBncmlkLXJvdy1zdGFydDogdmFyKC0tc2JiLW1pbmktY2FsZW5kYXItbW9udGgtb2Zmc2V0KTtcbiAgfVxufVxuXG4uc2JiLW1pbmktY2FsZW5kYXItbW9udGgtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGhlaWdodDogdmFyKC0tc2JiLW1pbmktY2FsZW5kYXItbW9udGgtaGVpZ2h0KTtcbiAgZ3JpZC1hdXRvLWZsb3c6IHZhcigtLXNiYi1taW5pLWNhbGVuZGFyLW1vbnRoLWdyaWQtYXV0by1mbG93KTtcbiAgZ3JpZC1hdXRvLXJvd3M6ICN7c2JiLnB4LXRvLXJlbS1idWlsZCg4KX07XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogdmFyKC0tc2JiLW1pbmktY2FsZW5kYXItbW9udGgtZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zKTtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiB2YXIoLS1zYmItbWluaS1jYWxlbmRhci1tb250aC1ncmlkLXRlbXBsYXRlLXJvd3MpO1xufVxuXG4uc2JiLW1pbmktY2FsZW5kYXItbW9udGgtbGFiZWwteWVhcixcbi5zYmItbWluaS1jYWxlbmRhci1tb250aC1sYWJlbC1tb250aCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tc2JiLXRleHQtZm9udC1zaXplLXh4cyk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1zYmItdHlwby1sZXR0ZXItc3BhY2luZy10ZXh0KTtcbiAgY29sb3I6IHZhcigtLXNiYi1taW5pLWNhbGVuZGFyLW1vbnRoLWxhYmVsLWNvbG9yKTtcbn1cblxuLnNiYi1taW5pLWNhbGVuZGFyLW1vbnRoLWxhYmVsLXllYXIge1xuICB2aXNpYmlsaXR5OiB2YXIoLS1zYmItbWluaS1jYWxlbmRhci1tb250aC12aXNpYmlsdHkteWVhcik7XG59XG4iLCJpbXBvcnQgeyB0eXBlIENTU1Jlc3VsdEdyb3VwLCB0eXBlIFByb3BlcnR5VmFsdWVzLCB0eXBlIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IFNiYkVsZW1lbnQgfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2UtZWxlbWVudHMudHMnO1xuaW1wb3J0IHsgcmVhZENvbmZpZyB9IGZyb20gJy4uLy4uL2NvcmUvY29uZmlnL2NvbmZpZy50cyc7XG5pbXBvcnQgeyBTYmJQcm9wZXJ0eVdhdGNoZXJDb250cm9sbGVyIH0gZnJvbSAnLi4vLi4vY29yZS9jb250cm9sbGVycy50cyc7XG5pbXBvcnQgeyB0eXBlIERhdGVBZGFwdGVyIH0gZnJvbSAnLi4vLi4vY29yZS9kYXRldGltZS9kYXRlLWFkYXB0ZXIudHMnO1xuaW1wb3J0IHsgZGVmYXVsdERhdGVBZGFwdGVyIH0gZnJvbSAnLi4vLi4vY29yZS9kYXRldGltZS9uYXRpdmUtZGF0ZS1hZGFwdGVyLnRzJztcbmltcG9ydCB7IGZvcmNlVHlwZSB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy50cyc7XG5pbXBvcnQgdHlwZSB7IFNiYk9yaWVudGF0aW9uIH0gZnJvbSAnLi4vLi4vY29yZS9pbnRlcmZhY2VzLnRzJztcbmltcG9ydCB7IGJveFNpemluZ1N0eWxlcyB9IGZyb20gJy4uLy4uL2NvcmUvc3R5bGVzLnRzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vbWluaS1jYWxlbmRhci1tb250aC5zY3NzP2xpdCZpbmxpbmUnO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgbW9udGggaW4gdGhlIGBzYmItbWluaS1jYWxlbmRhcmAuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgYHNiYi1taW5pLWNhbGVuZGFyLWRheWAgZWxlbWVudHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBTYmJNaW5pQ2FsZW5kYXJNb250aEVsZW1lbnQ8VCA9IERhdGU+IGV4dGVuZHMgU2JiRWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItbWluaS1jYWxlbmRhci1tb250aCc7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtib3hTaXppbmdTdHlsZXMsIHN0eWxlXTtcblxuICAvKiogRGF0ZSBhcyBJU08gc3RyaW5nIChZWVlZLU1NKSAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KClcbiAgcHVibGljIGFjY2Vzc29yIGRhdGU6IHN0cmluZyA9ICcnO1xuXG4gIHByaXZhdGUgX2RhdGVBZGFwdGVyOiBEYXRlQWRhcHRlcjxUPiA9IHJlYWRDb25maWcoKS5kYXRldGltZT8uZGF0ZUFkYXB0ZXIgPz8gZGVmYXVsdERhdGVBZGFwdGVyO1xuICBwcml2YXRlIF9tb250aE5hbWVzID0gdGhpcy5fZGF0ZUFkYXB0ZXIuZ2V0TW9udGhOYW1lcygnc2hvcnQnKTtcbiAgcHJpdmF0ZSBfbW9udGhMYWJlbDogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX3llYXJMYWJlbDogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX3ByZXZpb3VzT3JpZW50YXRpb246IFNiYk9yaWVudGF0aW9uIHwgbnVsbCA9IG51bGw7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5hZGRDb250cm9sbGVyKFxuICAgICAgbmV3IFNiYlByb3BlcnR5V2F0Y2hlckNvbnRyb2xsZXIodGhpcywgKCkgPT4gdGhpcy5jbG9zZXN0KCdzYmItbWluaS1jYWxlbmRhcicpLCB7XG4gICAgICAgIG9yaWVudGF0aW9uOiAocGFyZW50KSA9PiB7XG4gICAgICAgICAgaWYgKHRoaXMuX3ByZXZpb3VzT3JpZW50YXRpb24pIHtcbiAgICAgICAgICAgIHRoaXMuaW50ZXJuYWxzLnN0YXRlcy5kZWxldGUoYG9yaWVudGF0aW9uLSR7dGhpcy5fcHJldmlvdXNPcmllbnRhdGlvbn1gKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy5fcHJldmlvdXNPcmllbnRhdGlvbiA9IHBhcmVudC5vcmllbnRhdGlvbjtcbiAgICAgICAgICBpZiAodGhpcy5fcHJldmlvdXNPcmllbnRhdGlvbikge1xuICAgICAgICAgICAgdGhpcy5pbnRlcm5hbHMuc3RhdGVzLmFkZChgb3JpZW50YXRpb24tJHt0aGlzLl9wcmV2aW91c09yaWVudGF0aW9ufWApO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdkYXRlJykgJiYgdGhpcy5kYXRlKSB7XG4gICAgICBpZiAoIXRoaXMuZGF0ZS5tYXRjaCgvXlxcZHs0fS0oMFsxLTldfDFbMC0yXSkkLykpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY29uc3Qgc3BsaXREYXRlID0gdGhpcy5kYXRlLnNwbGl0KCctJyk7XG4gICAgICBjb25zdCBkYXRlID0gdGhpcy5fZGF0ZUFkYXB0ZXIuY3JlYXRlRGF0ZSgrc3BsaXREYXRlWzBdLCArc3BsaXREYXRlWzFdLCAxKTtcbiAgICAgIGNvbnN0IG9mZnNldCA9IHRoaXMuX2RhdGVBZGFwdGVyLmdldEZpcnN0V2Vla09mZnNldChkYXRlKTtcbiAgICAgIHRoaXMuc3R5bGU/LnNldFByb3BlcnR5KCctLXNiYi1taW5pLWNhbGVuZGFyLW1vbnRoLW9mZnNldCcsIGAke29mZnNldCArIDF9YCk7XG5cbiAgICAgIHRoaXMuX21vbnRoTGFiZWwgPSBgJHt0aGlzLl9tb250aE5hbWVzWytzcGxpdERhdGVbMV0gLSAxXX0uYDtcbiAgICAgIHRoaXMuX3llYXJMYWJlbCA9IFN0cmluZyh0aGlzLl9kYXRlQWRhcHRlci5nZXRZZWFyKGRhdGUpKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItbWluaS1jYWxlbmRhci1tb250aC1sYWJlbC15ZWFyXCI+JHt0aGlzLl95ZWFyTGFiZWx9PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLW1pbmktY2FsZW5kYXItbW9udGgtd3JhcHBlclwiPlxuICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItbWluaS1jYWxlbmRhci1tb250aC1sYWJlbC1tb250aFwiPiR7dGhpcy5fbW9udGhMYWJlbH08L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItbWluaS1jYWxlbmRhci1tb250aCc6IFNiYk1pbmlDYWxlbmRhck1vbnRoRWxlbWVudDtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQ29CYSxxQ0FBMkI7bUJBQW1COzs7O2NBQTlDLG9DQUE4QyxZQUFVOzs7dUJBS2xFLFdBQVcsRUFDWCxVQUFVLENBQUE7QUFDWCxnQkFBQSxNQUFBLE1BQUEsa0JBQUE7SUFBQSxNQUFBO0lBQUEsTUFBQTtJQUFBLFFBQUE7SUFBQSxTQUFBO0lBQUEsUUFBQTtLQUFBLE1BQUEsUUFBQSxVQUFBO0tBQUEsTUFBQSxRQUFBLElBQWdCO0tBQUksTUFBQSxLQUFBLFVBQUE7QUFBQSxVQUFKLE9BQUk7O0tBQUE7SUFBQSxVQUFBO0lBQUEsRUFBQSxvQkFBQSx3QkFBQTs7Ozs7Ozs7O0FBTlksUUFBQSxjQUFzQjs7O0FBQy9CLFFBQUEsU0FBeUIsQ0FBQyxpQkFBaUIsNEJBQU07O0VBS3hFOztFQUFBLElBQWdCLE9BQUk7QUFBQSxVQUFBLE1BQUE7O0VBQXBCLElBQWdCLEtBQUksT0FBQTtBQUFBLFNBQUEsd0JBQUE7O0VBUXBCLGNBQUE7QUFDRSxVQUFPO0FBVE8sU0FBQSx3QkFBQSxrQkFBQSxNQUFBLG9CQUFlLEdBQUU7QUFFekIsUUFBQSxnQkFBWSxrQkFBQSxNQUFBLHdCQUFBLEVBQW1CLFlBQVksQ0FBQyxVQUFVLGVBQWU7QUFDckUsUUFBQSxjQUFjLEtBQUssYUFBYSxjQUFjLFFBQVE7QUFDdEQsUUFBQSxjQUE2QjtBQUM3QixRQUFBLGFBQTRCO0FBQzVCLFFBQUEsdUJBQThDO0FBSXBELFFBQUssY0FDSCxJQUFJLDZCQUE2QixZQUFZLEtBQUssUUFBUSxvQkFBb0IsRUFBRSxFQUM5RSxjQUFjLFdBQVU7QUFDdEIsUUFBSSxLQUFLLHFCQUNQLE1BQUssVUFBVSxPQUFPLE9BQU8sZUFBZSxLQUFLLHVCQUF1QjtBQUUxRSxTQUFLLHVCQUF1QixPQUFPO0FBQ25DLFFBQUksS0FBSyxxQkFDUCxNQUFLLFVBQVUsT0FBTyxJQUFJLGVBQWUsS0FBSyx1QkFBdUI7TUFHMUUsQ0FBQyxDQUNIOztFQUdnQixXQUFXLG1CQUF1QztBQUNuRSxTQUFNLFdBQVcsa0JBQWtCO0FBQ25DLE9BQUksa0JBQWtCLElBQUksT0FBTyxJQUFJLEtBQUssTUFBTTtBQUM5QyxRQUFJLENBQUMsS0FBSyxLQUFLLE1BQU0sMEJBQTBCLENBQzdDO0lBRUYsTUFBTSxZQUFZLEtBQUssS0FBSyxNQUFNLElBQUk7SUFDdEMsTUFBTSxPQUFPLEtBQUssYUFBYSxXQUFXLENBQUMsVUFBVSxJQUFJLENBQUMsVUFBVSxJQUFJLEVBQUU7SUFDMUUsTUFBTSxTQUFTLEtBQUssYUFBYSxtQkFBbUIsS0FBSztBQUN6RCxTQUFLLE9BQU8sWUFBWSxvQ0FBb0MsR0FBRyxTQUFTLElBQUk7QUFFNUUsU0FBSyxjQUFjLEdBQUcsS0FBSyxZQUFZLENBQUMsVUFBVSxLQUFLLEdBQUU7QUFDekQsU0FBSyxhQUFhLE9BQU8sS0FBSyxhQUFhLFFBQVEsS0FBSyxDQUFDOzs7RUFJMUMsU0FBTTtBQUN2QixVQUFPLElBQUk7d0RBQ3lDLEtBQUssV0FBVTs7Ozt5REFJZCxLQUFLLFlBQVcifQ==
@@ -189,4 +189,4 @@ var SbbMiniCalendarElement = (() => {
189
189
  //#endregion
190
190
  export { SbbMiniCalendarElement as t };
191
191
 
192
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaS1jYWxlbmRhci5jb21wb25lbnQtQjM4Sjg0R2cuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL21pbmktY2FsZW5kYXIvbWluaS1jYWxlbmRhci9taW5pLWNhbGVuZGFyLnNjc3M/bGl0JmlubGluZSIsIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9taW5pLWNhbGVuZGFyL21pbmktY2FsZW5kYXIvbWluaS1jYWxlbmRhci5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiQHVzZSAnLi4vLi4vY29yZS9zdHlsZXMnIGFzIHNiYjtcblxuOmhvc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogdmFyKC0tc2JiLXNwYWNpbmctZml4ZWQtMngpIHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTF4KTtcbn1cbiIsImltcG9ydCB7IE11dGF0aW9uQ29udHJvbGxlciB9IGZyb20gJ0BsaXQtbGFicy9vYnNlcnZlcnMvbXV0YXRpb24tY29udHJvbGxlci5qcyc7XG5pbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBodG1sIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBpc0Fycm93S2V5T3JQYWdlS2V5c1ByZXNzZWQgfSBmcm9tICcuLi8uLi9jb3JlL2ExMXkudHMnO1xuaW1wb3J0IHsgU2JiRWxlbWVudCB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS1lbGVtZW50cy50cyc7XG5pbXBvcnQgeyByZWFkQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29yZS9jb25maWcvY29uZmlnLnRzJztcbmltcG9ydCB0eXBlIHsgRGF0ZUFkYXB0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL2RhdGV0aW1lL2RhdGUtYWRhcHRlci50cyc7XG5pbXBvcnQgeyBkZWZhdWx0RGF0ZUFkYXB0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL2RhdGV0aW1lL25hdGl2ZS1kYXRlLWFkYXB0ZXIudHMnO1xuaW1wb3J0IHR5cGUgeyBTYmJPcmllbnRhdGlvbiB9IGZyb20gJy4uLy4uL2NvcmUvaW50ZXJmYWNlcy50cyc7XG5pbXBvcnQgeyDJtXN0YXRlQ29udHJvbGxlciB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiTWluaUNhbGVuZGFyRGF5RWxlbWVudCB9IGZyb20gJy4uL21pbmktY2FsZW5kYXItZGF5L21pbmktY2FsZW5kYXItZGF5LmNvbXBvbmVudC50cyc7XG5pbXBvcnQgdHlwZSB7IFNiYk1pbmlDYWxlbmRhck1vbnRoRWxlbWVudCB9IGZyb20gJy4uL21pbmktY2FsZW5kYXItbW9udGgvbWluaS1jYWxlbmRhci1tb250aC5jb21wb25lbnQudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9taW5pLWNhbGVuZGFyLnNjc3M/bGl0JmlubGluZSc7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYSBtaW5pbWFsIGNhbGVuZGFyLCB0b2dldGhlciB3aXRoIHRoZSBgc2JiLW1pbmktY2FsZW5kYXItbW9udGhgIGFuZCBgc2JiLW1pbmktY2FsZW5kYXItZGF5YC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBgc2JiLW1pbmktY2FsZW5kYXItbW9udGhgIGVsZW1lbnRzLlxuICovXG5leHBvcnQgY2xhc3MgU2JiTWluaUNhbGVuZGFyRWxlbWVudDxUID0gRGF0ZT4gZXh0ZW5kcyBTYmJFbGVtZW50IHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSBlbGVtZW50TmFtZTogc3RyaW5nID0gJ3NiYi1taW5pLWNhbGVuZGFyJztcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG5cbiAgLyoqIFRoZSBvcmllbnRhdGlvbiBvZiBkYXlzIGluIHRoZSBjYWxlbmRhci4gKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KVxuICBwdWJsaWMgYWNjZXNzb3Igb3JpZW50YXRpb246IFNiYk9yaWVudGF0aW9uID0gJ2hvcml6b250YWwnO1xuXG4gIHByaXZhdGUgX2tleWRvd25BYm9ydENvbnRyb2xsZXI6IEFib3J0Q29udHJvbGxlciB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIF9kYXRlQWRhcHRlcjogRGF0ZUFkYXB0ZXI8VD4gPSByZWFkQ29uZmlnKCkuZGF0ZXRpbWU/LmRhdGVBZGFwdGVyID8/IGRlZmF1bHREYXRlQWRhcHRlcjtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIHRoaXMuYWRkQ29udHJvbGxlcihcbiAgICAgIG5ldyBNdXRhdGlvbkNvbnRyb2xsZXIodGhpcywge1xuICAgICAgICBjb25maWc6IHsgY2hpbGRMaXN0OiB0cnVlLCBzdWJ0cmVlOiB0cnVlIH0sXG4gICAgICAgIGNhbGxiYWNrOiAoKSA9PiB0aGlzLl9zZXRNb250aHNTaG93WWVhcigpLFxuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldE1pbmlDYWxlbmRhck1vbnRocygpOiBTYmJNaW5pQ2FsZW5kYXJNb250aEVsZW1lbnRbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5xdWVyeVNlbGVjdG9yQWxsPy4oJ3NiYi1taW5pLWNhbGVuZGFyLW1vbnRoJykgPz8gW10pO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0TWluaUNhbGVuZGFyRGF5cygpOiBTYmJNaW5pQ2FsZW5kYXJEYXlFbGVtZW50W10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKFxuICAgICAgdGhpcy5fZ2V0TWluaUNhbGVuZGFyTW9udGhzKCkuZmxhdE1hcCgobW9udGgpID0+XG4gICAgICAgIEFycmF5LmZyb20obW9udGgucXVlcnlTZWxlY3RvckFsbD8uKCdzYmItbWluaS1jYWxlbmRhci1kYXknKSA/PyBbXSksXG4gICAgICApLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9zZXRNb250aHNTaG93WWVhcigpOiB2b2lkIHtcbiAgICB0aGlzLl9nZXRNaW5pQ2FsZW5kYXJNb250aHMoKS5mb3JFYWNoKFxuICAgICAgKG1vbnRoRWxlbWVudDogU2JiTWluaUNhbGVuZGFyTW9udGhFbGVtZW50LCBpbmRleDogbnVtYmVyKSA9PiB7XG4gICAgICAgIGNvbnN0IHNwbGl0RGF0ZSA9IG1vbnRoRWxlbWVudC5kYXRlLnNwbGl0KCctJyk7XG4gICAgICAgIGlmIChzcGxpdERhdGUubGVuZ3RoID4gMCkge1xuICAgICAgICAgIGlmIChpbmRleCA9PT0gMCB8fCArc3BsaXREYXRlWzFdID09PSAxKSB7XG4gICAgICAgICAgICDJtXN0YXRlQ29udHJvbGxlcihtb250aEVsZW1lbnQpLmFkZCgnc2hvdy15ZWFyJyk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIMm1c3RhdGVDb250cm9sbGVyKG1vbnRoRWxlbWVudCkuZGVsZXRlKCdzaG93LXllYXInKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZUtleWRvd25DYWxlbmRhckRheShldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIGlmIChpc0Fycm93S2V5T3JQYWdlS2V5c1ByZXNzZWQoZXZlbnQpKSB7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cblxuICAgIGNvbnN0IGRheXM6IFNiYk1pbmlDYWxlbmRhckRheUVsZW1lbnRbXSA9IHRoaXMuX2dldE1pbmlDYWxlbmRhckRheXMoKTtcbiAgICBjb25zdCBkYXkgPSBkYXlzLmZpbmQoKGUpID0+IGUgPT09IGV2ZW50LnRhcmdldCkhO1xuICAgIGNvbnN0IG5leHRFbDogU2JiTWluaUNhbGVuZGFyRGF5RWxlbWVudCA9IHRoaXMuX25hdmlnYXRlQnlLZXlib2FyZERheVZpZXcoZGF5cywgZGF5LCBldmVudCk7XG4gICAgY29uc3QgYWN0aXZlRWw6IFNiYk1pbmlDYWxlbmRhckRheUVsZW1lbnQgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50IGFzIFNiYk1pbmlDYWxlbmRhckRheUVsZW1lbnQ7XG4gICAgaWYgKG5leHRFbCAhPT0gYWN0aXZlRWwpIHtcbiAgICAgIG5leHRFbC50YWJJbmRleCA9IDA7XG4gICAgICBuZXh0RWw/LmZvY3VzKCk7XG4gICAgICBhY3RpdmVFbC50YWJJbmRleCA9IC0xO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX25hdmlnYXRlQnlLZXlib2FyZERheVZpZXcoXG4gICAgZGF5czogU2JiTWluaUNhbGVuZGFyRGF5RWxlbWVudFtdLFxuICAgIGRheTogU2JiTWluaUNhbGVuZGFyRGF5RWxlbWVudCxcbiAgICBldmVudDogS2V5Ym9hcmRFdmVudCxcbiAgKTogU2JiTWluaUNhbGVuZGFyRGF5RWxlbWVudCB7XG4gICAgY29uc3QgYXJyb3dzT2Zmc2V0ID1cbiAgICAgIHRoaXMub3JpZW50YXRpb24gPT09ICdob3Jpem9udGFsJyA/IHsgbGVmdFJpZ2h0OiAxLCB1cERvd246IDcgfSA6IHsgbGVmdFJpZ2h0OiA3LCB1cERvd246IDEgfTtcbiAgICBjb25zdCBmdWxsRGF0ZSA9IHRoaXMuX2RhdGVBZGFwdGVyLnBhcnNlKGRheS5kYXRlKSE7XG4gICAgY29uc3QgZGF5RGF0ZSA9IHRoaXMuX2RhdGVBZGFwdGVyLmdldERhdGUoZnVsbERhdGUpO1xuICAgIGNvbnN0IG9mZnNldEZvclZlcnRpY2FsID0gdGhpcy5fZGF0ZUFkYXB0ZXIuZ2V0Rmlyc3RXZWVrT2Zmc2V0KGZ1bGxEYXRlKTtcblxuICAgIHN3aXRjaCAoZXZlbnQua2V5KSB7XG4gICAgICBjYXNlICdBcnJvd1VwJzpcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbmREYXlBcnJvd0tleXMoZGF5cywgZGF5LCAtYXJyb3dzT2Zmc2V0LnVwRG93bik7XG4gICAgICBjYXNlICdBcnJvd0Rvd24nOlxuICAgICAgICByZXR1cm4gdGhpcy5fZmluZERheUFycm93S2V5cyhkYXlzLCBkYXksIGFycm93c09mZnNldC51cERvd24pO1xuICAgICAgY2FzZSAnQXJyb3dMZWZ0JzpcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbmREYXlBcnJvd0tleXMoZGF5cywgZGF5LCAtYXJyb3dzT2Zmc2V0LmxlZnRSaWdodCk7XG4gICAgICBjYXNlICdBcnJvd1JpZ2h0JzpcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbmREYXlBcnJvd0tleXMoZGF5cywgZGF5LCBhcnJvd3NPZmZzZXQubGVmdFJpZ2h0KTtcbiAgICAgIGNhc2UgJ1BhZ2VVcCc6IHtcbiAgICAgICAgaWYgKHRoaXMub3JpZW50YXRpb24gPT09ICdob3Jpem9udGFsJykge1xuICAgICAgICAgIGNvbnN0IGRlbHRhID0gZGF5RGF0ZSAtIChkYXlEYXRlICUgNyB8fCA3KTtcbiAgICAgICAgICByZXR1cm4gdGhpcy5fZmluZERheVNwZWNpYWxLZXlzKGRheXMsIGRheSwgLWRlbHRhLCBhcnJvd3NPZmZzZXQudXBEb3duKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zdCB3ZWVrTnVtYmVyOiBudW1iZXIgPSBNYXRoLmNlaWwoKGRheURhdGUgKyBvZmZzZXRGb3JWZXJ0aWNhbCkgLyA3KTtcbiAgICAgICAgICBjb25zdCBmaXJzdE9mV2VlazogbnVtYmVyID0gKHdlZWtOdW1iZXIgLSAxKSAqIDcgLSBvZmZzZXRGb3JWZXJ0aWNhbCArIDE7XG4gICAgICAgICAgY29uc3QgZGVsdGE6IG51bWJlciA9IGZpcnN0T2ZXZWVrIC0gZGF5RGF0ZTtcbiAgICAgICAgICByZXR1cm4gdGhpcy5fZmluZERheVNwZWNpYWxLZXlzKGRheXMsIGRheSwgZGVsdGEsIGFycm93c09mZnNldC51cERvd24pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBjYXNlICdQYWdlRG93bic6IHtcbiAgICAgICAgaWYgKHRoaXMub3JpZW50YXRpb24gPT09ICdob3Jpem9udGFsJykge1xuICAgICAgICAgIGNvbnN0IGxhc3REYXlNb250aCA9IHRoaXMuX2RhdGVBZGFwdGVyLmdldE51bURheXNJbk1vbnRoKGZ1bGxEYXRlKTtcbiAgICAgICAgICBjb25zdCBkZWx0YSA9IGxhc3REYXlNb250aCAtIGRheURhdGUgLSAoKGxhc3REYXlNb250aCAtIGRheURhdGUpICUgNyk7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbmREYXlTcGVjaWFsS2V5cyhkYXlzLCBkYXksIGRlbHRhLCAtYXJyb3dzT2Zmc2V0LnVwRG93bik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc3Qgd2Vla051bWJlcjogbnVtYmVyID0gTWF0aC5jZWlsKChkYXlEYXRlICsgb2Zmc2V0Rm9yVmVydGljYWwpIC8gNyk7XG4gICAgICAgICAgY29uc3QgbGFzdE9mV2VlazogbnVtYmVyID0gd2Vla051bWJlciAqIDcgLSBvZmZzZXRGb3JWZXJ0aWNhbDtcbiAgICAgICAgICBjb25zdCBkZWx0YTogbnVtYmVyID0gbGFzdE9mV2VlayAtIGRheURhdGU7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbmREYXlTcGVjaWFsS2V5cyhkYXlzLCBkYXksIGRlbHRhLCAtYXJyb3dzT2Zmc2V0LnVwRG93bik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGNhc2UgJ0hvbWUnOiB7XG4gICAgICAgIGNvbnN0IGRhdGUgPSBkYXlEYXRlIC0gMTtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbmREYXlTcGVjaWFsS2V5cyhkYXlzLCBkYXksIC1kYXRlLCArMSk7XG4gICAgICB9XG4gICAgICBjYXNlICdFbmQnOiB7XG4gICAgICAgIGNvbnN0IGxhc3REYXlNb250aCA9IHRoaXMuX2RhdGVBZGFwdGVyLmdldE51bURheXNJbk1vbnRoKGZ1bGxEYXRlKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbmREYXlTcGVjaWFsS2V5cyhkYXlzLCBkYXksIGxhc3REYXlNb250aCAtIGRheURhdGUsIC0xKTtcbiAgICAgIH1cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBkYXk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZmluZERheUFycm93S2V5cyhcbiAgICBkYXlzOiBTYmJNaW5pQ2FsZW5kYXJEYXlFbGVtZW50W10sXG4gICAgZGF5OiBTYmJNaW5pQ2FsZW5kYXJEYXlFbGVtZW50LFxuICAgIGRlbHRhOiBudW1iZXIsXG4gICk6IFNiYk1pbmlDYWxlbmRhckRheUVsZW1lbnQge1xuICAgIGNvbnN0IG5ld0RhdGUgPSB0aGlzLl9kYXRlQWRhcHRlci5hZGRDYWxlbmRhckRheXMoXG4gICAgICB0aGlzLl9kYXRlQWRhcHRlci5kZXNlcmlhbGl6ZShkYXkuZGF0ZSkhLFxuICAgICAgZGVsdGEsXG4gICAgKTtcbiAgICBjb25zdCBuZXdEYXRlU3RyaW5nID0gdGhpcy5fZGF0ZUFkYXB0ZXIudG9Jc284NjAxKG5ld0RhdGUpO1xuICAgIGNvbnN0IG5ld0RheSA9IGRheXMuZmluZCgoZCkgPT4gZC5kYXRlID09PSBuZXdEYXRlU3RyaW5nKTtcbiAgICBpZiAoIW5ld0RheSkge1xuICAgICAgcmV0dXJuIGRheTtcbiAgICB9XG4gICAgcmV0dXJuIG5ld0RheTtcbiAgfVxuXG4gIHByaXZhdGUgX2ZpbmREYXlTcGVjaWFsS2V5cyhcbiAgICBkYXlzOiBTYmJNaW5pQ2FsZW5kYXJEYXlFbGVtZW50W10sXG4gICAgZGF5OiBTYmJNaW5pQ2FsZW5kYXJEYXlFbGVtZW50LFxuICAgIGRlbHRhOiBudW1iZXIsXG4gICAgcmVjdXJzaXZlRGVsdGE6IG51bWJlcixcbiAgKTogU2JiTWluaUNhbGVuZGFyRGF5RWxlbWVudCB7XG4gICAgY29uc3QgbmV3RGF0ZSA9IHRoaXMuX2RhdGVBZGFwdGVyLmFkZENhbGVuZGFyRGF5cyhcbiAgICAgIHRoaXMuX2RhdGVBZGFwdGVyLmRlc2VyaWFsaXplKGRheS5kYXRlKSEsXG4gICAgICBkZWx0YSxcbiAgICApO1xuICAgIGNvbnN0IG5ld0RhdGVTdHJpbmcgPSB0aGlzLl9kYXRlQWRhcHRlci50b0lzbzg2MDEobmV3RGF0ZSk7XG4gICAgY29uc3QgbmV3RGF5ID0gZGF5cy5maW5kKChkKSA9PiBkLmRhdGUgPT09IG5ld0RhdGVTdHJpbmcpO1xuICAgIGlmICghbmV3RGF5KSB7XG4gICAgICByZXR1cm4gdGhpcy5fZmluZERheVNwZWNpYWxLZXlzKGRheXMsIGRheSwgZGVsdGEgKyByZWN1cnNpdmVEZWx0YSwgcmVjdXJzaXZlRGVsdGEpO1xuICAgIH1cbiAgICByZXR1cm4gbmV3RGF5ITtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZVNsb3RjaGFuZ2UoKTogdm9pZCB7XG4gICAgdGhpcy5fc2V0dXBLZXlkb3duTGlzdGVuZXIoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3NldHVwS2V5ZG93bkxpc3RlbmVyKCk6IHZvaWQge1xuICAgIHRoaXMuX2tleWRvd25BYm9ydENvbnRyb2xsZXI/LmFib3J0KCk7XG4gICAgdGhpcy5fa2V5ZG93bkFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcbiAgICB0aGlzLl9nZXRNaW5pQ2FsZW5kYXJEYXlzKCkuZm9yRWFjaCgoZGF5LCBpbmRleCkgPT4ge1xuICAgICAgZGF5LmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCAoZSkgPT4gdGhpcy5faGFuZGxlS2V5ZG93bkNhbGVuZGFyRGF5KGUpLCB7XG4gICAgICAgIHNpZ25hbDogdGhpcy5fa2V5ZG93bkFib3J0Q29udHJvbGxlciEuc2lnbmFsLFxuICAgICAgfSk7XG4gICAgICBpZiAoaW5kZXggIT09IDApIHtcbiAgICAgICAgZGF5LnRhYkluZGV4ID0gLTE7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKiogQGludGVybmFsICovXG4gIHB1YmxpYyBvdmVycmlkZSBmb2N1cygpOiB2b2lkIHtcbiAgICB0aGlzLl9nZXRNaW5pQ2FsZW5kYXJEYXlzKClcbiAgICAgID8uZmluZCgoZSkgPT4gZS50YWJJbmRleCA9PT0gMClcbiAgICAgID8uZm9jdXMoKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMuX3NldHVwS2V5ZG93bkxpc3RlbmVyKCk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgZGlzY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLl9rZXlkb3duQWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgPHNsb3QgQHNsb3RjaGFuZ2U9JHt0aGlzLl9oYW5kbGVTbG90Y2hhbmdlfT48L3Nsb3Q+YDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLW1pbmktY2FsZW5kYXInOiBTYmJNaW5pQ2FsZW5kYXJFbGVtZW50O1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUNzQmEsZ0NBQXNCO21CQUFtQjs7OztjQUF6QywrQkFBeUMsWUFBVTs7OzhCQUs3RCxTQUFTLEVBQUUsU0FBUyxNQUFNLENBQUMsQ0FBQTtBQUM1QixnQkFBQSxNQUFBLE1BQUEseUJBQUE7SUFBQSxNQUFBO0lBQUEsTUFBQTtJQUFBLFFBQUE7SUFBQSxTQUFBO0lBQUEsUUFBQTtLQUFBLE1BQUEsUUFBQSxpQkFBQTtLQUFBLE1BQUEsUUFBQSxJQUFnQjtLQUFXLE1BQUEsS0FBQSxVQUFBO0FBQUEsVUFBWCxjQUFXOztLQUFBO0lBQUEsVUFBQTtJQUFBLEVBQUEsMkJBQUEsK0JBQUE7Ozs7Ozs7OztBQUxLLFFB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
192
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaS1jYWxlbmRhci5jb21wb25lbnQtTzQ0bDhzZkkuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL21pbmktY2FsZW5kYXIvbWluaS1jYWxlbmRhci9taW5pLWNhbGVuZGFyLnNjc3M/bGl0JmlubGluZSIsIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9taW5pLWNhbGVuZGFyL21pbmktY2FsZW5kYXIvbWluaS1jYWxlbmRhci5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiQHVzZSAnLi4vLi4vY29yZS9zdHlsZXMnIGFzIHNiYjtcblxuOmhvc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogdmFyKC0tc2JiLXNwYWNpbmctZml4ZWQtMngpIHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTF4KTtcbn1cbiIsImltcG9ydCB7IE11dGF0aW9uQ29udHJvbGxlciB9IGZyb20gJ0BsaXQtbGFicy9vYnNlcnZlcnMvbXV0YXRpb24tY29udHJvbGxlci5qcyc7XG5pbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBodG1sIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBpc0Fycm93S2V5T3JQYWdlS2V5c1ByZXNzZWQgfSBmcm9tICcuLi8uLi9jb3JlL2ExMXkudHMnO1xuaW1wb3J0IHsgU2JiRWxlbWVudCB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS1lbGVtZW50cy50cyc7XG5pbXBvcnQgeyByZWFkQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29yZS9jb25maWcvY29uZmlnLnRzJztcbmltcG9ydCB0eXBlIHsgRGF0ZUFkYXB0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL2RhdGV0aW1lL2RhdGUtYWRhcHRlci50cyc7XG5pbXBvcnQgeyBkZWZhdWx0RGF0ZUFkYXB0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL2RhdGV0aW1lL25hdGl2ZS1kYXRlLWFkYXB0ZXIudHMnO1xuaW1wb3J0IHR5cGUgeyBTYmJPcmllbnRhdGlvbiB9IGZyb20gJy4uLy4uL2NvcmUvaW50ZXJmYWNlcy50cyc7XG5pbXBvcnQgeyDJtXN0YXRlQ29udHJvbGxlciB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiTWluaUNhbGVuZGFyRGF5RWxlbWVudCB9IGZyb20gJy4uL21pbmktY2FsZW5kYXItZGF5L21pbmktY2FsZW5kYXItZGF5LmNvbXBvbmVudC50cyc7XG5pbXBvcnQgdHlwZSB7IFNiYk1pbmlDYWxlbmRhck1vbnRoRWxlbWVudCB9IGZyb20gJy4uL21pbmktY2FsZW5kYXItbW9udGgvbWluaS1jYWxlbmRhci1tb250aC5jb21wb25lbnQudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9taW5pLWNhbGVuZGFyLnNjc3M/bGl0JmlubGluZSc7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYSBtaW5pbWFsIGNhbGVuZGFyLCB0b2dldGhlciB3aXRoIHRoZSBgc2JiLW1pbmktY2FsZW5kYXItbW9udGhgIGFuZCBgc2JiLW1pbmktY2FsZW5kYXItZGF5YC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBgc2JiLW1pbmktY2FsZW5kYXItbW9udGhgIGVsZW1lbnRzLlxuICovXG5leHBvcnQgY2xhc3MgU2JiTWluaUNhbGVuZGFyRWxlbWVudDxUID0gRGF0ZT4gZXh0ZW5kcyBTYmJFbGVtZW50IHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSBlbGVtZW50TmFtZTogc3RyaW5nID0gJ3NiYi1taW5pLWNhbGVuZGFyJztcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG5cbiAgLyoqIFRoZSBvcmllbnRhdGlvbiBvZiBkYXlzIGluIHRoZSBjYWxlbmRhci4gKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KVxuICBwdWJsaWMgYWNjZXNzb3Igb3JpZW50YXRpb246IFNiYk9yaWVudGF0aW9uID0gJ2hvcml6b250YWwnO1xuXG4gIHByaXZhdGUgX2tleWRvd25BYm9ydENvbnRyb2xsZXI6IEFib3J0Q29udHJvbGxlciB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIF9kYXRlQWRhcHRlcjogRGF0ZUFkYXB0ZXI8VD4gPSByZWFkQ29uZmlnKCkuZGF0ZXRpbWU/LmRhdGVBZGFwdGVyID8/IGRlZmF1bHREYXRlQWRhcHRlcjtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIHRoaXMuYWRkQ29udHJvbGxlcihcbiAgICAgIG5ldyBNdXRhdGlvbkNvbnRyb2xsZXIodGhpcywge1xuICAgICAgICBjb25maWc6IHsgY2hpbGRMaXN0OiB0cnVlLCBzdWJ0cmVlOiB0cnVlIH0sXG4gICAgICAgIGNhbGxiYWNrOiAoKSA9PiB0aGlzLl9zZXRNb250aHNTaG93WWVhcigpLFxuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldE1pbmlDYWxlbmRhck1vbnRocygpOiBTYmJNaW5pQ2FsZW5kYXJNb250aEVsZW1lbnRbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5xdWVyeVNlbGVjdG9yQWxsPy4oJ3NiYi1taW5pLWNhbGVuZGFyLW1vbnRoJykgPz8gW10pO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0TWluaUNhbGVuZGFyRGF5cygpOiBTYmJNaW5pQ2FsZW5kYXJEYXlFbGVtZW50W10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKFxuICAgICAgdGhpcy5fZ2V0TWluaUNhbGVuZGFyTW9udGhzKCkuZmxhdE1hcCgobW9udGgpID0+XG4gICAgICAgIEFycmF5LmZyb20obW9udGgucXVlcnlTZWxlY3RvckFsbD8uKCdzYmItbWluaS1jYWxlbmRhci1kYXknKSA/PyBbXSksXG4gICAgICApLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9zZXRNb250aHNTaG93WWVhcigpOiB2b2lkIHtcbiAgICB0aGlzLl9nZXRNaW5pQ2FsZW5kYXJNb250aHMoKS5mb3JFYWNoKFxuICAgICAgKG1vbnRoRWxlbWVudDogU2JiTWluaUNhbGVuZGFyTW9udGhFbGVtZW50LCBpbmRleDogbnVtYmVyKSA9PiB7XG4gICAgICAgIGNvbnN0IHNwbGl0RGF0ZSA9IG1vbnRoRWxlbWVudC5kYXRlLnNwbGl0KCctJyk7XG4gICAgICAgIGlmIChzcGxpdERhdGUubGVuZ3RoID4gMCkge1xuICAgICAgICAgIGlmIChpbmRleCA9PT0gMCB8fCArc3BsaXREYXRlWzFdID09PSAxKSB7XG4gICAgICAgICAgICDJtXN0YXRlQ29udHJvbGxlcihtb250aEVsZW1lbnQpLmFkZCgnc2hvdy15ZWFyJyk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIMm1c3RhdGVDb250cm9sbGVyKG1vbnRoRWxlbWVudCkuZGVsZXRlKCdzaG93LXllYXInKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZUtleWRvd25DYWxlbmRhckRheShldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIGlmIChpc0Fycm93S2V5T3JQYWdlS2V5c1ByZXNzZWQoZXZlbnQpKSB7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cblxuICAgIGNvbnN0IGRheXM6IFNiYk1pbmlDYWxlbmRhckRheUVsZW1lbnRbXSA9IHRoaXMuX2dldE1pbmlDYWxlbmRhckRheXMoKTtcbiAgICBjb25zdCBkYXkgPSBkYXlzLmZpbmQoKGUpID0+IGUgPT09IGV2ZW50LnRhcmdldCkhO1xuICAgIGNvbnN0IG5leHRFbDogU2JiTWluaUNhbGVuZGFyRGF5RWxlbWVudCA9IHRoaXMuX25hdmlnYXRlQnlLZXlib2FyZERheVZpZXcoZGF5cywgZGF5LCBldmVudCk7XG4gICAgY29uc3QgYWN0aXZlRWw6IFNiYk1pbmlDYWxlbmRhckRheUVsZW1lbnQgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50IGFzIFNiYk1pbmlDYWxlbmRhckRheUVsZW1lbnQ7XG4gICAgaWYgKG5leHRFbCAhPT0gYWN0aXZlRWwpIHtcbiAgICAgIG5leHRFbC50YWJJbmRleCA9IDA7XG4gICAgICBuZXh0RWw/LmZvY3VzKCk7XG4gICAgICBhY3RpdmVFbC50YWJJbmRleCA9IC0xO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX25hdmlnYXRlQnlLZXlib2FyZERheVZpZXcoXG4gICAgZGF5czogU2JiTWluaUNhbGVuZGFyRGF5RWxlbWVudFtdLFxuICAgIGRheTogU2JiTWluaUNhbGVuZGFyRGF5RWxlbWVudCxcbiAgICBldmVudDogS2V5Ym9hcmRFdmVudCxcbiAgKTogU2JiTWluaUNhbGVuZGFyRGF5RWxlbWVudCB7XG4gICAgY29uc3QgYXJyb3dzT2Zmc2V0ID1cbiAgICAgIHRoaXMub3JpZW50YXRpb24gPT09ICdob3Jpem9udGFsJyA/IHsgbGVmdFJpZ2h0OiAxLCB1cERvd246IDcgfSA6IHsgbGVmdFJpZ2h0OiA3LCB1cERvd246IDEgfTtcbiAgICBjb25zdCBmdWxsRGF0ZSA9IHRoaXMuX2RhdGVBZGFwdGVyLnBhcnNlKGRheS5kYXRlKSE7XG4gICAgY29uc3QgZGF5RGF0ZSA9IHRoaXMuX2RhdGVBZGFwdGVyLmdldERhdGUoZnVsbERhdGUpO1xuICAgIGNvbnN0IG9mZnNldEZvclZlcnRpY2FsID0gdGhpcy5fZGF0ZUFkYXB0ZXIuZ2V0Rmlyc3RXZWVrT2Zmc2V0KGZ1bGxEYXRlKTtcblxuICAgIHN3aXRjaCAoZXZlbnQua2V5KSB7XG4gICAgICBjYXNlICdBcnJvd1VwJzpcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbmREYXlBcnJvd0tleXMoZGF5cywgZGF5LCAtYXJyb3dzT2Zmc2V0LnVwRG93bik7XG4gICAgICBjYXNlICdBcnJvd0Rvd24nOlxuICAgICAgICByZXR1cm4gdGhpcy5fZmluZERheUFycm93S2V5cyhkYXlzLCBkYXksIGFycm93c09mZnNldC51cERvd24pO1xuICAgICAgY2FzZSAnQXJyb3dMZWZ0JzpcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbmREYXlBcnJvd0tleXMoZGF5cywgZGF5LCAtYXJyb3dzT2Zmc2V0LmxlZnRSaWdodCk7XG4gICAgICBjYXNlICdBcnJvd1JpZ2h0JzpcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbmREYXlBcnJvd0tleXMoZGF5cywgZGF5LCBhcnJvd3NPZmZzZXQubGVmdFJpZ2h0KTtcbiAgICAgIGNhc2UgJ1BhZ2VVcCc6IHtcbiAgICAgICAgaWYgKHRoaXMub3JpZW50YXRpb24gPT09ICdob3Jpem9udGFsJykge1xuICAgICAgICAgIGNvbnN0IGRlbHRhID0gZGF5RGF0ZSAtIChkYXlEYXRlICUgNyB8fCA3KTtcbiAgICAgICAgICByZXR1cm4gdGhpcy5fZmluZERheVNwZWNpYWxLZXlzKGRheXMsIGRheSwgLWRlbHRhLCBhcnJvd3NPZmZzZXQudXBEb3duKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zdCB3ZWVrTnVtYmVyOiBudW1iZXIgPSBNYXRoLmNlaWwoKGRheURhdGUgKyBvZmZzZXRGb3JWZXJ0aWNhbCkgLyA3KTtcbiAgICAgICAgICBjb25zdCBmaXJzdE9mV2VlazogbnVtYmVyID0gKHdlZWtOdW1iZXIgLSAxKSAqIDcgLSBvZmZzZXRGb3JWZXJ0aWNhbCArIDE7XG4gICAgICAgICAgY29uc3QgZGVsdGE6IG51bWJlciA9IGZpcnN0T2ZXZWVrIC0gZGF5RGF0ZTtcbiAgICAgICAgICByZXR1cm4gdGhpcy5fZmluZERheVNwZWNpYWxLZXlzKGRheXMsIGRheSwgZGVsdGEsIGFycm93c09mZnNldC51cERvd24pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBjYXNlICdQYWdlRG93bic6IHtcbiAgICAgICAgaWYgKHRoaXMub3JpZW50YXRpb24gPT09ICdob3Jpem9udGFsJykge1xuICAgICAgICAgIGNvbnN0IGxhc3REYXlNb250aCA9IHRoaXMuX2RhdGVBZGFwdGVyLmdldE51bURheXNJbk1vbnRoKGZ1bGxEYXRlKTtcbiAgICAgICAgICBjb25zdCBkZWx0YSA9IGxhc3REYXlNb250aCAtIGRheURhdGUgLSAoKGxhc3REYXlNb250aCAtIGRheURhdGUpICUgNyk7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbmREYXlTcGVjaWFsS2V5cyhkYXlzLCBkYXksIGRlbHRhLCAtYXJyb3dzT2Zmc2V0LnVwRG93bik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc3Qgd2Vla051bWJlcjogbnVtYmVyID0gTWF0aC5jZWlsKChkYXlEYXRlICsgb2Zmc2V0Rm9yVmVydGljYWwpIC8gNyk7XG4gICAgICAgICAgY29uc3QgbGFzdE9mV2VlazogbnVtYmVyID0gd2Vla051bWJlciAqIDcgLSBvZmZzZXRGb3JWZXJ0aWNhbDtcbiAgICAgICAgICBjb25zdCBkZWx0YTogbnVtYmVyID0gbGFzdE9mV2VlayAtIGRheURhdGU7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbmREYXlTcGVjaWFsS2V5cyhkYXlzLCBkYXksIGRlbHRhLCAtYXJyb3dzT2Zmc2V0LnVwRG93bik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGNhc2UgJ0hvbWUnOiB7XG4gICAgICAgIGNvbnN0IGRhdGUgPSBkYXlEYXRlIC0gMTtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbmREYXlTcGVjaWFsS2V5cyhkYXlzLCBkYXksIC1kYXRlLCArMSk7XG4gICAgICB9XG4gICAgICBjYXNlICdFbmQnOiB7XG4gICAgICAgIGNvbnN0IGxhc3REYXlNb250aCA9IHRoaXMuX2RhdGVBZGFwdGVyLmdldE51bURheXNJbk1vbnRoKGZ1bGxEYXRlKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbmREYXlTcGVjaWFsS2V5cyhkYXlzLCBkYXksIGxhc3REYXlNb250aCAtIGRheURhdGUsIC0xKTtcbiAgICAgIH1cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBkYXk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZmluZERheUFycm93S2V5cyhcbiAgICBkYXlzOiBTYmJNaW5pQ2FsZW5kYXJEYXlFbGVtZW50W10sXG4gICAgZGF5OiBTYmJNaW5pQ2FsZW5kYXJEYXlFbGVtZW50LFxuICAgIGRlbHRhOiBudW1iZXIsXG4gICk6IFNiYk1pbmlDYWxlbmRhckRheUVsZW1lbnQge1xuICAgIGNvbnN0IG5ld0RhdGUgPSB0aGlzLl9kYXRlQWRhcHRlci5hZGRDYWxlbmRhckRheXMoXG4gICAgICB0aGlzLl9kYXRlQWRhcHRlci5kZXNlcmlhbGl6ZShkYXkuZGF0ZSkhLFxuICAgICAgZGVsdGEsXG4gICAgKTtcbiAgICBjb25zdCBuZXdEYXRlU3RyaW5nID0gdGhpcy5fZGF0ZUFkYXB0ZXIudG9Jc284NjAxKG5ld0RhdGUpO1xuICAgIGNvbnN0IG5ld0RheSA9IGRheXMuZmluZCgoZCkgPT4gZC5kYXRlID09PSBuZXdEYXRlU3RyaW5nKTtcbiAgICBpZiAoIW5ld0RheSkge1xuICAgICAgcmV0dXJuIGRheTtcbiAgICB9XG4gICAgcmV0dXJuIG5ld0RheTtcbiAgfVxuXG4gIHByaXZhdGUgX2ZpbmREYXlTcGVjaWFsS2V5cyhcbiAgICBkYXlzOiBTYmJNaW5pQ2FsZW5kYXJEYXlFbGVtZW50W10sXG4gICAgZGF5OiBTYmJNaW5pQ2FsZW5kYXJEYXlFbGVtZW50LFxuICAgIGRlbHRhOiBudW1iZXIsXG4gICAgcmVjdXJzaXZlRGVsdGE6IG51bWJlcixcbiAgKTogU2JiTWluaUNhbGVuZGFyRGF5RWxlbWVudCB7XG4gICAgY29uc3QgbmV3RGF0ZSA9IHRoaXMuX2RhdGVBZGFwdGVyLmFkZENhbGVuZGFyRGF5cyhcbiAgICAgIHRoaXMuX2RhdGVBZGFwdGVyLmRlc2VyaWFsaXplKGRheS5kYXRlKSEsXG4gICAgICBkZWx0YSxcbiAgICApO1xuICAgIGNvbnN0IG5ld0RhdGVTdHJpbmcgPSB0aGlzLl9kYXRlQWRhcHRlci50b0lzbzg2MDEobmV3RGF0ZSk7XG4gICAgY29uc3QgbmV3RGF5ID0gZGF5cy5maW5kKChkKSA9PiBkLmRhdGUgPT09IG5ld0RhdGVTdHJpbmcpO1xuICAgIGlmICghbmV3RGF5KSB7XG4gICAgICByZXR1cm4gdGhpcy5fZmluZERheVNwZWNpYWxLZXlzKGRheXMsIGRheSwgZGVsdGEgKyByZWN1cnNpdmVEZWx0YSwgcmVjdXJzaXZlRGVsdGEpO1xuICAgIH1cbiAgICByZXR1cm4gbmV3RGF5ITtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZVNsb3RjaGFuZ2UoKTogdm9pZCB7XG4gICAgdGhpcy5fc2V0dXBLZXlkb3duTGlzdGVuZXIoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3NldHVwS2V5ZG93bkxpc3RlbmVyKCk6IHZvaWQge1xuICAgIHRoaXMuX2tleWRvd25BYm9ydENvbnRyb2xsZXI/LmFib3J0KCk7XG4gICAgdGhpcy5fa2V5ZG93bkFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcbiAgICB0aGlzLl9nZXRNaW5pQ2FsZW5kYXJEYXlzKCkuZm9yRWFjaCgoZGF5LCBpbmRleCkgPT4ge1xuICAgICAgZGF5LmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCAoZSkgPT4gdGhpcy5faGFuZGxlS2V5ZG93bkNhbGVuZGFyRGF5KGUpLCB7XG4gICAgICAgIHNpZ25hbDogdGhpcy5fa2V5ZG93bkFib3J0Q29udHJvbGxlciEuc2lnbmFsLFxuICAgICAgfSk7XG4gICAgICBpZiAoaW5kZXggIT09IDApIHtcbiAgICAgICAgZGF5LnRhYkluZGV4ID0gLTE7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKiogQGludGVybmFsICovXG4gIHB1YmxpYyBvdmVycmlkZSBmb2N1cygpOiB2b2lkIHtcbiAgICB0aGlzLl9nZXRNaW5pQ2FsZW5kYXJEYXlzKClcbiAgICAgID8uZmluZCgoZSkgPT4gZS50YWJJbmRleCA9PT0gMClcbiAgICAgID8uZm9jdXMoKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMuX3NldHVwS2V5ZG93bkxpc3RlbmVyKCk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgZGlzY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLl9rZXlkb3duQWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgPHNsb3QgQHNsb3RjaGFuZ2U9JHt0aGlzLl9oYW5kbGVTbG90Y2hhbmdlfT48L3Nsb3Q+YDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLW1pbmktY2FsZW5kYXInOiBTYmJNaW5pQ2FsZW5kYXJFbGVtZW50O1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUNzQmEsZ0NBQXNCO21CQUFtQjs7OztjQUF6QywrQkFBeUMsWUFBVTs7OzhCQUs3RCxTQUFTLEVBQUUsU0FBUyxNQUFNLENBQUMsQ0FBQTtBQUM1QixnQkFBQSxNQUFBLE1BQUEseUJBQUE7SUFBQSxNQUFBO0lBQUEsTUFBQTtJQUFBLFFBQUE7SUFBQSxTQUFBO0lBQUEsUUFBQTtLQUFBLE1BQUEsUUFBQSxpQkFBQTtLQUFBLE1BQUEsUUFBQSxJQUFnQjtLQUFXLE1BQUEsS0FBQSxVQUFBO0FBQUEsVUFBWCxjQUFXOztLQUFBO0lBQUEsVUFBQTtJQUFBLEVBQUEsMkJBQUEsK0JBQUE7Ozs7Ozs7OztBQUxLLFFB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
@@ -1,6 +1,6 @@
1
- import { t as SbbMiniCalendarDayElement } from "./mini-calendar-day.component-DdjlUG0k.js";
2
- import { t as SbbMiniCalendarMonthElement } from "./mini-calendar-month.component-BjxmoYz6.js";
3
- import { t as SbbMiniCalendarElement } from "./mini-calendar.component-B38J84Gg.js";
1
+ import { t as SbbMiniCalendarDayElement } from "./mini-calendar-day.component-B5SWuVZl.js";
2
+ import { t as SbbMiniCalendarMonthElement } from "./mini-calendar-month.component-Diq4my2u.js";
3
+ import { t as SbbMiniCalendarElement } from "./mini-calendar.component-O44l8sfI.js";
4
4
  import "./mini-calendar.pure.js";
5
5
  //#region src/elements/mini-calendar.ts
6
6
  /** @entrypoint */
@@ -1,4 +1,4 @@
1
- import { t as SbbMiniCalendarDayElement } from "./mini-calendar-day.component-DdjlUG0k.js";
2
- import { t as SbbMiniCalendarMonthElement } from "./mini-calendar-month.component-BjxmoYz6.js";
3
- import { t as SbbMiniCalendarElement } from "./mini-calendar.component-B38J84Gg.js";
1
+ import { t as SbbMiniCalendarDayElement } from "./mini-calendar-day.component-B5SWuVZl.js";
2
+ import { t as SbbMiniCalendarMonthElement } from "./mini-calendar-month.component-Diq4my2u.js";
3
+ import { t as SbbMiniCalendarElement } from "./mini-calendar.component-O44l8sfI.js";
4
4
  export { SbbMiniCalendarDayElement, SbbMiniCalendarElement, SbbMiniCalendarMonthElement };
@@ -1,2 +1,2 @@
1
- import { t as SbbNavigationActionCommonElementMixin } from "../../navigation-action-common-saGbvoji.js";
1
+ import { t as SbbNavigationActionCommonElementMixin } from "../../navigation-action-common-CA2aDyJ4.js";
2
2
  export { SbbNavigationActionCommonElementMixin };
@@ -1,4 +1,4 @@
1
- import { t as SbbNavigationActionCommonElementMixin } from "../navigation-action-common-saGbvoji.js";
1
+ import { t as SbbNavigationActionCommonElementMixin } from "../navigation-action-common-CA2aDyJ4.js";
2
2
  //#region src/elements/navigation/common.ts
3
3
  console.warn(`The entrypoint '@sbb-esta/elements/navigation/common.js' has been deprecated.
4
4
  Use either '@sbb-esta/elements/navigation.js' or '@sbb-esta/elements/navigation.pure.js' instead.`);
@@ -1,2 +1,2 @@
1
- import { t as SbbNavigationElement } from "../../navigation.component-_gUhpPyO.js";
1
+ import { t as SbbNavigationElement } from "../../navigation.component-DZ3EQfeI.js";
2
2
  export { SbbNavigationElement };
@@ -1,2 +1,2 @@
1
- import { t as SbbNavigationListElement } from "../../navigation-list.component-AFM4omXQ.js";
1
+ import { t as SbbNavigationListElement } from "../../navigation-list.component-Dz0JLuKb.js";
2
2
  export { SbbNavigationListElement };
@@ -1,4 +1,4 @@
1
- import { t as SbbNavigationListElement } from "../navigation-list.component-AFM4omXQ.js";
1
+ import { t as SbbNavigationListElement } from "../navigation-list.component-Dz0JLuKb.js";
2
2
  //#region src/elements/navigation/navigation-list.ts
3
3
  /** @entrypoint */
4
4
  SbbNavigationListElement.define();
@@ -1,2 +1,2 @@
1
- import { t as SbbNavigationMarkerElement } from "../../navigation-marker.component-BvC73IoI.js";
1
+ import { t as SbbNavigationMarkerElement } from "../../navigation-marker.component-DzRg3INl.js";
2
2
  export { SbbNavigationMarkerElement };
@@ -1,4 +1,4 @@
1
- import { t as SbbNavigationMarkerElement } from "../navigation-marker.component-BvC73IoI.js";
1
+ import { t as SbbNavigationMarkerElement } from "../navigation-marker.component-DzRg3INl.js";
2
2
  //#region src/elements/navigation/navigation-marker.ts
3
3
  /** @entrypoint */
4
4
  SbbNavigationMarkerElement.define();
@@ -1,2 +1,2 @@
1
- import { t as SbbNavigationSectionElement } from "../../navigation-section.component-B-6XU2X5.js";
1
+ import { t as SbbNavigationSectionElement } from "../../navigation-section.component-DnSkQA4r.js";
2
2
  export { SbbNavigationSectionElement };
@@ -1,4 +1,4 @@
1
- import { t as SbbNavigationSectionElement } from "../navigation-section.component-B-6XU2X5.js";
1
+ import { t as SbbNavigationSectionElement } from "../navigation-section.component-DnSkQA4r.js";
2
2
  //#region src/elements/navigation/navigation-section.ts
3
3
  /** @entrypoint */
4
4
  SbbNavigationSectionElement.define();
@@ -1,4 +1,4 @@
1
- import { t as SbbNavigationElement } from "../navigation.component-_gUhpPyO.js";
1
+ import { t as SbbNavigationElement } from "../navigation.component-DZ3EQfeI.js";
2
2
  //#region src/elements/navigation/navigation.ts
3
3
  /** @entrypoint */
4
4
  SbbNavigationElement.define();