@sbb-esta/lyne-elements 2.11.1 → 2.11.2

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 (374) hide show
  1. package/accordion/accordion.component.js +19 -22
  2. package/action-group/action-group.component.js +3 -5
  3. package/alert/alert/alert.component.js +1 -2
  4. package/alert/alert-group/alert-group.component.js +2 -3
  5. package/autocomplete/autocomplete-base-element.js +71 -82
  6. package/autocomplete/autocomplete.component.js +31 -36
  7. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +44 -52
  8. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +3 -4
  9. package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +17 -20
  10. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +23 -26
  11. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +9 -9
  12. package/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +29 -33
  13. package/button/mini-button/mini-button.component.js +1 -1
  14. package/button/mini-button-group/mini-button-group.component.js +1 -2
  15. package/calendar/calendar.component.js +8 -13
  16. package/card/card/card.component.js +12 -12
  17. package/card/card-badge/card-badge.component.js +16 -16
  18. package/card/common/card-action-common.js +23 -25
  19. package/checkbox/checkbox/checkbox.component.js +17 -20
  20. package/checkbox/checkbox-group/checkbox-group.component.js +39 -52
  21. package/checkbox/checkbox-panel/checkbox-panel.component.js +22 -25
  22. package/checkbox/common/checkbox-common.js +13 -15
  23. package/chip/chip-group/chip-group.component.js +59 -70
  24. package/clock/clock.component.js +50 -60
  25. package/container/container/container.component.js +28 -29
  26. package/container/sticky-bar/sticky-bar.component.js +26 -27
  27. package/core/a11y/focus-trap-controller.js +11 -14
  28. package/core/a11y/focus.js +27 -29
  29. package/core/a11y/input-modality-detector.js +18 -19
  30. package/core/a11y/interactivity-checker.js +10 -10
  31. package/core/base-elements/button-base-element.js +13 -18
  32. package/core/base-elements/link-base-element.js +3 -6
  33. package/core/base-elements/open-close-base-element.js +1 -1
  34. package/core/controllers/connected-abort-controller.js +2 -4
  35. package/core/controllers/escapable-overlay-controller.js +10 -12
  36. package/core/controllers/id-reference-controller.js +13 -14
  37. package/core/controllers/inert-controller.js +8 -10
  38. package/core/controllers/slot-state-controller.js +16 -26
  39. package/core/datetime/date-adapter.d.ts.map +1 -1
  40. package/core/datetime/date-adapter.js +21 -21
  41. package/core/datetime/native-date-adapter.js +11 -11
  42. package/core/decorators/date-converter.js +10 -12
  43. package/core/decorators/date-only-type.js +5 -6
  44. package/core/decorators/force-type.js +4 -5
  45. package/core/dom/breakpoint.js +8 -8
  46. package/core/dom/input-element.js +4 -9
  47. package/core/eventing/event-emitter.js +4 -5
  48. package/core/mixins/form-associated-checkbox-mixin.js +32 -37
  49. package/core/mixins/form-associated-input-mixin.js +58 -64
  50. package/core/mixins/form-associated-mixin.js +42 -44
  51. package/core/mixins/form-associated-radio-button-mixin.js +3 -5
  52. package/core/mixins/hydration-mixin.js +12 -13
  53. package/core/mixins/named-slot-list-mixin.js +32 -37
  54. package/core/mixins/panel-mixin.js +26 -27
  55. package/core/mixins.js +1 -1
  56. package/core/overlay/position.js +23 -23
  57. package/core/styles/core/mediaqueries.scss +1 -1
  58. package/core/styles/core.scss +27 -28
  59. package/core/styles/mixins/table.scss +1 -24
  60. package/core/testing/event-spy.js +2 -4
  61. package/core/testing/wait-for-image-ready.js +8 -9
  62. package/core/testing/wait-for-render.js +8 -9
  63. package/custom-elements.json +2 -2
  64. package/date-input/date-input.component.js +2 -4
  65. package/datepicker/common/datepicker-association-controllers.js +21 -24
  66. package/datepicker/common/datepicker-button.js +53 -57
  67. package/datepicker/datepicker/datepicker.component.js +82 -95
  68. package/datepicker/datepicker-next-day/datepicker-next-day.component.js +1 -1
  69. package/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +1 -1
  70. package/datepicker/datepicker-toggle/datepicker-toggle.component.js +74 -81
  71. package/development/accordion/accordion.component.js +4 -7
  72. package/development/action-group/action-group.component.js +3 -5
  73. package/development/alert/alert/alert.component.js +2 -3
  74. package/development/alert/alert-group/alert-group.component.js +2 -3
  75. package/development/autocomplete/autocomplete-base-element.js +19 -30
  76. package/development/autocomplete/autocomplete.component.js +7 -12
  77. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +10 -18
  78. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +3 -4
  79. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +1 -1
  80. package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +4 -7
  81. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +4 -7
  82. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +2 -2
  83. package/development/breadcrumb/breadcrumb/breadcrumb.component.js +1 -1
  84. package/development/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +5 -9
  85. package/development/button/accent-button/accent-button.component.js +1 -1
  86. package/development/button/accent-button-link/accent-button-link.component.js +1 -1
  87. package/development/button/accent-button-static/accent-button-static.component.js +1 -1
  88. package/development/button/button/button.component.js +1 -1
  89. package/development/button/button-link/button-link.component.js +1 -1
  90. package/development/button/button-static/button-static.component.js +1 -1
  91. package/development/button/common/button-common.js +1 -1
  92. package/development/button/mini-button/mini-button.component.js +1 -1
  93. package/development/button/mini-button-group/mini-button-group.component.js +2 -3
  94. package/development/button/secondary-button/secondary-button.component.js +1 -1
  95. package/development/button/secondary-button-link/secondary-button-link.component.js +1 -1
  96. package/development/button/secondary-button-static/secondary-button-static.component.js +1 -1
  97. package/development/button/transparent-button/transparent-button.component.js +1 -1
  98. package/development/button/transparent-button-link/transparent-button-link.component.js +1 -1
  99. package/development/button/transparent-button-static/transparent-button-static.component.js +1 -1
  100. package/development/calendar/calendar.component.js +9 -14
  101. package/development/card/card/card.component.js +1 -1
  102. package/development/card/card-badge/card-badge.component.js +1 -1
  103. package/development/card/card-button/card-button.component.js +1 -1
  104. package/development/card/card-link/card-link.component.js +1 -1
  105. package/development/card/common/card-action-common.js +3 -5
  106. package/development/checkbox/checkbox/checkbox.component.js +2 -5
  107. package/development/checkbox/checkbox-group/checkbox-group.component.js +8 -21
  108. package/development/checkbox/checkbox-panel/checkbox-panel.component.js +2 -5
  109. package/development/checkbox/common/checkbox-common.js +3 -5
  110. package/development/chip/chip/chip.component.js +1 -1
  111. package/development/chip/chip-group/chip-group.component.js +15 -26
  112. package/development/chip-label/chip-label.component.js +1 -1
  113. package/development/clock/clock.component.js +23 -33
  114. package/development/container/container/container.component.js +2 -3
  115. package/development/container/sticky-bar/sticky-bar.component.js +2 -3
  116. package/development/core/a11y/arrow-navigation.js +1 -1
  117. package/development/core/a11y/fake-event-detection.js +1 -1
  118. package/development/core/a11y/focus-trap-controller.js +6 -9
  119. package/development/core/a11y/focus-visible-within-controller.js +1 -1
  120. package/development/core/a11y/focus.js +8 -10
  121. package/development/core/a11y/input-modality-detector.js +2 -3
  122. package/development/core/a11y/interactivity-checker.js +2 -2
  123. package/development/core/base-elements/action-base-element.js +2 -3
  124. package/development/core/base-elements/button-base-element.js +6 -11
  125. package/development/core/base-elements/link-base-element.js +4 -7
  126. package/development/core/base-elements/open-close-base-element.js +2 -2
  127. package/development/core/config/config.js +1 -1
  128. package/development/core/controllers/connected-abort-controller.js +3 -5
  129. package/development/core/controllers/escapable-overlay-controller.js +3 -5
  130. package/development/core/controllers/id-reference-controller.js +2 -3
  131. package/development/core/controllers/inert-controller.js +4 -6
  132. package/development/core/controllers/language-controller.js +1 -1
  133. package/development/core/controllers/media-matchers-controller.js +1 -1
  134. package/development/core/controllers/slot-state-controller.js +8 -18
  135. package/development/core/datetime/date-adapter.d.ts.map +1 -1
  136. package/development/core/datetime/date-adapter.js +5 -5
  137. package/development/core/datetime/native-date-adapter.js +2 -2
  138. package/development/core/decorators/date-converter.js +3 -5
  139. package/development/core/decorators/date-only-type.js +2 -3
  140. package/development/core/decorators/force-type.js +3 -4
  141. package/development/core/decorators/get-override.js +1 -1
  142. package/development/core/decorators/handle-distinct-change.js +1 -1
  143. package/development/core/decorators/host-attributes.js +1 -1
  144. package/development/core/decorators/slot-state.js +1 -1
  145. package/development/core/dom/animation.js +1 -1
  146. package/development/core/dom/breakpoint.js +2 -2
  147. package/development/core/dom/find-referenced-element.js +1 -1
  148. package/development/core/dom/host-context.js +1 -1
  149. package/development/core/dom/input-element.js +3 -4
  150. package/development/core/dom/platform.js +1 -1
  151. package/development/core/dom/scroll.js +1 -1
  152. package/development/core/dom/set-or-remove-attribute.js +1 -1
  153. package/development/core/eventing/composed-path-has-attribute.js +1 -1
  154. package/development/core/eventing/event-emitter.js +2 -3
  155. package/development/core/eventing/form-element-handlers.js +1 -1
  156. package/development/core/eventing/forward-event.js +1 -1
  157. package/development/core/eventing/throttle.js +1 -1
  158. package/development/core/i18n/i18n.js +1 -1
  159. package/development/core/mixins/animation-complete-mixin.js +1 -1
  160. package/development/core/mixins/disabled-mixin.js +1 -1
  161. package/development/core/mixins/form-associated-checkbox-mixin.js +6 -9
  162. package/development/core/mixins/form-associated-input-mixin.js +14 -20
  163. package/development/core/mixins/form-associated-mixin.js +5 -7
  164. package/development/core/mixins/form-associated-radio-button-mixin.js +7 -9
  165. package/development/core/mixins/hydration-mixin.js +3 -4
  166. package/development/core/mixins/named-slot-list-mixin.js +4 -7
  167. package/development/core/mixins/negative-mixin.js +1 -1
  168. package/development/core/mixins/panel-mixin.js +2 -3
  169. package/development/core/mixins/required-mixin.js +1 -1
  170. package/development/core/mixins/update-scheduler-mixin.js +1 -1
  171. package/development/core/overlay/overlay-option-panel.js +1 -1
  172. package/development/core/overlay/overlay-trigger-attributes.js +1 -1
  173. package/development/core/overlay/overlay.js +1 -1
  174. package/development/core/overlay/position.js +5 -5
  175. package/development/core/testing/event-spy.js +3 -5
  176. package/development/core/testing/mocha-extensions.js +1 -1
  177. package/development/core/testing/wait-for-condition.js +1 -1
  178. package/development/core/testing/wait-for-image-ready.js +2 -3
  179. package/development/core/testing/wait-for-render.js +2 -3
  180. package/development/date-input/date-input.component.js +4 -6
  181. package/development/datepicker/common/datepicker-association-controllers.js +6 -9
  182. package/development/datepicker/common/datepicker-button.js +7 -11
  183. package/development/datepicker/datepicker/datepicker.component.js +22 -35
  184. package/development/datepicker/datepicker-next-day/datepicker-next-day.component.js +1 -1
  185. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +1 -1
  186. package/development/datepicker/datepicker-toggle/datepicker-toggle.component.js +13 -20
  187. package/development/dialog/dialog/dialog.component.js +16 -27
  188. package/development/dialog/dialog-actions/dialog-actions.component.js +1 -1
  189. package/development/dialog/dialog-content/dialog-content.component.js +1 -1
  190. package/development/dialog/dialog-title/dialog-title.component.js +1 -1
  191. package/development/divider/divider.component.js +1 -1
  192. package/development/expansion-panel/expansion-panel/expansion-panel.component.js +9 -13
  193. package/development/expansion-panel/expansion-panel-content/expansion-panel-content.component.js +1 -1
  194. package/development/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +4 -5
  195. package/development/file-selector/common/file-selector-common.js +2 -3
  196. package/development/file-selector/file-selector/file-selector.component.js +1 -1
  197. package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.js +1 -1
  198. package/development/flip-card/flip-card/flip-card.component.js +7 -13
  199. package/development/flip-card/flip-card-details/flip-card-details.component.js +2 -3
  200. package/development/flip-card/flip-card-summary/flip-card-summary.component.js +2 -3
  201. package/development/footer/footer.component.js +1 -1
  202. package/development/form-error/form-error.component.js +3 -4
  203. package/development/form-field/form-field/form-field.component.js +19 -30
  204. package/development/form-field/form-field-clear/form-field-clear.component.js +4 -6
  205. package/development/header/common/header-action-common.js +1 -1
  206. package/development/header/header/header.component.js +5 -8
  207. package/development/header/header-button/header-button.component.js +1 -1
  208. package/development/header/header-link/header-link.component.js +1 -1
  209. package/development/icon/icon-base.js +1 -1
  210. package/development/icon/icon-name-mixin.js +1 -1
  211. package/development/icon/icon-request.js +2 -3
  212. package/development/icon/icon-validate.js +1 -1
  213. package/development/icon/icon.component.js +1 -1
  214. package/development/image/image.component.js +7 -9
  215. package/development/journey-header/journey-header.component.js +1 -1
  216. package/development/lead-container/lead-container.component.js +1 -1
  217. package/development/link/block-link/block-link.component.js +1 -1
  218. package/development/link/block-link-button/block-link-button.component.js +1 -1
  219. package/development/link/block-link-static/block-link-static.component.js +1 -1
  220. package/development/link/common/block-link-common.js +1 -1
  221. package/development/link/common/inline-link-common.js +1 -1
  222. package/development/link/link/link.component.js +1 -1
  223. package/development/link/link-button/link-button.component.js +1 -1
  224. package/development/link/link-static/link-static.component.js +1 -1
  225. package/development/link-common-CJEWffDZ.js +1 -1
  226. package/development/link-list/common/link-list-base.js +1 -1
  227. package/development/link-list/link-list/link-list.component.js +1 -1
  228. package/development/link-list/link-list-anchor/link-list-anchor.component.js +1 -1
  229. package/development/loading-indicator/loading-indicator.component.js +1 -1
  230. package/development/loading-indicator-circle/loading-indicator-circle.component.js +1 -1
  231. package/development/logo/logo.component.js +1 -1
  232. package/development/map-container/map-container.component.js +2 -3
  233. package/development/menu/common/menu-action-common.js +1 -1
  234. package/development/menu/menu/menu.component.js +17 -25
  235. package/development/menu/menu-button/menu-button.component.js +1 -1
  236. package/development/menu/menu-link/menu-link.component.js +1 -1
  237. package/development/message/message.component.js +1 -1
  238. package/development/navigation/common/navigation-action-common.js +3 -5
  239. package/development/navigation/navigation/navigation.component.js +19 -35
  240. package/development/navigation/navigation-button/navigation-button.component.js +1 -1
  241. package/development/navigation/navigation-link/navigation-link.component.js +1 -1
  242. package/development/navigation/navigation-list/navigation-list.component.js +1 -1
  243. package/development/navigation/navigation-marker/navigation-marker.component.js +4 -6
  244. package/development/navigation/navigation-section/navigation-section.component.js +22 -32
  245. package/development/notification/notification.component.js +22 -24
  246. package/development/option/optgroup/optgroup-base-element.js +4 -6
  247. package/development/option/optgroup/optgroup.component.js +6 -10
  248. package/development/option/option/option-base-element.js +3 -4
  249. package/development/option/option/option.component.js +7 -10
  250. package/development/overlay/overlay-base-element.js +4 -6
  251. package/development/overlay/overlay.component.js +7 -9
  252. package/development/paginator/common/paginator-common.js +1 -1
  253. package/development/paginator/compact-paginator/compact-paginator.component.js +1 -1
  254. package/development/paginator/paginator/paginator.component.js +2 -3
  255. package/development/popover/popover/popover.component.js +12 -17
  256. package/development/popover/popover-trigger/popover-trigger.component.js +1 -1
  257. package/development/radio-button/common/radio-button-common.js +6 -10
  258. package/development/radio-button/radio-button/radio-button.component.js +2 -5
  259. package/development/radio-button/radio-button-group/radio-button-group.component.js +8 -24
  260. package/development/radio-button/radio-button-panel/radio-button-panel.component.js +3 -7
  261. package/development/screen-reader-only/screen-reader-only.component.js +1 -1
  262. package/development/select/select.component.js +26 -48
  263. package/development/selection-expansion-panel/selection-expansion-panel.component.js +7 -11
  264. package/development/sidebar/icon-sidebar/icon-sidebar.component.js +1 -1
  265. package/development/sidebar/icon-sidebar-button/icon-sidebar-button.component.js +1 -1
  266. package/development/sidebar/icon-sidebar-container/icon-sidebar-container.component.js +4 -7
  267. package/development/sidebar/icon-sidebar-content/icon-sidebar-content.component.js +1 -1
  268. package/development/sidebar/icon-sidebar-link/icon-sidebar-link.component.js +1 -1
  269. package/development/sidebar/sidebar/sidebar.component.js +8 -15
  270. package/development/sidebar/sidebar-close-button/sidebar-close-button.component.js +1 -1
  271. package/development/sidebar/sidebar-container/sidebar-container.component.js +9 -13
  272. package/development/sidebar/sidebar-content/sidebar-content.component.js +1 -1
  273. package/development/sidebar/sidebar-title/sidebar-title.component.js +2 -2
  274. package/development/signet/signet.component.js +1 -1
  275. package/development/skiplink-list/skiplink-list.component.js +1 -1
  276. package/development/slider/slider.component.js +3 -4
  277. package/development/status/status.component.js +1 -1
  278. package/development/stepper/step/step.component.js +5 -7
  279. package/development/stepper/step-label/step-label.component.js +3 -4
  280. package/development/stepper/stepper/stepper.component.js +16 -29
  281. package/development/table/table-wrapper/table-wrapper.component.js +2 -7
  282. package/development/tabs/tab/tab.component.js +1 -1
  283. package/development/tabs/tab-group/tab-group.component.js +23 -38
  284. package/development/tabs/tab-label/tab-label.component.js +1 -1
  285. package/development/tag/tag/tag.component.js +6 -12
  286. package/development/tag/tag-group/tag-group.component.js +5 -13
  287. package/development/teaser/teaser.component.js +1 -1
  288. package/development/teaser-hero/teaser-hero.component.js +1 -1
  289. package/development/teaser-product/common/teaser-product-common.js +1 -1
  290. package/development/teaser-product/teaser-product/teaser-product.component.js +1 -1
  291. package/development/teaser-product/teaser-product-static/teaser-product-static.component.js +1 -1
  292. package/development/time-input/time-input.component.js +8 -12
  293. package/development/timetable-occupancy/timetable-occupancy.component.js +1 -1
  294. package/development/timetable-occupancy-icon/timetable-occupancy-icon.component.js +2 -3
  295. package/development/title/title-base.js +1 -1
  296. package/development/title/title.component.js +1 -1
  297. package/development/toast/toast.component.js +4 -7
  298. package/development/toggle/toggle/toggle.component.js +8 -12
  299. package/development/toggle/toggle-option/toggle-option.component.js +9 -16
  300. package/development/toggle-check/toggle-check.component.js +1 -1
  301. package/development/train/train/train.component.js +1 -1
  302. package/development/train/train-blocked-passage/train-blocked-passage.component.js +1 -1
  303. package/development/train/train-formation/train-formation.component.js +5 -7
  304. package/development/train/train-wagon/train-wagon.component.js +1 -1
  305. package/development/visual-checkbox/visual-checkbox.component.js +1 -1
  306. package/dialog/dialog/dialog.component.js +59 -70
  307. package/expansion-panel/expansion-panel/expansion-panel.component.js +5 -9
  308. package/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +31 -32
  309. package/file-selector/common/file-selector-common.js +1 -2
  310. package/flip-card/flip-card/flip-card.component.js +48 -54
  311. package/flip-card/flip-card-details/flip-card-details.component.js +16 -17
  312. package/flip-card/flip-card-summary/flip-card-summary.component.js +18 -19
  313. package/form-error/form-error.component.js +13 -14
  314. package/form-field/form-field/form-field.component.js +128 -139
  315. package/form-field/form-field-clear/form-field-clear.component.js +20 -22
  316. package/header/header/header.component.js +25 -28
  317. package/icon/icon-request.js +10 -11
  318. package/icon-sidebar-button-common-CM-ueEhH.js +7 -0
  319. package/image/image.component.js +4 -6
  320. package/map-container/map-container.component.js +1 -2
  321. package/menu/menu/menu.component.js +48 -56
  322. package/navigation/common/navigation-action-common.js +19 -21
  323. package/navigation/navigation/navigation.component.js +74 -93
  324. package/navigation/navigation-marker/navigation-marker.component.js +26 -28
  325. package/navigation/navigation-section/navigation-section.component.js +79 -89
  326. package/notification/notification.component.js +18 -20
  327. package/option/optgroup/optgroup-base-element.js +40 -42
  328. package/option/optgroup/optgroup.component.js +16 -20
  329. package/option/option/option-base-element.js +3 -4
  330. package/option/option/option.component.js +28 -31
  331. package/overlay/overlay-base-element.js +25 -27
  332. package/overlay/overlay.component.js +38 -40
  333. package/package.json +1 -1
  334. package/paginator/paginator/paginator.component.js +3 -4
  335. package/popover/popover/popover.component.js +82 -91
  336. package/popover/popover-trigger/popover-trigger.component.js +1 -1
  337. package/radio-button/common/radio-button-common.js +11 -15
  338. package/radio-button/radio-button/radio-button.component.js +20 -23
  339. package/radio-button/radio-button-group/radio-button-group.component.js +27 -43
  340. package/radio-button/radio-button-panel/radio-button-panel.component.js +31 -35
  341. package/select/select.component.js +89 -111
  342. package/selection-expansion-panel/selection-expansion-panel.component.js +35 -39
  343. package/sidebar/common.js +1 -1
  344. package/sidebar/icon-sidebar-container/icon-sidebar-container.component.js +10 -13
  345. package/sidebar/sidebar/sidebar.component.js +61 -68
  346. package/sidebar/sidebar-container/sidebar-container.component.js +29 -33
  347. package/sidebar/sidebar-title/sidebar-title.component.js +1 -1
  348. package/sidebar.js +1 -1
  349. package/slider/slider.component.js +3 -4
  350. package/standard-theme.css +0 -25
  351. package/stepper/step/step.component.js +22 -24
  352. package/stepper/step-label/step-label.component.js +2 -3
  353. package/stepper/stepper/stepper.component.js +72 -86
  354. package/table/table-wrapper/table-wrapper.component.js +13 -14
  355. package/table.css +0 -25
  356. package/tabs/tab-group/tab-group.component.js +77 -92
  357. package/tabs/tab-label/tab-label.component.js +10 -10
  358. package/tag/tag/tag.component.js +55 -61
  359. package/tag/tag-group/tag-group.component.js +21 -29
  360. package/teaser/teaser.component.js +1 -1
  361. package/teaser-product/common.js +1 -1
  362. package/teaser-product/teaser-product/teaser-product.component.js +1 -1
  363. package/teaser-product-common-C8oSkIxy.js +5 -0
  364. package/teaser-product.js +1 -1
  365. package/time-input/time-input.component.js +62 -66
  366. package/timetable-occupancy-icon/timetable-occupancy-icon.component.js +9 -10
  367. package/toast/toast.component.js +4 -7
  368. package/toggle/toggle/toggle.component.js +38 -42
  369. package/toggle/toggle-option/toggle-option.component.js +47 -54
  370. package/train/train-formation/train-formation.component.js +41 -43
  371. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss +0 -530
  372. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables_css--mixin.scss +0 -1123
  373. package/icon-sidebar-button-common-DG8bnrBu.js +0 -7
  374. package/teaser-product-common-CpMAlYEp.js +0 -5
