@sbb-esta/lyne-elements 1.2.0 → 1.3.0

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 (257) hide show
  1. package/accordion/accordion.d.ts +1 -1
  2. package/accordion/accordion.d.ts.map +1 -1
  3. package/alert/alert/alert.d.ts +1 -1
  4. package/alert/alert/alert.d.ts.map +1 -1
  5. package/button/common/button-common.d.ts.map +1 -1
  6. package/button/common.js +20 -20
  7. package/button/mini-button/mini-button.d.ts +0 -1
  8. package/button/mini-button/mini-button.d.ts.map +1 -1
  9. package/button/mini-button.js +16 -18
  10. package/calendar/calendar.d.ts.map +1 -1
  11. package/calendar.js +22 -20
  12. package/checkbox/checkbox/checkbox.d.ts +0 -1
  13. package/checkbox/checkbox/checkbox.d.ts.map +1 -1
  14. package/checkbox/checkbox-group/checkbox-group.d.ts +0 -1
  15. package/checkbox/checkbox-group/checkbox-group.d.ts.map +1 -1
  16. package/checkbox/checkbox-group.js +5 -3
  17. package/checkbox/checkbox-panel/checkbox-panel.d.ts +0 -1
  18. package/checkbox/checkbox-panel/checkbox-panel.d.ts.map +1 -1
  19. package/checkbox/checkbox-panel.js +12 -11
  20. package/checkbox/checkbox.js +12 -11
  21. package/clock/clock.d.ts +19 -13
  22. package/clock/clock.d.ts.map +1 -1
  23. package/clock.js +86 -75
  24. package/core/datetime/date-adapter.d.ts +23 -13
  25. package/core/datetime/date-adapter.d.ts.map +1 -1
  26. package/core/datetime/native-date-adapter.d.ts +0 -1
  27. package/core/datetime/native-date-adapter.d.ts.map +1 -1
  28. package/core/datetime.js +23 -23
  29. package/core/decorators/host-attributes.d.ts +1 -1
  30. package/core/decorators/slot-state.d.ts +18 -0
  31. package/core/decorators/slot-state.d.ts.map +1 -0
  32. package/core/decorators.d.ts +1 -0
  33. package/core/decorators.d.ts.map +1 -1
  34. package/core/decorators.js +15 -9
  35. package/core/mixins/hydration-mixin.d.ts.map +1 -1
  36. package/core/mixins.js +126 -132
  37. package/core/styles/mixins/buttons.scss +15 -48
  38. package/custom-elements.json +509 -540
  39. package/datepicker/common/datepicker-button.d.ts +5 -5
  40. package/datepicker/common/datepicker-button.d.ts.map +1 -1
  41. package/datepicker/common.js +21 -20
  42. package/datepicker/datepicker/datepicker.d.ts +55 -38
  43. package/datepicker/datepicker/datepicker.d.ts.map +1 -1
  44. package/datepicker/datepicker-next-day/datepicker-next-day.d.ts +1 -1
  45. package/datepicker/datepicker-next-day/datepicker-next-day.d.ts.map +1 -1
  46. package/datepicker/datepicker-next-day.js +16 -16
  47. package/datepicker/datepicker-previous-day/datepicker-previous-day.d.ts +1 -1
  48. package/datepicker/datepicker-previous-day/datepicker-previous-day.d.ts.map +1 -1
  49. package/datepicker/datepicker-previous-day.js +14 -14
  50. package/datepicker/datepicker-toggle/datepicker-toggle.d.ts +1 -1
  51. package/datepicker/datepicker-toggle/datepicker-toggle.d.ts.map +1 -1
  52. package/datepicker/datepicker-toggle.js +25 -23
  53. package/datepicker/datepicker.js +147 -181
  54. package/development/accordion/accordion.d.ts +1 -1
  55. package/development/accordion/accordion.d.ts.map +1 -1
  56. package/development/accordion.js +1 -1
  57. package/development/alert/alert/alert.d.ts +1 -1
  58. package/development/alert/alert/alert.d.ts.map +1 -1
  59. package/development/alert/alert.js +1 -1
  60. package/development/button/common/button-common.d.ts.map +1 -1
  61. package/development/button/common.js +30 -25
  62. package/development/button/mini-button/mini-button.d.ts +0 -1
  63. package/development/button/mini-button/mini-button.d.ts.map +1 -1
  64. package/development/button/mini-button.js +17 -55
  65. package/development/calendar/calendar.d.ts.map +1 -1
  66. package/development/calendar.js +4 -2
  67. package/development/checkbox/checkbox/checkbox.d.ts +0 -1
  68. package/development/checkbox/checkbox/checkbox.d.ts.map +1 -1
  69. package/development/checkbox/checkbox-group/checkbox-group.d.ts +0 -1
  70. package/development/checkbox/checkbox-group/checkbox-group.d.ts.map +1 -1
  71. package/development/checkbox/checkbox-group.js +6 -5
  72. package/development/checkbox/checkbox-panel/checkbox-panel.d.ts +0 -1
  73. package/development/checkbox/checkbox-panel/checkbox-panel.d.ts.map +1 -1
  74. package/development/checkbox/checkbox-panel.js +5 -5
  75. package/development/checkbox/checkbox.js +5 -5
  76. package/development/clock/clock.d.ts +19 -13
  77. package/development/clock/clock.d.ts.map +1 -1
  78. package/development/clock.js +85 -80
  79. package/development/core/datetime/date-adapter.d.ts +23 -13
  80. package/development/core/datetime/date-adapter.d.ts.map +1 -1
  81. package/development/core/datetime/native-date-adapter.d.ts +0 -1
  82. package/development/core/datetime/native-date-adapter.d.ts.map +1 -1
  83. package/development/core/datetime.js +28 -26
  84. package/development/core/decorators/host-attributes.d.ts +1 -1
  85. package/development/core/decorators/slot-state.d.ts +18 -0
  86. package/development/core/decorators/slot-state.d.ts.map +1 -0
  87. package/development/core/decorators.d.ts +1 -0
  88. package/development/core/decorators.d.ts.map +1 -1
  89. package/development/core/decorators.js +11 -2
  90. package/development/core/mixins/hydration-mixin.d.ts.map +1 -1
  91. package/development/core/mixins.js +15 -16
  92. package/development/datepicker/common/datepicker-button.d.ts +5 -5
  93. package/development/datepicker/common/datepicker-button.d.ts.map +1 -1
  94. package/development/datepicker/common.js +10 -9
  95. package/development/datepicker/datepicker/datepicker.d.ts +55 -38
  96. package/development/datepicker/datepicker/datepicker.d.ts.map +1 -1
  97. package/development/datepicker/datepicker-next-day/datepicker-next-day.d.ts +1 -1
  98. package/development/datepicker/datepicker-next-day/datepicker-next-day.d.ts.map +1 -1
  99. package/development/datepicker/datepicker-next-day.js +14 -54
  100. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.d.ts +1 -1
  101. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.d.ts.map +1 -1
  102. package/development/datepicker/datepicker-previous-day.js +14 -54
  103. package/development/datepicker/datepicker-toggle/datepicker-toggle.d.ts +1 -1
  104. package/development/datepicker/datepicker-toggle/datepicker-toggle.d.ts.map +1 -1
  105. package/development/datepicker/datepicker-toggle.js +16 -10
  106. package/development/datepicker/datepicker.js +134 -159
  107. package/development/dialog/dialog.js +1 -1
  108. package/development/file-selector/file-selector.d.ts +0 -1
  109. package/development/file-selector/file-selector.d.ts.map +1 -1
  110. package/development/file-selector.js +6 -5
  111. package/development/form-field/form-field/form-field.d.ts +1 -2
  112. package/development/form-field/form-field/form-field.d.ts.map +1 -1
  113. package/development/form-field/form-field-clear/form-field-clear.d.ts.map +1 -1
  114. package/development/form-field/form-field-clear.js +15 -51
  115. package/development/form-field/form-field.js +8 -7
  116. package/development/icon/icon-request.d.ts.map +1 -1
  117. package/development/icon.js +8 -13
  118. package/development/link/common/link-common.d.ts.map +1 -1
  119. package/development/link/common.js +6 -7
  120. package/development/link-list/link-list.d.ts +0 -1
  121. package/development/link-list/link-list.d.ts.map +1 -1
  122. package/development/link-list.js +5 -5
  123. package/development/map-container.js +5 -2
  124. package/development/navigation/navigation-list/navigation-list.d.ts +0 -1
  125. package/development/navigation/navigation-list/navigation-list.d.ts.map +1 -1
  126. package/development/navigation/navigation-list.js +5 -5
  127. package/development/navigation/navigation-section/navigation-section.d.ts +0 -1
  128. package/development/navigation/navigation-section/navigation-section.d.ts.map +1 -1
  129. package/development/navigation/navigation-section.js +6 -6
  130. package/development/notification/notification.d.ts +5 -16
  131. package/development/notification/notification.d.ts.map +1 -1
  132. package/development/notification.js +8 -9
  133. package/development/option/option/option.d.ts.map +1 -1
  134. package/development/option/option.js +5 -5
  135. package/development/popover/popover/popover.d.ts +3 -1
  136. package/development/popover/popover/popover.d.ts.map +1 -1
  137. package/development/popover/popover-trigger.js +14 -49
  138. package/development/popover/popover.js +11 -4
  139. package/development/radio-button/radio-button/radio-button.d.ts +0 -1
  140. package/development/radio-button/radio-button/radio-button.d.ts.map +1 -1
  141. package/development/radio-button/radio-button-group/radio-button-group.d.ts +0 -1
  142. package/development/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -1
  143. package/development/radio-button/radio-button-group.js +6 -6
  144. package/development/radio-button/radio-button-panel/radio-button-panel.d.ts +0 -1
  145. package/development/radio-button/radio-button-panel/radio-button-panel.d.ts.map +1 -1
  146. package/development/radio-button/radio-button-panel.js +4 -7
  147. package/development/radio-button/radio-button.js +4 -7
  148. package/development/selection-expansion-panel/selection-expansion-panel.d.ts +0 -1
  149. package/development/selection-expansion-panel/selection-expansion-panel.d.ts.map +1 -1
  150. package/development/selection-expansion-panel.js +6 -5
  151. package/development/skiplink-list/skiplink-list.d.ts +0 -1
  152. package/development/skiplink-list/skiplink-list.d.ts.map +1 -1
  153. package/development/skiplink-list.js +5 -5
  154. package/development/status/status.d.ts +0 -1
  155. package/development/status/status.d.ts.map +1 -1
  156. package/development/status.js +5 -5
  157. package/development/stepper/stepper/stepper.d.ts +3 -1
  158. package/development/stepper/stepper/stepper.d.ts.map +1 -1
  159. package/development/stepper/stepper.js +3 -2
  160. package/development/tabs/tab-group/tab-group.d.ts +3 -1
  161. package/development/tabs/tab-group/tab-group.d.ts.map +1 -1
  162. package/development/tabs/tab-group.js +3 -2
  163. package/development/tabs/tab-label/tab-label.d.ts +0 -1
  164. package/development/tabs/tab-label/tab-label.d.ts.map +1 -1
  165. package/development/tabs/tab-label.js +5 -5
  166. package/development/tag/tag/tag.d.ts +0 -1
  167. package/development/tag/tag/tag.d.ts.map +1 -1
  168. package/development/tag/tag.js +6 -5
  169. package/development/teaser/teaser.d.ts +0 -1
  170. package/development/teaser/teaser.d.ts.map +1 -1
  171. package/development/teaser.js +5 -5
  172. package/development/toast/toast.d.ts +1 -2
  173. package/development/toast/toast.d.ts.map +1 -1
  174. package/development/toast.js +10 -8
  175. package/development/toggle/toggle-option/toggle-option.d.ts +0 -1
  176. package/development/toggle/toggle-option/toggle-option.d.ts.map +1 -1
  177. package/development/toggle/toggle-option.js +6 -6
  178. package/development/toggle-check/toggle-check.d.ts +2 -3
  179. package/development/toggle-check/toggle-check.d.ts.map +1 -1
  180. package/development/toggle-check.js +5 -5
  181. package/development/visual-checkbox.js +2 -2
  182. package/dialog/dialog.js +1 -1
  183. package/file-selector/file-selector.d.ts +0 -1
  184. package/file-selector/file-selector.d.ts.map +1 -1
  185. package/file-selector.js +17 -15
  186. package/form-field/form-field/form-field.d.ts +1 -2
  187. package/form-field/form-field/form-field.d.ts.map +1 -1
  188. package/form-field/form-field-clear/form-field-clear.d.ts.map +1 -1
  189. package/form-field/form-field-clear.js +17 -18
  190. package/form-field/form-field.js +16 -14
  191. package/icon/icon-request.d.ts.map +1 -1
  192. package/icon.js +86 -86
  193. package/link/common/link-common.d.ts.map +1 -1
  194. package/link/common.js +9 -9
  195. package/link-list/link-list.d.ts +0 -1
  196. package/link-list/link-list.d.ts.map +1 -1
  197. package/link-list.js +8 -7
  198. package/map-container.js +1 -1
  199. package/navigation/navigation-list/navigation-list.d.ts +0 -1
  200. package/navigation/navigation-list/navigation-list.d.ts.map +1 -1
  201. package/navigation/navigation-list.js +9 -8
  202. package/navigation/navigation-section/navigation-section.d.ts +0 -1
  203. package/navigation/navigation-section/navigation-section.d.ts.map +1 -1
  204. package/navigation/navigation-section.js +10 -9
  205. package/notification/notification.d.ts +5 -16
  206. package/notification/notification.d.ts.map +1 -1
  207. package/notification.js +9 -9
  208. package/option/option/option.d.ts.map +1 -1
  209. package/option/option.js +6 -5
  210. package/package.json +1 -1
  211. package/popover/popover/popover.d.ts +3 -1
  212. package/popover/popover/popover.d.ts.map +1 -1
  213. package/popover/popover-trigger.js +13 -13
  214. package/popover/popover.js +55 -48
  215. package/radio-button/radio-button/radio-button.d.ts +0 -1
  216. package/radio-button/radio-button/radio-button.d.ts.map +1 -1
  217. package/radio-button/radio-button-group/radio-button-group.d.ts +0 -1
  218. package/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -1
  219. package/radio-button/radio-button-group.js +7 -6
  220. package/radio-button/radio-button-panel/radio-button-panel.d.ts +0 -1
  221. package/radio-button/radio-button-panel/radio-button-panel.d.ts.map +1 -1
  222. package/radio-button/radio-button-panel.js +12 -14
  223. package/radio-button/radio-button.js +7 -9
  224. package/selection-expansion-panel/selection-expansion-panel.d.ts +0 -1
  225. package/selection-expansion-panel/selection-expansion-panel.d.ts.map +1 -1
  226. package/selection-expansion-panel.js +15 -13
  227. package/skiplink-list/skiplink-list.d.ts +0 -1
  228. package/skiplink-list/skiplink-list.d.ts.map +1 -1
  229. package/skiplink-list.js +4 -3
  230. package/status/status.d.ts +0 -1
  231. package/status/status.d.ts.map +1 -1
  232. package/status.js +9 -8
  233. package/stepper/stepper/stepper.d.ts +3 -1
  234. package/stepper/stepper/stepper.d.ts.map +1 -1
  235. package/stepper/stepper.js +7 -6
  236. package/tabs/tab-group/tab-group.d.ts +3 -1
  237. package/tabs/tab-group/tab-group.d.ts.map +1 -1
  238. package/tabs/tab-group.js +14 -13
  239. package/tabs/tab-label/tab-label.d.ts +0 -1
  240. package/tabs/tab-label/tab-label.d.ts.map +1 -1
  241. package/tabs/tab-label.js +4 -3
  242. package/tag/tag/tag.d.ts +0 -1
  243. package/tag/tag/tag.d.ts.map +1 -1
  244. package/tag/tag.js +6 -4
  245. package/teaser/teaser.d.ts +0 -1
  246. package/teaser/teaser.d.ts.map +1 -1
  247. package/teaser.js +4 -3
  248. package/toast/toast.d.ts +1 -2
  249. package/toast/toast.d.ts.map +1 -1
  250. package/toast.js +15 -12
  251. package/toggle/toggle-option/toggle-option.d.ts +0 -1
  252. package/toggle/toggle-option/toggle-option.d.ts.map +1 -1
  253. package/toggle/toggle-option.js +12 -11
  254. package/toggle-check/toggle-check.d.ts +2 -3
  255. package/toggle-check/toggle-check.d.ts.map +1 -1
  256. package/toggle-check.js +4 -3
  257. package/visual-checkbox.js +4 -4
@@ -1,6 +1,6 @@
1
1
  import { LitElement, html, nothing } from "lit";
2
2
  import { customElement } from "lit/decorators.js";
3
- import { SbbSlotStateController } from "../core/controllers.js";
3
+ import { slotState } from "../core/decorators.js";
4
4
  import { EventEmitter } from "../core/eventing.js";
5
5
  import { SbbPanelMixin, SbbUpdateSchedulerMixin, panelCommonStyle } from "../core/mixins.js";
6
6
  import { SbbCheckboxCommonElementMixin, checkboxCommonStyle } from "./common.js";