@@ -311,7 +311,6 @@ let SbbNavigationSectionElement = (() => {
311
311
  let _accessibilityBackLabel_extraInitializers = [];
312
312
  _a = class extends _classSuper {
313
313
  constructor() {
314
- var _a2, _b;
315
314
  super();
316
315
  __privateAdd(this, _titleContent_accessor_storage);
317
316
  __privateAdd(this, _trigger_accessor_storage);
@@ -339,19 +338,18 @@ let SbbNavigationSectionElement = (() => {
339
338
  }
340
339
  }
341
340
  }));
342
- (_a2 = this.addEventListener) == null ? void 0 : _a2.call(this, "keydown", (e) => {
341
+ this.addEventListener?.("keydown", (e) => {
343
342
  this._lastKeydownEvent = e;
344
343
  });
345
- (_b = this.addEventListener) == null ? void 0 : _b.call(this, "focusout", (e) => {
346
- var _a3, _b2, _c;
347
- if (e.relatedTarget instanceof HTMLElement && !this.contains(e.relatedTarget) && sbbInputModalityDetector.mostRecentModality === "keyboard" && ((_a3 = this._lastKeydownEvent) == null ? void 0 : _a3.key) === "Tab" && this._triggerElement) {
344
+ this.addEventListener?.("focusout", (e) => {
345
+ if (e.relatedTarget instanceof HTMLElement && !this.contains(e.relatedTarget) && sbbInputModalityDetector.mostRecentModality === "keyboard" && this._lastKeydownEvent?.key === "Tab" && this._triggerElement) {
348
346
  const navigationElement = this.closest("sbb-navigation");
349
- const focusableElements = Array.from((navigationElement == null ? void 0 : navigationElement.querySelectorAll(IS_FOCUSABLE_QUERY)) ?? []).filter((e2) => !this.contains(e2));
347
+ const focusableElements = Array.from(navigationElement?.querySelectorAll(IS_FOCUSABLE_QUERY) ?? []).filter((e2) => !this.contains(e2));
350
348
  if (this._lastKeydownEvent.shiftKey || !focusableElements.length) {
351
- (_b2 = this._triggerElement) == null ? void 0 : _b2.focus();
349
+ this._triggerElement?.focus();
352
350
  } else {
353
351
  const triggerIndex = focusableElements.indexOf(this._triggerElement);
354
- (_c = focusableElements[triggerIndex + 1] ?? navigationElement.closeButton) == null ? void 0 : _c.focus();
352
+ (focusableElements[triggerIndex + 1] ?? navigationElement.closeButton)?.focus();
355
353
  }
356
354
  }
357
355
  });
@@ -407,18 +405,17 @@ let SbbNavigationSectionElement = (() => {
407
405
  * Opens the navigation section on trigger click.
408
406
  */
409
407
  open() {
410
- var _a2, _b, _c;
411
408
  if (this._state !== "closed" || !this.hasUpdated) {
412
409
  return;
413
410
  }
414
411
  if (this._isNavigationButton(this._triggerElement)) {
415
- (_b = (_a2 = this._triggerElement) == null ? void 0 : _a2.marker) == null ? void 0 : _b.select(this._triggerElement);
412
+ this._triggerElement?.marker?.select(this._triggerElement);
416
413
  }
417
414
  this._closePreviousNavigationSection();
418
415
  this._state = "opening";
419
416
  this.startUpdate();
420
417
  this.inert = true;
421
- (_c = this._triggerElement) == null ? void 0 : _c.setAttribute("aria-expanded", "true");
418
+ this._triggerElement?.setAttribute("aria-expanded", "true");
422
419
  if (this._isZeroAnimationDuration()) {
423
420
  this._handleOpening();
424
421
  }
@@ -436,10 +433,9 @@ let SbbNavigationSectionElement = (() => {
436
433
  this.completeUpdate();
437
434
  }
438
435
  _handleClosing() {
439
- var _a2, _b, _c;
440
436
  this._state = "closed";
441
- (_b = (_a2 = this.shadowRoot) == null ? void 0 : _a2.querySelector(".sbb-navigation-section__container")) == null ? void 0 : _b.scrollTo(0, 0);
442
- (_c = this._windowEventsController) == null ? void 0 : _c.abort();
437
+ this.shadowRoot?.querySelector(".sbb-navigation-section__container")?.scrollTo(0, 0);
438
+ this._windowEventsController?.abort();
443
439
  this._resetLists();
444
440
  this._setNavigationInert();
445
441
  if (this._isBelowLarge() && this._triggerElement) {
@@ -448,33 +444,30 @@ let SbbNavigationSectionElement = (() => {
448
444
  this.completeUpdate();
449
445
  }
450
446
  _closePreviousNavigationSection() {
451
- var _a2, _b;
452
- (_b = (_a2 = this._firstLevelNavigation) == null ? void 0 : _a2.activeNavigationSection) == null ? void 0 : _b.close();
447
+ this._firstLevelNavigation?.activeNavigationSection?.close();
453
448
  }
454
449
  /**
455
450
  * Closes the navigation section.
456
451
  */
457
452
  close() {
458
- var _a2;
459
453
  if (this._state !== "opened") {
460
454
  return;
461
455
  }
462
456
  this._state = "closing";
463
457
  this.startUpdate();
464
458
  this.inert = true;
465
- (_a2 = this._triggerElement) == null ? void 0 : _a2.setAttribute("aria-expanded", "false");
459
+ this._triggerElement?.setAttribute("aria-expanded", "false");
466
460
  if (this._isZeroAnimationDuration()) {
467
461
  this._handleClosing();
468
462
  }
469
463
  }
470
464
  // Check if the trigger is valid and attach click event listeners.
471
465
  _configureTrigger() {
472
- var _a2, _b, _c;
473
466
  const triggerElement = this.trigger instanceof HTMLElement ? this.trigger : this._triggerIdReferenceController.find();
474
467
  if (triggerElement === this._triggerElement) {
475
468
  return;
476
469
  }
477
- (_a2 = this._triggerAbortController) == null ? void 0 : _a2.abort();
470
+ this._triggerAbortController?.abort();
478
471
  removeAriaOverlayTriggerAttributes(this._triggerElement);
479
472
  this._triggerElement = triggerElement;
480
473
  if (!this._triggerElement) {
@@ -488,14 +481,13 @@ let SbbNavigationSectionElement = (() => {
488
481
  this._triggerElement.addEventListener("click", () => this.open(), {
489
482
  signal: this._triggerAbortController.signal
490
483
  });
491
- this._firstLevelNavigation = (_c = (_b = this._triggerElement) == null ? void 0 : _b.closest) == null ? void 0 : _c.call(_b, "sbb-navigation");
484
+ this._firstLevelNavigation = this._triggerElement?.closest?.("sbb-navigation");
492
485
  }
493
486
  _isNavigationButton(trigger) {
494
- return (trigger == null ? void 0 : trigger.localName) === "sbb-navigation-button";
487
+ return trigger?.localName === "sbb-navigation-button";
495
488
  }
496
489
  _setNavigationInert(isBelowLarge = this._isBelowLarge()) {
497
- var _a2;
498
- const navigationContent = (_a2 = this._firstLevelNavigation) == null ? void 0 : _a2.navigationContent;
490
+ const navigationContent = this._firstLevelNavigation?.navigationContent;
499
491
  if (navigationContent) {
500
492
  navigationContent.inert = isBelowLarge && this._state !== "closed";
501
493
  }
@@ -534,23 +526,21 @@ let SbbNavigationSectionElement = (() => {
534
526
  }
535
527
  }
536
528
  _checkActiveAction() {
537
- var _a2;
538
- (_a2 = this.querySelector(":is(sbb-navigation-button, sbb-navigation-link).sbb-active")) == null ? void 0 : _a2.toggleAttribute("data-action-active", true);
529
+ this.querySelector(":is(sbb-navigation-button, sbb-navigation-link).sbb-active")?.toggleAttribute("data-action-active", true);
539
530
  }
540
531
  connectedCallback() {
541
532
  super.connectedCallback();
542
- this.id || (this.id = `sbb-navigation-section-${nextId++}`);
543
- this._state || (this._state = "closed");
533
+ this.id ||= `sbb-navigation-section-${nextId++}`;
534
+ this._state ||= "closed";
544
535
  if (this.hasUpdated) {
545
536
  this._configureTrigger();
546
537
  }
547
538
  }
548
539
  disconnectedCallback() {
549
- var _a2, _b;
550
540
  super.disconnectedCallback();
551
541
  this._triggerElement = null;
552
- (_a2 = this._triggerAbortController) == null ? void 0 : _a2.abort();
553
- (_b = this._windowEventsController) == null ? void 0 : _b.abort();
542
+ this._triggerAbortController?.abort();
543
+ this._windowEventsController?.abort();
554
544
  }
555
545
  requestUpdate(name, oldValue, options) {
556
546
  super.requestUpdate(name, oldValue, options);
@@ -624,4 +614,4 @@ let SbbNavigationSectionElement = (() => {
624
614
  export {
625
615
  SbbNavigationSectionElement
626
616
  };
627
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi1zZWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL25hdmlnYXRpb24vbmF2aWdhdGlvbi1zZWN0aW9uL25hdmlnYXRpb24tc2VjdGlvbi5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgdHlwZSBDU1NSZXN1bHRHcm91cCxcbiAgaHRtbCxcbiAgaXNTZXJ2ZXIsXG4gIExpdEVsZW1lbnQsXG4gIG5vdGhpbmcsXG4gIHR5cGUgUHJvcGVydHlEZWNsYXJhdGlvbixcbiAgdHlwZSBQcm9wZXJ0eVZhbHVlcyxcbiAgdHlwZSBUZW1wbGF0ZVJlc3VsdCxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQge1xuICBJU19GT0NVU0FCTEVfUVVFUlksXG4gIFNiYkZvY3VzVHJhcENvbnRyb2xsZXIsXG4gIHNiYklucHV0TW9kYWxpdHlEZXRlY3Rvcixcbn0gZnJvbSAnLi4vLi4vY29yZS9hMTF5LmpzJztcbmltcG9ydCB7XG4gIFNiYklkUmVmZXJlbmNlQ29udHJvbGxlcixcbiAgU2JiTGFuZ3VhZ2VDb250cm9sbGVyLFxuICBTYmJNZWRpYU1hdGNoZXJDb250cm9sbGVyLFxuICBTYmJNZWRpYVF1ZXJ5QnJlYWtwb2ludE1lZGl1bUFuZEJlbG93LFxufSBmcm9tICcuLi8uLi9jb3JlL2NvbnRyb2xsZXJzLmpzJztcbmltcG9ydCB7IGZvcmNlVHlwZSwgaG9zdEF0dHJpYnV0ZXMsIG9taXRFbXB0eUNvbnZlcnRlciB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBpc0JyZWFrcG9pbnQsIGlzWmVyb0FuaW1hdGlvbkR1cmF0aW9uLCBzZXRPclJlbW92ZUF0dHJpYnV0ZSB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLmpzJztcbmltcG9ydCB7IGkxOG5Hb0JhY2sgfSBmcm9tICcuLi8uLi9jb3JlL2kxOG4uanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJPcGVuZWRDbG9zZWRTdGF0ZSB9IGZyb20gJy4uLy4uL2NvcmUvaW50ZXJmYWNlcy5qcyc7XG5pbXBvcnQgeyBTYmJVcGRhdGVTY2hlZHVsZXJNaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7XG4gIHJlbW92ZUFyaWFPdmVybGF5VHJpZ2dlckF0dHJpYnV0ZXMsXG4gIHNldEFyaWFPdmVybGF5VHJpZ2dlckF0dHJpYnV0ZXMsXG59IGZyb20gJy4uLy4uL2NvcmUvb3ZlcmxheS5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYk5hdmlnYXRpb25CdXR0b25FbGVtZW50IH0gZnJvbSAnLi4vbmF2aWdhdGlvbi1idXR0b24uanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJOYXZpZ2F0aW9uTGlua0VsZW1lbnQgfSBmcm9tICcuLi9uYXZpZ2F0aW9uLWxpbmsuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJOYXZpZ2F0aW9uRWxlbWVudCB9IGZyb20gJy4uL25hdmlnYXRpb24uanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9uYXZpZ2F0aW9uLXNlY3Rpb24uc2Nzcz9saXQmaW5saW5lJztcblxuaW1wb3J0ICcuLi8uLi9idXR0b24vdHJhbnNwYXJlbnQtYnV0dG9uLmpzJztcbmltcG9ydCAnLi4vLi4vZGl2aWRlci5qcyc7XG5cbmxldCBuZXh0SWQgPSAwO1xuXG4vKipcbiAqIEl0IGNhbiBiZSB1c2VkIGFzIGEgY29udGFpbmVyIGZvciBgc2JiLW5hdmlnYXRpb24tbGlzdGAgd2l0aGluIGEgYHNiYi1uYXZpZ2F0aW9uYC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBjb250ZW50IGludG8gdGhlIGBzYmItbmF2aWdhdGlvbi1zZWN0aW9uYC5cbiAqL1xuZXhwb3J0XG5AY3VzdG9tRWxlbWVudCgnc2JiLW5hdmlnYXRpb24tc2VjdGlvbicpXG5AaG9zdEF0dHJpYnV0ZXMoe1xuICBzbG90OiAnbmF2aWdhdGlvbi1zZWN0aW9uJyxcbn0pXG5jbGFzcyBTYmJOYXZpZ2F0aW9uU2VjdGlvbkVsZW1lbnQgZXh0ZW5kcyBTYmJVcGRhdGVTY2hlZHVsZXJNaXhpbihMaXRFbGVtZW50KSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8qKlxuICAgKiBUaGUgbGFiZWwgdG8gYmUgc2hvd24gYmVmb3JlIHRoZSBhY3Rpb24gbGlzdC5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICd0aXRsZS1jb250ZW50JywgcmVmbGVjdDogdHJ1ZSwgY29udmVydGVyOiBvbWl0RW1wdHlDb252ZXJ0ZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIHRpdGxlQ29udGVudDogc3RyaW5nID0gJyc7XG5cbiAgLyoqXG4gICAqIFRoZSBlbGVtZW50IHRoYXQgd2lsbCB0cmlnZ2VyIHRoZSBuYXZpZ2F0aW9uIHNlY3Rpb24uXG4gICAqIEFjY2VwdHMgYm90aCBhIHN0cmluZyAoaWQgb2YgYW4gZWxlbWVudCkgb3IgYW4gU2JiTmF2aWdhdGlvbkJ1dHRvbkVsZW1lbnQuXG4gICAqL1xuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgYWNjZXNzb3IgdHJpZ2dlcjogc3RyaW5nIHwgSFRNTEVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogVGhpcyB3aWxsIGJlIGZvcndhcmRlZCBhcyBhcmlhLWxhYmVsIHRvIHRoZSBuYXYgZWxlbWVudCBhbmQgaXMgcmVhZCBhcyBhIHRpdGxlIG9mIHRoZSBuYXZpZ2F0aW9uLXNlY3Rpb24uXG4gICAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYWNjZXNzaWJpbGl0eS1sYWJlbCcgfSlcbiAgcHVibGljIGFjY2Vzc29yIGFjY2Vzc2liaWxpdHlMYWJlbDogc3RyaW5nID0gJyc7XG5cbiAgLyoqXG4gICAqIFRoaXMgd2lsbCBiZSBmb3J3YXJkZWQgYXMgYXJpYS1sYWJlbCB0byB0aGUgYmFjayBidXR0b24gZWxlbWVudC5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdhY2Nlc3NpYmlsaXR5LWJhY2stbGFiZWwnIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBhY2Nlc3NpYmlsaXR5QmFja0xhYmVsOiBzdHJpbmcgPSAnJztcblxuICAvKipcbiAgICogVGhlIHN0YXRlIG9mIHRoZSBuYXZpZ2F0aW9uIHNlY3Rpb24uXG4gICAqL1xuICBwcml2YXRlIHNldCBfc3RhdGUoc3RhdGU6IFNiYk9wZW5lZENsb3NlZFN0YXRlKSB7XG4gICAgdGhpcy5zZXRBdHRyaWJ1dGUoJ2RhdGEtc3RhdGUnLCBzdGF0ZSk7XG4gICAgc2V0T3JSZW1vdmVBdHRyaWJ1dGUodGhpcywgJ2FyaWEtaGlkZGVuJywgdGhpcy5fc3RhdGUgIT09ICdvcGVuZWQnID8gJ3RydWUnIDogbnVsbCk7XG4gIH1cbiAgcHJpdmF0ZSBnZXQgX3N0YXRlKCk6IFNiYk9wZW5lZENsb3NlZFN0YXRlIHtcbiAgICByZXR1cm4gdGhpcy5nZXRBdHRyaWJ1dGUoJ2RhdGEtc3RhdGUnKSBhcyBTYmJPcGVuZWRDbG9zZWRTdGF0ZTtcbiAgfVxuXG4gIHByaXZhdGUgX2ZpcnN0TGV2ZWxOYXZpZ2F0aW9uPzogU2JiTmF2aWdhdGlvbkVsZW1lbnQgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfdHJpZ2dlckVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX3RyaWdnZXJBYm9ydENvbnRyb2xsZXIhOiBBYm9ydENvbnRyb2xsZXI7XG4gIHByaXZhdGUgX3RyaWdnZXJJZFJlZmVyZW5jZUNvbnRyb2xsZXIgPSBuZXcgU2JiSWRSZWZlcmVuY2VDb250cm9sbGVyKHRoaXMsICd0cmlnZ2VyJyk7XG4gIHByaXZhdGUgX3dpbmRvd0V2ZW50c0NvbnRyb2xsZXIhOiBBYm9ydENvbnRyb2xsZXI7XG4gIHByaXZhdGUgX2xhbmd1YWdlID0gbmV3IFNiYkxhbmd1YWdlQ29udHJvbGxlcih0aGlzKTtcbiAgcHJpdmF0ZSBfZm9jdXNUcmFwQ29udHJvbGxlciA9IG5ldyBTYmJGb2N1c1RyYXBDb250cm9sbGVyKHRoaXMpO1xuICBwcml2YXRlIF9sYXN0S2V5ZG93bkV2ZW50OiBLZXlib2FyZEV2ZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG5cbiAgICB0aGlzLmFkZENvbnRyb2xsZXIoXG4gICAgICBuZXcgU2JiTWVkaWFNYXRjaGVyQ29udHJvbGxlcih0aGlzLCB7XG4gICAgICAgIFtTYmJNZWRpYVF1ZXJ5QnJlYWtwb2ludE1lZGl1bUFuZEJlbG93XTogKG1hdGNoZXMpID0+IHtcbiAgICAgICAgICBpZiAodGhpcy5fc3RhdGUgIT09ICdjbG9zZWQnKSB7XG4gICAgICAgICAgICB0aGlzLl9zZXROYXZpZ2F0aW9uSW5lcnQobWF0Y2hlcyk7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgfSksXG4gICAgKTtcblxuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKCdrZXlkb3duJywgKGUpID0+IHtcbiAgICAgIHRoaXMuX2xhc3RLZXlkb3duRXZlbnQgPSBlO1xuICAgIH0pO1xuXG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyPy4oJ2ZvY3Vzb3V0JywgKGUpID0+IHtcbiAgICAgIGlmIChcbiAgICAgICAgZS5yZWxhdGVkVGFyZ2V0IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQgJiZcbiAgICAgICAgIXRoaXMuY29udGFpbnMoZS5yZWxhdGVkVGFyZ2V0KSAmJlxuICAgICAgICBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IubW9zdFJlY2VudE1vZGFsaXR5ID09PSAna2V5Ym9hcmQnICYmXG4gICAgICAgIHRoaXMuX2xhc3RLZXlkb3duRXZlbnQ/LmtleSA9PT0gJ1RhYicgJiZcbiAgICAgICAgdGhpcy5fdHJpZ2dlckVsZW1lbnRcbiAgICAgICkge1xuICAgICAgICBjb25zdCBuYXZpZ2F0aW9uRWxlbWVudCA9IHRoaXMuY2xvc2VzdDxTYmJOYXZpZ2F0aW9uRWxlbWVudD4oJ3NiYi1uYXZpZ2F0aW9uJyk7XG4gICAgICAgIGNvbnN0IGZvY3VzYWJsZUVsZW1lbnRzID0gQXJyYXkuZnJvbShcbiAgICAgICAgICBuYXZpZ2F0aW9uRWxlbWVudD8ucXVlcnlTZWxlY3RvckFsbDxIVE1MRWxlbWVudD4oSVNfRk9DVVNBQkxFX1FVRVJZKSA/PyBbXSxcbiAgICAgICAgKS5maWx0ZXIoKGUpID0+ICF0aGlzLmNvbnRhaW5zKGUpKTtcblxuICAgICAgICBpZiAodGhpcy5fbGFzdEtleWRvd25FdmVudC5zaGlmdEtleSB8fCAhZm9jdXNhYmxlRWxlbWVudHMubGVuZ3RoKSB7XG4gICAgICAgICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQ/LmZvY3VzKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc3QgdHJpZ2dlckluZGV4ID0gZm9jdXNhYmxlRWxlbWVudHMuaW5kZXhPZih0aGlzLl90cmlnZ2VyRWxlbWVudCk7XG4gICAgICAgICAgKGZvY3VzYWJsZUVsZW1lbnRzW3RyaWdnZXJJbmRleCArIDFdID8/IG5hdmlnYXRpb25FbGVtZW50IS5jbG9zZUJ1dHRvbik/LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPcGVucyB0aGUgbmF2aWdhdGlvbiBzZWN0aW9uIG9uIHRyaWdnZXIgY2xpY2suXG4gICAqL1xuICBwdWJsaWMgb3BlbigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3RhdGUgIT09ICdjbG9zZWQnIHx8ICF0aGlzLmhhc1VwZGF0ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5faXNOYXZpZ2F0aW9uQnV0dG9uKHRoaXMuX3RyaWdnZXJFbGVtZW50KSkge1xuICAgICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQ/Lm1hcmtlcj8uc2VsZWN0KHRoaXMuX3RyaWdnZXJFbGVtZW50KTtcbiAgICB9XG5cbiAgICB0aGlzLl9jbG9zZVByZXZpb3VzTmF2aWdhdGlvblNlY3Rpb24oKTtcbiAgICB0aGlzLl9zdGF0ZSA9ICdvcGVuaW5nJztcbiAgICB0aGlzLnN0YXJ0VXBkYXRlKCk7XG4gICAgdGhpcy5pbmVydCA9IHRydWU7XG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQ/LnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsICd0cnVlJyk7XG5cbiAgICAvLyBJZiB0aGUgYW5pbWF0aW9uIGR1cmF0aW9uIGlzIHplcm8sIHRoZSBhbmltYXRpb25lbmQgZXZlbnQgaXMgbm90IGFsd2F5cyBmaXJlZCByZWxpYWJseS5cbiAgICAvLyBJbiB0aGlzIGNhc2Ugd2UgZGlyZWN0bHkgc2V0IHRoZSBgb3BlbmVkYCBzdGF0ZS5cbiAgICBpZiAodGhpcy5faXNaZXJvQW5pbWF0aW9uRHVyYXRpb24oKSkge1xuICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc1plcm9BbmltYXRpb25EdXJhdGlvbih0aGlzLCAnLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLWFuaW1hdGlvbi1kdXJhdGlvbicpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlT3BlbmluZygpOiB2b2lkIHtcbiAgICB0aGlzLl9zdGF0ZSA9ICdvcGVuZWQnO1xuICAgIHRoaXMuaW5lcnQgPSBmYWxzZTtcbiAgICB0aGlzLl9hdHRhY2hXaW5kb3dFdmVudHMoKTtcbiAgICB0aGlzLl9zZXROYXZpZ2F0aW9uSW5lcnQoKTtcbiAgICB0aGlzLl9mb2N1c1RyYXBDb250cm9sbGVyLmZvY3VzSW5pdGlhbEVsZW1lbnQoKTtcbiAgICB0aGlzLl9jaGVja0FjdGl2ZUFjdGlvbigpO1xuICAgIHRoaXMuY29tcGxldGVVcGRhdGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZUNsb3NpbmcoKTogdm9pZCB7XG4gICAgdGhpcy5fc3RhdGUgPSAnY2xvc2VkJztcbiAgICB0aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoJy5zYmItbmF2aWdhdGlvbi1zZWN0aW9uX19jb250YWluZXInKT8uc2Nyb2xsVG8oMCwgMCk7XG4gICAgdGhpcy5fd2luZG93RXZlbnRzQ29udHJvbGxlcj8uYWJvcnQoKTtcbiAgICB0aGlzLl9yZXNldExpc3RzKCk7XG4gICAgdGhpcy5fc2V0TmF2aWdhdGlvbkluZXJ0KCk7XG4gICAgaWYgKHRoaXMuX2lzQmVsb3dMYXJnZSgpICYmIHRoaXMuX3RyaWdnZXJFbGVtZW50KSB7XG4gICAgICB0aGlzLl90cmlnZ2VyRWxlbWVudC5mb2N1cygpO1xuICAgIH1cbiAgICB0aGlzLmNvbXBsZXRlVXBkYXRlKCk7XG4gIH1cblxuICBwcml2YXRlIF9jbG9zZVByZXZpb3VzTmF2aWdhdGlvblNlY3Rpb24oKTogdm9pZCB7XG4gICAgdGhpcy5fZmlyc3RMZXZlbE5hdmlnYXRpb24/LmFjdGl2ZU5hdmlnYXRpb25TZWN0aW9uPy5jbG9zZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsb3NlcyB0aGUgbmF2aWdhdGlvbiBzZWN0aW9uLlxuICAgKi9cbiAgcHVibGljIGNsb3NlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9zdGF0ZSAhPT0gJ29wZW5lZCcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9zdGF0ZSA9ICdjbG9zaW5nJztcbiAgICB0aGlzLnN0YXJ0VXBkYXRlKCk7XG4gICAgdGhpcy5pbmVydCA9IHRydWU7XG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQ/LnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsICdmYWxzZScpO1xuXG4gICAgLy8gSWYgdGhlIGFuaW1hdGlvbiBkdXJhdGlvbiBpcyB6ZXJvLCB0aGUgYW5pbWF0aW9uZW5kIGV2ZW50IGlzIG5vdCBhbHdheXMgZmlyZWQgcmVsaWFibHkuXG4gICAgLy8gSW4gdGhpcyBjYXNlIHdlIGRpcmVjdGx5IHNldCB0aGUgYGNsb3NlZGAgc3RhdGUuXG4gICAgaWYgKHRoaXMuX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCkpIHtcbiAgICAgIHRoaXMuX2hhbmRsZUNsb3NpbmcoKTtcbiAgICB9XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgdHJpZ2dlciBpcyB2YWxpZCBhbmQgYXR0YWNoIGNsaWNrIGV2ZW50IGxpc3RlbmVycy5cbiAgcHJpdmF0ZSBfY29uZmlndXJlVHJpZ2dlcigpOiB2b2lkIHtcbiAgICBjb25zdCB0cmlnZ2VyRWxlbWVudCA9IChcbiAgICAgIHRoaXMudHJpZ2dlciBpbnN0YW5jZW9mIEhUTUxFbGVtZW50ID8gdGhpcy50cmlnZ2VyIDogdGhpcy5fdHJpZ2dlcklkUmVmZXJlbmNlQ29udHJvbGxlci5maW5kKClcbiAgICApIGFzIFNiYk5hdmlnYXRpb25CdXR0b25FbGVtZW50IHwgbnVsbDtcblxuICAgIGlmICh0cmlnZ2VyRWxlbWVudCA9PT0gdGhpcy5fdHJpZ2dlckVsZW1lbnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl90cmlnZ2VyQWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgIHJlbW92ZUFyaWFPdmVybGF5VHJpZ2dlckF0dHJpYnV0ZXModGhpcy5fdHJpZ2dlckVsZW1lbnQpO1xuICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50ID0gdHJpZ2dlckVsZW1lbnQ7XG5cbiAgICBpZiAoIXRoaXMuX3RyaWdnZXJFbGVtZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc2V0QXJpYU92ZXJsYXlUcmlnZ2VyQXR0cmlidXRlcyh0aGlzLl90cmlnZ2VyRWxlbWVudCwgJ21lbnUnLCB0aGlzLmlkLCB0aGlzLl9zdGF0ZSk7XG4gICAgdGhpcy5fdHJpZ2dlckFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcbiAgICBpZiAodGhpcy5faXNOYXZpZ2F0aW9uQnV0dG9uKHRoaXMuX3RyaWdnZXJFbGVtZW50KSkge1xuICAgICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQuY29ubmVjdGVkU2VjdGlvbiA9IHRoaXM7XG4gICAgfVxuICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4gdGhpcy5vcGVuKCksIHtcbiAgICAgIHNpZ25hbDogdGhpcy5fdHJpZ2dlckFib3J0Q29udHJvbGxlci5zaWduYWwsXG4gICAgfSk7XG4gICAgdGhpcy5fZmlyc3RMZXZlbE5hdmlnYXRpb24gPSB0aGlzLl90cmlnZ2VyRWxlbWVudD8uY2xvc2VzdD8uKCdzYmItbmF2aWdhdGlvbicpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNOYXZpZ2F0aW9uQnV0dG9uKHRyaWdnZXI6IEhUTUxFbGVtZW50IHwgbnVsbCk6IHRyaWdnZXIgaXMgU2JiTmF2aWdhdGlvbkJ1dHRvbkVsZW1lbnQge1xuICAgIHJldHVybiB0cmlnZ2VyPy5sb2NhbE5hbWUgPT09ICdzYmItbmF2aWdhdGlvbi1idXR0b24nO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2V0TmF2aWdhdGlvbkluZXJ0KGlzQmVsb3dMYXJnZTogYm9vbGVhbiA9IHRoaXMuX2lzQmVsb3dMYXJnZSgpKTogdm9pZCB7XG4gICAgY29uc3QgbmF2aWdhdGlvbkNvbnRlbnQgPSB0aGlzLl9maXJzdExldmVsTmF2aWdhdGlvbj8ubmF2aWdhdGlvbkNvbnRlbnQ7XG4gICAgaWYgKG5hdmlnYXRpb25Db250ZW50KSB7XG4gICAgICBuYXZpZ2F0aW9uQ29udGVudC5pbmVydCA9IGlzQmVsb3dMYXJnZSAmJiB0aGlzLl9zdGF0ZSAhPT0gJ2Nsb3NlZCc7XG4gICAgfVxuICB9XG5cbiAgLy8gSW4gcmFyZSBjYXNlcyBpdCBjYW4gYmUgdGhhdCB0aGUgYW5pbWF0aW9uRW5kIGV2ZW50IGlzIHRyaWdnZXJlZCB0d2ljZS5cbiAgLy8gVG8gYXZvaWQgZW50ZXJpbmcgYSBjb3JydXB0IHN0YXRlLCBleGl0IHdoZW4gc3RhdGUgaXMgbm90IGV4cGVjdGVkLlxuICBwcml2YXRlIF9vbkFuaW1hdGlvbkVuZChldmVudDogQW5pbWF0aW9uRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ29wZW4nICYmIHRoaXMuX3N0YXRlID09PSAnb3BlbmluZycpIHtcbiAgICAgIHRoaXMuX2hhbmRsZU9wZW5pbmcoKTtcbiAgICB9IGVsc2UgaWYgKGV2ZW50LmFuaW1hdGlvbk5hbWUgPT09ICdjbG9zZScgJiYgdGhpcy5fc3RhdGUgPT09ICdjbG9zaW5nJykge1xuICAgICAgdGhpcy5faGFuZGxlQ2xvc2luZygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3Jlc2V0TGlzdHMoKTogdm9pZCB7XG4gICAgQXJyYXkuZnJvbShcbiAgICAgIHRoaXMucXVlcnlTZWxlY3RvckFsbDxTYmJOYXZpZ2F0aW9uQnV0dG9uRWxlbWVudCB8IFNiYk5hdmlnYXRpb25MaW5rRWxlbWVudD4oXG4gICAgICAgICdbZGF0YS1zZWN0aW9uLWFjdGlvbl1bZGF0YS1hY3Rpb24tYWN0aXZlXScsXG4gICAgICApID8/IFtdLFxuICAgICkuZm9yRWFjaCgoYWN0aW9uKSA9PiBhY3Rpb24ucmVtb3ZlQXR0cmlidXRlKCdkYXRhLWFjdGlvbi1hY3RpdmUnKSk7XG4gIH1cblxuICBwcml2YXRlIF9hdHRhY2hXaW5kb3dFdmVudHMoKTogdm9pZCB7XG4gICAgdGhpcy5fd2luZG93RXZlbnRzQ29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIChldmVudDogS2V5Ym9hcmRFdmVudCkgPT4gdGhpcy5fb25LZXlkb3duRXZlbnQoZXZlbnQpLCB7XG4gICAgICBzaWduYWw6IHRoaXMuX3dpbmRvd0V2ZW50c0NvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pO1xuXG4gICAgLy8gQ2xvc2UgbmF2aWdhdGlvbiBzZWN0aW9uIG9uIGFjdGlvbiBjbGljayBvciBzYmItbmF2aWdhdGlvbi1zZWN0aW9uLWNsb3NlIGNsaWNrXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5faGFuZGxlTmF2aWdhdGlvblNlY3Rpb25DbG9zZSwge1xuICAgICAgc2lnbmFsOiB0aGlzLl93aW5kb3dFdmVudHNDb250cm9sbGVyLnNpZ25hbCxcbiAgICB9KTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmIHRoZSBjbGljayB3YXMgdHJpZ2dlcmVkIG9uIGFuIGVsZW1lbnQgdGhhdCBzaG91bGQgY2xvc2UgdGhlIHNlY3Rpb24uXG4gIHByaXZhdGUgX2hhbmRsZU5hdmlnYXRpb25TZWN0aW9uQ2xvc2UgPSAoZXZlbnQ6IEV2ZW50KTogdm9pZCA9PiB7XG4gICAgaWYgKFxuICAgICAgZXZlbnRcbiAgICAgICAgLmNvbXBvc2VkUGF0aCgpXG4gICAgICAgIC5maWx0ZXIoKGVsKSA9PiBlbCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KVxuICAgICAgICAuc29tZSgoZWwpID0+IHRoaXMuX2lzQ2xvc2VFbGVtZW50KGVsKSlcbiAgICApIHtcbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9XG4gIH07XG5cbiAgcHJpdmF0ZSBfaXNDbG9zZUVsZW1lbnQoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgZWxlbWVudC5ub2RlTmFtZSA9PT0gJ0EnIHx8XG4gICAgICAoIWVsZW1lbnQuaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpICYmXG4gICAgICAgIChlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnc2JiLW5hdmlnYXRpb24tY2xvc2UnKSB8fFxuICAgICAgICAgIGVsZW1lbnQuaGFzQXR0cmlidXRlKCdzYmItbmF2aWdhdGlvbi1zZWN0aW9uLWNsb3NlJykpKVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9pc0JlbG93TGFyZ2UoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzQnJlYWtwb2ludCgnemVybycsICdsYXJnZScpID8/IGZhbHNlO1xuICB9XG5cbiAgLy8gQ2xvc2VzIHRoZSBuYXZpZ2F0aW9uIG9uIFwiRXNjXCIga2V5IHByZXNzZWQuXG4gIHByaXZhdGUgX29uS2V5ZG93bkV2ZW50KGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3N0YXRlID09PSAnb3BlbmVkJyAmJiBldmVudC5rZXkgPT09ICdFc2NhcGUnKSB7XG4gICAgICB0aGlzLmNsb3NlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfY2hlY2tBY3RpdmVBY3Rpb24oKTogdm9pZCB7XG4gICAgdGhpcy5xdWVyeVNlbGVjdG9yPFNiYk5hdmlnYXRpb25CdXR0b25FbGVtZW50IHwgU2JiTmF2aWdhdGlvbkxpbmtFbGVtZW50PihcbiAgICAgICc6aXMoc2JiLW5hdmlnYXRpb24tYnV0dG9uLCBzYmItbmF2aWdhdGlvbi1saW5rKS5zYmItYWN0aXZlJyxcbiAgICApPy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtYWN0aW9uLWFjdGl2ZScsIHRydWUpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5pZCB8fD0gYHNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tJHtuZXh0SWQrK31gO1xuICAgIHRoaXMuX3N0YXRlIHx8PSAnY2xvc2VkJztcbiAgICBpZiAodGhpcy5oYXNVcGRhdGVkKSB7XG4gICAgICB0aGlzLl9jb25maWd1cmVUcmlnZ2VyKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQgPSBudWxsO1xuICAgIHRoaXMuX3RyaWdnZXJBYm9ydENvbnRyb2xsZXI/LmFib3J0KCk7XG4gICAgdGhpcy5fd2luZG93RXZlbnRzQ29udHJvbGxlcj8uYWJvcnQoKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSByZXF1ZXN0VXBkYXRlKFxuICAgIG5hbWU/OiBQcm9wZXJ0eUtleSxcbiAgICBvbGRWYWx1ZT86IHVua25vd24sXG4gICAgb3B0aW9ucz86IFByb3BlcnR5RGVjbGFyYXRpb24sXG4gICk6IHZvaWQge1xuICAgIHN1cGVyLnJlcXVlc3RVcGRhdGUobmFtZSwgb2xkVmFsdWUsIG9wdGlvbnMpO1xuXG4gICAgaWYgKCFpc1NlcnZlciAmJiAoIW5hbWUgfHwgbmFtZSA9PT0gJ3RyaWdnZXInKSAmJiB0aGlzLmhhc1VwZGF0ZWQpIHtcbiAgICAgIHRoaXMuX2NvbmZpZ3VyZVRyaWdnZXIoKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLmZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG4gICAgdGhpcy5fY29uZmlndXJlVHJpZ2dlcigpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLW5hdmlnYXRpb24tc2VjdGlvbl9fY29udGFpbmVyXCI+XG4gICAgICAgIDxuYXZcbiAgICAgICAgICBAYW5pbWF0aW9uZW5kPSR7dGhpcy5fb25BbmltYXRpb25FbmR9XG4gICAgICAgICAgY2xhc3M9XCJzYmItbmF2aWdhdGlvbi1zZWN0aW9uXCJcbiAgICAgICAgICBhcmlhLWxhYmVsbGVkYnk9JHshdGhpcy5hY2Nlc3NpYmlsaXR5TGFiZWwgPyAndGl0bGUnIDogbm90aGluZ31cbiAgICAgICAgICBhcmlhLWxhYmVsPSR7dGhpcy5hY2Nlc3NpYmlsaXR5TGFiZWwgPyB0aGlzLmFjY2Vzc2liaWxpdHlMYWJlbCA6IG5vdGhpbmd9XG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLW5hdmlnYXRpb24tc2VjdGlvbl9fd3JhcHBlclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX2NvbnRlbnRcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX2hlYWRlclwiPlxuICAgICAgICAgICAgICAgIDwhLS0gQmFjayBidXR0b24gLS0+XG4gICAgICAgICAgICAgICAgPHNiYi10cmFuc3BhcmVudC1idXR0b25cbiAgICAgICAgICAgICAgICAgIGlkPVwic2JiLW5hdmlnYXRpb24tc2VjdGlvbi1iYWNrLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX2JhY2tcIlxuICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD0ke3RoaXMuYWNjZXNzaWJpbGl0eUJhY2tMYWJlbCB8fCBpMThuR29CYWNrW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfVxuICAgICAgICAgICAgICAgICAgbmVnYXRpdmVcbiAgICAgICAgICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgaWNvbi1uYW1lPVwiY2hldnJvbi1zbWFsbC1sZWZ0LXNtYWxsXCJcbiAgICAgICAgICAgICAgICAgIHNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tY2xvc2VcbiAgICAgICAgICAgICAgICA+PC9zYmItdHJhbnNwYXJlbnQtYnV0dG9uPlxuXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItbmF2aWdhdGlvbi1zZWN0aW9uX190aXRsZVwiIGlkPVwidGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgIDxzbG90IG5hbWU9XCJ0aXRsZVwiPiR7dGhpcy50aXRsZUNvbnRlbnR9PC9zbG90PlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxzbG90Pjwvc2xvdD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25hdj5cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1uYXZpZ2F0aW9uLXNlY3Rpb24nOiBTYmJOYXZpZ2F0aW9uU2VjdGlvbkVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJfYSIsImUiLCJfYiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXlDQSxJQUFJLFNBQVM7SUFZUCwrQkFBMkIsTUFBQTs7QUFKaEMsTUFBQSxtQkFBQSxDQUFBLGNBQWMsd0JBQXdCLEdBQ3RDLGVBQWU7QUFBQSxJQUNkLE1BQU07QUFBQSxFQUFBLENBQ1AsQ0FBQzs7OztvQkFDd0Msd0JBQXdCLFVBQVU7Ozs7Ozs7Ozs7Ozs7QUFBMUMsRUFBQSxtQkFBUSxZQUFtQztBQUFBLElBbUQzRSxjQUFBOzs7QUEzQ0E7QUFPQTtBQU9BO0FBT0E7QUFyQmdCLHlCQUFBLGdDQUFBLGtCQUFB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
617
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi1zZWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL25hdmlnYXRpb24vbmF2aWdhdGlvbi1zZWN0aW9uL25hdmlnYXRpb24tc2VjdGlvbi5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgdHlwZSBDU1NSZXN1bHRHcm91cCxcbiAgaHRtbCxcbiAgaXNTZXJ2ZXIsXG4gIExpdEVsZW1lbnQsXG4gIG5vdGhpbmcsXG4gIHR5cGUgUHJvcGVydHlEZWNsYXJhdGlvbixcbiAgdHlwZSBQcm9wZXJ0eVZhbHVlcyxcbiAgdHlwZSBUZW1wbGF0ZVJlc3VsdCxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQge1xuICBJU19GT0NVU0FCTEVfUVVFUlksXG4gIFNiYkZvY3VzVHJhcENvbnRyb2xsZXIsXG4gIHNiYklucHV0TW9kYWxpdHlEZXRlY3Rvcixcbn0gZnJvbSAnLi4vLi4vY29yZS9hMTF5LmpzJztcbmltcG9ydCB7XG4gIFNiYklkUmVmZXJlbmNlQ29udHJvbGxlcixcbiAgU2JiTGFuZ3VhZ2VDb250cm9sbGVyLFxuICBTYmJNZWRpYU1hdGNoZXJDb250cm9sbGVyLFxuICBTYmJNZWRpYVF1ZXJ5QnJlYWtwb2ludE1lZGl1bUFuZEJlbG93LFxufSBmcm9tICcuLi8uLi9jb3JlL2NvbnRyb2xsZXJzLmpzJztcbmltcG9ydCB7IGZvcmNlVHlwZSwgaG9zdEF0dHJpYnV0ZXMsIG9taXRFbXB0eUNvbnZlcnRlciB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBpc0JyZWFrcG9pbnQsIGlzWmVyb0FuaW1hdGlvbkR1cmF0aW9uLCBzZXRPclJlbW92ZUF0dHJpYnV0ZSB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLmpzJztcbmltcG9ydCB7IGkxOG5Hb0JhY2sgfSBmcm9tICcuLi8uLi9jb3JlL2kxOG4uanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJPcGVuZWRDbG9zZWRTdGF0ZSB9IGZyb20gJy4uLy4uL2NvcmUvaW50ZXJmYWNlcy5qcyc7XG5pbXBvcnQgeyBTYmJVcGRhdGVTY2hlZHVsZXJNaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7XG4gIHJlbW92ZUFyaWFPdmVybGF5VHJpZ2dlckF0dHJpYnV0ZXMsXG4gIHNldEFyaWFPdmVybGF5VHJpZ2dlckF0dHJpYnV0ZXMsXG59IGZyb20gJy4uLy4uL2NvcmUvb3ZlcmxheS5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYk5hdmlnYXRpb25CdXR0b25FbGVtZW50IH0gZnJvbSAnLi4vbmF2aWdhdGlvbi1idXR0b24uanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJOYXZpZ2F0aW9uTGlua0VsZW1lbnQgfSBmcm9tICcuLi9uYXZpZ2F0aW9uLWxpbmsuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJOYXZpZ2F0aW9uRWxlbWVudCB9IGZyb20gJy4uL25hdmlnYXRpb24uanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9uYXZpZ2F0aW9uLXNlY3Rpb24uc2Nzcz9saXQmaW5saW5lJztcblxuaW1wb3J0ICcuLi8uLi9idXR0b24vdHJhbnNwYXJlbnQtYnV0dG9uLmpzJztcbmltcG9ydCAnLi4vLi4vZGl2aWRlci5qcyc7XG5cbmxldCBuZXh0SWQgPSAwO1xuXG4vKipcbiAqIEl0IGNhbiBiZSB1c2VkIGFzIGEgY29udGFpbmVyIGZvciBgc2JiLW5hdmlnYXRpb24tbGlzdGAgd2l0aGluIGEgYHNiYi1uYXZpZ2F0aW9uYC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBjb250ZW50IGludG8gdGhlIGBzYmItbmF2aWdhdGlvbi1zZWN0aW9uYC5cbiAqL1xuZXhwb3J0XG5AY3VzdG9tRWxlbWVudCgnc2JiLW5hdmlnYXRpb24tc2VjdGlvbicpXG5AaG9zdEF0dHJpYnV0ZXMoe1xuICBzbG90OiAnbmF2aWdhdGlvbi1zZWN0aW9uJyxcbn0pXG5jbGFzcyBTYmJOYXZpZ2F0aW9uU2VjdGlvbkVsZW1lbnQgZXh0ZW5kcyBTYmJVcGRhdGVTY2hlZHVsZXJNaXhpbihMaXRFbGVtZW50KSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8qKlxuICAgKiBUaGUgbGFiZWwgdG8gYmUgc2hvd24gYmVmb3JlIHRoZSBhY3Rpb24gbGlzdC5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICd0aXRsZS1jb250ZW50JywgcmVmbGVjdDogdHJ1ZSwgY29udmVydGVyOiBvbWl0RW1wdHlDb252ZXJ0ZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIHRpdGxlQ29udGVudDogc3RyaW5nID0gJyc7XG5cbiAgLyoqXG4gICAqIFRoZSBlbGVtZW50IHRoYXQgd2lsbCB0cmlnZ2VyIHRoZSBuYXZpZ2F0aW9uIHNlY3Rpb24uXG4gICAqIEFjY2VwdHMgYm90aCBhIHN0cmluZyAoaWQgb2YgYW4gZWxlbWVudCkgb3IgYW4gU2JiTmF2aWdhdGlvbkJ1dHRvbkVsZW1lbnQuXG4gICAqL1xuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgYWNjZXNzb3IgdHJpZ2dlcjogc3RyaW5nIHwgSFRNTEVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogVGhpcyB3aWxsIGJlIGZvcndhcmRlZCBhcyBhcmlhLWxhYmVsIHRvIHRoZSBuYXYgZWxlbWVudCBhbmQgaXMgcmVhZCBhcyBhIHRpdGxlIG9mIHRoZSBuYXZpZ2F0aW9uLXNlY3Rpb24uXG4gICAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYWNjZXNzaWJpbGl0eS1sYWJlbCcgfSlcbiAgcHVibGljIGFjY2Vzc29yIGFjY2Vzc2liaWxpdHlMYWJlbDogc3RyaW5nID0gJyc7XG5cbiAgLyoqXG4gICAqIFRoaXMgd2lsbCBiZSBmb3J3YXJkZWQgYXMgYXJpYS1sYWJlbCB0byB0aGUgYmFjayBidXR0b24gZWxlbWVudC5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdhY2Nlc3NpYmlsaXR5LWJhY2stbGFiZWwnIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBhY2Nlc3NpYmlsaXR5QmFja0xhYmVsOiBzdHJpbmcgPSAnJztcblxuICAvKipcbiAgICogVGhlIHN0YXRlIG9mIHRoZSBuYXZpZ2F0aW9uIHNlY3Rpb24uXG4gICAqL1xuICBwcml2YXRlIHNldCBfc3RhdGUoc3RhdGU6IFNiYk9wZW5lZENsb3NlZFN0YXRlKSB7XG4gICAgdGhpcy5zZXRBdHRyaWJ1dGUoJ2RhdGEtc3RhdGUnLCBzdGF0ZSk7XG4gICAgc2V0T3JSZW1vdmVBdHRyaWJ1dGUodGhpcywgJ2FyaWEtaGlkZGVuJywgdGhpcy5fc3RhdGUgIT09ICdvcGVuZWQnID8gJ3RydWUnIDogbnVsbCk7XG4gIH1cbiAgcHJpdmF0ZSBnZXQgX3N0YXRlKCk6IFNiYk9wZW5lZENsb3NlZFN0YXRlIHtcbiAgICByZXR1cm4gdGhpcy5nZXRBdHRyaWJ1dGUoJ2RhdGEtc3RhdGUnKSBhcyBTYmJPcGVuZWRDbG9zZWRTdGF0ZTtcbiAgfVxuXG4gIHByaXZhdGUgX2ZpcnN0TGV2ZWxOYXZpZ2F0aW9uPzogU2JiTmF2aWdhdGlvbkVsZW1lbnQgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfdHJpZ2dlckVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX3RyaWdnZXJBYm9ydENvbnRyb2xsZXIhOiBBYm9ydENvbnRyb2xsZXI7XG4gIHByaXZhdGUgX3RyaWdnZXJJZFJlZmVyZW5jZUNvbnRyb2xsZXIgPSBuZXcgU2JiSWRSZWZlcmVuY2VDb250cm9sbGVyKHRoaXMsICd0cmlnZ2VyJyk7XG4gIHByaXZhdGUgX3dpbmRvd0V2ZW50c0NvbnRyb2xsZXIhOiBBYm9ydENvbnRyb2xsZXI7XG4gIHByaXZhdGUgX2xhbmd1YWdlID0gbmV3IFNiYkxhbmd1YWdlQ29udHJvbGxlcih0aGlzKTtcbiAgcHJpdmF0ZSBfZm9jdXNUcmFwQ29udHJvbGxlciA9IG5ldyBTYmJGb2N1c1RyYXBDb250cm9sbGVyKHRoaXMpO1xuICBwcml2YXRlIF9sYXN0S2V5ZG93bkV2ZW50OiBLZXlib2FyZEV2ZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG5cbiAgICB0aGlzLmFkZENvbnRyb2xsZXIoXG4gICAgICBuZXcgU2JiTWVkaWFNYXRjaGVyQ29udHJvbGxlcih0aGlzLCB7XG4gICAgICAgIFtTYmJNZWRpYVF1ZXJ5QnJlYWtwb2ludE1lZGl1bUFuZEJlbG93XTogKG1hdGNoZXMpID0+IHtcbiAgICAgICAgICBpZiAodGhpcy5fc3RhdGUgIT09ICdjbG9zZWQnKSB7XG4gICAgICAgICAgICB0aGlzLl9zZXROYXZpZ2F0aW9uSW5lcnQobWF0Y2hlcyk7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgfSksXG4gICAgKTtcblxuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKCdrZXlkb3duJywgKGUpID0+IHtcbiAgICAgIHRoaXMuX2xhc3RLZXlkb3duRXZlbnQgPSBlO1xuICAgIH0pO1xuXG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyPy4oJ2ZvY3Vzb3V0JywgKGUpID0+IHtcbiAgICAgIGlmIChcbiAgICAgICAgZS5yZWxhdGVkVGFyZ2V0IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQgJiZcbiAgICAgICAgIXRoaXMuY29udGFpbnMoZS5yZWxhdGVkVGFyZ2V0KSAmJlxuICAgICAgICBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IubW9zdFJlY2VudE1vZGFsaXR5ID09PSAna2V5Ym9hcmQnICYmXG4gICAgICAgIHRoaXMuX2xhc3RLZXlkb3duRXZlbnQ/LmtleSA9PT0gJ1RhYicgJiZcbiAgICAgICAgdGhpcy5fdHJpZ2dlckVsZW1lbnRcbiAgICAgICkge1xuICAgICAgICBjb25zdCBuYXZpZ2F0aW9uRWxlbWVudCA9IHRoaXMuY2xvc2VzdDxTYmJOYXZpZ2F0aW9uRWxlbWVudD4oJ3NiYi1uYXZpZ2F0aW9uJyk7XG4gICAgICAgIGNvbnN0IGZvY3VzYWJsZUVsZW1lbnRzID0gQXJyYXkuZnJvbShcbiAgICAgICAgICBuYXZpZ2F0aW9uRWxlbWVudD8ucXVlcnlTZWxlY3RvckFsbDxIVE1MRWxlbWVudD4oSVNfRk9DVVNBQkxFX1FVRVJZKSA/PyBbXSxcbiAgICAgICAgKS5maWx0ZXIoKGUpID0+ICF0aGlzLmNvbnRhaW5zKGUpKTtcblxuICAgICAgICBpZiAodGhpcy5fbGFzdEtleWRvd25FdmVudC5zaGlmdEtleSB8fCAhZm9jdXNhYmxlRWxlbWVudHMubGVuZ3RoKSB7XG4gICAgICAgICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQ/LmZvY3VzKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc3QgdHJpZ2dlckluZGV4ID0gZm9jdXNhYmxlRWxlbWVudHMuaW5kZXhPZih0aGlzLl90cmlnZ2VyRWxlbWVudCk7XG4gICAgICAgICAgKGZvY3VzYWJsZUVsZW1lbnRzW3RyaWdnZXJJbmRleCArIDFdID8/IG5hdmlnYXRpb25FbGVtZW50IS5jbG9zZUJ1dHRvbik/LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPcGVucyB0aGUgbmF2aWdhdGlvbiBzZWN0aW9uIG9uIHRyaWdnZXIgY2xpY2suXG4gICAqL1xuICBwdWJsaWMgb3BlbigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3RhdGUgIT09ICdjbG9zZWQnIHx8ICF0aGlzLmhhc1VwZGF0ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5faXNOYXZpZ2F0aW9uQnV0dG9uKHRoaXMuX3RyaWdnZXJFbGVtZW50KSkge1xuICAgICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQ/Lm1hcmtlcj8uc2VsZWN0KHRoaXMuX3RyaWdnZXJFbGVtZW50KTtcbiAgICB9XG5cbiAgICB0aGlzLl9jbG9zZVByZXZpb3VzTmF2aWdhdGlvblNlY3Rpb24oKTtcbiAgICB0aGlzLl9zdGF0ZSA9ICdvcGVuaW5nJztcbiAgICB0aGlzLnN0YXJ0VXBkYXRlKCk7XG4gICAgdGhpcy5pbmVydCA9IHRydWU7XG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQ/LnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsICd0cnVlJyk7XG5cbiAgICAvLyBJZiB0aGUgYW5pbWF0aW9uIGR1cmF0aW9uIGlzIHplcm8sIHRoZSBhbmltYXRpb25lbmQgZXZlbnQgaXMgbm90IGFsd2F5cyBmaXJlZCByZWxpYWJseS5cbiAgICAvLyBJbiB0aGlzIGNhc2Ugd2UgZGlyZWN0bHkgc2V0IHRoZSBgb3BlbmVkYCBzdGF0ZS5cbiAgICBpZiAodGhpcy5faXNaZXJvQW5pbWF0aW9uRHVyYXRpb24oKSkge1xuICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc1plcm9BbmltYXRpb25EdXJhdGlvbih0aGlzLCAnLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLWFuaW1hdGlvbi1kdXJhdGlvbicpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlT3BlbmluZygpOiB2b2lkIHtcbiAgICB0aGlzLl9zdGF0ZSA9ICdvcGVuZWQnO1xuICAgIHRoaXMuaW5lcnQgPSBmYWxzZTtcbiAgICB0aGlzLl9hdHRhY2hXaW5kb3dFdmVudHMoKTtcbiAgICB0aGlzLl9zZXROYXZpZ2F0aW9uSW5lcnQoKTtcbiAgICB0aGlzLl9mb2N1c1RyYXBDb250cm9sbGVyLmZvY3VzSW5pdGlhbEVsZW1lbnQoKTtcbiAgICB0aGlzLl9jaGVja0FjdGl2ZUFjdGlvbigpO1xuICAgIHRoaXMuY29tcGxldGVVcGRhdGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZUNsb3NpbmcoKTogdm9pZCB7XG4gICAgdGhpcy5fc3RhdGUgPSAnY2xvc2VkJztcbiAgICB0aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoJy5zYmItbmF2aWdhdGlvbi1zZWN0aW9uX19jb250YWluZXInKT8uc2Nyb2xsVG8oMCwgMCk7XG4gICAgdGhpcy5fd2luZG93RXZlbnRzQ29udHJvbGxlcj8uYWJvcnQoKTtcbiAgICB0aGlzLl9yZXNldExpc3RzKCk7XG4gICAgdGhpcy5fc2V0TmF2aWdhdGlvbkluZXJ0KCk7XG4gICAgaWYgKHRoaXMuX2lzQmVsb3dMYXJnZSgpICYmIHRoaXMuX3RyaWdnZXJFbGVtZW50KSB7XG4gICAgICB0aGlzLl90cmlnZ2VyRWxlbWVudC5mb2N1cygpO1xuICAgIH1cbiAgICB0aGlzLmNvbXBsZXRlVXBkYXRlKCk7XG4gIH1cblxuICBwcml2YXRlIF9jbG9zZVByZXZpb3VzTmF2aWdhdGlvblNlY3Rpb24oKTogdm9pZCB7XG4gICAgdGhpcy5fZmlyc3RMZXZlbE5hdmlnYXRpb24/LmFjdGl2ZU5hdmlnYXRpb25TZWN0aW9uPy5jbG9zZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsb3NlcyB0aGUgbmF2aWdhdGlvbiBzZWN0aW9uLlxuICAgKi9cbiAgcHVibGljIGNsb3NlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9zdGF0ZSAhPT0gJ29wZW5lZCcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9zdGF0ZSA9ICdjbG9zaW5nJztcbiAgICB0aGlzLnN0YXJ0VXBkYXRlKCk7XG4gICAgdGhpcy5pbmVydCA9IHRydWU7XG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQ/LnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsICdmYWxzZScpO1xuXG4gICAgLy8gSWYgdGhlIGFuaW1hdGlvbiBkdXJhdGlvbiBpcyB6ZXJvLCB0aGUgYW5pbWF0aW9uZW5kIGV2ZW50IGlzIG5vdCBhbHdheXMgZmlyZWQgcmVsaWFibHkuXG4gICAgLy8gSW4gdGhpcyBjYXNlIHdlIGRpcmVjdGx5IHNldCB0aGUgYGNsb3NlZGAgc3RhdGUuXG4gICAgaWYgKHRoaXMuX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCkpIHtcbiAgICAgIHRoaXMuX2hhbmRsZUNsb3NpbmcoKTtcbiAgICB9XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgdHJpZ2dlciBpcyB2YWxpZCBhbmQgYXR0YWNoIGNsaWNrIGV2ZW50IGxpc3RlbmVycy5cbiAgcHJpdmF0ZSBfY29uZmlndXJlVHJpZ2dlcigpOiB2b2lkIHtcbiAgICBjb25zdCB0cmlnZ2VyRWxlbWVudCA9IChcbiAgICAgIHRoaXMudHJpZ2dlciBpbnN0YW5jZW9mIEhUTUxFbGVtZW50ID8gdGhpcy50cmlnZ2VyIDogdGhpcy5fdHJpZ2dlcklkUmVmZXJlbmNlQ29udHJvbGxlci5maW5kKClcbiAgICApIGFzIFNiYk5hdmlnYXRpb25CdXR0b25FbGVtZW50IHwgbnVsbDtcblxuICAgIGlmICh0cmlnZ2VyRWxlbWVudCA9PT0gdGhpcy5fdHJpZ2dlckVsZW1lbnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl90cmlnZ2VyQWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgIHJlbW92ZUFyaWFPdmVybGF5VHJpZ2dlckF0dHJpYnV0ZXModGhpcy5fdHJpZ2dlckVsZW1lbnQpO1xuICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50ID0gdHJpZ2dlckVsZW1lbnQ7XG5cbiAgICBpZiAoIXRoaXMuX3RyaWdnZXJFbGVtZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc2V0QXJpYU92ZXJsYXlUcmlnZ2VyQXR0cmlidXRlcyh0aGlzLl90cmlnZ2VyRWxlbWVudCwgJ21lbnUnLCB0aGlzLmlkLCB0aGlzLl9zdGF0ZSk7XG4gICAgdGhpcy5fdHJpZ2dlckFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcbiAgICBpZiAodGhpcy5faXNOYXZpZ2F0aW9uQnV0dG9uKHRoaXMuX3RyaWdnZXJFbGVtZW50KSkge1xuICAgICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQuY29ubmVjdGVkU2VjdGlvbiA9IHRoaXM7XG4gICAgfVxuICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4gdGhpcy5vcGVuKCksIHtcbiAgICAgIHNpZ25hbDogdGhpcy5fdHJpZ2dlckFib3J0Q29udHJvbGxlci5zaWduYWwsXG4gICAgfSk7XG4gICAgdGhpcy5fZmlyc3RMZXZlbE5hdmlnYXRpb24gPSB0aGlzLl90cmlnZ2VyRWxlbWVudD8uY2xvc2VzdD8uKCdzYmItbmF2aWdhdGlvbicpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNOYXZpZ2F0aW9uQnV0dG9uKHRyaWdnZXI6IEhUTUxFbGVtZW50IHwgbnVsbCk6IHRyaWdnZXIgaXMgU2JiTmF2aWdhdGlvbkJ1dHRvbkVsZW1lbnQge1xuICAgIHJldHVybiB0cmlnZ2VyPy5sb2NhbE5hbWUgPT09ICdzYmItbmF2aWdhdGlvbi1idXR0b24nO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2V0TmF2aWdhdGlvbkluZXJ0KGlzQmVsb3dMYXJnZTogYm9vbGVhbiA9IHRoaXMuX2lzQmVsb3dMYXJnZSgpKTogdm9pZCB7XG4gICAgY29uc3QgbmF2aWdhdGlvbkNvbnRlbnQgPSB0aGlzLl9maXJzdExldmVsTmF2aWdhdGlvbj8ubmF2aWdhdGlvbkNvbnRlbnQ7XG4gICAgaWYgKG5hdmlnYXRpb25Db250ZW50KSB7XG4gICAgICBuYXZpZ2F0aW9uQ29udGVudC5pbmVydCA9IGlzQmVsb3dMYXJnZSAmJiB0aGlzLl9zdGF0ZSAhPT0gJ2Nsb3NlZCc7XG4gICAgfVxuICB9XG5cbiAgLy8gSW4gcmFyZSBjYXNlcyBpdCBjYW4gYmUgdGhhdCB0aGUgYW5pbWF0aW9uRW5kIGV2ZW50IGlzIHRyaWdnZXJlZCB0d2ljZS5cbiAgLy8gVG8gYXZvaWQgZW50ZXJpbmcgYSBjb3JydXB0IHN0YXRlLCBleGl0IHdoZW4gc3RhdGUgaXMgbm90IGV4cGVjdGVkLlxuICBwcml2YXRlIF9vbkFuaW1hdGlvbkVuZChldmVudDogQW5pbWF0aW9uRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ29wZW4nICYmIHRoaXMuX3N0YXRlID09PSAnb3BlbmluZycpIHtcbiAgICAgIHRoaXMuX2hhbmRsZU9wZW5pbmcoKTtcbiAgICB9IGVsc2UgaWYgKGV2ZW50LmFuaW1hdGlvbk5hbWUgPT09ICdjbG9zZScgJiYgdGhpcy5fc3RhdGUgPT09ICdjbG9zaW5nJykge1xuICAgICAgdGhpcy5faGFuZGxlQ2xvc2luZygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3Jlc2V0TGlzdHMoKTogdm9pZCB7XG4gICAgQXJyYXkuZnJvbShcbiAgICAgIHRoaXMucXVlcnlTZWxlY3RvckFsbDxTYmJOYXZpZ2F0aW9uQnV0dG9uRWxlbWVudCB8IFNiYk5hdmlnYXRpb25MaW5rRWxlbWVudD4oXG4gICAgICAgICdbZGF0YS1zZWN0aW9uLWFjdGlvbl1bZGF0YS1hY3Rpb24tYWN0aXZlXScsXG4gICAgICApID8/IFtdLFxuICAgICkuZm9yRWFjaCgoYWN0aW9uKSA9PiBhY3Rpb24ucmVtb3ZlQXR0cmlidXRlKCdkYXRhLWFjdGlvbi1hY3RpdmUnKSk7XG4gIH1cblxuICBwcml2YXRlIF9hdHRhY2hXaW5kb3dFdmVudHMoKTogdm9pZCB7XG4gICAgdGhpcy5fd2luZG93RXZlbnRzQ29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIChldmVudDogS2V5Ym9hcmRFdmVudCkgPT4gdGhpcy5fb25LZXlkb3duRXZlbnQoZXZlbnQpLCB7XG4gICAgICBzaWduYWw6IHRoaXMuX3dpbmRvd0V2ZW50c0NvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pO1xuXG4gICAgLy8gQ2xvc2UgbmF2aWdhdGlvbiBzZWN0aW9uIG9uIGFjdGlvbiBjbGljayBvciBzYmItbmF2aWdhdGlvbi1zZWN0aW9uLWNsb3NlIGNsaWNrXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5faGFuZGxlTmF2aWdhdGlvblNlY3Rpb25DbG9zZSwge1xuICAgICAgc2lnbmFsOiB0aGlzLl93aW5kb3dFdmVudHNDb250cm9sbGVyLnNpZ25hbCxcbiAgICB9KTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmIHRoZSBjbGljayB3YXMgdHJpZ2dlcmVkIG9uIGFuIGVsZW1lbnQgdGhhdCBzaG91bGQgY2xvc2UgdGhlIHNlY3Rpb24uXG4gIHByaXZhdGUgX2hhbmRsZU5hdmlnYXRpb25TZWN0aW9uQ2xvc2UgPSAoZXZlbnQ6IEV2ZW50KTogdm9pZCA9PiB7XG4gICAgaWYgKFxuICAgICAgZXZlbnRcbiAgICAgICAgLmNvbXBvc2VkUGF0aCgpXG4gICAgICAgIC5maWx0ZXIoKGVsKSA9PiBlbCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KVxuICAgICAgICAuc29tZSgoZWwpID0+IHRoaXMuX2lzQ2xvc2VFbGVtZW50KGVsKSlcbiAgICApIHtcbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9XG4gIH07XG5cbiAgcHJpdmF0ZSBfaXNDbG9zZUVsZW1lbnQoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgZWxlbWVudC5ub2RlTmFtZSA9PT0gJ0EnIHx8XG4gICAgICAoIWVsZW1lbnQuaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpICYmXG4gICAgICAgIChlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnc2JiLW5hdmlnYXRpb24tY2xvc2UnKSB8fFxuICAgICAgICAgIGVsZW1lbnQuaGFzQXR0cmlidXRlKCdzYmItbmF2aWdhdGlvbi1zZWN0aW9uLWNsb3NlJykpKVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9pc0JlbG93TGFyZ2UoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzQnJlYWtwb2ludCgnemVybycsICdsYXJnZScpID8/IGZhbHNlO1xuICB9XG5cbiAgLy8gQ2xvc2VzIHRoZSBuYXZpZ2F0aW9uIG9uIFwiRXNjXCIga2V5IHByZXNzZWQuXG4gIHByaXZhdGUgX29uS2V5ZG93bkV2ZW50KGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3N0YXRlID09PSAnb3BlbmVkJyAmJiBldmVudC5rZXkgPT09ICdFc2NhcGUnKSB7XG4gICAgICB0aGlzLmNsb3NlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfY2hlY2tBY3RpdmVBY3Rpb24oKTogdm9pZCB7XG4gICAgdGhpcy5xdWVyeVNlbGVjdG9yPFNiYk5hdmlnYXRpb25CdXR0b25FbGVtZW50IHwgU2JiTmF2aWdhdGlvbkxpbmtFbGVtZW50PihcbiAgICAgICc6aXMoc2JiLW5hdmlnYXRpb24tYnV0dG9uLCBzYmItbmF2aWdhdGlvbi1saW5rKS5zYmItYWN0aXZlJyxcbiAgICApPy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtYWN0aW9uLWFjdGl2ZScsIHRydWUpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5pZCB8fD0gYHNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tJHtuZXh0SWQrK31gO1xuICAgIHRoaXMuX3N0YXRlIHx8PSAnY2xvc2VkJztcbiAgICBpZiAodGhpcy5oYXNVcGRhdGVkKSB7XG4gICAgICB0aGlzLl9jb25maWd1cmVUcmlnZ2VyKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQgPSBudWxsO1xuICAgIHRoaXMuX3RyaWdnZXJBYm9ydENvbnRyb2xsZXI/LmFib3J0KCk7XG4gICAgdGhpcy5fd2luZG93RXZlbnRzQ29udHJvbGxlcj8uYWJvcnQoKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSByZXF1ZXN0VXBkYXRlKFxuICAgIG5hbWU/OiBQcm9wZXJ0eUtleSxcbiAgICBvbGRWYWx1ZT86IHVua25vd24sXG4gICAgb3B0aW9ucz86IFByb3BlcnR5RGVjbGFyYXRpb24sXG4gICk6IHZvaWQge1xuICAgIHN1cGVyLnJlcXVlc3RVcGRhdGUobmFtZSwgb2xkVmFsdWUsIG9wdGlvbnMpO1xuXG4gICAgaWYgKCFpc1NlcnZlciAmJiAoIW5hbWUgfHwgbmFtZSA9PT0gJ3RyaWdnZXInKSAmJiB0aGlzLmhhc1VwZGF0ZWQpIHtcbiAgICAgIHRoaXMuX2NvbmZpZ3VyZVRyaWdnZXIoKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLmZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG4gICAgdGhpcy5fY29uZmlndXJlVHJpZ2dlcigpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLW5hdmlnYXRpb24tc2VjdGlvbl9fY29udGFpbmVyXCI+XG4gICAgICAgIDxuYXZcbiAgICAgICAgICBAYW5pbWF0aW9uZW5kPSR7dGhpcy5fb25BbmltYXRpb25FbmR9XG4gICAgICAgICAgY2xhc3M9XCJzYmItbmF2aWdhdGlvbi1zZWN0aW9uXCJcbiAgICAgICAgICBhcmlhLWxhYmVsbGVkYnk9JHshdGhpcy5hY2Nlc3NpYmlsaXR5TGFiZWwgPyAndGl0bGUnIDogbm90aGluZ31cbiAgICAgICAgICBhcmlhLWxhYmVsPSR7dGhpcy5hY2Nlc3NpYmlsaXR5TGFiZWwgPyB0aGlzLmFjY2Vzc2liaWxpdHlMYWJlbCA6IG5vdGhpbmd9XG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLW5hdmlnYXRpb24tc2VjdGlvbl9fd3JhcHBlclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX2NvbnRlbnRcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX2hlYWRlclwiPlxuICAgICAgICAgICAgICAgIDwhLS0gQmFjayBidXR0b24gLS0+XG4gICAgICAgICAgICAgICAgPHNiYi10cmFuc3BhcmVudC1idXR0b25cbiAgICAgICAgICAgICAgICAgIGlkPVwic2JiLW5hdmlnYXRpb24tc2VjdGlvbi1iYWNrLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX2JhY2tcIlxuICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD0ke3RoaXMuYWNjZXNzaWJpbGl0eUJhY2tMYWJlbCB8fCBpMThuR29CYWNrW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfVxuICAgICAgICAgICAgICAgICAgbmVnYXRpdmVcbiAgICAgICAgICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgaWNvbi1uYW1lPVwiY2hldnJvbi1zbWFsbC1sZWZ0LXNtYWxsXCJcbiAgICAgICAgICAgICAgICAgIHNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tY2xvc2VcbiAgICAgICAgICAgICAgICA+PC9zYmItdHJhbnNwYXJlbnQtYnV0dG9uPlxuXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItbmF2aWdhdGlvbi1zZWN0aW9uX190aXRsZVwiIGlkPVwidGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgIDxzbG90IG5hbWU9XCJ0aXRsZVwiPiR7dGhpcy50aXRsZUNvbnRlbnR9PC9zbG90PlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxzbG90Pjwvc2xvdD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25hdj5cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1uYXZpZ2F0aW9uLXNlY3Rpb24nOiBTYmJOYXZpZ2F0aW9uU2VjdGlvbkVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBeUNBLElBQUksU0FBUztJQVlQLCtCQUEyQixNQUFBOztBQUpoQyxNQUFBLG1CQUFBLENBQUEsY0FBYyx3QkFBd0IsR0FDdEMsZUFBZTtBQUFBLElBQ2QsTUFBTTtBQUFBLEVBQUEsQ0FDUCxDQUFDOzs7O29CQUN3Qyx3QkFBd0IsVUFBVTs7Ozs7Ozs7Ozs7OztBQUExQyxFQUFBLG1CQUFRLFlBQW1DO0FBQUEsSUFtRDNFLGNBQUE7QUFDRSxZQUFBO0FBNUNGO0FBT0E7QUFPQTtBQU9BO0FBckJnQix5QkFBQSxnQ0FBQSxrQkFBQSxNQUFBLDRCQUF1QixFQUFFO0FBT3pCLHlCQUFBLDRCQUFBLGtCQUFBLE1BQUEsK0JBQUEsR0FBQSxrQkFBQSxNQUFBLHVCQUF1QyxJQUFJO0FBTzNDLHlCQUFBLHVDQUFBLGtCQUFBLE1BQUEsMEJBQUEsR0FBQSxrQkFBQSxNQUFBLGtDQUE2QixFQUFFO0FBTy9CLHlCQUFBLDJDQUFBLGtCQUFBLE1BQUEscUNBQUEsR0FBQSxrQkFBQSxNQUFBLHNDQUFpQyxFQUFFO0FBYTNDLFdBQUEseUJBQXFCLGtCQUFBLE1BQUEseUNBQUEsR0FBaUM7QUFDdEQsV0FBQSxrQkFBc0M7QUFFdEMsV0FBQSxnQ0FBZ0MsSUFBSSx5QkFBeUIsTUFBTSxTQUFTO0FBRTVFLFdBQUEsWUFBWSxJQUFJLHNCQUFzQixJQUFJO0FBQzFDLFdBQUEsdUJBQXVCLElBQUksdUJBQXVCLElBQUk7QUFDdEQsV0FBQSxvQkFBMEM7QUE0TDFDLFdBQUEsZ0NBQWdDLENBQUMsVUFBc0I7QUFDN0QsWUFDRSxNQUNHLGFBQUEsRUFDQSxPQUFPLENBQUMsT0FBTyxjQUFjLFdBQVcsRUFDeEMsS0FBSyxDQUFDLE9BQU8sS0FBSyxnQkFBZ0IsRUFBRSxDQUFDLEdBQ3hDO0FBQ0EsZUFBSyxNQUFBO0FBQUEsUUFBSztBQUFBLE1BQ1o7QUEvTEEsV0FBSyxjQUNILElBQUksMEJBQTBCLE1BQU07QUFBQSxRQUNsQyxDQUFDLHFDQUFxQyxHQUFHLENBQUMsWUFBVztBQUNuRCxjQUFJLEtBQUssV0FBVyxVQUFVO0FBQzVCLGlCQUFLLG9CQUFvQixPQUFPO0FBQUEsVUFBQTtBQUFBLFFBQ2xDO0FBQUEsTUFDRixDQUNELENBQUM7QUFHSixXQUFLLG1CQUFtQixXQUFXLENBQUMsTUFBSztBQUN2QyxhQUFLLG9CQUFvQjtBQUFBLE1BQUEsQ0FDMUI7QUFFRCxXQUFLLG1CQUFtQixZQUFZLENBQUMsTUFBSztBQUN4QyxZQUNFLEVBQUUseUJBQXlCLGVBQzNCLENBQUMsS0FBSyxTQUFTLEVBQUUsYUFBYSxLQUM5Qix5QkFBeUIsdUJBQXVCLGNBQ2hELEtBQUssbUJBQW1CLFFBQVEsU0FDaEMsS0FBSyxpQkFDTDtBQUNBLGdCQUFNLG9CQUFvQixLQUFLLFFBQThCLGdCQUFnQjtBQUM3RSxnQkFBTSxvQkFBb0IsTUFBTSxLQUM5QixtQkFBbUIsaUJBQThCLGtCQUFrQixLQUFLLENBQUEsQ0FBRSxFQUMxRSxPQUFPLENBQUNBLE9BQU0sQ0FBQyxLQUFLLFNBQVNBLEVBQUMsQ0FBQztBQUVqQyxjQUFJLEtBQUssa0JBQWtCLFlBQVksQ0FBQyxrQkFBa0IsUUFBUTtBQUNoRSxpQkFBSyxpQkFBaUIsTUFBQTtBQUFBLGlCQUNqQjtBQUNMLGtCQUFNLGVBQWUsa0JBQWtCLFFBQVEsS0FBSyxlQUFlO0FBQ25FLGFBQUMsa0JBQWtCLGVBQWUsQ0FBQyxLQUFLLGtCQUFtQixjQUFjLE1BQUE7QUFBQTtRQUMzRTtBQUFBLE1BQ0YsQ0FDRDtBQUFBLElBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxJQWhGSCxJQUFnQixlQUFZO0FBQUEsYUFBQSxtQkFBQTtBQUFBLElBQUE7QUFBQSxJQUE1QixJQUFnQixhQUFZLE9BQUE7QUFBQSx5QkFBQSxnQ0FBQTtBQUFBLElBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLElBTzVCLElBQWdCLFVBQU87QUFBQSxhQUFBLG1CQUFBO0FBQUEsSUFBQTtBQUFBLElBQXZCLElBQWdCLFFBQU8sT0FBQTtBQUFBLHlCQUFBLDJCQUFBO0FBQUEsSUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLElBT3ZCLElBQWdCLHFCQUFrQjtBQUFBLGFBQUEsbUJBQUE7QUFBQSxJQUFBO0FBQUEsSUFBbEMsSUFBZ0IsbUJBQWtCLE9BQUE7QUFBQSx5QkFBQSxzQ0FBQTtBQUFBLElBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxJQU9sQyxJQUFnQix5QkFBc0I7QUFBQSxhQUFBLG1CQUFBO0FBQUEsSUFBQTtBQUFBLElBQXRDLElBQWdCLHVCQUFzQixPQUFBO0FBQUEseUJBQUEsMENBQUE7QUFBQSxJQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsSUFLdEMsSUFBWSxPQUFPLE9BQTJCO0FBQzVDLFdBQUssYUFBYSxjQUFjLEtBQUs7QUFDckMsMkJBQXFCLE1BQU0sZUFBZSxLQUFLLFdBQVcsV0FBVyxTQUFTLElBQUk7QUFBQSxJQUFBO0FBQUEsSUFFcEYsSUFBWSxTQUFNO0FBQ2hCLGFBQU8sS0FBSyxhQUFhLFlBQVk7QUFBQSxJQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsSUF1RGhDLE9BQUk7QUFDVCxVQUFJLEtBQUssV0FBVyxZQUFZLENBQUMsS0FBSyxZQUFZO0FBQ2hEO0FBQUEsTUFBQTtBQUdGLFVBQUksS0FBSyxvQkFBb0IsS0FBSyxlQUFlLEdBQUc7QUFDbEQsYUFBSyxpQkFBaUIsUUFBUSxPQUFPLEtBQUssZUFBZTtBQUFBLE1BQUE7QUFHM0QsV0FBSyxnQ0FBQTtBQUNMLFdBQUssU0FBUztBQUNkLFdBQUssWUFBQTtBQUNMLFdBQUssUUFBUTtBQUNiLFdBQUssaUJBQWlCLGFBQWEsaUJBQWlCLE1BQU07QUFJMUQsVUFBSSxLQUFLLDRCQUE0QjtBQUNuQyxhQUFLLGVBQUE7QUFBQSxNQUFjO0FBQUEsSUFDckI7QUFBQSxJQUdNLDJCQUF3QjtBQUM5QixhQUFPLHdCQUF3QixNQUFNLDZDQUE2QztBQUFBLElBQUE7QUFBQSxJQUc1RSxpQkFBYztBQUNwQixXQUFLLFNBQVM7QUFDZCxXQUFLLFFBQVE7QUFDYixXQUFLLG9CQUFBO0FBQ0wsV0FBSyxvQkFBQTtBQUNMLFdBQUsscUJBQXFCLG9CQUFBO0FBQzFCLFdBQUssbUJBQUE7QUFDTCxXQUFLLGVBQUE7QUFBQSxJQUFjO0FBQUEsSUFHYixpQkFBYztBQUNwQixXQUFLLFNBQVM7QUFDZCxXQUFLLFlBQVksY0FBYyxvQ0FBb0MsR0FBRyxTQUFTLEdBQUcsQ0FBQztBQUNuRixXQUFLLHlCQUF5QixNQUFBO0FBQzlCLFdBQUssWUFBQTtBQUNMLFdBQUssb0JBQUE7QUFDTCxVQUFJLEtBQUssbUJBQW1CLEtBQUssaUJBQWlCO0FBQ2hELGFBQUssZ0JBQWdCLE1BQUE7QUFBQTtBQUV2QixXQUFLLGVBQUE7QUFBQSxJQUFjO0FBQUEsSUFHYixrQ0FBK0I7QUFDckMsV0FBSyx1QkFBdUIseUJBQXlCLE1BQUE7QUFBQTs7OztJQU1oRCxRQUFLO0FBQ1YsVUFBSSxLQUFLLFdBQVcsVUFBVTtBQUM1QjtBQUFBLE1BQUE7QUFHRixXQUFLLFNBQVM7QUFDZCxXQUFLLFlBQUE7QUFDTCxXQUFLLFFBQVE7QUFDYixXQUFLLGlCQUFpQixhQUFhLGlCQUFpQixPQUFPO0FBSTNELFVBQUksS0FBSyw0QkFBNEI7QUFDbkMsYUFBSyxlQUFBO0FBQUEsTUFBYztBQUFBLElBQ3JCO0FBQUE7QUFBQSxJQUlNLG9CQUFpQjtBQUN2QixZQUFNLGlCQUNKLEtBQUssbUJBQW1CLGNBQWMsS0FBSyxVQUFVLEtBQUssOEJBQThCLEtBQUE7QUFHMUYsVUFBSSxtQkFBbUIsS0FBSyxpQkFBaUI7QUFDM0M7QUFBQSxNQUFBO0FBR0YsV0FBSyx5QkFBeUIsTUFBQTtBQUM5Qix5Q0FBbUMsS0FBSyxlQUFlO0FBQ3ZELFdBQUssa0JBQWtCO0FBRXZCLFVBQUksQ0FBQyxLQUFLLGlCQUFpQjtBQUN6QjtBQUFBLE1BQUE7QUFHRixzQ0FBZ0MsS0FBSyxpQkFBaUIsUUFBUSxLQUFLLElBQUksS0FBSyxNQUFNO0FBQ2xGLFdBQUssMEJBQTBCLElBQUksZ0JBQUE7QUFDbkMsVUFBSSxLQUFLLG9CQUFvQixLQUFLLGVBQWUsR0FBRztBQUNsRCxhQUFLLGdCQUFnQixtQkFBbUI7QUFBQSxNQUFBO0FBRTFDLFdBQUssZ0JBQWdCLGlCQUFpQixTQUFTLE1BQU0sS0FBSyxRQUFRO0FBQUEsUUFDaEUsUUFBUSxLQUFLLHdCQUF3QjtBQUFBLE1BQUEsQ0FDdEM7QUFDRCxXQUFLLHdCQUF3QixLQUFLLGlCQUFpQixVQUFVLGdCQUFnQjtBQUFBLElBQUE7QUFBQSxJQUd2RSxvQkFBb0IsU0FBMkI7QUFDckQsYUFBTyxTQUFTLGNBQWM7QUFBQSxJQUFBO0FBQUEsSUFHeEIsb0JBQW9CLGVBQXdCLEtBQUssaUJBQWU7QUFDdEUsWUFBTSxvQkFBb0IsS0FBSyx1QkFBdUI7QUFDdEQsVUFBSSxtQkFBbUI7QUFDckIsMEJBQWtCLFFBQVEsZ0JBQWdCLEtBQUssV0FBVztBQUFBLE1BQUE7QUFBQSxJQUM1RDtBQUFBO0FBQUE7QUFBQSxJQUtNLGdCQUFnQixPQUFxQjtBQUMzQyxVQUFJLE1BQU0sa0JBQWtCLFVBQVUsS0FBSyxXQUFXLFdBQVc7QUFDL0QsYUFBSyxlQUFBO0FBQUEsTUFBYyxXQUNWLE1BQU0sa0JBQWtCLFdBQVcsS0FBSyxXQUFXLFdBQVc7QUFDdkUsYUFBSyxlQUFBO0FBQUEsTUFBYztBQUFBLElBQ3JCO0FBQUEsSUFHTSxjQUFXO0FBQ2pCLFlBQU0sS0FDSixLQUFLLGlCQUNILDJDQUEyQyxLQUN4QyxDQUFBLENBQUUsRUFDUCxRQUFRLENBQUMsV0FBVyxPQUFPLGdCQUFnQixvQkFBb0IsQ0FBQztBQUFBLElBQUE7QUFBQSxJQUc1RCxzQkFBbUI7QUFDekIsV0FBSywwQkFBMEIsSUFBSSxnQkFBQTtBQUNuQyxhQUFPLGlCQUFpQixXQUFXLENBQUMsVUFBeUIsS0FBSyxnQkFBZ0IsS0FBSyxHQUFHO0FBQUEsUUFDeEYsUUFBUSxLQUFLLHdCQUF3QjtBQUFBLE1BQUEsQ0FDdEM7QUFHRCxhQUFPLGlCQUFpQixTQUFTLEtBQUssK0JBQStCO0FBQUEsUUFDbkUsUUFBUSxLQUFLLHdCQUF3QjtBQUFBLE1BQUEsQ0FDdEM7QUFBQSxJQUFBO0FBQUEsSUFlSyxnQkFBZ0IsU0FBb0I7QUFDMUMsYUFDRSxRQUFRLGFBQWEsT0FDcEIsQ0FBQyxRQUFRLGFBQWEsVUFBVSxNQUM5QixRQUFRLGFBQWEsc0JBQXNCLEtBQzFDLFFBQVEsYUFBYSw4QkFBOEI7QUFBQSxJQUFBO0FBQUEsSUFJbkQsZ0JBQWE7QUFDbkIsYUFBTyxhQUFhLFFBQVEsT0FBTyxLQUFLO0FBQUEsSUFBQTtBQUFBO0FBQUEsSUFJbEMsZ0JBQWdCLE9BQW9CO0FBQzFDLFVBQUksS0FBSyxXQUFXLFlBQVksTUFBTSxRQUFRLFVBQVU7QUFDdEQsYUFBSyxNQUFBO0FBQUEsTUFBSztBQUFBLElBQ1o7QUFBQSxJQUdNLHFCQUFrQjtBQUN4QixXQUFLLGNBQ0gsNERBQTRELEdBQzNELGdCQUFnQixzQkFBc0IsSUFBSTtBQUFBLElBQUE7QUFBQSxJQUcvQixvQkFBaUI7QUFDL0IsWUFBTSxrQkFBQTtBQUNOLFdBQUssT0FBTywwQkFBMEIsUUFBUTtBQUM5QyxXQUFLLFdBQVc7QUFDaEIsVUFBSSxLQUFLLFlBQVk7QUFDbkIsYUFBSyxrQkFBQTtBQUFBLE1BQWlCO0FBQUEsSUFDeEI7QUFBQSxJQUdjLHVCQUFvQjtBQUNsQyxZQUFNLHFCQUFBO0FBQ04sV0FBSyxrQkFBa0I7QUFDdkIsV0FBSyx5QkFBeUIsTUFBQTtBQUM5QixXQUFLLHlCQUF5QixNQUFBO0FBQUE7SUFHaEIsY0FDZCxNQUNBLFVBQ0EsU0FBNkI7QUFFN0IsWUFBTSxjQUFjLE1BQU0sVUFBVSxPQUFPO0FBRTNDLFVBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxTQUFTLGNBQWMsS0FBSyxZQUFZO0FBQ2pFLGFBQUssa0JBQUE7QUFBQSxNQUFpQjtBQUFBLElBQ3hCO0FBQUEsSUFHaUIsYUFBYSxtQkFBdUM7QUFDckUsWUFBTSxhQUFhLGlCQUFpQjtBQUNwQyxXQUFLLGtCQUFBO0FBQUEsSUFBaUI7QUFBQSxJQUdMLFNBQU07QUFDdkIsYUFBTztBQUFBO0FBQUE7QUFBQSwwQkFHZSxLQUFLLGVBQWU7QUFBQTtBQUFBLDRCQUVsQixDQUFDLEtBQUsscUJBQXFCLFVBQVUsT0FBTztBQUFBLHVCQUNqRCxLQUFLLHFCQUFxQixLQUFLLHFCQUFxQixPQUFPO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLCtCQVNuRCxLQUFLLDBCQUEwQixXQUFXLEtBQUssVUFBVSxPQUFPLENBQUM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsdUNBU3pELEtBQUssWUFBWTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxJQUFBO0FBQUEsS0FwVXRELGdEQU9BLDJDQU9BLHNEQU9BOztBQXZCQywrQkFBQSxDQUFBLGFBQ0EsU0FBUyxFQUFFLFdBQVcsaUJBQWlCLFNBQVMsTUFBTSxXQUFXLG1CQUFBLENBQW9CLENBQUM7QUFPdEYsMEJBQUEsQ0FBQSxVQUFVO3NDQU1WLGFBQ0EsU0FBUyxFQUFFLFdBQVcsc0JBQUEsQ0FBdUIsQ0FBQzswQ0FNOUMsYUFDQSxTQUFTLEVBQUUsV0FBVywyQkFBQSxDQUE0QixDQUFDO0FBcEJwRCxpQkFBQSxJQUFBLE1BQUEsMEJBQUEsRUFBQSxNQUFBLFlBQUEsTUFBQSxnQkFBQSxRQUFBLE9BQUEsU0FBQSxPQUFBLFFBQUEsRUFBQSxLQUFBLENBQUEsUUFBQSxrQkFBQSxLQUFBLEtBQUEsQ0FBQSxRQUFBLElBQWdCLGNBQVksS0FBQSxDQUFBLEtBQUEsVUFBQTtBQUFBLFVBQVosZUFBWTtBQUFBLElBQUEsS0FBQSxVQUFBLGFBQUEsNEJBQUEsK0JBQUE7QUFPNUIsaUJBQUEsSUFBQSxNQUFBLHFCQUFBLEVBQUEsTUFBQSxZQUFBLE1BQUEsV0FBQSxRQUFBLE9BQUEsU0FBQSxPQUFBLFFBQUEsRUFBQSxLQUFBLENBQUEsUUFBQSxhQUFBLEtBQUEsS0FBQSxDQUFBLFFBQUEsSUFBZ0IsU0FBTyxLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsVUFBUCxVQUFPO0FBQUEsSUFBQSxLQUFBLFVBQUEsYUFBQSx1QkFBQSwwQkFBQTtBQU92QixpQkFBQSxJQUFBLE1BQUEsZ0NBQUEsRUFBQSxNQUFBLFlBQUEsTUFBQSxzQkFBQSxRQUFBLE9BQUEsU0FBQSxPQUFBLFFBQUEsRUFBQSxLQUFBLENBQUEsUUFBQSx3QkFBQSxLQUFBLEtBQUEsQ0FBQSxRQUFBLElBQWdCLG9CQUFrQixLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsVUFBbEIscUJBQWtCO0FBQUEsSUFBQSxLQUFBLFVBQUEsYUFBQSxrQ0FBQSxxQ0FBQTtBQU9sQyxpQkFBQSxJQUFBLE1BQUEsb0NBQUEsRUFBQSxNQUFBLFlBQUEsTUFBQSwwQkFBQSxRQUFBLE9BQUEsU0FBQSxPQUFBLFFBQUEsRUFBQSxLQUFBLENBQUEsUUFBQSw0QkFBQSxLQUFBLEtBQUEsQ0FBQSxRQUFBLElBQWdCLHdCQUFzQixLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsVUFBdEIseUJBQXNCO0FBQUEsSUFBQSxLQUFBLFVBQUEsYUFBQSxzQ0FBQSx5Q0FBQTtBQTdCeEMsaUJBQUEsTUFBQSxtQkFBQSxFQUFBLE9BQUEsV0FBQSxHQUFBLGtCQUFBLEVBQUEsTUFBQSxTQUFBLE1BQUEsV0FBQSxNQUFBLFVBQUEsVUFBQSxHQUFBLE1BQUEsdUJBQUE7OztRQUN5QixHQUFBLFNBQXlCLE9BRDVDLGtCQUFBLFlBQUEsdUJBQUEsR0FBNEI7OzsifQ==
@@ -45,6 +45,8 @@ const style = css`*,
45
45
  --sbb-notification-timing-function: ease-in;
46
46
  --sbb-notification-content-padding-inline: var(--sbb-spacing-responsive-xxxs)
47
47
  var(--sbb-spacing-responsive-xs);
48
+ --_sbb-notification-icon-authoritative-font-size: 1em;
49
+ --_sbb-notification-icon-authoritative-line-height: var(--sbb-typo-line-height-body-text);
48
50
  --sbb-focus-outline-color: var(--sbb-focus-outline-color-default);
49
51
  display: block;
50
52
  }
@@ -90,28 +92,22 @@ const style = css`*,
90
92
  --sbb-notification-content-padding-inline: var(--sbb-spacing-responsive-xxxs)
91
93
  var(--sbb-spacing-responsive-xxs);
92
94
  }
93
-
94
95
  @media (min-width: calc(37.5rem)) {
95
- :host {
96
- --sbb-notification-icon-margin-block-start: calc(
97
- ((1em * var(--sbb-typo-line-height-body-text)) - var(--sbb-size-icon-ui-small)) / 2
98
- );
99
- }
100
- :host(:where([data-slot-names~=title], [title-content])) {
101
- --sbb-notification-icon-margin-block-start: calc(
102
- (
103
- (var(--sbb-font-size-title-5) * var(--sbb-typo-line-height-body-text)) - var(
104
- --sbb-size-icon-ui-small
105
- )
106
- ) /
107
- 2
108
- );
109
- }
110
96
  :host([size=s]) {
111
97
  --sbb-notification-padding-inline: var(--sbb-spacing-responsive-xxs);
112
- --sbb-notification-icon-margin-block-start: 0;
113
98
  }
114
99
  }
100
+
101
+ :host(:where([data-slot-names~=title], [title-content])) {
102
+ --_sbb-notification-icon-authoritative-font-size: var(--sbb-font-size-title-5);
103
+ --_sbb-notification-icon-authoritative-line-height: var(--sbb-typo-line-height-titles);
104
+ }
105
+
106
+ :host([size=s]:where([data-slot-names~=title], [title-content])) {
107
+ --_sbb-notification-icon-authoritative-font-size: var(--sbb-font-size-title-6);
108
+ --_sbb-notification-icon-authoritative-line-height: var(--sbb-typo-line-height-body-text);
109
+ }
110
+
115
111
  .sbb-notification__wrapper {
116
112
  position: relative;
117
113
  inset-inline-start: calc(var(--sbb-notification-base-radius) - var(--sbb-notification-border-width));
@@ -189,9 +185,13 @@ const style = css`*,
189
185
 
190
186
  .sbb-notification__icon {
191
187
  color: var(--sbb-notification-icon-color);
192
- margin-block-start: var(--sbb-notification-icon-margin-block-start);
193
188
  --sbb-icon-svg-width: var(--sbb-notification-icon-size);
194
189
  }
190
+ @media (min-width: calc(37.5rem)) {
191
+ .sbb-notification__icon {
192
+ margin-block-start: max(0rem, (var(--_sbb-notification-icon-authoritative-font-size) * var(--_sbb-notification-icon-authoritative-line-height) - var(--sbb-size-icon-ui-small)) / 2);
193
+ }
194
+ }
195
195
 
196
196
  .sbb-notification__title {
197
197
  margin: 0;
@@ -398,13 +398,12 @@ let SbbNotificationElement = (() => {
398
398
  }
399
399
  }
400
400
  connectedCallback() {
401
- this._state || (this._state = "closed");
401
+ this._state ||= "closed";
402
402
  super.connectedCallback();
403
403
  }
404
404
  async firstUpdated(changedProperties) {
405
- var _a2;
406
405
  super.firstUpdated(changedProperties);
407
- this._notificationElement = (_a2 = this.shadowRoot) == null ? void 0 : _a2.querySelector(".sbb-notification__wrapper");
406
+ this._notificationElement = this.shadowRoot?.querySelector(".sbb-notification__wrapper");
408
407
  await this.updateComplete;
409
408
  this._setNotificationHeight();
410
409
  this._open();
@@ -413,8 +412,7 @@ let SbbNotificationElement = (() => {
413
412
  return isZeroAnimationDuration(this, "--sbb-notification-animation-duration");
414
413
  }
415
414
  _setNotificationHeight() {
416
- var _a2;
417
- if (!((_a2 = this._notificationElement) == null ? void 0 : _a2.scrollHeight)) {
415
+ if (!this._notificationElement?.scrollHeight) {
418
416
  return;
419
417
  }
420
418
  const notificationHeight = `${this._notificationElement.scrollHeight}px`;
@@ -524,4 +522,4 @@ let SbbNotificationElement = (() => {
524
522
  export {
525
523
  SbbNotificationElement
526
524
  };
527
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlc2l6ZUNvbnRyb2xsZXIgfSBmcm9tICdAbGl0LWxhYnMvb2JzZXJ2ZXJzL3Jlc2l6ZS1jb250cm9sbGVyLmpzJztcbmltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIExpdEVsZW1lbnQsXG4gIG5vdGhpbmcsXG4gIHR5cGUgUHJvcGVydHlWYWx1ZXMsXG4gIHR5cGUgVGVtcGxhdGVSZXN1bHQsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgU2JiTGFuZ3VhZ2VDb250cm9sbGVyIH0gZnJvbSAnLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBmb3JjZVR5cGUsIG9taXRFbXB0eUNvbnZlcnRlciwgc2xvdFN0YXRlIH0gZnJvbSAnLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IGlzTGVhbiwgaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24gfSBmcm9tICcuLi9jb3JlL2RvbS5qcyc7XG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICcuLi9jb3JlL2V2ZW50aW5nLmpzJztcbmltcG9ydCB7IGkxOG5DbG9zZU5vdGlmaWNhdGlvbiB9IGZyb20gJy4uL2NvcmUvaTE4bi5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYk9wZW5lZENsb3NlZFN0YXRlIH0gZnJvbSAnLi4vY29yZS9pbnRlcmZhY2VzLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiVGl0bGVMZXZlbCB9IGZyb20gJy4uL3RpdGxlLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vbm90aWZpY2F0aW9uLnNjc3M/bGl0JmlubGluZSc7XG5cbmltcG9ydCAnLi4vYnV0dG9uL3NlY29uZGFyeS1idXR0b24uanMnO1xuaW1wb3J0ICcuLi9kaXZpZGVyLmpzJztcbmltcG9ydCAnLi4vaWNvbi5qcyc7XG5pbXBvcnQgJy4uL3RpdGxlLmpzJztcblxuY29uc3Qgbm90aWZpY2F0aW9uVHlwZXMgPSBuZXcgTWFwKFtcbiAgWydpbmZvJywgJ2NpcmNsZS1pbmZvcm1hdGlvbi1zbWFsbCddLFxuICBbJ3N1Y2Nlc3MnLCAnY2lyY2xlLXRpY2stc21hbGwnXSxcbiAgWyd3YXJuJywgJ2NpcmNsZS1leGNsYW1hdGlvbi1wb2ludC1zbWFsbCddLFxuICBbJ2Vycm9yJywgJ2NpcmNsZS1jcm9zcy1zbWFsbCddLFxuXSk7XG5cbmNvbnN0IERFQk9VTkNFX1RJTUUgPSAxNTA7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgbWVzc2FnZXMgd2hpY2ggcmVxdWlyZSBhIHVzZXIncyBhdHRlbnRpb24gd2l0aG91dCBpbnRlcnJ1cHRpbmcgaXRzIHRhc2tzLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIG5vdGlmaWNhdGlvbiBtZXNzYWdlLlxuICogQHNsb3QgdGl0bGUgLSBVc2UgdGhpcyB0byBwcm92aWRlIGEgbm90aWZpY2F0aW9uIHRpdGxlIChvcHRpb25hbCkuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSB3aWxsT3BlbiAtIEVtaXRzIHdoZW4gdGhlIG9wZW5pbmcgYW5pbWF0aW9uIHN0YXJ0cy5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8dm9pZD59IGRpZE9wZW4gLSBFbWl0cyB3aGVuIHRoZSBvcGVuaW5nIGFuaW1hdGlvbiBlbmRzLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gd2lsbENsb3NlIC0gRW1pdHMgd2hlbiB0aGUgY2xvc2luZyBhbmltYXRpb24gc3RhcnRzLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gZGlkQ2xvc2UgLSBFbWl0cyB3aGVuIHRoZSBjbG9zaW5nIGFuaW1hdGlvbiBlbmRzLlxuICogQGNzc3Byb3AgWy0tc2JiLW5vdGlmaWNhdGlvbi1tYXJnaW49MF0gLSBDYW4gYmUgdXNlZCB0byBtb2RpZnkgdGhlIG1hcmdpbiBpbiBvcmRlciB0byBnZXQgYSBzbW9vdGhlciBhbmltYXRpb24uXG4gKiBTZWUgc3R5bGUgc2VjdGlvbiBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cbiAqL1xuZXhwb3J0XG5AY3VzdG9tRWxlbWVudCgnc2JiLW5vdGlmaWNhdGlvbicpXG5Ac2xvdFN0YXRlKClcbmNsYXNzIFNiYk5vdGlmaWNhdGlvbkVsZW1lbnQgZXh0ZW5kcyBMaXRFbGVtZW50IHtcbiAgLy8gVE9ETzogZml4IGluaGVyaXRpbmcgZnJvbSBTYmJPcGVuQ2xvc2VCYXNlRWxlbWVudCByZXF1aXJlczogaHR0cHM6Ly9naXRodWIuY29tL29wZW4td2MvY3VzdG9tLWVsZW1lbnRzLW1hbmlmZXN0L2lzc3Vlcy8yNTNcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZXZlbnRzID0ge1xuICAgIHdpbGxPcGVuOiAnd2lsbE9wZW4nLFxuICAgIGRpZE9wZW46ICdkaWRPcGVuJyxcbiAgICB3aWxsQ2xvc2U6ICd3aWxsQ2xvc2UnLFxuICAgIGRpZENsb3NlOiAnZGlkQ2xvc2UnLFxuICB9IGFzIGNvbnN0O1xuXG4gIC8qKiBUaGUgdHlwZSBvZiB0aGUgbm90aWZpY2F0aW9uLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBhY2Nlc3NvciB0eXBlOiAnaW5mbycgfCAnc3VjY2VzcycgfCAnd2FybicgfCAnZXJyb3InID0gJ2luZm8nO1xuXG4gIC8qKiBDb250ZW50IG9mIHRpdGxlLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAndGl0bGUtY29udGVudCcsIHJlZmxlY3Q6IHRydWUsIGNvbnZlcnRlcjogb21pdEVtcHR5Q29udmVydGVyIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciB0aXRsZUNvbnRlbnQ6IHN0cmluZyA9ICcnO1xuXG4gIC8qKiBMZXZlbCBvZiB0aXRsZSwgaXQgd2lsbCBiZSByZW5kZXJlZCBhcyBoZWFkaW5nIHRhZyAoZS5nLiBoMykuIERlZmF1bHRzIHRvIGxldmVsIDMuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3RpdGxlLWxldmVsJyB9KSBwdWJsaWMgYWNjZXNzb3IgdGl0bGVMZXZlbDogU2JiVGl0bGVMZXZlbCA9ICczJztcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgbm90aWZpY2F0aW9uIGlzIHJlYWRvbmx5LlxuICAgKiBJbiByZWFkb25seSBtb2RlLCB0aGVyZSBpcyBubyBkaXNtaXNzIGJ1dHRvbiBvZmZlcmVkIHRvIHRoZSB1c2VyLlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUsIHR5cGU6IEJvb2xlYW4gfSlcbiAgcHVibGljIGFjY2Vzc29yIHJlYWRvbmx5OiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFNpemUgdmFyaWFudCwgZWl0aGVyIHMgb3IgbS5cbiAgICogQGRlZmF1bHQgJ20nIC8gJ3MnIChsZWFuKVxuICAgKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgYWNjZXNzb3Igc2l6ZTogJ20nIHwgJ3MnID0gaXNMZWFuKCkgPyAncycgOiAnbSc7XG5cbiAgLyoqIFRoZSBlbmFibGVkIGFuaW1hdGlvbnMuICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIGFjY2Vzc29yIGFuaW1hdGlvbjogJ29wZW4nIHwgJ2Nsb3NlJyB8ICdhbGwnIHwgJ25vbmUnID0gJ2FsbCc7XG5cbiAgLyoqIFRoZSBzdGF0ZSBvZiB0aGUgbm90aWZpY2F0aW9uLiAqL1xuICBwcml2YXRlIHNldCBfc3RhdGUoc3RhdGU6IFNiYk9wZW5lZENsb3NlZFN0YXRlKSB7XG4gICAgdGhpcy5zZXRBdHRyaWJ1dGUoJ2RhdGEtc3RhdGUnLCBzdGF0ZSk7XG4gIH1cbiAgcHJpdmF0ZSBnZXQgX3N0YXRlKCk6IFNiYk9wZW5lZENsb3NlZFN0YXRlIHtcbiAgICByZXR1cm4gdGhpcy5nZXRBdHRyaWJ1dGUoJ2RhdGEtc3RhdGUnKSBhcyBTYmJPcGVuZWRDbG9zZWRTdGF0ZTtcbiAgfVxuXG4gIHByaXZhdGUgX25vdGlmaWNhdGlvbkVsZW1lbnQhOiBIVE1MRWxlbWVudDtcbiAgcHJpdmF0ZSBfcmVzaXplT2JzZXJ2ZXJUaW1lb3V0OiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PiB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIF9sYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG4gIHByaXZhdGUgX25vdGlmaWNhdGlvblJlc2l6ZU9ic2VydmVyID0gbmV3IFJlc2l6ZUNvbnRyb2xsZXIodGhpcywge1xuICAgIHRhcmdldDogbnVsbCxcbiAgICBza2lwSW5pdGlhbDogdHJ1ZSxcbiAgICBjYWxsYmFjazogKCkgPT4gdGhpcy5fb25Ob3RpZmljYXRpb25SZXNpemUoKSxcbiAgfSk7XG5cbiAgLyoqIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLW5vdGlmaWNhdGlvbmAgc3RhcnRzIHRoZSBvcGVuaW5nIHRyYW5zaXRpb24uICovXG4gIHByaXZhdGUgX3dpbGxPcGVuOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiTm90aWZpY2F0aW9uRWxlbWVudC5ldmVudHMud2lsbE9wZW4sXG4gICAgeyBjYW5jZWxhYmxlOiB0cnVlIH0sXG4gICk7XG5cbiAgLyoqIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLW5vdGlmaWNhdGlvbmAgaXMgb3BlbmVkLiAqL1xuICBwcml2YXRlIF9kaWRPcGVuOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiTm90aWZpY2F0aW9uRWxlbWVudC5ldmVudHMuZGlkT3BlbixcbiAgICB7IGNhbmNlbGFibGU6IHRydWUgfSxcbiAgKTtcblxuICAvKiogRW1pdHMgd2hlbmV2ZXIgdGhlIGBzYmItbm90aWZpY2F0aW9uYCBiZWdpbnMgdGhlIGNsb3NpbmcgdHJhbnNpdGlvbi4gKi9cbiAgcHJpdmF0ZSBfd2lsbENsb3NlOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiTm90aWZpY2F0aW9uRWxlbWVudC5ldmVudHMud2lsbENsb3NlLFxuICAgIHsgY2FuY2VsYWJsZTogdHJ1ZSB9LFxuICApO1xuXG4gIC8qKiBFbWl0cyB3aGVuZXZlciB0aGUgYHNiYi1ub3RpZmljYXRpb25gIGlzIGNsb3NlZC4gKi9cbiAgcHJpdmF0ZSBfZGlkQ2xvc2U6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoXG4gICAgdGhpcyxcbiAgICBTYmJOb3RpZmljYXRpb25FbGVtZW50LmV2ZW50cy5kaWRDbG9zZSxcbiAgICB7IGNhbmNlbGFibGU6IHRydWUgfSxcbiAgKTtcblxuICBwcml2YXRlIF9vcGVuKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9zdGF0ZSA9PT0gJ2Nsb3NlZCcpIHtcbiAgICAgIHRoaXMuX3N0YXRlID0gJ29wZW5pbmcnO1xuICAgICAgdGhpcy5fd2lsbE9wZW4uZW1pdCgpO1xuXG4gICAgICAvLyBJZiB0aGUgYW5pbWF0aW9uIGR1cmF0aW9uIGlzIHplcm8sIHRoZSBhbmltYXRpb25lbmQgZXZlbnQgaXMgbm90IGFsd2F5cyBmaXJlZCByZWxpYWJseS5cbiAgICAgIC8vIEluIHRoaXMgY2FzZSB3ZSBkaXJlY3RseSBzZXQgdGhlIGBvcGVuZWRgIHN0YXRlLlxuICAgICAgaWYgKHRoaXMuX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCkpIHtcbiAgICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjbG9zZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3RhdGUgPT09ICdvcGVuZWQnICYmIHRoaXMuX3dpbGxDbG9zZS5lbWl0KCkpIHtcbiAgICAgIHRoaXMuX3N0YXRlID0gJ2Nsb3NpbmcnO1xuXG4gICAgICAvLyBJZiB0aGUgYW5pbWF0aW9uIGR1cmF0aW9uIGlzIHplcm8sIHRoZSBhbmltYXRpb25lbmQgZXZlbnQgaXMgbm90IGFsd2F5cyBmaXJlZCByZWxpYWJseS5cbiAgICAgIC8vIEluIHRoaXMgY2FzZSB3ZSBkaXJlY3RseSBzZXQgdGhlIGBjbG9zZWRgIHN0YXRlLlxuICAgICAgaWYgKHRoaXMuX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCkpIHtcbiAgICAgICAgdGhpcy5faGFuZGxlQ2xvc2luZygpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICB0aGlzLl9zdGF0ZSB8fD0gJ2Nsb3NlZCc7XG5cbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGFzeW5jIGZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBzdXBlci5maXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgdGhpcy5fbm90aWZpY2F0aW9uRWxlbWVudCA9IHRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcihcbiAgICAgICcuc2JiLW5vdGlmaWNhdGlvbl9fd3JhcHBlcicsXG4gICAgKSBhcyBIVE1MRWxlbWVudDtcbiAgICAvLyBXZSBuZWVkIHRvIHdhaXQgZm9yIHRoZSBjb21wb25lbnQncyBgdXBkYXRlQ29tcGxldGVgIGluIG9yZGVyIHRvIHNldCB0aGUgY29ycmVjdFxuICAgIC8vIGhlaWdodCB0byB0aGUgbm90aWZpY2F0aW9uIGVsZW1lbnQuXG4gICAgYXdhaXQgdGhpcy51cGRhdGVDb21wbGV0ZTtcbiAgICB0aGlzLl9zZXROb3RpZmljYXRpb25IZWlnaHQoKTtcbiAgICB0aGlzLl9vcGVuKCk7XG4gIH1cblxuICBwcml2YXRlIF9pc1plcm9BbmltYXRpb25EdXJhdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24odGhpcywgJy0tc2JiLW5vdGlmaWNhdGlvbi1hbmltYXRpb24tZHVyYXRpb24nKTtcbiAgfVxuXG4gIHByaXZhdGUgX3NldE5vdGlmaWNhdGlvbkhlaWdodCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX25vdGlmaWNhdGlvbkVsZW1lbnQ/LnNjcm9sbEhlaWdodCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBub3RpZmljYXRpb25IZWlnaHQgPSBgJHt0aGlzLl9ub3RpZmljYXRpb25FbGVtZW50LnNjcm9sbEhlaWdodH1weGA7XG4gICAgdGhpcy5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1zYmItbm90aWZpY2F0aW9uLWhlaWdodCcsIG5vdGlmaWNhdGlvbkhlaWdodCk7XG4gIH1cblxuICBwcml2YXRlIF9vbk5vdGlmaWNhdGlvblJlc2l6ZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3RhdGUgIT09ICdvcGVuZWQnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX3Jlc2l6ZU9ic2VydmVyVGltZW91dCkge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX3Jlc2l6ZU9ic2VydmVyVGltZW91dCk7XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZSB0aGUgYW5pbWF0aW9uIHdoZW4gcmVzaXppbmcgdGhlIG5vdGlmaWNhdGlvbiB0byBhdm9pZCBzdHJhbmdlIGhlaWdodCB0cmFuc2l0aW9uIGVmZmVjdHMuXG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtcmVzaXplLWRpc2FibGUtYW5pbWF0aW9uJywgdHJ1ZSk7XG4gICAgdGhpcy5fcmVzaXplT2JzZXJ2ZXJUaW1lb3V0ID0gc2V0VGltZW91dChcbiAgICAgICgpID0+IHRoaXMucmVtb3ZlQXR0cmlidXRlKCdkYXRhLXJlc2l6ZS1kaXNhYmxlLWFuaW1hdGlvbicpLFxuICAgICAgREVCT1VOQ0VfVElNRSxcbiAgICApO1xuXG4gICAgLy8gVG8gYXZvaWQgUmVzaXplT2JzZXJ2ZXIgbG9vcHMsIHdlIHNldCB0aGUgaGVpZ2h0IGEgdGljayBsYXRlci5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuX3NldE5vdGlmaWNhdGlvbkhlaWdodCgpKTtcbiAgfVxuXG4gIHByaXZhdGUgX29uTm90aWZpY2F0aW9uQW5pbWF0aW9uRW5kKGV2ZW50OiBBbmltYXRpb25FdmVudCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9zdGF0ZSA9PT0gJ29wZW5pbmcnICYmIGV2ZW50LmFuaW1hdGlvbk5hbWUgPT09ICdvcGVuJykge1xuICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9zdGF0ZSA9PT0gJ2Nsb3NpbmcnICYmIGV2ZW50LmFuaW1hdGlvbk5hbWUgPT09ICdjbG9zZS1oZWlnaHQnKSB7XG4gICAgICB0aGlzLl9oYW5kbGVDbG9zaW5nKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlT3BlbmluZygpOiB2b2lkIHtcbiAgICB0aGlzLl9zdGF0ZSA9ICdvcGVuZWQnO1xuICAgIHRoaXMuX25vdGlmaWNhdGlvblJlc2l6ZU9ic2VydmVyLm9ic2VydmUodGhpcy5fbm90aWZpY2F0aW9uRWxlbWVudCk7XG4gICAgdGhpcy5fZGlkT3Blbi5lbWl0KCk7XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVDbG9zaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuX3N0YXRlID0gJ2Nsb3NlZCc7XG4gICAgdGhpcy5fZGlkQ2xvc2UuZW1pdCgpO1xuICAgIHRoaXMuX25vdGlmaWNhdGlvblJlc2l6ZU9ic2VydmVyLnVub2JzZXJ2ZSh0aGlzLl9ub3RpZmljYXRpb25FbGVtZW50KTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMucmVtb3ZlKCkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLW5vdGlmaWNhdGlvbl9fd3JhcHBlclwiIEBhbmltYXRpb25lbmQ9JHt0aGlzLl9vbk5vdGlmaWNhdGlvbkFuaW1hdGlvbkVuZH0+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItbm90aWZpY2F0aW9uXCI+XG4gICAgICAgICAgPHNiYi1pY29uXG4gICAgICAgICAgICBjbGFzcz1cInNiYi1ub3RpZmljYXRpb25fX2ljb25cIlxuICAgICAgICAgICAgbmFtZT0ke25vdGlmaWNhdGlvblR5cGVzLmdldCh0aGlzLnR5cGUpIX1cbiAgICAgICAgICA+PC9zYmItaWNvbj5cblxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLW5vdGlmaWNhdGlvbl9fY29udGVudFwiPlxuICAgICAgICAgICAgPHNiYi10aXRsZVxuICAgICAgICAgICAgICBjbGFzcz1cInNiYi1ub3RpZmljYXRpb25fX3RpdGxlXCJcbiAgICAgICAgICAgICAgbGV2ZWw9JHt0aGlzLnRpdGxlTGV2ZWx9XG4gICAgICAgICAgICAgIHZpc3VhbC1sZXZlbD0ke3RoaXMuc2l6ZSA9PT0gJ20nID8gJzUnIDogJzYnfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8c2xvdCBuYW1lPVwidGl0bGVcIj4ke3RoaXMudGl0bGVDb250ZW50fTwvc2xvdD5cbiAgICAgICAgICAgIDwvc2JiLXRpdGxlPlxuICAgICAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgICAgIDwvc3Bhbj5cblxuICAgICAgICAgICR7IXRoaXMucmVhZG9ubHlcbiAgICAgICAgICAgID8gaHRtbGA8c3BhbiBjbGFzcz1cInNiYi1ub3RpZmljYXRpb25fX2Nsb3NlLXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICA8c2JiLWRpdmlkZXIgY2xhc3M9XCJzYmItbm90aWZpY2F0aW9uX19kaXZpZGVyXCIgb3JpZW50YXRpb249XCJ2ZXJ0aWNhbFwiPjwvc2JiLWRpdmlkZXI+XG4gICAgICAgICAgICAgICAgPHNiYi1zZWNvbmRhcnktYnV0dG9uXG4gICAgICAgICAgICAgICAgICBzaXplPSR7dGhpcy5zaXplfVxuICAgICAgICAgICAgICAgICAgaWNvbi1uYW1lPVwiY3Jvc3Mtc21hbGxcIlxuICAgICAgICAgICAgICAgICAgQGNsaWNrPSR7KCkgPT4gdGhpcy5jbG9zZSgpfVxuICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD0ke2kxOG5DbG9zZU5vdGlmaWNhdGlvblt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX1cbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2JiLW5vdGlmaWNhdGlvbl9fY2xvc2VcIlxuICAgICAgICAgICAgICAgID48L3NiYi1zZWNvbmRhcnktYnV0dG9uPlxuICAgICAgICAgICAgICA8L3NwYW4+YFxuICAgICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1ub3RpZmljYXRpb24nOiBTYmJOb3RpZmljYXRpb25FbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOlsiU2JiTm90aWZpY2F0aW9uRWxlbWVudCIsIl9hIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUEwQkEsTUFBTSx3Q0FBd0IsSUFBSTtBQUFBLEVBQ2hDLENBQUMsUUFBUSwwQkFBMEI7QUFBQSxFQUNuQyxDQUFDLFdBQVcsbUJBQW1CO0FBQUEsRUFDL0IsQ0FBQyxRQUFRLGdDQUFnQztBQUFBLEVBQ3pDLENBQUMsU0FBUyxvQkFBb0I7QUFDL0IsQ0FBQTtBQUVELE1BQU0sZ0JBQWdCO0lBaUJoQiwwQkFBc0IsTUFBQTs7QUFGM0IsTUFBQSxtQkFBQSxDQUFBLGNBQWMsa0JBQWtCLEdBQ2hDLFdBQVc7Ozs7b0JBQ3lCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQVJBLE1BQUFBLDJCQUFBLG1CQUFRLFlBQVU7QUFBQTs7QUFXaEI7QUFLN0I7QUFHd0M7QUFReEM7QUFNNkI7QUFHQTtBQXpCZ0IseUJBQUEsd0JBQUEsa0JBQUEsTUFBQSxvQkFBOEMsTUFBTTtBQUtqRix5QkFBQSxpQ0FBQSxrQkFBQSxNQUFBLHVCQUFBLEdBQUEsa0JBQUEsTUFBQSw0QkFBdUIsRUFBRTtBQUdlLHlCQUFBLCtCQUFBLGtCQUFBLE1BQUEsK0JBQUEsR0FBQSxrQkFBQSxNQUFBLDBCQUE0QixHQUFHO0FBUXZFLHlCQUFBLDZCQUFBLGtCQUFBLE1BQUEsNkJBQUEsR0FBQSxrQkFBQSxNQUFBLHdCQUFvQixLQUFLO0FBTXNCLHlCQUFBLHlCQUFBLGtCQUFBLE1BQUEsMkJBQUEsR0FBQSxrQkFBQSxNQUFBLG9CQUFBLE9BQUEsSUFBVyxNQUFNLEdBQUc7QUFHdEMseUJBQUEsOEJBQUEsa0JBQUEsTUFBQSx1QkFBQSxHQUFBLGtCQUFBLE1BQUEseUJBQStDLEtBQUs7QUFVekYsV0FBQSx1QkFBbUMsa0JBQUEsTUFBQSw0QkFBQTtBQUNuQyxXQUFzQix5QkFBeUM7QUFDL0QsV0FBQSxZQUFZLElBQUksc0JBQXNCLElBQUk7QUFDMUMsV0FBQSw4QkFBOEIsSUFBSSxpQkFBaUIsTUFBTTtBQUFBLFFBQy9ELFFBQVE7QUFBQSxRQUNSLGFBQWE7QUFBQSxRQUNiLFVBQVUsTUFBTSxLQUFLLHNCQUF1QjtBQUFBLE1BQUEsQ0FDN0M7QUFHTyxXQUFBLFlBQWdDLElBQUksYUFDMUMsTUFDQUEsd0JBQXVCLE9BQU8sVUFDOUIsRUFBRSxZQUFZLE1BQU07QUFJZCxXQUFBLFdBQStCLElBQUksYUFDekMsTUFDQUEsd0JBQXVCLE9BQU8sU0FDOUIsRUFBRSxZQUFZLE1BQU07QUFJZCxXQUFBLGFBQWlDLElBQUksYUFDM0MsTUFDQUEsd0JBQXVCLE9BQU8sV0FDOUIsRUFBRSxZQUFZLE1BQU07QUFJZCxXQUFBLFlBQWdDLElBQUksYUFDMUMsTUFDQUEsd0JBQXVCLE9BQU8sVUFDOUIsRUFBRSxZQUFZLE1BQU07QUFBQSxJQUFBO0FBQUE7QUFBQSxJQXJFTyxJQUFnQixPQUFxRDtBQUFBLGFBQUEsbUJBQUE7QUFBQSxJQUFBO0FBQUEsSUFBckUsSUFBZ0IsS0FBcUQsT0FBQTtBQUFBLHlCQUFBLHdCQUFBO0FBQUEsSUFBQTtBQUFBO0FBQUEsSUFLbEcsSUFBZ0IsZUFBMEI7QUFBQSxhQUFBLG1CQUFBO0FBQUEsSUFBQTtBQUFBLElBQTFDLElBQWdCLGFBQTBCLE9BQUE7QUFBQSx5QkFBQSxnQ0FBQTtBQUFBLElBQUE7QUFBQTtBQUFBLElBR0YsSUFBZ0IsYUFBZ0M7QUFBQSxhQUFBLG1CQUFBO0FBQUEsSUFBQTtBQUFBLElBQWhELElBQWdCLFdBQWdDLE9BQUE7QUFBQSx5QkFBQSw4QkFBQTtBQUFBLElBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLElBUXhGLElBQWdCLFdBQTBCO0FBQUEsYUFBQSxtQkFBQTtBQUFBLElBQUE7QUFBQSxJQUExQyxJQUFnQixTQUEwQixPQUFBO0FBQUEseUJBQUEsNEJBQUE7QUFBQSxJQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxJQU1iLElBQWdCLE9BQXVDO0FBQUEsYUFBQSxtQkFBQTtBQUFBLElBQUE7QUFBQSxJQUF2RCxJQUFnQixLQUF1QyxPQUFBO0FBQUEseUJBQUEsd0JBQUE7QUFBQSxJQUFBO0FBQUE7QUFBQSxJQUd2RCxJQUFnQixZQUFxRDtBQUFBLGFBQUEsbUJBQUE7QUFBQSxJQUFBO0FBQUEsSUFBckUsSUFBZ0IsVUFBcUQsT0FBQTtBQUFBLHlCQUFBLDZCQUFBO0FBQUEsSUFBQTtBQUFBO0FBQUEsSUFHbEcsSUFBWSxPQUFPLE9BQTJCO0FBQ3ZDLFdBQUEsYUFBYSxjQUFjLEtBQUs7QUFBQSxJQUFBO0FBQUEsSUFFdkMsSUFBWSxTQUFNO0FBQ1QsYUFBQSxLQUFLLGFBQWEsWUFBWTtBQUFBLElBQUE7QUFBQSxJQXdDL0IsUUFBSztBQUNQLFVBQUEsS0FBSyxXQUFXLFVBQVU7QUFDNUIsYUFBSyxTQUFTO0FBQ2QsYUFBSyxVQUFVO0FBSVgsWUFBQSxLQUFLLDRCQUE0QjtBQUNuQyxlQUFLLGVBQWM7QUFBQSxRQUFBO0FBQUEsTUFDckI7QUFBQSxJQUNGO0FBQUEsSUFHSyxRQUFLO0FBQ1YsVUFBSSxLQUFLLFdBQVcsWUFBWSxLQUFLLFdBQVcsUUFBUTtBQUN0RCxhQUFLLFNBQVM7QUFJVixZQUFBLEtBQUssNEJBQTRCO0FBQ25DLGVBQUssZUFBYztBQUFBLFFBQUE7QUFBQSxNQUNyQjtBQUFBLElBQ0Y7QUFBQSxJQUdjLG9CQUFpQjtBQUMvQixXQUFLLFdBQUwsS0FBSyxTQUFXO0FBRWhCLFlBQU0sa0JBQWlCO0FBQUEsSUFBQTtBQUFBLElBR04sTUFBTSxhQUFhLG1CQUF1Qzs7QUFDM0UsWUFBTSxhQUFhLGlCQUFpQjtBQUVwQyxXQUFLLHdCQUF1QkMsTUFBQSxLQUFLLGVBQUwsZ0JBQUFBLElBQWlCLGNBQzNDO0FBSUYsWUFBTSxLQUFLO0FBQ1gsV0FBSyx1QkFBc0I7QUFDM0IsV0FBSyxNQUFLO0FBQUEsSUFBQTtBQUFBLElBR0osMkJBQXdCO0FBQ3ZCLGFBQUEsd0JBQXdCLE1BQU0sdUNBQXVDO0FBQUEsSUFBQTtBQUFBLElBR3RFLHlCQUFzQjs7QUFDeEIsVUFBQSxHQUFDQSxNQUFBLEtBQUsseUJBQUwsZ0JBQUFBLElBQTJCLGVBQWM7QUFDNUM7QUFBQSxNQUFBO0FBRUYsWUFBTSxxQkFBcUIsR0FBRyxLQUFLLHFCQUFxQixZQUFZO0FBQy9ELFdBQUEsTUFBTSxZQUFZLDZCQUE2QixrQkFBa0I7QUFBQSxJQUFBO0FBQUEsSUFHaEUsd0JBQXFCO0FBQ3ZCLFVBQUEsS0FBSyxXQUFXLFVBQVU7QUFDNUI7QUFBQSxNQUFBO0FBR0YsVUFBSSxLQUFLLHdCQUF3QjtBQUMvQixxQkFBYSxLQUFLLHNCQUFzQjtBQUFBLE1BQUE7QUFJckMsV0FBQSxnQkFBZ0IsaUNBQWlDLElBQUk7QUFDMUQsV0FBSyx5QkFBeUIsV0FDNUIsTUFBTSxLQUFLLGdCQUFnQiwrQkFBK0IsR0FDMUQsYUFBYTtBQUlKLGlCQUFBLE1BQU0sS0FBSyx3QkFBd0I7QUFBQSxJQUFBO0FBQUEsSUFHeEMsNEJBQTRCLE9BQXFCO0FBQ3ZELFVBQUksS0FBSyxXQUFXLGFBQWEsTUFBTSxrQkFBa0IsUUFBUTtBQUMvRCxhQUFLLGVBQWM7QUFBQSxNQUFBO0FBR3JCLFVBQUksS0FBSyxXQUFXLGFBQWEsTUFBTSxrQkFBa0IsZ0JBQWdCO0FBQ3ZFLGFBQUssZUFBYztBQUFBLE1BQUE7QUFBQSxJQUNyQjtBQUFBLElBR00saUJBQWM7QUFDcEIsV0FBSyxTQUFTO0FBQ1QsV0FBQSw0QkFBNEIsUUFBUSxLQUFLLG9CQUFvQjtBQUNsRSxXQUFLLFNBQVM7O0lBR1IsaUJBQWM7QUFDcEIsV0FBSyxTQUFTO0FBQ2QsV0FBSyxVQUFVO0FBQ1YsV0FBQSw0QkFBNEIsVUFBVSxLQUFLLG9CQUFvQjtBQUN6RCxpQkFBQSxNQUFNLEtBQUssUUFBUTtBQUFBLElBQUE7QUFBQSxJQUdiLFNBQU07QUFDaEIsYUFBQTtBQUFBLDZEQUNrRCxLQUFLLDJCQUEyQjtBQUFBO0FBQUE7QUFBQTtBQUFBLG1CQUkxRSxrQkFBa0IsSUFBSSxLQUFLLElBQUksQ0FBRTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxzQkFNOUIsS0FBSyxVQUFVO0FBQUEsNkJBQ1IsS0FBSyxTQUFTLE1BQU0sTUFBTSxHQUFHO0FBQUE7QUFBQSxtQ0FFdkIsS0FBSyxZQUFZO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxZQUt4QyxDQUFDLEtBQUssV0FDSjtBQUFBO0FBQUE7QUFBQSx5QkFHVyxLQUFLLElBQUk7QUFBQTtBQUFBLDJCQUVQLE1BQU0sS0FBSyxNQUFPLENBQUE7QUFBQSwrQkFDZCxzQkFBc0IsS0FBSyxVQUFVLE9BQU8sQ0FBQztBQUFBO0FBQUE7QUFBQSx5QkFJOUQsT0FBTztBQUFBO0FBQUE7QUFBQTtBQUFBLElBQUE7QUFBQSxLQTFNVSx3Q0FLN0IsZ0RBR3dDLDhDQVF4Qyw0Q0FNNkIsd0NBR0E7O0FBekI1Qix1QkFBQSxDQUFBLFNBQVMsRUFBRSxTQUFTLEtBQU0sQ0FBQSxDQUFDO0FBRzNCLCtCQUFBLENBQUEsYUFDQSxTQUFTLEVBQUUsV0FBVyxpQkFBaUIsU0FBUyxNQUFNLFdBQVcsbUJBQW9CLENBQUEsQ0FBQztBQUl0Riw2QkFBQSxDQUFBLFNBQVMsRUFBRSxXQUFXLGNBQWUsQ0FBQSxDQUFDO0FBTXRDLDJCQUFBLENBQUEsVUFBVyxHQUNYLFNBQVMsRUFBRSxTQUFTLE1BQU0sTUFBTSxTQUFTLENBQUM7QUFPMUMsdUJBQUEsQ0FBQSxTQUFTLEVBQUUsU0FBUyxLQUFNLENBQUEsQ0FBQztBQUczQiw0QkFBQSxDQUFBLFNBQVMsRUFBRSxTQUFTLEtBQU0sQ0FBQSxDQUFDO0FBekJpQixpQkFBQSxJQUFBLE1BQUEsa0JBQUEsRUFBQSxNQUFBLFlBQUEsTUFBQSxRQUFBLFFBQUEsT0FBQSxTQUFBLE9BQUEsUUFBQSxFQUFBLEtBQUEsQ0FBQSxRQUFBLFVBQUEsS0FBQSxLQUFBLENBQUEsUUFBQSxJQUFBLE1BQUEsS0FBQSxDQUFBLEtBQUEsVUFBQTtBQUFBLFVBQUEsT0FBcUQ7QUFBQSxTQUFBLFVBQUEsYUFBQSxvQkFBQSx1QkFBQTtBQUtsRixpQkFBQSxJQUFBLE1BQUEsMEJBQUEsRUFBQSxNQUFBLFlBQUEsTUFBQSxnQkFBQSxRQUFBLE9BQUEsU0FBQSxPQUFBLFFBQUEsRUFBQSxLQUFBLENBQUEsUUFBQSxrQkFBQSxLQUFBLEtBQUEsQ0FBQSxRQUFBLElBQUEsY0FBQSxLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsVUFBQSxlQUEwQjtBQUFBLFNBQUEsVUFBQSxhQUFBLDRCQUFBLCtCQUFBO0FBR2MsaUJBQUEsSUFBQSxNQUFBLHdCQUFBLEVBQUEsTUFBQSxZQUFBLE1BQUEsY0FBQSxRQUFBLE9BQUEsU0FBQSxPQUFBLFFBQUEsRUFBQSxLQUFBLENBQUEsUUFBQSxnQkFBQSxLQUFBLEtBQUEsQ0FBQSxRQUFBLElBQUEsWUFBQSxLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsVUFBQSxhQUFnQztBQUFBLFNBQUEsVUFBQSxhQUFBLDBCQUFBLDZCQUFBO0FBUXhFLGlCQUFBLElBQUEsTUFBQSxzQkFBQSxFQUFBLE1BQUEsWUFBQSxNQUFBLFlBQUEsUUFBQSxPQUFBLFNBQUEsT0FBQSxRQUFBLEVBQUEsS0FBQSxDQUFBLFFBQUEsY0FBQSxLQUFBLEtBQUEsQ0FBQSxRQUFBLElBQUEsVUFBQSxLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsVUFBQSxXQUEwQjtBQUFBLFNBQUEsVUFBQSxhQUFBLHdCQUFBLDJCQUFBO0FBTUcsaUJBQUEsSUFBQSxNQUFBLGtCQUFBLEVBQUEsTUFBQSxZQUFBLE1BQUEsUUFBQSxRQUFBLE9BQUEsU0FBQSxPQUFBLFFBQUEsRUFBQSxLQUFBLENBQUEsUUFBQSxVQUFBLEtBQUEsS0FBQSxDQUFBLFFBQUEsSUFBQSxNQUFBLEtBQUEsQ0FBQSxLQUFBLFVBQUE7QUFBQSxVQUFBLE9BQXVDO0FBQUEsU0FBQSxVQUFBLGFBQUEsb0JBQUEsdUJBQUE7QUFHdkMsaUJBQUEsSUFBQSxNQUFBLHVCQUFBLEVBQUEsTUFBQSxZQUFBLE1BQUEsYUFBQSxRQUFBLE9BQUEsU0FBQSxPQUFBLFFBQUEsRUFBQSxLQUFBLENBQUEsUUFBQSxlQUFBLEtBQUEsS0FBQSxDQUFBLFFBQUEsSUFBQSxXQUFBLEtBQUEsQ0FBQSxLQUFBLFVBQUE7QUFBQSxVQUFBLFlBQXFEO0FBQUEsU0FBQSxVQUFBLGFBQUEseUJBQUEsNEJBQUE7QUFwQ3BHLGlCQTBOQyxNQUFBLG1CQUFBLEVBQUEsT0FBQSxXQUFBLEdBQUEsa0JBQUEsRUFBQSxNQUFBLFNBQUEsTUFBQSxXQUFBLE1BQUEsVUFBQSxVQUFBLEdBQUEsTUFBQSx1QkFBQTs7O1FBeE53QixHQUFNLFNBQW1CLE9BQ3pCLEdBQUEsU0FBUztBQUFBLElBQzlCLFVBQVU7QUFBQSxJQUNWLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLFVBQVU7QUFBQSxFQUNGLEdBUk4sa0JBQXNCLFlBQUEsdUJBQUEsR0FBQzs7OyJ9
525
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlc2l6ZUNvbnRyb2xsZXIgfSBmcm9tICdAbGl0LWxhYnMvb2JzZXJ2ZXJzL3Jlc2l6ZS1jb250cm9sbGVyLmpzJztcbmltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIExpdEVsZW1lbnQsXG4gIG5vdGhpbmcsXG4gIHR5cGUgUHJvcGVydHlWYWx1ZXMsXG4gIHR5cGUgVGVtcGxhdGVSZXN1bHQsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgU2JiTGFuZ3VhZ2VDb250cm9sbGVyIH0gZnJvbSAnLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBmb3JjZVR5cGUsIG9taXRFbXB0eUNvbnZlcnRlciwgc2xvdFN0YXRlIH0gZnJvbSAnLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IGlzTGVhbiwgaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24gfSBmcm9tICcuLi9jb3JlL2RvbS5qcyc7XG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICcuLi9jb3JlL2V2ZW50aW5nLmpzJztcbmltcG9ydCB7IGkxOG5DbG9zZU5vdGlmaWNhdGlvbiB9IGZyb20gJy4uL2NvcmUvaTE4bi5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYk9wZW5lZENsb3NlZFN0YXRlIH0gZnJvbSAnLi4vY29yZS9pbnRlcmZhY2VzLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiVGl0bGVMZXZlbCB9IGZyb20gJy4uL3RpdGxlLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vbm90aWZpY2F0aW9uLnNjc3M/bGl0JmlubGluZSc7XG5cbmltcG9ydCAnLi4vYnV0dG9uL3NlY29uZGFyeS1idXR0b24uanMnO1xuaW1wb3J0ICcuLi9kaXZpZGVyLmpzJztcbmltcG9ydCAnLi4vaWNvbi5qcyc7XG5pbXBvcnQgJy4uL3RpdGxlLmpzJztcblxuY29uc3Qgbm90aWZpY2F0aW9uVHlwZXMgPSBuZXcgTWFwKFtcbiAgWydpbmZvJywgJ2NpcmNsZS1pbmZvcm1hdGlvbi1zbWFsbCddLFxuICBbJ3N1Y2Nlc3MnLCAnY2lyY2xlLXRpY2stc21hbGwnXSxcbiAgWyd3YXJuJywgJ2NpcmNsZS1leGNsYW1hdGlvbi1wb2ludC1zbWFsbCddLFxuICBbJ2Vycm9yJywgJ2NpcmNsZS1jcm9zcy1zbWFsbCddLFxuXSk7XG5cbmNvbnN0IERFQk9VTkNFX1RJTUUgPSAxNTA7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgbWVzc2FnZXMgd2hpY2ggcmVxdWlyZSBhIHVzZXIncyBhdHRlbnRpb24gd2l0aG91dCBpbnRlcnJ1cHRpbmcgaXRzIHRhc2tzLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIG5vdGlmaWNhdGlvbiBtZXNzYWdlLlxuICogQHNsb3QgdGl0bGUgLSBVc2UgdGhpcyB0byBwcm92aWRlIGEgbm90aWZpY2F0aW9uIHRpdGxlIChvcHRpb25hbCkuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSB3aWxsT3BlbiAtIEVtaXRzIHdoZW4gdGhlIG9wZW5pbmcgYW5pbWF0aW9uIHN0YXJ0cy5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8dm9pZD59IGRpZE9wZW4gLSBFbWl0cyB3aGVuIHRoZSBvcGVuaW5nIGFuaW1hdGlvbiBlbmRzLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gd2lsbENsb3NlIC0gRW1pdHMgd2hlbiB0aGUgY2xvc2luZyBhbmltYXRpb24gc3RhcnRzLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gZGlkQ2xvc2UgLSBFbWl0cyB3aGVuIHRoZSBjbG9zaW5nIGFuaW1hdGlvbiBlbmRzLlxuICogQGNzc3Byb3AgWy0tc2JiLW5vdGlmaWNhdGlvbi1tYXJnaW49MF0gLSBDYW4gYmUgdXNlZCB0byBtb2RpZnkgdGhlIG1hcmdpbiBpbiBvcmRlciB0byBnZXQgYSBzbW9vdGhlciBhbmltYXRpb24uXG4gKiBTZWUgc3R5bGUgc2VjdGlvbiBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cbiAqL1xuZXhwb3J0XG5AY3VzdG9tRWxlbWVudCgnc2JiLW5vdGlmaWNhdGlvbicpXG5Ac2xvdFN0YXRlKClcbmNsYXNzIFNiYk5vdGlmaWNhdGlvbkVsZW1lbnQgZXh0ZW5kcyBMaXRFbGVtZW50IHtcbiAgLy8gVE9ETzogZml4IGluaGVyaXRpbmcgZnJvbSBTYmJPcGVuQ2xvc2VCYXNlRWxlbWVudCByZXF1aXJlczogaHR0cHM6Ly9naXRodWIuY29tL29wZW4td2MvY3VzdG9tLWVsZW1lbnRzLW1hbmlmZXN0L2lzc3Vlcy8yNTNcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZXZlbnRzID0ge1xuICAgIHdpbGxPcGVuOiAnd2lsbE9wZW4nLFxuICAgIGRpZE9wZW46ICdkaWRPcGVuJyxcbiAgICB3aWxsQ2xvc2U6ICd3aWxsQ2xvc2UnLFxuICAgIGRpZENsb3NlOiAnZGlkQ2xvc2UnLFxuICB9IGFzIGNvbnN0O1xuXG4gIC8qKiBUaGUgdHlwZSBvZiB0aGUgbm90aWZpY2F0aW9uLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBhY2Nlc3NvciB0eXBlOiAnaW5mbycgfCAnc3VjY2VzcycgfCAnd2FybicgfCAnZXJyb3InID0gJ2luZm8nO1xuXG4gIC8qKiBDb250ZW50IG9mIHRpdGxlLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAndGl0bGUtY29udGVudCcsIHJlZmxlY3Q6IHRydWUsIGNvbnZlcnRlcjogb21pdEVtcHR5Q29udmVydGVyIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciB0aXRsZUNvbnRlbnQ6IHN0cmluZyA9ICcnO1xuXG4gIC8qKiBMZXZlbCBvZiB0aXRsZSwgaXQgd2lsbCBiZSByZW5kZXJlZCBhcyBoZWFkaW5nIHRhZyAoZS5nLiBoMykuIERlZmF1bHRzIHRvIGxldmVsIDMuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3RpdGxlLWxldmVsJyB9KSBwdWJsaWMgYWNjZXNzb3IgdGl0bGVMZXZlbDogU2JiVGl0bGVMZXZlbCA9ICczJztcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgbm90aWZpY2F0aW9uIGlzIHJlYWRvbmx5LlxuICAgKiBJbiByZWFkb25seSBtb2RlLCB0aGVyZSBpcyBubyBkaXNtaXNzIGJ1dHRvbiBvZmZlcmVkIHRvIHRoZSB1c2VyLlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUsIHR5cGU6IEJvb2xlYW4gfSlcbiAgcHVibGljIGFjY2Vzc29yIHJlYWRvbmx5OiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFNpemUgdmFyaWFudCwgZWl0aGVyIHMgb3IgbS5cbiAgICogQGRlZmF1bHQgJ20nIC8gJ3MnIChsZWFuKVxuICAgKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgYWNjZXNzb3Igc2l6ZTogJ20nIHwgJ3MnID0gaXNMZWFuKCkgPyAncycgOiAnbSc7XG5cbiAgLyoqIFRoZSBlbmFibGVkIGFuaW1hdGlvbnMuICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIGFjY2Vzc29yIGFuaW1hdGlvbjogJ29wZW4nIHwgJ2Nsb3NlJyB8ICdhbGwnIHwgJ25vbmUnID0gJ2FsbCc7XG5cbiAgLyoqIFRoZSBzdGF0ZSBvZiB0aGUgbm90aWZpY2F0aW9uLiAqL1xuICBwcml2YXRlIHNldCBfc3RhdGUoc3RhdGU6IFNiYk9wZW5lZENsb3NlZFN0YXRlKSB7XG4gICAgdGhpcy5zZXRBdHRyaWJ1dGUoJ2RhdGEtc3RhdGUnLCBzdGF0ZSk7XG4gIH1cbiAgcHJpdmF0ZSBnZXQgX3N0YXRlKCk6IFNiYk9wZW5lZENsb3NlZFN0YXRlIHtcbiAgICByZXR1cm4gdGhpcy5nZXRBdHRyaWJ1dGUoJ2RhdGEtc3RhdGUnKSBhcyBTYmJPcGVuZWRDbG9zZWRTdGF0ZTtcbiAgfVxuXG4gIHByaXZhdGUgX25vdGlmaWNhdGlvbkVsZW1lbnQhOiBIVE1MRWxlbWVudDtcbiAgcHJpdmF0ZSBfcmVzaXplT2JzZXJ2ZXJUaW1lb3V0OiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PiB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIF9sYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG4gIHByaXZhdGUgX25vdGlmaWNhdGlvblJlc2l6ZU9ic2VydmVyID0gbmV3IFJlc2l6ZUNvbnRyb2xsZXIodGhpcywge1xuICAgIHRhcmdldDogbnVsbCxcbiAgICBza2lwSW5pdGlhbDogdHJ1ZSxcbiAgICBjYWxsYmFjazogKCkgPT4gdGhpcy5fb25Ob3RpZmljYXRpb25SZXNpemUoKSxcbiAgfSk7XG5cbiAgLyoqIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLW5vdGlmaWNhdGlvbmAgc3RhcnRzIHRoZSBvcGVuaW5nIHRyYW5zaXRpb24uICovXG4gIHByaXZhdGUgX3dpbGxPcGVuOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiTm90aWZpY2F0aW9uRWxlbWVudC5ldmVudHMud2lsbE9wZW4sXG4gICAgeyBjYW5jZWxhYmxlOiB0cnVlIH0sXG4gICk7XG5cbiAgLyoqIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLW5vdGlmaWNhdGlvbmAgaXMgb3BlbmVkLiAqL1xuICBwcml2YXRlIF9kaWRPcGVuOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiTm90aWZpY2F0aW9uRWxlbWVudC5ldmVudHMuZGlkT3BlbixcbiAgICB7IGNhbmNlbGFibGU6IHRydWUgfSxcbiAgKTtcblxuICAvKiogRW1pdHMgd2hlbmV2ZXIgdGhlIGBzYmItbm90aWZpY2F0aW9uYCBiZWdpbnMgdGhlIGNsb3NpbmcgdHJhbnNpdGlvbi4gKi9cbiAgcHJpdmF0ZSBfd2lsbENsb3NlOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiTm90aWZpY2F0aW9uRWxlbWVudC5ldmVudHMud2lsbENsb3NlLFxuICAgIHsgY2FuY2VsYWJsZTogdHJ1ZSB9LFxuICApO1xuXG4gIC8qKiBFbWl0cyB3aGVuZXZlciB0aGUgYHNiYi1ub3RpZmljYXRpb25gIGlzIGNsb3NlZC4gKi9cbiAgcHJpdmF0ZSBfZGlkQ2xvc2U6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoXG4gICAgdGhpcyxcbiAgICBTYmJOb3RpZmljYXRpb25FbGVtZW50LmV2ZW50cy5kaWRDbG9zZSxcbiAgICB7IGNhbmNlbGFibGU6IHRydWUgfSxcbiAgKTtcblxuICBwcml2YXRlIF9vcGVuKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9zdGF0ZSA9PT0gJ2Nsb3NlZCcpIHtcbiAgICAgIHRoaXMuX3N0YXRlID0gJ29wZW5pbmcnO1xuICAgICAgdGhpcy5fd2lsbE9wZW4uZW1pdCgpO1xuXG4gICAgICAvLyBJZiB0aGUgYW5pbWF0aW9uIGR1cmF0aW9uIGlzIHplcm8sIHRoZSBhbmltYXRpb25lbmQgZXZlbnQgaXMgbm90IGFsd2F5cyBmaXJlZCByZWxpYWJseS5cbiAgICAgIC8vIEluIHRoaXMgY2FzZSB3ZSBkaXJlY3RseSBzZXQgdGhlIGBvcGVuZWRgIHN0YXRlLlxuICAgICAgaWYgKHRoaXMuX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCkpIHtcbiAgICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjbG9zZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3RhdGUgPT09ICdvcGVuZWQnICYmIHRoaXMuX3dpbGxDbG9zZS5lbWl0KCkpIHtcbiAgICAgIHRoaXMuX3N0YXRlID0gJ2Nsb3NpbmcnO1xuXG4gICAgICAvLyBJZiB0aGUgYW5pbWF0aW9uIGR1cmF0aW9uIGlzIHplcm8sIHRoZSBhbmltYXRpb25lbmQgZXZlbnQgaXMgbm90IGFsd2F5cyBmaXJlZCByZWxpYWJseS5cbiAgICAgIC8vIEluIHRoaXMgY2FzZSB3ZSBkaXJlY3RseSBzZXQgdGhlIGBjbG9zZWRgIHN0YXRlLlxuICAgICAgaWYgKHRoaXMuX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCkpIHtcbiAgICAgICAgdGhpcy5faGFuZGxlQ2xvc2luZygpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICB0aGlzLl9zdGF0ZSB8fD0gJ2Nsb3NlZCc7XG5cbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGFzeW5jIGZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBzdXBlci5maXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgdGhpcy5fbm90aWZpY2F0aW9uRWxlbWVudCA9IHRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcihcbiAgICAgICcuc2JiLW5vdGlmaWNhdGlvbl9fd3JhcHBlcicsXG4gICAgKSBhcyBIVE1MRWxlbWVudDtcbiAgICAvLyBXZSBuZWVkIHRvIHdhaXQgZm9yIHRoZSBjb21wb25lbnQncyBgdXBkYXRlQ29tcGxldGVgIGluIG9yZGVyIHRvIHNldCB0aGUgY29ycmVjdFxuICAgIC8vIGhlaWdodCB0byB0aGUgbm90aWZpY2F0aW9uIGVsZW1lbnQuXG4gICAgYXdhaXQgdGhpcy51cGRhdGVDb21wbGV0ZTtcbiAgICB0aGlzLl9zZXROb3RpZmljYXRpb25IZWlnaHQoKTtcbiAgICB0aGlzLl9vcGVuKCk7XG4gIH1cblxuICBwcml2YXRlIF9pc1plcm9BbmltYXRpb25EdXJhdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24odGhpcywgJy0tc2JiLW5vdGlmaWNhdGlvbi1hbmltYXRpb24tZHVyYXRpb24nKTtcbiAgfVxuXG4gIHByaXZhdGUgX3NldE5vdGlmaWNhdGlvbkhlaWdodCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX25vdGlmaWNhdGlvbkVsZW1lbnQ/LnNjcm9sbEhlaWdodCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBub3RpZmljYXRpb25IZWlnaHQgPSBgJHt0aGlzLl9ub3RpZmljYXRpb25FbGVtZW50LnNjcm9sbEhlaWdodH1weGA7XG4gICAgdGhpcy5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1zYmItbm90aWZpY2F0aW9uLWhlaWdodCcsIG5vdGlmaWNhdGlvbkhlaWdodCk7XG4gIH1cblxuICBwcml2YXRlIF9vbk5vdGlmaWNhdGlvblJlc2l6ZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3RhdGUgIT09ICdvcGVuZWQnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX3Jlc2l6ZU9ic2VydmVyVGltZW91dCkge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX3Jlc2l6ZU9ic2VydmVyVGltZW91dCk7XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZSB0aGUgYW5pbWF0aW9uIHdoZW4gcmVzaXppbmcgdGhlIG5vdGlmaWNhdGlvbiB0byBhdm9pZCBzdHJhbmdlIGhlaWdodCB0cmFuc2l0aW9uIGVmZmVjdHMuXG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtcmVzaXplLWRpc2FibGUtYW5pbWF0aW9uJywgdHJ1ZSk7XG4gICAgdGhpcy5fcmVzaXplT2JzZXJ2ZXJUaW1lb3V0ID0gc2V0VGltZW91dChcbiAgICAgICgpID0+IHRoaXMucmVtb3ZlQXR0cmlidXRlKCdkYXRhLXJlc2l6ZS1kaXNhYmxlLWFuaW1hdGlvbicpLFxuICAgICAgREVCT1VOQ0VfVElNRSxcbiAgICApO1xuXG4gICAgLy8gVG8gYXZvaWQgUmVzaXplT2JzZXJ2ZXIgbG9vcHMsIHdlIHNldCB0aGUgaGVpZ2h0IGEgdGljayBsYXRlci5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuX3NldE5vdGlmaWNhdGlvbkhlaWdodCgpKTtcbiAgfVxuXG4gIHByaXZhdGUgX29uTm90aWZpY2F0aW9uQW5pbWF0aW9uRW5kKGV2ZW50OiBBbmltYXRpb25FdmVudCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9zdGF0ZSA9PT0gJ29wZW5pbmcnICYmIGV2ZW50LmFuaW1hdGlvbk5hbWUgPT09ICdvcGVuJykge1xuICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9zdGF0ZSA9PT0gJ2Nsb3NpbmcnICYmIGV2ZW50LmFuaW1hdGlvbk5hbWUgPT09ICdjbG9zZS1oZWlnaHQnKSB7XG4gICAgICB0aGlzLl9oYW5kbGVDbG9zaW5nKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlT3BlbmluZygpOiB2b2lkIHtcbiAgICB0aGlzLl9zdGF0ZSA9ICdvcGVuZWQnO1xuICAgIHRoaXMuX25vdGlmaWNhdGlvblJlc2l6ZU9ic2VydmVyLm9ic2VydmUodGhpcy5fbm90aWZpY2F0aW9uRWxlbWVudCk7XG4gICAgdGhpcy5fZGlkT3Blbi5lbWl0KCk7XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVDbG9zaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuX3N0YXRlID0gJ2Nsb3NlZCc7XG4gICAgdGhpcy5fZGlkQ2xvc2UuZW1pdCgpO1xuICAgIHRoaXMuX25vdGlmaWNhdGlvblJlc2l6ZU9ic2VydmVyLnVub2JzZXJ2ZSh0aGlzLl9ub3RpZmljYXRpb25FbGVtZW50KTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMucmVtb3ZlKCkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLW5vdGlmaWNhdGlvbl9fd3JhcHBlclwiIEBhbmltYXRpb25lbmQ9JHt0aGlzLl9vbk5vdGlmaWNhdGlvbkFuaW1hdGlvbkVuZH0+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItbm90aWZpY2F0aW9uXCI+XG4gICAgICAgICAgPHNiYi1pY29uXG4gICAgICAgICAgICBjbGFzcz1cInNiYi1ub3RpZmljYXRpb25fX2ljb25cIlxuICAgICAgICAgICAgbmFtZT0ke25vdGlmaWNhdGlvblR5cGVzLmdldCh0aGlzLnR5cGUpIX1cbiAgICAgICAgICA+PC9zYmItaWNvbj5cblxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLW5vdGlmaWNhdGlvbl9fY29udGVudFwiPlxuICAgICAgICAgICAgPHNiYi10aXRsZVxuICAgICAgICAgICAgICBjbGFzcz1cInNiYi1ub3RpZmljYXRpb25fX3RpdGxlXCJcbiAgICAgICAgICAgICAgbGV2ZWw9JHt0aGlzLnRpdGxlTGV2ZWx9XG4gICAgICAgICAgICAgIHZpc3VhbC1sZXZlbD0ke3RoaXMuc2l6ZSA9PT0gJ20nID8gJzUnIDogJzYnfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8c2xvdCBuYW1lPVwidGl0bGVcIj4ke3RoaXMudGl0bGVDb250ZW50fTwvc2xvdD5cbiAgICAgICAgICAgIDwvc2JiLXRpdGxlPlxuICAgICAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgICAgIDwvc3Bhbj5cblxuICAgICAgICAgICR7IXRoaXMucmVhZG9ubHlcbiAgICAgICAgICAgID8gaHRtbGA8c3BhbiBjbGFzcz1cInNiYi1ub3RpZmljYXRpb25fX2Nsb3NlLXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICA8c2JiLWRpdmlkZXIgY2xhc3M9XCJzYmItbm90aWZpY2F0aW9uX19kaXZpZGVyXCIgb3JpZW50YXRpb249XCJ2ZXJ0aWNhbFwiPjwvc2JiLWRpdmlkZXI+XG4gICAgICAgICAgICAgICAgPHNiYi1zZWNvbmRhcnktYnV0dG9uXG4gICAgICAgICAgICAgICAgICBzaXplPSR7dGhpcy5zaXplfVxuICAgICAgICAgICAgICAgICAgaWNvbi1uYW1lPVwiY3Jvc3Mtc21hbGxcIlxuICAgICAgICAgICAgICAgICAgQGNsaWNrPSR7KCkgPT4gdGhpcy5jbG9zZSgpfVxuICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD0ke2kxOG5DbG9zZU5vdGlmaWNhdGlvblt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX1cbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2JiLW5vdGlmaWNhdGlvbl9fY2xvc2VcIlxuICAgICAgICAgICAgICAgID48L3NiYi1zZWNvbmRhcnktYnV0dG9uPlxuICAgICAgICAgICAgICA8L3NwYW4+YFxuICAgICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1ub3RpZmljYXRpb24nOiBTYmJOb3RpZmljYXRpb25FbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOlsiU2JiTm90aWZpY2F0aW9uRWxlbWVudCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBMEJBLE1BQU0sd0NBQXdCLElBQUk7QUFBQSxFQUNoQyxDQUFDLFFBQVEsMEJBQTBCO0FBQUEsRUFDbkMsQ0FBQyxXQUFXLG1CQUFtQjtBQUFBLEVBQy9CLENBQUMsUUFBUSxnQ0FBZ0M7QUFBQSxFQUN6QyxDQUFDLFNBQVMsb0JBQW9CO0FBQy9CLENBQUE7QUFFRCxNQUFNLGdCQUFnQjtJQWlCaEIsMEJBQXNCLE1BQUE7O0FBRjNCLE1BQUEsbUJBQUEsQ0FBQSxjQUFjLGtCQUFrQixHQUNoQyxXQUFXOzs7O29CQUN5Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFSLE1BQUFBLDJCQUFBLG1CQUFRLFlBQVU7QUFBQTs7QUFXaEI7QUFLN0I7QUFHd0M7QUFReEM7QUFNNkI7QUFHQTtBQXpCZ0IseUJBQUEsd0JBQUEsa0JBQUEsTUFBQSxvQkFBOEMsTUFBTTtBQUtqRix5QkFBQSxpQ0FBQSxrQkFBQSxNQUFBLHVCQUFBLEdBQUEsa0JBQUEsTUFBQSw0QkFBdUIsRUFBRTtBQUdlLHlCQUFBLCtCQUFBLGtCQUFBLE1BQUEsK0JBQUEsR0FBQSxrQkFBQSxNQUFBLDBCQUE0QixHQUFHO0FBUXZFLHlCQUFBLDZCQUFBLGtCQUFBLE1BQUEsNkJBQUEsR0FBQSxrQkFBQSxNQUFBLHdCQUFvQixLQUFLO0FBTUkseUJBQUEseUJBQUEsa0JBQUEsTUFBQSwyQkFBQSxHQUFBLGtCQUFBLE1BQUEsb0JBQWtCLE9BQUEsSUFBVyxNQUFNLEdBQUc7QUFHdEMseUJBQUEsOEJBQUEsa0JBQUEsTUFBQSx1QkFBQSxHQUFBLGtCQUFBLE1BQUEseUJBQStDLEtBQUs7QUFVekYsV0FBQSx1QkFBb0Isa0JBQUEsTUFBQSw0QkFBQTtBQUNwQixXQUFBLHlCQUErRDtBQUMvRCxXQUFBLFlBQVksSUFBSSxzQkFBc0IsSUFBSTtBQUMxQyxXQUFBLDhCQUE4QixJQUFJLGlCQUFpQixNQUFNO0FBQUEsUUFDL0QsUUFBUTtBQUFBLFFBQ1IsYUFBYTtBQUFBLFFBQ2IsVUFBVSxNQUFNLEtBQUssc0JBQUE7QUFBQSxNQUFxQixDQUMzQztBQUdPLFdBQUEsWUFBZ0MsSUFBSSxhQUMxQyxNQUNBQSx3QkFBdUIsT0FBTyxVQUM5QixFQUFFLFlBQVksTUFBTTtBQUlkLFdBQUEsV0FBK0IsSUFBSSxhQUN6QyxNQUNBQSx3QkFBdUIsT0FBTyxTQUM5QixFQUFFLFlBQVksTUFBTTtBQUlkLFdBQUEsYUFBaUMsSUFBSSxhQUMzQyxNQUNBQSx3QkFBdUIsT0FBTyxXQUM5QixFQUFFLFlBQVksTUFBTTtBQUlkLFdBQUEsWUFBZ0MsSUFBSSxhQUMxQyxNQUNBQSx3QkFBdUIsT0FBTyxVQUM5QixFQUFFLFlBQVksTUFBTTtBQUFBLElBQUE7QUFBQTtBQUFBLElBckVPLElBQWdCLE9BQUk7QUFBQSxhQUFBLG1CQUFBO0FBQUEsSUFBQTtBQUFBLElBQXBCLElBQWdCLEtBQUksT0FBQTtBQUFBLHlCQUFBLHdCQUFBO0FBQUEsSUFBQTtBQUFBO0FBQUEsSUFLakQsSUFBZ0IsZUFBWTtBQUFBLGFBQUEsbUJBQUE7QUFBQSxJQUFBO0FBQUEsSUFBNUIsSUFBZ0IsYUFBWSxPQUFBO0FBQUEseUJBQUEsZ0NBQUE7QUFBQSxJQUFBO0FBQUE7QUFBQSxJQUdZLElBQWdCLGFBQVU7QUFBQSxhQUFBLG1CQUFBO0FBQUEsSUFBQTtBQUFBLElBQTFCLElBQWdCLFdBQVUsT0FBQTtBQUFBLHlCQUFBLDhCQUFBO0FBQUEsSUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsSUFRbEUsSUFBZ0IsV0FBUTtBQUFBLGFBQUEsbUJBQUE7QUFBQSxJQUFBO0FBQUEsSUFBeEIsSUFBZ0IsU0FBUSxPQUFBO0FBQUEseUJBQUEsNEJBQUE7QUFBQSxJQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxJQU1LLElBQWdCLE9BQUk7QUFBQSxhQUFBLG1CQUFBO0FBQUEsSUFBQTtBQUFBLElBQXBCLElBQWdCLEtBQUksT0FBQTtBQUFBLHlCQUFBLHdCQUFBO0FBQUEsSUFBQTtBQUFBO0FBQUEsSUFHcEIsSUFBZ0IsWUFBUztBQUFBLGFBQUEsbUJBQUE7QUFBQSxJQUFBO0FBQUEsSUFBekIsSUFBZ0IsVUFBUyxPQUFBO0FBQUEseUJBQUEsNkJBQUE7QUFBQSxJQUFBO0FBQUE7QUFBQSxJQUd0RCxJQUFZLE9BQU8sT0FBMkI7QUFDNUMsV0FBSyxhQUFhLGNBQWMsS0FBSztBQUFBLElBQUE7QUFBQSxJQUV2QyxJQUFZLFNBQU07QUFDaEIsYUFBTyxLQUFLLGFBQWEsWUFBWTtBQUFBLElBQUE7QUFBQSxJQXdDL0IsUUFBSztBQUNYLFVBQUksS0FBSyxXQUFXLFVBQVU7QUFDNUIsYUFBSyxTQUFTO0FBQ2QsYUFBSyxVQUFVLEtBQUE7QUFJZixZQUFJLEtBQUssNEJBQTRCO0FBQ25DLGVBQUssZUFBQTtBQUFBLFFBQWM7QUFBQSxNQUNyQjtBQUFBLElBQ0Y7QUFBQSxJQUdLLFFBQUs7QUFDVixVQUFJLEtBQUssV0FBVyxZQUFZLEtBQUssV0FBVyxRQUFRO0FBQ3RELGFBQUssU0FBUztBQUlkLFlBQUksS0FBSyw0QkFBNEI7QUFDbkMsZUFBSyxlQUFBO0FBQUEsUUFBYztBQUFBLE1BQ3JCO0FBQUEsSUFDRjtBQUFBLElBR2Msb0JBQWlCO0FBQy9CLFdBQUssV0FBVztBQUVoQixZQUFNLGtCQUFBO0FBQUEsSUFBaUI7QUFBQSxJQUdOLE1BQU0sYUFBYSxtQkFBdUM7QUFDM0UsWUFBTSxhQUFhLGlCQUFpQjtBQUVwQyxXQUFLLHVCQUF1QixLQUFLLFlBQVksY0FDM0MsNEJBQTRCO0FBSTlCLFlBQU0sS0FBSztBQUNYLFdBQUssdUJBQUE7QUFDTCxXQUFLLE1BQUE7QUFBQSxJQUFLO0FBQUEsSUFHSiwyQkFBd0I7QUFDOUIsYUFBTyx3QkFBd0IsTUFBTSx1Q0FBdUM7QUFBQSxJQUFBO0FBQUEsSUFHdEUseUJBQXNCO0FBQzVCLFVBQUksQ0FBQyxLQUFLLHNCQUFzQixjQUFjO0FBQzVDO0FBQUEsTUFBQTtBQUVGLFlBQU0scUJBQXFCLEdBQUcsS0FBSyxxQkFBcUIsWUFBWTtBQUNwRSxXQUFLLE1BQU0sWUFBWSw2QkFBNkIsa0JBQWtCO0FBQUEsSUFBQTtBQUFBLElBR2hFLHdCQUFxQjtBQUMzQixVQUFJLEtBQUssV0FBVyxVQUFVO0FBQzVCO0FBQUEsTUFBQTtBQUdGLFVBQUksS0FBSyx3QkFBd0I7QUFDL0IscUJBQWEsS0FBSyxzQkFBc0I7QUFBQSxNQUFBO0FBSTFDLFdBQUssZ0JBQWdCLGlDQUFpQyxJQUFJO0FBQzFELFdBQUsseUJBQXlCLFdBQzVCLE1BQU0sS0FBSyxnQkFBZ0IsK0JBQStCLEdBQzFELGFBQWE7QUFJZixpQkFBVyxNQUFNLEtBQUssd0JBQXdCO0FBQUEsSUFBQTtBQUFBLElBR3hDLDRCQUE0QixPQUFxQjtBQUN2RCxVQUFJLEtBQUssV0FBVyxhQUFhLE1BQU0sa0JBQWtCLFFBQVE7QUFDL0QsYUFBSyxlQUFBO0FBQUEsTUFBYztBQUdyQixVQUFJLEtBQUssV0FBVyxhQUFhLE1BQU0sa0JBQWtCLGdCQUFnQjtBQUN2RSxhQUFLLGVBQUE7QUFBQSxNQUFjO0FBQUEsSUFDckI7QUFBQSxJQUdNLGlCQUFjO0FBQ3BCLFdBQUssU0FBUztBQUNkLFdBQUssNEJBQTRCLFFBQVEsS0FBSyxvQkFBb0I7QUFDbEUsV0FBSyxTQUFTLEtBQUE7QUFBQTtJQUdSLGlCQUFjO0FBQ3BCLFdBQUssU0FBUztBQUNkLFdBQUssVUFBVSxLQUFBO0FBQ2YsV0FBSyw0QkFBNEIsVUFBVSxLQUFLLG9CQUFvQjtBQUNwRSxpQkFBVyxNQUFNLEtBQUssUUFBUTtBQUFBLElBQUE7QUFBQSxJQUdiLFNBQU07QUFDdkIsYUFBTztBQUFBLDZEQUNrRCxLQUFLLDJCQUEyQjtBQUFBO0FBQUE7QUFBQTtBQUFBLG1CQUkxRSxrQkFBa0IsSUFBSSxLQUFLLElBQUksQ0FBRTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxzQkFNOUIsS0FBSyxVQUFVO0FBQUEsNkJBQ1IsS0FBSyxTQUFTLE1BQU0sTUFBTSxHQUFHO0FBQUE7QUFBQSxtQ0FFdkIsS0FBSyxZQUFZO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxZQUt4QyxDQUFDLEtBQUssV0FDSjtBQUFBO0FBQUE7QUFBQSx5QkFHVyxLQUFLLElBQUk7QUFBQTtBQUFBLDJCQUVQLE1BQU0sS0FBSyxNQUFBLENBQU87QUFBQSwrQkFDZCxzQkFBc0IsS0FBSyxVQUFVLE9BQU8sQ0FBQztBQUFBO0FBQUE7QUFBQSx5QkFJOUQsT0FBTztBQUFBO0FBQUE7QUFBQTtBQUFBLElBQUE7QUFBQSxLQTFNVSx3Q0FLN0IsZ0RBR3dDLDhDQVF4Qyw0Q0FNNkIsd0NBR0E7O0FBekI1Qix1QkFBQSxDQUFBLFNBQVMsRUFBRSxTQUFTLEtBQUEsQ0FBTSxDQUFDO0FBRzNCLCtCQUFBLENBQUEsYUFDQSxTQUFTLEVBQUUsV0FBVyxpQkFBaUIsU0FBUyxNQUFNLFdBQVcsbUJBQUEsQ0FBb0IsQ0FBQztBQUl0Riw2QkFBQSxDQUFBLFNBQVMsRUFBRSxXQUFXLGNBQUEsQ0FBZSxDQUFDO0FBTXRDLDJCQUFBLENBQUEsVUFBQSxHQUNBLFNBQVMsRUFBRSxTQUFTLE1BQU0sTUFBTSxRQUFBLENBQVMsQ0FBQztBQU8xQyx1QkFBQSxDQUFBLFNBQVMsRUFBRSxTQUFTLEtBQUEsQ0FBTSxDQUFDO0FBRzNCLDRCQUFBLENBQUEsU0FBUyxFQUFFLFNBQVMsS0FBQSxDQUFNLENBQUM7QUF6QkMsaUJBQUEsSUFBQSxNQUFBLGtCQUFBLEVBQUEsTUFBQSxZQUFBLE1BQUEsUUFBQSxRQUFBLE9BQUEsU0FBQSxPQUFBLFFBQUEsRUFBQSxLQUFBLENBQUEsUUFBQSxVQUFBLEtBQUEsS0FBQSxDQUFBLFFBQUEsSUFBZ0IsTUFBSSxLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsVUFBSixPQUFJO0FBQUEsSUFBQSxLQUFBLFVBQUEsYUFBQSxvQkFBQSx1QkFBQTtBQUtqRCxpQkFBQSxJQUFBLE1BQUEsMEJBQUEsRUFBQSxNQUFBLFlBQUEsTUFBQSxnQkFBQSxRQUFBLE9BQUEsU0FBQSxPQUFBLFFBQUEsRUFBQSxLQUFBLENBQUEsUUFBQSxrQkFBQSxLQUFBLEtBQUEsQ0FBQSxRQUFBLElBQWdCLGNBQVksS0FBQSxDQUFBLEtBQUEsVUFBQTtBQUFBLFVBQVosZUFBWTtBQUFBLElBQUEsS0FBQSxVQUFBLGFBQUEsNEJBQUEsK0JBQUE7QUFHWSxpQkFBQSxJQUFBLE1BQUEsd0JBQUEsRUFBQSxNQUFBLFlBQUEsTUFBQSxjQUFBLFFBQUEsT0FBQSxTQUFBLE9BQUEsUUFBQSxFQUFBLEtBQUEsQ0FBQSxRQUFBLGdCQUFBLEtBQUEsS0FBQSxDQUFBLFFBQUEsSUFBZ0IsWUFBVSxLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsVUFBVixhQUFVO0FBQUEsSUFBQSxLQUFBLFVBQUEsYUFBQSwwQkFBQSw2QkFBQTtBQVFsRSxpQkFBQSxJQUFBLE1BQUEsc0JBQUEsRUFBQSxNQUFBLFlBQUEsTUFBQSxZQUFBLFFBQUEsT0FBQSxTQUFBLE9BQUEsUUFBQSxFQUFBLEtBQUEsQ0FBQSxRQUFBLGNBQUEsS0FBQSxLQUFBLENBQUEsUUFBQSxJQUFnQixVQUFRLEtBQUEsQ0FBQSxLQUFBLFVBQUE7QUFBQSxVQUFSLFdBQVE7QUFBQSxJQUFBLEtBQUEsVUFBQSxhQUFBLHdCQUFBLDJCQUFBO0FBTUssaUJBQUEsSUFBQSxNQUFBLGtCQUFBLEVBQUEsTUFBQSxZQUFBLE1BQUEsUUFBQSxRQUFBLE9BQUEsU0FBQSxPQUFBLFFBQUEsRUFBQSxLQUFBLENBQUEsUUFBQSxVQUFBLEtBQUEsS0FBQSxDQUFBLFFBQUEsSUFBZ0IsTUFBSSxLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsVUFBSixPQUFJO0FBQUEsSUFBQSxLQUFBLFVBQUEsYUFBQSxvQkFBQSx1QkFBQTtBQUdwQixpQkFBQSxJQUFBLE1BQUEsdUJBQUEsRUFBQSxNQUFBLFlBQUEsTUFBQSxhQUFBLFFBQUEsT0FBQSxTQUFBLE9BQUEsUUFBQSxFQUFBLEtBQUEsQ0FBQSxRQUFBLGVBQUEsS0FBQSxLQUFBLENBQUEsUUFBQSxJQUFnQixXQUFTLEtBQUEsQ0FBQSxLQUFBLFVBQUE7QUFBQSxVQUFULFlBQVM7QUFBQSxJQUFBLEtBQUEsVUFBQSxhQUFBLHlCQUFBLDRCQUFBO0FBcEN4RCxpQkFBQSxNQUFBLG1CQUFBLEVBQUEsT0FBQSxXQUFBLEdBQUEsa0JBQUEsRUFBQSxNQUFBLFNBQUEsTUFBQSxXQUFBLE1BQUEsVUFBQSxVQUFBLEdBQUEsTUFBQSx1QkFBQTs7O1FBRXlCLEdBQUEsU0FBeUIsT0FDekIsR0FBQSxTQUFTO0FBQUEsSUFDOUIsVUFBVTtBQUFBLElBQ1YsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsVUFBVTtBQUFBLEVBQUEsR0FQUixrQkFBQSxZQUFBLHVCQUFBLEdBQXVCOzs7In0=
@@ -172,7 +172,6 @@ let SbbOptgroupBaseElement = (() => {
172
172
  this._highlightOptions();
173
173
  }
174
174
  _proxyGroupLabelToOptions() {
175
- var _a2, _b;
176
175
  if (!this._inertAriaGroups) {
177
176
  setOrRemoveAttribute(this, "aria-label", this.label);
178
177
  return;
@@ -180,12 +179,12 @@ let SbbOptgroupBaseElement = (() => {
180
179
  this.removeAttribute("aria-label");
181
180
  for (const option of this.options) {
182
181
  option.setAttribute("data-group-label", this.label);
183
- (_a2 = option.requestUpdate) == null ? void 0 : _a2.call(option);
182
+ option.requestUpdate?.();
184
183
  }
185
184
  } else {
186
185
  for (const option of this.options) {
187
186
  option.removeAttribute("data-group-label");
188
- (_b = option.requestUpdate) == null ? void 0 : _b.call(option);
187
+ option.requestUpdate?.();
189
188
  }
190
189
  }
191
190
  }
@@ -195,12 +194,11 @@ let SbbOptgroupBaseElement = (() => {
195
194
  }
196
195
  }
197
196
  _highlightOptions() {
198
- var _a2;
199
197
  const autocomplete = this.getAutocompleteParent();
200
198
  if (!autocomplete) {
201
199
  return;
202
200
  }
203
- const value = (_a2 = autocomplete.triggerElement) == null ? void 0 : _a2.value;
201
+ const value = autocomplete.triggerElement?.value;
204
202
  if (!value) {
205
203
  return;
206
204
  }
@@ -244,4 +242,4 @@ let SbbOptgroupBaseElement = (() => {
244
242
  export {
245
243
  SbbOptgroupBaseElement
246
244
  };
247
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0Z3JvdXAtYmFzZS1lbGVtZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvb3B0aW9uL29wdGdyb3VwL29wdGdyb3VwLWJhc2UtZWxlbWVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNdXRhdGlvbkNvbnRyb2xsZXIgfSBmcm9tICdAbGl0LWxhYnMvb2JzZXJ2ZXJzL211dGF0aW9uLWNvbnRyb2xsZXIuanMnO1xuaW1wb3J0IHtcbiAgdHlwZSBDU1NSZXN1bHRHcm91cCxcbiAgaHRtbCxcbiAgTGl0RWxlbWVudCxcbiAgdHlwZSBQcm9wZXJ0eVZhbHVlcyxcbiAgdHlwZSBUZW1wbGF0ZVJlc3VsdCxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5LCBzdGF0ZSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHR5cGUgeyBTYmJBdXRvY29tcGxldGVCYXNlRWxlbWVudCB9IGZyb20gJy4uLy4uL2F1dG9jb21wbGV0ZS5qcyc7XG5pbXBvcnQgeyBmb3JjZVR5cGUsIGhvc3RBdHRyaWJ1dGVzIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IGlzU2FmYXJpLCBzZXRPclJlbW92ZUF0dHJpYnV0ZSB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLmpzJztcbmltcG9ydCB7IFNiYkRpc2FibGVkTWl4aW4sIFNiYkh5ZHJhdGlvbk1peGluIH0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJPcHRpb25CYXNlRWxlbWVudCB9IGZyb20gJy4uL29wdGlvbi5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL29wdGdyb3VwLWJhc2UtZWxlbWVudC5zY3NzP2xpdCZpbmxpbmUnO1xuXG5pbXBvcnQgJy4uLy4uL2RpdmlkZXIuanMnO1xuXG4vKipcbiAqIE9uIFNhZmFyaSwgdGhlIGdyb3VwcyBsYWJlbHMgYXJlIG5vdCByZWFkIGJ5IFZvaWNlT3Zlci5cbiAqIFRvIHNvbHZlIHRoZSBwcm9ibGVtLCB3ZSByZW1vdmUgdGhlIHJvbGU9XCJncm91cFwiIGFuZCBhZGQgYSBoaWRkZW4gc3BhbiBjb250YWluaW5nIHRoZSBncm91cCBuYW1lXG4gKiBUT0RPOiBXZSBzaG91bGQgcGVyaW9kaWNhbGx5IGNoZWNrIGlmIGl0IGhhcyBiZWVuIHNvbHZlZCBhbmQsIGlmIHNvLCByZW1vdmUgdGhlIHByb3BlcnR5LlxuICovXG5jb25zdCBpbmVydEFyaWFHcm91cHMgPSBpc1NhZmFyaTtcblxuZXhwb3J0XG5AaG9zdEF0dHJpYnV0ZXMoeyByb2xlOiAhaW5lcnRBcmlhR3JvdXBzID8gJ2dyb3VwJyA6IG51bGwgfSlcbmFic3RyYWN0IGNsYXNzIFNiYk9wdGdyb3VwQmFzZUVsZW1lbnQgZXh0ZW5kcyBTYmJEaXNhYmxlZE1peGluKFNiYkh5ZHJhdGlvbk1peGluKExpdEVsZW1lbnQpKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8qKiBPcHRpb24gZ3JvdXAgbGFiZWwuICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgYWNjZXNzb3IgbGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gIEBzdGF0ZSgpIHByb3RlY3RlZCBhY2Nlc3NvciBuZWdhdGl2ZSA9IGZhbHNlO1xuXG4gIEBzdGF0ZSgpIHByaXZhdGUgYWNjZXNzb3IgX2luZXJ0QXJpYUdyb3VwcyA9IGZhbHNlO1xuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBnZXQgb3B0aW9ucygpOiBTYmJPcHRpb25CYXNlRWxlbWVudFtdO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuXG4gICAgdGhpcy5hZGRDb250cm9sbGVyKFxuICAgICAgbmV3IE11dGF0aW9uQ29udHJvbGxlcih0aGlzLCB7XG4gICAgICAgIGNvbmZpZzoge1xuICAgICAgICAgIGF0dHJpYnV0ZXM6IHRydWUsXG4gICAgICAgICAgYXR0cmlidXRlRmlsdGVyOiBbJ2RhdGEtbmVnYXRpdmUnXSxcbiAgICAgICAgfSxcbiAgICAgICAgY2FsbGJhY2s6ICgpID0+IHRoaXMuX29uTmVnYXRpdmVDaGFuZ2UoKSxcbiAgICAgIH0pLFxuICAgICk7XG5cbiAgICBpZiAoaW5lcnRBcmlhR3JvdXBzKSB7XG4gICAgICBpZiAodGhpcy5oeWRyYXRpb25SZXF1aXJlZCkge1xuICAgICAgICB0aGlzLmh5ZHJhdGlvbkNvbXBsZXRlLnRoZW4oKCkgPT4gKHRoaXMuX2luZXJ0QXJpYUdyb3VwcyA9IGluZXJ0QXJpYUdyb3VwcykpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5faW5lcnRBcmlhR3JvdXBzID0gaW5lcnRBcmlhR3JvdXBzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMuc2V0QXR0cmlidXRlRnJvbVBhcmVudCgpO1xuICAgIHRoaXMuX3Byb3h5R3JvdXBMYWJlbFRvT3B0aW9ucygpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdkaXNhYmxlZCcpKSB7XG4gICAgICBpZiAoIXRoaXMuX2luZXJ0QXJpYUdyb3Vwcykge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgIHRoaXMuc2V0QXR0cmlidXRlKCdhcmlhLWRpc2FibGVkJywgJ3RydWUnKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnJlbW92ZUF0dHJpYnV0ZSgnYXJpYS1kaXNhYmxlZCcpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHRoaXMucHJveHlEaXNhYmxlZFRvT3B0aW9ucygpO1xuICAgIH1cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdsYWJlbCcpKSB7XG4gICAgICB0aGlzLl9wcm94eUdyb3VwTGFiZWxUb09wdGlvbnMoKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgYWJzdHJhY3Qgc2V0QXR0cmlidXRlRnJvbVBhcmVudCgpOiB2b2lkO1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgZ2V0QXV0b2NvbXBsZXRlUGFyZW50KCk6IFNiYkF1dG9jb21wbGV0ZUJhc2VFbGVtZW50IHwgbnVsbDtcblxuICBwcml2YXRlIF9oYW5kbGVTbG90Y2hhbmdlKCk6IHZvaWQge1xuICAgIHRoaXMucHJveHlEaXNhYmxlZFRvT3B0aW9ucygpO1xuICAgIHRoaXMuX3Byb3h5R3JvdXBMYWJlbFRvT3B0aW9ucygpO1xuICAgIHRoaXMuX2hpZ2hsaWdodE9wdGlvbnMoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3Byb3h5R3JvdXBMYWJlbFRvT3B0aW9ucygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2luZXJ0QXJpYUdyb3Vwcykge1xuICAgICAgc2V0T3JSZW1vdmVBdHRyaWJ1dGUodGhpcywgJ2FyaWEtbGFiZWwnLCB0aGlzLmxhYmVsKTtcbiAgICAgIHJldHVybjtcbiAgICB9IGVsc2UgaWYgKHRoaXMubGFiZWwpIHtcbiAgICAgIHRoaXMucmVtb3ZlQXR0cmlidXRlKCdhcmlhLWxhYmVsJyk7XG4gICAgICBmb3IgKGNvbnN0IG9wdGlvbiBvZiB0aGlzLm9wdGlvbnMpIHtcbiAgICAgICAgb3B0aW9uLnNldEF0dHJpYnV0ZSgnZGF0YS1ncm91cC1sYWJlbCcsIHRoaXMubGFiZWwpO1xuICAgICAgICBvcHRpb24ucmVxdWVzdFVwZGF0ZT8uKCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGZvciAoY29uc3Qgb3B0aW9uIG9mIHRoaXMub3B0aW9ucykge1xuICAgICAgICBvcHRpb24ucmVtb3ZlQXR0cmlidXRlKCdkYXRhLWdyb3VwLWxhYmVsJyk7XG4gICAgICAgIG9wdGlvbi5yZXF1ZXN0VXBkYXRlPy4oKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgcHJveHlEaXNhYmxlZFRvT3B0aW9ucygpOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IG9wdGlvbiBvZiB0aGlzLm9wdGlvbnMpIHtcbiAgICAgIG9wdGlvbi50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtZ3JvdXAtZGlzYWJsZWQnLCB0aGlzLmRpc2FibGVkKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9oaWdobGlnaHRPcHRpb25zKCk6IHZvaWQge1xuICAgIGNvbnN0IGF1dG9jb21wbGV0ZSA9IHRoaXMuZ2V0QXV0b2NvbXBsZXRlUGFyZW50KCk7XG4gICAgaWYgKCFhdXRvY29tcGxldGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgdmFsdWUgPSBhdXRvY29tcGxldGUudHJpZ2dlckVsZW1lbnQ/LnZhbHVlO1xuICAgIGlmICghdmFsdWUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5vcHRpb25zLmZvckVhY2goKG9wdCkgPT4gb3B0LmhpZ2hsaWdodCh2YWx1ZSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfb25OZWdhdGl2ZUNoYW5nZSgpOiB2b2lkIHtcbiAgICB0aGlzLm5lZ2F0aXZlID0gdGhpcy5oYXNBdHRyaWJ1dGUoJ2RhdGEtbmVnYXRpdmUnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1vcHRncm91cF9fZGl2aWRlclwiPlxuICAgICAgICA8c2JiLWRpdmlkZXIgP25lZ2F0aXZlPSR7dGhpcy5uZWdhdGl2ZX0+PC9zYmItZGl2aWRlcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1vcHRncm91cF9fbGFiZWxcIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1vcHRncm91cF9faWNvbi1zcGFjZVwiPjwvZGl2PlxuICAgICAgICA8c3Bhbj4ke3RoaXMubGFiZWx9PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8c2xvdCBAc2xvdGNoYW5nZT0ke3RoaXMuX2hhbmRsZVNsb3RjaGFuZ2V9Pjwvc2xvdD5cbiAgICBgO1xuICB9XG59XG4iXSwibmFtZXMiOlsiX2EiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBeUJBLE1BQU0sa0JBQWtCO0lBSVQsMEJBQXNCLE1BQUE7O0FBRHBDLE1BQUEsbUJBQUEsQ0FBQSxlQUFlLEVBQUUsTUFBTSxDQUFDLGtCQUFrQixVQUFVLE1BQU0sQ0FBQzs7OztBQUNkLE1BQUEsY0FBQSxpQkFBaUIsa0JBQWtCLFVBQVUsQ0FBQzs7Ozs7Ozs7OztBQUF0RCxFQUFBLG1CQUFRLFlBQStDO0FBQUEsSUFjM0YsY0FBQTs7QUFSQSxrREFBQSxrQkFBQSxNQUFBLHFCQUFnQyxFQUFFO0FBRXpCLHNEQUFBLGtCQUFBLE1BQUEsd0JBQUEsR0FBQSxrQkFBQSxNQUFBLHdCQUE4QixLQUFLO0FBRW5DLDhEQUFBLGtCQUFBLE1BQUEsMkJBQUEsR0FBQSxrQkFBQSxNQUFBLGdDQUFvQyxLQUFLOztBQU8zQyxXQUFBLGNBQ0gsSUFBSSxtQkFBbUIsTUFBTTtBQUFBLFFBQzNCLFFBQVE7QUFBQSxVQUNOLFlBQVk7QUFBQSxVQUNaLGlCQUFpQixDQUFDLGVBQWU7QUFBQSxRQUNsQztBQUFBLFFBQ0QsVUFBVSxNQUFNLEtBQUssa0JBQW1CO0FBQUEsTUFBQSxDQUN6QyxDQUFDO0FBR0osVUFBSSxpQkFBaUI7QUFDbkIsWUFBSSxLQUFLLG1CQUFtQjtBQUMxQixlQUFLLGtCQUFrQixLQUFL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
245
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0Z3JvdXAtYmFzZS1lbGVtZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvb3B0aW9uL29wdGdyb3VwL29wdGdyb3VwLWJhc2UtZWxlbWVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNdXRhdGlvbkNvbnRyb2xsZXIgfSBmcm9tICdAbGl0LWxhYnMvb2JzZXJ2ZXJzL211dGF0aW9uLWNvbnRyb2xsZXIuanMnO1xuaW1wb3J0IHtcbiAgdHlwZSBDU1NSZXN1bHRHcm91cCxcbiAgaHRtbCxcbiAgTGl0RWxlbWVudCxcbiAgdHlwZSBQcm9wZXJ0eVZhbHVlcyxcbiAgdHlwZSBUZW1wbGF0ZVJlc3VsdCxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5LCBzdGF0ZSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHR5cGUgeyBTYmJBdXRvY29tcGxldGVCYXNlRWxlbWVudCB9IGZyb20gJy4uLy4uL2F1dG9jb21wbGV0ZS5qcyc7XG5pbXBvcnQgeyBmb3JjZVR5cGUsIGhvc3RBdHRyaWJ1dGVzIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IGlzU2FmYXJpLCBzZXRPclJlbW92ZUF0dHJpYnV0ZSB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLmpzJztcbmltcG9ydCB7IFNiYkRpc2FibGVkTWl4aW4sIFNiYkh5ZHJhdGlvbk1peGluIH0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJPcHRpb25CYXNlRWxlbWVudCB9IGZyb20gJy4uL29wdGlvbi5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL29wdGdyb3VwLWJhc2UtZWxlbWVudC5zY3NzP2xpdCZpbmxpbmUnO1xuXG5pbXBvcnQgJy4uLy4uL2RpdmlkZXIuanMnO1xuXG4vKipcbiAqIE9uIFNhZmFyaSwgdGhlIGdyb3VwcyBsYWJlbHMgYXJlIG5vdCByZWFkIGJ5IFZvaWNlT3Zlci5cbiAqIFRvIHNvbHZlIHRoZSBwcm9ibGVtLCB3ZSByZW1vdmUgdGhlIHJvbGU9XCJncm91cFwiIGFuZCBhZGQgYSBoaWRkZW4gc3BhbiBjb250YWluaW5nIHRoZSBncm91cCBuYW1lXG4gKiBUT0RPOiBXZSBzaG91bGQgcGVyaW9kaWNhbGx5IGNoZWNrIGlmIGl0IGhhcyBiZWVuIHNvbHZlZCBhbmQsIGlmIHNvLCByZW1vdmUgdGhlIHByb3BlcnR5LlxuICovXG5jb25zdCBpbmVydEFyaWFHcm91cHMgPSBpc1NhZmFyaTtcblxuZXhwb3J0XG5AaG9zdEF0dHJpYnV0ZXMoeyByb2xlOiAhaW5lcnRBcmlhR3JvdXBzID8gJ2dyb3VwJyA6IG51bGwgfSlcbmFic3RyYWN0IGNsYXNzIFNiYk9wdGdyb3VwQmFzZUVsZW1lbnQgZXh0ZW5kcyBTYmJEaXNhYmxlZE1peGluKFNiYkh5ZHJhdGlvbk1peGluKExpdEVsZW1lbnQpKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8qKiBPcHRpb24gZ3JvdXAgbGFiZWwuICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgYWNjZXNzb3IgbGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gIEBzdGF0ZSgpIHByb3RlY3RlZCBhY2Nlc3NvciBuZWdhdGl2ZSA9IGZhbHNlO1xuXG4gIEBzdGF0ZSgpIHByaXZhdGUgYWNjZXNzb3IgX2luZXJ0QXJpYUdyb3VwcyA9IGZhbHNlO1xuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBnZXQgb3B0aW9ucygpOiBTYmJPcHRpb25CYXNlRWxlbWVudFtdO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuXG4gICAgdGhpcy5hZGRDb250cm9sbGVyKFxuICAgICAgbmV3IE11dGF0aW9uQ29udHJvbGxlcih0aGlzLCB7XG4gICAgICAgIGNvbmZpZzoge1xuICAgICAgICAgIGF0dHJpYnV0ZXM6IHRydWUsXG4gICAgICAgICAgYXR0cmlidXRlRmlsdGVyOiBbJ2RhdGEtbmVnYXRpdmUnXSxcbiAgICAgICAgfSxcbiAgICAgICAgY2FsbGJhY2s6ICgpID0+IHRoaXMuX29uTmVnYXRpdmVDaGFuZ2UoKSxcbiAgICAgIH0pLFxuICAgICk7XG5cbiAgICBpZiAoaW5lcnRBcmlhR3JvdXBzKSB7XG4gICAgICBpZiAodGhpcy5oeWRyYXRpb25SZXF1aXJlZCkge1xuICAgICAgICB0aGlzLmh5ZHJhdGlvbkNvbXBsZXRlLnRoZW4oKCkgPT4gKHRoaXMuX2luZXJ0QXJpYUdyb3VwcyA9IGluZXJ0QXJpYUdyb3VwcykpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5faW5lcnRBcmlhR3JvdXBzID0gaW5lcnRBcmlhR3JvdXBzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMuc2V0QXR0cmlidXRlRnJvbVBhcmVudCgpO1xuICAgIHRoaXMuX3Byb3h5R3JvdXBMYWJlbFRvT3B0aW9ucygpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdkaXNhYmxlZCcpKSB7XG4gICAgICBpZiAoIXRoaXMuX2luZXJ0QXJpYUdyb3Vwcykge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgIHRoaXMuc2V0QXR0cmlidXRlKCdhcmlhLWRpc2FibGVkJywgJ3RydWUnKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnJlbW92ZUF0dHJpYnV0ZSgnYXJpYS1kaXNhYmxlZCcpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHRoaXMucHJveHlEaXNhYmxlZFRvT3B0aW9ucygpO1xuICAgIH1cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdsYWJlbCcpKSB7XG4gICAgICB0aGlzLl9wcm94eUdyb3VwTGFiZWxUb09wdGlvbnMoKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgYWJzdHJhY3Qgc2V0QXR0cmlidXRlRnJvbVBhcmVudCgpOiB2b2lkO1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgZ2V0QXV0b2NvbXBsZXRlUGFyZW50KCk6IFNiYkF1dG9jb21wbGV0ZUJhc2VFbGVtZW50IHwgbnVsbDtcblxuICBwcml2YXRlIF9oYW5kbGVTbG90Y2hhbmdlKCk6IHZvaWQge1xuICAgIHRoaXMucHJveHlEaXNhYmxlZFRvT3B0aW9ucygpO1xuICAgIHRoaXMuX3Byb3h5R3JvdXBMYWJlbFRvT3B0aW9ucygpO1xuICAgIHRoaXMuX2hpZ2hsaWdodE9wdGlvbnMoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3Byb3h5R3JvdXBMYWJlbFRvT3B0aW9ucygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2luZXJ0QXJpYUdyb3Vwcykge1xuICAgICAgc2V0T3JSZW1vdmVBdHRyaWJ1dGUodGhpcywgJ2FyaWEtbGFiZWwnLCB0aGlzLmxhYmVsKTtcbiAgICAgIHJldHVybjtcbiAgICB9IGVsc2UgaWYgKHRoaXMubGFiZWwpIHtcbiAgICAgIHRoaXMucmVtb3ZlQXR0cmlidXRlKCdhcmlhLWxhYmVsJyk7XG4gICAgICBmb3IgKGNvbnN0IG9wdGlvbiBvZiB0aGlzLm9wdGlvbnMpIHtcbiAgICAgICAgb3B0aW9uLnNldEF0dHJpYnV0ZSgnZGF0YS1ncm91cC1sYWJlbCcsIHRoaXMubGFiZWwpO1xuICAgICAgICBvcHRpb24ucmVxdWVzdFVwZGF0ZT8uKCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGZvciAoY29uc3Qgb3B0aW9uIG9mIHRoaXMub3B0aW9ucykge1xuICAgICAgICBvcHRpb24ucmVtb3ZlQXR0cmlidXRlKCdkYXRhLWdyb3VwLWxhYmVsJyk7XG4gICAgICAgIG9wdGlvbi5yZXF1ZXN0VXBkYXRlPy4oKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgcHJveHlEaXNhYmxlZFRvT3B0aW9ucygpOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IG9wdGlvbiBvZiB0aGlzLm9wdGlvbnMpIHtcbiAgICAgIG9wdGlvbi50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtZ3JvdXAtZGlzYWJsZWQnLCB0aGlzLmRpc2FibGVkKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9oaWdobGlnaHRPcHRpb25zKCk6IHZvaWQge1xuICAgIGNvbnN0IGF1dG9jb21wbGV0ZSA9IHRoaXMuZ2V0QXV0b2NvbXBsZXRlUGFyZW50KCk7XG4gICAgaWYgKCFhdXRvY29tcGxldGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgdmFsdWUgPSBhdXRvY29tcGxldGUudHJpZ2dlckVsZW1lbnQ/LnZhbHVlO1xuICAgIGlmICghdmFsdWUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5vcHRpb25zLmZvckVhY2goKG9wdCkgPT4gb3B0LmhpZ2hsaWdodCh2YWx1ZSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfb25OZWdhdGl2ZUNoYW5nZSgpOiB2b2lkIHtcbiAgICB0aGlzLm5lZ2F0aXZlID0gdGhpcy5oYXNBdHRyaWJ1dGUoJ2RhdGEtbmVnYXRpdmUnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1vcHRncm91cF9fZGl2aWRlclwiPlxuICAgICAgICA8c2JiLWRpdmlkZXIgP25lZ2F0aXZlPSR7dGhpcy5uZWdhdGl2ZX0+PC9zYmItZGl2aWRlcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1vcHRncm91cF9fbGFiZWxcIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1vcHRncm91cF9faWNvbi1zcGFjZVwiPjwvZGl2PlxuICAgICAgICA8c3Bhbj4ke3RoaXMubGFiZWx9PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8c2xvdCBAc2xvdGNoYW5nZT0ke3RoaXMuX2hhbmRsZVNsb3RjaGFuZ2V9Pjwvc2xvdD5cbiAgICBgO1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUF5QkEsTUFBTSxrQkFBa0I7SUFJVCwwQkFBc0IsTUFBQTs7QUFEcEMsTUFBQSxtQkFBQSxDQUFBLGVBQWUsRUFBRSxNQUFNLENBQUMsa0JBQWtCLFVBQVUsS0FBQSxDQUFNLENBQUM7Ozs7QUFDZCxNQUFBLGNBQUEsaUJBQWlCLGtCQUFrQixVQUFVLENBQUM7Ozs7Ozs7Ozs7QUFBdEQsRUFBQSxtQkFBUSxZQUErQztBQUFBLElBYzNGLGNBQUE7QUFDRSxZQUFBO0FBVEYsa0RBQUEsa0JBQUEsTUFBQSxxQkFBZ0MsRUFBRTtBQUV6QixzREFBQSxrQkFBQSxNQUFBLHdCQUFBLEdBQUEsa0JBQUEsTUFBQSx3QkFBOEIsS0FBSztBQUVuQyw4REFBQSxrQkFBQSxNQUFBLDJCQUFBLEdBQUEsa0JBQUEsTUFBQSxnQ0FBb0MsS0FBSzs7QUFPaEQsV0FBSyxjQUNILElBQUksbUJBQW1CLE1BQU07QUFBQSxRQUMzQixRQUFRO0FBQUEsVUFDTixZQUFZO0FBQUEsVUFDWixpQkFBaUIsQ0FBQyxlQUFlO0FBQUEsUUFBQTtBQUFBLFFBRW5DLFVBQVUsTUFBTSxLQUFLLGtCQUFBO0FBQUEsTUFBaUIsQ0FDdkMsQ0FBQztBQUdKLFVBQUksaUJBQWlCO0FBQ25CLFlBQUksS0FBSyxtQkFBbUI7QUFDMUIsZUFBSyxr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
@@ -10,16 +10,13 @@ let SbbOptGroupElement = (() => {
10
10
  let _classSuper = SbbOptgroupBaseElement;
11
11
  _a = class extends _classSuper {
12
12
  get options() {
13
- var _a2;
14
- return Array.from(((_a2 = this.querySelectorAll) == null ? void 0 : _a2.call(this, "sbb-option")) ?? []);
13
+ return Array.from(this.querySelectorAll?.("sbb-option") ?? []);
15
14
  }
16
15
  getAutocompleteParent() {
17
- var _a2;
18
- return ((_a2 = this.closest) == null ? void 0 : _a2.call(this, "sbb-autocomplete")) || null;
16
+ return this.closest?.("sbb-autocomplete") || null;
19
17
  }
20
18
  setAttributeFromParent() {
21
- var _a2;
22
- this.negative = !!((_a2 = this.closest) == null ? void 0 : _a2.call(this, `:is(sbb-autocomplete, sbb-select, sbb-form-field)[negative]`));
19
+ this.negative = !!this.closest?.(`:is(sbb-autocomplete, sbb-select, sbb-form-field)[negative]`);
23
20
  this.toggleAttribute("data-negative", this.negative);
24
21
  }
25
22
  connectedCallback() {
@@ -28,10 +25,9 @@ let SbbOptGroupElement = (() => {
28
25
  this._setVariantByContext();
29
26
  }
30
27
  _setVariantByContext() {
31
- var _a2, _b;
32
- if ((_a2 = this.closest) == null ? void 0 : _a2.call(this, "sbb-autocomplete")) {
28
+ if (this.closest?.("sbb-autocomplete")) {
33
29
  this.setAttribute("data-variant", "autocomplete");
34
- } else if ((_b = this.closest) == null ? void 0 : _b.call(this, "sbb-select")) {
30
+ } else if (this.closest?.("sbb-select")) {
35
31
  this.setAttribute("data-variant", "select");
36
32
  }
37
33
  }
@@ -47,4 +43,4 @@ let SbbOptGroupElement = (() => {
47
43
  export {
48
44
  SbbOptGroupElement
49
45
  };
50
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0Z3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvb3B0aW9uL29wdGdyb3VwL29wdGdyb3VwLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgdHlwZSB7IFNiYkF1dG9jb21wbGV0ZUJhc2VFbGVtZW50IH0gZnJvbSAnLi4vLi4vYXV0b2NvbXBsZXRlLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiT3B0aW9uRWxlbWVudCB9IGZyb20gJy4uL29wdGlvbi5qcyc7XG5cbmltcG9ydCB7IFNiYk9wdGdyb3VwQmFzZUVsZW1lbnQgfSBmcm9tICcuL29wdGdyb3VwLWJhc2UtZWxlbWVudC5qcyc7XG5cbi8qKlxuICogSXQgY2FuIGJlIHVzZWQgYXMgYSBjb250YWluZXIgZm9yIG9uZSBvciBtb3JlIGBzYmItb3B0aW9uYC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBgc2JiLW9wdGlvbmAgZWxlbWVudHMgdG8gdGhlIGBzYmItb3B0Z3JvdXBgLlxuICovXG5leHBvcnRcbkBjdXN0b21FbGVtZW50KCdzYmItb3B0Z3JvdXAnKVxuY2xhc3MgU2JiT3B0R3JvdXBFbGVtZW50IGV4dGVuZHMgU2JiT3B0Z3JvdXBCYXNlRWxlbWVudCB7XG4gIHByb3RlY3RlZCBnZXQgb3B0aW9ucygpOiBTYmJPcHRpb25FbGVtZW50W10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMucXVlcnlTZWxlY3RvckFsbD8uKCdzYmItb3B0aW9uJykgPz8gW10pIGFzIFNiYk9wdGlvbkVsZW1lbnRbXTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRBdXRvY29tcGxldGVQYXJlbnQoKTogU2JiQXV0b2NvbXBsZXRlQmFzZUVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5jbG9zZXN0Py48U2JiQXV0b2NvbXBsZXRlQmFzZUVsZW1lbnQ+KCdzYmItYXV0b2NvbXBsZXRlJykgfHwgbnVsbDtcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXRBdHRyaWJ1dGVGcm9tUGFyZW50KCk6IHZvaWQge1xuICAgIHRoaXMubmVnYXRpdmUgPSAhIXRoaXMuY2xvc2VzdD8uKGA6aXMoc2JiLWF1dG9jb21wbGV0ZSwgc2JiLXNlbGVjdCwgc2JiLWZvcm0tZmllbGQpW25lZ2F0aXZlXWApO1xuICAgIHRoaXMudG9nZ2xlQXR0cmlidXRlKCdkYXRhLW5lZ2F0aXZlJywgdGhpcy5uZWdhdGl2ZSk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1tdWx0aXBsZScsICEhdGhpcy5jbG9zZXN0KCdzYmItc2VsZWN0W211bHRpcGxlXScpKTtcbiAgICB0aGlzLl9zZXRWYXJpYW50QnlDb250ZXh0KCk7XG4gIH1cblxuICBwcml2YXRlIF9zZXRWYXJpYW50QnlDb250ZXh0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNsb3Nlc3Q/Lignc2JiLWF1dG9jb21wbGV0ZScpKSB7XG4gICAgICB0aGlzLnNldEF0dHJpYnV0ZSgnZGF0YS12YXJpYW50JywgJ2F1dG9jb21wbGV0ZScpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5jbG9zZXN0Py4oJ3NiYi1zZWxlY3QnKSkge1xuICAgICAgdGhpcy5zZXRBdHRyaWJ1dGUoJ2RhdGEtdmFyaWFudCcsICdzZWxlY3QnKTtcbiAgICB9XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1vcHRncm91cCc6IFNiYk9wdEdyb3VwRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIl9hIl0sIm1hcHBpbmdzIjoiOzs7SUFjTSxzQkFBa0IsTUFBQTs7MEJBRHZCLGNBQWMsY0FBYyxDQUFDOzs7O29CQUNHO0FBQVIsRUFBQSxtQkFBUSxZQUFzQjtBQUFBLElBQ3JELElBQWMsVUFBTzs7QUFDbkIsYUFBTyxNQUFNLE9BQUtBLE1BQUEsS0FBSyxxQkFBTCxnQkFBQUEsSUFBQSxXQUF3QixrQkFBaUIsRUFBRTtBQUFBLElBQUE7QUFBQSxJQUdyRCx3QkFBcUI7O0FBQ3RCLGVBQUFBLE1BQUEsS0FBSyxZQUFMLGdCQUFBQSxJQUFBLFdBQTJDLHdCQUF1QjtBQUFBLElBQUE7QUFBQSxJQUdqRSx5QkFBc0I7O0FBQzlCLFdBQUssV0FBVyxDQUFDLEdBQUNBLE1BQUEsS0FBSyxZQUFMLGdCQUFBQSxJQUFBLFdBQWU7QUFDNUIsV0FBQSxnQkFBZ0IsaUJBQWlCLEtBQUssUUFBUTtBQUFBLElBQUE7QUFBQSxJQUdyQyxvQkFBaUI7QUFDL0IsWUFBTSxrQkFBaUI7QUFDdkIsV0FBSyxnQkFBZ0IsaUJBQWlCLENBQUMsQ0FBQyxLQUFLLFFBQVEsc0JBQXNCLENBQUM7QUFDNUUsV0FBSyxxQkFBb0I7QUFBQSxJQUFBO0FBQUEsSUFHbkIsdUJBQW9COztBQUN0QixXQUFBQSxNQUFBLEtBQUssWUFBTCxnQkFBQUEsSUFBQSxXQUFlLHFCQUFxQjtBQUNqQyxhQUFBLGFBQWEsZ0JBQWdCLGNBQWM7QUFBQSxNQUN2QyxZQUFBLFVBQUssWUFBTCw4QkFBZSxlQUFlO0FBQ2xDLGFBQUEsYUFBYSxnQkFBZ0IsUUFBUTtBQUFBLE1BQUE7QUFBQSxJQUM1QztBQUFBLEVBQ0Y7O0FBMUJGLGlCQTJCQyxNQUFBLG1CQUFBLEVBQUEsT0FBQSxXQUFBLEdBQUEsa0JBQUEsRUFBQSxNQUFBLFNBQUEsTUFBQSxXQUFBLE1BQUEsVUFBQSxVQUFBLEdBQUEsTUFBQSx1QkFBQTs7O0FBM0JLLHNCQUFrQixZQUFBLHVCQUFBO0FBQUEsRUFBQSxNQUFDOzs7In0=
46
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0Z3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvb3B0aW9uL29wdGdyb3VwL29wdGdyb3VwLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgdHlwZSB7IFNiYkF1dG9jb21wbGV0ZUJhc2VFbGVtZW50IH0gZnJvbSAnLi4vLi4vYXV0b2NvbXBsZXRlLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiT3B0aW9uRWxlbWVudCB9IGZyb20gJy4uL29wdGlvbi5qcyc7XG5cbmltcG9ydCB7IFNiYk9wdGdyb3VwQmFzZUVsZW1lbnQgfSBmcm9tICcuL29wdGdyb3VwLWJhc2UtZWxlbWVudC5qcyc7XG5cbi8qKlxuICogSXQgY2FuIGJlIHVzZWQgYXMgYSBjb250YWluZXIgZm9yIG9uZSBvciBtb3JlIGBzYmItb3B0aW9uYC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBgc2JiLW9wdGlvbmAgZWxlbWVudHMgdG8gdGhlIGBzYmItb3B0Z3JvdXBgLlxuICovXG5leHBvcnRcbkBjdXN0b21FbGVtZW50KCdzYmItb3B0Z3JvdXAnKVxuY2xhc3MgU2JiT3B0R3JvdXBFbGVtZW50IGV4dGVuZHMgU2JiT3B0Z3JvdXBCYXNlRWxlbWVudCB7XG4gIHByb3RlY3RlZCBnZXQgb3B0aW9ucygpOiBTYmJPcHRpb25FbGVtZW50W10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMucXVlcnlTZWxlY3RvckFsbD8uKCdzYmItb3B0aW9uJykgPz8gW10pIGFzIFNiYk9wdGlvbkVsZW1lbnRbXTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRBdXRvY29tcGxldGVQYXJlbnQoKTogU2JiQXV0b2NvbXBsZXRlQmFzZUVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5jbG9zZXN0Py48U2JiQXV0b2NvbXBsZXRlQmFzZUVsZW1lbnQ+KCdzYmItYXV0b2NvbXBsZXRlJykgfHwgbnVsbDtcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXRBdHRyaWJ1dGVGcm9tUGFyZW50KCk6IHZvaWQge1xuICAgIHRoaXMubmVnYXRpdmUgPSAhIXRoaXMuY2xvc2VzdD8uKGA6aXMoc2JiLWF1dG9jb21wbGV0ZSwgc2JiLXNlbGVjdCwgc2JiLWZvcm0tZmllbGQpW25lZ2F0aXZlXWApO1xuICAgIHRoaXMudG9nZ2xlQXR0cmlidXRlKCdkYXRhLW5lZ2F0aXZlJywgdGhpcy5uZWdhdGl2ZSk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1tdWx0aXBsZScsICEhdGhpcy5jbG9zZXN0KCdzYmItc2VsZWN0W211bHRpcGxlXScpKTtcbiAgICB0aGlzLl9zZXRWYXJpYW50QnlDb250ZXh0KCk7XG4gIH1cblxuICBwcml2YXRlIF9zZXRWYXJpYW50QnlDb250ZXh0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNsb3Nlc3Q/Lignc2JiLWF1dG9jb21wbGV0ZScpKSB7XG4gICAgICB0aGlzLnNldEF0dHJpYnV0ZSgnZGF0YS12YXJpYW50JywgJ2F1dG9jb21wbGV0ZScpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5jbG9zZXN0Py4oJ3NiYi1zZWxlY3QnKSkge1xuICAgICAgdGhpcy5zZXRBdHRyaWJ1dGUoJ2RhdGEtdmFyaWFudCcsICdzZWxlY3QnKTtcbiAgICB9XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1vcHRncm91cCc6IFNiYk9wdEdyb3VwRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztJQWNNLHNCQUFrQixNQUFBOzswQkFEdkIsY0FBYyxjQUFjLENBQUM7Ozs7b0JBQ0c7QUFBUixFQUFBLG1CQUFRLFlBQXNCO0FBQUEsSUFDckQsSUFBYyxVQUFPO0FBQ25CLGFBQU8sTUFBTSxLQUFLLEtBQUssbUJBQW1CLFlBQVksS0FBSyxFQUFFO0FBQUEsSUFBQTtBQUFBLElBR3JELHdCQUFxQjtBQUM3QixhQUFPLEtBQUssVUFBc0Msa0JBQWtCLEtBQUs7QUFBQSxJQUFBO0FBQUEsSUFHakUseUJBQXNCO0FBQzlCLFdBQUssV0FBVyxDQUFDLENBQUMsS0FBSyxVQUFVLDZEQUE2RDtBQUM5RixXQUFLLGdCQUFnQixpQkFBaUIsS0FBSyxRQUFRO0FBQUEsSUFBQTtBQUFBLElBR3JDLG9CQUFpQjtBQUMvQixZQUFNLGtCQUFBO0FBQ04sV0FBSyxnQkFBZ0IsaUJBQWlCLENBQUMsQ0FBQyxLQUFLLFFBQVEsc0JBQXNCLENBQUM7QUFDNUUsV0FBSyxxQkFBQTtBQUFBLElBQW9CO0FBQUEsSUFHbkIsdUJBQW9CO0FBQzFCLFVBQUksS0FBSyxVQUFVLGtCQUFrQixHQUFHO0FBQ3RDLGFBQUssYUFBYSxnQkFBZ0IsY0FBYztBQUFBLE1BQUEsV0FDdkMsS0FBSyxVQUFVLFlBQVksR0FBRztBQUN2QyxhQUFLLGFBQWEsZ0JBQWdCLFFBQVE7QUFBQSxNQUFBO0FBQUEsSUFDNUM7QUFBQSxFQUNGOztBQTFCRixpQkFBQSxNQUFBLG1CQUFBLEVBQUEsT0FBQSxXQUFBLEdBQUEsa0JBQUEsRUFBQSxNQUFBLFNBQUEsTUFBQSxXQUFBLE1BQUEsVUFBQSxVQUFBLEdBQUEsTUFBQSx1QkFBQTs7O0FBQU0sc0JBQUEsWUFBQSx1QkFBQTtBQUFBLEVBQUEsTUFBbUI7OzsifQ==