@@ -20,13 +20,12 @@ let SbbCheckboxPanelElement = class extends SbbPanelMixin(
20
20
  SbbCheckboxCommonElementMixin(SbbUpdateSchedulerMixin(LitElement))
21
21
  ) {
22
22
  constructor() {
23
- super();
23
+ super(...arguments);
24
24
  this.stateChange = new EventEmitter(
25
25
  this,
26
26
  SbbCheckboxPanelElement.events.stateChange,
27
27
  { bubbles: true }
28
28
  );
29
- new SbbSlotStateController(this);
30
29
  }
31
30
  async willUpdate(changedProperties) {
32
31
  super.willUpdate(changedProperties);
@@ -78,9 +77,10 @@ SbbCheckboxPanelElement.events = {
78
77
  panelConnected: "panelConnected"
79
78
  };
80
79
  SbbCheckboxPanelElement = __decorateClass([
81
- customElement("sbb-checkbox-panel")
80
+ customElement("sbb-checkbox-panel"),
81
+ slotState()
82
82
  ], SbbCheckboxPanelElement);
83
83
  export {
84
84
  SbbCheckboxPanelElement
85
85
  };
86
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtcGFuZWwuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jaGVja2JveC9jaGVja2JveC1wYW5lbC9jaGVja2JveC1wYW5lbC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBMaXRFbGVtZW50LFxuICBub3RoaW5nLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxufSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgU2JiU2xvdFN0YXRlQ29udHJvbGxlciB9IGZyb20gJy4uLy4uL2NvcmUvY29udHJvbGxlcnMuanMnO1xuaW1wb3J0IHsgRXZlbnRFbWl0dGVyIH0gZnJvbSAnLi4vLi4vY29yZS9ldmVudGluZy5qcyc7XG5pbXBvcnQgdHlwZSB7XG4gIFNiYkNoZWNrZWRTdGF0ZUNoYW5nZSxcbiAgU2JiRGlzYWJsZWRTdGF0ZUNoYW5nZSxcbiAgU2JiU3RhdGVDaGFuZ2UsXG59IGZyb20gJy4uLy4uL2NvcmUvaW50ZXJmYWNlcy90eXBlcy5qcyc7XG5pbXBvcnQgeyBwYW5lbENvbW1vblN0eWxlLCBTYmJQYW5lbE1peGluLCBTYmJVcGRhdGVTY2hlZHVsZXJNaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7IGNoZWNrYm94Q29tbW9uU3R5bGUsIFNiYkNoZWNrYm94Q29tbW9uRWxlbWVudE1peGluIH0gZnJvbSAnLi4vY29tbW9uLmpzJztcblxuaW1wb3J0ICcuLi8uLi9zY3JlZW4tcmVhZGVyLW9ubHkuanMnO1xuaW1wb3J0ICcuLi8uLi92aXN1YWwtY2hlY2tib3guanMnO1xuXG5leHBvcnQgdHlwZSBTYmJDaGVja2JveFBhbmVsU3RhdGVDaGFuZ2UgPSBFeHRyYWN0PFxuICBTYmJTdGF0ZUNoYW5nZSxcbiAgU2JiRGlzYWJsZWRTdGF0ZUNoYW5nZSB8IFNiYkNoZWNrZWRTdGF0ZUNoYW5nZVxuPjtcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBhIGNoZWNrYm94IGVuaGFuY2VkIHdpdGggc2VsZWN0aW9uIHBhbmVsIGRlc2lnbi5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBjb250ZW50IHRvIHRoZSBgc2JiLWNoZWNrYm94YC5cbiAqIEBzbG90IHN1YnRleHQgLSBTbG90IHVzZWQgdG8gcmVuZGVyIGEgc3VidGV4dCB1bmRlciB0aGUgbGFiZWwgKG9ubHkgdmlzaWJsZSB3aXRoaW4gYSBzZWxlY3Rpb24gcGFuZWwpLlxuICogQHNsb3Qgc3VmZml4IC0gU2xvdCB1c2VkIHRvIHJlbmRlciBhZGRpdGlvbmFsIGNvbnRlbnQgYWZ0ZXIgdGhlIGxhYmVsIChvbmx5IHZpc2libGUgd2l0aGluIGEgc2VsZWN0aW9uIHBhbmVsKS5cbiAqIEBzbG90IGJhZGdlIC0gVXNlIHRoaXMgc2xvdCB0byBwcm92aWRlIGEgYHNiYi1jYXJkLWJhZGdlYCAob3B0aW9uYWwpLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gZGlkQ2hhbmdlIC0gRGVwcmVjYXRlZC4gdXNlZCBmb3IgUmVhY3QuIFdpbGwgcHJvYmFibHkgYmUgcmVtb3ZlZCBvbmNlIFJlYWN0IDE5IGlzIGF2YWlsYWJsZS5cbiAqIEBldmVudCB7RXZlbnR9IGNoYW5nZSAtIEV2ZW50IGZpcmVkIG9uIGNoYW5nZS5cbiAqIEBldmVudCB7SW5wdXRFdmVudH0gaW5wdXQgLSBFdmVudCBmaXJlZCBvbiBpbnB1dC5cbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi1jaGVja2JveC1wYW5lbCcpXG5leHBvcnQgY2xhc3MgU2JiQ2hlY2tib3hQYW5lbEVsZW1lbnQgZXh0ZW5kcyBTYmJQYW5lbE1peGluKFxuICBTYmJDaGVja2JveENvbW1vbkVsZW1lbnRNaXhpbihTYmJVcGRhdGVTY2hlZHVsZXJNaXhpbihMaXRFbGVtZW50KSksXG4pIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW2NoZWNrYm94Q29tbW9uU3R5bGUsIHBhbmVsQ29tbW9uU3R5bGVdO1xuXG4gIC8vIEZJWE1FIHVzaW5nIC4uLnN1cGVyLmV2ZW50cyByZXF1aXJlczogaHR0cHM6Ly9naXRodWIuY29tL3NiYi1kZXNpZ24tc3lzdGVtcy9seW5lLWNvbXBvbmVudHMvaXNzdWVzLzI2MDBcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBldmVudHMgPSB7XG4gICAgZGlkQ2hhbmdlOiAnZGlkQ2hhbmdlJyxcbiAgICBzdGF0ZUNoYW5nZTogJ3N0YXRlQ2hhbmdlJyxcbiAgICBwYW5lbENvbm5lY3RlZDogJ3BhbmVsQ29ubmVjdGVkJyxcbiAgfSBhcyBjb25zdDtcblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqIEludGVybmFsIGV2ZW50IHRoYXQgZW1pdHMgd2hlbmV2ZXIgdGhlIHN0YXRlIG9mIHRoZSBjaGVja2JveFxuICAgKiBpbiByZWxhdGlvbiB0byB0aGUgcGFyZW50IHNlbGVjdGlvbiBwYW5lbCBjaGFuZ2VzLlxuICAgKi9cbiAgcHJvdGVjdGVkIHN0YXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8U2JiQ2hlY2tib3hQYW5lbFN0YXRlQ2hhbmdlPiA9IG5ldyBFdmVudEVtaXR0ZXIoXG4gICAgdGhpcyxcbiAgICBTYmJDaGVja2JveFBhbmVsRWxlbWVudC5ldmVudHMuc3RhdGVDaGFuZ2UsXG4gICAgeyBidWJibGVzOiB0cnVlIH0sXG4gICk7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgbmV3IFNiYlNsb3RTdGF0ZUNvbnRyb2xsZXIodGhpcyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgYXN5bmMgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2NoZWNrZWQnKSkge1xuICAgICAgLy8gQXMgU2JiRm9ybUFzc29jaWF0ZWRDaGVja2JveE1peGluIGRvZXMgbm90IHJlZmxlY3QgY2hlY2tlZCBwcm9wZXJ0eSwgd2UgYWRkIGEgZGF0YS1jaGVja2VkLlxuICAgICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtY2hlY2tlZCcsIHRoaXMuY2hlY2tlZCk7XG5cbiAgICAgIGlmICh0aGlzLmNoZWNrZWQgIT09IGNoYW5nZWRQcm9wZXJ0aWVzLmdldCgnY2hlY2tlZCcpISkge1xuICAgICAgICB0aGlzLnN0YXRlQ2hhbmdlLmVtaXQoeyB0eXBlOiAnY2hlY2tlZCcsIGNoZWNrZWQ6IHRoaXMuY2hlY2tlZCB9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnZGlzYWJsZWQnKSkge1xuICAgICAgaWYgKHRoaXMuZGlzYWJsZWQgIT09IGNoYW5nZWRQcm9wZXJ0aWVzLmdldCgnZGlzYWJsZWQnKSEpIHtcbiAgICAgICAgdGhpcy5zdGF0ZUNoYW5nZS5lbWl0KHsgdHlwZTogJ2Rpc2FibGVkJywgZGlzYWJsZWQ6IHRoaXMuZGlzYWJsZWQgfSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8c3BhbiBjbGFzcz1cInNiYi1zZWxlY3Rpb24tcGFuZWxcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1zZWxlY3Rpb24tcGFuZWxfX2JhZGdlXCI+XG4gICAgICAgICAgPHNsb3QgbmFtZT1cImJhZGdlXCI+PC9zbG90PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItY2hlY2tib3gtd3JhcHBlclwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWNoZWNrYm94XCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1jaGVja2JveF9faW5uZXJcIj5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItY2hlY2tib3hfX2FsaWduZXJcIj5cbiAgICAgICAgICAgICAgICA8c2JiLXZpc3VhbC1jaGVja2JveFxuICAgICAgICAgICAgICAgICAgP2NoZWNrZWQ9JHt0aGlzLmNoZWNrZWR9XG4gICAgICAgICAgICAgICAgICA/aW5kZXRlcm1pbmF0ZT0ke3RoaXMuaW5kZXRlcm1pbmF0ZX1cbiAgICAgICAgICAgICAgICAgID9kaXNhYmxlZD0ke3RoaXMuZGlzYWJsZWQgfHwgdGhpcy5mb3JtRGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgPjwvc2JiLXZpc3VhbC1jaGVja2JveD5cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1jaGVja2JveF9fbGFiZWxcIj5cbiAgICAgICAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgICAgICAgICAgPHNsb3QgbmFtZT1cInN1ZmZpeFwiPjwvc2xvdD5cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPHNsb3QgbmFtZT1cInN1YnRleHRcIj48L3Nsb3Q+XG4gICAgICAgICAgICAke3RoaXMuZXhwYW5zaW9uU3RhdGVcbiAgICAgICAgICAgICAgPyBodG1sYDxzYmItc2NyZWVuLXJlYWRlci1vbmx5PiR7dGhpcy5leHBhbnNpb25TdGF0ZX08L3NiYi1zY3JlZW4tcmVhZGVyLW9ubHk+YFxuICAgICAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L3NwYW4+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLWNoZWNrYm94LXBhbmVsJzogU2JiQ2hlY2tib3hQYW5lbEVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUF3Q08sSUFBTSwwQkFBTixjQUFzQztBQUFBLEVBQzNDLDhCQUE4Qix3QkFBd0IsVUFBVSxDQUFDO0FBQ25FLEVBQUU7QUFBQSxFQXFCTyxjQUFjO0FBQ2I7QUFQUixTQUFVLGNBQXlELElBQUk7QUFBQSxNQUNyRTtBQUFBLE1BQ0Esd0JBQXdCLE9BQU87QUFBQSxNQUMvQixFQUFFLFNBQVMsS0FBSztBQUFBLElBQUE7QUFLaEIsUUFBSSx1QkFBdUIsSUFBSTtBQUFBLEVBQ2pDO0FBQUEsRUFFQSxNQUF5QixXQUFXLG1CQUF3RDtBQUMxRixVQUFNLFdBQVcsaUJBQWlCO0FBRTlCLFFBQUEsa0JBQWtCLElBQUksU0FBUyxHQUFHO0FBRS9CLFdBQUEsZ0JBQWdCLGdCQUFnQixLQUFLLE9BQU87QUFFakQsVUFBSSxLQUFLLFlBQVksa0JBQWtCLElBQUksU0FBUyxHQUFJO0FBQ2pELGFBQUEsWUFBWSxLQUFLLEVBQUUsTUFBTSxXQUFXLFNBQVMsS0FBSyxTQUFTO0FBQUEsTUFDbEU7QUFBQSxJQUNGO0FBQ0ksUUFBQSxrQkFBa0IsSUFBSSxVQUFVLEdBQUc7QUFDckMsVUFBSSxLQUFLLGFBQWEsa0JBQWtCLElBQUksVUFBVSxHQUFJO0FBQ25ELGFBQUEsWUFBWSxLQUFLLEVBQUUsTUFBTSxZQUFZLFVBQVUsS0FBSyxVQUFVO0FBQUEsTUFDckU7QUFBQSxJQUNGO0FBQUEsRUFDRjtBQUFBLEVBRW1CLFNBQXlCO0FBQ25DLFdBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSw2QkFVa0IsS0FBSyxPQUFPO0FBQUEsbUNBQ04sS0FBSyxhQUFhO0FBQUEsOEJBQ3ZCLEtBQUssWUFBWSxLQUFLLFlBQVk7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsY0FTbEQsS0FBSyxpQkFDSCwrQkFBK0IsS0FBSyxjQUFjLDhCQUNsRCxPQUFPO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtyQjtBQUNGO0FBNUVhLHdCQUdZLFNBQXlCLENBQUMscUJBQXFCLGdCQUFnQjtBQUgzRSx3QkFNWSxTQUFTO0FBQUEsRUFDOUIsV0FBVztBQUFBLEVBQ1gsYUFBYTtBQUFBLEVBQ2IsZ0JBQWdCO0FBQ2xCO0FBVlcsMEJBQU4sZ0JBQUE7QUFBQSxFQUROLGNBQWMsb0JBQW9CO0FBQUEsR0FDdEIsdUJBQUE7In0=
86
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtcGFuZWwuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jaGVja2JveC9jaGVja2JveC1wYW5lbC9jaGVja2JveC1wYW5lbC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBMaXRFbGVtZW50LFxuICBub3RoaW5nLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxufSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgc2xvdFN0YXRlIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IEV2ZW50RW1pdHRlciB9IGZyb20gJy4uLy4uL2NvcmUvZXZlbnRpbmcuanMnO1xuaW1wb3J0IHR5cGUge1xuICBTYmJDaGVja2VkU3RhdGVDaGFuZ2UsXG4gIFNiYkRpc2FibGVkU3RhdGVDaGFuZ2UsXG4gIFNiYlN0YXRlQ2hhbmdlLFxufSBmcm9tICcuLi8uLi9jb3JlL2ludGVyZmFjZXMvdHlwZXMuanMnO1xuaW1wb3J0IHsgcGFuZWxDb21tb25TdHlsZSwgU2JiUGFuZWxNaXhpbiwgU2JiVXBkYXRlU2NoZWR1bGVyTWl4aW4gfSBmcm9tICcuLi8uLi9jb3JlL21peGlucy5qcyc7XG5pbXBvcnQgeyBjaGVja2JveENvbW1vblN0eWxlLCBTYmJDaGVja2JveENvbW1vbkVsZW1lbnRNaXhpbiB9IGZyb20gJy4uL2NvbW1vbi5qcyc7XG5cbmltcG9ydCAnLi4vLi4vc2NyZWVuLXJlYWRlci1vbmx5LmpzJztcbmltcG9ydCAnLi4vLi4vdmlzdWFsLWNoZWNrYm94LmpzJztcblxuZXhwb3J0IHR5cGUgU2JiQ2hlY2tib3hQYW5lbFN0YXRlQ2hhbmdlID0gRXh0cmFjdDxcbiAgU2JiU3RhdGVDaGFuZ2UsXG4gIFNiYkRpc2FibGVkU3RhdGVDaGFuZ2UgfCBTYmJDaGVja2VkU3RhdGVDaGFuZ2Vcbj47XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYSBjaGVja2JveCBlbmhhbmNlZCB3aXRoIHNlbGVjdGlvbiBwYW5lbCBkZXNpZ24uXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgY29udGVudCB0byB0aGUgYHNiYi1jaGVja2JveGAuXG4gKiBAc2xvdCBzdWJ0ZXh0IC0gU2xvdCB1c2VkIHRvIHJlbmRlciBhIHN1YnRleHQgdW5kZXIgdGhlIGxhYmVsIChvbmx5IHZpc2libGUgd2l0aGluIGEgc2VsZWN0aW9uIHBhbmVsKS5cbiAqIEBzbG90IHN1ZmZpeCAtIFNsb3QgdXNlZCB0byByZW5kZXIgYWRkaXRpb25hbCBjb250ZW50IGFmdGVyIHRoZSBsYWJlbCAob25seSB2aXNpYmxlIHdpdGhpbiBhIHNlbGVjdGlvbiBwYW5lbCkuXG4gKiBAc2xvdCBiYWRnZSAtIFVzZSB0aGlzIHNsb3QgdG8gcHJvdmlkZSBhIGBzYmItY2FyZC1iYWRnZWAgKG9wdGlvbmFsKS5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8dm9pZD59IGRpZENoYW5nZSAtIERlcHJlY2F0ZWQuIHVzZWQgZm9yIFJlYWN0LiBXaWxsIHByb2JhYmx5IGJlIHJlbW92ZWQgb25jZSBSZWFjdCAxOSBpcyBhdmFpbGFibGUuXG4gKiBAZXZlbnQge0V2ZW50fSBjaGFuZ2UgLSBFdmVudCBmaXJlZCBvbiBjaGFuZ2UuXG4gKiBAZXZlbnQge0lucHV0RXZlbnR9IGlucHV0IC0gRXZlbnQgZmlyZWQgb24gaW5wdXQuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItY2hlY2tib3gtcGFuZWwnKVxuQHNsb3RTdGF0ZSgpXG5leHBvcnQgY2xhc3MgU2JiQ2hlY2tib3hQYW5lbEVsZW1lbnQgZXh0ZW5kcyBTYmJQYW5lbE1peGluKFxuICBTYmJDaGVja2JveENvbW1vbkVsZW1lbnRNaXhpbihTYmJVcGRhdGVTY2hlZHVsZXJNaXhpbihMaXRFbGVtZW50KSksXG4pIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW2NoZWNrYm94Q29tbW9uU3R5bGUsIHBhbmVsQ29tbW9uU3R5bGVdO1xuXG4gIC8vIEZJWE1FIHVzaW5nIC4uLnN1cGVyLmV2ZW50cyByZXF1aXJlczogaHR0cHM6Ly9naXRodWIuY29tL3NiYi1kZXNpZ24tc3lzdGVtcy9seW5lLWNvbXBvbmVudHMvaXNzdWVzLzI2MDBcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBldmVudHMgPSB7XG4gICAgZGlkQ2hhbmdlOiAnZGlkQ2hhbmdlJyxcbiAgICBzdGF0ZUNoYW5nZTogJ3N0YXRlQ2hhbmdlJyxcbiAgICBwYW5lbENvbm5lY3RlZDogJ3BhbmVsQ29ubmVjdGVkJyxcbiAgfSBhcyBjb25zdDtcblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqIEludGVybmFsIGV2ZW50IHRoYXQgZW1pdHMgd2hlbmV2ZXIgdGhlIHN0YXRlIG9mIHRoZSBjaGVja2JveFxuICAgKiBpbiByZWxhdGlvbiB0byB0aGUgcGFyZW50IHNlbGVjdGlvbiBwYW5lbCBjaGFuZ2VzLlxuICAgKi9cbiAgcHJvdGVjdGVkIHN0YXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8U2JiQ2hlY2tib3hQYW5lbFN0YXRlQ2hhbmdlPiA9IG5ldyBFdmVudEVtaXR0ZXIoXG4gICAgdGhpcyxcbiAgICBTYmJDaGVja2JveFBhbmVsRWxlbWVudC5ldmVudHMuc3RhdGVDaGFuZ2UsXG4gICAgeyBidWJibGVzOiB0cnVlIH0sXG4gICk7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGFzeW5jIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdjaGVja2VkJykpIHtcbiAgICAgIC8vIEFzIFNiYkZvcm1Bc3NvY2lhdGVkQ2hlY2tib3hNaXhpbiBkb2VzIG5vdCByZWZsZWN0IGNoZWNrZWQgcHJvcGVydHksIHdlIGFkZCBhIGRhdGEtY2hlY2tlZC5cbiAgICAgIHRoaXMudG9nZ2xlQXR0cmlidXRlKCdkYXRhLWNoZWNrZWQnLCB0aGlzLmNoZWNrZWQpO1xuXG4gICAgICBpZiAodGhpcy5jaGVja2VkICE9PSBjaGFuZ2VkUHJvcGVydGllcy5nZXQoJ2NoZWNrZWQnKSEpIHtcbiAgICAgICAgdGhpcy5zdGF0ZUNoYW5nZS5lbWl0KHsgdHlwZTogJ2NoZWNrZWQnLCBjaGVja2VkOiB0aGlzLmNoZWNrZWQgfSk7XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2Rpc2FibGVkJykpIHtcbiAgICAgIGlmICh0aGlzLmRpc2FibGVkICE9PSBjaGFuZ2VkUHJvcGVydGllcy5nZXQoJ2Rpc2FibGVkJykhKSB7XG4gICAgICAgIHRoaXMuc3RhdGVDaGFuZ2UuZW1pdCh7IHR5cGU6ICdkaXNhYmxlZCcsIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkIH0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPHNwYW4gY2xhc3M9XCJzYmItc2VsZWN0aW9uLXBhbmVsXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItc2VsZWN0aW9uLXBhbmVsX19iYWRnZVwiPlxuICAgICAgICAgIDxzbG90IG5hbWU9XCJiYWRnZVwiPjwvc2xvdD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWNoZWNrYm94LXdyYXBwZXJcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1jaGVja2JveFwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItY2hlY2tib3hfX2lubmVyXCI+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWNoZWNrYm94X19hbGlnbmVyXCI+XG4gICAgICAgICAgICAgICAgPHNiYi12aXN1YWwtY2hlY2tib3hcbiAgICAgICAgICAgICAgICAgID9jaGVja2VkPSR7dGhpcy5jaGVja2VkfVxuICAgICAgICAgICAgICAgICAgP2luZGV0ZXJtaW5hdGU9JHt0aGlzLmluZGV0ZXJtaW5hdGV9XG4gICAgICAgICAgICAgICAgICA/ZGlzYWJsZWQ9JHt0aGlzLmRpc2FibGVkIHx8IHRoaXMuZm9ybURpc2FibGVkfVxuICAgICAgICAgICAgICAgID48L3NiYi12aXN1YWwtY2hlY2tib3g+XG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItY2hlY2tib3hfX2xhYmVsXCI+XG4gICAgICAgICAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgICAgICAgICAgIDxzbG90IG5hbWU9XCJzdWZmaXhcIj48L3Nsb3Q+XG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDxzbG90IG5hbWU9XCJzdWJ0ZXh0XCI+PC9zbG90PlxuICAgICAgICAgICAgJHt0aGlzLmV4cGFuc2lvblN0YXRlXG4gICAgICAgICAgICAgID8gaHRtbGA8c2JiLXNjcmVlbi1yZWFkZXItb25seT4ke3RoaXMuZXhwYW5zaW9uU3RhdGV9PC9zYmItc2NyZWVuLXJlYWRlci1vbmx5PmBcbiAgICAgICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9zcGFuPlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1jaGVja2JveC1wYW5lbCc6IFNiYkNoZWNrYm94UGFuZWxFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBeUNPLElBQU0sMEJBQU4sY0FBc0M7QUFBQSxFQUMzQyw4QkFBOEIsd0JBQXdCLFVBQVUsQ0FBQztBQUNuRSxFQUFFO0FBQUEsRUFGSyxjQUFBO0FBQUEsVUFBQSxHQUFBLFNBQUE7QUFpQkwsU0FBVSxjQUF5RCxJQUFJO0FBQUEsTUFDckU7QUFBQSxNQUNBLHdCQUF3QixPQUFPO0FBQUEsTUFDL0IsRUFBRSxTQUFTLEtBQUs7QUFBQSxJQUFBO0FBQUEsRUFDbEI7QUFBQSxFQUVBLE1BQXlCLFdBQVcsbUJBQXdEO0FBQzFGLFVBQU0sV0FBVyxpQkFBaUI7QUFFOUIsUUFBQSxrQkFBa0IsSUFBSSxTQUFTLEdBQUc7QUFFL0IsV0FBQSxnQkFBZ0IsZ0JBQWdCLEtBQUssT0FBTztBQUVqRCxVQUFJLEtBQUssWUFBWSxrQkFBa0IsSUFBSSxTQUFTLEdBQUk7QUFDakQsYUFBQSxZQUFZLEtBQUssRUFBRSxNQUFNLFdBQVcsU0FBUyxLQUFLLFNBQVM7QUFBQSxNQUNsRTtBQUFBLElBQ0Y7QUFDSSxRQUFBLGtCQUFrQixJQUFJLFVBQVUsR0FBRztBQUNyQyxVQUFJLEtBQUssYUFBYSxrQkFBa0IsSUFBSSxVQUFVLEdBQUk7QUFDbkQsYUFBQSxZQUFZLEtBQUssRUFBRSxNQUFNLFlBQVksVUFBVSxLQUFLLFVBQVU7QUFBQSxNQUNyRTtBQUFBLElBQ0Y7QUFBQSxFQUNGO0FBQUEsRUFFbUIsU0FBeUI7QUFDbkMsV0FBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLDZCQVVrQixLQUFLLE9BQU87QUFBQSxtQ0FDTixLQUFLLGFBQWE7QUFBQSw4QkFDdkIsS0FBSyxZQUFZLEtBQUssWUFBWTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxjQVNsRCxLQUFLLGlCQUNILCtCQUErQixLQUFLLGNBQWMsOEJBQ2xELE9BQU87QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS3JCO0FBQ0Y7QUF2RWEsd0JBR1ksU0FBeUIsQ0FBQyxxQkFBcUIsZ0JBQWdCO0FBSDNFLHdCQU1ZLFNBQVM7QUFBQSxFQUM5QixXQUFXO0FBQUEsRUFDWCxhQUFhO0FBQUEsRUFDYixnQkFBZ0I7QUFDbEI7QUFWVywwQkFBTixnQkFBQTtBQUFBLEVBRk4sY0FBYyxvQkFBb0I7QUFBQSxFQUNsQyxVQUFVO0FBQUEsR0FDRSx1QkFBQTsifQ==
@@ -1,6 +1,6 @@
1
1
  import { css, LitElement, html } from "lit";
2
2
  import { property, customElement } from "lit/decorators.js";
3
- import { SbbSlotStateController } from "../core/controllers.js";
3
+ import { slotState } from "../core/decorators.js";
4
4
  import { SbbIconNameMixin } from "../icon.js";
5
5
  import { SbbCheckboxCommonElementMixin, checkboxCommonStyle } from "./common.js";
6
6
  import "../visual-checkbox.js";
@@ -67,9 +67,8 @@ let SbbCheckboxElement = class extends SbbCheckboxCommonElementMixin(
67
67
  SbbIconNameMixin(LitElement)
68
68
  ) {
69
69
  constructor() {
70
- super();
70
+ super(...arguments);
71
71
  this.iconPlacement = "end";
72
- new SbbSlotStateController(this);
73
72
  }
74
73
  render() {
75
74
  return html`
@@ -103,9 +102,10 @@ __decorateClass([
103
102
  property({ attribute: "icon-placement", reflect: true })
104
103
  ], SbbCheckboxElement.prototype, "iconPlacement", 2);
105
104
  SbbCheckboxElement = __decorateClass([
106
- customElement("sbb-checkbox")
105
+ customElement("sbb-checkbox"),
106
+ slotState()
107
107
  ], SbbCheckboxElement);
108
108
  export {
109
109
  SbbCheckboxElement
110
110
  };
111
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jaGVja2JveC9jaGVja2JveC9jaGVja2JveC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMaXRFbGVtZW50LCBodG1sLCB0eXBlIENTU1Jlc3VsdEdyb3VwLCB0eXBlIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBTYmJTbG90U3RhdGVDb250cm9sbGVyIH0gZnJvbSAnLi4vLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYkljb25QbGFjZW1lbnQgfSBmcm9tICcuLi8uLi9jb3JlL2ludGVyZmFjZXMuanMnO1xuaW1wb3J0IHsgU2JiSWNvbk5hbWVNaXhpbiB9IGZyb20gJy4uLy4uL2ljb24uanMnO1xuaW1wb3J0IHsgU2JiQ2hlY2tib3hDb21tb25FbGVtZW50TWl4aW4sIGNoZWNrYm94Q29tbW9uU3R5bGUgfSBmcm9tICcuLi9jb21tb24uanMnO1xuXG5pbXBvcnQgJy4uLy4uL3Zpc3VhbC1jaGVja2JveC5qcyc7XG5cbmltcG9ydCBjaGVja2JveFN0eWxlIGZyb20gJy4vY2hlY2tib3guc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBhIGNoZWNrYm94IGVuaGFuY2VkIHdpdGggdGhlIFNCQiBEZXNpZ24uXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgY29udGVudCB0byB0aGUgYHNiYi1jaGVja2JveGAuXG4gKiBAc2xvdCBpY29uIC0gU2xvdCB1c2VkIHRvIHJlbmRlciB0aGUgY2hlY2tib3ggaWNvbiAoZGlzYWJsZWQgaW5zaWRlIGEgc2VsZWN0aW9uIHBhbmVsKS5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8dm9pZD59IGRpZENoYW5nZSAtIERlcHJlY2F0ZWQuIHVzZWQgZm9yIFJlYWN0LiBXaWxsIHByb2JhYmx5IGJlIHJlbW92ZWQgb25jZSBSZWFjdCAxOSBpcyBhdmFpbGFibGUuXG4gKiBAZXZlbnQge0V2ZW50fSBjaGFuZ2UgLSBFdmVudCBmaXJlZCBvbiBjaGFuZ2UuXG4gKiBAZXZlbnQge0lucHV0RXZlbnR9IGlucHV0IC0gRXZlbnQgZmlyZWQgb24gaW5wdXQuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItY2hlY2tib3gnKVxuZXhwb3J0IGNsYXNzIFNiYkNoZWNrYm94RWxlbWVudCBleHRlbmRzIFNiYkNoZWNrYm94Q29tbW9uRWxlbWVudE1peGluKFxuICBTYmJJY29uTmFtZU1peGluKExpdEVsZW1lbnQpLFxuKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtjaGVja2JveENvbW1vblN0eWxlLCBjaGVja2JveFN0eWxlXTtcblxuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGV2ZW50cyA9IHtcbiAgICBkaWRDaGFuZ2U6ICdkaWRDaGFuZ2UnLFxuICB9IGFzIGNvbnN0O1xuXG4gIC8qKiBUaGUgbGFiZWwgcG9zaXRpb24gcmVsYXRpdmUgdG8gdGhlIGxhYmVsSWNvbi4gRGVmYXVsdHMgdG8gZW5kICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2ljb24tcGxhY2VtZW50JywgcmVmbGVjdDogdHJ1ZSB9KVxuICBwdWJsaWMgaWNvblBsYWNlbWVudDogU2JiSWNvblBsYWNlbWVudCA9ICdlbmQnO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIG5ldyBTYmJTbG90U3RhdGVDb250cm9sbGVyKHRoaXMpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8c3BhbiBjbGFzcz1cInNiYi1jaGVja2JveC13cmFwcGVyXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWNoZWNrYm94XCI+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItY2hlY2tib3hfX2lubmVyXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1jaGVja2JveF9fYWxpZ25lclwiPlxuICAgICAgICAgICAgICA8c2JiLXZpc3VhbC1jaGVja2JveFxuICAgICAgICAgICAgICAgID9jaGVja2VkPSR7dGhpcy5jaGVja2VkfVxuICAgICAgICAgICAgICAgID9pbmRldGVybWluYXRlPSR7dGhpcy5pbmRldGVybWluYXRlfVxuICAgICAgICAgICAgICAgID9kaXNhYmxlZD0ke3RoaXMuZGlzYWJsZWQgfHwgdGhpcy5mb3JtRGlzYWJsZWR9XG4gICAgICAgICAgICAgID48L3NiYi12aXN1YWwtY2hlY2tib3g+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1jaGVja2JveF9fbGFiZWxcIj5cbiAgICAgICAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1jaGVja2JveF9fbGFiZWwtLWljb24gc2JiLWNoZWNrYm94X19hbGlnbmVyXCJcbiAgICAgICAgICAgICAgICA+JHt0aGlzLnJlbmRlckljb25TbG90KCl9PC9zcGFuXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvc3Bhbj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItY2hlY2tib3gnOiBTYmJDaGVja2JveEVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXNCTyxJQUFNLHFCQUFOLGNBQWlDO0FBQUEsRUFDdEMsaUJBQWlCLFVBQVU7QUFDN0IsRUFBRTtBQUFBLEVBV08sY0FBYztBQUNiO0FBSFIsU0FBTyxnQkFBa0M7QUFJdkMsUUFBSSx1QkFBdUIsSUFBSTtBQUFBLEVBQ2pDO0FBQUEsRUFFbUIsU0FBeUI7QUFDbkMsV0FBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSwyQkFNZ0IsS0FBSyxPQUFPO0FBQUEsaUNBQ04sS0FBSyxhQUFhO0FBQUEsNEJBQ3ZCLEtBQUssWUFBWSxLQUFLLFlBQVk7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsbUJBTTNDLEtBQUssZ0JBQWdCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPdEM7QUFDRjtBQXpDYSxtQkFHWSxTQUF5QixDQUFDLHFCQUFxQixhQUFhO0FBSHhFLG1CQUtZLFNBQVM7QUFBQSxFQUM5QixXQUFXO0FBQ2I7QUFJTyxnQkFBQTtBQUFBLEVBRE4sU0FBUyxFQUFFLFdBQVcsa0JBQWtCLFNBQVMsTUFBTTtBQUFBLEdBVjdDLG1CQVdKLFdBQUEsaUJBQUEsQ0FBQTtBQVhJLHFCQUFOLGdCQUFBO0FBQUEsRUFETixjQUFjLGNBQWM7QUFBQSxHQUNoQixrQkFBQTsifQ==
111
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jaGVja2JveC9jaGVja2JveC9jaGVja2JveC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMaXRFbGVtZW50LCBodG1sLCB0eXBlIENTU1Jlc3VsdEdyb3VwLCB0eXBlIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBzbG90U3RhdGUgfSBmcm9tICcuLi8uLi9jb3JlL2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJJY29uUGxhY2VtZW50IH0gZnJvbSAnLi4vLi4vY29yZS9pbnRlcmZhY2VzLmpzJztcbmltcG9ydCB7IFNiYkljb25OYW1lTWl4aW4gfSBmcm9tICcuLi8uLi9pY29uLmpzJztcbmltcG9ydCB7IFNiYkNoZWNrYm94Q29tbW9uRWxlbWVudE1peGluLCBjaGVja2JveENvbW1vblN0eWxlIH0gZnJvbSAnLi4vY29tbW9uLmpzJztcblxuaW1wb3J0IGNoZWNrYm94U3R5bGUgZnJvbSAnLi9jaGVja2JveC5zY3NzP2xpdCZpbmxpbmUnO1xuXG5pbXBvcnQgJy4uLy4uL3Zpc3VhbC1jaGVja2JveC5qcyc7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYSBjaGVja2JveCBlbmhhbmNlZCB3aXRoIHRoZSBTQkIgRGVzaWduLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIGBzYmItY2hlY2tib3hgLlxuICogQHNsb3QgaWNvbiAtIFNsb3QgdXNlZCB0byByZW5kZXIgdGhlIGNoZWNrYm94IGljb24gKGRpc2FibGVkIGluc2lkZSBhIHNlbGVjdGlvbiBwYW5lbCkuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSBkaWRDaGFuZ2UgLSBEZXByZWNhdGVkLiB1c2VkIGZvciBSZWFjdC4gV2lsbCBwcm9iYWJseSBiZSByZW1vdmVkIG9uY2UgUmVhY3QgMTkgaXMgYXZhaWxhYmxlLlxuICogQGV2ZW50IHtFdmVudH0gY2hhbmdlIC0gRXZlbnQgZmlyZWQgb24gY2hhbmdlLlxuICogQGV2ZW50IHtJbnB1dEV2ZW50fSBpbnB1dCAtIEV2ZW50IGZpcmVkIG9uIGlucHV0LlxuICovXG5AY3VzdG9tRWxlbWVudCgnc2JiLWNoZWNrYm94JylcbkBzbG90U3RhdGUoKVxuZXhwb3J0IGNsYXNzIFNiYkNoZWNrYm94RWxlbWVudCBleHRlbmRzIFNiYkNoZWNrYm94Q29tbW9uRWxlbWVudE1peGluKFxuICBTYmJJY29uTmFtZU1peGluKExpdEVsZW1lbnQpLFxuKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtjaGVja2JveENvbW1vblN0eWxlLCBjaGVja2JveFN0eWxlXTtcblxuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGV2ZW50cyA9IHtcbiAgICBkaWRDaGFuZ2U6ICdkaWRDaGFuZ2UnLFxuICB9IGFzIGNvbnN0O1xuXG4gIC8qKiBUaGUgbGFiZWwgcG9zaXRpb24gcmVsYXRpdmUgdG8gdGhlIGxhYmVsSWNvbi4gRGVmYXVsdHMgdG8gZW5kICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2ljb24tcGxhY2VtZW50JywgcmVmbGVjdDogdHJ1ZSB9KVxuICBwdWJsaWMgaWNvblBsYWNlbWVudDogU2JiSWNvblBsYWNlbWVudCA9ICdlbmQnO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPHNwYW4gY2xhc3M9XCJzYmItY2hlY2tib3gtd3JhcHBlclwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1jaGVja2JveFwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWNoZWNrYm94X19pbm5lclwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItY2hlY2tib3hfX2FsaWduZXJcIj5cbiAgICAgICAgICAgICAgPHNiYi12aXN1YWwtY2hlY2tib3hcbiAgICAgICAgICAgICAgICA/Y2hlY2tlZD0ke3RoaXMuY2hlY2tlZH1cbiAgICAgICAgICAgICAgICA/aW5kZXRlcm1pbmF0ZT0ke3RoaXMuaW5kZXRlcm1pbmF0ZX1cbiAgICAgICAgICAgICAgICA/ZGlzYWJsZWQ9JHt0aGlzLmRpc2FibGVkIHx8IHRoaXMuZm9ybURpc2FibGVkfVxuICAgICAgICAgICAgICA+PC9zYmItdmlzdWFsLWNoZWNrYm94PlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItY2hlY2tib3hfX2xhYmVsXCI+XG4gICAgICAgICAgICAgIDxzbG90Pjwvc2xvdD5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItY2hlY2tib3hfX2xhYmVsLS1pY29uIHNiYi1jaGVja2JveF9fYWxpZ25lclwiXG4gICAgICAgICAgICAgICAgPiR7dGhpcy5yZW5kZXJJY29uU2xvdCgpfTwvc3BhblxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L3NwYW4+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLWNoZWNrYm94JzogU2JiQ2hlY2tib3hFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUF1Qk8sSUFBTSxxQkFBTixjQUFpQztBQUFBLEVBQ3RDLGlCQUFpQixVQUFVO0FBQzdCLEVBQUU7QUFBQSxFQUZLLGNBQUE7QUFBQSxVQUFBLEdBQUEsU0FBQTtBQVdMLFNBQU8sZ0JBQWtDO0FBQUEsRUFBQTtBQUFBLEVBRXRCLFNBQXlCO0FBQ25DLFdBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsMkJBTWdCLEtBQUssT0FBTztBQUFBLGlDQUNOLEtBQUssYUFBYTtBQUFBLDRCQUN2QixLQUFLLFlBQVksS0FBSyxZQUFZO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLG1CQU0zQyxLQUFLLGdCQUFnQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT3RDO0FBQ0Y7QUFwQ2EsbUJBR1ksU0FBeUIsQ0FBQyxxQkFBcUIsYUFBYTtBQUh4RSxtQkFLWSxTQUFTO0FBQUEsRUFDOUIsV0FBVztBQUNiO0FBSU8sZ0JBQUE7QUFBQSxFQUROLFNBQVMsRUFBRSxXQUFXLGtCQUFrQixTQUFTLE1BQU07QUFBQSxHQVY3QyxtQkFXSixXQUFBLGlCQUFBLENBQUE7QUFYSSxxQkFBTixnQkFBQTtBQUFBLEVBRk4sY0FBYyxjQUFjO0FBQUEsRUFDNUIsVUFBVTtBQUFBLEdBQ0Usa0JBQUE7In0=
@@ -29,16 +29,19 @@ export declare class SbbClockElement extends LitElement {
29
29
  private _moveMinutesHandFn;
30
30
  /** Move the minutes hand every minute. */
31
31
  private _handMovement?;
32
- protected willUpdate(changedProperties: PropertyValues<this>): void;
32
+ protected willUpdate(changedProperties: PropertyValues<this>): Promise<void>;
33
+ protected firstUpdated(changedProperties: PropertyValues<this>): Promise<void>;
34
+ disconnectedCallback(): void;
33
35
  private _handlePageVisibilityChange;
34
- private _addEventListeners;
35
- private _removeEventListeners;
36
- private _removeHoursAnimationStyles;
37
- private _removeSecondsAnimationStyles;
38
- /** Given the current date, calculates the hh/mm/ss values and the hh/mm/ss left to the next midnight. */
39
- private _assignCurrentTime;
36
+ private _startOrConfigureClock;
37
+ /** Starts the clock by defining the hands starting position then starting the animations. */
38
+ private _startClock;
39
+ /** Stops the clock by removing all the animations. */
40
+ private _stopClock;
40
41
  /** Set the starting position for the three hands on the clock face. */
41
42
  private _setHandsStartingPosition;
43
+ /** Given the current date, calculates the hh/mm/ss values and the hh/mm/ss left to the next midnight. */
44
+ private _assignCurrentTime;
42
45
  /** Set the starting position for the minutes hand. */
43
46
  private _setMinutesHand;
44
47
  /** Move the hours hand to the next value. */
@@ -46,12 +49,15 @@ export declare class SbbClockElement extends LitElement {
46
49
  /** Move the minutes hand to the next value. */
47
50
  private _moveMinutesHand;
48
51
  private _addMinutesAndSetHands;
49
- /** Stops the clock by removing all the animations. */
50
- private _stopClock;
51
- /** Starts the clock by defining the hands starting position then starting the animations. */
52
- private _startClock;
53
- protected firstUpdated(changedProperties: PropertyValues<this>): Promise<void>;
54
- disconnectedCallback(): void;
52
+ /**
53
+ * Removing animation by overriding with empty string,
54
+ * then triggering a reflow and re add original animation by removing override.
55
+ * @private
56
+ */
57
+ private _resetSecondsHandAnimation;
58
+ private _removeEventListeners;
59
+ private _removeHoursAnimationStyles;
60
+ private _removeSecondsAnimationStyles;
55
61
  protected render(): TemplateResult;
56
62
  }
57
63
  declare global {
@@ -1 +1 @@
1
- {"version":3,"file":"clock.d.ts","sourceRoot":"","sources":["../../../../src/elements/clock/clock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1E,OAAO,EAAkB,UAAU,EAAE,MAAM,KAAK,CAAC;AAIjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AA2CrD;;GAEG;AACH,qBACa,eAAgB,SAAQ,UAAU;IAC7C,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD;;;OAGG;IACgB,GAAG,EAAE,OAAO,GAAG,IAAI,CAAQ;IAE9C,kCAAkC;IAClC,OAAO,CAAC,eAAe,CAAe;IAEtC,oCAAoC;IACpC,OAAO,CAAC,iBAAiB,CAAe;IAExC,oCAAoC;IACpC,OAAO,CAAC,iBAAiB,CAAe;IAExC,wCAAwC;IACxC,OAAO,CAAC,MAAM,CAAU;IAExB,0CAA0C;IAC1C,OAAO,CAAC,QAAQ,CAAU;IAE1B,0CAA0C;IAC1C,OAAO,CAAC,QAAQ,CAAU;IAE1B,wCAAwC;IACxC,OAAO,CAAC,gBAAgB,CAAqC;IAE7D,0CAA0C;IAC1C,OAAO,CAAC,kBAAkB,CAAuC;IAEjE,0CAA0C;IAC1C,OAAO,CAAC,aAAa,CAAC,CAAiC;cAEpC,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAc5E,OAAO,CAAC,2BAA2B,CAMjC;IAEF,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,2BAA2B;IAMnC,OAAO,CAAC,6BAA6B;IAOrC,yGAAyG;IACzG,OAAO,CAAC,kBAAkB;IAW1B,uEAAuE;IACvE,OAAO,CAAC,yBAAyB;IA6CjC,sDAAsD;IACtD,OAAO,CAAC,eAAe;IAOvB,6CAA6C;IAC7C,OAAO,CAAC,cAAc;IAYtB,+CAA+C;IAC/C,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,sBAAsB;IAK9B,sDAAsD;YACxC,UAAU;IAyBxB,6FAA6F;YAC/E,WAAW;cAiBA,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAc7E,oBAAoB,IAAI,IAAI;cAKzB,MAAM,IAAI,cAAc;CA4B5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,WAAW,EAAE,eAAe,CAAC;KAC9B;CACF"}
1
+ {"version":3,"file":"clock.d.ts","sourceRoot":"","sources":["../../../../src/elements/clock/clock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1E,OAAO,EAAkB,UAAU,EAAE,MAAM,KAAK,CAAC;AAIjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AA2CrD;;GAEG;AACH,qBACa,eAAgB,SAAQ,UAAU;IAC7C,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD;;;OAGG;IACgB,GAAG,EAAE,OAAO,GAAG,IAAI,CAAQ;IAE9C,kCAAkC;IAClC,OAAO,CAAC,eAAe,CAAe;IAEtC,oCAAoC;IACpC,OAAO,CAAC,iBAAiB,CAAe;IAExC,oCAAoC;IACpC,OAAO,CAAC,iBAAiB,CAAe;IAExC,wCAAwC;IACxC,OAAO,CAAC,MAAM,CAAU;IAExB,0CAA0C;IAC1C,OAAO,CAAC,QAAQ,CAAU;IAE1B,0CAA0C;IAC1C,OAAO,CAAC,QAAQ,CAAU;IAE1B,wCAAwC;IACxC,OAAO,CAAC,gBAAgB,CAAqC;IAE7D,0CAA0C;IAC1C,OAAO,CAAC,kBAAkB,CAAuC;IAEjE,0CAA0C;IAC1C,OAAO,CAAC,aAAa,CAAC,CAAiC;cAE9B,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;cAQlE,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAS7E,oBAAoB,IAAI,IAAI;IAK5C,OAAO,CAAC,2BAA2B,CAMjC;YAEY,sBAAsB;IAUpC,6FAA6F;YAC/E,WAAW;IAqBzB,sDAAsD;YACxC,UAAU;IAcxB,uEAAuE;IACvE,OAAO,CAAC,yBAAyB;IA4CjC,yGAAyG;IACzG,OAAO,CAAC,kBAAkB;IAW1B,sDAAsD;IACtD,OAAO,CAAC,eAAe;IAOvB,6CAA6C;IAC7C,OAAO,CAAC,cAAc;IAYtB,+CAA+C;IAC/C,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,sBAAsB;IAK9B;;;;OAIG;IACH,OAAO,CAAC,0BAA0B;IAUlC,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,2BAA2B;IAMnC,OAAO,CAAC,6BAA6B;cAOlB,MAAM,IAAI,cAAc;CA4B5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,WAAW,EAAE,eAAe,CAAC;KAC9B;CACF"}
@@ -177,52 +177,67 @@ let SbbClockElement = class extends LitElement {
177
177
  }
178
178
  };
179
179
  }
180
- willUpdate(changedProperties) {
180
+ async willUpdate(changedProperties) {
181
181
  super.willUpdate(changedProperties);
182
182
  if (!isServer && changedProperties.has("now")) {
183
- if (this.now) {
184
- this._removeSecondsAnimationStyles();
185
- this._removeHoursAnimationStyles();
186
- this._stopClock();
187
- } else {
188
- this._startClock();
189
- }
183
+ await this._startOrConfigureClock();
190
184
  }
191
185
  }
192
- _addEventListeners() {
193
- document.addEventListener("visibilitychange", this._handlePageVisibilityChange, false);
186
+ async firstUpdated(changedProperties) {
187
+ super.firstUpdated(changedProperties);
188
+ if (!isServer) {
189
+ document.addEventListener("visibilitychange", this._handlePageVisibilityChange, false);
190
+ await this._startOrConfigureClock();
191
+ }
194
192
  }
195
- _removeEventListeners() {
196
- var _a, _b;
197
- document == null ? void 0 : document.removeEventListener("visibilitychange", this._handlePageVisibilityChange);
198
- (_a = this._clockHandHours) == null ? void 0 : _a.removeEventListener("animationend", this._moveHoursHandFn);
199
- (_b = this._clockHandSeconds) == null ? void 0 : _b.removeEventListener("animationend", this._moveMinutesHandFn);
200
- clearInterval(this._handMovement);
193
+ disconnectedCallback() {
194
+ super.disconnectedCallback();
195
+ this._removeEventListeners();
201
196
  }
202
- _removeHoursAnimationStyles() {
203
- var _a;
204
- (_a = this._clockHandHours) == null ? void 0 : _a.classList.remove("sbb-clock__hand-hours--initial-hour");
205
- this.style.removeProperty("--sbb-clock-hours-animation-start-angle");
206
- this.style.removeProperty("--sbb-clock-hours-animation-duration");
197
+ async _startOrConfigureClock() {
198
+ if (this.now) {
199
+ await this._stopClock();
200
+ this._resetSecondsHandAnimation();
201
+ this._setHandsStartingPosition();
202
+ } else {
203
+ await this._startClock();
204
+ }
207
205
  }
208
- _removeSecondsAnimationStyles() {
206
+ /** Starts the clock by defining the hands starting position then starting the animations. */
207
+ async _startClock() {
209
208
  var _a, _b;
210
- (_a = this._clockHandSeconds) == null ? void 0 : _a.classList.remove("sbb-clock__hand-seconds--initial-minute");
211
- (_b = this._clockHandMinutes) == null ? void 0 : _b.classList.remove("sbb-clock__hand-minutes--no-transition");
212
- this.style.removeProperty("--sbb-clock-seconds-animation-start-angle");
213
- this.style.removeProperty("--sbb-clock-seconds-animation-duration");
209
+ (_a = this._clockHandHours) == null ? void 0 : _a.addEventListener(
210
+ "animationend",
211
+ this._moveHoursHandFn,
212
+ ADD_EVENT_LISTENER_OPTIONS
213
+ );
214
+ (_b = this._clockHandSeconds) == null ? void 0 : _b.addEventListener(
215
+ "animationend",
216
+ this._moveMinutesHandFn,
217
+ ADD_EVENT_LISTENER_OPTIONS
218
+ );
219
+ await new Promise(
220
+ () => setTimeout(() => {
221
+ var _a2;
222
+ this._setHandsStartingPosition();
223
+ (_a2 = this.style) == null ? void 0 : _a2.setProperty("--sbb-clock-animation-play-state", "running");
224
+ }, INITIAL_TIMEOUT_DURATION)
225
+ );
214
226
  }
215
- /** Given the current date, calculates the hh/mm/ss values and the hh/mm/ss left to the next midnight. */
216
- _assignCurrentTime() {
217
- const date = this.now ? null : /* @__PURE__ */ new Date();
218
- const [hours, minutes, seconds] = date ? [date.getHours(), date.getMinutes(), date.getSeconds()] : this.now.split(":").map((p) => +p);
219
- this._hours = hours % 12;
220
- this._minutes = minutes;
221
- this._seconds = seconds;
227
+ /** Stops the clock by removing all the animations. */
228
+ async _stopClock() {
229
+ var _a, _b, _c, _d;
230
+ clearInterval(this._handMovement);
231
+ this._removeSecondsAnimationStyles();
232
+ this._removeHoursAnimationStyles();
233
+ (_a = this._clockHandHours) == null ? void 0 : _a.removeEventListener("animationend", this._moveHoursHandFn);
234
+ (_b = this._clockHandSeconds) == null ? void 0 : _b.removeEventListener("animationend", this._moveMinutesHandFn);
235
+ (_c = this._clockHandMinutes) == null ? void 0 : _c.classList.add("sbb-clock__hand-minutes--no-transition");
236
+ (_d = this.style) == null ? void 0 : _d.setProperty("--sbb-clock-animation-play-state", "paused");
222
237
  }
223
238
  /** Set the starting position for the three hands on the clock face. */
224
239
  _setHandsStartingPosition() {
225
- var _a, _b, _c, _d, _e, _f, _g;
240
+ var _a, _b, _c, _d, _e, _f;
226
241
  this._assignCurrentTime();
227
242
  const remainingSeconds = TOTAL_SECONDS_ON_CLOCK_FACE - this._seconds;
228
243
  const remainingMinutes = TOTAL_MINUTES_ON_CLOCK_FACE - this._minutes;
@@ -253,9 +268,16 @@ let SbbClockElement = class extends LitElement {
253
268
  this._setMinutesHand();
254
269
  (_e = this._clockHandSeconds) == null ? void 0 : _e.classList.add("sbb-clock__hand-seconds--initial-minute");
255
270
  (_f = this._clockHandHours) == null ? void 0 : _f.classList.add("sbb-clock__hand-hours--initial-hour");
256
- (_g = this.style) == null ? void 0 : _g.setProperty("--sbb-clock-animation-play-state", "running");
257
271
  this.toggleAttribute("data-initialized", true);
258
272
  }
273
+ /** Given the current date, calculates the hh/mm/ss values and the hh/mm/ss left to the next midnight. */
274
+ _assignCurrentTime() {
275
+ const date = this.now ? null : /* @__PURE__ */ new Date();
276
+ const [hours, minutes, seconds] = date ? [date.getHours(), date.getMinutes(), date.getSeconds()] : this.now.split(":").map((p) => +p);
277
+ this._hours = hours % 12;
278
+ this._minutes = minutes;
279
+ this._seconds = seconds;
280
+ }
259
281
  /** Set the starting position for the minutes hand. */
260
282
  _setMinutesHand() {
261
283
  var _a;
@@ -289,55 +311,38 @@ let SbbClockElement = class extends LitElement {
289
311
  this._minutes++;
290
312
  this._setMinutesHand();
291
313
  }
292
- /** Stops the clock by removing all the animations. */
293
- async _stopClock() {
294
- var _a, _b, _c, _d, _e, _f;
295
- clearInterval(this._handMovement);
296
- if (this.now) {
297
- this._setHandsStartingPosition();
298
- await new Promise((resolve) => setTimeout(resolve));
299
- (_a = this._clockHandSeconds) == null ? void 0 : _a.classList.add("sbb-clock__hand-seconds--initial-minute");
300
- (_b = this._clockHandHours) == null ? void 0 : _b.classList.add("sbb-clock__hand-hours--initial-hour");
301
- } else {
302
- this._removeSecondsAnimationStyles();
303
- this._removeHoursAnimationStyles();
314
+ /**
315
+ * Removing animation by overriding with empty string,
316
+ * then triggering a reflow and re add original animation by removing override.
317
+ * @private
318
+ */
319
+ _resetSecondsHandAnimation() {
320
+ if (!this._clockHandSeconds) {
321
+ return;
304
322
  }
305
- (_c = this._clockHandHours) == null ? void 0 : _c.removeEventListener("animationend", this._moveHoursHandFn);
306
- (_d = this._clockHandSeconds) == null ? void 0 : _d.removeEventListener("animationend", this._moveMinutesHandFn);
307
- (_e = this._clockHandMinutes) == null ? void 0 : _e.classList.add("sbb-clock__hand-minutes--no-transition");
308
- (_f = this.style) == null ? void 0 : _f.setProperty("--sbb-clock-animation-play-state", "paused");
323
+ this._clockHandSeconds.style.animation = "";
324
+ this._clockHandSeconds.offsetHeight;
325
+ this._clockHandSeconds.style.removeProperty("animation");
309
326
  }
310
- /** Starts the clock by defining the hands starting position then starting the animations. */
311
- async _startClock() {
327
+ _removeEventListeners() {
312
328
  var _a, _b;
313
- (_a = this._clockHandHours) == null ? void 0 : _a.addEventListener(
314
- "animationend",
315
- this._moveHoursHandFn,
316
- ADD_EVENT_LISTENER_OPTIONS
317
- );
318
- (_b = this._clockHandSeconds) == null ? void 0 : _b.addEventListener(
319
- "animationend",
320
- this._moveMinutesHandFn,
321
- ADD_EVENT_LISTENER_OPTIONS
322
- );
323
- await new Promise(
324
- () => setTimeout(() => this._setHandsStartingPosition(), INITIAL_TIMEOUT_DURATION)
325
- );
329
+ document == null ? void 0 : document.removeEventListener("visibilitychange", this._handlePageVisibilityChange);
330
+ (_a = this._clockHandHours) == null ? void 0 : _a.removeEventListener("animationend", this._moveHoursHandFn);
331
+ (_b = this._clockHandSeconds) == null ? void 0 : _b.removeEventListener("animationend", this._moveMinutesHandFn);
332
+ clearInterval(this._handMovement);
326
333
  }
327
- async firstUpdated(changedProperties) {
328
- super.firstUpdated(changedProperties);
329
- if (!isServer) {
330
- this._addEventListeners();
331
- if (this.now) {
332
- await this._stopClock();
333
- } else {
334
- await this._startClock();
335
- }
336
- }
334
+ _removeHoursAnimationStyles() {
335
+ var _a;
336
+ (_a = this._clockHandHours) == null ? void 0 : _a.classList.remove("sbb-clock__hand-hours--initial-hour");
337
+ this.style.removeProperty("--sbb-clock-hours-animation-start-angle");
338
+ this.style.removeProperty("--sbb-clock-hours-animation-duration");
337
339
  }
338
- disconnectedCallback() {
339
- super.disconnectedCallback();
340
- this._removeEventListeners();
340
+ _removeSecondsAnimationStyles() {
341
+ var _a, _b;
342
+ (_a = this._clockHandSeconds) == null ? void 0 : _a.classList.remove("sbb-clock__hand-seconds--initial-minute");
343
+ (_b = this._clockHandMinutes) == null ? void 0 : _b.classList.remove("sbb-clock__hand-minutes--no-transition");
344
+ this.style.removeProperty("--sbb-clock-seconds-animation-start-angle");
345
+ this.style.removeProperty("--sbb-clock-seconds-animation-duration");
341
346
  }
342
347
  render() {
343
348
  return html`
@@ -378,4 +383,4 @@ SbbClockElement = __decorateClass([
378
383
  export {
379
384
  SbbClockElement
380
385
  };
381
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvY2suanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9jbG9jay9hc3NldHMvc2JiX2Nsb2NrX2ZhY2Uuc3ZnP3JhdyIsIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9jbG9jay9hc3NldHMvc2JiX2Nsb2NrX2hvdXJzLnN2Zz9yYXciLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvY2xvY2svYXNzZXRzL3NiYl9jbG9ja19taW51dGVzLnN2Zz9yYXciLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvY2xvY2svYXNzZXRzL3NiYl9jbG9ja19zZWNvbmRzLnN2Zz9yYXciLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvY2xvY2svY2xvY2sudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGRlZmF1bHQgXCI8c3ZnIGZvY3VzYWJsZT1cXFwiZmFsc2VcXFwiIHhtbG5zPVxcXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1xcXCIgdmlld0JveD1cXFwiMCAwIDEwNSAxMDVcXFwiPjxnIGNsYXNzPVxcXCJmYWNlXFxcIj48Y2lyY2xlIGZpbGw9XFxcIiNGRkZcXFwiIGN4PVxcXCI1Mi41XFxcIiBjeT1cXFwiNTIuNVxcXCIgcj1cXFwiNTIuNVxcXCIvPjxwYXRoIGQ9XFxcIk01MC43NSA0aDMuNXYxMmgtMy41ek01MC43NSA4OWgzLjV2MTJoLTMuNXpNNzUuMjMzIDkuNjIzbDMuMDMgMS43NS02IDEwLjM5Mi0zLjAzLTEuNzV6TTMyLjczNCA4My4yMzNsMy4wMyAxLjc1LTYgMTAuMzkyLTMuMDMtMS43NXpNOTMuNjI4IDI2LjczMmwxLjc1IDMuMDMxLTEwLjM5MiA2LTEuNzUtMy4wM3pNMjAuMDE3IDY5LjIzNGwxLjc1IDMuMDMxLTEwLjM5MiA2LTEuNzUtMy4wM3pNMTAxIDUwLjc1djMuNUg4OXYtMy41ek0xNiA1MC43NXYzLjVINHYtMy41ek05NS4zNzkgNzUuMjMybC0xLjc1IDMuMDMxLTEwLjM5Mi02IDEuNzUtMy4wM3pNMjEuNzY2IDMyLjczNGwtMS43NSAzLjAzMS0xMC4zOTItNiAxLjc1LTMuMDN6TTc4LjI2NyA5My42M2wtMy4wMyAxLjc1LTYtMTAuMzkzIDMuMDMtMS43NXpNMzUuNzY2IDIwLjAxNWwtMy4wMyAxLjc1LTYtMTAuMzkyIDMuMDMtMS43NXpcXFwiLz48Zz48cGF0aCBkPVxcXCJNNTYuODczIDQuMTlsMS4zOTIuMTQ3LS4zNjYgMy40OC0xLjM5Mi0uMTQ1ek00Ny4xMDEgOTcuMTc3bDEuMzkzLjE0Ni0uMzY2IDMuNDgxLTEuMzkyLS4xNDZ6TTYxLjg5NiA0LjkxNGwxLjM3LjI5LS43MjggMy40MjQtMS4zNy0uMjl6TTQyLjQ1OCA5Ni4zNjZsMS4zNy4yOS0uNzI4IDMuNDI0LTEuMzctLjI5MXpNNjYuODI1IDYuMTU3bDEuMzMyLjQzMi0xLjA4MiAzLjMzLTEuMzMxLS40MzR6TTM3LjkzMSA5NS4wODVsMS4zMzIuNDMyLTEuMDgyIDMuMzMtMS4zMzEtLjQzM3pNNzEuNTg0IDcuOTA2bDEuMjguNTY5LTEuNDI0IDMuMTk3LTEuMjgtLjU3ek0zMy41NiA5My4zMmwxLjI3OC41NjktMS40MjMgMy4xOTctMS4yOC0uNTd6TTgwLjQ0IDEyLjg1MmwxLjEzMy44MjMtMi4wNTggMi44MzEtMS4xMzItLjgyM3pNMjUuNDgxIDg4LjQ5NGwxLjEzMy44MjItMi4wNTcgMi44MzItMS4xMzMtLjgyM3pNODQuNDMgMTUuOTg2bDEuMDQuOTM3LTIuMzQyIDIuNi0xLjA0LS45MzZ6TTIxLjg3IDg1LjQ2OWwxLjA0LjkzNi0yLjM0MSAyLjYwMS0xLjA0LS45Mzd6TTg4LjA3MiAxOS41MjJsLjkzNyAxLjA0LTIuNiAyLjM0My0uOTM3LTEuMDR6TTE4LjU5MyA4Mi4wODhsLjkzNyAxLjA0LTIuNjAxIDIuMzQyLS45MzctMS4wNHpNOTEuMzI4IDIzLjQyNWwuODIzIDEuMTMzLTIuODMyIDIuMDU3LS44MjMtMS4xMzJ6TTE1LjY4NCA3OC4zODVsLjgyMyAxLjEzMi0yLjgzMiAyLjA1OC0uODIyLTEuMTMzek05Ni41MiAzMi4xMjhsLjU3IDEuMjc5LTMuMTk4IDEuNDIzLS41Ny0xLjI3OHpNMTEuMTA5IDcwLjE2MWwuNTY5IDEuMjc5LTMuMTk3IDEuNDIzLS41Ny0xLjI3OXpNOTguNDA3IDM2Ljg1bC40MzMgMS4zMzItMy4zMyAxLjA4MS0uNDMyLTEuMzMxek05LjQ4MyA2NS43NGwuNDMyIDEuMzMtMy4zMjkgMS4wODItLjQzMi0xLjMzMXpNOTkuNzk1IDQxLjcyNmwuMjkxIDEuMzctMy40MjMuNzI3LS4yOS0xLjM3ek04LjM0IDYxLjE3bC4yOTIgMS4zNy0zLjQyNC43MjgtLjI5LTEuMzd6TTEwMC42NiA0Ni43M2wuMTQ2IDEuMzkzLTMuNDguMzY2LS4xNDctMS4zOTJ6TTcuNjc0IDU2LjUwNmwuMTQ2IDEuMzkyLTMuNDguMzY2LS4xNDctMS4zOTJ6TTEwMC44MTEgNTYuODczbC0uMTQ2IDEuMzkyLTMuNDgtLjM2NS4xNDUtMS4zOTN6TTcuODIxIDQ3LjEwMWwtLjE0NiAxLjM5Mi0zLjQ4LS4zNjUuMTQ1LTEuMzkzek0xMDAuMDkgNjEuODk1bC0uMjkxIDEuMzY5LTMuNDI0LS43MjguMjkxLTEuMzY5ek04LjYzMSA0Mi40NmwtLjI5MSAxLjM3LTMuNDIzLS43MjguMjktMS4zN3pNOTguODQgNjYuODI3bC0uNDMyIDEuMzMxLTMuMzI5LTEuMDgxLjQzMy0xLjMzMnpNOS45MTggMzcuOTNsLS40MzMgMS4zMzEtMy4zMjktMS4wODIuNDMzLTEuMzMxek05Ny4wOTggNzEuNTg1bC0uNTY5IDEuMjgtMy4xOTctMS40MjQuNTctMS4yOHpNMTEuNjc3IDMzLjU1OGwtLjU3IDEuMjgtMy4xOTctMS40MjQuNTctMS4yNzl6TTkyLjE0OSA4MC40MzlsLS44MjMgMS4xMzMtMi44MzItMi4wNTguODIzLTEuMTMyek0xNi41MDYgMjUuNDgybC0uODIzIDEuMTMzLTIuODMxLTIuMDU3LjgyMy0xLjEzM3pNODkuMDE3IDg0LjQzMWwtLjkzNyAxLjA0LTIuNi0yLjM0MS45MzYtMS4wNHpNMTkuNTI4IDIxLjg2OWwtLjkzNiAxLjA0LTIuNjAxLTIuMzQyLjkzNi0xLjA0ek04NS40OCA4OC4wNzZsLTEuMDQxLjkzNi0yLjM0Mi0yLjYgMS4wNC0uOTM3ek0yMi45MSAxOC41OWwtMS4wNC45MzctMi4zNDEtMi42MDEgMS4wNC0uOTM3ek04MS41NzQgOTEuMzI4bC0xLjEzMy44MjMtMi4wNTctMi44MzEgMS4xMzItLjgyM3pNMjYuNjE3IDE1LjY4NGwtMS4xMzMuODIzLTIuMDU3LTIuODMyIDEuMTMyLS44MjN6TTcyLjg3MyA5Ni41MjRsLTEuMjc5LjU3LTEuNDIzLTMuMTk4IDEuMjc4LS41N3pNMzQuODM4IDExLjEwNWwtMS4yNzkuNTctMS40MjMtMy4xOTggMS4yNzktLjU3ek02OC4xNTEgOTguNDA1bC0xLjMzMS40MzItMS4wODItMy4zMjkgMS4zMzItLjQzMnpNMzkuMjU5IDkuNDg1bC0xLjMzMi40MzMtMS4wODEtMy4zMyAxLjMzMS0uNDMyek02My4yNzIgOTkuNzk5bC0xLjM2OS4yOS0uNzI4LTMuNDIyIDEuMzctLjI5MXpNNDMuODMgOC4zMzdsLTEuMzY5LjI5MS0uNzI3LTMuNDIzIDEuMzctLjI5MXpNNTguMjcgMTAwLjY2MmwtMS4zOTMuMTQ2LS4zNjYtMy40OCAxLjM5My0uMTQ3ek00OC40OTQgNy42NzJsLTEuMzkyLjE0Ny0uMzY2LTMuNDgxIDEuMzkyLS4xNDd6XFxcIi8+PC9nPjwvZz48L3N2Zz5cXG5cIiIsImV4cG9ydCBkZWZhdWx0IFwiPHN2ZyBmb2N1c2FibGU9XFxcImZhbHNlXFxcIiB4bWxucz1cXFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcXFwiIHZpZXdCb3g9XFxcIjAgMCAxMDUgMTA1XFxcIj48cGF0aCBpZD1cXFwibW9kX2Nsb2NrX3N2Z19ob3Vyc1xcXCIgZD1cXFwiTTU1LjcgNjQuNWgtNi40bC42LTQ0aDUuMnpcXFwiLz48L3N2Zz5cXG5cIiIsImV4cG9ydCBkZWZhdWx0IFwiPHN2ZyBmb2N1c2FibGU9XFxcImZhbHNlXFxcIiB4bWxucz1cXFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcXFwiIHZpZXdCb3g9XFxcIjAgMCAxMDUgMTA1XFxcIj48cGF0aCBkPVxcXCJNNTUuMSw2NC41aC01LjJsMC44LTU4aDMuNkw1NS4xLDY0LjV6XFxcIi8+PC9zdmc+XFxuXCIiLCJleHBvcnQgZGVmYXVsdCBcIjxzdmcgZm9jdXNhYmxlPVxcXCJmYWxzZVxcXCIgeG1sbnM9XFxcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXFxcIiB2aWV3Qm94PVxcXCIwIDAgMTA1IDEwNVxcXCI+PHBhdGggZD1cXFwiTTU3LjgsMjEuM2MwLTIuOS0yLjQtNS4yLTUuMi01LjJzLTUuMywyLjMtNS4zLDUuMmMwLDIuNywyLDQuOCw0LjUsNS4yVjY5aDEuNVYyNi41QzU1LjgsMjYuMiw1Ny44LDI0LDU3LjgsMjEuM3pcXFwiLz48L3N2Zz5cXG5cIiIsImltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFByb3BlcnR5VmFsdWVzLCBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBodG1sLCBpc1NlcnZlciwgTGl0RWxlbWVudCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IHJlZiB9IGZyb20gJ2xpdC9kaXJlY3RpdmVzL3JlZi5qcyc7XG5cbmltcG9ydCB0eXBlIHsgU2JiVGltZSB9IGZyb20gJy4uL2NvcmUvaW50ZXJmYWNlcy5qcyc7XG5cbmltcG9ydCBjbG9ja0ZhY2VTVkcgZnJvbSAnLi9hc3NldHMvc2JiX2Nsb2NrX2ZhY2Uuc3ZnP3Jhdyc7XG5pbXBvcnQgY2xvY2tIYW5kbGVIb3Vyc1NWRyBmcm9tICcuL2Fzc2V0cy9zYmJfY2xvY2tfaG91cnMuc3ZnP3Jhdyc7XG5pbXBvcnQgY2xvY2tIYW5kbGVNaW51dGVzU1ZHIGZyb20gJy4vYXNzZXRzL3NiYl9jbG9ja19taW51dGVzLnN2Zz9yYXcnO1xuaW1wb3J0IGNsb2NrSGFuZGxlU2Vjb25kc1NWRyBmcm9tICcuL2Fzc2V0cy9zYmJfY2xvY2tfc2Vjb25kcy5zdmc/cmF3JztcbmltcG9ydCBzdHlsZSBmcm9tICcuL2Nsb2NrLnNjc3M/bGl0JmlubGluZSc7XG5cbi8qKiBOdW1iZXIgb2YgaG91cnMgb24gdGhlIGNsb2NrIGZhY2UuICovXG5jb25zdCBUT1RBTF9IT1VSU19PTl9DTE9DS19GQUNFID0gMTI7XG5cbi8qKiBOdW1iZXIgb2YgbWludXRlcyBvbiB0aGUgY2xvY2sgZmFjZS4gKi9cbmNvbnN0IFRPVEFMX01JTlVURVNfT05fQ0xPQ0tfRkFDRSA9IDYwO1xuXG4vKiogTnVtYmVyIG9mIHNlY29uZHMgb24gdGhlIGNsb2NrIGZhY2UuICovXG5jb25zdCBUT1RBTF9TRUNPTkRTX09OX0NMT0NLX0ZBQ0UgPSA2MDtcblxuLyoqIFRpbWVvdXQgZm9yIHRoZSBjbG9jayBzdGFydC4gKi9cbmNvbnN0IElOSVRJQUxfVElNRU9VVF9EVVJBVElPTiA9IDUwO1xuXG4vKiogQW5nbGUgaW4gYSBzaW5nbGUgcm90YXRpb24uICovXG5jb25zdCBGVUxMX0FOR0xFID0gMzYwO1xuXG4vKiogQW5nbGUgYmV0d2VlbiB0d28gY29uc2VjdXRpdmUgaG91cnM6IDM2MC8xMiwgbWVhbnMgYSBmdWxsIHJvdGF0aW9uIC8gbnVtYmVyIG9mIGhvdXJzIGluIGEgcm90YXRpb24uICovXG5jb25zdCBIT1VSU19BTkdMRSA9IDMwO1xuXG4vKiogQW5nbGUgYmV0d2VlbiB0d28gY29uc2VjdXRpdmUgbWludXRlczogMzYwLzYwLCBtZWFucyBhIGZ1bGwgcm90YXRpb24gLyBudW1iZXIgb2YgbWludXRlcyBpbiBvbmUgaG91ci4gKi9cbmNvbnN0IE1JTlVURVNfQU5HTEUgPSA2O1xuXG4vKiogQW5nbGUgYmV0d2VlbiB0d28gY29uc2VjdXRpdmUgc2Vjb25kcyBmb3IgU0JCIGNsb2NrIGN1c3RvbSBiZWhhdmlvci4gKi9cbmNvbnN0IFNCQl9TRUNPTkRTX0FOR0xFID0gMzYwIC8gNTguNTtcblxuLyoqIE51bWJlciBvZiBzZWNvbmRzIGluIGEgbWludXRlLiAqL1xuY29uc3QgU0VDT05EU19JTl9BX01JTlVURSA9IDYwO1xuXG4vKiogTnVtYmVyIG9mIHNlY29uZHMgaW4gYW4gaG91ci4gKi9cbmNvbnN0IFNFQ09ORFNfSU5fQU5fSE9VUiA9IDM2MDA7XG5cbmNvbnN0IEFERF9FVkVOVF9MSVNURU5FUl9PUFRJT05TOiBBZGRFdmVudExpc3RlbmVyT3B0aW9ucyA9IHtcbiAgb25jZTogdHJ1ZSxcbiAgcGFzc2l2ZTogdHJ1ZSxcbn07XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYW4gYW5hbG9nIGNsb2NrIHdpdGggdGhlIGNsYXNzaWMgU0JCIGZhY2UuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItY2xvY2snKVxuZXhwb3J0IGNsYXNzIFNiYkNsb2NrRWxlbWVudCBleHRlbmRzIExpdEVsZW1lbnQge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICAvKipcbiAgICogRGVmaW5lIGEgc3BlY2lmaWMgdGltZSB3aGljaCB0aGUgY2xvY2sgc2hvdWxkIHNob3cgc3RhdGljYWxseS5cbiAgICogQHBhcmFtIHZhbHVlIEhIOk1NOnNzXG4gICAqL1xuICBAcHJvcGVydHkoKSBwdWJsaWMgbm93OiBTYmJUaW1lIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIFJlZmVyZW5jZSB0byB0aGUgaG91ciBoYW5kLiAqL1xuICBwcml2YXRlIF9jbG9ja0hhbmRIb3VycyE6IEhUTUxFbGVtZW50O1xuXG4gIC8qKiBSZWZlcmVuY2UgdG8gdGhlIG1pbnV0ZSBoYW5kLiAqL1xuICBwcml2YXRlIF9jbG9ja0hhbmRNaW51dGVzITogSFRNTEVsZW1lbnQ7XG5cbiAgLyoqIFJlZmVyZW5jZSB0byB0aGUgc2Vjb25kIGhhbmQuICovXG4gIHByaXZhdGUgX2Nsb2NrSGFuZFNlY29uZHMhOiBIVE1MRWxlbWVudDtcblxuICAvKiogSG91cnMgdmFsdWUgZm9yIHRoZSBjdXJyZW50IGRhdGUuICovXG4gIHByaXZhdGUgX2hvdXJzITogbnVtYmVyO1xuXG4gIC8qKiBNaW51dGVzIHZhbHVlIGZvciB0aGUgY3VycmVudCBkYXRlLiAqL1xuICBwcml2YXRlIF9taW51dGVzITogbnVtYmVyO1xuXG4gIC8qKiBTZWNvbmRzIHZhbHVlIGZvciB0aGUgY3VycmVudCBkYXRlLiAqL1xuICBwcml2YXRlIF9zZWNvbmRzITogbnVtYmVyO1xuXG4gIC8qKiBDYWxsYmFjayBmdW5jdGlvbiBmb3IgaG91cnMgaGFuZC4gKi9cbiAgcHJpdmF0ZSBfbW92ZUhvdXJzSGFuZEZuID0gKCk6IHZvaWQgPT4gdGhpcy5fbW92ZUhvdXJzSGFuZCgpO1xuXG4gIC8qKiBDYWxsYmFjayBmdW5jdGlvbiBmb3IgbWludXRlcyBoYW5kLiAqL1xuICBwcml2YXRlIF9tb3ZlTWludXRlc0hhbmRGbiA9ICgpOiB2b2lkID0+IHRoaXMuX21vdmVNaW51dGVzSGFuZCgpO1xuXG4gIC8qKiBNb3ZlIHRoZSBtaW51dGVzIGhhbmQgZXZlcnkgbWludXRlLiAqL1xuICBwcml2YXRlIF9oYW5kTW92ZW1lbnQ/OiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRJbnRlcnZhbD47XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoIWlzU2VydmVyICYmIGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnbm93JykpIHtcbiAgICAgIGlmICh0aGlzLm5vdykge1xuICAgICAgICB0aGlzLl9yZW1vdmVTZWNvbmRzQW5pbWF0aW9uU3R5bGVzKCk7XG4gICAgICAgIHRoaXMuX3JlbW92ZUhvdXJzQW5pbWF0aW9uU3R5bGVzKCk7XG4gICAgICAgIHRoaXMuX3N0b3BDbG9jaygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5fc3RhcnRDbG9jaygpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZVBhZ2VWaXNpYmlsaXR5Q2hhbmdlID0gYXN5bmMgKCk6IFByb21pc2U8dm9pZD4gPT4ge1xuICAgIGlmIChkb2N1bWVudC52aXNpYmlsaXR5U3RhdGUgPT09ICdoaWRkZW4nKSB7XG4gICAgICBhd2FpdCB0aGlzLl9zdG9wQ2xvY2soKTtcbiAgICB9IGVsc2UgaWYgKCF0aGlzLm5vdykge1xuICAgICAgYXdhaXQgdGhpcy5fc3RhcnRDbG9jaygpO1xuICAgIH1cbiAgfTtcblxuICBwcml2YXRlIF9hZGRFdmVudExpc3RlbmVycygpOiB2b2lkIHtcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCd2aXNpYmlsaXR5Y2hhbmdlJywgdGhpcy5faGFuZGxlUGFnZVZpc2liaWxpdHlDaGFuZ2UsIGZhbHNlKTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlbW92ZUV2ZW50TGlzdGVuZXJzKCk6IHZvaWQge1xuICAgIGRvY3VtZW50Py5yZW1vdmVFdmVudExpc3RlbmVyKCd2aXNpYmlsaXR5Y2hhbmdlJywgdGhpcy5faGFuZGxlUGFnZVZpc2liaWxpdHlDaGFuZ2UpO1xuICAgIHRoaXMuX2Nsb2NrSGFuZEhvdXJzPy5yZW1vdmVFdmVudExpc3RlbmVyKCdhbmltYXRpb25lbmQnLCB0aGlzLl9tb3ZlSG91cnNIYW5kRm4pO1xuICAgIHRoaXMuX2Nsb2NrSGFuZFNlY29uZHM/LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2FuaW1hdGlvbmVuZCcsIHRoaXMuX21vdmVNaW51dGVzSGFuZEZuKTtcbiAgICBjbGVhckludGVydmFsKHRoaXMuX2hhbmRNb3ZlbWVudCk7XG4gIH1cblxuICBwcml2YXRlIF9yZW1vdmVIb3Vyc0FuaW1hdGlvblN0eWxlcygpOiB2b2lkIHtcbiAgICB0aGlzLl9jbG9ja0hhbmRIb3Vycz8uY2xhc3NMaXN0LnJlbW92ZSgnc2JiLWNsb2NrX19oYW5kLWhvdXJzLS1pbml0aWFsLWhvdXInKTtcbiAgICB0aGlzLnN0eWxlLnJlbW92ZVByb3BlcnR5KCctLXNiYi1jbG9jay1ob3Vycy1hbmltYXRpb24tc3RhcnQtYW5nbGUnKTtcbiAgICB0aGlzLnN0eWxlLnJlbW92ZVByb3BlcnR5KCctLXNiYi1jbG9jay1ob3Vycy1hbmltYXRpb24tZHVyYXRpb24nKTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlbW92ZVNlY29uZHNBbmltYXRpb25TdHlsZXMoKTogdm9pZCB7XG4gICAgdGhpcy5fY2xvY2tIYW5kU2Vjb25kcz8uY2xhc3NMaXN0LnJlbW92ZSgnc2JiLWNsb2NrX19oYW5kLXNlY29uZHMtLWluaXRpYWwtbWludXRlJyk7XG4gICAgdGhpcy5fY2xvY2tIYW5kTWludXRlcz8uY2xhc3NMaXN0LnJlbW92ZSgnc2JiLWNsb2NrX19oYW5kLW1pbnV0ZXMtLW5vLXRyYW5zaXRpb24nKTtcbiAgICB0aGlzLnN0eWxlLnJlbW92ZVByb3BlcnR5KCctLXNiYi1jbG9jay1zZWNvbmRzLWFuaW1hdGlvbi1zdGFydC1hbmdsZScpO1xuICAgIHRoaXMuc3R5bGUucmVtb3ZlUHJvcGVydHkoJy0tc2JiLWNsb2NrLXNlY29uZHMtYW5pbWF0aW9uLWR1cmF0aW9uJyk7XG4gIH1cblxuICAvKiogR2l2ZW4gdGhlIGN1cnJlbnQgZGF0ZSwgY2FsY3VsYXRlcyB0aGUgaGgvbW0vc3MgdmFsdWVzIGFuZCB0aGUgaGgvbW0vc3MgbGVmdCB0byB0aGUgbmV4dCBtaWRuaWdodC4gKi9cbiAgcHJpdmF0ZSBfYXNzaWduQ3VycmVudFRpbWUoKTogdm9pZCB7XG4gICAgY29uc3QgZGF0ZSA9IHRoaXMubm93ID8gbnVsbCA6IG5ldyBEYXRlKCk7XG4gICAgY29uc3QgW2hvdXJzLCBtaW51dGVzLCBzZWNvbmRzXSA9IGRhdGVcbiAgICAgID8gW2RhdGUuZ2V0SG91cnMoKSwgZGF0ZS5nZXRNaW51dGVzKCksIGRhdGUuZ2V0U2Vjb25kcygpXVxuICAgICAgOiB0aGlzLm5vdyEuc3BsaXQoJzonKS5tYXAoKHApID0+ICtwKTtcblxuICAgIHRoaXMuX2hvdXJzID0gaG91cnMgJSAxMjtcbiAgICB0aGlzLl9taW51dGVzID0gbWludXRlcztcbiAgICB0aGlzLl9zZWNvbmRzID0gc2Vjb25kcztcbiAgfVxuXG4gIC8qKiBTZXQgdGhlIHN0YXJ0aW5nIHBvc2l0aW9uIGZvciB0aGUgdGhyZWUgaGFuZHMgb24gdGhlIGNsb2NrIGZhY2UuICovXG4gIHByaXZhdGUgX3NldEhhbmRzU3RhcnRpbmdQb3NpdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLl9hc3NpZ25DdXJyZW50VGltZSgpO1xuICAgIGNvbnN0IHJlbWFpbmluZ1NlY29uZHMgPSBUT1RBTF9TRUNPTkRTX09OX0NMT0NLX0ZBQ0UgLSB0aGlzLl9zZWNvbmRzO1xuICAgIGNvbnN0IHJlbWFpbmluZ01pbnV0ZXMgPSBUT1RBTF9NSU5VVEVTX09OX0NMT0NLX0ZBQ0UgLSB0aGlzLl9taW51dGVzO1xuICAgIGNvbnN0IHJlbWFpbmluZ0hvdXJzID0gVE9UQUxfSE9VUlNfT05fQ0xPQ0tfRkFDRSAtIHRoaXMuX2hvdXJzO1xuXG4gICAgbGV0IGhvdXJzQW5pbWF0aW9uRHVyYXRpb24gPSAwO1xuICAgIGxldCBoYXNSZW1haW5pbmdNaW51dGVzT3JTZWNvbmRzID0gMDtcblxuICAgIGlmIChyZW1haW5pbmdTZWNvbmRzID4gMCkge1xuICAgICAgaG91cnNBbmltYXRpb25EdXJhdGlvbiArPSByZW1haW5pbmdTZWNvbmRzO1xuICAgICAgaGFzUmVtYWluaW5nTWludXRlc09yU2Vjb25kcyA9IDE7XG4gICAgfVxuXG4gICAgaWYgKHJlbWFpbmluZ01pbnV0ZXMgPiAwKSB7XG4gICAgICBob3Vyc0FuaW1hdGlvbkR1cmF0aW9uICs9XG4gICAgICAgIChyZW1haW5pbmdNaW51dGVzIC0gaGFzUmVtYWluaW5nTWludXRlc09yU2Vjb25kcykgKiBTRUNPTkRTX0lOX0FfTUlOVVRFO1xuICAgICAgaGFzUmVtYWluaW5nTWludXRlc09yU2Vjb25kcyA9IDE7XG4gICAgfVxuXG4gICAgaWYgKHJlbWFpbmluZ0hvdXJzID4gMCkge1xuICAgICAgaG91cnNBbmltYXRpb25EdXJhdGlvbiArPVxuICAgICAgICAocmVtYWluaW5nSG91cnMgLSBoYXNSZW1haW5pbmdNaW51dGVzT3JTZWNvbmRzKSAqIFNFQ09ORFNfSU5fQU5fSE9VUjtcbiAgICB9XG5cbiAgICB0aGlzLnN0eWxlPy5zZXRQcm9wZXJ0eShcbiAgICAgICctLXNiYi1jbG9jay1ob3Vycy1hbmltYXRpb24tc3RhcnQtYW5nbGUnLFxuICAgICAgYCR7TWF0aC5jZWlsKHRoaXMuX2hvdXJzICogSE9VUlNfQU5HTEUgKyB0aGlzLl9taW51dGVzIC8gMil9ZGVnYCxcbiAgICApO1xuICAgIHRoaXMuc3R5bGU/LnNldFByb3BlcnR5KCctLXNiYi1jbG9jay1ob3Vycy1hbmltYXRpb24tZHVyYXRpb24nLCBgJHtob3Vyc0FuaW1hdGlvbkR1cmF0aW9ufXNgKTtcbiAgICB0aGlzLnN0eWxlPy5zZXRQcm9wZXJ0eShcbiAgICAgICctLXNiYi1jbG9jay1zZWNvbmRzLWFuaW1hdGlvbi1zdGFydC1hbmdsZScsXG4gICAgICBgJHtNYXRoLmNlaWwodGhpcy5fc2Vjb25kcyAqIFNCQl9TRUNPTkRTX0FOR0xFKX1kZWdgLFxuICAgICk7XG4gICAgdGhpcy5zdHlsZT8uc2V0UHJvcGVydHkoJy0tc2JiLWNsb2NrLXNlY29uZHMtYW5pbWF0aW9uLWR1cmF0aW9uJywgYCR7cmVtYWluaW5nU2Vjb25kc31zYCk7XG5cbiAgICB0aGlzLl9zZXRNaW51dGVzSGFuZCgpO1xuXG4gICAgdGhpcy5fY2xvY2tIYW5kU2Vjb25kcz8uY2xhc3NMaXN0LmFkZCgnc2JiLWNsb2NrX19oYW5kLXNlY29uZHMtLWluaXRpYWwtbWludXRlJyk7XG4gICAgdGhpcy5fY2xvY2tIYW5kSG91cnM/LmNsYXNzTGlzdC5hZGQoJ3NiYi1jbG9ja19faGFuZC1ob3Vycy0taW5pdGlhbC1ob3VyJyk7XG4gICAgdGhpcy5zdHlsZT8uc2V0UHJvcGVydHkoJy0tc2JiLWNsb2NrLWFuaW1hdGlvbi1wbGF5LXN0YXRlJywgJ3J1bm5pbmcnKTtcblxuICAgIHRoaXMudG9nZ2xlQXR0cmlidXRlKCdkYXRhLWluaXRpYWxpemVkJywgdHJ1ZSk7XG4gIH1cblxuICAvKiogU2V0IHRoZSBzdGFydGluZyBwb3NpdGlvbiBmb3IgdGhlIG1pbnV0ZXMgaGFuZC4gKi9cbiAgcHJpdmF0ZSBfc2V0TWludXRlc0hhbmQoKTogdm9pZCB7XG4gICAgdGhpcy5fY2xvY2tIYW5kTWludXRlcz8uc3R5bGUuc2V0UHJvcGVydHkoXG4gICAgICAndHJhbnNmb3JtJyxcbiAgICAgIGByb3RhdGVaKCR7TWF0aC5jZWlsKHRoaXMuX21pbnV0ZXMgKiBNSU5VVEVTX0FOR0xFKX1kZWcpYCxcbiAgICApO1xuICB9XG5cbiAgLyoqIE1vdmUgdGhlIGhvdXJzIGhhbmQgdG8gdGhlIG5leHQgdmFsdWUuICovXG4gIHByaXZhdGUgX21vdmVIb3Vyc0hhbmQoKTogdm9pZCB7XG4gICAgdGhpcy5fcmVtb3ZlSG91cnNBbmltYXRpb25TdHlsZXMoKTtcblxuICAgIGxldCBob3Vyc0FuZ2xlID0gTWF0aC5jZWlsKHRoaXMuX2hvdXJzICogSE9VUlNfQU5HTEUgKyB0aGlzLl9taW51dGVzIC8gMik7XG5cbiAgICBpZiAoaG91cnNBbmdsZSA+PSBGVUxMX0FOR0xFKSB7XG4gICAgICBob3Vyc0FuZ2xlIC09IEZVTExfQU5HTEU7XG4gICAgfVxuXG4gICAgdGhpcy5fY2xvY2tIYW5kSG91cnM/LnN0eWxlLnNldFByb3BlcnR5KCd0cmFuc2Zvcm0nLCBgcm90YXRlWigke2hvdXJzQW5nbGV9ZGVnKWApO1xuICB9XG5cbiAgLyoqIE1vdmUgdGhlIG1pbnV0ZXMgaGFuZCB0byB0aGUgbmV4dCB2YWx1ZS4gKi9cbiAgcHJpdmF0ZSBfbW92ZU1pbnV0ZXNIYW5kKCk6IHZvaWQge1xuICAgIHRoaXMuX2Nsb2NrSGFuZFNlY29uZHM/LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2FuaW1hdGlvbmVuZCcsIHRoaXMuX21vdmVNaW51dGVzSGFuZEZuKTtcblxuICAgIHRoaXMuX3JlbW92ZVNlY29uZHNBbmltYXRpb25TdHlsZXMoKTtcblxuICAgIHRoaXMuX2FkZE1pbnV0ZXNBbmRTZXRIYW5kcygpO1xuXG4gICAgdGhpcy5faGFuZE1vdmVtZW50ID0gc2V0SW50ZXJ2YWwoXG4gICAgICAoKSA9PiB0aGlzLl9hZGRNaW51dGVzQW5kU2V0SGFuZHMoKSxcbiAgICAgIFRPVEFMX1NFQ09ORFNfT05fQ0xPQ0tfRkFDRSAqIDEwMDAsXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2FkZE1pbnV0ZXNBbmRTZXRIYW5kcygpOiB2b2lkIHtcbiAgICB0aGlzLl9taW51dGVzKys7XG4gICAgdGhpcy5fc2V0TWludXRlc0hhbmQoKTtcbiAgfVxuXG4gIC8qKiBTdG9wcyB0aGUgY2xvY2sgYnkgcmVtb3ZpbmcgYWxsIHRoZSBhbmltYXRpb25zLiAqL1xuICBwcml2YXRlIGFzeW5jIF9zdG9wQ2xvY2soKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY2xlYXJJbnRlcnZhbCh0aGlzLl9oYW5kTW92ZW1lbnQpO1xuXG4gICAgaWYgKHRoaXMubm93KSB7XG4gICAgICB0aGlzLl9zZXRIYW5kc1N0YXJ0aW5nUG9zaXRpb24oKTtcblxuICAgICAgLy8gV2FpdCBhIHRpY2sgdG8gYmVmb3JlIGFuaW1hdGlvbiBpcyBhZGRlZC4gT3RoZXJ3aXNlLCB0aGUgYW5pbWF0aW9uIGdldHMgbm90IGNvbXBsZXRlbHlcbiAgICAgIC8vIHJlbW92ZWQgd2hpY2ggY2FuIGxlYWQgdG8gYSBtaXNwb3NpdGlvbmVkIHNlY29uZHMgaGFuZC5cbiAgICAgIGF3YWl0IG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiBzZXRUaW1lb3V0KHJlc29sdmUpKTtcblxuICAgICAgdGhpcy5fY2xvY2tIYW5kU2Vjb25kcz8uY2xhc3NMaXN0LmFkZCgnc2JiLWNsb2NrX19oYW5kLXNlY29uZHMtLWluaXRpYWwtbWludXRlJyk7XG4gICAgICB0aGlzLl9jbG9ja0hhbmRIb3Vycz8uY2xhc3NMaXN0LmFkZCgnc2JiLWNsb2NrX19oYW5kLWhvdXJzLS1pbml0aWFsLWhvdXInKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fcmVtb3ZlU2Vjb25kc0FuaW1hdGlvblN0eWxlcygpO1xuICAgICAgdGhpcy5fcmVtb3ZlSG91cnNBbmltYXRpb25TdHlsZXMoKTtcbiAgICB9XG5cbiAgICB0aGlzLl9jbG9ja0hhbmRIb3Vycz8ucmVtb3ZlRXZlbnRMaXN0ZW5lcignYW5pbWF0aW9uZW5kJywgdGhpcy5fbW92ZUhvdXJzSGFuZEZuKTtcbiAgICB0aGlzLl9jbG9ja0hhbmRTZWNvbmRzPy5yZW1vdmVFdmVudExpc3RlbmVyKCdhbmltYXRpb25lbmQnLCB0aGlzLl9tb3ZlTWludXRlc0hhbmRGbik7XG5cbiAgICB0aGlzLl9jbG9ja0hhbmRNaW51dGVzPy5jbGFzc0xpc3QuYWRkKCdzYmItY2xvY2tfX2hhbmQtbWludXRlcy0tbm8tdHJhbnNpdGlvbicpO1xuXG4gICAgdGhpcy5zdHlsZT8uc2V0UHJvcGVydHkoJy0tc2JiLWNsb2NrLWFuaW1hdGlvbi1wbGF5LXN0YXRlJywgJ3BhdXNlZCcpO1xuICB9XG5cbiAgLyoqIFN0YXJ0cyB0aGUgY2xvY2sgYnkgZGVmaW5pbmcgdGhlIGhhbmRzIHN0YXJ0aW5nIHBvc2l0aW9uIHRoZW4gc3RhcnRpbmcgdGhlIGFuaW1hdGlvbnMuICovXG4gIHByaXZhdGUgYXN5bmMgX3N0YXJ0Q2xvY2soKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5fY2xvY2tIYW5kSG91cnM/LmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAnYW5pbWF0aW9uZW5kJyxcbiAgICAgIHRoaXMuX21vdmVIb3Vyc0hhbmRGbixcbiAgICAgIEFERF9FVkVOVF9MSVNURU5FUl9PUFRJT05TLFxuICAgICk7XG4gICAgdGhpcy5fY2xvY2tIYW5kU2Vjb25kcz8uYWRkRXZlbnRMaXN0ZW5lcihcbiAgICAgICdhbmltYXRpb25lbmQnLFxuICAgICAgdGhpcy5fbW92ZU1pbnV0ZXNIYW5kRm4sXG4gICAgICBBRERfRVZFTlRfTElTVEVORVJfT1BUSU9OUyxcbiAgICApO1xuXG4gICAgYXdhaXQgbmV3IFByb21pc2UoKCkgPT5cbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5fc2V0SGFuZHNTdGFydGluZ1Bvc2l0aW9uKCksIElOSVRJQUxfVElNRU9VVF9EVVJBVElPTiksXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBhc3luYyBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIGlmICghaXNTZXJ2ZXIpIHtcbiAgICAgIHRoaXMuX2FkZEV2ZW50TGlzdGVuZXJzKCk7XG5cbiAgICAgIGlmICh0aGlzLm5vdykge1xuICAgICAgICBhd2FpdCB0aGlzLl9zdG9wQ2xvY2soKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGF3YWl0IHRoaXMuX3N0YXJ0Q2xvY2soKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgZGlzY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLl9yZW1vdmVFdmVudExpc3RlbmVycygpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLWNsb2NrXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWNsb2NrX19mYWNlXCIgLmlubmVySFRNTD0ke2Nsb2NrRmFjZVNWR30+PC9zcGFuPlxuICAgICAgICA8c3BhblxuICAgICAgICAgIGNsYXNzPVwic2JiLWNsb2NrX19oYW5kLWhvdXJzXCJcbiAgICAgICAgICAuaW5uZXJIVE1MPSR7Y2xvY2tIYW5kbGVIb3Vyc1NWR31cbiAgICAgICAgICAke3JlZigoZT86IEVsZW1lbnQpOiB2b2lkID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2Nsb2NrSGFuZEhvdXJzID0gZSBhcyBIVE1MU3BhbkVsZW1lbnQ7XG4gICAgICAgICAgfSl9XG4gICAgICAgID48L3NwYW4+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgY2xhc3M9XCJzYmItY2xvY2tfX2hhbmQtbWludXRlcyBzYmItY2xvY2tfX2hhbmQtbWludXRlcy0tbm8tdHJhbnNpdGlvblwiXG4gICAgICAgICAgLmlubmVySFRNTD0ke2Nsb2NrSGFuZGxlTWludXRlc1NWR31cbiAgICAgICAgICAke3JlZigoZWw/OiBFbGVtZW50KTogdm9pZCA9PiB7XG4gICAgICAgICAgICB0aGlzLl9jbG9ja0hhbmRNaW51dGVzID0gZWwgYXMgSFRNTFNwYW5FbGVtZW50O1xuICAgICAgICAgIH0pfVxuICAgICAgICA+PC9zcGFuPlxuICAgICAgICA8c3BhblxuICAgICAgICAgIGNsYXNzPVwic2JiLWNsb2NrX19oYW5kLXNlY29uZHNcIlxuICAgICAgICAgIC5pbm5lckhUTUw9JHtjbG9ja0hhbmRsZVNlY29uZHNTVkd9XG4gICAgICAgICAgJHtyZWYoKGVsPzogRWxlbWVudCk6IHZvaWQgPT4ge1xuICAgICAgICAgICAgdGhpcy5fY2xvY2tIYW5kU2Vjb25kcyA9IGVsIGFzIEhUTUxTcGFuRWxlbWVudDtcbiAgICAgICAgICB9KX1cbiAgICAgICAgPjwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1jbG9jayc6IFNiYkNsb2NrRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLE1BQWUsZUFBQTtBQ0FmLE1BQWUsc0JBQUE7QUNBZixNQUFlLHdCQUFBO0FDQWYsTUFBZSx3QkFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
386
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvY2suanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9jbG9jay9hc3NldHMvc2JiX2Nsb2NrX2ZhY2Uuc3ZnP3JhdyIsIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9jbG9jay9hc3NldHMvc2JiX2Nsb2NrX2hvdXJzLnN2Zz9yYXciLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvY2xvY2svYXNzZXRzL3NiYl9jbG9ja19taW51dGVzLnN2Zz9yYXciLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvY2xvY2svYXNzZXRzL3NiYl9jbG9ja19zZWNvbmRzLnN2Zz9yYXciLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvY2xvY2svY2xvY2sudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGRlZmF1bHQgXCI8c3ZnIGZvY3VzYWJsZT1cXFwiZmFsc2VcXFwiIHhtbG5zPVxcXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1xcXCIgdmlld0JveD1cXFwiMCAwIDEwNSAxMDVcXFwiPjxnIGNsYXNzPVxcXCJmYWNlXFxcIj48Y2lyY2xlIGZpbGw9XFxcIiNGRkZcXFwiIGN4PVxcXCI1Mi41XFxcIiBjeT1cXFwiNTIuNVxcXCIgcj1cXFwiNTIuNVxcXCIvPjxwYXRoIGQ9XFxcIk01MC43NSA0aDMuNXYxMmgtMy41ek01MC43NSA4OWgzLjV2MTJoLTMuNXpNNzUuMjMzIDkuNjIzbDMuMDMgMS43NS02IDEwLjM5Mi0zLjAzLTEuNzV6TTMyLjczNCA4My4yMzNsMy4wMyAxLjc1LTYgMTAuMzkyLTMuMDMtMS43NXpNOTMuNjI4IDI2LjczMmwxLjc1IDMuMDMxLTEwLjM5MiA2LTEuNzUtMy4wM3pNMjAuMDE3IDY5LjIzNGwxLjc1IDMuMDMxLTEwLjM5MiA2LTEuNzUtMy4wM3pNMTAxIDUwLjc1djMuNUg4OXYtMy41ek0xNiA1MC43NXYzLjVINHYtMy41ek05NS4zNzkgNzUuMjMybC0xLjc1IDMuMDMxLTEwLjM5Mi02IDEuNzUtMy4wM3pNMjEuNzY2IDMyLjczNGwtMS43NSAzLjAzMS0xMC4zOTItNiAxLjc1LTMuMDN6TTc4LjI2NyA5My42M2wtMy4wMyAxLjc1LTYtMTAuMzkzIDMuMDMtMS43NXpNMzUuNzY2IDIwLjAxNWwtMy4wMyAxLjc1LTYtMTAuMzkyIDMuMDMtMS43NXpcXFwiLz48Zz48cGF0aCBkPVxcXCJNNTYuODczIDQuMTlsMS4zOTIuMTQ3LS4zNjYgMy40OC0xLjM5Mi0uMTQ1ek00Ny4xMDEgOTcuMTc3bDEuMzkzLjE0Ni0uMzY2IDMuNDgxLTEuMzkyLS4xNDZ6TTYxLjg5NiA0LjkxNGwxLjM3LjI5LS43MjggMy40MjQtMS4zNy0uMjl6TTQyLjQ1OCA5Ni4zNjZsMS4zNy4yOS0uNzI4IDMuNDI0LTEuMzctLjI5MXpNNjYuODI1IDYuMTU3bDEuMzMyLjQzMi0xLjA4MiAzLjMzLTEuMzMxLS40MzR6TTM3LjkzMSA5NS4wODVsMS4zMzIuNDMyLTEuMDgyIDMuMzMtMS4zMzEtLjQzM3pNNzEuNTg0IDcuOTA2bDEuMjguNTY5LTEuNDI0IDMuMTk3LTEuMjgtLjU3ek0zMy41NiA5My4zMmwxLjI3OC41NjktMS40MjMgMy4xOTctMS4yOC0uNTd6TTgwLjQ0IDEyLjg1MmwxLjEzMy44MjMtMi4wNTggMi44MzEtMS4xMzItLjgyM3pNMjUuNDgxIDg4LjQ5NGwxLjEzMy44MjItMi4wNTcgMi44MzItMS4xMzMtLjgyM3pNODQuNDMgMTUuOTg2bDEuMDQuOTM3LTIuMzQyIDIuNi0xLjA0LS45MzZ6TTIxLjg3IDg1LjQ2OWwxLjA0LjkzNi0yLjM0MSAyLjYwMS0xLjA0LS45Mzd6TTg4LjA3MiAxOS41MjJsLjkzNyAxLjA0LTIuNiAyLjM0My0uOTM3LTEuMDR6TTE4LjU5MyA4Mi4wODhsLjkzNyAxLjA0LTIuNjAxIDIuMzQyLS45MzctMS4wNHpNOTEuMzI4IDIzLjQyNWwuODIzIDEuMTMzLTIuODMyIDIuMDU3LS44MjMtMS4xMzJ6TTE1LjY4NCA3OC4zODVsLjgyMyAxLjEzMi0yLjgzMiAyLjA1OC0uODIyLTEuMTMzek05Ni41MiAzMi4xMjhsLjU3IDEuMjc5LTMuMTk4IDEuNDIzLS41Ny0xLjI3OHpNMTEuMTA5IDcwLjE2MWwuNTY5IDEuMjc5LTMuMTk3IDEuNDIzLS41Ny0xLjI3OXpNOTguNDA3IDM2Ljg1bC40MzMgMS4zMzItMy4zMyAxLjA4MS0uNDMyLTEuMzMxek05LjQ4MyA2NS43NGwuNDMyIDEuMzMtMy4zMjkgMS4wODItLjQzMi0xLjMzMXpNOTkuNzk1IDQxLjcyNmwuMjkxIDEuMzctMy40MjMuNzI3LS4yOS0xLjM3ek04LjM0IDYxLjE3bC4yOTIgMS4zNy0zLjQyNC43MjgtLjI5LTEuMzd6TTEwMC42NiA0Ni43M2wuMTQ2IDEuMzkzLTMuNDguMzY2LS4xNDctMS4zOTJ6TTcuNjc0IDU2LjUwNmwuMTQ2IDEuMzkyLTMuNDguMzY2LS4xNDctMS4zOTJ6TTEwMC44MTEgNTYuODczbC0uMTQ2IDEuMzkyLTMuNDgtLjM2NS4xNDUtMS4zOTN6TTcuODIxIDQ3LjEwMWwtLjE0NiAxLjM5Mi0zLjQ4LS4zNjUuMTQ1LTEuMzkzek0xMDAuMDkgNjEuODk1bC0uMjkxIDEuMzY5LTMuNDI0LS43MjguMjkxLTEuMzY5ek04LjYzMSA0Mi40NmwtLjI5MSAxLjM3LTMuNDIzLS43MjguMjktMS4zN3pNOTguODQgNjYuODI3bC0uNDMyIDEuMzMxLTMuMzI5LTEuMDgxLjQzMy0xLjMzMnpNOS45MTggMzcuOTNsLS40MzMgMS4zMzEtMy4zMjktMS4wODIuNDMzLTEuMzMxek05Ny4wOTggNzEuNTg1bC0uNTY5IDEuMjgtMy4xOTctMS40MjQuNTctMS4yOHpNMTEuNjc3IDMzLjU1OGwtLjU3IDEuMjgtMy4xOTctMS40MjQuNTctMS4yNzl6TTkyLjE0OSA4MC40MzlsLS44MjMgMS4xMzMtMi44MzItMi4wNTguODIzLTEuMTMyek0xNi41MDYgMjUuNDgybC0uODIzIDEuMTMzLTIuODMxLTIuMDU3LjgyMy0xLjEzM3pNODkuMDE3IDg0LjQzMWwtLjkzNyAxLjA0LTIuNi0yLjM0MS45MzYtMS4wNHpNMTkuNTI4IDIxLjg2OWwtLjkzNiAxLjA0LTIuNjAxLTIuMzQyLjkzNi0xLjA0ek04NS40OCA4OC4wNzZsLTEuMDQxLjkzNi0yLjM0Mi0yLjYgMS4wNC0uOTM3ek0yMi45MSAxOC41OWwtMS4wNC45MzctMi4zNDEtMi42MDEgMS4wNC0uOTM3ek04MS41NzQgOTEuMzI4bC0xLjEzMy44MjMtMi4wNTctMi44MzEgMS4xMzItLjgyM3pNMjYuNjE3IDE1LjY4NGwtMS4xMzMuODIzLTIuMDU3LTIuODMyIDEuMTMyLS44MjN6TTcyLjg3MyA5Ni41MjRsLTEuMjc5LjU3LTEuNDIzLTMuMTk4IDEuMjc4LS41N3pNMzQuODM4IDExLjEwNWwtMS4yNzkuNTctMS40MjMtMy4xOTggMS4yNzktLjU3ek02OC4xNTEgOTguNDA1bC0xLjMzMS40MzItMS4wODItMy4zMjkgMS4zMzItLjQzMnpNMzkuMjU5IDkuNDg1bC0xLjMzMi40MzMtMS4wODEtMy4zMyAxLjMzMS0uNDMyek02My4yNzIgOTkuNzk5bC0xLjM2OS4yOS0uNzI4LTMuNDIyIDEuMzctLjI5MXpNNDMuODMgOC4zMzdsLTEuMzY5LjI5MS0uNzI3LTMuNDIzIDEuMzctLjI5MXpNNTguMjcgMTAwLjY2MmwtMS4zOTMuMTQ2LS4zNjYtMy40OCAxLjM5My0uMTQ3ek00OC40OTQgNy42NzJsLTEuMzkyLjE0Ny0uMzY2LTMuNDgxIDEuMzkyLS4xNDd6XFxcIi8+PC9nPjwvZz48L3N2Zz5cXG5cIiIsImV4cG9ydCBkZWZhdWx0IFwiPHN2ZyBmb2N1c2FibGU9XFxcImZhbHNlXFxcIiB4bWxucz1cXFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcXFwiIHZpZXdCb3g9XFxcIjAgMCAxMDUgMTA1XFxcIj48cGF0aCBpZD1cXFwibW9kX2Nsb2NrX3N2Z19ob3Vyc1xcXCIgZD1cXFwiTTU1LjcgNjQuNWgtNi40bC42LTQ0aDUuMnpcXFwiLz48L3N2Zz5cXG5cIiIsImV4cG9ydCBkZWZhdWx0IFwiPHN2ZyBmb2N1c2FibGU9XFxcImZhbHNlXFxcIiB4bWxucz1cXFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcXFwiIHZpZXdCb3g9XFxcIjAgMCAxMDUgMTA1XFxcIj48cGF0aCBkPVxcXCJNNTUuMSw2NC41aC01LjJsMC44LTU4aDMuNkw1NS4xLDY0LjV6XFxcIi8+PC9zdmc+XFxuXCIiLCJleHBvcnQgZGVmYXVsdCBcIjxzdmcgZm9jdXNhYmxlPVxcXCJmYWxzZVxcXCIgeG1sbnM9XFxcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXFxcIiB2aWV3Qm94PVxcXCIwIDAgMTA1IDEwNVxcXCI+PHBhdGggZD1cXFwiTTU3LjgsMjEuM2MwLTIuOS0yLjQtNS4yLTUuMi01LjJzLTUuMywyLjMtNS4zLDUuMmMwLDIuNywyLDQuOCw0LjUsNS4yVjY5aDEuNVYyNi41QzU1LjgsMjYuMiw1Ny44LDI0LDU3LjgsMjEuM3pcXFwiLz48L3N2Zz5cXG5cIiIsImltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFByb3BlcnR5VmFsdWVzLCBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBodG1sLCBpc1NlcnZlciwgTGl0RWxlbWVudCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IHJlZiB9IGZyb20gJ2xpdC9kaXJlY3RpdmVzL3JlZi5qcyc7XG5cbmltcG9ydCB0eXBlIHsgU2JiVGltZSB9IGZyb20gJy4uL2NvcmUvaW50ZXJmYWNlcy5qcyc7XG5cbmltcG9ydCBjbG9ja0ZhY2VTVkcgZnJvbSAnLi9hc3NldHMvc2JiX2Nsb2NrX2ZhY2Uuc3ZnP3Jhdyc7XG5pbXBvcnQgY2xvY2tIYW5kbGVIb3Vyc1NWRyBmcm9tICcuL2Fzc2V0cy9zYmJfY2xvY2tfaG91cnMuc3ZnP3Jhdyc7XG5pbXBvcnQgY2xvY2tIYW5kbGVNaW51dGVzU1ZHIGZyb20gJy4vYXNzZXRzL3NiYl9jbG9ja19taW51dGVzLnN2Zz9yYXcnO1xuaW1wb3J0IGNsb2NrSGFuZGxlU2Vjb25kc1NWRyBmcm9tICcuL2Fzc2V0cy9zYmJfY2xvY2tfc2Vjb25kcy5zdmc/cmF3JztcbmltcG9ydCBzdHlsZSBmcm9tICcuL2Nsb2NrLnNjc3M/bGl0JmlubGluZSc7XG5cbi8qKiBOdW1iZXIgb2YgaG91cnMgb24gdGhlIGNsb2NrIGZhY2UuICovXG5jb25zdCBUT1RBTF9IT1VSU19PTl9DTE9DS19GQUNFID0gMTI7XG5cbi8qKiBOdW1iZXIgb2YgbWludXRlcyBvbiB0aGUgY2xvY2sgZmFjZS4gKi9cbmNvbnN0IFRPVEFMX01JTlVURVNfT05fQ0xPQ0tfRkFDRSA9IDYwO1xuXG4vKiogTnVtYmVyIG9mIHNlY29uZHMgb24gdGhlIGNsb2NrIGZhY2UuICovXG5jb25zdCBUT1RBTF9TRUNPTkRTX09OX0NMT0NLX0ZBQ0UgPSA2MDtcblxuLyoqIFRpbWVvdXQgZm9yIHRoZSBjbG9jayBzdGFydC4gKi9cbmNvbnN0IElOSVRJQUxfVElNRU9VVF9EVVJBVElPTiA9IDUwO1xuXG4vKiogQW5nbGUgaW4gYSBzaW5nbGUgcm90YXRpb24uICovXG5jb25zdCBGVUxMX0FOR0xFID0gMzYwO1xuXG4vKiogQW5nbGUgYmV0d2VlbiB0d28gY29uc2VjdXRpdmUgaG91cnM6IDM2MC8xMiwgbWVhbnMgYSBmdWxsIHJvdGF0aW9uIC8gbnVtYmVyIG9mIGhvdXJzIGluIGEgcm90YXRpb24uICovXG5jb25zdCBIT1VSU19BTkdMRSA9IDMwO1xuXG4vKiogQW5nbGUgYmV0d2VlbiB0d28gY29uc2VjdXRpdmUgbWludXRlczogMzYwLzYwLCBtZWFucyBhIGZ1bGwgcm90YXRpb24gLyBudW1iZXIgb2YgbWludXRlcyBpbiBvbmUgaG91ci4gKi9cbmNvbnN0IE1JTlVURVNfQU5HTEUgPSA2O1xuXG4vKiogQW5nbGUgYmV0d2VlbiB0d28gY29uc2VjdXRpdmUgc2Vjb25kcyBmb3IgU0JCIGNsb2NrIGN1c3RvbSBiZWhhdmlvci4gKi9cbmNvbnN0IFNCQl9TRUNPTkRTX0FOR0xFID0gMzYwIC8gNTguNTtcblxuLyoqIE51bWJlciBvZiBzZWNvbmRzIGluIGEgbWludXRlLiAqL1xuY29uc3QgU0VDT05EU19JTl9BX01JTlVURSA9IDYwO1xuXG4vKiogTnVtYmVyIG9mIHNlY29uZHMgaW4gYW4gaG91ci4gKi9cbmNvbnN0IFNFQ09ORFNfSU5fQU5fSE9VUiA9IDM2MDA7XG5cbmNvbnN0IEFERF9FVkVOVF9MSVNURU5FUl9PUFRJT05TOiBBZGRFdmVudExpc3RlbmVyT3B0aW9ucyA9IHtcbiAgb25jZTogdHJ1ZSxcbiAgcGFzc2l2ZTogdHJ1ZSxcbn07XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYW4gYW5hbG9nIGNsb2NrIHdpdGggdGhlIGNsYXNzaWMgU0JCIGZhY2UuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItY2xvY2snKVxuZXhwb3J0IGNsYXNzIFNiYkNsb2NrRWxlbWVudCBleHRlbmRzIExpdEVsZW1lbnQge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICAvKipcbiAgICogRGVmaW5lIGEgc3BlY2lmaWMgdGltZSB3aGljaCB0aGUgY2xvY2sgc2hvdWxkIHNob3cgc3RhdGljYWxseS5cbiAgICogQHBhcmFtIHZhbHVlIEhIOk1NOnNzXG4gICAqL1xuICBAcHJvcGVydHkoKSBwdWJsaWMgbm93OiBTYmJUaW1lIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIFJlZmVyZW5jZSB0byB0aGUgaG91ciBoYW5kLiAqL1xuICBwcml2YXRlIF9jbG9ja0hhbmRIb3VycyE6IEhUTUxFbGVtZW50O1xuXG4gIC8qKiBSZWZlcmVuY2UgdG8gdGhlIG1pbnV0ZSBoYW5kLiAqL1xuICBwcml2YXRlIF9jbG9ja0hhbmRNaW51dGVzITogSFRNTEVsZW1lbnQ7XG5cbiAgLyoqIFJlZmVyZW5jZSB0byB0aGUgc2Vjb25kIGhhbmQuICovXG4gIHByaXZhdGUgX2Nsb2NrSGFuZFNlY29uZHMhOiBIVE1MRWxlbWVudDtcblxuICAvKiogSG91cnMgdmFsdWUgZm9yIHRoZSBjdXJyZW50IGRhdGUuICovXG4gIHByaXZhdGUgX2hvdXJzITogbnVtYmVyO1xuXG4gIC8qKiBNaW51dGVzIHZhbHVlIGZvciB0aGUgY3VycmVudCBkYXRlLiAqL1xuICBwcml2YXRlIF9taW51dGVzITogbnVtYmVyO1xuXG4gIC8qKiBTZWNvbmRzIHZhbHVlIGZvciB0aGUgY3VycmVudCBkYXRlLiAqL1xuICBwcml2YXRlIF9zZWNvbmRzITogbnVtYmVyO1xuXG4gIC8qKiBDYWxsYmFjayBmdW5jdGlvbiBmb3IgaG91cnMgaGFuZC4gKi9cbiAgcHJpdmF0ZSBfbW92ZUhvdXJzSGFuZEZuID0gKCk6IHZvaWQgPT4gdGhpcy5fbW92ZUhvdXJzSGFuZCgpO1xuXG4gIC8qKiBDYWxsYmFjayBmdW5jdGlvbiBmb3IgbWludXRlcyBoYW5kLiAqL1xuICBwcml2YXRlIF9tb3ZlTWludXRlc0hhbmRGbiA9ICgpOiB2b2lkID0+IHRoaXMuX21vdmVNaW51dGVzSGFuZCgpO1xuXG4gIC8qKiBNb3ZlIHRoZSBtaW51dGVzIGhhbmQgZXZlcnkgbWludXRlLiAqL1xuICBwcml2YXRlIF9oYW5kTW92ZW1lbnQ/OiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRJbnRlcnZhbD47XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGFzeW5jIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoIWlzU2VydmVyICYmIGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnbm93JykpIHtcbiAgICAgIGF3YWl0IHRoaXMuX3N0YXJ0T3JDb25maWd1cmVDbG9jaygpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBhc3luYyBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIGlmICghaXNTZXJ2ZXIpIHtcbiAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3Zpc2liaWxpdHljaGFuZ2UnLCB0aGlzLl9oYW5kbGVQYWdlVmlzaWJpbGl0eUNoYW5nZSwgZmFsc2UpO1xuICAgICAgYXdhaXQgdGhpcy5fc3RhcnRPckNvbmZpZ3VyZUNsb2NrKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5fcmVtb3ZlRXZlbnRMaXN0ZW5lcnMoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZVBhZ2VWaXNpYmlsaXR5Q2hhbmdlID0gYXN5bmMgKCk6IFByb21pc2U8dm9pZD4gPT4ge1xuICAgIGlmIChkb2N1bWVudC52aXNpYmlsaXR5U3RhdGUgPT09ICdoaWRkZW4nKSB7XG4gICAgICBhd2FpdCB0aGlzLl9zdG9wQ2xvY2soKTtcbiAgICB9IGVsc2UgaWYgKCF0aGlzLm5vdykge1xuICAgICAgYXdhaXQgdGhpcy5fc3RhcnRDbG9jaygpO1xuICAgIH1cbiAgfTtcblxuICBwcml2YXRlIGFzeW5jIF9zdGFydE9yQ29uZmlndXJlQ2xvY2soKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKHRoaXMubm93KSB7XG4gICAgICBhd2FpdCB0aGlzLl9zdG9wQ2xvY2soKTtcbiAgICAgIHRoaXMuX3Jlc2V0U2Vjb25kc0hhbmRBbmltYXRpb24oKTtcbiAgICAgIHRoaXMuX3NldEhhbmRzU3RhcnRpbmdQb3NpdGlvbigpO1xuICAgIH0gZWxzZSB7XG4gICAgICBhd2FpdCB0aGlzLl9zdGFydENsb2NrKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIFN0YXJ0cyB0aGUgY2xvY2sgYnkgZGVmaW5pbmcgdGhlIGhhbmRzIHN0YXJ0aW5nIHBvc2l0aW9uIHRoZW4gc3RhcnRpbmcgdGhlIGFuaW1hdGlvbnMuICovXG4gIHByaXZhdGUgYXN5bmMgX3N0YXJ0Q2xvY2soKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5fY2xvY2tIYW5kSG91cnM/LmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAnYW5pbWF0aW9uZW5kJyxcbiAgICAgIHRoaXMuX21vdmVIb3Vyc0hhbmRGbixcbiAgICAgIEFERF9FVkVOVF9MSVNURU5FUl9PUFRJT05TLFxuICAgICk7XG4gICAgdGhpcy5fY2xvY2tIYW5kU2Vjb25kcz8uYWRkRXZlbnRMaXN0ZW5lcihcbiAgICAgICdhbmltYXRpb25lbmQnLFxuICAgICAgdGhpcy5fbW92ZU1pbnV0ZXNIYW5kRm4sXG4gICAgICBBRERfRVZFTlRfTElTVEVORVJfT1BUSU9OUyxcbiAgICApO1xuXG4gICAgYXdhaXQgbmV3IFByb21pc2UoKCkgPT5cbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLl9zZXRIYW5kc1N0YXJ0aW5nUG9zaXRpb24oKTtcblxuICAgICAgICB0aGlzLnN0eWxlPy5zZXRQcm9wZXJ0eSgnLS1zYmItY2xvY2stYW5pbWF0aW9uLXBsYXktc3RhdGUnLCAncnVubmluZycpO1xuICAgICAgfSwgSU5JVElBTF9USU1FT1VUX0RVUkFUSU9OKSxcbiAgICApO1xuICB9XG5cbiAgLyoqIFN0b3BzIHRoZSBjbG9jayBieSByZW1vdmluZyBhbGwgdGhlIGFuaW1hdGlvbnMuICovXG4gIHByaXZhdGUgYXN5bmMgX3N0b3BDbG9jaygpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjbGVhckludGVydmFsKHRoaXMuX2hhbmRNb3ZlbWVudCk7XG5cbiAgICB0aGlzLl9yZW1vdmVTZWNvbmRzQW5pbWF0aW9uU3R5bGVzKCk7XG4gICAgdGhpcy5fcmVtb3ZlSG91cnNBbmltYXRpb25TdHlsZXMoKTtcblxuICAgIHRoaXMuX2Nsb2NrSGFuZEhvdXJzPy5yZW1vdmVFdmVudExpc3RlbmVyKCdhbmltYXRpb25lbmQnLCB0aGlzLl9tb3ZlSG91cnNIYW5kRm4pO1xuICAgIHRoaXMuX2Nsb2NrSGFuZFNlY29uZHM/LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2FuaW1hdGlvbmVuZCcsIHRoaXMuX21vdmVNaW51dGVzSGFuZEZuKTtcblxuICAgIHRoaXMuX2Nsb2NrSGFuZE1pbnV0ZXM/LmNsYXNzTGlzdC5hZGQoJ3NiYi1jbG9ja19faGFuZC1taW51dGVzLS1uby10cmFuc2l0aW9uJyk7XG5cbiAgICB0aGlzLnN0eWxlPy5zZXRQcm9wZXJ0eSgnLS1zYmItY2xvY2stYW5pbWF0aW9uLXBsYXktc3RhdGUnLCAncGF1c2VkJyk7XG4gIH1cblxuICAvKiogU2V0IHRoZSBzdGFydGluZyBwb3NpdGlvbiBmb3IgdGhlIHRocmVlIGhhbmRzIG9uIHRoZSBjbG9jayBmYWNlLiAqL1xuICBwcml2YXRlIF9zZXRIYW5kc1N0YXJ0aW5nUG9zaXRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5fYXNzaWduQ3VycmVudFRpbWUoKTtcbiAgICBjb25zdCByZW1haW5pbmdTZWNvbmRzID0gVE9UQUxfU0VDT05EU19PTl9DTE9DS19GQUNFIC0gdGhpcy5fc2Vjb25kcztcbiAgICBjb25zdCByZW1haW5pbmdNaW51dGVzID0gVE9UQUxfTUlOVVRFU19PTl9DTE9DS19GQUNFIC0gdGhpcy5fbWludXRlcztcbiAgICBjb25zdCByZW1haW5pbmdIb3VycyA9IFRPVEFMX0hPVVJTX09OX0NMT0NLX0ZBQ0UgLSB0aGlzLl9ob3VycztcblxuICAgIGxldCBob3Vyc0FuaW1hdGlvbkR1cmF0aW9uID0gMDtcbiAgICBsZXQgaGFzUmVtYWluaW5nTWludXRlc09yU2Vjb25kcyA9IDA7XG5cbiAgICBpZiAocmVtYWluaW5nU2Vjb25kcyA+IDApIHtcbiAgICAgIGhvdXJzQW5pbWF0aW9uRHVyYXRpb24gKz0gcmVtYWluaW5nU2Vjb25kcztcbiAgICAgIGhhc1JlbWFpbmluZ01pbnV0ZXNPclNlY29uZHMgPSAxO1xuICAgIH1cblxuICAgIGlmIChyZW1haW5pbmdNaW51dGVzID4gMCkge1xuICAgICAgaG91cnNBbmltYXRpb25EdXJhdGlvbiArPVxuICAgICAgICAocmVtYWluaW5nTWludXRlcyAtIGhhc1JlbWFpbmluZ01pbnV0ZXNPclNlY29uZHMpICogU0VDT05EU19JTl9BX01JTlVURTtcbiAgICAgIGhhc1JlbWFpbmluZ01pbnV0ZXNPclNlY29uZHMgPSAxO1xuICAgIH1cblxuICAgIGlmIChyZW1haW5pbmdIb3VycyA+IDApIHtcbiAgICAgIGhvdXJzQW5pbWF0aW9uRHVyYXRpb24gKz1cbiAgICAgICAgKHJlbWFpbmluZ0hvdXJzIC0gaGFzUmVtYWluaW5nTWludXRlc09yU2Vjb25kcykgKiBTRUNPTkRTX0lOX0FOX0hPVVI7XG4gICAgfVxuXG4gICAgdGhpcy5zdHlsZT8uc2V0UHJvcGVydHkoXG4gICAgICAnLS1zYmItY2xvY2staG91cnMtYW5pbWF0aW9uLXN0YXJ0LWFuZ2xlJyxcbiAgICAgIGAke01hdGguY2VpbCh0aGlzLl9ob3VycyAqIEhPVVJTX0FOR0xFICsgdGhpcy5fbWludXRlcyAvIDIpfWRlZ2AsXG4gICAgKTtcbiAgICB0aGlzLnN0eWxlPy5zZXRQcm9wZXJ0eSgnLS1zYmItY2xvY2staG91cnMtYW5pbWF0aW9uLWR1cmF0aW9uJywgYCR7aG91cnNBbmltYXRpb25EdXJhdGlvbn1zYCk7XG4gICAgdGhpcy5zdHlsZT8uc2V0UHJvcGVydHkoXG4gICAgICAnLS1zYmItY2xvY2stc2Vjb25kcy1hbmltYXRpb24tc3RhcnQtYW5nbGUnLFxuICAgICAgYCR7TWF0aC5jZWlsKHRoaXMuX3NlY29uZHMgKiBTQkJfU0VDT05EU19BTkdMRSl9ZGVnYCxcbiAgICApO1xuICAgIHRoaXMuc3R5bGU/LnNldFByb3BlcnR5KCctLXNiYi1jbG9jay1zZWNvbmRzLWFuaW1hdGlvbi1kdXJhdGlvbicsIGAke3JlbWFpbmluZ1NlY29uZHN9c2ApO1xuXG4gICAgdGhpcy5fc2V0TWludXRlc0hhbmQoKTtcblxuICAgIHRoaXMuX2Nsb2NrSGFuZFNlY29uZHM/LmNsYXNzTGlzdC5hZGQoJ3NiYi1jbG9ja19faGFuZC1zZWNvbmRzLS1pbml0aWFsLW1pbnV0ZScpO1xuICAgIHRoaXMuX2Nsb2NrSGFuZEhvdXJzPy5jbGFzc0xpc3QuYWRkKCdzYmItY2xvY2tfX2hhbmQtaG91cnMtLWluaXRpYWwtaG91cicpO1xuXG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtaW5pdGlhbGl6ZWQnLCB0cnVlKTtcbiAgfVxuXG4gIC8qKiBHaXZlbiB0aGUgY3VycmVudCBkYXRlLCBjYWxjdWxhdGVzIHRoZSBoaC9tbS9zcyB2YWx1ZXMgYW5kIHRoZSBoaC9tbS9zcyBsZWZ0IHRvIHRoZSBuZXh0IG1pZG5pZ2h0LiAqL1xuICBwcml2YXRlIF9hc3NpZ25DdXJyZW50VGltZSgpOiB2b2lkIHtcbiAgICBjb25zdCBkYXRlID0gdGhpcy5ub3cgPyBudWxsIDogbmV3IERhdGUoKTtcbiAgICBjb25zdCBbaG91cnMsIG1pbnV0ZXMsIHNlY29uZHNdID0gZGF0ZVxuICAgICAgPyBbZGF0ZS5nZXRIb3VycygpLCBkYXRlLmdldE1pbnV0ZXMoKSwgZGF0ZS5nZXRTZWNvbmRzKCldXG4gICAgICA6IHRoaXMubm93IS5zcGxpdCgnOicpLm1hcCgocCkgPT4gK3ApO1xuXG4gICAgdGhpcy5faG91cnMgPSBob3VycyAlIDEyO1xuICAgIHRoaXMuX21pbnV0ZXMgPSBtaW51dGVzO1xuICAgIHRoaXMuX3NlY29uZHMgPSBzZWNvbmRzO1xuICB9XG5cbiAgLyoqIFNldCB0aGUgc3RhcnRpbmcgcG9zaXRpb24gZm9yIHRoZSBtaW51dGVzIGhhbmQuICovXG4gIHByaXZhdGUgX3NldE1pbnV0ZXNIYW5kKCk6IHZvaWQge1xuICAgIHRoaXMuX2Nsb2NrSGFuZE1pbnV0ZXM/LnN0eWxlLnNldFByb3BlcnR5KFxuICAgICAgJ3RyYW5zZm9ybScsXG4gICAgICBgcm90YXRlWigke01hdGguY2VpbCh0aGlzLl9taW51dGVzICogTUlOVVRFU19BTkdMRSl9ZGVnKWAsXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBNb3ZlIHRoZSBob3VycyBoYW5kIHRvIHRoZSBuZXh0IHZhbHVlLiAqL1xuICBwcml2YXRlIF9tb3ZlSG91cnNIYW5kKCk6IHZvaWQge1xuICAgIHRoaXMuX3JlbW92ZUhvdXJzQW5pbWF0aW9uU3R5bGVzKCk7XG5cbiAgICBsZXQgaG91cnNBbmdsZSA9IE1hdGguY2VpbCh0aGlzLl9ob3VycyAqIEhPVVJTX0FOR0xFICsgdGhpcy5fbWludXRlcyAvIDIpO1xuXG4gICAgaWYgKGhvdXJzQW5nbGUgPj0gRlVMTF9BTkdMRSkge1xuICAgICAgaG91cnNBbmdsZSAtPSBGVUxMX0FOR0xFO1xuICAgIH1cblxuICAgIHRoaXMuX2Nsb2NrSGFuZEhvdXJzPy5zdHlsZS5zZXRQcm9wZXJ0eSgndHJhbnNmb3JtJywgYHJvdGF0ZVooJHtob3Vyc0FuZ2xlfWRlZylgKTtcbiAgfVxuXG4gIC8qKiBNb3ZlIHRoZSBtaW51dGVzIGhhbmQgdG8gdGhlIG5leHQgdmFsdWUuICovXG4gIHByaXZhdGUgX21vdmVNaW51dGVzSGFuZCgpOiB2b2lkIHtcbiAgICB0aGlzLl9jbG9ja0hhbmRTZWNvbmRzPy5yZW1vdmVFdmVudExpc3RlbmVyKCdhbmltYXRpb25lbmQnLCB0aGlzLl9tb3ZlTWludXRlc0hhbmRGbik7XG5cbiAgICB0aGlzLl9yZW1vdmVTZWNvbmRzQW5pbWF0aW9uU3R5bGVzKCk7XG5cbiAgICB0aGlzLl9hZGRNaW51dGVzQW5kU2V0SGFuZHMoKTtcblxuICAgIHRoaXMuX2hhbmRNb3ZlbWVudCA9IHNldEludGVydmFsKFxuICAgICAgKCkgPT4gdGhpcy5fYWRkTWludXRlc0FuZFNldEhhbmRzKCksXG4gICAgICBUT1RBTF9TRUNPTkRTX09OX0NMT0NLX0ZBQ0UgKiAxMDAwLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9hZGRNaW51dGVzQW5kU2V0SGFuZHMoKTogdm9pZCB7XG4gICAgdGhpcy5fbWludXRlcysrO1xuICAgIHRoaXMuX3NldE1pbnV0ZXNIYW5kKCk7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZpbmcgYW5pbWF0aW9uIGJ5IG92ZXJyaWRpbmcgd2l0aCBlbXB0eSBzdHJpbmcsXG4gICAqIHRoZW4gdHJpZ2dlcmluZyBhIHJlZmxvdyBhbmQgcmUgYWRkIG9yaWdpbmFsIGFuaW1hdGlvbiBieSByZW1vdmluZyBvdmVycmlkZS5cbiAgICogQHByaXZhdGVcbiAgICovXG4gIHByaXZhdGUgX3Jlc2V0U2Vjb25kc0hhbmRBbmltYXRpb24oKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9jbG9ja0hhbmRTZWNvbmRzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX2Nsb2NrSGFuZFNlY29uZHMuc3R5bGUuYW5pbWF0aW9uID0gJyc7XG4gICAgLy8gSGFjayB0byB0cmlnZ2VyIHJlZmxvd1xuICAgIHRoaXMuX2Nsb2NrSGFuZFNlY29uZHMub2Zmc2V0SGVpZ2h0O1xuICAgIHRoaXMuX2Nsb2NrSGFuZFNlY29uZHMuc3R5bGUucmVtb3ZlUHJvcGVydHkoJ2FuaW1hdGlvbicpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVtb3ZlRXZlbnRMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgZG9jdW1lbnQ/LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Zpc2liaWxpdHljaGFuZ2UnLCB0aGlzLl9oYW5kbGVQYWdlVmlzaWJpbGl0eUNoYW5nZSk7XG4gICAgdGhpcy5fY2xvY2tIYW5kSG91cnM/LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2FuaW1hdGlvbmVuZCcsIHRoaXMuX21vdmVIb3Vyc0hhbmRGbik7XG4gICAgdGhpcy5fY2xvY2tIYW5kU2Vjb25kcz8ucmVtb3ZlRXZlbnRMaXN0ZW5lcignYW5pbWF0aW9uZW5kJywgdGhpcy5fbW92ZU1pbnV0ZXNIYW5kRm4pO1xuICAgIGNsZWFySW50ZXJ2YWwodGhpcy5faGFuZE1vdmVtZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlbW92ZUhvdXJzQW5pbWF0aW9uU3R5bGVzKCk6IHZvaWQge1xuICAgIHRoaXMuX2Nsb2NrSGFuZEhvdXJzPy5jbGFzc0xpc3QucmVtb3ZlKCdzYmItY2xvY2tfX2hhbmQtaG91cnMtLWluaXRpYWwtaG91cicpO1xuICAgIHRoaXMuc3R5bGUucmVtb3ZlUHJvcGVydHkoJy0tc2JiLWNsb2NrLWhvdXJzLWFuaW1hdGlvbi1zdGFydC1hbmdsZScpO1xuICAgIHRoaXMuc3R5bGUucmVtb3ZlUHJvcGVydHkoJy0tc2JiLWNsb2NrLWhvdXJzLWFuaW1hdGlvbi1kdXJhdGlvbicpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVtb3ZlU2Vjb25kc0FuaW1hdGlvblN0eWxlcygpOiB2b2lkIHtcbiAgICB0aGlzLl9jbG9ja0hhbmRTZWNvbmRzPy5jbGFzc0xpc3QucmVtb3ZlKCdzYmItY2xvY2tfX2hhbmQtc2Vjb25kcy0taW5pdGlhbC1taW51dGUnKTtcbiAgICB0aGlzLl9jbG9ja0hhbmRNaW51dGVzPy5jbGFzc0xpc3QucmVtb3ZlKCdzYmItY2xvY2tfX2hhbmQtbWludXRlcy0tbm8tdHJhbnNpdGlvbicpO1xuICAgIHRoaXMuc3R5bGUucmVtb3ZlUHJvcGVydHkoJy0tc2JiLWNsb2NrLXNlY29uZHMtYW5pbWF0aW9uLXN0YXJ0LWFuZ2xlJyk7XG4gICAgdGhpcy5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgnLS1zYmItY2xvY2stc2Vjb25kcy1hbmltYXRpb24tZHVyYXRpb24nKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1jbG9ja1wiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1jbG9ja19fZmFjZVwiIC5pbm5lckhUTUw9JHtjbG9ja0ZhY2VTVkd9Pjwvc3Bhbj5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBjbGFzcz1cInNiYi1jbG9ja19faGFuZC1ob3Vyc1wiXG4gICAgICAgICAgLmlubmVySFRNTD0ke2Nsb2NrSGFuZGxlSG91cnNTVkd9XG4gICAgICAgICAgJHtyZWYoKGU/OiBFbGVtZW50KTogdm9pZCA9PiB7XG4gICAgICAgICAgICB0aGlzLl9jbG9ja0hhbmRIb3VycyA9IGUgYXMgSFRNTFNwYW5FbGVtZW50O1xuICAgICAgICAgIH0pfVxuICAgICAgICA+PC9zcGFuPlxuICAgICAgICA8c3BhblxuICAgICAgICAgIGNsYXNzPVwic2JiLWNsb2NrX19oYW5kLW1pbnV0ZXMgc2JiLWNsb2NrX19oYW5kLW1pbnV0ZXMtLW5vLXRyYW5zaXRpb25cIlxuICAgICAgICAgIC5pbm5lckhUTUw9JHtjbG9ja0hhbmRsZU1pbnV0ZXNTVkd9XG4gICAgICAgICAgJHtyZWYoKGVsPzogRWxlbWVudCk6IHZvaWQgPT4ge1xuICAgICAgICAgICAgdGhpcy5fY2xvY2tIYW5kTWludXRlcyA9IGVsIGFzIEhUTUxTcGFuRWxlbWVudDtcbiAgICAgICAgICB9KX1cbiAgICAgICAgPjwvc3Bhbj5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBjbGFzcz1cInNiYi1jbG9ja19faGFuZC1zZWNvbmRzXCJcbiAgICAgICAgICAuaW5uZXJIVE1MPSR7Y2xvY2tIYW5kbGVTZWNvbmRzU1ZHfVxuICAgICAgICAgICR7cmVmKChlbD86IEVsZW1lbnQpOiB2b2lkID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2Nsb2NrSGFuZFNlY29uZHMgPSBlbCBhcyBIVE1MU3BhbkVsZW1lbnQ7XG4gICAgICAgICAgfSl9XG4gICAgICAgID48L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItY2xvY2snOiBTYmJDbG9ja0VsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJfYSJdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsTUFBZSxlQUFBO0FDQWYsTUFBZSxzQkFBQTtBQ0FmLE1BQWUsd0JBQUE7QUNBZixNQUFlLHdCQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
@@ -30,12 +30,13 @@ export declare abstract class DateAdapter<T = any> {
30
30
  * @param date
31
31
  */
32
32
  abstract getDayOfWeek(date: T): number;
33
+ /** Get the first day of the week (0: sunday; 1: monday; etc.). */
33
34
  abstract getFirstDayOfWeek(): number;
34
35
  /**
35
36
  * Get the number of days in a month.
36
37
  * @param year
37
38
  * @param month
38
- * */
39
+ */
39
40
  abstract getNumDaysInMonth(date: T): number;
40
41
  /**
41
42
  * Get a list of all the months in a given style.
@@ -54,18 +55,19 @@ export declare abstract class DateAdapter<T = any> {
54
55
  /**
55
56
  * Checks whether a given `date` is valid.
56
57
  * @param date
57
- * */
58
+ */
58
59
  abstract isValid(date: T | null | undefined): boolean;
59
- /** Creates a new date by cloning the given one.
60
+ /**
61
+ * Creates a new date by cloning the given one.
60
62
  * @param date
61
- * */
63
+ */
62
64
  abstract clone(date: T): T;
63
65
  /**
64
66
  * Creates a new date, given day, month and year; without date's overflow.
65
67
  * @param year
66
68
  * @param month The month of the date (1-indexed, 1 = January). Must be an integer 1 - 12.
67
69
  * @param date
68
- * */
70
+ */
69
71
  abstract createDate(year: number, month: number, date: number): T;
70
72
  /**
71
73
  * Attempts to deserialize a value to a valid date object. This is different from parsing in that
@@ -74,7 +76,7 @@ export declare abstract class DateAdapter<T = any> {
74
76
  * the given value is already a valid date object or null.
75
77
  * @param value Either Date, ISOString, Unix Timestamp (number of seconds since Jan 1, 1970).
76
78
  * @returns The date if the input is valid, `null` otherwise.
77
- * */
79
+ */
78
80
  deserialize(value: T | string | number | null | undefined): T | null;
79
81
  /**
80
82
  * Creates a new date adding the number of provided `years` to the provided `date`.
@@ -90,26 +92,33 @@ export declare abstract class DateAdapter<T = any> {
90
92
  * @param months The number of months to add.
91
93
  */
92
94
  abstract addCalendarMonths(date: T, months: number): T;
93
- /** Creates a new date by adding the number of provided `days` to the provided `date`.
95
+ /**
96
+ * Creates a new date by adding the number of provided `days` to the provided `date`.
94
97
  * @param date The starting date.
95
98
  * @param days The number of days to add.
96
99
  */
97
100
  abstract addCalendarDays(date: T, days: number): T;
98
- /** Get the date in the local format.
101
+ /**
102
+ * Get the date in the local format.
99
103
  * @param date The date to format
100
104
  * @returns The `date` in the local format as string.
101
105
  */
102
106
  abstract getAccessibilityFormatDate(date: T | string): string;
103
- /** Get the given string as Date.
107
+ /**
108
+ * Get the given string as Date.
104
109
  * @param value The date in the format DD.MM.YYYY.
105
110
  * @param now The current date as Date.
106
111
  */
107
112
  abstract parse(value: string | null | undefined, now: T): T | undefined;
108
- /** Format the given Date as string.
113
+ /**
114
+ * Format the given date as string.
109
115
  * @param date The date to format.
110
116
  */
111
- abstract format(date: T | null | undefined): string;
112
- /** Checks whether the given `obj` is a Date.
117
+ format(date: T | null | undefined, options?: {
118
+ weekdayStyle?: 'long' | 'short' | 'narrow';
119
+ }): string;
120
+ /**
121
+ * Checks whether the given `obj` is a Date.
113
122
  * @param obj The object to check.
114
123
  */
115
124
  abstract isDateInstance(obj: any): boolean;
@@ -118,7 +127,8 @@ export declare abstract class DateAdapter<T = any> {
118
127
  * @returns An invalid date.
119
128
  */
120
129
  abstract invalid(): T;
121
- /** Get the given date as ISO String.
130
+ /**
131
+ * Get the given date as ISO String.
122
132
  * @param date The date to convert to ISO String.
123
133
  */
124
134
  toIso8601(date: T): string;
@@ -1 +1 @@
1
- {"version":3,"file":"date-adapter.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/datetime/date-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"date-adapter.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/datetime/date-adapter.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,EAAE,MAAU,CAAC;AACtC,eAAO,MAAM,cAAc,EAAE,MAAU,CAAC;AACxC,eAAO,MAAM,aAAa,EAAE,MAAU,CAAC;AACvC,eAAO,MAAM,cAAc,EAAE,MAAW,CAAC;AACzC,eAAO,MAAM,WAAW,QACgE,CAAC;AAIzF;;;;GAIG;AACH,8BAAsB,WAAW,CAAC,CAAC,GAAG,GAAG;IACvC;;;OAGG;aACa,OAAO,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM;IAExC;;;;OAIG;aACa,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM;IAEzC;;;OAGG;aACa,OAAO,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM;IAExC;;;OAGG;aACa,YAAY,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM;IAE7C,kEAAkE;aAClD,iBAAiB,IAAI,MAAM;IAE3C;;;;OAIG;aACa,iBAAiB,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM;IAElD;;;OAGG;aACa,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,EAAE;IAE3E,6FAA6F;aAC7E,YAAY,IAAI,MAAM,EAAE;IAExC;;;OAGG;aACa,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,EAAE;IAE/E,4BAA4B;aACZ,KAAK,IAAI,CAAC;IAE1B;;;OAGG;aACa,OAAO,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO;IAE5D;;;OAGG;aACa,KAAK,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC;IAEjC;;;;;OAKG;aACa,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC;IAExE;;;;;;;OAOG;IACI,WAAW,CAAC,KAAK,EAAE,CAAC,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,CAAC,GAAG,IAAI;IAU3E;;;;OAIG;aACa,gBAAgB,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC;IAE3D;;;;;;OAMG;aACa,iBAAiB,CAAC,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC;IAE7D;;;;OAIG;aACa,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC;IAEzD;;;;OAIG;aACa,0BAA0B,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM,GAAG,MAAM;IAEpE;;;;OAIG;aACa,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS;IAE9E;;;OAGG;IACI,MAAM,CACX,IAAI,EAAE,CAAC,GAAG,IAAI,GAAG,SAAS,EAC1B,OAAO,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAA;KAAE,GACvD,MAAM;IAwBT;;;OAGG;aACa,cAAc,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO;IAEjD;;;OAGG;aACa,OAAO,IAAI,CAAC;IAE5B;;;OAGG;IACI,SAAS,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM;IAKjC;;;;;OAKG;IACI,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,CAAC,GAAG,IAAI;IAInD;;OAEG;IACI,kBAAkB,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM;IAO1C;;;;;;OAMG;IACI,WAAW,CAAC,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM;IAQ/C;;;;;;OAMG;IACI,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,GAAG,OAAO;IAY3D;;;;;;;OAOG;IACI,SAAS,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC;CAS7D"}